{"version":3,"sources":["node_modules/browser-pack/_prelude.js","node_modules/aos/dist/aos.js","node_modules/lottie-web/build/player/lottie.js","node_modules/modaal/dist/js/modaal.js","node_modules/owl.carousel/dist/owl.carousel.js","node_modules/popper.js/dist/umd/popper.js","node_modules/stickyfill/index.js","node_modules/tippy.js/umd/index.js","node_modules/urijs/src/IPv6.js","node_modules/urijs/src/SecondLevelDomains.js","node_modules/urijs/src/URI.js","node_modules/urijs/src/punycode.js","src/js/vendor/bootstrap.js","src/js/vendor/index.js","src/js/vendor/parallax.js-1.4.2/parallax.js","src/js/layout/footer/index.js","src/js/layout/footer/init.js","src/js/layout/header/init.js","src/js/layout/index.js","src/js/layout/module-spacing/collapse-space.js","src/js/layout/module-spacing/index.js","src/js/layout/module-spacing/init.js","src/js/main.js","src/js/modules/analytics/index.js","src/js/modules/analytics/track-goal.js","src/js/modules/analytics/track-link-click.js","src/js/modules/authors/init.js","src/js/modules/auto-download/init.js","src/js/modules/card-grid-module/index.js","src/js/modules/card-grid-module/init.js","src/js/modules/careers-search-hero/init.js","src/js/modules/careers/detail/init.js","src/js/modules/careers/embedded-jobs/init.js","src/js/modules/careers/header/init.js","src/js/modules/careers/index.js","src/js/modules/careers/inline-search/init.js","src/js/modules/careers/landing/init.js","src/js/modules/careers/persona-detail/init.js","src/js/modules/careers/search/apply-cta-handler.js","src/js/modules/careers/search/index.js","src/js/modules/careers/search/init.js","src/js/modules/careers/search/show-all-locations-handler.js","src/js/modules/cycle-words/init.js","src/js/modules/data-table/init.js","src/js/modules/embedded-subscription-module/form-submit.js","src/js/modules/embedded-subscription-module/index.js","src/js/modules/events/detail/init.js","src/js/modules/events/embedded-events/init.js","src/js/modules/events/index.js","src/js/modules/expanding-grid/init.js","src/js/modules/feature-grid-and-list/init.js","src/js/modules/featured-content-columns/init.js","src/js/modules/featured-content-module/init.js","src/js/modules/featured-people/init.js","src/js/modules/featured-topic-list/init.js","src/js/modules/forms/index.js","src/js/modules/forms/init.js","src/js/modules/forms/setup-form-display.js","src/js/modules/forms/setup-form-submit.js","src/js/modules/forms/setup-form-values.js","src/js/modules/global-navigation/init.js","src/js/modules/global-side-promo/init.js","src/js/modules/hero-with-client-stories/init.js","src/js/modules/hero-with-image-and-links/init.js","src/js/modules/hero/init.js","src/js/modules/hub-page/init.js","src/js/modules/iframe-page/did-navigate.js","src/js/modules/iframe-page/index.js","src/js/modules/iframe-page/init.js","src/js/modules/image-slideshow/init.js","src/js/modules/index.js","src/js/modules/input-auto-focus/init.js","src/js/modules/insights-detail/init.js","src/js/modules/landing-pages-search-filter/clear-all-handler.js","src/js/modules/landing-pages-search-filter/dropdowns.js","src/js/modules/landing-pages-search-filter/index.js","src/js/modules/landing-pages-search-filter/init.js","src/js/modules/landing-pages-search-filter/insert-results.js","src/js/modules/landing-pages-search-filter/pagination.js","src/js/modules/landing-pages-search-filter/search.js","src/js/modules/landing-pages-search-filter/showMore.js","src/js/modules/landing-pages-search-filter/table-of-contents.js","src/js/modules/landing-pages-search-filter/tag-handler.js","src/js/modules/landing-pages-search-filter/toggle-module-visibility.js","src/js/modules/large-carousel-module/init.js","src/js/modules/large-image/init.js","src/js/modules/load-more/init.js","src/js/modules/locations/directory/init.js","src/js/modules/locations/index.js","src/js/modules/locations/listing/init.js","src/js/modules/logos-module/init.js","src/js/modules/lottie/init.js","src/js/modules/pagination/generatePagination.js","src/js/modules/pagination/index.js","src/js/modules/paragraph-module/init.js","src/js/modules/parallax-module/init.js","src/js/modules/person-detail/init.js","src/js/modules/personalized-links/init.js","src/js/modules/popup-modal/always-popup.js","src/js/modules/popup-modal/close-popup.js","src/js/modules/popup-modal/index.js","src/js/modules/popup-modal/init.js","src/js/modules/popup-modal/register-popup-cta-events.js","src/js/modules/popup-modal/scroll-distance-popup.js","src/js/modules/popup-modal/set-popup-cookie.js","src/js/modules/popup-modal/time-on-page-popup.js","src/js/modules/popup-modal/time-on-site-popup.js","src/js/modules/popup-modal/trigger-datalayer-event.js","src/js/modules/product-hero-module/index.js","src/js/modules/product-hero-module/init.js","src/js/modules/product-hero-module/update-video-size.js","src/js/modules/pulsepoint/index.js","src/js/modules/pulsepoint/menu-links/init.js","src/js/modules/pulsepoint/mobile-menu/init.js","src/js/modules/pulsepoint/sticky-header/init.js","src/js/modules/resources/index.js","src/js/modules/scroll-experience/init.js","src/js/modules/scroll-to-top/init.js","src/js/modules/search-control/index.js","src/js/modules/search-control/init.js","src/js/modules/search-control/search.js","src/js/modules/search-control/typeAhead.js","src/js/modules/search-rendering/clear-all-handler.js","src/js/modules/search-rendering/handle-back-to-top.js","src/js/modules/search-rendering/handle-checkboxes.js","src/js/modules/search-rendering/handle-filter-toggles.js","src/js/modules/search-rendering/handle-modal-filters.js","src/js/modules/search-rendering/handle-modal-interaction.js","src/js/modules/search-rendering/handle-show-more.js","src/js/modules/search-rendering/handle-tags.js","src/js/modules/search-rendering/index.js","src/js/modules/search-rendering/init.js","src/js/modules/search-rendering/insert-results.js","src/js/modules/search-rendering/search.js","src/js/modules/search-rendering/update-filter-accessibility.js","src/js/modules/secondary-navigation/init.js","src/js/modules/sidebar-blocks/init.js","src/js/modules/tab-select/init.js","src/js/modules/table-of-contents/init.js","src/js/modules/topic-and-tag-footer-list/init.js","src/js/modules/topic-group-landing/init.js","src/js/modules/topic-landing/init.js","src/js/modules/two-column-tabs/init.js","src/js/modules/universal-promo-module/init.js","src/js/modules/vertical-carousel/init.js","src/js/modules/video-hero-bottom/init.js","src/js/modules/video-hero-spinner/init.js","src/js/modules/video-hero/init.js","src/js/modules/video-modal/init.js","src/js/modules/wffm/init.js","src/js/modules/wistia/index.js","src/js/modules/wistia/wistia-form-submit.js","src/js/utils/breakpoints/index.js","src/js/utils/breakpoints/isAtLeastDesktopSm.js","src/js/utils/breakpoints/isAtLeastTablet.js","src/js/utils/breakpoints/isDesktop.js","src/js/utils/breakpoints/isDesktopSm.js","src/js/utils/breakpoints/isMobile.js","src/js/utils/breakpoints/isTablet.js","src/js/utils/consent/cookie-contains-pattern.js","src/js/utils/consent/has-accepted-functional.js","src/js/utils/consent/has-accepted-performance.js","src/js/utils/consent/has-accepted-strictly-necessary.js","src/js/utils/consent/has-accepted-targeting.js","src/js/utils/consent/index.js","src/js/utils/debounce.js","src/js/utils/device-detection/compare-version.js","src/js/utils/device-detection/index.js","src/js/utils/device-detection/is-android-phone.js","src/js/utils/device-detection/is-blackberry.js","src/js/utils/device-detection/is-iphone.js","src/js/utils/device-detection/is-ipod.js","src/js/utils/device-detection/is-mobile-size.js","src/js/utils/element-at-point-in-element.js","src/js/utils/equal-heights/index.js","src/js/utils/equal-heights/register-set-equal-heights.js","src/js/utils/equal-heights/set-equal-heights.js","src/js/utils/get-cookie.js","src/js/utils/get-url-parameter.js","src/js/utils/get-user-agent.js","src/js/utils/index.js","src/js/utils/init.js","src/js/utils/load-script.js","src/js/utils/progress-bar/fill-bar.js","src/js/utils/progress-bar/index.js","src/js/utils/throttle.js","src/js/variables/breakpoints.js","src/js/variables/consent-group-patterns.js","src/js/variables/index.js","src/js/variables/type-ahead.js"],"names":["f","exports","module","define","amd","window","global","self","this","ICF","e","t","n","r","s","o","u","a","require","i","Error","code","l","call","length","1","AOS","id","loaded","m","c","p","__esModule","default","Object","assign","arguments","prototype","hasOwnProperty","d","b","y","h","w","k","x","offset","delay","easing","duration","disable","once","startEvent","throttleDelay","debounceDelay","disableMutationObserver","j","O","init","document","all","atob","mobile","phone","tablet","S","forEach","node","removeAttribute","isSupported","console","info","querySelector","setAttribute","indexOf","readyState","addEventListener","ready","refresh","refreshHard","v","g","apply","setTimeout","_","M","TypeError","leading","maxWait","trailing","cancel","clearTimeout","flush","valueOf","replace","test","slice","Symbol","iterator","constructor","NaN","parseInt","Function","toString","Math","max","min","Date","now","dataset","aos","children","MutationObserver","WebKitMutationObserver","MozMutationObserver","Array","addedNodes","removedNodes","concat","defineProperty","value","observe","documentElement","childList","subtree","navigator","userAgent","vendor","opera","enumerable","configurable","writable","key","substr","pageYOffset","innerHeight","getAttribute","position","classList","add","remove","anchor","anchorPlacement","isNaN","querySelectorAll","top","offsetHeight","offsetLeft","offsetTop","tagName","scrollLeft","scrollTop","offsetParent","left","map","root","factory","lottie","bodymovin","ProjectInterface","roundValues","flag","bmRnd","round","val","styleDiv","element","style","display","transformOrigin","webkitTransformOrigin","backfaceVisibility","webkitBackfaceVisibility","transformStyle","webkitTransformStyle","mozTransformStyle","BMEnterFrameEvent","type","currentTime","totalTime","frameMultiplier","direction","BMCompleteEvent","BMCompleteLoopEvent","totalLoops","currentLoop","BMSegmentStartEvent","firstFrame","totalFrames","BMDestroyEvent","target","BMRenderFrameErrorEvent","nativeError","BMConfigErrorEvent","BMAnimationConfigErrorEvent","HSVtoRGB","q","floor","RGBtoHSV","addSaturationToRGB","color","hsv","addBrightnessToRGB","addHueToRGB","BaseEvent","createSizedArray","len","createNS","createElementNS","svgNS","createTag","createElement","DynamicPropertyContainer","extendPrototype","sources","destination","sourcePrototype","attr","getDescriptor","object","prop","getOwnPropertyDescriptor","createProxyFunction","ProxyFunction","bezFunction","pointOnLine2D","x1","y1","x2","y2","x3","y3","det1","PointData","partial","point","partialLength","getDistancePerc","perc","bezierData","percents","lengths","initPos","bmFloor","lengthPos","addedLength","lPerc","dir","math","getBezierLength","pt1","pt2","pt3","pt4","ptCoord","ptDistance","curveSegments","defaultCurveSegments","lastPoint","lengthData","bezierLengthPool","newElement","bmPow","bmSqrt","buildBezierData","storedData","bezierName","segmentLength","points","bezierSegmentPoints","createTypedArray","getSegmentsLength","shapeData","segmentsLength","segmentsLengthPool","closed","pathV","pathO","pathI","_length","totalLength","getNewSegment","startPerc","endPerc","t0","t1","u0","u1","u0u0u0","t0u0u0_3","t0t0u0_3","t0t0t0","u0u0u1","t0u0u1_3","t0t0u1_3","t0t0t1","u0u1u1","t0u1u1_3","t0t1u1_3","t0t1t1","u1u1u1","t1u1u1_3","t1t1u1_3","t1t1t1","getPointInSegment","percent","pointOnLine3D","z1","z2","z3","diffDist","dist1","sqrt","pow","dist2","dist3","dataFunctionManager","completeLayers","layers","comps","fontManager","layerData","jLen","kLen","completed","tt","td","hasMask","maskProps","masksProperties","pt","convertPathsToAbsoluteValues","ty","__used","JSON","parse","stringify","findCompLayers","refId","completeShapes","shapes","data","singleShape","completeText","arr","ks","it","path","checkVersion","minimum","animVersionString","animVersion","split","checkText","updateTextLayer","textLayer","documentData","iterateLayers","minimumVersion","animationData","assets","checkChars","chars","pathData","paths","__converted","checkColors","iterateShapes","checkShapes","completeClosingShapes","cl","moduleOb","completeData","__complete","getFontProperties","fontData","styles","fStyle","fWeight","toLowerCase","weight","ShapePath","_maxLength","ShapeModifier","TrimModifier","RoundCornersModifier","PuckerAndBloatModifier","RepeaterModifier","ShapeCollection","DashProperty","elem","renderer","container","frameId","dataProps","dashStr","dashArray","dashoffset","initDynamicPropertyContainer","PropertyFactory","getProp","getValue","_isAnimated","GradientProperty","cLength","_cmdf","_omdf","_collapsable","checkCollapsable","_hasOpacity","TextAnimatorProperty","textData","renderType","_isFirstFrame","_hasMaskedPath","_frameId","_textData","_renderType","_elem","_animatorsData","_pathData","_moreOptions","alignment","renderedLetters","lettersChangedFlag","TextAnimatorDataProperty","animatorProps","defaultData","propType","textAnimatorAnimatables","degToRads","rx","ry","sk","sa","sw","sc","fc","fh","fs","fb","TextSelectorProp","getTextSelectorProp","LetterProps","_mdf","TextProperty","initialDefaultFrame","pv","kf","comp","keysIndex","canResize","minimumFontSize","effectsSequence","currentData","ascent","boxWidth","defaultBoxWidth","justifyOffset","lh","lineWidths","ls","of","tr","sz","ps","fillColorAnim","strokeColorAnim","strokeWidthAnim","yOffset","finalSize","finalText","finalLineHeight","copyData","searchProperty","completeTextData","BaseRenderer","SVGRenderer","animationItem","config","renderedFrame","svgElement","ariaLabel","title","titleElement","titleId","createElementID","textContent","appendChild","description","descElement","descId","defs","maskElement","layerElement","renderConfig","preserveAspectRatio","imagePreserveAspectRatio","progressiveLoad","hideOnTransparent","viewBoxOnly","viewBoxSize","className","focusable","filterSize","width","height","globalData","frameNum","elements","pendingElements","destroyed","rendererType","CanvasRenderer","clearCanvas","undefined","context","dpr","wrapper","devicePixelRatio","currentGlobalAlpha","contextData","CVContextData","transformMat","Matrix","HybridRenderer","threeDElements","camera","supports3d","MaskElement","viewData","solidPath","rect","expansor","feMorph","properties","count","currentMasks","layerId","maskType","maskRef","mode","inv","push","op","ShapePropertyFactory","getShapeProp","lastPath","filterID","expan","lastOperator","filterId","lastRadius","mask","locationHref","createLayerSolidPath","invRect","drawPath","maskedElement","addRenderableComponent","HierarchyElement","FrameElement","TransformElement","RenderableElement","RenderableDOMElement","ProcessedElement","pos","SVGStyleData","level","lvl","hd","pElem","msElem","SVGShapeData","transformers","shape","caches","lStr","sh","mProps","dynamicProperties","SVGTransformData","transform","SVGStrokeStyleData","styleOb","iterateDynamicProperties","SVGFillStyleData","SVGGradientFillStyleData","initGradientData","SVGGradientStrokeStyleData","ShapeGroupData","prevViewData","gr","ShapeTransformManager","sequences","sequenceList","transform_key_count","CVShapeData","transformsManager","styledShapes","styledShape","transforms","addTransformSequence","trNodes","BaseElement","NullElement","initFrame","initBaseData","initTransform","initHierarchy","SVGBaseElement","IShapeElement","ITextElement","ICompElement","IImageElement","assetData","getAssetData","initElement","sourceRect","ISolidElement","AudioElement","initRenderable","_isPlaying","_canPlay","assetPath","getAssetsPath","audio","audioController","createAudio","_currentTime","addAudio","tm","frameRate","_placeholder","FootageElement","footageData","imageLoader","getAsset","SVGCompElement","SVGTextLottieElement","textSpans","SVGShapeElement","shapesData","stylesList","shapeModifiers","itemsData","processedElements","animatedContents","SVGTintFilter","filter","filterManager","feColorMatrix","matrixFilter","effectElements","feMerge","feMergeNode","SVGFillFilter","SVGGaussianBlurEffect","feGaussianBlur","SVGStrokeEffect","initialized","SVGTritoneFilter","feComponentTransfer","feFuncR","feFuncG","feFuncB","SVGProLevelsFilter","createFeFunc","feFuncA","feFuncRComposed","feFuncGComposed","feFuncBComposed","SVGDropShadowEffect","feOffset","feFlood","feComposite","originalNodeAdded","SVGMatte3Effect","filterElem","matteElement","transformedElement","baseElement","SVGEffects","ef","filId","fil","filtersFactory","createFilter","filters","effectsManager","saved","cArrPos","cTr","cO","savedOp","CVBaseElement","CVImageElement","img","CVCompElement","CVMaskElement","hasMasks","CVShapeElement","CVSolidElement","CVTextElement","stroke","fill","currentRender","values","sWidth","fValue","CVEffects","HBaseElement","HSolidElement","HCompElement","HShapeElement","shapesContainer","currentBBox","HTextElement","textPaths","isMasked","HImageElement","HCameraElement","pe","px","py","pz","z","or","to","ti","rz","mat","_prevMat","finalTransform","mProp","HEffects","SliderEffect","AngleEffect","ColorEffect","PointEffect","LayerIndexEffect","MaskIndexEffect","CheckboxEffect","NoValueEffect","EffectsManager","effects","effectItem","GroupEffect","setLocationHref","href","searchAnimations","standalone","animationManager","setSubframeRendering","subframeEnabled","loadAnimation","params","setQuality","inBrowser","installPlugin","plugin","expressionsPlugin","getFactory","name","checkReady","clearInterval","readyStateCheckInterval","getQueryVariable","variable","vars","queryString","pair","decodeURIComponent","isSafari","cachedColors","bmMax","bmMin","BMMath","propertyNames","random","abs","absArr","PI","roundCorner","_count","rgbToHex","hex","colorMap","triggerEvent","eventName","args","_cbs","callback","removeEventListener","bind","splice","createRegularArray","createTypedArrayFactory","Float32Array","Int16Array","Uint8ClampedArray","addDynamicProperty","getBlendMode","blendModeEnums","0","2","3","4","5","6","7","8","9","10","11","12","13","14","15","reset","props","rotate","angle","mCos","_cos","mSin","_sin","_t","rotateX","rotateY","rotateZ","shear","sx","sy","skew","ax","ay","_tan","skewFromAxis","scale","setTransform","translate","tx","tz","a2","b2","c2","d2","e2","f2","g2","h2","i2","j2","k2","l2","m2","n2","o2","p2","_p","_identityCalculated","a1","b1","c1","d1","e1","f1","g1","h1","i1","j1","k1","l1","m1","n1","o1","p1","isIdentity","_identity","equals","matr","clone","cloneFromProps","applyToPoint","applyToX","applyToY","applyToZ","getInverseMatrix","determinant","inverseMatrix","inversePoint","applyToPointArray","inversePoints","pts","retPts","applyToTriplePoints","p0","p4","p5","p12","p13","applyToPointStringified","toCSS","cssValue","_rnd","roundMatrixProperty","to2dCSS","cos","sin","tan","pool","copy","flatten","obj","depth","result","typ","mixkey","seed","smear","stringseed","charCodeAt","tostring","String","fromCharCode","nodecrypto","chunks","rngname","startdenom","significance","overflow","options","shortseed","entropy","randomBytes","out","Uint8Array","crypto","msCrypto","getRandomValues","browser","plugins","screen","autoseed","arc4","keylen","me","prng","int32","quick","double","pass","is_math_call","state","BezierFactory","A","aA1","aA2","B","C","calcBezier","aT","getSlope","BezierEasing","_mSampleValues","float32ArraySupported","kSplineTableSize","_precomputed","get","ob","getBezierEasing","nm","str","beziers","bezEasing","NEWTON_ITERATIONS","SUBDIVISION_PRECISION","SUBDIVISION_MAX_ITERATIONS","kSampleStepSize","mX1","mY1","mX2","mY2","_precompute","_getTForX","_calcSampleValues","aX","mSampleValues","intervalStart","currentSample","lastSample","guessForT","initialSlope","aGuessT","currentSlope","newtonRaphsonIterate","aA","aB","currentX","currentT","binarySubdivide","lastTime","vendors","requestAnimationFrame","cancelAnimationFrame","currTime","getTime","timeToCall","bez","dataManager","FontManager","setUpNode","font","family","parentNode","fontFamily","innerText","fontSize","fontVariant","fontStyle","fontWeight","letterSpacing","body","offsetWidth","familyArray","enabledFamilies","join","trimFontOptions","parent","createHelper","def","tHelper","fontProps","fFamily","fClass","getContext","maxWaitingTime","emptyChar","size","combinedCharacters","Font","fonts","typekitLoaded","isLoaded","_warned","initTime","setIsLoadedBinded","setIsLoaded","checkLoadedFontsBinded","checkLoadedFonts","getCombinedCharacterCodes","addChars","found","ch","addFonts","list","fontArr","_pendingFonts","loadedSelector","shouldLoadFont","monoCase","sansCase","fPath","fOrigin","origin","rel","src","helper","cache","getCharData","char","warn","getFontByName","fName","measureText","fontName","index","doubleSize","getComputedTextLength","singleSize","loadedCount","removeChild","interpolateValue","caching","newValue","offsetTime","keyData","nextKeyData","iterationIndex","lastIndex","keyframes","fnc","endValue","nextKeyTime","keyTime","ind","__fnct","segmentPerc","distanceInLine","lastFrame","_lastKeyframeIndex","_lastAddedLength","_lastPoint","outX","outY","inX","inY","keyValue","quat","qx","qy","qz","qw","heading","atan2","attitude","asin","bank","quaternionToEuler","omega","cosom","sinom","scale0","scale1","az","aw","bx","by","bz","bw","acos","slerp","createQuaternion","c3","s1","s2","s3","getValueAtCurrentTime","endTime","_caching","renderResult","setVValue","multipliedValue","mult","mathAbs","processEffectsSequence","lock","finalValue","addEffect","effectFunction","vel","st","arrLen","TransformPropertyFactory","TransformProperty","pre","appliedTransformations","_isDirty","defaultVector","applyToMatrix","forceRender","precalculateMatrix","autoOriented","v1","v2","getValueAtTime","autoOrient","_addDynamicProperty","getTransformProperty","setPathData","setLength","pointPool","doubleArrayLength","setXYAt","setTripleAt","vX","vY","oX","oY","iX","iY","reverse","newPath","vertices","outPoints","inPoints","cnt","interpolateShape","previousValue","keyPropS","keyPropE","isHold","vertexValue","resetShape","localShapeCollection","shape1","shape2","shapesEqual","shapePool","releaseShapes","addShape","ShapeProperty","shapeCollectionPool","newShapeCollection","KeyframedShapeProperty","EllShapeProperty","EllShapePropertyFactory","convertEllToPath","cPoint","s0","_cw","_v","StarShapeProperty","StarShapePropertyFactory","ir","is","convertToPath","convertStarToPath","convertPolygonToPath","os","rad","roundness","perimSegment","numPts","longFlag","longRad","shortRad","longRound","shortRound","longPerimSegment","shortPerimSegment","currentAng","ox","oy","RectShapeProperty","RectShapePropertyFactory","convertRectToPath","v0","getConstructorFunction","getKeyframedConstructorFunction","ShapeModifiers","modifiers","registerModifier","getModifier","initModifierProperties","addShapeToModifier","setAsAnimated","processKeys","sValue","eValue","pathsData","calculateShapeEdges","shapeLength","totalModifierLength","segments","segmentOb","shapeSegments","shapeS","shapeE","releasePathsData","release","processShapes","_s","shapePaths","totalShapeLength","edges","newShapesData","addShapes","lastShape","pop","addPaths","newPaths","addSegment","shapePath","newShape","addSegmentFromArray","shapeSegment","currentLengthData","segmentCount","segment","rd","processPath","clonedPath","currentV","currentI","currentO","closerV","distance","newPosPerc","amount","centerPoint","pathLength","so","eo","pMatrix","rMatrix","sMatrix","tMatrix","matrix","applyTransforms","scaleX","scaleY","elemsData","_currentCopies","_elements","_groups","unshift","resetElements","_processed","cloneElements","newElements","changeGroupRender","renderFlag","_render","items","itemsTransform","cont","hasReloaded","copies","ceil","group","ix","reloadShapes","elems","transformData","offsetModulo","roundOffset","pProps","rProps","sProps","iteration","comparePoints","buildShapeString","pathNodes","_o","_i","shapeString","audioControllerFactory","AudioController","audioFactory","audios","_volume","_isMuted","pause","resume","setRate","rateValue","Howl","isPlaying","play","seek","playing","rate","setVolume","setAudioFactory","_updateVolume","mute","unmute","getVolume","volume","ImagePreloader","imageLoaded","loadedAssets","totalImages","loadedFootagesCount","totalFootages","imagesLoadedCb","footageLoaded","assetsPath","originalPath","imagePath","ImagePreloaderFactory","_imageLoaded","_footageLoaded","testImageLoaded","intervalId","setInterval","getBBox","createFootageData","assetLoader","load","images","proxyImage","canvas","ctx","fillStyle","fillRect","loadAssets","cb","_createImageData","setAssetsPath","setPath","loadedImages","loadedFootages","destroy","createImgData","crossOrigin","createImageData","setAttributeNS","_elementHelper","append","setCacheType","elementHelper","featureSupport","skipCoordinates","createAlphaToLuminanceFilter","formatResponse","xhr","response","responseText","errorCallback","XMLHttpRequest","responseType","err","onreadystatechange","status","open","send","searchProperties","maskManager","getMaskProperty","getMeasures","xPos","yPos","pathInfo","currentLength","currentPoint","pointInd","segmentInd","prevPoint","tanAngle","animators","matrixHelper","mHelper","renderedLettersCount","letters","tLength","pi","animatorSelector","letterValue","yOff","firstLine","offf","xPathPos","yPathPos","elemOpacity","letterSw","letterSc","letterFc","letterO","initPathPos","initSegmentInd","initPointInd","currentLine","letterM","letterP","defaultPropsArray","animatorJustifyOffset","animatorFirstCharOffset","justifyOffsetMult","isNewLine","getMult","anIndexes","totalChars","line","extra","an","animatorOffset","rot","atan","update","updated","setCurrentData","searchKeyframes","getKeyframeValue","_finalValue","currentValue","currentIndex","textKeys","buildFinalText","text","charCode","charactersArray","charAt","newLineFlag","charData","anchorGrouping","currentSize","currentPos","lineWidth","maxLineWidth","trackingOffset","currentHeight","boxHeight","lastSpaceIndex","currentChar","uncollapsedSpaces","animatorData","letterData","based","indexes","rn","newInd","currentInd","updateDocumentData","newData","dData","recalculate","canResizeFont","_canResize","setMinimumFontSize","_fontValue","TextSelectorPropFactory","_currentTextLength","finalS","finalE","xe","ne","textProperty","easer","tot","newCharsFlag","divisor","poolFactory","initialLength","_create","_release","pooling","cloned","shapeCollection","markerParser","parsePayloadLines","payload","lines","keys","keysCount","trim","_markers","markers","_marker","markerData","time","dr","cm","__","checkLayers","num","ip","buildItem","checkPendingElements","createItem","layer","createImage","createComp","createSolid","createNull","createShape","createText","createCamera","createFootage","buildAllItems","includeLayers","newLayers","setProjectInterface","pInterface","projectInterface","initItems","buildElementParenting","parentName","hierarchy","setAsParent","setHierarchy","addPendingElement","searchExtraCompositions","xt","initExpressions","registerComposition","setupGlobalData","animData","fontsContainer","imagePreloader","fr","compSize","configAnimation","maskId","updateContainerSize","appendElementInPos","setMatte","checkParenting","renderFrame","currentFrame","prepareFrame","getBaseElement","nextElement","insertBefore","hide","show","ctxTransform","cProps","trProps","canvasContext","ctxOpacity","globalAlpha","restore","save","actionFlag","duplicate","blendMode","popped","containerStyle","mozTransformOrigin","transformCanvas","isDashed","elementWidth","elementHeight","elementRel","animationRel","par","fillType","beginPath","closePath","clip","clearRect","newDOMElement","ddd","addTo3dContainer","nextDOMElement","nextLayer","getThreeDContainerByPos","startPos","endPos","perspectiveElem","createThreeDContainer","webkitTransform","threeDContainerData","build3dContainers","lastThreeDContainerData","currentContainer","resizerElem","svg","setup","cWidth","cHeight","webkitPerspective","perspective","floatingContainer","isFirstFrame","finalMat","getMaskelement","pathString","pathShapeValue","_isParent","prepareProperties","isVisible","_matMdf","_opMdf","ao","renderTransform","globalToLocal","ptNew","isInRange","hidden","isTransparent","renderableComponents","component","removeRenderableComponent","prepareRenderableFrame","checkLayerLimits","checkTransparency","renderRenderable","sourceRectAtTime","getLayerSize","initRendererElement","createContainerElements","createRenderableComponents","createContent","renderElement","renderInnerContent","innerElem","destroyBaseElement","stops","setGradientData","setGradientOpacity","pathElement","gradientId","gfill","stop","gf","cst","opacityId","opFill","ms","ost","SVGElementsRenderer","renderContentTransform","styleData","itemData","renderPath","pathStringTransformed","redraw","iterations","lLen","_matrixHelper","_identityMatrix","renderFill","styleElem","renderGradientStroke","renderGradient","renderStroke","hasOpacity","attr1","attr2","cValues","oValues","ang","dist","createRenderFunction","sequence","processSequence","processSequences","getNewKey","checkMasks","layerInterface","LayerExpressionInterface","registerMaskInterface","effectsInterface","EffectsExpressionInterface","createEffectsInterface","registerEffectsInterface","compInterface","CompExpressionInterface","shapeInterface","ShapeExpressionInterface","content","textInterface","TextExpressionInterface","setBlendMode","blendModeValue","bm","sr","getType","_sizeChanged","gg","layerElementParent","masker","maskGroup","maskGrouper","feCTr","feFunc","alphaRect","ln","cp","clipId","cpGroup","renderableEffectsManager","addShapeToModifiers","isShapeInAnimatedModifiers","isAnimatedWithShape","renderModifiers","lcEnum","ljEnum","searchProcessedElement","addProcessedElement","textAnimator","buildNewText","createPathShape","shapeStr","_fontSize","applyTextPropertiesToMatrix","lineNumber","buildColor","colorData","emptyProp","timeRemapped","setElements","getElements","destroyElements","pr","volumeValue","FootageInterface","getFootageData","textContainer","buildTextContents","textArray","textContents","currentTextContent","usesGlyphs","tSpan","cachedSpansLength","tElement","justify","textBox","bbox","renderedLetter","textSpan","initSecondaryElement","identityMatrix","buildExpressionInterface","searchShapes","filterUniqueShapes","tempShapes","areAnimated","setShapesAsAnimated","createStyleElement","elementData","lc","lj","ml","addToAnimatedContents","createGroupElement","createTransformElement","transformProperty","createShapeElement","ownTransformers","fn","setElementStyles","render","currentTransform","modifier","processedPos","ownStyles","ownModifiers","renderShape","animatedContent","colorBlack","colorWhite","opacity","sigma","dimensions","sigmaX","sigmaY","edgeMode","initialize","groupPath","elemChildren","childNodes","pathMasker","dasharrayValue","getTotalLength","lineLength","units","color1","color2","color3","tableR","tableG","tableB","getTableValue","inputBlack","inputWhite","gamma","outputBlack","outputWhite","colorValue","table","outputDelta","inputDelta","col","_svgMatteSymbols","findSymbol","replaceInParent","symbolId","nextChild","useElem","setElementAsMask","symbol","newLength","currentSavedOp","set","createElements","globalCompositeOperation","hideElement","showElement","forceRealStack","widthCrop","heightCrop","imgW","imgH","imgRel","canvasRel","drawImage","moveTo","lineTo","bezierCurveTo","transformHelper","dashResetter","preTransforms","co","wi","da","do","addTransformToStyleList","removeTransformFromStyleList","closeStyles","shouldRender","ownTransforms","_shouldRender","renderShapeTransform","parentTransform","groupTransform","drawLayer","nodes","currentStyle","coOp","strokeStyle","grd","lineCap","lineJoin","miterLimit","setLineDash","lineDashOffset","isMain","renderGradientFill","renderStyledShape","shapeNodes","groupTransformMat","createLinearGradient","createRadialGradient","addColorStop","hasFill","hasStroke","commands","pathArr","lastFill","lastStroke","lastStrokeW","checkBlendMode","tg","transformedElementStyle","matrixValue","addEffects","backgroundColor","_createBaseContainerElements","_renderShapeFrame","shapeCont","getTransformedPoint","calculateShapeBoundingBox","item","boundingBox","vPoint","oPoint","nextIPoint","nextVPoint","checkBounds","getBoundsOfCurve","bounds","shapeBoundingBox","xMax","right","yMax","bottom","tempBoundingBox","p3","b2ac","t2","calculateF","calculateBoundingBox","currentBoxContains","box","changed","shapeStyle","shapeTransform","compW","compH","innerElemStyle","textColor","strokeWidth","lineHeight","tParent","tCont","tContStyle","tContTranslation","tStyle","tSpanTranslation","svgStyle","translation","textPath","margin","svgTransform","Image","imageElem","perspectiveStyle","mTransf","diffVector","mag","lookDir","lookLengthOnXZ","mRotationX","mRotationY","hasMatrixChanged","matValue","removeElement","ev","animItem","registeredAnimations","animation","isPaused","subtractPlayingCount","registerAnimation","AnimationItem","setupAnimation","setData","addPlayingCount","playingAnimationsNum","activate","nowTime","elapsedTime","advanceTime","_isFrozen","_stopped","first","setParams","setSpeed","setDirection","togglePause","animElements","getElementsByClassName","lenAnims","getElementsByTagName","div","resize","goToAndStop","isFrame","freeze","unfreeze","getRegisteredAnimations","animations","currentRawFrame","frameMult","playSpeed","playDirection","playCount","autoplay","loop","animationID","timeCompleted","segmentPos","isSubframeEnabled","_idle","_completedLoop","animType","rendererSettings","autoloadSegments","initialSegment","lastIndexOf","fileName","trigger","wrapperAttributes","attributes","getNamedItem","prerender","loadNextSegment","shift","segmentPath","loadSegments","imagesLoaded","checkLoaded","preloadImages","updaFrameModifier","waitForFontsLoaded","error","triggerConfigError","gotoFrame","setSubframe","triggerRenderFrameError","setCurrentRawFrameValue","getMarkerData","markerName","marker","numValue","Number","frameModifier","goToAndPlay","playSegments","nextValue","_isComplete","checkSegments","adjustSegment","setSegment","end","pendingFrame","forceFlag","resetSegments","onEnterFrame","onLoopComplete","onComplete","onSegmentStart","onDestroy","getPath","getDuration","onError","Expressions","stackCount","registers","pushExpression","popExpression","releaseInstances","registerExpressionProperty","expression","ExpressionManager","$bm_isInstanceOfArray","isNumerable","tOfV","$bm_neg","tOfA","lenA","retArr","sum","tOfB","lenB","sub","mul","mod","clamp","mm","radiansToDegrees","degreesToRadians","arr1","arr2","helperLengthArray","normalize","vec","rgbToHsl","hue2rgb","hslToRgb","linear","tMin","tMax","value1","value2","_tMin","rnd","createPath","inTangents","outTangents","inVertexPoint","outVertexPoint","arrPlaceholder","initiateExpression","property","loopInDuration","loopIn","loopOutDuration","loopOut","lookAt","elem1","elem2","fVec","pitch","easeOut","val1","val2","applyEase","easeOutBez","easeIn","easeInBez","ease","easeInOutBez","iKey","lenKey","nearestKey","obKey","framesToTime","frames","fps","timeToFrames","seedRandom","seedrandom","randSeed","substring","posterizeTime","framesPerSecond","valueAtTime","executeExpression","_value","_needsRandom","frameExpressionId","textIndex","textTotal","selectorValue","thisLayer","thisComp","toWorld","fromWorld","fromComp","toComp","fromCompToSurface","$bm_transform","anchorPoint","elemType","effect","hasParent","needsVelocity","velocity","velocityAtTime","expression_function","scoped_bm_rt","thisProperty","frameDuration","displayStartTime","inPoint","outPoint","loop_in","loop_out","smooth","rotation","eval","numKeys","active","wiggle","freq","amp","iWiggle","lenWiggle","addedAmps","periods","getVelocityAtTime","$bm_sum","$bm_sub","$bm_mul","$bm_div","$bm_mod","radians_to_degrees","degrees_to_radians","expressionHelpers","searchExpressions","getSpeedAtTime","speed","_cachingAtTime","getStaticValueAtTime","setGroupProperty","propertyGroup","durationFlag","lastKeyFrame","cycleDuration","firstKeyFrame","ret","initV","endV","current","repeats","lastValue","nextLastValue","firstValue","nextFirstValue","samples","sampleFrequency","sampleValue","ShapeExpressions","_transformCachingAtTime","skewAxis","rotationZ","rotationY","rotationX","orientation","positionX","positionY","positionZ","propertyGetProp","propertyIndex","ShapePropertyConstructorFunction","KeyframedShapePropertyConstructorFunction","isClosed","pointOnPath","_segmentsLength","accumulatedLength","initIndex","endIndex","vectorOnPath","vectorType","xLength","yLength","magnitude","tangentOnPath","normalOnPath","shapeValue","propertyGetShapeProp","trims","getExpressionValue","calculateExpression","isKeyframed","hasExpressions","ShapePathInterface","view","interfaceFunction","_propertyGroup","propertyGroupFactory","PropertyInterface","defineProperties","_name","mn","parentPropertyGroup","propertyName","iterateElements","interfaces","numProperties","transformInterface","transformInterfaceFactory","cix","contentsInterfaceFactory","np","groupInterfaceFactory","ExpressionPropertyInterface","fillInterfaceFactory","addPropertyToDashOb","dashOb","_dashPropertyGroup","dash","strokeInterfaceFactory","start","trimInterfaceFactory","ellipseInterfaceFactory","outerRadius","outerRoundness","innerRoundness","innerRadius","starInterfaceFactory","rectInterfaceFactory","radius","roundedInterfaceFactory","repeaterInterfaceFactory","_interfaceFunction","_thisLayerFunction","sourceText","_sourceText","stringValue","_prevValue","getMatrix","toWorldMat","toWorldVec","applyPoint","fromWorldVec","invertPoint","sampleImage","anchorPointDescriptor","TransformExpressionInterface","anchor_point","startTime","source","MaskManagerInterface","dataInterfaceFactory","outlineInterface","currentProperty","currentPropertyName","propertyNameIndex","outlineInterfaceFactory","dataInterface","pixelAspect","numLayers","_thisFunction","xRotation","yRotation","xPosition","yPosition","zPosition","_px","_py","_pz","_transformFactory","compositions","_thisProjectFunction","createGroupInterface","groupInterface","expressionProperty","createValueInterface","enabled","en","effectsData","MaskInterface","_mask","_data","_masksInterfaces","completeProperty","expressionValue","valueProp","speedAtTime","defaultGetter","defaultUnidimensionalValue","defaultMultidimensionalValue","UnidimensionalPropertyInterface","arrValue","MultidimensionalPropertyInterface","getValueProxy","total","propertyGetTextProp","TextExpressionSelectorPropFactory","eff","__getFactory","version","scripts","myScript","$","modaal_inline_options","inline_options","content_source","animation_speed","after_callback_delay","is_locked","hide_close","background","overlay_opacity","overlay_close","accessible_title","start_open","fullscreen","custom_class","close_text","close_aria_label","background_scroll","confirm_button_text","confirm_cancel_button_text","confirm_title","confirm_content","gallery_active_class","loading_content","loading_class","ajax_error_class","instagram_id","modaal","Modaal","dom","$elem","extend","scope","is_open","private_options","active_class","lastFocus","close_btn","on","preventDefault","create_modaal","outer_controls","mod_class","prev_btn","next_btn","should_open","before_open","create_basic","fetch_ajax","create_confirm","create_image","create_iframe","create_video","create_instagram","watch_events","off","keyCode","contains","getElementById","find","focus","shiftKey","activeElement","modaal_close","hasClass","gallery_update","closest","confirm_callback","confirm_cancel_callback","build_modal","igClass","animation_class","wrap_class","fullscreen_class","dimensionsStyle","touchTrigger","is_touch","build_markup","appendTo","modaal_overlay","contents","detach","empty","error_msg","ig_url","ajax","url","dataType","success","html","instgrm","Embeds","process","removeClass","addClass","abort","ajax_success","statusText","gallery_total","modaal_image_markup","use_group","gallery_group","gallery_group_items","removeAttr","gallery","each","img_src","img_alt","img_description","img_active","img_src_error","data_modaal_desc","data_item_active","gallery_item","alt","rawdesc","desc","src_error","is_active","aria_label","this_img_src","this_img_alt","this_gallery","this_gallery_total","new_img_w","new_img_h","current_item","incoming_item","next","prev","before_image_change","animate","css","doc_width","width_threshold","new_natural_w","new_natural_h","after_image_change","modaal_open","modal_wrapper","animation_type","after_open","before_close","after_close","action","maxTouchPoints","modaal_existing_selectors","existing_modaal","create","single_modaal","modaal_dom_observer","mutations","mutation","some","el","elm","modaalSelector","observer_config","characterData","jQuery","Owl","settings","Defaults","$element","_handlers","_plugins","_supress","_current","_speed","_coordinates","_breakpoint","_width","_items","_clones","_mergers","_widths","_invalidated","_pipe","_drag","pointer","stage","_states","tags","initializing","animating","dragging","proxy","handler","Plugins","Workers","priority","worker","run","center","rewind","checkVisibility","mouseDrag","touchDrag","pullDrag","freeDrag","stagePadding","merge","mergeFit","autoWidth","startPosition","rtl","smartSpeed","fluidSpeed","dragEndSpeed","responsive","responsiveRefreshRate","responsiveBaseElement","fallbackEasing","slideTransition","nestedItemSelector","itemElement","stageElement","refreshClass","loadedClass","loadingClass","rtlClass","responsiveClass","dragClass","itemClass","stageClass","stageOuterClass","grabClass","Width","Default","Inner","Outer","Type","Event","State","relative","$stage","grid","margin-left","margin-right","toFixed","widths","clones","repeat","prepend","outerHTML","prependTo","previous","coordinates","padding","padding-left","padding-right","eq","maximum","inner","outer","begin","matches","initializeStage","class","wrap","initializeItems","$items","not","invalidate","enter","toggleClass","imgs","nestedSelector","preloadAutoWidthImages","registerEventHandlers","leave","viewport","overwrites","match","breakpoint","RegExp","optionsLogic","prepare","event","grep","dimension","onThrottledResize","resizeTimer","onResize","isDefaultPrevented","support","transition","onTransitionEnd","onDragStart","onDragEnd","which","one","delta","difference","onDragMove","pull","coordinate","transform3d","part","suppress","isNumeric","reciprocalItemsWidth","mergers","odd","even","multiplier","newPosition","from","factor","revert","stopPropagation","srcElement","originalTarget","innerWidth","clientWidth","nodeType","addBack","after","before","unwrap","removeData","listener","capture","attachEvent","detachEvent","namespace","camelCase","relatedTarget","onTrigger","register","special","owl","_default","tag","inArray","events","originalEvent","touches","changedTouches","pageX","pageY","clientX","clientY","number","parseFloat","second","owlCarousel","option","$this","Constructor","Zepto","AutoRefresh","carousel","_core","_interval","_visible","initialized.owl.carousel","autoRefresh","watch","autoRefreshInterval","getOwnPropertyNames","Lazy","_loaded","initialized.owl.carousel change.owl.carousel resized.owl.carousel","lazyLoad","lazyLoadEager","$item","$elements","image","onload","background-image","handlers","AutoHeight","_previousHeight","initialized.owl.carousel refreshed.owl.carousel","autoHeight","changed.owl.carousel","loaded.owl.lazy","_intervalId","refThis","autoHeightClass","lazyLoadEnabled","visible","toArray","heights","maxheight","Video","_videos","_playing","resize.owl.carousel","video","isInFullScreen","refreshed.owl.carousel","prepared.owl.carousel","fetch","videoHeight","videoWidth","thumbnail","tnLink","icon","customTn","srcType","lazyClass","jsonp","thumbnail_large","framegrab_url","insertAfter","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","Animate","core","swapping","change.owl.carousel","drag.owl.carousel dragged.owl.carousel translated.owl.carousel","translate.owl.carousel","animateOut","animateIn","swap","clear","incoming","outgoing","Autoplay","_call","_time","_timeout","_paused","play.owl.autoplay","stop.owl.autoplay","mouseover.owl.autoplay","autoplayHoverPause","mouseleave.owl.autoplay","touchstart.owl.core","touchend.owl.core","autoplayTimeout","autoplaySpeed","_next","read","timeout","elapsed","Navigation","_initialized","_pages","_controls","_templates","_overrides","dotsData","dotClass","added.owl.carousel","remove.owl.carousel","draw","nav","navText","navSpeed","navElement","navContainer","navContainerClass","navClass","slideBy","dotsClass","dots","dotsEach","dotsSpeed","dotsContainer","override","$relative","$previous","$next","$absolute","control","overides","lower","upper","disabled","page","getPosition","successor","standard","Hash","_hashes","hash","location","URLhashListener","prefixed","toUpperCase","prefixes","WebkitTransition","MozTransition","OTransition","WebkitAnimation","MozAnimation","OAnimation","tests","Popper","isFunction","functionToCheck","getStyleComputedProperty","ownerDocument","defaultView","getComputedStyle","getParentNode","nodeName","host","getScrollParent","_getStyleComputedProp","overflowX","overflowY","isIE","isIE11","isIE10","getOffsetParent","noOffsetParent","nextElementSibling","getRoot","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","firstElementChild","isOffsetContainer","element1root","getScroll","upperSide","scrollingElement","getBordersSize","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","getClientRect","offsets","_extends","getBoundingClientRect","sizes","clientHeight","horizScrollbar","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","marginTop","marginLeft","subtract","includeScroll","isFixed","getFixedPositionOffsetParent","parentElement","getBoundaries","popper","reference","boundariesElement","boundaries","excludeScroll","relativeOffset","getViewportOffsetRectRelativeToArtbitraryNode","boundariesNode","_getWindowSizes","isPaddingNumber","computeAutoPlacement","placement","refRect","rects","sortedAreas","area","_ref","getArea","sort","filteredAreas","_ref2","computedPlacement","variation","getReferenceOffsets","getOuterSizes","marginBottom","marginRight","getOppositePlacement","matched","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","check","runModifiers","ends","findIndex","cur","isModifierEnabled","modifierName","getSupportedPropertyName","upperProp","prefix","toCheck","getWindow","attachToScrollParents","scrollParents","isBody","passive","enableEventListeners","eventsEnabled","updateBound","scrollElement","setupEventListeners","scheduleUpdate","disableEventListeners","removeEventListeners","isFinite","setStyles","unit","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","clockwise","counter","validPlacements","parseOffset","basePlacement","useHeight","fragments","frag","divider","search","splitRegex","ops","mergeWithPrevious","reduce","toValue","index2","isBrowser","longerTimeoutBrowsers","timeoutDuration","debounce","Promise","called","resolve","then","scheduled","MSInputMethodContext","documentMode","classCallCheck","instance","createClass","descriptor","protoProps","staticProps","isFirefox","placements","BEHAVIORS","FLIP","CLOCKWISE","COUNTERCLOCKWISE","positionFixed","removeOnDestroy","onCreate","onUpdate","shiftvariation","_data$offsets","isVertical","side","shiftOffsets","preventOverflow","transformProp","popperStyles","primary","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","sideCapitalized","altSide","arrowElementSize","popperMarginSide","popperBorderSide","sideValue","flip","flipped","originalPlacement","placementOpposite","flipOrder","behavior","step","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","subtractLength","bound","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","prefixedProperty","willChange","invertTop","invertLeft","x-placement","arrowStyles","applyStyle","setAttributes","onLoad","modifierOptions","_this","isDestroyed","isCreated","jquery","Utils","PopperUtils","doc","win","seppuku","rebuild","kill","noop","parseNumeric","updateScrollPos","scroll","pageXOffset","onScroll","recalcAllPos","onWheel","watchArray","recalcElementPos","inited","currentMode","limit","nodeStyle","switchElementMode","computed","isCell","refElement","nextSibling","cloneStyle","border","borderSpacing","cssFloat","docOffsetTop","getDocOffsetTop","deinitElement","deinitParent","killClone","targetObj","sourceObject","mergeObjects","initAll","deinitAll","getElementParams","parentComputedStyle","cachedPosition","numeric","paddingLeft","paddingRight","borderRightWidth","nodeOffset","getElementOffset","parentOffset","borderBottomWidth","startFastCheckTimer","checkTimer","deltaTop","deltaHeight","fastCheck","stopFastCheckTimer","handlePageVisibilityChange","hiddenPropertyName","visibilityChangeEventName","webkitHidden","block","stickies","tippy","arrayFrom","selector","closestCallback","onDocumentTouch","isUsingTouch","isIOS","IOS_CLASS","performance","onDocumentMouseMove","lastMouseMoveTime","onWindowBlur","blur","_tippy","defaultValue","isArray","arg","includes","isRealElement","Element","isSingular","invokeWithArgsOrReturn","setFlipModifierEnabled","setTransitionDuration","els","transitionDuration","setVisibilityState","evaluateProps","ignoreAttributes","acc","valueAsString","getDataAttributeOptions","isUCBrowser","animateFill","validateOptions","defaultProps","setInnerHTML","setContent","contentEl","allowHTML","getChildren","tooltip","TOOLTIP_SELECTOR","backdrop","BACKDROP_SELECTOR","CONTENT_SELECTOR","ARROW_SELECTOR","ROUND_ARROW_SELECTOR","addInertia","createArrowElement","arrowType","ROUND_ARROW_CLASS","ARROW_CLASS","createBackdropElement","BACKDROP_CLASS","addInteractive","updateTransitionEndListener","webkitTransition","getBasicPlacement","fullPlacement","PLACEMENT_ATTRIBUTE","updateTheme","theme","themeName","createTippy","collectionProps","removeFollowCursorListener","positionVirtualReferenceNearCursor","cleanupInteractiveMouseListeners","scheduleHide","debouncedOnMouseMove","mouseMoveListeners","getEventListenersTarget","triggerTarget","addDocumentClickListener","onDocumentClick","removeDocumentClickListener","getTransitionableElements","popperChildren","getIsInLooseFollowCursorMode","followCursor","lastTriggerEventType","currentTransitionEndListener","eventType","listeners","addTriggersToReference","touchHold","PASSIVE","onMouseLeave","onDelegateShow","onDelegateHide","onBlur","removeTriggersFromReference","_lastMouseMoveEvent","lastMouseMoveEvent","currentComputedPadding","isCursorOverReference","isHorizontal","isVerticalPlacement","halfSize","verticalIncrease","horizontalIncrease","interactive","popperInstance","referenceNode","isEnabled","isEventListenerStopped","MouseEvent","hideOnClick","scheduleShow","onMouseMove","isCursorOverPopper","POPPER_SELECTOR","popperPlacement","interactiveBorder","exceedsTop","exceedsBottom","exceedsLeft","exceedsRight","isCursorOutsideInteractiveBorder","supportsTouch","isTouchEvent","runMountCallback","hasMountCallbackRun","currentMountCallback","reflow","createPopperInstance","applyMutations","flipOnUpdate","OUT_OF_BOUNDARIES_ATTRIBUTE","previousPlacement","wasVisibleDuringPreviousUpdate","basicPlacement","getOffsetDistanceInPx","preventOverflowModifier","PADDING","computedPadding","popperOptions","_instance$popperChild","boundary","flipBehavior","shouldAvoidCallingOnTrigger","clearDelayTimeouts","targetEl","showOnInit","createDelegateChildTippy","isScheduledToShow","wait","isMounted","showTimeoutId","hideTimeoutId","scheduleHideAnimationFrameId","prevProps","nextProps","interactiveDebounce","_getChildren","zIndex","maxWidth","role","replaceChild","removeInteractive","inertia","removeInertia","updatePopperElement","POPPER_INSTANCE_DEPENDENCIES","touch","hasAttribute","onShow","visibility","ACTIVE_CLASS","transitionableElements","isInLooseFollowCursorMode","transitionDelay","sticky","updatePosition","currentRefRect","prevRefRect","updateDuration","makeSticky","onTransitionedIn","aria","onShown","isShown","onMount","mount","isBeingDestroyed","onHide","onTransitionedOut","onHidden","multiple","idCounter","POPPER_CLASS","TOOLTIP_CLASS","CONTENT_CLASS","createPopperElement","enable","destroyTargetInstances","child","lazy","a11y","canReceiveFocus","targets","globalEventListenersBound","isBareVirtualElement","virtualReference","polyfills","isVirtual","classNames","polyfillElementPrototypeProperties","instances","NodeList","getArrayOfElements","autoInit","ua","platform","MSStream","elementProto","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","defaults","setDefaults","partialDefaults","hideAll","excludedReferenceOrInstance","exclude","isExcluded","isReferenceElement","setIsAnyTippyOpen","isAnyTippyOpen","updateInstances","_originalProps","_ref$delay","_ref$duration","IPv6","_IPv6","best","address","_segments","_best","inzeroes","noConflict","SecondLevelDomains","_SecondLevelDomains","SLD","ac","ae","af","al","ar","at","au","ba","bb","bh","bn","bo","br","bs","ca","ck","cn","cr","cy","dz","ec","eg","er","es","et","fj","fk","gh","gn","gt","gu","hk","hu","il","in","iq","je","jo","jp","ke","kh","ki","km","kn","kr","kw","ky","kz","lb","lk","lr","lv","ly","ma","mc","mg","mk","mo","mt","mv","mw","mx","my","nf","ng","ni","nr","om","ph","pk","pl","pw","ro","rs","sb","sl","sv","tw","mu","mz","na","nz","pa","qa","re","ru","rw","sd","se","sg","sn","th","tj","tn","ug","uk","us","uy","ve","vi","vn","ye","yu","za","zm","com","net","org","de","has","domain","tldOffset","sldOffset","sldList","URI","punycode","base","_urlSupplied","_baseSupplied","absoluteTo","escapeRegEx","string","filterArrayValues","lookup","arrayContains","_type","arraysEqual","two","trimSlashes","escapeForDumbFirefox36","escape","strictEncodeURIComponent","encodeURIComponent","generateSimpleAccessor","_part","build","_parts","generatePrefixAccessor","_key","_URI","hasOwn","protocol","username","password","hostname","urn","port","query","fragment","preventInvalidHostname","duplicateQueryParameters","escapeQuerySpace","protocol_expression","idn_expression","punycode_expression","ip4_expression","ip6_expression","find_uri_expression","findUri","parens","defaultPorts","http","https","ftp","gopher","ws","wss","hostProtocols","invalid_hostname_characters","domAttributes","blockquote","link","script","form","iframe","embed","track","input","getDomAttribute","encode","decode","iso8859","unescape","unicode","characters","pathname","%24","%26","%2B","%2C","%3B","%3D","%3A","%40","/","?","#","reserved","%2F","%3F","%23","%5B","%5D","%21","%27","%28","%29","%2A","urnpath",":","encodeQuery","escaped","decodeQuery","generateAccessor","_group","generateSegmentedPathFunction","_sep","_codingFuncName","_innerCodingFuncName","actualCodingFunc","decodePath","decodeUrnPath","recodePath","recodeUrnPath","encodeReserved","parts","parseAuthority","parseHost","bracketPos","firstColon","firstSlash","nextColon","ensureValidHostname","ensureValidPort","parseUserinfo","parseQuery","splits","buildAuthority","buildHost","buildUserinfo","buildQuery","unique","buildQueryParameter","addQuery","setQuery","removeQuery","hasQuery","withinArray","Boolean","joinPaths","nonEmptySegments","uri","commonPath","withinString","_start","_end","_trim","_parens","_attributeOpen","exec","ignoreHtml","attributeOpen","parensEnd","parensMatch","parensMatchEnd","ignore","hasHostname","rejectEmptyHostname","toASCII","isInteger","removeAll","unconflicted","URITemplate","deferBuild","_deferred_build","_string","res","_object","what","ip4","ip6","sld","idn","_protocol","_port","_hostname","scheme","authority","userinfo","resource","subdomain","tld","ReferenceError","directory","filename","decodePathSegment","mutatedDirectory","normalizePath","suffix","separator","absolute","segmentCoded","setSearch","addSearch","removeSearch","hasSearch","normalizeProtocol","normalizeQuery","normalizeFragment","normalizeHostname","normalizePort","_path","_was_relative","_parent","_pos","_leadingParents","normalizePathname","normalizeSearch","normalizeHash","readable","toUnicode","qp","kv","basedir","resolved","relativeTo","relativeParts","baseParts","common","relativePath","basePath","parents","one_query","two_query","one_map","two_map","checked","RangeError","errors","array","mapDomain","regexSeparators","ucs2decode","output","ucs2encode","stringFromCharCode","basicToDigit","codePoint","digitToBasic","digit","adapt","numPoints","firstTime","damp","baseMinusTMin","basic","oldi","baseMinusT","inputLength","initialN","bias","initialBias","delimiter","maxInt","handledCPCount","basicLength","handledCPCountPlusOne","qMinusT","freeExports","freeModule","freeGlobal","regexPunycode","regexNonASCII","not-basic","invalid-input","ucs2","emulateTransitionEnd","bsTransitionEnd","bindType","delegateType","handle","handleObj","close","VERSION","TRANSITION_DURATION","alert","toggle","setState","DEFAULTS","isLoading","loadingText","resetText","button","slide","interval","cycle","$indicators","paused","sliding","$active","keyboard","keydown","getItemIndex","getItemForDirection","$trigger","transitioning","$parent","getParent","addAriaAndCollapsedClass","collapse","dropdown","$body","$dialog","$backdrop","originalBodyPad","scrollbarWidth","ignoreBackdropClick","remote","BACKDROP_TRANSITION_DURATION","checkScrollbar","setScrollbar","adjustDialog","enforceFocus","hideModal","handleUpdate","resetAdjustments","resetScrollbar","removeBackdrop","currentTarget","scrollHeight","bodyIsOverflowing","measureScrollbar","modal","hoverState","inState","template","getOptions","$viewport","click","hover","_options","fixTitle","getDefaults","getDelegateOptions","tip","isInStateTrue","hasContent","getUID","getCalculatedOffset","applyPlacement","$tip","setOffset","using","getViewportAdjustedDelta","replaceArrow","getTitle","$arrow","toggleEnabled","getContent","popover","$scrollElement","activeTarget","getScrollHeight","isWindow","parentsUntil","scrollspy","tab","$target","checkPosition","checkPositionWithEventLoop","affixed","unpin","pinnedOffset","RESET","getState","getPinnedOffset","affix","offsetBottom","oldJquery","Stickyfill","Parallax","imageSrc","positions","iosFix","backgroundImage","backgroundSize","backgroundPosition","androidFix","$mirror","slider","sliderExisted","$slider","naturalHeight","naturalWidth","aspectRatio","isSetup","sliders","isFresh","requestRender","complete","bleed","overScrollFix","outerWidth","outerHeight","boxOffsetTop","boxOffsetLeft","boxOffsetBottom","winHeight","docHeight","maxOffset","minOffset","imageHeightMin","imageOffsetMin","imageWidth","imageHeight","offsetBaseTop","overScroll","scrollBottom","mirrorTop","mirrorLeft","winWidth","docWidth","isReady","isBusy","$doc","$win","loadDimensions","loadScrollPosition","winScrollTop","scrollTopMax","scrollLeftMax","configure","parallaxElement","old","parallax","Init","$groupToToggle","siblings","updateFooterAccessibilityElements","resetFooterHeights","$navHeader","$navGroups","isHamburgerMenuOpen","closeHamburgerMenu","ariaUnhideNonHeaderContent","updateHamburgerMenuAccessibilityElements","$allFocusableElements","removeFocusableElementRestriction","Breakpoints","IsMobile","setFocusableElementRestriction","isSearchPaneOpen","updateSearchWrapperHeight","$searchWrapperWithSuggestions","containerHeight","containerHeightValue","closeSearchPane","updateSearchPaneAccessibilityElements","$focusableElements","isHeaderNavActive","activateHeaderNav","isAnyHeaderNavDropdownOpen","closeHeaderNavDropdown","deactivateScrimAndCloseHeader","updateHeaderNavDropdownAccessibilityElements","IsAtLeastTablet","ariaHideNonHeaderContent","focusableElements","firstFocusableElement","lastFocusableElement","last","evt","mainNavDropdownItemLink","distanceToTop","$content","contentHeight","openHeaderNavDropdown","submit","mainHeaderElement","modalWrapperElement","resetHeaderHeights","navSection","$navSection","$activeItem","checkHeaderPosition","$header","IsTablet","Header","Footer","ModuleSpacing","$potentialModules","collapsableModules","$currentModule","$nextModule","currentModuleClassList","nextModuleClassList","isCurrentInList","isNextInList","currentClass","currentClassIndex","nextClassIndex","currentBackgroundColor","nextBackgroundColor","currentBackgroundImage","nextBackgroundImage","CollapseSpace","$contentModules","$careersPersonaModules","Layout","Variables","Modules","TrackGoal","TrackLinkClick","goalId","goalIds","goal","post","responseData","goalName","hasRedirected","redirect","Analytics","$textElement","replaceWith","$newTextElement","$downloadLink","downloadCallback","blobObject","msSaveBlob","$cardsContainer","$buttonContainer","showMoreCardNumber","$nextHiddenCards","scrollTo","hideStartPosition","hideableCardNumber","$nextHideableCards","$remainingHideableCards","scrollToElement","setCardGridHoverability","cardGridHoverability","matchMedia","revealCardHiddenContent","cardImageAreaElement","hideCardHiddenContent","toggleIndicator","setCardImageClickability","requisitionId","locationsActiveClass","isHidden","$locations","showMoreText","resizeMenu","lastLink","Landing","Search","InlineSearch","PersonaDetail","Detail","EmbeddedJobs","$careersTypeAheadContainer","filledClass","keyup","$typeAheadHidden","$typeAheadVisible","LoadScript","ICFGoogleMapsKey","google","maps","places","Autocomplete","types","careersLandingCategoriesClass","resizeCategoriesContainer","newHeight","resizePersonas","resizeMorePersonas","$morePersonasElement","$lastPersona","ApplyCTAHandler","showAllLocationsHandler","resizeFacets","finalNode","resizeQuickSearches","getQueryString","includeOpenFacets","queryStringComponents","keywords","days","schedule","category","areaofinterest","openfacets","openFacets","getOpenFacets","updateQueryString","history","replaceState","loadResults","Careers","keypress","$facet","$modal","cycleArr","cycleNodes","cycleWords","TweenMax","autoAlpha","EqualHeights","RegisterSetEqualHeights","$formContainer","followUpUrl","Wistia","WistiaFormSubmit","wistiaSubmitFunction","FormSubmit","doResize","formTop","sortElements","$grid","pastEvents","$container","EmbeddedEvents","gridderExpander","scrollOffset","animationSpeed","animationEasing","showNav","resizeListContainer","$innerContainer","openClass","isClosing","updateLargeFeature","largeFeature","$largeFeature","$largeFeatureTitle","titleLineHeight","numLines","$module","breakpoints","768","owlCarouselSettings","callbacks","onChanged","$el","$prev","$cards","centerFeaturedCards","currentWidth","currentBreakpointInfo","breakpointKeys","numItems","activeItemIndex","clonedItemIndexOffset","cardsLength","$nav","SetupForm","log","_mfq","MktoForms2","onFormRender","whenReady","webdriver","submittable","$form","getFormElem","queryKeys","queryKey","$input","$originalLabel","placeholderText","$fieldsets","fieldsetIndex","fieldset","$fieldset","$checkboxes","$checkboxListContainer","checkbox","$checkbox","$label","$siblingLabel","$firstRow","$actualRows","row","$row","$col","newRow","$newRow","mouseFlowFormId","formId","getId","onSubmit","onValidate","validationStatus","onSuccess","vals","formSuccessFunctionName","customOnSuccess","formSuccessFunctionPaths","formSuccessFunction","formName","personalizationRuleName","dataLayer","mediaId","GetUrlParameter","gatingFormId","newUrl","videoId","resourceMediaId","newFollowUpUrl","sourcePageId","resourceDownloadUrl","resourceFileName","gatedRedirect","redirectUrl","initValues","utmValues","setValues","REMODAL_GLOBALS","NAMESPACE","hashTracking","inst","remodal","elClassHidden","$window","wScrollCurrent","wScrollBefore","wScrollDiff","$document","Throttle","truncateContent","maxCharCount","ellipses","togglePromo","promo","promoOpenState","DesktopSm","promoToggles","hasImage","desktop","maxLines","eyebrowText","textMaxChar","titleMaxChar","titleMaxLine","eyebrowTextMaxChar","toggleText","toggleMaxChar","truncatedText","truncatedContent","$h1","adjustContentPositon","$lastSpan","$hero","adjustHeroWrapperMinHeight","heroWrapper","newFeatureImageDivHeight","featureImageDivMargin","IsAtLeastDesktopSm","newHeroWrapperMinHeight","setFilterListWrapperHeight","wrapperHeight","filterIndex","iframePaths","pushState","DidNavigate","iframeHost","onMessage","func","message","$slideShows","$thumbnails","$slideShow","swiperContainer","previousButton","nextButton","pagination","swiper","Swiper","navigation","nextEl","prevEl","clickable","[object Object]","activeIndex","numberOfSlides","slideTo","CycleWords","ScrollExperience","VerticalCarousel","GlobalNavigation","ExpandingGrid","LoadMore","VideoModal","SecondaryNavigation","InputAutoFocus","TabSelect","ScrollToTop","DataTable","Resources","Pulsepoint","FeaturedContentColumns","FeaturedPeople","SidebarBlocks","Wffm","Locations","Events","TableOfContents","ImageSlideshow","FeatureGridAndList","TwoColumnTabs","HeroWithImageAndLinks","Forms","UniversalPromoModule","HubPage","AutoDownload","HeroWithClientStories","Hero","TopicAndTagFooterList","FeaturedTopicList","InsightsDetail","Authors","Pagination","PersonalizedLinks","VideoHero","VideoHeroSpinner","PopupModal","VideoHeroBottom","IFramePage","ParallaxModule","LargeImage","PersonDetail","Lottie","EmbeddedSubscriptionModule","LandingPagesSearchFilter","GlobalSidePromo","CareersSearchHero","LogosModule","FeaturedContentModule","TopicGroupLanding","TopicLanding","LargeCarouselModule","ParagraphModule","CardGridModule","SearchRendering","SearchControl","ProductHeroModule","$instance","$closeCTA","unbind","getHeader","getHeaderOrHero","$headerOrHero","determineFormPosition","topMargin","margin-top","elementTarget","adjustVideoPosition","$video","formBottom","videoTop","adjustPodcastPosition","$podcast","podcastClasses","static","$placeholder","$mainHeader","topPosition","currentPagePosition","placeholderInfo","initClass","$submenu","submenuStickyClass","$insightsBody","$lastParagraph","$progressTarget","calculateSubmenuPosition","calculateProgressBarWidth","$bar","headerOffset","heroHeight","contentBounds","startingPoint","totalOffset","adjustedBottom","ProgressBar","FillBar","adjustedScrollDistance","percentage","$progressBar","insertResults","apiEndpoint","$page","clearAll","regions","topics","contentLabels","topicMatchType","$topicContentDesktopContent","$regionContentDesktopContent","$contentLabelContentDesktopContent","$topicModal","$regionModal","$contentLabelModal","topicTooltip","regionTooltip","contentLabelTooltip","topicContentDesktop","topicContentTouch","regionContentDesktop","regionContentTouch","contentLabelContentDesktop","contentLabelContentTouch","collapseGroupActiveClass","triggerActiveClass","setPopoverGroup","$popoverGroup","$popoverGroupTitle","$popoverGroupTitvarext","updateNumberOfChecked","$checkedBoxes","updateFiltersAndContent","resizeTopicDropdown","isChecked","$resetCTA","runSearch","$applyCTA","$childrenContainer","isParent","hasAnyChecked","$topicModalContent","$collapseGroup","isGroupChecked","$regionModalContent","$contentLabelModalContent","IsDesktop","topicDropdown","popoverBottom","windowHeight","topicDropdownCTAPosition","activeClass","resizePopoverGroups","InsertResults","ShowMore","ToggleModuleVisibility","dropdowns","clearAllHandler","tagHandler","tableOfContents","showMore","toggleModuleVisibility","pageInitialized","results","$featureTiles","featureTilesHiddenClass","featuredContentClassPattern","$featuredContent","hiddenFeaturedContentClassName","$paginationContainer","landingPageId","endpointUrl","browserUrl","column","rootInsightItemId","joinedContentLabels","joinedTopics","joinedRegions","pastevents","targetAnchor","targetName","targetIndex","$targetElement","baseOffset","calculateSpeed","$nearestUl","$contentActive","nameOfClass","$list","determineCurrentActiveSection","targetAnchors","$currentActiveSection","currentActiveSectionIndex","pageOffset","currentItemPosition","nextItemPosition","activeName","$tableOfContents","$tag","regionFilters","isAnyChecked","topicFilters","contentFilters","$swiperPagination","pauseOnMouseEnter","disableOnInteraction","startAutoPlay","stopAutoPlay","progress","setProperty","activeSlideIndex","slideChangeTransitionEndEvent","renderBullet","syncAutoplayWithScreenSize","$largeImage","adjustCaptionWidth","$image","$description","imageItem","$loadMoreButton","$ul","maxItems","idx","mapOptions","zoom","mapOptionsQuery","$mapItem","loadMap","$locationLink","$directoryTabs","region","$referencedTab","Listing","Directory","$locationItem","$regionTabContent","$clickedLocation","resortLocations","resizeLocationInfo","$location","$logosContainer","$lottieFiles","lottieIeFixer","ratio","baseVal","newWidth","isInViewport","bounding","$lottieFile","hasPlayed","totalPages","classPrefix","paginationContainer","prevText","createTextNode","currentText","nextText","subpagination","subpaginationText","firstText","inBetweenSubPaginationLinkStart","inBetweenSubPaginationLinkEnd","spacingFirst","linkText","spacingLast","lastText","GeneratePagination","calculateParallax","$parallaxElement","boundingClientRect","midpointOfElement","translatedOffset","$squareParallaxBlocks","makeBoxesSquare","$absolutePositionedParallaxBlocks","$contentHeightBlocks","adjustContentHeightBlocks","$block","blockHeight","$quote","$bio","$paragraphs","ruleName","moduleType","targetUrl","pageUrl","modalClass","cookieExpiration","RegisterPopupCTAEvents","SetPopupCookie","AlwaysPopup","TimeOnPagePopup","TimeOnSitePopup","ScrollDistancePopup","ClosePopup","popupTrigger","$popupTrigger","triggerType","$successCTA","$dismissCTA","currentPosition","scrollDistance","initialPosition","modalTrigger","checkPositionIndex","expiration","Consent","HasAcceptedFunctional","date","setTime","expires","toUTCString","cookieValue","cookie","setCookie","secondsOnPage","secondsElapsed","secondsOnSite","secondsRemaining","UpdateVideoSize","updateVideoSize","$productHeroModuleContentContainer","containerWidth","MobileMenu","MenuLinks","StickyHeader","$targetLink","$moduleParent","newTopPosition","getPropertyValue","paddingTop","$duplicateHeader","alpha","previousScrollPosition","forceRefresh","scrollPosition","ElementAtPointInElement","$anchorTag","anchorTagText","$headerElement","init_scroll","DeviceDetection","$fading","cycleWordsFadeRange","webkitRequestAnimationFrame","mozRequestAnimationFrame","msRequestAnimationFrame","oRequestAnimationFrame","setCurrentStateTimeout","podLeft","podRight","podHeight","fadeIn","fadeOut","TypeAhead","typeAhead","$searchControls","$searchControl","$searchInput","endpoint","cacheName","$suggestionsWrapper","initialValue","clearTypeAhead","commandCharacters","Enter","Esc","Tab","DownArrow","UpArrow","ignoreCharacters","LeftArrow","RightArrow","deactivateSuggestions","$activeSearchSuggestionsWrapper","$activeSuggestion","activeSuggestion","$suggestionToActivate","deactivateSuggestion","activateSuggestion","selectSuggestion","currentVal","MinQueryLength","updateSuggestions","suggestions","$suggestion","typeAheadValue","suggestionsListbox","suggestion","numberOfSuggestions","announceText","announceDiv","activateSuggestions","shouldSubmitForm","shouldHideSuggestions","$searchRendering","clearFiltersEl","shouldInsertResults","typecategories","lastSearchRenderingFocusId","updateWindowFilterVars","checkboxEl","ignoreFilterClickFocusChange","updateFilterAccessibility","handleFilterToggleClick","clickTarget","filterWrapperSelector","$closestExpandableFilter","handleModalFilters","$filterTag","targetFilterId","prevFilterTag","nextFilterTag","handleCheckboxes","handleFilterToggles","handleTags","handleShowMore","handleBackToTop","handleModalInteraction","searchRenderingInitialized","$oldInner","$expandedFilterButtons","expandedFilterButtonIds","contextItemId","joinedTypes","joinedTypeCategories","$filtersWrapper","$expandableFilter","$filterHeightWrapper","$toggle","$filterCheckboxesAndToggles","indx","previousPosition","Infinity","targetTopPosition","nextAll","$tableOfContentsContainer","spacerHeight","$tableOfContentsSelectHeader","contentSelector","$parents","$previousParent","$oldActive","$sectionHeader","prevAll","$tableOfContentsLink","$linksContainer","$links","linksContainerWidth","$scrollElem","$duplicate","heightOffset","tableOfContentsOffset","scrollClickHandler","linksWidth","newLeftPosition","currentScrollIndex","linkLeftPosition","linkRightPosition","originalLeftPosition","rightPosition","newLinksRightPosition","adjustProgressBars","$link","$correspondingElements","nextUntil","lastElBounds","elHeight","$icon","resetTopicAndTagHeights","$showMoreDescription","$showMoreToggle","selectTab","$tabContainer","tabId","$option","change","mySwiper","isMobile","mobileSwiper","desktopSwiper","setCurrentState","swiperObj","$swiperContainer","SetEqualHeights","createSwiper","paginationClickable","grabCursor","resizePods","Debounce","$videoHeroBottom","updateBottomMargin","margin-bottom","$spinner","newScrollPosition","transformValue","calculateSpinnerPosition","$videoHero","resizeVideo","videoIndex","$videoFrame","vidID","videoModalPlayer","videojs","originalSubmitText","submittedData","$button","dataIds","dataValues","serializeArray","section","field","wistiaChannelId","channel","hashedId","wistiaListId","getListId","emailAddress","firstName","lastName","submitData","channel_id","list_id","email_address","IsDesktopSm","Tablet","Desktop","pattern","GetCookie","CookieContainsPattern","ConsentGroupPatterns","AcceptedFunctional","AcceptedPerformance","AcceptedStrictlyNecessary","AcceptedTargeting","HasAcceptedPerformance","HasAcceptedStrictlyNecessary","HasAcceptedTargeting","immediate","callNow","comparator","<","<=",">",">=","isIphone","isIpod","isAndroidPhone","isBlackberry","isMobileSize","IsIphone","IsIpod","IsAndroidPhone","IsBlackberry","IsMobileSize","GetUserAgent","compareVersion","requiredSelector","containerPaddingLeft","containerPaddingRight","containerPaddingTop","$childElem","childPosition","childStyle","paddingBottom","childMinX","childMaxX","childMinY","childMaxY","minX","maxX","minY","maxY","filteredResults","$resultElem","resizeFunction","hasInited","currentProcessedElems","processRow","orderedElems","newProcessedElems","previousTopPosition","maxHeight","cname","initRecursive","ICFInitiated","deferTimer"],"mappings":"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","file":"main.min.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o0&&void 0!==arguments[0]&&arguments[0];if(e&&(k=!0),k)return w=(0,y.default)(w,x),(0,b.default)(w,x.once),w},O=function(){w=(0,h.default)(),j()},M=function(){w.forEach(function(e,t){e.node.removeAttribute(\"data-aos\"),e.node.removeAttribute(\"data-aos-easing\"),e.node.removeAttribute(\"data-aos-duration\"),e.node.removeAttribute(\"data-aos-delay\")})},S=function(e){return e===!0||\"mobile\"===e&&p.default.mobile()||\"phone\"===e&&p.default.phone()||\"tablet\"===e&&p.default.tablet()||\"function\"==typeof e&&e()===!0},_=function(e){x=i(x,e),w=(0,h.default)();var t=document.all&&!window.atob;return S(x.disable)||t?M():(x.disableMutationObserver||d.default.isSupported()||(console.info('\\n aos: MutationObserver is not supported on this browser,\\n code mutations observing has been disabled.\\n You may have to call \"refreshHard()\" by yourself.\\n '),x.disableMutationObserver=!0),document.querySelector(\"body\").setAttribute(\"data-aos-easing\",x.easing),document.querySelector(\"body\").setAttribute(\"data-aos-duration\",x.duration),document.querySelector(\"body\").setAttribute(\"data-aos-delay\",x.delay),\"DOMContentLoaded\"===x.startEvent&&[\"complete\",\"interactive\"].indexOf(document.readyState)>-1?j(!0):\"load\"===x.startEvent?window.addEventListener(x.startEvent,function(){j(!0)}):document.addEventListener(x.startEvent,function(){j(!0)}),window.addEventListener(\"resize\",(0,s.default)(j,x.debounceDelay,!0)),window.addEventListener(\"orientationchange\",(0,s.default)(j,x.debounceDelay,!0)),window.addEventListener(\"scroll\",(0,u.default)(function(){(0,b.default)(w,x.once)},x.throttleDelay)),x.disableMutationObserver||d.default.ready(\"[data-aos]\",O),w)};e.exports={init:_,refresh:j,refreshHard:O}},function(e,t){},,,,,function(e,t){(function(t){\"use strict\";function n(e,t,n){function o(t){var n=b,o=v;return b=v=void 0,k=t,g=e.apply(o,n)}function r(e){return k=e,h=setTimeout(f,t),M?o(e):g}function a(e){var n=e-w,o=e-k,i=t-n;return S?j(i,y-o):i}function c(e){var n=e-w,o=e-k;return void 0===w||n>=t||n<0||S&&o>=y}function f(){var e=O();return c(e)?d(e):void(h=setTimeout(f,a(e)))}function d(e){return h=void 0,_&&b?o(e):(b=v=void 0,g)}function l(){void 0!==h&&clearTimeout(h),k=0,b=w=v=h=void 0}function p(){return void 0===h?g:d(O())}function m(){var e=O(),n=c(e);if(b=arguments,v=this,w=e,n){if(void 0===h)return r(w);if(S)return h=setTimeout(f,t),o(w)}return void 0===h&&(h=setTimeout(f,t)),g}var b,v,y,g,h,w,k=0,M=!1,S=!1,_=!0;if(\"function\"!=typeof e)throw new TypeError(s);return t=u(t)||0,i(n)&&(M=!!n.leading,S=\"maxWait\"in n,y=S?x(u(n.maxWait)||0,t):y,_=\"trailing\"in n?!!n.trailing:_),m.cancel=l,m.flush=p,m}function o(e,t,o){var r=!0,a=!0;if(\"function\"!=typeof e)throw new TypeError(s);return i(o)&&(r=\"leading\"in o?!!o.leading:r,a=\"trailing\"in o?!!o.trailing:a),n(e,t,{leading:r,maxWait:t,trailing:a})}function i(e){var t=\"undefined\"==typeof e?\"undefined\":c(e);return!!e&&(\"object\"==t||\"function\"==t)}function r(e){return!!e&&\"object\"==(\"undefined\"==typeof e?\"undefined\":c(e))}function a(e){return\"symbol\"==(\"undefined\"==typeof e?\"undefined\":c(e))||r(e)&&k.call(e)==d}function u(e){if(\"number\"==typeof e)return e;if(a(e))return f;if(i(e)){var t=\"function\"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+\"\":t}if(\"string\"!=typeof e)return 0===e?e:+e;e=e.replace(l,\"\");var n=m.test(e);return n||b.test(e)?v(e.slice(2),n?2:8):p.test(e)?f:+e}var c=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},s=\"Expected a function\",f=NaN,d=\"[object Symbol]\",l=/^\\s+|\\s+$/g,p=/^[-+]0x[0-9a-f]+$/i,m=/^0b[01]+$/i,b=/^0o[0-7]+$/i,v=parseInt,y=\"object\"==(\"undefined\"==typeof t?\"undefined\":c(t))&&t&&t.Object===Object&&t,g=\"object\"==(\"undefined\"==typeof self?\"undefined\":c(self))&&self&&self.Object===Object&&self,h=y||g||Function(\"return this\")(),w=Object.prototype,k=w.toString,x=Math.max,j=Math.min,O=function(){return h.Date.now()};e.exports=o}).call(t,function(){return this}())},function(e,t){(function(t){\"use strict\";function n(e,t,n){function i(t){var n=b,o=v;return b=v=void 0,O=t,g=e.apply(o,n)}function r(e){return O=e,h=setTimeout(f,t),M?i(e):g}function u(e){var n=e-w,o=e-O,i=t-n;return S?x(i,y-o):i}function s(e){var n=e-w,o=e-O;return void 0===w||n>=t||n<0||S&&o>=y}function f(){var e=j();return s(e)?d(e):void(h=setTimeout(f,u(e)))}function d(e){return h=void 0,_&&b?i(e):(b=v=void 0,g)}function l(){void 0!==h&&clearTimeout(h),O=0,b=w=v=h=void 0}function p(){return void 0===h?g:d(j())}function m(){var e=j(),n=s(e);if(b=arguments,v=this,w=e,n){if(void 0===h)return r(w);if(S)return h=setTimeout(f,t),i(w)}return void 0===h&&(h=setTimeout(f,t)),g}var b,v,y,g,h,w,O=0,M=!1,S=!1,_=!0;if(\"function\"!=typeof e)throw new TypeError(c);return t=a(t)||0,o(n)&&(M=!!n.leading,S=\"maxWait\"in n,y=S?k(a(n.maxWait)||0,t):y,_=\"trailing\"in n?!!n.trailing:_),m.cancel=l,m.flush=p,m}function o(e){var t=\"undefined\"==typeof e?\"undefined\":u(e);return!!e&&(\"object\"==t||\"function\"==t)}function i(e){return!!e&&\"object\"==(\"undefined\"==typeof e?\"undefined\":u(e))}function r(e){return\"symbol\"==(\"undefined\"==typeof e?\"undefined\":u(e))||i(e)&&w.call(e)==f}function a(e){if(\"number\"==typeof e)return e;if(r(e))return s;if(o(e)){var t=\"function\"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+\"\":t}if(\"string\"!=typeof e)return 0===e?e:+e;e=e.replace(d,\"\");var n=p.test(e);return n||m.test(e)?b(e.slice(2),n?2:8):l.test(e)?s:+e}var u=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},c=\"Expected a function\",s=NaN,f=\"[object Symbol]\",d=/^\\s+|\\s+$/g,l=/^[-+]0x[0-9a-f]+$/i,p=/^0b[01]+$/i,m=/^0o[0-7]+$/i,b=parseInt,v=\"object\"==(\"undefined\"==typeof t?\"undefined\":u(t))&&t&&t.Object===Object&&t,y=\"object\"==(\"undefined\"==typeof self?\"undefined\":u(self))&&self&&self.Object===Object&&self,g=v||y||Function(\"return this\")(),h=Object.prototype,w=h.toString,k=Math.max,x=Math.min,j=function(){return g.Date.now()};e.exports=n}).call(t,function(){return this}())},function(e,t){\"use strict\";function n(e){var t=void 0,o=void 0,i=void 0;for(t=0;te.position?e.node.classList.add(\"aos-animate\"):\"undefined\"!=typeof o&&(\"false\"===o||!n&&\"true\"!==o)&&e.node.classList.remove(\"aos-animate\")},o=function(e,t){var o=window.pageYOffset,i=window.innerHeight;e.forEach(function(e,r){n(e,i+o,t)})};t.default=o},function(e,t,n){\"use strict\";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(12),r=o(i),a=function(e,t){return e.forEach(function(e,n){e.node.classList.add(\"aos-init\"),e.position=(0,r.default)(e.node,t.offset)}),e};t.default=a},function(e,t,n){\"use strict\";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(13),r=o(i),a=function(e,t){var n=0,o=0,i=window.innerHeight,a={offset:e.getAttribute(\"data-aos-offset\"),anchor:e.getAttribute(\"data-aos-anchor\"),anchorPlacement:e.getAttribute(\"data-aos-anchor-placement\")};switch(a.offset&&!isNaN(a.offset)&&(o=parseInt(a.offset)),a.anchor&&document.querySelectorAll(a.anchor)&&(e=document.querySelectorAll(a.anchor)[0]),n=(0,r.default)(e).top,a.anchorPlacement){case\"top-bottom\":break;case\"center-bottom\":n+=e.offsetHeight/2;break;case\"bottom-bottom\":n+=e.offsetHeight;break;case\"top-center\":n+=i/2;break;case\"bottom-center\":n+=i/2+e.offsetHeight;break;case\"center-center\":n+=i/2+e.offsetHeight/2;break;case\"top-top\":n+=i;break;case\"bottom-top\":n+=e.offsetHeight+i;break;case\"center-top\":n+=e.offsetHeight/2+i}return a.anchorPlacement||a.offset||isNaN(t)||(o=t),n+o};t.default=a},function(e,t){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=function(e){for(var t=0,n=0;e&&!isNaN(e.offsetLeft)&&!isNaN(e.offsetTop);)t+=e.offsetLeft-(\"BODY\"!=e.tagName?e.scrollLeft:0),n+=e.offsetTop-(\"BODY\"!=e.tagName?e.scrollTop:0),e=e.offsetParent;return{top:n,left:t}};t.default=n},function(e,t){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=function(e){return e=e||document.querySelectorAll(\"[data-aos]\"),Array.prototype.map.call(e,function(e){return{node:e}})};t.default=n}])});","(typeof navigator !== \"undefined\") && (function(root, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(function() {\n return factory(root);\n });\n } else if (typeof module === \"object\" && module.exports) {\n module.exports = factory(root);\n } else {\n root.lottie = factory(root);\n root.bodymovin = root.lottie;\n }\n}((window || {}), function(window) {\n\t/* global locationHref:writable, animationManager, subframeEnabled:writable, defaultCurveSegments:writable, roundValues,\r\nexpressionsPlugin:writable, PropertyFactory, ShapePropertyFactory, Matrix */\r\n/* exported locationHref, subframeEnabled, expressionsPlugin */\r\n\r\n'use strict';\r\n\r\n/* exported svgNS, locationHref, initialDefaultFrame */\r\n\r\nvar svgNS = 'http://www.w3.org/2000/svg';\r\n\r\nvar locationHref = '';\r\n\r\nvar initialDefaultFrame = -999999;\r\n\r\n/* global createSizedArray */\r\n/* exported subframeEnabled, expressionsPlugin, isSafari, cachedColors, bmPow, bmSqrt, bmFloor, bmMax, bmMin, ProjectInterface,\r\ndefaultCurveSegments, degToRads, roundCorner, bmRnd, styleDiv, BMEnterFrameEvent, BMCompleteEvent, BMCompleteLoopEvent,\r\nBMSegmentStartEvent, BMDestroyEvent, BMRenderFrameErrorEvent, BMConfigErrorEvent, BMAnimationConfigErrorEvent, createElementID,\r\naddSaturationToRGB, addBrightnessToRGB, addHueToRGB, rgbToHex */\r\n\r\nvar subframeEnabled = true;\r\nvar expressionsPlugin;\r\nvar isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);\r\nvar cachedColors = {};\r\nvar bmRnd;\r\nvar bmPow = Math.pow;\r\nvar bmSqrt = Math.sqrt;\r\nvar bmFloor = Math.floor;\r\nvar bmMax = Math.max;\r\nvar bmMin = Math.min;\r\n\r\nvar BMMath = {};\r\n(function () {\r\n var propertyNames = ['abs', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atanh', 'atan2', 'ceil', 'cbrt', 'expm1', 'clz32', 'cos', 'cosh', 'exp', 'floor', 'fround', 'hypot', 'imul', 'log', 'log1p', 'log2', 'log10', 'max', 'min', 'pow', 'random', 'round', 'sign', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc', 'E', 'LN10', 'LN2', 'LOG10E', 'LOG2E', 'PI', 'SQRT1_2', 'SQRT2'];\r\n var i;\r\n var len = propertyNames.length;\r\n for (i = 0; i < len; i += 1) {\r\n BMMath[propertyNames[i]] = Math[propertyNames[i]];\r\n }\r\n}());\r\n\r\nfunction ProjectInterface() { return {}; }\r\n\r\nBMMath.random = Math.random;\r\nBMMath.abs = function (val) {\r\n var tOfVal = typeof val;\r\n if (tOfVal === 'object' && val.length) {\r\n var absArr = createSizedArray(val.length);\r\n var i;\r\n var len = val.length;\r\n for (i = 0; i < len; i += 1) {\r\n absArr[i] = Math.abs(val[i]);\r\n }\r\n return absArr;\r\n }\r\n return Math.abs(val);\r\n};\r\nvar defaultCurveSegments = 150;\r\nvar degToRads = Math.PI / 180;\r\nvar roundCorner = 0.5519;\r\n\r\nfunction roundValues(flag) {\r\n if (flag) {\r\n bmRnd = Math.round;\r\n } else {\r\n bmRnd = function (val) {\r\n return val;\r\n };\r\n }\r\n}\r\nroundValues(false);\r\n\r\nfunction styleDiv(element) {\r\n element.style.position = 'absolute';\r\n element.style.top = 0;\r\n element.style.left = 0;\r\n element.style.display = 'block';\r\n element.style.transformOrigin = '0 0';\r\n element.style.webkitTransformOrigin = '0 0';\r\n element.style.backfaceVisibility = 'visible';\r\n element.style.webkitBackfaceVisibility = 'visible';\r\n element.style.transformStyle = 'preserve-3d';\r\n element.style.webkitTransformStyle = 'preserve-3d';\r\n element.style.mozTransformStyle = 'preserve-3d';\r\n}\r\n\r\nfunction BMEnterFrameEvent(type, currentTime, totalTime, frameMultiplier) {\r\n this.type = type;\r\n this.currentTime = currentTime;\r\n this.totalTime = totalTime;\r\n this.direction = frameMultiplier < 0 ? -1 : 1;\r\n}\r\n\r\nfunction BMCompleteEvent(type, frameMultiplier) {\r\n this.type = type;\r\n this.direction = frameMultiplier < 0 ? -1 : 1;\r\n}\r\n\r\nfunction BMCompleteLoopEvent(type, totalLoops, currentLoop, frameMultiplier) {\r\n this.type = type;\r\n this.currentLoop = currentLoop;\r\n this.totalLoops = totalLoops;\r\n this.direction = frameMultiplier < 0 ? -1 : 1;\r\n}\r\n\r\nfunction BMSegmentStartEvent(type, firstFrame, totalFrames) {\r\n this.type = type;\r\n this.firstFrame = firstFrame;\r\n this.totalFrames = totalFrames;\r\n}\r\n\r\nfunction BMDestroyEvent(type, target) {\r\n this.type = type;\r\n this.target = target;\r\n}\r\n\r\nfunction BMRenderFrameErrorEvent(nativeError, currentTime) {\r\n this.type = 'renderFrameError';\r\n this.nativeError = nativeError;\r\n this.currentTime = currentTime;\r\n}\r\n\r\nfunction BMConfigErrorEvent(nativeError) {\r\n this.type = 'configError';\r\n this.nativeError = nativeError;\r\n}\r\n\r\nfunction BMAnimationConfigErrorEvent(type, nativeError) {\r\n this.type = type;\r\n this.nativeError = nativeError;\r\n}\r\n\r\nvar createElementID = (function () {\r\n var _count = 0;\r\n return function createID() {\r\n _count += 1;\r\n return '__lottie_element_' + _count;\r\n };\r\n}());\r\n\r\nfunction HSVtoRGB(h, s, v) {\r\n var r;\r\n var g;\r\n var b;\r\n var i;\r\n var f;\r\n var p;\r\n var q;\r\n var t;\r\n i = Math.floor(h * 6);\r\n f = h * 6 - i;\r\n p = v * (1 - s);\r\n q = v * (1 - f * s);\r\n t = v * (1 - (1 - f) * s);\r\n switch (i % 6) {\r\n case 0: r = v; g = t; b = p; break;\r\n case 1: r = q; g = v; b = p; break;\r\n case 2: r = p; g = v; b = t; break;\r\n case 3: r = p; g = q; b = v; break;\r\n case 4: r = t; g = p; b = v; break;\r\n case 5: r = v; g = p; b = q; break;\r\n default: break;\r\n }\r\n return [r,\r\n g,\r\n b];\r\n}\r\n\r\nfunction RGBtoHSV(r, g, b) {\r\n var max = Math.max(r, g, b);\r\n var min = Math.min(r, g, b);\r\n var d = max - min;\r\n var h;\r\n var s = (max === 0 ? 0 : d / max);\r\n var v = max / 255;\r\n\r\n switch (max) {\r\n case min: h = 0; break;\r\n case r: h = (g - b) + d * (g < b ? 6 : 0); h /= 6 * d; break;\r\n case g: h = (b - r) + d * 2; h /= 6 * d; break;\r\n case b: h = (r - g) + d * 4; h /= 6 * d; break;\r\n default: break;\r\n }\r\n\r\n return [\r\n h,\r\n s,\r\n v,\r\n ];\r\n}\r\n\r\nfunction addSaturationToRGB(color, offset) {\r\n var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\r\n hsv[1] += offset;\r\n if (hsv[1] > 1) {\r\n hsv[1] = 1;\r\n } else if (hsv[1] <= 0) {\r\n hsv[1] = 0;\r\n }\r\n return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\r\n}\r\n\r\nfunction addBrightnessToRGB(color, offset) {\r\n var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\r\n hsv[2] += offset;\r\n if (hsv[2] > 1) {\r\n hsv[2] = 1;\r\n } else if (hsv[2] < 0) {\r\n hsv[2] = 0;\r\n }\r\n return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\r\n}\r\n\r\nfunction addHueToRGB(color, offset) {\r\n var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\r\n hsv[0] += offset / 360;\r\n if (hsv[0] > 1) {\r\n hsv[0] -= 1;\r\n } else if (hsv[0] < 0) {\r\n hsv[0] += 1;\r\n }\r\n return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\r\n}\r\n\r\nvar rgbToHex = (function () {\r\n var colorMap = [];\r\n var i;\r\n var hex;\r\n for (i = 0; i < 256; i += 1) {\r\n hex = i.toString(16);\r\n colorMap[i] = hex.length === 1 ? '0' + hex : hex;\r\n }\r\n\r\n return function (r, g, b) {\r\n if (r < 0) {\r\n r = 0;\r\n }\r\n if (g < 0) {\r\n g = 0;\r\n }\r\n if (b < 0) {\r\n b = 0;\r\n }\r\n return '#' + colorMap[r] + colorMap[g] + colorMap[b];\r\n };\r\n}());\r\n\r\nfunction BaseEvent() {}\r\nBaseEvent.prototype = {\r\n triggerEvent: function (eventName, args) {\r\n if (this._cbs[eventName]) {\r\n var len = this._cbs[eventName].length;\r\n for (var i = 0; i < len; i += 1) {\r\n this._cbs[eventName][i](args);\r\n }\r\n }\r\n },\r\n addEventListener: function (eventName, callback) {\r\n if (!this._cbs[eventName]) {\r\n this._cbs[eventName] = [];\r\n }\r\n this._cbs[eventName].push(callback);\r\n\r\n return function () {\r\n this.removeEventListener(eventName, callback);\r\n }.bind(this);\r\n },\r\n removeEventListener: function (eventName, callback) {\r\n if (!callback) {\r\n this._cbs[eventName] = null;\r\n } else if (this._cbs[eventName]) {\r\n var i = 0;\r\n var len = this._cbs[eventName].length;\r\n while (i < len) {\r\n if (this._cbs[eventName][i] === callback) {\r\n this._cbs[eventName].splice(i, 1);\r\n i -= 1;\r\n len -= 1;\r\n }\r\n i += 1;\r\n }\r\n if (!this._cbs[eventName].length) {\r\n this._cbs[eventName] = null;\r\n }\r\n }\r\n },\r\n};\r\n\r\n/* exported createTypedArray, createSizedArray */\r\n\r\nvar createTypedArray = (function () {\r\n function createRegularArray(type, len) {\r\n var i = 0;\r\n var arr = [];\r\n var value;\r\n switch (type) {\r\n case 'int16':\r\n case 'uint8c':\r\n value = 1;\r\n break;\r\n default:\r\n value = 1.1;\r\n break;\r\n }\r\n for (i = 0; i < len; i += 1) {\r\n arr.push(value);\r\n }\r\n return arr;\r\n }\r\n function createTypedArrayFactory(type, len) {\r\n if (type === 'float32') {\r\n return new Float32Array(len);\r\n } if (type === 'int16') {\r\n return new Int16Array(len);\r\n } if (type === 'uint8c') {\r\n return new Uint8ClampedArray(len);\r\n }\r\n return createRegularArray(type, len);\r\n }\r\n if (typeof Uint8ClampedArray === 'function' && typeof Float32Array === 'function') {\r\n return createTypedArrayFactory;\r\n }\r\n return createRegularArray;\r\n}());\r\n\r\nfunction createSizedArray(len) {\r\n return Array.apply(null, { length: len });\r\n}\r\n\r\n/* global svgNS */\r\n/* exported createNS */\r\n\r\nfunction createNS(type) {\r\n // return {appendChild:function(){},setAttribute:function(){},style:{}}\r\n return document.createElementNS(svgNS, type);\r\n}\r\n\r\n/* exported createTag */\r\n\r\nfunction createTag(type) {\r\n // return {appendChild:function(){},setAttribute:function(){},style:{}}\r\n return document.createElement(type);\r\n}\r\n\r\nfunction DynamicPropertyContainer() {}\r\nDynamicPropertyContainer.prototype = {\r\n addDynamicProperty: function (prop) {\r\n if (this.dynamicProperties.indexOf(prop) === -1) {\r\n this.dynamicProperties.push(prop);\r\n this.container.addDynamicProperty(this);\r\n this._isAnimated = true;\r\n }\r\n },\r\n iterateDynamicProperties: function () {\r\n this._mdf = false;\r\n var i;\r\n var len = this.dynamicProperties.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.dynamicProperties[i].getValue();\r\n if (this.dynamicProperties[i]._mdf) {\r\n this._mdf = true;\r\n }\r\n }\r\n },\r\n initDynamicPropertyContainer: function (container) {\r\n this.container = container;\r\n this.dynamicProperties = [];\r\n this._mdf = false;\r\n this._isAnimated = false;\r\n },\r\n};\r\n\r\n/* exported getBlendMode */\r\n\r\nvar getBlendMode = (function () {\r\n var blendModeEnums = {\r\n 0: 'source-over',\r\n 1: 'multiply',\r\n 2: 'screen',\r\n 3: 'overlay',\r\n 4: 'darken',\r\n 5: 'lighten',\r\n 6: 'color-dodge',\r\n 7: 'color-burn',\r\n 8: 'hard-light',\r\n 9: 'soft-light',\r\n 10: 'difference',\r\n 11: 'exclusion',\r\n 12: 'hue',\r\n 13: 'saturation',\r\n 14: 'color',\r\n 15: 'luminosity',\r\n };\r\n\r\n return function (mode) {\r\n return blendModeEnums[mode] || '';\r\n };\r\n}());\r\n\r\n/* global createTypedArray */\r\n\r\n/*!\r\n Transformation Matrix v2.0\r\n (c) Epistemex 2014-2015\r\n www.epistemex.com\r\n By Ken Fyrstenberg\r\n Contributions by leeoniya.\r\n License: MIT, header required.\r\n */\r\n\r\n/**\r\n * 2D transformation matrix object initialized with identity matrix.\r\n *\r\n * The matrix can synchronize a canvas context by supplying the context\r\n * as an argument, or later apply current absolute transform to an\r\n * existing context.\r\n *\r\n * All values are handled as floating point values.\r\n *\r\n * @param {CanvasRenderingContext2D} [context] - Optional context to sync with Matrix\r\n * @prop {number} a - scale x\r\n * @prop {number} b - shear y\r\n * @prop {number} c - shear x\r\n * @prop {number} d - scale y\r\n * @prop {number} e - translate x\r\n * @prop {number} f - translate y\r\n * @prop {CanvasRenderingContext2D|null} [context=null] - set or get current canvas context\r\n * @constructor\r\n */\r\n\r\nvar Matrix = (function () {\r\n var _cos = Math.cos;\r\n var _sin = Math.sin;\r\n var _tan = Math.tan;\r\n var _rnd = Math.round;\r\n\r\n function reset() {\r\n this.props[0] = 1;\r\n this.props[1] = 0;\r\n this.props[2] = 0;\r\n this.props[3] = 0;\r\n this.props[4] = 0;\r\n this.props[5] = 1;\r\n this.props[6] = 0;\r\n this.props[7] = 0;\r\n this.props[8] = 0;\r\n this.props[9] = 0;\r\n this.props[10] = 1;\r\n this.props[11] = 0;\r\n this.props[12] = 0;\r\n this.props[13] = 0;\r\n this.props[14] = 0;\r\n this.props[15] = 1;\r\n return this;\r\n }\r\n\r\n function rotate(angle) {\r\n if (angle === 0) {\r\n return this;\r\n }\r\n var mCos = _cos(angle);\r\n var mSin = _sin(angle);\r\n return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\r\n }\r\n\r\n function rotateX(angle) {\r\n if (angle === 0) {\r\n return this;\r\n }\r\n var mCos = _cos(angle);\r\n var mSin = _sin(angle);\r\n return this._t(1, 0, 0, 0, 0, mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1);\r\n }\r\n\r\n function rotateY(angle) {\r\n if (angle === 0) {\r\n return this;\r\n }\r\n var mCos = _cos(angle);\r\n var mSin = _sin(angle);\r\n return this._t(mCos, 0, mSin, 0, 0, 1, 0, 0, -mSin, 0, mCos, 0, 0, 0, 0, 1);\r\n }\r\n\r\n function rotateZ(angle) {\r\n if (angle === 0) {\r\n return this;\r\n }\r\n var mCos = _cos(angle);\r\n var mSin = _sin(angle);\r\n return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\r\n }\r\n\r\n function shear(sx, sy) {\r\n return this._t(1, sy, sx, 1, 0, 0);\r\n }\r\n\r\n function skew(ax, ay) {\r\n return this.shear(_tan(ax), _tan(ay));\r\n }\r\n\r\n function skewFromAxis(ax, angle) {\r\n var mCos = _cos(angle);\r\n var mSin = _sin(angle);\r\n return this._t(mCos, mSin, 0, 0, -mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\r\n ._t(1, 0, 0, 0, _tan(ax), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\r\n ._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\r\n // return this._t(mCos, mSin, -mSin, mCos, 0, 0)._t(1, 0, _tan(ax), 1, 0, 0)._t(mCos, -mSin, mSin, mCos, 0, 0);\r\n }\r\n\r\n function scale(sx, sy, sz) {\r\n if (!sz && sz !== 0) {\r\n sz = 1;\r\n }\r\n if (sx === 1 && sy === 1 && sz === 1) {\r\n return this;\r\n }\r\n return this._t(sx, 0, 0, 0, 0, sy, 0, 0, 0, 0, sz, 0, 0, 0, 0, 1);\r\n }\r\n\r\n function setTransform(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) {\r\n this.props[0] = a;\r\n this.props[1] = b;\r\n this.props[2] = c;\r\n this.props[3] = d;\r\n this.props[4] = e;\r\n this.props[5] = f;\r\n this.props[6] = g;\r\n this.props[7] = h;\r\n this.props[8] = i;\r\n this.props[9] = j;\r\n this.props[10] = k;\r\n this.props[11] = l;\r\n this.props[12] = m;\r\n this.props[13] = n;\r\n this.props[14] = o;\r\n this.props[15] = p;\r\n return this;\r\n }\r\n\r\n function translate(tx, ty, tz) {\r\n tz = tz || 0;\r\n if (tx !== 0 || ty !== 0 || tz !== 0) {\r\n return this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, tx, ty, tz, 1);\r\n }\r\n return this;\r\n }\r\n\r\n function transform(a2, b2, c2, d2, e2, f2, g2, h2, i2, j2, k2, l2, m2, n2, o2, p2) {\r\n var _p = this.props;\r\n\r\n if (a2 === 1 && b2 === 0 && c2 === 0 && d2 === 0 && e2 === 0 && f2 === 1 && g2 === 0 && h2 === 0 && i2 === 0 && j2 === 0 && k2 === 1 && l2 === 0) {\r\n // NOTE: commenting this condition because TurboFan deoptimizes code when present\r\n // if(m2 !== 0 || n2 !== 0 || o2 !== 0){\r\n _p[12] = _p[12] * a2 + _p[15] * m2;\r\n _p[13] = _p[13] * f2 + _p[15] * n2;\r\n _p[14] = _p[14] * k2 + _p[15] * o2;\r\n _p[15] *= p2;\r\n // }\r\n this._identityCalculated = false;\r\n return this;\r\n }\r\n\r\n var a1 = _p[0];\r\n var b1 = _p[1];\r\n var c1 = _p[2];\r\n var d1 = _p[3];\r\n var e1 = _p[4];\r\n var f1 = _p[5];\r\n var g1 = _p[6];\r\n var h1 = _p[7];\r\n var i1 = _p[8];\r\n var j1 = _p[9];\r\n var k1 = _p[10];\r\n var l1 = _p[11];\r\n var m1 = _p[12];\r\n var n1 = _p[13];\r\n var o1 = _p[14];\r\n var p1 = _p[15];\r\n\r\n /* matrix order (canvas compatible):\r\n * ace\r\n * bdf\r\n * 001\r\n */\r\n _p[0] = a1 * a2 + b1 * e2 + c1 * i2 + d1 * m2;\r\n _p[1] = a1 * b2 + b1 * f2 + c1 * j2 + d1 * n2;\r\n _p[2] = a1 * c2 + b1 * g2 + c1 * k2 + d1 * o2;\r\n _p[3] = a1 * d2 + b1 * h2 + c1 * l2 + d1 * p2;\r\n\r\n _p[4] = e1 * a2 + f1 * e2 + g1 * i2 + h1 * m2;\r\n _p[5] = e1 * b2 + f1 * f2 + g1 * j2 + h1 * n2;\r\n _p[6] = e1 * c2 + f1 * g2 + g1 * k2 + h1 * o2;\r\n _p[7] = e1 * d2 + f1 * h2 + g1 * l2 + h1 * p2;\r\n\r\n _p[8] = i1 * a2 + j1 * e2 + k1 * i2 + l1 * m2;\r\n _p[9] = i1 * b2 + j1 * f2 + k1 * j2 + l1 * n2;\r\n _p[10] = i1 * c2 + j1 * g2 + k1 * k2 + l1 * o2;\r\n _p[11] = i1 * d2 + j1 * h2 + k1 * l2 + l1 * p2;\r\n\r\n _p[12] = m1 * a2 + n1 * e2 + o1 * i2 + p1 * m2;\r\n _p[13] = m1 * b2 + n1 * f2 + o1 * j2 + p1 * n2;\r\n _p[14] = m1 * c2 + n1 * g2 + o1 * k2 + p1 * o2;\r\n _p[15] = m1 * d2 + n1 * h2 + o1 * l2 + p1 * p2;\r\n\r\n this._identityCalculated = false;\r\n return this;\r\n }\r\n\r\n function isIdentity() {\r\n if (!this._identityCalculated) {\r\n this._identity = !(this.props[0] !== 1 || this.props[1] !== 0 || this.props[2] !== 0 || this.props[3] !== 0 || this.props[4] !== 0 || this.props[5] !== 1 || this.props[6] !== 0 || this.props[7] !== 0 || this.props[8] !== 0 || this.props[9] !== 0 || this.props[10] !== 1 || this.props[11] !== 0 || this.props[12] !== 0 || this.props[13] !== 0 || this.props[14] !== 0 || this.props[15] !== 1);\r\n this._identityCalculated = true;\r\n }\r\n return this._identity;\r\n }\r\n\r\n function equals(matr) {\r\n var i = 0;\r\n while (i < 16) {\r\n if (matr.props[i] !== this.props[i]) {\r\n return false;\r\n }\r\n i += 1;\r\n }\r\n return true;\r\n }\r\n\r\n function clone(matr) {\r\n var i;\r\n for (i = 0; i < 16; i += 1) {\r\n matr.props[i] = this.props[i];\r\n }\r\n return matr;\r\n }\r\n\r\n function cloneFromProps(props) {\r\n var i;\r\n for (i = 0; i < 16; i += 1) {\r\n this.props[i] = props[i];\r\n }\r\n }\r\n\r\n function applyToPoint(x, y, z) {\r\n return {\r\n x: x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12],\r\n y: x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13],\r\n z: x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14],\r\n };\r\n /* return {\r\n x: x * me.a + y * me.c + me.e,\r\n y: x * me.b + y * me.d + me.f\r\n }; */\r\n }\r\n function applyToX(x, y, z) {\r\n return x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12];\r\n }\r\n function applyToY(x, y, z) {\r\n return x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13];\r\n }\r\n function applyToZ(x, y, z) {\r\n return x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14];\r\n }\r\n\r\n function getInverseMatrix() {\r\n var determinant = this.props[0] * this.props[5] - this.props[1] * this.props[4];\r\n var a = this.props[5] / determinant;\r\n var b = -this.props[1] / determinant;\r\n var c = -this.props[4] / determinant;\r\n var d = this.props[0] / determinant;\r\n var e = (this.props[4] * this.props[13] - this.props[5] * this.props[12]) / determinant;\r\n var f = -(this.props[0] * this.props[13] - this.props[1] * this.props[12]) / determinant;\r\n var inverseMatrix = new Matrix();\r\n inverseMatrix.props[0] = a;\r\n inverseMatrix.props[1] = b;\r\n inverseMatrix.props[4] = c;\r\n inverseMatrix.props[5] = d;\r\n inverseMatrix.props[12] = e;\r\n inverseMatrix.props[13] = f;\r\n return inverseMatrix;\r\n }\r\n\r\n function inversePoint(pt) {\r\n var inverseMatrix = this.getInverseMatrix();\r\n return inverseMatrix.applyToPointArray(pt[0], pt[1], pt[2] || 0);\r\n }\r\n\r\n function inversePoints(pts) {\r\n var i;\r\n var len = pts.length;\r\n var retPts = [];\r\n for (i = 0; i < len; i += 1) {\r\n retPts[i] = inversePoint(pts[i]);\r\n }\r\n return retPts;\r\n }\r\n\r\n function applyToTriplePoints(pt1, pt2, pt3) {\r\n var arr = createTypedArray('float32', 6);\r\n if (this.isIdentity()) {\r\n arr[0] = pt1[0];\r\n arr[1] = pt1[1];\r\n arr[2] = pt2[0];\r\n arr[3] = pt2[1];\r\n arr[4] = pt3[0];\r\n arr[5] = pt3[1];\r\n } else {\r\n var p0 = this.props[0];\r\n var p1 = this.props[1];\r\n var p4 = this.props[4];\r\n var p5 = this.props[5];\r\n var p12 = this.props[12];\r\n var p13 = this.props[13];\r\n arr[0] = pt1[0] * p0 + pt1[1] * p4 + p12;\r\n arr[1] = pt1[0] * p1 + pt1[1] * p5 + p13;\r\n arr[2] = pt2[0] * p0 + pt2[1] * p4 + p12;\r\n arr[3] = pt2[0] * p1 + pt2[1] * p5 + p13;\r\n arr[4] = pt3[0] * p0 + pt3[1] * p4 + p12;\r\n arr[5] = pt3[0] * p1 + pt3[1] * p5 + p13;\r\n }\r\n return arr;\r\n }\r\n\r\n function applyToPointArray(x, y, z) {\r\n var arr;\r\n if (this.isIdentity()) {\r\n arr = [x, y, z];\r\n } else {\r\n arr = [\r\n x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12],\r\n x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13],\r\n x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14],\r\n ];\r\n }\r\n return arr;\r\n }\r\n\r\n function applyToPointStringified(x, y) {\r\n if (this.isIdentity()) {\r\n return x + ',' + y;\r\n }\r\n var _p = this.props;\r\n return Math.round((x * _p[0] + y * _p[4] + _p[12]) * 100) / 100 + ',' + Math.round((x * _p[1] + y * _p[5] + _p[13]) * 100) / 100;\r\n }\r\n\r\n function toCSS() {\r\n // Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.\r\n /* if(this.isIdentity()) {\r\n return '';\r\n } */\r\n var i = 0;\r\n var props = this.props;\r\n var cssValue = 'matrix3d(';\r\n var v = 10000;\r\n while (i < 16) {\r\n cssValue += _rnd(props[i] * v) / v;\r\n cssValue += i === 15 ? ')' : ',';\r\n i += 1;\r\n }\r\n return cssValue;\r\n }\r\n\r\n function roundMatrixProperty(val) {\r\n var v = 10000;\r\n if ((val < 0.000001 && val > 0) || (val > -0.000001 && val < 0)) {\r\n return _rnd(val * v) / v;\r\n }\r\n return val;\r\n }\r\n\r\n function to2dCSS() {\r\n // Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.\r\n /* if(this.isIdentity()) {\r\n return '';\r\n } */\r\n var props = this.props;\r\n var _a = roundMatrixProperty(props[0]);\r\n var _b = roundMatrixProperty(props[1]);\r\n var _c = roundMatrixProperty(props[4]);\r\n var _d = roundMatrixProperty(props[5]);\r\n var _e = roundMatrixProperty(props[12]);\r\n var _f = roundMatrixProperty(props[13]);\r\n return 'matrix(' + _a + ',' + _b + ',' + _c + ',' + _d + ',' + _e + ',' + _f + ')';\r\n }\r\n\r\n return function () {\r\n this.reset = reset;\r\n this.rotate = rotate;\r\n this.rotateX = rotateX;\r\n this.rotateY = rotateY;\r\n this.rotateZ = rotateZ;\r\n this.skew = skew;\r\n this.skewFromAxis = skewFromAxis;\r\n this.shear = shear;\r\n this.scale = scale;\r\n this.setTransform = setTransform;\r\n this.translate = translate;\r\n this.transform = transform;\r\n this.applyToPoint = applyToPoint;\r\n this.applyToX = applyToX;\r\n this.applyToY = applyToY;\r\n this.applyToZ = applyToZ;\r\n this.applyToPointArray = applyToPointArray;\r\n this.applyToTriplePoints = applyToTriplePoints;\r\n this.applyToPointStringified = applyToPointStringified;\r\n this.toCSS = toCSS;\r\n this.to2dCSS = to2dCSS;\r\n this.clone = clone;\r\n this.cloneFromProps = cloneFromProps;\r\n this.equals = equals;\r\n this.inversePoints = inversePoints;\r\n this.inversePoint = inversePoint;\r\n this.getInverseMatrix = getInverseMatrix;\r\n this._t = this.transform;\r\n this.isIdentity = isIdentity;\r\n this._identity = true;\r\n this._identityCalculated = false;\r\n\r\n this.props = createTypedArray('float32', 16);\r\n this.reset();\r\n };\r\n}());\r\n\r\n/* eslint-disable */\r\n/*\r\n Copyright 2014 David Bau.\r\n\r\n Permission is hereby granted, free of charge, to any person obtaining\r\n a copy of this software and associated documentation files (the\r\n \"Software\"), to deal in the Software without restriction, including\r\n without limitation the rights to use, copy, modify, merge, publish,\r\n distribute, sublicense, and/or sell copies of the Software, and to\r\n permit persons to whom the Software is furnished to do so, subject to\r\n the following conditions:\r\n\r\n The above copyright notice and this permission notice shall be\r\n included in all copies or substantial portions of the Software.\r\n\r\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\r\n EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n\r\n */\r\n\r\n(function (pool, math) {\r\n//\r\n// The following constants are related to IEEE 754 limits.\r\n//\r\n var global = this,\r\n width = 256, // each RC4 output is 0 <= x < 256\r\n chunks = 6, // at least six RC4 outputs for each double\r\n digits = 52, // there are 52 significant digits in a double\r\n rngname = 'random', // rngname: name for Math.random and Math.seedrandom\r\n startdenom = math.pow(width, chunks),\r\n significance = math.pow(2, digits),\r\n overflow = significance * 2,\r\n mask = width - 1,\r\n nodecrypto; // node.js crypto module, initialized at the bottom.\r\n\r\n//\r\n// seedrandom()\r\n// This is the seedrandom function described above.\r\n//\r\n function seedrandom(seed, options, callback) {\r\n var key = [];\r\n options = (options === true) ? { entropy: true } : (options || {});\r\n\r\n // Flatten the seed string or build one from local entropy if needed.\r\n var shortseed = mixkey(flatten(\r\n options.entropy ? [seed, tostring(pool)] :\r\n (seed === null) ? autoseed() : seed, 3), key);\r\n\r\n // Use the seed to initialize an ARC4 generator.\r\n var arc4 = new ARC4(key);\r\n\r\n // This function returns a random double in [0, 1) that contains\r\n // randomness in every bit of the mantissa of the IEEE 754 value.\r\n var prng = function() {\r\n var n = arc4.g(chunks), // Start with a numerator n < 2 ^ 48\r\n d = startdenom, // and denominator d = 2 ^ 48.\r\n x = 0; // and no 'extra last byte'.\r\n while (n < significance) { // Fill up all significant digits by\r\n n = (n + x) * width; // shifting numerator and\r\n d *= width; // denominator and generating a\r\n x = arc4.g(1); // new least-significant-byte.\r\n }\r\n while (n >= overflow) { // To avoid rounding up, before adding\r\n n /= 2; // last byte, shift everything\r\n d /= 2; // right using integer math until\r\n x >>>= 1; // we have exactly the desired bits.\r\n }\r\n return (n + x) / d; // Form the number within [0, 1).\r\n };\r\n\r\n prng.int32 = function() { return arc4.g(4) | 0; };\r\n prng.quick = function() { return arc4.g(4) / 0x100000000; };\r\n prng.double = prng;\r\n\r\n // Mix the randomness into accumulated entropy.\r\n mixkey(tostring(arc4.S), pool);\r\n\r\n // Calling convention: what to return as a function of prng, seed, is_math.\r\n return (options.pass || callback ||\r\n function(prng, seed, is_math_call, state) {\r\n if (state) {\r\n // Load the arc4 state from the given state if it has an S array.\r\n if (state.S) { copy(state, arc4); }\r\n // Only provide the .state method if requested via options.state.\r\n prng.state = function() { return copy(arc4, {}); };\r\n }\r\n\r\n // If called as a method of Math (Math.seedrandom()), mutate\r\n // Math.random because that is how seedrandom.js has worked since v1.0.\r\n if (is_math_call) { math[rngname] = prng; return seed; }\r\n\r\n // Otherwise, it is a newer calling convention, so return the\r\n // prng directly.\r\n else return prng;\r\n })(\r\n prng,\r\n shortseed,\r\n 'global' in options ? options.global : (this == math),\r\n options.state);\r\n }\r\n math['seed' + rngname] = seedrandom;\r\n\r\n//\r\n// ARC4\r\n//\r\n// An ARC4 implementation. The constructor takes a key in the form of\r\n// an array of at most (width) integers that should be 0 <= x < (width).\r\n//\r\n// The g(count) method returns a pseudorandom integer that concatenates\r\n// the next (count) outputs from ARC4. Its return value is a number x\r\n// that is in the range 0 <= x < (width ^ count).\r\n//\r\n function ARC4(key) {\r\n var t, keylen = key.length,\r\n me = this, i = 0, j = me.i = me.j = 0, s = me.S = [];\r\n\r\n // The empty key [] is treated as [0].\r\n if (!keylen) { key = [keylen++]; }\r\n\r\n // Set up S using the standard key scheduling algorithm.\r\n while (i < width) {\r\n s[i] = i++;\r\n }\r\n for (i = 0; i < width; i++) {\r\n s[i] = s[j = mask & (j + key[i % keylen] + (t = s[i]))];\r\n s[j] = t;\r\n }\r\n\r\n // The \"g\" method returns the next (count) outputs as one number.\r\n me.g = function(count) {\r\n // Using instance members instead of closure state nearly doubles speed.\r\n var t, r = 0,\r\n i = me.i, j = me.j, s = me.S;\r\n while (count--) {\r\n t = s[i = mask & (i + 1)];\r\n r = r * width + s[mask & ((s[i] = s[j = mask & (j + t)]) + (s[j] = t))];\r\n }\r\n me.i = i; me.j = j;\r\n return r;\r\n // For robust unpredictability, the function call below automatically\r\n // discards an initial batch of values. This is called RC4-drop[256].\r\n // See http://google.com/search?q=rsa+fluhrer+response&btnI\r\n };\r\n }\r\n\r\n//\r\n// copy()\r\n// Copies internal state of ARC4 to or from a plain object.\r\n//\r\n function copy(f, t) {\r\n t.i = f.i;\r\n t.j = f.j;\r\n t.S = f.S.slice();\r\n return t;\r\n }\r\n\r\n//\r\n// flatten()\r\n// Converts an object tree to nested arrays of strings.\r\n//\r\n function flatten(obj, depth) {\r\n var result = [], typ = (typeof obj), prop;\r\n if (depth && typ == 'object') {\r\n for (prop in obj) {\r\n try { result.push(flatten(obj[prop], depth - 1)); } catch (e) {}\r\n }\r\n }\r\n return (result.length ? result : typ == 'string' ? obj : obj + '\\0');\r\n }\r\n\r\n//\r\n// mixkey()\r\n// Mixes a string seed into a key that is an array of integers, and\r\n// returns a shortened string seed that is equivalent to the result key.\r\n//\r\n function mixkey(seed, key) {\r\n var stringseed = seed + '', smear, j = 0;\r\n while (j < stringseed.length) {\r\n key[mask & j] =\r\n mask & ((smear ^= key[mask & j] * 19) + stringseed.charCodeAt(j++));\r\n }\r\n return tostring(key);\r\n }\r\n\r\n//\r\n// autoseed()\r\n// Returns an object for autoseeding, using window.crypto and Node crypto\r\n// module if available.\r\n//\r\n function autoseed() {\r\n try {\r\n if (nodecrypto) { return tostring(nodecrypto.randomBytes(width)); }\r\n var out = new Uint8Array(width);\r\n (global.crypto || global.msCrypto).getRandomValues(out);\r\n return tostring(out);\r\n } catch (e) {\r\n var browser = global.navigator,\r\n plugins = browser && browser.plugins;\r\n return [+new Date(), global, plugins, global.screen, tostring(pool)];\r\n }\r\n }\r\n\r\n//\r\n// tostring()\r\n// Converts an array of charcodes to a string\r\n//\r\n function tostring(a) {\r\n return String.fromCharCode.apply(0, a);\r\n }\r\n\r\n//\r\n// When seedrandom.js is loaded, we immediately mix a few bits\r\n// from the built-in RNG into the entropy pool. Because we do\r\n// not want to interfere with deterministic PRNG state later,\r\n// seedrandom will not call math.random on its own again after\r\n// initialization.\r\n//\r\n mixkey(math.random(), pool);\r\n\r\n//\r\n// Nodejs and AMD support: export the implementation as a module using\r\n// either convention.\r\n//\r\n\r\n// End anonymous scope, and pass initial values.\r\n})(\r\n [], // pool: entropy pool starts empty\r\n BMMath // math: package containing random, pow, and seedrandom\r\n);\r\n/* eslint-disable */\r\nvar BezierFactory = (function () {\r\n /**\r\n * BezierEasing - use bezier curve for transition easing function\r\n * by Gaëtan Renaudeau 2014 - 2015 – MIT License\r\n *\r\n * Credits: is based on Firefox's nsSMILKeySpline.cpp\r\n * Usage:\r\n * var spline = BezierEasing([ 0.25, 0.1, 0.25, 1.0 ])\r\n * spline.get(x) => returns the easing value | x must be in [0, 1] range\r\n *\r\n */\r\n\r\n var ob = {};\r\n ob.getBezierEasing = getBezierEasing;\r\n var beziers = {};\r\n\r\n function getBezierEasing(a, b, c, d, nm) {\r\n var str = nm || ('bez_' + a + '_' + b + '_' + c + '_' + d).replace(/\\./g, 'p');\r\n if (beziers[str]) {\r\n return beziers[str];\r\n }\r\n var bezEasing = new BezierEasing([a, b, c, d]);\r\n beziers[str] = bezEasing;\r\n return bezEasing;\r\n }\r\n\r\n // These values are established by empiricism with tests (tradeoff: performance VS precision)\r\n var NEWTON_ITERATIONS = 4;\r\n var NEWTON_MIN_SLOPE = 0.001;\r\n var SUBDIVISION_PRECISION = 0.0000001;\r\n var SUBDIVISION_MAX_ITERATIONS = 10;\r\n\r\n var kSplineTableSize = 11;\r\n var kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\r\n\r\n var float32ArraySupported = typeof Float32Array === 'function';\r\n\r\n function A(aA1, aA2) { return 1.0 - 3.0 * aA2 + 3.0 * aA1; }\r\n function B(aA1, aA2) { return 3.0 * aA2 - 6.0 * aA1; }\r\n function C(aA1) { return 3.0 * aA1; }\r\n\r\n // Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.\r\n function calcBezier(aT, aA1, aA2) {\r\n return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT;\r\n }\r\n\r\n // Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2.\r\n function getSlope(aT, aA1, aA2) {\r\n return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1);\r\n }\r\n\r\n function binarySubdivide(aX, aA, aB, mX1, mX2) {\r\n var currentX,\r\n currentT,\r\n i = 0;\r\n do {\r\n currentT = aA + (aB - aA) / 2.0;\r\n currentX = calcBezier(currentT, mX1, mX2) - aX;\r\n if (currentX > 0.0) {\r\n aB = currentT;\r\n } else {\r\n aA = currentT;\r\n }\r\n } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS);\r\n return currentT;\r\n }\r\n\r\n function newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {\r\n for (var i = 0; i < NEWTON_ITERATIONS; ++i) {\r\n var currentSlope = getSlope(aGuessT, mX1, mX2);\r\n if (currentSlope === 0.0) return aGuessT;\r\n var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\r\n aGuessT -= currentX / currentSlope;\r\n }\r\n return aGuessT;\r\n }\r\n\r\n /**\r\n * points is an array of [ mX1, mY1, mX2, mY2 ]\r\n */\r\n function BezierEasing(points) {\r\n this._p = points;\r\n this._mSampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize);\r\n this._precomputed = false;\r\n\r\n this.get = this.get.bind(this);\r\n }\r\n\r\n BezierEasing.prototype = {\r\n\r\n get: function (x) {\r\n var mX1 = this._p[0],\r\n mY1 = this._p[1],\r\n mX2 = this._p[2],\r\n mY2 = this._p[3];\r\n if (!this._precomputed) this._precompute();\r\n if (mX1 === mY1 && mX2 === mY2) return x; // linear\r\n // Because JavaScript number are imprecise, we should guarantee the extremes are right.\r\n if (x === 0) return 0;\r\n if (x === 1) return 1;\r\n return calcBezier(this._getTForX(x), mY1, mY2);\r\n },\r\n\r\n // Private part\r\n\r\n _precompute: function () {\r\n var mX1 = this._p[0],\r\n mY1 = this._p[1],\r\n mX2 = this._p[2],\r\n mY2 = this._p[3];\r\n this._precomputed = true;\r\n if (mX1 !== mY1 || mX2 !== mY2) { this._calcSampleValues(); }\r\n },\r\n\r\n _calcSampleValues: function () {\r\n var mX1 = this._p[0],\r\n mX2 = this._p[2];\r\n for (var i = 0; i < kSplineTableSize; ++i) {\r\n this._mSampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\r\n }\r\n },\r\n\r\n /**\r\n * getTForX chose the fastest heuristic to determine the percentage value precisely from a given X projection.\r\n */\r\n _getTForX: function (aX) {\r\n var mX1 = this._p[0],\r\n mX2 = this._p[2],\r\n mSampleValues = this._mSampleValues;\r\n\r\n var intervalStart = 0.0;\r\n var currentSample = 1;\r\n var lastSample = kSplineTableSize - 1;\r\n\r\n for (; currentSample !== lastSample && mSampleValues[currentSample] <= aX; ++currentSample) {\r\n intervalStart += kSampleStepSize;\r\n }\r\n --currentSample;\r\n\r\n // Interpolate to provide an initial guess for t\r\n var dist = (aX - mSampleValues[currentSample]) / (mSampleValues[currentSample + 1] - mSampleValues[currentSample]);\r\n var guessForT = intervalStart + dist * kSampleStepSize;\r\n\r\n var initialSlope = getSlope(guessForT, mX1, mX2);\r\n if (initialSlope >= NEWTON_MIN_SLOPE) {\r\n return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\r\n } if (initialSlope === 0.0) {\r\n return guessForT;\r\n }\r\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\r\n },\r\n };\r\n\r\n return ob;\r\n}());\r\n\r\n(function () {\r\n var lastTime = 0;\r\n var vendors = ['ms', 'moz', 'webkit', 'o'];\r\n for (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) { // eslint-disable-line no-plusplus\r\n window.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame'];\r\n window.cancelAnimationFrame = window[vendors[x] + 'CancelAnimationFrame'] || window[vendors[x] + 'CancelRequestAnimationFrame'];\r\n }\r\n if (!window.requestAnimationFrame) {\r\n window.requestAnimationFrame = function (callback) {\r\n var currTime = new Date().getTime();\r\n var timeToCall = Math.max(0, 16 - (currTime - lastTime));\r\n var id = setTimeout(function () {\r\n callback(currTime + timeToCall);\r\n },\r\n timeToCall);\r\n lastTime = currTime + timeToCall;\r\n return id;\r\n };\r\n }\r\n if (!window.cancelAnimationFrame) {\r\n window.cancelAnimationFrame = function (id) {\r\n clearTimeout(id);\r\n };\r\n }\r\n}());\r\n\r\n/* exported extendPrototype, getDescriptor, createProxyFunction */\r\n\r\nfunction extendPrototype(sources, destination) {\r\n var i;\r\n var len = sources.length;\r\n var sourcePrototype;\r\n for (i = 0; i < len; i += 1) {\r\n sourcePrototype = sources[i].prototype;\r\n for (var attr in sourcePrototype) {\r\n if (Object.prototype.hasOwnProperty.call(sourcePrototype, attr)) destination.prototype[attr] = sourcePrototype[attr];\r\n }\r\n }\r\n}\r\n\r\nfunction getDescriptor(object, prop) {\r\n return Object.getOwnPropertyDescriptor(object, prop);\r\n}\r\n\r\nfunction createProxyFunction(prototype) {\r\n function ProxyFunction() {}\r\n ProxyFunction.prototype = prototype;\r\n return ProxyFunction;\r\n}\r\n\r\n/* global segmentsLengthPool, defaultCurveSegments, createSizedArray, bmPow, bmSqrt, bmFloor, createTypedArray, bezierLengthPool */\r\n/* exported bez */\r\n\r\nfunction bezFunction() {\r\n var math = Math;\r\n\r\n function pointOnLine2D(x1, y1, x2, y2, x3, y3) {\r\n var det1 = (x1 * y2) + (y1 * x3) + (x2 * y3) - (x3 * y2) - (y3 * x1) - (x2 * y1);\r\n return det1 > -0.001 && det1 < 0.001;\r\n }\r\n\r\n function pointOnLine3D(x1, y1, z1, x2, y2, z2, x3, y3, z3) {\r\n if (z1 === 0 && z2 === 0 && z3 === 0) {\r\n return pointOnLine2D(x1, y1, x2, y2, x3, y3);\r\n }\r\n var dist1 = math.sqrt(math.pow(x2 - x1, 2) + math.pow(y2 - y1, 2) + math.pow(z2 - z1, 2));\r\n var dist2 = math.sqrt(math.pow(x3 - x1, 2) + math.pow(y3 - y1, 2) + math.pow(z3 - z1, 2));\r\n var dist3 = math.sqrt(math.pow(x3 - x2, 2) + math.pow(y3 - y2, 2) + math.pow(z3 - z2, 2));\r\n var diffDist;\r\n if (dist1 > dist2) {\r\n if (dist1 > dist3) {\r\n diffDist = dist1 - dist2 - dist3;\r\n } else {\r\n diffDist = dist3 - dist2 - dist1;\r\n }\r\n } else if (dist3 > dist2) {\r\n diffDist = dist3 - dist2 - dist1;\r\n } else {\r\n diffDist = dist2 - dist1 - dist3;\r\n }\r\n return diffDist > -0.0001 && diffDist < 0.0001;\r\n }\r\n\r\n var getBezierLength = (function () {\r\n return function (pt1, pt2, pt3, pt4) {\r\n var curveSegments = defaultCurveSegments;\r\n var k;\r\n var i;\r\n var len;\r\n var ptCoord;\r\n var perc;\r\n var addedLength = 0;\r\n var ptDistance;\r\n var point = [];\r\n var lastPoint = [];\r\n var lengthData = bezierLengthPool.newElement();\r\n len = pt3.length;\r\n for (k = 0; k < curveSegments; k += 1) {\r\n perc = k / (curveSegments - 1);\r\n ptDistance = 0;\r\n for (i = 0; i < len; i += 1) {\r\n ptCoord = bmPow(1 - perc, 3) * pt1[i] + 3 * bmPow(1 - perc, 2) * perc * pt3[i] + 3 * (1 - perc) * bmPow(perc, 2) * pt4[i] + bmPow(perc, 3) * pt2[i];\r\n point[i] = ptCoord;\r\n if (lastPoint[i] !== null) {\r\n ptDistance += bmPow(point[i] - lastPoint[i], 2);\r\n }\r\n lastPoint[i] = point[i];\r\n }\r\n if (ptDistance) {\r\n ptDistance = bmSqrt(ptDistance);\r\n addedLength += ptDistance;\r\n }\r\n lengthData.percents[k] = perc;\r\n lengthData.lengths[k] = addedLength;\r\n }\r\n lengthData.addedLength = addedLength;\r\n return lengthData;\r\n };\r\n }());\r\n\r\n function getSegmentsLength(shapeData) {\r\n var segmentsLength = segmentsLengthPool.newElement();\r\n var closed = shapeData.c;\r\n var pathV = shapeData.v;\r\n var pathO = shapeData.o;\r\n var pathI = shapeData.i;\r\n var i;\r\n var len = shapeData._length;\r\n var lengths = segmentsLength.lengths;\r\n var totalLength = 0;\r\n for (i = 0; i < len - 1; i += 1) {\r\n lengths[i] = getBezierLength(pathV[i], pathV[i + 1], pathO[i], pathI[i + 1]);\r\n totalLength += lengths[i].addedLength;\r\n }\r\n if (closed && len) {\r\n lengths[i] = getBezierLength(pathV[i], pathV[0], pathO[i], pathI[0]);\r\n totalLength += lengths[i].addedLength;\r\n }\r\n segmentsLength.totalLength = totalLength;\r\n return segmentsLength;\r\n }\r\n\r\n function BezierData(length) {\r\n this.segmentLength = 0;\r\n this.points = new Array(length);\r\n }\r\n\r\n function PointData(partial, point) {\r\n this.partialLength = partial;\r\n this.point = point;\r\n }\r\n\r\n var buildBezierData = (function () {\r\n var storedData = {};\r\n\r\n return function (pt1, pt2, pt3, pt4) {\r\n var bezierName = (pt1[0] + '_' + pt1[1] + '_' + pt2[0] + '_' + pt2[1] + '_' + pt3[0] + '_' + pt3[1] + '_' + pt4[0] + '_' + pt4[1]).replace(/\\./g, 'p');\r\n if (!storedData[bezierName]) {\r\n var curveSegments = defaultCurveSegments;\r\n var k;\r\n var i;\r\n var len;\r\n var ptCoord;\r\n var perc;\r\n var addedLength = 0;\r\n var ptDistance;\r\n var point;\r\n var lastPoint = null;\r\n if (pt1.length === 2 && (pt1[0] !== pt2[0] || pt1[1] !== pt2[1]) && pointOnLine2D(pt1[0], pt1[1], pt2[0], pt2[1], pt1[0] + pt3[0], pt1[1] + pt3[1]) && pointOnLine2D(pt1[0], pt1[1], pt2[0], pt2[1], pt2[0] + pt4[0], pt2[1] + pt4[1])) {\r\n curveSegments = 2;\r\n }\r\n var bezierData = new BezierData(curveSegments);\r\n len = pt3.length;\r\n for (k = 0; k < curveSegments; k += 1) {\r\n point = createSizedArray(len);\r\n perc = k / (curveSegments - 1);\r\n ptDistance = 0;\r\n for (i = 0; i < len; i += 1) {\r\n ptCoord = bmPow(1 - perc, 3) * pt1[i] + 3 * bmPow(1 - perc, 2) * perc * (pt1[i] + pt3[i]) + 3 * (1 - perc) * bmPow(perc, 2) * (pt2[i] + pt4[i]) + bmPow(perc, 3) * pt2[i];\r\n point[i] = ptCoord;\r\n if (lastPoint !== null) {\r\n ptDistance += bmPow(point[i] - lastPoint[i], 2);\r\n }\r\n }\r\n ptDistance = bmSqrt(ptDistance);\r\n addedLength += ptDistance;\r\n bezierData.points[k] = new PointData(ptDistance, point);\r\n lastPoint = point;\r\n }\r\n bezierData.segmentLength = addedLength;\r\n storedData[bezierName] = bezierData;\r\n }\r\n return storedData[bezierName];\r\n };\r\n }());\r\n\r\n function getDistancePerc(perc, bezierData) {\r\n var percents = bezierData.percents;\r\n var lengths = bezierData.lengths;\r\n var len = percents.length;\r\n var initPos = bmFloor((len - 1) * perc);\r\n var lengthPos = perc * bezierData.addedLength;\r\n var lPerc = 0;\r\n if (initPos === len - 1 || initPos === 0 || lengthPos === lengths[initPos]) {\r\n return percents[initPos];\r\n }\r\n var dir = lengths[initPos] > lengthPos ? -1 : 1;\r\n var flag = true;\r\n while (flag) {\r\n if (lengths[initPos] <= lengthPos && lengths[initPos + 1] > lengthPos) {\r\n lPerc = (lengthPos - lengths[initPos]) / (lengths[initPos + 1] - lengths[initPos]);\r\n flag = false;\r\n } else {\r\n initPos += dir;\r\n }\r\n if (initPos < 0 || initPos >= len - 1) {\r\n // FIX for TypedArrays that don't store floating point values with enough accuracy\r\n if (initPos === len - 1) {\r\n return percents[initPos];\r\n }\r\n flag = false;\r\n }\r\n }\r\n return percents[initPos] + (percents[initPos + 1] - percents[initPos]) * lPerc;\r\n }\r\n\r\n function getPointInSegment(pt1, pt2, pt3, pt4, percent, bezierData) {\r\n var t1 = getDistancePerc(percent, bezierData);\r\n var u1 = 1 - t1;\r\n var ptX = math.round((u1 * u1 * u1 * pt1[0] + (t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1) * pt3[0] + (t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1) * pt4[0] + t1 * t1 * t1 * pt2[0]) * 1000) / 1000;\r\n var ptY = math.round((u1 * u1 * u1 * pt1[1] + (t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1) * pt3[1] + (t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1) * pt4[1] + t1 * t1 * t1 * pt2[1]) * 1000) / 1000;\r\n return [ptX, ptY];\r\n }\r\n\r\n var bezierSegmentPoints = createTypedArray('float32', 8);\r\n\r\n function getNewSegment(pt1, pt2, pt3, pt4, startPerc, endPerc, bezierData) {\r\n if (startPerc < 0) {\r\n startPerc = 0;\r\n } else if (startPerc > 1) {\r\n startPerc = 1;\r\n }\r\n var t0 = getDistancePerc(startPerc, bezierData);\r\n endPerc = endPerc > 1 ? 1 : endPerc;\r\n var t1 = getDistancePerc(endPerc, bezierData);\r\n var i;\r\n var len = pt1.length;\r\n var u0 = 1 - t0;\r\n var u1 = 1 - t1;\r\n var u0u0u0 = u0 * u0 * u0;\r\n var t0u0u0_3 = t0 * u0 * u0 * 3; // eslint-disable-line camelcase\r\n var t0t0u0_3 = t0 * t0 * u0 * 3; // eslint-disable-line camelcase\r\n var t0t0t0 = t0 * t0 * t0;\r\n //\r\n var u0u0u1 = u0 * u0 * u1;\r\n var t0u0u1_3 = t0 * u0 * u1 + u0 * t0 * u1 + u0 * u0 * t1; // eslint-disable-line camelcase\r\n var t0t0u1_3 = t0 * t0 * u1 + u0 * t0 * t1 + t0 * u0 * t1; // eslint-disable-line camelcase\r\n var t0t0t1 = t0 * t0 * t1;\r\n //\r\n var u0u1u1 = u0 * u1 * u1;\r\n var t0u1u1_3 = t0 * u1 * u1 + u0 * t1 * u1 + u0 * u1 * t1; // eslint-disable-line camelcase\r\n var t0t1u1_3 = t0 * t1 * u1 + u0 * t1 * t1 + t0 * u1 * t1; // eslint-disable-line camelcase\r\n var t0t1t1 = t0 * t1 * t1;\r\n //\r\n var u1u1u1 = u1 * u1 * u1;\r\n var t1u1u1_3 = t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1; // eslint-disable-line camelcase\r\n var t1t1u1_3 = t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1; // eslint-disable-line camelcase\r\n var t1t1t1 = t1 * t1 * t1;\r\n for (i = 0; i < len; i += 1) {\r\n bezierSegmentPoints[i * 4] = math.round((u0u0u0 * pt1[i] + t0u0u0_3 * pt3[i] + t0t0u0_3 * pt4[i] + t0t0t0 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\r\n bezierSegmentPoints[i * 4 + 1] = math.round((u0u0u1 * pt1[i] + t0u0u1_3 * pt3[i] + t0t0u1_3 * pt4[i] + t0t0t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\r\n bezierSegmentPoints[i * 4 + 2] = math.round((u0u1u1 * pt1[i] + t0u1u1_3 * pt3[i] + t0t1u1_3 * pt4[i] + t0t1t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\r\n bezierSegmentPoints[i * 4 + 3] = math.round((u1u1u1 * pt1[i] + t1u1u1_3 * pt3[i] + t1t1u1_3 * pt4[i] + t1t1t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\r\n }\r\n\r\n return bezierSegmentPoints;\r\n }\r\n\r\n return {\r\n getSegmentsLength: getSegmentsLength,\r\n getNewSegment: getNewSegment,\r\n getPointInSegment: getPointInSegment,\r\n buildBezierData: buildBezierData,\r\n pointOnLine2D: pointOnLine2D,\r\n pointOnLine3D: pointOnLine3D,\r\n };\r\n}\r\n\r\nvar bez = bezFunction();\r\n\r\n/* exported dataManager */\r\n\r\nfunction dataFunctionManager() {\r\n // var tCanvasHelper = createTag('canvas').getContext('2d');\r\n\r\n function completeLayers(layers, comps, fontManager) {\r\n var layerData;\r\n var i;\r\n var len = layers.length;\r\n var j;\r\n var jLen;\r\n var k;\r\n var kLen;\r\n for (i = 0; i < len; i += 1) {\r\n layerData = layers[i];\r\n if (('ks' in layerData) && !layerData.completed) {\r\n layerData.completed = true;\r\n if (layerData.tt) {\r\n layers[i - 1].td = layerData.tt;\r\n }\r\n if (layerData.hasMask) {\r\n var maskProps = layerData.masksProperties;\r\n jLen = maskProps.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n if (maskProps[j].pt.k.i) {\r\n convertPathsToAbsoluteValues(maskProps[j].pt.k);\r\n } else {\r\n kLen = maskProps[j].pt.k.length;\r\n for (k = 0; k < kLen; k += 1) {\r\n if (maskProps[j].pt.k[k].s) {\r\n convertPathsToAbsoluteValues(maskProps[j].pt.k[k].s[0]);\r\n }\r\n if (maskProps[j].pt.k[k].e) {\r\n convertPathsToAbsoluteValues(maskProps[j].pt.k[k].e[0]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (layerData.ty === 0) {\r\n layerData.layers = findCompLayers(layerData.refId, comps);\r\n completeLayers(layerData.layers, comps, fontManager);\r\n } else if (layerData.ty === 4) {\r\n completeShapes(layerData.shapes);\r\n } else if (layerData.ty === 5) {\r\n completeText(layerData, fontManager);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function findCompLayers(id, comps) {\r\n var i = 0;\r\n var len = comps.length;\r\n while (i < len) {\r\n if (comps[i].id === id) {\r\n if (!comps[i].layers.__used) {\r\n comps[i].layers.__used = true;\r\n return comps[i].layers;\r\n }\r\n return JSON.parse(JSON.stringify(comps[i].layers));\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n }\r\n\r\n function completeShapes(arr) {\r\n var i;\r\n var len = arr.length;\r\n var j;\r\n var jLen;\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n if (arr[i].ty === 'sh') {\r\n if (arr[i].ks.k.i) {\r\n convertPathsToAbsoluteValues(arr[i].ks.k);\r\n } else {\r\n jLen = arr[i].ks.k.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n if (arr[i].ks.k[j].s) {\r\n convertPathsToAbsoluteValues(arr[i].ks.k[j].s[0]);\r\n }\r\n if (arr[i].ks.k[j].e) {\r\n convertPathsToAbsoluteValues(arr[i].ks.k[j].e[0]);\r\n }\r\n }\r\n }\r\n } else if (arr[i].ty === 'gr') {\r\n completeShapes(arr[i].it);\r\n }\r\n }\r\n }\r\n\r\n function convertPathsToAbsoluteValues(path) {\r\n var i;\r\n var len = path.i.length;\r\n for (i = 0; i < len; i += 1) {\r\n path.i[i][0] += path.v[i][0];\r\n path.i[i][1] += path.v[i][1];\r\n path.o[i][0] += path.v[i][0];\r\n path.o[i][1] += path.v[i][1];\r\n }\r\n }\r\n\r\n function checkVersion(minimum, animVersionString) {\r\n var animVersion = animVersionString ? animVersionString.split('.') : [100, 100, 100];\r\n if (minimum[0] > animVersion[0]) {\r\n return true;\r\n } if (animVersion[0] > minimum[0]) {\r\n return false;\r\n }\r\n if (minimum[1] > animVersion[1]) {\r\n return true;\r\n } if (animVersion[1] > minimum[1]) {\r\n return false;\r\n }\r\n if (minimum[2] > animVersion[2]) {\r\n return true;\r\n } if (animVersion[2] > minimum[2]) {\r\n return false;\r\n }\r\n return null;\r\n }\r\n\r\n var checkText = (function () {\r\n var minimumVersion = [4, 4, 14];\r\n\r\n function updateTextLayer(textLayer) {\r\n var documentData = textLayer.t.d;\r\n textLayer.t.d = {\r\n k: [\r\n {\r\n s: documentData,\r\n t: 0,\r\n },\r\n ],\r\n };\r\n }\r\n\r\n function iterateLayers(layers) {\r\n var i;\r\n var len = layers.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (layers[i].ty === 5) {\r\n updateTextLayer(layers[i]);\r\n }\r\n }\r\n }\r\n\r\n return function (animationData) {\r\n if (checkVersion(minimumVersion, animationData.v)) {\r\n iterateLayers(animationData.layers);\r\n if (animationData.assets) {\r\n var i;\r\n var len = animationData.assets.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (animationData.assets[i].layers) {\r\n iterateLayers(animationData.assets[i].layers);\r\n }\r\n }\r\n }\r\n }\r\n };\r\n }());\r\n\r\n var checkChars = (function () {\r\n var minimumVersion = [4, 7, 99];\r\n return function (animationData) {\r\n if (animationData.chars && !checkVersion(minimumVersion, animationData.v)) {\r\n var i;\r\n var len = animationData.chars.length;\r\n var j;\r\n var jLen;\r\n var pathData;\r\n var paths;\r\n for (i = 0; i < len; i += 1) {\r\n if (animationData.chars[i].data && animationData.chars[i].data.shapes) {\r\n paths = animationData.chars[i].data.shapes[0].it;\r\n jLen = paths.length;\r\n\r\n for (j = 0; j < jLen; j += 1) {\r\n pathData = paths[j].ks.k;\r\n if (!pathData.__converted) {\r\n convertPathsToAbsoluteValues(paths[j].ks.k);\r\n pathData.__converted = true;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n }());\r\n\r\n var checkColors = (function () {\r\n var minimumVersion = [4, 1, 9];\r\n\r\n function iterateShapes(shapes) {\r\n var i;\r\n var len = shapes.length;\r\n var j;\r\n var jLen;\r\n for (i = 0; i < len; i += 1) {\r\n if (shapes[i].ty === 'gr') {\r\n iterateShapes(shapes[i].it);\r\n } else if (shapes[i].ty === 'fl' || shapes[i].ty === 'st') {\r\n if (shapes[i].c.k && shapes[i].c.k[0].i) {\r\n jLen = shapes[i].c.k.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n if (shapes[i].c.k[j].s) {\r\n shapes[i].c.k[j].s[0] /= 255;\r\n shapes[i].c.k[j].s[1] /= 255;\r\n shapes[i].c.k[j].s[2] /= 255;\r\n shapes[i].c.k[j].s[3] /= 255;\r\n }\r\n if (shapes[i].c.k[j].e) {\r\n shapes[i].c.k[j].e[0] /= 255;\r\n shapes[i].c.k[j].e[1] /= 255;\r\n shapes[i].c.k[j].e[2] /= 255;\r\n shapes[i].c.k[j].e[3] /= 255;\r\n }\r\n }\r\n } else {\r\n shapes[i].c.k[0] /= 255;\r\n shapes[i].c.k[1] /= 255;\r\n shapes[i].c.k[2] /= 255;\r\n shapes[i].c.k[3] /= 255;\r\n }\r\n }\r\n }\r\n }\r\n\r\n function iterateLayers(layers) {\r\n var i;\r\n var len = layers.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (layers[i].ty === 4) {\r\n iterateShapes(layers[i].shapes);\r\n }\r\n }\r\n }\r\n\r\n return function (animationData) {\r\n if (checkVersion(minimumVersion, animationData.v)) {\r\n iterateLayers(animationData.layers);\r\n if (animationData.assets) {\r\n var i;\r\n var len = animationData.assets.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (animationData.assets[i].layers) {\r\n iterateLayers(animationData.assets[i].layers);\r\n }\r\n }\r\n }\r\n }\r\n };\r\n }());\r\n\r\n var checkShapes = (function () {\r\n var minimumVersion = [4, 4, 18];\r\n\r\n function completeClosingShapes(arr) {\r\n var i;\r\n var len = arr.length;\r\n var j;\r\n var jLen;\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n if (arr[i].ty === 'sh') {\r\n if (arr[i].ks.k.i) {\r\n arr[i].ks.k.c = arr[i].closed;\r\n } else {\r\n jLen = arr[i].ks.k.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n if (arr[i].ks.k[j].s) {\r\n arr[i].ks.k[j].s[0].c = arr[i].closed;\r\n }\r\n if (arr[i].ks.k[j].e) {\r\n arr[i].ks.k[j].e[0].c = arr[i].closed;\r\n }\r\n }\r\n }\r\n } else if (arr[i].ty === 'gr') {\r\n completeClosingShapes(arr[i].it);\r\n }\r\n }\r\n }\r\n\r\n function iterateLayers(layers) {\r\n var layerData;\r\n var i;\r\n var len = layers.length;\r\n var j;\r\n var jLen;\r\n var k;\r\n var kLen;\r\n for (i = 0; i < len; i += 1) {\r\n layerData = layers[i];\r\n if (layerData.hasMask) {\r\n var maskProps = layerData.masksProperties;\r\n jLen = maskProps.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n if (maskProps[j].pt.k.i) {\r\n maskProps[j].pt.k.c = maskProps[j].cl;\r\n } else {\r\n kLen = maskProps[j].pt.k.length;\r\n for (k = 0; k < kLen; k += 1) {\r\n if (maskProps[j].pt.k[k].s) {\r\n maskProps[j].pt.k[k].s[0].c = maskProps[j].cl;\r\n }\r\n if (maskProps[j].pt.k[k].e) {\r\n maskProps[j].pt.k[k].e[0].c = maskProps[j].cl;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (layerData.ty === 4) {\r\n completeClosingShapes(layerData.shapes);\r\n }\r\n }\r\n }\r\n\r\n return function (animationData) {\r\n if (checkVersion(minimumVersion, animationData.v)) {\r\n iterateLayers(animationData.layers);\r\n if (animationData.assets) {\r\n var i;\r\n var len = animationData.assets.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (animationData.assets[i].layers) {\r\n iterateLayers(animationData.assets[i].layers);\r\n }\r\n }\r\n }\r\n }\r\n };\r\n }());\r\n\r\n function completeData(animationData, fontManager) {\r\n if (animationData.__complete) {\r\n return;\r\n }\r\n checkColors(animationData);\r\n checkText(animationData);\r\n checkChars(animationData);\r\n checkShapes(animationData);\r\n completeLayers(animationData.layers, animationData.assets, fontManager);\r\n animationData.__complete = true;\r\n }\r\n\r\n function completeText(data) {\r\n if (data.t.a.length === 0 && !('m' in data.t.p)) {\r\n data.singleShape = true;\r\n }\r\n }\r\n\r\n var moduleOb = {};\r\n moduleOb.completeData = completeData;\r\n moduleOb.checkColors = checkColors;\r\n moduleOb.checkChars = checkChars;\r\n moduleOb.checkShapes = checkShapes;\r\n moduleOb.completeLayers = completeLayers;\r\n\r\n return moduleOb;\r\n}\r\n\r\nvar dataManager = dataFunctionManager();\r\n\r\n/* exported getFontProperties */\r\n\r\nfunction getFontProperties(fontData) {\r\n var styles = fontData.fStyle ? fontData.fStyle.split(' ') : [];\r\n\r\n var fWeight = 'normal'; var\r\n fStyle = 'normal';\r\n var len = styles.length;\r\n var styleName;\r\n for (var i = 0; i < len; i += 1) {\r\n styleName = styles[i].toLowerCase();\r\n switch (styleName) {\r\n case 'italic':\r\n fStyle = 'italic';\r\n break;\r\n case 'bold':\r\n fWeight = '700';\r\n break;\r\n case 'black':\r\n fWeight = '900';\r\n break;\r\n case 'medium':\r\n fWeight = '500';\r\n break;\r\n case 'regular':\r\n case 'normal':\r\n fWeight = '400';\r\n break;\r\n case 'light':\r\n case 'thin':\r\n fWeight = '200';\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n return {\r\n style: fStyle,\r\n weight: fontData.fWeight || fWeight,\r\n };\r\n}\r\n\r\n/* global createNS, createTag, getFontProperties */\r\n/* exported FontManager */\r\n\r\nvar FontManager = (function () {\r\n var maxWaitingTime = 5000;\r\n var emptyChar = {\r\n w: 0,\r\n size: 0,\r\n shapes: [],\r\n };\r\n var combinedCharacters = [];\r\n // Hindi characters\r\n combinedCharacters = combinedCharacters.concat([2304, 2305, 2306, 2307, 2362, 2363, 2364, 2364, 2366,\r\n 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2374, 2375, 2376, 2377, 2378, 2379,\r\n 2380, 2381, 2382, 2383, 2387, 2388, 2389, 2390, 2391, 2402, 2403]);\r\n\r\n function trimFontOptions(font) {\r\n var familyArray = font.split(',');\r\n var i;\r\n var len = familyArray.length;\r\n var enabledFamilies = [];\r\n for (i = 0; i < len; i += 1) {\r\n if (familyArray[i] !== 'sans-serif' && familyArray[i] !== 'monospace') {\r\n enabledFamilies.push(familyArray[i]);\r\n }\r\n }\r\n return enabledFamilies.join(',');\r\n }\r\n\r\n function setUpNode(font, family) {\r\n var parentNode = createTag('span');\r\n // Node is invisible to screen readers.\r\n parentNode.setAttribute('aria-hidden', true);\r\n parentNode.style.fontFamily = family;\r\n var node = createTag('span');\r\n // Characters that vary significantly among different fonts\r\n node.innerText = 'giItT1WQy@!-/#';\r\n // Visible - so we can measure it - but not on the screen\r\n parentNode.style.position = 'absolute';\r\n parentNode.style.left = '-10000px';\r\n parentNode.style.top = '-10000px';\r\n // Large font size makes even subtle changes obvious\r\n parentNode.style.fontSize = '300px';\r\n // Reset any font properties\r\n parentNode.style.fontVariant = 'normal';\r\n parentNode.style.fontStyle = 'normal';\r\n parentNode.style.fontWeight = 'normal';\r\n parentNode.style.letterSpacing = '0';\r\n parentNode.appendChild(node);\r\n document.body.appendChild(parentNode);\r\n\r\n // Remember width with no applied web font\r\n var width = node.offsetWidth;\r\n node.style.fontFamily = trimFontOptions(font) + ', ' + family;\r\n return { node: node, w: width, parent: parentNode };\r\n }\r\n\r\n function checkLoadedFonts() {\r\n var i;\r\n var len = this.fonts.length;\r\n var node;\r\n var w;\r\n var loadedCount = len;\r\n for (i = 0; i < len; i += 1) {\r\n if (this.fonts[i].loaded) {\r\n loadedCount -= 1;\r\n } else if (this.fonts[i].fOrigin === 'n' || this.fonts[i].origin === 0) {\r\n this.fonts[i].loaded = true;\r\n } else {\r\n node = this.fonts[i].monoCase.node;\r\n w = this.fonts[i].monoCase.w;\r\n if (node.offsetWidth !== w) {\r\n loadedCount -= 1;\r\n this.fonts[i].loaded = true;\r\n } else {\r\n node = this.fonts[i].sansCase.node;\r\n w = this.fonts[i].sansCase.w;\r\n if (node.offsetWidth !== w) {\r\n loadedCount -= 1;\r\n this.fonts[i].loaded = true;\r\n }\r\n }\r\n if (this.fonts[i].loaded) {\r\n this.fonts[i].sansCase.parent.parentNode.removeChild(this.fonts[i].sansCase.parent);\r\n this.fonts[i].monoCase.parent.parentNode.removeChild(this.fonts[i].monoCase.parent);\r\n }\r\n }\r\n }\r\n\r\n if (loadedCount !== 0 && Date.now() - this.initTime < maxWaitingTime) {\r\n setTimeout(this.checkLoadedFontsBinded, 20);\r\n } else {\r\n setTimeout(this.setIsLoadedBinded, 10);\r\n }\r\n }\r\n\r\n function createHelper(def, fontData) {\r\n var tHelper = createNS('text');\r\n tHelper.style.fontSize = '100px';\r\n // tHelper.style.fontFamily = fontData.fFamily;\r\n\r\n var fontProps = getFontProperties(fontData);\r\n tHelper.setAttribute('font-family', fontData.fFamily);\r\n tHelper.setAttribute('font-style', fontProps.style);\r\n tHelper.setAttribute('font-weight', fontProps.weight);\r\n tHelper.textContent = '1';\r\n if (fontData.fClass) {\r\n tHelper.style.fontFamily = 'inherit';\r\n tHelper.setAttribute('class', fontData.fClass);\r\n } else {\r\n tHelper.style.fontFamily = fontData.fFamily;\r\n }\r\n def.appendChild(tHelper);\r\n var tCanvasHelper = createTag('canvas').getContext('2d');\r\n tCanvasHelper.font = fontData.fWeight + ' ' + fontData.fStyle + ' 100px ' + fontData.fFamily;\r\n // tCanvasHelper.font = ' 100px '+ fontData.fFamily;\r\n return tHelper;\r\n }\r\n\r\n function addFonts(fontData, defs) {\r\n if (!fontData) {\r\n this.isLoaded = true;\r\n return;\r\n }\r\n if (this.chars) {\r\n this.isLoaded = true;\r\n this.fonts = fontData.list;\r\n return;\r\n }\r\n\r\n var fontArr = fontData.list;\r\n var i;\r\n var len = fontArr.length;\r\n var _pendingFonts = len;\r\n for (i = 0; i < len; i += 1) {\r\n var shouldLoadFont = true;\r\n var loadedSelector;\r\n var j;\r\n fontArr[i].loaded = false;\r\n fontArr[i].monoCase = setUpNode(fontArr[i].fFamily, 'monospace');\r\n fontArr[i].sansCase = setUpNode(fontArr[i].fFamily, 'sans-serif');\r\n if (!fontArr[i].fPath) {\r\n fontArr[i].loaded = true;\r\n _pendingFonts -= 1;\r\n } else if (fontArr[i].fOrigin === 'p' || fontArr[i].origin === 3) {\r\n loadedSelector = document.querySelectorAll('style[f-forigin=\"p\"][f-family=\"' + fontArr[i].fFamily + '\"], style[f-origin=\"3\"][f-family=\"' + fontArr[i].fFamily + '\"]');\r\n\r\n if (loadedSelector.length > 0) {\r\n shouldLoadFont = false;\r\n }\r\n\r\n if (shouldLoadFont) {\r\n var s = createTag('style');\r\n s.setAttribute('f-forigin', fontArr[i].fOrigin);\r\n s.setAttribute('f-origin', fontArr[i].origin);\r\n s.setAttribute('f-family', fontArr[i].fFamily);\r\n s.type = 'text/css';\r\n s.innerText = '@font-face {font-family: ' + fontArr[i].fFamily + \"; font-style: normal; src: url('\" + fontArr[i].fPath + \"');}\";\r\n defs.appendChild(s);\r\n }\r\n } else if (fontArr[i].fOrigin === 'g' || fontArr[i].origin === 1) {\r\n loadedSelector = document.querySelectorAll('link[f-forigin=\"g\"], link[f-origin=\"1\"]');\r\n\r\n for (j = 0; j < loadedSelector.length; j += 1) {\r\n if (loadedSelector[j].href.indexOf(fontArr[i].fPath) !== -1) {\r\n // Font is already loaded\r\n shouldLoadFont = false;\r\n }\r\n }\r\n\r\n if (shouldLoadFont) {\r\n var l = createTag('link');\r\n l.setAttribute('f-forigin', fontArr[i].fOrigin);\r\n l.setAttribute('f-origin', fontArr[i].origin);\r\n l.type = 'text/css';\r\n l.rel = 'stylesheet';\r\n l.href = fontArr[i].fPath;\r\n document.body.appendChild(l);\r\n }\r\n } else if (fontArr[i].fOrigin === 't' || fontArr[i].origin === 2) {\r\n loadedSelector = document.querySelectorAll('script[f-forigin=\"t\"], script[f-origin=\"2\"]');\r\n\r\n for (j = 0; j < loadedSelector.length; j += 1) {\r\n if (fontArr[i].fPath === loadedSelector[j].src) {\r\n // Font is already loaded\r\n shouldLoadFont = false;\r\n }\r\n }\r\n\r\n if (shouldLoadFont) {\r\n var sc = createTag('link');\r\n sc.setAttribute('f-forigin', fontArr[i].fOrigin);\r\n sc.setAttribute('f-origin', fontArr[i].origin);\r\n sc.setAttribute('rel', 'stylesheet');\r\n sc.setAttribute('href', fontArr[i].fPath);\r\n defs.appendChild(sc);\r\n }\r\n }\r\n fontArr[i].helper = createHelper(defs, fontArr[i]);\r\n fontArr[i].cache = {};\r\n this.fonts.push(fontArr[i]);\r\n }\r\n if (_pendingFonts === 0) {\r\n this.isLoaded = true;\r\n } else {\r\n // On some cases even if the font is loaded, it won't load correctly when measuring text on canvas.\r\n // Adding this timeout seems to fix it\r\n setTimeout(this.checkLoadedFonts.bind(this), 100);\r\n }\r\n }\r\n\r\n function addChars(chars) {\r\n if (!chars) {\r\n return;\r\n }\r\n if (!this.chars) {\r\n this.chars = [];\r\n }\r\n var i;\r\n var len = chars.length;\r\n var j;\r\n var jLen = this.chars.length;\r\n var found;\r\n for (i = 0; i < len; i += 1) {\r\n j = 0;\r\n found = false;\r\n while (j < jLen) {\r\n if (this.chars[j].style === chars[i].style && this.chars[j].fFamily === chars[i].fFamily && this.chars[j].ch === chars[i].ch) {\r\n found = true;\r\n }\r\n j += 1;\r\n }\r\n if (!found) {\r\n this.chars.push(chars[i]);\r\n jLen += 1;\r\n }\r\n }\r\n }\r\n\r\n function getCharData(char, style, font) {\r\n var i = 0;\r\n var len = this.chars.length;\r\n while (i < len) {\r\n if (this.chars[i].ch === char && this.chars[i].style === style && this.chars[i].fFamily === font) {\r\n return this.chars[i];\r\n }\r\n i += 1;\r\n }\r\n if (((typeof char === 'string' && char.charCodeAt(0) !== 13) || !char)\r\n && console\r\n && console.warn // eslint-disable-line no-console\r\n && !this._warned\r\n ) {\r\n this._warned = true;\r\n console.warn('Missing character from exported characters list: ', char, style, font); // eslint-disable-line no-console\r\n }\r\n return emptyChar;\r\n }\r\n\r\n function measureText(char, fontName, size) {\r\n var fontData = this.getFontByName(fontName);\r\n var index = char.charCodeAt(0);\r\n if (!fontData.cache[index + 1]) {\r\n var tHelper = fontData.helper;\r\n // Canvas version\r\n // fontData.cache[index] = tHelper.measureText(char).width / 100;\r\n // SVG version\r\n // console.log(tHelper.getBBox().width)\r\n if (char === ' ') {\r\n tHelper.textContent = '|' + char + '|';\r\n var doubleSize = tHelper.getComputedTextLength();\r\n tHelper.textContent = '||';\r\n var singleSize = tHelper.getComputedTextLength();\r\n fontData.cache[index + 1] = (doubleSize - singleSize) / 100;\r\n } else {\r\n tHelper.textContent = char;\r\n fontData.cache[index + 1] = (tHelper.getComputedTextLength()) / 100;\r\n }\r\n }\r\n return fontData.cache[index + 1] * size;\r\n }\r\n\r\n function getFontByName(name) {\r\n var i = 0;\r\n var len = this.fonts.length;\r\n while (i < len) {\r\n if (this.fonts[i].fName === name) {\r\n return this.fonts[i];\r\n }\r\n i += 1;\r\n }\r\n return this.fonts[0];\r\n }\r\n\r\n function getCombinedCharacterCodes() {\r\n return combinedCharacters;\r\n }\r\n\r\n function setIsLoaded() {\r\n this.isLoaded = true;\r\n }\r\n\r\n var Font = function () {\r\n this.fonts = [];\r\n this.chars = null;\r\n this.typekitLoaded = 0;\r\n this.isLoaded = false;\r\n this._warned = false;\r\n this.initTime = Date.now();\r\n this.setIsLoadedBinded = this.setIsLoaded.bind(this);\r\n this.checkLoadedFontsBinded = this.checkLoadedFonts.bind(this);\r\n };\r\n // TODO: for now I'm adding these methods to the Class and not the prototype. Think of a better way to implement it.\r\n Font.getCombinedCharacterCodes = getCombinedCharacterCodes;\r\n\r\n var fontPrototype = {\r\n addChars: addChars,\r\n addFonts: addFonts,\r\n getCharData: getCharData,\r\n getFontByName: getFontByName,\r\n measureText: measureText,\r\n checkLoadedFonts: checkLoadedFonts,\r\n setIsLoaded: setIsLoaded,\r\n };\r\n\r\n Font.prototype = fontPrototype;\r\n\r\n return Font;\r\n}());\r\n\r\n/* global initialDefaultFrame, BezierFactory, degToRads, bez, createTypedArray */\r\n/* exported PropertyFactory */\r\n\r\nvar PropertyFactory = (function () {\r\n var initFrame = initialDefaultFrame;\r\n var mathAbs = Math.abs;\r\n\r\n function interpolateValue(frameNum, caching) {\r\n var offsetTime = this.offsetTime;\r\n var newValue;\r\n if (this.propType === 'multidimensional') {\r\n newValue = createTypedArray('float32', this.pv.length);\r\n }\r\n var iterationIndex = caching.lastIndex;\r\n var i = iterationIndex;\r\n var len = this.keyframes.length - 1;\r\n var flag = true;\r\n var keyData;\r\n var nextKeyData;\r\n\r\n while (flag) {\r\n keyData = this.keyframes[i];\r\n nextKeyData = this.keyframes[i + 1];\r\n if (i === len - 1 && frameNum >= nextKeyData.t - offsetTime) {\r\n if (keyData.h) {\r\n keyData = nextKeyData;\r\n }\r\n iterationIndex = 0;\r\n break;\r\n }\r\n if ((nextKeyData.t - offsetTime) > frameNum) {\r\n iterationIndex = i;\r\n break;\r\n }\r\n if (i < len - 1) {\r\n i += 1;\r\n } else {\r\n iterationIndex = 0;\r\n flag = false;\r\n }\r\n }\r\n\r\n var k;\r\n var kLen;\r\n var perc;\r\n var jLen;\r\n var j;\r\n var fnc;\r\n var nextKeyTime = nextKeyData.t - offsetTime;\r\n var keyTime = keyData.t - offsetTime;\r\n var endValue;\r\n if (keyData.to) {\r\n if (!keyData.bezierData) {\r\n keyData.bezierData = bez.buildBezierData(keyData.s, nextKeyData.s || keyData.e, keyData.to, keyData.ti);\r\n }\r\n var bezierData = keyData.bezierData;\r\n if (frameNum >= nextKeyTime || frameNum < keyTime) {\r\n var ind = frameNum >= nextKeyTime ? bezierData.points.length - 1 : 0;\r\n kLen = bezierData.points[ind].point.length;\r\n for (k = 0; k < kLen; k += 1) {\r\n newValue[k] = bezierData.points[ind].point[k];\r\n }\r\n // caching._lastKeyframeIndex = -1;\r\n } else {\r\n if (keyData.__fnct) {\r\n fnc = keyData.__fnct;\r\n } else {\r\n fnc = BezierFactory.getBezierEasing(keyData.o.x, keyData.o.y, keyData.i.x, keyData.i.y, keyData.n).get;\r\n keyData.__fnct = fnc;\r\n }\r\n perc = fnc((frameNum - keyTime) / (nextKeyTime - keyTime));\r\n var distanceInLine = bezierData.segmentLength * perc;\r\n\r\n var segmentPerc;\r\n var addedLength = (caching.lastFrame < frameNum && caching._lastKeyframeIndex === i) ? caching._lastAddedLength : 0;\r\n j = (caching.lastFrame < frameNum && caching._lastKeyframeIndex === i) ? caching._lastPoint : 0;\r\n flag = true;\r\n jLen = bezierData.points.length;\r\n while (flag) {\r\n addedLength += bezierData.points[j].partialLength;\r\n if (distanceInLine === 0 || perc === 0 || j === bezierData.points.length - 1) {\r\n kLen = bezierData.points[j].point.length;\r\n for (k = 0; k < kLen; k += 1) {\r\n newValue[k] = bezierData.points[j].point[k];\r\n }\r\n break;\r\n } else if (distanceInLine >= addedLength && distanceInLine < addedLength + bezierData.points[j + 1].partialLength) {\r\n segmentPerc = (distanceInLine - addedLength) / bezierData.points[j + 1].partialLength;\r\n kLen = bezierData.points[j].point.length;\r\n for (k = 0; k < kLen; k += 1) {\r\n newValue[k] = bezierData.points[j].point[k] + (bezierData.points[j + 1].point[k] - bezierData.points[j].point[k]) * segmentPerc;\r\n }\r\n break;\r\n }\r\n if (j < jLen - 1) {\r\n j += 1;\r\n } else {\r\n flag = false;\r\n }\r\n }\r\n caching._lastPoint = j;\r\n caching._lastAddedLength = addedLength - bezierData.points[j].partialLength;\r\n caching._lastKeyframeIndex = i;\r\n }\r\n } else {\r\n var outX;\r\n var outY;\r\n var inX;\r\n var inY;\r\n var keyValue;\r\n len = keyData.s.length;\r\n endValue = nextKeyData.s || keyData.e;\r\n if (this.sh && keyData.h !== 1) {\r\n if (frameNum >= nextKeyTime) {\r\n newValue[0] = endValue[0];\r\n newValue[1] = endValue[1];\r\n newValue[2] = endValue[2];\r\n } else if (frameNum <= keyTime) {\r\n newValue[0] = keyData.s[0];\r\n newValue[1] = keyData.s[1];\r\n newValue[2] = keyData.s[2];\r\n } else {\r\n var quatStart = createQuaternion(keyData.s);\r\n var quatEnd = createQuaternion(endValue);\r\n var time = (frameNum - keyTime) / (nextKeyTime - keyTime);\r\n quaternionToEuler(newValue, slerp(quatStart, quatEnd, time));\r\n }\r\n } else {\r\n for (i = 0; i < len; i += 1) {\r\n if (keyData.h !== 1) {\r\n if (frameNum >= nextKeyTime) {\r\n perc = 1;\r\n } else if (frameNum < keyTime) {\r\n perc = 0;\r\n } else {\r\n if (keyData.o.x.constructor === Array) {\r\n if (!keyData.__fnct) {\r\n keyData.__fnct = [];\r\n }\r\n if (!keyData.__fnct[i]) {\r\n outX = (typeof keyData.o.x[i] === 'undefined') ? keyData.o.x[0] : keyData.o.x[i];\r\n outY = (typeof keyData.o.y[i] === 'undefined') ? keyData.o.y[0] : keyData.o.y[i];\r\n inX = (typeof keyData.i.x[i] === 'undefined') ? keyData.i.x[0] : keyData.i.x[i];\r\n inY = (typeof keyData.i.y[i] === 'undefined') ? keyData.i.y[0] : keyData.i.y[i];\r\n fnc = BezierFactory.getBezierEasing(outX, outY, inX, inY).get;\r\n keyData.__fnct[i] = fnc;\r\n } else {\r\n fnc = keyData.__fnct[i];\r\n }\r\n } else if (!keyData.__fnct) {\r\n outX = keyData.o.x;\r\n outY = keyData.o.y;\r\n inX = keyData.i.x;\r\n inY = keyData.i.y;\r\n fnc = BezierFactory.getBezierEasing(outX, outY, inX, inY).get;\r\n keyData.__fnct = fnc;\r\n } else {\r\n fnc = keyData.__fnct;\r\n }\r\n perc = fnc((frameNum - keyTime) / (nextKeyTime - keyTime));\r\n }\r\n }\r\n\r\n endValue = nextKeyData.s || keyData.e;\r\n keyValue = keyData.h === 1 ? keyData.s[i] : keyData.s[i] + (endValue[i] - keyData.s[i]) * perc;\r\n\r\n if (this.propType === 'multidimensional') {\r\n newValue[i] = keyValue;\r\n } else {\r\n newValue = keyValue;\r\n }\r\n }\r\n }\r\n }\r\n caching.lastIndex = iterationIndex;\r\n return newValue;\r\n }\r\n\r\n // based on @Toji's https://github.com/toji/gl-matrix/\r\n function slerp(a, b, t) {\r\n var out = [];\r\n var ax = a[0];\r\n var ay = a[1];\r\n var az = a[2];\r\n var aw = a[3];\r\n var bx = b[0];\r\n var by = b[1];\r\n var bz = b[2];\r\n var bw = b[3];\r\n\r\n var omega;\r\n var cosom;\r\n var sinom;\r\n var scale0;\r\n var scale1;\r\n\r\n cosom = ax * bx + ay * by + az * bz + aw * bw;\r\n if (cosom < 0.0) {\r\n cosom = -cosom;\r\n bx = -bx;\r\n by = -by;\r\n bz = -bz;\r\n bw = -bw;\r\n }\r\n if ((1.0 - cosom) > 0.000001) {\r\n omega = Math.acos(cosom);\r\n sinom = Math.sin(omega);\r\n scale0 = Math.sin((1.0 - t) * omega) / sinom;\r\n scale1 = Math.sin(t * omega) / sinom;\r\n } else {\r\n scale0 = 1.0 - t;\r\n scale1 = t;\r\n }\r\n out[0] = scale0 * ax + scale1 * bx;\r\n out[1] = scale0 * ay + scale1 * by;\r\n out[2] = scale0 * az + scale1 * bz;\r\n out[3] = scale0 * aw + scale1 * bw;\r\n\r\n return out;\r\n }\r\n\r\n function quaternionToEuler(out, quat) {\r\n var qx = quat[0];\r\n var qy = quat[1];\r\n var qz = quat[2];\r\n var qw = quat[3];\r\n var heading = Math.atan2(2 * qy * qw - 2 * qx * qz, 1 - 2 * qy * qy - 2 * qz * qz);\r\n var attitude = Math.asin(2 * qx * qy + 2 * qz * qw);\r\n var bank = Math.atan2(2 * qx * qw - 2 * qy * qz, 1 - 2 * qx * qx - 2 * qz * qz);\r\n out[0] = heading / degToRads;\r\n out[1] = attitude / degToRads;\r\n out[2] = bank / degToRads;\r\n }\r\n\r\n function createQuaternion(values) {\r\n var heading = values[0] * degToRads;\r\n var attitude = values[1] * degToRads;\r\n var bank = values[2] * degToRads;\r\n var c1 = Math.cos(heading / 2);\r\n var c2 = Math.cos(attitude / 2);\r\n var c3 = Math.cos(bank / 2);\r\n var s1 = Math.sin(heading / 2);\r\n var s2 = Math.sin(attitude / 2);\r\n var s3 = Math.sin(bank / 2);\r\n var w = c1 * c2 * c3 - s1 * s2 * s3;\r\n var x = s1 * s2 * c3 + c1 * c2 * s3;\r\n var y = s1 * c2 * c3 + c1 * s2 * s3;\r\n var z = c1 * s2 * c3 - s1 * c2 * s3;\r\n\r\n return [x, y, z, w];\r\n }\r\n\r\n function getValueAtCurrentTime() {\r\n var frameNum = this.comp.renderedFrame - this.offsetTime;\r\n var initTime = this.keyframes[0].t - this.offsetTime;\r\n var endTime = this.keyframes[this.keyframes.length - 1].t - this.offsetTime;\r\n if (!(frameNum === this._caching.lastFrame || (this._caching.lastFrame !== initFrame && ((this._caching.lastFrame >= endTime && frameNum >= endTime) || (this._caching.lastFrame < initTime && frameNum < initTime))))) {\r\n if (this._caching.lastFrame >= frameNum) {\r\n this._caching._lastKeyframeIndex = -1;\r\n this._caching.lastIndex = 0;\r\n }\r\n\r\n var renderResult = this.interpolateValue(frameNum, this._caching);\r\n this.pv = renderResult;\r\n }\r\n this._caching.lastFrame = frameNum;\r\n return this.pv;\r\n }\r\n\r\n function setVValue(val) {\r\n var multipliedValue;\r\n if (this.propType === 'unidimensional') {\r\n multipliedValue = val * this.mult;\r\n if (mathAbs(this.v - multipliedValue) > 0.00001) {\r\n this.v = multipliedValue;\r\n this._mdf = true;\r\n }\r\n } else {\r\n var i = 0;\r\n var len = this.v.length;\r\n while (i < len) {\r\n multipliedValue = val[i] * this.mult;\r\n if (mathAbs(this.v[i] - multipliedValue) > 0.00001) {\r\n this.v[i] = multipliedValue;\r\n this._mdf = true;\r\n }\r\n i += 1;\r\n }\r\n }\r\n }\r\n\r\n function processEffectsSequence() {\r\n if (this.elem.globalData.frameId === this.frameId || !this.effectsSequence.length) {\r\n return;\r\n }\r\n if (this.lock) {\r\n this.setVValue(this.pv);\r\n return;\r\n }\r\n this.lock = true;\r\n this._mdf = this._isFirstFrame;\r\n var i;\r\n var len = this.effectsSequence.length;\r\n var finalValue = this.kf ? this.pv : this.data.k;\r\n for (i = 0; i < len; i += 1) {\r\n finalValue = this.effectsSequence[i](finalValue);\r\n }\r\n this.setVValue(finalValue);\r\n this._isFirstFrame = false;\r\n this.lock = false;\r\n this.frameId = this.elem.globalData.frameId;\r\n }\r\n\r\n function addEffect(effectFunction) {\r\n this.effectsSequence.push(effectFunction);\r\n this.container.addDynamicProperty(this);\r\n }\r\n\r\n function ValueProperty(elem, data, mult, container) {\r\n this.propType = 'unidimensional';\r\n this.mult = mult || 1;\r\n this.data = data;\r\n this.v = mult ? data.k * mult : data.k;\r\n this.pv = data.k;\r\n this._mdf = false;\r\n this.elem = elem;\r\n this.container = container;\r\n this.comp = elem.comp;\r\n this.k = false;\r\n this.kf = false;\r\n this.vel = 0;\r\n this.effectsSequence = [];\r\n this._isFirstFrame = true;\r\n this.getValue = processEffectsSequence;\r\n this.setVValue = setVValue;\r\n this.addEffect = addEffect;\r\n }\r\n\r\n function MultiDimensionalProperty(elem, data, mult, container) {\r\n this.propType = 'multidimensional';\r\n this.mult = mult || 1;\r\n this.data = data;\r\n this._mdf = false;\r\n this.elem = elem;\r\n this.container = container;\r\n this.comp = elem.comp;\r\n this.k = false;\r\n this.kf = false;\r\n this.frameId = -1;\r\n var i;\r\n var len = data.k.length;\r\n this.v = createTypedArray('float32', len);\r\n this.pv = createTypedArray('float32', len);\r\n this.vel = createTypedArray('float32', len);\r\n for (i = 0; i < len; i += 1) {\r\n this.v[i] = data.k[i] * this.mult;\r\n this.pv[i] = data.k[i];\r\n }\r\n this._isFirstFrame = true;\r\n this.effectsSequence = [];\r\n this.getValue = processEffectsSequence;\r\n this.setVValue = setVValue;\r\n this.addEffect = addEffect;\r\n }\r\n\r\n function KeyframedValueProperty(elem, data, mult, container) {\r\n this.propType = 'unidimensional';\r\n this.keyframes = data.k;\r\n this.offsetTime = elem.data.st;\r\n this.frameId = -1;\r\n this._caching = {\r\n lastFrame: initFrame, lastIndex: 0, value: 0, _lastKeyframeIndex: -1,\r\n };\r\n this.k = true;\r\n this.kf = true;\r\n this.data = data;\r\n this.mult = mult || 1;\r\n this.elem = elem;\r\n this.container = container;\r\n this.comp = elem.comp;\r\n this.v = initFrame;\r\n this.pv = initFrame;\r\n this._isFirstFrame = true;\r\n this.getValue = processEffectsSequence;\r\n this.setVValue = setVValue;\r\n this.interpolateValue = interpolateValue;\r\n this.effectsSequence = [getValueAtCurrentTime.bind(this)];\r\n this.addEffect = addEffect;\r\n }\r\n\r\n function KeyframedMultidimensionalProperty(elem, data, mult, container) {\r\n this.propType = 'multidimensional';\r\n var i;\r\n var len = data.k.length;\r\n var s;\r\n var e;\r\n var to;\r\n var ti;\r\n for (i = 0; i < len - 1; i += 1) {\r\n if (data.k[i].to && data.k[i].s && data.k[i + 1] && data.k[i + 1].s) {\r\n s = data.k[i].s;\r\n e = data.k[i + 1].s;\r\n to = data.k[i].to;\r\n ti = data.k[i].ti;\r\n if ((s.length === 2 && !(s[0] === e[0] && s[1] === e[1]) && bez.pointOnLine2D(s[0], s[1], e[0], e[1], s[0] + to[0], s[1] + to[1]) && bez.pointOnLine2D(s[0], s[1], e[0], e[1], e[0] + ti[0], e[1] + ti[1])) || (s.length === 3 && !(s[0] === e[0] && s[1] === e[1] && s[2] === e[2]) && bez.pointOnLine3D(s[0], s[1], s[2], e[0], e[1], e[2], s[0] + to[0], s[1] + to[1], s[2] + to[2]) && bez.pointOnLine3D(s[0], s[1], s[2], e[0], e[1], e[2], e[0] + ti[0], e[1] + ti[1], e[2] + ti[2]))) {\r\n data.k[i].to = null;\r\n data.k[i].ti = null;\r\n }\r\n if (s[0] === e[0] && s[1] === e[1] && to[0] === 0 && to[1] === 0 && ti[0] === 0 && ti[1] === 0) {\r\n if (s.length === 2 || (s[2] === e[2] && to[2] === 0 && ti[2] === 0)) {\r\n data.k[i].to = null;\r\n data.k[i].ti = null;\r\n }\r\n }\r\n }\r\n }\r\n this.effectsSequence = [getValueAtCurrentTime.bind(this)];\r\n this.data = data;\r\n this.keyframes = data.k;\r\n this.offsetTime = elem.data.st;\r\n this.k = true;\r\n this.kf = true;\r\n this._isFirstFrame = true;\r\n this.mult = mult || 1;\r\n this.elem = elem;\r\n this.container = container;\r\n this.comp = elem.comp;\r\n this.getValue = processEffectsSequence;\r\n this.setVValue = setVValue;\r\n this.interpolateValue = interpolateValue;\r\n this.frameId = -1;\r\n var arrLen = data.k[0].s.length;\r\n this.v = createTypedArray('float32', arrLen);\r\n this.pv = createTypedArray('float32', arrLen);\r\n for (i = 0; i < arrLen; i += 1) {\r\n this.v[i] = initFrame;\r\n this.pv[i] = initFrame;\r\n }\r\n this._caching = { lastFrame: initFrame, lastIndex: 0, value: createTypedArray('float32', arrLen) };\r\n this.addEffect = addEffect;\r\n }\r\n\r\n function getProp(elem, data, type, mult, container) {\r\n var p;\r\n if (!data.k.length) {\r\n p = new ValueProperty(elem, data, mult, container);\r\n } else if (typeof (data.k[0]) === 'number') {\r\n p = new MultiDimensionalProperty(elem, data, mult, container);\r\n } else {\r\n switch (type) {\r\n case 0:\r\n p = new KeyframedValueProperty(elem, data, mult, container);\r\n break;\r\n case 1:\r\n p = new KeyframedMultidimensionalProperty(elem, data, mult, container);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n if (p.effectsSequence.length) {\r\n container.addDynamicProperty(p);\r\n }\r\n return p;\r\n }\r\n\r\n var ob = {\r\n getProp: getProp,\r\n };\r\n return ob;\r\n}());\r\n\r\n/* global Matrix, degToRads, PropertyFactory, extendPrototype, DynamicPropertyContainer */\r\n/* exported TransformPropertyFactory */\r\n\r\nvar TransformPropertyFactory = (function () {\r\n var defaultVector = [0, 0];\r\n\r\n function applyToMatrix(mat) {\r\n var _mdf = this._mdf;\r\n this.iterateDynamicProperties();\r\n this._mdf = this._mdf || _mdf;\r\n if (this.a) {\r\n mat.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);\r\n }\r\n if (this.s) {\r\n mat.scale(this.s.v[0], this.s.v[1], this.s.v[2]);\r\n }\r\n if (this.sk) {\r\n mat.skewFromAxis(-this.sk.v, this.sa.v);\r\n }\r\n if (this.r) {\r\n mat.rotate(-this.r.v);\r\n } else {\r\n mat.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2])\r\n .rotateY(this.or.v[1])\r\n .rotateX(this.or.v[0]);\r\n }\r\n if (this.data.p.s) {\r\n if (this.data.p.z) {\r\n mat.translate(this.px.v, this.py.v, -this.pz.v);\r\n } else {\r\n mat.translate(this.px.v, this.py.v, 0);\r\n }\r\n } else {\r\n mat.translate(this.p.v[0], this.p.v[1], -this.p.v[2]);\r\n }\r\n }\r\n function processKeys(forceRender) {\r\n if (this.elem.globalData.frameId === this.frameId) {\r\n return;\r\n }\r\n if (this._isDirty) {\r\n this.precalculateMatrix();\r\n this._isDirty = false;\r\n }\r\n\r\n this.iterateDynamicProperties();\r\n\r\n if (this._mdf || forceRender) {\r\n var frameRate;\r\n this.v.cloneFromProps(this.pre.props);\r\n if (this.appliedTransformations < 1) {\r\n this.v.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);\r\n }\r\n if (this.appliedTransformations < 2) {\r\n this.v.scale(this.s.v[0], this.s.v[1], this.s.v[2]);\r\n }\r\n if (this.sk && this.appliedTransformations < 3) {\r\n this.v.skewFromAxis(-this.sk.v, this.sa.v);\r\n }\r\n if (this.r && this.appliedTransformations < 4) {\r\n this.v.rotate(-this.r.v);\r\n } else if (!this.r && this.appliedTransformations < 4) {\r\n this.v.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2])\r\n .rotateY(this.or.v[1])\r\n .rotateX(this.or.v[0]);\r\n }\r\n if (this.autoOriented) {\r\n var v1;\r\n var v2;\r\n frameRate = this.elem.globalData.frameRate;\r\n if (this.p && this.p.keyframes && this.p.getValueAtTime) {\r\n if (this.p._caching.lastFrame + this.p.offsetTime <= this.p.keyframes[0].t) {\r\n v1 = this.p.getValueAtTime((this.p.keyframes[0].t + 0.01) / frameRate, 0);\r\n v2 = this.p.getValueAtTime(this.p.keyframes[0].t / frameRate, 0);\r\n } else if (this.p._caching.lastFrame + this.p.offsetTime >= this.p.keyframes[this.p.keyframes.length - 1].t) {\r\n v1 = this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length - 1].t / frameRate), 0);\r\n v2 = this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length - 1].t - 0.05) / frameRate, 0);\r\n } else {\r\n v1 = this.p.pv;\r\n v2 = this.p.getValueAtTime((this.p._caching.lastFrame + this.p.offsetTime - 0.01) / frameRate, this.p.offsetTime);\r\n }\r\n } else if (this.px && this.px.keyframes && this.py.keyframes && this.px.getValueAtTime && this.py.getValueAtTime) {\r\n v1 = [];\r\n v2 = [];\r\n var px = this.px;\r\n var py = this.py;\r\n if (px._caching.lastFrame + px.offsetTime <= px.keyframes[0].t) {\r\n v1[0] = px.getValueAtTime((px.keyframes[0].t + 0.01) / frameRate, 0);\r\n v1[1] = py.getValueAtTime((py.keyframes[0].t + 0.01) / frameRate, 0);\r\n v2[0] = px.getValueAtTime((px.keyframes[0].t) / frameRate, 0);\r\n v2[1] = py.getValueAtTime((py.keyframes[0].t) / frameRate, 0);\r\n } else if (px._caching.lastFrame + px.offsetTime >= px.keyframes[px.keyframes.length - 1].t) {\r\n v1[0] = px.getValueAtTime((px.keyframes[px.keyframes.length - 1].t / frameRate), 0);\r\n v1[1] = py.getValueAtTime((py.keyframes[py.keyframes.length - 1].t / frameRate), 0);\r\n v2[0] = px.getValueAtTime((px.keyframes[px.keyframes.length - 1].t - 0.01) / frameRate, 0);\r\n v2[1] = py.getValueAtTime((py.keyframes[py.keyframes.length - 1].t - 0.01) / frameRate, 0);\r\n } else {\r\n v1 = [px.pv, py.pv];\r\n v2[0] = px.getValueAtTime((px._caching.lastFrame + px.offsetTime - 0.01) / frameRate, px.offsetTime);\r\n v2[1] = py.getValueAtTime((py._caching.lastFrame + py.offsetTime - 0.01) / frameRate, py.offsetTime);\r\n }\r\n } else {\r\n v2 = defaultVector;\r\n v1 = v2;\r\n }\r\n this.v.rotate(-Math.atan2(v1[1] - v2[1], v1[0] - v2[0]));\r\n }\r\n if (this.data.p && this.data.p.s) {\r\n if (this.data.p.z) {\r\n this.v.translate(this.px.v, this.py.v, -this.pz.v);\r\n } else {\r\n this.v.translate(this.px.v, this.py.v, 0);\r\n }\r\n } else {\r\n this.v.translate(this.p.v[0], this.p.v[1], -this.p.v[2]);\r\n }\r\n }\r\n this.frameId = this.elem.globalData.frameId;\r\n }\r\n\r\n function precalculateMatrix() {\r\n if (!this.a.k) {\r\n this.pre.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);\r\n this.appliedTransformations = 1;\r\n } else {\r\n return;\r\n }\r\n if (!this.s.effectsSequence.length) {\r\n this.pre.scale(this.s.v[0], this.s.v[1], this.s.v[2]);\r\n this.appliedTransformations = 2;\r\n } else {\r\n return;\r\n }\r\n if (this.sk) {\r\n if (!this.sk.effectsSequence.length && !this.sa.effectsSequence.length) {\r\n this.pre.skewFromAxis(-this.sk.v, this.sa.v);\r\n this.appliedTransformations = 3;\r\n } else {\r\n return;\r\n }\r\n }\r\n if (this.r) {\r\n if (!this.r.effectsSequence.length) {\r\n this.pre.rotate(-this.r.v);\r\n this.appliedTransformations = 4;\r\n }\r\n } else if (!this.rz.effectsSequence.length && !this.ry.effectsSequence.length && !this.rx.effectsSequence.length && !this.or.effectsSequence.length) {\r\n this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2])\r\n .rotateY(this.or.v[1])\r\n .rotateX(this.or.v[0]);\r\n this.appliedTransformations = 4;\r\n }\r\n }\r\n\r\n function autoOrient() {\r\n //\r\n // var prevP = this.getValueAtTime();\r\n }\r\n\r\n function addDynamicProperty(prop) {\r\n this._addDynamicProperty(prop);\r\n this.elem.addDynamicProperty(prop);\r\n this._isDirty = true;\r\n }\r\n\r\n function TransformProperty(elem, data, container) {\r\n this.elem = elem;\r\n this.frameId = -1;\r\n this.propType = 'transform';\r\n this.data = data;\r\n this.v = new Matrix();\r\n // Precalculated matrix with non animated properties\r\n this.pre = new Matrix();\r\n this.appliedTransformations = 0;\r\n this.initDynamicPropertyContainer(container || elem);\r\n if (data.p && data.p.s) {\r\n this.px = PropertyFactory.getProp(elem, data.p.x, 0, 0, this);\r\n this.py = PropertyFactory.getProp(elem, data.p.y, 0, 0, this);\r\n if (data.p.z) {\r\n this.pz = PropertyFactory.getProp(elem, data.p.z, 0, 0, this);\r\n }\r\n } else {\r\n this.p = PropertyFactory.getProp(elem, data.p || { k: [0, 0, 0] }, 1, 0, this);\r\n }\r\n if (data.rx) {\r\n this.rx = PropertyFactory.getProp(elem, data.rx, 0, degToRads, this);\r\n this.ry = PropertyFactory.getProp(elem, data.ry, 0, degToRads, this);\r\n this.rz = PropertyFactory.getProp(elem, data.rz, 0, degToRads, this);\r\n if (data.or.k[0].ti) {\r\n var i;\r\n var len = data.or.k.length;\r\n for (i = 0; i < len; i += 1) {\r\n data.or.k[i].to = null;\r\n data.or.k[i].ti = null;\r\n }\r\n }\r\n this.or = PropertyFactory.getProp(elem, data.or, 1, degToRads, this);\r\n // sh Indicates it needs to be capped between -180 and 180\r\n this.or.sh = true;\r\n } else {\r\n this.r = PropertyFactory.getProp(elem, data.r || { k: 0 }, 0, degToRads, this);\r\n }\r\n if (data.sk) {\r\n this.sk = PropertyFactory.getProp(elem, data.sk, 0, degToRads, this);\r\n this.sa = PropertyFactory.getProp(elem, data.sa, 0, degToRads, this);\r\n }\r\n this.a = PropertyFactory.getProp(elem, data.a || { k: [0, 0, 0] }, 1, 0, this);\r\n this.s = PropertyFactory.getProp(elem, data.s || { k: [100, 100, 100] }, 1, 0.01, this);\r\n // Opacity is not part of the transform properties, that's why it won't use this.dynamicProperties. That way transforms won't get updated if opacity changes.\r\n if (data.o) {\r\n this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, elem);\r\n } else {\r\n this.o = { _mdf: false, v: 1 };\r\n }\r\n this._isDirty = true;\r\n if (!this.dynamicProperties.length) {\r\n this.getValue(true);\r\n }\r\n }\r\n\r\n TransformProperty.prototype = {\r\n applyToMatrix: applyToMatrix,\r\n getValue: processKeys,\r\n precalculateMatrix: precalculateMatrix,\r\n autoOrient: autoOrient,\r\n };\r\n\r\n extendPrototype([DynamicPropertyContainer], TransformProperty);\r\n TransformProperty.prototype.addDynamicProperty = addDynamicProperty;\r\n TransformProperty.prototype._addDynamicProperty = DynamicPropertyContainer.prototype.addDynamicProperty;\r\n\r\n function getTransformProperty(elem, data, container) {\r\n return new TransformProperty(elem, data, container);\r\n }\r\n\r\n return {\r\n getTransformProperty: getTransformProperty,\r\n };\r\n}());\r\n\r\n/* global createSizedArray, createSizedArray, pointPool */\r\n\r\nfunction ShapePath() {\r\n this.c = false;\r\n this._length = 0;\r\n this._maxLength = 8;\r\n this.v = createSizedArray(this._maxLength);\r\n this.o = createSizedArray(this._maxLength);\r\n this.i = createSizedArray(this._maxLength);\r\n}\r\n\r\nShapePath.prototype.setPathData = function (closed, len) {\r\n this.c = closed;\r\n this.setLength(len);\r\n var i = 0;\r\n while (i < len) {\r\n this.v[i] = pointPool.newElement();\r\n this.o[i] = pointPool.newElement();\r\n this.i[i] = pointPool.newElement();\r\n i += 1;\r\n }\r\n};\r\n\r\nShapePath.prototype.setLength = function (len) {\r\n while (this._maxLength < len) {\r\n this.doubleArrayLength();\r\n }\r\n this._length = len;\r\n};\r\n\r\nShapePath.prototype.doubleArrayLength = function () {\r\n this.v = this.v.concat(createSizedArray(this._maxLength));\r\n this.i = this.i.concat(createSizedArray(this._maxLength));\r\n this.o = this.o.concat(createSizedArray(this._maxLength));\r\n this._maxLength *= 2;\r\n};\r\n\r\nShapePath.prototype.setXYAt = function (x, y, type, pos, replace) {\r\n var arr;\r\n this._length = Math.max(this._length, pos + 1);\r\n if (this._length >= this._maxLength) {\r\n this.doubleArrayLength();\r\n }\r\n switch (type) {\r\n case 'v':\r\n arr = this.v;\r\n break;\r\n case 'i':\r\n arr = this.i;\r\n break;\r\n case 'o':\r\n arr = this.o;\r\n break;\r\n default:\r\n arr = [];\r\n break;\r\n }\r\n if (!arr[pos] || (arr[pos] && !replace)) {\r\n arr[pos] = pointPool.newElement();\r\n }\r\n arr[pos][0] = x;\r\n arr[pos][1] = y;\r\n};\r\n\r\nShapePath.prototype.setTripleAt = function (vX, vY, oX, oY, iX, iY, pos, replace) {\r\n this.setXYAt(vX, vY, 'v', pos, replace);\r\n this.setXYAt(oX, oY, 'o', pos, replace);\r\n this.setXYAt(iX, iY, 'i', pos, replace);\r\n};\r\n\r\nShapePath.prototype.reverse = function () {\r\n var newPath = new ShapePath();\r\n newPath.setPathData(this.c, this._length);\r\n var vertices = this.v;\r\n var outPoints = this.o;\r\n var inPoints = this.i;\r\n var init = 0;\r\n if (this.c) {\r\n newPath.setTripleAt(vertices[0][0], vertices[0][1], inPoints[0][0], inPoints[0][1], outPoints[0][0], outPoints[0][1], 0, false);\r\n init = 1;\r\n }\r\n var cnt = this._length - 1;\r\n var len = this._length;\r\n\r\n var i;\r\n for (i = init; i < len; i += 1) {\r\n newPath.setTripleAt(vertices[cnt][0], vertices[cnt][1], inPoints[cnt][0], inPoints[cnt][1], outPoints[cnt][0], outPoints[cnt][1], i, false);\r\n cnt -= 1;\r\n }\r\n return newPath;\r\n};\r\n\r\n/* global extendPrototype, roundCorner, BezierFactory, shapePool, degToRads,\r\n shapeCollectionPool, PropertyFactory, bmMin, DynamicPropertyContainer */\r\n/* exported ShapePropertyFactory */\r\n\r\nvar ShapePropertyFactory = (function () {\r\n var initFrame = -999999;\r\n\r\n function interpolateShape(frameNum, previousValue, caching) {\r\n var iterationIndex = caching.lastIndex;\r\n var keyPropS;\r\n var keyPropE;\r\n var isHold;\r\n var j;\r\n var k;\r\n var jLen;\r\n var kLen;\r\n var perc;\r\n var vertexValue;\r\n var kf = this.keyframes;\r\n if (frameNum < kf[0].t - this.offsetTime) {\r\n keyPropS = kf[0].s[0];\r\n isHold = true;\r\n iterationIndex = 0;\r\n } else if (frameNum >= kf[kf.length - 1].t - this.offsetTime) {\r\n keyPropS = kf[kf.length - 1].s ? kf[kf.length - 1].s[0] : kf[kf.length - 2].e[0];\r\n /* if(kf[kf.length - 1].s){\r\n keyPropS = kf[kf.length - 1].s[0];\r\n }else{\r\n keyPropS = kf[kf.length - 2].e[0];\r\n } */\r\n isHold = true;\r\n } else {\r\n var i = iterationIndex;\r\n var len = kf.length - 1;\r\n var flag = true;\r\n var keyData;\r\n var nextKeyData;\r\n while (flag) {\r\n keyData = kf[i];\r\n nextKeyData = kf[i + 1];\r\n if ((nextKeyData.t - this.offsetTime) > frameNum) {\r\n break;\r\n }\r\n if (i < len - 1) {\r\n i += 1;\r\n } else {\r\n flag = false;\r\n }\r\n }\r\n isHold = keyData.h === 1;\r\n iterationIndex = i;\r\n if (!isHold) {\r\n if (frameNum >= nextKeyData.t - this.offsetTime) {\r\n perc = 1;\r\n } else if (frameNum < keyData.t - this.offsetTime) {\r\n perc = 0;\r\n } else {\r\n var fnc;\r\n if (keyData.__fnct) {\r\n fnc = keyData.__fnct;\r\n } else {\r\n fnc = BezierFactory.getBezierEasing(keyData.o.x, keyData.o.y, keyData.i.x, keyData.i.y).get;\r\n keyData.__fnct = fnc;\r\n }\r\n perc = fnc((frameNum - (keyData.t - this.offsetTime)) / ((nextKeyData.t - this.offsetTime) - (keyData.t - this.offsetTime)));\r\n }\r\n keyPropE = nextKeyData.s ? nextKeyData.s[0] : keyData.e[0];\r\n }\r\n keyPropS = keyData.s[0];\r\n }\r\n jLen = previousValue._length;\r\n kLen = keyPropS.i[0].length;\r\n caching.lastIndex = iterationIndex;\r\n\r\n for (j = 0; j < jLen; j += 1) {\r\n for (k = 0; k < kLen; k += 1) {\r\n vertexValue = isHold ? keyPropS.i[j][k] : keyPropS.i[j][k] + (keyPropE.i[j][k] - keyPropS.i[j][k]) * perc;\r\n previousValue.i[j][k] = vertexValue;\r\n vertexValue = isHold ? keyPropS.o[j][k] : keyPropS.o[j][k] + (keyPropE.o[j][k] - keyPropS.o[j][k]) * perc;\r\n previousValue.o[j][k] = vertexValue;\r\n vertexValue = isHold ? keyPropS.v[j][k] : keyPropS.v[j][k] + (keyPropE.v[j][k] - keyPropS.v[j][k]) * perc;\r\n previousValue.v[j][k] = vertexValue;\r\n }\r\n }\r\n }\r\n\r\n function interpolateShapeCurrentTime() {\r\n var frameNum = this.comp.renderedFrame - this.offsetTime;\r\n var initTime = this.keyframes[0].t - this.offsetTime;\r\n var endTime = this.keyframes[this.keyframes.length - 1].t - this.offsetTime;\r\n var lastFrame = this._caching.lastFrame;\r\n if (!(lastFrame !== initFrame && ((lastFrame < initTime && frameNum < initTime) || (lastFrame > endTime && frameNum > endTime)))) {\r\n /// /\r\n this._caching.lastIndex = lastFrame < frameNum ? this._caching.lastIndex : 0;\r\n this.interpolateShape(frameNum, this.pv, this._caching);\r\n /// /\r\n }\r\n this._caching.lastFrame = frameNum;\r\n return this.pv;\r\n }\r\n\r\n function resetShape() {\r\n this.paths = this.localShapeCollection;\r\n }\r\n\r\n function shapesEqual(shape1, shape2) {\r\n if (shape1._length !== shape2._length || shape1.c !== shape2.c) {\r\n return false;\r\n }\r\n var i;\r\n var len = shape1._length;\r\n for (i = 0; i < len; i += 1) {\r\n if (shape1.v[i][0] !== shape2.v[i][0]\r\n || shape1.v[i][1] !== shape2.v[i][1]\r\n || shape1.o[i][0] !== shape2.o[i][0]\r\n || shape1.o[i][1] !== shape2.o[i][1]\r\n || shape1.i[i][0] !== shape2.i[i][0]\r\n || shape1.i[i][1] !== shape2.i[i][1]) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n function setVValue(newPath) {\r\n if (!shapesEqual(this.v, newPath)) {\r\n this.v = shapePool.clone(newPath);\r\n this.localShapeCollection.releaseShapes();\r\n this.localShapeCollection.addShape(this.v);\r\n this._mdf = true;\r\n this.paths = this.localShapeCollection;\r\n }\r\n }\r\n\r\n function processEffectsSequence() {\r\n if (this.elem.globalData.frameId === this.frameId) {\r\n return;\r\n } if (!this.effectsSequence.length) {\r\n this._mdf = false;\r\n return;\r\n }\r\n if (this.lock) {\r\n this.setVValue(this.pv);\r\n return;\r\n }\r\n this.lock = true;\r\n this._mdf = false;\r\n var finalValue;\r\n if (this.kf) {\r\n finalValue = this.pv;\r\n } else if (this.data.ks) {\r\n finalValue = this.data.ks.k;\r\n } else {\r\n finalValue = this.data.pt.k;\r\n }\r\n var i;\r\n var len = this.effectsSequence.length;\r\n for (i = 0; i < len; i += 1) {\r\n finalValue = this.effectsSequence[i](finalValue);\r\n }\r\n this.setVValue(finalValue);\r\n this.lock = false;\r\n this.frameId = this.elem.globalData.frameId;\r\n }\r\n\r\n function ShapeProperty(elem, data, type) {\r\n this.propType = 'shape';\r\n this.comp = elem.comp;\r\n this.container = elem;\r\n this.elem = elem;\r\n this.data = data;\r\n this.k = false;\r\n this.kf = false;\r\n this._mdf = false;\r\n var pathData = type === 3 ? data.pt.k : data.ks.k;\r\n this.v = shapePool.clone(pathData);\r\n this.pv = shapePool.clone(this.v);\r\n this.localShapeCollection = shapeCollectionPool.newShapeCollection();\r\n this.paths = this.localShapeCollection;\r\n this.paths.addShape(this.v);\r\n this.reset = resetShape;\r\n this.effectsSequence = [];\r\n }\r\n\r\n function addEffect(effectFunction) {\r\n this.effectsSequence.push(effectFunction);\r\n this.container.addDynamicProperty(this);\r\n }\r\n\r\n ShapeProperty.prototype.interpolateShape = interpolateShape;\r\n ShapeProperty.prototype.getValue = processEffectsSequence;\r\n ShapeProperty.prototype.setVValue = setVValue;\r\n ShapeProperty.prototype.addEffect = addEffect;\r\n\r\n function KeyframedShapeProperty(elem, data, type) {\r\n this.propType = 'shape';\r\n this.comp = elem.comp;\r\n this.elem = elem;\r\n this.container = elem;\r\n this.offsetTime = elem.data.st;\r\n this.keyframes = type === 3 ? data.pt.k : data.ks.k;\r\n this.k = true;\r\n this.kf = true;\r\n var len = this.keyframes[0].s[0].i.length;\r\n this.v = shapePool.newElement();\r\n this.v.setPathData(this.keyframes[0].s[0].c, len);\r\n this.pv = shapePool.clone(this.v);\r\n this.localShapeCollection = shapeCollectionPool.newShapeCollection();\r\n this.paths = this.localShapeCollection;\r\n this.paths.addShape(this.v);\r\n this.lastFrame = initFrame;\r\n this.reset = resetShape;\r\n this._caching = { lastFrame: initFrame, lastIndex: 0 };\r\n this.effectsSequence = [interpolateShapeCurrentTime.bind(this)];\r\n }\r\n KeyframedShapeProperty.prototype.getValue = processEffectsSequence;\r\n KeyframedShapeProperty.prototype.interpolateShape = interpolateShape;\r\n KeyframedShapeProperty.prototype.setVValue = setVValue;\r\n KeyframedShapeProperty.prototype.addEffect = addEffect;\r\n\r\n var EllShapeProperty = (function () {\r\n var cPoint = roundCorner;\r\n\r\n function EllShapePropertyFactory(elem, data) {\r\n /* this.v = {\r\n v: createSizedArray(4),\r\n i: createSizedArray(4),\r\n o: createSizedArray(4),\r\n c: true\r\n }; */\r\n this.v = shapePool.newElement();\r\n this.v.setPathData(true, 4);\r\n this.localShapeCollection = shapeCollectionPool.newShapeCollection();\r\n this.paths = this.localShapeCollection;\r\n this.localShapeCollection.addShape(this.v);\r\n this.d = data.d;\r\n this.elem = elem;\r\n this.comp = elem.comp;\r\n this.frameId = -1;\r\n this.initDynamicPropertyContainer(elem);\r\n this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);\r\n this.s = PropertyFactory.getProp(elem, data.s, 1, 0, this);\r\n if (this.dynamicProperties.length) {\r\n this.k = true;\r\n } else {\r\n this.k = false;\r\n this.convertEllToPath();\r\n }\r\n }\r\n\r\n EllShapePropertyFactory.prototype = {\r\n reset: resetShape,\r\n getValue: function () {\r\n if (this.elem.globalData.frameId === this.frameId) {\r\n return;\r\n }\r\n this.frameId = this.elem.globalData.frameId;\r\n this.iterateDynamicProperties();\r\n\r\n if (this._mdf) {\r\n this.convertEllToPath();\r\n }\r\n },\r\n convertEllToPath: function () {\r\n var p0 = this.p.v[0];\r\n var p1 = this.p.v[1];\r\n var s0 = this.s.v[0] / 2;\r\n var s1 = this.s.v[1] / 2;\r\n var _cw = this.d !== 3;\r\n var _v = this.v;\r\n _v.v[0][0] = p0;\r\n _v.v[0][1] = p1 - s1;\r\n _v.v[1][0] = _cw ? p0 + s0 : p0 - s0;\r\n _v.v[1][1] = p1;\r\n _v.v[2][0] = p0;\r\n _v.v[2][1] = p1 + s1;\r\n _v.v[3][0] = _cw ? p0 - s0 : p0 + s0;\r\n _v.v[3][1] = p1;\r\n _v.i[0][0] = _cw ? p0 - s0 * cPoint : p0 + s0 * cPoint;\r\n _v.i[0][1] = p1 - s1;\r\n _v.i[1][0] = _cw ? p0 + s0 : p0 - s0;\r\n _v.i[1][1] = p1 - s1 * cPoint;\r\n _v.i[2][0] = _cw ? p0 + s0 * cPoint : p0 - s0 * cPoint;\r\n _v.i[2][1] = p1 + s1;\r\n _v.i[3][0] = _cw ? p0 - s0 : p0 + s0;\r\n _v.i[3][1] = p1 + s1 * cPoint;\r\n _v.o[0][0] = _cw ? p0 + s0 * cPoint : p0 - s0 * cPoint;\r\n _v.o[0][1] = p1 - s1;\r\n _v.o[1][0] = _cw ? p0 + s0 : p0 - s0;\r\n _v.o[1][1] = p1 + s1 * cPoint;\r\n _v.o[2][0] = _cw ? p0 - s0 * cPoint : p0 + s0 * cPoint;\r\n _v.o[2][1] = p1 + s1;\r\n _v.o[3][0] = _cw ? p0 - s0 : p0 + s0;\r\n _v.o[3][1] = p1 - s1 * cPoint;\r\n },\r\n };\r\n\r\n extendPrototype([DynamicPropertyContainer], EllShapePropertyFactory);\r\n\r\n return EllShapePropertyFactory;\r\n }());\r\n\r\n var StarShapeProperty = (function () {\r\n function StarShapePropertyFactory(elem, data) {\r\n this.v = shapePool.newElement();\r\n this.v.setPathData(true, 0);\r\n this.elem = elem;\r\n this.comp = elem.comp;\r\n this.data = data;\r\n this.frameId = -1;\r\n this.d = data.d;\r\n this.initDynamicPropertyContainer(elem);\r\n if (data.sy === 1) {\r\n this.ir = PropertyFactory.getProp(elem, data.ir, 0, 0, this);\r\n this.is = PropertyFactory.getProp(elem, data.is, 0, 0.01, this);\r\n this.convertToPath = this.convertStarToPath;\r\n } else {\r\n this.convertToPath = this.convertPolygonToPath;\r\n }\r\n this.pt = PropertyFactory.getProp(elem, data.pt, 0, 0, this);\r\n this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);\r\n this.r = PropertyFactory.getProp(elem, data.r, 0, degToRads, this);\r\n this.or = PropertyFactory.getProp(elem, data.or, 0, 0, this);\r\n this.os = PropertyFactory.getProp(elem, data.os, 0, 0.01, this);\r\n this.localShapeCollection = shapeCollectionPool.newShapeCollection();\r\n this.localShapeCollection.addShape(this.v);\r\n this.paths = this.localShapeCollection;\r\n if (this.dynamicProperties.length) {\r\n this.k = true;\r\n } else {\r\n this.k = false;\r\n this.convertToPath();\r\n }\r\n }\r\n\r\n StarShapePropertyFactory.prototype = {\r\n reset: resetShape,\r\n getValue: function () {\r\n if (this.elem.globalData.frameId === this.frameId) {\r\n return;\r\n }\r\n this.frameId = this.elem.globalData.frameId;\r\n this.iterateDynamicProperties();\r\n if (this._mdf) {\r\n this.convertToPath();\r\n }\r\n },\r\n convertStarToPath: function () {\r\n var numPts = Math.floor(this.pt.v) * 2;\r\n var angle = (Math.PI * 2) / numPts;\r\n /* this.v.v.length = numPts;\r\n this.v.i.length = numPts;\r\n this.v.o.length = numPts; */\r\n var longFlag = true;\r\n var longRad = this.or.v;\r\n var shortRad = this.ir.v;\r\n var longRound = this.os.v;\r\n var shortRound = this.is.v;\r\n var longPerimSegment = (2 * Math.PI * longRad) / (numPts * 2);\r\n var shortPerimSegment = (2 * Math.PI * shortRad) / (numPts * 2);\r\n var i;\r\n var rad;\r\n var roundness;\r\n var perimSegment;\r\n var currentAng = -Math.PI / 2;\r\n currentAng += this.r.v;\r\n var dir = this.data.d === 3 ? -1 : 1;\r\n this.v._length = 0;\r\n for (i = 0; i < numPts; i += 1) {\r\n rad = longFlag ? longRad : shortRad;\r\n roundness = longFlag ? longRound : shortRound;\r\n perimSegment = longFlag ? longPerimSegment : shortPerimSegment;\r\n var x = rad * Math.cos(currentAng);\r\n var y = rad * Math.sin(currentAng);\r\n var ox = x === 0 && y === 0 ? 0 : y / Math.sqrt(x * x + y * y);\r\n var oy = x === 0 && y === 0 ? 0 : -x / Math.sqrt(x * x + y * y);\r\n x += +this.p.v[0];\r\n y += +this.p.v[1];\r\n this.v.setTripleAt(x, y, x - ox * perimSegment * roundness * dir, y - oy * perimSegment * roundness * dir, x + ox * perimSegment * roundness * dir, y + oy * perimSegment * roundness * dir, i, true);\r\n\r\n /* this.v.v[i] = [x,y];\r\n this.v.i[i] = [x+ox*perimSegment*roundness*dir,y+oy*perimSegment*roundness*dir];\r\n this.v.o[i] = [x-ox*perimSegment*roundness*dir,y-oy*perimSegment*roundness*dir];\r\n this.v._length = numPts; */\r\n longFlag = !longFlag;\r\n currentAng += angle * dir;\r\n }\r\n },\r\n convertPolygonToPath: function () {\r\n var numPts = Math.floor(this.pt.v);\r\n var angle = (Math.PI * 2) / numPts;\r\n var rad = this.or.v;\r\n var roundness = this.os.v;\r\n var perimSegment = (2 * Math.PI * rad) / (numPts * 4);\r\n var i;\r\n var currentAng = -Math.PI * 0.5;\r\n var dir = this.data.d === 3 ? -1 : 1;\r\n currentAng += this.r.v;\r\n this.v._length = 0;\r\n for (i = 0; i < numPts; i += 1) {\r\n var x = rad * Math.cos(currentAng);\r\n var y = rad * Math.sin(currentAng);\r\n var ox = x === 0 && y === 0 ? 0 : y / Math.sqrt(x * x + y * y);\r\n var oy = x === 0 && y === 0 ? 0 : -x / Math.sqrt(x * x + y * y);\r\n x += +this.p.v[0];\r\n y += +this.p.v[1];\r\n this.v.setTripleAt(x, y, x - ox * perimSegment * roundness * dir, y - oy * perimSegment * roundness * dir, x + ox * perimSegment * roundness * dir, y + oy * perimSegment * roundness * dir, i, true);\r\n currentAng += angle * dir;\r\n }\r\n this.paths.length = 0;\r\n this.paths[0] = this.v;\r\n },\r\n\r\n };\r\n extendPrototype([DynamicPropertyContainer], StarShapePropertyFactory);\r\n\r\n return StarShapePropertyFactory;\r\n }());\r\n\r\n var RectShapeProperty = (function () {\r\n function RectShapePropertyFactory(elem, data) {\r\n this.v = shapePool.newElement();\r\n this.v.c = true;\r\n this.localShapeCollection = shapeCollectionPool.newShapeCollection();\r\n this.localShapeCollection.addShape(this.v);\r\n this.paths = this.localShapeCollection;\r\n this.elem = elem;\r\n this.comp = elem.comp;\r\n this.frameId = -1;\r\n this.d = data.d;\r\n this.initDynamicPropertyContainer(elem);\r\n this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);\r\n this.s = PropertyFactory.getProp(elem, data.s, 1, 0, this);\r\n this.r = PropertyFactory.getProp(elem, data.r, 0, 0, this);\r\n if (this.dynamicProperties.length) {\r\n this.k = true;\r\n } else {\r\n this.k = false;\r\n this.convertRectToPath();\r\n }\r\n }\r\n\r\n RectShapePropertyFactory.prototype = {\r\n convertRectToPath: function () {\r\n var p0 = this.p.v[0];\r\n var p1 = this.p.v[1];\r\n var v0 = this.s.v[0] / 2;\r\n var v1 = this.s.v[1] / 2;\r\n var round = bmMin(v0, v1, this.r.v);\r\n var cPoint = round * (1 - roundCorner);\r\n this.v._length = 0;\r\n\r\n if (this.d === 2 || this.d === 1) {\r\n this.v.setTripleAt(p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + cPoint, 0, true);\r\n this.v.setTripleAt(p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - cPoint, p0 + v0, p1 + v1 - round, 1, true);\r\n if (round !== 0) {\r\n this.v.setTripleAt(p0 + v0 - round, p1 + v1, p0 + v0 - round, p1 + v1, p0 + v0 - cPoint, p1 + v1, 2, true);\r\n this.v.setTripleAt(p0 - v0 + round, p1 + v1, p0 - v0 + cPoint, p1 + v1, p0 - v0 + round, p1 + v1, 3, true);\r\n this.v.setTripleAt(p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - cPoint, 4, true);\r\n this.v.setTripleAt(p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + cPoint, p0 - v0, p1 - v1 + round, 5, true);\r\n this.v.setTripleAt(p0 - v0 + round, p1 - v1, p0 - v0 + round, p1 - v1, p0 - v0 + cPoint, p1 - v1, 6, true);\r\n this.v.setTripleAt(p0 + v0 - round, p1 - v1, p0 + v0 - cPoint, p1 - v1, p0 + v0 - round, p1 - v1, 7, true);\r\n } else {\r\n this.v.setTripleAt(p0 - v0, p1 + v1, p0 - v0 + cPoint, p1 + v1, p0 - v0, p1 + v1, 2);\r\n this.v.setTripleAt(p0 - v0, p1 - v1, p0 - v0, p1 - v1 + cPoint, p0 - v0, p1 - v1, 3);\r\n }\r\n } else {\r\n this.v.setTripleAt(p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + cPoint, p0 + v0, p1 - v1 + round, 0, true);\r\n if (round !== 0) {\r\n this.v.setTripleAt(p0 + v0 - round, p1 - v1, p0 + v0 - round, p1 - v1, p0 + v0 - cPoint, p1 - v1, 1, true);\r\n this.v.setTripleAt(p0 - v0 + round, p1 - v1, p0 - v0 + cPoint, p1 - v1, p0 - v0 + round, p1 - v1, 2, true);\r\n this.v.setTripleAt(p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + cPoint, 3, true);\r\n this.v.setTripleAt(p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - cPoint, p0 - v0, p1 + v1 - round, 4, true);\r\n this.v.setTripleAt(p0 - v0 + round, p1 + v1, p0 - v0 + round, p1 + v1, p0 - v0 + cPoint, p1 + v1, 5, true);\r\n this.v.setTripleAt(p0 + v0 - round, p1 + v1, p0 + v0 - cPoint, p1 + v1, p0 + v0 - round, p1 + v1, 6, true);\r\n this.v.setTripleAt(p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - cPoint, 7, true);\r\n } else {\r\n this.v.setTripleAt(p0 - v0, p1 - v1, p0 - v0 + cPoint, p1 - v1, p0 - v0, p1 - v1, 1, true);\r\n this.v.setTripleAt(p0 - v0, p1 + v1, p0 - v0, p1 + v1 - cPoint, p0 - v0, p1 + v1, 2, true);\r\n this.v.setTripleAt(p0 + v0, p1 + v1, p0 + v0 - cPoint, p1 + v1, p0 + v0, p1 + v1, 3, true);\r\n }\r\n }\r\n },\r\n getValue: function () {\r\n if (this.elem.globalData.frameId === this.frameId) {\r\n return;\r\n }\r\n this.frameId = this.elem.globalData.frameId;\r\n this.iterateDynamicProperties();\r\n if (this._mdf) {\r\n this.convertRectToPath();\r\n }\r\n },\r\n reset: resetShape,\r\n };\r\n extendPrototype([DynamicPropertyContainer], RectShapePropertyFactory);\r\n\r\n return RectShapePropertyFactory;\r\n }());\r\n\r\n function getShapeProp(elem, data, type) {\r\n var prop;\r\n if (type === 3 || type === 4) {\r\n var dataProp = type === 3 ? data.pt : data.ks;\r\n var keys = dataProp.k;\r\n if (keys.length) {\r\n prop = new KeyframedShapeProperty(elem, data, type);\r\n } else {\r\n prop = new ShapeProperty(elem, data, type);\r\n }\r\n } else if (type === 5) {\r\n prop = new RectShapeProperty(elem, data);\r\n } else if (type === 6) {\r\n prop = new EllShapeProperty(elem, data);\r\n } else if (type === 7) {\r\n prop = new StarShapeProperty(elem, data);\r\n }\r\n if (prop.k) {\r\n elem.addDynamicProperty(prop);\r\n }\r\n return prop;\r\n }\r\n\r\n function getConstructorFunction() {\r\n return ShapeProperty;\r\n }\r\n\r\n function getKeyframedConstructorFunction() {\r\n return KeyframedShapeProperty;\r\n }\r\n\r\n var ob = {};\r\n ob.getShapeProp = getShapeProp;\r\n ob.getConstructorFunction = getConstructorFunction;\r\n ob.getKeyframedConstructorFunction = getKeyframedConstructorFunction;\r\n return ob;\r\n}());\r\n\r\n/* global shapeCollectionPool, initialDefaultFrame, extendPrototype, DynamicPropertyContainer */\r\n/* exported ShapeModifiers */\r\n\r\nvar ShapeModifiers = (function () {\r\n var ob = {};\r\n var modifiers = {};\r\n ob.registerModifier = registerModifier;\r\n ob.getModifier = getModifier;\r\n\r\n function registerModifier(nm, factory) {\r\n if (!modifiers[nm]) {\r\n modifiers[nm] = factory;\r\n }\r\n }\r\n\r\n function getModifier(nm, elem, data) {\r\n return new modifiers[nm](elem, data);\r\n }\r\n\r\n return ob;\r\n}());\r\n\r\nfunction ShapeModifier() {}\r\nShapeModifier.prototype.initModifierProperties = function () {};\r\nShapeModifier.prototype.addShapeToModifier = function () {};\r\nShapeModifier.prototype.addShape = function (data) {\r\n if (!this.closed) {\r\n // Adding shape to dynamic properties. It covers the case where a shape has no effects applied, to reset it's _mdf state on every tick.\r\n data.sh.container.addDynamicProperty(data.sh);\r\n var shapeData = { shape: data.sh, data: data, localShapeCollection: shapeCollectionPool.newShapeCollection() };\r\n this.shapes.push(shapeData);\r\n this.addShapeToModifier(shapeData);\r\n if (this._isAnimated) {\r\n data.setAsAnimated();\r\n }\r\n }\r\n};\r\nShapeModifier.prototype.init = function (elem, data) {\r\n this.shapes = [];\r\n this.elem = elem;\r\n this.initDynamicPropertyContainer(elem);\r\n this.initModifierProperties(elem, data);\r\n this.frameId = initialDefaultFrame;\r\n this.closed = false;\r\n this.k = false;\r\n if (this.dynamicProperties.length) {\r\n this.k = true;\r\n } else {\r\n this.getValue(true);\r\n }\r\n};\r\nShapeModifier.prototype.processKeys = function () {\r\n if (this.elem.globalData.frameId === this.frameId) {\r\n return;\r\n }\r\n this.frameId = this.elem.globalData.frameId;\r\n this.iterateDynamicProperties();\r\n};\r\n\r\nextendPrototype([DynamicPropertyContainer], ShapeModifier);\r\n\r\n/* global extendPrototype, ShapeModifier, PropertyFactory, segmentsLengthPool, bez, shapePool, ShapeModifiers */\r\n\r\nfunction TrimModifier() {\r\n}\r\nextendPrototype([ShapeModifier], TrimModifier);\r\nTrimModifier.prototype.initModifierProperties = function (elem, data) {\r\n this.s = PropertyFactory.getProp(elem, data.s, 0, 0.01, this);\r\n this.e = PropertyFactory.getProp(elem, data.e, 0, 0.01, this);\r\n this.o = PropertyFactory.getProp(elem, data.o, 0, 0, this);\r\n this.sValue = 0;\r\n this.eValue = 0;\r\n this.getValue = this.processKeys;\r\n this.m = data.m;\r\n this._isAnimated = !!this.s.effectsSequence.length || !!this.e.effectsSequence.length || !!this.o.effectsSequence.length;\r\n};\r\n\r\nTrimModifier.prototype.addShapeToModifier = function (shapeData) {\r\n shapeData.pathsData = [];\r\n};\r\n\r\nTrimModifier.prototype.calculateShapeEdges = function (s, e, shapeLength, addedLength, totalModifierLength) {\r\n var segments = [];\r\n if (e <= 1) {\r\n segments.push({\r\n s: s,\r\n e: e,\r\n });\r\n } else if (s >= 1) {\r\n segments.push({\r\n s: s - 1,\r\n e: e - 1,\r\n });\r\n } else {\r\n segments.push({\r\n s: s,\r\n e: 1,\r\n });\r\n segments.push({\r\n s: 0,\r\n e: e - 1,\r\n });\r\n }\r\n var shapeSegments = [];\r\n var i;\r\n var len = segments.length;\r\n var segmentOb;\r\n for (i = 0; i < len; i += 1) {\r\n segmentOb = segments[i];\r\n if (!(segmentOb.e * totalModifierLength < addedLength || segmentOb.s * totalModifierLength > addedLength + shapeLength)) {\r\n var shapeS;\r\n var shapeE;\r\n if (segmentOb.s * totalModifierLength <= addedLength) {\r\n shapeS = 0;\r\n } else {\r\n shapeS = (segmentOb.s * totalModifierLength - addedLength) / shapeLength;\r\n }\r\n if (segmentOb.e * totalModifierLength >= addedLength + shapeLength) {\r\n shapeE = 1;\r\n } else {\r\n shapeE = ((segmentOb.e * totalModifierLength - addedLength) / shapeLength);\r\n }\r\n shapeSegments.push([shapeS, shapeE]);\r\n }\r\n }\r\n if (!shapeSegments.length) {\r\n shapeSegments.push([0, 0]);\r\n }\r\n return shapeSegments;\r\n};\r\n\r\nTrimModifier.prototype.releasePathsData = function (pathsData) {\r\n var i;\r\n var len = pathsData.length;\r\n for (i = 0; i < len; i += 1) {\r\n segmentsLengthPool.release(pathsData[i]);\r\n }\r\n pathsData.length = 0;\r\n return pathsData;\r\n};\r\n\r\nTrimModifier.prototype.processShapes = function (_isFirstFrame) {\r\n var s;\r\n var e;\r\n if (this._mdf || _isFirstFrame) {\r\n var o = (this.o.v % 360) / 360;\r\n if (o < 0) {\r\n o += 1;\r\n }\r\n if (this.s.v > 1) {\r\n s = 1 + o;\r\n } else if (this.s.v < 0) {\r\n s = 0 + o;\r\n } else {\r\n s = this.s.v + o;\r\n }\r\n if (this.e.v > 1) {\r\n e = 1 + o;\r\n } else if (this.e.v < 0) {\r\n e = 0 + o;\r\n } else {\r\n e = this.e.v + o;\r\n }\r\n\r\n if (s > e) {\r\n var _s = s;\r\n s = e;\r\n e = _s;\r\n }\r\n s = Math.round(s * 10000) * 0.0001;\r\n e = Math.round(e * 10000) * 0.0001;\r\n this.sValue = s;\r\n this.eValue = e;\r\n } else {\r\n s = this.sValue;\r\n e = this.eValue;\r\n }\r\n var shapePaths;\r\n var i;\r\n var len = this.shapes.length;\r\n var j;\r\n var jLen;\r\n var pathsData;\r\n var pathData;\r\n var totalShapeLength;\r\n var totalModifierLength = 0;\r\n\r\n if (e === s) {\r\n for (i = 0; i < len; i += 1) {\r\n this.shapes[i].localShapeCollection.releaseShapes();\r\n this.shapes[i].shape._mdf = true;\r\n this.shapes[i].shape.paths = this.shapes[i].localShapeCollection;\r\n if (this._mdf) {\r\n this.shapes[i].pathsData.length = 0;\r\n }\r\n }\r\n } else if (!((e === 1 && s === 0) || (e === 0 && s === 1))) {\r\n var segments = [];\r\n var shapeData;\r\n var localShapeCollection;\r\n for (i = 0; i < len; i += 1) {\r\n shapeData = this.shapes[i];\r\n // if shape hasn't changed and trim properties haven't changed, cached previous path can be used\r\n if (!shapeData.shape._mdf && !this._mdf && !_isFirstFrame && this.m !== 2) {\r\n shapeData.shape.paths = shapeData.localShapeCollection;\r\n } else {\r\n shapePaths = shapeData.shape.paths;\r\n jLen = shapePaths._length;\r\n totalShapeLength = 0;\r\n if (!shapeData.shape._mdf && shapeData.pathsData.length) {\r\n totalShapeLength = shapeData.totalShapeLength;\r\n } else {\r\n pathsData = this.releasePathsData(shapeData.pathsData);\r\n for (j = 0; j < jLen; j += 1) {\r\n pathData = bez.getSegmentsLength(shapePaths.shapes[j]);\r\n pathsData.push(pathData);\r\n totalShapeLength += pathData.totalLength;\r\n }\r\n shapeData.totalShapeLength = totalShapeLength;\r\n shapeData.pathsData = pathsData;\r\n }\r\n\r\n totalModifierLength += totalShapeLength;\r\n shapeData.shape._mdf = true;\r\n }\r\n }\r\n var shapeS = s;\r\n var shapeE = e;\r\n var addedLength = 0;\r\n var edges;\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n shapeData = this.shapes[i];\r\n if (shapeData.shape._mdf) {\r\n localShapeCollection = shapeData.localShapeCollection;\r\n localShapeCollection.releaseShapes();\r\n // if m === 2 means paths are trimmed individually so edges need to be found for this specific shape relative to whoel group\r\n if (this.m === 2 && len > 1) {\r\n edges = this.calculateShapeEdges(s, e, shapeData.totalShapeLength, addedLength, totalModifierLength);\r\n addedLength += shapeData.totalShapeLength;\r\n } else {\r\n edges = [[shapeS, shapeE]];\r\n }\r\n jLen = edges.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n shapeS = edges[j][0];\r\n shapeE = edges[j][1];\r\n segments.length = 0;\r\n if (shapeE <= 1) {\r\n segments.push({\r\n s: shapeData.totalShapeLength * shapeS,\r\n e: shapeData.totalShapeLength * shapeE,\r\n });\r\n } else if (shapeS >= 1) {\r\n segments.push({\r\n s: shapeData.totalShapeLength * (shapeS - 1),\r\n e: shapeData.totalShapeLength * (shapeE - 1),\r\n });\r\n } else {\r\n segments.push({\r\n s: shapeData.totalShapeLength * shapeS,\r\n e: shapeData.totalShapeLength,\r\n });\r\n segments.push({\r\n s: 0,\r\n e: shapeData.totalShapeLength * (shapeE - 1),\r\n });\r\n }\r\n var newShapesData = this.addShapes(shapeData, segments[0]);\r\n if (segments[0].s !== segments[0].e) {\r\n if (segments.length > 1) {\r\n var lastShapeInCollection = shapeData.shape.paths.shapes[shapeData.shape.paths._length - 1];\r\n if (lastShapeInCollection.c) {\r\n var lastShape = newShapesData.pop();\r\n this.addPaths(newShapesData, localShapeCollection);\r\n newShapesData = this.addShapes(shapeData, segments[1], lastShape);\r\n } else {\r\n this.addPaths(newShapesData, localShapeCollection);\r\n newShapesData = this.addShapes(shapeData, segments[1]);\r\n }\r\n }\r\n this.addPaths(newShapesData, localShapeCollection);\r\n }\r\n }\r\n shapeData.shape.paths = localShapeCollection;\r\n }\r\n }\r\n } else if (this._mdf) {\r\n for (i = 0; i < len; i += 1) {\r\n // Releasign Trim Cached paths data when no trim applied in case shapes are modified inbetween.\r\n // Don't remove this even if it's losing cached info.\r\n this.shapes[i].pathsData.length = 0;\r\n this.shapes[i].shape._mdf = true;\r\n }\r\n }\r\n};\r\n\r\nTrimModifier.prototype.addPaths = function (newPaths, localShapeCollection) {\r\n var i;\r\n var len = newPaths.length;\r\n for (i = 0; i < len; i += 1) {\r\n localShapeCollection.addShape(newPaths[i]);\r\n }\r\n};\r\n\r\nTrimModifier.prototype.addSegment = function (pt1, pt2, pt3, pt4, shapePath, pos, newShape) {\r\n shapePath.setXYAt(pt2[0], pt2[1], 'o', pos);\r\n shapePath.setXYAt(pt3[0], pt3[1], 'i', pos + 1);\r\n if (newShape) {\r\n shapePath.setXYAt(pt1[0], pt1[1], 'v', pos);\r\n }\r\n shapePath.setXYAt(pt4[0], pt4[1], 'v', pos + 1);\r\n};\r\n\r\nTrimModifier.prototype.addSegmentFromArray = function (points, shapePath, pos, newShape) {\r\n shapePath.setXYAt(points[1], points[5], 'o', pos);\r\n shapePath.setXYAt(points[2], points[6], 'i', pos + 1);\r\n if (newShape) {\r\n shapePath.setXYAt(points[0], points[4], 'v', pos);\r\n }\r\n shapePath.setXYAt(points[3], points[7], 'v', pos + 1);\r\n};\r\n\r\nTrimModifier.prototype.addShapes = function (shapeData, shapeSegment, shapePath) {\r\n var pathsData = shapeData.pathsData;\r\n var shapePaths = shapeData.shape.paths.shapes;\r\n var i;\r\n var len = shapeData.shape.paths._length;\r\n var j;\r\n var jLen;\r\n var addedLength = 0;\r\n var currentLengthData;\r\n var segmentCount;\r\n var lengths;\r\n var segment;\r\n var shapes = [];\r\n var initPos;\r\n var newShape = true;\r\n if (!shapePath) {\r\n shapePath = shapePool.newElement();\r\n segmentCount = 0;\r\n initPos = 0;\r\n } else {\r\n segmentCount = shapePath._length;\r\n initPos = shapePath._length;\r\n }\r\n shapes.push(shapePath);\r\n for (i = 0; i < len; i += 1) {\r\n lengths = pathsData[i].lengths;\r\n shapePath.c = shapePaths[i].c;\r\n jLen = shapePaths[i].c ? lengths.length : lengths.length + 1;\r\n for (j = 1; j < jLen; j += 1) {\r\n currentLengthData = lengths[j - 1];\r\n if (addedLength + currentLengthData.addedLength < shapeSegment.s) {\r\n addedLength += currentLengthData.addedLength;\r\n shapePath.c = false;\r\n } else if (addedLength > shapeSegment.e) {\r\n shapePath.c = false;\r\n break;\r\n } else {\r\n if (shapeSegment.s <= addedLength && shapeSegment.e >= addedLength + currentLengthData.addedLength) {\r\n this.addSegment(shapePaths[i].v[j - 1], shapePaths[i].o[j - 1], shapePaths[i].i[j], shapePaths[i].v[j], shapePath, segmentCount, newShape);\r\n newShape = false;\r\n } else {\r\n segment = bez.getNewSegment(shapePaths[i].v[j - 1], shapePaths[i].v[j], shapePaths[i].o[j - 1], shapePaths[i].i[j], (shapeSegment.s - addedLength) / currentLengthData.addedLength, (shapeSegment.e - addedLength) / currentLengthData.addedLength, lengths[j - 1]);\r\n this.addSegmentFromArray(segment, shapePath, segmentCount, newShape);\r\n // this.addSegment(segment.pt1, segment.pt3, segment.pt4, segment.pt2, shapePath, segmentCount, newShape);\r\n newShape = false;\r\n shapePath.c = false;\r\n }\r\n addedLength += currentLengthData.addedLength;\r\n segmentCount += 1;\r\n }\r\n }\r\n if (shapePaths[i].c && lengths.length) {\r\n currentLengthData = lengths[j - 1];\r\n if (addedLength <= shapeSegment.e) {\r\n var segmentLength = lengths[j - 1].addedLength;\r\n if (shapeSegment.s <= addedLength && shapeSegment.e >= addedLength + segmentLength) {\r\n this.addSegment(shapePaths[i].v[j - 1], shapePaths[i].o[j - 1], shapePaths[i].i[0], shapePaths[i].v[0], shapePath, segmentCount, newShape);\r\n newShape = false;\r\n } else {\r\n segment = bez.getNewSegment(shapePaths[i].v[j - 1], shapePaths[i].v[0], shapePaths[i].o[j - 1], shapePaths[i].i[0], (shapeSegment.s - addedLength) / segmentLength, (shapeSegment.e - addedLength) / segmentLength, lengths[j - 1]);\r\n this.addSegmentFromArray(segment, shapePath, segmentCount, newShape);\r\n // this.addSegment(segment.pt1, segment.pt3, segment.pt4, segment.pt2, shapePath, segmentCount, newShape);\r\n newShape = false;\r\n shapePath.c = false;\r\n }\r\n } else {\r\n shapePath.c = false;\r\n }\r\n addedLength += currentLengthData.addedLength;\r\n segmentCount += 1;\r\n }\r\n if (shapePath._length) {\r\n shapePath.setXYAt(shapePath.v[initPos][0], shapePath.v[initPos][1], 'i', initPos);\r\n shapePath.setXYAt(shapePath.v[shapePath._length - 1][0], shapePath.v[shapePath._length - 1][1], 'o', shapePath._length - 1);\r\n }\r\n if (addedLength > shapeSegment.e) {\r\n break;\r\n }\r\n if (i < len - 1) {\r\n shapePath = shapePool.newElement();\r\n newShape = true;\r\n shapes.push(shapePath);\r\n segmentCount = 0;\r\n }\r\n }\r\n return shapes;\r\n};\r\n\r\nShapeModifiers.registerModifier('tm', TrimModifier);\r\n\r\n/* global extendPrototype, ShapeModifier, PropertyFactory, shapePool, roundCorner, ShapeModifiers */\r\n\r\nfunction RoundCornersModifier() {}\r\nextendPrototype([ShapeModifier], RoundCornersModifier);\r\nRoundCornersModifier.prototype.initModifierProperties = function (elem, data) {\r\n this.getValue = this.processKeys;\r\n this.rd = PropertyFactory.getProp(elem, data.r, 0, null, this);\r\n this._isAnimated = !!this.rd.effectsSequence.length;\r\n};\r\n\r\nRoundCornersModifier.prototype.processPath = function (path, round) {\r\n var clonedPath = shapePool.newElement();\r\n clonedPath.c = path.c;\r\n var i;\r\n var len = path._length;\r\n var currentV;\r\n var currentI;\r\n var currentO;\r\n var closerV;\r\n var distance;\r\n var newPosPerc;\r\n var index = 0;\r\n var vX;\r\n var vY;\r\n var oX;\r\n var oY;\r\n var iX;\r\n var iY;\r\n for (i = 0; i < len; i += 1) {\r\n currentV = path.v[i];\r\n currentO = path.o[i];\r\n currentI = path.i[i];\r\n if (currentV[0] === currentO[0] && currentV[1] === currentO[1] && currentV[0] === currentI[0] && currentV[1] === currentI[1]) {\r\n if ((i === 0 || i === len - 1) && !path.c) {\r\n clonedPath.setTripleAt(currentV[0], currentV[1], currentO[0], currentO[1], currentI[0], currentI[1], index);\r\n /* clonedPath.v[index] = currentV;\r\n clonedPath.o[index] = currentO;\r\n clonedPath.i[index] = currentI; */\r\n index += 1;\r\n } else {\r\n if (i === 0) {\r\n closerV = path.v[len - 1];\r\n } else {\r\n closerV = path.v[i - 1];\r\n }\r\n distance = Math.sqrt(Math.pow(currentV[0] - closerV[0], 2) + Math.pow(currentV[1] - closerV[1], 2));\r\n newPosPerc = distance ? Math.min(distance / 2, round) / distance : 0;\r\n iX = currentV[0] + (closerV[0] - currentV[0]) * newPosPerc;\r\n vX = iX;\r\n iY = currentV[1] - (currentV[1] - closerV[1]) * newPosPerc;\r\n vY = iY;\r\n oX = vX - (vX - currentV[0]) * roundCorner;\r\n oY = vY - (vY - currentV[1]) * roundCorner;\r\n clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, index);\r\n index += 1;\r\n\r\n if (i === len - 1) {\r\n closerV = path.v[0];\r\n } else {\r\n closerV = path.v[i + 1];\r\n }\r\n distance = Math.sqrt(Math.pow(currentV[0] - closerV[0], 2) + Math.pow(currentV[1] - closerV[1], 2));\r\n newPosPerc = distance ? Math.min(distance / 2, round) / distance : 0;\r\n oX = currentV[0] + (closerV[0] - currentV[0]) * newPosPerc;\r\n vX = oX;\r\n oY = currentV[1] + (closerV[1] - currentV[1]) * newPosPerc;\r\n vY = oY;\r\n iX = vX - (vX - currentV[0]) * roundCorner;\r\n iY = vY - (vY - currentV[1]) * roundCorner;\r\n clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, index);\r\n index += 1;\r\n }\r\n } else {\r\n clonedPath.setTripleAt(path.v[i][0], path.v[i][1], path.o[i][0], path.o[i][1], path.i[i][0], path.i[i][1], index);\r\n index += 1;\r\n }\r\n }\r\n return clonedPath;\r\n};\r\n\r\nRoundCornersModifier.prototype.processShapes = function (_isFirstFrame) {\r\n var shapePaths;\r\n var i;\r\n var len = this.shapes.length;\r\n var j;\r\n var jLen;\r\n var rd = this.rd.v;\r\n\r\n if (rd !== 0) {\r\n var shapeData;\r\n var localShapeCollection;\r\n for (i = 0; i < len; i += 1) {\r\n shapeData = this.shapes[i];\r\n localShapeCollection = shapeData.localShapeCollection;\r\n if (!(!shapeData.shape._mdf && !this._mdf && !_isFirstFrame)) {\r\n localShapeCollection.releaseShapes();\r\n shapeData.shape._mdf = true;\r\n shapePaths = shapeData.shape.paths.shapes;\r\n jLen = shapeData.shape.paths._length;\r\n for (j = 0; j < jLen; j += 1) {\r\n localShapeCollection.addShape(this.processPath(shapePaths[j], rd));\r\n }\r\n }\r\n shapeData.shape.paths = shapeData.localShapeCollection;\r\n }\r\n }\r\n if (!this.dynamicProperties.length) {\r\n this._mdf = false;\r\n }\r\n};\r\n\r\nShapeModifiers.registerModifier('rd', RoundCornersModifier);\r\n\r\n/* global extendPrototype, ShapeModifier, PropertyFactory, shapePool, ShapeModifiers */\r\n\r\nfunction PuckerAndBloatModifier() {}\r\nextendPrototype([ShapeModifier], PuckerAndBloatModifier);\r\nPuckerAndBloatModifier.prototype.initModifierProperties = function (elem, data) {\r\n this.getValue = this.processKeys;\r\n this.amount = PropertyFactory.getProp(elem, data.a, 0, null, this);\r\n this._isAnimated = !!this.amount.effectsSequence.length;\r\n};\r\n\r\nPuckerAndBloatModifier.prototype.processPath = function (path, amount) {\r\n var percent = amount / 100;\r\n var centerPoint = [0, 0];\r\n var pathLength = path._length;\r\n var i = 0;\r\n for (i = 0; i < pathLength; i += 1) {\r\n centerPoint[0] += path.v[i][0];\r\n centerPoint[1] += path.v[i][1];\r\n }\r\n centerPoint[0] /= pathLength;\r\n centerPoint[1] /= pathLength;\r\n var clonedPath = shapePool.newElement();\r\n clonedPath.c = path.c;\r\n var vX;\r\n var vY;\r\n var oX;\r\n var oY;\r\n var iX;\r\n var iY;\r\n for (i = 0; i < pathLength; i += 1) {\r\n vX = path.v[i][0] + (centerPoint[0] - path.v[i][0]) * percent;\r\n vY = path.v[i][1] + (centerPoint[1] - path.v[i][1]) * percent;\r\n oX = path.o[i][0] + (centerPoint[0] - path.o[i][0]) * -percent;\r\n oY = path.o[i][1] + (centerPoint[1] - path.o[i][1]) * -percent;\r\n iX = path.i[i][0] + (centerPoint[0] - path.i[i][0]) * -percent;\r\n iY = path.i[i][1] + (centerPoint[1] - path.i[i][1]) * -percent;\r\n clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, i);\r\n }\r\n return clonedPath;\r\n};\r\n\r\nPuckerAndBloatModifier.prototype.processShapes = function (_isFirstFrame) {\r\n var shapePaths;\r\n var i;\r\n var len = this.shapes.length;\r\n var j;\r\n var jLen;\r\n var amount = this.amount.v;\r\n\r\n if (amount !== 0) {\r\n var shapeData;\r\n var localShapeCollection;\r\n for (i = 0; i < len; i += 1) {\r\n shapeData = this.shapes[i];\r\n localShapeCollection = shapeData.localShapeCollection;\r\n if (!(!shapeData.shape._mdf && !this._mdf && !_isFirstFrame)) {\r\n localShapeCollection.releaseShapes();\r\n shapeData.shape._mdf = true;\r\n shapePaths = shapeData.shape.paths.shapes;\r\n jLen = shapeData.shape.paths._length;\r\n for (j = 0; j < jLen; j += 1) {\r\n localShapeCollection.addShape(this.processPath(shapePaths[j], amount));\r\n }\r\n }\r\n shapeData.shape.paths = shapeData.localShapeCollection;\r\n }\r\n }\r\n if (!this.dynamicProperties.length) {\r\n this._mdf = false;\r\n }\r\n};\r\nShapeModifiers.registerModifier('pb', PuckerAndBloatModifier);\r\n\r\n/* global extendPrototype, ShapeModifier, TransformPropertyFactory, PropertyFactory, Matrix, ShapeModifiers */\r\n\r\nfunction RepeaterModifier() {}\r\nextendPrototype([ShapeModifier], RepeaterModifier);\r\n\r\nRepeaterModifier.prototype.initModifierProperties = function (elem, data) {\r\n this.getValue = this.processKeys;\r\n this.c = PropertyFactory.getProp(elem, data.c, 0, null, this);\r\n this.o = PropertyFactory.getProp(elem, data.o, 0, null, this);\r\n this.tr = TransformPropertyFactory.getTransformProperty(elem, data.tr, this);\r\n this.so = PropertyFactory.getProp(elem, data.tr.so, 0, 0.01, this);\r\n this.eo = PropertyFactory.getProp(elem, data.tr.eo, 0, 0.01, this);\r\n this.data = data;\r\n if (!this.dynamicProperties.length) {\r\n this.getValue(true);\r\n }\r\n this._isAnimated = !!this.dynamicProperties.length;\r\n this.pMatrix = new Matrix();\r\n this.rMatrix = new Matrix();\r\n this.sMatrix = new Matrix();\r\n this.tMatrix = new Matrix();\r\n this.matrix = new Matrix();\r\n};\r\n\r\nRepeaterModifier.prototype.applyTransforms = function (pMatrix, rMatrix, sMatrix, transform, perc, inv) {\r\n var dir = inv ? -1 : 1;\r\n var scaleX = transform.s.v[0] + (1 - transform.s.v[0]) * (1 - perc);\r\n var scaleY = transform.s.v[1] + (1 - transform.s.v[1]) * (1 - perc);\r\n pMatrix.translate(transform.p.v[0] * dir * perc, transform.p.v[1] * dir * perc, transform.p.v[2]);\r\n rMatrix.translate(-transform.a.v[0], -transform.a.v[1], transform.a.v[2]);\r\n rMatrix.rotate(-transform.r.v * dir * perc);\r\n rMatrix.translate(transform.a.v[0], transform.a.v[1], transform.a.v[2]);\r\n sMatrix.translate(-transform.a.v[0], -transform.a.v[1], transform.a.v[2]);\r\n sMatrix.scale(inv ? 1 / scaleX : scaleX, inv ? 1 / scaleY : scaleY);\r\n sMatrix.translate(transform.a.v[0], transform.a.v[1], transform.a.v[2]);\r\n};\r\n\r\nRepeaterModifier.prototype.init = function (elem, arr, pos, elemsData) {\r\n this.elem = elem;\r\n this.arr = arr;\r\n this.pos = pos;\r\n this.elemsData = elemsData;\r\n this._currentCopies = 0;\r\n this._elements = [];\r\n this._groups = [];\r\n this.frameId = -1;\r\n this.initDynamicPropertyContainer(elem);\r\n this.initModifierProperties(elem, arr[pos]);\r\n while (pos > 0) {\r\n pos -= 1;\r\n // this._elements.unshift(arr.splice(pos,1)[0]);\r\n this._elements.unshift(arr[pos]);\r\n }\r\n if (this.dynamicProperties.length) {\r\n this.k = true;\r\n } else {\r\n this.getValue(true);\r\n }\r\n};\r\n\r\nRepeaterModifier.prototype.resetElements = function (elements) {\r\n var i;\r\n var len = elements.length;\r\n for (i = 0; i < len; i += 1) {\r\n elements[i]._processed = false;\r\n if (elements[i].ty === 'gr') {\r\n this.resetElements(elements[i].it);\r\n }\r\n }\r\n};\r\n\r\nRepeaterModifier.prototype.cloneElements = function (elements) {\r\n var newElements = JSON.parse(JSON.stringify(elements));\r\n this.resetElements(newElements);\r\n return newElements;\r\n};\r\n\r\nRepeaterModifier.prototype.changeGroupRender = function (elements, renderFlag) {\r\n var i;\r\n var len = elements.length;\r\n for (i = 0; i < len; i += 1) {\r\n elements[i]._render = renderFlag;\r\n if (elements[i].ty === 'gr') {\r\n this.changeGroupRender(elements[i].it, renderFlag);\r\n }\r\n }\r\n};\r\n\r\nRepeaterModifier.prototype.processShapes = function (_isFirstFrame) {\r\n var items;\r\n var itemsTransform;\r\n var i;\r\n var dir;\r\n var cont;\r\n var hasReloaded = false;\r\n if (this._mdf || _isFirstFrame) {\r\n var copies = Math.ceil(this.c.v);\r\n if (this._groups.length < copies) {\r\n while (this._groups.length < copies) {\r\n var group = {\r\n it: this.cloneElements(this._elements),\r\n ty: 'gr',\r\n };\r\n group.it.push({\r\n a: { a: 0, ix: 1, k: [0, 0] }, nm: 'Transform', o: { a: 0, ix: 7, k: 100 }, p: { a: 0, ix: 2, k: [0, 0] }, r: { a: 1, ix: 6, k: [{ s: 0, e: 0, t: 0 }, { s: 0, e: 0, t: 1 }] }, s: { a: 0, ix: 3, k: [100, 100] }, sa: { a: 0, ix: 5, k: 0 }, sk: { a: 0, ix: 4, k: 0 }, ty: 'tr',\r\n });\r\n\r\n this.arr.splice(0, 0, group);\r\n this._groups.splice(0, 0, group);\r\n this._currentCopies += 1;\r\n }\r\n this.elem.reloadShapes();\r\n hasReloaded = true;\r\n }\r\n cont = 0;\r\n var renderFlag;\r\n for (i = 0; i <= this._groups.length - 1; i += 1) {\r\n renderFlag = cont < copies;\r\n this._groups[i]._render = renderFlag;\r\n this.changeGroupRender(this._groups[i].it, renderFlag);\r\n if (!renderFlag) {\r\n var elems = this.elemsData[i].it;\r\n var transformData = elems[elems.length - 1];\r\n if (transformData.transform.op.v !== 0) {\r\n transformData.transform.op._mdf = true;\r\n transformData.transform.op.v = 0;\r\n } else {\r\n transformData.transform.op._mdf = false;\r\n }\r\n }\r\n cont += 1;\r\n }\r\n\r\n this._currentCopies = copies;\r\n /// /\r\n\r\n var offset = this.o.v;\r\n var offsetModulo = offset % 1;\r\n var roundOffset = offset > 0 ? Math.floor(offset) : Math.ceil(offset);\r\n var pProps = this.pMatrix.props;\r\n var rProps = this.rMatrix.props;\r\n var sProps = this.sMatrix.props;\r\n this.pMatrix.reset();\r\n this.rMatrix.reset();\r\n this.sMatrix.reset();\r\n this.tMatrix.reset();\r\n this.matrix.reset();\r\n var iteration = 0;\r\n\r\n if (offset > 0) {\r\n while (iteration < roundOffset) {\r\n this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, false);\r\n iteration += 1;\r\n }\r\n if (offsetModulo) {\r\n this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, offsetModulo, false);\r\n iteration += offsetModulo;\r\n }\r\n } else if (offset < 0) {\r\n while (iteration > roundOffset) {\r\n this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, true);\r\n iteration -= 1;\r\n }\r\n if (offsetModulo) {\r\n this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, -offsetModulo, true);\r\n iteration -= offsetModulo;\r\n }\r\n }\r\n i = this.data.m === 1 ? 0 : this._currentCopies - 1;\r\n dir = this.data.m === 1 ? 1 : -1;\r\n cont = this._currentCopies;\r\n var j;\r\n var jLen;\r\n while (cont) {\r\n items = this.elemsData[i].it;\r\n itemsTransform = items[items.length - 1].transform.mProps.v.props;\r\n jLen = itemsTransform.length;\r\n items[items.length - 1].transform.mProps._mdf = true;\r\n items[items.length - 1].transform.op._mdf = true;\r\n items[items.length - 1].transform.op.v = this._currentCopies === 1\r\n ? this.so.v\r\n : this.so.v + (this.eo.v - this.so.v) * (i / (this._currentCopies - 1));\r\n\r\n if (iteration !== 0) {\r\n if ((i !== 0 && dir === 1) || (i !== this._currentCopies - 1 && dir === -1)) {\r\n this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, false);\r\n }\r\n this.matrix.transform(rProps[0], rProps[1], rProps[2], rProps[3], rProps[4], rProps[5], rProps[6], rProps[7], rProps[8], rProps[9], rProps[10], rProps[11], rProps[12], rProps[13], rProps[14], rProps[15]);\r\n this.matrix.transform(sProps[0], sProps[1], sProps[2], sProps[3], sProps[4], sProps[5], sProps[6], sProps[7], sProps[8], sProps[9], sProps[10], sProps[11], sProps[12], sProps[13], sProps[14], sProps[15]);\r\n this.matrix.transform(pProps[0], pProps[1], pProps[2], pProps[3], pProps[4], pProps[5], pProps[6], pProps[7], pProps[8], pProps[9], pProps[10], pProps[11], pProps[12], pProps[13], pProps[14], pProps[15]);\r\n\r\n for (j = 0; j < jLen; j += 1) {\r\n itemsTransform[j] = this.matrix.props[j];\r\n }\r\n this.matrix.reset();\r\n } else {\r\n this.matrix.reset();\r\n for (j = 0; j < jLen; j += 1) {\r\n itemsTransform[j] = this.matrix.props[j];\r\n }\r\n }\r\n iteration += 1;\r\n cont -= 1;\r\n i += dir;\r\n }\r\n } else {\r\n cont = this._currentCopies;\r\n i = 0;\r\n dir = 1;\r\n while (cont) {\r\n items = this.elemsData[i].it;\r\n itemsTransform = items[items.length - 1].transform.mProps.v.props;\r\n items[items.length - 1].transform.mProps._mdf = false;\r\n items[items.length - 1].transform.op._mdf = false;\r\n cont -= 1;\r\n i += dir;\r\n }\r\n }\r\n return hasReloaded;\r\n};\r\n\r\nRepeaterModifier.prototype.addShape = function () {};\r\n\r\nShapeModifiers.registerModifier('rp', RepeaterModifier);\r\n\r\n/* global createSizedArray, shapePool */\r\n\r\nfunction ShapeCollection() {\r\n this._length = 0;\r\n this._maxLength = 4;\r\n this.shapes = createSizedArray(this._maxLength);\r\n}\r\n\r\nShapeCollection.prototype.addShape = function (shapeData) {\r\n if (this._length === this._maxLength) {\r\n this.shapes = this.shapes.concat(createSizedArray(this._maxLength));\r\n this._maxLength *= 2;\r\n }\r\n this.shapes[this._length] = shapeData;\r\n this._length += 1;\r\n};\r\n\r\nShapeCollection.prototype.releaseShapes = function () {\r\n var i;\r\n for (i = 0; i < this._length; i += 1) {\r\n shapePool.release(this.shapes[i]);\r\n }\r\n this._length = 0;\r\n};\r\n\r\n/* global createSizedArray, createTypedArray, PropertyFactory, extendPrototype, DynamicPropertyContainer */\r\n\r\nfunction DashProperty(elem, data, renderer, container) {\r\n this.elem = elem;\r\n this.frameId = -1;\r\n this.dataProps = createSizedArray(data.length);\r\n this.renderer = renderer;\r\n this.k = false;\r\n this.dashStr = '';\r\n this.dashArray = createTypedArray('float32', data.length ? data.length - 1 : 0);\r\n this.dashoffset = createTypedArray('float32', 1);\r\n this.initDynamicPropertyContainer(container);\r\n var i;\r\n var len = data.length || 0;\r\n var prop;\r\n for (i = 0; i < len; i += 1) {\r\n prop = PropertyFactory.getProp(elem, data[i].v, 0, 0, this);\r\n this.k = prop.k || this.k;\r\n this.dataProps[i] = { n: data[i].n, p: prop };\r\n }\r\n if (!this.k) {\r\n this.getValue(true);\r\n }\r\n this._isAnimated = this.k;\r\n}\r\n\r\nDashProperty.prototype.getValue = function (forceRender) {\r\n if (this.elem.globalData.frameId === this.frameId && !forceRender) {\r\n return;\r\n }\r\n this.frameId = this.elem.globalData.frameId;\r\n this.iterateDynamicProperties();\r\n this._mdf = this._mdf || forceRender;\r\n if (this._mdf) {\r\n var i = 0;\r\n var len = this.dataProps.length;\r\n if (this.renderer === 'svg') {\r\n this.dashStr = '';\r\n }\r\n for (i = 0; i < len; i += 1) {\r\n if (this.dataProps[i].n !== 'o') {\r\n if (this.renderer === 'svg') {\r\n this.dashStr += ' ' + this.dataProps[i].p.v;\r\n } else {\r\n this.dashArray[i] = this.dataProps[i].p.v;\r\n }\r\n } else {\r\n this.dashoffset[0] = this.dataProps[i].p.v;\r\n }\r\n }\r\n }\r\n};\r\nextendPrototype([DynamicPropertyContainer], DashProperty);\r\n\r\n/* global createTypedArray, PropertyFactory, extendPrototype, DynamicPropertyContainer */\r\nfunction GradientProperty(elem, data, container) {\r\n this.data = data;\r\n this.c = createTypedArray('uint8c', data.p * 4);\r\n var cLength = data.k.k[0].s ? (data.k.k[0].s.length - data.p * 4) : data.k.k.length - data.p * 4;\r\n this.o = createTypedArray('float32', cLength);\r\n this._cmdf = false;\r\n this._omdf = false;\r\n this._collapsable = this.checkCollapsable();\r\n this._hasOpacity = cLength;\r\n this.initDynamicPropertyContainer(container);\r\n this.prop = PropertyFactory.getProp(elem, data.k, 1, null, this);\r\n this.k = this.prop.k;\r\n this.getValue(true);\r\n}\r\n\r\nGradientProperty.prototype.comparePoints = function (values, points) {\r\n var i = 0;\r\n var len = this.o.length / 2;\r\n var diff;\r\n while (i < len) {\r\n diff = Math.abs(values[i * 4] - values[points * 4 + i * 2]);\r\n if (diff > 0.01) {\r\n return false;\r\n }\r\n i += 1;\r\n }\r\n return true;\r\n};\r\n\r\nGradientProperty.prototype.checkCollapsable = function () {\r\n if (this.o.length / 2 !== this.c.length / 4) {\r\n return false;\r\n }\r\n if (this.data.k.k[0].s) {\r\n var i = 0;\r\n var len = this.data.k.k.length;\r\n while (i < len) {\r\n if (!this.comparePoints(this.data.k.k[i].s, this.data.p)) {\r\n return false;\r\n }\r\n i += 1;\r\n }\r\n } else if (!this.comparePoints(this.data.k.k, this.data.p)) {\r\n return false;\r\n }\r\n return true;\r\n};\r\n\r\nGradientProperty.prototype.getValue = function (forceRender) {\r\n this.prop.getValue();\r\n this._mdf = false;\r\n this._cmdf = false;\r\n this._omdf = false;\r\n if (this.prop._mdf || forceRender) {\r\n var i;\r\n var len = this.data.p * 4;\r\n var mult;\r\n var val;\r\n for (i = 0; i < len; i += 1) {\r\n mult = i % 4 === 0 ? 100 : 255;\r\n val = Math.round(this.prop.v[i] * mult);\r\n if (this.c[i] !== val) {\r\n this.c[i] = val;\r\n this._cmdf = !forceRender;\r\n }\r\n }\r\n if (this.o.length) {\r\n len = this.prop.v.length;\r\n for (i = this.data.p * 4; i < len; i += 1) {\r\n mult = i % 2 === 0 ? 100 : 1;\r\n val = i % 2 === 0 ? Math.round(this.prop.v[i] * 100) : this.prop.v[i];\r\n if (this.o[i - this.data.p * 4] !== val) {\r\n this.o[i - this.data.p * 4] = val;\r\n this._omdf = !forceRender;\r\n }\r\n }\r\n }\r\n this._mdf = !forceRender;\r\n }\r\n};\r\n\r\nextendPrototype([DynamicPropertyContainer], GradientProperty);\r\n\r\n/* exported buildShapeString */\r\n\r\nvar buildShapeString = function (pathNodes, length, closed, mat) {\r\n if (length === 0) {\r\n return '';\r\n }\r\n var _o = pathNodes.o;\r\n var _i = pathNodes.i;\r\n var _v = pathNodes.v;\r\n var i;\r\n var shapeString = ' M' + mat.applyToPointStringified(_v[0][0], _v[0][1]);\r\n for (i = 1; i < length; i += 1) {\r\n shapeString += ' C' + mat.applyToPointStringified(_o[i - 1][0], _o[i - 1][1]) + ' ' + mat.applyToPointStringified(_i[i][0], _i[i][1]) + ' ' + mat.applyToPointStringified(_v[i][0], _v[i][1]);\r\n }\r\n if (closed && length) {\r\n shapeString += ' C' + mat.applyToPointStringified(_o[i - 1][0], _o[i - 1][1]) + ' ' + mat.applyToPointStringified(_i[0][0], _i[0][1]) + ' ' + mat.applyToPointStringified(_v[0][0], _v[0][1]);\r\n shapeString += 'z';\r\n }\r\n return shapeString;\r\n};\r\n\r\n/* global Howl */\r\n/* exported audioControllerFactory */\r\n\r\nvar audioControllerFactory = (function () {\r\n function AudioController(audioFactory) {\r\n this.audios = [];\r\n this.audioFactory = audioFactory;\r\n this._volume = 1;\r\n this._isMuted = false;\r\n }\r\n\r\n AudioController.prototype = {\r\n addAudio: function (audio) {\r\n this.audios.push(audio);\r\n },\r\n pause: function () {\r\n var i;\r\n var len = this.audios.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.audios[i].pause();\r\n }\r\n },\r\n resume: function () {\r\n var i;\r\n var len = this.audios.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.audios[i].resume();\r\n }\r\n },\r\n setRate: function (rateValue) {\r\n var i;\r\n var len = this.audios.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.audios[i].setRate(rateValue);\r\n }\r\n },\r\n createAudio: function (assetPath) {\r\n if (this.audioFactory) {\r\n return this.audioFactory(assetPath);\r\n } if (Howl) {\r\n return new Howl({\r\n src: [assetPath],\r\n });\r\n }\r\n return {\r\n isPlaying: false,\r\n play: function () { this.isPlaying = true; },\r\n seek: function () { this.isPlaying = false; },\r\n playing: function () {},\r\n rate: function () {},\r\n setVolume: function () {},\r\n };\r\n },\r\n setAudioFactory: function (audioFactory) {\r\n this.audioFactory = audioFactory;\r\n },\r\n setVolume: function (value) {\r\n this._volume = value;\r\n this._updateVolume();\r\n },\r\n mute: function () {\r\n this._isMuted = true;\r\n this._updateVolume();\r\n },\r\n unmute: function () {\r\n this._isMuted = false;\r\n this._updateVolume();\r\n },\r\n getVolume: function () {\r\n return this._volume;\r\n },\r\n _updateVolume: function () {\r\n var i;\r\n var len = this.audios.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.audios[i].volume(this._volume * (this._isMuted ? 0 : 1));\r\n }\r\n },\r\n };\r\n\r\n return function () {\r\n return new AudioController();\r\n };\r\n}());\r\n\r\n/* global createTag, createNS, isSafari, assetLoader */\r\n/* exported ImagePreloader */\r\n\r\nvar ImagePreloader = (function () {\r\n var proxyImage = (function () {\r\n var canvas = createTag('canvas');\r\n canvas.width = 1;\r\n canvas.height = 1;\r\n var ctx = canvas.getContext('2d');\r\n ctx.fillStyle = 'rgba(0,0,0,0)';\r\n ctx.fillRect(0, 0, 1, 1);\r\n return canvas;\r\n }());\r\n\r\n function imageLoaded() {\r\n this.loadedAssets += 1;\r\n if (this.loadedAssets === this.totalImages && this.loadedFootagesCount === this.totalFootages) {\r\n if (this.imagesLoadedCb) {\r\n this.imagesLoadedCb(null);\r\n }\r\n }\r\n }\r\n function footageLoaded() {\r\n this.loadedFootagesCount += 1;\r\n if (this.loadedAssets === this.totalImages && this.loadedFootagesCount === this.totalFootages) {\r\n if (this.imagesLoadedCb) {\r\n this.imagesLoadedCb(null);\r\n }\r\n }\r\n }\r\n\r\n function getAssetsPath(assetData, assetsPath, originalPath) {\r\n var path = '';\r\n if (assetData.e) {\r\n path = assetData.p;\r\n } else if (assetsPath) {\r\n var imagePath = assetData.p;\r\n if (imagePath.indexOf('images/') !== -1) {\r\n imagePath = imagePath.split('/')[1];\r\n }\r\n path = assetsPath + imagePath;\r\n } else {\r\n path = originalPath;\r\n path += assetData.u ? assetData.u : '';\r\n path += assetData.p;\r\n }\r\n return path;\r\n }\r\n\r\n function testImageLoaded(img) {\r\n var _count = 0;\r\n var intervalId = setInterval(function () {\r\n var box = img.getBBox();\r\n if (box.width || _count > 500) {\r\n this._imageLoaded();\r\n clearInterval(intervalId);\r\n }\r\n _count += 1;\r\n }.bind(this), 50);\r\n }\r\n\r\n function createImageData(assetData) {\r\n var path = getAssetsPath(assetData, this.assetsPath, this.path);\r\n var img = createNS('image');\r\n if (isSafari) {\r\n this.testImageLoaded(img);\r\n } else {\r\n img.addEventListener('load', this._imageLoaded, false);\r\n }\r\n img.addEventListener('error', function () {\r\n ob.img = proxyImage;\r\n this._imageLoaded();\r\n }.bind(this), false);\r\n img.setAttributeNS('http://www.w3.org/1999/xlink', 'href', path);\r\n if (this._elementHelper.append) {\r\n this._elementHelper.append(img);\r\n } else {\r\n this._elementHelper.appendChild(img);\r\n }\r\n var ob = {\r\n img: img,\r\n assetData: assetData,\r\n };\r\n return ob;\r\n }\r\n\r\n function createImgData(assetData) {\r\n var path = getAssetsPath(assetData, this.assetsPath, this.path);\r\n var img = createTag('img');\r\n img.crossOrigin = 'anonymous';\r\n img.addEventListener('load', this._imageLoaded, false);\r\n img.addEventListener('error', function () {\r\n ob.img = proxyImage;\r\n this._imageLoaded();\r\n }.bind(this), false);\r\n img.src = path;\r\n var ob = {\r\n img: img,\r\n assetData: assetData,\r\n };\r\n return ob;\r\n }\r\n\r\n function createFootageData(data) {\r\n var ob = {\r\n assetData: data,\r\n };\r\n var path = getAssetsPath(data, this.assetsPath, this.path);\r\n assetLoader.load(path, function (footageData) {\r\n ob.img = footageData;\r\n this._footageLoaded();\r\n }.bind(this), function () {\r\n ob.img = {};\r\n this._footageLoaded();\r\n }.bind(this));\r\n return ob;\r\n }\r\n\r\n function loadAssets(assets, cb) {\r\n this.imagesLoadedCb = cb;\r\n var i;\r\n var len = assets.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (!assets[i].layers) {\r\n if (!assets[i].t) {\r\n this.totalImages += 1;\r\n this.images.push(this._createImageData(assets[i]));\r\n } else if (assets[i].t === 3) {\r\n this.totalFootages += 1;\r\n this.images.push(this.createFootageData(assets[i]));\r\n }\r\n }\r\n }\r\n }\r\n\r\n function setPath(path) {\r\n this.path = path || '';\r\n }\r\n\r\n function setAssetsPath(path) {\r\n this.assetsPath = path || '';\r\n }\r\n\r\n function getAsset(assetData) {\r\n var i = 0;\r\n var len = this.images.length;\r\n while (i < len) {\r\n if (this.images[i].assetData === assetData) {\r\n return this.images[i].img;\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n }\r\n\r\n function destroy() {\r\n this.imagesLoadedCb = null;\r\n this.images.length = 0;\r\n }\r\n\r\n function loadedImages() {\r\n return this.totalImages === this.loadedAssets;\r\n }\r\n\r\n function loadedFootages() {\r\n return this.totalFootages === this.loadedFootagesCount;\r\n }\r\n\r\n function setCacheType(type, elementHelper) {\r\n if (type === 'svg') {\r\n this._elementHelper = elementHelper;\r\n this._createImageData = this.createImageData.bind(this);\r\n } else {\r\n this._createImageData = this.createImgData.bind(this);\r\n }\r\n }\r\n\r\n function ImagePreloaderFactory() {\r\n this._imageLoaded = imageLoaded.bind(this);\r\n this._footageLoaded = footageLoaded.bind(this);\r\n this.testImageLoaded = testImageLoaded.bind(this);\r\n this.createFootageData = createFootageData.bind(this);\r\n this.assetsPath = '';\r\n this.path = '';\r\n this.totalImages = 0;\r\n this.totalFootages = 0;\r\n this.loadedAssets = 0;\r\n this.loadedFootagesCount = 0;\r\n this.imagesLoadedCb = null;\r\n this.images = [];\r\n }\r\n\r\n ImagePreloaderFactory.prototype = {\r\n loadAssets: loadAssets,\r\n setAssetsPath: setAssetsPath,\r\n setPath: setPath,\r\n loadedImages: loadedImages,\r\n loadedFootages: loadedFootages,\r\n destroy: destroy,\r\n getAsset: getAsset,\r\n createImgData: createImgData,\r\n createImageData: createImageData,\r\n imageLoaded: imageLoaded,\r\n footageLoaded: footageLoaded,\r\n setCacheType: setCacheType,\r\n };\r\n\r\n return ImagePreloaderFactory;\r\n}());\r\n\r\n/* exported featureSupport */\r\n\r\nvar featureSupport = (function () {\r\n var ob = {\r\n maskType: true,\r\n };\r\n if (/MSIE 10/i.test(navigator.userAgent) || /MSIE 9/i.test(navigator.userAgent) || /rv:11.0/i.test(navigator.userAgent) || /Edge\\/\\d./i.test(navigator.userAgent)) {\r\n ob.maskType = false;\r\n }\r\n return ob;\r\n}());\r\n\r\n/* global createNS */\r\n/* exported filtersFactory */\r\n\r\nvar filtersFactory = (function () {\r\n var ob = {};\r\n ob.createFilter = createFilter;\r\n ob.createAlphaToLuminanceFilter = createAlphaToLuminanceFilter;\r\n\r\n function createFilter(filId, skipCoordinates) {\r\n var fil = createNS('filter');\r\n fil.setAttribute('id', filId);\r\n if (skipCoordinates !== true) {\r\n fil.setAttribute('filterUnits', 'objectBoundingBox');\r\n fil.setAttribute('x', '0%');\r\n fil.setAttribute('y', '0%');\r\n fil.setAttribute('width', '100%');\r\n fil.setAttribute('height', '100%');\r\n }\r\n return fil;\r\n }\r\n\r\n function createAlphaToLuminanceFilter() {\r\n var feColorMatrix = createNS('feColorMatrix');\r\n feColorMatrix.setAttribute('type', 'matrix');\r\n feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');\r\n feColorMatrix.setAttribute('values', '0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1');\r\n return feColorMatrix;\r\n }\r\n\r\n return ob;\r\n}());\r\n\r\n/* exported assetLoader */\r\n\r\nvar assetLoader = (function () {\r\n function formatResponse(xhr) {\r\n if (xhr.response && typeof xhr.response === 'object') {\r\n return xhr.response;\r\n } if (xhr.response && typeof xhr.response === 'string') {\r\n return JSON.parse(xhr.response);\r\n } if (xhr.responseText) {\r\n return JSON.parse(xhr.responseText);\r\n }\r\n return null;\r\n }\r\n\r\n function loadAsset(path, callback, errorCallback) {\r\n var response;\r\n var xhr = new XMLHttpRequest();\r\n // set responseType after calling open or IE will break.\r\n try {\r\n // This crashes on Android WebView prior to KitKat\r\n xhr.responseType = 'json';\r\n } catch (err) {} // eslint-disable-line no-empty\r\n xhr.onreadystatechange = function () {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status === 200) {\r\n response = formatResponse(xhr);\r\n callback(response);\r\n } else {\r\n try {\r\n response = formatResponse(xhr);\r\n callback(response);\r\n } catch (err) {\r\n if (errorCallback) {\r\n errorCallback(err);\r\n }\r\n }\r\n }\r\n }\r\n };\r\n xhr.open('GET', path, true);\r\n xhr.send();\r\n }\r\n return {\r\n load: loadAsset,\r\n };\r\n}());\r\n\r\n/* global createSizedArray, PropertyFactory, TextAnimatorDataProperty, bez, addHueToRGB,\r\n addSaturationToRGB, addBrightnessToRGB, LetterProps, Matrix, extendPrototype, DynamicPropertyContainer */\r\n\r\nfunction TextAnimatorProperty(textData, renderType, elem) {\r\n this._isFirstFrame = true;\r\n this._hasMaskedPath = false;\r\n this._frameId = -1;\r\n this._textData = textData;\r\n this._renderType = renderType;\r\n this._elem = elem;\r\n this._animatorsData = createSizedArray(this._textData.a.length);\r\n this._pathData = {};\r\n this._moreOptions = {\r\n alignment: {},\r\n };\r\n this.renderedLetters = [];\r\n this.lettersChangedFlag = false;\r\n this.initDynamicPropertyContainer(elem);\r\n}\r\n\r\nTextAnimatorProperty.prototype.searchProperties = function () {\r\n var i;\r\n var len = this._textData.a.length;\r\n var animatorProps;\r\n var getProp = PropertyFactory.getProp;\r\n for (i = 0; i < len; i += 1) {\r\n animatorProps = this._textData.a[i];\r\n this._animatorsData[i] = new TextAnimatorDataProperty(this._elem, animatorProps, this);\r\n }\r\n if (this._textData.p && 'm' in this._textData.p) {\r\n this._pathData = {\r\n f: getProp(this._elem, this._textData.p.f, 0, 0, this),\r\n l: getProp(this._elem, this._textData.p.l, 0, 0, this),\r\n r: this._textData.p.r,\r\n m: this._elem.maskManager.getMaskProperty(this._textData.p.m),\r\n };\r\n this._hasMaskedPath = true;\r\n } else {\r\n this._hasMaskedPath = false;\r\n }\r\n this._moreOptions.alignment = getProp(this._elem, this._textData.m.a, 1, 0, this);\r\n};\r\n\r\nTextAnimatorProperty.prototype.getMeasures = function (documentData, lettersChangedFlag) {\r\n this.lettersChangedFlag = lettersChangedFlag;\r\n if (!this._mdf && !this._isFirstFrame && !lettersChangedFlag && (!this._hasMaskedPath || !this._pathData.m._mdf)) {\r\n return;\r\n }\r\n this._isFirstFrame = false;\r\n var alignment = this._moreOptions.alignment.v;\r\n var animators = this._animatorsData;\r\n var textData = this._textData;\r\n var matrixHelper = this.mHelper;\r\n var renderType = this._renderType;\r\n var renderedLettersCount = this.renderedLetters.length;\r\n var xPos;\r\n var yPos;\r\n var i;\r\n var len;\r\n var letters = documentData.l;\r\n var pathInfo;\r\n var currentLength;\r\n var currentPoint;\r\n var segmentLength;\r\n var flag;\r\n var pointInd;\r\n var segmentInd;\r\n var prevPoint;\r\n var points;\r\n var segments;\r\n var partialLength;\r\n var totalLength;\r\n var perc;\r\n var tanAngle;\r\n var mask;\r\n if (this._hasMaskedPath) {\r\n mask = this._pathData.m;\r\n if (!this._pathData.n || this._pathData._mdf) {\r\n var paths = mask.v;\r\n if (this._pathData.r) {\r\n paths = paths.reverse();\r\n }\r\n // TODO: release bezier data cached from previous pathInfo: this._pathData.pi\r\n pathInfo = {\r\n tLength: 0,\r\n segments: [],\r\n };\r\n len = paths._length - 1;\r\n var bezierData;\r\n totalLength = 0;\r\n for (i = 0; i < len; i += 1) {\r\n bezierData = bez.buildBezierData(paths.v[i],\r\n paths.v[i + 1],\r\n [paths.o[i][0] - paths.v[i][0], paths.o[i][1] - paths.v[i][1]],\r\n [paths.i[i + 1][0] - paths.v[i + 1][0], paths.i[i + 1][1] - paths.v[i + 1][1]]);\r\n pathInfo.tLength += bezierData.segmentLength;\r\n pathInfo.segments.push(bezierData);\r\n totalLength += bezierData.segmentLength;\r\n }\r\n i = len;\r\n if (mask.v.c) {\r\n bezierData = bez.buildBezierData(paths.v[i],\r\n paths.v[0],\r\n [paths.o[i][0] - paths.v[i][0], paths.o[i][1] - paths.v[i][1]],\r\n [paths.i[0][0] - paths.v[0][0], paths.i[0][1] - paths.v[0][1]]);\r\n pathInfo.tLength += bezierData.segmentLength;\r\n pathInfo.segments.push(bezierData);\r\n totalLength += bezierData.segmentLength;\r\n }\r\n this._pathData.pi = pathInfo;\r\n }\r\n pathInfo = this._pathData.pi;\r\n\r\n currentLength = this._pathData.f.v;\r\n segmentInd = 0;\r\n pointInd = 1;\r\n segmentLength = 0;\r\n flag = true;\r\n segments = pathInfo.segments;\r\n if (currentLength < 0 && mask.v.c) {\r\n if (pathInfo.tLength < Math.abs(currentLength)) {\r\n currentLength = -Math.abs(currentLength) % pathInfo.tLength;\r\n }\r\n segmentInd = segments.length - 1;\r\n points = segments[segmentInd].points;\r\n pointInd = points.length - 1;\r\n while (currentLength < 0) {\r\n currentLength += points[pointInd].partialLength;\r\n pointInd -= 1;\r\n if (pointInd < 0) {\r\n segmentInd -= 1;\r\n points = segments[segmentInd].points;\r\n pointInd = points.length - 1;\r\n }\r\n }\r\n }\r\n points = segments[segmentInd].points;\r\n prevPoint = points[pointInd - 1];\r\n currentPoint = points[pointInd];\r\n partialLength = currentPoint.partialLength;\r\n }\r\n\r\n len = letters.length;\r\n xPos = 0;\r\n yPos = 0;\r\n var yOff = documentData.finalSize * 1.2 * 0.714;\r\n var firstLine = true;\r\n var animatorProps;\r\n var animatorSelector;\r\n var j;\r\n var jLen;\r\n var letterValue;\r\n\r\n jLen = animators.length;\r\n\r\n var mult;\r\n var ind = -1;\r\n var offf;\r\n var xPathPos;\r\n var yPathPos;\r\n var initPathPos = currentLength;\r\n var initSegmentInd = segmentInd;\r\n var initPointInd = pointInd;\r\n var currentLine = -1;\r\n var elemOpacity;\r\n var sc;\r\n var sw;\r\n var fc;\r\n var k;\r\n var letterSw;\r\n var letterSc;\r\n var letterFc;\r\n var letterM = '';\r\n var letterP = this.defaultPropsArray;\r\n var letterO;\r\n\r\n //\r\n if (documentData.j === 2 || documentData.j === 1) {\r\n var animatorJustifyOffset = 0;\r\n var animatorFirstCharOffset = 0;\r\n var justifyOffsetMult = documentData.j === 2 ? -0.5 : -1;\r\n var lastIndex = 0;\r\n var isNewLine = true;\r\n\r\n for (i = 0; i < len; i += 1) {\r\n if (letters[i].n) {\r\n if (animatorJustifyOffset) {\r\n animatorJustifyOffset += animatorFirstCharOffset;\r\n }\r\n while (lastIndex < i) {\r\n letters[lastIndex].animatorJustifyOffset = animatorJustifyOffset;\r\n lastIndex += 1;\r\n }\r\n animatorJustifyOffset = 0;\r\n isNewLine = true;\r\n } else {\r\n for (j = 0; j < jLen; j += 1) {\r\n animatorProps = animators[j].a;\r\n if (animatorProps.t.propType) {\r\n if (isNewLine && documentData.j === 2) {\r\n animatorFirstCharOffset += animatorProps.t.v * justifyOffsetMult;\r\n }\r\n animatorSelector = animators[j].s;\r\n mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\r\n if (mult.length) {\r\n animatorJustifyOffset += animatorProps.t.v * mult[0] * justifyOffsetMult;\r\n } else {\r\n animatorJustifyOffset += animatorProps.t.v * mult * justifyOffsetMult;\r\n }\r\n }\r\n }\r\n isNewLine = false;\r\n }\r\n }\r\n if (animatorJustifyOffset) {\r\n animatorJustifyOffset += animatorFirstCharOffset;\r\n }\r\n while (lastIndex < i) {\r\n letters[lastIndex].animatorJustifyOffset = animatorJustifyOffset;\r\n lastIndex += 1;\r\n }\r\n }\r\n //\r\n\r\n for (i = 0; i < len; i += 1) {\r\n matrixHelper.reset();\r\n elemOpacity = 1;\r\n if (letters[i].n) {\r\n xPos = 0;\r\n yPos += documentData.yOffset;\r\n yPos += firstLine ? 1 : 0;\r\n currentLength = initPathPos;\r\n firstLine = false;\r\n if (this._hasMaskedPath) {\r\n segmentInd = initSegmentInd;\r\n pointInd = initPointInd;\r\n points = segments[segmentInd].points;\r\n prevPoint = points[pointInd - 1];\r\n currentPoint = points[pointInd];\r\n partialLength = currentPoint.partialLength;\r\n segmentLength = 0;\r\n }\r\n letterM = '';\r\n letterFc = '';\r\n letterSw = '';\r\n letterO = '';\r\n letterP = this.defaultPropsArray;\r\n } else {\r\n if (this._hasMaskedPath) {\r\n if (currentLine !== letters[i].line) {\r\n switch (documentData.j) {\r\n case 1:\r\n currentLength += totalLength - documentData.lineWidths[letters[i].line];\r\n break;\r\n case 2:\r\n currentLength += (totalLength - documentData.lineWidths[letters[i].line]) / 2;\r\n break;\r\n default:\r\n break;\r\n }\r\n currentLine = letters[i].line;\r\n }\r\n if (ind !== letters[i].ind) {\r\n if (letters[ind]) {\r\n currentLength += letters[ind].extra;\r\n }\r\n currentLength += letters[i].an / 2;\r\n ind = letters[i].ind;\r\n }\r\n currentLength += (alignment[0] * letters[i].an) * 0.005;\r\n var animatorOffset = 0;\r\n for (j = 0; j < jLen; j += 1) {\r\n animatorProps = animators[j].a;\r\n if (animatorProps.p.propType) {\r\n animatorSelector = animators[j].s;\r\n mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\r\n if (mult.length) {\r\n animatorOffset += animatorProps.p.v[0] * mult[0];\r\n } else {\r\n animatorOffset += animatorProps.p.v[0] * mult;\r\n }\r\n }\r\n if (animatorProps.a.propType) {\r\n animatorSelector = animators[j].s;\r\n mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\r\n if (mult.length) {\r\n animatorOffset += animatorProps.a.v[0] * mult[0];\r\n } else {\r\n animatorOffset += animatorProps.a.v[0] * mult;\r\n }\r\n }\r\n }\r\n flag = true;\r\n while (flag) {\r\n if (segmentLength + partialLength >= currentLength + animatorOffset || !points) {\r\n perc = (currentLength + animatorOffset - segmentLength) / currentPoint.partialLength;\r\n xPathPos = prevPoint.point[0] + (currentPoint.point[0] - prevPoint.point[0]) * perc;\r\n yPathPos = prevPoint.point[1] + (currentPoint.point[1] - prevPoint.point[1]) * perc;\r\n matrixHelper.translate((-alignment[0] * letters[i].an) * 0.005, -(alignment[1] * yOff) * 0.01);\r\n flag = false;\r\n } else if (points) {\r\n segmentLength += currentPoint.partialLength;\r\n pointInd += 1;\r\n if (pointInd >= points.length) {\r\n pointInd = 0;\r\n segmentInd += 1;\r\n if (!segments[segmentInd]) {\r\n if (mask.v.c) {\r\n pointInd = 0;\r\n segmentInd = 0;\r\n points = segments[segmentInd].points;\r\n } else {\r\n segmentLength -= currentPoint.partialLength;\r\n points = null;\r\n }\r\n } else {\r\n points = segments[segmentInd].points;\r\n }\r\n }\r\n if (points) {\r\n prevPoint = currentPoint;\r\n currentPoint = points[pointInd];\r\n partialLength = currentPoint.partialLength;\r\n }\r\n }\r\n }\r\n offf = letters[i].an / 2 - letters[i].add;\r\n matrixHelper.translate(-offf, 0, 0);\r\n } else {\r\n offf = letters[i].an / 2 - letters[i].add;\r\n matrixHelper.translate(-offf, 0, 0);\r\n\r\n // Grouping alignment\r\n matrixHelper.translate((-alignment[0] * letters[i].an) * 0.005, (-alignment[1] * yOff) * 0.01, 0);\r\n }\r\n\r\n for (j = 0; j < jLen; j += 1) {\r\n animatorProps = animators[j].a;\r\n if (animatorProps.t.propType) {\r\n animatorSelector = animators[j].s;\r\n mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\r\n // This condition is to prevent applying tracking to first character in each line. Might be better to use a boolean \"isNewLine\"\r\n if (xPos !== 0 || documentData.j !== 0) {\r\n if (this._hasMaskedPath) {\r\n if (mult.length) {\r\n currentLength += animatorProps.t.v * mult[0];\r\n } else {\r\n currentLength += animatorProps.t.v * mult;\r\n }\r\n } else if (mult.length) {\r\n xPos += animatorProps.t.v * mult[0];\r\n } else {\r\n xPos += animatorProps.t.v * mult;\r\n }\r\n }\r\n }\r\n }\r\n if (documentData.strokeWidthAnim) {\r\n sw = documentData.sw || 0;\r\n }\r\n if (documentData.strokeColorAnim) {\r\n if (documentData.sc) {\r\n sc = [documentData.sc[0], documentData.sc[1], documentData.sc[2]];\r\n } else {\r\n sc = [0, 0, 0];\r\n }\r\n }\r\n if (documentData.fillColorAnim && documentData.fc) {\r\n fc = [documentData.fc[0], documentData.fc[1], documentData.fc[2]];\r\n }\r\n for (j = 0; j < jLen; j += 1) {\r\n animatorProps = animators[j].a;\r\n if (animatorProps.a.propType) {\r\n animatorSelector = animators[j].s;\r\n mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\r\n\r\n if (mult.length) {\r\n matrixHelper.translate(-animatorProps.a.v[0] * mult[0], -animatorProps.a.v[1] * mult[1], animatorProps.a.v[2] * mult[2]);\r\n } else {\r\n matrixHelper.translate(-animatorProps.a.v[0] * mult, -animatorProps.a.v[1] * mult, animatorProps.a.v[2] * mult);\r\n }\r\n }\r\n }\r\n for (j = 0; j < jLen; j += 1) {\r\n animatorProps = animators[j].a;\r\n if (animatorProps.s.propType) {\r\n animatorSelector = animators[j].s;\r\n mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\r\n if (mult.length) {\r\n matrixHelper.scale(1 + ((animatorProps.s.v[0] - 1) * mult[0]), 1 + ((animatorProps.s.v[1] - 1) * mult[1]), 1);\r\n } else {\r\n matrixHelper.scale(1 + ((animatorProps.s.v[0] - 1) * mult), 1 + ((animatorProps.s.v[1] - 1) * mult), 1);\r\n }\r\n }\r\n }\r\n for (j = 0; j < jLen; j += 1) {\r\n animatorProps = animators[j].a;\r\n animatorSelector = animators[j].s;\r\n mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\r\n if (animatorProps.sk.propType) {\r\n if (mult.length) {\r\n matrixHelper.skewFromAxis(-animatorProps.sk.v * mult[0], animatorProps.sa.v * mult[1]);\r\n } else {\r\n matrixHelper.skewFromAxis(-animatorProps.sk.v * mult, animatorProps.sa.v * mult);\r\n }\r\n }\r\n if (animatorProps.r.propType) {\r\n if (mult.length) {\r\n matrixHelper.rotateZ(-animatorProps.r.v * mult[2]);\r\n } else {\r\n matrixHelper.rotateZ(-animatorProps.r.v * mult);\r\n }\r\n }\r\n if (animatorProps.ry.propType) {\r\n if (mult.length) {\r\n matrixHelper.rotateY(animatorProps.ry.v * mult[1]);\r\n } else {\r\n matrixHelper.rotateY(animatorProps.ry.v * mult);\r\n }\r\n }\r\n if (animatorProps.rx.propType) {\r\n if (mult.length) {\r\n matrixHelper.rotateX(animatorProps.rx.v * mult[0]);\r\n } else {\r\n matrixHelper.rotateX(animatorProps.rx.v * mult);\r\n }\r\n }\r\n if (animatorProps.o.propType) {\r\n if (mult.length) {\r\n elemOpacity += ((animatorProps.o.v) * mult[0] - elemOpacity) * mult[0];\r\n } else {\r\n elemOpacity += ((animatorProps.o.v) * mult - elemOpacity) * mult;\r\n }\r\n }\r\n if (documentData.strokeWidthAnim && animatorProps.sw.propType) {\r\n if (mult.length) {\r\n sw += animatorProps.sw.v * mult[0];\r\n } else {\r\n sw += animatorProps.sw.v * mult;\r\n }\r\n }\r\n if (documentData.strokeColorAnim && animatorProps.sc.propType) {\r\n for (k = 0; k < 3; k += 1) {\r\n if (mult.length) {\r\n sc[k] += (animatorProps.sc.v[k] - sc[k]) * mult[0];\r\n } else {\r\n sc[k] += (animatorProps.sc.v[k] - sc[k]) * mult;\r\n }\r\n }\r\n }\r\n if (documentData.fillColorAnim && documentData.fc) {\r\n if (animatorProps.fc.propType) {\r\n for (k = 0; k < 3; k += 1) {\r\n if (mult.length) {\r\n fc[k] += (animatorProps.fc.v[k] - fc[k]) * mult[0];\r\n } else {\r\n fc[k] += (animatorProps.fc.v[k] - fc[k]) * mult;\r\n }\r\n }\r\n }\r\n if (animatorProps.fh.propType) {\r\n if (mult.length) {\r\n fc = addHueToRGB(fc, animatorProps.fh.v * mult[0]);\r\n } else {\r\n fc = addHueToRGB(fc, animatorProps.fh.v * mult);\r\n }\r\n }\r\n if (animatorProps.fs.propType) {\r\n if (mult.length) {\r\n fc = addSaturationToRGB(fc, animatorProps.fs.v * mult[0]);\r\n } else {\r\n fc = addSaturationToRGB(fc, animatorProps.fs.v * mult);\r\n }\r\n }\r\n if (animatorProps.fb.propType) {\r\n if (mult.length) {\r\n fc = addBrightnessToRGB(fc, animatorProps.fb.v * mult[0]);\r\n } else {\r\n fc = addBrightnessToRGB(fc, animatorProps.fb.v * mult);\r\n }\r\n }\r\n }\r\n }\r\n\r\n for (j = 0; j < jLen; j += 1) {\r\n animatorProps = animators[j].a;\r\n\r\n if (animatorProps.p.propType) {\r\n animatorSelector = animators[j].s;\r\n mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\r\n if (this._hasMaskedPath) {\r\n if (mult.length) {\r\n matrixHelper.translate(0, animatorProps.p.v[1] * mult[0], -animatorProps.p.v[2] * mult[1]);\r\n } else {\r\n matrixHelper.translate(0, animatorProps.p.v[1] * mult, -animatorProps.p.v[2] * mult);\r\n }\r\n } else if (mult.length) {\r\n matrixHelper.translate(animatorProps.p.v[0] * mult[0], animatorProps.p.v[1] * mult[1], -animatorProps.p.v[2] * mult[2]);\r\n } else {\r\n matrixHelper.translate(animatorProps.p.v[0] * mult, animatorProps.p.v[1] * mult, -animatorProps.p.v[2] * mult);\r\n }\r\n }\r\n }\r\n if (documentData.strokeWidthAnim) {\r\n letterSw = sw < 0 ? 0 : sw;\r\n }\r\n if (documentData.strokeColorAnim) {\r\n letterSc = 'rgb(' + Math.round(sc[0] * 255) + ',' + Math.round(sc[1] * 255) + ',' + Math.round(sc[2] * 255) + ')';\r\n }\r\n if (documentData.fillColorAnim && documentData.fc) {\r\n letterFc = 'rgb(' + Math.round(fc[0] * 255) + ',' + Math.round(fc[1] * 255) + ',' + Math.round(fc[2] * 255) + ')';\r\n }\r\n\r\n if (this._hasMaskedPath) {\r\n matrixHelper.translate(0, -documentData.ls);\r\n\r\n matrixHelper.translate(0, (alignment[1] * yOff) * 0.01 + yPos, 0);\r\n if (textData.p.p) {\r\n tanAngle = (currentPoint.point[1] - prevPoint.point[1]) / (currentPoint.point[0] - prevPoint.point[0]);\r\n var rot = (Math.atan(tanAngle) * 180) / Math.PI;\r\n if (currentPoint.point[0] < prevPoint.point[0]) {\r\n rot += 180;\r\n }\r\n matrixHelper.rotate((-rot * Math.PI) / 180);\r\n }\r\n matrixHelper.translate(xPathPos, yPathPos, 0);\r\n currentLength -= (alignment[0] * letters[i].an) * 0.005;\r\n if (letters[i + 1] && ind !== letters[i + 1].ind) {\r\n currentLength += letters[i].an / 2;\r\n currentLength += (documentData.tr * 0.001) * documentData.finalSize;\r\n }\r\n } else {\r\n matrixHelper.translate(xPos, yPos, 0);\r\n\r\n if (documentData.ps) {\r\n // matrixHelper.translate(documentData.ps[0],documentData.ps[1],0);\r\n matrixHelper.translate(documentData.ps[0], documentData.ps[1] + documentData.ascent, 0);\r\n }\r\n switch (documentData.j) {\r\n case 1:\r\n matrixHelper.translate(letters[i].animatorJustifyOffset + documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[letters[i].line]), 0, 0);\r\n break;\r\n case 2:\r\n matrixHelper.translate(letters[i].animatorJustifyOffset + documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[letters[i].line]) / 2, 0, 0);\r\n break;\r\n default:\r\n break;\r\n }\r\n matrixHelper.translate(0, -documentData.ls);\r\n matrixHelper.translate(offf, 0, 0);\r\n matrixHelper.translate((alignment[0] * letters[i].an) * 0.005, (alignment[1] * yOff) * 0.01, 0);\r\n xPos += letters[i].l + (documentData.tr * 0.001) * documentData.finalSize;\r\n }\r\n if (renderType === 'html') {\r\n letterM = matrixHelper.toCSS();\r\n } else if (renderType === 'svg') {\r\n letterM = matrixHelper.to2dCSS();\r\n } else {\r\n letterP = [matrixHelper.props[0], matrixHelper.props[1], matrixHelper.props[2], matrixHelper.props[3], matrixHelper.props[4], matrixHelper.props[5], matrixHelper.props[6], matrixHelper.props[7], matrixHelper.props[8], matrixHelper.props[9], matrixHelper.props[10], matrixHelper.props[11], matrixHelper.props[12], matrixHelper.props[13], matrixHelper.props[14], matrixHelper.props[15]];\r\n }\r\n letterO = elemOpacity;\r\n }\r\n\r\n if (renderedLettersCount <= i) {\r\n letterValue = new LetterProps(letterO, letterSw, letterSc, letterFc, letterM, letterP);\r\n this.renderedLetters.push(letterValue);\r\n renderedLettersCount += 1;\r\n this.lettersChangedFlag = true;\r\n } else {\r\n letterValue = this.renderedLetters[i];\r\n this.lettersChangedFlag = letterValue.update(letterO, letterSw, letterSc, letterFc, letterM, letterP) || this.lettersChangedFlag;\r\n }\r\n }\r\n};\r\n\r\nTextAnimatorProperty.prototype.getValue = function () {\r\n if (this._elem.globalData.frameId === this._frameId) {\r\n return;\r\n }\r\n this._frameId = this._elem.globalData.frameId;\r\n this.iterateDynamicProperties();\r\n};\r\n\r\nTextAnimatorProperty.prototype.mHelper = new Matrix();\r\nTextAnimatorProperty.prototype.defaultPropsArray = [];\r\nextendPrototype([DynamicPropertyContainer], TextAnimatorProperty);\r\n\r\n/* global PropertyFactory, degToRads, TextSelectorProp */\r\n/* exported TextAnimatorDataProperty */\r\n\r\nfunction TextAnimatorDataProperty(elem, animatorProps, container) {\r\n var defaultData = { propType: false };\r\n var getProp = PropertyFactory.getProp;\r\n var textAnimatorAnimatables = animatorProps.a;\r\n this.a = {\r\n r: textAnimatorAnimatables.r ? getProp(elem, textAnimatorAnimatables.r, 0, degToRads, container) : defaultData,\r\n rx: textAnimatorAnimatables.rx ? getProp(elem, textAnimatorAnimatables.rx, 0, degToRads, container) : defaultData,\r\n ry: textAnimatorAnimatables.ry ? getProp(elem, textAnimatorAnimatables.ry, 0, degToRads, container) : defaultData,\r\n sk: textAnimatorAnimatables.sk ? getProp(elem, textAnimatorAnimatables.sk, 0, degToRads, container) : defaultData,\r\n sa: textAnimatorAnimatables.sa ? getProp(elem, textAnimatorAnimatables.sa, 0, degToRads, container) : defaultData,\r\n s: textAnimatorAnimatables.s ? getProp(elem, textAnimatorAnimatables.s, 1, 0.01, container) : defaultData,\r\n a: textAnimatorAnimatables.a ? getProp(elem, textAnimatorAnimatables.a, 1, 0, container) : defaultData,\r\n o: textAnimatorAnimatables.o ? getProp(elem, textAnimatorAnimatables.o, 0, 0.01, container) : defaultData,\r\n p: textAnimatorAnimatables.p ? getProp(elem, textAnimatorAnimatables.p, 1, 0, container) : defaultData,\r\n sw: textAnimatorAnimatables.sw ? getProp(elem, textAnimatorAnimatables.sw, 0, 0, container) : defaultData,\r\n sc: textAnimatorAnimatables.sc ? getProp(elem, textAnimatorAnimatables.sc, 1, 0, container) : defaultData,\r\n fc: textAnimatorAnimatables.fc ? getProp(elem, textAnimatorAnimatables.fc, 1, 0, container) : defaultData,\r\n fh: textAnimatorAnimatables.fh ? getProp(elem, textAnimatorAnimatables.fh, 0, 0, container) : defaultData,\r\n fs: textAnimatorAnimatables.fs ? getProp(elem, textAnimatorAnimatables.fs, 0, 0.01, container) : defaultData,\r\n fb: textAnimatorAnimatables.fb ? getProp(elem, textAnimatorAnimatables.fb, 0, 0.01, container) : defaultData,\r\n t: textAnimatorAnimatables.t ? getProp(elem, textAnimatorAnimatables.t, 0, 0, container) : defaultData,\r\n };\r\n\r\n this.s = TextSelectorProp.getTextSelectorProp(elem, animatorProps.s, container);\r\n this.s.t = animatorProps.s.t;\r\n}\r\n\r\nfunction LetterProps(o, sw, sc, fc, m, p) {\r\n this.o = o;\r\n this.sw = sw;\r\n this.sc = sc;\r\n this.fc = fc;\r\n this.m = m;\r\n this.p = p;\r\n this._mdf = {\r\n o: true,\r\n sw: !!sw,\r\n sc: !!sc,\r\n fc: !!fc,\r\n m: true,\r\n p: true,\r\n };\r\n}\r\n\r\nLetterProps.prototype.update = function (o, sw, sc, fc, m, p) {\r\n this._mdf.o = false;\r\n this._mdf.sw = false;\r\n this._mdf.sc = false;\r\n this._mdf.fc = false;\r\n this._mdf.m = false;\r\n this._mdf.p = false;\r\n var updated = false;\r\n\r\n if (this.o !== o) {\r\n this.o = o;\r\n this._mdf.o = true;\r\n updated = true;\r\n }\r\n if (this.sw !== sw) {\r\n this.sw = sw;\r\n this._mdf.sw = true;\r\n updated = true;\r\n }\r\n if (this.sc !== sc) {\r\n this.sc = sc;\r\n this._mdf.sc = true;\r\n updated = true;\r\n }\r\n if (this.fc !== fc) {\r\n this.fc = fc;\r\n this._mdf.fc = true;\r\n updated = true;\r\n }\r\n if (this.m !== m) {\r\n this.m = m;\r\n this._mdf.m = true;\r\n updated = true;\r\n }\r\n if (p.length && (this.p[0] !== p[0] || this.p[1] !== p[1] || this.p[4] !== p[4] || this.p[5] !== p[5] || this.p[12] !== p[12] || this.p[13] !== p[13])) {\r\n this.p = p;\r\n this._mdf.p = true;\r\n updated = true;\r\n }\r\n return updated;\r\n};\r\n\r\n/* global FontManager, initialDefaultFrame, getFontProperties */\r\n/* exported TextProperty */\r\n\r\nfunction TextProperty(elem, data) {\r\n this._frameId = initialDefaultFrame;\r\n this.pv = '';\r\n this.v = '';\r\n this.kf = false;\r\n this._isFirstFrame = true;\r\n this._mdf = false;\r\n this.data = data;\r\n this.elem = elem;\r\n this.comp = this.elem.comp;\r\n this.keysIndex = 0;\r\n this.canResize = false;\r\n this.minimumFontSize = 1;\r\n this.effectsSequence = [];\r\n this.currentData = {\r\n ascent: 0,\r\n boxWidth: this.defaultBoxWidth,\r\n f: '',\r\n fStyle: '',\r\n fWeight: '',\r\n fc: '',\r\n j: '',\r\n justifyOffset: '',\r\n l: [],\r\n lh: 0,\r\n lineWidths: [],\r\n ls: '',\r\n of: '',\r\n s: '',\r\n sc: '',\r\n sw: 0,\r\n t: 0,\r\n tr: 0,\r\n sz: 0,\r\n ps: null,\r\n fillColorAnim: false,\r\n strokeColorAnim: false,\r\n strokeWidthAnim: false,\r\n yOffset: 0,\r\n finalSize: 0,\r\n finalText: [],\r\n finalLineHeight: 0,\r\n __complete: false,\r\n\r\n };\r\n this.copyData(this.currentData, this.data.d.k[0].s);\r\n\r\n if (!this.searchProperty()) {\r\n this.completeTextData(this.currentData);\r\n }\r\n}\r\n\r\nTextProperty.prototype.defaultBoxWidth = [0, 0];\r\n\r\nTextProperty.prototype.copyData = function (obj, data) {\r\n for (var s in data) {\r\n if (Object.prototype.hasOwnProperty.call(data, s)) {\r\n obj[s] = data[s];\r\n }\r\n }\r\n return obj;\r\n};\r\n\r\nTextProperty.prototype.setCurrentData = function (data) {\r\n if (!data.__complete) {\r\n this.completeTextData(data);\r\n }\r\n this.currentData = data;\r\n this.currentData.boxWidth = this.currentData.boxWidth || this.defaultBoxWidth;\r\n this._mdf = true;\r\n};\r\n\r\nTextProperty.prototype.searchProperty = function () {\r\n return this.searchKeyframes();\r\n};\r\n\r\nTextProperty.prototype.searchKeyframes = function () {\r\n this.kf = this.data.d.k.length > 1;\r\n if (this.kf) {\r\n this.addEffect(this.getKeyframeValue.bind(this));\r\n }\r\n return this.kf;\r\n};\r\n\r\nTextProperty.prototype.addEffect = function (effectFunction) {\r\n this.effectsSequence.push(effectFunction);\r\n this.elem.addDynamicProperty(this);\r\n};\r\n\r\nTextProperty.prototype.getValue = function (_finalValue) {\r\n if ((this.elem.globalData.frameId === this.frameId || !this.effectsSequence.length) && !_finalValue) {\r\n return;\r\n }\r\n this.currentData.t = this.data.d.k[this.keysIndex].s.t;\r\n var currentValue = this.currentData;\r\n var currentIndex = this.keysIndex;\r\n if (this.lock) {\r\n this.setCurrentData(this.currentData);\r\n return;\r\n }\r\n this.lock = true;\r\n this._mdf = false;\r\n var i; var\r\n len = this.effectsSequence.length;\r\n var finalValue = _finalValue || this.data.d.k[this.keysIndex].s;\r\n for (i = 0; i < len; i += 1) {\r\n // Checking if index changed to prevent creating a new object every time the expression updates.\r\n if (currentIndex !== this.keysIndex) {\r\n finalValue = this.effectsSequence[i](finalValue, finalValue.t);\r\n } else {\r\n finalValue = this.effectsSequence[i](this.currentData, finalValue.t);\r\n }\r\n }\r\n if (currentValue !== finalValue) {\r\n this.setCurrentData(finalValue);\r\n }\r\n this.v = this.currentData;\r\n this.pv = this.v;\r\n this.lock = false;\r\n this.frameId = this.elem.globalData.frameId;\r\n};\r\n\r\nTextProperty.prototype.getKeyframeValue = function () {\r\n var textKeys = this.data.d.k;\r\n var frameNum = this.elem.comp.renderedFrame;\r\n var i = 0; var\r\n len = textKeys.length;\r\n while (i <= len - 1) {\r\n if (i === len - 1 || textKeys[i + 1].t > frameNum) {\r\n break;\r\n }\r\n i += 1;\r\n }\r\n if (this.keysIndex !== i) {\r\n this.keysIndex = i;\r\n }\r\n return this.data.d.k[this.keysIndex].s;\r\n};\r\n\r\nTextProperty.prototype.buildFinalText = function (text) {\r\n var combinedCharacters = FontManager.getCombinedCharacterCodes();\r\n var charactersArray = [];\r\n var i = 0; var\r\n len = text.length;\r\n var charCode;\r\n while (i < len) {\r\n charCode = text.charCodeAt(i);\r\n if (combinedCharacters.indexOf(charCode) !== -1) {\r\n charactersArray[charactersArray.length - 1] += text.charAt(i);\r\n } else if (charCode >= 0xD800 && charCode <= 0xDBFF) {\r\n charCode = text.charCodeAt(i + 1);\r\n if (charCode >= 0xDC00 && charCode <= 0xDFFF) {\r\n charactersArray.push(text.substr(i, 2));\r\n i += 1;\r\n } else {\r\n charactersArray.push(text.charAt(i));\r\n }\r\n } else {\r\n charactersArray.push(text.charAt(i));\r\n }\r\n i += 1;\r\n }\r\n return charactersArray;\r\n};\r\n\r\nTextProperty.prototype.completeTextData = function (documentData) {\r\n documentData.__complete = true;\r\n var fontManager = this.elem.globalData.fontManager;\r\n var data = this.data;\r\n var letters = [];\r\n var i; var\r\n len;\r\n var newLineFlag; var index = 0; var\r\n val;\r\n var anchorGrouping = data.m.g;\r\n var currentSize = 0; var currentPos = 0; var currentLine = 0; var\r\n lineWidths = [];\r\n var lineWidth = 0;\r\n var maxLineWidth = 0;\r\n var j; var\r\n jLen;\r\n var fontData = fontManager.getFontByName(documentData.f);\r\n var charData; var\r\n cLength = 0;\r\n\r\n var fontProps = getFontProperties(fontData);\r\n documentData.fWeight = fontProps.weight;\r\n documentData.fStyle = fontProps.style;\r\n documentData.finalSize = documentData.s;\r\n documentData.finalText = this.buildFinalText(documentData.t);\r\n len = documentData.finalText.length;\r\n documentData.finalLineHeight = documentData.lh;\r\n var trackingOffset = (documentData.tr / 1000) * documentData.finalSize;\r\n var charCode;\r\n if (documentData.sz) {\r\n var flag = true;\r\n var boxWidth = documentData.sz[0];\r\n var boxHeight = documentData.sz[1];\r\n var currentHeight; var\r\n finalText;\r\n while (flag) {\r\n finalText = this.buildFinalText(documentData.t);\r\n currentHeight = 0;\r\n lineWidth = 0;\r\n len = finalText.length;\r\n trackingOffset = (documentData.tr / 1000) * documentData.finalSize;\r\n var lastSpaceIndex = -1;\r\n for (i = 0; i < len; i += 1) {\r\n charCode = finalText[i].charCodeAt(0);\r\n newLineFlag = false;\r\n if (finalText[i] === ' ') {\r\n lastSpaceIndex = i;\r\n } else if (charCode === 13 || charCode === 3) {\r\n lineWidth = 0;\r\n newLineFlag = true;\r\n currentHeight += documentData.finalLineHeight || documentData.finalSize * 1.2;\r\n }\r\n if (fontManager.chars) {\r\n charData = fontManager.getCharData(finalText[i], fontData.fStyle, fontData.fFamily);\r\n cLength = newLineFlag ? 0 : (charData.w * documentData.finalSize) / 100;\r\n } else {\r\n // tCanvasHelper.font = documentData.s + 'px '+ fontData.fFamily;\r\n cLength = fontManager.measureText(finalText[i], documentData.f, documentData.finalSize);\r\n }\r\n if (lineWidth + cLength > boxWidth && finalText[i] !== ' ') {\r\n if (lastSpaceIndex === -1) {\r\n len += 1;\r\n } else {\r\n i = lastSpaceIndex;\r\n }\r\n currentHeight += documentData.finalLineHeight || documentData.finalSize * 1.2;\r\n finalText.splice(i, lastSpaceIndex === i ? 1 : 0, '\\r');\r\n // finalText = finalText.substr(0,i) + \"\\r\" + finalText.substr(i === lastSpaceIndex ? i + 1 : i);\r\n lastSpaceIndex = -1;\r\n lineWidth = 0;\r\n } else {\r\n lineWidth += cLength;\r\n lineWidth += trackingOffset;\r\n }\r\n }\r\n currentHeight += (fontData.ascent * documentData.finalSize) / 100;\r\n if (this.canResize && documentData.finalSize > this.minimumFontSize && boxHeight < currentHeight) {\r\n documentData.finalSize -= 1;\r\n documentData.finalLineHeight = (documentData.finalSize * documentData.lh) / documentData.s;\r\n } else {\r\n documentData.finalText = finalText;\r\n len = documentData.finalText.length;\r\n flag = false;\r\n }\r\n }\r\n }\r\n lineWidth = -trackingOffset;\r\n cLength = 0;\r\n var uncollapsedSpaces = 0;\r\n var currentChar;\r\n for (i = 0; i < len; i += 1) {\r\n newLineFlag = false;\r\n currentChar = documentData.finalText[i];\r\n charCode = currentChar.charCodeAt(0);\r\n if (charCode === 13 || charCode === 3) {\r\n uncollapsedSpaces = 0;\r\n lineWidths.push(lineWidth);\r\n maxLineWidth = lineWidth > maxLineWidth ? lineWidth : maxLineWidth;\r\n lineWidth = -2 * trackingOffset;\r\n val = '';\r\n newLineFlag = true;\r\n currentLine += 1;\r\n } else {\r\n val = currentChar;\r\n }\r\n if (fontManager.chars) {\r\n charData = fontManager.getCharData(currentChar, fontData.fStyle, fontManager.getFontByName(documentData.f).fFamily);\r\n cLength = newLineFlag ? 0 : (charData.w * documentData.finalSize) / 100;\r\n } else {\r\n // var charWidth = fontManager.measureText(val, documentData.f, documentData.finalSize);\r\n // tCanvasHelper.font = documentData.finalSize + 'px '+ fontManager.getFontByName(documentData.f).fFamily;\r\n cLength = fontManager.measureText(val, documentData.f, documentData.finalSize);\r\n }\r\n\r\n //\r\n if (currentChar === ' ') {\r\n uncollapsedSpaces += cLength + trackingOffset;\r\n } else {\r\n lineWidth += cLength + trackingOffset + uncollapsedSpaces;\r\n uncollapsedSpaces = 0;\r\n }\r\n letters.push({\r\n l: cLength, an: cLength, add: currentSize, n: newLineFlag, anIndexes: [], val: val, line: currentLine, animatorJustifyOffset: 0,\r\n });\r\n if (anchorGrouping == 2) { // eslint-disable-line eqeqeq\r\n currentSize += cLength;\r\n if (val === '' || val === ' ' || i === len - 1) {\r\n if (val === '' || val === ' ') {\r\n currentSize -= cLength;\r\n }\r\n while (currentPos <= i) {\r\n letters[currentPos].an = currentSize;\r\n letters[currentPos].ind = index;\r\n letters[currentPos].extra = cLength;\r\n currentPos += 1;\r\n }\r\n index += 1;\r\n currentSize = 0;\r\n }\r\n } else if (anchorGrouping == 3) { // eslint-disable-line eqeqeq\r\n currentSize += cLength;\r\n if (val === '' || i === len - 1) {\r\n if (val === '') {\r\n currentSize -= cLength;\r\n }\r\n while (currentPos <= i) {\r\n letters[currentPos].an = currentSize;\r\n letters[currentPos].ind = index;\r\n letters[currentPos].extra = cLength;\r\n currentPos += 1;\r\n }\r\n currentSize = 0;\r\n index += 1;\r\n }\r\n } else {\r\n letters[index].ind = index;\r\n letters[index].extra = 0;\r\n index += 1;\r\n }\r\n }\r\n documentData.l = letters;\r\n maxLineWidth = lineWidth > maxLineWidth ? lineWidth : maxLineWidth;\r\n lineWidths.push(lineWidth);\r\n if (documentData.sz) {\r\n documentData.boxWidth = documentData.sz[0];\r\n documentData.justifyOffset = 0;\r\n } else {\r\n documentData.boxWidth = maxLineWidth;\r\n switch (documentData.j) {\r\n case 1:\r\n documentData.justifyOffset = -documentData.boxWidth;\r\n break;\r\n case 2:\r\n documentData.justifyOffset = -documentData.boxWidth / 2;\r\n break;\r\n default:\r\n documentData.justifyOffset = 0;\r\n }\r\n }\r\n documentData.lineWidths = lineWidths;\r\n\r\n var animators = data.a; var animatorData; var\r\n letterData;\r\n jLen = animators.length;\r\n var based; var ind; var\r\n indexes = [];\r\n for (j = 0; j < jLen; j += 1) {\r\n animatorData = animators[j];\r\n if (animatorData.a.sc) {\r\n documentData.strokeColorAnim = true;\r\n }\r\n if (animatorData.a.sw) {\r\n documentData.strokeWidthAnim = true;\r\n }\r\n if (animatorData.a.fc || animatorData.a.fh || animatorData.a.fs || animatorData.a.fb) {\r\n documentData.fillColorAnim = true;\r\n }\r\n ind = 0;\r\n based = animatorData.s.b;\r\n for (i = 0; i < len; i += 1) {\r\n letterData = letters[i];\r\n letterData.anIndexes[j] = ind;\r\n if ((based == 1 && letterData.val !== '') || (based == 2 && letterData.val !== '' && letterData.val !== ' ') || (based == 3 && (letterData.n || letterData.val == ' ' || i == len - 1)) || (based == 4 && (letterData.n || i == len - 1))) { // eslint-disable-line eqeqeq\r\n if (animatorData.s.rn === 1) {\r\n indexes.push(ind);\r\n }\r\n ind += 1;\r\n }\r\n }\r\n data.a[j].s.totalChars = ind;\r\n var currentInd = -1; var\r\n newInd;\r\n if (animatorData.s.rn === 1) {\r\n for (i = 0; i < len; i += 1) {\r\n letterData = letters[i];\r\n if (currentInd != letterData.anIndexes[j]) { // eslint-disable-line eqeqeq\r\n currentInd = letterData.anIndexes[j];\r\n newInd = indexes.splice(Math.floor(Math.random() * indexes.length), 1)[0];\r\n }\r\n letterData.anIndexes[j] = newInd;\r\n }\r\n }\r\n }\r\n documentData.yOffset = documentData.finalLineHeight || documentData.finalSize * 1.2;\r\n documentData.ls = documentData.ls || 0;\r\n documentData.ascent = (fontData.ascent * documentData.finalSize) / 100;\r\n};\r\n\r\nTextProperty.prototype.updateDocumentData = function (newData, index) {\r\n index = index === undefined ? this.keysIndex : index;\r\n var dData = this.copyData({}, this.data.d.k[index].s);\r\n dData = this.copyData(dData, newData);\r\n this.data.d.k[index].s = dData;\r\n this.recalculate(index);\r\n this.elem.addDynamicProperty(this);\r\n};\r\n\r\nTextProperty.prototype.recalculate = function (index) {\r\n var dData = this.data.d.k[index].s;\r\n dData.__complete = false;\r\n this.keysIndex = 0;\r\n this._isFirstFrame = true;\r\n this.getValue(dData);\r\n};\r\n\r\nTextProperty.prototype.canResizeFont = function (_canResize) {\r\n this.canResize = _canResize;\r\n this.recalculate(this.keysIndex);\r\n this.elem.addDynamicProperty(this);\r\n};\r\n\r\nTextProperty.prototype.setMinimumFontSize = function (_fontValue) {\r\n this.minimumFontSize = Math.floor(_fontValue) || 1;\r\n this.recalculate(this.keysIndex);\r\n this.elem.addDynamicProperty(this);\r\n};\r\n\r\n/* global extendPrototype, BezierFactory, PropertyFactory, DynamicPropertyContainer */\r\n/* exported TextSelectorProp */\r\n\r\nvar TextSelectorProp = (function () {\r\n var max = Math.max;\r\n var min = Math.min;\r\n var floor = Math.floor;\r\n\r\n function TextSelectorPropFactory(elem, data) {\r\n this._currentTextLength = -1;\r\n this.k = false;\r\n this.data = data;\r\n this.elem = elem;\r\n this.comp = elem.comp;\r\n this.finalS = 0;\r\n this.finalE = 0;\r\n this.initDynamicPropertyContainer(elem);\r\n this.s = PropertyFactory.getProp(elem, data.s || { k: 0 }, 0, 0, this);\r\n if ('e' in data) {\r\n this.e = PropertyFactory.getProp(elem, data.e, 0, 0, this);\r\n } else {\r\n this.e = { v: 100 };\r\n }\r\n this.o = PropertyFactory.getProp(elem, data.o || { k: 0 }, 0, 0, this);\r\n this.xe = PropertyFactory.getProp(elem, data.xe || { k: 0 }, 0, 0, this);\r\n this.ne = PropertyFactory.getProp(elem, data.ne || { k: 0 }, 0, 0, this);\r\n this.a = PropertyFactory.getProp(elem, data.a, 0, 0.01, this);\r\n if (!this.dynamicProperties.length) {\r\n this.getValue();\r\n }\r\n }\r\n\r\n TextSelectorPropFactory.prototype = {\r\n getMult: function (ind) {\r\n if (this._currentTextLength !== this.elem.textProperty.currentData.l.length) {\r\n this.getValue();\r\n }\r\n // var easer = bez.getEasingCurve(this.ne.v/100,0,1-this.xe.v/100,1);\r\n var x1 = 0;\r\n var y1 = 0;\r\n var x2 = 1;\r\n var y2 = 1;\r\n if (this.ne.v > 0) {\r\n x1 = this.ne.v / 100.0;\r\n } else {\r\n y1 = -this.ne.v / 100.0;\r\n }\r\n if (this.xe.v > 0) {\r\n x2 = 1.0 - this.xe.v / 100.0;\r\n } else {\r\n y2 = 1.0 + this.xe.v / 100.0;\r\n }\r\n var easer = BezierFactory.getBezierEasing(x1, y1, x2, y2).get;\r\n\r\n var mult = 0;\r\n var s = this.finalS;\r\n var e = this.finalE;\r\n var type = this.data.sh;\r\n if (type === 2) {\r\n if (e === s) {\r\n mult = ind >= e ? 1 : 0;\r\n } else {\r\n mult = max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\r\n }\r\n mult = easer(mult);\r\n } else if (type === 3) {\r\n if (e === s) {\r\n mult = ind >= e ? 0 : 1;\r\n } else {\r\n mult = 1 - max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\r\n }\r\n\r\n mult = easer(mult);\r\n } else if (type === 4) {\r\n if (e === s) {\r\n mult = 0;\r\n } else {\r\n mult = max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\r\n if (mult < 0.5) {\r\n mult *= 2;\r\n } else {\r\n mult = 1 - 2 * (mult - 0.5);\r\n }\r\n }\r\n mult = easer(mult);\r\n } else if (type === 5) {\r\n if (e === s) {\r\n mult = 0;\r\n } else {\r\n var tot = e - s;\r\n /* ind += 0.5;\r\n mult = -4/(tot*tot)*(ind*ind)+(4/tot)*ind; */\r\n ind = min(max(0, ind + 0.5 - s), e - s);\r\n var x = -tot / 2 + ind;\r\n var a = tot / 2;\r\n mult = Math.sqrt(1 - (x * x) / (a * a));\r\n }\r\n mult = easer(mult);\r\n } else if (type === 6) {\r\n if (e === s) {\r\n mult = 0;\r\n } else {\r\n ind = min(max(0, ind + 0.5 - s), e - s);\r\n mult = (1 + (Math.cos((Math.PI + Math.PI * 2 * (ind) / (e - s))))) / 2; // eslint-disable-line\r\n }\r\n mult = easer(mult);\r\n } else {\r\n if (ind >= floor(s)) {\r\n if (ind - s < 0) {\r\n mult = max(0, min(min(e, 1) - (s - ind), 1));\r\n } else {\r\n mult = max(0, min(e - ind, 1));\r\n }\r\n }\r\n mult = easer(mult);\r\n }\r\n return mult * this.a.v;\r\n },\r\n getValue: function (newCharsFlag) {\r\n this.iterateDynamicProperties();\r\n this._mdf = newCharsFlag || this._mdf;\r\n this._currentTextLength = this.elem.textProperty.currentData.l.length || 0;\r\n if (newCharsFlag && this.data.r === 2) {\r\n this.e.v = this._currentTextLength;\r\n }\r\n var divisor = this.data.r === 2 ? 1 : 100 / this.data.totalChars;\r\n var o = this.o.v / divisor;\r\n var s = this.s.v / divisor + o;\r\n var e = (this.e.v / divisor) + o;\r\n if (s > e) {\r\n var _s = s;\r\n s = e;\r\n e = _s;\r\n }\r\n this.finalS = s;\r\n this.finalE = e;\r\n },\r\n };\r\n extendPrototype([DynamicPropertyContainer], TextSelectorPropFactory);\r\n\r\n function getTextSelectorProp(elem, data, arr) {\r\n return new TextSelectorPropFactory(elem, data, arr);\r\n }\r\n\r\n return {\r\n getTextSelectorProp: getTextSelectorProp,\r\n };\r\n}());\r\n\r\n/* global createSizedArray, pooling */\r\n/* exported poolFactory */\r\n\r\nvar poolFactory = (function () {\r\n return function (initialLength, _create, _release) {\r\n var _length = 0;\r\n var _maxLength = initialLength;\r\n var pool = createSizedArray(_maxLength);\r\n\r\n var ob = {\r\n newElement: newElement,\r\n release: release,\r\n };\r\n\r\n function newElement() {\r\n var element;\r\n if (_length) {\r\n _length -= 1;\r\n element = pool[_length];\r\n } else {\r\n element = _create();\r\n }\r\n return element;\r\n }\r\n\r\n function release(element) {\r\n if (_length === _maxLength) {\r\n pool = pooling.double(pool);\r\n _maxLength *= 2;\r\n }\r\n if (_release) {\r\n _release(element);\r\n }\r\n pool[_length] = element;\r\n _length += 1;\r\n }\r\n\r\n return ob;\r\n };\r\n}());\r\n\r\n/* global createSizedArray */\r\n/* exported pooling */\r\n\r\nvar pooling = (function () {\r\n function double(arr) {\r\n return arr.concat(createSizedArray(arr.length));\r\n }\r\n\r\n return {\r\n double: double,\r\n };\r\n}());\r\n\r\n/* global createTypedArray, poolFactory */\r\n/* exported pointPool */\r\n\r\nvar pointPool = (function () {\r\n function create() {\r\n return createTypedArray('float32', 2);\r\n }\r\n return poolFactory(8, create);\r\n}());\r\n\r\n/* global ShapePath, pointPool, poolFactory */\r\n/* exported shapePool */\r\n\r\nvar shapePool = (function () {\r\n function create() {\r\n return new ShapePath();\r\n }\r\n\r\n function release(shapePath) {\r\n var len = shapePath._length;\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n pointPool.release(shapePath.v[i]);\r\n pointPool.release(shapePath.i[i]);\r\n pointPool.release(shapePath.o[i]);\r\n shapePath.v[i] = null;\r\n shapePath.i[i] = null;\r\n shapePath.o[i] = null;\r\n }\r\n shapePath._length = 0;\r\n shapePath.c = false;\r\n }\r\n\r\n function clone(shape) {\r\n var cloned = factory.newElement();\r\n var i;\r\n var len = shape._length === undefined ? shape.v.length : shape._length;\r\n cloned.setLength(len);\r\n cloned.c = shape.c;\r\n\r\n for (i = 0; i < len; i += 1) {\r\n cloned.setTripleAt(shape.v[i][0], shape.v[i][1], shape.o[i][0], shape.o[i][1], shape.i[i][0], shape.i[i][1], i);\r\n }\r\n return cloned;\r\n }\r\n\r\n var factory = poolFactory(4, create, release);\r\n factory.clone = clone;\r\n\r\n return factory;\r\n}());\r\n\r\n/* global createSizedArray, ShapeCollection, shapePool, pooling */\r\n/* exported shapeCollectionPool */\r\n\r\nvar shapeCollectionPool = (function () {\r\n var ob = {\r\n newShapeCollection: newShapeCollection,\r\n release: release,\r\n };\r\n\r\n var _length = 0;\r\n var _maxLength = 4;\r\n var pool = createSizedArray(_maxLength);\r\n\r\n function newShapeCollection() {\r\n var shapeCollection;\r\n if (_length) {\r\n _length -= 1;\r\n shapeCollection = pool[_length];\r\n } else {\r\n shapeCollection = new ShapeCollection();\r\n }\r\n return shapeCollection;\r\n }\r\n\r\n function release(shapeCollection) {\r\n var i;\r\n var len = shapeCollection._length;\r\n for (i = 0; i < len; i += 1) {\r\n shapePool.release(shapeCollection.shapes[i]);\r\n }\r\n shapeCollection._length = 0;\r\n\r\n if (_length === _maxLength) {\r\n pool = pooling.double(pool);\r\n _maxLength *= 2;\r\n }\r\n pool[_length] = shapeCollection;\r\n _length += 1;\r\n }\r\n\r\n return ob;\r\n}());\r\n\r\n/* global poolFactory, bezierLengthPool */\r\n/* exported segmentsLengthPool */\r\n\r\nvar segmentsLengthPool = (function () {\r\n function create() {\r\n return {\r\n lengths: [],\r\n totalLength: 0,\r\n };\r\n }\r\n\r\n function release(element) {\r\n var i;\r\n var len = element.lengths.length;\r\n for (i = 0; i < len; i += 1) {\r\n bezierLengthPool.release(element.lengths[i]);\r\n }\r\n element.lengths.length = 0;\r\n }\r\n\r\n return poolFactory(8, create, release);\r\n}());\r\n\r\n/* global createTypedArray, defaultCurveSegments, poolFactory */\r\n/* exported bezierLengthPool */\r\n\r\nvar bezierLengthPool = (function () {\r\n function create() {\r\n return {\r\n addedLength: 0,\r\n percents: createTypedArray('float32', defaultCurveSegments),\r\n lengths: createTypedArray('float32', defaultCurveSegments),\r\n };\r\n }\r\n return poolFactory(8, create);\r\n}());\r\n\r\n/* exported markerParser */\r\n\r\nvar markerParser = (\r\n\r\n function () {\r\n function parsePayloadLines(payload) {\r\n var lines = payload.split('\\r\\n');\r\n var keys = {};\r\n var line;\r\n var keysCount = 0;\r\n for (var i = 0; i < lines.length; i += 1) {\r\n line = lines[i].split(':');\r\n if (line.length === 2) {\r\n keys[line[0]] = line[1].trim();\r\n keysCount += 1;\r\n }\r\n }\r\n if (keysCount === 0) {\r\n throw new Error();\r\n }\r\n return keys;\r\n }\r\n\r\n return function (_markers) {\r\n var markers = [];\r\n for (var i = 0; i < _markers.length; i += 1) {\r\n var _marker = _markers[i];\r\n var markerData = {\r\n time: _marker.tm,\r\n duration: _marker.dr,\r\n };\r\n try {\r\n markerData.payload = JSON.parse(_markers[i].cm);\r\n } catch (_) {\r\n try {\r\n markerData.payload = parsePayloadLines(_markers[i].cm);\r\n } catch (__) {\r\n markerData.payload = {\r\n name: _markers[i],\r\n };\r\n }\r\n }\r\n markers.push(markerData);\r\n }\r\n return markers;\r\n };\r\n }());\r\n\r\n/* global AudioElement, FootageElement, FontManager */\r\n\r\nfunction BaseRenderer() {}\r\nBaseRenderer.prototype.checkLayers = function (num) {\r\n var i;\r\n var len = this.layers.length;\r\n var data;\r\n this.completeLayers = true;\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n if (!this.elements[i]) {\r\n data = this.layers[i];\r\n if (data.ip - data.st <= (num - this.layers[i].st) && data.op - data.st > (num - this.layers[i].st)) {\r\n this.buildItem(i);\r\n }\r\n }\r\n this.completeLayers = this.elements[i] ? this.completeLayers : false;\r\n }\r\n this.checkPendingElements();\r\n};\r\n\r\nBaseRenderer.prototype.createItem = function (layer) {\r\n switch (layer.ty) {\r\n case 2:\r\n return this.createImage(layer);\r\n case 0:\r\n return this.createComp(layer);\r\n case 1:\r\n return this.createSolid(layer);\r\n case 3:\r\n return this.createNull(layer);\r\n case 4:\r\n return this.createShape(layer);\r\n case 5:\r\n return this.createText(layer);\r\n case 6:\r\n return this.createAudio(layer);\r\n case 13:\r\n return this.createCamera(layer);\r\n case 15:\r\n return this.createFootage(layer);\r\n default:\r\n return this.createNull(layer);\r\n }\r\n};\r\n\r\nBaseRenderer.prototype.createCamera = function () {\r\n throw new Error('You\\'re using a 3d camera. Try the html renderer.');\r\n};\r\n\r\nBaseRenderer.prototype.createAudio = function (data) {\r\n return new AudioElement(data, this.globalData, this);\r\n};\r\n\r\nBaseRenderer.prototype.createFootage = function (data) {\r\n return new FootageElement(data, this.globalData, this);\r\n};\r\n\r\nBaseRenderer.prototype.buildAllItems = function () {\r\n var i;\r\n var len = this.layers.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.buildItem(i);\r\n }\r\n this.checkPendingElements();\r\n};\r\n\r\nBaseRenderer.prototype.includeLayers = function (newLayers) {\r\n this.completeLayers = false;\r\n var i;\r\n var len = newLayers.length;\r\n var j;\r\n var jLen = this.layers.length;\r\n for (i = 0; i < len; i += 1) {\r\n j = 0;\r\n while (j < jLen) {\r\n if (this.layers[j].id === newLayers[i].id) {\r\n this.layers[j] = newLayers[i];\r\n break;\r\n }\r\n j += 1;\r\n }\r\n }\r\n};\r\n\r\nBaseRenderer.prototype.setProjectInterface = function (pInterface) {\r\n this.globalData.projectInterface = pInterface;\r\n};\r\n\r\nBaseRenderer.prototype.initItems = function () {\r\n if (!this.globalData.progressiveLoad) {\r\n this.buildAllItems();\r\n }\r\n};\r\nBaseRenderer.prototype.buildElementParenting = function (element, parentName, hierarchy) {\r\n var elements = this.elements;\r\n var layers = this.layers;\r\n var i = 0;\r\n var len = layers.length;\r\n while (i < len) {\r\n if (layers[i].ind == parentName) { // eslint-disable-line eqeqeq\r\n if (!elements[i] || elements[i] === true) {\r\n this.buildItem(i);\r\n this.addPendingElement(element);\r\n } else {\r\n hierarchy.push(elements[i]);\r\n elements[i].setAsParent();\r\n if (layers[i].parent !== undefined) {\r\n this.buildElementParenting(element, layers[i].parent, hierarchy);\r\n } else {\r\n element.setHierarchy(hierarchy);\r\n }\r\n }\r\n }\r\n i += 1;\r\n }\r\n};\r\n\r\nBaseRenderer.prototype.addPendingElement = function (element) {\r\n this.pendingElements.push(element);\r\n};\r\n\r\nBaseRenderer.prototype.searchExtraCompositions = function (assets) {\r\n var i;\r\n var len = assets.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (assets[i].xt) {\r\n var comp = this.createComp(assets[i]);\r\n comp.initExpressions();\r\n this.globalData.projectInterface.registerComposition(comp);\r\n }\r\n }\r\n};\r\n\r\nBaseRenderer.prototype.setupGlobalData = function (animData, fontsContainer) {\r\n this.globalData.fontManager = new FontManager();\r\n this.globalData.fontManager.addChars(animData.chars);\r\n this.globalData.fontManager.addFonts(animData.fonts, fontsContainer);\r\n this.globalData.getAssetData = this.animationItem.getAssetData.bind(this.animationItem);\r\n this.globalData.getAssetsPath = this.animationItem.getAssetsPath.bind(this.animationItem);\r\n this.globalData.imageLoader = this.animationItem.imagePreloader;\r\n this.globalData.audioController = this.animationItem.audioController;\r\n this.globalData.frameId = 0;\r\n this.globalData.frameRate = animData.fr;\r\n this.globalData.nm = animData.nm;\r\n this.globalData.compSize = {\r\n w: animData.w,\r\n h: animData.h,\r\n };\r\n};\r\n\r\n/* global createElementID, extendPrototype, BaseRenderer, NullElement, SVGShapeElement, SVGTextLottieElement,\r\nIImageElement, SVGCompElement, ISolidElement, createNS, locationHref, createSizedArray, expressionsPlugin */\r\n\r\nfunction SVGRenderer(animationItem, config) {\r\n this.animationItem = animationItem;\r\n this.layers = null;\r\n this.renderedFrame = -1;\r\n this.svgElement = createNS('svg');\r\n var ariaLabel = '';\r\n if (config && config.title) {\r\n var titleElement = createNS('title');\r\n var titleId = createElementID();\r\n titleElement.setAttribute('id', titleId);\r\n titleElement.textContent = config.title;\r\n this.svgElement.appendChild(titleElement);\r\n ariaLabel += titleId;\r\n }\r\n if (config && config.description) {\r\n var descElement = createNS('desc');\r\n var descId = createElementID();\r\n descElement.setAttribute('id', descId);\r\n descElement.textContent = config.description;\r\n this.svgElement.appendChild(descElement);\r\n ariaLabel += ' ' + descId;\r\n }\r\n if (ariaLabel) {\r\n this.svgElement.setAttribute('aria-labelledby', ariaLabel);\r\n }\r\n var defs = createNS('defs');\r\n this.svgElement.appendChild(defs);\r\n var maskElement = createNS('g');\r\n this.svgElement.appendChild(maskElement);\r\n this.layerElement = maskElement;\r\n this.renderConfig = {\r\n preserveAspectRatio: (config && config.preserveAspectRatio) || 'xMidYMid meet',\r\n imagePreserveAspectRatio: (config && config.imagePreserveAspectRatio) || 'xMidYMid slice',\r\n progressiveLoad: (config && config.progressiveLoad) || false,\r\n hideOnTransparent: !((config && config.hideOnTransparent === false)),\r\n viewBoxOnly: (config && config.viewBoxOnly) || false,\r\n viewBoxSize: (config && config.viewBoxSize) || false,\r\n className: (config && config.className) || '',\r\n id: (config && config.id) || '',\r\n focusable: config && config.focusable,\r\n filterSize: {\r\n width: (config && config.filterSize && config.filterSize.width) || '100%',\r\n height: (config && config.filterSize && config.filterSize.height) || '100%',\r\n x: (config && config.filterSize && config.filterSize.x) || '0%',\r\n y: (config && config.filterSize && config.filterSize.y) || '0%',\r\n },\r\n };\r\n\r\n this.globalData = {\r\n _mdf: false,\r\n frameNum: -1,\r\n defs: defs,\r\n renderConfig: this.renderConfig,\r\n };\r\n this.elements = [];\r\n this.pendingElements = [];\r\n this.destroyed = false;\r\n this.rendererType = 'svg';\r\n}\r\n\r\nextendPrototype([BaseRenderer], SVGRenderer);\r\n\r\nSVGRenderer.prototype.createNull = function (data) {\r\n return new NullElement(data, this.globalData, this);\r\n};\r\n\r\nSVGRenderer.prototype.createShape = function (data) {\r\n return new SVGShapeElement(data, this.globalData, this);\r\n};\r\n\r\nSVGRenderer.prototype.createText = function (data) {\r\n return new SVGTextLottieElement(data, this.globalData, this);\r\n};\r\n\r\nSVGRenderer.prototype.createImage = function (data) {\r\n return new IImageElement(data, this.globalData, this);\r\n};\r\n\r\nSVGRenderer.prototype.createComp = function (data) {\r\n return new SVGCompElement(data, this.globalData, this);\r\n};\r\n\r\nSVGRenderer.prototype.createSolid = function (data) {\r\n return new ISolidElement(data, this.globalData, this);\r\n};\r\n\r\nSVGRenderer.prototype.configAnimation = function (animData) {\r\n this.svgElement.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\r\n if (this.renderConfig.viewBoxSize) {\r\n this.svgElement.setAttribute('viewBox', this.renderConfig.viewBoxSize);\r\n } else {\r\n this.svgElement.setAttribute('viewBox', '0 0 ' + animData.w + ' ' + animData.h);\r\n }\r\n\r\n if (!this.renderConfig.viewBoxOnly) {\r\n this.svgElement.setAttribute('width', animData.w);\r\n this.svgElement.setAttribute('height', animData.h);\r\n this.svgElement.style.width = '100%';\r\n this.svgElement.style.height = '100%';\r\n this.svgElement.style.transform = 'translate3d(0,0,0)';\r\n }\r\n if (this.renderConfig.className) {\r\n this.svgElement.setAttribute('class', this.renderConfig.className);\r\n }\r\n if (this.renderConfig.id) {\r\n this.svgElement.setAttribute('id', this.renderConfig.id);\r\n }\r\n if (this.renderConfig.focusable !== undefined) {\r\n this.svgElement.setAttribute('focusable', this.renderConfig.focusable);\r\n }\r\n this.svgElement.setAttribute('preserveAspectRatio', this.renderConfig.preserveAspectRatio);\r\n // this.layerElement.style.transform = 'translate3d(0,0,0)';\r\n // this.layerElement.style.transformOrigin = this.layerElement.style.mozTransformOrigin = this.layerElement.style.webkitTransformOrigin = this.layerElement.style['-webkit-transform'] = \"0px 0px 0px\";\r\n this.animationItem.wrapper.appendChild(this.svgElement);\r\n // Mask animation\r\n var defs = this.globalData.defs;\r\n\r\n this.setupGlobalData(animData, defs);\r\n this.globalData.progressiveLoad = this.renderConfig.progressiveLoad;\r\n this.data = animData;\r\n\r\n var maskElement = createNS('clipPath');\r\n var rect = createNS('rect');\r\n rect.setAttribute('width', animData.w);\r\n rect.setAttribute('height', animData.h);\r\n rect.setAttribute('x', 0);\r\n rect.setAttribute('y', 0);\r\n var maskId = createElementID();\r\n maskElement.setAttribute('id', maskId);\r\n maskElement.appendChild(rect);\r\n this.layerElement.setAttribute('clip-path', 'url(' + locationHref + '#' + maskId + ')');\r\n\r\n defs.appendChild(maskElement);\r\n this.layers = animData.layers;\r\n this.elements = createSizedArray(animData.layers.length);\r\n};\r\n\r\nSVGRenderer.prototype.destroy = function () {\r\n if (this.animationItem.wrapper) {\r\n this.animationItem.wrapper.innerText = '';\r\n }\r\n this.layerElement = null;\r\n this.globalData.defs = null;\r\n var i;\r\n var len = this.layers ? this.layers.length : 0;\r\n for (i = 0; i < len; i += 1) {\r\n if (this.elements[i]) {\r\n this.elements[i].destroy();\r\n }\r\n }\r\n this.elements.length = 0;\r\n this.destroyed = true;\r\n this.animationItem = null;\r\n};\r\n\r\nSVGRenderer.prototype.updateContainerSize = function () {\r\n};\r\n\r\nSVGRenderer.prototype.buildItem = function (pos) {\r\n var elements = this.elements;\r\n if (elements[pos] || this.layers[pos].ty === 99) {\r\n return;\r\n }\r\n elements[pos] = true;\r\n var element = this.createItem(this.layers[pos]);\r\n\r\n elements[pos] = element;\r\n if (expressionsPlugin) {\r\n if (this.layers[pos].ty === 0) {\r\n this.globalData.projectInterface.registerComposition(element);\r\n }\r\n element.initExpressions();\r\n }\r\n this.appendElementInPos(element, pos);\r\n if (this.layers[pos].tt) {\r\n if (!this.elements[pos - 1] || this.elements[pos - 1] === true) {\r\n this.buildItem(pos - 1);\r\n this.addPendingElement(element);\r\n } else {\r\n element.setMatte(elements[pos - 1].layerId);\r\n }\r\n }\r\n};\r\n\r\nSVGRenderer.prototype.checkPendingElements = function () {\r\n while (this.pendingElements.length) {\r\n var element = this.pendingElements.pop();\r\n element.checkParenting();\r\n if (element.data.tt) {\r\n var i = 0;\r\n var len = this.elements.length;\r\n while (i < len) {\r\n if (this.elements[i] === element) {\r\n element.setMatte(this.elements[i - 1].layerId);\r\n break;\r\n }\r\n i += 1;\r\n }\r\n }\r\n }\r\n};\r\n\r\nSVGRenderer.prototype.renderFrame = function (num) {\r\n if (this.renderedFrame === num || this.destroyed) {\r\n return;\r\n }\r\n if (num === null) {\r\n num = this.renderedFrame;\r\n } else {\r\n this.renderedFrame = num;\r\n }\r\n // console.log('-------');\r\n // console.log('FRAME ',num);\r\n this.globalData.frameNum = num;\r\n this.globalData.frameId += 1;\r\n this.globalData.projectInterface.currentFrame = num;\r\n this.globalData._mdf = false;\r\n var i;\r\n var len = this.layers.length;\r\n if (!this.completeLayers) {\r\n this.checkLayers(num);\r\n }\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n if (this.completeLayers || this.elements[i]) {\r\n this.elements[i].prepareFrame(num - this.layers[i].st);\r\n }\r\n }\r\n if (this.globalData._mdf) {\r\n for (i = 0; i < len; i += 1) {\r\n if (this.completeLayers || this.elements[i]) {\r\n this.elements[i].renderFrame();\r\n }\r\n }\r\n }\r\n};\r\n\r\nSVGRenderer.prototype.appendElementInPos = function (element, pos) {\r\n var newElement = element.getBaseElement();\r\n if (!newElement) {\r\n return;\r\n }\r\n var i = 0;\r\n var nextElement;\r\n while (i < pos) {\r\n if (this.elements[i] && this.elements[i] !== true && this.elements[i].getBaseElement()) {\r\n nextElement = this.elements[i].getBaseElement();\r\n }\r\n i += 1;\r\n }\r\n if (nextElement) {\r\n this.layerElement.insertBefore(newElement, nextElement);\r\n } else {\r\n this.layerElement.appendChild(newElement);\r\n }\r\n};\r\n\r\nSVGRenderer.prototype.hide = function () {\r\n this.layerElement.style.display = 'none';\r\n};\r\n\r\nSVGRenderer.prototype.show = function () {\r\n this.layerElement.style.display = 'block';\r\n};\r\n\r\n/* global CVContextData, Matrix, extendPrototype, BaseRenderer, CVShapeElement, CVTextElement,\r\nCVImageElement, CVCompElement, CVSolidElement, SVGRenderer, createTag, createSizedArray */\r\n\r\nfunction CanvasRenderer(animationItem, config) {\r\n this.animationItem = animationItem;\r\n this.renderConfig = {\r\n clearCanvas: (config && config.clearCanvas !== undefined) ? config.clearCanvas : true,\r\n context: (config && config.context) || null,\r\n progressiveLoad: (config && config.progressiveLoad) || false,\r\n preserveAspectRatio: (config && config.preserveAspectRatio) || 'xMidYMid meet',\r\n imagePreserveAspectRatio: (config && config.imagePreserveAspectRatio) || 'xMidYMid slice',\r\n className: (config && config.className) || '',\r\n id: (config && config.id) || '',\r\n };\r\n this.renderConfig.dpr = (config && config.dpr) || 1;\r\n if (this.animationItem.wrapper) {\r\n this.renderConfig.dpr = (config && config.dpr) || window.devicePixelRatio || 1;\r\n }\r\n this.renderedFrame = -1;\r\n this.globalData = {\r\n frameNum: -1,\r\n _mdf: false,\r\n renderConfig: this.renderConfig,\r\n currentGlobalAlpha: -1,\r\n };\r\n this.contextData = new CVContextData();\r\n this.elements = [];\r\n this.pendingElements = [];\r\n this.transformMat = new Matrix();\r\n this.completeLayers = false;\r\n this.rendererType = 'canvas';\r\n}\r\nextendPrototype([BaseRenderer], CanvasRenderer);\r\n\r\nCanvasRenderer.prototype.createShape = function (data) {\r\n return new CVShapeElement(data, this.globalData, this);\r\n};\r\n\r\nCanvasRenderer.prototype.createText = function (data) {\r\n return new CVTextElement(data, this.globalData, this);\r\n};\r\n\r\nCanvasRenderer.prototype.createImage = function (data) {\r\n return new CVImageElement(data, this.globalData, this);\r\n};\r\n\r\nCanvasRenderer.prototype.createComp = function (data) {\r\n return new CVCompElement(data, this.globalData, this);\r\n};\r\n\r\nCanvasRenderer.prototype.createSolid = function (data) {\r\n return new CVSolidElement(data, this.globalData, this);\r\n};\r\n\r\nCanvasRenderer.prototype.createNull = SVGRenderer.prototype.createNull;\r\n\r\nCanvasRenderer.prototype.ctxTransform = function (props) {\r\n if (props[0] === 1 && props[1] === 0 && props[4] === 0 && props[5] === 1 && props[12] === 0 && props[13] === 0) {\r\n return;\r\n }\r\n if (!this.renderConfig.clearCanvas) {\r\n this.canvasContext.transform(props[0], props[1], props[4], props[5], props[12], props[13]);\r\n return;\r\n }\r\n this.transformMat.cloneFromProps(props);\r\n var cProps = this.contextData.cTr.props;\r\n this.transformMat.transform(cProps[0], cProps[1], cProps[2], cProps[3], cProps[4], cProps[5], cProps[6], cProps[7], cProps[8], cProps[9], cProps[10], cProps[11], cProps[12], cProps[13], cProps[14], cProps[15]);\r\n // this.contextData.cTr.transform(props[0],props[1],props[2],props[3],props[4],props[5],props[6],props[7],props[8],props[9],props[10],props[11],props[12],props[13],props[14],props[15]);\r\n this.contextData.cTr.cloneFromProps(this.transformMat.props);\r\n var trProps = this.contextData.cTr.props;\r\n this.canvasContext.setTransform(trProps[0], trProps[1], trProps[4], trProps[5], trProps[12], trProps[13]);\r\n};\r\n\r\nCanvasRenderer.prototype.ctxOpacity = function (op) {\r\n /* if(op === 1){\r\n return;\r\n } */\r\n if (!this.renderConfig.clearCanvas) {\r\n this.canvasContext.globalAlpha *= op < 0 ? 0 : op;\r\n this.globalData.currentGlobalAlpha = this.contextData.cO;\r\n return;\r\n }\r\n this.contextData.cO *= op < 0 ? 0 : op;\r\n if (this.globalData.currentGlobalAlpha !== this.contextData.cO) {\r\n this.canvasContext.globalAlpha = this.contextData.cO;\r\n this.globalData.currentGlobalAlpha = this.contextData.cO;\r\n }\r\n};\r\n\r\nCanvasRenderer.prototype.reset = function () {\r\n if (!this.renderConfig.clearCanvas) {\r\n this.canvasContext.restore();\r\n return;\r\n }\r\n this.contextData.reset();\r\n};\r\n\r\nCanvasRenderer.prototype.save = function (actionFlag) {\r\n if (!this.renderConfig.clearCanvas) {\r\n this.canvasContext.save();\r\n return;\r\n }\r\n if (actionFlag) {\r\n this.canvasContext.save();\r\n }\r\n var props = this.contextData.cTr.props;\r\n if (this.contextData._length <= this.contextData.cArrPos) {\r\n this.contextData.duplicate();\r\n }\r\n var i;\r\n var arr = this.contextData.saved[this.contextData.cArrPos];\r\n for (i = 0; i < 16; i += 1) {\r\n arr[i] = props[i];\r\n }\r\n this.contextData.savedOp[this.contextData.cArrPos] = this.contextData.cO;\r\n this.contextData.cArrPos += 1;\r\n};\r\n\r\nCanvasRenderer.prototype.restore = function (actionFlag) {\r\n if (!this.renderConfig.clearCanvas) {\r\n this.canvasContext.restore();\r\n return;\r\n }\r\n if (actionFlag) {\r\n this.canvasContext.restore();\r\n this.globalData.blendMode = 'source-over';\r\n }\r\n this.contextData.cArrPos -= 1;\r\n var popped = this.contextData.saved[this.contextData.cArrPos];\r\n var i;\r\n var arr = this.contextData.cTr.props;\r\n for (i = 0; i < 16; i += 1) {\r\n arr[i] = popped[i];\r\n }\r\n this.canvasContext.setTransform(popped[0], popped[1], popped[4], popped[5], popped[12], popped[13]);\r\n popped = this.contextData.savedOp[this.contextData.cArrPos];\r\n this.contextData.cO = popped;\r\n if (this.globalData.currentGlobalAlpha !== popped) {\r\n this.canvasContext.globalAlpha = popped;\r\n this.globalData.currentGlobalAlpha = popped;\r\n }\r\n};\r\n\r\nCanvasRenderer.prototype.configAnimation = function (animData) {\r\n if (this.animationItem.wrapper) {\r\n this.animationItem.container = createTag('canvas');\r\n var containerStyle = this.animationItem.container.style;\r\n containerStyle.width = '100%';\r\n containerStyle.height = '100%';\r\n var origin = '0px 0px 0px';\r\n containerStyle.transformOrigin = origin;\r\n containerStyle.mozTransformOrigin = origin;\r\n containerStyle.webkitTransformOrigin = origin;\r\n containerStyle['-webkit-transform'] = origin;\r\n this.animationItem.wrapper.appendChild(this.animationItem.container);\r\n this.canvasContext = this.animationItem.container.getContext('2d');\r\n if (this.renderConfig.className) {\r\n this.animationItem.container.setAttribute('class', this.renderConfig.className);\r\n }\r\n if (this.renderConfig.id) {\r\n this.animationItem.container.setAttribute('id', this.renderConfig.id);\r\n }\r\n } else {\r\n this.canvasContext = this.renderConfig.context;\r\n }\r\n this.data = animData;\r\n this.layers = animData.layers;\r\n this.transformCanvas = {\r\n w: animData.w,\r\n h: animData.h,\r\n sx: 0,\r\n sy: 0,\r\n tx: 0,\r\n ty: 0,\r\n };\r\n this.setupGlobalData(animData, document.body);\r\n this.globalData.canvasContext = this.canvasContext;\r\n this.globalData.renderer = this;\r\n this.globalData.isDashed = false;\r\n this.globalData.progressiveLoad = this.renderConfig.progressiveLoad;\r\n this.globalData.transformCanvas = this.transformCanvas;\r\n this.elements = createSizedArray(animData.layers.length);\r\n\r\n this.updateContainerSize();\r\n};\r\n\r\nCanvasRenderer.prototype.updateContainerSize = function () {\r\n this.reset();\r\n var elementWidth;\r\n var elementHeight;\r\n if (this.animationItem.wrapper && this.animationItem.container) {\r\n elementWidth = this.animationItem.wrapper.offsetWidth;\r\n elementHeight = this.animationItem.wrapper.offsetHeight;\r\n this.animationItem.container.setAttribute('width', elementWidth * this.renderConfig.dpr);\r\n this.animationItem.container.setAttribute('height', elementHeight * this.renderConfig.dpr);\r\n } else {\r\n elementWidth = this.canvasContext.canvas.width * this.renderConfig.dpr;\r\n elementHeight = this.canvasContext.canvas.height * this.renderConfig.dpr;\r\n }\r\n var elementRel;\r\n var animationRel;\r\n if (this.renderConfig.preserveAspectRatio.indexOf('meet') !== -1 || this.renderConfig.preserveAspectRatio.indexOf('slice') !== -1) {\r\n var par = this.renderConfig.preserveAspectRatio.split(' ');\r\n var fillType = par[1] || 'meet';\r\n var pos = par[0] || 'xMidYMid';\r\n var xPos = pos.substr(0, 4);\r\n var yPos = pos.substr(4);\r\n elementRel = elementWidth / elementHeight;\r\n animationRel = this.transformCanvas.w / this.transformCanvas.h;\r\n if ((animationRel > elementRel && fillType === 'meet') || (animationRel < elementRel && fillType === 'slice')) {\r\n this.transformCanvas.sx = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);\r\n this.transformCanvas.sy = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);\r\n } else {\r\n this.transformCanvas.sx = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);\r\n this.transformCanvas.sy = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);\r\n }\r\n\r\n if (xPos === 'xMid' && ((animationRel < elementRel && fillType === 'meet') || (animationRel > elementRel && fillType === 'slice'))) {\r\n this.transformCanvas.tx = ((elementWidth - this.transformCanvas.w * (elementHeight / this.transformCanvas.h)) / 2) * this.renderConfig.dpr;\r\n } else if (xPos === 'xMax' && ((animationRel < elementRel && fillType === 'meet') || (animationRel > elementRel && fillType === 'slice'))) {\r\n this.transformCanvas.tx = (elementWidth - this.transformCanvas.w * (elementHeight / this.transformCanvas.h)) * this.renderConfig.dpr;\r\n } else {\r\n this.transformCanvas.tx = 0;\r\n }\r\n if (yPos === 'YMid' && ((animationRel > elementRel && fillType === 'meet') || (animationRel < elementRel && fillType === 'slice'))) {\r\n this.transformCanvas.ty = ((elementHeight - this.transformCanvas.h * (elementWidth / this.transformCanvas.w)) / 2) * this.renderConfig.dpr;\r\n } else if (yPos === 'YMax' && ((animationRel > elementRel && fillType === 'meet') || (animationRel < elementRel && fillType === 'slice'))) {\r\n this.transformCanvas.ty = ((elementHeight - this.transformCanvas.h * (elementWidth / this.transformCanvas.w))) * this.renderConfig.dpr;\r\n } else {\r\n this.transformCanvas.ty = 0;\r\n }\r\n } else if (this.renderConfig.preserveAspectRatio === 'none') {\r\n this.transformCanvas.sx = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);\r\n this.transformCanvas.sy = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);\r\n this.transformCanvas.tx = 0;\r\n this.transformCanvas.ty = 0;\r\n } else {\r\n this.transformCanvas.sx = this.renderConfig.dpr;\r\n this.transformCanvas.sy = this.renderConfig.dpr;\r\n this.transformCanvas.tx = 0;\r\n this.transformCanvas.ty = 0;\r\n }\r\n this.transformCanvas.props = [this.transformCanvas.sx, 0, 0, 0, 0, this.transformCanvas.sy, 0, 0, 0, 0, 1, 0, this.transformCanvas.tx, this.transformCanvas.ty, 0, 1];\r\n /* var i, len = this.elements.length;\r\n for(i=0;i= 0; i -= 1) {\r\n if (this.elements[i]) {\r\n this.elements[i].destroy();\r\n }\r\n }\r\n this.elements.length = 0;\r\n this.globalData.canvasContext = null;\r\n this.animationItem.container = null;\r\n this.destroyed = true;\r\n};\r\n\r\nCanvasRenderer.prototype.renderFrame = function (num, forceRender) {\r\n if ((this.renderedFrame === num && this.renderConfig.clearCanvas === true && !forceRender) || this.destroyed || num === -1) {\r\n return;\r\n }\r\n this.renderedFrame = num;\r\n this.globalData.frameNum = num - this.animationItem._isFirstFrame;\r\n this.globalData.frameId += 1;\r\n this.globalData._mdf = !this.renderConfig.clearCanvas || forceRender;\r\n this.globalData.projectInterface.currentFrame = num;\r\n\r\n // console.log('--------');\r\n // console.log('NEW: ',num);\r\n var i;\r\n var len = this.layers.length;\r\n if (!this.completeLayers) {\r\n this.checkLayers(num);\r\n }\r\n\r\n for (i = 0; i < len; i += 1) {\r\n if (this.completeLayers || this.elements[i]) {\r\n this.elements[i].prepareFrame(num - this.layers[i].st);\r\n }\r\n }\r\n if (this.globalData._mdf) {\r\n if (this.renderConfig.clearCanvas === true) {\r\n this.canvasContext.clearRect(0, 0, this.transformCanvas.w, this.transformCanvas.h);\r\n } else {\r\n this.save();\r\n }\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n if (this.completeLayers || this.elements[i]) {\r\n this.elements[i].renderFrame();\r\n }\r\n }\r\n if (this.renderConfig.clearCanvas !== true) {\r\n this.restore();\r\n }\r\n }\r\n};\r\n\r\nCanvasRenderer.prototype.buildItem = function (pos) {\r\n var elements = this.elements;\r\n if (elements[pos] || this.layers[pos].ty === 99) {\r\n return;\r\n }\r\n var element = this.createItem(this.layers[pos], this, this.globalData);\r\n elements[pos] = element;\r\n element.initExpressions();\r\n /* if(this.layers[pos].ty === 0){\r\n element.resize(this.globalData.transformCanvas);\r\n } */\r\n};\r\n\r\nCanvasRenderer.prototype.checkPendingElements = function () {\r\n while (this.pendingElements.length) {\r\n var element = this.pendingElements.pop();\r\n element.checkParenting();\r\n }\r\n};\r\n\r\nCanvasRenderer.prototype.hide = function () {\r\n this.animationItem.container.style.display = 'none';\r\n};\r\n\r\nCanvasRenderer.prototype.show = function () {\r\n this.animationItem.container.style.display = 'block';\r\n};\r\n\r\n/* global extendPrototype, BaseRenderer, SVGRenderer, SVGShapeElement, HShapeElement, SVGTextLottieElement,\r\nHTextElement, HCameraElement, IImageElement, HImageElement, SVGCompElement, HCompElement, ISolidElement,\r\nHSolidElement, styleDiv, createTag, createNS */\r\n\r\nfunction HybridRenderer(animationItem, config) {\r\n this.animationItem = animationItem;\r\n this.layers = null;\r\n this.renderedFrame = -1;\r\n this.renderConfig = {\r\n className: (config && config.className) || '',\r\n imagePreserveAspectRatio: (config && config.imagePreserveAspectRatio) || 'xMidYMid slice',\r\n hideOnTransparent: !(config && config.hideOnTransparent === false),\r\n filterSize: {\r\n width: (config && config.filterSize && config.filterSize.width) || '400%',\r\n height: (config && config.filterSize && config.filterSize.height) || '400%',\r\n x: (config && config.filterSize && config.filterSize.x) || '-100%',\r\n y: (config && config.filterSize && config.filterSize.y) || '-100%',\r\n },\r\n };\r\n this.globalData = {\r\n _mdf: false,\r\n frameNum: -1,\r\n renderConfig: this.renderConfig,\r\n };\r\n this.pendingElements = [];\r\n this.elements = [];\r\n this.threeDElements = [];\r\n this.destroyed = false;\r\n this.camera = null;\r\n this.supports3d = true;\r\n this.rendererType = 'html';\r\n}\r\n\r\nextendPrototype([BaseRenderer], HybridRenderer);\r\n\r\nHybridRenderer.prototype.buildItem = SVGRenderer.prototype.buildItem;\r\n\r\nHybridRenderer.prototype.checkPendingElements = function () {\r\n while (this.pendingElements.length) {\r\n var element = this.pendingElements.pop();\r\n element.checkParenting();\r\n }\r\n};\r\n\r\nHybridRenderer.prototype.appendElementInPos = function (element, pos) {\r\n var newDOMElement = element.getBaseElement();\r\n if (!newDOMElement) {\r\n return;\r\n }\r\n var layer = this.layers[pos];\r\n if (!layer.ddd || !this.supports3d) {\r\n if (this.threeDElements) {\r\n this.addTo3dContainer(newDOMElement, pos);\r\n } else {\r\n var i = 0;\r\n var nextDOMElement;\r\n var nextLayer;\r\n var tmpDOMElement;\r\n while (i < pos) {\r\n if (this.elements[i] && this.elements[i] !== true && this.elements[i].getBaseElement) {\r\n nextLayer = this.elements[i];\r\n tmpDOMElement = this.layers[i].ddd ? this.getThreeDContainerByPos(i) : nextLayer.getBaseElement();\r\n nextDOMElement = tmpDOMElement || nextDOMElement;\r\n }\r\n i += 1;\r\n }\r\n if (nextDOMElement) {\r\n if (!layer.ddd || !this.supports3d) {\r\n this.layerElement.insertBefore(newDOMElement, nextDOMElement);\r\n }\r\n } else if (!layer.ddd || !this.supports3d) {\r\n this.layerElement.appendChild(newDOMElement);\r\n }\r\n }\r\n } else {\r\n this.addTo3dContainer(newDOMElement, pos);\r\n }\r\n};\r\n\r\nHybridRenderer.prototype.createShape = function (data) {\r\n if (!this.supports3d) {\r\n return new SVGShapeElement(data, this.globalData, this);\r\n }\r\n return new HShapeElement(data, this.globalData, this);\r\n};\r\n\r\nHybridRenderer.prototype.createText = function (data) {\r\n if (!this.supports3d) {\r\n return new SVGTextLottieElement(data, this.globalData, this);\r\n }\r\n return new HTextElement(data, this.globalData, this);\r\n};\r\n\r\nHybridRenderer.prototype.createCamera = function (data) {\r\n this.camera = new HCameraElement(data, this.globalData, this);\r\n return this.camera;\r\n};\r\n\r\nHybridRenderer.prototype.createImage = function (data) {\r\n if (!this.supports3d) {\r\n return new IImageElement(data, this.globalData, this);\r\n }\r\n return new HImageElement(data, this.globalData, this);\r\n};\r\n\r\nHybridRenderer.prototype.createComp = function (data) {\r\n if (!this.supports3d) {\r\n return new SVGCompElement(data, this.globalData, this);\r\n }\r\n return new HCompElement(data, this.globalData, this);\r\n};\r\n\r\nHybridRenderer.prototype.createSolid = function (data) {\r\n if (!this.supports3d) {\r\n return new ISolidElement(data, this.globalData, this);\r\n }\r\n return new HSolidElement(data, this.globalData, this);\r\n};\r\n\r\nHybridRenderer.prototype.createNull = SVGRenderer.prototype.createNull;\r\n\r\nHybridRenderer.prototype.getThreeDContainerByPos = function (pos) {\r\n var i = 0;\r\n var len = this.threeDElements.length;\r\n while (i < len) {\r\n if (this.threeDElements[i].startPos <= pos && this.threeDElements[i].endPos >= pos) {\r\n return this.threeDElements[i].perspectiveElem;\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n};\r\n\r\nHybridRenderer.prototype.createThreeDContainer = function (pos, type) {\r\n var perspectiveElem = createTag('div');\r\n var style;\r\n var containerStyle;\r\n styleDiv(perspectiveElem);\r\n var container = createTag('div');\r\n styleDiv(container);\r\n if (type === '3d') {\r\n style = perspectiveElem.style;\r\n style.width = this.globalData.compSize.w + 'px';\r\n style.height = this.globalData.compSize.h + 'px';\r\n var center = '50% 50%';\r\n style.webkitTransformOrigin = center;\r\n style.mozTransformOrigin = center;\r\n style.transformOrigin = center;\r\n containerStyle = container.style;\r\n var matrix = 'matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)';\r\n containerStyle.transform = matrix;\r\n containerStyle.webkitTransform = matrix;\r\n }\r\n\r\n perspectiveElem.appendChild(container);\r\n // this.resizerElem.appendChild(perspectiveElem);\r\n var threeDContainerData = {\r\n container: container,\r\n perspectiveElem: perspectiveElem,\r\n startPos: pos,\r\n endPos: pos,\r\n type: type,\r\n };\r\n this.threeDElements.push(threeDContainerData);\r\n return threeDContainerData;\r\n};\r\n\r\nHybridRenderer.prototype.build3dContainers = function () {\r\n var i;\r\n var len = this.layers.length;\r\n var lastThreeDContainerData;\r\n var currentContainer = '';\r\n for (i = 0; i < len; i += 1) {\r\n if (this.layers[i].ddd && this.layers[i].ty !== 3) {\r\n if (currentContainer !== '3d') {\r\n currentContainer = '3d';\r\n lastThreeDContainerData = this.createThreeDContainer(i, '3d');\r\n }\r\n lastThreeDContainerData.endPos = Math.max(lastThreeDContainerData.endPos, i);\r\n } else {\r\n if (currentContainer !== '2d') {\r\n currentContainer = '2d';\r\n lastThreeDContainerData = this.createThreeDContainer(i, '2d');\r\n }\r\n lastThreeDContainerData.endPos = Math.max(lastThreeDContainerData.endPos, i);\r\n }\r\n }\r\n len = this.threeDElements.length;\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n this.resizerElem.appendChild(this.threeDElements[i].perspectiveElem);\r\n }\r\n};\r\n\r\nHybridRenderer.prototype.addTo3dContainer = function (elem, pos) {\r\n var i = 0;\r\n var len = this.threeDElements.length;\r\n while (i < len) {\r\n if (pos <= this.threeDElements[i].endPos) {\r\n var j = this.threeDElements[i].startPos;\r\n var nextElement;\r\n while (j < pos) {\r\n if (this.elements[j] && this.elements[j].getBaseElement) {\r\n nextElement = this.elements[j].getBaseElement();\r\n }\r\n j += 1;\r\n }\r\n if (nextElement) {\r\n this.threeDElements[i].container.insertBefore(elem, nextElement);\r\n } else {\r\n this.threeDElements[i].container.appendChild(elem);\r\n }\r\n break;\r\n }\r\n i += 1;\r\n }\r\n};\r\n\r\nHybridRenderer.prototype.configAnimation = function (animData) {\r\n var resizerElem = createTag('div');\r\n var wrapper = this.animationItem.wrapper;\r\n var style = resizerElem.style;\r\n style.width = animData.w + 'px';\r\n style.height = animData.h + 'px';\r\n this.resizerElem = resizerElem;\r\n styleDiv(resizerElem);\r\n style.transformStyle = 'flat';\r\n style.mozTransformStyle = 'flat';\r\n style.webkitTransformStyle = 'flat';\r\n if (this.renderConfig.className) {\r\n resizerElem.setAttribute('class', this.renderConfig.className);\r\n }\r\n wrapper.appendChild(resizerElem);\r\n\r\n style.overflow = 'hidden';\r\n var svg = createNS('svg');\r\n svg.setAttribute('width', '1');\r\n svg.setAttribute('height', '1');\r\n styleDiv(svg);\r\n this.resizerElem.appendChild(svg);\r\n var defs = createNS('defs');\r\n svg.appendChild(defs);\r\n this.data = animData;\r\n // Mask animation\r\n this.setupGlobalData(animData, svg);\r\n this.globalData.defs = defs;\r\n this.layers = animData.layers;\r\n this.layerElement = this.resizerElem;\r\n this.build3dContainers();\r\n this.updateContainerSize();\r\n};\r\n\r\nHybridRenderer.prototype.destroy = function () {\r\n if (this.animationItem.wrapper) {\r\n this.animationItem.wrapper.innerText = '';\r\n }\r\n this.animationItem.container = null;\r\n this.globalData.defs = null;\r\n var i;\r\n var len = this.layers ? this.layers.length : 0;\r\n for (i = 0; i < len; i += 1) {\r\n this.elements[i].destroy();\r\n }\r\n this.elements.length = 0;\r\n this.destroyed = true;\r\n this.animationItem = null;\r\n};\r\n\r\nHybridRenderer.prototype.updateContainerSize = function () {\r\n var elementWidth = this.animationItem.wrapper.offsetWidth;\r\n var elementHeight = this.animationItem.wrapper.offsetHeight;\r\n var elementRel = elementWidth / elementHeight;\r\n var animationRel = this.globalData.compSize.w / this.globalData.compSize.h;\r\n var sx;\r\n var sy;\r\n var tx;\r\n var ty;\r\n if (animationRel > elementRel) {\r\n sx = elementWidth / (this.globalData.compSize.w);\r\n sy = elementWidth / (this.globalData.compSize.w);\r\n tx = 0;\r\n ty = ((elementHeight - this.globalData.compSize.h * (elementWidth / this.globalData.compSize.w)) / 2);\r\n } else {\r\n sx = elementHeight / (this.globalData.compSize.h);\r\n sy = elementHeight / (this.globalData.compSize.h);\r\n tx = (elementWidth - this.globalData.compSize.w * (elementHeight / this.globalData.compSize.h)) / 2;\r\n ty = 0;\r\n }\r\n var style = this.resizerElem.style;\r\n style.webkitTransform = 'matrix3d(' + sx + ',0,0,0,0,' + sy + ',0,0,0,0,1,0,' + tx + ',' + ty + ',0,1)';\r\n style.transform = style.webkitTransform;\r\n};\r\n\r\nHybridRenderer.prototype.renderFrame = SVGRenderer.prototype.renderFrame;\r\n\r\nHybridRenderer.prototype.hide = function () {\r\n this.resizerElem.style.display = 'none';\r\n};\r\n\r\nHybridRenderer.prototype.show = function () {\r\n this.resizerElem.style.display = 'block';\r\n};\r\n\r\nHybridRenderer.prototype.initItems = function () {\r\n this.buildAllItems();\r\n if (this.camera) {\r\n this.camera.setup();\r\n } else {\r\n var cWidth = this.globalData.compSize.w;\r\n var cHeight = this.globalData.compSize.h;\r\n var i;\r\n var len = this.threeDElements.length;\r\n for (i = 0; i < len; i += 1) {\r\n var style = this.threeDElements[i].perspectiveElem.style;\r\n style.webkitPerspective = Math.sqrt(Math.pow(cWidth, 2) + Math.pow(cHeight, 2)) + 'px';\r\n style.perspective = style.webkitPerspective;\r\n }\r\n }\r\n};\r\n\r\nHybridRenderer.prototype.searchExtraCompositions = function (assets) {\r\n var i;\r\n var len = assets.length;\r\n var floatingContainer = createTag('div');\r\n for (i = 0; i < len; i += 1) {\r\n if (assets[i].xt) {\r\n var comp = this.createComp(assets[i], floatingContainer, this.globalData.comp, null);\r\n comp.initExpressions();\r\n this.globalData.projectInterface.registerComposition(comp);\r\n }\r\n }\r\n};\r\n\r\n/* global createSizedArray, createElementID, PropertyFactory, ShapePropertyFactory, createNS, locationHref */\r\n\r\nfunction MaskElement(data, element, globalData) {\r\n this.data = data;\r\n this.element = element;\r\n this.globalData = globalData;\r\n this.storedData = [];\r\n this.masksProperties = this.data.masksProperties || [];\r\n this.maskElement = null;\r\n var defs = this.globalData.defs;\r\n var i;\r\n var len = this.masksProperties ? this.masksProperties.length : 0;\r\n this.viewData = createSizedArray(len);\r\n this.solidPath = '';\r\n\r\n var path;\r\n var properties = this.masksProperties;\r\n var count = 0;\r\n var currentMasks = [];\r\n var j;\r\n var jLen;\r\n var layerId = createElementID();\r\n var rect;\r\n var expansor;\r\n var feMorph;\r\n var x;\r\n var maskType = 'clipPath';\r\n var maskRef = 'clip-path';\r\n for (i = 0; i < len; i += 1) {\r\n if ((properties[i].mode !== 'a' && properties[i].mode !== 'n') || properties[i].inv || properties[i].o.k !== 100 || properties[i].o.x) {\r\n maskType = 'mask';\r\n maskRef = 'mask';\r\n }\r\n\r\n if ((properties[i].mode === 's' || properties[i].mode === 'i') && count === 0) {\r\n rect = createNS('rect');\r\n rect.setAttribute('fill', '#ffffff');\r\n rect.setAttribute('width', this.element.comp.data.w || 0);\r\n rect.setAttribute('height', this.element.comp.data.h || 0);\r\n currentMasks.push(rect);\r\n } else {\r\n rect = null;\r\n }\r\n\r\n path = createNS('path');\r\n if (properties[i].mode === 'n') {\r\n // TODO move this to a factory or to a constructor\r\n this.viewData[i] = {\r\n op: PropertyFactory.getProp(this.element, properties[i].o, 0, 0.01, this.element),\r\n prop: ShapePropertyFactory.getShapeProp(this.element, properties[i], 3),\r\n elem: path,\r\n lastPath: '',\r\n };\r\n defs.appendChild(path);\r\n } else {\r\n count += 1;\r\n\r\n path.setAttribute('fill', properties[i].mode === 's' ? '#000000' : '#ffffff');\r\n path.setAttribute('clip-rule', 'nonzero');\r\n var filterID;\r\n\r\n if (properties[i].x.k !== 0) {\r\n maskType = 'mask';\r\n maskRef = 'mask';\r\n x = PropertyFactory.getProp(this.element, properties[i].x, 0, null, this.element);\r\n filterID = createElementID();\r\n expansor = createNS('filter');\r\n expansor.setAttribute('id', filterID);\r\n feMorph = createNS('feMorphology');\r\n feMorph.setAttribute('operator', 'erode');\r\n feMorph.setAttribute('in', 'SourceGraphic');\r\n feMorph.setAttribute('radius', '0');\r\n expansor.appendChild(feMorph);\r\n defs.appendChild(expansor);\r\n path.setAttribute('stroke', properties[i].mode === 's' ? '#000000' : '#ffffff');\r\n } else {\r\n feMorph = null;\r\n x = null;\r\n }\r\n\r\n // TODO move this to a factory or to a constructor\r\n this.storedData[i] = {\r\n elem: path,\r\n x: x,\r\n expan: feMorph,\r\n lastPath: '',\r\n lastOperator: '',\r\n filterId: filterID,\r\n lastRadius: 0,\r\n };\r\n if (properties[i].mode === 'i') {\r\n jLen = currentMasks.length;\r\n var g = createNS('g');\r\n for (j = 0; j < jLen; j += 1) {\r\n g.appendChild(currentMasks[j]);\r\n }\r\n var mask = createNS('mask');\r\n mask.setAttribute('mask-type', 'alpha');\r\n mask.setAttribute('id', layerId + '_' + count);\r\n mask.appendChild(path);\r\n defs.appendChild(mask);\r\n g.setAttribute('mask', 'url(' + locationHref + '#' + layerId + '_' + count + ')');\r\n\r\n currentMasks.length = 0;\r\n currentMasks.push(g);\r\n } else {\r\n currentMasks.push(path);\r\n }\r\n if (properties[i].inv && !this.solidPath) {\r\n this.solidPath = this.createLayerSolidPath();\r\n }\r\n // TODO move this to a factory or to a constructor\r\n this.viewData[i] = {\r\n elem: path,\r\n lastPath: '',\r\n op: PropertyFactory.getProp(this.element, properties[i].o, 0, 0.01, this.element),\r\n prop: ShapePropertyFactory.getShapeProp(this.element, properties[i], 3),\r\n invRect: rect,\r\n };\r\n if (!this.viewData[i].prop.k) {\r\n this.drawPath(properties[i], this.viewData[i].prop.v, this.viewData[i]);\r\n }\r\n }\r\n }\r\n\r\n this.maskElement = createNS(maskType);\r\n\r\n len = currentMasks.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.maskElement.appendChild(currentMasks[i]);\r\n }\r\n\r\n if (count > 0) {\r\n this.maskElement.setAttribute('id', layerId);\r\n this.element.maskedElement.setAttribute(maskRef, 'url(' + locationHref + '#' + layerId + ')');\r\n defs.appendChild(this.maskElement);\r\n }\r\n if (this.viewData.length) {\r\n this.element.addRenderableComponent(this);\r\n }\r\n}\r\n\r\nMaskElement.prototype.getMaskProperty = function (pos) {\r\n return this.viewData[pos].prop;\r\n};\r\n\r\nMaskElement.prototype.renderFrame = function (isFirstFrame) {\r\n var finalMat = this.element.finalTransform.mat;\r\n var i;\r\n var len = this.masksProperties.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (this.viewData[i].prop._mdf || isFirstFrame) {\r\n this.drawPath(this.masksProperties[i], this.viewData[i].prop.v, this.viewData[i]);\r\n }\r\n if (this.viewData[i].op._mdf || isFirstFrame) {\r\n this.viewData[i].elem.setAttribute('fill-opacity', this.viewData[i].op.v);\r\n }\r\n if (this.masksProperties[i].mode !== 'n') {\r\n if (this.viewData[i].invRect && (this.element.finalTransform.mProp._mdf || isFirstFrame)) {\r\n this.viewData[i].invRect.setAttribute('transform', finalMat.getInverseMatrix().to2dCSS());\r\n }\r\n if (this.storedData[i].x && (this.storedData[i].x._mdf || isFirstFrame)) {\r\n var feMorph = this.storedData[i].expan;\r\n if (this.storedData[i].x.v < 0) {\r\n if (this.storedData[i].lastOperator !== 'erode') {\r\n this.storedData[i].lastOperator = 'erode';\r\n this.storedData[i].elem.setAttribute('filter', 'url(' + locationHref + '#' + this.storedData[i].filterId + ')');\r\n }\r\n feMorph.setAttribute('radius', -this.storedData[i].x.v);\r\n } else {\r\n if (this.storedData[i].lastOperator !== 'dilate') {\r\n this.storedData[i].lastOperator = 'dilate';\r\n this.storedData[i].elem.setAttribute('filter', null);\r\n }\r\n this.storedData[i].elem.setAttribute('stroke-width', this.storedData[i].x.v * 2);\r\n }\r\n }\r\n }\r\n }\r\n};\r\n\r\nMaskElement.prototype.getMaskelement = function () {\r\n return this.maskElement;\r\n};\r\n\r\nMaskElement.prototype.createLayerSolidPath = function () {\r\n var path = 'M0,0 ';\r\n path += ' h' + this.globalData.compSize.w;\r\n path += ' v' + this.globalData.compSize.h;\r\n path += ' h-' + this.globalData.compSize.w;\r\n path += ' v-' + this.globalData.compSize.h + ' ';\r\n return path;\r\n};\r\n\r\nMaskElement.prototype.drawPath = function (pathData, pathNodes, viewData) {\r\n var pathString = ' M' + pathNodes.v[0][0] + ',' + pathNodes.v[0][1];\r\n var i;\r\n var len;\r\n len = pathNodes._length;\r\n for (i = 1; i < len; i += 1) {\r\n // pathString += \" C\"+pathNodes.o[i-1][0]+','+pathNodes.o[i-1][1] + \" \"+pathNodes.i[i][0]+','+pathNodes.i[i][1] + \" \"+pathNodes.v[i][0]+','+pathNodes.v[i][1];\r\n pathString += ' C' + pathNodes.o[i - 1][0] + ',' + pathNodes.o[i - 1][1] + ' ' + pathNodes.i[i][0] + ',' + pathNodes.i[i][1] + ' ' + pathNodes.v[i][0] + ',' + pathNodes.v[i][1];\r\n }\r\n // pathString += \" C\"+pathNodes.o[i-1][0]+','+pathNodes.o[i-1][1] + \" \"+pathNodes.i[0][0]+','+pathNodes.i[0][1] + \" \"+pathNodes.v[0][0]+','+pathNodes.v[0][1];\r\n if (pathNodes.c && len > 1) {\r\n pathString += ' C' + pathNodes.o[i - 1][0] + ',' + pathNodes.o[i - 1][1] + ' ' + pathNodes.i[0][0] + ',' + pathNodes.i[0][1] + ' ' + pathNodes.v[0][0] + ',' + pathNodes.v[0][1];\r\n }\r\n // pathNodes.__renderedString = pathString;\r\n\r\n if (viewData.lastPath !== pathString) {\r\n var pathShapeValue = '';\r\n if (viewData.elem) {\r\n if (pathNodes.c) {\r\n pathShapeValue = pathData.inv ? this.solidPath + pathString : pathString;\r\n }\r\n viewData.elem.setAttribute('d', pathShapeValue);\r\n }\r\n viewData.lastPath = pathString;\r\n }\r\n};\r\n\r\nMaskElement.prototype.destroy = function () {\r\n this.element = null;\r\n this.globalData = null;\r\n this.maskElement = null;\r\n this.data = null;\r\n this.masksProperties = null;\r\n};\r\n\r\n/**\r\n * @file\r\n * Handles AE's layer parenting property.\r\n *\r\n */\r\n\r\nfunction HierarchyElement() {}\r\n\r\nHierarchyElement.prototype = {\r\n /**\r\n * @function\r\n * Initializes hierarchy properties\r\n *\r\n */\r\n initHierarchy: function () {\r\n // element's parent list\r\n this.hierarchy = [];\r\n // if element is parent of another layer _isParent will be true\r\n this._isParent = false;\r\n this.checkParenting();\r\n },\r\n /**\r\n * @function\r\n * Sets layer's hierarchy.\r\n * @param {array} hierarch\r\n * layer's parent list\r\n *\r\n */\r\n setHierarchy: function (hierarchy) {\r\n this.hierarchy = hierarchy;\r\n },\r\n /**\r\n * @function\r\n * Sets layer as parent.\r\n *\r\n */\r\n setAsParent: function () {\r\n this._isParent = true;\r\n },\r\n /**\r\n * @function\r\n * Searches layer's parenting chain\r\n *\r\n */\r\n checkParenting: function () {\r\n if (this.data.parent !== undefined) {\r\n this.comp.buildElementParenting(this, this.data.parent, []);\r\n }\r\n },\r\n};\r\n\r\n/**\r\n * @file\r\n * Handles element's layer frame update.\r\n * Checks layer in point and out point\r\n *\r\n */\r\n\r\nfunction FrameElement() {}\r\n\r\nFrameElement.prototype = {\r\n /**\r\n * @function\r\n * Initializes frame related properties.\r\n *\r\n */\r\n initFrame: function () {\r\n // set to true when inpoint is rendered\r\n this._isFirstFrame = false;\r\n // list of animated properties\r\n this.dynamicProperties = [];\r\n // If layer has been modified in current tick this will be true\r\n this._mdf = false;\r\n },\r\n /**\r\n * @function\r\n * Calculates all dynamic values\r\n *\r\n * @param {number} num\r\n * current frame number in Layer's time\r\n * @param {boolean} isVisible\r\n * if layers is currently in range\r\n *\r\n */\r\n prepareProperties: function (num, isVisible) {\r\n var i;\r\n var len = this.dynamicProperties.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (isVisible || (this._isParent && this.dynamicProperties[i].propType === 'transform')) {\r\n this.dynamicProperties[i].getValue();\r\n if (this.dynamicProperties[i]._mdf) {\r\n this.globalData._mdf = true;\r\n this._mdf = true;\r\n }\r\n }\r\n }\r\n },\r\n addDynamicProperty: function (prop) {\r\n if (this.dynamicProperties.indexOf(prop) === -1) {\r\n this.dynamicProperties.push(prop);\r\n }\r\n },\r\n};\r\n\r\n/* global TransformPropertyFactory, Matrix */\r\n\r\nfunction TransformElement() {}\r\n\r\nTransformElement.prototype = {\r\n initTransform: function () {\r\n this.finalTransform = {\r\n mProp: this.data.ks ? TransformPropertyFactory.getTransformProperty(this, this.data.ks, this) : { o: 0 },\r\n _matMdf: false,\r\n _opMdf: false,\r\n mat: new Matrix(),\r\n };\r\n if (this.data.ao) {\r\n this.finalTransform.mProp.autoOriented = true;\r\n }\r\n\r\n // TODO: check TYPE 11: Guided elements\r\n if (this.data.ty !== 11) {\r\n // this.createElements();\r\n }\r\n },\r\n renderTransform: function () {\r\n this.finalTransform._opMdf = this.finalTransform.mProp.o._mdf || this._isFirstFrame;\r\n this.finalTransform._matMdf = this.finalTransform.mProp._mdf || this._isFirstFrame;\r\n\r\n if (this.hierarchy) {\r\n var mat;\r\n var finalMat = this.finalTransform.mat;\r\n var i = 0;\r\n var len = this.hierarchy.length;\r\n // Checking if any of the transformation matrices in the hierarchy chain has changed.\r\n if (!this.finalTransform._matMdf) {\r\n while (i < len) {\r\n if (this.hierarchy[i].finalTransform.mProp._mdf) {\r\n this.finalTransform._matMdf = true;\r\n break;\r\n }\r\n i += 1;\r\n }\r\n }\r\n\r\n if (this.finalTransform._matMdf) {\r\n mat = this.finalTransform.mProp.v.props;\r\n finalMat.cloneFromProps(mat);\r\n for (i = 0; i < len; i += 1) {\r\n mat = this.hierarchy[i].finalTransform.mProp.v.props;\r\n finalMat.transform(mat[0], mat[1], mat[2], mat[3], mat[4], mat[5], mat[6], mat[7], mat[8], mat[9], mat[10], mat[11], mat[12], mat[13], mat[14], mat[15]);\r\n }\r\n }\r\n }\r\n },\r\n globalToLocal: function (pt) {\r\n var transforms = [];\r\n transforms.push(this.finalTransform);\r\n var flag = true;\r\n var comp = this.comp;\r\n while (flag) {\r\n if (comp.finalTransform) {\r\n if (comp.data.hasMask) {\r\n transforms.splice(0, 0, comp.finalTransform);\r\n }\r\n comp = comp.comp;\r\n } else {\r\n flag = false;\r\n }\r\n }\r\n var i;\r\n var len = transforms.length;\r\n var ptNew;\r\n for (i = 0; i < len; i += 1) {\r\n ptNew = transforms[i].mat.applyToPointArray(0, 0, 0);\r\n // ptNew = transforms[i].mat.applyToPointArray(pt[0],pt[1],pt[2]);\r\n pt = [pt[0] - ptNew[0], pt[1] - ptNew[1], 0];\r\n }\r\n return pt;\r\n },\r\n mHelper: new Matrix(),\r\n};\r\n\r\nfunction RenderableElement() {\r\n\r\n}\r\n\r\nRenderableElement.prototype = {\r\n initRenderable: function () {\r\n // layer's visibility related to inpoint and outpoint. Rename isVisible to isInRange\r\n this.isInRange = false;\r\n // layer's display state\r\n this.hidden = false;\r\n // If layer's transparency equals 0, it can be hidden\r\n this.isTransparent = false;\r\n // list of animated components\r\n this.renderableComponents = [];\r\n },\r\n addRenderableComponent: function (component) {\r\n if (this.renderableComponents.indexOf(component) === -1) {\r\n this.renderableComponents.push(component);\r\n }\r\n },\r\n removeRenderableComponent: function (component) {\r\n if (this.renderableComponents.indexOf(component) !== -1) {\r\n this.renderableComponents.splice(this.renderableComponents.indexOf(component), 1);\r\n }\r\n },\r\n prepareRenderableFrame: function (num) {\r\n this.checkLayerLimits(num);\r\n },\r\n checkTransparency: function () {\r\n if (this.finalTransform.mProp.o.v <= 0) {\r\n if (!this.isTransparent && this.globalData.renderConfig.hideOnTransparent) {\r\n this.isTransparent = true;\r\n this.hide();\r\n }\r\n } else if (this.isTransparent) {\r\n this.isTransparent = false;\r\n this.show();\r\n }\r\n },\r\n /**\r\n * @function\r\n * Initializes frame related properties.\r\n *\r\n * @param {number} num\r\n * current frame number in Layer's time\r\n *\r\n */\r\n checkLayerLimits: function (num) {\r\n if (this.data.ip - this.data.st <= num && this.data.op - this.data.st > num) {\r\n if (this.isInRange !== true) {\r\n this.globalData._mdf = true;\r\n this._mdf = true;\r\n this.isInRange = true;\r\n this.show();\r\n }\r\n } else if (this.isInRange !== false) {\r\n this.globalData._mdf = true;\r\n this.isInRange = false;\r\n this.hide();\r\n }\r\n },\r\n renderRenderable: function () {\r\n var i;\r\n var len = this.renderableComponents.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.renderableComponents[i].renderFrame(this._isFirstFrame);\r\n }\r\n /* this.maskManager.renderFrame(this.finalTransform.mat);\r\n this.renderableEffectsManager.renderFrame(this._isFirstFrame); */\r\n },\r\n sourceRectAtTime: function () {\r\n return {\r\n top: 0,\r\n left: 0,\r\n width: 100,\r\n height: 100,\r\n };\r\n },\r\n getLayerSize: function () {\r\n if (this.data.ty === 5) {\r\n return { w: this.data.textData.width, h: this.data.textData.height };\r\n }\r\n return { w: this.data.width, h: this.data.height };\r\n },\r\n};\r\n\r\n/* global extendPrototype, RenderableElement, createProxyFunction */\r\n\r\nfunction RenderableDOMElement() {}\r\n\r\n(function () {\r\n var _prototype = {\r\n initElement: function (data, globalData, comp) {\r\n this.initFrame();\r\n this.initBaseData(data, globalData, comp);\r\n this.initTransform(data, globalData, comp);\r\n this.initHierarchy();\r\n this.initRenderable();\r\n this.initRendererElement();\r\n this.createContainerElements();\r\n this.createRenderableComponents();\r\n this.createContent();\r\n this.hide();\r\n },\r\n hide: function () {\r\n if (!this.hidden && (!this.isInRange || this.isTransparent)) {\r\n var elem = this.baseElement || this.layerElement;\r\n elem.style.display = 'none';\r\n this.hidden = true;\r\n }\r\n },\r\n show: function () {\r\n if (this.isInRange && !this.isTransparent) {\r\n if (!this.data.hd) {\r\n var elem = this.baseElement || this.layerElement;\r\n elem.style.display = 'block';\r\n }\r\n this.hidden = false;\r\n this._isFirstFrame = true;\r\n }\r\n },\r\n renderFrame: function () {\r\n // If it is exported as hidden (data.hd === true) no need to render\r\n // If it is not visible no need to render\r\n if (this.data.hd || this.hidden) {\r\n return;\r\n }\r\n this.renderTransform();\r\n this.renderRenderable();\r\n this.renderElement();\r\n this.renderInnerContent();\r\n if (this._isFirstFrame) {\r\n this._isFirstFrame = false;\r\n }\r\n },\r\n renderInnerContent: function () {},\r\n prepareFrame: function (num) {\r\n this._mdf = false;\r\n this.prepareRenderableFrame(num);\r\n this.prepareProperties(num, this.isInRange);\r\n this.checkTransparency();\r\n },\r\n destroy: function () {\r\n this.innerElem = null;\r\n this.destroyBaseElement();\r\n },\r\n };\r\n extendPrototype([RenderableElement, createProxyFunction(_prototype)], RenderableDOMElement);\r\n}());\r\n\r\n/* exported ProcessedElement */\r\n\r\nfunction ProcessedElement(element, position) {\r\n this.elem = element;\r\n this.pos = position;\r\n}\r\n\r\n/* global createNS */\r\n\r\nfunction SVGStyleData(data, level) {\r\n this.data = data;\r\n this.type = data.ty;\r\n this.d = '';\r\n this.lvl = level;\r\n this._mdf = false;\r\n this.closed = data.hd === true;\r\n this.pElem = createNS('path');\r\n this.msElem = null;\r\n}\r\n\r\nSVGStyleData.prototype.reset = function () {\r\n this.d = '';\r\n this._mdf = false;\r\n};\r\n\r\nfunction SVGShapeData(transformers, level, shape) {\r\n this.caches = [];\r\n this.styles = [];\r\n this.transformers = transformers;\r\n this.lStr = '';\r\n this.sh = shape;\r\n this.lvl = level;\r\n // TODO find if there are some cases where _isAnimated can be false.\r\n // For now, since shapes add up with other shapes. They have to be calculated every time.\r\n // One way of finding out is checking if all styles associated to this shape depend only of this shape\r\n this._isAnimated = !!shape.k;\r\n // TODO: commenting this for now since all shapes are animated\r\n var i = 0;\r\n var len = transformers.length;\r\n while (i < len) {\r\n if (transformers[i].mProps.dynamicProperties.length) {\r\n this._isAnimated = true;\r\n break;\r\n }\r\n i += 1;\r\n }\r\n}\r\n\r\nSVGShapeData.prototype.setAsAnimated = function () {\r\n this._isAnimated = true;\r\n};\r\n\r\n/* exported SVGTransformData */\r\n\r\nfunction SVGTransformData(mProps, op, container) {\r\n this.transform = {\r\n mProps: mProps,\r\n op: op,\r\n container: container,\r\n };\r\n this.elements = [];\r\n this._isAnimated = this.transform.mProps.dynamicProperties.length || this.transform.op.effectsSequence.length;\r\n}\r\n\r\n/* global DashProperty, PropertyFactory, extendPrototype, DynamicPropertyContainer */\r\n\r\nfunction SVGStrokeStyleData(elem, data, styleOb) {\r\n this.initDynamicPropertyContainer(elem);\r\n this.getValue = this.iterateDynamicProperties;\r\n this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this);\r\n this.w = PropertyFactory.getProp(elem, data.w, 0, null, this);\r\n this.d = new DashProperty(elem, data.d || {}, 'svg', this);\r\n this.c = PropertyFactory.getProp(elem, data.c, 1, 255, this);\r\n this.style = styleOb;\r\n this._isAnimated = !!this._isAnimated;\r\n}\r\n\r\nextendPrototype([DynamicPropertyContainer], SVGStrokeStyleData);\r\n\r\n/* global PropertyFactory, extendPrototype, DynamicPropertyContainer */\r\n\r\nfunction SVGFillStyleData(elem, data, styleOb) {\r\n this.initDynamicPropertyContainer(elem);\r\n this.getValue = this.iterateDynamicProperties;\r\n this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this);\r\n this.c = PropertyFactory.getProp(elem, data.c, 1, 255, this);\r\n this.style = styleOb;\r\n}\r\n\r\nextendPrototype([DynamicPropertyContainer], SVGFillStyleData);\r\n\r\n/* global PropertyFactory, degToRads, GradientProperty, createElementID, createNS, locationHref,\r\nextendPrototype, DynamicPropertyContainer */\r\n\r\nfunction SVGGradientFillStyleData(elem, data, styleOb) {\r\n this.initDynamicPropertyContainer(elem);\r\n this.getValue = this.iterateDynamicProperties;\r\n this.initGradientData(elem, data, styleOb);\r\n}\r\n\r\nSVGGradientFillStyleData.prototype.initGradientData = function (elem, data, styleOb) {\r\n this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this);\r\n this.s = PropertyFactory.getProp(elem, data.s, 1, null, this);\r\n this.e = PropertyFactory.getProp(elem, data.e, 1, null, this);\r\n this.h = PropertyFactory.getProp(elem, data.h || { k: 0 }, 0, 0.01, this);\r\n this.a = PropertyFactory.getProp(elem, data.a || { k: 0 }, 0, degToRads, this);\r\n this.g = new GradientProperty(elem, data.g, this);\r\n this.style = styleOb;\r\n this.stops = [];\r\n this.setGradientData(styleOb.pElem, data);\r\n this.setGradientOpacity(data, styleOb);\r\n this._isAnimated = !!this._isAnimated;\r\n};\r\n\r\nSVGGradientFillStyleData.prototype.setGradientData = function (pathElement, data) {\r\n var gradientId = createElementID();\r\n var gfill = createNS(data.t === 1 ? 'linearGradient' : 'radialGradient');\r\n gfill.setAttribute('id', gradientId);\r\n gfill.setAttribute('spreadMethod', 'pad');\r\n gfill.setAttribute('gradientUnits', 'userSpaceOnUse');\r\n var stops = [];\r\n var stop;\r\n var j;\r\n var jLen;\r\n jLen = data.g.p * 4;\r\n for (j = 0; j < jLen; j += 4) {\r\n stop = createNS('stop');\r\n gfill.appendChild(stop);\r\n stops.push(stop);\r\n }\r\n pathElement.setAttribute(data.ty === 'gf' ? 'fill' : 'stroke', 'url(' + locationHref + '#' + gradientId + ')');\r\n\r\n this.gf = gfill;\r\n this.cst = stops;\r\n};\r\n\r\nSVGGradientFillStyleData.prototype.setGradientOpacity = function (data, styleOb) {\r\n if (this.g._hasOpacity && !this.g._collapsable) {\r\n var stop;\r\n var j;\r\n var jLen;\r\n var mask = createNS('mask');\r\n var maskElement = createNS('path');\r\n mask.appendChild(maskElement);\r\n var opacityId = createElementID();\r\n var maskId = createElementID();\r\n mask.setAttribute('id', maskId);\r\n var opFill = createNS(data.t === 1 ? 'linearGradient' : 'radialGradient');\r\n opFill.setAttribute('id', opacityId);\r\n opFill.setAttribute('spreadMethod', 'pad');\r\n opFill.setAttribute('gradientUnits', 'userSpaceOnUse');\r\n jLen = data.g.k.k[0].s ? data.g.k.k[0].s.length : data.g.k.k.length;\r\n var stops = this.stops;\r\n for (j = data.g.p * 4; j < jLen; j += 2) {\r\n stop = createNS('stop');\r\n stop.setAttribute('stop-color', 'rgb(255,255,255)');\r\n opFill.appendChild(stop);\r\n stops.push(stop);\r\n }\r\n maskElement.setAttribute(data.ty === 'gf' ? 'fill' : 'stroke', 'url(' + locationHref + '#' + opacityId + ')');\r\n this.of = opFill;\r\n this.ms = mask;\r\n this.ost = stops;\r\n this.maskId = maskId;\r\n styleOb.msElem = maskElement;\r\n }\r\n};\r\n\r\nextendPrototype([DynamicPropertyContainer], SVGGradientFillStyleData);\r\n\r\n/* global PropertyFactory, DashProperty, extendPrototype, SVGGradientFillStyleData, DynamicPropertyContainer */\r\n\r\nfunction SVGGradientStrokeStyleData(elem, data, styleOb) {\r\n this.initDynamicPropertyContainer(elem);\r\n this.getValue = this.iterateDynamicProperties;\r\n this.w = PropertyFactory.getProp(elem, data.w, 0, null, this);\r\n this.d = new DashProperty(elem, data.d || {}, 'svg', this);\r\n this.initGradientData(elem, data, styleOb);\r\n this._isAnimated = !!this._isAnimated;\r\n}\r\n\r\nextendPrototype([SVGGradientFillStyleData, DynamicPropertyContainer], SVGGradientStrokeStyleData);\r\n\r\n/* global createNS */\r\n/* exported ShapeGroupData */\r\n\r\nfunction ShapeGroupData() {\r\n this.it = [];\r\n this.prevViewData = [];\r\n this.gr = createNS('g');\r\n}\r\n\r\n/* global Matrix, buildShapeString, bmFloor */\r\n/* exported SVGElementsRenderer */\r\n\r\nvar SVGElementsRenderer = (function () {\r\n var _identityMatrix = new Matrix();\r\n var _matrixHelper = new Matrix();\r\n\r\n var ob = {\r\n createRenderFunction: createRenderFunction,\r\n };\r\n\r\n function createRenderFunction(data) {\r\n switch (data.ty) {\r\n case 'fl':\r\n return renderFill;\r\n case 'gf':\r\n return renderGradient;\r\n case 'gs':\r\n return renderGradientStroke;\r\n case 'st':\r\n return renderStroke;\r\n case 'sh':\r\n case 'el':\r\n case 'rc':\r\n case 'sr':\r\n return renderPath;\r\n case 'tr':\r\n return renderContentTransform;\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n function renderContentTransform(styleData, itemData, isFirstFrame) {\r\n if (isFirstFrame || itemData.transform.op._mdf) {\r\n itemData.transform.container.setAttribute('opacity', itemData.transform.op.v);\r\n }\r\n if (isFirstFrame || itemData.transform.mProps._mdf) {\r\n itemData.transform.container.setAttribute('transform', itemData.transform.mProps.v.to2dCSS());\r\n }\r\n }\r\n\r\n function renderPath(styleData, itemData, isFirstFrame) {\r\n var j;\r\n var jLen;\r\n var pathStringTransformed;\r\n var redraw;\r\n var pathNodes;\r\n var l;\r\n var lLen = itemData.styles.length;\r\n var lvl = itemData.lvl;\r\n var paths;\r\n var mat;\r\n var props;\r\n var iterations;\r\n var k;\r\n for (l = 0; l < lLen; l += 1) {\r\n redraw = itemData.sh._mdf || isFirstFrame;\r\n if (itemData.styles[l].lvl < lvl) {\r\n mat = _matrixHelper.reset();\r\n iterations = lvl - itemData.styles[l].lvl;\r\n k = itemData.transformers.length - 1;\r\n while (!redraw && iterations > 0) {\r\n redraw = itemData.transformers[k].mProps._mdf || redraw;\r\n iterations -= 1;\r\n k -= 1;\r\n }\r\n if (redraw) {\r\n iterations = lvl - itemData.styles[l].lvl;\r\n k = itemData.transformers.length - 1;\r\n while (iterations > 0) {\r\n props = itemData.transformers[k].mProps.v.props;\r\n mat.transform(props[0], props[1], props[2], props[3], props[4], props[5], props[6], props[7], props[8], props[9], props[10], props[11], props[12], props[13], props[14], props[15]);\r\n iterations -= 1;\r\n k -= 1;\r\n }\r\n }\r\n } else {\r\n mat = _identityMatrix;\r\n }\r\n paths = itemData.sh.paths;\r\n jLen = paths._length;\r\n if (redraw) {\r\n pathStringTransformed = '';\r\n for (j = 0; j < jLen; j += 1) {\r\n pathNodes = paths.shapes[j];\r\n if (pathNodes && pathNodes._length) {\r\n pathStringTransformed += buildShapeString(pathNodes, pathNodes._length, pathNodes.c, mat);\r\n }\r\n }\r\n itemData.caches[l] = pathStringTransformed;\r\n } else {\r\n pathStringTransformed = itemData.caches[l];\r\n }\r\n itemData.styles[l].d += styleData.hd === true ? '' : pathStringTransformed;\r\n itemData.styles[l]._mdf = redraw || itemData.styles[l]._mdf;\r\n }\r\n }\r\n\r\n function renderFill(styleData, itemData, isFirstFrame) {\r\n var styleElem = itemData.style;\r\n\r\n if (itemData.c._mdf || isFirstFrame) {\r\n styleElem.pElem.setAttribute('fill', 'rgb(' + bmFloor(itemData.c.v[0]) + ',' + bmFloor(itemData.c.v[1]) + ',' + bmFloor(itemData.c.v[2]) + ')');\r\n }\r\n if (itemData.o._mdf || isFirstFrame) {\r\n styleElem.pElem.setAttribute('fill-opacity', itemData.o.v);\r\n }\r\n }\r\n\r\n function renderGradientStroke(styleData, itemData, isFirstFrame) {\r\n renderGradient(styleData, itemData, isFirstFrame);\r\n renderStroke(styleData, itemData, isFirstFrame);\r\n }\r\n\r\n function renderGradient(styleData, itemData, isFirstFrame) {\r\n var gfill = itemData.gf;\r\n var hasOpacity = itemData.g._hasOpacity;\r\n var pt1 = itemData.s.v;\r\n var pt2 = itemData.e.v;\r\n\r\n if (itemData.o._mdf || isFirstFrame) {\r\n var attr = styleData.ty === 'gf' ? 'fill-opacity' : 'stroke-opacity';\r\n itemData.style.pElem.setAttribute(attr, itemData.o.v);\r\n }\r\n if (itemData.s._mdf || isFirstFrame) {\r\n var attr1 = styleData.t === 1 ? 'x1' : 'cx';\r\n var attr2 = attr1 === 'x1' ? 'y1' : 'cy';\r\n gfill.setAttribute(attr1, pt1[0]);\r\n gfill.setAttribute(attr2, pt1[1]);\r\n if (hasOpacity && !itemData.g._collapsable) {\r\n itemData.of.setAttribute(attr1, pt1[0]);\r\n itemData.of.setAttribute(attr2, pt1[1]);\r\n }\r\n }\r\n var stops;\r\n var i;\r\n var len;\r\n var stop;\r\n if (itemData.g._cmdf || isFirstFrame) {\r\n stops = itemData.cst;\r\n var cValues = itemData.g.c;\r\n len = stops.length;\r\n for (i = 0; i < len; i += 1) {\r\n stop = stops[i];\r\n stop.setAttribute('offset', cValues[i * 4] + '%');\r\n stop.setAttribute('stop-color', 'rgb(' + cValues[i * 4 + 1] + ',' + cValues[i * 4 + 2] + ',' + cValues[i * 4 + 3] + ')');\r\n }\r\n }\r\n if (hasOpacity && (itemData.g._omdf || isFirstFrame)) {\r\n var oValues = itemData.g.o;\r\n if (itemData.g._collapsable) {\r\n stops = itemData.cst;\r\n } else {\r\n stops = itemData.ost;\r\n }\r\n len = stops.length;\r\n for (i = 0; i < len; i += 1) {\r\n stop = stops[i];\r\n if (!itemData.g._collapsable) {\r\n stop.setAttribute('offset', oValues[i * 2] + '%');\r\n }\r\n stop.setAttribute('stop-opacity', oValues[i * 2 + 1]);\r\n }\r\n }\r\n if (styleData.t === 1) {\r\n if (itemData.e._mdf || isFirstFrame) {\r\n gfill.setAttribute('x2', pt2[0]);\r\n gfill.setAttribute('y2', pt2[1]);\r\n if (hasOpacity && !itemData.g._collapsable) {\r\n itemData.of.setAttribute('x2', pt2[0]);\r\n itemData.of.setAttribute('y2', pt2[1]);\r\n }\r\n }\r\n } else {\r\n var rad;\r\n if (itemData.s._mdf || itemData.e._mdf || isFirstFrame) {\r\n rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\r\n gfill.setAttribute('r', rad);\r\n if (hasOpacity && !itemData.g._collapsable) {\r\n itemData.of.setAttribute('r', rad);\r\n }\r\n }\r\n if (itemData.e._mdf || itemData.h._mdf || itemData.a._mdf || isFirstFrame) {\r\n if (!rad) {\r\n rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\r\n }\r\n var ang = Math.atan2(pt2[1] - pt1[1], pt2[0] - pt1[0]);\r\n\r\n var percent = itemData.h.v;\r\n if (percent >= 1) {\r\n percent = 0.99;\r\n } else if (percent <= -1) {\r\n percent = -0.99;\r\n }\r\n var dist = rad * percent;\r\n var x = Math.cos(ang + itemData.a.v) * dist + pt1[0];\r\n var y = Math.sin(ang + itemData.a.v) * dist + pt1[1];\r\n gfill.setAttribute('fx', x);\r\n gfill.setAttribute('fy', y);\r\n if (hasOpacity && !itemData.g._collapsable) {\r\n itemData.of.setAttribute('fx', x);\r\n itemData.of.setAttribute('fy', y);\r\n }\r\n }\r\n // gfill.setAttribute('fy','200');\r\n }\r\n }\r\n\r\n function renderStroke(styleData, itemData, isFirstFrame) {\r\n var styleElem = itemData.style;\r\n var d = itemData.d;\r\n if (d && (d._mdf || isFirstFrame) && d.dashStr) {\r\n styleElem.pElem.setAttribute('stroke-dasharray', d.dashStr);\r\n styleElem.pElem.setAttribute('stroke-dashoffset', d.dashoffset[0]);\r\n }\r\n if (itemData.c && (itemData.c._mdf || isFirstFrame)) {\r\n styleElem.pElem.setAttribute('stroke', 'rgb(' + bmFloor(itemData.c.v[0]) + ',' + bmFloor(itemData.c.v[1]) + ',' + bmFloor(itemData.c.v[2]) + ')');\r\n }\r\n if (itemData.o._mdf || isFirstFrame) {\r\n styleElem.pElem.setAttribute('stroke-opacity', itemData.o.v);\r\n }\r\n if (itemData.w._mdf || isFirstFrame) {\r\n styleElem.pElem.setAttribute('stroke-width', itemData.w.v);\r\n if (styleElem.msElem) {\r\n styleElem.msElem.setAttribute('stroke-width', itemData.w.v);\r\n }\r\n }\r\n }\r\n\r\n return ob;\r\n}());\r\n\r\n/* global Matrix */\r\n\r\nfunction ShapeTransformManager() {\r\n this.sequences = {};\r\n this.sequenceList = [];\r\n this.transform_key_count = 0;\r\n}\r\n\r\nShapeTransformManager.prototype = {\r\n addTransformSequence: function (transforms) {\r\n var i;\r\n var len = transforms.length;\r\n var key = '_';\r\n for (i = 0; i < len; i += 1) {\r\n key += transforms[i].transform.key + '_';\r\n }\r\n var sequence = this.sequences[key];\r\n if (!sequence) {\r\n sequence = {\r\n transforms: [].concat(transforms),\r\n finalTransform: new Matrix(),\r\n _mdf: false,\r\n };\r\n this.sequences[key] = sequence;\r\n this.sequenceList.push(sequence);\r\n }\r\n return sequence;\r\n },\r\n processSequence: function (sequence, isFirstFrame) {\r\n var i = 0;\r\n var len = sequence.transforms.length;\r\n var _mdf = isFirstFrame;\r\n while (i < len && !isFirstFrame) {\r\n if (sequence.transforms[i].transform.mProps._mdf) {\r\n _mdf = true;\r\n break;\r\n }\r\n i += 1;\r\n }\r\n if (_mdf) {\r\n var props;\r\n sequence.finalTransform.reset();\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n props = sequence.transforms[i].transform.mProps.v.props;\r\n sequence.finalTransform.transform(props[0], props[1], props[2], props[3], props[4], props[5], props[6], props[7], props[8], props[9], props[10], props[11], props[12], props[13], props[14], props[15]);\r\n }\r\n }\r\n sequence._mdf = _mdf;\r\n },\r\n processSequences: function (isFirstFrame) {\r\n var i;\r\n var len = this.sequenceList.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.processSequence(this.sequenceList[i], isFirstFrame);\r\n }\r\n },\r\n getNewKey: function () {\r\n this.transform_key_count += 1;\r\n return '_' + this.transform_key_count;\r\n },\r\n};\r\n\r\n/* global ShapePropertyFactory, SVGShapeData */\r\n\r\nfunction CVShapeData(element, data, styles, transformsManager) {\r\n this.styledShapes = [];\r\n this.tr = [0, 0, 0, 0, 0, 0];\r\n var ty = 4;\r\n if (data.ty === 'rc') {\r\n ty = 5;\r\n } else if (data.ty === 'el') {\r\n ty = 6;\r\n } else if (data.ty === 'sr') {\r\n ty = 7;\r\n }\r\n this.sh = ShapePropertyFactory.getShapeProp(element, data, ty, element);\r\n var i;\r\n var len = styles.length;\r\n var styledShape;\r\n for (i = 0; i < len; i += 1) {\r\n if (!styles[i].closed) {\r\n styledShape = {\r\n transforms: transformsManager.addTransformSequence(styles[i].transforms),\r\n trNodes: [],\r\n };\r\n this.styledShapes.push(styledShape);\r\n styles[i].elements.push(styledShape);\r\n }\r\n }\r\n}\r\n\r\nCVShapeData.prototype.setAsAnimated = SVGShapeData.prototype.setAsAnimated;\r\n\r\n/* global LayerExpressionInterface, EffectsExpressionInterface, CompExpressionInterface, ShapeExpressionInterface,\r\nTextExpressionInterface, getBlendMode,createElementID, EffectsManager */\r\n\r\nfunction BaseElement() {\r\n}\r\n\r\nBaseElement.prototype = {\r\n checkMasks: function () {\r\n if (!this.data.hasMask) {\r\n return false;\r\n }\r\n var i = 0;\r\n var len = this.data.masksProperties.length;\r\n while (i < len) {\r\n if ((this.data.masksProperties[i].mode !== 'n' && this.data.masksProperties[i].cl !== false)) {\r\n return true;\r\n }\r\n i += 1;\r\n }\r\n return false;\r\n },\r\n initExpressions: function () {\r\n this.layerInterface = LayerExpressionInterface(this);\r\n if (this.data.hasMask && this.maskManager) {\r\n this.layerInterface.registerMaskInterface(this.maskManager);\r\n }\r\n var effectsInterface = EffectsExpressionInterface.createEffectsInterface(this, this.layerInterface);\r\n this.layerInterface.registerEffectsInterface(effectsInterface);\r\n\r\n if (this.data.ty === 0 || this.data.xt) {\r\n this.compInterface = CompExpressionInterface(this);\r\n } else if (this.data.ty === 4) {\r\n this.layerInterface.shapeInterface = ShapeExpressionInterface(this.shapesData, this.itemsData, this.layerInterface);\r\n this.layerInterface.content = this.layerInterface.shapeInterface;\r\n } else if (this.data.ty === 5) {\r\n this.layerInterface.textInterface = TextExpressionInterface(this);\r\n this.layerInterface.text = this.layerInterface.textInterface;\r\n }\r\n },\r\n setBlendMode: function () {\r\n var blendModeValue = getBlendMode(this.data.bm);\r\n var elem = this.baseElement || this.layerElement;\r\n\r\n elem.style['mix-blend-mode'] = blendModeValue;\r\n },\r\n initBaseData: function (data, globalData, comp) {\r\n this.globalData = globalData;\r\n this.comp = comp;\r\n this.data = data;\r\n this.layerId = createElementID();\r\n\r\n // Stretch factor for old animations missing this property.\r\n if (!this.data.sr) {\r\n this.data.sr = 1;\r\n }\r\n // effects manager\r\n this.effectsManager = new EffectsManager(this.data, this, this.dynamicProperties);\r\n },\r\n getType: function () {\r\n return this.type;\r\n },\r\n sourceRectAtTime: function () {},\r\n};\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, HierarchyElement, FrameElement */\r\n\r\nfunction NullElement(data, globalData, comp) {\r\n this.initFrame();\r\n this.initBaseData(data, globalData, comp);\r\n this.initFrame();\r\n this.initTransform(data, globalData, comp);\r\n this.initHierarchy();\r\n}\r\n\r\nNullElement.prototype.prepareFrame = function (num) {\r\n this.prepareProperties(num, true);\r\n};\r\n\r\nNullElement.prototype.renderFrame = function () {\r\n};\r\n\r\nNullElement.prototype.getBaseElement = function () {\r\n return null;\r\n};\r\n\r\nNullElement.prototype.destroy = function () {\r\n};\r\n\r\nNullElement.prototype.sourceRectAtTime = function () {\r\n};\r\n\r\nNullElement.prototype.hide = function () {\r\n};\r\n\r\nextendPrototype([BaseElement, TransformElement, HierarchyElement, FrameElement], NullElement);\r\n\r\n/* global filtersFactory, featureSupport, filtersFactory, createElementID, createNS, MaskElement, SVGEffects, locationHref */\r\n\r\nfunction SVGBaseElement() {\r\n}\r\n\r\nSVGBaseElement.prototype = {\r\n initRendererElement: function () {\r\n this.layerElement = createNS('g');\r\n },\r\n createContainerElements: function () {\r\n this.matteElement = createNS('g');\r\n this.transformedElement = this.layerElement;\r\n this.maskedElement = this.layerElement;\r\n this._sizeChanged = false;\r\n var layerElementParent = null;\r\n // If this layer acts as a mask for the following layer\r\n var filId;\r\n var fil;\r\n var gg;\r\n if (this.data.td) {\r\n if (this.data.td == 3 || this.data.td == 1) { // eslint-disable-line eqeqeq\r\n var masker = createNS('mask');\r\n masker.setAttribute('id', this.layerId);\r\n masker.setAttribute('mask-type', this.data.td == 3 ? 'luminance' : 'alpha'); // eslint-disable-line eqeqeq\r\n masker.appendChild(this.layerElement);\r\n layerElementParent = masker;\r\n this.globalData.defs.appendChild(masker);\r\n // This is only for IE and Edge when mask if of type alpha\r\n if (!featureSupport.maskType && this.data.td == 1) { // eslint-disable-line eqeqeq\r\n masker.setAttribute('mask-type', 'luminance');\r\n filId = createElementID();\r\n fil = filtersFactory.createFilter(filId);\r\n this.globalData.defs.appendChild(fil);\r\n fil.appendChild(filtersFactory.createAlphaToLuminanceFilter());\r\n gg = createNS('g');\r\n gg.appendChild(this.layerElement);\r\n layerElementParent = gg;\r\n masker.appendChild(gg);\r\n gg.setAttribute('filter', 'url(' + locationHref + '#' + filId + ')');\r\n }\r\n } else if (this.data.td == 2) { // eslint-disable-line eqeqeq\r\n var maskGroup = createNS('mask');\r\n maskGroup.setAttribute('id', this.layerId);\r\n maskGroup.setAttribute('mask-type', 'alpha');\r\n var maskGrouper = createNS('g');\r\n maskGroup.appendChild(maskGrouper);\r\n filId = createElementID();\r\n fil = filtersFactory.createFilter(filId);\r\n /// /\r\n\r\n // This solution doesn't work on Android when meta tag with viewport attribute is set\r\n /* var feColorMatrix = createNS('feColorMatrix');\r\n feColorMatrix.setAttribute('type', 'matrix');\r\n feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');\r\n feColorMatrix.setAttribute('values','1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 -1 1');\r\n fil.appendChild(feColorMatrix); */\r\n /// /\r\n var feCTr = createNS('feComponentTransfer');\r\n feCTr.setAttribute('in', 'SourceGraphic');\r\n fil.appendChild(feCTr);\r\n var feFunc = createNS('feFuncA');\r\n feFunc.setAttribute('type', 'table');\r\n feFunc.setAttribute('tableValues', '1.0 0.0');\r\n feCTr.appendChild(feFunc);\r\n /// /\r\n this.globalData.defs.appendChild(fil);\r\n var alphaRect = createNS('rect');\r\n alphaRect.setAttribute('width', this.comp.data.w);\r\n alphaRect.setAttribute('height', this.comp.data.h);\r\n alphaRect.setAttribute('x', '0');\r\n alphaRect.setAttribute('y', '0');\r\n alphaRect.setAttribute('fill', '#ffffff');\r\n alphaRect.setAttribute('opacity', '0');\r\n maskGrouper.setAttribute('filter', 'url(' + locationHref + '#' + filId + ')');\r\n maskGrouper.appendChild(alphaRect);\r\n maskGrouper.appendChild(this.layerElement);\r\n layerElementParent = maskGrouper;\r\n if (!featureSupport.maskType) {\r\n maskGroup.setAttribute('mask-type', 'luminance');\r\n fil.appendChild(filtersFactory.createAlphaToLuminanceFilter());\r\n gg = createNS('g');\r\n maskGrouper.appendChild(alphaRect);\r\n gg.appendChild(this.layerElement);\r\n layerElementParent = gg;\r\n maskGrouper.appendChild(gg);\r\n }\r\n this.globalData.defs.appendChild(maskGroup);\r\n }\r\n } else if (this.data.tt) {\r\n this.matteElement.appendChild(this.layerElement);\r\n layerElementParent = this.matteElement;\r\n this.baseElement = this.matteElement;\r\n } else {\r\n this.baseElement = this.layerElement;\r\n }\r\n if (this.data.ln) {\r\n this.layerElement.setAttribute('id', this.data.ln);\r\n }\r\n if (this.data.cl) {\r\n this.layerElement.setAttribute('class', this.data.cl);\r\n }\r\n // Clipping compositions to hide content that exceeds boundaries. If collapsed transformations is on, component should not be clipped\r\n if (this.data.ty === 0 && !this.data.hd) {\r\n var cp = createNS('clipPath');\r\n var pt = createNS('path');\r\n pt.setAttribute('d', 'M0,0 L' + this.data.w + ',0 L' + this.data.w + ',' + this.data.h + ' L0,' + this.data.h + 'z');\r\n var clipId = createElementID();\r\n cp.setAttribute('id', clipId);\r\n cp.appendChild(pt);\r\n this.globalData.defs.appendChild(cp);\r\n\r\n if (this.checkMasks()) {\r\n var cpGroup = createNS('g');\r\n cpGroup.setAttribute('clip-path', 'url(' + locationHref + '#' + clipId + ')');\r\n cpGroup.appendChild(this.layerElement);\r\n this.transformedElement = cpGroup;\r\n if (layerElementParent) {\r\n layerElementParent.appendChild(this.transformedElement);\r\n } else {\r\n this.baseElement = this.transformedElement;\r\n }\r\n } else {\r\n this.layerElement.setAttribute('clip-path', 'url(' + locationHref + '#' + clipId + ')');\r\n }\r\n }\r\n if (this.data.bm !== 0) {\r\n this.setBlendMode();\r\n }\r\n },\r\n renderElement: function () {\r\n if (this.finalTransform._matMdf) {\r\n this.transformedElement.setAttribute('transform', this.finalTransform.mat.to2dCSS());\r\n }\r\n if (this.finalTransform._opMdf) {\r\n this.transformedElement.setAttribute('opacity', this.finalTransform.mProp.o.v);\r\n }\r\n },\r\n destroyBaseElement: function () {\r\n this.layerElement = null;\r\n this.matteElement = null;\r\n this.maskManager.destroy();\r\n },\r\n getBaseElement: function () {\r\n if (this.data.hd) {\r\n return null;\r\n }\r\n return this.baseElement;\r\n },\r\n createRenderableComponents: function () {\r\n this.maskManager = new MaskElement(this.data, this, this.globalData);\r\n this.renderableEffectsManager = new SVGEffects(this);\r\n },\r\n setMatte: function (id) {\r\n if (!this.matteElement) {\r\n return;\r\n }\r\n this.matteElement.setAttribute('mask', 'url(' + locationHref + '#' + id + ')');\r\n },\r\n};\r\n\r\n/* global ProcessedElement */\r\n\r\nfunction IShapeElement() {\r\n}\r\n\r\nIShapeElement.prototype = {\r\n addShapeToModifiers: function (data) {\r\n var i;\r\n var len = this.shapeModifiers.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.shapeModifiers[i].addShape(data);\r\n }\r\n },\r\n isShapeInAnimatedModifiers: function (data) {\r\n var i = 0;\r\n var len = this.shapeModifiers.length;\r\n while (i < len) {\r\n if (this.shapeModifiers[i].isAnimatedWithShape(data)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n },\r\n renderModifiers: function () {\r\n if (!this.shapeModifiers.length) {\r\n return;\r\n }\r\n var i;\r\n var len = this.shapes.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.shapes[i].sh.reset();\r\n }\r\n\r\n len = this.shapeModifiers.length;\r\n var shouldBreakProcess;\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n shouldBreakProcess = this.shapeModifiers[i].processShapes(this._isFirstFrame);\r\n // workaround to fix cases where a repeater resets the shape so the following processes get called twice\r\n // TODO: find a better solution for this\r\n if (shouldBreakProcess) {\r\n break;\r\n }\r\n }\r\n },\r\n lcEnum: {\r\n 1: 'butt',\r\n 2: 'round',\r\n 3: 'square',\r\n },\r\n ljEnum: {\r\n 1: 'miter',\r\n 2: 'round',\r\n 3: 'bevel',\r\n },\r\n searchProcessedElement: function (elem) {\r\n var elements = this.processedElements;\r\n var i = 0;\r\n var len = elements.length;\r\n while (i < len) {\r\n if (elements[i].elem === elem) {\r\n return elements[i].pos;\r\n }\r\n i += 1;\r\n }\r\n return 0;\r\n },\r\n addProcessedElement: function (elem, pos) {\r\n var elements = this.processedElements;\r\n var i = elements.length;\r\n while (i) {\r\n i -= 1;\r\n if (elements[i].elem === elem) {\r\n elements[i].pos = pos;\r\n return;\r\n }\r\n }\r\n elements.push(new ProcessedElement(elem, pos));\r\n },\r\n prepareFrame: function (num) {\r\n this.prepareRenderableFrame(num);\r\n this.prepareProperties(num, this.isInRange);\r\n },\r\n};\r\n\r\n/* global TextProperty, TextAnimatorProperty, buildShapeString, LetterProps */\r\n\r\nfunction ITextElement() {\r\n}\r\n\r\nITextElement.prototype.initElement = function (data, globalData, comp) {\r\n this.lettersChangedFlag = true;\r\n this.initFrame();\r\n this.initBaseData(data, globalData, comp);\r\n this.textProperty = new TextProperty(this, data.t, this.dynamicProperties);\r\n this.textAnimator = new TextAnimatorProperty(data.t, this.renderType, this);\r\n this.initTransform(data, globalData, comp);\r\n this.initHierarchy();\r\n this.initRenderable();\r\n this.initRendererElement();\r\n this.createContainerElements();\r\n this.createRenderableComponents();\r\n this.createContent();\r\n this.hide();\r\n this.textAnimator.searchProperties(this.dynamicProperties);\r\n};\r\n\r\nITextElement.prototype.prepareFrame = function (num) {\r\n this._mdf = false;\r\n this.prepareRenderableFrame(num);\r\n this.prepareProperties(num, this.isInRange);\r\n if (this.textProperty._mdf || this.textProperty._isFirstFrame) {\r\n this.buildNewText();\r\n this.textProperty._isFirstFrame = false;\r\n this.textProperty._mdf = false;\r\n }\r\n};\r\n\r\nITextElement.prototype.createPathShape = function (matrixHelper, shapes) {\r\n var j;\r\n var jLen = shapes.length;\r\n var pathNodes;\r\n var shapeStr = '';\r\n for (j = 0; j < jLen; j += 1) {\r\n pathNodes = shapes[j].ks.k;\r\n shapeStr += buildShapeString(pathNodes, pathNodes.i.length, true, matrixHelper);\r\n }\r\n return shapeStr;\r\n};\r\n\r\nITextElement.prototype.updateDocumentData = function (newData, index) {\r\n this.textProperty.updateDocumentData(newData, index);\r\n};\r\n\r\nITextElement.prototype.canResizeFont = function (_canResize) {\r\n this.textProperty.canResizeFont(_canResize);\r\n};\r\n\r\nITextElement.prototype.setMinimumFontSize = function (_fontSize) {\r\n this.textProperty.setMinimumFontSize(_fontSize);\r\n};\r\n\r\nITextElement.prototype.applyTextPropertiesToMatrix = function (documentData, matrixHelper, lineNumber, xPos, yPos) {\r\n if (documentData.ps) {\r\n matrixHelper.translate(documentData.ps[0], documentData.ps[1] + documentData.ascent, 0);\r\n }\r\n matrixHelper.translate(0, -documentData.ls, 0);\r\n switch (documentData.j) {\r\n case 1:\r\n matrixHelper.translate(documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[lineNumber]), 0, 0);\r\n break;\r\n case 2:\r\n matrixHelper.translate(documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[lineNumber]) / 2, 0, 0);\r\n break;\r\n default:\r\n break;\r\n }\r\n matrixHelper.translate(xPos, yPos, 0);\r\n};\r\n\r\nITextElement.prototype.buildColor = function (colorData) {\r\n return 'rgb(' + Math.round(colorData[0] * 255) + ',' + Math.round(colorData[1] * 255) + ',' + Math.round(colorData[2] * 255) + ')';\r\n};\r\n\r\nITextElement.prototype.emptyProp = new LetterProps();\r\n\r\nITextElement.prototype.destroy = function () {\r\n\r\n};\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, HierarchyElement, FrameElement, RenderableDOMElement */\r\n\r\nfunction ICompElement() {}\r\n\r\nextendPrototype([BaseElement, TransformElement, HierarchyElement, FrameElement, RenderableDOMElement], ICompElement);\r\n\r\nICompElement.prototype.initElement = function (data, globalData, comp) {\r\n this.initFrame();\r\n this.initBaseData(data, globalData, comp);\r\n this.initTransform(data, globalData, comp);\r\n this.initRenderable();\r\n this.initHierarchy();\r\n this.initRendererElement();\r\n this.createContainerElements();\r\n this.createRenderableComponents();\r\n if (this.data.xt || !globalData.progressiveLoad) {\r\n this.buildAllItems();\r\n }\r\n this.hide();\r\n};\r\n\r\n/* ICompElement.prototype.hide = function(){\r\n if(!this.hidden){\r\n this.hideElement();\r\n var i,len = this.elements.length;\r\n for( i = 0; i < len; i+=1 ){\r\n if(this.elements[i]){\r\n this.elements[i].hide();\r\n }\r\n }\r\n }\r\n}; */\r\n\r\nICompElement.prototype.prepareFrame = function (num) {\r\n this._mdf = false;\r\n this.prepareRenderableFrame(num);\r\n this.prepareProperties(num, this.isInRange);\r\n if (!this.isInRange && !this.data.xt) {\r\n return;\r\n }\r\n\r\n if (!this.tm._placeholder) {\r\n var timeRemapped = this.tm.v;\r\n if (timeRemapped === this.data.op) {\r\n timeRemapped = this.data.op - 1;\r\n }\r\n this.renderedFrame = timeRemapped;\r\n } else {\r\n this.renderedFrame = num / this.data.sr;\r\n }\r\n var i;\r\n var len = this.elements.length;\r\n if (!this.completeLayers) {\r\n this.checkLayers(this.renderedFrame);\r\n }\r\n // This iteration needs to be backwards because of how expressions connect between each other\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n if (this.completeLayers || this.elements[i]) {\r\n this.elements[i].prepareFrame(this.renderedFrame - this.layers[i].st);\r\n if (this.elements[i]._mdf) {\r\n this._mdf = true;\r\n }\r\n }\r\n }\r\n};\r\n\r\nICompElement.prototype.renderInnerContent = function () {\r\n var i;\r\n var len = this.layers.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (this.completeLayers || this.elements[i]) {\r\n this.elements[i].renderFrame();\r\n }\r\n }\r\n};\r\n\r\nICompElement.prototype.setElements = function (elems) {\r\n this.elements = elems;\r\n};\r\n\r\nICompElement.prototype.getElements = function () {\r\n return this.elements;\r\n};\r\n\r\nICompElement.prototype.destroyElements = function () {\r\n var i;\r\n var len = this.layers.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (this.elements[i]) {\r\n this.elements[i].destroy();\r\n }\r\n }\r\n};\r\n\r\nICompElement.prototype.destroy = function () {\r\n this.destroyElements();\r\n this.destroyBaseElement();\r\n};\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement, RenderableDOMElement, createNS */\r\n\r\nfunction IImageElement(data, globalData, comp) {\r\n this.assetData = globalData.getAssetData(data.refId);\r\n this.initElement(data, globalData, comp);\r\n this.sourceRect = {\r\n top: 0, left: 0, width: this.assetData.w, height: this.assetData.h,\r\n };\r\n}\r\n\r\nextendPrototype([BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement, RenderableDOMElement], IImageElement);\r\n\r\nIImageElement.prototype.createContent = function () {\r\n var assetPath = this.globalData.getAssetsPath(this.assetData);\r\n\r\n this.innerElem = createNS('image');\r\n this.innerElem.setAttribute('width', this.assetData.w + 'px');\r\n this.innerElem.setAttribute('height', this.assetData.h + 'px');\r\n this.innerElem.setAttribute('preserveAspectRatio', this.assetData.pr || this.globalData.renderConfig.imagePreserveAspectRatio);\r\n this.innerElem.setAttributeNS('http://www.w3.org/1999/xlink', 'href', assetPath);\r\n\r\n this.layerElement.appendChild(this.innerElem);\r\n};\r\n\r\nIImageElement.prototype.sourceRectAtTime = function () {\r\n return this.sourceRect;\r\n};\r\n\r\n/* global extendPrototype, IImageElement, createNS */\r\n\r\nfunction ISolidElement(data, globalData, comp) {\r\n this.initElement(data, globalData, comp);\r\n}\r\nextendPrototype([IImageElement], ISolidElement);\r\n\r\nISolidElement.prototype.createContent = function () {\r\n var rect = createNS('rect');\r\n /// /rect.style.width = this.data.sw;\r\n /// /rect.style.height = this.data.sh;\r\n /// /rect.style.fill = this.data.sc;\r\n rect.setAttribute('width', this.data.sw);\r\n rect.setAttribute('height', this.data.sh);\r\n rect.setAttribute('fill', this.data.sc);\r\n this.layerElement.appendChild(rect);\r\n};\r\n\r\n/* global PropertyFactory, extendPrototype, RenderableElement, BaseElement, FrameElement */\r\n\r\nfunction AudioElement(data, globalData, comp) {\r\n this.initFrame();\r\n this.initRenderable();\r\n this.assetData = globalData.getAssetData(data.refId);\r\n this.initBaseData(data, globalData, comp);\r\n this._isPlaying = false;\r\n this._canPlay = false;\r\n var assetPath = this.globalData.getAssetsPath(this.assetData);\r\n this.audio = this.globalData.audioController.createAudio(assetPath);\r\n this._currentTime = 0;\r\n this.globalData.audioController.addAudio(this);\r\n this.tm = data.tm ? PropertyFactory.getProp(this, data.tm, 0, globalData.frameRate, this) : { _placeholder: true };\r\n}\r\n\r\nAudioElement.prototype.prepareFrame = function (num) {\r\n this.prepareRenderableFrame(num, true);\r\n this.prepareProperties(num, true);\r\n if (!this.tm._placeholder) {\r\n var timeRemapped = this.tm.v;\r\n this._currentTime = timeRemapped;\r\n } else {\r\n this._currentTime = num / this.data.sr;\r\n }\r\n};\r\n\r\nextendPrototype([RenderableElement, BaseElement, FrameElement], AudioElement);\r\n\r\nAudioElement.prototype.renderFrame = function () {\r\n if (this.isInRange && this._canPlay) {\r\n if (!this._isPlaying) {\r\n this.audio.play();\r\n this.audio.seek(this._currentTime / this.globalData.frameRate);\r\n this._isPlaying = true;\r\n } else if (!this.audio.playing()\r\n || Math.abs(this._currentTime / this.globalData.frameRate - this.audio.seek()) > 0.1\r\n ) {\r\n this.audio.seek(this._currentTime / this.globalData.frameRate);\r\n }\r\n }\r\n};\r\n\r\nAudioElement.prototype.show = function () {\r\n // this.audio.play()\r\n};\r\n\r\nAudioElement.prototype.hide = function () {\r\n this.audio.pause();\r\n this._isPlaying = false;\r\n};\r\n\r\nAudioElement.prototype.pause = function () {\r\n this.audio.pause();\r\n this._isPlaying = false;\r\n this._canPlay = false;\r\n};\r\n\r\nAudioElement.prototype.resume = function () {\r\n this._canPlay = true;\r\n};\r\n\r\nAudioElement.prototype.setRate = function (rateValue) {\r\n this.audio.rate(rateValue);\r\n};\r\n\r\nAudioElement.prototype.volume = function (volumeValue) {\r\n this.audio.volume(volumeValue);\r\n};\r\n\r\nAudioElement.prototype.getBaseElement = function () {\r\n return null;\r\n};\r\n\r\nAudioElement.prototype.destroy = function () {\r\n};\r\n\r\nAudioElement.prototype.sourceRectAtTime = function () {\r\n};\r\n\r\nAudioElement.prototype.initExpressions = function () {\r\n};\r\n\r\n/* global extendPrototype, RenderableElement, BaseElement, FrameElement, FootageInterface */\r\n\r\nfunction FootageElement(data, globalData, comp) {\r\n this.initFrame();\r\n this.initRenderable();\r\n this.assetData = globalData.getAssetData(data.refId);\r\n this.footageData = globalData.imageLoader.getAsset(this.assetData);\r\n this.initBaseData(data, globalData, comp);\r\n}\r\n\r\nFootageElement.prototype.prepareFrame = function () {\r\n};\r\n\r\nextendPrototype([RenderableElement, BaseElement, FrameElement], FootageElement);\r\n\r\nFootageElement.prototype.getBaseElement = function () {\r\n return null;\r\n};\r\n\r\nFootageElement.prototype.renderFrame = function () {\r\n};\r\n\r\nFootageElement.prototype.destroy = function () {\r\n};\r\n\r\nFootageElement.prototype.initExpressions = function () {\r\n this.layerInterface = FootageInterface(this);\r\n};\r\n\r\nFootageElement.prototype.getFootageData = function () {\r\n return this.footageData;\r\n};\r\n\r\n/* global createSizedArray, PropertyFactory, extendPrototype, SVGRenderer, ICompElement, SVGBaseElement */\r\n\r\nfunction SVGCompElement(data, globalData, comp) {\r\n this.layers = data.layers;\r\n this.supports3d = true;\r\n this.completeLayers = false;\r\n this.pendingElements = [];\r\n this.elements = this.layers ? createSizedArray(this.layers.length) : [];\r\n // this.layerElement = createNS('g');\r\n this.initElement(data, globalData, comp);\r\n this.tm = data.tm ? PropertyFactory.getProp(this, data.tm, 0, globalData.frameRate, this) : { _placeholder: true };\r\n}\r\n\r\nextendPrototype([SVGRenderer, ICompElement, SVGBaseElement], SVGCompElement);\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement,\r\nRenderableDOMElement, ITextElement, createSizedArray, createNS */\r\n\r\nfunction SVGTextLottieElement(data, globalData, comp) {\r\n this.textSpans = [];\r\n this.renderType = 'svg';\r\n this.initElement(data, globalData, comp);\r\n}\r\n\r\nextendPrototype([BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement, RenderableDOMElement, ITextElement], SVGTextLottieElement);\r\n\r\nSVGTextLottieElement.prototype.createContent = function () {\r\n if (this.data.singleShape && !this.globalData.fontManager.chars) {\r\n this.textContainer = createNS('text');\r\n }\r\n};\r\n\r\nSVGTextLottieElement.prototype.buildTextContents = function (textArray) {\r\n var i = 0;\r\n var len = textArray.length;\r\n var textContents = [];\r\n var currentTextContent = '';\r\n while (i < len) {\r\n if (textArray[i] === String.fromCharCode(13) || textArray[i] === String.fromCharCode(3)) {\r\n textContents.push(currentTextContent);\r\n currentTextContent = '';\r\n } else {\r\n currentTextContent += textArray[i];\r\n }\r\n i += 1;\r\n }\r\n textContents.push(currentTextContent);\r\n return textContents;\r\n};\r\n\r\nSVGTextLottieElement.prototype.buildNewText = function () {\r\n var i;\r\n var len;\r\n\r\n var documentData = this.textProperty.currentData;\r\n this.renderedLetters = createSizedArray(documentData ? documentData.l.length : 0);\r\n if (documentData.fc) {\r\n this.layerElement.setAttribute('fill', this.buildColor(documentData.fc));\r\n } else {\r\n this.layerElement.setAttribute('fill', 'rgba(0,0,0,0)');\r\n }\r\n if (documentData.sc) {\r\n this.layerElement.setAttribute('stroke', this.buildColor(documentData.sc));\r\n this.layerElement.setAttribute('stroke-width', documentData.sw);\r\n }\r\n this.layerElement.setAttribute('font-size', documentData.finalSize);\r\n var fontData = this.globalData.fontManager.getFontByName(documentData.f);\r\n if (fontData.fClass) {\r\n this.layerElement.setAttribute('class', fontData.fClass);\r\n } else {\r\n this.layerElement.setAttribute('font-family', fontData.fFamily);\r\n var fWeight = documentData.fWeight;\r\n var fStyle = documentData.fStyle;\r\n this.layerElement.setAttribute('font-style', fStyle);\r\n this.layerElement.setAttribute('font-weight', fWeight);\r\n }\r\n this.layerElement.setAttribute('aria-label', documentData.t);\r\n\r\n var letters = documentData.l || [];\r\n var usesGlyphs = !!this.globalData.fontManager.chars;\r\n len = letters.length;\r\n\r\n var tSpan;\r\n var matrixHelper = this.mHelper;\r\n var shapes;\r\n var shapeStr = '';\r\n var singleShape = this.data.singleShape;\r\n var xPos = 0;\r\n var yPos = 0;\r\n var firstLine = true;\r\n var trackingOffset = documentData.tr * 0.001 * documentData.finalSize;\r\n if (singleShape && !usesGlyphs && !documentData.sz) {\r\n var tElement = this.textContainer;\r\n var justify = 'start';\r\n switch (documentData.j) {\r\n case 1:\r\n justify = 'end';\r\n break;\r\n case 2:\r\n justify = 'middle';\r\n break;\r\n default:\r\n justify = 'start';\r\n break;\r\n }\r\n tElement.setAttribute('text-anchor', justify);\r\n tElement.setAttribute('letter-spacing', trackingOffset);\r\n var textContent = this.buildTextContents(documentData.finalText);\r\n len = textContent.length;\r\n yPos = documentData.ps ? documentData.ps[1] + documentData.ascent : 0;\r\n for (i = 0; i < len; i += 1) {\r\n tSpan = this.textSpans[i] || createNS('tspan');\r\n tSpan.textContent = textContent[i];\r\n tSpan.setAttribute('x', 0);\r\n tSpan.setAttribute('y', yPos);\r\n tSpan.style.display = 'inherit';\r\n tElement.appendChild(tSpan);\r\n this.textSpans[i] = tSpan;\r\n yPos += documentData.finalLineHeight;\r\n }\r\n\r\n this.layerElement.appendChild(tElement);\r\n } else {\r\n var cachedSpansLength = this.textSpans.length;\r\n var shapeData;\r\n var charData;\r\n for (i = 0; i < len; i += 1) {\r\n if (!usesGlyphs || !singleShape || i === 0) {\r\n tSpan = cachedSpansLength > i ? this.textSpans[i] : createNS(usesGlyphs ? 'path' : 'text');\r\n if (cachedSpansLength <= i) {\r\n tSpan.setAttribute('stroke-linecap', 'butt');\r\n tSpan.setAttribute('stroke-linejoin', 'round');\r\n tSpan.setAttribute('stroke-miterlimit', '4');\r\n this.textSpans[i] = tSpan;\r\n this.layerElement.appendChild(tSpan);\r\n }\r\n tSpan.style.display = 'inherit';\r\n }\r\n\r\n matrixHelper.reset();\r\n matrixHelper.scale(documentData.finalSize / 100, documentData.finalSize / 100);\r\n if (singleShape) {\r\n if (letters[i].n) {\r\n xPos = -trackingOffset;\r\n yPos += documentData.yOffset;\r\n yPos += firstLine ? 1 : 0;\r\n firstLine = false;\r\n }\r\n this.applyTextPropertiesToMatrix(documentData, matrixHelper, letters[i].line, xPos, yPos);\r\n xPos += letters[i].l || 0;\r\n // xPos += letters[i].val === ' ' ? 0 : trackingOffset;\r\n xPos += trackingOffset;\r\n }\r\n if (usesGlyphs) {\r\n charData = this.globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, this.globalData.fontManager.getFontByName(documentData.f).fFamily);\r\n shapeData = (charData && charData.data) || {};\r\n shapes = shapeData.shapes ? shapeData.shapes[0].it : [];\r\n if (!singleShape) {\r\n tSpan.setAttribute('d', this.createPathShape(matrixHelper, shapes));\r\n } else {\r\n shapeStr += this.createPathShape(matrixHelper, shapes);\r\n }\r\n } else {\r\n if (singleShape) {\r\n tSpan.setAttribute('transform', 'translate(' + matrixHelper.props[12] + ',' + matrixHelper.props[13] + ')');\r\n }\r\n tSpan.textContent = letters[i].val;\r\n tSpan.setAttributeNS('http://www.w3.org/XML/1998/namespace', 'xml:space', 'preserve');\r\n }\r\n //\r\n }\r\n if (singleShape && tSpan) {\r\n tSpan.setAttribute('d', shapeStr);\r\n }\r\n }\r\n while (i < this.textSpans.length) {\r\n this.textSpans[i].style.display = 'none';\r\n i += 1;\r\n }\r\n\r\n this._sizeChanged = true;\r\n};\r\n\r\nSVGTextLottieElement.prototype.sourceRectAtTime = function () {\r\n this.prepareFrame(this.comp.renderedFrame - this.data.st);\r\n this.renderInnerContent();\r\n if (this._sizeChanged) {\r\n this._sizeChanged = false;\r\n var textBox = this.layerElement.getBBox();\r\n this.bbox = {\r\n top: textBox.y,\r\n left: textBox.x,\r\n width: textBox.width,\r\n height: textBox.height,\r\n };\r\n }\r\n return this.bbox;\r\n};\r\n\r\nSVGTextLottieElement.prototype.renderInnerContent = function () {\r\n if (!this.data.singleShape) {\r\n this.textAnimator.getMeasures(this.textProperty.currentData, this.lettersChangedFlag);\r\n if (this.lettersChangedFlag || this.textAnimator.lettersChangedFlag) {\r\n this._sizeChanged = true;\r\n var i;\r\n var len;\r\n var renderedLetters = this.textAnimator.renderedLetters;\r\n\r\n var letters = this.textProperty.currentData.l;\r\n\r\n len = letters.length;\r\n var renderedLetter;\r\n var textSpan;\r\n for (i = 0; i < len; i += 1) {\r\n if (!letters[i].n) {\r\n renderedLetter = renderedLetters[i];\r\n textSpan = this.textSpans[i];\r\n if (renderedLetter._mdf.m) {\r\n textSpan.setAttribute('transform', renderedLetter.m);\r\n }\r\n if (renderedLetter._mdf.o) {\r\n textSpan.setAttribute('opacity', renderedLetter.o);\r\n }\r\n if (renderedLetter._mdf.sw) {\r\n textSpan.setAttribute('stroke-width', renderedLetter.sw);\r\n }\r\n if (renderedLetter._mdf.sc) {\r\n textSpan.setAttribute('stroke', renderedLetter.sc);\r\n }\r\n if (renderedLetter._mdf.fc) {\r\n textSpan.setAttribute('fill', renderedLetter.fc);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n};\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, SVGBaseElement, IShapeElement, HierarchyElement,\r\nFrameElement, RenderableDOMElement, Matrix, SVGStyleData, SVGStrokeStyleData, SVGFillStyleData,\r\nSVGGradientFillStyleData, SVGGradientStrokeStyleData, locationHref, getBlendMode, ShapeGroupData,\r\nTransformPropertyFactory, SVGTransformData, ShapePropertyFactory, SVGShapeData, SVGElementsRenderer, ShapeModifiers */\r\n\r\nfunction SVGShapeElement(data, globalData, comp) {\r\n // List of drawable elements\r\n this.shapes = [];\r\n // Full shape data\r\n this.shapesData = data.shapes;\r\n // List of styles that will be applied to shapes\r\n this.stylesList = [];\r\n // List of modifiers that will be applied to shapes\r\n this.shapeModifiers = [];\r\n // List of items in shape tree\r\n this.itemsData = [];\r\n // List of items in previous shape tree\r\n this.processedElements = [];\r\n // List of animated components\r\n this.animatedContents = [];\r\n this.initElement(data, globalData, comp);\r\n // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\r\n // List of elements that have been created\r\n this.prevViewData = [];\r\n // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\r\n}\r\n\r\nextendPrototype([BaseElement, TransformElement, SVGBaseElement, IShapeElement, HierarchyElement, FrameElement, RenderableDOMElement], SVGShapeElement);\r\n\r\nSVGShapeElement.prototype.initSecondaryElement = function () {\r\n};\r\n\r\nSVGShapeElement.prototype.identityMatrix = new Matrix();\r\n\r\nSVGShapeElement.prototype.buildExpressionInterface = function () {};\r\n\r\nSVGShapeElement.prototype.createContent = function () {\r\n this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.layerElement, 0, [], true);\r\n this.filterUniqueShapes();\r\n};\r\n\r\n/*\r\nThis method searches for multiple shapes that affect a single element and one of them is animated\r\n*/\r\nSVGShapeElement.prototype.filterUniqueShapes = function () {\r\n var i;\r\n var len = this.shapes.length;\r\n var shape;\r\n var j;\r\n var jLen = this.stylesList.length;\r\n var style;\r\n var tempShapes = [];\r\n var areAnimated = false;\r\n for (j = 0; j < jLen; j += 1) {\r\n style = this.stylesList[j];\r\n areAnimated = false;\r\n tempShapes.length = 0;\r\n for (i = 0; i < len; i += 1) {\r\n shape = this.shapes[i];\r\n if (shape.styles.indexOf(style) !== -1) {\r\n tempShapes.push(shape);\r\n areAnimated = shape._isAnimated || areAnimated;\r\n }\r\n }\r\n if (tempShapes.length > 1 && areAnimated) {\r\n this.setShapesAsAnimated(tempShapes);\r\n }\r\n }\r\n};\r\n\r\nSVGShapeElement.prototype.setShapesAsAnimated = function (shapes) {\r\n var i;\r\n var len = shapes.length;\r\n for (i = 0; i < len; i += 1) {\r\n shapes[i].setAsAnimated();\r\n }\r\n};\r\n\r\nSVGShapeElement.prototype.createStyleElement = function (data, level) {\r\n // TODO: prevent drawing of hidden styles\r\n var elementData;\r\n var styleOb = new SVGStyleData(data, level);\r\n\r\n var pathElement = styleOb.pElem;\r\n if (data.ty === 'st') {\r\n elementData = new SVGStrokeStyleData(this, data, styleOb);\r\n } else if (data.ty === 'fl') {\r\n elementData = new SVGFillStyleData(this, data, styleOb);\r\n } else if (data.ty === 'gf' || data.ty === 'gs') {\r\n var GradientConstructor = data.ty === 'gf' ? SVGGradientFillStyleData : SVGGradientStrokeStyleData;\r\n elementData = new GradientConstructor(this, data, styleOb);\r\n this.globalData.defs.appendChild(elementData.gf);\r\n if (elementData.maskId) {\r\n this.globalData.defs.appendChild(elementData.ms);\r\n this.globalData.defs.appendChild(elementData.of);\r\n pathElement.setAttribute('mask', 'url(' + locationHref + '#' + elementData.maskId + ')');\r\n }\r\n }\r\n\r\n if (data.ty === 'st' || data.ty === 'gs') {\r\n pathElement.setAttribute('stroke-linecap', this.lcEnum[data.lc] || 'round');\r\n pathElement.setAttribute('stroke-linejoin', this.ljEnum[data.lj] || 'round');\r\n pathElement.setAttribute('fill-opacity', '0');\r\n if (data.lj === 1) {\r\n pathElement.setAttribute('stroke-miterlimit', data.ml);\r\n }\r\n }\r\n\r\n if (data.r === 2) {\r\n pathElement.setAttribute('fill-rule', 'evenodd');\r\n }\r\n\r\n if (data.ln) {\r\n pathElement.setAttribute('id', data.ln);\r\n }\r\n if (data.cl) {\r\n pathElement.setAttribute('class', data.cl);\r\n }\r\n if (data.bm) {\r\n pathElement.style['mix-blend-mode'] = getBlendMode(data.bm);\r\n }\r\n this.stylesList.push(styleOb);\r\n this.addToAnimatedContents(data, elementData);\r\n return elementData;\r\n};\r\n\r\nSVGShapeElement.prototype.createGroupElement = function (data) {\r\n var elementData = new ShapeGroupData();\r\n if (data.ln) {\r\n elementData.gr.setAttribute('id', data.ln);\r\n }\r\n if (data.cl) {\r\n elementData.gr.setAttribute('class', data.cl);\r\n }\r\n if (data.bm) {\r\n elementData.gr.style['mix-blend-mode'] = getBlendMode(data.bm);\r\n }\r\n return elementData;\r\n};\r\n\r\nSVGShapeElement.prototype.createTransformElement = function (data, container) {\r\n var transformProperty = TransformPropertyFactory.getTransformProperty(this, data, this);\r\n var elementData = new SVGTransformData(transformProperty, transformProperty.o, container);\r\n this.addToAnimatedContents(data, elementData);\r\n return elementData;\r\n};\r\n\r\nSVGShapeElement.prototype.createShapeElement = function (data, ownTransformers, level) {\r\n var ty = 4;\r\n if (data.ty === 'rc') {\r\n ty = 5;\r\n } else if (data.ty === 'el') {\r\n ty = 6;\r\n } else if (data.ty === 'sr') {\r\n ty = 7;\r\n }\r\n var shapeProperty = ShapePropertyFactory.getShapeProp(this, data, ty, this);\r\n var elementData = new SVGShapeData(ownTransformers, level, shapeProperty);\r\n this.shapes.push(elementData);\r\n this.addShapeToModifiers(elementData);\r\n this.addToAnimatedContents(data, elementData);\r\n return elementData;\r\n};\r\n\r\nSVGShapeElement.prototype.addToAnimatedContents = function (data, element) {\r\n var i = 0;\r\n var len = this.animatedContents.length;\r\n while (i < len) {\r\n if (this.animatedContents[i].element === element) {\r\n return;\r\n }\r\n i += 1;\r\n }\r\n this.animatedContents.push({\r\n fn: SVGElementsRenderer.createRenderFunction(data),\r\n element: element,\r\n data: data,\r\n });\r\n};\r\n\r\nSVGShapeElement.prototype.setElementStyles = function (elementData) {\r\n var arr = elementData.styles;\r\n var j;\r\n var jLen = this.stylesList.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n if (!this.stylesList[j].closed) {\r\n arr.push(this.stylesList[j]);\r\n }\r\n }\r\n};\r\n\r\nSVGShapeElement.prototype.reloadShapes = function () {\r\n this._isFirstFrame = true;\r\n var i;\r\n var len = this.itemsData.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.prevViewData[i] = this.itemsData[i];\r\n }\r\n this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.layerElement, 0, [], true);\r\n this.filterUniqueShapes();\r\n len = this.dynamicProperties.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.dynamicProperties[i].getValue();\r\n }\r\n this.renderModifiers();\r\n};\r\n\r\nSVGShapeElement.prototype.searchShapes = function (arr, itemsData, prevViewData, container, level, transformers, render) {\r\n var ownTransformers = [].concat(transformers);\r\n var i;\r\n var len = arr.length - 1;\r\n var j;\r\n var jLen;\r\n var ownStyles = [];\r\n var ownModifiers = [];\r\n var currentTransform;\r\n var modifier;\r\n var processedPos;\r\n for (i = len; i >= 0; i -= 1) {\r\n processedPos = this.searchProcessedElement(arr[i]);\r\n if (!processedPos) {\r\n arr[i]._render = render;\r\n } else {\r\n itemsData[i] = prevViewData[processedPos - 1];\r\n }\r\n if (arr[i].ty === 'fl' || arr[i].ty === 'st' || arr[i].ty === 'gf' || arr[i].ty === 'gs') {\r\n if (!processedPos) {\r\n itemsData[i] = this.createStyleElement(arr[i], level);\r\n } else {\r\n itemsData[i].style.closed = false;\r\n }\r\n if (arr[i]._render) {\r\n container.appendChild(itemsData[i].style.pElem);\r\n }\r\n ownStyles.push(itemsData[i].style);\r\n } else if (arr[i].ty === 'gr') {\r\n if (!processedPos) {\r\n itemsData[i] = this.createGroupElement(arr[i]);\r\n } else {\r\n jLen = itemsData[i].it.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n itemsData[i].prevViewData[j] = itemsData[i].it[j];\r\n }\r\n }\r\n this.searchShapes(arr[i].it, itemsData[i].it, itemsData[i].prevViewData, itemsData[i].gr, level + 1, ownTransformers, render);\r\n if (arr[i]._render) {\r\n container.appendChild(itemsData[i].gr);\r\n }\r\n } else if (arr[i].ty === 'tr') {\r\n if (!processedPos) {\r\n itemsData[i] = this.createTransformElement(arr[i], container);\r\n }\r\n currentTransform = itemsData[i].transform;\r\n ownTransformers.push(currentTransform);\r\n } else if (arr[i].ty === 'sh' || arr[i].ty === 'rc' || arr[i].ty === 'el' || arr[i].ty === 'sr') {\r\n if (!processedPos) {\r\n itemsData[i] = this.createShapeElement(arr[i], ownTransformers, level);\r\n }\r\n this.setElementStyles(itemsData[i]);\r\n } else if (arr[i].ty === 'tm' || arr[i].ty === 'rd' || arr[i].ty === 'ms' || arr[i].ty === 'pb') {\r\n if (!processedPos) {\r\n modifier = ShapeModifiers.getModifier(arr[i].ty);\r\n modifier.init(this, arr[i]);\r\n itemsData[i] = modifier;\r\n this.shapeModifiers.push(modifier);\r\n } else {\r\n modifier = itemsData[i];\r\n modifier.closed = false;\r\n }\r\n ownModifiers.push(modifier);\r\n } else if (arr[i].ty === 'rp') {\r\n if (!processedPos) {\r\n modifier = ShapeModifiers.getModifier(arr[i].ty);\r\n itemsData[i] = modifier;\r\n modifier.init(this, arr, i, itemsData);\r\n this.shapeModifiers.push(modifier);\r\n render = false;\r\n } else {\r\n modifier = itemsData[i];\r\n modifier.closed = true;\r\n }\r\n ownModifiers.push(modifier);\r\n }\r\n this.addProcessedElement(arr[i], i + 1);\r\n }\r\n len = ownStyles.length;\r\n for (i = 0; i < len; i += 1) {\r\n ownStyles[i].closed = true;\r\n }\r\n len = ownModifiers.length;\r\n for (i = 0; i < len; i += 1) {\r\n ownModifiers[i].closed = true;\r\n }\r\n};\r\n\r\nSVGShapeElement.prototype.renderInnerContent = function () {\r\n this.renderModifiers();\r\n var i;\r\n var len = this.stylesList.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.stylesList[i].reset();\r\n }\r\n this.renderShape();\r\n\r\n for (i = 0; i < len; i += 1) {\r\n if (this.stylesList[i]._mdf || this._isFirstFrame) {\r\n if (this.stylesList[i].msElem) {\r\n this.stylesList[i].msElem.setAttribute('d', this.stylesList[i].d);\r\n // Adding M0 0 fixes same mask bug on all browsers\r\n this.stylesList[i].d = 'M0 0' + this.stylesList[i].d;\r\n }\r\n this.stylesList[i].pElem.setAttribute('d', this.stylesList[i].d || 'M0 0');\r\n }\r\n }\r\n};\r\n\r\nSVGShapeElement.prototype.renderShape = function () {\r\n var i;\r\n var len = this.animatedContents.length;\r\n var animatedContent;\r\n for (i = 0; i < len; i += 1) {\r\n animatedContent = this.animatedContents[i];\r\n if ((this._isFirstFrame || animatedContent.element._isAnimated) && animatedContent.data !== true) {\r\n animatedContent.fn(animatedContent.data, animatedContent.element, this._isFirstFrame);\r\n }\r\n }\r\n};\r\n\r\nSVGShapeElement.prototype.destroy = function () {\r\n this.destroyBaseElement();\r\n this.shapesData = null;\r\n this.itemsData = null;\r\n};\r\n\r\n/* global createNS */\r\n\r\nfunction SVGTintFilter(filter, filterManager) {\r\n this.filterManager = filterManager;\r\n var feColorMatrix = createNS('feColorMatrix');\r\n feColorMatrix.setAttribute('type', 'matrix');\r\n feColorMatrix.setAttribute('color-interpolation-filters', 'linearRGB');\r\n feColorMatrix.setAttribute('values', '0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0');\r\n feColorMatrix.setAttribute('result', 'f1');\r\n filter.appendChild(feColorMatrix);\r\n feColorMatrix = createNS('feColorMatrix');\r\n feColorMatrix.setAttribute('type', 'matrix');\r\n feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');\r\n feColorMatrix.setAttribute('values', '1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0');\r\n feColorMatrix.setAttribute('result', 'f2');\r\n filter.appendChild(feColorMatrix);\r\n this.matrixFilter = feColorMatrix;\r\n if (filterManager.effectElements[2].p.v !== 100 || filterManager.effectElements[2].p.k) {\r\n var feMerge = createNS('feMerge');\r\n filter.appendChild(feMerge);\r\n var feMergeNode;\r\n feMergeNode = createNS('feMergeNode');\r\n feMergeNode.setAttribute('in', 'SourceGraphic');\r\n feMerge.appendChild(feMergeNode);\r\n feMergeNode = createNS('feMergeNode');\r\n feMergeNode.setAttribute('in', 'f2');\r\n feMerge.appendChild(feMergeNode);\r\n }\r\n}\r\n\r\nSVGTintFilter.prototype.renderFrame = function (forceRender) {\r\n if (forceRender || this.filterManager._mdf) {\r\n var colorBlack = this.filterManager.effectElements[0].p.v;\r\n var colorWhite = this.filterManager.effectElements[1].p.v;\r\n var opacity = this.filterManager.effectElements[2].p.v / 100;\r\n this.matrixFilter.setAttribute('values', (colorWhite[0] - colorBlack[0]) + ' 0 0 0 ' + colorBlack[0] + ' ' + (colorWhite[1] - colorBlack[1]) + ' 0 0 0 ' + colorBlack[1] + ' ' + (colorWhite[2] - colorBlack[2]) + ' 0 0 0 ' + colorBlack[2] + ' 0 0 0 ' + opacity + ' 0');\r\n }\r\n};\r\n\r\n/* global createNS */\r\n\r\nfunction SVGFillFilter(filter, filterManager) {\r\n this.filterManager = filterManager;\r\n var feColorMatrix = createNS('feColorMatrix');\r\n feColorMatrix.setAttribute('type', 'matrix');\r\n feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');\r\n feColorMatrix.setAttribute('values', '1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0');\r\n filter.appendChild(feColorMatrix);\r\n this.matrixFilter = feColorMatrix;\r\n}\r\nSVGFillFilter.prototype.renderFrame = function (forceRender) {\r\n if (forceRender || this.filterManager._mdf) {\r\n var color = this.filterManager.effectElements[2].p.v;\r\n var opacity = this.filterManager.effectElements[6].p.v;\r\n this.matrixFilter.setAttribute('values', '0 0 0 0 ' + color[0] + ' 0 0 0 0 ' + color[1] + ' 0 0 0 0 ' + color[2] + ' 0 0 0 ' + opacity + ' 0');\r\n }\r\n};\r\n\r\n/* global createNS */\r\n\r\nfunction SVGGaussianBlurEffect(filter, filterManager) {\r\n // Outset the filter region by 100% on all sides to accommodate blur expansion.\r\n filter.setAttribute('x', '-100%');\r\n filter.setAttribute('y', '-100%');\r\n filter.setAttribute('width', '300%');\r\n filter.setAttribute('height', '300%');\r\n\r\n this.filterManager = filterManager;\r\n var feGaussianBlur = createNS('feGaussianBlur');\r\n filter.appendChild(feGaussianBlur);\r\n this.feGaussianBlur = feGaussianBlur;\r\n}\r\n\r\nSVGGaussianBlurEffect.prototype.renderFrame = function (forceRender) {\r\n if (forceRender || this.filterManager._mdf) {\r\n // Empirical value, matching AE's blur appearance.\r\n var kBlurrinessToSigma = 0.3;\r\n var sigma = this.filterManager.effectElements[0].p.v * kBlurrinessToSigma;\r\n\r\n // Dimensions mapping:\r\n //\r\n // 1 -> horizontal & vertical\r\n // 2 -> horizontal only\r\n // 3 -> vertical only\r\n //\r\n var dimensions = this.filterManager.effectElements[1].p.v;\r\n var sigmaX = (dimensions == 3) ? 0 : sigma; // eslint-disable-line eqeqeq\r\n var sigmaY = (dimensions == 2) ? 0 : sigma; // eslint-disable-line eqeqeq\r\n\r\n this.feGaussianBlur.setAttribute('stdDeviation', sigmaX + ' ' + sigmaY);\r\n\r\n // Repeat edges mapping:\r\n //\r\n // 0 -> off -> duplicate\r\n // 1 -> on -> wrap\r\n var edgeMode = (this.filterManager.effectElements[2].p.v == 1) ? 'wrap' : 'duplicate'; // eslint-disable-line eqeqeq\r\n this.feGaussianBlur.setAttribute('edgeMode', edgeMode);\r\n }\r\n};\r\n\r\n/* global createNS, createElementID, locationHref, bmFloor */\r\n\r\nfunction SVGStrokeEffect(elem, filterManager) {\r\n this.initialized = false;\r\n this.filterManager = filterManager;\r\n this.elem = elem;\r\n this.paths = [];\r\n}\r\n\r\nSVGStrokeEffect.prototype.initialize = function () {\r\n var elemChildren = this.elem.layerElement.children || this.elem.layerElement.childNodes;\r\n var path;\r\n var groupPath;\r\n var i;\r\n var len;\r\n if (this.filterManager.effectElements[1].p.v === 1) {\r\n len = this.elem.maskManager.masksProperties.length;\r\n i = 0;\r\n } else {\r\n i = this.filterManager.effectElements[0].p.v - 1;\r\n len = i + 1;\r\n }\r\n groupPath = createNS('g');\r\n groupPath.setAttribute('fill', 'none');\r\n groupPath.setAttribute('stroke-linecap', 'round');\r\n groupPath.setAttribute('stroke-dashoffset', 1);\r\n for (i; i < len; i += 1) {\r\n path = createNS('path');\r\n groupPath.appendChild(path);\r\n this.paths.push({ p: path, m: i });\r\n }\r\n if (this.filterManager.effectElements[10].p.v === 3) {\r\n var mask = createNS('mask');\r\n var id = createElementID();\r\n mask.setAttribute('id', id);\r\n mask.setAttribute('mask-type', 'alpha');\r\n mask.appendChild(groupPath);\r\n this.elem.globalData.defs.appendChild(mask);\r\n var g = createNS('g');\r\n g.setAttribute('mask', 'url(' + locationHref + '#' + id + ')');\r\n while (elemChildren[0]) {\r\n g.appendChild(elemChildren[0]);\r\n }\r\n this.elem.layerElement.appendChild(g);\r\n this.masker = mask;\r\n groupPath.setAttribute('stroke', '#fff');\r\n } else if (this.filterManager.effectElements[10].p.v === 1 || this.filterManager.effectElements[10].p.v === 2) {\r\n if (this.filterManager.effectElements[10].p.v === 2) {\r\n elemChildren = this.elem.layerElement.children || this.elem.layerElement.childNodes;\r\n while (elemChildren.length) {\r\n this.elem.layerElement.removeChild(elemChildren[0]);\r\n }\r\n }\r\n this.elem.layerElement.appendChild(groupPath);\r\n this.elem.layerElement.removeAttribute('mask');\r\n groupPath.setAttribute('stroke', '#fff');\r\n }\r\n this.initialized = true;\r\n this.pathMasker = groupPath;\r\n};\r\n\r\nSVGStrokeEffect.prototype.renderFrame = function (forceRender) {\r\n if (!this.initialized) {\r\n this.initialize();\r\n }\r\n var i;\r\n var len = this.paths.length;\r\n var mask;\r\n var path;\r\n for (i = 0; i < len; i += 1) {\r\n if (this.paths[i].m !== -1) {\r\n mask = this.elem.maskManager.viewData[this.paths[i].m];\r\n path = this.paths[i].p;\r\n if (forceRender || this.filterManager._mdf || mask.prop._mdf) {\r\n path.setAttribute('d', mask.lastPath);\r\n }\r\n if (forceRender || this.filterManager.effectElements[9].p._mdf || this.filterManager.effectElements[4].p._mdf || this.filterManager.effectElements[7].p._mdf || this.filterManager.effectElements[8].p._mdf || mask.prop._mdf) {\r\n var dasharrayValue;\r\n if (this.filterManager.effectElements[7].p.v !== 0 || this.filterManager.effectElements[8].p.v !== 100) {\r\n var s = Math.min(this.filterManager.effectElements[7].p.v, this.filterManager.effectElements[8].p.v) * 0.01;\r\n var e = Math.max(this.filterManager.effectElements[7].p.v, this.filterManager.effectElements[8].p.v) * 0.01;\r\n var l = path.getTotalLength();\r\n dasharrayValue = '0 0 0 ' + l * s + ' ';\r\n var lineLength = l * (e - s);\r\n var segment = 1 + this.filterManager.effectElements[4].p.v * 2 * this.filterManager.effectElements[9].p.v * 0.01;\r\n var units = Math.floor(lineLength / segment);\r\n var j;\r\n for (j = 0; j < units; j += 1) {\r\n dasharrayValue += '1 ' + this.filterManager.effectElements[4].p.v * 2 * this.filterManager.effectElements[9].p.v * 0.01 + ' ';\r\n }\r\n dasharrayValue += '0 ' + l * 10 + ' 0 0';\r\n } else {\r\n dasharrayValue = '1 ' + this.filterManager.effectElements[4].p.v * 2 * this.filterManager.effectElements[9].p.v * 0.01;\r\n }\r\n path.setAttribute('stroke-dasharray', dasharrayValue);\r\n }\r\n }\r\n }\r\n if (forceRender || this.filterManager.effectElements[4].p._mdf) {\r\n this.pathMasker.setAttribute('stroke-width', this.filterManager.effectElements[4].p.v * 2);\r\n }\r\n\r\n if (forceRender || this.filterManager.effectElements[6].p._mdf) {\r\n this.pathMasker.setAttribute('opacity', this.filterManager.effectElements[6].p.v);\r\n }\r\n if (this.filterManager.effectElements[10].p.v === 1 || this.filterManager.effectElements[10].p.v === 2) {\r\n if (forceRender || this.filterManager.effectElements[3].p._mdf) {\r\n var color = this.filterManager.effectElements[3].p.v;\r\n this.pathMasker.setAttribute('stroke', 'rgb(' + bmFloor(color[0] * 255) + ',' + bmFloor(color[1] * 255) + ',' + bmFloor(color[2] * 255) + ')');\r\n }\r\n }\r\n};\r\n\r\n/* global createNS */\r\n\r\nfunction SVGTritoneFilter(filter, filterManager) {\r\n this.filterManager = filterManager;\r\n var feColorMatrix = createNS('feColorMatrix');\r\n feColorMatrix.setAttribute('type', 'matrix');\r\n feColorMatrix.setAttribute('color-interpolation-filters', 'linearRGB');\r\n feColorMatrix.setAttribute('values', '0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0');\r\n feColorMatrix.setAttribute('result', 'f1');\r\n filter.appendChild(feColorMatrix);\r\n var feComponentTransfer = createNS('feComponentTransfer');\r\n feComponentTransfer.setAttribute('color-interpolation-filters', 'sRGB');\r\n filter.appendChild(feComponentTransfer);\r\n this.matrixFilter = feComponentTransfer;\r\n var feFuncR = createNS('feFuncR');\r\n feFuncR.setAttribute('type', 'table');\r\n feComponentTransfer.appendChild(feFuncR);\r\n this.feFuncR = feFuncR;\r\n var feFuncG = createNS('feFuncG');\r\n feFuncG.setAttribute('type', 'table');\r\n feComponentTransfer.appendChild(feFuncG);\r\n this.feFuncG = feFuncG;\r\n var feFuncB = createNS('feFuncB');\r\n feFuncB.setAttribute('type', 'table');\r\n feComponentTransfer.appendChild(feFuncB);\r\n this.feFuncB = feFuncB;\r\n}\r\n\r\nSVGTritoneFilter.prototype.renderFrame = function (forceRender) {\r\n if (forceRender || this.filterManager._mdf) {\r\n var color1 = this.filterManager.effectElements[0].p.v;\r\n var color2 = this.filterManager.effectElements[1].p.v;\r\n var color3 = this.filterManager.effectElements[2].p.v;\r\n var tableR = color3[0] + ' ' + color2[0] + ' ' + color1[0];\r\n var tableG = color3[1] + ' ' + color2[1] + ' ' + color1[1];\r\n var tableB = color3[2] + ' ' + color2[2] + ' ' + color1[2];\r\n this.feFuncR.setAttribute('tableValues', tableR);\r\n this.feFuncG.setAttribute('tableValues', tableG);\r\n this.feFuncB.setAttribute('tableValues', tableB);\r\n // var opacity = this.filterManager.effectElements[2].p.v/100;\r\n // this.matrixFilter.setAttribute('values',(colorWhite[0]- colorBlack[0])+' 0 0 0 '+ colorBlack[0] +' '+ (colorWhite[1]- colorBlack[1]) +' 0 0 0 '+ colorBlack[1] +' '+ (colorWhite[2]- colorBlack[2]) +' 0 0 0 '+ colorBlack[2] +' 0 0 0 ' + opacity + ' 0');\r\n }\r\n};\r\n\r\n/* global createNS */\r\n\r\nfunction SVGProLevelsFilter(filter, filterManager) {\r\n this.filterManager = filterManager;\r\n var effectElements = this.filterManager.effectElements;\r\n var feComponentTransfer = createNS('feComponentTransfer');\r\n\r\n if (effectElements[10].p.k || effectElements[10].p.v !== 0 || effectElements[11].p.k || effectElements[11].p.v !== 1 || effectElements[12].p.k || effectElements[12].p.v !== 1 || effectElements[13].p.k || effectElements[13].p.v !== 0 || effectElements[14].p.k || effectElements[14].p.v !== 1) {\r\n this.feFuncR = this.createFeFunc('feFuncR', feComponentTransfer);\r\n }\r\n if (effectElements[17].p.k || effectElements[17].p.v !== 0 || effectElements[18].p.k || effectElements[18].p.v !== 1 || effectElements[19].p.k || effectElements[19].p.v !== 1 || effectElements[20].p.k || effectElements[20].p.v !== 0 || effectElements[21].p.k || effectElements[21].p.v !== 1) {\r\n this.feFuncG = this.createFeFunc('feFuncG', feComponentTransfer);\r\n }\r\n if (effectElements[24].p.k || effectElements[24].p.v !== 0 || effectElements[25].p.k || effectElements[25].p.v !== 1 || effectElements[26].p.k || effectElements[26].p.v !== 1 || effectElements[27].p.k || effectElements[27].p.v !== 0 || effectElements[28].p.k || effectElements[28].p.v !== 1) {\r\n this.feFuncB = this.createFeFunc('feFuncB', feComponentTransfer);\r\n }\r\n if (effectElements[31].p.k || effectElements[31].p.v !== 0 || effectElements[32].p.k || effectElements[32].p.v !== 1 || effectElements[33].p.k || effectElements[33].p.v !== 1 || effectElements[34].p.k || effectElements[34].p.v !== 0 || effectElements[35].p.k || effectElements[35].p.v !== 1) {\r\n this.feFuncA = this.createFeFunc('feFuncA', feComponentTransfer);\r\n }\r\n\r\n if (this.feFuncR || this.feFuncG || this.feFuncB || this.feFuncA) {\r\n feComponentTransfer.setAttribute('color-interpolation-filters', 'sRGB');\r\n filter.appendChild(feComponentTransfer);\r\n feComponentTransfer = createNS('feComponentTransfer');\r\n }\r\n\r\n if (effectElements[3].p.k || effectElements[3].p.v !== 0 || effectElements[4].p.k || effectElements[4].p.v !== 1 || effectElements[5].p.k || effectElements[5].p.v !== 1 || effectElements[6].p.k || effectElements[6].p.v !== 0 || effectElements[7].p.k || effectElements[7].p.v !== 1) {\r\n feComponentTransfer.setAttribute('color-interpolation-filters', 'sRGB');\r\n filter.appendChild(feComponentTransfer);\r\n this.feFuncRComposed = this.createFeFunc('feFuncR', feComponentTransfer);\r\n this.feFuncGComposed = this.createFeFunc('feFuncG', feComponentTransfer);\r\n this.feFuncBComposed = this.createFeFunc('feFuncB', feComponentTransfer);\r\n }\r\n}\r\n\r\nSVGProLevelsFilter.prototype.createFeFunc = function (type, feComponentTransfer) {\r\n var feFunc = createNS(type);\r\n feFunc.setAttribute('type', 'table');\r\n feComponentTransfer.appendChild(feFunc);\r\n return feFunc;\r\n};\r\n\r\nSVGProLevelsFilter.prototype.getTableValue = function (inputBlack, inputWhite, gamma, outputBlack, outputWhite) {\r\n var cnt = 0;\r\n var segments = 256;\r\n var perc;\r\n var min = Math.min(inputBlack, inputWhite);\r\n var max = Math.max(inputBlack, inputWhite);\r\n var table = Array.call(null, { length: segments });\r\n var colorValue;\r\n var pos = 0;\r\n var outputDelta = outputWhite - outputBlack;\r\n var inputDelta = inputWhite - inputBlack;\r\n while (cnt <= 256) {\r\n perc = cnt / 256;\r\n if (perc <= min) {\r\n colorValue = inputDelta < 0 ? outputWhite : outputBlack;\r\n } else if (perc >= max) {\r\n colorValue = inputDelta < 0 ? outputBlack : outputWhite;\r\n } else {\r\n colorValue = (outputBlack + outputDelta * Math.pow((perc - inputBlack) / inputDelta, 1 / gamma));\r\n }\r\n table[pos] = colorValue;\r\n pos += 1;\r\n cnt += 256 / (segments - 1);\r\n }\r\n return table.join(' ');\r\n};\r\n\r\nSVGProLevelsFilter.prototype.renderFrame = function (forceRender) {\r\n if (forceRender || this.filterManager._mdf) {\r\n var val;\r\n var effectElements = this.filterManager.effectElements;\r\n if (this.feFuncRComposed && (forceRender || effectElements[3].p._mdf || effectElements[4].p._mdf || effectElements[5].p._mdf || effectElements[6].p._mdf || effectElements[7].p._mdf)) {\r\n val = this.getTableValue(effectElements[3].p.v, effectElements[4].p.v, effectElements[5].p.v, effectElements[6].p.v, effectElements[7].p.v);\r\n this.feFuncRComposed.setAttribute('tableValues', val);\r\n this.feFuncGComposed.setAttribute('tableValues', val);\r\n this.feFuncBComposed.setAttribute('tableValues', val);\r\n }\r\n\r\n if (this.feFuncR && (forceRender || effectElements[10].p._mdf || effectElements[11].p._mdf || effectElements[12].p._mdf || effectElements[13].p._mdf || effectElements[14].p._mdf)) {\r\n val = this.getTableValue(effectElements[10].p.v, effectElements[11].p.v, effectElements[12].p.v, effectElements[13].p.v, effectElements[14].p.v);\r\n this.feFuncR.setAttribute('tableValues', val);\r\n }\r\n\r\n if (this.feFuncG && (forceRender || effectElements[17].p._mdf || effectElements[18].p._mdf || effectElements[19].p._mdf || effectElements[20].p._mdf || effectElements[21].p._mdf)) {\r\n val = this.getTableValue(effectElements[17].p.v, effectElements[18].p.v, effectElements[19].p.v, effectElements[20].p.v, effectElements[21].p.v);\r\n this.feFuncG.setAttribute('tableValues', val);\r\n }\r\n\r\n if (this.feFuncB && (forceRender || effectElements[24].p._mdf || effectElements[25].p._mdf || effectElements[26].p._mdf || effectElements[27].p._mdf || effectElements[28].p._mdf)) {\r\n val = this.getTableValue(effectElements[24].p.v, effectElements[25].p.v, effectElements[26].p.v, effectElements[27].p.v, effectElements[28].p.v);\r\n this.feFuncB.setAttribute('tableValues', val);\r\n }\r\n\r\n if (this.feFuncA && (forceRender || effectElements[31].p._mdf || effectElements[32].p._mdf || effectElements[33].p._mdf || effectElements[34].p._mdf || effectElements[35].p._mdf)) {\r\n val = this.getTableValue(effectElements[31].p.v, effectElements[32].p.v, effectElements[33].p.v, effectElements[34].p.v, effectElements[35].p.v);\r\n this.feFuncA.setAttribute('tableValues', val);\r\n }\r\n }\r\n};\r\n\r\n/* global createNS, rgbToHex, degToRads */\r\n\r\nfunction SVGDropShadowEffect(filter, filterManager) {\r\n var filterSize = filterManager.container.globalData.renderConfig.filterSize;\r\n filter.setAttribute('x', filterSize.x);\r\n filter.setAttribute('y', filterSize.y);\r\n filter.setAttribute('width', filterSize.width);\r\n filter.setAttribute('height', filterSize.height);\r\n this.filterManager = filterManager;\r\n\r\n var feGaussianBlur = createNS('feGaussianBlur');\r\n feGaussianBlur.setAttribute('in', 'SourceAlpha');\r\n feGaussianBlur.setAttribute('result', 'drop_shadow_1');\r\n feGaussianBlur.setAttribute('stdDeviation', '0');\r\n this.feGaussianBlur = feGaussianBlur;\r\n filter.appendChild(feGaussianBlur);\r\n\r\n var feOffset = createNS('feOffset');\r\n feOffset.setAttribute('dx', '25');\r\n feOffset.setAttribute('dy', '0');\r\n feOffset.setAttribute('in', 'drop_shadow_1');\r\n feOffset.setAttribute('result', 'drop_shadow_2');\r\n this.feOffset = feOffset;\r\n filter.appendChild(feOffset);\r\n var feFlood = createNS('feFlood');\r\n feFlood.setAttribute('flood-color', '#00ff00');\r\n feFlood.setAttribute('flood-opacity', '1');\r\n feFlood.setAttribute('result', 'drop_shadow_3');\r\n this.feFlood = feFlood;\r\n filter.appendChild(feFlood);\r\n\r\n var feComposite = createNS('feComposite');\r\n feComposite.setAttribute('in', 'drop_shadow_3');\r\n feComposite.setAttribute('in2', 'drop_shadow_2');\r\n feComposite.setAttribute('operator', 'in');\r\n feComposite.setAttribute('result', 'drop_shadow_4');\r\n filter.appendChild(feComposite);\r\n\r\n var feMerge = createNS('feMerge');\r\n filter.appendChild(feMerge);\r\n var feMergeNode;\r\n feMergeNode = createNS('feMergeNode');\r\n feMerge.appendChild(feMergeNode);\r\n feMergeNode = createNS('feMergeNode');\r\n feMergeNode.setAttribute('in', 'SourceGraphic');\r\n this.feMergeNode = feMergeNode;\r\n this.feMerge = feMerge;\r\n this.originalNodeAdded = false;\r\n feMerge.appendChild(feMergeNode);\r\n}\r\n\r\nSVGDropShadowEffect.prototype.renderFrame = function (forceRender) {\r\n if (forceRender || this.filterManager._mdf) {\r\n if (forceRender || this.filterManager.effectElements[4].p._mdf) {\r\n this.feGaussianBlur.setAttribute('stdDeviation', this.filterManager.effectElements[4].p.v / 4);\r\n }\r\n if (forceRender || this.filterManager.effectElements[0].p._mdf) {\r\n var col = this.filterManager.effectElements[0].p.v;\r\n this.feFlood.setAttribute('flood-color', rgbToHex(Math.round(col[0] * 255), Math.round(col[1] * 255), Math.round(col[2] * 255)));\r\n }\r\n if (forceRender || this.filterManager.effectElements[1].p._mdf) {\r\n this.feFlood.setAttribute('flood-opacity', this.filterManager.effectElements[1].p.v / 255);\r\n }\r\n if (forceRender || this.filterManager.effectElements[2].p._mdf || this.filterManager.effectElements[3].p._mdf) {\r\n var distance = this.filterManager.effectElements[3].p.v;\r\n var angle = (this.filterManager.effectElements[2].p.v - 90) * degToRads;\r\n var x = distance * Math.cos(angle);\r\n var y = distance * Math.sin(angle);\r\n this.feOffset.setAttribute('dx', x);\r\n this.feOffset.setAttribute('dy', y);\r\n }\r\n /* if(forceRender || this.filterManager.effectElements[5].p._mdf){\r\n if(this.filterManager.effectElements[5].p.v === 1 && this.originalNodeAdded) {\r\n this.feMerge.removeChild(this.feMergeNode);\r\n this.originalNodeAdded = false;\r\n } else if(this.filterManager.effectElements[5].p.v === 0 && !this.originalNodeAdded) {\r\n this.feMerge.appendChild(this.feMergeNode);\r\n this.originalNodeAdded = true;\r\n }\r\n } */\r\n }\r\n};\r\n\r\n/* global createElementID, createNS */\r\n\r\nvar _svgMatteSymbols = [];\r\n\r\nfunction SVGMatte3Effect(filterElem, filterManager, elem) {\r\n this.initialized = false;\r\n this.filterManager = filterManager;\r\n this.filterElem = filterElem;\r\n this.elem = elem;\r\n elem.matteElement = createNS('g');\r\n elem.matteElement.appendChild(elem.layerElement);\r\n elem.matteElement.appendChild(elem.transformedElement);\r\n elem.baseElement = elem.matteElement;\r\n}\r\n\r\nSVGMatte3Effect.prototype.findSymbol = function (mask) {\r\n var i = 0;\r\n var len = _svgMatteSymbols.length;\r\n while (i < len) {\r\n if (_svgMatteSymbols[i] === mask) {\r\n return _svgMatteSymbols[i];\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n};\r\n\r\nSVGMatte3Effect.prototype.replaceInParent = function (mask, symbolId) {\r\n var parentNode = mask.layerElement.parentNode;\r\n if (!parentNode) {\r\n return;\r\n }\r\n var children = parentNode.children;\r\n var i = 0;\r\n var len = children.length;\r\n while (i < len) {\r\n if (children[i] === mask.layerElement) {\r\n break;\r\n }\r\n i += 1;\r\n }\r\n var nextChild;\r\n if (i <= len - 2) {\r\n nextChild = children[i + 1];\r\n }\r\n var useElem = createNS('use');\r\n useElem.setAttribute('href', '#' + symbolId);\r\n if (nextChild) {\r\n parentNode.insertBefore(useElem, nextChild);\r\n } else {\r\n parentNode.appendChild(useElem);\r\n }\r\n};\r\n\r\nSVGMatte3Effect.prototype.setElementAsMask = function (elem, mask) {\r\n if (!this.findSymbol(mask)) {\r\n var symbolId = createElementID();\r\n var masker = createNS('mask');\r\n masker.setAttribute('id', mask.layerId);\r\n masker.setAttribute('mask-type', 'alpha');\r\n _svgMatteSymbols.push(mask);\r\n var defs = elem.globalData.defs;\r\n defs.appendChild(masker);\r\n var symbol = createNS('symbol');\r\n symbol.setAttribute('id', symbolId);\r\n this.replaceInParent(mask, symbolId);\r\n symbol.appendChild(mask.layerElement);\r\n defs.appendChild(symbol);\r\n var useElem = createNS('use');\r\n useElem.setAttribute('href', '#' + symbolId);\r\n masker.appendChild(useElem);\r\n mask.data.hd = false;\r\n mask.show();\r\n }\r\n elem.setMatte(mask.layerId);\r\n};\r\n\r\nSVGMatte3Effect.prototype.initialize = function () {\r\n var ind = this.filterManager.effectElements[0].p.v;\r\n var elements = this.elem.comp.elements;\r\n var i = 0;\r\n var len = elements.length;\r\n while (i < len) {\r\n if (elements[i] && elements[i].data.ind === ind) {\r\n this.setElementAsMask(this.elem, elements[i]);\r\n }\r\n i += 1;\r\n }\r\n this.initialized = true;\r\n};\r\n\r\nSVGMatte3Effect.prototype.renderFrame = function () {\r\n if (!this.initialized) {\r\n this.initialize();\r\n }\r\n};\r\n\r\n/* global createElementID, filtersFactory, SVGTintFilter, SVGFillFilter, SVGStrokeEffect, SVGTritoneFilter,\r\nSVGProLevelsFilter, SVGDropShadowEffect, SVGMatte3Effect, SVGGaussianBlurEffect, locationHref */\r\n\r\nfunction SVGEffects(elem) {\r\n var i;\r\n var len = elem.data.ef ? elem.data.ef.length : 0;\r\n var filId = createElementID();\r\n var fil = filtersFactory.createFilter(filId, true);\r\n var count = 0;\r\n this.filters = [];\r\n var filterManager;\r\n for (i = 0; i < len; i += 1) {\r\n filterManager = null;\r\n if (elem.data.ef[i].ty === 20) {\r\n count += 1;\r\n filterManager = new SVGTintFilter(fil, elem.effectsManager.effectElements[i]);\r\n } else if (elem.data.ef[i].ty === 21) {\r\n count += 1;\r\n filterManager = new SVGFillFilter(fil, elem.effectsManager.effectElements[i]);\r\n } else if (elem.data.ef[i].ty === 22) {\r\n filterManager = new SVGStrokeEffect(elem, elem.effectsManager.effectElements[i]);\r\n } else if (elem.data.ef[i].ty === 23) {\r\n count += 1;\r\n filterManager = new SVGTritoneFilter(fil, elem.effectsManager.effectElements[i]);\r\n } else if (elem.data.ef[i].ty === 24) {\r\n count += 1;\r\n filterManager = new SVGProLevelsFilter(fil, elem.effectsManager.effectElements[i]);\r\n } else if (elem.data.ef[i].ty === 25) {\r\n count += 1;\r\n filterManager = new SVGDropShadowEffect(fil, elem.effectsManager.effectElements[i]);\r\n } else if (elem.data.ef[i].ty === 28) {\r\n // count += 1;\r\n filterManager = new SVGMatte3Effect(fil, elem.effectsManager.effectElements[i], elem);\r\n } else if (elem.data.ef[i].ty === 29) {\r\n count += 1;\r\n filterManager = new SVGGaussianBlurEffect(fil, elem.effectsManager.effectElements[i]);\r\n }\r\n if (filterManager) {\r\n this.filters.push(filterManager);\r\n }\r\n }\r\n if (count) {\r\n elem.globalData.defs.appendChild(fil);\r\n elem.layerElement.setAttribute('filter', 'url(' + locationHref + '#' + filId + ')');\r\n }\r\n if (this.filters.length) {\r\n elem.addRenderableComponent(this);\r\n }\r\n}\r\n\r\nSVGEffects.prototype.renderFrame = function (_isFirstFrame) {\r\n var i;\r\n var len = this.filters.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.filters[i].renderFrame(_isFirstFrame);\r\n }\r\n};\r\n\r\n/* global Matrix, createTypedArray */\r\n\r\nfunction CVContextData() {\r\n this.saved = [];\r\n this.cArrPos = 0;\r\n this.cTr = new Matrix();\r\n this.cO = 1;\r\n var i;\r\n var len = 15;\r\n this.savedOp = createTypedArray('float32', len);\r\n for (i = 0; i < len; i += 1) {\r\n this.saved[i] = createTypedArray('float32', 16);\r\n }\r\n this._length = len;\r\n}\r\n\r\nCVContextData.prototype.duplicate = function () {\r\n var newLength = this._length * 2;\r\n var currentSavedOp = this.savedOp;\r\n this.savedOp = createTypedArray('float32', newLength);\r\n this.savedOp.set(currentSavedOp);\r\n var i = 0;\r\n for (i = this._length; i < newLength; i += 1) {\r\n this.saved[i] = createTypedArray('float32', 16);\r\n }\r\n this._length = newLength;\r\n};\r\n\r\nCVContextData.prototype.reset = function () {\r\n this.cArrPos = 0;\r\n this.cTr.reset();\r\n this.cO = 1;\r\n};\r\n\r\n/* global CVEffects, getBlendMode, CVMaskElement, Matrix */\r\n\r\nfunction CVBaseElement() {\r\n}\r\n\r\nCVBaseElement.prototype = {\r\n createElements: function () {},\r\n initRendererElement: function () {},\r\n createContainerElements: function () {\r\n this.canvasContext = this.globalData.canvasContext;\r\n this.renderableEffectsManager = new CVEffects(this);\r\n },\r\n createContent: function () {},\r\n setBlendMode: function () {\r\n var globalData = this.globalData;\r\n if (globalData.blendMode !== this.data.bm) {\r\n globalData.blendMode = this.data.bm;\r\n var blendModeValue = getBlendMode(this.data.bm);\r\n globalData.canvasContext.globalCompositeOperation = blendModeValue;\r\n }\r\n },\r\n createRenderableComponents: function () {\r\n this.maskManager = new CVMaskElement(this.data, this);\r\n },\r\n hideElement: function () {\r\n if (!this.hidden && (!this.isInRange || this.isTransparent)) {\r\n this.hidden = true;\r\n }\r\n },\r\n showElement: function () {\r\n if (this.isInRange && !this.isTransparent) {\r\n this.hidden = false;\r\n this._isFirstFrame = true;\r\n this.maskManager._isFirstFrame = true;\r\n }\r\n },\r\n renderFrame: function () {\r\n if (this.hidden || this.data.hd) {\r\n return;\r\n }\r\n this.renderTransform();\r\n this.renderRenderable();\r\n this.setBlendMode();\r\n var forceRealStack = this.data.ty === 0;\r\n this.globalData.renderer.save(forceRealStack);\r\n this.globalData.renderer.ctxTransform(this.finalTransform.mat.props);\r\n this.globalData.renderer.ctxOpacity(this.finalTransform.mProp.o.v);\r\n this.renderInnerContent();\r\n this.globalData.renderer.restore(forceRealStack);\r\n if (this.maskManager.hasMasks) {\r\n this.globalData.renderer.restore(true);\r\n }\r\n if (this._isFirstFrame) {\r\n this._isFirstFrame = false;\r\n }\r\n },\r\n destroy: function () {\r\n this.canvasContext = null;\r\n this.data = null;\r\n this.globalData = null;\r\n this.maskManager.destroy();\r\n },\r\n mHelper: new Matrix(),\r\n};\r\nCVBaseElement.prototype.hide = CVBaseElement.prototype.hideElement;\r\nCVBaseElement.prototype.show = CVBaseElement.prototype.showElement;\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, CVBaseElement,HierarchyElement, FrameElement,\r\nRenderableElement, SVGShapeElement, IImageElement, createTag */\r\n\r\nfunction CVImageElement(data, globalData, comp) {\r\n this.assetData = globalData.getAssetData(data.refId);\r\n this.img = globalData.imageLoader.getAsset(this.assetData);\r\n this.initElement(data, globalData, comp);\r\n}\r\nextendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement], CVImageElement);\r\n\r\nCVImageElement.prototype.initElement = SVGShapeElement.prototype.initElement;\r\nCVImageElement.prototype.prepareFrame = IImageElement.prototype.prepareFrame;\r\n\r\nCVImageElement.prototype.createContent = function () {\r\n if (this.img.width && (this.assetData.w !== this.img.width || this.assetData.h !== this.img.height)) {\r\n var canvas = createTag('canvas');\r\n canvas.width = this.assetData.w;\r\n canvas.height = this.assetData.h;\r\n var ctx = canvas.getContext('2d');\r\n\r\n var imgW = this.img.width;\r\n var imgH = this.img.height;\r\n var imgRel = imgW / imgH;\r\n var canvasRel = this.assetData.w / this.assetData.h;\r\n var widthCrop;\r\n var heightCrop;\r\n var par = this.assetData.pr || this.globalData.renderConfig.imagePreserveAspectRatio;\r\n if ((imgRel > canvasRel && par === 'xMidYMid slice') || (imgRel < canvasRel && par !== 'xMidYMid slice')) {\r\n heightCrop = imgH;\r\n widthCrop = heightCrop * canvasRel;\r\n } else {\r\n widthCrop = imgW;\r\n heightCrop = widthCrop / canvasRel;\r\n }\r\n ctx.drawImage(this.img, (imgW - widthCrop) / 2, (imgH - heightCrop) / 2, widthCrop, heightCrop, 0, 0, this.assetData.w, this.assetData.h);\r\n this.img = canvas;\r\n }\r\n};\r\n\r\nCVImageElement.prototype.renderInnerContent = function () {\r\n this.canvasContext.drawImage(this.img, 0, 0);\r\n};\r\n\r\nCVImageElement.prototype.destroy = function () {\r\n this.img = null;\r\n};\r\n\r\n/* global createSizedArray, PropertyFactory, extendPrototype, CanvasRenderer, ICompElement, CVBaseElement */\r\n\r\nfunction CVCompElement(data, globalData, comp) {\r\n this.completeLayers = false;\r\n this.layers = data.layers;\r\n this.pendingElements = [];\r\n this.elements = createSizedArray(this.layers.length);\r\n this.initElement(data, globalData, comp);\r\n this.tm = data.tm ? PropertyFactory.getProp(this, data.tm, 0, globalData.frameRate, this) : { _placeholder: true };\r\n}\r\n\r\nextendPrototype([CanvasRenderer, ICompElement, CVBaseElement], CVCompElement);\r\n\r\nCVCompElement.prototype.renderInnerContent = function () {\r\n var ctx = this.canvasContext;\r\n ctx.beginPath();\r\n ctx.moveTo(0, 0);\r\n ctx.lineTo(this.data.w, 0);\r\n ctx.lineTo(this.data.w, this.data.h);\r\n ctx.lineTo(0, this.data.h);\r\n ctx.lineTo(0, 0);\r\n ctx.clip();\r\n var i;\r\n var len = this.layers.length;\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n if (this.completeLayers || this.elements[i]) {\r\n this.elements[i].renderFrame();\r\n }\r\n }\r\n};\r\n\r\nCVCompElement.prototype.destroy = function () {\r\n var i;\r\n var len = this.layers.length;\r\n for (i = len - 1; i >= 0; i -= 1) {\r\n if (this.elements[i]) {\r\n this.elements[i].destroy();\r\n }\r\n }\r\n this.layers = null;\r\n this.elements = null;\r\n};\r\n\r\n/* global createSizedArray, ShapePropertyFactory, MaskElement */\r\n\r\nfunction CVMaskElement(data, element) {\r\n this.data = data;\r\n this.element = element;\r\n this.masksProperties = this.data.masksProperties || [];\r\n this.viewData = createSizedArray(this.masksProperties.length);\r\n var i;\r\n var len = this.masksProperties.length;\r\n var hasMasks = false;\r\n for (i = 0; i < len; i += 1) {\r\n if (this.masksProperties[i].mode !== 'n') {\r\n hasMasks = true;\r\n }\r\n this.viewData[i] = ShapePropertyFactory.getShapeProp(this.element, this.masksProperties[i], 3);\r\n }\r\n this.hasMasks = hasMasks;\r\n if (hasMasks) {\r\n this.element.addRenderableComponent(this);\r\n }\r\n}\r\n\r\nCVMaskElement.prototype.renderFrame = function () {\r\n if (!this.hasMasks) {\r\n return;\r\n }\r\n var transform = this.element.finalTransform.mat;\r\n var ctx = this.element.canvasContext;\r\n var i;\r\n var len = this.masksProperties.length;\r\n var pt;\r\n var pts;\r\n var data;\r\n ctx.beginPath();\r\n for (i = 0; i < len; i += 1) {\r\n if (this.masksProperties[i].mode !== 'n') {\r\n if (this.masksProperties[i].inv) {\r\n ctx.moveTo(0, 0);\r\n ctx.lineTo(this.element.globalData.compSize.w, 0);\r\n ctx.lineTo(this.element.globalData.compSize.w, this.element.globalData.compSize.h);\r\n ctx.lineTo(0, this.element.globalData.compSize.h);\r\n ctx.lineTo(0, 0);\r\n }\r\n data = this.viewData[i].v;\r\n pt = transform.applyToPointArray(data.v[0][0], data.v[0][1], 0);\r\n ctx.moveTo(pt[0], pt[1]);\r\n var j;\r\n var jLen = data._length;\r\n for (j = 1; j < jLen; j += 1) {\r\n pts = transform.applyToTriplePoints(data.o[j - 1], data.i[j], data.v[j]);\r\n ctx.bezierCurveTo(pts[0], pts[1], pts[2], pts[3], pts[4], pts[5]);\r\n }\r\n pts = transform.applyToTriplePoints(data.o[j - 1], data.i[0], data.v[0]);\r\n ctx.bezierCurveTo(pts[0], pts[1], pts[2], pts[3], pts[4], pts[5]);\r\n }\r\n }\r\n this.element.globalData.renderer.save(true);\r\n ctx.clip();\r\n};\r\n\r\nCVMaskElement.prototype.getMaskProperty = MaskElement.prototype.getMaskProperty;\r\n\r\nCVMaskElement.prototype.destroy = function () {\r\n this.element = null;\r\n};\r\n\r\n/* global ShapeTransformManager, extendPrototype, BaseElement, TransformElement, CVBaseElement, IShapeElement,\r\nHierarchyElement, FrameElement, RenderableElement, RenderableDOMElement, PropertyFactory, degToRads, GradientProperty,\r\nDashProperty, TransformPropertyFactory, CVShapeData, ShapeModifiers, bmFloor */\r\n\r\nfunction CVShapeElement(data, globalData, comp) {\r\n this.shapes = [];\r\n this.shapesData = data.shapes;\r\n this.stylesList = [];\r\n this.itemsData = [];\r\n this.prevViewData = [];\r\n this.shapeModifiers = [];\r\n this.processedElements = [];\r\n this.transformsManager = new ShapeTransformManager();\r\n this.initElement(data, globalData, comp);\r\n}\r\n\r\nextendPrototype([BaseElement, TransformElement, CVBaseElement, IShapeElement, HierarchyElement, FrameElement, RenderableElement], CVShapeElement);\r\n\r\nCVShapeElement.prototype.initElement = RenderableDOMElement.prototype.initElement;\r\n\r\nCVShapeElement.prototype.transformHelper = { opacity: 1, _opMdf: false };\r\n\r\nCVShapeElement.prototype.dashResetter = [];\r\n\r\nCVShapeElement.prototype.createContent = function () {\r\n this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, true, []);\r\n};\r\n\r\nCVShapeElement.prototype.createStyleElement = function (data, transforms) {\r\n var styleElem = {\r\n data: data,\r\n type: data.ty,\r\n preTransforms: this.transformsManager.addTransformSequence(transforms),\r\n transforms: [],\r\n elements: [],\r\n closed: data.hd === true,\r\n };\r\n var elementData = {};\r\n if (data.ty === 'fl' || data.ty === 'st') {\r\n elementData.c = PropertyFactory.getProp(this, data.c, 1, 255, this);\r\n if (!elementData.c.k) {\r\n styleElem.co = 'rgb(' + bmFloor(elementData.c.v[0]) + ',' + bmFloor(elementData.c.v[1]) + ',' + bmFloor(elementData.c.v[2]) + ')';\r\n }\r\n } else if (data.ty === 'gf' || data.ty === 'gs') {\r\n elementData.s = PropertyFactory.getProp(this, data.s, 1, null, this);\r\n elementData.e = PropertyFactory.getProp(this, data.e, 1, null, this);\r\n elementData.h = PropertyFactory.getProp(this, data.h || { k: 0 }, 0, 0.01, this);\r\n elementData.a = PropertyFactory.getProp(this, data.a || { k: 0 }, 0, degToRads, this);\r\n elementData.g = new GradientProperty(this, data.g, this);\r\n }\r\n elementData.o = PropertyFactory.getProp(this, data.o, 0, 0.01, this);\r\n if (data.ty === 'st' || data.ty === 'gs') {\r\n styleElem.lc = this.lcEnum[data.lc] || 'round';\r\n styleElem.lj = this.ljEnum[data.lj] || 'round';\r\n if (data.lj == 1) { // eslint-disable-line eqeqeq\r\n styleElem.ml = data.ml;\r\n }\r\n elementData.w = PropertyFactory.getProp(this, data.w, 0, null, this);\r\n if (!elementData.w.k) {\r\n styleElem.wi = elementData.w.v;\r\n }\r\n if (data.d) {\r\n var d = new DashProperty(this, data.d, 'canvas', this);\r\n elementData.d = d;\r\n if (!elementData.d.k) {\r\n styleElem.da = elementData.d.dashArray;\r\n styleElem.do = elementData.d.dashoffset[0];\r\n }\r\n }\r\n } else {\r\n styleElem.r = data.r === 2 ? 'evenodd' : 'nonzero';\r\n }\r\n this.stylesList.push(styleElem);\r\n elementData.style = styleElem;\r\n return elementData;\r\n};\r\n\r\nCVShapeElement.prototype.createGroupElement = function () {\r\n var elementData = {\r\n it: [],\r\n prevViewData: [],\r\n };\r\n return elementData;\r\n};\r\n\r\nCVShapeElement.prototype.createTransformElement = function (data) {\r\n var elementData = {\r\n transform: {\r\n opacity: 1,\r\n _opMdf: false,\r\n key: this.transformsManager.getNewKey(),\r\n op: PropertyFactory.getProp(this, data.o, 0, 0.01, this),\r\n mProps: TransformPropertyFactory.getTransformProperty(this, data, this),\r\n },\r\n };\r\n return elementData;\r\n};\r\n\r\nCVShapeElement.prototype.createShapeElement = function (data) {\r\n var elementData = new CVShapeData(this, data, this.stylesList, this.transformsManager);\r\n\r\n this.shapes.push(elementData);\r\n this.addShapeToModifiers(elementData);\r\n return elementData;\r\n};\r\n\r\nCVShapeElement.prototype.reloadShapes = function () {\r\n this._isFirstFrame = true;\r\n var i;\r\n var len = this.itemsData.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.prevViewData[i] = this.itemsData[i];\r\n }\r\n this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, true, []);\r\n len = this.dynamicProperties.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.dynamicProperties[i].getValue();\r\n }\r\n this.renderModifiers();\r\n this.transformsManager.processSequences(this._isFirstFrame);\r\n};\r\n\r\nCVShapeElement.prototype.addTransformToStyleList = function (transform) {\r\n var i;\r\n var len = this.stylesList.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (!this.stylesList[i].closed) {\r\n this.stylesList[i].transforms.push(transform);\r\n }\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.removeTransformFromStyleList = function () {\r\n var i;\r\n var len = this.stylesList.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (!this.stylesList[i].closed) {\r\n this.stylesList[i].transforms.pop();\r\n }\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.closeStyles = function (styles) {\r\n var i;\r\n var len = styles.length;\r\n for (i = 0; i < len; i += 1) {\r\n styles[i].closed = true;\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.searchShapes = function (arr, itemsData, prevViewData, shouldRender, transforms) {\r\n var i;\r\n var len = arr.length - 1;\r\n var j;\r\n var jLen;\r\n var ownStyles = [];\r\n var ownModifiers = [];\r\n var processedPos;\r\n var modifier;\r\n var currentTransform;\r\n var ownTransforms = [].concat(transforms);\r\n for (i = len; i >= 0; i -= 1) {\r\n processedPos = this.searchProcessedElement(arr[i]);\r\n if (!processedPos) {\r\n arr[i]._shouldRender = shouldRender;\r\n } else {\r\n itemsData[i] = prevViewData[processedPos - 1];\r\n }\r\n if (arr[i].ty === 'fl' || arr[i].ty === 'st' || arr[i].ty === 'gf' || arr[i].ty === 'gs') {\r\n if (!processedPos) {\r\n itemsData[i] = this.createStyleElement(arr[i], ownTransforms);\r\n } else {\r\n itemsData[i].style.closed = false;\r\n }\r\n\r\n ownStyles.push(itemsData[i].style);\r\n } else if (arr[i].ty === 'gr') {\r\n if (!processedPos) {\r\n itemsData[i] = this.createGroupElement(arr[i]);\r\n } else {\r\n jLen = itemsData[i].it.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n itemsData[i].prevViewData[j] = itemsData[i].it[j];\r\n }\r\n }\r\n this.searchShapes(arr[i].it, itemsData[i].it, itemsData[i].prevViewData, shouldRender, ownTransforms);\r\n } else if (arr[i].ty === 'tr') {\r\n if (!processedPos) {\r\n currentTransform = this.createTransformElement(arr[i]);\r\n itemsData[i] = currentTransform;\r\n }\r\n ownTransforms.push(itemsData[i]);\r\n this.addTransformToStyleList(itemsData[i]);\r\n } else if (arr[i].ty === 'sh' || arr[i].ty === 'rc' || arr[i].ty === 'el' || arr[i].ty === 'sr') {\r\n if (!processedPos) {\r\n itemsData[i] = this.createShapeElement(arr[i]);\r\n }\r\n } else if (arr[i].ty === 'tm' || arr[i].ty === 'rd' || arr[i].ty === 'pb') {\r\n if (!processedPos) {\r\n modifier = ShapeModifiers.getModifier(arr[i].ty);\r\n modifier.init(this, arr[i]);\r\n itemsData[i] = modifier;\r\n this.shapeModifiers.push(modifier);\r\n } else {\r\n modifier = itemsData[i];\r\n modifier.closed = false;\r\n }\r\n ownModifiers.push(modifier);\r\n } else if (arr[i].ty === 'rp') {\r\n if (!processedPos) {\r\n modifier = ShapeModifiers.getModifier(arr[i].ty);\r\n itemsData[i] = modifier;\r\n modifier.init(this, arr, i, itemsData);\r\n this.shapeModifiers.push(modifier);\r\n shouldRender = false;\r\n } else {\r\n modifier = itemsData[i];\r\n modifier.closed = true;\r\n }\r\n ownModifiers.push(modifier);\r\n }\r\n this.addProcessedElement(arr[i], i + 1);\r\n }\r\n this.removeTransformFromStyleList();\r\n this.closeStyles(ownStyles);\r\n len = ownModifiers.length;\r\n for (i = 0; i < len; i += 1) {\r\n ownModifiers[i].closed = true;\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.renderInnerContent = function () {\r\n this.transformHelper.opacity = 1;\r\n this.transformHelper._opMdf = false;\r\n this.renderModifiers();\r\n this.transformsManager.processSequences(this._isFirstFrame);\r\n this.renderShape(this.transformHelper, this.shapesData, this.itemsData, true);\r\n};\r\n\r\nCVShapeElement.prototype.renderShapeTransform = function (parentTransform, groupTransform) {\r\n if (parentTransform._opMdf || groupTransform.op._mdf || this._isFirstFrame) {\r\n groupTransform.opacity = parentTransform.opacity;\r\n groupTransform.opacity *= groupTransform.op.v;\r\n groupTransform._opMdf = true;\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.drawLayer = function () {\r\n var i;\r\n var len = this.stylesList.length;\r\n var j;\r\n var jLen;\r\n var k;\r\n var kLen;\r\n var elems;\r\n var nodes;\r\n var renderer = this.globalData.renderer;\r\n var ctx = this.globalData.canvasContext;\r\n var type;\r\n var currentStyle;\r\n for (i = 0; i < len; i += 1) {\r\n currentStyle = this.stylesList[i];\r\n type = currentStyle.type;\r\n\r\n // Skipping style when\r\n // Stroke width equals 0\r\n // style should not be rendered (extra unused repeaters)\r\n // current opacity equals 0\r\n // global opacity equals 0\r\n if (!(((type === 'st' || type === 'gs') && currentStyle.wi === 0) || !currentStyle.data._shouldRender || currentStyle.coOp === 0 || this.globalData.currentGlobalAlpha === 0)) {\r\n renderer.save();\r\n elems = currentStyle.elements;\r\n if (type === 'st' || type === 'gs') {\r\n ctx.strokeStyle = type === 'st' ? currentStyle.co : currentStyle.grd;\r\n ctx.lineWidth = currentStyle.wi;\r\n ctx.lineCap = currentStyle.lc;\r\n ctx.lineJoin = currentStyle.lj;\r\n ctx.miterLimit = currentStyle.ml || 0;\r\n } else {\r\n ctx.fillStyle = type === 'fl' ? currentStyle.co : currentStyle.grd;\r\n }\r\n renderer.ctxOpacity(currentStyle.coOp);\r\n if (type !== 'st' && type !== 'gs') {\r\n ctx.beginPath();\r\n }\r\n renderer.ctxTransform(currentStyle.preTransforms.finalTransform.props);\r\n jLen = elems.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n if (type === 'st' || type === 'gs') {\r\n ctx.beginPath();\r\n if (currentStyle.da) {\r\n ctx.setLineDash(currentStyle.da);\r\n ctx.lineDashOffset = currentStyle.do;\r\n }\r\n }\r\n nodes = elems[j].trNodes;\r\n kLen = nodes.length;\r\n\r\n for (k = 0; k < kLen; k += 1) {\r\n if (nodes[k].t === 'm') {\r\n ctx.moveTo(nodes[k].p[0], nodes[k].p[1]);\r\n } else if (nodes[k].t === 'c') {\r\n ctx.bezierCurveTo(nodes[k].pts[0], nodes[k].pts[1], nodes[k].pts[2], nodes[k].pts[3], nodes[k].pts[4], nodes[k].pts[5]);\r\n } else {\r\n ctx.closePath();\r\n }\r\n }\r\n if (type === 'st' || type === 'gs') {\r\n ctx.stroke();\r\n if (currentStyle.da) {\r\n ctx.setLineDash(this.dashResetter);\r\n }\r\n }\r\n }\r\n if (type !== 'st' && type !== 'gs') {\r\n ctx.fill(currentStyle.r);\r\n }\r\n renderer.restore();\r\n }\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.renderShape = function (parentTransform, items, data, isMain) {\r\n var i;\r\n var len = items.length - 1;\r\n var groupTransform;\r\n groupTransform = parentTransform;\r\n for (i = len; i >= 0; i -= 1) {\r\n if (items[i].ty === 'tr') {\r\n groupTransform = data[i].transform;\r\n this.renderShapeTransform(parentTransform, groupTransform);\r\n } else if (items[i].ty === 'sh' || items[i].ty === 'el' || items[i].ty === 'rc' || items[i].ty === 'sr') {\r\n this.renderPath(items[i], data[i]);\r\n } else if (items[i].ty === 'fl') {\r\n this.renderFill(items[i], data[i], groupTransform);\r\n } else if (items[i].ty === 'st') {\r\n this.renderStroke(items[i], data[i], groupTransform);\r\n } else if (items[i].ty === 'gf' || items[i].ty === 'gs') {\r\n this.renderGradientFill(items[i], data[i], groupTransform);\r\n } else if (items[i].ty === 'gr') {\r\n this.renderShape(groupTransform, items[i].it, data[i].it);\r\n } else if (items[i].ty === 'tm') {\r\n //\r\n }\r\n }\r\n if (isMain) {\r\n this.drawLayer();\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.renderStyledShape = function (styledShape, shape) {\r\n if (this._isFirstFrame || shape._mdf || styledShape.transforms._mdf) {\r\n var shapeNodes = styledShape.trNodes;\r\n var paths = shape.paths;\r\n var i;\r\n var len;\r\n var j;\r\n var jLen = paths._length;\r\n shapeNodes.length = 0;\r\n var groupTransformMat = styledShape.transforms.finalTransform;\r\n for (j = 0; j < jLen; j += 1) {\r\n var pathNodes = paths.shapes[j];\r\n if (pathNodes && pathNodes.v) {\r\n len = pathNodes._length;\r\n for (i = 1; i < len; i += 1) {\r\n if (i === 1) {\r\n shapeNodes.push({\r\n t: 'm',\r\n p: groupTransformMat.applyToPointArray(pathNodes.v[0][0], pathNodes.v[0][1], 0),\r\n });\r\n }\r\n shapeNodes.push({\r\n t: 'c',\r\n pts: groupTransformMat.applyToTriplePoints(pathNodes.o[i - 1], pathNodes.i[i], pathNodes.v[i]),\r\n });\r\n }\r\n if (len === 1) {\r\n shapeNodes.push({\r\n t: 'm',\r\n p: groupTransformMat.applyToPointArray(pathNodes.v[0][0], pathNodes.v[0][1], 0),\r\n });\r\n }\r\n if (pathNodes.c && len) {\r\n shapeNodes.push({\r\n t: 'c',\r\n pts: groupTransformMat.applyToTriplePoints(pathNodes.o[i - 1], pathNodes.i[0], pathNodes.v[0]),\r\n });\r\n shapeNodes.push({\r\n t: 'z',\r\n });\r\n }\r\n }\r\n }\r\n styledShape.trNodes = shapeNodes;\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.renderPath = function (pathData, itemData) {\r\n if (pathData.hd !== true && pathData._shouldRender) {\r\n var i;\r\n var len = itemData.styledShapes.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.renderStyledShape(itemData.styledShapes[i], itemData.sh);\r\n }\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.renderFill = function (styleData, itemData, groupTransform) {\r\n var styleElem = itemData.style;\r\n\r\n if (itemData.c._mdf || this._isFirstFrame) {\r\n styleElem.co = 'rgb('\r\n + bmFloor(itemData.c.v[0]) + ','\r\n + bmFloor(itemData.c.v[1]) + ','\r\n + bmFloor(itemData.c.v[2]) + ')';\r\n }\r\n if (itemData.o._mdf || groupTransform._opMdf || this._isFirstFrame) {\r\n styleElem.coOp = itemData.o.v * groupTransform.opacity;\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.renderGradientFill = function (styleData, itemData, groupTransform) {\r\n var styleElem = itemData.style;\r\n var grd;\r\n if (!styleElem.grd || itemData.g._mdf || itemData.s._mdf || itemData.e._mdf || (styleData.t !== 1 && (itemData.h._mdf || itemData.a._mdf))) {\r\n var ctx = this.globalData.canvasContext;\r\n var pt1 = itemData.s.v;\r\n var pt2 = itemData.e.v;\r\n if (styleData.t === 1) {\r\n grd = ctx.createLinearGradient(pt1[0], pt1[1], pt2[0], pt2[1]);\r\n } else {\r\n var rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\r\n var ang = Math.atan2(pt2[1] - pt1[1], pt2[0] - pt1[0]);\r\n\r\n var percent = itemData.h.v;\r\n if (percent >= 1) {\r\n percent = 0.99;\r\n } else if (percent <= -1) {\r\n percent = -0.99;\r\n }\r\n var dist = rad * percent;\r\n var x = Math.cos(ang + itemData.a.v) * dist + pt1[0];\r\n var y = Math.sin(ang + itemData.a.v) * dist + pt1[1];\r\n grd = ctx.createRadialGradient(x, y, 0, pt1[0], pt1[1], rad);\r\n }\r\n\r\n var i;\r\n var len = styleData.g.p;\r\n var cValues = itemData.g.c;\r\n var opacity = 1;\r\n\r\n for (i = 0; i < len; i += 1) {\r\n if (itemData.g._hasOpacity && itemData.g._collapsable) {\r\n opacity = itemData.g.o[i * 2 + 1];\r\n }\r\n grd.addColorStop(cValues[i * 4] / 100, 'rgba(' + cValues[i * 4 + 1] + ',' + cValues[i * 4 + 2] + ',' + cValues[i * 4 + 3] + ',' + opacity + ')');\r\n }\r\n styleElem.grd = grd;\r\n }\r\n styleElem.coOp = itemData.o.v * groupTransform.opacity;\r\n};\r\n\r\nCVShapeElement.prototype.renderStroke = function (styleData, itemData, groupTransform) {\r\n var styleElem = itemData.style;\r\n var d = itemData.d;\r\n if (d && (d._mdf || this._isFirstFrame)) {\r\n styleElem.da = d.dashArray;\r\n styleElem.do = d.dashoffset[0];\r\n }\r\n if (itemData.c._mdf || this._isFirstFrame) {\r\n styleElem.co = 'rgb(' + bmFloor(itemData.c.v[0]) + ',' + bmFloor(itemData.c.v[1]) + ',' + bmFloor(itemData.c.v[2]) + ')';\r\n }\r\n if (itemData.o._mdf || groupTransform._opMdf || this._isFirstFrame) {\r\n styleElem.coOp = itemData.o.v * groupTransform.opacity;\r\n }\r\n if (itemData.w._mdf || this._isFirstFrame) {\r\n styleElem.wi = itemData.w.v;\r\n }\r\n};\r\n\r\nCVShapeElement.prototype.destroy = function () {\r\n this.shapesData = null;\r\n this.globalData = null;\r\n this.canvasContext = null;\r\n this.stylesList.length = 0;\r\n this.itemsData.length = 0;\r\n};\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement,\r\nSVGShapeElement, IImageElement */\r\n\r\nfunction CVSolidElement(data, globalData, comp) {\r\n this.initElement(data, globalData, comp);\r\n}\r\nextendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement], CVSolidElement);\r\n\r\nCVSolidElement.prototype.initElement = SVGShapeElement.prototype.initElement;\r\nCVSolidElement.prototype.prepareFrame = IImageElement.prototype.prepareFrame;\r\n\r\nCVSolidElement.prototype.renderInnerContent = function () {\r\n var ctx = this.canvasContext;\r\n ctx.fillStyle = this.data.sc;\r\n ctx.fillRect(0, 0, this.data.sw, this.data.sh);\r\n //\r\n};\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement,\r\nRenderableElement, ITextElement, createTag, createSizedArray */\r\n\r\nfunction CVTextElement(data, globalData, comp) {\r\n this.textSpans = [];\r\n this.yOffset = 0;\r\n this.fillColorAnim = false;\r\n this.strokeColorAnim = false;\r\n this.strokeWidthAnim = false;\r\n this.stroke = false;\r\n this.fill = false;\r\n this.justifyOffset = 0;\r\n this.currentRender = null;\r\n this.renderType = 'canvas';\r\n this.values = {\r\n fill: 'rgba(0,0,0,0)',\r\n stroke: 'rgba(0,0,0,0)',\r\n sWidth: 0,\r\n fValue: '',\r\n };\r\n this.initElement(data, globalData, comp);\r\n}\r\nextendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement, ITextElement], CVTextElement);\r\n\r\nCVTextElement.prototype.tHelper = createTag('canvas').getContext('2d');\r\n\r\nCVTextElement.prototype.buildNewText = function () {\r\n var documentData = this.textProperty.currentData;\r\n this.renderedLetters = createSizedArray(documentData.l ? documentData.l.length : 0);\r\n\r\n var hasFill = false;\r\n if (documentData.fc) {\r\n hasFill = true;\r\n this.values.fill = this.buildColor(documentData.fc);\r\n } else {\r\n this.values.fill = 'rgba(0,0,0,0)';\r\n }\r\n this.fill = hasFill;\r\n var hasStroke = false;\r\n if (documentData.sc) {\r\n hasStroke = true;\r\n this.values.stroke = this.buildColor(documentData.sc);\r\n this.values.sWidth = documentData.sw;\r\n }\r\n var fontData = this.globalData.fontManager.getFontByName(documentData.f);\r\n var i;\r\n var len;\r\n var letters = documentData.l;\r\n var matrixHelper = this.mHelper;\r\n this.stroke = hasStroke;\r\n this.values.fValue = documentData.finalSize + 'px ' + this.globalData.fontManager.getFontByName(documentData.f).fFamily;\r\n len = documentData.finalText.length;\r\n // this.tHelper.font = this.values.fValue;\r\n var charData;\r\n var shapeData;\r\n var k;\r\n var kLen;\r\n var shapes;\r\n var j;\r\n var jLen;\r\n var pathNodes;\r\n var commands;\r\n var pathArr;\r\n var singleShape = this.data.singleShape;\r\n var trackingOffset = documentData.tr * 0.001 * documentData.finalSize;\r\n var xPos = 0;\r\n var yPos = 0;\r\n var firstLine = true;\r\n var cnt = 0;\r\n for (i = 0; i < len; i += 1) {\r\n charData = this.globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, this.globalData.fontManager.getFontByName(documentData.f).fFamily);\r\n shapeData = (charData && charData.data) || {};\r\n matrixHelper.reset();\r\n if (singleShape && letters[i].n) {\r\n xPos = -trackingOffset;\r\n yPos += documentData.yOffset;\r\n yPos += firstLine ? 1 : 0;\r\n firstLine = false;\r\n }\r\n\r\n shapes = shapeData.shapes ? shapeData.shapes[0].it : [];\r\n jLen = shapes.length;\r\n matrixHelper.scale(documentData.finalSize / 100, documentData.finalSize / 100);\r\n if (singleShape) {\r\n this.applyTextPropertiesToMatrix(documentData, matrixHelper, letters[i].line, xPos, yPos);\r\n }\r\n commands = createSizedArray(jLen);\r\n for (j = 0; j < jLen; j += 1) {\r\n kLen = shapes[j].ks.k.i.length;\r\n pathNodes = shapes[j].ks.k;\r\n pathArr = [];\r\n for (k = 1; k < kLen; k += 1) {\r\n if (k === 1) {\r\n pathArr.push(matrixHelper.applyToX(pathNodes.v[0][0], pathNodes.v[0][1], 0), matrixHelper.applyToY(pathNodes.v[0][0], pathNodes.v[0][1], 0));\r\n }\r\n pathArr.push(matrixHelper.applyToX(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToY(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToX(pathNodes.i[k][0], pathNodes.i[k][1], 0), matrixHelper.applyToY(pathNodes.i[k][0], pathNodes.i[k][1], 0), matrixHelper.applyToX(pathNodes.v[k][0], pathNodes.v[k][1], 0), matrixHelper.applyToY(pathNodes.v[k][0], pathNodes.v[k][1], 0));\r\n }\r\n pathArr.push(matrixHelper.applyToX(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToY(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToX(pathNodes.i[0][0], pathNodes.i[0][1], 0), matrixHelper.applyToY(pathNodes.i[0][0], pathNodes.i[0][1], 0), matrixHelper.applyToX(pathNodes.v[0][0], pathNodes.v[0][1], 0), matrixHelper.applyToY(pathNodes.v[0][0], pathNodes.v[0][1], 0));\r\n commands[j] = pathArr;\r\n }\r\n if (singleShape) {\r\n xPos += letters[i].l;\r\n xPos += trackingOffset;\r\n }\r\n if (this.textSpans[cnt]) {\r\n this.textSpans[cnt].elem = commands;\r\n } else {\r\n this.textSpans[cnt] = { elem: commands };\r\n }\r\n cnt += 1;\r\n }\r\n};\r\n\r\nCVTextElement.prototype.renderInnerContent = function () {\r\n var ctx = this.canvasContext;\r\n ctx.font = this.values.fValue;\r\n ctx.lineCap = 'butt';\r\n ctx.lineJoin = 'miter';\r\n ctx.miterLimit = 4;\r\n\r\n if (!this.data.singleShape) {\r\n this.textAnimator.getMeasures(this.textProperty.currentData, this.lettersChangedFlag);\r\n }\r\n\r\n var i;\r\n var len;\r\n var j;\r\n var jLen;\r\n var k;\r\n var kLen;\r\n var renderedLetters = this.textAnimator.renderedLetters;\r\n\r\n var letters = this.textProperty.currentData.l;\r\n\r\n len = letters.length;\r\n var renderedLetter;\r\n var lastFill = null;\r\n var lastStroke = null;\r\n var lastStrokeW = null;\r\n var commands;\r\n var pathArr;\r\n for (i = 0; i < len; i += 1) {\r\n if (!letters[i].n) {\r\n renderedLetter = renderedLetters[i];\r\n if (renderedLetter) {\r\n this.globalData.renderer.save();\r\n this.globalData.renderer.ctxTransform(renderedLetter.p);\r\n this.globalData.renderer.ctxOpacity(renderedLetter.o);\r\n }\r\n if (this.fill) {\r\n if (renderedLetter && renderedLetter.fc) {\r\n if (lastFill !== renderedLetter.fc) {\r\n lastFill = renderedLetter.fc;\r\n ctx.fillStyle = renderedLetter.fc;\r\n }\r\n } else if (lastFill !== this.values.fill) {\r\n lastFill = this.values.fill;\r\n ctx.fillStyle = this.values.fill;\r\n }\r\n commands = this.textSpans[i].elem;\r\n jLen = commands.length;\r\n this.globalData.canvasContext.beginPath();\r\n for (j = 0; j < jLen; j += 1) {\r\n pathArr = commands[j];\r\n kLen = pathArr.length;\r\n this.globalData.canvasContext.moveTo(pathArr[0], pathArr[1]);\r\n for (k = 2; k < kLen; k += 6) {\r\n this.globalData.canvasContext.bezierCurveTo(pathArr[k], pathArr[k + 1], pathArr[k + 2], pathArr[k + 3], pathArr[k + 4], pathArr[k + 5]);\r\n }\r\n }\r\n this.globalData.canvasContext.closePath();\r\n this.globalData.canvasContext.fill();\r\n /// ctx.fillText(this.textSpans[i].val,0,0);\r\n }\r\n if (this.stroke) {\r\n if (renderedLetter && renderedLetter.sw) {\r\n if (lastStrokeW !== renderedLetter.sw) {\r\n lastStrokeW = renderedLetter.sw;\r\n ctx.lineWidth = renderedLetter.sw;\r\n }\r\n } else if (lastStrokeW !== this.values.sWidth) {\r\n lastStrokeW = this.values.sWidth;\r\n ctx.lineWidth = this.values.sWidth;\r\n }\r\n if (renderedLetter && renderedLetter.sc) {\r\n if (lastStroke !== renderedLetter.sc) {\r\n lastStroke = renderedLetter.sc;\r\n ctx.strokeStyle = renderedLetter.sc;\r\n }\r\n } else if (lastStroke !== this.values.stroke) {\r\n lastStroke = this.values.stroke;\r\n ctx.strokeStyle = this.values.stroke;\r\n }\r\n commands = this.textSpans[i].elem;\r\n jLen = commands.length;\r\n this.globalData.canvasContext.beginPath();\r\n for (j = 0; j < jLen; j += 1) {\r\n pathArr = commands[j];\r\n kLen = pathArr.length;\r\n this.globalData.canvasContext.moveTo(pathArr[0], pathArr[1]);\r\n for (k = 2; k < kLen; k += 6) {\r\n this.globalData.canvasContext.bezierCurveTo(pathArr[k], pathArr[k + 1], pathArr[k + 2], pathArr[k + 3], pathArr[k + 4], pathArr[k + 5]);\r\n }\r\n }\r\n this.globalData.canvasContext.closePath();\r\n this.globalData.canvasContext.stroke();\r\n /// ctx.strokeText(letters[i].val,0,0);\r\n }\r\n if (renderedLetter) {\r\n this.globalData.renderer.restore();\r\n }\r\n }\r\n }\r\n};\r\n\r\nfunction CVEffects() {\r\n\r\n}\r\nCVEffects.prototype.renderFrame = function () {};\r\n\r\n/* global createTag, createNS, styleDiv, CVEffects, MaskElement, SVGBaseElement, HybridRenderer */\r\n\r\nfunction HBaseElement() {}\r\nHBaseElement.prototype = {\r\n checkBlendMode: function () {},\r\n initRendererElement: function () {\r\n this.baseElement = createTag(this.data.tg || 'div');\r\n if (this.data.hasMask) {\r\n this.svgElement = createNS('svg');\r\n this.layerElement = createNS('g');\r\n this.maskedElement = this.layerElement;\r\n this.svgElement.appendChild(this.layerElement);\r\n this.baseElement.appendChild(this.svgElement);\r\n } else {\r\n this.layerElement = this.baseElement;\r\n }\r\n styleDiv(this.baseElement);\r\n },\r\n createContainerElements: function () {\r\n this.renderableEffectsManager = new CVEffects(this);\r\n this.transformedElement = this.baseElement;\r\n this.maskedElement = this.layerElement;\r\n if (this.data.ln) {\r\n this.layerElement.setAttribute('id', this.data.ln);\r\n }\r\n if (this.data.cl) {\r\n this.layerElement.setAttribute('class', this.data.cl);\r\n }\r\n if (this.data.bm !== 0) {\r\n this.setBlendMode();\r\n }\r\n },\r\n renderElement: function () {\r\n var transformedElementStyle = this.transformedElement ? this.transformedElement.style : {};\r\n if (this.finalTransform._matMdf) {\r\n var matrixValue = this.finalTransform.mat.toCSS();\r\n transformedElementStyle.transform = matrixValue;\r\n transformedElementStyle.webkitTransform = matrixValue;\r\n }\r\n if (this.finalTransform._opMdf) {\r\n transformedElementStyle.opacity = this.finalTransform.mProp.o.v;\r\n }\r\n },\r\n renderFrame: function () {\r\n // If it is exported as hidden (data.hd === true) no need to render\r\n // If it is not visible no need to render\r\n if (this.data.hd || this.hidden) {\r\n return;\r\n }\r\n this.renderTransform();\r\n this.renderRenderable();\r\n this.renderElement();\r\n this.renderInnerContent();\r\n if (this._isFirstFrame) {\r\n this._isFirstFrame = false;\r\n }\r\n },\r\n destroy: function () {\r\n this.layerElement = null;\r\n this.transformedElement = null;\r\n if (this.matteElement) {\r\n this.matteElement = null;\r\n }\r\n if (this.maskManager) {\r\n this.maskManager.destroy();\r\n this.maskManager = null;\r\n }\r\n },\r\n createRenderableComponents: function () {\r\n this.maskManager = new MaskElement(this.data, this, this.globalData);\r\n },\r\n addEffects: function () {\r\n },\r\n setMatte: function () {},\r\n};\r\nHBaseElement.prototype.getBaseElement = SVGBaseElement.prototype.getBaseElement;\r\nHBaseElement.prototype.destroyBaseElement = HBaseElement.prototype.destroy;\r\nHBaseElement.prototype.buildElementParenting = HybridRenderer.prototype.buildElementParenting;\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement,\r\nRenderableDOMElement, createNS, createTag */\r\n\r\nfunction HSolidElement(data, globalData, comp) {\r\n this.initElement(data, globalData, comp);\r\n}\r\nextendPrototype([BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement, RenderableDOMElement], HSolidElement);\r\n\r\nHSolidElement.prototype.createContent = function () {\r\n var rect;\r\n if (this.data.hasMask) {\r\n rect = createNS('rect');\r\n rect.setAttribute('width', this.data.sw);\r\n rect.setAttribute('height', this.data.sh);\r\n rect.setAttribute('fill', this.data.sc);\r\n this.svgElement.setAttribute('width', this.data.sw);\r\n this.svgElement.setAttribute('height', this.data.sh);\r\n } else {\r\n rect = createTag('div');\r\n rect.style.width = this.data.sw + 'px';\r\n rect.style.height = this.data.sh + 'px';\r\n rect.style.backgroundColor = this.data.sc;\r\n }\r\n this.layerElement.appendChild(rect);\r\n};\r\n\r\n/* global createSizedArray, PropertyFactory, extendPrototype, HybridRenderer, ICompElement, HBaseElement */\r\n\r\nfunction HCompElement(data, globalData, comp) {\r\n this.layers = data.layers;\r\n this.supports3d = !data.hasMask;\r\n this.completeLayers = false;\r\n this.pendingElements = [];\r\n this.elements = this.layers ? createSizedArray(this.layers.length) : [];\r\n this.initElement(data, globalData, comp);\r\n this.tm = data.tm ? PropertyFactory.getProp(this, data.tm, 0, globalData.frameRate, this) : { _placeholder: true };\r\n}\r\n\r\nextendPrototype([HybridRenderer, ICompElement, HBaseElement], HCompElement);\r\nHCompElement.prototype._createBaseContainerElements = HCompElement.prototype.createContainerElements;\r\n\r\nHCompElement.prototype.createContainerElements = function () {\r\n this._createBaseContainerElements();\r\n // divElement.style.clip = 'rect(0px, '+this.data.w+'px, '+this.data.h+'px, 0px)';\r\n if (this.data.hasMask) {\r\n this.svgElement.setAttribute('width', this.data.w);\r\n this.svgElement.setAttribute('height', this.data.h);\r\n this.transformedElement = this.baseElement;\r\n } else {\r\n this.transformedElement = this.layerElement;\r\n }\r\n};\r\n\r\nHCompElement.prototype.addTo3dContainer = function (elem, pos) {\r\n var j = 0;\r\n var nextElement;\r\n while (j < pos) {\r\n if (this.elements[j] && this.elements[j].getBaseElement) {\r\n nextElement = this.elements[j].getBaseElement();\r\n }\r\n j += 1;\r\n }\r\n if (nextElement) {\r\n this.layerElement.insertBefore(elem, nextElement);\r\n } else {\r\n this.layerElement.appendChild(elem);\r\n }\r\n};\r\n\r\n/* global createNS, extendPrototype, BaseElement, TransformElement, HSolidElement, SVGShapeElement, HBaseElement,\r\nHierarchyElement, FrameElement, RenderableElement, createNS, bmMin, bmSqrt, bmMin, bmMax, bmPow */\r\n\r\nfunction HShapeElement(data, globalData, comp) {\r\n // List of drawable elements\r\n this.shapes = [];\r\n // Full shape data\r\n this.shapesData = data.shapes;\r\n // List of styles that will be applied to shapes\r\n this.stylesList = [];\r\n // List of modifiers that will be applied to shapes\r\n this.shapeModifiers = [];\r\n // List of items in shape tree\r\n this.itemsData = [];\r\n // List of items in previous shape tree\r\n this.processedElements = [];\r\n // List of animated components\r\n this.animatedContents = [];\r\n this.shapesContainer = createNS('g');\r\n this.initElement(data, globalData, comp);\r\n // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\r\n // List of elements that have been created\r\n this.prevViewData = [];\r\n this.currentBBox = {\r\n x: 999999,\r\n y: -999999,\r\n h: 0,\r\n w: 0,\r\n };\r\n}\r\nextendPrototype([BaseElement, TransformElement, HSolidElement, SVGShapeElement, HBaseElement, HierarchyElement, FrameElement, RenderableElement], HShapeElement);\r\nHShapeElement.prototype._renderShapeFrame = HShapeElement.prototype.renderInnerContent;\r\n\r\nHShapeElement.prototype.createContent = function () {\r\n var cont;\r\n this.baseElement.style.fontSize = 0;\r\n if (this.data.hasMask) {\r\n this.layerElement.appendChild(this.shapesContainer);\r\n cont = this.svgElement;\r\n } else {\r\n cont = createNS('svg');\r\n var size = this.comp.data ? this.comp.data : this.globalData.compSize;\r\n cont.setAttribute('width', size.w);\r\n cont.setAttribute('height', size.h);\r\n cont.appendChild(this.shapesContainer);\r\n this.layerElement.appendChild(cont);\r\n }\r\n\r\n this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.shapesContainer, 0, [], true);\r\n this.filterUniqueShapes();\r\n this.shapeCont = cont;\r\n};\r\n\r\nHShapeElement.prototype.getTransformedPoint = function (transformers, point) {\r\n var i;\r\n var len = transformers.length;\r\n for (i = 0; i < len; i += 1) {\r\n point = transformers[i].mProps.v.applyToPointArray(point[0], point[1], 0);\r\n }\r\n return point;\r\n};\r\n\r\nHShapeElement.prototype.calculateShapeBoundingBox = function (item, boundingBox) {\r\n var shape = item.sh.v;\r\n var transformers = item.transformers;\r\n var i;\r\n var len = shape._length;\r\n var vPoint;\r\n var oPoint;\r\n var nextIPoint;\r\n var nextVPoint;\r\n if (len <= 1) {\r\n return;\r\n }\r\n for (i = 0; i < len - 1; i += 1) {\r\n vPoint = this.getTransformedPoint(transformers, shape.v[i]);\r\n oPoint = this.getTransformedPoint(transformers, shape.o[i]);\r\n nextIPoint = this.getTransformedPoint(transformers, shape.i[i + 1]);\r\n nextVPoint = this.getTransformedPoint(transformers, shape.v[i + 1]);\r\n this.checkBounds(vPoint, oPoint, nextIPoint, nextVPoint, boundingBox);\r\n }\r\n if (shape.c) {\r\n vPoint = this.getTransformedPoint(transformers, shape.v[i]);\r\n oPoint = this.getTransformedPoint(transformers, shape.o[i]);\r\n nextIPoint = this.getTransformedPoint(transformers, shape.i[0]);\r\n nextVPoint = this.getTransformedPoint(transformers, shape.v[0]);\r\n this.checkBounds(vPoint, oPoint, nextIPoint, nextVPoint, boundingBox);\r\n }\r\n};\r\n\r\nHShapeElement.prototype.checkBounds = function (vPoint, oPoint, nextIPoint, nextVPoint, boundingBox) {\r\n this.getBoundsOfCurve(vPoint, oPoint, nextIPoint, nextVPoint);\r\n var bounds = this.shapeBoundingBox;\r\n boundingBox.x = bmMin(bounds.left, boundingBox.x);\r\n boundingBox.xMax = bmMax(bounds.right, boundingBox.xMax);\r\n boundingBox.y = bmMin(bounds.top, boundingBox.y);\r\n boundingBox.yMax = bmMax(bounds.bottom, boundingBox.yMax);\r\n};\r\n\r\nHShapeElement.prototype.shapeBoundingBox = {\r\n left: 0,\r\n right: 0,\r\n top: 0,\r\n bottom: 0,\r\n};\r\n\r\nHShapeElement.prototype.tempBoundingBox = {\r\n x: 0,\r\n xMax: 0,\r\n y: 0,\r\n yMax: 0,\r\n width: 0,\r\n height: 0,\r\n};\r\n\r\nHShapeElement.prototype.getBoundsOfCurve = function (p0, p1, p2, p3) {\r\n var bounds = [[p0[0], p3[0]], [p0[1], p3[1]]];\r\n\r\n for (var a, b, c, t, b2ac, t1, t2, i = 0; i < 2; ++i) { // eslint-disable-line no-plusplus\r\n b = 6 * p0[i] - 12 * p1[i] + 6 * p2[i];\r\n a = -3 * p0[i] + 9 * p1[i] - 9 * p2[i] + 3 * p3[i];\r\n c = 3 * p1[i] - 3 * p0[i];\r\n\r\n b |= 0; // eslint-disable-line no-bitwise\r\n a |= 0; // eslint-disable-line no-bitwise\r\n c |= 0; // eslint-disable-line no-bitwise\r\n\r\n if (a === 0 && b === 0) {\r\n //\r\n } else if (a === 0) {\r\n t = -c / b;\r\n\r\n if (t > 0 && t < 1) {\r\n bounds[i].push(this.calculateF(t, p0, p1, p2, p3, i));\r\n }\r\n } else {\r\n b2ac = b * b - 4 * c * a;\r\n\r\n if (b2ac >= 0) {\r\n t1 = (-b + bmSqrt(b2ac)) / (2 * a);\r\n if (t1 > 0 && t1 < 1) bounds[i].push(this.calculateF(t1, p0, p1, p2, p3, i));\r\n t2 = (-b - bmSqrt(b2ac)) / (2 * a);\r\n if (t2 > 0 && t2 < 1) bounds[i].push(this.calculateF(t2, p0, p1, p2, p3, i));\r\n }\r\n }\r\n }\r\n\r\n this.shapeBoundingBox.left = bmMin.apply(null, bounds[0]);\r\n this.shapeBoundingBox.top = bmMin.apply(null, bounds[1]);\r\n this.shapeBoundingBox.right = bmMax.apply(null, bounds[0]);\r\n this.shapeBoundingBox.bottom = bmMax.apply(null, bounds[1]);\r\n};\r\n\r\nHShapeElement.prototype.calculateF = function (t, p0, p1, p2, p3, i) {\r\n return bmPow(1 - t, 3) * p0[i]\r\n + 3 * bmPow(1 - t, 2) * t * p1[i]\r\n + 3 * (1 - t) * bmPow(t, 2) * p2[i]\r\n + bmPow(t, 3) * p3[i];\r\n};\r\n\r\nHShapeElement.prototype.calculateBoundingBox = function (itemsData, boundingBox) {\r\n var i;\r\n var len = itemsData.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (itemsData[i] && itemsData[i].sh) {\r\n this.calculateShapeBoundingBox(itemsData[i], boundingBox);\r\n } else if (itemsData[i] && itemsData[i].it) {\r\n this.calculateBoundingBox(itemsData[i].it, boundingBox);\r\n }\r\n }\r\n};\r\n\r\nHShapeElement.prototype.currentBoxContains = function (box) {\r\n return this.currentBBox.x <= box.x\r\n && this.currentBBox.y <= box.y\r\n && this.currentBBox.width + this.currentBBox.x >= box.x + box.width\r\n && this.currentBBox.height + this.currentBBox.y >= box.y + box.height;\r\n};\r\n\r\nHShapeElement.prototype.renderInnerContent = function () {\r\n this._renderShapeFrame();\r\n\r\n if (!this.hidden && (this._isFirstFrame || this._mdf)) {\r\n var tempBoundingBox = this.tempBoundingBox;\r\n var max = 999999;\r\n tempBoundingBox.x = max;\r\n tempBoundingBox.xMax = -max;\r\n tempBoundingBox.y = max;\r\n tempBoundingBox.yMax = -max;\r\n this.calculateBoundingBox(this.itemsData, tempBoundingBox);\r\n tempBoundingBox.width = tempBoundingBox.xMax < tempBoundingBox.x ? 0 : tempBoundingBox.xMax - tempBoundingBox.x;\r\n tempBoundingBox.height = tempBoundingBox.yMax < tempBoundingBox.y ? 0 : tempBoundingBox.yMax - tempBoundingBox.y;\r\n // var tempBoundingBox = this.shapeCont.getBBox();\r\n if (this.currentBoxContains(tempBoundingBox)) {\r\n return;\r\n }\r\n var changed = false;\r\n if (this.currentBBox.w !== tempBoundingBox.width) {\r\n this.currentBBox.w = tempBoundingBox.width;\r\n this.shapeCont.setAttribute('width', tempBoundingBox.width);\r\n changed = true;\r\n }\r\n if (this.currentBBox.h !== tempBoundingBox.height) {\r\n this.currentBBox.h = tempBoundingBox.height;\r\n this.shapeCont.setAttribute('height', tempBoundingBox.height);\r\n changed = true;\r\n }\r\n if (changed || this.currentBBox.x !== tempBoundingBox.x || this.currentBBox.y !== tempBoundingBox.y) {\r\n this.currentBBox.w = tempBoundingBox.width;\r\n this.currentBBox.h = tempBoundingBox.height;\r\n this.currentBBox.x = tempBoundingBox.x;\r\n this.currentBBox.y = tempBoundingBox.y;\r\n\r\n this.shapeCont.setAttribute('viewBox', this.currentBBox.x + ' ' + this.currentBBox.y + ' ' + this.currentBBox.w + ' ' + this.currentBBox.h);\r\n var shapeStyle = this.shapeCont.style;\r\n var shapeTransform = 'translate(' + this.currentBBox.x + 'px,' + this.currentBBox.y + 'px)';\r\n shapeStyle.transform = shapeTransform;\r\n shapeStyle.webkitTransform = shapeTransform;\r\n }\r\n }\r\n};\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement,\r\nRenderableDOMElement, ITextElement, createSizedArray, createTag, styleDiv, createNS */\r\n\r\nfunction HTextElement(data, globalData, comp) {\r\n this.textSpans = [];\r\n this.textPaths = [];\r\n this.currentBBox = {\r\n x: 999999,\r\n y: -999999,\r\n h: 0,\r\n w: 0,\r\n };\r\n this.renderType = 'svg';\r\n this.isMasked = false;\r\n this.initElement(data, globalData, comp);\r\n}\r\nextendPrototype([BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement, RenderableDOMElement, ITextElement], HTextElement);\r\n\r\nHTextElement.prototype.createContent = function () {\r\n this.isMasked = this.checkMasks();\r\n if (this.isMasked) {\r\n this.renderType = 'svg';\r\n this.compW = this.comp.data.w;\r\n this.compH = this.comp.data.h;\r\n this.svgElement.setAttribute('width', this.compW);\r\n this.svgElement.setAttribute('height', this.compH);\r\n var g = createNS('g');\r\n this.maskedElement.appendChild(g);\r\n this.innerElem = g;\r\n } else {\r\n this.renderType = 'html';\r\n this.innerElem = this.layerElement;\r\n }\r\n\r\n this.checkParenting();\r\n};\r\n\r\nHTextElement.prototype.buildNewText = function () {\r\n var documentData = this.textProperty.currentData;\r\n this.renderedLetters = createSizedArray(documentData.l ? documentData.l.length : 0);\r\n var innerElemStyle = this.innerElem.style;\r\n var textColor = documentData.fc ? this.buildColor(documentData.fc) : 'rgba(0,0,0,0)';\r\n innerElemStyle.fill = textColor;\r\n innerElemStyle.color = textColor;\r\n if (documentData.sc) {\r\n innerElemStyle.stroke = this.buildColor(documentData.sc);\r\n innerElemStyle.strokeWidth = documentData.sw + 'px';\r\n }\r\n var fontData = this.globalData.fontManager.getFontByName(documentData.f);\r\n if (!this.globalData.fontManager.chars) {\r\n innerElemStyle.fontSize = documentData.finalSize + 'px';\r\n innerElemStyle.lineHeight = documentData.finalSize + 'px';\r\n if (fontData.fClass) {\r\n this.innerElem.className = fontData.fClass;\r\n } else {\r\n innerElemStyle.fontFamily = fontData.fFamily;\r\n var fWeight = documentData.fWeight;\r\n var fStyle = documentData.fStyle;\r\n innerElemStyle.fontStyle = fStyle;\r\n innerElemStyle.fontWeight = fWeight;\r\n }\r\n }\r\n var i;\r\n var len;\r\n\r\n var letters = documentData.l;\r\n len = letters.length;\r\n var tSpan;\r\n var tParent;\r\n var tCont;\r\n var matrixHelper = this.mHelper;\r\n var shapes;\r\n var shapeStr = '';\r\n var cnt = 0;\r\n for (i = 0; i < len; i += 1) {\r\n if (this.globalData.fontManager.chars) {\r\n if (!this.textPaths[cnt]) {\r\n tSpan = createNS('path');\r\n tSpan.setAttribute('stroke-linecap', 'butt');\r\n tSpan.setAttribute('stroke-linejoin', 'round');\r\n tSpan.setAttribute('stroke-miterlimit', '4');\r\n } else {\r\n tSpan = this.textPaths[cnt];\r\n }\r\n if (!this.isMasked) {\r\n if (this.textSpans[cnt]) {\r\n tParent = this.textSpans[cnt];\r\n tCont = tParent.children[0];\r\n } else {\r\n tParent = createTag('div');\r\n tParent.style.lineHeight = 0;\r\n tCont = createNS('svg');\r\n tCont.appendChild(tSpan);\r\n styleDiv(tParent);\r\n }\r\n }\r\n } else if (!this.isMasked) {\r\n if (this.textSpans[cnt]) {\r\n tParent = this.textSpans[cnt];\r\n tSpan = this.textPaths[cnt];\r\n } else {\r\n tParent = createTag('span');\r\n styleDiv(tParent);\r\n tSpan = createTag('span');\r\n styleDiv(tSpan);\r\n tParent.appendChild(tSpan);\r\n }\r\n } else {\r\n tSpan = this.textPaths[cnt] ? this.textPaths[cnt] : createNS('text');\r\n }\r\n // tSpan.setAttribute('visibility', 'hidden');\r\n if (this.globalData.fontManager.chars) {\r\n var charData = this.globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, this.globalData.fontManager.getFontByName(documentData.f).fFamily);\r\n var shapeData;\r\n if (charData) {\r\n shapeData = charData.data;\r\n } else {\r\n shapeData = null;\r\n }\r\n matrixHelper.reset();\r\n if (shapeData && shapeData.shapes) {\r\n shapes = shapeData.shapes[0].it;\r\n matrixHelper.scale(documentData.finalSize / 100, documentData.finalSize / 100);\r\n shapeStr = this.createPathShape(matrixHelper, shapes);\r\n tSpan.setAttribute('d', shapeStr);\r\n }\r\n if (!this.isMasked) {\r\n this.innerElem.appendChild(tParent);\r\n if (shapeData && shapeData.shapes) {\r\n // document.body.appendChild is needed to get exact measure of shape\r\n document.body.appendChild(tCont);\r\n var boundingBox = tCont.getBBox();\r\n tCont.setAttribute('width', boundingBox.width + 2);\r\n tCont.setAttribute('height', boundingBox.height + 2);\r\n tCont.setAttribute('viewBox', (boundingBox.x - 1) + ' ' + (boundingBox.y - 1) + ' ' + (boundingBox.width + 2) + ' ' + (boundingBox.height + 2));\r\n var tContStyle = tCont.style;\r\n var tContTranslation = 'translate(' + (boundingBox.x - 1) + 'px,' + (boundingBox.y - 1) + 'px)';\r\n tContStyle.transform = tContTranslation;\r\n tContStyle.webkitTransform = tContTranslation;\r\n\r\n letters[i].yOffset = boundingBox.y - 1;\r\n } else {\r\n tCont.setAttribute('width', 1);\r\n tCont.setAttribute('height', 1);\r\n }\r\n tParent.appendChild(tCont);\r\n } else {\r\n this.innerElem.appendChild(tSpan);\r\n }\r\n } else {\r\n tSpan.textContent = letters[i].val;\r\n tSpan.setAttributeNS('http://www.w3.org/XML/1998/namespace', 'xml:space', 'preserve');\r\n if (!this.isMasked) {\r\n this.innerElem.appendChild(tParent);\r\n //\r\n var tStyle = tSpan.style;\r\n var tSpanTranslation = 'translate3d(0,' + -documentData.finalSize / 1.2 + 'px,0)';\r\n tStyle.transform = tSpanTranslation;\r\n tStyle.webkitTransform = tSpanTranslation;\r\n } else {\r\n this.innerElem.appendChild(tSpan);\r\n }\r\n }\r\n //\r\n if (!this.isMasked) {\r\n this.textSpans[cnt] = tParent;\r\n } else {\r\n this.textSpans[cnt] = tSpan;\r\n }\r\n this.textSpans[cnt].style.display = 'block';\r\n this.textPaths[cnt] = tSpan;\r\n cnt += 1;\r\n }\r\n while (cnt < this.textSpans.length) {\r\n this.textSpans[cnt].style.display = 'none';\r\n cnt += 1;\r\n }\r\n};\r\n\r\nHTextElement.prototype.renderInnerContent = function () {\r\n var svgStyle;\r\n if (this.data.singleShape) {\r\n if (!this._isFirstFrame && !this.lettersChangedFlag) {\r\n return;\r\n } if (this.isMasked && this.finalTransform._matMdf) {\r\n // Todo Benchmark if using this is better than getBBox\r\n this.svgElement.setAttribute('viewBox', -this.finalTransform.mProp.p.v[0] + ' ' + -this.finalTransform.mProp.p.v[1] + ' ' + this.compW + ' ' + this.compH);\r\n svgStyle = this.svgElement.style;\r\n var translation = 'translate(' + -this.finalTransform.mProp.p.v[0] + 'px,' + -this.finalTransform.mProp.p.v[1] + 'px)';\r\n svgStyle.transform = translation;\r\n svgStyle.webkitTransform = translation;\r\n }\r\n }\r\n\r\n this.textAnimator.getMeasures(this.textProperty.currentData, this.lettersChangedFlag);\r\n if (!this.lettersChangedFlag && !this.textAnimator.lettersChangedFlag) {\r\n return;\r\n }\r\n var i;\r\n var len;\r\n var count = 0;\r\n var renderedLetters = this.textAnimator.renderedLetters;\r\n\r\n var letters = this.textProperty.currentData.l;\r\n\r\n len = letters.length;\r\n var renderedLetter;\r\n var textSpan;\r\n var textPath;\r\n for (i = 0; i < len; i += 1) {\r\n if (letters[i].n) {\r\n count += 1;\r\n } else {\r\n textSpan = this.textSpans[i];\r\n textPath = this.textPaths[i];\r\n renderedLetter = renderedLetters[count];\r\n count += 1;\r\n if (renderedLetter._mdf.m) {\r\n if (!this.isMasked) {\r\n textSpan.style.webkitTransform = renderedLetter.m;\r\n textSpan.style.transform = renderedLetter.m;\r\n } else {\r\n textSpan.setAttribute('transform', renderedLetter.m);\r\n }\r\n }\r\n /// /textSpan.setAttribute('opacity',renderedLetter.o);\r\n textSpan.style.opacity = renderedLetter.o;\r\n if (renderedLetter.sw && renderedLetter._mdf.sw) {\r\n textPath.setAttribute('stroke-width', renderedLetter.sw);\r\n }\r\n if (renderedLetter.sc && renderedLetter._mdf.sc) {\r\n textPath.setAttribute('stroke', renderedLetter.sc);\r\n }\r\n if (renderedLetter.fc && renderedLetter._mdf.fc) {\r\n textPath.setAttribute('fill', renderedLetter.fc);\r\n textPath.style.color = renderedLetter.fc;\r\n }\r\n }\r\n }\r\n\r\n if (this.innerElem.getBBox && !this.hidden && (this._isFirstFrame || this._mdf)) {\r\n var boundingBox = this.innerElem.getBBox();\r\n\r\n if (this.currentBBox.w !== boundingBox.width) {\r\n this.currentBBox.w = boundingBox.width;\r\n this.svgElement.setAttribute('width', boundingBox.width);\r\n }\r\n if (this.currentBBox.h !== boundingBox.height) {\r\n this.currentBBox.h = boundingBox.height;\r\n this.svgElement.setAttribute('height', boundingBox.height);\r\n }\r\n\r\n var margin = 1;\r\n if (this.currentBBox.w !== (boundingBox.width + margin * 2) || this.currentBBox.h !== (boundingBox.height + margin * 2) || this.currentBBox.x !== (boundingBox.x - margin) || this.currentBBox.y !== (boundingBox.y - margin)) {\r\n this.currentBBox.w = boundingBox.width + margin * 2;\r\n this.currentBBox.h = boundingBox.height + margin * 2;\r\n this.currentBBox.x = boundingBox.x - margin;\r\n this.currentBBox.y = boundingBox.y - margin;\r\n\r\n this.svgElement.setAttribute('viewBox', this.currentBBox.x + ' ' + this.currentBBox.y + ' ' + this.currentBBox.w + ' ' + this.currentBBox.h);\r\n svgStyle = this.svgElement.style;\r\n var svgTransform = 'translate(' + this.currentBBox.x + 'px,' + this.currentBBox.y + 'px)';\r\n svgStyle.transform = svgTransform;\r\n svgStyle.webkitTransform = svgTransform;\r\n }\r\n }\r\n};\r\n\r\n/* global extendPrototype, BaseElement, TransformElement, HBaseElement, HSolidElement, HierarchyElement,\r\nFrameElement, RenderableElement, createNS */\r\n\r\nfunction HImageElement(data, globalData, comp) {\r\n this.assetData = globalData.getAssetData(data.refId);\r\n this.initElement(data, globalData, comp);\r\n}\r\n\r\nextendPrototype([BaseElement, TransformElement, HBaseElement, HSolidElement, HierarchyElement, FrameElement, RenderableElement], HImageElement);\r\n\r\nHImageElement.prototype.createContent = function () {\r\n var assetPath = this.globalData.getAssetsPath(this.assetData);\r\n var img = new Image();\r\n\r\n if (this.data.hasMask) {\r\n this.imageElem = createNS('image');\r\n this.imageElem.setAttribute('width', this.assetData.w + 'px');\r\n this.imageElem.setAttribute('height', this.assetData.h + 'px');\r\n this.imageElem.setAttributeNS('http://www.w3.org/1999/xlink', 'href', assetPath);\r\n this.layerElement.appendChild(this.imageElem);\r\n this.baseElement.setAttribute('width', this.assetData.w);\r\n this.baseElement.setAttribute('height', this.assetData.h);\r\n } else {\r\n this.layerElement.appendChild(img);\r\n }\r\n img.crossOrigin = 'anonymous';\r\n img.src = assetPath;\r\n if (this.data.ln) {\r\n this.baseElement.setAttribute('id', this.data.ln);\r\n }\r\n};\r\n\r\n/* global PropertyFactory, degToRads, Matrix, extendPrototype, BaseElement, FrameElement, HierarchyElement */\r\n\r\nfunction HCameraElement(data, globalData, comp) {\r\n this.initFrame();\r\n this.initBaseData(data, globalData, comp);\r\n this.initHierarchy();\r\n var getProp = PropertyFactory.getProp;\r\n this.pe = getProp(this, data.pe, 0, 0, this);\r\n if (data.ks.p.s) {\r\n this.px = getProp(this, data.ks.p.x, 1, 0, this);\r\n this.py = getProp(this, data.ks.p.y, 1, 0, this);\r\n this.pz = getProp(this, data.ks.p.z, 1, 0, this);\r\n } else {\r\n this.p = getProp(this, data.ks.p, 1, 0, this);\r\n }\r\n if (data.ks.a) {\r\n this.a = getProp(this, data.ks.a, 1, 0, this);\r\n }\r\n if (data.ks.or.k.length && data.ks.or.k[0].to) {\r\n var i;\r\n var len = data.ks.or.k.length;\r\n for (i = 0; i < len; i += 1) {\r\n data.ks.or.k[i].to = null;\r\n data.ks.or.k[i].ti = null;\r\n }\r\n }\r\n this.or = getProp(this, data.ks.or, 1, degToRads, this);\r\n this.or.sh = true;\r\n this.rx = getProp(this, data.ks.rx, 0, degToRads, this);\r\n this.ry = getProp(this, data.ks.ry, 0, degToRads, this);\r\n this.rz = getProp(this, data.ks.rz, 0, degToRads, this);\r\n this.mat = new Matrix();\r\n this._prevMat = new Matrix();\r\n this._isFirstFrame = true;\r\n\r\n // TODO: find a better way to make the HCamera element to be compatible with the LayerInterface and TransformInterface.\r\n this.finalTransform = {\r\n mProp: this,\r\n };\r\n}\r\nextendPrototype([BaseElement, FrameElement, HierarchyElement], HCameraElement);\r\n\r\nHCameraElement.prototype.setup = function () {\r\n var i;\r\n var len = this.comp.threeDElements.length;\r\n var comp;\r\n var perspectiveStyle;\r\n var containerStyle;\r\n for (i = 0; i < len; i += 1) {\r\n // [perspectiveElem,container]\r\n comp = this.comp.threeDElements[i];\r\n if (comp.type === '3d') {\r\n perspectiveStyle = comp.perspectiveElem.style;\r\n containerStyle = comp.container.style;\r\n var perspective = this.pe.v + 'px';\r\n var origin = '0px 0px 0px';\r\n var matrix = 'matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)';\r\n perspectiveStyle.perspective = perspective;\r\n perspectiveStyle.webkitPerspective = perspective;\r\n containerStyle.transformOrigin = origin;\r\n containerStyle.mozTransformOrigin = origin;\r\n containerStyle.webkitTransformOrigin = origin;\r\n perspectiveStyle.transform = matrix;\r\n perspectiveStyle.webkitTransform = matrix;\r\n }\r\n }\r\n};\r\n\r\nHCameraElement.prototype.createElements = function () {\r\n};\r\n\r\nHCameraElement.prototype.hide = function () {\r\n};\r\n\r\nHCameraElement.prototype.renderFrame = function () {\r\n var _mdf = this._isFirstFrame;\r\n var i;\r\n var len;\r\n if (this.hierarchy) {\r\n len = this.hierarchy.length;\r\n for (i = 0; i < len; i += 1) {\r\n _mdf = this.hierarchy[i].finalTransform.mProp._mdf || _mdf;\r\n }\r\n }\r\n if (_mdf || this.pe._mdf || (this.p && this.p._mdf) || (this.px && (this.px._mdf || this.py._mdf || this.pz._mdf)) || this.rx._mdf || this.ry._mdf || this.rz._mdf || this.or._mdf || (this.a && this.a._mdf)) {\r\n this.mat.reset();\r\n\r\n if (this.hierarchy) {\r\n len = this.hierarchy.length - 1;\r\n for (i = len; i >= 0; i -= 1) {\r\n var mTransf = this.hierarchy[i].finalTransform.mProp;\r\n this.mat.translate(-mTransf.p.v[0], -mTransf.p.v[1], mTransf.p.v[2]);\r\n this.mat.rotateX(-mTransf.or.v[0]).rotateY(-mTransf.or.v[1]).rotateZ(mTransf.or.v[2]);\r\n this.mat.rotateX(-mTransf.rx.v).rotateY(-mTransf.ry.v).rotateZ(mTransf.rz.v);\r\n this.mat.scale(1 / mTransf.s.v[0], 1 / mTransf.s.v[1], 1 / mTransf.s.v[2]);\r\n this.mat.translate(mTransf.a.v[0], mTransf.a.v[1], mTransf.a.v[2]);\r\n }\r\n }\r\n if (this.p) {\r\n this.mat.translate(-this.p.v[0], -this.p.v[1], this.p.v[2]);\r\n } else {\r\n this.mat.translate(-this.px.v, -this.py.v, this.pz.v);\r\n }\r\n if (this.a) {\r\n var diffVector;\r\n if (this.p) {\r\n diffVector = [this.p.v[0] - this.a.v[0], this.p.v[1] - this.a.v[1], this.p.v[2] - this.a.v[2]];\r\n } else {\r\n diffVector = [this.px.v - this.a.v[0], this.py.v - this.a.v[1], this.pz.v - this.a.v[2]];\r\n }\r\n var mag = Math.sqrt(Math.pow(diffVector[0], 2) + Math.pow(diffVector[1], 2) + Math.pow(diffVector[2], 2));\r\n // var lookDir = getNormalizedPoint(getDiffVector(this.a.v,this.p.v));\r\n var lookDir = [diffVector[0] / mag, diffVector[1] / mag, diffVector[2] / mag];\r\n var lookLengthOnXZ = Math.sqrt(lookDir[2] * lookDir[2] + lookDir[0] * lookDir[0]);\r\n var mRotationX = (Math.atan2(lookDir[1], lookLengthOnXZ));\r\n var mRotationY = (Math.atan2(lookDir[0], -lookDir[2]));\r\n this.mat.rotateY(mRotationY).rotateX(-mRotationX);\r\n }\r\n this.mat.rotateX(-this.rx.v).rotateY(-this.ry.v).rotateZ(this.rz.v);\r\n this.mat.rotateX(-this.or.v[0]).rotateY(-this.or.v[1]).rotateZ(this.or.v[2]);\r\n this.mat.translate(this.globalData.compSize.w / 2, this.globalData.compSize.h / 2, 0);\r\n this.mat.translate(0, 0, this.pe.v);\r\n\r\n var hasMatrixChanged = !this._prevMat.equals(this.mat);\r\n if ((hasMatrixChanged || this.pe._mdf) && this.comp.threeDElements) {\r\n len = this.comp.threeDElements.length;\r\n var comp;\r\n var perspectiveStyle;\r\n var containerStyle;\r\n for (i = 0; i < len; i += 1) {\r\n comp = this.comp.threeDElements[i];\r\n if (comp.type === '3d') {\r\n if (hasMatrixChanged) {\r\n var matValue = this.mat.toCSS();\r\n containerStyle = comp.container.style;\r\n containerStyle.transform = matValue;\r\n containerStyle.webkitTransform = matValue;\r\n }\r\n if (this.pe._mdf) {\r\n perspectiveStyle = comp.perspectiveElem.style;\r\n perspectiveStyle.perspective = this.pe.v + 'px';\r\n perspectiveStyle.webkitPerspective = this.pe.v + 'px';\r\n }\r\n }\r\n }\r\n this.mat.clone(this._prevMat);\r\n }\r\n }\r\n this._isFirstFrame = false;\r\n};\r\n\r\nHCameraElement.prototype.prepareFrame = function (num) {\r\n this.prepareProperties(num, true);\r\n};\r\n\r\nHCameraElement.prototype.destroy = function () {\r\n};\r\nHCameraElement.prototype.getBaseElement = function () { return null; };\r\n\r\nfunction HEffects() {\r\n}\r\nHEffects.prototype.renderFrame = function () {};\r\n\r\n/* global createTag, AnimationItem */\r\n/* exported animationManager */\r\n\r\nvar animationManager = (function () {\r\n var moduleOb = {};\r\n var registeredAnimations = [];\r\n var initTime = 0;\r\n var len = 0;\r\n var playingAnimationsNum = 0;\r\n var _stopped = true;\r\n var _isFrozen = false;\r\n\r\n function removeElement(ev) {\r\n var i = 0;\r\n var animItem = ev.target;\r\n while (i < len) {\r\n if (registeredAnimations[i].animation === animItem) {\r\n registeredAnimations.splice(i, 1);\r\n i -= 1;\r\n len -= 1;\r\n if (!animItem.isPaused) {\r\n subtractPlayingCount();\r\n }\r\n }\r\n i += 1;\r\n }\r\n }\r\n\r\n function registerAnimation(element, animationData) {\r\n if (!element) {\r\n return null;\r\n }\r\n var i = 0;\r\n while (i < len) {\r\n if (registeredAnimations[i].elem === element && registeredAnimations[i].elem !== null) {\r\n return registeredAnimations[i].animation;\r\n }\r\n i += 1;\r\n }\r\n var animItem = new AnimationItem();\r\n setupAnimation(animItem, element);\r\n animItem.setData(element, animationData);\r\n return animItem;\r\n }\r\n\r\n function getRegisteredAnimations() {\r\n var i;\r\n var lenAnims = registeredAnimations.length;\r\n var animations = [];\r\n for (i = 0; i < lenAnims; i += 1) {\r\n animations.push(registeredAnimations[i].animation);\r\n }\r\n return animations;\r\n }\r\n\r\n function addPlayingCount() {\r\n playingAnimationsNum += 1;\r\n activate();\r\n }\r\n\r\n function subtractPlayingCount() {\r\n playingAnimationsNum -= 1;\r\n }\r\n\r\n function setupAnimation(animItem, element) {\r\n animItem.addEventListener('destroy', removeElement);\r\n animItem.addEventListener('_active', addPlayingCount);\r\n animItem.addEventListener('_idle', subtractPlayingCount);\r\n registeredAnimations.push({ elem: element, animation: animItem });\r\n len += 1;\r\n }\r\n\r\n function loadAnimation(params) {\r\n var animItem = new AnimationItem();\r\n setupAnimation(animItem, null);\r\n animItem.setParams(params);\r\n return animItem;\r\n }\r\n\r\n function setSpeed(val, animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.setSpeed(val, animation);\r\n }\r\n }\r\n\r\n function setDirection(val, animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.setDirection(val, animation);\r\n }\r\n }\r\n\r\n function play(animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.play(animation);\r\n }\r\n }\r\n function resume(nowTime) {\r\n var elapsedTime = nowTime - initTime;\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.advanceTime(elapsedTime);\r\n }\r\n initTime = nowTime;\r\n if (playingAnimationsNum && !_isFrozen) {\r\n window.requestAnimationFrame(resume);\r\n } else {\r\n _stopped = true;\r\n }\r\n }\r\n\r\n function first(nowTime) {\r\n initTime = nowTime;\r\n window.requestAnimationFrame(resume);\r\n }\r\n\r\n function pause(animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.pause(animation);\r\n }\r\n }\r\n\r\n function goToAndStop(value, isFrame, animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.goToAndStop(value, isFrame, animation);\r\n }\r\n }\r\n\r\n function stop(animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.stop(animation);\r\n }\r\n }\r\n\r\n function togglePause(animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.togglePause(animation);\r\n }\r\n }\r\n\r\n function destroy(animation) {\r\n var i;\r\n for (i = (len - 1); i >= 0; i -= 1) {\r\n registeredAnimations[i].animation.destroy(animation);\r\n }\r\n }\r\n\r\n function searchAnimations(animationData, standalone, renderer) {\r\n var animElements = [].concat([].slice.call(document.getElementsByClassName('lottie')),\r\n [].slice.call(document.getElementsByClassName('bodymovin')));\r\n var i;\r\n var lenAnims = animElements.length;\r\n for (i = 0; i < lenAnims; i += 1) {\r\n if (renderer) {\r\n animElements[i].setAttribute('data-bm-type', renderer);\r\n }\r\n registerAnimation(animElements[i], animationData);\r\n }\r\n if (standalone && lenAnims === 0) {\r\n if (!renderer) {\r\n renderer = 'svg';\r\n }\r\n var body = document.getElementsByTagName('body')[0];\r\n body.innerText = '';\r\n var div = createTag('div');\r\n div.style.width = '100%';\r\n div.style.height = '100%';\r\n div.setAttribute('data-bm-type', renderer);\r\n body.appendChild(div);\r\n registerAnimation(div, animationData);\r\n }\r\n }\r\n\r\n function resize() {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.resize();\r\n }\r\n }\r\n\r\n function activate() {\r\n if (!_isFrozen && playingAnimationsNum) {\r\n if (_stopped) {\r\n window.requestAnimationFrame(first);\r\n _stopped = false;\r\n }\r\n }\r\n }\r\n\r\n function freeze() {\r\n _isFrozen = true;\r\n }\r\n\r\n function unfreeze() {\r\n _isFrozen = false;\r\n activate();\r\n }\r\n\r\n function setVolume(val, animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.setVolume(val, animation);\r\n }\r\n }\r\n\r\n function mute(animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.mute(animation);\r\n }\r\n }\r\n\r\n function unmute(animation) {\r\n var i;\r\n for (i = 0; i < len; i += 1) {\r\n registeredAnimations[i].animation.unmute(animation);\r\n }\r\n }\r\n\r\n moduleOb.registerAnimation = registerAnimation;\r\n moduleOb.loadAnimation = loadAnimation;\r\n moduleOb.setSpeed = setSpeed;\r\n moduleOb.setDirection = setDirection;\r\n moduleOb.play = play;\r\n moduleOb.pause = pause;\r\n moduleOb.stop = stop;\r\n moduleOb.togglePause = togglePause;\r\n moduleOb.searchAnimations = searchAnimations;\r\n moduleOb.resize = resize;\r\n // moduleOb.start = start;\r\n moduleOb.goToAndStop = goToAndStop;\r\n moduleOb.destroy = destroy;\r\n moduleOb.freeze = freeze;\r\n moduleOb.unfreeze = unfreeze;\r\n moduleOb.setVolume = setVolume;\r\n moduleOb.mute = mute;\r\n moduleOb.unmute = unmute;\r\n moduleOb.getRegisteredAnimations = getRegisteredAnimations;\r\n return moduleOb;\r\n}());\r\n\r\n/* global createElementID, subframeEnabled, ProjectInterface, ImagePreloader, audioControllerFactory, extendPrototype, BaseEvent,\r\nCanvasRenderer, SVGRenderer, HybridRenderer, assetLoader, dataManager, expressionsPlugin, BMEnterFrameEvent, BMCompleteLoopEvent,\r\nBMCompleteEvent, BMSegmentStartEvent, BMDestroyEvent, BMEnterFrameEvent, BMCompleteLoopEvent, BMCompleteEvent, BMSegmentStartEvent,\r\nBMDestroyEvent, BMRenderFrameErrorEvent, BMConfigErrorEvent, markerParser */\r\n\r\nvar AnimationItem = function () {\r\n this._cbs = [];\r\n this.name = '';\r\n this.path = '';\r\n this.isLoaded = false;\r\n this.currentFrame = 0;\r\n this.currentRawFrame = 0;\r\n this.firstFrame = 0;\r\n this.totalFrames = 0;\r\n this.frameRate = 0;\r\n this.frameMult = 0;\r\n this.playSpeed = 1;\r\n this.playDirection = 1;\r\n this.playCount = 0;\r\n this.animationData = {};\r\n this.assets = [];\r\n this.isPaused = true;\r\n this.autoplay = false;\r\n this.loop = true;\r\n this.renderer = null;\r\n this.animationID = createElementID();\r\n this.assetsPath = '';\r\n this.timeCompleted = 0;\r\n this.segmentPos = 0;\r\n this.isSubframeEnabled = subframeEnabled;\r\n this.segments = [];\r\n this._idle = true;\r\n this._completedLoop = false;\r\n this.projectInterface = ProjectInterface();\r\n this.imagePreloader = new ImagePreloader();\r\n this.audioController = audioControllerFactory();\r\n this.markers = [];\r\n};\r\n\r\nextendPrototype([BaseEvent], AnimationItem);\r\n\r\nAnimationItem.prototype.setParams = function (params) {\r\n if (params.wrapper || params.container) {\r\n this.wrapper = params.wrapper || params.container;\r\n }\r\n var animType = 'svg';\r\n if (params.animType) {\r\n animType = params.animType;\r\n } else if (params.renderer) {\r\n animType = params.renderer;\r\n }\r\n switch (animType) {\r\n case 'canvas':\r\n this.renderer = new CanvasRenderer(this, params.rendererSettings);\r\n break;\r\n case 'svg':\r\n this.renderer = new SVGRenderer(this, params.rendererSettings);\r\n break;\r\n default:\r\n this.renderer = new HybridRenderer(this, params.rendererSettings);\r\n break;\r\n }\r\n this.imagePreloader.setCacheType(animType, this.renderer.globalData.defs);\r\n this.renderer.setProjectInterface(this.projectInterface);\r\n this.animType = animType;\r\n if (params.loop === ''\r\n || params.loop === null\r\n || params.loop === undefined\r\n || params.loop === true) {\r\n this.loop = true;\r\n } else if (params.loop === false) {\r\n this.loop = false;\r\n } else {\r\n this.loop = parseInt(params.loop, 10);\r\n }\r\n this.autoplay = 'autoplay' in params ? params.autoplay : true;\r\n this.name = params.name ? params.name : '';\r\n this.autoloadSegments = Object.prototype.hasOwnProperty.call(params, 'autoloadSegments') ? params.autoloadSegments : true;\r\n this.assetsPath = params.assetsPath;\r\n this.initialSegment = params.initialSegment;\r\n if (params.audioFactory) {\r\n this.audioController.setAudioFactory(params.audioFactory);\r\n }\r\n if (params.animationData) {\r\n this.configAnimation(params.animationData);\r\n } else if (params.path) {\r\n if (params.path.lastIndexOf('\\\\') !== -1) {\r\n this.path = params.path.substr(0, params.path.lastIndexOf('\\\\') + 1);\r\n } else {\r\n this.path = params.path.substr(0, params.path.lastIndexOf('/') + 1);\r\n }\r\n this.fileName = params.path.substr(params.path.lastIndexOf('/') + 1);\r\n this.fileName = this.fileName.substr(0, this.fileName.lastIndexOf('.json'));\r\n\r\n assetLoader.load(params.path, this.configAnimation.bind(this), function () {\r\n this.trigger('data_failed');\r\n }.bind(this));\r\n }\r\n};\r\n\r\nAnimationItem.prototype.setData = function (wrapper, animationData) {\r\n if (animationData) {\r\n if (typeof animationData !== 'object') {\r\n animationData = JSON.parse(animationData);\r\n }\r\n }\r\n var params = {\r\n wrapper: wrapper,\r\n animationData: animationData,\r\n };\r\n var wrapperAttributes = wrapper.attributes;\r\n\r\n params.path = wrapperAttributes.getNamedItem('data-animation-path') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-animation-path').value\r\n : wrapperAttributes.getNamedItem('data-bm-path') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-bm-path').value\r\n : wrapperAttributes.getNamedItem('bm-path')\r\n ? wrapperAttributes.getNamedItem('bm-path').value\r\n : '';\r\n params.animType = wrapperAttributes.getNamedItem('data-anim-type') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-anim-type').value\r\n : wrapperAttributes.getNamedItem('data-bm-type') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-bm-type').value\r\n : wrapperAttributes.getNamedItem('bm-type') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('bm-type').value\r\n : wrapperAttributes.getNamedItem('data-bm-renderer') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-bm-renderer').value\r\n : wrapperAttributes.getNamedItem('bm-renderer')\r\n ? wrapperAttributes.getNamedItem('bm-renderer').value\r\n : 'canvas';\r\n\r\n var loop = wrapperAttributes.getNamedItem('data-anim-loop') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-anim-loop').value\r\n : wrapperAttributes.getNamedItem('data-bm-loop') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-bm-loop').value\r\n : wrapperAttributes.getNamedItem('bm-loop')\r\n ? wrapperAttributes.getNamedItem('bm-loop').value\r\n : '';\r\n if (loop === 'false') {\r\n params.loop = false;\r\n } else if (loop === 'true') {\r\n params.loop = true;\r\n } else if (loop !== '') {\r\n params.loop = parseInt(loop, 10);\r\n }\r\n var autoplay = wrapperAttributes.getNamedItem('data-anim-autoplay') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-anim-autoplay').value\r\n : wrapperAttributes.getNamedItem('data-bm-autoplay') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-bm-autoplay').value\r\n : wrapperAttributes.getNamedItem('bm-autoplay')\r\n ? wrapperAttributes.getNamedItem('bm-autoplay').value\r\n : true;\r\n params.autoplay = autoplay !== 'false';\r\n\r\n params.name = wrapperAttributes.getNamedItem('data-name') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-name').value\r\n : wrapperAttributes.getNamedItem('data-bm-name') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-bm-name').value\r\n : wrapperAttributes.getNamedItem('bm-name')\r\n ? wrapperAttributes.getNamedItem('bm-name').value\r\n : '';\r\n var prerender = wrapperAttributes.getNamedItem('data-anim-prerender') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-anim-prerender').value\r\n : wrapperAttributes.getNamedItem('data-bm-prerender') // eslint-disable-line no-nested-ternary\r\n ? wrapperAttributes.getNamedItem('data-bm-prerender').value\r\n : wrapperAttributes.getNamedItem('bm-prerender')\r\n ? wrapperAttributes.getNamedItem('bm-prerender').value\r\n : '';\r\n\r\n if (prerender === 'false') {\r\n params.prerender = false;\r\n }\r\n this.setParams(params);\r\n};\r\n\r\nAnimationItem.prototype.includeLayers = function (data) {\r\n if (data.op > this.animationData.op) {\r\n this.animationData.op = data.op;\r\n this.totalFrames = Math.floor(data.op - this.animationData.ip);\r\n }\r\n var layers = this.animationData.layers;\r\n var i;\r\n var len = layers.length;\r\n var newLayers = data.layers;\r\n var j;\r\n var jLen = newLayers.length;\r\n for (j = 0; j < jLen; j += 1) {\r\n i = 0;\r\n while (i < len) {\r\n if (layers[i].id === newLayers[j].id) {\r\n layers[i] = newLayers[j];\r\n break;\r\n }\r\n i += 1;\r\n }\r\n }\r\n if (data.chars || data.fonts) {\r\n this.renderer.globalData.fontManager.addChars(data.chars);\r\n this.renderer.globalData.fontManager.addFonts(data.fonts, this.renderer.globalData.defs);\r\n }\r\n if (data.assets) {\r\n len = data.assets.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.animationData.assets.push(data.assets[i]);\r\n }\r\n }\r\n this.animationData.__complete = false;\r\n dataManager.completeData(this.animationData, this.renderer.globalData.fontManager);\r\n this.renderer.includeLayers(data.layers);\r\n if (expressionsPlugin) {\r\n expressionsPlugin.initExpressions(this);\r\n }\r\n this.loadNextSegment();\r\n};\r\n\r\nAnimationItem.prototype.loadNextSegment = function () {\r\n var segments = this.animationData.segments;\r\n if (!segments || segments.length === 0 || !this.autoloadSegments) {\r\n this.trigger('data_ready');\r\n this.timeCompleted = this.totalFrames;\r\n return;\r\n }\r\n var segment = segments.shift();\r\n this.timeCompleted = segment.time * this.frameRate;\r\n var segmentPath = this.path + this.fileName + '_' + this.segmentPos + '.json';\r\n this.segmentPos += 1;\r\n assetLoader.load(segmentPath, this.includeLayers.bind(this), function () {\r\n this.trigger('data_failed');\r\n }.bind(this));\r\n};\r\n\r\nAnimationItem.prototype.loadSegments = function () {\r\n var segments = this.animationData.segments;\r\n if (!segments) {\r\n this.timeCompleted = this.totalFrames;\r\n }\r\n this.loadNextSegment();\r\n};\r\n\r\nAnimationItem.prototype.imagesLoaded = function () {\r\n this.trigger('loaded_images');\r\n this.checkLoaded();\r\n};\r\n\r\nAnimationItem.prototype.preloadImages = function () {\r\n this.imagePreloader.setAssetsPath(this.assetsPath);\r\n this.imagePreloader.setPath(this.path);\r\n this.imagePreloader.loadAssets(this.animationData.assets, this.imagesLoaded.bind(this));\r\n};\r\n\r\nAnimationItem.prototype.configAnimation = function (animData) {\r\n if (!this.renderer) {\r\n return;\r\n }\r\n try {\r\n this.animationData = animData;\r\n\r\n if (this.initialSegment) {\r\n this.totalFrames = Math.floor(this.initialSegment[1] - this.initialSegment[0]);\r\n this.firstFrame = Math.round(this.initialSegment[0]);\r\n } else {\r\n this.totalFrames = Math.floor(this.animationData.op - this.animationData.ip);\r\n this.firstFrame = Math.round(this.animationData.ip);\r\n }\r\n this.renderer.configAnimation(animData);\r\n if (!animData.assets) {\r\n animData.assets = [];\r\n }\r\n\r\n this.assets = this.animationData.assets;\r\n this.frameRate = this.animationData.fr;\r\n this.frameMult = this.animationData.fr / 1000;\r\n this.renderer.searchExtraCompositions(animData.assets);\r\n this.markers = markerParser(animData.markers || []);\r\n this.trigger('config_ready');\r\n this.preloadImages();\r\n this.loadSegments();\r\n this.updaFrameModifier();\r\n this.waitForFontsLoaded();\r\n if (this.isPaused) {\r\n this.audioController.pause();\r\n }\r\n } catch (error) {\r\n this.triggerConfigError(error);\r\n }\r\n};\r\n\r\nAnimationItem.prototype.waitForFontsLoaded = function () {\r\n if (!this.renderer) {\r\n return;\r\n }\r\n if (this.renderer.globalData.fontManager.isLoaded) {\r\n this.checkLoaded();\r\n } else {\r\n setTimeout(this.waitForFontsLoaded.bind(this), 20);\r\n }\r\n};\r\n\r\nAnimationItem.prototype.checkLoaded = function () {\r\n if (!this.isLoaded\r\n && this.renderer.globalData.fontManager.isLoaded\r\n && (this.imagePreloader.loadedImages() || this.renderer.rendererType !== 'canvas')\r\n && (this.imagePreloader.loadedFootages())\r\n ) {\r\n this.isLoaded = true;\r\n dataManager.completeData(this.animationData, this.renderer.globalData.fontManager);\r\n if (expressionsPlugin) {\r\n expressionsPlugin.initExpressions(this);\r\n }\r\n this.renderer.initItems();\r\n setTimeout(function () {\r\n this.trigger('DOMLoaded');\r\n }.bind(this), 0);\r\n this.gotoFrame();\r\n if (this.autoplay) {\r\n this.play();\r\n }\r\n }\r\n};\r\n\r\nAnimationItem.prototype.resize = function () {\r\n this.renderer.updateContainerSize();\r\n};\r\n\r\nAnimationItem.prototype.setSubframe = function (flag) {\r\n this.isSubframeEnabled = !!flag;\r\n};\r\n\r\nAnimationItem.prototype.gotoFrame = function () {\r\n this.currentFrame = this.isSubframeEnabled ? this.currentRawFrame : ~~this.currentRawFrame; // eslint-disable-line no-bitwise\r\n\r\n if (this.timeCompleted !== this.totalFrames && this.currentFrame > this.timeCompleted) {\r\n this.currentFrame = this.timeCompleted;\r\n }\r\n this.trigger('enterFrame');\r\n this.renderFrame();\r\n};\r\n\r\nAnimationItem.prototype.renderFrame = function () {\r\n if (this.isLoaded === false || !this.renderer) {\r\n return;\r\n }\r\n try {\r\n this.renderer.renderFrame(this.currentFrame + this.firstFrame);\r\n } catch (error) {\r\n this.triggerRenderFrameError(error);\r\n }\r\n};\r\n\r\nAnimationItem.prototype.play = function (name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n if (this.isPaused === true) {\r\n this.isPaused = false;\r\n this.audioController.resume();\r\n if (this._idle) {\r\n this._idle = false;\r\n this.trigger('_active');\r\n }\r\n }\r\n};\r\n\r\nAnimationItem.prototype.pause = function (name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n if (this.isPaused === false) {\r\n this.isPaused = true;\r\n this._idle = true;\r\n this.trigger('_idle');\r\n this.audioController.pause();\r\n }\r\n};\r\n\r\nAnimationItem.prototype.togglePause = function (name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n if (this.isPaused === true) {\r\n this.play();\r\n } else {\r\n this.pause();\r\n }\r\n};\r\n\r\nAnimationItem.prototype.stop = function (name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n this.pause();\r\n this.playCount = 0;\r\n this._completedLoop = false;\r\n this.setCurrentRawFrameValue(0);\r\n};\r\n\r\nAnimationItem.prototype.getMarkerData = function (markerName) {\r\n var marker;\r\n for (var i = 0; i < this.markers.length; i += 1) {\r\n marker = this.markers[i];\r\n if (marker.payload && marker.payload.name === markerName) {\r\n return marker;\r\n }\r\n }\r\n return null;\r\n};\r\n\r\nAnimationItem.prototype.goToAndStop = function (value, isFrame, name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n var numValue = Number(value);\r\n if (isNaN(numValue)) {\r\n var marker = this.getMarkerData(value);\r\n if (marker) {\r\n this.goToAndStop(marker.time, true);\r\n }\r\n } else if (isFrame) {\r\n this.setCurrentRawFrameValue(value);\r\n } else {\r\n this.setCurrentRawFrameValue(value * this.frameModifier);\r\n }\r\n this.pause();\r\n};\r\n\r\nAnimationItem.prototype.goToAndPlay = function (value, isFrame, name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n var numValue = Number(value);\r\n if (isNaN(numValue)) {\r\n var marker = this.getMarkerData(value);\r\n if (marker) {\r\n if (!marker.duration) {\r\n this.goToAndStop(marker.time, true);\r\n } else {\r\n this.playSegments([marker.time, marker.time + marker.duration], true);\r\n }\r\n }\r\n } else {\r\n this.goToAndStop(numValue, isFrame, name);\r\n }\r\n this.play();\r\n};\r\n\r\nAnimationItem.prototype.advanceTime = function (value) {\r\n if (this.isPaused === true || this.isLoaded === false) {\r\n return;\r\n }\r\n var nextValue = this.currentRawFrame + value * this.frameModifier;\r\n var _isComplete = false;\r\n // Checking if nextValue > totalFrames - 1 for addressing non looping and looping animations.\r\n // If animation won't loop, it should stop at totalFrames - 1. If it will loop it should complete the last frame and then loop.\r\n if (nextValue >= this.totalFrames - 1 && this.frameModifier > 0) {\r\n if (!this.loop || this.playCount === this.loop) {\r\n if (!this.checkSegments(nextValue > this.totalFrames ? nextValue % this.totalFrames : 0)) {\r\n _isComplete = true;\r\n nextValue = this.totalFrames - 1;\r\n }\r\n } else if (nextValue >= this.totalFrames) {\r\n this.playCount += 1;\r\n if (!this.checkSegments(nextValue % this.totalFrames)) {\r\n this.setCurrentRawFrameValue(nextValue % this.totalFrames);\r\n this._completedLoop = true;\r\n this.trigger('loopComplete');\r\n }\r\n } else {\r\n this.setCurrentRawFrameValue(nextValue);\r\n }\r\n } else if (nextValue < 0) {\r\n if (!this.checkSegments(nextValue % this.totalFrames)) {\r\n if (this.loop && !(this.playCount-- <= 0 && this.loop !== true)) { // eslint-disable-line no-plusplus\r\n this.setCurrentRawFrameValue(this.totalFrames + (nextValue % this.totalFrames));\r\n if (!this._completedLoop) {\r\n this._completedLoop = true;\r\n } else {\r\n this.trigger('loopComplete');\r\n }\r\n } else {\r\n _isComplete = true;\r\n nextValue = 0;\r\n }\r\n }\r\n } else {\r\n this.setCurrentRawFrameValue(nextValue);\r\n }\r\n if (_isComplete) {\r\n this.setCurrentRawFrameValue(nextValue);\r\n this.pause();\r\n this.trigger('complete');\r\n }\r\n};\r\n\r\nAnimationItem.prototype.adjustSegment = function (arr, offset) {\r\n this.playCount = 0;\r\n if (arr[1] < arr[0]) {\r\n if (this.frameModifier > 0) {\r\n if (this.playSpeed < 0) {\r\n this.setSpeed(-this.playSpeed);\r\n } else {\r\n this.setDirection(-1);\r\n }\r\n }\r\n this.totalFrames = arr[0] - arr[1];\r\n this.timeCompleted = this.totalFrames;\r\n this.firstFrame = arr[1];\r\n this.setCurrentRawFrameValue(this.totalFrames - 0.001 - offset);\r\n } else if (arr[1] > arr[0]) {\r\n if (this.frameModifier < 0) {\r\n if (this.playSpeed < 0) {\r\n this.setSpeed(-this.playSpeed);\r\n } else {\r\n this.setDirection(1);\r\n }\r\n }\r\n this.totalFrames = arr[1] - arr[0];\r\n this.timeCompleted = this.totalFrames;\r\n this.firstFrame = arr[0];\r\n this.setCurrentRawFrameValue(0.001 + offset);\r\n }\r\n this.trigger('segmentStart');\r\n};\r\nAnimationItem.prototype.setSegment = function (init, end) {\r\n var pendingFrame = -1;\r\n if (this.isPaused) {\r\n if (this.currentRawFrame + this.firstFrame < init) {\r\n pendingFrame = init;\r\n } else if (this.currentRawFrame + this.firstFrame > end) {\r\n pendingFrame = end - init;\r\n }\r\n }\r\n\r\n this.firstFrame = init;\r\n this.totalFrames = end - init;\r\n this.timeCompleted = this.totalFrames;\r\n if (pendingFrame !== -1) {\r\n this.goToAndStop(pendingFrame, true);\r\n }\r\n};\r\n\r\nAnimationItem.prototype.playSegments = function (arr, forceFlag) {\r\n if (forceFlag) {\r\n this.segments.length = 0;\r\n }\r\n if (typeof arr[0] === 'object') {\r\n var i;\r\n var len = arr.length;\r\n for (i = 0; i < len; i += 1) {\r\n this.segments.push(arr[i]);\r\n }\r\n } else {\r\n this.segments.push(arr);\r\n }\r\n if (this.segments.length && forceFlag) {\r\n this.adjustSegment(this.segments.shift(), 0);\r\n }\r\n if (this.isPaused) {\r\n this.play();\r\n }\r\n};\r\n\r\nAnimationItem.prototype.resetSegments = function (forceFlag) {\r\n this.segments.length = 0;\r\n this.segments.push([this.animationData.ip, this.animationData.op]);\r\n // this.segments.push([this.animationData.ip*this.frameRate,Math.floor(this.animationData.op - this.animationData.ip+this.animationData.ip*this.frameRate)]);\r\n if (forceFlag) {\r\n this.checkSegments(0);\r\n }\r\n};\r\nAnimationItem.prototype.checkSegments = function (offset) {\r\n if (this.segments.length) {\r\n this.adjustSegment(this.segments.shift(), offset);\r\n return true;\r\n }\r\n return false;\r\n};\r\n\r\nAnimationItem.prototype.destroy = function (name) {\r\n if ((name && this.name !== name) || !this.renderer) {\r\n return;\r\n }\r\n this.renderer.destroy();\r\n this.imagePreloader.destroy();\r\n this.trigger('destroy');\r\n this._cbs = null;\r\n this.onEnterFrame = null;\r\n this.onLoopComplete = null;\r\n this.onComplete = null;\r\n this.onSegmentStart = null;\r\n this.onDestroy = null;\r\n this.renderer = null;\r\n this.renderer = null;\r\n this.imagePreloader = null;\r\n this.projectInterface = null;\r\n};\r\n\r\nAnimationItem.prototype.setCurrentRawFrameValue = function (value) {\r\n this.currentRawFrame = value;\r\n this.gotoFrame();\r\n};\r\n\r\nAnimationItem.prototype.setSpeed = function (val) {\r\n this.playSpeed = val;\r\n this.updaFrameModifier();\r\n};\r\n\r\nAnimationItem.prototype.setDirection = function (val) {\r\n this.playDirection = val < 0 ? -1 : 1;\r\n this.updaFrameModifier();\r\n};\r\n\r\nAnimationItem.prototype.setVolume = function (val, name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n this.audioController.setVolume(val);\r\n};\r\n\r\nAnimationItem.prototype.getVolume = function () {\r\n return this.audioController.getVolume();\r\n};\r\n\r\nAnimationItem.prototype.mute = function (name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n this.audioController.mute();\r\n};\r\n\r\nAnimationItem.prototype.unmute = function (name) {\r\n if (name && this.name !== name) {\r\n return;\r\n }\r\n this.audioController.unmute();\r\n};\r\n\r\nAnimationItem.prototype.updaFrameModifier = function () {\r\n this.frameModifier = this.frameMult * this.playSpeed * this.playDirection;\r\n this.audioController.setRate(this.playSpeed * this.playDirection);\r\n};\r\n\r\nAnimationItem.prototype.getPath = function () {\r\n return this.path;\r\n};\r\n\r\nAnimationItem.prototype.getAssetsPath = function (assetData) {\r\n var path = '';\r\n if (assetData.e) {\r\n path = assetData.p;\r\n } else if (this.assetsPath) {\r\n var imagePath = assetData.p;\r\n if (imagePath.indexOf('images/') !== -1) {\r\n imagePath = imagePath.split('/')[1];\r\n }\r\n path = this.assetsPath + imagePath;\r\n } else {\r\n path = this.path;\r\n path += assetData.u ? assetData.u : '';\r\n path += assetData.p;\r\n }\r\n return path;\r\n};\r\n\r\nAnimationItem.prototype.getAssetData = function (id) {\r\n var i = 0;\r\n var len = this.assets.length;\r\n while (i < len) {\r\n if (id === this.assets[i].id) {\r\n return this.assets[i];\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n};\r\n\r\nAnimationItem.prototype.hide = function () {\r\n this.renderer.hide();\r\n};\r\n\r\nAnimationItem.prototype.show = function () {\r\n this.renderer.show();\r\n};\r\n\r\nAnimationItem.prototype.getDuration = function (isFrame) {\r\n return isFrame ? this.totalFrames : this.totalFrames / this.frameRate;\r\n};\r\n\r\nAnimationItem.prototype.trigger = function (name) {\r\n if (this._cbs && this._cbs[name]) {\r\n switch (name) {\r\n case 'enterFrame':\r\n this.triggerEvent(name, new BMEnterFrameEvent(name, this.currentFrame, this.totalFrames, this.frameModifier));\r\n break;\r\n case 'loopComplete':\r\n this.triggerEvent(name, new BMCompleteLoopEvent(name, this.loop, this.playCount, this.frameMult));\r\n break;\r\n case 'complete':\r\n this.triggerEvent(name, new BMCompleteEvent(name, this.frameMult));\r\n break;\r\n case 'segmentStart':\r\n this.triggerEvent(name, new BMSegmentStartEvent(name, this.firstFrame, this.totalFrames));\r\n break;\r\n case 'destroy':\r\n this.triggerEvent(name, new BMDestroyEvent(name, this));\r\n break;\r\n default:\r\n this.triggerEvent(name);\r\n }\r\n }\r\n if (name === 'enterFrame' && this.onEnterFrame) {\r\n this.onEnterFrame.call(this, new BMEnterFrameEvent(name, this.currentFrame, this.totalFrames, this.frameMult));\r\n }\r\n if (name === 'loopComplete' && this.onLoopComplete) {\r\n this.onLoopComplete.call(this, new BMCompleteLoopEvent(name, this.loop, this.playCount, this.frameMult));\r\n }\r\n if (name === 'complete' && this.onComplete) {\r\n this.onComplete.call(this, new BMCompleteEvent(name, this.frameMult));\r\n }\r\n if (name === 'segmentStart' && this.onSegmentStart) {\r\n this.onSegmentStart.call(this, new BMSegmentStartEvent(name, this.firstFrame, this.totalFrames));\r\n }\r\n if (name === 'destroy' && this.onDestroy) {\r\n this.onDestroy.call(this, new BMDestroyEvent(name, this));\r\n }\r\n};\r\n\r\nAnimationItem.prototype.triggerRenderFrameError = function (nativeError) {\r\n var error = new BMRenderFrameErrorEvent(nativeError, this.currentFrame);\r\n this.triggerEvent('error', error);\r\n\r\n if (this.onError) {\r\n this.onError.call(this, error);\r\n }\r\n};\r\n\r\nAnimationItem.prototype.triggerConfigError = function (nativeError) {\r\n var error = new BMConfigErrorEvent(nativeError, this.currentFrame);\r\n this.triggerEvent('error', error);\r\n\r\n if (this.onError) {\r\n this.onError.call(this, error);\r\n }\r\n};\r\n\r\n/* global CompExpressionInterface, expressionsPlugin: writable */\r\n/* exported expressionsPlugin */\r\n\r\nvar Expressions = (function () {\r\n var ob = {};\r\n ob.initExpressions = initExpressions;\r\n\r\n function initExpressions(animation) {\r\n var stackCount = 0;\r\n var registers = [];\r\n\r\n function pushExpression() {\r\n stackCount += 1;\r\n }\r\n\r\n function popExpression() {\r\n stackCount -= 1;\r\n if (stackCount === 0) {\r\n releaseInstances();\r\n }\r\n }\r\n\r\n function registerExpressionProperty(expression) {\r\n if (registers.indexOf(expression) === -1) {\r\n registers.push(expression);\r\n }\r\n }\r\n\r\n function releaseInstances() {\r\n var i;\r\n var len = registers.length;\r\n for (i = 0; i < len; i += 1) {\r\n registers[i].release();\r\n }\r\n registers.length = 0;\r\n }\r\n\r\n animation.renderer.compInterface = CompExpressionInterface(animation.renderer);\r\n animation.renderer.globalData.projectInterface.registerComposition(animation.renderer);\r\n animation.renderer.globalData.pushExpression = pushExpression;\r\n animation.renderer.globalData.popExpression = popExpression;\r\n animation.renderer.globalData.registerExpressionProperty = registerExpressionProperty;\r\n }\r\n return ob;\r\n}());\r\n\r\nexpressionsPlugin = Expressions;\r\n\r\n/* eslint-disable camelcase, no-unused-vars */\r\n/* global BMMath, BezierFactory, createTypedArray, degToRads, shapePool */\r\n\r\nvar ExpressionManager = (function () {\r\n 'use strict';\r\n\r\n var ob = {};\r\n var Math = BMMath;\r\n var window = null;\r\n var document = null;\r\n\r\n function $bm_isInstanceOfArray(arr) {\r\n return arr.constructor === Array || arr.constructor === Float32Array;\r\n }\r\n\r\n function isNumerable(tOfV, v) {\r\n return tOfV === 'number' || tOfV === 'boolean' || tOfV === 'string' || v instanceof Number;\r\n }\r\n\r\n function $bm_neg(a) {\r\n var tOfA = typeof a;\r\n if (tOfA === 'number' || tOfA === 'boolean' || a instanceof Number) {\r\n return -a;\r\n }\r\n if ($bm_isInstanceOfArray(a)) {\r\n var i;\r\n var lenA = a.length;\r\n var retArr = [];\r\n for (i = 0; i < lenA; i += 1) {\r\n retArr[i] = -a[i];\r\n }\r\n return retArr;\r\n }\r\n if (a.propType) {\r\n return a.v;\r\n }\r\n return -a;\r\n }\r\n\r\n var easeInBez = BezierFactory.getBezierEasing(0.333, 0, 0.833, 0.833, 'easeIn').get;\r\n var easeOutBez = BezierFactory.getBezierEasing(0.167, 0.167, 0.667, 1, 'easeOut').get;\r\n var easeInOutBez = BezierFactory.getBezierEasing(0.33, 0, 0.667, 1, 'easeInOut').get;\r\n\r\n function sum(a, b) {\r\n var tOfA = typeof a;\r\n var tOfB = typeof b;\r\n if (tOfA === 'string' || tOfB === 'string') {\r\n return a + b;\r\n }\r\n if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\r\n return a + b;\r\n }\r\n if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\r\n a = a.slice(0);\r\n a[0] += b;\r\n return a;\r\n }\r\n if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\r\n b = b.slice(0);\r\n b[0] = a + b[0];\r\n return b;\r\n }\r\n if ($bm_isInstanceOfArray(a) && $bm_isInstanceOfArray(b)) {\r\n var i = 0;\r\n var lenA = a.length;\r\n var lenB = b.length;\r\n var retArr = [];\r\n while (i < lenA || i < lenB) {\r\n if ((typeof a[i] === 'number' || a[i] instanceof Number) && (typeof b[i] === 'number' || b[i] instanceof Number)) {\r\n retArr[i] = a[i] + b[i];\r\n } else {\r\n retArr[i] = b[i] === undefined ? a[i] : a[i] || b[i];\r\n }\r\n i += 1;\r\n }\r\n return retArr;\r\n }\r\n return 0;\r\n }\r\n var add = sum;\r\n\r\n function sub(a, b) {\r\n var tOfA = typeof a;\r\n var tOfB = typeof b;\r\n if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\r\n if (tOfA === 'string') {\r\n a = parseInt(a, 10);\r\n }\r\n if (tOfB === 'string') {\r\n b = parseInt(b, 10);\r\n }\r\n return a - b;\r\n }\r\n if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\r\n a = a.slice(0);\r\n a[0] -= b;\r\n return a;\r\n }\r\n if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\r\n b = b.slice(0);\r\n b[0] = a - b[0];\r\n return b;\r\n }\r\n if ($bm_isInstanceOfArray(a) && $bm_isInstanceOfArray(b)) {\r\n var i = 0;\r\n var lenA = a.length;\r\n var lenB = b.length;\r\n var retArr = [];\r\n while (i < lenA || i < lenB) {\r\n if ((typeof a[i] === 'number' || a[i] instanceof Number) && (typeof b[i] === 'number' || b[i] instanceof Number)) {\r\n retArr[i] = a[i] - b[i];\r\n } else {\r\n retArr[i] = b[i] === undefined ? a[i] : a[i] || b[i];\r\n }\r\n i += 1;\r\n }\r\n return retArr;\r\n }\r\n return 0;\r\n }\r\n\r\n function mul(a, b) {\r\n var tOfA = typeof a;\r\n var tOfB = typeof b;\r\n var arr;\r\n if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\r\n return a * b;\r\n }\r\n\r\n var i;\r\n var len;\r\n if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\r\n len = a.length;\r\n arr = createTypedArray('float32', len);\r\n for (i = 0; i < len; i += 1) {\r\n arr[i] = a[i] * b;\r\n }\r\n return arr;\r\n }\r\n if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\r\n len = b.length;\r\n arr = createTypedArray('float32', len);\r\n for (i = 0; i < len; i += 1) {\r\n arr[i] = a * b[i];\r\n }\r\n return arr;\r\n }\r\n return 0;\r\n }\r\n\r\n function div(a, b) {\r\n var tOfA = typeof a;\r\n var tOfB = typeof b;\r\n var arr;\r\n if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\r\n return a / b;\r\n }\r\n var i;\r\n var len;\r\n if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\r\n len = a.length;\r\n arr = createTypedArray('float32', len);\r\n for (i = 0; i < len; i += 1) {\r\n arr[i] = a[i] / b;\r\n }\r\n return arr;\r\n }\r\n if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\r\n len = b.length;\r\n arr = createTypedArray('float32', len);\r\n for (i = 0; i < len; i += 1) {\r\n arr[i] = a / b[i];\r\n }\r\n return arr;\r\n }\r\n return 0;\r\n }\r\n function mod(a, b) {\r\n if (typeof a === 'string') {\r\n a = parseInt(a, 10);\r\n }\r\n if (typeof b === 'string') {\r\n b = parseInt(b, 10);\r\n }\r\n return a % b;\r\n }\r\n var $bm_sum = sum;\r\n var $bm_sub = sub;\r\n var $bm_mul = mul;\r\n var $bm_div = div;\r\n var $bm_mod = mod;\r\n\r\n function clamp(num, min, max) {\r\n if (min > max) {\r\n var mm = max;\r\n max = min;\r\n min = mm;\r\n }\r\n return Math.min(Math.max(num, min), max);\r\n }\r\n\r\n function radiansToDegrees(val) {\r\n return val / degToRads;\r\n }\r\n var radians_to_degrees = radiansToDegrees;\r\n\r\n function degreesToRadians(val) {\r\n return val * degToRads;\r\n }\r\n var degrees_to_radians = radiansToDegrees;\r\n\r\n var helperLengthArray = [0, 0, 0, 0, 0, 0];\r\n\r\n function length(arr1, arr2) {\r\n if (typeof arr1 === 'number' || arr1 instanceof Number) {\r\n arr2 = arr2 || 0;\r\n return Math.abs(arr1 - arr2);\r\n }\r\n if (!arr2) {\r\n arr2 = helperLengthArray;\r\n }\r\n var i;\r\n var len = Math.min(arr1.length, arr2.length);\r\n var addedLength = 0;\r\n for (i = 0; i < len; i += 1) {\r\n addedLength += Math.pow(arr2[i] - arr1[i], 2);\r\n }\r\n return Math.sqrt(addedLength);\r\n }\r\n\r\n function normalize(vec) {\r\n return div(vec, length(vec));\r\n }\r\n\r\n function rgbToHsl(val) {\r\n var r = val[0]; var g = val[1]; var b = val[2];\r\n var max = Math.max(r, g, b);\r\n var min = Math.min(r, g, b);\r\n var h;\r\n var s;\r\n var l = (max + min) / 2;\r\n\r\n if (max === min) {\r\n h = 0; // achromatic\r\n s = 0; // achromatic\r\n } else {\r\n var d = max - min;\r\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\r\n switch (max) {\r\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\r\n case g: h = (b - r) / d + 2; break;\r\n case b: h = (r - g) / d + 4; break;\r\n default: break;\r\n }\r\n h /= 6;\r\n }\r\n\r\n return [h, s, l, val[3]];\r\n }\r\n\r\n function hue2rgb(p, q, t) {\r\n if (t < 0) t += 1;\r\n if (t > 1) t -= 1;\r\n if (t < 1 / 6) return p + (q - p) * 6 * t;\r\n if (t < 1 / 2) return q;\r\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\r\n return p;\r\n }\r\n\r\n function hslToRgb(val) {\r\n var h = val[0];\r\n var s = val[1];\r\n var l = val[2];\r\n\r\n var r;\r\n var g;\r\n var b;\r\n\r\n if (s === 0) {\r\n r = l; // achromatic\r\n b = l; // achromatic\r\n g = l; // achromatic\r\n } else {\r\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n var p = 2 * l - q;\r\n r = hue2rgb(p, q, h + 1 / 3);\r\n g = hue2rgb(p, q, h);\r\n b = hue2rgb(p, q, h - 1 / 3);\r\n }\r\n\r\n return [r, g, b, val[3]];\r\n }\r\n\r\n function linear(t, tMin, tMax, value1, value2) {\r\n if (value1 === undefined || value2 === undefined) {\r\n value1 = tMin;\r\n value2 = tMax;\r\n tMin = 0;\r\n tMax = 1;\r\n }\r\n if (tMax < tMin) {\r\n var _tMin = tMax;\r\n tMax = tMin;\r\n tMin = _tMin;\r\n }\r\n if (t <= tMin) {\r\n return value1;\r\n } if (t >= tMax) {\r\n return value2;\r\n }\r\n var perc = tMax === tMin ? 0 : (t - tMin) / (tMax - tMin);\r\n if (!value1.length) {\r\n return value1 + (value2 - value1) * perc;\r\n }\r\n var i;\r\n var len = value1.length;\r\n var arr = createTypedArray('float32', len);\r\n for (i = 0; i < len; i += 1) {\r\n arr[i] = value1[i] + (value2[i] - value1[i]) * perc;\r\n }\r\n return arr;\r\n }\r\n function random(min, max) {\r\n if (max === undefined) {\r\n if (min === undefined) {\r\n min = 0;\r\n max = 1;\r\n } else {\r\n max = min;\r\n min = undefined;\r\n }\r\n }\r\n if (max.length) {\r\n var i;\r\n var len = max.length;\r\n if (!min) {\r\n min = createTypedArray('float32', len);\r\n }\r\n var arr = createTypedArray('float32', len);\r\n var rnd = BMMath.random();\r\n for (i = 0; i < len; i += 1) {\r\n arr[i] = min[i] + rnd * (max[i] - min[i]);\r\n }\r\n return arr;\r\n }\r\n if (min === undefined) {\r\n min = 0;\r\n }\r\n var rndm = BMMath.random();\r\n return min + rndm * (max - min);\r\n }\r\n\r\n function createPath(points, inTangents, outTangents, closed) {\r\n var i;\r\n var len = points.length;\r\n var path = shapePool.newElement();\r\n path.setPathData(!!closed, len);\r\n var arrPlaceholder = [0, 0];\r\n var inVertexPoint;\r\n var outVertexPoint;\r\n for (i = 0; i < len; i += 1) {\r\n inVertexPoint = (inTangents && inTangents[i]) ? inTangents[i] : arrPlaceholder;\r\n outVertexPoint = (outTangents && outTangents[i]) ? outTangents[i] : arrPlaceholder;\r\n path.setTripleAt(points[i][0], points[i][1], outVertexPoint[0] + points[i][0], outVertexPoint[1] + points[i][1], inVertexPoint[0] + points[i][0], inVertexPoint[1] + points[i][1], i, true);\r\n }\r\n return path;\r\n }\r\n\r\n function initiateExpression(elem, data, property) {\r\n var val = data.x;\r\n var needsVelocity = /velocity(?![\\w\\d])/.test(val);\r\n var _needsRandom = val.indexOf('random') !== -1;\r\n var elemType = elem.data.ty;\r\n var transform;\r\n var $bm_transform;\r\n var content;\r\n var effect;\r\n var thisProperty = property;\r\n thisProperty.valueAtTime = thisProperty.getValueAtTime;\r\n Object.defineProperty(thisProperty, 'value', {\r\n get: function () {\r\n return thisProperty.v;\r\n },\r\n });\r\n elem.comp.frameDuration = 1 / elem.comp.globalData.frameRate;\r\n elem.comp.displayStartTime = 0;\r\n var inPoint = elem.data.ip / elem.comp.globalData.frameRate;\r\n var outPoint = elem.data.op / elem.comp.globalData.frameRate;\r\n var width = elem.data.sw ? elem.data.sw : 0;\r\n var height = elem.data.sh ? elem.data.sh : 0;\r\n var name = elem.data.nm;\r\n var loopIn;\r\n var loop_in;\r\n var loopOut;\r\n var loop_out;\r\n var smooth;\r\n var toWorld;\r\n var fromWorld;\r\n var fromComp;\r\n var toComp;\r\n var fromCompToSurface;\r\n var position;\r\n var rotation;\r\n var anchorPoint;\r\n var scale;\r\n var thisLayer;\r\n var thisComp;\r\n var mask;\r\n var valueAtTime;\r\n var velocityAtTime;\r\n\r\n var scoped_bm_rt;\r\n var expression_function = eval('[function _expression_function(){' + val + ';scoped_bm_rt=$bm_rt}]')[0]; // eslint-disable-line no-eval\r\n var numKeys = property.kf ? data.k.length : 0;\r\n\r\n var active = !this.data || this.data.hd !== true;\r\n\r\n var wiggle = function wiggle(freq, amp) {\r\n var iWiggle;\r\n var j;\r\n var lenWiggle = this.pv.length ? this.pv.length : 1;\r\n var addedAmps = createTypedArray('float32', lenWiggle);\r\n freq = 5;\r\n var iterations = Math.floor(time * freq);\r\n iWiggle = 0;\r\n j = 0;\r\n while (iWiggle < iterations) {\r\n // var rnd = BMMath.random();\r\n for (j = 0; j < lenWiggle; j += 1) {\r\n addedAmps[j] += -amp + amp * 2 * BMMath.random();\r\n // addedAmps[j] += -amp + amp*2*rnd;\r\n }\r\n iWiggle += 1;\r\n }\r\n // var rnd2 = BMMath.random();\r\n var periods = time * freq;\r\n var perc = periods - Math.floor(periods);\r\n var arr = createTypedArray('float32', lenWiggle);\r\n if (lenWiggle > 1) {\r\n for (j = 0; j < lenWiggle; j += 1) {\r\n arr[j] = this.pv[j] + addedAmps[j] + (-amp + amp * 2 * BMMath.random()) * perc;\r\n // arr[j] = this.pv[j] + addedAmps[j] + (-amp + amp*2*rnd)*perc;\r\n // arr[i] = this.pv[i] + addedAmp + amp1*perc + amp2*(1-perc);\r\n }\r\n return arr;\r\n }\r\n return this.pv + addedAmps[0] + (-amp + amp * 2 * BMMath.random()) * perc;\r\n }.bind(this);\r\n\r\n if (thisProperty.loopIn) {\r\n loopIn = thisProperty.loopIn.bind(thisProperty);\r\n loop_in = loopIn;\r\n }\r\n\r\n if (thisProperty.loopOut) {\r\n loopOut = thisProperty.loopOut.bind(thisProperty);\r\n loop_out = loopOut;\r\n }\r\n\r\n if (thisProperty.smooth) {\r\n smooth = thisProperty.smooth.bind(thisProperty);\r\n }\r\n\r\n function loopInDuration(type, duration) {\r\n return loopIn(type, duration, true);\r\n }\r\n\r\n function loopOutDuration(type, duration) {\r\n return loopOut(type, duration, true);\r\n }\r\n\r\n if (this.getValueAtTime) {\r\n valueAtTime = this.getValueAtTime.bind(this);\r\n }\r\n\r\n if (this.getVelocityAtTime) {\r\n velocityAtTime = this.getVelocityAtTime.bind(this);\r\n }\r\n\r\n var comp = elem.comp.globalData.projectInterface.bind(elem.comp.globalData.projectInterface);\r\n\r\n function lookAt(elem1, elem2) {\r\n var fVec = [elem2[0] - elem1[0], elem2[1] - elem1[1], elem2[2] - elem1[2]];\r\n var pitch = Math.atan2(fVec[0], Math.sqrt(fVec[1] * fVec[1] + fVec[2] * fVec[2])) / degToRads;\r\n var yaw = -Math.atan2(fVec[1], fVec[2]) / degToRads;\r\n return [yaw, pitch, 0];\r\n }\r\n\r\n function easeOut(t, tMin, tMax, val1, val2) {\r\n return applyEase(easeOutBez, t, tMin, tMax, val1, val2);\r\n }\r\n\r\n function easeIn(t, tMin, tMax, val1, val2) {\r\n return applyEase(easeInBez, t, tMin, tMax, val1, val2);\r\n }\r\n\r\n function ease(t, tMin, tMax, val1, val2) {\r\n return applyEase(easeInOutBez, t, tMin, tMax, val1, val2);\r\n }\r\n\r\n function applyEase(fn, t, tMin, tMax, val1, val2) {\r\n if (val1 === undefined) {\r\n val1 = tMin;\r\n val2 = tMax;\r\n } else {\r\n t = (t - tMin) / (tMax - tMin);\r\n }\r\n if (t > 1) {\r\n t = 1;\r\n } else if (t < 0) {\r\n t = 0;\r\n }\r\n var mult = fn(t);\r\n if ($bm_isInstanceOfArray(val1)) {\r\n var iKey;\r\n var lenKey = val1.length;\r\n var arr = createTypedArray('float32', lenKey);\r\n for (iKey = 0; iKey < lenKey; iKey += 1) {\r\n arr[iKey] = (val2[iKey] - val1[iKey]) * mult + val1[iKey];\r\n }\r\n return arr;\r\n }\r\n return (val2 - val1) * mult + val1;\r\n }\r\n\r\n function nearestKey(time) {\r\n var iKey;\r\n var lenKey = data.k.length;\r\n var index;\r\n var keyTime;\r\n if (!data.k.length || typeof (data.k[0]) === 'number') {\r\n index = 0;\r\n keyTime = 0;\r\n } else {\r\n index = -1;\r\n time *= elem.comp.globalData.frameRate;\r\n if (time < data.k[0].t) {\r\n index = 1;\r\n keyTime = data.k[0].t;\r\n } else {\r\n for (iKey = 0; iKey < lenKey - 1; iKey += 1) {\r\n if (time === data.k[iKey].t) {\r\n index = iKey + 1;\r\n keyTime = data.k[iKey].t;\r\n break;\r\n } else if (time > data.k[iKey].t && time < data.k[iKey + 1].t) {\r\n if (time - data.k[iKey].t > data.k[iKey + 1].t - time) {\r\n index = iKey + 2;\r\n keyTime = data.k[iKey + 1].t;\r\n } else {\r\n index = iKey + 1;\r\n keyTime = data.k[iKey].t;\r\n }\r\n break;\r\n }\r\n }\r\n if (index === -1) {\r\n index = iKey + 1;\r\n keyTime = data.k[iKey].t;\r\n }\r\n }\r\n }\r\n var obKey = {};\r\n obKey.index = index;\r\n obKey.time = keyTime / elem.comp.globalData.frameRate;\r\n return obKey;\r\n }\r\n\r\n function key(ind) {\r\n var obKey;\r\n var iKey;\r\n var lenKey;\r\n if (!data.k.length || typeof (data.k[0]) === 'number') {\r\n throw new Error('The property has no keyframe at index ' + ind);\r\n }\r\n ind -= 1;\r\n obKey = {\r\n time: data.k[ind].t / elem.comp.globalData.frameRate,\r\n value: [],\r\n };\r\n var arr = Object.prototype.hasOwnProperty.call(data.k[ind], 's') ? data.k[ind].s : data.k[ind - 1].e;\r\n\r\n lenKey = arr.length;\r\n for (iKey = 0; iKey < lenKey; iKey += 1) {\r\n obKey[iKey] = arr[iKey];\r\n obKey.value[iKey] = arr[iKey];\r\n }\r\n return obKey;\r\n }\r\n\r\n function framesToTime(frames, fps) {\r\n if (!fps) {\r\n fps = elem.comp.globalData.frameRate;\r\n }\r\n return frames / fps;\r\n }\r\n\r\n function timeToFrames(t, fps) {\r\n if (!t && t !== 0) {\r\n t = time;\r\n }\r\n if (!fps) {\r\n fps = elem.comp.globalData.frameRate;\r\n }\r\n return t * fps;\r\n }\r\n\r\n function seedRandom(seed) {\r\n BMMath.seedrandom(randSeed + seed);\r\n }\r\n\r\n function sourceRectAtTime() {\r\n return elem.sourceRectAtTime();\r\n }\r\n\r\n function substring(init, end) {\r\n if (typeof value === 'string') {\r\n if (end === undefined) {\r\n return value.substring(init);\r\n }\r\n return value.substring(init, end);\r\n }\r\n return '';\r\n }\r\n\r\n function substr(init, end) {\r\n if (typeof value === 'string') {\r\n if (end === undefined) {\r\n return value.substr(init);\r\n }\r\n return value.substr(init, end);\r\n }\r\n return '';\r\n }\r\n\r\n function posterizeTime(framesPerSecond) {\r\n time = framesPerSecond === 0 ? 0 : Math.floor(time * framesPerSecond) / framesPerSecond;\r\n value = valueAtTime(time);\r\n }\r\n\r\n var time;\r\n var velocity;\r\n var value;\r\n var text;\r\n var textIndex;\r\n var textTotal;\r\n var selectorValue;\r\n var index = elem.data.ind;\r\n var hasParent = !!(elem.hierarchy && elem.hierarchy.length);\r\n var parent;\r\n var randSeed = Math.floor(Math.random() * 1000000);\r\n var globalData = elem.globalData;\r\n function executeExpression(_value) {\r\n // globalData.pushExpression();\r\n value = _value;\r\n if (_needsRandom) {\r\n seedRandom(randSeed);\r\n }\r\n if (this.frameExpressionId === elem.globalData.frameId && this.propType !== 'textSelector') {\r\n return value;\r\n }\r\n if (this.propType === 'textSelector') {\r\n textIndex = this.textIndex;\r\n textTotal = this.textTotal;\r\n selectorValue = this.selectorValue;\r\n }\r\n if (!thisLayer) {\r\n text = elem.layerInterface.text;\r\n thisLayer = elem.layerInterface;\r\n thisComp = elem.comp.compInterface;\r\n toWorld = thisLayer.toWorld.bind(thisLayer);\r\n fromWorld = thisLayer.fromWorld.bind(thisLayer);\r\n fromComp = thisLayer.fromComp.bind(thisLayer);\r\n toComp = thisLayer.toComp.bind(thisLayer);\r\n mask = thisLayer.mask ? thisLayer.mask.bind(thisLayer) : null;\r\n fromCompToSurface = fromComp;\r\n }\r\n if (!transform) {\r\n transform = elem.layerInterface('ADBE Transform Group');\r\n $bm_transform = transform;\r\n if (transform) {\r\n anchorPoint = transform.anchorPoint;\r\n /* position = transform.position;\r\n rotation = transform.rotation;\r\n scale = transform.scale; */\r\n }\r\n }\r\n\r\n if (elemType === 4 && !content) {\r\n content = thisLayer('ADBE Root Vectors Group');\r\n }\r\n if (!effect) {\r\n effect = thisLayer(4);\r\n }\r\n hasParent = !!(elem.hierarchy && elem.hierarchy.length);\r\n if (hasParent && !parent) {\r\n parent = elem.hierarchy[0].layerInterface;\r\n }\r\n time = this.comp.renderedFrame / this.comp.globalData.frameRate;\r\n if (needsVelocity) {\r\n velocity = velocityAtTime(time);\r\n }\r\n expression_function();\r\n this.frameExpressionId = elem.globalData.frameId;\r\n\r\n // TODO: Check if it's possible to return on ShapeInterface the .v value\r\n if (scoped_bm_rt.propType === 'shape') {\r\n scoped_bm_rt = scoped_bm_rt.v;\r\n }\r\n // globalData.popExpression();\r\n return scoped_bm_rt;\r\n }\r\n return executeExpression;\r\n }\r\n\r\n ob.initiateExpression = initiateExpression;\r\n return ob;\r\n}());\r\n\r\n/* global ExpressionManager, createTypedArray */\r\n/* exported expressionHelpers */\r\n\r\nvar expressionHelpers = (function () {\r\n function searchExpressions(elem, data, prop) {\r\n if (data.x) {\r\n prop.k = true;\r\n prop.x = true;\r\n prop.initiateExpression = ExpressionManager.initiateExpression;\r\n prop.effectsSequence.push(prop.initiateExpression(elem, data, prop).bind(prop));\r\n }\r\n }\r\n\r\n function getValueAtTime(frameNum) {\r\n frameNum *= this.elem.globalData.frameRate;\r\n frameNum -= this.offsetTime;\r\n if (frameNum !== this._cachingAtTime.lastFrame) {\r\n this._cachingAtTime.lastIndex = this._cachingAtTime.lastFrame < frameNum ? this._cachingAtTime.lastIndex : 0;\r\n this._cachingAtTime.value = this.interpolateValue(frameNum, this._cachingAtTime);\r\n this._cachingAtTime.lastFrame = frameNum;\r\n }\r\n return this._cachingAtTime.value;\r\n }\r\n\r\n function getSpeedAtTime(frameNum) {\r\n var delta = -0.01;\r\n var v1 = this.getValueAtTime(frameNum);\r\n var v2 = this.getValueAtTime(frameNum + delta);\r\n var speed = 0;\r\n if (v1.length) {\r\n var i;\r\n for (i = 0; i < v1.length; i += 1) {\r\n speed += Math.pow(v2[i] - v1[i], 2);\r\n }\r\n speed = Math.sqrt(speed) * 100;\r\n } else {\r\n speed = 0;\r\n }\r\n return speed;\r\n }\r\n\r\n function getVelocityAtTime(frameNum) {\r\n if (this.vel !== undefined) {\r\n return this.vel;\r\n }\r\n var delta = -0.001;\r\n // frameNum += this.elem.data.st;\r\n var v1 = this.getValueAtTime(frameNum);\r\n var v2 = this.getValueAtTime(frameNum + delta);\r\n var velocity;\r\n if (v1.length) {\r\n velocity = createTypedArray('float32', v1.length);\r\n var i;\r\n for (i = 0; i < v1.length; i += 1) {\r\n // removing frameRate\r\n // if needed, don't add it here\r\n // velocity[i] = this.elem.globalData.frameRate*((v2[i] - v1[i])/delta);\r\n velocity[i] = (v2[i] - v1[i]) / delta;\r\n }\r\n } else {\r\n velocity = (v2 - v1) / delta;\r\n }\r\n return velocity;\r\n }\r\n\r\n function getStaticValueAtTime() {\r\n return this.pv;\r\n }\r\n\r\n function setGroupProperty(propertyGroup) {\r\n this.propertyGroup = propertyGroup;\r\n }\r\n\r\n return {\r\n searchExpressions: searchExpressions,\r\n getSpeedAtTime: getSpeedAtTime,\r\n getVelocityAtTime: getVelocityAtTime,\r\n getValueAtTime: getValueAtTime,\r\n getStaticValueAtTime: getStaticValueAtTime,\r\n setGroupProperty: setGroupProperty,\r\n };\r\n}());\r\n\r\n/* global createTypedArray, Matrix, TransformPropertyFactory, expressionHelpers, PropertyFactory, expressionHelpers,\r\ninitialDefaultFrame, shapePool, ShapePropertyFactory, bez, extendPrototype, ExpressionManager, createSizedArray */\r\n\r\n(function addPropertyDecorator() {\r\n function loopOut(type, duration, durationFlag) {\r\n if (!this.k || !this.keyframes) {\r\n return this.pv;\r\n }\r\n type = type ? type.toLowerCase() : '';\r\n var currentFrame = this.comp.renderedFrame;\r\n var keyframes = this.keyframes;\r\n var lastKeyFrame = keyframes[keyframes.length - 1].t;\r\n if (currentFrame <= lastKeyFrame) {\r\n return this.pv;\r\n }\r\n var cycleDuration;\r\n var firstKeyFrame;\r\n if (!durationFlag) {\r\n if (!duration || duration > keyframes.length - 1) {\r\n duration = keyframes.length - 1;\r\n }\r\n firstKeyFrame = keyframes[keyframes.length - 1 - duration].t;\r\n cycleDuration = lastKeyFrame - firstKeyFrame;\r\n } else {\r\n if (!duration) {\r\n cycleDuration = Math.max(0, lastKeyFrame - this.elem.data.ip);\r\n } else {\r\n cycleDuration = Math.abs(lastKeyFrame - this.elem.comp.globalData.frameRate * duration);\r\n }\r\n firstKeyFrame = lastKeyFrame - cycleDuration;\r\n }\r\n var i;\r\n var len;\r\n var ret;\r\n if (type === 'pingpong') {\r\n var iterations = Math.floor((currentFrame - firstKeyFrame) / cycleDuration);\r\n if (iterations % 2 !== 0) {\r\n return this.getValueAtTime(((cycleDuration - (currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame)) / this.comp.globalData.frameRate, 0); // eslint-disable-line\r\n }\r\n } else if (type === 'offset') {\r\n var initV = this.getValueAtTime(firstKeyFrame / this.comp.globalData.frameRate, 0);\r\n var endV = this.getValueAtTime(lastKeyFrame / this.comp.globalData.frameRate, 0);\r\n var current = this.getValueAtTime(((currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame) / this.comp.globalData.frameRate, 0); // eslint-disable-line\r\n var repeats = Math.floor((currentFrame - firstKeyFrame) / cycleDuration);\r\n if (this.pv.length) {\r\n ret = new Array(initV.length);\r\n len = ret.length;\r\n for (i = 0; i < len; i += 1) {\r\n ret[i] = (endV[i] - initV[i]) * repeats + current[i];\r\n }\r\n return ret;\r\n }\r\n return (endV - initV) * repeats + current;\r\n } else if (type === 'continue') {\r\n var lastValue = this.getValueAtTime(lastKeyFrame / this.comp.globalData.frameRate, 0);\r\n var nextLastValue = this.getValueAtTime((lastKeyFrame - 0.001) / this.comp.globalData.frameRate, 0);\r\n if (this.pv.length) {\r\n ret = new Array(lastValue.length);\r\n len = ret.length;\r\n for (i = 0; i < len; i += 1) {\r\n ret[i] = lastValue[i] + (lastValue[i] - nextLastValue[i]) * ((currentFrame - lastKeyFrame) / this.comp.globalData.frameRate) / 0.0005; // eslint-disable-line\r\n }\r\n return ret;\r\n }\r\n return lastValue + (lastValue - nextLastValue) * (((currentFrame - lastKeyFrame)) / 0.001);\r\n }\r\n return this.getValueAtTime((((currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame)) / this.comp.globalData.frameRate, 0); // eslint-disable-line\r\n\r\n }\r\n\r\n function loopIn(type, duration, durationFlag) {\r\n if (!this.k) {\r\n return this.pv;\r\n }\r\n type = type ? type.toLowerCase() : '';\r\n var currentFrame = this.comp.renderedFrame;\r\n var keyframes = this.keyframes;\r\n var firstKeyFrame = keyframes[0].t;\r\n if (currentFrame >= firstKeyFrame) {\r\n return this.pv;\r\n }\r\n var cycleDuration;\r\n var lastKeyFrame;\r\n if (!durationFlag) {\r\n if (!duration || duration > keyframes.length - 1) {\r\n duration = keyframes.length - 1;\r\n }\r\n lastKeyFrame = keyframes[duration].t;\r\n cycleDuration = lastKeyFrame - firstKeyFrame;\r\n } else {\r\n if (!duration) {\r\n cycleDuration = Math.max(0, this.elem.data.op - firstKeyFrame);\r\n } else {\r\n cycleDuration = Math.abs(this.elem.comp.globalData.frameRate * duration);\r\n }\r\n lastKeyFrame = firstKeyFrame + cycleDuration;\r\n }\r\n var i;\r\n var len;\r\n var ret;\r\n if (type === 'pingpong') {\r\n var iterations = Math.floor((firstKeyFrame - currentFrame) / cycleDuration);\r\n if (iterations % 2 === 0) {\r\n return this.getValueAtTime((((firstKeyFrame - currentFrame) % cycleDuration + firstKeyFrame)) / this.comp.globalData.frameRate, 0); // eslint-disable-line\r\n }\r\n } else if (type === 'offset') {\r\n var initV = this.getValueAtTime(firstKeyFrame / this.comp.globalData.frameRate, 0);\r\n var endV = this.getValueAtTime(lastKeyFrame / this.comp.globalData.frameRate, 0);\r\n var current = this.getValueAtTime((cycleDuration - ((firstKeyFrame - currentFrame) % cycleDuration) + firstKeyFrame) / this.comp.globalData.frameRate, 0);\r\n var repeats = Math.floor((firstKeyFrame - currentFrame) / cycleDuration) + 1;\r\n if (this.pv.length) {\r\n ret = new Array(initV.length);\r\n len = ret.length;\r\n for (i = 0; i < len; i += 1) {\r\n ret[i] = current[i] - (endV[i] - initV[i]) * repeats;\r\n }\r\n return ret;\r\n }\r\n return current - (endV - initV) * repeats;\r\n } else if (type === 'continue') {\r\n var firstValue = this.getValueAtTime(firstKeyFrame / this.comp.globalData.frameRate, 0);\r\n var nextFirstValue = this.getValueAtTime((firstKeyFrame + 0.001) / this.comp.globalData.frameRate, 0);\r\n if (this.pv.length) {\r\n ret = new Array(firstValue.length);\r\n len = ret.length;\r\n for (i = 0; i < len; i += 1) {\r\n ret[i] = firstValue[i] + ((firstValue[i] - nextFirstValue[i]) * (firstKeyFrame - currentFrame)) / 0.001;\r\n }\r\n return ret;\r\n }\r\n return firstValue + ((firstValue - nextFirstValue) * (firstKeyFrame - currentFrame)) / 0.001;\r\n }\r\n return this.getValueAtTime(((cycleDuration - ((firstKeyFrame - currentFrame) % cycleDuration + firstKeyFrame))) / this.comp.globalData.frameRate, 0); // eslint-disable-line\r\n\r\n }\r\n\r\n function smooth(width, samples) {\r\n if (!this.k) {\r\n return this.pv;\r\n }\r\n width = (width || 0.4) * 0.5;\r\n samples = Math.floor(samples || 5);\r\n if (samples <= 1) {\r\n return this.pv;\r\n }\r\n var currentTime = this.comp.renderedFrame / this.comp.globalData.frameRate;\r\n var initFrame = currentTime - width;\r\n var endFrame = currentTime + width;\r\n var sampleFrequency = samples > 1 ? (endFrame - initFrame) / (samples - 1) : 1;\r\n var i = 0;\r\n var j = 0;\r\n var value;\r\n if (this.pv.length) {\r\n value = createTypedArray('float32', this.pv.length);\r\n } else {\r\n value = 0;\r\n }\r\n var sampleValue;\r\n while (i < samples) {\r\n sampleValue = this.getValueAtTime(initFrame + i * sampleFrequency);\r\n if (this.pv.length) {\r\n for (j = 0; j < this.pv.length; j += 1) {\r\n value[j] += sampleValue[j];\r\n }\r\n } else {\r\n value += sampleValue;\r\n }\r\n i += 1;\r\n }\r\n if (this.pv.length) {\r\n for (j = 0; j < this.pv.length; j += 1) {\r\n value[j] /= samples;\r\n }\r\n } else {\r\n value /= samples;\r\n }\r\n return value;\r\n }\r\n\r\n function getTransformValueAtTime(time) {\r\n if (!this._transformCachingAtTime) {\r\n this._transformCachingAtTime = {\r\n v: new Matrix(),\r\n };\r\n }\r\n /// /\r\n var matrix = this._transformCachingAtTime.v;\r\n matrix.cloneFromProps(this.pre.props);\r\n if (this.appliedTransformations < 1) {\r\n var anchor = this.a.getValueAtTime(time);\r\n matrix.translate(\r\n -anchor[0] * this.a.mult,\r\n -anchor[1] * this.a.mult,\r\n anchor[2] * this.a.mult\r\n );\r\n }\r\n if (this.appliedTransformations < 2) {\r\n var scale = this.s.getValueAtTime(time);\r\n matrix.scale(\r\n scale[0] * this.s.mult,\r\n scale[1] * this.s.mult,\r\n scale[2] * this.s.mult\r\n );\r\n }\r\n if (this.sk && this.appliedTransformations < 3) {\r\n var skew = this.sk.getValueAtTime(time);\r\n var skewAxis = this.sa.getValueAtTime(time);\r\n matrix.skewFromAxis(-skew * this.sk.mult, skewAxis * this.sa.mult);\r\n }\r\n if (this.r && this.appliedTransformations < 4) {\r\n var rotation = this.r.getValueAtTime(time);\r\n matrix.rotate(-rotation * this.r.mult);\r\n } else if (!this.r && this.appliedTransformations < 4) {\r\n var rotationZ = this.rz.getValueAtTime(time);\r\n var rotationY = this.ry.getValueAtTime(time);\r\n var rotationX = this.rx.getValueAtTime(time);\r\n var orientation = this.or.getValueAtTime(time);\r\n matrix.rotateZ(-rotationZ * this.rz.mult)\r\n .rotateY(rotationY * this.ry.mult)\r\n .rotateX(rotationX * this.rx.mult)\r\n .rotateZ(-orientation[2] * this.or.mult)\r\n .rotateY(orientation[1] * this.or.mult)\r\n .rotateX(orientation[0] * this.or.mult);\r\n }\r\n if (this.data.p && this.data.p.s) {\r\n var positionX = this.px.getValueAtTime(time);\r\n var positionY = this.py.getValueAtTime(time);\r\n if (this.data.p.z) {\r\n var positionZ = this.pz.getValueAtTime(time);\r\n matrix.translate(\r\n positionX * this.px.mult,\r\n positionY * this.py.mult,\r\n -positionZ * this.pz.mult\r\n );\r\n } else {\r\n matrix.translate(positionX * this.px.mult, positionY * this.py.mult, 0);\r\n }\r\n } else {\r\n var position = this.p.getValueAtTime(time);\r\n matrix.translate(\r\n position[0] * this.p.mult,\r\n position[1] * this.p.mult,\r\n -position[2] * this.p.mult\r\n );\r\n }\r\n return matrix;\r\n /// /\r\n }\r\n\r\n function getTransformStaticValueAtTime() {\r\n return this.v.clone(new Matrix());\r\n }\r\n\r\n var getTransformProperty = TransformPropertyFactory.getTransformProperty;\r\n TransformPropertyFactory.getTransformProperty = function (elem, data, container) {\r\n var prop = getTransformProperty(elem, data, container);\r\n if (prop.dynamicProperties.length) {\r\n prop.getValueAtTime = getTransformValueAtTime.bind(prop);\r\n } else {\r\n prop.getValueAtTime = getTransformStaticValueAtTime.bind(prop);\r\n }\r\n prop.setGroupProperty = expressionHelpers.setGroupProperty;\r\n return prop;\r\n };\r\n\r\n var propertyGetProp = PropertyFactory.getProp;\r\n PropertyFactory.getProp = function (elem, data, type, mult, container) {\r\n var prop = propertyGetProp(elem, data, type, mult, container);\r\n // prop.getVelocityAtTime = getVelocityAtTime;\r\n // prop.loopOut = loopOut;\r\n // prop.loopIn = loopIn;\r\n if (prop.kf) {\r\n prop.getValueAtTime = expressionHelpers.getValueAtTime.bind(prop);\r\n } else {\r\n prop.getValueAtTime = expressionHelpers.getStaticValueAtTime.bind(prop);\r\n }\r\n prop.setGroupProperty = expressionHelpers.setGroupProperty;\r\n prop.loopOut = loopOut;\r\n prop.loopIn = loopIn;\r\n prop.smooth = smooth;\r\n prop.getVelocityAtTime = expressionHelpers.getVelocityAtTime.bind(prop);\r\n prop.getSpeedAtTime = expressionHelpers.getSpeedAtTime.bind(prop);\r\n prop.numKeys = data.a === 1 ? data.k.length : 0;\r\n prop.propertyIndex = data.ix;\r\n var value = 0;\r\n if (type !== 0) {\r\n value = createTypedArray('float32', data.a === 1 ? data.k[0].s.length : data.k.length);\r\n }\r\n prop._cachingAtTime = {\r\n lastFrame: initialDefaultFrame,\r\n lastIndex: 0,\r\n value: value,\r\n };\r\n expressionHelpers.searchExpressions(elem, data, prop);\r\n if (prop.k) {\r\n container.addDynamicProperty(prop);\r\n }\r\n\r\n return prop;\r\n };\r\n\r\n function getShapeValueAtTime(frameNum) {\r\n // For now this caching object is created only when needed instead of creating it when the shape is initialized.\r\n if (!this._cachingAtTime) {\r\n this._cachingAtTime = {\r\n shapeValue: shapePool.clone(this.pv),\r\n lastIndex: 0,\r\n lastTime: initialDefaultFrame,\r\n };\r\n }\r\n\r\n frameNum *= this.elem.globalData.frameRate;\r\n frameNum -= this.offsetTime;\r\n if (frameNum !== this._cachingAtTime.lastTime) {\r\n this._cachingAtTime.lastIndex = this._cachingAtTime.lastTime < frameNum ? this._caching.lastIndex : 0;\r\n this._cachingAtTime.lastTime = frameNum;\r\n this.interpolateShape(frameNum, this._cachingAtTime.shapeValue, this._cachingAtTime);\r\n }\r\n return this._cachingAtTime.shapeValue;\r\n }\r\n\r\n var ShapePropertyConstructorFunction = ShapePropertyFactory.getConstructorFunction();\r\n var KeyframedShapePropertyConstructorFunction = ShapePropertyFactory.getKeyframedConstructorFunction();\r\n\r\n function ShapeExpressions() {}\r\n ShapeExpressions.prototype = {\r\n vertices: function (prop, time) {\r\n if (this.k) {\r\n this.getValue();\r\n }\r\n var shapePath = this.v;\r\n if (time !== undefined) {\r\n shapePath = this.getValueAtTime(time, 0);\r\n }\r\n var i;\r\n var len = shapePath._length;\r\n var vertices = shapePath[prop];\r\n var points = shapePath.v;\r\n var arr = createSizedArray(len);\r\n for (i = 0; i < len; i += 1) {\r\n if (prop === 'i' || prop === 'o') {\r\n arr[i] = [vertices[i][0] - points[i][0], vertices[i][1] - points[i][1]];\r\n } else {\r\n arr[i] = [vertices[i][0], vertices[i][1]];\r\n }\r\n }\r\n return arr;\r\n },\r\n points: function (time) {\r\n return this.vertices('v', time);\r\n },\r\n inTangents: function (time) {\r\n return this.vertices('i', time);\r\n },\r\n outTangents: function (time) {\r\n return this.vertices('o', time);\r\n },\r\n isClosed: function () {\r\n return this.v.c;\r\n },\r\n pointOnPath: function (perc, time) {\r\n var shapePath = this.v;\r\n if (time !== undefined) {\r\n shapePath = this.getValueAtTime(time, 0);\r\n }\r\n if (!this._segmentsLength) {\r\n this._segmentsLength = bez.getSegmentsLength(shapePath);\r\n }\r\n\r\n var segmentsLength = this._segmentsLength;\r\n var lengths = segmentsLength.lengths;\r\n var lengthPos = segmentsLength.totalLength * perc;\r\n var i = 0;\r\n var len = lengths.length;\r\n var accumulatedLength = 0;\r\n var pt;\r\n while (i < len) {\r\n if (accumulatedLength + lengths[i].addedLength > lengthPos) {\r\n var initIndex = i;\r\n var endIndex = (shapePath.c && i === len - 1) ? 0 : i + 1;\r\n var segmentPerc = (lengthPos - accumulatedLength) / lengths[i].addedLength;\r\n pt = bez.getPointInSegment(shapePath.v[initIndex], shapePath.v[endIndex], shapePath.o[initIndex], shapePath.i[endIndex], segmentPerc, lengths[i]);\r\n break;\r\n } else {\r\n accumulatedLength += lengths[i].addedLength;\r\n }\r\n i += 1;\r\n }\r\n if (!pt) {\r\n pt = shapePath.c ? [shapePath.v[0][0], shapePath.v[0][1]] : [shapePath.v[shapePath._length - 1][0], shapePath.v[shapePath._length - 1][1]];\r\n }\r\n return pt;\r\n },\r\n vectorOnPath: function (perc, time, vectorType) {\r\n // perc doesn't use triple equality because it can be a Number object as well as a primitive.\r\n if (perc == 1) { // eslint-disable-line eqeqeq\r\n perc = this.v.c;\r\n } else if (perc == 0) { // eslint-disable-line eqeqeq\r\n perc = 0.999;\r\n }\r\n var pt1 = this.pointOnPath(perc, time);\r\n var pt2 = this.pointOnPath(perc + 0.001, time);\r\n var xLength = pt2[0] - pt1[0];\r\n var yLength = pt2[1] - pt1[1];\r\n var magnitude = Math.sqrt(Math.pow(xLength, 2) + Math.pow(yLength, 2));\r\n if (magnitude === 0) {\r\n return [0, 0];\r\n }\r\n var unitVector = vectorType === 'tangent' ? [xLength / magnitude, yLength / magnitude] : [-yLength / magnitude, xLength / magnitude];\r\n return unitVector;\r\n },\r\n tangentOnPath: function (perc, time) {\r\n return this.vectorOnPath(perc, time, 'tangent');\r\n },\r\n normalOnPath: function (perc, time) {\r\n return this.vectorOnPath(perc, time, 'normal');\r\n },\r\n setGroupProperty: expressionHelpers.setGroupProperty,\r\n getValueAtTime: expressionHelpers.getStaticValueAtTime,\r\n };\r\n extendPrototype([ShapeExpressions], ShapePropertyConstructorFunction);\r\n extendPrototype([ShapeExpressions], KeyframedShapePropertyConstructorFunction);\r\n KeyframedShapePropertyConstructorFunction.prototype.getValueAtTime = getShapeValueAtTime;\r\n KeyframedShapePropertyConstructorFunction.prototype.initiateExpression = ExpressionManager.initiateExpression;\r\n\r\n var propertyGetShapeProp = ShapePropertyFactory.getShapeProp;\r\n ShapePropertyFactory.getShapeProp = function (elem, data, type, arr, trims) {\r\n var prop = propertyGetShapeProp(elem, data, type, arr, trims);\r\n prop.propertyIndex = data.ix;\r\n prop.lock = false;\r\n if (type === 3) {\r\n expressionHelpers.searchExpressions(elem, data.pt, prop);\r\n } else if (type === 4) {\r\n expressionHelpers.searchExpressions(elem, data.ks, prop);\r\n }\r\n if (prop.k) {\r\n elem.addDynamicProperty(prop);\r\n }\r\n return prop;\r\n };\r\n}());\r\n\r\n/* global ExpressionManager, TextProperty */\r\n\r\n(function addDecorator() {\r\n function searchExpressions() {\r\n if (this.data.d.x) {\r\n this.calculateExpression = ExpressionManager.initiateExpression.bind(this)(this.elem, this.data.d, this);\r\n this.addEffect(this.getExpressionValue.bind(this));\r\n return true;\r\n }\r\n return null;\r\n }\r\n\r\n TextProperty.prototype.getExpressionValue = function (currentValue, text) {\r\n var newValue = this.calculateExpression(text);\r\n if (currentValue.t !== newValue) {\r\n var newData = {};\r\n this.copyData(newData, currentValue);\r\n newData.t = newValue.toString();\r\n newData.__complete = false;\r\n return newData;\r\n }\r\n return currentValue;\r\n };\r\n\r\n TextProperty.prototype.searchProperty = function () {\r\n var isKeyframed = this.searchKeyframes();\r\n var hasExpressions = this.searchExpressions();\r\n this.kf = isKeyframed || hasExpressions;\r\n return this.kf;\r\n };\r\n\r\n TextProperty.prototype.searchExpressions = searchExpressions;\r\n}());\r\n\r\n/* global propertyGroupFactory, PropertyInterface */\r\n/* exported ShapePathInterface */\r\n\r\nvar ShapePathInterface = (\r\n\r\n function () {\r\n return function pathInterfaceFactory(shape, view, propertyGroup) {\r\n var prop = view.sh;\r\n\r\n function interfaceFunction(val) {\r\n if (val === 'Shape' || val === 'shape' || val === 'Path' || val === 'path' || val === 'ADBE Vector Shape' || val === 2) {\r\n return interfaceFunction.path;\r\n }\r\n return null;\r\n }\r\n\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n prop.setGroupProperty(PropertyInterface('Path', _propertyGroup));\r\n Object.defineProperties(interfaceFunction, {\r\n path: {\r\n get: function () {\r\n if (prop.k) {\r\n prop.getValue();\r\n }\r\n return prop;\r\n },\r\n },\r\n shape: {\r\n get: function () {\r\n if (prop.k) {\r\n prop.getValue();\r\n }\r\n return prop;\r\n },\r\n },\r\n _name: { value: shape.nm },\r\n ix: { value: shape.ix },\r\n propertyIndex: { value: shape.ix },\r\n mn: { value: shape.mn },\r\n propertyGroup: { value: propertyGroup },\r\n });\r\n return interfaceFunction;\r\n };\r\n }()\r\n);\r\n\r\n/* exported propertyGroupFactory */\r\n\r\nvar propertyGroupFactory = (function () {\r\n return function (interfaceFunction, parentPropertyGroup) {\r\n return function (val) {\r\n val = val === undefined ? 1 : val;\r\n if (val <= 0) {\r\n return interfaceFunction;\r\n }\r\n return parentPropertyGroup(val - 1);\r\n };\r\n };\r\n}());\r\n\r\n/* exported PropertyInterface */\r\n\r\nvar PropertyInterface = (function () {\r\n return function (propertyName, propertyGroup) {\r\n var interfaceFunction = {\r\n _name: propertyName,\r\n };\r\n\r\n function _propertyGroup(val) {\r\n val = val === undefined ? 1 : val;\r\n if (val <= 0) {\r\n return interfaceFunction;\r\n }\r\n return propertyGroup(val - 1);\r\n }\r\n\r\n return _propertyGroup;\r\n };\r\n}());\r\n\r\n/* global ExpressionPropertyInterface, PropertyInterface, propertyGroupFactory, ShapePathInterface */\r\n/* exported ShapeExpressionInterface */\r\n\r\nvar ShapeExpressionInterface = (function () {\r\n function iterateElements(shapes, view, propertyGroup) {\r\n var arr = [];\r\n var i;\r\n var len = shapes ? shapes.length : 0;\r\n for (i = 0; i < len; i += 1) {\r\n if (shapes[i].ty === 'gr') {\r\n arr.push(groupInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'fl') {\r\n arr.push(fillInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'st') {\r\n arr.push(strokeInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'tm') {\r\n arr.push(trimInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'tr') {\r\n // arr.push(transformInterfaceFactory(shapes[i],view[i],propertyGroup));\r\n } else if (shapes[i].ty === 'el') {\r\n arr.push(ellipseInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'sr') {\r\n arr.push(starInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'sh') {\r\n arr.push(ShapePathInterface(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'rc') {\r\n arr.push(rectInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'rd') {\r\n arr.push(roundedInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n } else if (shapes[i].ty === 'rp') {\r\n arr.push(repeaterInterfaceFactory(shapes[i], view[i], propertyGroup));\r\n }\r\n }\r\n return arr;\r\n }\r\n\r\n function contentsInterfaceFactory(shape, view, propertyGroup) {\r\n var interfaces;\r\n var interfaceFunction = function _interfaceFunction(value) {\r\n var i = 0;\r\n var len = interfaces.length;\r\n while (i < len) {\r\n if (interfaces[i]._name === value || interfaces[i].mn === value || interfaces[i].propertyIndex === value || interfaces[i].ix === value || interfaces[i].ind === value) {\r\n return interfaces[i];\r\n }\r\n i += 1;\r\n }\r\n if (typeof value === 'number') {\r\n return interfaces[value - 1];\r\n }\r\n return null;\r\n };\r\n\r\n interfaceFunction.propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n interfaces = iterateElements(shape.it, view.it, interfaceFunction.propertyGroup);\r\n interfaceFunction.numProperties = interfaces.length;\r\n var transformInterface = transformInterfaceFactory(shape.it[shape.it.length - 1], view.it[view.it.length - 1], interfaceFunction.propertyGroup);\r\n interfaceFunction.transform = transformInterface;\r\n interfaceFunction.propertyIndex = shape.cix;\r\n interfaceFunction._name = shape.nm;\r\n\r\n return interfaceFunction;\r\n }\r\n\r\n function groupInterfaceFactory(shape, view, propertyGroup) {\r\n var interfaceFunction = function _interfaceFunction(value) {\r\n switch (value) {\r\n case 'ADBE Vectors Group':\r\n case 'Contents':\r\n case 2:\r\n return interfaceFunction.content;\r\n // Not necessary for now. Keeping them here in case a new case appears\r\n // case 'ADBE Vector Transform Group':\r\n // case 3:\r\n default:\r\n return interfaceFunction.transform;\r\n }\r\n };\r\n interfaceFunction.propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n var content = contentsInterfaceFactory(shape, view, interfaceFunction.propertyGroup);\r\n var transformInterface = transformInterfaceFactory(shape.it[shape.it.length - 1], view.it[view.it.length - 1], interfaceFunction.propertyGroup);\r\n interfaceFunction.content = content;\r\n interfaceFunction.transform = transformInterface;\r\n Object.defineProperty(interfaceFunction, '_name', {\r\n get: function () {\r\n return shape.nm;\r\n },\r\n });\r\n // interfaceFunction.content = interfaceFunction;\r\n interfaceFunction.numProperties = shape.np;\r\n interfaceFunction.propertyIndex = shape.ix;\r\n interfaceFunction.nm = shape.nm;\r\n interfaceFunction.mn = shape.mn;\r\n return interfaceFunction;\r\n }\r\n\r\n function fillInterfaceFactory(shape, view, propertyGroup) {\r\n function interfaceFunction(val) {\r\n if (val === 'Color' || val === 'color') {\r\n return interfaceFunction.color;\r\n } if (val === 'Opacity' || val === 'opacity') {\r\n return interfaceFunction.opacity;\r\n }\r\n return null;\r\n }\r\n Object.defineProperties(interfaceFunction, {\r\n color: {\r\n get: ExpressionPropertyInterface(view.c),\r\n },\r\n opacity: {\r\n get: ExpressionPropertyInterface(view.o),\r\n },\r\n _name: { value: shape.nm },\r\n mn: { value: shape.mn },\r\n });\r\n\r\n view.c.setGroupProperty(PropertyInterface('Color', propertyGroup));\r\n view.o.setGroupProperty(PropertyInterface('Opacity', propertyGroup));\r\n return interfaceFunction;\r\n }\r\n\r\n function strokeInterfaceFactory(shape, view, propertyGroup) {\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n var _dashPropertyGroup = propertyGroupFactory(dashOb, _propertyGroup);\r\n function addPropertyToDashOb(i) {\r\n Object.defineProperty(dashOb, shape.d[i].nm, {\r\n get: ExpressionPropertyInterface(view.d.dataProps[i].p),\r\n });\r\n }\r\n var i;\r\n var len = shape.d ? shape.d.length : 0;\r\n var dashOb = {};\r\n for (i = 0; i < len; i += 1) {\r\n addPropertyToDashOb(i);\r\n view.d.dataProps[i].p.setGroupProperty(_dashPropertyGroup);\r\n }\r\n\r\n function interfaceFunction(val) {\r\n if (val === 'Color' || val === 'color') {\r\n return interfaceFunction.color;\r\n } if (val === 'Opacity' || val === 'opacity') {\r\n return interfaceFunction.opacity;\r\n } if (val === 'Stroke Width' || val === 'stroke width') {\r\n return interfaceFunction.strokeWidth;\r\n }\r\n return null;\r\n }\r\n Object.defineProperties(interfaceFunction, {\r\n color: {\r\n get: ExpressionPropertyInterface(view.c),\r\n },\r\n opacity: {\r\n get: ExpressionPropertyInterface(view.o),\r\n },\r\n strokeWidth: {\r\n get: ExpressionPropertyInterface(view.w),\r\n },\r\n dash: {\r\n get: function () {\r\n return dashOb;\r\n },\r\n },\r\n _name: { value: shape.nm },\r\n mn: { value: shape.mn },\r\n });\r\n\r\n view.c.setGroupProperty(PropertyInterface('Color', _propertyGroup));\r\n view.o.setGroupProperty(PropertyInterface('Opacity', _propertyGroup));\r\n view.w.setGroupProperty(PropertyInterface('Stroke Width', _propertyGroup));\r\n return interfaceFunction;\r\n }\r\n\r\n function trimInterfaceFactory(shape, view, propertyGroup) {\r\n function interfaceFunction(val) {\r\n if (val === shape.e.ix || val === 'End' || val === 'end') {\r\n return interfaceFunction.end;\r\n }\r\n if (val === shape.s.ix) {\r\n return interfaceFunction.start;\r\n }\r\n if (val === shape.o.ix) {\r\n return interfaceFunction.offset;\r\n }\r\n return null;\r\n }\r\n\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n interfaceFunction.propertyIndex = shape.ix;\r\n\r\n view.s.setGroupProperty(PropertyInterface('Start', _propertyGroup));\r\n view.e.setGroupProperty(PropertyInterface('End', _propertyGroup));\r\n view.o.setGroupProperty(PropertyInterface('Offset', _propertyGroup));\r\n interfaceFunction.propertyIndex = shape.ix;\r\n interfaceFunction.propertyGroup = propertyGroup;\r\n\r\n Object.defineProperties(interfaceFunction, {\r\n start: {\r\n get: ExpressionPropertyInterface(view.s),\r\n },\r\n end: {\r\n get: ExpressionPropertyInterface(view.e),\r\n },\r\n offset: {\r\n get: ExpressionPropertyInterface(view.o),\r\n },\r\n _name: { value: shape.nm },\r\n });\r\n interfaceFunction.mn = shape.mn;\r\n return interfaceFunction;\r\n }\r\n\r\n function transformInterfaceFactory(shape, view, propertyGroup) {\r\n function interfaceFunction(value) {\r\n if (shape.a.ix === value || value === 'Anchor Point') {\r\n return interfaceFunction.anchorPoint;\r\n }\r\n if (shape.o.ix === value || value === 'Opacity') {\r\n return interfaceFunction.opacity;\r\n }\r\n if (shape.p.ix === value || value === 'Position') {\r\n return interfaceFunction.position;\r\n }\r\n if (shape.r.ix === value || value === 'Rotation' || value === 'ADBE Vector Rotation') {\r\n return interfaceFunction.rotation;\r\n }\r\n if (shape.s.ix === value || value === 'Scale') {\r\n return interfaceFunction.scale;\r\n }\r\n if ((shape.sk && shape.sk.ix === value) || value === 'Skew') {\r\n return interfaceFunction.skew;\r\n }\r\n if ((shape.sa && shape.sa.ix === value) || value === 'Skew Axis') {\r\n return interfaceFunction.skewAxis;\r\n }\r\n return null;\r\n }\r\n\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n view.transform.mProps.o.setGroupProperty(PropertyInterface('Opacity', _propertyGroup));\r\n view.transform.mProps.p.setGroupProperty(PropertyInterface('Position', _propertyGroup));\r\n view.transform.mProps.a.setGroupProperty(PropertyInterface('Anchor Point', _propertyGroup));\r\n view.transform.mProps.s.setGroupProperty(PropertyInterface('Scale', _propertyGroup));\r\n view.transform.mProps.r.setGroupProperty(PropertyInterface('Rotation', _propertyGroup));\r\n if (view.transform.mProps.sk) {\r\n view.transform.mProps.sk.setGroupProperty(PropertyInterface('Skew', _propertyGroup));\r\n view.transform.mProps.sa.setGroupProperty(PropertyInterface('Skew Angle', _propertyGroup));\r\n }\r\n view.transform.op.setGroupProperty(PropertyInterface('Opacity', _propertyGroup));\r\n Object.defineProperties(interfaceFunction, {\r\n opacity: {\r\n get: ExpressionPropertyInterface(view.transform.mProps.o),\r\n },\r\n position: {\r\n get: ExpressionPropertyInterface(view.transform.mProps.p),\r\n },\r\n anchorPoint: {\r\n get: ExpressionPropertyInterface(view.transform.mProps.a),\r\n },\r\n scale: {\r\n get: ExpressionPropertyInterface(view.transform.mProps.s),\r\n },\r\n rotation: {\r\n get: ExpressionPropertyInterface(view.transform.mProps.r),\r\n },\r\n skew: {\r\n get: ExpressionPropertyInterface(view.transform.mProps.sk),\r\n },\r\n skewAxis: {\r\n get: ExpressionPropertyInterface(view.transform.mProps.sa),\r\n },\r\n _name: { value: shape.nm },\r\n });\r\n interfaceFunction.ty = 'tr';\r\n interfaceFunction.mn = shape.mn;\r\n interfaceFunction.propertyGroup = propertyGroup;\r\n return interfaceFunction;\r\n }\r\n\r\n function ellipseInterfaceFactory(shape, view, propertyGroup) {\r\n function interfaceFunction(value) {\r\n if (shape.p.ix === value) {\r\n return interfaceFunction.position;\r\n }\r\n if (shape.s.ix === value) {\r\n return interfaceFunction.size;\r\n }\r\n return null;\r\n }\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n interfaceFunction.propertyIndex = shape.ix;\r\n var prop = view.sh.ty === 'tm' ? view.sh.prop : view.sh;\r\n prop.s.setGroupProperty(PropertyInterface('Size', _propertyGroup));\r\n prop.p.setGroupProperty(PropertyInterface('Position', _propertyGroup));\r\n\r\n Object.defineProperties(interfaceFunction, {\r\n size: {\r\n get: ExpressionPropertyInterface(prop.s),\r\n },\r\n position: {\r\n get: ExpressionPropertyInterface(prop.p),\r\n },\r\n _name: { value: shape.nm },\r\n });\r\n interfaceFunction.mn = shape.mn;\r\n return interfaceFunction;\r\n }\r\n\r\n function starInterfaceFactory(shape, view, propertyGroup) {\r\n function interfaceFunction(value) {\r\n if (shape.p.ix === value) {\r\n return interfaceFunction.position;\r\n }\r\n if (shape.r.ix === value) {\r\n return interfaceFunction.rotation;\r\n }\r\n if (shape.pt.ix === value) {\r\n return interfaceFunction.points;\r\n }\r\n if (shape.or.ix === value || value === 'ADBE Vector Star Outer Radius') {\r\n return interfaceFunction.outerRadius;\r\n }\r\n if (shape.os.ix === value) {\r\n return interfaceFunction.outerRoundness;\r\n }\r\n if (shape.ir && (shape.ir.ix === value || value === 'ADBE Vector Star Inner Radius')) {\r\n return interfaceFunction.innerRadius;\r\n }\r\n if (shape.is && shape.is.ix === value) {\r\n return interfaceFunction.innerRoundness;\r\n }\r\n return null;\r\n }\r\n\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n var prop = view.sh.ty === 'tm' ? view.sh.prop : view.sh;\r\n interfaceFunction.propertyIndex = shape.ix;\r\n prop.or.setGroupProperty(PropertyInterface('Outer Radius', _propertyGroup));\r\n prop.os.setGroupProperty(PropertyInterface('Outer Roundness', _propertyGroup));\r\n prop.pt.setGroupProperty(PropertyInterface('Points', _propertyGroup));\r\n prop.p.setGroupProperty(PropertyInterface('Position', _propertyGroup));\r\n prop.r.setGroupProperty(PropertyInterface('Rotation', _propertyGroup));\r\n if (shape.ir) {\r\n prop.ir.setGroupProperty(PropertyInterface('Inner Radius', _propertyGroup));\r\n prop.is.setGroupProperty(PropertyInterface('Inner Roundness', _propertyGroup));\r\n }\r\n\r\n Object.defineProperties(interfaceFunction, {\r\n position: {\r\n get: ExpressionPropertyInterface(prop.p),\r\n },\r\n rotation: {\r\n get: ExpressionPropertyInterface(prop.r),\r\n },\r\n points: {\r\n get: ExpressionPropertyInterface(prop.pt),\r\n },\r\n outerRadius: {\r\n get: ExpressionPropertyInterface(prop.or),\r\n },\r\n outerRoundness: {\r\n get: ExpressionPropertyInterface(prop.os),\r\n },\r\n innerRadius: {\r\n get: ExpressionPropertyInterface(prop.ir),\r\n },\r\n innerRoundness: {\r\n get: ExpressionPropertyInterface(prop.is),\r\n },\r\n _name: { value: shape.nm },\r\n });\r\n interfaceFunction.mn = shape.mn;\r\n return interfaceFunction;\r\n }\r\n\r\n function rectInterfaceFactory(shape, view, propertyGroup) {\r\n function interfaceFunction(value) {\r\n if (shape.p.ix === value) {\r\n return interfaceFunction.position;\r\n }\r\n if (shape.r.ix === value) {\r\n return interfaceFunction.roundness;\r\n }\r\n if (shape.s.ix === value || value === 'Size' || value === 'ADBE Vector Rect Size') {\r\n return interfaceFunction.size;\r\n }\r\n return null;\r\n }\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n\r\n var prop = view.sh.ty === 'tm' ? view.sh.prop : view.sh;\r\n interfaceFunction.propertyIndex = shape.ix;\r\n prop.p.setGroupProperty(PropertyInterface('Position', _propertyGroup));\r\n prop.s.setGroupProperty(PropertyInterface('Size', _propertyGroup));\r\n prop.r.setGroupProperty(PropertyInterface('Rotation', _propertyGroup));\r\n\r\n Object.defineProperties(interfaceFunction, {\r\n position: {\r\n get: ExpressionPropertyInterface(prop.p),\r\n },\r\n roundness: {\r\n get: ExpressionPropertyInterface(prop.r),\r\n },\r\n size: {\r\n get: ExpressionPropertyInterface(prop.s),\r\n },\r\n _name: { value: shape.nm },\r\n });\r\n interfaceFunction.mn = shape.mn;\r\n return interfaceFunction;\r\n }\r\n\r\n function roundedInterfaceFactory(shape, view, propertyGroup) {\r\n function interfaceFunction(value) {\r\n if (shape.r.ix === value || value === 'Round Corners 1') {\r\n return interfaceFunction.radius;\r\n }\r\n return null;\r\n }\r\n\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n var prop = view;\r\n interfaceFunction.propertyIndex = shape.ix;\r\n prop.rd.setGroupProperty(PropertyInterface('Radius', _propertyGroup));\r\n\r\n Object.defineProperties(interfaceFunction, {\r\n radius: {\r\n get: ExpressionPropertyInterface(prop.rd),\r\n },\r\n _name: { value: shape.nm },\r\n });\r\n interfaceFunction.mn = shape.mn;\r\n return interfaceFunction;\r\n }\r\n\r\n function repeaterInterfaceFactory(shape, view, propertyGroup) {\r\n function interfaceFunction(value) {\r\n if (shape.c.ix === value || value === 'Copies') {\r\n return interfaceFunction.copies;\r\n } if (shape.o.ix === value || value === 'Offset') {\r\n return interfaceFunction.offset;\r\n }\r\n return null;\r\n }\r\n\r\n var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\r\n var prop = view;\r\n interfaceFunction.propertyIndex = shape.ix;\r\n prop.c.setGroupProperty(PropertyInterface('Copies', _propertyGroup));\r\n prop.o.setGroupProperty(PropertyInterface('Offset', _propertyGroup));\r\n Object.defineProperties(interfaceFunction, {\r\n copies: {\r\n get: ExpressionPropertyInterface(prop.c),\r\n },\r\n offset: {\r\n get: ExpressionPropertyInterface(prop.o),\r\n },\r\n _name: { value: shape.nm },\r\n });\r\n interfaceFunction.mn = shape.mn;\r\n return interfaceFunction;\r\n }\r\n\r\n return function (shapes, view, propertyGroup) {\r\n var interfaces;\r\n function _interfaceFunction(value) {\r\n if (typeof value === 'number') {\r\n value = value === undefined ? 1 : value;\r\n if (value === 0) {\r\n return propertyGroup;\r\n }\r\n return interfaces[value - 1];\r\n }\r\n var i = 0;\r\n var len = interfaces.length;\r\n while (i < len) {\r\n if (interfaces[i]._name === value) {\r\n return interfaces[i];\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n }\r\n function parentGroupWrapper() {\r\n return propertyGroup;\r\n }\r\n _interfaceFunction.propertyGroup = propertyGroupFactory(_interfaceFunction, parentGroupWrapper);\r\n interfaces = iterateElements(shapes, view, _interfaceFunction.propertyGroup);\r\n _interfaceFunction.numProperties = interfaces.length;\r\n _interfaceFunction._name = 'Contents';\r\n return _interfaceFunction;\r\n };\r\n}());\r\n\r\n/* exported TextExpressionInterface */\r\n\r\nvar TextExpressionInterface = (function () {\r\n return function (elem) {\r\n var _prevValue;\r\n var _sourceText;\r\n function _thisLayerFunction(name) {\r\n switch (name) {\r\n case 'ADBE Text Document':\r\n return _thisLayerFunction.sourceText;\r\n default:\r\n return null;\r\n }\r\n }\r\n Object.defineProperty(_thisLayerFunction, 'sourceText', {\r\n get: function () {\r\n elem.textProperty.getValue();\r\n var stringValue = elem.textProperty.currentData.t;\r\n if (stringValue !== _prevValue) {\r\n elem.textProperty.currentData.t = _prevValue;\r\n _sourceText = new String(stringValue); // eslint-disable-line no-new-wrappers\r\n // If stringValue is an empty string, eval returns undefined, so it has to be returned as a String primitive\r\n _sourceText.value = stringValue || new String(stringValue); // eslint-disable-line no-new-wrappers\r\n }\r\n return _sourceText;\r\n },\r\n });\r\n return _thisLayerFunction;\r\n };\r\n}());\r\n\r\n/* global Matrix, MaskManagerInterface, TransformExpressionInterface, getDescriptor */\r\n/* exported LayerExpressionInterface */\r\n\r\nvar LayerExpressionInterface = (function () {\r\n function getMatrix(time) {\r\n var toWorldMat = new Matrix();\r\n if (time !== undefined) {\r\n var propMatrix = this._elem.finalTransform.mProp.getValueAtTime(time);\r\n propMatrix.clone(toWorldMat);\r\n } else {\r\n var transformMat = this._elem.finalTransform.mProp;\r\n transformMat.applyToMatrix(toWorldMat);\r\n }\r\n return toWorldMat;\r\n }\r\n\r\n function toWorldVec(arr, time) {\r\n var toWorldMat = this.getMatrix(time);\r\n toWorldMat.props[12] = 0;\r\n toWorldMat.props[13] = 0;\r\n toWorldMat.props[14] = 0;\r\n return this.applyPoint(toWorldMat, arr);\r\n }\r\n\r\n function toWorld(arr, time) {\r\n var toWorldMat = this.getMatrix(time);\r\n return this.applyPoint(toWorldMat, arr);\r\n }\r\n\r\n function fromWorldVec(arr, time) {\r\n var toWorldMat = this.getMatrix(time);\r\n toWorldMat.props[12] = 0;\r\n toWorldMat.props[13] = 0;\r\n toWorldMat.props[14] = 0;\r\n return this.invertPoint(toWorldMat, arr);\r\n }\r\n\r\n function fromWorld(arr, time) {\r\n var toWorldMat = this.getMatrix(time);\r\n return this.invertPoint(toWorldMat, arr);\r\n }\r\n\r\n function applyPoint(matrix, arr) {\r\n if (this._elem.hierarchy && this._elem.hierarchy.length) {\r\n var i;\r\n var len = this._elem.hierarchy.length;\r\n for (i = 0; i < len; i += 1) {\r\n this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(matrix);\r\n }\r\n }\r\n return matrix.applyToPointArray(arr[0], arr[1], arr[2] || 0);\r\n }\r\n\r\n function invertPoint(matrix, arr) {\r\n if (this._elem.hierarchy && this._elem.hierarchy.length) {\r\n var i;\r\n var len = this._elem.hierarchy.length;\r\n for (i = 0; i < len; i += 1) {\r\n this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(matrix);\r\n }\r\n }\r\n return matrix.inversePoint(arr);\r\n }\r\n\r\n function fromComp(arr) {\r\n var toWorldMat = new Matrix();\r\n toWorldMat.reset();\r\n this._elem.finalTransform.mProp.applyToMatrix(toWorldMat);\r\n if (this._elem.hierarchy && this._elem.hierarchy.length) {\r\n var i;\r\n var len = this._elem.hierarchy.length;\r\n for (i = 0; i < len; i += 1) {\r\n this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(toWorldMat);\r\n }\r\n return toWorldMat.inversePoint(arr);\r\n }\r\n return toWorldMat.inversePoint(arr);\r\n }\r\n\r\n function sampleImage() {\r\n return [1, 1, 1, 1];\r\n }\r\n\r\n return function (elem) {\r\n var transformInterface;\r\n\r\n function _registerMaskInterface(maskManager) {\r\n _thisLayerFunction.mask = new MaskManagerInterface(maskManager, elem);\r\n }\r\n function _registerEffectsInterface(effects) {\r\n _thisLayerFunction.effect = effects;\r\n }\r\n\r\n function _thisLayerFunction(name) {\r\n switch (name) {\r\n case 'ADBE Root Vectors Group':\r\n case 'Contents':\r\n case 2:\r\n return _thisLayerFunction.shapeInterface;\r\n case 1:\r\n case 6:\r\n case 'Transform':\r\n case 'transform':\r\n case 'ADBE Transform Group':\r\n return transformInterface;\r\n case 4:\r\n case 'ADBE Effect Parade':\r\n case 'effects':\r\n case 'Effects':\r\n return _thisLayerFunction.effect;\r\n case 'ADBE Text Properties':\r\n return _thisLayerFunction.textInterface;\r\n default:\r\n return null;\r\n }\r\n }\r\n _thisLayerFunction.getMatrix = getMatrix;\r\n _thisLayerFunction.invertPoint = invertPoint;\r\n _thisLayerFunction.applyPoint = applyPoint;\r\n _thisLayerFunction.toWorld = toWorld;\r\n _thisLayerFunction.toWorldVec = toWorldVec;\r\n _thisLayerFunction.fromWorld = fromWorld;\r\n _thisLayerFunction.fromWorldVec = fromWorldVec;\r\n _thisLayerFunction.toComp = toWorld;\r\n _thisLayerFunction.fromComp = fromComp;\r\n _thisLayerFunction.sampleImage = sampleImage;\r\n _thisLayerFunction.sourceRectAtTime = elem.sourceRectAtTime.bind(elem);\r\n _thisLayerFunction._elem = elem;\r\n transformInterface = TransformExpressionInterface(elem.finalTransform.mProp);\r\n var anchorPointDescriptor = getDescriptor(transformInterface, 'anchorPoint');\r\n Object.defineProperties(_thisLayerFunction, {\r\n hasParent: {\r\n get: function () {\r\n return elem.hierarchy.length;\r\n },\r\n },\r\n parent: {\r\n get: function () {\r\n return elem.hierarchy[0].layerInterface;\r\n },\r\n },\r\n rotation: getDescriptor(transformInterface, 'rotation'),\r\n scale: getDescriptor(transformInterface, 'scale'),\r\n position: getDescriptor(transformInterface, 'position'),\r\n opacity: getDescriptor(transformInterface, 'opacity'),\r\n anchorPoint: anchorPointDescriptor,\r\n anchor_point: anchorPointDescriptor,\r\n transform: {\r\n get: function () {\r\n return transformInterface;\r\n },\r\n },\r\n active: {\r\n get: function () {\r\n return elem.isInRange;\r\n },\r\n },\r\n });\r\n\r\n _thisLayerFunction.startTime = elem.data.st;\r\n _thisLayerFunction.index = elem.data.ind;\r\n _thisLayerFunction.source = elem.data.refId;\r\n _thisLayerFunction.height = elem.data.ty === 0 ? elem.data.h : 100;\r\n _thisLayerFunction.width = elem.data.ty === 0 ? elem.data.w : 100;\r\n _thisLayerFunction.inPoint = elem.data.ip / elem.comp.globalData.frameRate;\r\n _thisLayerFunction.outPoint = elem.data.op / elem.comp.globalData.frameRate;\r\n _thisLayerFunction._name = elem.data.nm;\r\n\r\n _thisLayerFunction.registerMaskInterface = _registerMaskInterface;\r\n _thisLayerFunction.registerEffectsInterface = _registerEffectsInterface;\r\n return _thisLayerFunction;\r\n };\r\n}());\r\n\r\n/* global */\r\n/* exported FootageInterface */\r\n\r\nvar FootageInterface = (function () {\r\n var outlineInterfaceFactory = (function (elem) {\r\n var currentPropertyName = '';\r\n var currentProperty = elem.getFootageData();\r\n function init() {\r\n currentPropertyName = '';\r\n currentProperty = elem.getFootageData();\r\n return searchProperty;\r\n }\r\n function searchProperty(value) {\r\n if (currentProperty[value]) {\r\n currentPropertyName = value;\r\n currentProperty = currentProperty[value];\r\n if (typeof currentProperty === 'object') {\r\n return searchProperty;\r\n }\r\n return currentProperty;\r\n }\r\n var propertyNameIndex = value.indexOf(currentPropertyName);\r\n if (propertyNameIndex !== -1) {\r\n var index = parseInt(value.substr(propertyNameIndex + currentPropertyName.length), 10);\r\n currentProperty = currentProperty[index];\r\n if (typeof currentProperty === 'object') {\r\n return searchProperty;\r\n }\r\n return currentProperty;\r\n }\r\n return '';\r\n }\r\n return init;\r\n });\r\n\r\n var dataInterfaceFactory = function (elem) {\r\n function interfaceFunction(value) {\r\n if (value === 'Outline') {\r\n return interfaceFunction.outlineInterface();\r\n }\r\n return null;\r\n }\r\n\r\n interfaceFunction._name = 'Outline';\r\n interfaceFunction.outlineInterface = outlineInterfaceFactory(elem);\r\n return interfaceFunction;\r\n };\r\n\r\n return function (elem) {\r\n function _interfaceFunction(value) {\r\n if (value === 'Data') {\r\n return _interfaceFunction.dataInterface;\r\n }\r\n return null;\r\n }\r\n\r\n _interfaceFunction._name = 'Data';\r\n _interfaceFunction.dataInterface = dataInterfaceFactory(elem);\r\n return _interfaceFunction;\r\n };\r\n}());\r\n\r\n/* exported CompExpressionInterface */\r\n\r\nvar CompExpressionInterface = (function () {\r\n return function (comp) {\r\n function _thisLayerFunction(name) {\r\n var i = 0;\r\n var len = comp.layers.length;\r\n while (i < len) {\r\n if (comp.layers[i].nm === name || comp.layers[i].ind === name) {\r\n return comp.elements[i].layerInterface;\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n // return {active:false};\r\n }\r\n Object.defineProperty(_thisLayerFunction, '_name', { value: comp.data.nm });\r\n _thisLayerFunction.layer = _thisLayerFunction;\r\n _thisLayerFunction.pixelAspect = 1;\r\n _thisLayerFunction.height = comp.data.h || comp.globalData.compSize.h;\r\n _thisLayerFunction.width = comp.data.w || comp.globalData.compSize.w;\r\n _thisLayerFunction.pixelAspect = 1;\r\n _thisLayerFunction.frameDuration = 1 / comp.globalData.frameRate;\r\n _thisLayerFunction.displayStartTime = 0;\r\n _thisLayerFunction.numLayers = comp.layers.length;\r\n return _thisLayerFunction;\r\n };\r\n}());\r\n\r\n/* global ExpressionPropertyInterface */\r\n/* exported TransformExpressionInterface */\r\n\r\nvar TransformExpressionInterface = (function () {\r\n return function (transform) {\r\n function _thisFunction(name) {\r\n switch (name) {\r\n case 'scale':\r\n case 'Scale':\r\n case 'ADBE Scale':\r\n case 6:\r\n return _thisFunction.scale;\r\n case 'rotation':\r\n case 'Rotation':\r\n case 'ADBE Rotation':\r\n case 'ADBE Rotate Z':\r\n case 10:\r\n return _thisFunction.rotation;\r\n case 'ADBE Rotate X':\r\n return _thisFunction.xRotation;\r\n case 'ADBE Rotate Y':\r\n return _thisFunction.yRotation;\r\n case 'position':\r\n case 'Position':\r\n case 'ADBE Position':\r\n case 2:\r\n return _thisFunction.position;\r\n case 'ADBE Position_0':\r\n return _thisFunction.xPosition;\r\n case 'ADBE Position_1':\r\n return _thisFunction.yPosition;\r\n case 'ADBE Position_2':\r\n return _thisFunction.zPosition;\r\n case 'anchorPoint':\r\n case 'AnchorPoint':\r\n case 'Anchor Point':\r\n case 'ADBE AnchorPoint':\r\n case 1:\r\n return _thisFunction.anchorPoint;\r\n case 'opacity':\r\n case 'Opacity':\r\n case 11:\r\n return _thisFunction.opacity;\r\n default:\r\n return null;\r\n }\r\n }\r\n Object.defineProperty(_thisFunction, 'rotation', {\r\n get: ExpressionPropertyInterface(transform.r || transform.rz),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'zRotation', {\r\n get: ExpressionPropertyInterface(transform.rz || transform.r),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'xRotation', {\r\n get: ExpressionPropertyInterface(transform.rx),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'yRotation', {\r\n get: ExpressionPropertyInterface(transform.ry),\r\n });\r\n Object.defineProperty(_thisFunction, 'scale', {\r\n get: ExpressionPropertyInterface(transform.s),\r\n });\r\n var _px;\r\n var _py;\r\n var _pz;\r\n var _transformFactory;\r\n if (transform.p) {\r\n _transformFactory = ExpressionPropertyInterface(transform.p);\r\n } else {\r\n _px = ExpressionPropertyInterface(transform.px);\r\n _py = ExpressionPropertyInterface(transform.py);\r\n if (transform.pz) {\r\n _pz = ExpressionPropertyInterface(transform.pz);\r\n }\r\n }\r\n Object.defineProperty(_thisFunction, 'position', {\r\n get: function () {\r\n if (transform.p) {\r\n return _transformFactory();\r\n }\r\n return [\r\n _px(),\r\n _py(),\r\n _pz ? _pz() : 0];\r\n },\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'xPosition', {\r\n get: ExpressionPropertyInterface(transform.px),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'yPosition', {\r\n get: ExpressionPropertyInterface(transform.py),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'zPosition', {\r\n get: ExpressionPropertyInterface(transform.pz),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'anchorPoint', {\r\n get: ExpressionPropertyInterface(transform.a),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'opacity', {\r\n get: ExpressionPropertyInterface(transform.o),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'skew', {\r\n get: ExpressionPropertyInterface(transform.sk),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'skewAxis', {\r\n get: ExpressionPropertyInterface(transform.sa),\r\n });\r\n\r\n Object.defineProperty(_thisFunction, 'orientation', {\r\n get: ExpressionPropertyInterface(transform.or),\r\n });\r\n\r\n return _thisFunction;\r\n };\r\n}());\r\n\r\n/* exported ProjectInterface */\r\n\r\nvar ProjectInterface = (function () {\r\n function registerComposition(comp) {\r\n this.compositions.push(comp);\r\n }\r\n\r\n return function () {\r\n function _thisProjectFunction(name) {\r\n var i = 0;\r\n var len = this.compositions.length;\r\n while (i < len) {\r\n if (this.compositions[i].data && this.compositions[i].data.nm === name) {\r\n if (this.compositions[i].prepareFrame && this.compositions[i].data.xt) {\r\n this.compositions[i].prepareFrame(this.currentFrame);\r\n }\r\n return this.compositions[i].compInterface;\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n }\r\n\r\n _thisProjectFunction.compositions = [];\r\n _thisProjectFunction.currentFrame = 0;\r\n\r\n _thisProjectFunction.registerComposition = registerComposition;\r\n\r\n return _thisProjectFunction;\r\n };\r\n}());\r\n\r\n/* global propertyGroupFactory, ExpressionPropertyInterface, PropertyInterface */\r\n/* exported EffectsExpressionInterface */\r\n\r\nvar EffectsExpressionInterface = (function () {\r\n var ob = {\r\n createEffectsInterface: createEffectsInterface,\r\n };\r\n\r\n function createEffectsInterface(elem, propertyGroup) {\r\n if (elem.effectsManager) {\r\n var effectElements = [];\r\n var effectsData = elem.data.ef;\r\n var i;\r\n var len = elem.effectsManager.effectElements.length;\r\n for (i = 0; i < len; i += 1) {\r\n effectElements.push(createGroupInterface(effectsData[i], elem.effectsManager.effectElements[i], propertyGroup, elem));\r\n }\r\n\r\n var effects = elem.data.ef || [];\r\n var groupInterface = function (name) {\r\n i = 0;\r\n len = effects.length;\r\n while (i < len) {\r\n if (name === effects[i].nm || name === effects[i].mn || name === effects[i].ix) {\r\n return effectElements[i];\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n };\r\n Object.defineProperty(groupInterface, 'numProperties', {\r\n get: function () {\r\n return effects.length;\r\n },\r\n });\r\n return groupInterface;\r\n }\r\n return null;\r\n }\r\n\r\n function createGroupInterface(data, elements, propertyGroup, elem) {\r\n function groupInterface(name) {\r\n var effects = data.ef;\r\n var i = 0;\r\n var len = effects.length;\r\n while (i < len) {\r\n if (name === effects[i].nm || name === effects[i].mn || name === effects[i].ix) {\r\n if (effects[i].ty === 5) {\r\n return effectElements[i];\r\n }\r\n return effectElements[i]();\r\n }\r\n i += 1;\r\n }\r\n throw new Error();\r\n }\r\n var _propertyGroup = propertyGroupFactory(groupInterface, propertyGroup);\r\n\r\n var effectElements = [];\r\n var i;\r\n var len = data.ef.length;\r\n for (i = 0; i < len; i += 1) {\r\n if (data.ef[i].ty === 5) {\r\n effectElements.push(createGroupInterface(data.ef[i], elements.effectElements[i], elements.effectElements[i].propertyGroup, elem));\r\n } else {\r\n effectElements.push(createValueInterface(elements.effectElements[i], data.ef[i].ty, elem, _propertyGroup));\r\n }\r\n }\r\n\r\n if (data.mn === 'ADBE Color Control') {\r\n Object.defineProperty(groupInterface, 'color', {\r\n get: function () {\r\n return effectElements[0]();\r\n },\r\n });\r\n }\r\n Object.defineProperties(groupInterface, {\r\n numProperties: {\r\n get: function () {\r\n return data.np;\r\n },\r\n },\r\n _name: { value: data.nm },\r\n propertyGroup: { value: _propertyGroup },\r\n });\r\n groupInterface.enabled = data.en !== 0;\r\n groupInterface.active = groupInterface.enabled;\r\n return groupInterface;\r\n }\r\n\r\n function createValueInterface(element, type, elem, propertyGroup) {\r\n var expressionProperty = ExpressionPropertyInterface(element.p);\r\n function interfaceFunction() {\r\n if (type === 10) {\r\n return elem.comp.compInterface(element.p.v);\r\n }\r\n return expressionProperty();\r\n }\r\n\r\n if (element.p.setGroupProperty) {\r\n element.p.setGroupProperty(PropertyInterface('', propertyGroup));\r\n }\r\n\r\n return interfaceFunction;\r\n }\r\n\r\n return ob;\r\n}());\r\n\r\n/* global createSizedArray */\r\n/* exported MaskManagerInterface */\r\n\r\nvar MaskManagerInterface = (function () {\r\n function MaskInterface(mask, data) {\r\n this._mask = mask;\r\n this._data = data;\r\n }\r\n Object.defineProperty(MaskInterface.prototype, 'maskPath', {\r\n get: function () {\r\n if (this._mask.prop.k) {\r\n this._mask.prop.getValue();\r\n }\r\n return this._mask.prop;\r\n },\r\n });\r\n Object.defineProperty(MaskInterface.prototype, 'maskOpacity', {\r\n get: function () {\r\n if (this._mask.op.k) {\r\n this._mask.op.getValue();\r\n }\r\n return this._mask.op.v * 100;\r\n },\r\n });\r\n\r\n var MaskManager = function (maskManager) {\r\n var _masksInterfaces = createSizedArray(maskManager.viewData.length);\r\n var i;\r\n var len = maskManager.viewData.length;\r\n for (i = 0; i < len; i += 1) {\r\n _masksInterfaces[i] = new MaskInterface(maskManager.viewData[i], maskManager.masksProperties[i]);\r\n }\r\n\r\n var maskFunction = function (name) {\r\n i = 0;\r\n while (i < len) {\r\n if (maskManager.masksProperties[i].nm === name) {\r\n return _masksInterfaces[i];\r\n }\r\n i += 1;\r\n }\r\n return null;\r\n };\r\n return maskFunction;\r\n };\r\n return MaskManager;\r\n}());\r\n\r\n/* global createTypedArray */\r\n/* exported ExpressionPropertyInterface */\r\n\r\nvar ExpressionPropertyInterface = (function () {\r\n var defaultUnidimensionalValue = { pv: 0, v: 0, mult: 1 };\r\n var defaultMultidimensionalValue = { pv: [0, 0, 0], v: [0, 0, 0], mult: 1 };\r\n\r\n function completeProperty(expressionValue, property, type) {\r\n Object.defineProperty(expressionValue, 'velocity', {\r\n get: function () {\r\n return property.getVelocityAtTime(property.comp.currentFrame);\r\n },\r\n });\r\n expressionValue.numKeys = property.keyframes ? property.keyframes.length : 0;\r\n expressionValue.key = function (pos) {\r\n if (!expressionValue.numKeys) {\r\n return 0;\r\n }\r\n var value = '';\r\n if ('s' in property.keyframes[pos - 1]) {\r\n value = property.keyframes[pos - 1].s;\r\n } else if ('e' in property.keyframes[pos - 2]) {\r\n value = property.keyframes[pos - 2].e;\r\n } else {\r\n value = property.keyframes[pos - 2].s;\r\n }\r\n var valueProp = type === 'unidimensional' ? new Number(value) : Object.assign({}, value); // eslint-disable-line no-new-wrappers\r\n valueProp.time = property.keyframes[pos - 1].t / property.elem.comp.globalData.frameRate;\r\n valueProp.value = type === 'unidimensional' ? value[0] : value;\r\n return valueProp;\r\n };\r\n expressionValue.valueAtTime = property.getValueAtTime;\r\n expressionValue.speedAtTime = property.getSpeedAtTime;\r\n expressionValue.velocityAtTime = property.getVelocityAtTime;\r\n expressionValue.propertyGroup = property.propertyGroup;\r\n }\r\n\r\n function UnidimensionalPropertyInterface(property) {\r\n if (!property || !('pv' in property)) {\r\n property = defaultUnidimensionalValue;\r\n }\r\n var mult = 1 / property.mult;\r\n var val = property.pv * mult;\r\n var expressionValue = new Number(val); // eslint-disable-line no-new-wrappers\r\n expressionValue.value = val;\r\n completeProperty(expressionValue, property, 'unidimensional');\r\n\r\n return function () {\r\n if (property.k) {\r\n property.getValue();\r\n }\r\n val = property.v * mult;\r\n if (expressionValue.value !== val) {\r\n expressionValue = new Number(val); // eslint-disable-line no-new-wrappers\r\n expressionValue.value = val;\r\n completeProperty(expressionValue, property, 'unidimensional');\r\n }\r\n return expressionValue;\r\n };\r\n }\r\n\r\n function MultidimensionalPropertyInterface(property) {\r\n if (!property || !('pv' in property)) {\r\n property = defaultMultidimensionalValue;\r\n }\r\n var mult = 1 / property.mult;\r\n var len = (property.data && property.data.l) || property.pv.length;\r\n var expressionValue = createTypedArray('float32', len);\r\n var arrValue = createTypedArray('float32', len);\r\n expressionValue.value = arrValue;\r\n completeProperty(expressionValue, property, 'multidimensional');\r\n\r\n return function () {\r\n if (property.k) {\r\n property.getValue();\r\n }\r\n for (var i = 0; i < len; i += 1) {\r\n arrValue[i] = property.v[i] * mult;\r\n expressionValue[i] = arrValue[i];\r\n }\r\n return expressionValue;\r\n };\r\n }\r\n\r\n // TODO: try to avoid using this getter\r\n function defaultGetter() {\r\n return defaultUnidimensionalValue;\r\n }\r\n\r\n return function (property) {\r\n if (!property) {\r\n return defaultGetter;\r\n } if (property.propType === 'unidimensional') {\r\n return UnidimensionalPropertyInterface(property);\r\n }\r\n return MultidimensionalPropertyInterface(property);\r\n };\r\n}());\r\n\r\n/* global expressionHelpers, TextSelectorProp, ExpressionManager */\r\n/* exported TextExpressionSelectorProp */\r\n\r\n(function () {\r\n var TextExpressionSelectorProp = (function () { // eslint-disable-line no-unused-vars\r\n function getValueProxy(index, total) {\r\n this.textIndex = index + 1;\r\n this.textTotal = total;\r\n this.v = this.getValue() * this.mult;\r\n return this.v;\r\n }\r\n\r\n return function TextExpressionSelectorPropFactory(elem, data) {\r\n this.pv = 1;\r\n this.comp = elem.comp;\r\n this.elem = elem;\r\n this.mult = 0.01;\r\n this.propType = 'textSelector';\r\n this.textTotal = data.totalChars;\r\n this.selectorValue = 100;\r\n this.lastValue = [1, 1, 1];\r\n this.k = true;\r\n this.x = true;\r\n this.getValue = ExpressionManager.initiateExpression.bind(this)(elem, data, this);\r\n this.getMult = getValueProxy;\r\n this.getVelocityAtTime = expressionHelpers.getVelocityAtTime;\r\n if (this.kf) {\r\n this.getValueAtTime = expressionHelpers.getValueAtTime.bind(this);\r\n } else {\r\n this.getValueAtTime = expressionHelpers.getStaticValueAtTime.bind(this);\r\n }\r\n this.setGroupProperty = expressionHelpers.setGroupProperty;\r\n };\r\n }());\r\n\r\n var propertyGetTextProp = TextSelectorProp.getTextSelectorProp;\r\n TextSelectorProp.getTextSelectorProp = function (elem, data, arr) {\r\n if (data.t === 1) {\r\n return new TextExpressionSelectorPropFactory(elem, data, arr); // eslint-disable-line no-undef\r\n }\r\n return propertyGetTextProp(elem, data, arr);\r\n };\r\n}());\r\n\r\n/* global PropertyFactory */\r\n/* exported SliderEffect, AngleEffect, ColorEffect, PointEffect, LayerIndexEffect, MaskIndexEffect, CheckboxEffect, NoValueEffect */\r\n\r\nfunction SliderEffect(data, elem, container) {\r\n this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\r\n}\r\nfunction AngleEffect(data, elem, container) {\r\n this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\r\n}\r\nfunction ColorEffect(data, elem, container) {\r\n this.p = PropertyFactory.getProp(elem, data.v, 1, 0, container);\r\n}\r\nfunction PointEffect(data, elem, container) {\r\n this.p = PropertyFactory.getProp(elem, data.v, 1, 0, container);\r\n}\r\nfunction LayerIndexEffect(data, elem, container) {\r\n this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\r\n}\r\nfunction MaskIndexEffect(data, elem, container) {\r\n this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\r\n}\r\nfunction CheckboxEffect(data, elem, container) {\r\n this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\r\n}\r\nfunction NoValueEffect() {\r\n this.p = {};\r\n}\r\n\r\n/* global extendPrototype, SliderEffect, AngleEffect, ColorEffect, PointEffect, CheckboxEffect, LayerIndexEffect,\r\nMaskIndexEffect, NoValueEffect, DynamicPropertyContainer */\r\n\r\nfunction EffectsManager(data, element) {\r\n var effects = data.ef || [];\r\n this.effectElements = [];\r\n var i;\r\n var len = effects.length;\r\n var effectItem;\r\n for (i = 0; i < len; i += 1) {\r\n effectItem = new GroupEffect(effects[i], element);\r\n this.effectElements.push(effectItem);\r\n }\r\n}\r\n\r\nfunction GroupEffect(data, element) {\r\n this.init(data, element);\r\n}\r\n\r\nextendPrototype([DynamicPropertyContainer], GroupEffect);\r\n\r\nGroupEffect.prototype.getValue = GroupEffect.prototype.iterateDynamicProperties;\r\n\r\nGroupEffect.prototype.init = function (data, element) {\r\n this.data = data;\r\n this.effectElements = [];\r\n this.initDynamicPropertyContainer(element);\r\n var i;\r\n var len = this.data.ef.length;\r\n var eff;\r\n var effects = this.data.ef;\r\n for (i = 0; i < len; i += 1) {\r\n eff = null;\r\n switch (effects[i].ty) {\r\n case 0:\r\n eff = new SliderEffect(effects[i], element, this);\r\n break;\r\n case 1:\r\n eff = new AngleEffect(effects[i], element, this);\r\n break;\r\n case 2:\r\n eff = new ColorEffect(effects[i], element, this);\r\n break;\r\n case 3:\r\n eff = new PointEffect(effects[i], element, this);\r\n break;\r\n case 4:\r\n case 7:\r\n eff = new CheckboxEffect(effects[i], element, this);\r\n break;\r\n case 10:\r\n eff = new LayerIndexEffect(effects[i], element, this);\r\n break;\r\n case 11:\r\n eff = new MaskIndexEffect(effects[i], element, this);\r\n break;\r\n case 5:\r\n eff = new EffectsManager(effects[i], element, this);\r\n break;\r\n // case 6:\r\n default:\r\n eff = new NoValueEffect(effects[i], element, this);\r\n break;\r\n }\r\n if (eff) {\r\n this.effectElements.push(eff);\r\n }\r\n }\r\n};\r\n\r\n\r\nvar lottie = {};\r\n\r\nfunction setLocationHref(href) {\r\n locationHref = href;\r\n}\r\n\r\nfunction searchAnimations() {\r\n if (standalone === true) {\r\n animationManager.searchAnimations(animationData, standalone, renderer);\r\n } else {\r\n animationManager.searchAnimations();\r\n }\r\n}\r\n\r\nfunction setSubframeRendering(flag) {\r\n subframeEnabled = flag;\r\n}\r\n\r\nfunction loadAnimation(params) {\r\n if (standalone === true) {\r\n params.animationData = JSON.parse(animationData);\r\n }\r\n return animationManager.loadAnimation(params);\r\n}\r\n\r\nfunction setQuality(value) {\r\n if (typeof value === 'string') {\r\n switch (value) {\r\n case 'high':\r\n defaultCurveSegments = 200;\r\n break;\r\n default:\r\n case 'medium':\r\n defaultCurveSegments = 50;\r\n break;\r\n case 'low':\r\n defaultCurveSegments = 10;\r\n break;\r\n }\r\n } else if (!isNaN(value) && value > 1) {\r\n defaultCurveSegments = value;\r\n }\r\n if (defaultCurveSegments >= 50) {\r\n roundValues(false);\r\n } else {\r\n roundValues(true);\r\n }\r\n}\r\n\r\nfunction inBrowser() {\r\n return typeof navigator !== 'undefined';\r\n}\r\n\r\nfunction installPlugin(type, plugin) {\r\n if (type === 'expressions') {\r\n expressionsPlugin = plugin;\r\n }\r\n}\r\n\r\nfunction getFactory(name) {\r\n switch (name) {\r\n case 'propertyFactory':\r\n return PropertyFactory;\r\n case 'shapePropertyFactory':\r\n return ShapePropertyFactory;\r\n case 'matrix':\r\n return Matrix;\r\n default:\r\n return null;\r\n }\r\n}\r\n\r\nlottie.play = animationManager.play;\r\nlottie.pause = animationManager.pause;\r\nlottie.setLocationHref = setLocationHref;\r\nlottie.togglePause = animationManager.togglePause;\r\nlottie.setSpeed = animationManager.setSpeed;\r\nlottie.setDirection = animationManager.setDirection;\r\nlottie.stop = animationManager.stop;\r\nlottie.searchAnimations = searchAnimations;\r\nlottie.registerAnimation = animationManager.registerAnimation;\r\nlottie.loadAnimation = loadAnimation;\r\nlottie.setSubframeRendering = setSubframeRendering;\r\nlottie.resize = animationManager.resize;\r\n// lottie.start = start;\r\nlottie.goToAndStop = animationManager.goToAndStop;\r\nlottie.destroy = animationManager.destroy;\r\nlottie.setQuality = setQuality;\r\nlottie.inBrowser = inBrowser;\r\nlottie.installPlugin = installPlugin;\r\nlottie.freeze = animationManager.freeze;\r\nlottie.unfreeze = animationManager.unfreeze;\r\nlottie.setVolume = animationManager.setVolume;\r\nlottie.mute = animationManager.mute;\r\nlottie.unmute = animationManager.unmute;\r\nlottie.getRegisteredAnimations = animationManager.getRegisteredAnimations;\r\nlottie.__getFactory = getFactory;\r\nlottie.version = '5.7.8';\r\n\r\nfunction checkReady() {\r\n if (document.readyState === 'complete') {\r\n clearInterval(readyStateCheckInterval);\r\n searchAnimations();\r\n }\r\n}\r\n\r\nfunction getQueryVariable(variable) {\r\n var vars = queryString.split('&');\r\n for (var i = 0; i < vars.length; i += 1) {\r\n var pair = vars[i].split('=');\r\n if (decodeURIComponent(pair[0]) == variable) { // eslint-disable-line eqeqeq\r\n return decodeURIComponent(pair[1]);\r\n }\r\n }\r\n return null;\r\n}\r\nvar standalone = '__[STANDALONE]__';\r\nvar animationData = '__[ANIMATIONDATA]__';\r\nvar renderer = '';\r\nvar queryString;\r\nif (standalone) {\r\n var scripts = document.getElementsByTagName('script');\r\n var index = scripts.length - 1;\r\n var myScript = scripts[index] || {\r\n src: '',\r\n };\r\n queryString = myScript.src.replace(/^[^\\?]+\\??/, ''); // eslint-disable-line no-useless-escape\r\n renderer = getQueryVariable('renderer');\r\n}\r\nvar readyStateCheckInterval = setInterval(checkReady, 100);\r\n\nreturn lottie;\n}));","/*!\n\tModaal - accessible modals - v0.4.4\n\tby Humaan, for all humans.\n\thttp://humaan.com\n */\n/**\n\tModaal jQuery Plugin : Accessible Modals\n\n\t==== General Options ===\n\ttype (string) \t\t\t\t\t: ajax, inline, image, iframe, confirm. Defaults to 'inline'\n\tcontent_source (stribg)\t\t\t: Accepts a string value for your target element, such as '#my-content'. This allows for when trigger element is\n\t\t\t\t\t\t\t\t\t\tan `` link. Not to be confused with the already existing `source` event.\n\tanimation (string) \t\t\t\t: Fade, expand, down, up. Defaults to 'fade'\n\tafter_callback_delay (integer)\t: Specify a delay value for the after open callbacks. This is necessary because with the bundled animations\n\t\t\t\t\t\t\t\t\t\thave a set duration in the bundled CSS. Specify a delay of the same amount as the animation duration in so\n\t\t\t\t\t\t\t\t\t\tmore accurately fire the after open/close callbacks. Defaults 350, does not apply if animation is 'none',\n\t\t\t\t\t\t\t\t\t\tafter open callbacks are dispatched immediately\n\n\tis_locked (boolean)\t\t\t\t: Set this to true to disable closing the modal via keypress or clicking the background. Beware that if\n\t\t\t\t\t\t\t\t\t\ttype != 'confirm' there will be no interface to dismiss the modal if is_locked = true, you'd have to\n\t\t\t\t\t\t\t\t\t\tprogrammatically arrange to dismiss the modal. Confirm modals are always locked regardless of this option\n\t\t\t\t\t\t\t\t\t\tDefaults to false\n\n\thide_close (boolean)\t\t\t: Set this to true to hide the close modal button. Key press and overlay click will still close the modal.\n\t\t\t\t\t\t\t\t\t\tThis method is best used when you want to put a custom close button inside the modal container space.\n\n\tbackground (string)\t\t\t\t: Background overlay style. Defaults to '#000'\n\toverlay_opacity (float) \t\t: Background overlay transparency. Defaults to 0.8\n\toverlay_close (boolean)\t\t\t: Set this to false if you want to disable click to close on overlay background.\n\n\taccessible_title (string)\t\t: Accessible title. Default 'Dialog Window'\n\tstart_open (boolean)\t\t\t: Set this to true to launch the Modaal window immediately on page open\n\tfullscreen (boolean)\t\t\t: Set this to true to make the modaal fill the entire screen, false will default to own width/height attributes.\n\tcustom_class (string)\t\t\t: Fill in this string with a custom class that will be applied to the outer most modal wrapper.\n\n\twidth (integer)\t\t\t\t\t: Desired width of the modal. Required for iframe type. Defaults to undefined //TODO\n\theight (integer)\t\t\t\t: Desired height of the modal. Required for iframe type. Defaults to undefined //TODO\n\n\tbackground_scroll (boolean)\t\t: Set this to true to enable the page to scroll behind the open modal.\n\n should_open (boolean|function) : Boolean or closure that returns a boolean to determine whether to open the modal or not.\n\n\tclose_text\t\t\t\t\t\t: String for close button text. Available for localisation and alternative languages to be used.\n\tclose_aria_label\t\t\t\t: String for close button aria-label attribute (value that screen readers will read out). Available for localisation and alternative languages to be used.\n\n\t=== Events ===\n\tbefore_open (function) \t\t\t: Callback function executed before modal is opened\n\tafter_open (function)\t\t\t: Callback function executed after modal is opened\n\tbefore_close (function)\t\t\t: Callback function executed before modal is closed\n\tafter_close (function)\t\t\t: Callback function executed after modal is closed\n\tsource (function(element, src))\t: Callback function executed on the default source, it is intended to transform the\n\t\t\t\t\t\t\t\t\t\tsource (href in an AJAX modal or iframe). The function passes in the triggering element\n\t\t\t\t\t\t\t\t\t\tas well as the default source depending of the modal type. The default output of the\n\t\t\t\t\t\t\t\t\t\tfunction is an untransformed default source.\n\n\n\t=== Confirm Options & Events ===\n\tconfirm_button_text (string)\t: Text on the confirm button. Defaults to 'Confirm'\n\tconfirm_cancel_button_text (string) : Text on the confirm modal cancel button. Defaults to 'Cancel'\n\tconfirm_title (string)\t\t\t: Title for confirm modal. Default 'Confirm Title'\n\tconfirm_content (string)\t\t: HTML content for confirm message\n\tconfirm_callback (function)\t\t: Callback function for when the confirm button is pressed as opposed to cancel\n\tconfirm_cancel_callback (function) : Callback function for when the cancel button is pressed\n\n\n\t=== Gallery Options & Events ===\n\tgallery_active_class (string)\t: Active class applied to the currently active image or image slide in a gallery 'gallery_active_item'\n\touter_controls (boolean)\t\t: Set to true to put the next/prev controls outside the Modaal wrapper, at the edges of the browser window.\n\tbefore_image_change (function)\t: Callback function executed before the image slide changes in a gallery modal. Default function( current_item, incoming_item )\n\tafter_image_change (function)\t: Callback function executed after the image slide changes in a gallery modal. Default function ( current_item )\n\n\n\t=== AJAX Options & Events ===\n\tloading_content (string)\t\t: HTML content for loading message. Default 'Loading …'\n\tloading_class (string)\t\t\t: Class name to be applied while content is loaded via AJAX. Default 'is_loading'\n\tajax_error_class (string)\t\t: Class name to be applied when content has failed to load. Default is 'modaal-error'\n\tajax_success (function)\t\t \t: Callback for when AJAX content is loaded in\n\n\n\t=== SOCIAL CONTENT ===\n\tinstagram_id (string)\t\t\t: Unique photo ID for an Instagram photo.\n\n*/\n( function( $ ) {\n\n\tvar modaal_loading_spinner = '
'\n\t\n\tvar Modaal = {\n\t\tinit : function(options, elem) {\n\t\t\tvar self = this;\n\n\t\t\tself.dom = $('body');\n\n\t\t\tself.$elem = $(elem);\n\t\t\tself.options = $.extend({}, $.fn.modaal.options, self.$elem.data(), options);\n\t\t\tself.xhr = null;\n\n\t\t\t// set up the scope\n\t\t\tself.scope = {\n\t\t\t\tis_open: false,\n\t\t\t\tid: 'modaal_' + ( new Date().getTime() ) + ( Math.random().toString(16).substring(2) ),\n\t\t\t\tsource: self.options.content_source ? self.options.content_source : self.$elem.attr('href')\n\t\t\t};\n\n\t\t\t// add scope attribute to trigger element\n\t\t\tself.$elem.attr('data-modaal-scope', self.scope.id);\n\n\t\t\t// private options\n\t\t\tself.private_options = {\n\t\t\t\tactive_class: 'is_active'\n\t\t\t};\n\n\t\t\tself.lastFocus = null;\n\t\t\t\n\t\t\t// if is_locked\n\t\t\tif ( self.options.is_locked || self.options.type == 'confirm' || self.options.hide_close ) {\n\t\t\t\tself.scope.close_btn = '';\n\t\t\t} else {\n\t\t\t\tself.scope.close_btn = '';\n\t\t\t}\n\n\t\t\t// reset animation_speed\n\t\t\tif (self.options.animation === 'none' ){\n\t\t\t\tself.options.animation_speed = 0;\n\t\t\t\tself.options.after_callback_delay = 0;\n\t\t\t}\n\n\t\t\t// On click to open modal\n\t\t\t$(elem).on('click.Modaal', function(e) {\n\t\t\t\te.preventDefault();\n\t\t\t\tself.create_modaal(self, e);\n\t\t\t});\n\n\t\t\t// Define next/prev buttons\n\t\t\tif (self.options.outer_controls === true) {\n\t\t\t\tvar mod_class = 'outer';\n\t\t\t} else {\n\t\t\t\tvar mod_class = 'inner';\n\t\t\t}\n\t\t\tself.scope.prev_btn = '';\n\t\t\tself.scope.next_btn = '';\n\n\t\t\t// Check for start_open\n\t\t\tif (self.options.start_open === true ){\n\t\t\t\tself.create_modaal( self );\n\t\t\t}\n\t\t},\n\n\t\t// Initial create to determine which content type it requires\n\t\t// ----------------------------------------------------------------\n\t\tcreate_modaal : function(self, e) {\n\t\t\tvar self = this;\n\t\t\tvar source;\n\n\t\t\t// Save last active state before modal\n\t\t\tself.lastFocus = self.$elem;\n\n\t\t\tif ( self.options.should_open === false || ( typeof self.options.should_open === 'function' && self.options.should_open() === false ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// CB: before_open\n\t\t\tself.options.before_open.call(self, e);\n\n\t\t\tswitch (self.options.type) {\n\t\t\t\tcase 'inline':\n\t\t\t\t\tself.create_basic();\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'ajax':\n\t\t\t\t\tsource = self.options.source( self.$elem, self.scope.source );\n\t\t\t\t\tself.fetch_ajax( source );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'confirm':\n\t\t\t\t\tself.options.is_locked = true;\n\t\t\t\t\tself.create_confirm();\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'image':\n\t\t\t\t\tself.create_image();\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'iframe':\n\t\t\t\t\tsource = self.options.source( self.$elem, self.scope.source );\n\t\t\t\t\tself.create_iframe( source );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'video':\n\t\t\t\t\tself.create_video(self.scope.source);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'instagram':\n\t\t\t\t\tself.create_instagram();\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// call events to be watched (click, tab, keyup, keydown etc.)\n\t\t\tself.watch_events();\n\t\t},\n\n\t\t// Watching Modal\n\t\t// ----------------------------------------------------------------\n\t\twatch_events : function() {\n\t\t\tvar self = this;\n\n\t\t\tself.dom.off('click.Modaal keyup.Modaal keydown.Modaal');\n\n\t\t\t// Body keydown\n\t\t\tself.dom.on('keydown.Modaal', function(e) {\n\t\t\t\tvar key = e.keyCode;\n\t\t\t\tvar target = e.target;\n\n\t\t\t\t// look for tab change and reset focus to modal window\n\t\t\t\t// done in keydown so the check fires repeatedly when you hold the tab key down\n\t\t\t\tif (key == 9 && self.scope.is_open) {\n\t\t\t\t\tif (!$.contains(document.getElementById(self.scope.id), target) ) {\n\t\t\t\t\t\t$('#' + self.scope.id).find('*[tabindex=\"0\"]').focus();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Body keyup\n\t\t\tself.dom.on('keyup.Modaal', function(e) {\n\t\t\t\tvar key = e.keyCode;\n\t\t\t\tvar target = e.target;\n\n\t\t\t\tif ( (e.shiftKey && e.keyCode == 9) && self.scope.is_open) {\n\t\t\t\t\t// Watch for shift + tab key press. if open shift focus to close button.\n\t\t\t\t\tif (!$.contains(document.getElementById(self.scope.id), target) ) {\n\t\t\t\t\t\t$('#' + self.scope.id).find('.modaal-close').focus();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif ( !self.options.is_locked ){\n\t\t\t\t\t// On escape key press close modal\n\t\t\t\t\tif (key == 27 && self.scope.is_open ) {\n\t\t\t\t\t\tif ( $(document.activeElement).is('input:not(:checkbox):not(:radio)') ) {\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tself.modaal_close();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// is gallery open and images length is > 1\n\t\t\t\tif ( self.options.type == 'image' ) {\n\t\t\t\t\t// arrow left for back\n\t\t\t\t\tif (key == 37 && self.scope.is_open && (!$('#' + self.scope.id + ' .modaal-gallery-prev').hasClass('is_hidden')) ) {\n\t\t\t\t\t\tself.gallery_update('prev');\n\t\t\t\t\t}\n\t\t\t\t\t// arrow right for next\n\t\t\t\t\tif (key == 39 && self.scope.is_open && (!$('#' + self.scope.id + ' .modaal-gallery-next').hasClass('is_hidden')) ) {\n\t\t\t\t\t\tself.gallery_update('next');\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Body click/touch\n\t\t\tself.dom.on('click.Modaal', function(e) {\n\t\t\t\tvar trigger = $(e.target);\n\n\t\t\t\t// General Controls: If it's not locked allow greedy close\n\t\t\t\tif ( !self.options.is_locked ){\n\t\t\t\t\tif ( (self.options.overlay_close && trigger.is('.modaal-inner-wrapper')) || trigger.is('.modaal-close') || trigger.closest('.modaal-close').length ) {\n\t\t\t\t\t\tself.modaal_close();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t//Confirm Controls\n\t\t\t\tif ( trigger.is('.modaal-confirm-btn' ) ){\n\t\t\t\t\t// if 'OK' button is clicked, run confirm_callback()\n\t\t\t\t\tif ( trigger.is('.modaal-ok') ) {\n\t\t\t\t\t\tself.options.confirm_callback.call(self, self.lastFocus);\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( trigger.is('.modaal-cancel') ) {\n\t\t\t\t\t\tself.options.confirm_cancel_callback.call(self, self.lastFocus);\n\t\t\t\t\t}\n\t\t\t\t\tself.modaal_close();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Gallery Controls\n\t\t\t\tif ( trigger.is( '.modaal-gallery-control' ) ){\n\t\t\t\t\t// it not active, don't do nuthin!\n\t\t\t\t\tif ( trigger.hasClass('is_hidden') ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// trigger previous\n\t\t\t\t\tif ( trigger.is('.modaal-gallery-prev') ) {\n\t\t\t\t\t\tself.gallery_update('prev');\n\t\t\t\t\t}\n\t\t\t\t\t// trigger next\n\t\t\t\t\tif ( trigger.is('.modaal-gallery-next') ) {\n\t\t\t\t\t\tself.gallery_update('next');\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\t\t// Append markup into DOM\n\t\tbuild_modal : function(content) {\n\t\t\tvar self = this;\n\n\t\t\t// if is instagram\n\t\t\tvar igClass = '';\n\t\t\tif ( self.options.type == 'instagram' ) {\n\t\t\t\tigClass = ' modaal-instagram';\n\t\t\t}\n\n\t\t\tvar wrap_class = (self.options.type == 'video') ? 'modaal-video-wrap' : 'modaal-content';\n\n\t\t\t/*\n\t\t\t\tmodaal-start_none : fully hidden via display:none;\n\t\t\t\tmodaal-start_fade : hidden via opacity:0\n\t\t\t\tmodaal-start_slidedown : ...\n\n\t\t\t*/\n\t\t\tvar animation_class;\n\t\t\tswitch ( self.options.animation ) {\n\t\t\t\tcase 'fade' :\n\t\t\t\t\tanimation_class = ' modaal-start_fade';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'slide-down' :\n\t\t\t\t\tanimation_class = ' modaal-start_slidedown';\n\t\t\t\t\tbreak;\n\t\t\t\tdefault :\n\t\t\t\t\tanimation_class = ' modaal-start_none'\n\t\t\t}\n\n\t\t\t// fullscreen check\n\t\t\tvar fullscreen_class = '';\n\t\t\tif ( self.options.fullscreen ) {\n\t\t\t\tfullscreen_class = ' modaal-fullscreen';\n\t\t\t}\n\n\t\t\t// custom class check\n\t\t\tif ( self.options.custom_class !== '' || typeof(self.options.custom_class) !== 'undefined' ) {\n\t\t\t\tself.options.custom_class = ' ' + self.options.custom_class;\n\t\t\t}\n\n\t\t\t// if width and heights exists and is typeof number\n\t\t\tvar dimensionsStyle = '';\n\t\t\tif ( self.options.width && self.options.height && typeof self.options.width == 'number' && typeof self.options.height == 'number' ) {\n\t\t\t\t// if width and height exist, and they are both numbers\n\t\t\t\tdimensionsStyle = ' style=\"max-width:' + self.options.width + 'px;height:' + self.options.height + 'px;overflow:auto;\"';\n\t\t\t} else if ( self.options.width && typeof self.options.width == 'number' ) {\n\t\t\t\t// if only width\n\t\t\t\tdimensionsStyle = ' style=\"max-width:' + self.options.width + 'px;\"';\n\t\t\t} else if ( self.options.height && typeof self.options.height == 'number' ) {\n\t\t\t\t// if only height\n\t\t\t\tdimensionsStyle = ' style=\"height:' + self.options.height + 'px;overflow:auto;\"';\n\t\t\t}\n\n\t\t\t// Reset dimensions style (width and height) for certain types\n\t\t\tif ( self.options.type == 'image' || self.options.type == 'video' || self.options.type == 'instagram' || self.options.fullscreen ) {\n\t\t\t\tdimensionsStyle = '';\n\t\t\t}\n\n\t\t\t// if is touch\n\t\t\t// this is a bug fix for iOS to allow regular click events on div elements.\n\t\t\tvar touchTrigger = '';\n\t\t\tif ( self.is_touch() ) {\n\t\t\t\ttouchTrigger = ' style=\"cursor:pointer;\"'\n\t\t\t}\n\n\t\t\tvar build_markup = '
';\n\n\t\t\t\t\t// hide if video\n\t\t\t\t\tif (self.options.type != 'video') {\n\t\t\t\t\t\tbuild_markup += '
';\n\t\t\t\t\t}\n\n\t\t\t\t\t// add the guts of the content\n\t\t\t\t\tbuild_markup +=\t'
';\n\n\t\t\t\t\t\t\t// If it's inline type, we want to clone content instead of dropping it straight in\n\t\t\t\t\t\t\tif (self.options.type == 'inline') {\n\t\t\t\t\t\t\t\tbuild_markup += '
';\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// Drop in the content if it's not inline\n\t\t\t\t\t\t\t\tbuild_markup +=\tcontent;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t// close wrap_class\n\t\t\t\t\tbuild_markup += '
' + self.scope.close_btn;\n\n\t\t\t\t\t// hide if video\n\t\t\t\t\tif (self.options.type != 'video') {\n\t\t\t\t\t\tbuild_markup += '
';\n\t\t\t\t\t}\n\n\t\t\t// close off modaal-inner-wrapper\n\t\t\tbuild_markup +=\t'
';\n\t\t\t\n\t\t\t// If type is image AND outer_controls is true: add gallery next and previous controls.\n\t\t\tif (self.options.type == 'image' && self.options.outer_controls === true) {\n\t\t\t\tbuild_markup += self.scope.prev_btn + self.scope.next_btn;\n\t\t\t}\n\n\t\t\t// close off modaal-wrapper\n\t\t\tbuild_markup +=\t'
';\n\n\t\t\t// append ajax modal markup to dom\n\t\t\tif ($('#' + self.scope.id + '_overlay').length < 1) {\n\t\t\t\tself.dom.append(build_markup);\n\t\t\t}\n\n\t\t\t// if inline, clone content into space\n\t\t\tif (self.options.type == 'inline') {\n\t\t\t\tcontent.appendTo('#' + self.scope.id + ' .modaal-content-container');\n\t\t\t}\n\n\t\t\t// Trigger overlay show (which triggers modal show)\n\t\t\tself.modaal_overlay('show');\n\t\t},\n\n\t\t// Create Basic Inline Modal\n\t\t// ----------------------------------------------------------------\n\t\tcreate_basic : function() {\n\t\t\tvar self = this;\n\t\t\tvar target = $(self.scope.source);\n\t\t\tvar content = '';\n\n\t\t\tif (target.length) {\n\t\t\t\tcontent = target.contents().detach();\n\t\t\t\ttarget.empty();\n\t\t\t} else {\n\t\t\t\tcontent = 'Content could not be loaded. Please check the source and try again.';\n\t\t\t}\n\n\t\t\t// now push content into markup\n\t\t\tself.build_modal(content);\n\t\t},\n\n\t\t// Create Instagram Modal\n\t\t// ----------------------------------------------------------------\n\t\tcreate_instagram : function() {\n\t\t\tvar self = this;\n\t\t\tvar id = self.options.instagram_id;\n\t\t\tvar content = '';\n\n\t\t\tvar error_msg = 'Instagram photo couldn\\'t be loaded, please check the embed code and try again.';\n\n\t\t\tself.build_modal('
' + self.options.loading_content + '
' );\n\n\t\t\t// ID exists, is not empty null or undefined.\n\t\t\tif ( id != '' && id !== null && id !== undefined ) {\n\t\t\t\t// set up oembed url\n\t\t\t\tvar ig_url = 'https://api.instagram.com/oembed?url=http://instagr.am/p/' + id + '/';\n\n\t\t\t\t$.ajax({\n\t\t\t\t\turl: ig_url,\n\t\t\t\t\tdataType: \"jsonp\",\n\t\t\t\t\tcache: false,\n\t\t\t\t\tsuccess: function (data) {\n\t\t\t\t\t\t\n\t\t\t\t\t\t// Create temp dom element from which we'll clone into the modaal instance. This is required to bypass the unusual small thumb issue instagram oembed was serving up\n\t\t\t\t\t\tself.dom.append('
' + data.html + '
');\n\t\t\t\t\t\t\n\t\t\t\t\t\t// Check if it has loaded once before.\n\t\t\t\t\t\t// This is to stop the Embeds.process from throwing and error the first time it's being loaded.\n\t\t\t\t\t\t// private_options are individual to a modaal_scope so will not work across multiple scopes when checking if true, only that one item.\n\t\t\t\t\t\tif ( self.dom.attr('data-igloaded') ) {\n\t\t\t\t\t\t\twindow.instgrm.Embeds.process();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// first time it's loaded, let's set a new private option to use next time it's opened.\n\t\t\t\t\t\t\tself.dom.attr('data-igloaded', 'true');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// now set location for new content\n\t\t\t\t\t\t// timeout is required as well to bypass the unusual small thumb issue instagram oembed was serving up\n\t\t\t\t\t\tvar target = '#' + self.scope.id + ' .modaal-content-container';\n\t\t\t\t\t\tif ( $(target).length > 0) {\n\t\t\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\t\t\t$('#temp-ig').contents().clone().appendTo( target );\n\t\t\t\t\t\t\t\t$('#temp-ig').remove();\n\t\t\t\t\t\t\t}, 1000);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t},\n\t\t\t\t\terror: function() {\n\t\t\t\t\t\tcontent = error_msg;\n\n\t\t\t\t\t\t// now set location for new content\n\t\t\t\t\t\tvar target = $('#' + self.scope.id + ' .modaal-content-container');\n\t\t\t\t\t\tif ( target.length > 0) {\n\t\t\t\t\t\t\ttarget.removeClass( self.options.loading_class ).addClass( self.options.ajax_error_class );\n\t\t\t\t\t\t\ttarget.html(content);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t} else {\n\t\t\t\tcontent = error_msg;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\n\t\t// Fetch Ajax Data\n\t\t// ----------------------------------------------------------------\n\t\tfetch_ajax : function(url) {\n\t\t\tvar self = this;\n\t\t\tvar content = '';\n\n\t\t\t// If no accessible title, set it to 'Dialog Window'\n\t\t\tif ( self.options.accessible_title == null ) {\n\t\t\t\tself.options.accessible_title = 'Dialog Window'\n\t\t\t}\n\n\t\t\tif ( self.xhr !== null ){\n\t\t\t\tself.xhr.abort();\n\t\t\t\tself.xhr = null;\n\t\t\t}\n\n\t\t\tself.build_modal('
' + self.options.loading_content + '
' );\n\n\t\t\tself.xhr = $.ajax(url, {\n\t\t\t\tsuccess: function(data) {\n\t\t\t\t\t// content fetch is successful so push it into markup\n\t\t\t\t\tvar target = $('#' + self.scope.id).find('.modaal-content-container');\n\t\t\t\t\tif ( target.length > 0){\n\t\t\t\t\t\ttarget.removeClass( self.options.loading_class );\n\t\t\t\t\t\ttarget.html( data );\n\n\t\t\t\t\t\tself.options.ajax_success.call(self, target);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\terror: function( xhr ) {\n\t\t\t\t\t// There were some errors so return an error message\n\t\t\t\t\tif ( xhr.statusText == 'abort' ){\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tvar target = $('#' + self.scope.id + ' .modaal-content-container');\n\t\t\t\t\tif ( target.length > 0){\n\t\t\t\t\t\ttarget.removeClass( self.options.loading_class ).addClass( self.options.ajax_error_class );\n\t\t\t\t\t\ttarget.html( 'Content could not be loaded. Please check the source and try again.' );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\t\t// Create Confirm Modal\n\t\t// ----------------------------------------------------------------\n\t\tcreate_confirm : function() {\n\t\t\tvar self = this;\n\t\t\tvar content;\n\n\t\t\tcontent = '
' +\n\t\t\t\t\t'

' + self.options.confirm_title + '

' +\n\t\t\t\t\t'
' + self.options.confirm_content + '
' +\n\t\t\t\t\t\t'
' +\n\t\t\t\t\t\t\t'' +\n\t\t\t\t\t\t\t'' +\n\t\t\t\t\t\t'
' +\n\t\t\t\t\t'
' +\n\t\t\t\t'';\n\n\t\t\t// now push content into markup\n\t\t\tself.build_modal(content);\n\t\t},\n\n\t\t// Create Image/Gallery Modal\n\t\t// ----------------------------------------------------------------\n\t\tcreate_image : function() {\n\t\t\tvar self = this;\n\t\t\tvar content;\n\n\t\t\tvar modaal_image_markup = '';\n\t\t\tvar gallery_total;\n\t\t\t\n\t\t\t// If has group attribute\n\t\t\tif ( self.$elem.is('[data-group]') || self.$elem.is('[rel]') ) {\n\n\t\t\t\t// find gallery groups\n\t\t\t\tvar use_group = self.$elem.is('[data-group]');\n\t\t\t\tvar gallery_group = use_group ? self.$elem.attr('data-group') : self.$elem.attr('rel');\n\t\t\t\tvar gallery_group_items = use_group ? $('[data-group=\"' + gallery_group + '\"]') : $('[rel=\"' + gallery_group + '\"]');\n\n\t\t\t\t// remove any previous active attribute to any in the group\n\t\t\t\tgallery_group_items.removeAttr('data-gallery-active', 'is_active');\n\t\t\t\t// add active attribute to the item clicked\n\t\t\t\tself.$elem.attr('data-gallery-active', 'is_active');\n\n\t\t\t\t// how many in the grouping are there (-1 to connect with each function starting with 0)\n\t\t\t\tgallery_total = gallery_group_items.length - 1;\n\n\t\t\t\t// prepare array for gallery data\n\t\t\t\tvar gallery = [];\n\n\t\t\t\t// start preparing markup\n\t\t\t\tmodaal_image_markup = '';\n\n\t\t\t\t// Add next and previous buttons if outside\n\t\t\t\tif (self.options.outer_controls != true) {\n\t\t\t\t\tmodaal_image_markup += self.scope.prev_btn + self.scope.next_btn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// This is only a single gallery item so let's grab the necessary values\n\n\t\t\t\t// define the source, check if content_source option exists, and use that or fall back to href.\n\t\t\t\tvar this_img_src;\n\t\t\t\tvar img_src_error = false;\n\t\t\t\tif ( self.$elem.attr('data-modaal-content-source') ) {\n\t\t\t\t\tthis_img_src = self.$elem.attr('data-modaal-content-source');\n\t\t\t\t} else if ( self.$elem.attr('href') ) {\n\t\t\t\t\tthis_img_src = self.$elem.attr('href');\n\t\t\t\t} else if ( self.$elem.attr('src') ) {\n\t\t\t\t\tthis_img_src = self.$elem.attr('src');\n\t\t\t\t} else {\n\t\t\t\t\tthis_img_src = 'trigger requires href or data-modaal-content-source attribute';\n\t\t\t\t\timg_src_error = true;\n\t\t\t\t}\n\n\t\t\t\tvar this_img_alt_txt = '';\n\t\t\t\tvar this_img_alt = '';\n\t\t\t\tvar aria_label = '';\n\n\t\t\t\tif ( self.$elem.attr('data-modaal-desc') ) {\n\t\t\t\t\taria_label = self.$elem.attr('data-modaal-desc');\n\t\t\t\t\tthis_img_alt_txt = self.$elem.attr('data-modaal-desc');\n\t\t\t\t\tthis_img_alt = '';\n\t\t\t\t} else {\n\t\t\t\t\taria_label = \"Image with no description\";\n\t\t\t\t}\n\n\t\t\t\t// if image item has source error, output message rather than undefined image\n\t\t\t\tvar image_output = img_src_error ? this_img_src : '\"';\n\n\t\t\t\t// build up the html\n\t\t\t\tmodaal_image_markup = '';\n\t\t\t}\n\n\t\t\t// Update content variable\n\t\t\tcontent = modaal_image_markup;\n\n\t\t\t// now push content into markup\n\t\t\tself.build_modal(content);\n\n\t\t\t// setup next & prev buttons\n\t\t\tif ( $('.modaal-gallery-item.is_active').is('.gallery-item-0') ) {\n\t\t\t\t$('.modaal-gallery-prev').hide();\n\t\t\t}\n\t\t\tif ( $('.modaal-gallery-item.is_active').is('.gallery-item-' + gallery_total) ) {\n\t\t\t\t$('.modaal-gallery-next').hide();\n\t\t\t}\n\t\t},\n\n\t\t// Gallery Change Image\n\t\t// ----------------------------------------------------------------\n\t\tgallery_update : function(direction) {\n\t\t\tvar self = this;\n\t\t\tvar this_gallery = $('#' + self.scope.id);\n\t\t\tvar this_gallery_item = this_gallery.find('.modaal-gallery-item');\n\t\t\tvar this_gallery_total = this_gallery_item.length - 1;\n\n\t\t\t// if single item, don't proceed\n\t\t\tif ( this_gallery_total == 0 ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tvar prev_btn = this_gallery.find('.modaal-gallery-prev'),\n\t\t\t\tnext_btn = this_gallery.find('.modaal-gallery-next');\n\n\t\t\tvar duration = 250;\n\n\t\t\tvar new_img_w = 0,\n\t\t\t\tnew_img_h = 0;\n\n\t\t\t// CB: Before image change\n\t\t\tvar current_item = this_gallery.find( '.modaal-gallery-item.' + self.private_options.active_class ),\n\t\t\t\tincoming_item = ( direction == 'next' ? current_item.next( '.modaal-gallery-item' ) : current_item.prev( '.modaal-gallery-item' ) );\n\t\t\tself.options.before_image_change.call(self, current_item, incoming_item);\n\n\t\t\t// stop change if at start of end\n\t\t\tif ( direction == 'prev' && this_gallery.find('.gallery-item-0').hasClass('is_active') ) {\n\t\t\t\treturn false;\n\t\t\t} else if ( direction == 'next' && this_gallery.find('.gallery-item-' + this_gallery_total).hasClass('is_active') ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\n\t\t\t// lock dimensions\n\t\t\tcurrent_item.stop().animate({\n\t\t\t\topacity: 0\n\t\t\t}, duration, function(){\n\t\t\t\t// Move to appropriate image\n\t\t\t\tincoming_item.addClass('is_next').css({\n\t\t\t\t\t'position': 'absolute',\n\t\t\t\t\t'display': 'block',\n\t\t\t\t\t'opacity': 0\n\t\t\t\t});\n\n\t\t\t\t// Collect doc width\n\t\t\t\tvar doc_width = $(document).width();\n\t\t\t\tvar width_threshold = doc_width > 1140 ? 280 : 50;\n\n\t\t\t\t// start toggle to 'is_next'\n\t\t\t\tnew_img_w = this_gallery.find('.modaal-gallery-item.is_next').width();\n\t\t\t\tnew_img_h = this_gallery.find('.modaal-gallery-item.is_next').height();\n\n\t\t\t\tvar new_natural_w = this_gallery.find('.modaal-gallery-item.is_next img').prop('naturalWidth');\n\t\t\t\tvar new_natural_h = this_gallery.find('.modaal-gallery-item.is_next img').prop('naturalHeight');\n\n\t\t\t\t// if new image is wider than doc width\n\t\t\t\tif ( new_natural_w > (doc_width - width_threshold) ) {\n\t\t\t\t\t// set new width just below doc width\n\t\t\t\t\tnew_img_w = doc_width - width_threshold;\n\n\t\t\t\t\t// Set temp widths so we can calulate the correct height;\n\t\t\t\t\tthis_gallery.find('.modaal-gallery-item.is_next').css({ 'width': new_img_w });\n\t\t\t\t\tthis_gallery.find('.modaal-gallery-item.is_next img').css({ 'width': new_img_w });\n\n\t\t\t\t\t// Set new height variable\n\t\t\t\t\tnew_img_h = this_gallery.find('.modaal-gallery-item.is_next').find('img').height();\n\t\t\t\t} else {\n\t\t\t\t\t// new img is not wider than screen, so let's set the new dimensions\n\t\t\t\t\tnew_img_w = new_natural_w;\n\t\t\t\t\tnew_img_h = new_natural_h;\n\t\t\t\t}\n\n\t\t\t\t// resize gallery region\n\t\t\t\tthis_gallery.find('.modaal-gallery-item-wrap').stop().animate({\n\t\t\t\t\t'width': new_img_w,\n\t\t\t\t\t'height': new_img_h\n\t\t\t\t}, duration, function() {\n\t\t\t\t\t// hide old active image\n\t\t\t\t\tcurrent_item.removeClass(self.private_options.active_class + ' ' + self.options.gallery_active_class).removeAttr('style');\n\t\t\t\t\tcurrent_item.find('img').removeAttr('style');\n\n\t\t\t\t\t// show new image\n\t\t\t\t\tincoming_item.addClass(self.private_options.active_class + ' ' + self.options.gallery_active_class).removeClass('is_next').css('position','');\n\n\t\t\t\t\t// animate in new image (now has the normal is_active class\n\t\t\t\t\tincoming_item.stop().animate({\n\t\t\t\t\t\topacity: 1\n\t\t\t\t\t}, duration, function(){\n\t\t\t\t\t\t$(this).removeAttr('style').css({\n\t\t\t\t\t\t\t'width': '100%'\n\t\t\t\t\t\t});\n\t\t\t\t\t\t$(this).find('img').css('width', '100%');\n\n\t\t\t\t\t\t// remove dimension lock\n\t\t\t\t\t\tthis_gallery.find('.modaal-gallery-item-wrap').removeAttr('style');\n\n\t\t\t\t\t\t// CB: After image change\n\t\t\t\t\t\tself.options.after_image_change.call( self, incoming_item );\n\t\t\t\t\t});\n\n\t\t\t\t\t// Focus on the new gallery item\n\t\t\t\t\tthis_gallery.find('.modaal-gallery-item').removeAttr('tabindex');\n\t\t\t\t\tthis_gallery.find('.modaal-gallery-item.' + self.private_options.active_class + '').attr('tabindex', '0').focus();\n\n\t\t\t\t\t// hide/show next/prev\n\t\t\t\t\tif ( this_gallery.find('.modaal-gallery-item.' + self.private_options.active_class).is('.gallery-item-0') ) {\n\t\t\t\t\t\tprev_btn.stop().animate({\n\t\t\t\t\t\t\topacity: 0\n\t\t\t\t\t\t}, 150, function(){\n\t\t\t\t\t\t\t$(this).hide();\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\tprev_btn.stop().css({\n\t\t\t\t\t\t\t'display': 'block',\n\t\t\t\t\t\t\t'opacity': prev_btn.css('opacity')\n\t\t\t\t\t\t}).animate({\n\t\t\t\t\t\t\topacity: 1\n\t\t\t\t\t\t}, 150);\n\t\t\t\t\t}\n\t\t\t\t\tif ( this_gallery.find('.modaal-gallery-item.' + self.private_options.active_class).is('.gallery-item-' + this_gallery_total) ) {\n\t\t\t\t\t\tnext_btn.stop().animate({\n\t\t\t\t\t\t\topacity: 0\n\t\t\t\t\t\t}, 150, function(){\n\t\t\t\t\t\t\t$(this).hide();\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnext_btn.stop().css({\n\t\t\t\t\t\t\t'display': 'block',\n\t\t\t\t\t\t\t'opacity': prev_btn.css('opacity')\n\t\t\t\t\t\t}).animate({\n\t\t\t\t\t\t\topacity: 1\n\t\t\t\t\t\t}, 150);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\n\t\t// Create Video Modal\n\t\t// ----------------------------------------------------------------\n\t\tcreate_video : function(url) {\n\t\t\tvar self = this;\n\t\t\tvar content;\n\n\t\t\t// video markup\n\t\t\tcontent = '';\n\n\t\t\t// now push content into markup\n\t\t\tself.build_modal('
' + content + '
');\n\t\t},\n\n\t\t// Create iFrame Modal\n\t\t// ----------------------------------------------------------------\n\t\tcreate_iframe : function(url) {\n\t\t\tvar self = this;\n\t\t\tvar content;\n\n\t\t\tif ( self.options.width !== null || self.options.width !== undefined || self.options.height !== null || self.options.height !== undefined ) {\n\t\t\t\t// video markup\n\t\t\t\tcontent = '';\n\t\t\t} else {\n\t\t\t\tcontent = '
Please specify a width and height for your iframe
';\n\t\t\t}\n\n\t\t\t// now push content into markup\n\t\t\tself.build_modal(content);\n\t\t},\n\n\t\t// Open Modaal\n\t\t// ----------------------------------------------------------------\n\t\tmodaal_open : function() {\n\t\t\tvar self = this;\n\t\t\tvar modal_wrapper = $( '#' + self.scope.id );\n\t\t\tvar animation_type = self.options.animation;\n\n\t\t\tif (animation_type === 'none' ){\n\t\t\t\tmodal_wrapper.removeClass('modaal-start_none');\n\t\t\t\tself.options.after_open.call(self, modal_wrapper);\n\t\t\t}\n\n\t\t\t// Open with fade\n\t\t\tif (animation_type === 'fade') {\n\t\t\t\tmodal_wrapper.removeClass('modaal-start_fade');\n\t\t\t}\n\n\t\t\t// Open with slide down\n\t\t\tif (animation_type === 'slide-down') {\n\t\t\t\tmodal_wrapper.removeClass('modaal-start_slide_down');\n\t\t\t}\n\n\t\t\tvar focusTarget = modal_wrapper;\n\n\t\t\t// Switch focusTarget tabindex (switch from other modal if exists)\n\t\t\t$('.modaal-wrapper *[tabindex=0]').removeAttr('tabindex');\n\n\t\t\tif ( self.options.type == 'image' ) {\n\t\t\t\tfocusTarget = $('#' + self.scope.id).find('.modaal-gallery-item.' + self.private_options.active_class);\n\n\t\t\t} else if ( modal_wrapper.find('.modaal-iframe-elem').length ) {\n\t\t\t\tfocusTarget = modal_wrapper.find('.modaal-iframe-elem');\n\n\t\t\t} else if ( modal_wrapper.find('.modaal-video-wrap').length ) {\n\t\t\t\tfocusTarget = modal_wrapper.find('.modaal-video-wrap');\n\n\t\t\t} else {\n\t\t\t\tfocusTarget = modal_wrapper.find('.modaal-focus');\n\n\t\t\t}\n\n\t\t\t// now set the focus\n\t\t\tfocusTarget.attr('tabindex', '0').focus();\n\n\t\t\t// Run after_open\n\t\t\tif (animation_type !== 'none') {\n\t\t\t\t// CB: after_open\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\tself.options.after_open.call(self, modal_wrapper)\n\t\t\t\t}, self.options.after_callback_delay);\n\t\t\t}\n\t\t},\n\n\t\t// Close Modal\n\t\t// ----------------------------------------------------------------\n\t\tmodaal_close : function() {\n\t\t\tvar self = this;\n\t\t\tvar modal_wrapper = $( '#' + self.scope.id );\n\n\t\t\t// CB: before_close\n\t\t\tself.options.before_close.call(self, modal_wrapper);\n\n\t\t\tif (self.xhr !== null){\n\t\t\t\tself.xhr.abort();\n\t\t\t\tself.xhr = null;\n\t\t\t}\n\n\t\t\t// Now we close the modal\n\t\t\tif (self.options.animation === 'none' ){\n\t\t\t\tmodal_wrapper.addClass('modaal-start_none');\n\t\t\t}\n\n\t\t\t// Close with fade\n\t\t\tif (self.options.animation === 'fade') {\n\t\t\t\tmodal_wrapper.addClass('modaal-start_fade');\n\t\t\t}\n\n\t\t\t// Close with slide up (using initial slide down)\n\t\t\tif (self.options.animation === 'slide-down') {\n\t\t\t\tmodal_wrapper.addClass('modaal-start_slide_down');\n\t\t\t}\n\n\t\t\t// CB: after_close and remove\n\t\t\tsetTimeout(function() {\n\t\t\t\t// clone inline content back to origin place\n\t\t\t\tif (self.options.type == 'inline') {\n\t\t\t\t\t$('#' + self.scope.id + ' .modaal-content-container').contents().detach().appendTo( self.scope.source )\n\t\t\t\t}\n\t\t\t\t// remove markup from dom\n\t\t\t\tmodal_wrapper.remove();\n\t\t\t\t// CB: after_close\n\t\t\t\tself.options.after_close.call(self);\n\t\t\t\t// scope is now closed\n\t\t\t\tself.scope.is_open = false;\n\n\t\t\t}, self.options.after_callback_delay);\n\n\t\t\t// Call overlay hide\n\t\t\tself.modaal_overlay('hide');\n\n\t\t\t// Roll back to last focus state before modal open. If was closed programmatically, this might not be set\n\t\t\tif (self.lastFocus != null) {\n\t\t\t\tself.lastFocus.focus();\n\t\t\t}\n\t\t},\n\n\t\t// Overlay control (accepts action for show or hide)\n\t\t// ----------------------------------------------------------------\n\t\tmodaal_overlay : function(action) {\n\t\t\tvar self = this;\n\n\t\t\tif (action == 'show') {\n\t\t\t\t// Modal is open so update scope\n\t\t\t\tself.scope.is_open = true;\n\n\t\t\t\t// set body to overflow hidden if background_scroll is false\n\t\t\t\tif (! self.options.background_scroll) {\n\t\t\t\t\tself.dom.addClass('modaal-noscroll');\n\t\t\t\t}\n\n\t\t\t\t// append modaal overlay\n\t\t\t\tif ($('#' + self.scope.id + '_overlay').length < 1) {\n\t\t\t\t\tself.dom.append('
');\n\t\t\t\t}\n\n\t\t\t\t// now show\n\t\t\t\t$('#' + self.scope.id + '_overlay').css('background', self.options.background).stop().animate({\n\t\t\t\t\topacity: self.options.overlay_opacity\n\t\t\t\t}, self.options.animation_speed, function(){\n\t\t\t\t\t// now open the modal\n\t\t\t\t\tself.modaal_open();\n\t\t\t\t});\n\n\t\t\t} else if (action == 'hide') {\n\n\t\t\t\t// now hide the overlay\n\t\t\t\t$('#' + self.scope.id + '_overlay').stop().animate({\n\t\t\t\t\topacity: 0\n\t\t\t\t}, self.options.animation_speed, function(){\n\t\t\t\t\t// remove overlay from dom\n\t\t\t\t\t$(this).remove();\n\n\t\t\t\t\t// remove body overflow lock\n\t\t\t\t\tself.dom.removeClass('modaal-noscroll');\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\n\t\t// Check if is touch\n\t\t// ----------------------------------------------------------------\n\t\tis_touch : function() {\n\t\t\treturn 'ontouchstart' in window || navigator.maxTouchPoints;\n\t\t}\n\t};\n\n\t// Define default object to store\n\tvar modaal_existing_selectors = [];\n\n\t// Declare the modaal jQuery method\n\t// ------------------------------------------------------------\n\t$.fn.modaal = function(options) {\n\t\treturn this.each(function (i) {\n\t\t\tvar existing_modaal = $(this).data('modaal');\n\n\t\t\tif ( existing_modaal ){\n\t\t\t\t// Checking for string value, used for methods\n\t\t\t\tif (typeof(options) == 'string'){\n\t\t\t\t\tswitch (options) {\n\t\t\t\t\t\tcase 'open':\n \t\t\t\t\t\t\t// create the modal\n \t\t\t\t\t\t\texisting_modaal.create_modaal(existing_modaal);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'close':\n\t\t\t\t\t\t\texisting_modaal.modaal_close();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Not a string, so let's setup the modal ready to use\n\t\t\t\tvar modaal = Object.create(Modaal);\n\t\t\t\tmodaal.init(options, this);\n\t\t\t\t$.data(this, \"modaal\", modaal);\n\n\t\t\t\t// push this select into existing selectors array which is referenced during modaal_dom_observer\n\t\t\t\tmodaal_existing_selectors.push({\n\t\t\t\t\t'element': $(this).attr('class'),\n\t\t\t\t\t'options': options\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t};\n\n\t// Default options\n\t// ------------------------------------------------------------\n\t$.fn.modaal.options = {\n\n\t\t//General\n\t\ttype: 'inline',\n\t\tcontent_source: null,\n\t\tanimation: 'fade',\n\t\tanimation_speed: 300,\n\t\tafter_callback_delay: 350,\n\t\tis_locked: false,\n\t\thide_close: false,\n\t\tbackground: '#000',\n\t\toverlay_opacity: '0.8',\n\t\toverlay_close: true,\n\t\taccessible_title: 'Dialog Window',\n\t\tstart_open: false,\n\t\tfullscreen: false,\n\t\tcustom_class: '',\n\t\tbackground_scroll: false,\n\t\tshould_open: true,\n\t\tclose_text: 'Close',\n\t\tclose_aria_label: 'Close (Press escape to close)',\n\t\twidth: null,\n\t\theight: null,\n\n\t\t//Events\n\t\tbefore_open: function(){},\n\t\tafter_open: function(){},\n\t\tbefore_close: function(){},\n\t\tafter_close: function(){},\n\t\tsource: function( element, src ){\n\t\t\treturn src;\n\t\t},\n\n\t\t//Confirm Modal\n\t\tconfirm_button_text: 'Confirm', // text on confirm button\n\t\tconfirm_cancel_button_text: 'Cancel',\n\t\tconfirm_title: 'Confirm Title', // title for confirm modal\n\t\tconfirm_content: '

This is the default confirm dialog content. Replace me through the options

', // html for confirm message\n\t\tconfirm_callback: function() {},\n\t\tconfirm_cancel_callback: function() {},\n\n\n\t\t//Gallery Modal\n\t\tgallery_active_class: 'gallery_active_item',\n\t\touter_controls:\tfalse,\n\t\tbefore_image_change: function( current_item, incoming_item ) {},\n\t\tafter_image_change: function( current_item ) {},\n\n\t\t//Ajax Modal\n\t\tloading_content: modaal_loading_spinner,\n\t\tloading_class: 'is_loading',\n\t\tajax_error_class: 'modaal-error',\n\t\tajax_success: function(){},\n\n\t\t//Instagram\n\t\tinstagram_id: null\n\t};\n\n\t// Check and Set Inline Options\n\t// ------------------------------------------------------------\n\tfunction modaal_inline_options(self) {\n\n\t\t// new empty options\n\t\tvar options = {};\n\t\tvar inline_options = false;\n\n\t\t// option: type\n\t\tif ( self.attr('data-modaal-type') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.type = self.attr('data-modaal-type');\n\t\t}\n\n\t\t// option: type\n\t\tif ( self.attr('data-modaal-content-source') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.content_source = self.attr('data-modaal-content-source');\n\t\t}\n\n\t\t// option: animation\n\t\tif ( self.attr('data-modaal-animation') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.animation = self.attr('data-modaal-animation');\n\t\t}\n\n\t\t// option: animation_speed\n\t\tif ( self.attr('data-modaal-animation-speed') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.animation_speed = self.attr('data-modaal-animation-speed');\n\t\t}\n\n\t\t// option: after_callback_delay\n\t\tif ( self.attr('data-modaal-after-callback-delay') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.after_callback_delay = self.attr('data-modaal-after-callback-delay');\n\t\t}\n\n\t\t// option: is_locked\n\t\tif ( self.attr('data-modaal-is-locked') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.is_locked = (self.attr('data-modaal-is-locked') === 'true' ? true : false);\n\t\t}\n\n\t\t// option: hide_close\n\t\tif ( self.attr('data-modaal-hide-close') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.hide_close = (self.attr('data-modaal-hide-close') === 'true' ? true : false);\n\t\t}\n\n\t\t// option: background\n\t\tif ( self.attr('data-modaal-background') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.background = self.attr('data-modaal-background');\n\t\t}\n\n\t\t// option: overlay_opacity\n\t\tif ( self.attr('data-modaal-overlay-opacity') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.overlay_opacity = self.attr('data-modaal-overlay-opacity');\n\t\t}\n\n\t\t// option: overlay_close\n\t\tif ( self.attr('data-modaal-overlay-close') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.overlay_close = (self.attr('data-modaal-overlay-close') === 'false' ? false : true);\n\t\t}\n\n\t\t// option: accessible_title\n\t\tif ( self.attr('data-modaal-accessible-title') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.accessible_title = self.attr('data-modaal-accessible-title');\n\t\t}\n\n\t\t// option: start_open\n\t\tif ( self.attr('data-modaal-start-open') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.start_open = (self.attr('data-modaal-start-open') === 'true' ? true : false);\n\t\t}\n\n\t\t// option: fullscreen\n\t\tif ( self.attr('data-modaal-fullscreen') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.fullscreen = (self.attr('data-modaal-fullscreen') === 'true' ? true : false);\n\t\t}\n\n\t\t// option: custom_class\n\t\tif ( self.attr('data-modaal-custom-class') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.custom_class = self.attr('data-modaal-custom-class');\n\t\t}\n\n\t\t// option: close_text\n\t\tif ( self.attr('data-modaal-close-text') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.close_text = self.attr('data-modaal-close-text');\n\t\t}\n\n\t\t// option: close_aria_label\n\t\tif ( self.attr('data-modaal-close-aria-label') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.close_aria_label = self.attr('data-modaal-close-aria-label');\n\t\t}\n\n\t\t// option: background_scroll\n\t\tif ( self.attr('data-modaal-background-scroll') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.background_scroll = (self.attr('data-modaal-background-scroll') === 'true' ? true : false);\n\t\t}\n\n\t\t// option: width\n\t\tif ( self.attr('data-modaal-width') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.width = parseInt( self.attr('data-modaal-width') );\n\t\t}\n\n\t\t// option: height\n\t\tif ( self.attr('data-modaal-height') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.height = parseInt( self.attr('data-modaal-height') );\n\t\t}\n\n\t\t// option: confirm_button_text\n\t\tif ( self.attr('data-modaal-confirm-button-text') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.confirm_button_text = self.attr('data-modaal-confirm-button-text');\n\t\t}\n\n\t\t// option: confirm_cancel_button_text\n\t\tif ( self.attr('data-modaal-confirm-cancel-button-text') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.confirm_cancel_button_text = self.attr('data-modaal-confirm-cancel-button-text');\n\t\t}\n\n\t\t// option: confirm_title\n\t\tif ( self.attr('data-modaal-confirm-title') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.confirm_title = self.attr('data-modaal-confirm-title');\n\t\t}\n\n\t\t// option: confirm_content\n\t\tif ( self.attr('data-modaal-confirm-content') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.confirm_content = self.attr('data-modaal-confirm-content');\n\t\t}\n\n\t\t// option: gallery_active_class\n\t\tif ( self.attr('data-modaal-gallery-active-class') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.gallery_active_class = self.attr('data-modaal-gallery-active-class');\n\t\t}\n\n\t\t// option: loading_content\n\t\tif ( self.attr('data-modaal-loading-content') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.loading_content = self.attr('data-modaal-loading-content');\n\t\t}\n\n\t\t// option: loading_class\n\t\tif ( self.attr('data-modaal-loading-class') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.loading_class = self.attr('data-modaal-loading-class');\n\t\t}\n\n\t\t// option: ajax_error_class\n\t\tif ( self.attr('data-modaal-ajax-error-class') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.ajax_error_class = self.attr('data-modaal-ajax-error-class');\n\t\t}\n\n\t\t// option: start_open\n\t\tif ( self.attr('data-modaal-instagram-id') ) {\n\t\t\tinline_options = true;\n\t\t\toptions.instagram_id = self.attr('data-modaal-instagram-id');\n\t\t}\n\n\t\t// now set it up for the trigger, but only if inline_options is true\n\t\tif ( inline_options ) {\n\t\t\tself.modaal(options);\n\t\t}\n\t};\n\n\t// On body load (or now, if already loaded), init any modaals defined inline\n\t// Ensure this is done after $.fn.modaal and default options are declared\n\t// ----------------------------------------------------------------\n\t$(function(){\n\n\t\tvar single_modaal = $('.modaal');\n\n\t\t// Check for existing modaal elements\n\t\tif ( single_modaal.length ) {\n\t\t\tsingle_modaal.each(function() {\n\t\t\t\tvar self = $(this);\n\t\t\t\tmodaal_inline_options(self);\n\t\t\t});\n\t\t}\n\n\t\t// Obvserve DOM mutations for newly added triggers\n\t\tvar modaal_dom_observer = new MutationObserver(function(mutations) {\n\t\t\tmutations.forEach(function(mutation) {\n\t\t\t\tif (mutation.addedNodes && mutation.addedNodes.length > 0) {\n\t\t\t\t\t// element added to DOM\n\t\t\t\t\tvar findElement = [].some.call(mutation.addedNodes, function(el) {\n\t\t\t\t\t\tvar elm = $(el);\n\t\t\t\t\t\tif ( elm.is('a') || elm.is('button') ) {\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tif ( elm.hasClass('modaal') ) {\n\t\t\t\t\t\t\t\t// is inline Modaal, initialise options\n\t\t\t\t\t\t\t\tmodaal_inline_options(elm);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// is not inline modaal. Check for existing selector\n\t\t\t\t\t\t\t\tmodaal_existing_selectors.forEach(function(modaalSelector) {\n\t\t\t\t\t\t\t\t\tif ( modaalSelector.element == elm.attr('class') ) {\n\t\t\t\t\t\t\t\t\t\t$(elm).modaal( modaalSelector.options );\n\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\tvar observer_config = {\n\t\t\tsubtree: true,\n\t\t\tattributes: true,\n\t\t\tchildList: true,\n\t\t\tcharacterData: true\n\t\t};\n\n\t\t// pass in the target node, as well as the observer options\n\t\tsetTimeout(function() {\n\t\t\tmodaal_dom_observer.observe(document.body, observer_config);\n\t\t}, 500);\n\n\t});\n\n} ( jQuery, window, document ) );","/**\n * Owl Carousel v2.3.4\n * Copyright 2013-2018 David Deutsch\n * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE\n */\n/**\n * Owl carousel\n * @version 2.3.4\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n * @todo Lazy Load Icon\n * @todo prevent animationend bubling\n * @todo itemsScaleUp\n * @todo Test Zepto\n * @todo stagePadding calculate wrong active classes\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates a carousel.\n\t * @class The Owl Carousel.\n\t * @public\n\t * @param {HTMLElement|jQuery} element - The element to create the carousel for.\n\t * @param {Object} [options] - The options\n\t */\n\tfunction Owl(element, options) {\n\n\t\t/**\n\t\t * Current settings for the carousel.\n\t\t * @public\n\t\t */\n\t\tthis.settings = null;\n\n\t\t/**\n\t\t * Current options set by the caller including defaults.\n\t\t * @public\n\t\t */\n\t\tthis.options = $.extend({}, Owl.Defaults, options);\n\n\t\t/**\n\t\t * Plugin element.\n\t\t * @public\n\t\t */\n\t\tthis.$element = $(element);\n\n\t\t/**\n\t\t * Proxied event handlers.\n\t\t * @protected\n\t\t */\n\t\tthis._handlers = {};\n\n\t\t/**\n\t\t * References to the running plugins of this carousel.\n\t\t * @protected\n\t\t */\n\t\tthis._plugins = {};\n\n\t\t/**\n\t\t * Currently suppressed events to prevent them from being retriggered.\n\t\t * @protected\n\t\t */\n\t\tthis._supress = {};\n\n\t\t/**\n\t\t * Absolute current position.\n\t\t * @protected\n\t\t */\n\t\tthis._current = null;\n\n\t\t/**\n\t\t * Animation speed in milliseconds.\n\t\t * @protected\n\t\t */\n\t\tthis._speed = null;\n\n\t\t/**\n\t\t * Coordinates of all items in pixel.\n\t\t * @todo The name of this member is missleading.\n\t\t * @protected\n\t\t */\n\t\tthis._coordinates = [];\n\n\t\t/**\n\t\t * Current breakpoint.\n\t\t * @todo Real media queries would be nice.\n\t\t * @protected\n\t\t */\n\t\tthis._breakpoint = null;\n\n\t\t/**\n\t\t * Current width of the plugin element.\n\t\t */\n\t\tthis._width = null;\n\n\t\t/**\n\t\t * All real items.\n\t\t * @protected\n\t\t */\n\t\tthis._items = [];\n\n\t\t/**\n\t\t * All cloned items.\n\t\t * @protected\n\t\t */\n\t\tthis._clones = [];\n\n\t\t/**\n\t\t * Merge values of all items.\n\t\t * @todo Maybe this could be part of a plugin.\n\t\t * @protected\n\t\t */\n\t\tthis._mergers = [];\n\n\t\t/**\n\t\t * Widths of all items.\n\t\t */\n\t\tthis._widths = [];\n\n\t\t/**\n\t\t * Invalidated parts within the update process.\n\t\t * @protected\n\t\t */\n\t\tthis._invalidated = {};\n\n\t\t/**\n\t\t * Ordered list of workers for the update process.\n\t\t * @protected\n\t\t */\n\t\tthis._pipe = [];\n\n\t\t/**\n\t\t * Current state information for the drag operation.\n\t\t * @todo #261\n\t\t * @protected\n\t\t */\n\t\tthis._drag = {\n\t\t\ttime: null,\n\t\t\ttarget: null,\n\t\t\tpointer: null,\n\t\t\tstage: {\n\t\t\t\tstart: null,\n\t\t\t\tcurrent: null\n\t\t\t},\n\t\t\tdirection: null\n\t\t};\n\n\t\t/**\n\t\t * Current state information and their tags.\n\t\t * @type {Object}\n\t\t * @protected\n\t\t */\n\t\tthis._states = {\n\t\t\tcurrent: {},\n\t\t\ttags: {\n\t\t\t\t'initializing': [ 'busy' ],\n\t\t\t\t'animating': [ 'busy' ],\n\t\t\t\t'dragging': [ 'interacting' ]\n\t\t\t}\n\t\t};\n\n\t\t$.each([ 'onResize', 'onThrottledResize' ], $.proxy(function(i, handler) {\n\t\t\tthis._handlers[handler] = $.proxy(this[handler], this);\n\t\t}, this));\n\n\t\t$.each(Owl.Plugins, $.proxy(function(key, plugin) {\n\t\t\tthis._plugins[key.charAt(0).toLowerCase() + key.slice(1)]\n\t\t\t\t= new plugin(this);\n\t\t}, this));\n\n\t\t$.each(Owl.Workers, $.proxy(function(priority, worker) {\n\t\t\tthis._pipe.push({\n\t\t\t\t'filter': worker.filter,\n\t\t\t\t'run': $.proxy(worker.run, this)\n\t\t\t});\n\t\t}, this));\n\n\t\tthis.setup();\n\t\tthis.initialize();\n\t}\n\n\t/**\n\t * Default options for the carousel.\n\t * @public\n\t */\n\tOwl.Defaults = {\n\t\titems: 3,\n\t\tloop: false,\n\t\tcenter: false,\n\t\trewind: false,\n\t\tcheckVisibility: true,\n\n\t\tmouseDrag: true,\n\t\ttouchDrag: true,\n\t\tpullDrag: true,\n\t\tfreeDrag: false,\n\n\t\tmargin: 0,\n\t\tstagePadding: 0,\n\n\t\tmerge: false,\n\t\tmergeFit: true,\n\t\tautoWidth: false,\n\n\t\tstartPosition: 0,\n\t\trtl: false,\n\n\t\tsmartSpeed: 250,\n\t\tfluidSpeed: false,\n\t\tdragEndSpeed: false,\n\n\t\tresponsive: {},\n\t\tresponsiveRefreshRate: 200,\n\t\tresponsiveBaseElement: window,\n\n\t\tfallbackEasing: 'swing',\n\t\tslideTransition: '',\n\n\t\tinfo: false,\n\n\t\tnestedItemSelector: false,\n\t\titemElement: 'div',\n\t\tstageElement: 'div',\n\n\t\trefreshClass: 'owl-refresh',\n\t\tloadedClass: 'owl-loaded',\n\t\tloadingClass: 'owl-loading',\n\t\trtlClass: 'owl-rtl',\n\t\tresponsiveClass: 'owl-responsive',\n\t\tdragClass: 'owl-drag',\n\t\titemClass: 'owl-item',\n\t\tstageClass: 'owl-stage',\n\t\tstageOuterClass: 'owl-stage-outer',\n\t\tgrabClass: 'owl-grab'\n\t};\n\n\t/**\n\t * Enumeration for width.\n\t * @public\n\t * @readonly\n\t * @enum {String}\n\t */\n\tOwl.Width = {\n\t\tDefault: 'default',\n\t\tInner: 'inner',\n\t\tOuter: 'outer'\n\t};\n\n\t/**\n\t * Enumeration for types.\n\t * @public\n\t * @readonly\n\t * @enum {String}\n\t */\n\tOwl.Type = {\n\t\tEvent: 'event',\n\t\tState: 'state'\n\t};\n\n\t/**\n\t * Contains all registered plugins.\n\t * @public\n\t */\n\tOwl.Plugins = {};\n\n\t/**\n\t * List of workers involved in the update process.\n\t */\n\tOwl.Workers = [ {\n\t\tfilter: [ 'width', 'settings' ],\n\t\trun: function() {\n\t\t\tthis._width = this.$element.width();\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tcache.current = this._items && this._items[this.relative(this._current)];\n\t\t}\n\t}, {\n\t\tfilter: [ 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tthis.$stage.children('.cloned').remove();\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar margin = this.settings.margin || '',\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\trtl = this.settings.rtl,\n\t\t\t\tcss = {\n\t\t\t\t\t'width': 'auto',\n\t\t\t\t\t'margin-left': rtl ? margin : '',\n\t\t\t\t\t'margin-right': rtl ? '' : margin\n\t\t\t\t};\n\n\t\t\t!grid && this.$stage.children().css(css);\n\n\t\t\tcache.css = css;\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar width = (this.width() / this.settings.items).toFixed(3) - this.settings.margin,\n\t\t\t\tmerge = null,\n\t\t\t\titerator = this._items.length,\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\twidths = [];\n\n\t\t\tcache.items = {\n\t\t\t\tmerge: false,\n\t\t\t\twidth: width\n\t\t\t};\n\n\t\t\twhile (iterator--) {\n\t\t\t\tmerge = this._mergers[iterator];\n\t\t\t\tmerge = this.settings.mergeFit && Math.min(merge, this.settings.items) || merge;\n\n\t\t\t\tcache.items.merge = merge > 1 || cache.items.merge;\n\n\t\t\t\twidths[iterator] = !grid ? this._items[iterator].width() : width * merge;\n\t\t\t}\n\n\t\t\tthis._widths = widths;\n\t\t}\n\t}, {\n\t\tfilter: [ 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar clones = [],\n\t\t\t\titems = this._items,\n\t\t\t\tsettings = this.settings,\n\t\t\t\t// TODO: Should be computed from number of min width items in stage\n\t\t\t\tview = Math.max(settings.items * 2, 4),\n\t\t\t\tsize = Math.ceil(items.length / 2) * 2,\n\t\t\t\trepeat = settings.loop && items.length ? settings.rewind ? view : Math.max(view, size) : 0,\n\t\t\t\tappend = '',\n\t\t\t\tprepend = '';\n\n\t\t\trepeat /= 2;\n\n\t\t\twhile (repeat > 0) {\n\t\t\t\t// Switch to only using appended clones\n\t\t\t\tclones.push(this.normalize(clones.length / 2, true));\n\t\t\t\tappend = append + items[clones[clones.length - 1]][0].outerHTML;\n\t\t\t\tclones.push(this.normalize(items.length - 1 - (clones.length - 1) / 2, true));\n\t\t\t\tprepend = items[clones[clones.length - 1]][0].outerHTML + prepend;\n\t\t\t\trepeat -= 1;\n\t\t\t}\n\n\t\t\tthis._clones = clones;\n\n\t\t\t$(append).addClass('cloned').appendTo(this.$stage);\n\t\t\t$(prepend).addClass('cloned').prependTo(this.$stage);\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar rtl = this.settings.rtl ? 1 : -1,\n\t\t\t\tsize = this._clones.length + this._items.length,\n\t\t\t\titerator = -1,\n\t\t\t\tprevious = 0,\n\t\t\t\tcurrent = 0,\n\t\t\t\tcoordinates = [];\n\n\t\t\twhile (++iterator < size) {\n\t\t\t\tprevious = coordinates[iterator - 1] || 0;\n\t\t\t\tcurrent = this._widths[this.relative(iterator)] + this.settings.margin;\n\t\t\t\tcoordinates.push(previous + current * rtl);\n\t\t\t}\n\n\t\t\tthis._coordinates = coordinates;\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar padding = this.settings.stagePadding,\n\t\t\t\tcoordinates = this._coordinates,\n\t\t\t\tcss = {\n\t\t\t\t\t'width': Math.ceil(Math.abs(coordinates[coordinates.length - 1])) + padding * 2,\n\t\t\t\t\t'padding-left': padding || '',\n\t\t\t\t\t'padding-right': padding || ''\n\t\t\t\t};\n\n\t\t\tthis.$stage.css(css);\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar iterator = this._coordinates.length,\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\titems = this.$stage.children();\n\n\t\t\tif (grid && cache.items.merge) {\n\t\t\t\twhile (iterator--) {\n\t\t\t\t\tcache.css.width = this._widths[this.relative(iterator)];\n\t\t\t\t\titems.eq(iterator).css(cache.css);\n\t\t\t\t}\n\t\t\t} else if (grid) {\n\t\t\t\tcache.css.width = cache.items.width;\n\t\t\t\titems.css(cache.css);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tfilter: [ 'items' ],\n\t\trun: function() {\n\t\t\tthis._coordinates.length < 1 && this.$stage.removeAttr('style');\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tcache.current = cache.current ? this.$stage.children().index(cache.current) : 0;\n\t\t\tcache.current = Math.max(this.minimum(), Math.min(this.maximum(), cache.current));\n\t\t\tthis.reset(cache.current);\n\t\t}\n\t}, {\n\t\tfilter: [ 'position' ],\n\t\trun: function() {\n\t\t\tthis.animate(this.coordinates(this._current));\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'position', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar rtl = this.settings.rtl ? 1 : -1,\n\t\t\t\tpadding = this.settings.stagePadding * 2,\n\t\t\t\tbegin = this.coordinates(this.current()) + padding,\n\t\t\t\tend = begin + this.width() * rtl,\n\t\t\t\tinner, outer, matches = [], i, n;\n\n\t\t\tfor (i = 0, n = this._coordinates.length; i < n; i++) {\n\t\t\t\tinner = this._coordinates[i - 1] || 0;\n\t\t\t\touter = Math.abs(this._coordinates[i]) + padding * rtl;\n\n\t\t\t\tif ((this.op(inner, '<=', begin) && (this.op(inner, '>', end)))\n\t\t\t\t\t|| (this.op(outer, '<', begin) && this.op(outer, '>', end))) {\n\t\t\t\t\tmatches.push(i);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.$stage.children('.active').removeClass('active');\n\t\t\tthis.$stage.children(':eq(' + matches.join('), :eq(') + ')').addClass('active');\n\n\t\t\tthis.$stage.children('.center').removeClass('center');\n\t\t\tif (this.settings.center) {\n\t\t\t\tthis.$stage.children().eq(this.current()).addClass('center');\n\t\t\t}\n\t\t}\n\t} ];\n\n\t/**\n\t * Create the stage DOM element\n\t */\n\tOwl.prototype.initializeStage = function() {\n\t\tthis.$stage = this.$element.find('.' + this.settings.stageClass);\n\n\t\t// if the stage is already in the DOM, grab it and skip stage initialization\n\t\tif (this.$stage.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.$element.addClass(this.options.loadingClass);\n\n\t\t// create stage\n\t\tthis.$stage = $('<' + this.settings.stageElement + '>', {\n\t\t\t\"class\": this.settings.stageClass\n\t\t}).wrap( $( '
', {\n\t\t\t\"class\": this.settings.stageOuterClass\n\t\t}));\n\n\t\t// append stage\n\t\tthis.$element.append(this.$stage.parent());\n\t};\n\n\t/**\n\t * Create item DOM elements\n\t */\n\tOwl.prototype.initializeItems = function() {\n\t\tvar $items = this.$element.find('.owl-item');\n\n\t\t// if the items are already in the DOM, grab them and skip item initialization\n\t\tif ($items.length) {\n\t\t\tthis._items = $items.get().map(function(item) {\n\t\t\t\treturn $(item);\n\t\t\t});\n\n\t\t\tthis._mergers = this._items.map(function() {\n\t\t\t\treturn 1;\n\t\t\t});\n\n\t\t\tthis.refresh();\n\n\t\t\treturn;\n\t\t}\n\n\t\t// append content\n\t\tthis.replace(this.$element.children().not(this.$stage.parent()));\n\n\t\t// check visibility\n\t\tif (this.isVisible()) {\n\t\t\t// update view\n\t\t\tthis.refresh();\n\t\t} else {\n\t\t\t// invalidate width\n\t\t\tthis.invalidate('width');\n\t\t}\n\n\t\tthis.$element\n\t\t\t.removeClass(this.options.loadingClass)\n\t\t\t.addClass(this.options.loadedClass);\n\t};\n\n\t/**\n\t * Initializes the carousel.\n\t * @protected\n\t */\n\tOwl.prototype.initialize = function() {\n\t\tthis.enter('initializing');\n\t\tthis.trigger('initialize');\n\n\t\tthis.$element.toggleClass(this.settings.rtlClass, this.settings.rtl);\n\n\t\tif (this.settings.autoWidth && !this.is('pre-loading')) {\n\t\t\tvar imgs, nestedSelector, width;\n\t\t\timgs = this.$element.find('img');\n\t\t\tnestedSelector = this.settings.nestedItemSelector ? '.' + this.settings.nestedItemSelector : undefined;\n\t\t\twidth = this.$element.children(nestedSelector).width();\n\n\t\t\tif (imgs.length && width <= 0) {\n\t\t\t\tthis.preloadAutoWidthImages(imgs);\n\t\t\t}\n\t\t}\n\n\t\tthis.initializeStage();\n\t\tthis.initializeItems();\n\n\t\t// register event handlers\n\t\tthis.registerEventHandlers();\n\n\t\tthis.leave('initializing');\n\t\tthis.trigger('initialized');\n\t};\n\n\t/**\n\t * @returns {Boolean} visibility of $element\n\t * if you know the carousel will always be visible you can set `checkVisibility` to `false` to\n\t * prevent the expensive browser layout forced reflow the $element.is(':visible') does\n\t */\n\tOwl.prototype.isVisible = function() {\n\t\treturn this.settings.checkVisibility\n\t\t\t? this.$element.is(':visible')\n\t\t\t: true;\n\t};\n\n\t/**\n\t * Setups the current settings.\n\t * @todo Remove responsive classes. Why should adaptive designs be brought into IE8?\n\t * @todo Support for media queries by using `matchMedia` would be nice.\n\t * @public\n\t */\n\tOwl.prototype.setup = function() {\n\t\tvar viewport = this.viewport(),\n\t\t\toverwrites = this.options.responsive,\n\t\t\tmatch = -1,\n\t\t\tsettings = null;\n\n\t\tif (!overwrites) {\n\t\t\tsettings = $.extend({}, this.options);\n\t\t} else {\n\t\t\t$.each(overwrites, function(breakpoint) {\n\t\t\t\tif (breakpoint <= viewport && breakpoint > match) {\n\t\t\t\t\tmatch = Number(breakpoint);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tsettings = $.extend({}, this.options, overwrites[match]);\n\t\t\tif (typeof settings.stagePadding === 'function') {\n\t\t\t\tsettings.stagePadding = settings.stagePadding();\n\t\t\t}\n\t\t\tdelete settings.responsive;\n\n\t\t\t// responsive class\n\t\t\tif (settings.responsiveClass) {\n\t\t\t\tthis.$element.attr('class',\n\t\t\t\t\tthis.$element.attr('class').replace(new RegExp('(' + this.options.responsiveClass + '-)\\\\S+\\\\s', 'g'), '$1' + match)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tthis.trigger('change', { property: { name: 'settings', value: settings } });\n\t\tthis._breakpoint = match;\n\t\tthis.settings = settings;\n\t\tthis.invalidate('settings');\n\t\tthis.trigger('changed', { property: { name: 'settings', value: this.settings } });\n\t};\n\n\t/**\n\t * Updates option logic if necessery.\n\t * @protected\n\t */\n\tOwl.prototype.optionsLogic = function() {\n\t\tif (this.settings.autoWidth) {\n\t\t\tthis.settings.stagePadding = false;\n\t\t\tthis.settings.merge = false;\n\t\t}\n\t};\n\n\t/**\n\t * Prepares an item before add.\n\t * @todo Rename event parameter `content` to `item`.\n\t * @protected\n\t * @returns {jQuery|HTMLElement} - The item container.\n\t */\n\tOwl.prototype.prepare = function(item) {\n\t\tvar event = this.trigger('prepare', { content: item });\n\n\t\tif (!event.data) {\n\t\t\tevent.data = $('<' + this.settings.itemElement + '/>')\n\t\t\t\t.addClass(this.options.itemClass).append(item)\n\t\t}\n\n\t\tthis.trigger('prepared', { content: event.data });\n\n\t\treturn event.data;\n\t};\n\n\t/**\n\t * Updates the view.\n\t * @public\n\t */\n\tOwl.prototype.update = function() {\n\t\tvar i = 0,\n\t\t\tn = this._pipe.length,\n\t\t\tfilter = $.proxy(function(p) { return this[p] }, this._invalidated),\n\t\t\tcache = {};\n\n\t\twhile (i < n) {\n\t\t\tif (this._invalidated.all || $.grep(this._pipe[i].filter, filter).length > 0) {\n\t\t\t\tthis._pipe[i].run(cache);\n\t\t\t}\n\t\t\ti++;\n\t\t}\n\n\t\tthis._invalidated = {};\n\n\t\t!this.is('valid') && this.enter('valid');\n\t};\n\n\t/**\n\t * Gets the width of the view.\n\t * @public\n\t * @param {Owl.Width} [dimension=Owl.Width.Default] - The dimension to return.\n\t * @returns {Number} - The width of the view in pixel.\n\t */\n\tOwl.prototype.width = function(dimension) {\n\t\tdimension = dimension || Owl.Width.Default;\n\t\tswitch (dimension) {\n\t\t\tcase Owl.Width.Inner:\n\t\t\tcase Owl.Width.Outer:\n\t\t\t\treturn this._width;\n\t\t\tdefault:\n\t\t\t\treturn this._width - this.settings.stagePadding * 2 + this.settings.margin;\n\t\t}\n\t};\n\n\t/**\n\t * Refreshes the carousel primarily for adaptive purposes.\n\t * @public\n\t */\n\tOwl.prototype.refresh = function() {\n\t\tthis.enter('refreshing');\n\t\tthis.trigger('refresh');\n\n\t\tthis.setup();\n\n\t\tthis.optionsLogic();\n\n\t\tthis.$element.addClass(this.options.refreshClass);\n\n\t\tthis.update();\n\n\t\tthis.$element.removeClass(this.options.refreshClass);\n\n\t\tthis.leave('refreshing');\n\t\tthis.trigger('refreshed');\n\t};\n\n\t/**\n\t * Checks window `resize` event.\n\t * @protected\n\t */\n\tOwl.prototype.onThrottledResize = function() {\n\t\twindow.clearTimeout(this.resizeTimer);\n\t\tthis.resizeTimer = window.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate);\n\t};\n\n\t/**\n\t * Checks window `resize` event.\n\t * @protected\n\t */\n\tOwl.prototype.onResize = function() {\n\t\tif (!this._items.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (this._width === this.$element.width()) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (!this.isVisible()) {\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.enter('resizing');\n\n\t\tif (this.trigger('resize').isDefaultPrevented()) {\n\t\t\tthis.leave('resizing');\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.invalidate('width');\n\n\t\tthis.refresh();\n\n\t\tthis.leave('resizing');\n\t\tthis.trigger('resized');\n\t};\n\n\t/**\n\t * Registers event handlers.\n\t * @todo Check `msPointerEnabled`\n\t * @todo #261\n\t * @protected\n\t */\n\tOwl.prototype.registerEventHandlers = function() {\n\t\tif ($.support.transition) {\n\t\t\tthis.$stage.on($.support.transition.end + '.owl.core', $.proxy(this.onTransitionEnd, this));\n\t\t}\n\n\t\tif (this.settings.responsive !== false) {\n\t\t\tthis.on(window, 'resize', this._handlers.onThrottledResize);\n\t\t}\n\n\t\tif (this.settings.mouseDrag) {\n\t\t\tthis.$element.addClass(this.options.dragClass);\n\t\t\tthis.$stage.on('mousedown.owl.core', $.proxy(this.onDragStart, this));\n\t\t\tthis.$stage.on('dragstart.owl.core selectstart.owl.core', function() { return false });\n\t\t}\n\n\t\tif (this.settings.touchDrag){\n\t\t\tthis.$stage.on('touchstart.owl.core', $.proxy(this.onDragStart, this));\n\t\t\tthis.$stage.on('touchcancel.owl.core', $.proxy(this.onDragEnd, this));\n\t\t}\n\t};\n\n\t/**\n\t * Handles `touchstart` and `mousedown` events.\n\t * @todo Horizontal swipe threshold as option\n\t * @todo #261\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragStart = function(event) {\n\t\tvar stage = null;\n\n\t\tif (event.which === 3) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ($.support.transform) {\n\t\t\tstage = this.$stage.css('transform').replace(/.*\\(|\\)| /g, '').split(',');\n\t\t\tstage = {\n\t\t\t\tx: stage[stage.length === 16 ? 12 : 4],\n\t\t\t\ty: stage[stage.length === 16 ? 13 : 5]\n\t\t\t};\n\t\t} else {\n\t\t\tstage = this.$stage.position();\n\t\t\tstage = {\n\t\t\t\tx: this.settings.rtl ?\n\t\t\t\t\tstage.left + this.$stage.width() - this.width() + this.settings.margin :\n\t\t\t\t\tstage.left,\n\t\t\t\ty: stage.top\n\t\t\t};\n\t\t}\n\n\t\tif (this.is('animating')) {\n\t\t\t$.support.transform ? this.animate(stage.x) : this.$stage.stop()\n\t\t\tthis.invalidate('position');\n\t\t}\n\n\t\tthis.$element.toggleClass(this.options.grabClass, event.type === 'mousedown');\n\n\t\tthis.speed(0);\n\n\t\tthis._drag.time = new Date().getTime();\n\t\tthis._drag.target = $(event.target);\n\t\tthis._drag.stage.start = stage;\n\t\tthis._drag.stage.current = stage;\n\t\tthis._drag.pointer = this.pointer(event);\n\n\t\t$(document).on('mouseup.owl.core touchend.owl.core', $.proxy(this.onDragEnd, this));\n\n\t\t$(document).one('mousemove.owl.core touchmove.owl.core', $.proxy(function(event) {\n\t\t\tvar delta = this.difference(this._drag.pointer, this.pointer(event));\n\n\t\t\t$(document).on('mousemove.owl.core touchmove.owl.core', $.proxy(this.onDragMove, this));\n\n\t\t\tif (Math.abs(delta.x) < Math.abs(delta.y) && this.is('valid')) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\n\t\t\tthis.enter('dragging');\n\t\t\tthis.trigger('drag');\n\t\t}, this));\n\t};\n\n\t/**\n\t * Handles the `touchmove` and `mousemove` events.\n\t * @todo #261\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragMove = function(event) {\n\t\tvar minimum = null,\n\t\t\tmaximum = null,\n\t\t\tpull = null,\n\t\t\tdelta = this.difference(this._drag.pointer, this.pointer(event)),\n\t\t\tstage = this.difference(this._drag.stage.start, delta);\n\n\t\tif (!this.is('dragging')) {\n\t\t\treturn;\n\t\t}\n\n\t\tevent.preventDefault();\n\n\t\tif (this.settings.loop) {\n\t\t\tminimum = this.coordinates(this.minimum());\n\t\t\tmaximum = this.coordinates(this.maximum() + 1) - minimum;\n\t\t\tstage.x = (((stage.x - minimum) % maximum + maximum) % maximum) + minimum;\n\t\t} else {\n\t\t\tminimum = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum());\n\t\t\tmaximum = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum());\n\t\t\tpull = this.settings.pullDrag ? -1 * delta.x / 5 : 0;\n\t\t\tstage.x = Math.max(Math.min(stage.x, minimum + pull), maximum + pull);\n\t\t}\n\n\t\tthis._drag.stage.current = stage;\n\n\t\tthis.animate(stage.x);\n\t};\n\n\t/**\n\t * Handles the `touchend` and `mouseup` events.\n\t * @todo #261\n\t * @todo Threshold for click event\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragEnd = function(event) {\n\t\tvar delta = this.difference(this._drag.pointer, this.pointer(event)),\n\t\t\tstage = this._drag.stage.current,\n\t\t\tdirection = delta.x > 0 ^ this.settings.rtl ? 'left' : 'right';\n\n\t\t$(document).off('.owl.core');\n\n\t\tthis.$element.removeClass(this.options.grabClass);\n\n\t\tif (delta.x !== 0 && this.is('dragging') || !this.is('valid')) {\n\t\t\tthis.speed(this.settings.dragEndSpeed || this.settings.smartSpeed);\n\t\t\tthis.current(this.closest(stage.x, delta.x !== 0 ? direction : this._drag.direction));\n\t\t\tthis.invalidate('position');\n\t\t\tthis.update();\n\n\t\t\tthis._drag.direction = direction;\n\n\t\t\tif (Math.abs(delta.x) > 3 || new Date().getTime() - this._drag.time > 300) {\n\t\t\t\tthis._drag.target.one('click.owl.core', function() { return false; });\n\t\t\t}\n\t\t}\n\n\t\tif (!this.is('dragging')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.leave('dragging');\n\t\tthis.trigger('dragged');\n\t};\n\n\t/**\n\t * Gets absolute position of the closest item for a coordinate.\n\t * @todo Setting `freeDrag` makes `closest` not reusable. See #165.\n\t * @protected\n\t * @param {Number} coordinate - The coordinate in pixel.\n\t * @param {String} direction - The direction to check for the closest item. Ether `left` or `right`.\n\t * @return {Number} - The absolute position of the closest item.\n\t */\n\tOwl.prototype.closest = function(coordinate, direction) {\n\t\tvar position = -1,\n\t\t\tpull = 30,\n\t\t\twidth = this.width(),\n\t\t\tcoordinates = this.coordinates();\n\n\t\tif (!this.settings.freeDrag) {\n\t\t\t// check closest item\n\t\t\t$.each(coordinates, $.proxy(function(index, value) {\n\t\t\t\t// on a left pull, check on current index\n\t\t\t\tif (direction === 'left' && coordinate > value - pull && coordinate < value + pull) {\n\t\t\t\t\tposition = index;\n\t\t\t\t// on a right pull, check on previous index\n\t\t\t\t// to do so, subtract width from value and set position = index + 1\n\t\t\t\t} else if (direction === 'right' && coordinate > value - width - pull && coordinate < value - width + pull) {\n\t\t\t\t\tposition = index + 1;\n\t\t\t\t} else if (this.op(coordinate, '<', value)\n\t\t\t\t\t&& this.op(coordinate, '>', coordinates[index + 1] !== undefined ? coordinates[index + 1] : value - width)) {\n\t\t\t\t\tposition = direction === 'left' ? index + 1 : index;\n\t\t\t\t}\n\t\t\t\treturn position === -1;\n\t\t\t}, this));\n\t\t}\n\n\t\tif (!this.settings.loop) {\n\t\t\t// non loop boundries\n\t\t\tif (this.op(coordinate, '>', coordinates[this.minimum()])) {\n\t\t\t\tposition = coordinate = this.minimum();\n\t\t\t} else if (this.op(coordinate, '<', coordinates[this.maximum()])) {\n\t\t\t\tposition = coordinate = this.maximum();\n\t\t\t}\n\t\t}\n\n\t\treturn position;\n\t};\n\n\t/**\n\t * Animates the stage.\n\t * @todo #270\n\t * @public\n\t * @param {Number} coordinate - The coordinate in pixels.\n\t */\n\tOwl.prototype.animate = function(coordinate) {\n\t\tvar animate = this.speed() > 0;\n\n\t\tthis.is('animating') && this.onTransitionEnd();\n\n\t\tif (animate) {\n\t\t\tthis.enter('animating');\n\t\t\tthis.trigger('translate');\n\t\t}\n\n\t\tif ($.support.transform3d && $.support.transition) {\n\t\t\tthis.$stage.css({\n\t\t\t\ttransform: 'translate3d(' + coordinate + 'px,0px,0px)',\n\t\t\t\ttransition: (this.speed() / 1000) + 's' + (\n\t\t\t\t\tthis.settings.slideTransition ? ' ' + this.settings.slideTransition : ''\n\t\t\t\t)\n\t\t\t});\n\t\t} else if (animate) {\n\t\t\tthis.$stage.animate({\n\t\t\t\tleft: coordinate + 'px'\n\t\t\t}, this.speed(), this.settings.fallbackEasing, $.proxy(this.onTransitionEnd, this));\n\t\t} else {\n\t\t\tthis.$stage.css({\n\t\t\t\tleft: coordinate + 'px'\n\t\t\t});\n\t\t}\n\t};\n\n\t/**\n\t * Checks whether the carousel is in a specific state or not.\n\t * @param {String} state - The state to check.\n\t * @returns {Boolean} - The flag which indicates if the carousel is busy.\n\t */\n\tOwl.prototype.is = function(state) {\n\t\treturn this._states.current[state] && this._states.current[state] > 0;\n\t};\n\n\t/**\n\t * Sets the absolute position of the current item.\n\t * @public\n\t * @param {Number} [position] - The new absolute position or nothing to leave it unchanged.\n\t * @returns {Number} - The absolute position of the current item.\n\t */\n\tOwl.prototype.current = function(position) {\n\t\tif (position === undefined) {\n\t\t\treturn this._current;\n\t\t}\n\n\t\tif (this._items.length === 0) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tposition = this.normalize(position);\n\n\t\tif (this._current !== position) {\n\t\t\tvar event = this.trigger('change', { property: { name: 'position', value: position } });\n\n\t\t\tif (event.data !== undefined) {\n\t\t\t\tposition = this.normalize(event.data);\n\t\t\t}\n\n\t\t\tthis._current = position;\n\n\t\t\tthis.invalidate('position');\n\n\t\t\tthis.trigger('changed', { property: { name: 'position', value: this._current } });\n\t\t}\n\n\t\treturn this._current;\n\t};\n\n\t/**\n\t * Invalidates the given part of the update routine.\n\t * @param {String} [part] - The part to invalidate.\n\t * @returns {Array.} - The invalidated parts.\n\t */\n\tOwl.prototype.invalidate = function(part) {\n\t\tif ($.type(part) === 'string') {\n\t\t\tthis._invalidated[part] = true;\n\t\t\tthis.is('valid') && this.leave('valid');\n\t\t}\n\t\treturn $.map(this._invalidated, function(v, i) { return i });\n\t};\n\n\t/**\n\t * Resets the absolute position of the current item.\n\t * @public\n\t * @param {Number} position - The absolute position of the new item.\n\t */\n\tOwl.prototype.reset = function(position) {\n\t\tposition = this.normalize(position);\n\n\t\tif (position === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._speed = 0;\n\t\tthis._current = position;\n\n\t\tthis.suppress([ 'translate', 'translated' ]);\n\n\t\tthis.animate(this.coordinates(position));\n\n\t\tthis.release([ 'translate', 'translated' ]);\n\t};\n\n\t/**\n\t * Normalizes an absolute or a relative position of an item.\n\t * @public\n\t * @param {Number} position - The absolute or relative position to normalize.\n\t * @param {Boolean} [relative=false] - Whether the given position is relative or not.\n\t * @returns {Number} - The normalized position.\n\t */\n\tOwl.prototype.normalize = function(position, relative) {\n\t\tvar n = this._items.length,\n\t\t\tm = relative ? 0 : this._clones.length;\n\n\t\tif (!this.isNumeric(position) || n < 1) {\n\t\t\tposition = undefined;\n\t\t} else if (position < 0 || position >= n + m) {\n\t\t\tposition = ((position - m / 2) % n + n) % n + m / 2;\n\t\t}\n\n\t\treturn position;\n\t};\n\n\t/**\n\t * Converts an absolute position of an item into a relative one.\n\t * @public\n\t * @param {Number} position - The absolute position to convert.\n\t * @returns {Number} - The converted position.\n\t */\n\tOwl.prototype.relative = function(position) {\n\t\tposition -= this._clones.length / 2;\n\t\treturn this.normalize(position, true);\n\t};\n\n\t/**\n\t * Gets the maximum position for the current item.\n\t * @public\n\t * @param {Boolean} [relative=false] - Whether to return an absolute position or a relative position.\n\t * @returns {Number}\n\t */\n\tOwl.prototype.maximum = function(relative) {\n\t\tvar settings = this.settings,\n\t\t\tmaximum = this._coordinates.length,\n\t\t\titerator,\n\t\t\treciprocalItemsWidth,\n\t\t\telementWidth;\n\n\t\tif (settings.loop) {\n\t\t\tmaximum = this._clones.length / 2 + this._items.length - 1;\n\t\t} else if (settings.autoWidth || settings.merge) {\n\t\t\titerator = this._items.length;\n\t\t\tif (iterator) {\n\t\t\t\treciprocalItemsWidth = this._items[--iterator].width();\n\t\t\t\telementWidth = this.$element.width();\n\t\t\t\twhile (iterator--) {\n\t\t\t\t\treciprocalItemsWidth += this._items[iterator].width() + this.settings.margin;\n\t\t\t\t\tif (reciprocalItemsWidth > elementWidth) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tmaximum = iterator + 1;\n\t\t} else if (settings.center) {\n\t\t\tmaximum = this._items.length - 1;\n\t\t} else {\n\t\t\tmaximum = this._items.length - settings.items;\n\t\t}\n\n\t\tif (relative) {\n\t\t\tmaximum -= this._clones.length / 2;\n\t\t}\n\n\t\treturn Math.max(maximum, 0);\n\t};\n\n\t/**\n\t * Gets the minimum position for the current item.\n\t * @public\n\t * @param {Boolean} [relative=false] - Whether to return an absolute position or a relative position.\n\t * @returns {Number}\n\t */\n\tOwl.prototype.minimum = function(relative) {\n\t\treturn relative ? 0 : this._clones.length / 2;\n\t};\n\n\t/**\n\t * Gets an item at the specified relative position.\n\t * @public\n\t * @param {Number} [position] - The relative position of the item.\n\t * @return {jQuery|Array.} - The item at the given position or all items if no position was given.\n\t */\n\tOwl.prototype.items = function(position) {\n\t\tif (position === undefined) {\n\t\t\treturn this._items.slice();\n\t\t}\n\n\t\tposition = this.normalize(position, true);\n\t\treturn this._items[position];\n\t};\n\n\t/**\n\t * Gets an item at the specified relative position.\n\t * @public\n\t * @param {Number} [position] - The relative position of the item.\n\t * @return {jQuery|Array.} - The item at the given position or all items if no position was given.\n\t */\n\tOwl.prototype.mergers = function(position) {\n\t\tif (position === undefined) {\n\t\t\treturn this._mergers.slice();\n\t\t}\n\n\t\tposition = this.normalize(position, true);\n\t\treturn this._mergers[position];\n\t};\n\n\t/**\n\t * Gets the absolute positions of clones for an item.\n\t * @public\n\t * @param {Number} [position] - The relative position of the item.\n\t * @returns {Array.} - The absolute positions of clones for the item or all if no position was given.\n\t */\n\tOwl.prototype.clones = function(position) {\n\t\tvar odd = this._clones.length / 2,\n\t\t\teven = odd + this._items.length,\n\t\t\tmap = function(index) { return index % 2 === 0 ? even + index / 2 : odd - (index + 1) / 2 };\n\n\t\tif (position === undefined) {\n\t\t\treturn $.map(this._clones, function(v, i) { return map(i) });\n\t\t}\n\n\t\treturn $.map(this._clones, function(v, i) { return v === position ? map(i) : null });\n\t};\n\n\t/**\n\t * Sets the current animation speed.\n\t * @public\n\t * @param {Number} [speed] - The animation speed in milliseconds or nothing to leave it unchanged.\n\t * @returns {Number} - The current animation speed in milliseconds.\n\t */\n\tOwl.prototype.speed = function(speed) {\n\t\tif (speed !== undefined) {\n\t\t\tthis._speed = speed;\n\t\t}\n\n\t\treturn this._speed;\n\t};\n\n\t/**\n\t * Gets the coordinate of an item.\n\t * @todo The name of this method is missleanding.\n\t * @public\n\t * @param {Number} position - The absolute position of the item within `minimum()` and `maximum()`.\n\t * @returns {Number|Array.} - The coordinate of the item in pixel or all coordinates.\n\t */\n\tOwl.prototype.coordinates = function(position) {\n\t\tvar multiplier = 1,\n\t\t\tnewPosition = position - 1,\n\t\t\tcoordinate;\n\n\t\tif (position === undefined) {\n\t\t\treturn $.map(this._coordinates, $.proxy(function(coordinate, index) {\n\t\t\t\treturn this.coordinates(index);\n\t\t\t}, this));\n\t\t}\n\n\t\tif (this.settings.center) {\n\t\t\tif (this.settings.rtl) {\n\t\t\t\tmultiplier = -1;\n\t\t\t\tnewPosition = position + 1;\n\t\t\t}\n\n\t\t\tcoordinate = this._coordinates[position];\n\t\t\tcoordinate += (this.width() - coordinate + (this._coordinates[newPosition] || 0)) / 2 * multiplier;\n\t\t} else {\n\t\t\tcoordinate = this._coordinates[newPosition] || 0;\n\t\t}\n\n\t\tcoordinate = Math.ceil(coordinate);\n\n\t\treturn coordinate;\n\t};\n\n\t/**\n\t * Calculates the speed for a translation.\n\t * @protected\n\t * @param {Number} from - The absolute position of the start item.\n\t * @param {Number} to - The absolute position of the target item.\n\t * @param {Number} [factor=undefined] - The time factor in milliseconds.\n\t * @returns {Number} - The time in milliseconds for the translation.\n\t */\n\tOwl.prototype.duration = function(from, to, factor) {\n\t\tif (factor === 0) {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn Math.min(Math.max(Math.abs(to - from), 1), 6) * Math.abs((factor || this.settings.smartSpeed));\n\t};\n\n\t/**\n\t * Slides to the specified item.\n\t * @public\n\t * @param {Number} position - The position of the item.\n\t * @param {Number} [speed] - The time in milliseconds for the transition.\n\t */\n\tOwl.prototype.to = function(position, speed) {\n\t\tvar current = this.current(),\n\t\t\trevert = null,\n\t\t\tdistance = position - this.relative(current),\n\t\t\tdirection = (distance > 0) - (distance < 0),\n\t\t\titems = this._items.length,\n\t\t\tminimum = this.minimum(),\n\t\t\tmaximum = this.maximum();\n\n\t\tif (this.settings.loop) {\n\t\t\tif (!this.settings.rewind && Math.abs(distance) > items / 2) {\n\t\t\t\tdistance += direction * -1 * items;\n\t\t\t}\n\n\t\t\tposition = current + distance;\n\t\t\trevert = ((position - minimum) % items + items) % items + minimum;\n\n\t\t\tif (revert !== position && revert - distance <= maximum && revert - distance > 0) {\n\t\t\t\tcurrent = revert - distance;\n\t\t\t\tposition = revert;\n\t\t\t\tthis.reset(current);\n\t\t\t}\n\t\t} else if (this.settings.rewind) {\n\t\t\tmaximum += 1;\n\t\t\tposition = (position % maximum + maximum) % maximum;\n\t\t} else {\n\t\t\tposition = Math.max(minimum, Math.min(maximum, position));\n\t\t}\n\n\t\tthis.speed(this.duration(current, position, speed));\n\t\tthis.current(position);\n\n\t\tif (this.isVisible()) {\n\t\t\tthis.update();\n\t\t}\n\t};\n\n\t/**\n\t * Slides to the next item.\n\t * @public\n\t * @param {Number} [speed] - The time in milliseconds for the transition.\n\t */\n\tOwl.prototype.next = function(speed) {\n\t\tspeed = speed || false;\n\t\tthis.to(this.relative(this.current()) + 1, speed);\n\t};\n\n\t/**\n\t * Slides to the previous item.\n\t * @public\n\t * @param {Number} [speed] - The time in milliseconds for the transition.\n\t */\n\tOwl.prototype.prev = function(speed) {\n\t\tspeed = speed || false;\n\t\tthis.to(this.relative(this.current()) - 1, speed);\n\t};\n\n\t/**\n\t * Handles the end of an animation.\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onTransitionEnd = function(event) {\n\n\t\t// if css2 animation then event object is undefined\n\t\tif (event !== undefined) {\n\t\t\tevent.stopPropagation();\n\n\t\t\t// Catch only owl-stage transitionEnd event\n\t\t\tif ((event.target || event.srcElement || event.originalTarget) !== this.$stage.get(0)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tthis.leave('animating');\n\t\tthis.trigger('translated');\n\t};\n\n\t/**\n\t * Gets viewport width.\n\t * @protected\n\t * @return {Number} - The width in pixel.\n\t */\n\tOwl.prototype.viewport = function() {\n\t\tvar width;\n\t\tif (this.options.responsiveBaseElement !== window) {\n\t\t\twidth = $(this.options.responsiveBaseElement).width();\n\t\t} else if (window.innerWidth) {\n\t\t\twidth = window.innerWidth;\n\t\t} else if (document.documentElement && document.documentElement.clientWidth) {\n\t\t\twidth = document.documentElement.clientWidth;\n\t\t} else {\n\t\t\tconsole.warn('Can not detect viewport width.');\n\t\t}\n\t\treturn width;\n\t};\n\n\t/**\n\t * Replaces the current content.\n\t * @public\n\t * @param {HTMLElement|jQuery|String} content - The new content.\n\t */\n\tOwl.prototype.replace = function(content) {\n\t\tthis.$stage.empty();\n\t\tthis._items = [];\n\n\t\tif (content) {\n\t\t\tcontent = (content instanceof jQuery) ? content : $(content);\n\t\t}\n\n\t\tif (this.settings.nestedItemSelector) {\n\t\t\tcontent = content.find('.' + this.settings.nestedItemSelector);\n\t\t}\n\n\t\tcontent.filter(function() {\n\t\t\treturn this.nodeType === 1;\n\t\t}).each($.proxy(function(index, item) {\n\t\t\titem = this.prepare(item);\n\t\t\tthis.$stage.append(item);\n\t\t\tthis._items.push(item);\n\t\t\tthis._mergers.push(item.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);\n\t\t}, this));\n\n\t\tthis.reset(this.isNumeric(this.settings.startPosition) ? this.settings.startPosition : 0);\n\n\t\tthis.invalidate('items');\n\t};\n\n\t/**\n\t * Adds an item.\n\t * @todo Use `item` instead of `content` for the event arguments.\n\t * @public\n\t * @param {HTMLElement|jQuery|String} content - The item content to add.\n\t * @param {Number} [position] - The relative position at which to insert the item otherwise the item will be added to the end.\n\t */\n\tOwl.prototype.add = function(content, position) {\n\t\tvar current = this.relative(this._current);\n\n\t\tposition = position === undefined ? this._items.length : this.normalize(position, true);\n\t\tcontent = content instanceof jQuery ? content : $(content);\n\n\t\tthis.trigger('add', { content: content, position: position });\n\n\t\tcontent = this.prepare(content);\n\n\t\tif (this._items.length === 0 || position === this._items.length) {\n\t\t\tthis._items.length === 0 && this.$stage.append(content);\n\t\t\tthis._items.length !== 0 && this._items[position - 1].after(content);\n\t\t\tthis._items.push(content);\n\t\t\tthis._mergers.push(content.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);\n\t\t} else {\n\t\t\tthis._items[position].before(content);\n\t\t\tthis._items.splice(position, 0, content);\n\t\t\tthis._mergers.splice(position, 0, content.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);\n\t\t}\n\n\t\tthis._items[current] && this.reset(this._items[current].index());\n\n\t\tthis.invalidate('items');\n\n\t\tthis.trigger('added', { content: content, position: position });\n\t};\n\n\t/**\n\t * Removes an item by its position.\n\t * @todo Use `item` instead of `content` for the event arguments.\n\t * @public\n\t * @param {Number} position - The relative position of the item to remove.\n\t */\n\tOwl.prototype.remove = function(position) {\n\t\tposition = this.normalize(position, true);\n\n\t\tif (position === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.trigger('remove', { content: this._items[position], position: position });\n\n\t\tthis._items[position].remove();\n\t\tthis._items.splice(position, 1);\n\t\tthis._mergers.splice(position, 1);\n\n\t\tthis.invalidate('items');\n\n\t\tthis.trigger('removed', { content: null, position: position });\n\t};\n\n\t/**\n\t * Preloads images with auto width.\n\t * @todo Replace by a more generic approach\n\t * @protected\n\t */\n\tOwl.prototype.preloadAutoWidthImages = function(images) {\n\t\timages.each($.proxy(function(i, element) {\n\t\t\tthis.enter('pre-loading');\n\t\t\telement = $(element);\n\t\t\t$(new Image()).one('load', $.proxy(function(e) {\n\t\t\t\telement.attr('src', e.target.src);\n\t\t\t\telement.css('opacity', 1);\n\t\t\t\tthis.leave('pre-loading');\n\t\t\t\t!this.is('pre-loading') && !this.is('initializing') && this.refresh();\n\t\t\t}, this)).attr('src', element.attr('src') || element.attr('data-src') || element.attr('data-src-retina'));\n\t\t}, this));\n\t};\n\n\t/**\n\t * Destroys the carousel.\n\t * @public\n\t */\n\tOwl.prototype.destroy = function() {\n\n\t\tthis.$element.off('.owl.core');\n\t\tthis.$stage.off('.owl.core');\n\t\t$(document).off('.owl.core');\n\n\t\tif (this.settings.responsive !== false) {\n\t\t\twindow.clearTimeout(this.resizeTimer);\n\t\t\tthis.off(window, 'resize', this._handlers.onThrottledResize);\n\t\t}\n\n\t\tfor (var i in this._plugins) {\n\t\t\tthis._plugins[i].destroy();\n\t\t}\n\n\t\tthis.$stage.children('.cloned').remove();\n\n\t\tthis.$stage.unwrap();\n\t\tthis.$stage.children().contents().unwrap();\n\t\tthis.$stage.children().unwrap();\n\t\tthis.$stage.remove();\n\t\tthis.$element\n\t\t\t.removeClass(this.options.refreshClass)\n\t\t\t.removeClass(this.options.loadingClass)\n\t\t\t.removeClass(this.options.loadedClass)\n\t\t\t.removeClass(this.options.rtlClass)\n\t\t\t.removeClass(this.options.dragClass)\n\t\t\t.removeClass(this.options.grabClass)\n\t\t\t.attr('class', this.$element.attr('class').replace(new RegExp(this.options.responsiveClass + '-\\\\S+\\\\s', 'g'), ''))\n\t\t\t.removeData('owl.carousel');\n\t};\n\n\t/**\n\t * Operators to calculate right-to-left and left-to-right.\n\t * @protected\n\t * @param {Number} [a] - The left side operand.\n\t * @param {String} [o] - The operator.\n\t * @param {Number} [b] - The right side operand.\n\t */\n\tOwl.prototype.op = function(a, o, b) {\n\t\tvar rtl = this.settings.rtl;\n\t\tswitch (o) {\n\t\t\tcase '<':\n\t\t\t\treturn rtl ? a > b : a < b;\n\t\t\tcase '>':\n\t\t\t\treturn rtl ? a < b : a > b;\n\t\t\tcase '>=':\n\t\t\t\treturn rtl ? a <= b : a >= b;\n\t\t\tcase '<=':\n\t\t\t\treturn rtl ? a >= b : a <= b;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\t};\n\n\t/**\n\t * Attaches to an internal event.\n\t * @protected\n\t * @param {HTMLElement} element - The event source.\n\t * @param {String} event - The event name.\n\t * @param {Function} listener - The event handler to attach.\n\t * @param {Boolean} capture - Wether the event should be handled at the capturing phase or not.\n\t */\n\tOwl.prototype.on = function(element, event, listener, capture) {\n\t\tif (element.addEventListener) {\n\t\t\telement.addEventListener(event, listener, capture);\n\t\t} else if (element.attachEvent) {\n\t\t\telement.attachEvent('on' + event, listener);\n\t\t}\n\t};\n\n\t/**\n\t * Detaches from an internal event.\n\t * @protected\n\t * @param {HTMLElement} element - The event source.\n\t * @param {String} event - The event name.\n\t * @param {Function} listener - The attached event handler to detach.\n\t * @param {Boolean} capture - Wether the attached event handler was registered as a capturing listener or not.\n\t */\n\tOwl.prototype.off = function(element, event, listener, capture) {\n\t\tif (element.removeEventListener) {\n\t\t\telement.removeEventListener(event, listener, capture);\n\t\t} else if (element.detachEvent) {\n\t\t\telement.detachEvent('on' + event, listener);\n\t\t}\n\t};\n\n\t/**\n\t * Triggers a public event.\n\t * @todo Remove `status`, `relatedTarget` should be used instead.\n\t * @protected\n\t * @param {String} name - The event name.\n\t * @param {*} [data=null] - The event data.\n\t * @param {String} [namespace=carousel] - The event namespace.\n\t * @param {String} [state] - The state which is associated with the event.\n\t * @param {Boolean} [enter=false] - Indicates if the call enters the specified state or not.\n\t * @returns {Event} - The event arguments.\n\t */\n\tOwl.prototype.trigger = function(name, data, namespace, state, enter) {\n\t\tvar status = {\n\t\t\titem: { count: this._items.length, index: this.current() }\n\t\t}, handler = $.camelCase(\n\t\t\t$.grep([ 'on', name, namespace ], function(v) { return v })\n\t\t\t\t.join('-').toLowerCase()\n\t\t), event = $.Event(\n\t\t\t[ name, 'owl', namespace || 'carousel' ].join('.').toLowerCase(),\n\t\t\t$.extend({ relatedTarget: this }, status, data)\n\t\t);\n\n\t\tif (!this._supress[name]) {\n\t\t\t$.each(this._plugins, function(name, plugin) {\n\t\t\t\tif (plugin.onTrigger) {\n\t\t\t\t\tplugin.onTrigger(event);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.register({ type: Owl.Type.Event, name: name });\n\t\t\tthis.$element.trigger(event);\n\n\t\t\tif (this.settings && typeof this.settings[handler] === 'function') {\n\t\t\t\tthis.settings[handler].call(this, event);\n\t\t\t}\n\t\t}\n\n\t\treturn event;\n\t};\n\n\t/**\n\t * Enters a state.\n\t * @param name - The state name.\n\t */\n\tOwl.prototype.enter = function(name) {\n\t\t$.each([ name ].concat(this._states.tags[name] || []), $.proxy(function(i, name) {\n\t\t\tif (this._states.current[name] === undefined) {\n\t\t\t\tthis._states.current[name] = 0;\n\t\t\t}\n\n\t\t\tthis._states.current[name]++;\n\t\t}, this));\n\t};\n\n\t/**\n\t * Leaves a state.\n\t * @param name - The state name.\n\t */\n\tOwl.prototype.leave = function(name) {\n\t\t$.each([ name ].concat(this._states.tags[name] || []), $.proxy(function(i, name) {\n\t\t\tthis._states.current[name]--;\n\t\t}, this));\n\t};\n\n\t/**\n\t * Registers an event or state.\n\t * @public\n\t * @param {Object} object - The event or state to register.\n\t */\n\tOwl.prototype.register = function(object) {\n\t\tif (object.type === Owl.Type.Event) {\n\t\t\tif (!$.event.special[object.name]) {\n\t\t\t\t$.event.special[object.name] = {};\n\t\t\t}\n\n\t\t\tif (!$.event.special[object.name].owl) {\n\t\t\t\tvar _default = $.event.special[object.name]._default;\n\t\t\t\t$.event.special[object.name]._default = function(e) {\n\t\t\t\t\tif (_default && _default.apply && (!e.namespace || e.namespace.indexOf('owl') === -1)) {\n\t\t\t\t\t\treturn _default.apply(this, arguments);\n\t\t\t\t\t}\n\t\t\t\t\treturn e.namespace && e.namespace.indexOf('owl') > -1;\n\t\t\t\t};\n\t\t\t\t$.event.special[object.name].owl = true;\n\t\t\t}\n\t\t} else if (object.type === Owl.Type.State) {\n\t\t\tif (!this._states.tags[object.name]) {\n\t\t\t\tthis._states.tags[object.name] = object.tags;\n\t\t\t} else {\n\t\t\t\tthis._states.tags[object.name] = this._states.tags[object.name].concat(object.tags);\n\t\t\t}\n\n\t\t\tthis._states.tags[object.name] = $.grep(this._states.tags[object.name], $.proxy(function(tag, i) {\n\t\t\t\treturn $.inArray(tag, this._states.tags[object.name]) === i;\n\t\t\t}, this));\n\t\t}\n\t};\n\n\t/**\n\t * Suppresses events.\n\t * @protected\n\t * @param {Array.} events - The events to suppress.\n\t */\n\tOwl.prototype.suppress = function(events) {\n\t\t$.each(events, $.proxy(function(index, event) {\n\t\t\tthis._supress[event] = true;\n\t\t}, this));\n\t};\n\n\t/**\n\t * Releases suppressed events.\n\t * @protected\n\t * @param {Array.} events - The events to release.\n\t */\n\tOwl.prototype.release = function(events) {\n\t\t$.each(events, $.proxy(function(index, event) {\n\t\t\tdelete this._supress[event];\n\t\t}, this));\n\t};\n\n\t/**\n\t * Gets unified pointer coordinates from event.\n\t * @todo #261\n\t * @protected\n\t * @param {Event} - The `mousedown` or `touchstart` event.\n\t * @returns {Object} - Contains `x` and `y` coordinates of current pointer position.\n\t */\n\tOwl.prototype.pointer = function(event) {\n\t\tvar result = { x: null, y: null };\n\n\t\tevent = event.originalEvent || event || window.event;\n\n\t\tevent = event.touches && event.touches.length ?\n\t\t\tevent.touches[0] : event.changedTouches && event.changedTouches.length ?\n\t\t\t\tevent.changedTouches[0] : event;\n\n\t\tif (event.pageX) {\n\t\t\tresult.x = event.pageX;\n\t\t\tresult.y = event.pageY;\n\t\t} else {\n\t\t\tresult.x = event.clientX;\n\t\t\tresult.y = event.clientY;\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t/**\n\t * Determines if the input is a Number or something that can be coerced to a Number\n\t * @protected\n\t * @param {Number|String|Object|Array|Boolean|RegExp|Function|Symbol} - The input to be tested\n\t * @returns {Boolean} - An indication if the input is a Number or can be coerced to a Number\n\t */\n\tOwl.prototype.isNumeric = function(number) {\n\t\treturn !isNaN(parseFloat(number));\n\t};\n\n\t/**\n\t * Gets the difference of two vectors.\n\t * @todo #261\n\t * @protected\n\t * @param {Object} - The first vector.\n\t * @param {Object} - The second vector.\n\t * @returns {Object} - The difference.\n\t */\n\tOwl.prototype.difference = function(first, second) {\n\t\treturn {\n\t\t\tx: first.x - second.x,\n\t\t\ty: first.y - second.y\n\t\t};\n\t};\n\n\t/**\n\t * The jQuery Plugin for the Owl Carousel\n\t * @todo Navigation plugin `next` and `prev`\n\t * @public\n\t */\n\t$.fn.owlCarousel = function(option) {\n\t\tvar args = Array.prototype.slice.call(arguments, 1);\n\n\t\treturn this.each(function() {\n\t\t\tvar $this = $(this),\n\t\t\t\tdata = $this.data('owl.carousel');\n\n\t\t\tif (!data) {\n\t\t\t\tdata = new Owl(this, typeof option == 'object' && option);\n\t\t\t\t$this.data('owl.carousel', data);\n\n\t\t\t\t$.each([\n\t\t\t\t\t'next', 'prev', 'to', 'destroy', 'refresh', 'replace', 'add', 'remove'\n\t\t\t\t], function(i, event) {\n\t\t\t\t\tdata.register({ type: Owl.Type.Event, name: event });\n\t\t\t\t\tdata.$element.on(event + '.owl.carousel.core', $.proxy(function(e) {\n\t\t\t\t\t\tif (e.namespace && e.relatedTarget !== this) {\n\t\t\t\t\t\t\tthis.suppress([ event ]);\n\t\t\t\t\t\t\tdata[event].apply(this, [].slice.call(arguments, 1));\n\t\t\t\t\t\t\tthis.release([ event ]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}, data));\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (typeof option == 'string' && option.charAt(0) !== '_') {\n\t\t\t\tdata[option].apply(data, args);\n\t\t\t}\n\t\t});\n\t};\n\n\t/**\n\t * The constructor for the jQuery Plugin\n\t * @public\n\t */\n\t$.fn.owlCarousel.Constructor = Owl;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * AutoRefresh Plugin\n * @version 2.3.4\n * @author Artus Kolanowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the auto refresh plugin.\n\t * @class The Auto Refresh Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar AutoRefresh = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Refresh interval.\n\t\t * @protected\n\t\t * @type {number}\n\t\t */\n\t\tthis._interval = null;\n\n\t\t/**\n\t\t * Whether the element is currently visible or not.\n\t\t * @protected\n\t\t * @type {Boolean}\n\t\t */\n\t\tthis._visible = null;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoRefresh) {\n\t\t\t\t\tthis.watch();\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, AutoRefresh.Defaults, this._core.options);\n\n\t\t// register event handlers\n\t\tthis._core.$element.on(this._handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tAutoRefresh.Defaults = {\n\t\tautoRefresh: true,\n\t\tautoRefreshInterval: 500\n\t};\n\n\t/**\n\t * Watches the element.\n\t */\n\tAutoRefresh.prototype.watch = function() {\n\t\tif (this._interval) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._visible = this._core.isVisible();\n\t\tthis._interval = window.setInterval($.proxy(this.refresh, this), this._core.settings.autoRefreshInterval);\n\t};\n\n\t/**\n\t * Refreshes the element.\n\t */\n\tAutoRefresh.prototype.refresh = function() {\n\t\tif (this._core.isVisible() === this._visible) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._visible = !this._visible;\n\n\t\tthis._core.$element.toggleClass('owl-hidden', !this._visible);\n\n\t\tthis._visible && (this._core.invalidate('width') && this._core.refresh());\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t */\n\tAutoRefresh.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\twindow.clearInterval(this._interval);\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.AutoRefresh = AutoRefresh;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Lazy Plugin\n * @version 2.3.4\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the lazy plugin.\n\t * @class The Lazy Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar Lazy = function(carousel) {\n\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Already loaded items.\n\t\t * @protected\n\t\t * @type {Array.}\n\t\t */\n\t\tthis._loaded = [];\n\n\t\t/**\n\t\t * Event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel change.owl.carousel resized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (!e.namespace) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (!this._core.settings || !this._core.settings.lazyLoad) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ((e.property && e.property.name == 'position') || e.type == 'initialized') {\n\t\t\t\t\tvar settings = this._core.settings,\n\t\t\t\t\t\tn = (settings.center && Math.ceil(settings.items / 2) || settings.items),\n\t\t\t\t\t\ti = ((settings.center && n * -1) || 0),\n\t\t\t\t\t\tposition = (e.property && e.property.value !== undefined ? e.property.value : this._core.current()) + i,\n\t\t\t\t\t\tclones = this._core.clones().length,\n\t\t\t\t\t\tload = $.proxy(function(i, v) { this.load(v) }, this);\n\t\t\t\t\t//TODO: Need documentation for this new option\n\t\t\t\t\tif (settings.lazyLoadEager > 0) {\n\t\t\t\t\t\tn += settings.lazyLoadEager;\n\t\t\t\t\t\t// If the carousel is looping also preload images that are to the \"left\"\n\t\t\t\t\t\tif (settings.loop) {\n position -= settings.lazyLoadEager;\n n++;\n }\n\t\t\t\t\t}\n\n\t\t\t\t\twhile (i++ < n) {\n\t\t\t\t\t\tthis.load(clones / 2 + this._core.relative(position));\n\t\t\t\t\t\tclones && $.each(this._core.clones(this._core.relative(position)), load);\n\t\t\t\t\t\tposition++;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set the default options\n\t\tthis._core.options = $.extend({}, Lazy.Defaults, this._core.options);\n\n\t\t// register event handler\n\t\tthis._core.$element.on(this._handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tLazy.Defaults = {\n\t\tlazyLoad: false,\n\t\tlazyLoadEager: 0\n\t};\n\n\t/**\n\t * Loads all resources of an item at the specified position.\n\t * @param {Number} position - The absolute position of the item.\n\t * @protected\n\t */\n\tLazy.prototype.load = function(position) {\n\t\tvar $item = this._core.$stage.children().eq(position),\n\t\t\t$elements = $item && $item.find('.owl-lazy');\n\n\t\tif (!$elements || $.inArray($item.get(0), this._loaded) > -1) {\n\t\t\treturn;\n\t\t}\n\n\t\t$elements.each($.proxy(function(index, element) {\n\t\t\tvar $element = $(element), image,\n url = (window.devicePixelRatio > 1 && $element.attr('data-src-retina')) || $element.attr('data-src') || $element.attr('data-srcset');\n\n\t\t\tthis._core.trigger('load', { element: $element, url: url }, 'lazy');\n\n\t\t\tif ($element.is('img')) {\n\t\t\t\t$element.one('load.owl.lazy', $.proxy(function() {\n\t\t\t\t\t$element.css('opacity', 1);\n\t\t\t\t\tthis._core.trigger('loaded', { element: $element, url: url }, 'lazy');\n\t\t\t\t}, this)).attr('src', url);\n } else if ($element.is('source')) {\n $element.one('load.owl.lazy', $.proxy(function() {\n this._core.trigger('loaded', { element: $element, url: url }, 'lazy');\n }, this)).attr('srcset', url);\n\t\t\t} else {\n\t\t\t\timage = new Image();\n\t\t\t\timage.onload = $.proxy(function() {\n\t\t\t\t\t$element.css({\n\t\t\t\t\t\t'background-image': 'url(\"' + url + '\")',\n\t\t\t\t\t\t'opacity': '1'\n\t\t\t\t\t});\n\t\t\t\t\tthis._core.trigger('loaded', { element: $element, url: url }, 'lazy');\n\t\t\t\t}, this);\n\t\t\t\timage.src = url;\n\t\t\t}\n\t\t}, this));\n\n\t\tthis._loaded.push($item.get(0));\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t * @public\n\t */\n\tLazy.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tfor (handler in this.handlers) {\n\t\t\tthis._core.$element.off(handler, this.handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.Lazy = Lazy;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * AutoHeight Plugin\n * @version 2.3.4\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the auto height plugin.\n\t * @class The Auto Height Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar AutoHeight = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\tthis._previousHeight = null;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel refreshed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoHeight) {\n\t\t\t\t\tthis.update();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoHeight && e.property.name === 'position'){\n\t\t\t\t\tthis.update();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'loaded.owl.lazy': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoHeight\n\t\t\t\t\t&& e.element.closest('.' + this._core.settings.itemClass).index() === this._core.current()) {\n\t\t\t\t\tthis.update();\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, AutoHeight.Defaults, this._core.options);\n\n\t\t// register event handlers\n\t\tthis._core.$element.on(this._handlers);\n\t\tthis._intervalId = null;\n\t\tvar refThis = this;\n\n\t\t// These changes have been taken from a PR by gavrochelegnou proposed in #1575\n\t\t// and have been made compatible with the latest jQuery version\n\t\t$(window).on('load', function() {\n\t\t\tif (refThis._core.settings.autoHeight) {\n\t\t\t\trefThis.update();\n\t\t\t}\n\t\t});\n\n\t\t// Autoresize the height of the carousel when window is resized\n\t\t// When carousel has images, the height is dependent on the width\n\t\t// and should also change on resize\n\t\t$(window).resize(function() {\n\t\t\tif (refThis._core.settings.autoHeight) {\n\t\t\t\tif (refThis._intervalId != null) {\n\t\t\t\t\tclearTimeout(refThis._intervalId);\n\t\t\t\t}\n\n\t\t\t\trefThis._intervalId = setTimeout(function() {\n\t\t\t\t\trefThis.update();\n\t\t\t\t}, 250);\n\t\t\t}\n\t\t});\n\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tAutoHeight.Defaults = {\n\t\tautoHeight: false,\n\t\tautoHeightClass: 'owl-height'\n\t};\n\n\t/**\n\t * Updates the view.\n\t */\n\tAutoHeight.prototype.update = function() {\n\t\tvar start = this._core._current,\n\t\t\tend = start + this._core.settings.items,\n\t\t\tlazyLoadEnabled = this._core.settings.lazyLoad,\n\t\t\tvisible = this._core.$stage.children().toArray().slice(start, end),\n\t\t\theights = [],\n\t\t\tmaxheight = 0;\n\n\t\t$.each(visible, function(index, item) {\n\t\t\theights.push($(item).height());\n\t\t});\n\n\t\tmaxheight = Math.max.apply(null, heights);\n\n\t\tif (maxheight <= 1 && lazyLoadEnabled && this._previousHeight) {\n\t\t\tmaxheight = this._previousHeight;\n\t\t}\n\n\t\tthis._previousHeight = maxheight;\n\n\t\tthis._core.$stage.parent()\n\t\t\t.height(maxheight)\n\t\t\t.addClass(this._core.settings.autoHeightClass);\n\t};\n\n\tAutoHeight.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] !== 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.AutoHeight = AutoHeight;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Video Plugin\n * @version 2.3.4\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the video plugin.\n\t * @class The Video Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar Video = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Cache all video URLs.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._videos = {};\n\n\t\t/**\n\t\t * Current playing item.\n\t\t * @protected\n\t\t * @type {jQuery}\n\t\t */\n\t\tthis._playing = null;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @todo The cloned content removale is too late\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tthis._core.register({ type: 'state', name: 'playing', tags: [ 'interacting' ] });\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'resize.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.video && this.isInFullScreen()) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'refreshed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.is('resizing')) {\n\t\t\t\t\tthis._core.$stage.find('.cloned .owl-video-frame').remove();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name === 'position' && this._playing) {\n\t\t\t\t\tthis.stop();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'prepared.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (!e.namespace) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar $element = $(e.content).find('.owl-video');\n\n\t\t\t\tif ($element.length) {\n\t\t\t\t\t$element.css('display', 'none');\n\t\t\t\t\tthis.fetch($element, $(e.content));\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, Video.Defaults, this._core.options);\n\n\t\t// register event handlers\n\t\tthis._core.$element.on(this._handlers);\n\n\t\tthis._core.$element.on('click.owl.video', '.owl-video-play-icon', $.proxy(function(e) {\n\t\t\tthis.play(e);\n\t\t}, this));\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tVideo.Defaults = {\n\t\tvideo: false,\n\t\tvideoHeight: false,\n\t\tvideoWidth: false\n\t};\n\n\t/**\n\t * Gets the video ID and the type (YouTube/Vimeo/vzaar only).\n\t * @protected\n\t * @param {jQuery} target - The target containing the video data.\n\t * @param {jQuery} item - The item containing the video.\n\t */\n\tVideo.prototype.fetch = function(target, item) {\n\t\t\tvar type = (function() {\n\t\t\t\t\tif (target.attr('data-vimeo-id')) {\n\t\t\t\t\t\treturn 'vimeo';\n\t\t\t\t\t} else if (target.attr('data-vzaar-id')) {\n\t\t\t\t\t\treturn 'vzaar'\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn 'youtube';\n\t\t\t\t\t}\n\t\t\t\t})(),\n\t\t\t\tid = target.attr('data-vimeo-id') || target.attr('data-youtube-id') || target.attr('data-vzaar-id'),\n\t\t\t\twidth = target.attr('data-width') || this._core.settings.videoWidth,\n\t\t\t\theight = target.attr('data-height') || this._core.settings.videoHeight,\n\t\t\t\turl = target.attr('href');\n\n\t\tif (url) {\n\n\t\t\t/*\n\t\t\t\t\tParses the id's out of the following urls (and probably more):\n\t\t\t\t\thttps://www.youtube.com/watch?v=:id\n\t\t\t\t\thttps://youtu.be/:id\n\t\t\t\t\thttps://vimeo.com/:id\n\t\t\t\t\thttps://vimeo.com/channels/:channel/:id\n\t\t\t\t\thttps://vimeo.com/groups/:group/videos/:id\n\t\t\t\t\thttps://app.vzaar.com/videos/:id\n\n\t\t\t\t\tVisual example: https://regexper.com/#(http%3A%7Chttps%3A%7C)%5C%2F%5C%2F(player.%7Cwww.%7Capp.)%3F(vimeo%5C.com%7Cyoutu(be%5C.com%7C%5C.be%7Cbe%5C.googleapis%5C.com)%7Cvzaar%5C.com)%5C%2F(video%5C%2F%7Cvideos%5C%2F%7Cembed%5C%2F%7Cchannels%5C%2F.%2B%5C%2F%7Cgroups%5C%2F.%2B%5C%2F%7Cwatch%5C%3Fv%3D%7Cv%5C%2F)%3F(%5BA-Za-z0-9._%25-%5D*)(%5C%26%5CS%2B)%3F\n\t\t\t*/\n\n\t\t\tid = url.match(/(http:|https:|)\\/\\/(player.|www.|app.)?(vimeo\\.com|youtu(be\\.com|\\.be|be\\.googleapis\\.com|be\\-nocookie\\.com)|vzaar\\.com)\\/(video\\/|videos\\/|embed\\/|channels\\/.+\\/|groups\\/.+\\/|watch\\?v=|v\\/)?([A-Za-z0-9._%-]*)(\\&\\S+)?/);\n\n\t\t\tif (id[3].indexOf('youtu') > -1) {\n\t\t\t\ttype = 'youtube';\n\t\t\t} else if (id[3].indexOf('vimeo') > -1) {\n\t\t\t\ttype = 'vimeo';\n\t\t\t} else if (id[3].indexOf('vzaar') > -1) {\n\t\t\t\ttype = 'vzaar';\n\t\t\t} else {\n\t\t\t\tthrow new Error('Video URL not supported.');\n\t\t\t}\n\t\t\tid = id[6];\n\t\t} else {\n\t\t\tthrow new Error('Missing video URL.');\n\t\t}\n\n\t\tthis._videos[url] = {\n\t\t\ttype: type,\n\t\t\tid: id,\n\t\t\twidth: width,\n\t\t\theight: height\n\t\t};\n\n\t\titem.attr('data-video', url);\n\n\t\tthis.thumbnail(target, this._videos[url]);\n\t};\n\n\t/**\n\t * Creates video thumbnail.\n\t * @protected\n\t * @param {jQuery} target - The target containing the video data.\n\t * @param {Object} info - The video info object.\n\t * @see `fetch`\n\t */\n\tVideo.prototype.thumbnail = function(target, video) {\n\t\tvar tnLink,\n\t\t\ticon,\n\t\t\tpath,\n\t\t\tdimensions = video.width && video.height ? 'width:' + video.width + 'px;height:' + video.height + 'px;' : '',\n\t\t\tcustomTn = target.find('img'),\n\t\t\tsrcType = 'src',\n\t\t\tlazyClass = '',\n\t\t\tsettings = this._core.settings,\n\t\t\tcreate = function(path) {\n\t\t\t\ticon = '
';\n\n\t\t\t\tif (settings.lazyLoad) {\n\t\t\t\t\ttnLink = $('
',{\n\t\t\t\t\t\t\"class\": 'owl-video-tn ' + lazyClass,\n\t\t\t\t\t\t\"srcType\": path\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\ttnLink = $( '
', {\n\t\t\t\t\t\t\"class\": \"owl-video-tn\",\n\t\t\t\t\t\t\"style\": 'opacity:1;background-image:url(' + path + ')'\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\ttarget.after(tnLink);\n\t\t\t\ttarget.after(icon);\n\t\t\t};\n\n\t\t// wrap video content into owl-video-wrapper div\n\t\ttarget.wrap( $( '
', {\n\t\t\t\"class\": \"owl-video-wrapper\",\n\t\t\t\"style\": dimensions\n\t\t}));\n\n\t\tif (this._core.settings.lazyLoad) {\n\t\t\tsrcType = 'data-src';\n\t\t\tlazyClass = 'owl-lazy';\n\t\t}\n\n\t\t// custom thumbnail\n\t\tif (customTn.length) {\n\t\t\tcreate(customTn.attr(srcType));\n\t\t\tcustomTn.remove();\n\t\t\treturn false;\n\t\t}\n\n\t\tif (video.type === 'youtube') {\n\t\t\tpath = \"//img.youtube.com/vi/\" + video.id + \"/hqdefault.jpg\";\n\t\t\tcreate(path);\n\t\t} else if (video.type === 'vimeo') {\n\t\t\t$.ajax({\n\t\t\t\ttype: 'GET',\n\t\t\t\turl: '//vimeo.com/api/v2/video/' + video.id + '.json',\n\t\t\t\tjsonp: 'callback',\n\t\t\t\tdataType: 'jsonp',\n\t\t\t\tsuccess: function(data) {\n\t\t\t\t\tpath = data[0].thumbnail_large;\n\t\t\t\t\tcreate(path);\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (video.type === 'vzaar') {\n\t\t\t$.ajax({\n\t\t\t\ttype: 'GET',\n\t\t\t\turl: '//vzaar.com/api/videos/' + video.id + '.json',\n\t\t\t\tjsonp: 'callback',\n\t\t\t\tdataType: 'jsonp',\n\t\t\t\tsuccess: function(data) {\n\t\t\t\t\tpath = data.framegrab_url;\n\t\t\t\t\tcreate(path);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\n\t/**\n\t * Stops the current video.\n\t * @public\n\t */\n\tVideo.prototype.stop = function() {\n\t\tthis._core.trigger('stop', null, 'video');\n\t\tthis._playing.find('.owl-video-frame').remove();\n\t\tthis._playing.removeClass('owl-video-playing');\n\t\tthis._playing = null;\n\t\tthis._core.leave('playing');\n\t\tthis._core.trigger('stopped', null, 'video');\n\t};\n\n\t/**\n\t * Starts the current video.\n\t * @public\n\t * @param {Event} event - The event arguments.\n\t */\n\tVideo.prototype.play = function(event) {\n\t\tvar target = $(event.target),\n\t\t\titem = target.closest('.' + this._core.settings.itemClass),\n\t\t\tvideo = this._videos[item.attr('data-video')],\n\t\t\twidth = video.width || '100%',\n\t\t\theight = video.height || this._core.$stage.height(),\n\t\t\thtml,\n\t\t\tiframe;\n\n\t\tif (this._playing) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._core.enter('playing');\n\t\tthis._core.trigger('play', null, 'video');\n\n\t\titem = this._core.items(this._core.relative(item.index()));\n\n\t\tthis._core.reset(item.index());\n\n\t\thtml = $( '' );\n\t\thtml.attr( 'height', height );\n\t\thtml.attr( 'width', width );\n\t\tif (video.type === 'youtube') {\n\t\t\thtml.attr( 'src', '//www.youtube.com/embed/' + video.id + '?autoplay=1&rel=0&v=' + video.id );\n\t\t} else if (video.type === 'vimeo') {\n\t\t\thtml.attr( 'src', '//player.vimeo.com/video/' + video.id + '?autoplay=1' );\n\t\t} else if (video.type === 'vzaar') {\n\t\t\thtml.attr( 'src', '//view.vzaar.com/' + video.id + '/player?autoplay=true' );\n\t\t}\n\n\t\tiframe = $(html).wrap( '
' ).insertAfter(item.find('.owl-video'));\n\n\t\tthis._playing = item.addClass('owl-video-playing');\n\t};\n\n\t/**\n\t * Checks whether an video is currently in full screen mode or not.\n\t * @todo Bad style because looks like a readonly method but changes members.\n\t * @protected\n\t * @returns {Boolean}\n\t */\n\tVideo.prototype.isInFullScreen = function() {\n\t\tvar element = document.fullscreenElement || document.mozFullScreenElement ||\n\t\t\t\tdocument.webkitFullscreenElement;\n\n\t\treturn element && $(element).parent().hasClass('owl-video-frame');\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t */\n\tVideo.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tthis._core.$element.off('click.owl.video');\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.Video = Video;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Animate Plugin\n * @version 2.3.4\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the animate plugin.\n\t * @class The Navigation Plugin\n\t * @param {Owl} scope - The Owl Carousel\n\t */\n\tvar Animate = function(scope) {\n\t\tthis.core = scope;\n\t\tthis.core.options = $.extend({}, Animate.Defaults, this.core.options);\n\t\tthis.swapping = true;\n\t\tthis.previous = undefined;\n\t\tthis.next = undefined;\n\n\t\tthis.handlers = {\n\t\t\t'change.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name == 'position') {\n\t\t\t\t\tthis.previous = this.core.current();\n\t\t\t\t\tthis.next = e.property.value;\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'drag.owl.carousel dragged.owl.carousel translated.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tthis.swapping = e.type == 'translated';\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'translate.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn)) {\n\t\t\t\t\tthis.swap();\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\tthis.core.$element.on(this.handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tAnimate.Defaults = {\n\t\tanimateOut: false,\n\t\tanimateIn: false\n\t};\n\n\t/**\n\t * Toggles the animation classes whenever an translations starts.\n\t * @protected\n\t * @returns {Boolean|undefined}\n\t */\n\tAnimate.prototype.swap = function() {\n\n\t\tif (this.core.settings.items !== 1) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!$.support.animation || !$.support.transition) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.core.speed(0);\n\n\t\tvar left,\n\t\t\tclear = $.proxy(this.clear, this),\n\t\t\tprevious = this.core.$stage.children().eq(this.previous),\n\t\t\tnext = this.core.$stage.children().eq(this.next),\n\t\t\tincoming = this.core.settings.animateIn,\n\t\t\toutgoing = this.core.settings.animateOut;\n\n\t\tif (this.core.current() === this.previous) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (outgoing) {\n\t\t\tleft = this.core.coordinates(this.previous) - this.core.coordinates(this.next);\n\t\t\tprevious.one($.support.animation.end, clear)\n\t\t\t\t.css( { 'left': left + 'px' } )\n\t\t\t\t.addClass('animated owl-animated-out')\n\t\t\t\t.addClass(outgoing);\n\t\t}\n\n\t\tif (incoming) {\n\t\t\tnext.one($.support.animation.end, clear)\n\t\t\t\t.addClass('animated owl-animated-in')\n\t\t\t\t.addClass(incoming);\n\t\t}\n\t};\n\n\tAnimate.prototype.clear = function(e) {\n\t\t$(e.target).css( { 'left': '' } )\n\t\t\t.removeClass('animated owl-animated-out owl-animated-in')\n\t\t\t.removeClass(this.core.settings.animateIn)\n\t\t\t.removeClass(this.core.settings.animateOut);\n\t\tthis.core.onTransitionEnd();\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t * @public\n\t */\n\tAnimate.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tfor (handler in this.handlers) {\n\t\t\tthis.core.$element.off(handler, this.handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.Animate = Animate;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Autoplay Plugin\n * @version 2.3.4\n * @author Bartosz Wojciechowski\n * @author Artus Kolanowski\n * @author David Deutsch\n * @author Tom De Caluwé\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the autoplay plugin.\n\t * @class The Autoplay Plugin\n\t * @param {Owl} scope - The Owl Carousel\n\t */\n\tvar Autoplay = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * The autoplay timeout id.\n\t\t * @type {Number}\n\t\t */\n\t\tthis._call = null;\n\n\t\t/**\n\t\t * Depending on the state of the plugin, this variable contains either\n\t\t * the start time of the timer or the current timer value if it's\n\t\t * paused. Since we start in a paused state we initialize the timer\n\t\t * value.\n\t\t * @type {Number}\n\t\t */\n\t\tthis._time = 0;\n\n\t\t/**\n\t\t * Stores the timeout currently used.\n\t\t * @type {Number}\n\t\t */\n\t\tthis._timeout = 0;\n\n\t\t/**\n\t\t * Indicates whenever the autoplay is paused.\n\t\t * @type {Boolean}\n\t\t */\n\t\tthis._paused = true;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name === 'settings') {\n\t\t\t\t\tif (this._core.settings.autoplay) {\n\t\t\t\t\t\tthis.play();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.stop();\n\t\t\t\t\t}\n\t\t\t\t} else if (e.namespace && e.property.name === 'position' && this._paused) {\n\t\t\t\t\t// Reset the timer. This code is triggered when the position\n\t\t\t\t\t// of the carousel was changed through user interaction.\n\t\t\t\t\tthis._time = 0;\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoplay) {\n\t\t\t\t\tthis.play();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'play.owl.autoplay': $.proxy(function(e, t, s) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tthis.play(t, s);\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'stop.owl.autoplay': $.proxy(function(e) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tthis.stop();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'mouseover.owl.autoplay': $.proxy(function() {\n\t\t\t\tif (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {\n\t\t\t\t\tthis.pause();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'mouseleave.owl.autoplay': $.proxy(function() {\n\t\t\t\tif (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {\n\t\t\t\t\tthis.play();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'touchstart.owl.core': $.proxy(function() {\n\t\t\t\tif (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {\n\t\t\t\t\tthis.pause();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'touchend.owl.core': $.proxy(function() {\n\t\t\t\tif (this._core.settings.autoplayHoverPause) {\n\t\t\t\t\tthis.play();\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// register event handlers\n\t\tthis._core.$element.on(this._handlers);\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, Autoplay.Defaults, this._core.options);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tAutoplay.Defaults = {\n\t\tautoplay: false,\n\t\tautoplayTimeout: 5000,\n\t\tautoplayHoverPause: false,\n\t\tautoplaySpeed: false\n\t};\n\n\t/**\n\t * Transition to the next slide and set a timeout for the next transition.\n\t * @private\n\t * @param {Number} [speed] - The animation speed for the animations.\n\t */\n\tAutoplay.prototype._next = function(speed) {\n\t\tthis._call = window.setTimeout(\n\t\t\t$.proxy(this._next, this, speed),\n\t\t\tthis._timeout * (Math.round(this.read() / this._timeout) + 1) - this.read()\n\t\t);\n\n\t\tif (this._core.is('interacting') || document.hidden) {\n\t\t\treturn;\n\t\t}\n\t\tthis._core.next(speed || this._core.settings.autoplaySpeed);\n\t}\n\n\t/**\n\t * Reads the current timer value when the timer is playing.\n\t * @public\n\t */\n\tAutoplay.prototype.read = function() {\n\t\treturn new Date().getTime() - this._time;\n\t};\n\n\t/**\n\t * Starts the autoplay.\n\t * @public\n\t * @param {Number} [timeout] - The interval before the next animation starts.\n\t * @param {Number} [speed] - The animation speed for the animations.\n\t */\n\tAutoplay.prototype.play = function(timeout, speed) {\n\t\tvar elapsed;\n\n\t\tif (!this._core.is('rotating')) {\n\t\t\tthis._core.enter('rotating');\n\t\t}\n\n\t\ttimeout = timeout || this._core.settings.autoplayTimeout;\n\n\t\t// Calculate the elapsed time since the last transition. If the carousel\n\t\t// wasn't playing this calculation will yield zero.\n\t\telapsed = Math.min(this._time % (this._timeout || timeout), timeout);\n\n\t\tif (this._paused) {\n\t\t\t// Start the clock.\n\t\t\tthis._time = this.read();\n\t\t\tthis._paused = false;\n\t\t} else {\n\t\t\t// Clear the active timeout to allow replacement.\n\t\t\twindow.clearTimeout(this._call);\n\t\t}\n\n\t\t// Adjust the origin of the timer to match the new timeout value.\n\t\tthis._time += this.read() % timeout - elapsed;\n\n\t\tthis._timeout = timeout;\n\t\tthis._call = window.setTimeout($.proxy(this._next, this, speed), timeout - elapsed);\n\t};\n\n\t/**\n\t * Stops the autoplay.\n\t * @public\n\t */\n\tAutoplay.prototype.stop = function() {\n\t\tif (this._core.is('rotating')) {\n\t\t\t// Reset the clock.\n\t\t\tthis._time = 0;\n\t\t\tthis._paused = true;\n\n\t\t\twindow.clearTimeout(this._call);\n\t\t\tthis._core.leave('rotating');\n\t\t}\n\t};\n\n\t/**\n\t * Pauses the autoplay.\n\t * @public\n\t */\n\tAutoplay.prototype.pause = function() {\n\t\tif (this._core.is('rotating') && !this._paused) {\n\t\t\t// Pause the clock.\n\t\t\tthis._time = this.read();\n\t\t\tthis._paused = true;\n\n\t\t\twindow.clearTimeout(this._call);\n\t\t}\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t */\n\tAutoplay.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tthis.stop();\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.autoplay = Autoplay;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Navigation Plugin\n * @version 2.3.4\n * @author Artus Kolanowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\t'use strict';\n\n\t/**\n\t * Creates the navigation plugin.\n\t * @class The Navigation Plugin\n\t * @param {Owl} carousel - The Owl Carousel.\n\t */\n\tvar Navigation = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Indicates whether the plugin is initialized or not.\n\t\t * @protected\n\t\t * @type {Boolean}\n\t\t */\n\t\tthis._initialized = false;\n\n\t\t/**\n\t\t * The current paging indexes.\n\t\t * @protected\n\t\t * @type {Array}\n\t\t */\n\t\tthis._pages = [];\n\n\t\t/**\n\t\t * All DOM elements of the user interface.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._controls = {};\n\n\t\t/**\n\t\t * Markup for an indicator.\n\t\t * @protected\n\t\t * @type {Array.}\n\t\t */\n\t\tthis._templates = [];\n\n\t\t/**\n\t\t * The carousel element.\n\t\t * @type {jQuery}\n\t\t */\n\t\tthis.$element = this._core.$element;\n\n\t\t/**\n\t\t * Overridden methods of the carousel.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._overrides = {\n\t\t\tnext: this._core.next,\n\t\t\tprev: this._core.prev,\n\t\t\tto: this._core.to\n\t\t};\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'prepared.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.dotsData) {\n\t\t\t\t\tthis._templates.push('
' +\n\t\t\t\t\t\t$(e.content).find('[data-dot]').addBack('[data-dot]').attr('data-dot') + '
');\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'added.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.dotsData) {\n\t\t\t\t\tthis._templates.splice(e.position, 0, this._templates.pop());\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'remove.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.dotsData) {\n\t\t\t\t\tthis._templates.splice(e.position, 1);\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name == 'position') {\n\t\t\t\t\tthis.draw();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && !this._initialized) {\n\t\t\t\t\tthis._core.trigger('initialize', null, 'navigation');\n\t\t\t\t\tthis.initialize();\n\t\t\t\t\tthis.update();\n\t\t\t\t\tthis.draw();\n\t\t\t\t\tthis._initialized = true;\n\t\t\t\t\tthis._core.trigger('initialized', null, 'navigation');\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'refreshed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._initialized) {\n\t\t\t\t\tthis._core.trigger('refresh', null, 'navigation');\n\t\t\t\t\tthis.update();\n\t\t\t\t\tthis.draw();\n\t\t\t\t\tthis._core.trigger('refreshed', null, 'navigation');\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, Navigation.Defaults, this._core.options);\n\n\t\t// register event handlers\n\t\tthis.$element.on(this._handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t * @todo Rename `slideBy` to `navBy`\n\t */\n\tNavigation.Defaults = {\n\t\tnav: false,\n\t\tnavText: [\n\t\t\t'',\n\t\t\t''\n\t\t],\n\t\tnavSpeed: false,\n\t\tnavElement: 'button type=\"button\" role=\"presentation\"',\n\t\tnavContainer: false,\n\t\tnavContainerClass: 'owl-nav',\n\t\tnavClass: [\n\t\t\t'owl-prev',\n\t\t\t'owl-next'\n\t\t],\n\t\tslideBy: 1,\n\t\tdotClass: 'owl-dot',\n\t\tdotsClass: 'owl-dots',\n\t\tdots: true,\n\t\tdotsEach: false,\n\t\tdotsData: false,\n\t\tdotsSpeed: false,\n\t\tdotsContainer: false\n\t};\n\n\t/**\n\t * Initializes the layout of the plugin and extends the carousel.\n\t * @protected\n\t */\n\tNavigation.prototype.initialize = function() {\n\t\tvar override,\n\t\t\tsettings = this._core.settings;\n\n\t\t// create DOM structure for relative navigation\n\t\tthis._controls.$relative = (settings.navContainer ? $(settings.navContainer)\n\t\t\t: $('
').addClass(settings.navContainerClass).appendTo(this.$element)).addClass('disabled');\n\n\t\tthis._controls.$previous = $('<' + settings.navElement + '>')\n\t\t\t.addClass(settings.navClass[0])\n\t\t\t.html(settings.navText[0])\n\t\t\t.prependTo(this._controls.$relative)\n\t\t\t.on('click', $.proxy(function(e) {\n\t\t\t\tthis.prev(settings.navSpeed);\n\t\t\t}, this));\n\t\tthis._controls.$next = $('<' + settings.navElement + '>')\n\t\t\t.addClass(settings.navClass[1])\n\t\t\t.html(settings.navText[1])\n\t\t\t.appendTo(this._controls.$relative)\n\t\t\t.on('click', $.proxy(function(e) {\n\t\t\t\tthis.next(settings.navSpeed);\n\t\t\t}, this));\n\n\t\t// create DOM structure for absolute navigation\n\t\tif (!settings.dotsData) {\n\t\t\tthis._templates = [ $('