UNPKG

wilderness-core

Version:
2 lines (1 loc) 46.2 kB
!function(r,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(r.WildernessCore={})}(this,function(r){"use strict";function e(r){if(Array.isArray(r)){for(var e=0,t=Array(r.length);e<r.length;e++)t[e]=r[e];return t}return Array.from(r)}function t(r){if(Array.isArray(r)){for(var e=0,t=Array(r.length);e<r.length;e++)t[e]=r[e];return t}return Array.from(r)}function n(r){if(Array.isArray(r)){for(var e=0,t=Array(r.length);e<r.length;e++)t[e]=r[e];return t}return Array.from(r)}function a(r,e){var t={};for(var n in r)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n]);return t}function i(r){if(Array.isArray(r)){for(var e=0,t=Array(r.length);e<r.length;e++)t[e]=r[e];return t}return Array.from(r)}function o(r,e){var t={};for(var n in r)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n]);return t}function u(r){if(Array.isArray(r)){for(var e=0,t=Array(r.length);e<r.length;e++)t[e]=r[e];return t}return Array.from(r)}function s(r){return Array.isArray(r)?r:Array.from(r)}function c(r,e){var t={};for(var n in r)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n]);return t}function f(r,e){var t={};for(var n in r)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n]);return t}var l=function(){function r(r,e){var t=[],n=!0,a=!1,i=void 0;try{for(var o,u=r[Symbol.iterator]();!(n=(o=u.next()).done)&&(t.push(o.value),!e||t.length!==e);n=!0);}catch(r){a=!0,i=r}finally{try{!n&&u.return&&u.return()}finally{if(a)throw i}}return t}return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return r(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},v={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aqua:"#00FFFF",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blue:"#0000FF",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgreen:"#006400",darkgrey:"#A9A9A9",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",fuchsia:"#FF00FF",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",gray:"#808080",green:"#008000",greenyellow:"#ADFF2F",grey:"#808080",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgray:"#D3D3D3",lightgreen:"#90EE90",lightgrey:"#D3D3D3",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",lime:"#00FF00",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",maroon:"#800000",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",navy:"#000080",oldlace:"#FDF5E6",olive:"#808000",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",purple:"#800080",rebeccapurple:"#663399",red:"#FF0000",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",silver:"#C0C0C0",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",teal:"#008080",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",white:"#FFFFFF",whitesmoke:"#F5F5F5",yellow:"#FFFF00",yellowgreen:"#9ACD32"},p=Object.keys(v),h=function(r){return null!==r.match(/^#(?:[0-9a-f]{3}){1,2}$/i)},m=function(r){return r.startsWith("rgba(")},d=function(r){return r.startsWith("rgb(")},x=function(r){return-1!==p.indexOf(r)},g=function(r){var e=r.replace("#","");if(3===e.length){for(var t="",n=0;n<3;n++){var a=e.charAt(n);t+=""+a+a}e=t}return{middleware:"color",r:parseInt(e.slice(0,2),16),g:parseInt(e.slice(2,4),16),b:parseInt(e.slice(4,6),16),a:1}},b=function(r){var e=r.replace(/\s/g,""),t=e.substring(4,e.length-1).split(","),n=l(t,3),a=n[0],i=n[1],o=n[2];return{middleware:"color",r:parseFloat(a),g:parseFloat(i),b:parseFloat(o),a:1}},F=function(r){var e=r.replace(/\s/g,""),t=e.substring(5,e.length-1).split(","),n=l(t,4),a=n[0],i=n[1],o=n[2],u=n[3];return{middleware:"color",r:parseFloat(a),g:parseFloat(i),b:parseFloat(o),a:parseFloat(u)}},w=function(r){return g(v[r])},A=function(r){var e=r.r,t=r.g,n=r.b,a=r.a;return"rgba("+parseInt(S(e,0,255),10)+","+parseInt(S(t,0,255),10)+","+parseInt(S(n,0,255),10)+","+S(a,0,1)+")"},S=function(r,e,t){return Math.max(e,Math.min(t,r))},O={name:"color",input:function(r){if("string"==typeof r){if(h(r))return g(r);if(d(r))return b(r);if(m(r))return F(r);if(x(r))return w(r)}return r},output:function(r){return"object"===(void 0===r?"undefined":y(r))&&"color"===r.middleware?A(r):r}},M="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},k=function r(e){if("object"!==(void 0===e?"undefined":M(e)))return e;if(Array.isArray(e)){for(var t=[],n=0,a=e.length;n<a;n++)t.push(r(e[n]));return t}if(null!==e){var i={};for(var o in e)i[o]=r(e[o]);return i}return e},I="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},E=["ch","cm","em","ex","in","mm","pc","pt","px","rem","vh","vmax","vmin","vw","%"],C={name:"unit",input:function(r){if("string"==typeof r){for(var e=r.split(" "),t=[],n=0,a=e.length;n<a;n++){var i=e[n],o=parseFloat(i),u=i.replace(o,"");isNaN(o)||""!==u&&-1===E.indexOf(u)?t.push(i):t.push([o,u])}if(t.toString()!==e.toString())return{middleware:"unit",values:t}}return r},output:function(r){if("object"===(void 0===r?"undefined":I(r))&&"unit"===r.middleware){for(var e=r.values,t=[],n=0,a=e.length;n<a;n++)t.push(e[n].join(""));return t.join(" ")}return r}},D={defaults:{keyframe:{duration:250,easing:"easeInOutQuad"},motionPath:{easing:"easeInOutQuad"},timeline:{alternate:!1,initialIterations:0,iterations:1,middleware:[O,C],queue:0,reverse:!1}}},B="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},j=function r(e,t){var n=t(e);if("object"!==(void 0===n?"undefined":B(n)))return n;if(Array.isArray(n)){for(var a=[],i=0,o=n.length;i<o;i++)a.push(r(n[i],t));return a}if(null!==n){var u={};for(var s in n)u[s]=r(n[s],t);return u}return n},P=function(r,e){for(var t=r,n=0,a=e.length;n<a;n++)t=j(t,e[n].input);return t},T=function(r,e){for(var t=r,n=e.length-1;n>=0;n--)t=j(t,e[n].output);return t},q=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},N="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Q=function(){function r(r,e){var t=[],n=!0,a=!1,i=void 0;try{for(var o,u=r[Symbol.iterator]();!(n=(o=u.next()).done)&&(t.push(o.value),!e||t.length!==e);n=!0);}catch(r){a=!0,i=r}finally{try{!n&&u.return&&u.return()}finally{if(a)throw i}}return t}return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return r(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),L=function(r,e){for(var t=r.keyframes,n=0,a=t.length;n<a;n++){var i=t[n];i.frameShape=P(i.frameShape,e)}},R=function(r,e){var t=r.reverse;if(0===e)return t;var n=r.alternate,a=r.initialIterations,i=V(n,a)?t:!t;return V(n,a+e)?i:!i},W=function(r,e){var t=r.duration,n=r.iterations,a=r.started;if(void 0===a||e<=a)return 0;var i=e-a;return i>=t*n?n:i/t},H=function(r,e){var t=r>=1&&r%1==0?1:r%1;return e?1-t:t},V=function(r,e){var t=e%2;return!r||0===e||t<=1&&t%2>0},Z=function(r){var e=r.after,t=r.at,n=r.msTimelineShapes,a=r.offset,i=r.timelineFinish;if(void 0!==e||void 0!==t){for(var o=void 0!==e?e:t,u=0;u<n.length;u++){var s=n[u];if(o===s.shape.name)return(void 0!==t?s.timelinePosition.start:s.timelinePosition.finish)+a}for(var c=0;c<n.length;c++)for(var f=n[c],l=0;l<f.shape.keyframes.length;l++){var y=f.shape.keyframes[l];if(o===y.name)return f.timelinePosition.start+f.shape.duration*y.position+a}}return i+a},z=function(r,e){var t=Q(r,2),n=t[0],a=t[1],i=a.name,o=void 0===i?e:i,u=a.queue,s=void 0===u?D.defaults.timeline.queue:u;if("object"===(void 0===s?"undefined":N(s))&&!Array.isArray(s)&&null!==s){var c=s.after,f=s.at,l=s.offset,y=void 0===l?0:l;return void 0!==f?{at:f,name:o,offset:y,shape:n}:void 0!==c?{after:c,name:o,offset:y,shape:n}:{name:o,offset:y,shape:n}}return"number"==typeof s?{name:o,offset:s,shape:n}:"string"==typeof s?{after:s,name:o,offset:0,shape:n}:{name:o,offset:0,shape:n}},J=function(r){for(var e={},t=[],n=0,a=r.length;n<a;n++){var i=r[n];Array.isArray(i)?t.push(z(i,n)):i.keyframes?t.push({name:n,offset:D.defaults.timeline.queue,shape:i}):e=k(i)}return{middleware:K(e),playbackOptions:X(e),shapesWithOptions:t}},_=function(r){for(var e=r.duration,t=r.msTimelineShapes,n=r.start,a=[],i=0,o=t.length;i<o;i++){var u=t[i],s=u.timelinePosition;a.push({shape:u.shape,timelinePosition:{start:(s.start-n)/e,finish:(s.finish-n)/e}})}return a},U=function(r,e){for(var t=0,n=0,a=[],i=0,o=r.length;i<o;i++){var u=r[i],s=u.after,c=u.at,f=u.name,l=u.offset,y=u.shape;y.name=f,L(y,e);var v=Z({after:s,at:c,msTimelineShapes:a,offset:l,timelineFinish:n}),p=v+y.duration;t=Math.min(t,v),n=Math.max(n,p),a.push({shape:y,timelinePosition:{start:v,finish:p}})}var h=Math.abs(t-n);return{duration:h,timelineShapes:_({duration:h,msTimelineShapes:a,start:t})}},$=function(r){var e=r.at,t=r.pause,n=void 0!==t&&t,a=r.playbackOptions,i=r.timeline,o=i.playbackOptions,u=X(q({},o,a,{started:void 0!==e?e:Date.now()}));if(void 0!==a.initialIterations)void 0===a.reverse&&(u.reverse=R(o,u.initialIterations-o.initialIterations)),void 0===a.iterations&&o.iterations!==1/0&&(u.iterations=Math.max(0,o.initialIterations+o.iterations-u.initialIterations));else{var s=W(o,u.started),c=R(o,s);if(u.initialIterations=o.initialIterations+s,void 0===a.iterations){if(u.iterations=o.iterations-s,void 0!==a.reverse&&u.reverse!==o.reverse&&u.iterations!==1/0){var f=u.initialIterations;u.initialIterations=u.iterations,u.iterations=f}}else void 0!==a.reverse&&a.reverse!==c&&u.iterations!==1/0&&(u.initialIterations=o.iterations-s);void 0===a.reverse?u.reverse=c:u.iterations===1/0&&(u.initialIterations=a.reverse===c?u.initialIterations%1:1-u.initialIterations%1)}return n&&delete u.started,u},G=function(r,e){var t=r.playbackOptions,n=r.state;n.started=void 0!==t.started,n.iterationsComplete=W(t,e),n.totalIterations=t.initialIterations+n.iterationsComplete,n.reverse=R(t,n.iterationsComplete),n.finished=t.iterations-n.iterationsComplete==0,n.position=H(n.totalIterations,n.reverse)},K=function(r){var e=r.middleware,t=void 0===e?D.defaults.timeline.middleware:e;if(!Array.isArray(t))throw new TypeError("The timeline function middleware option must be of type array");for(var n=0,a=t.length;n<a;n++){var i=t[n],o=i.name,u=i.input,s=i.output;if("string"!=typeof o)throw new TypeError("A middleware must have a name prop");if("function"!=typeof u)throw new TypeError("The "+o+" middleware must have an input method");if("function"!=typeof s)throw new TypeError("The "+o+" middleware must have an output method")}return t},X=function(r){var e=r.alternate,t=void 0===e?D.defaults.timeline.alternate:e,n=r.duration,a=r.initialIterations,i=void 0===a?D.defaults.timeline.initialIterations:a,o=r.iterations,u=void 0===o?D.defaults.timeline.iterations:o,s=r.reverse,c=void 0===s?D.defaults.timeline.reverse:s,f=r.started,l={};return void 0!==n&&(l.duration=n),void 0!==f&&(l.started=f),q({},l,{alternate:t,initialIterations:i,iterations:u,reverse:c})},Y=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},rr=0,er=function(r){return{previousPlaybackOptions:{},previousState:{},subscribe:fr(r),subscriptions:[],unsubscribe:yr(r)}},tr=function(r){var e=r.event,t=r.state;return t.started&&(!t.finished||void 0===e.previousState||!e.previousState.finished)},nr=function(r){for(var e=r.event.subscriptions,t=[],n=0,a=e.length;n<a;n++){var i=e[n].name;-1===t.indexOf(i)&&t.push(i)}return t},ar=function(r,e){var t=r.event.previousState,n=r.playbackOptions,a=r.state,i=r.timelineShapes,o=[],u=n.alternate,s=n.duration,c=n.initialIterations,f=n.iterations,l=n.reverse,y=n.started,v=y+s*a.iterationsComplete,p=void 0!==t.iterationsComplete?y+s*t.iterationsComplete+1:0,h=function(r){return ur({alternate:u,duration:s,initialIterations:c,iterations:f,max:v,min:p,position:r,reverse:l,started:y})};if(-1!==e.indexOf("timeline.start"))for(var m=h(0),d=0,x=m.length;d<x;d++)o.push({name:"timeline.start",at:m[d]});if(-1!==e.indexOf("timeline.finish"))for(var g=h(1),b=0,F=g.length;b<F;b++)o.push({name:"timeline.finish",at:g[b]});if(-1!==e.indexOf("shape.start"))for(var w=0,A=i.length;w<A;w++)for(var S=i[w],O=S.shape.name,M=h(W=S.timelinePosition.start),k=0,I=M.length;k<I;k++)o.push({name:"shape.start",at:M[k],options:{shapeName:O}});if(-1!==e.indexOf("shape.finish"))for(var E=0,C=i.length;E<C;E++)for(var D=i[E],O=D.shape.name,B=h(H=D.timelinePosition.finish),j=0,P=B.length;j<P;j++)o.push({name:"shape.finish",at:B[j],options:{shapeName:O}});if(-1!==e.indexOf("keyframe"))for(var T=0,q=i.length;T<q;T++)for(var N=i[T],Q=N.shape,O=Q.name,L=Q.keyframes,R=N.timelinePosition,W=R.start,H=R.finish,V=0,Z=L.length;V<Z;V++)for(var z=L[V],J=z.name,_=h(W+(H-W)*z.position),U=0,$=_.length;U<$;U++)o.push({name:"keyframe",at:_[U],options:{keyframeName:J,shapeName:O}});return-1!==e.indexOf("frame")&&o.push({name:"frame",at:v}),o.sort(ir)},ir=function(r,e){return r.at===e.at?0:r.at<e.at?-1:1},or=function(r){return JSON.stringify(r.playbackOptions)!==JSON.stringify(r.event.previousPlaybackOptions)},ur=function(r){var e=r.alternate,t=r.duration,n=r.initialIterations,a=r.iterations,i=r.max,o=r.min,u=r.position,s=r.reverse,c=r.started,f=H(n,s),l=c+t*a;return function r(f){if(f<=i){var y=R({alternate:e,initialIterations:n,iterations:a,reverse:s},W({duration:t,iterations:a,started:c},f)),v=0===u||1===u,p=f===l,h=0===u&&y||1===u&&!y;if(f<=l&&(!v||!p||h))return(f>=o?[f]:[]).concat(r(f+cr({alternate:e,duration:t,position:u,reverse:y})))}return[]}(c+sr({alternate:e,duration:t,from:f,reverse:s,to:u}))},sr=function(r){var e=r.alternate,t=r.duration,n=r.from,a=r.reverse,i=r.to;return t*(e?a?n<i?i+n:n-i:n>i?2-(i+n):i-n:a?1===n&&0===i?1:(1-i+n)%1:0===n&&1===i?1:(1-n+i)%1)},cr=function(r){var e=r.alternate,t=r.duration,n=r.position,a=r.reverse;return t*(e?a?2*(0===n?1:n):2-2*(1===n?0:n):1)},fr=function(r){return function(e,t){if(lr(e)){var n=++rr;return r.event.subscriptions.push({name:e,callback:t,token:n}),n}}},lr=function(r){return!0},yr=function(r){return function(e){for(var t=r.event.subscriptions,n=void 0,a=0,i=t.length;a<i;a++)t[a].token===e&&(n=a);return void 0!==n&&(r.event.subscriptions.splice(n,1),!0)}},vr=function(){function r(r,e){var t=[],n=!0,a=!1,i=void 0;try{for(var o,u=r[Symbol.iterator]();!(n=(o=u.next()).done)&&(t.push(o.value),!e||t.length!==e);n=!0);}catch(r){a=!0,i=r}finally{try{!n&&u.return&&u.return()}finally{if(a)throw i}}return t}return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return r(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),pr=2*Math.PI,hr=function(r,e,t,n,a,i,o){var u=r.x,s=r.y;return{x:n*(u*=e)-a*(s*=t)+i,y:a*u+n*s+o}},mr=function(r,e){var t=4/3*Math.tan(e/4),n=Math.cos(r),a=Math.sin(r),i=Math.cos(r+e),o=Math.sin(r+e);return[{x:n-a*t,y:a+n*t},{x:i+o*t,y:o-i*t},{x:i,y:o}]},dr=function(r,e,t,n){var a=r*n-e*t<0?-1:1,i=(r*t+e*n)/(Math.sqrt(r*r+e*e)*Math.sqrt(r*r+e*e));return i>1&&(i=1),i<-1&&(i=-1),a*Math.acos(i)},xr=function(r,e,t,n,a,i,o,u,s,c,f,l){var y=Math.pow(a,2),v=Math.pow(i,2),p=Math.pow(f,2),h=Math.pow(l,2),m=y*v-y*h-v*p;m<0&&(m=0),m/=y*h+v*p;var d=(m=Math.sqrt(m)*(o===u?-1:1))*a/i*l,x=m*-i/a*f,g=c*d-s*x+(r+t)/2,b=s*d+c*x+(e+n)/2,F=(f-d)/a,w=(l-x)/i,A=(-f-d)/a,S=(-l-x)/i,O=dr(1,0,F,w),M=dr(F,w,A,S);return 0===u&&M>0&&(M-=pr),1===u&&M<0&&(M+=pr),[g,b,O,M]},gr=function(r){var e=r.px,t=r.py,n=r.cx,a=r.cy,i=r.rx,o=r.ry,u=r.xAxisRotation,s=void 0===u?0:u,c=r.largeArcFlag,f=void 0===c?0:c,l=r.sweepFlag,y=void 0===l?0:l,v=[];if(0===i||0===o)return[];var p=Math.sin(s*pr/360),h=Math.cos(s*pr/360),m=h*(e-n)/2+p*(t-a)/2,d=-p*(e-n)/2+h*(t-a)/2;if(0===m&&0===d)return[];i=Math.abs(i),o=Math.abs(o);var x=Math.pow(m,2)/Math.pow(i,2)+Math.pow(d,2)/Math.pow(o,2);x>1&&(i*=Math.sqrt(x),o*=Math.sqrt(x));var g=xr(e,t,n,a,i,o,f,y,p,h,m,d),b=vr(g,4),F=b[0],w=b[1],A=b[2],S=b[3],O=Math.max(Math.ceil(Math.abs(S)/(pr/4)),1);S/=O;for(var M=0;M<O;M++)v.push(mr(A,S)),A+=S;return v.map(function(r){var e=hr(r[0],i,o,h,p,F,w),t=e.x,n=e.y,a=hr(r[1],i,o,h,p,F,w),u=a.x,s=a.y,c=hr(r[2],i,o,h,p,F,w);return{x1:t,y1:n,x2:u,y2:s,x:c.x,y:c.y}})},br=function(r,e,t){return Math.acos((Math.pow(r,2)+Math.pow(e,2)-Math.pow(t,2))/(2*r*e))*(180/Math.PI)},Fr=function(r,e){for(var t=arguments.length,n=Array(t>2?t-2:0),a=2;a<t;a++)n[a-2]=arguments[a];return Ar(e)?e.map(function(e){return r.apply(void 0,[e].concat(n))}):r.apply(void 0,[e].concat(n))},wr=function(r){return Ar(r)?r:[r]},Ar=function(r){return Array.isArray(r[0])},Sr=function(r,e,t){var n=r===e?0:Math.abs(e-r);return 0===n?r:r<e?r+n*t:r-n*t},Or=function(r){for(var e=[],t=0,n=r.length;t<n;t++){var a=r[t];if(a.curve&&"cubic"!==a.curve.type){var i=r[t-1],o=i.x,u=i.y,s=a.x,c=a.y;if("arc"===a.curve.type)gr({px:o,py:u,cx:s,cy:c,rx:a.curve.rx,ry:a.curve.ry,xAxisRotation:a.curve.xAxisRotation,largeArcFlag:a.curve.largeArcFlag,sweepFlag:a.curve.sweepFlag}).forEach(function(r){var t=r.x1,n=r.y1,a=r.x2,i=r.y2,o=r.x,u=r.y;e.push({x:o,y:u,curve:{type:"cubic",x1:t,y1:n,x2:a,y2:i}})});else if("quadratic"===a.curve.type){var f=o+2/3*(a.curve.x1-o),l=u+2/3*(a.curve.y1-u),y=s+2/3*(a.curve.x1-s),v=c+2/3*(a.curve.y1-c);e.push({x:s,y:c,curve:{type:"cubic",x1:f,y1:l,x2:y,y2:v}})}}else e.push(a)}return e},Mr=function(r){return Fr(Or,r)},kr=function(){function r(r,e){var t=[],n=!0,a=!1,i=void 0;try{for(var o,u=r[Symbol.iterator]();!(n=(o=u.next()).done)&&(t.push(o.value),!e||t.length!==e);n=!0);}catch(r){a=!0,i=r}finally{try{!n&&u.return&&u.return()}finally{if(a)throw i}}return t}return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return r(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),Ir=function(r,e){return[{x:Sr(r.x,e.x,.5),y:Sr(r.y,e.y,.5)},e]},Er=function(r,e){var t=e.curve,n=t.x1,a=t.y1,i=t.x2,o=t.y2,u={x:r.x,y:r.y},s={x:n,y:a},c={x:i,y:o},f={x:e.x,y:e.y},l={x:Sr(u.x,s.x,.5),y:Sr(u.y,s.y,.5)},y={x:Sr(s.x,c.x,.5),y:Sr(s.y,c.y,.5)},v={x:Sr(c.x,f.x,.5),y:Sr(c.y,f.y,.5)},p={x:Sr(l.x,y.x,.5),y:Sr(l.y,y.y,.5)},h={x:Sr(y.x,v.x,.5),y:Sr(y.y,v.y,.5)},m={x:Sr(p.x,h.x,.5),y:Sr(p.y,h.y,.5)};return[{x:m.x,y:m.y,curve:{type:"cubic",x1:l.x,y1:l.y,x2:p.x,y2:p.y}},{x:f.x,y:f.y,curve:{type:"cubic",x1:h.x,y1:h.y,x2:v.x,y2:v.y}}]},Cr=function(r,e){return e.curve?Er(r,e):Ir(r,e)},Dr=function r(t,n){if(isNaN(n))throw Error("`add` function must be passed a number as the second argument");for(var a=[].concat(e(t)),i=1;i<a.length;){if(a.length>=n)return a;var o=a[i];if(o.moveTo)i++;else{var u=a[i-1],s=Cr(u,o),c=kr(s,2),f=c[0],l=c[1];a.splice(i,1,f,l),i+=2}}return r(a,n)},Br=function(r,e){return Dr(Mr(r),e)},jr=function(r,e){var t=Qr(r,e);return t.reduce(function(r,e,n){var a=e.x,i=e.y;if(!e.moveTo){var o=t[n-1],u=o.x,s=o.y;r+=Pr(u,s,a,i)}return r},0)},Pr=function(r,e,t,n){return Math.sqrt(Math.pow(r-t,2)+Math.pow(e-n,2))},Tr=function(){function r(r,e){var t=[],n=!0,a=!1,i=void 0;try{for(var o,u=r[Symbol.iterator]();!(n=(o=u.next()).done)&&(t.push(o.value),!e||t.length!==e);n=!0);}catch(r){a=!0,i=r}finally{try{!n&&u.return&&u.return()}finally{if(a)throw i}}return t}return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return r(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),qr=function(r){var e=Tr(r[0],2),t=e[0],n=e[1],a=Tr(r[1],2),i=a[0],o=a[1],u=Tr(r[2],2),s=u[0],c=u[1],f=Pr(t,n,i,o),l=Pr(i,o,s,c),y=Pr(s,c,t,n);return br(f,l,y)},Nr=function(r){return r.reduce(function(r,e){return!!e.curve||r},!1)},Qr=function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;if(!Nr(r))return r;var t=Mr(r),n=[];return t.map(function(r,a){if(r.curve){var i=t[a-1];Rr(i,r,e).map(function(r){return n.push(r)})}else n.push(r)}),n},Lr=function(r,e,t,n,a,i,o,u,s){var c=[[o,u],[r,e],[a,i]];return qr([[t,n],[a,i],[r,e]])<s&&qr(c)<s},Rr=function r(e,n,a){var i=e.x,o=e.y,u=n.x,s=n.y,c=n.curve,f=c.x1,l=c.y1,y=c.x2,v=c.y2;if(Lr(i,o,f,l,u,s,y,v,a))return[n];var p=Er(e,n),h=Tr(p,2),m=h[0],d=h[1];return[].concat(t(r(e,m,a)),t(r(m,d,a)))},Wr=function(r){var e=void 0,t=void 0,n=void 0,a=void 0;return wr(r).map(function(r){return Qr(r).map(function(r){var i=r.x,o=r.y;("number"!=typeof e||o>e)&&(e=o),("number"!=typeof t||i<t)&&(t=i),("number"!=typeof n||i>n)&&(n=i),("number"!=typeof a||o<a)&&(a=o)})}),{bottom:e,center:{x:t+(n-t)/2,y:a+(e-a)/2},left:t,right:n,top:a}},Hr=function(r){return r.reduce(function(r,e){return r+Vr(e)},0)},Vr=function(r){return r.length-(Zr(r)?1:0)},Zr=function(r){var e=r[0],t=r[r.length-1];return e.x===t.x&&e.y===t.y},zr=function(r){return r.reduce(function(r,e){return[].concat(n(r),n(e))},[])},Jr=function(r,e){var t=Gr(r),a=Hr(t),i=(e%a+a)%a;if(!i)return r;var o=_r(t,i),u=o.lineIndex,s=o.pointIndex,c=Ur(t,u),f=$r(c[0],s),l=[].concat(n(c)).splice(1);return zr([f].concat(n(l)))},_r=function(r,e){for(var t=0,n=r.length;t<n;t++){var a=Vr(r[t]);if(e<=a-1)return{lineIndex:t,pointIndex:e};e-=a}},Ur=function(r,e){return[].concat(n(r)).splice(e).concat([].concat(n(r)).splice(0,e))},$r=function(r,e){if(!e)return r;var t=[{x:r[e].x,y:r[e].y,moveTo:!0}].concat(n([].concat(n(r)).splice(e+1)));return Zr(r)?[].concat(n(t),n([].concat(n(r)).splice(1,e))):[].concat(n(t),n([].concat(n(r)).splice(0,e+1)))},Gr=function(r){return r.reduce(function(r,e){return e.moveTo&&r.push([]),r[r.length-1].push(e),r},[])},Kr=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},Xr=function(r,e,t){return r.map(function(r){var n=Kr({},r);return n.x+=e,n.y+=t,n.curve&&(n.curve=Kr({},n.curve),"quadratic"!==n.curve.type&&"cubic"!==n.curve.type||(n.curve.x1+=e,n.curve.y1+=t),"cubic"===n.curve.type&&(n.curve.x2+=e,n.curve.y2+=t)),n})},Yr=function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return Fr(Xr,r,e,t)},re=function(r,e,t,n,a){if(r===t)return e>=n?0:180;var i=Pr(t,n,r,e-100),o=br(a,100,i);return r<t?o:360-o},ee=function(r,e,t,n){var a=r[e-2],i=a.x,o=a.y,u=r[e-1],s=u.x,c=u.y,f=Pr(i,o,s,c);return{x1:i,y1:o,x2:s,y2:c,segmentInterval:(n-t)/f+1,segmentLength:f}},te=function(r,e,t){var n=Qr(r,t),a=n.length,i=jr(n),o=i*e,u=e>1?ee(n,a,i,o):e<0?ne(n,o):ae(n,a,o),s=u.x1,c=u.y1,f=u.x2,l=u.y2,y=u.segmentInterval,v=u.segmentLength;return{angle:re(s,c,f,l,v),x:Sr(s,f,y),y:Sr(c,l,y)}},ne=function(r,e){var t=r[0],n=t.x,a=t.y,i=r[1],o=i.x,u=i.y,s=Pr(n,a,o,u);return{x1:n,y1:a,x2:o,y2:u,segmentInterval:e/s,segmentLength:s}},ae=function(r,e,t){for(var n=0,a=0;a<e;a++)if(!r[a].moveTo){var i=r[a-1],o=i.x,u=i.y,s=r[a],c=s.x,f=s.y,l=Pr(o,u,c,f);if(n+l>=t)return{x1:o,y1:u,x2:c,y2:f,segmentInterval:(t-n)/l,segmentLength:l};n+=l}},ie=function(r,e,t){if(e.curve||t.curve)return!1;var n=(t.y-r.y)*(e.x-r.x)-(t.x-r.x)*(e.y-r.y);if(Math.abs(n)>Number.EPSILON)return!1;var a=(t.x-r.x)*(e.x-r.x)+(t.y-r.y)*(e.y-r.y);return!(a<0)&&!(a>(e.x-r.x)*(e.x-r.x)+(e.y-r.y)*(e.y-r.y))},oe=function(r){for(var e=[],t=0,n=r.length;t<n;t++){var a=e[e.length-1],i=r[t+1],o=r[t];a&&i&&o&&ie(a,i,o)||e.push(o)}return e},ue=function(r){var e=void 0,t=void 0;return r.reverse().map(function(r,n){var a=r.x,i=r.y,o=r.moveTo,u=r.curve,s={x:a,y:i};if(t){var c=t,f=c.x1,l=c.y1,y=c.x2,v=c.y2;s.curve={type:"cubic",x1:y,y1:v,x2:f,y2:l}}return(0===n||e)&&(s.moveTo=!0),e=o,t=u||null,s})},se=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},ce=function(){function r(r,e){var t=[],n=!0,a=!1,i=void 0;try{for(var o,u=r[Symbol.iterator]();!(n=(o=u.next()).done)&&(t.push(o.value),!e||t.length!==e);n=!0);}catch(r){a=!0,i=r}finally{try{!n&&u.return&&u.return()}finally{if(a)throw i}}return t}return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return r(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),fe=function(r,e,t,n,a){var i=a.x,o=a.y,u=r-i,s=e-o;return[u*t-s*n+i,u*n+s*t+o]},le=function(r,e,t){return r.map(function(r){var n=e*Math.PI/180,a=Math.cos(n),i=Math.sin(n),o=fe(r.x,r.y,a,i,t),u=ce(o,2),s=u[0],c=u[1],f=se({},r,{x:s,y:c});if(f.curve){if("quadratic"===f.curve.type||"cubic"===f.curve.type){var l=fe(f.curve.x1,f.curve.y1,a,i,t),y=ce(l,2),v=y[0],p=y[1];f.curve=se({},f.curve,{x1:v,y1:p})}if("cubic"===f.curve.type){var h=fe(f.curve.x2,f.curve.y2,a,i,t),m=ce(h,2),d=m[0],x=m[1];f.curve=se({},f.curve,{x2:d,y2:x})}}return f})},ye=function(r,e){var t=Wr(r).center;return Fr(le,r,e,t)},ve=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},pe=function(r,e,t,n){var a=ve({},r);return a.x=t-(t-a.x)*e,a.y=n-(n-a.y)*e,r.curve&&(a.curve=ve({},a.curve),"arc"===a.curve.type?(a.curve.rx&&(a.curve.rx=a.curve.rx*e),a.curve.ry&&(a.curve.ry=a.curve.ry*e)):(a.curve.x1=t-(t-a.curve.x1)*e,a.curve.y1=n-(n-a.curve.y1)*e,"cubic"===a.curve.type&&(a.curve.x2=t-(t-a.curve.x2)*e,a.curve.y2=n-(n-a.curve.y2)*e))),a},he=Object.freeze({add:Br,boundingBox:Wr,cubify:Mr,length:jr,moveIndex:function(r,e){return Fr(Jr,r,e)},offset:Yr,position:te,remove:function(r){return Fr(oe,r)},reverse:function(r){return Fr(ue,Mr(r))},rotate:ye,scale:function(r,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"center",n=Wr(r),a=n.bottom,i=n.center,o=n.left,u=n.right,s=n.top,c=i.x,f=i.y;switch(t){case"topLeft":c=o,f=s;break;case"topRight":c=u,f=s;break;case"bottomRight":c=u,f=a;break;case"bottomLeft":c=o,f=a}return Fr(function(r){return r.map(function(r){return pe(r,e,c,f)})},r)}}),me=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},de=function(r){var e=r.type,t=a(r,["type"]);switch(e){case"circle":return xe(t);case"ellipse":return ge(t);case"line":return be(t);case"path":return Ie(t);case"polygon":return Ee(t);case"polyline":return Ce(t);case"rect":return Be(t);case"g":return Te(t);default:throw new Error("Not a valid shape type")}},xe=function(r){var e=r.cx,t=r.cy,n=r.r;return[{x:e,y:t-n,moveTo:!0},{x:e,y:t+n,curve:{type:"arc",rx:n,ry:n,sweepFlag:1}},{x:e,y:t-n,curve:{type:"arc",rx:n,ry:n,sweepFlag:1}}]},ge=function(r){var e=r.cx,t=r.cy,n=r.rx,a=r.ry;return[{x:e,y:t-a,moveTo:!0},{x:e,y:t+a,curve:{type:"arc",rx:n,ry:a,sweepFlag:1}},{x:e,y:t-a,curve:{type:"arc",rx:n,ry:a,sweepFlag:1}}]},be=function(r){var e=r.x1,t=r.x2;return[{x:e,y:r.y1,moveTo:!0},{x:t,y:r.y2}]},Fe=/[MmLlHhVvCcSsQqTtAaZz]/g,we={A:7,C:6,H:1,L:2,M:2,Q:4,S:4,T:2,V:1,Z:0},Ae=["a","c","h","l","m","q","s","t","v"],Se=function(r){return-1!==Ae.indexOf(r)},Oe=["xAxisRotation","largeArcFlag","sweepFlag"],Me=function(r){return r.match(Fe)},ke=function(r){return r.split(Fe).map(function(r){return r.replace(/[0-9]+-/g,function(r){return r.slice(0,-1)+" -"})}).map(function(r){return r.replace(/\.[0-9]+/g,function(r){return r+" "})}).map(function(r){return r.trim()}).filter(function(r){return r.length>0}).map(function(r){return r.split(/[ ,]+/).map(parseFloat).filter(function(r){return!isNaN(r)})})},Ie=function(r){for(var e=r.d,t=Me(e),n=ke(e),a=[],i=void 0,o=0,u=t.length;o<u;o++){var s=t[o],c=s.toUpperCase(),f=we[c],l=Se(s),y=0===o?null:a[a.length-1];if(f>0)for(var v=n.shift(),p=v.length/f,h=0;h<p;h++)switch(c){case"M":var m=(l&&y?y.x:0)+v.shift(),d=(l&&y?y.y:0)+v.shift();i={x:m,y:d},a.push({x:m,y:d,moveTo:!0});break;case"L":a.push({x:(l?y.x:0)+v.shift(),y:(l?y.y:0)+v.shift()});break;case"H":a.push({x:(l?y.x:0)+v.shift(),y:y.y});break;case"V":a.push({x:y.x,y:(l?y.y:0)+v.shift()});break;case"A":a.push({curve:{type:"arc",rx:v.shift(),ry:v.shift(),xAxisRotation:v.shift(),largeArcFlag:v.shift(),sweepFlag:v.shift()},x:(l?y.x:0)+v.shift(),y:(l?y.y:0)+v.shift()});var x=!0,g=!1,b=void 0;try{for(var F,w=Oe[Symbol.iterator]();!(x=(F=w.next()).done);x=!0){var A=F.value;0===a[a.length-1].curve[A]&&delete a[a.length-1].curve[A]}}catch(r){g=!0,b=r}finally{try{!x&&w.return&&w.return()}finally{if(g)throw b}}break;case"C":a.push({curve:{type:"cubic",x1:(l?y.x:0)+v.shift(),y1:(l?y.y:0)+v.shift(),x2:(l?y.x:0)+v.shift(),y2:(l?y.y:0)+v.shift()},x:(l?y.x:0)+v.shift(),y:(l?y.y:0)+v.shift()});break;case"S":var S=(l?y.x:0)+v.shift(),O=(l?y.y:0)+v.shift(),M=(l?y.x:0)+v.shift(),k=(l?y.y:0)+v.shift(),I={},E=void 0,C=void 0;y.curve&&"cubic"===y.curve.type?(I.x=Math.abs(y.x-y.curve.x2),I.y=Math.abs(y.y-y.curve.y2),E=y.x<y.curve.x2?y.x-I.x:y.x+I.x,C=y.y<y.curve.y2?y.y-I.y:y.y+I.y):(I.x=Math.abs(M-S),I.y=Math.abs(k-O),E=y.x,C=y.y),a.push({curve:{type:"cubic",x1:E,y1:C,x2:S,y2:O},x:M,y:k});break;case"Q":a.push({curve:{type:"quadratic",x1:(l?y.x:0)+v.shift(),y1:(l?y.y:0)+v.shift()},x:(l?y.x:0)+v.shift(),y:(l?y.y:0)+v.shift()});break;case"T":var D=(l?y.x:0)+v.shift(),B=(l?y.y:0)+v.shift(),j=void 0,P=void 0;if(y.curve&&"quadratic"===y.curve.type){var T={x:Math.abs(y.x-y.curve.x1),y:Math.abs(y.y-y.curve.y1)};j=y.x<y.curve.x1?y.x-T.x:y.x+T.x,P=y.y<y.curve.y1?y.y-T.y:y.y+T.y}else j=y.x,P=y.y;a.push({curve:{type:"quadratic",x1:j,y1:P},x:D,y:B})}else y.x===i.x&&y.y===i.y||a.push({x:i.x,y:i.y})}return a},Ee=function(r){var e=r.points;return De({closed:!0,points:e})},Ce=function(r){var e=r.points;return De({closed:!1,points:e})},De=function(r){var e=r.closed,t=r.points.split(/[\s,]+/).map(function(r){return parseFloat(r)}).reduce(function(r,e,t){return t%2==0?r.push({x:e}):r[(t-1)/2].y=e,r},[]);return e&&t.push(me({},t[0])),t[0].moveTo=!0,t},Be=function(r){var e=r.height,t=r.rx,n=r.ry,a=r.width,i=r.x,o=r.y;return t||n?Pe({height:e,rx:t||n,ry:n||t,width:a,x:i,y:o}):je({height:e,width:a,x:i,y:o})},je=function(r){var e=r.height,t=r.width,n=r.x,a=r.y;return[{x:n,y:a,moveTo:!0},{x:n+t,y:a},{x:n+t,y:a+e},{x:n,y:a+e},{x:n,y:a}]},Pe=function(r){var e=r.height,t=r.rx,n=r.ry,a=r.width,i=r.x,o=r.y,u={type:"arc",rx:t,ry:n,sweepFlag:1};return[{x:i+t,y:o,moveTo:!0},{x:i+a-t,y:o},{x:i+a,y:o+n,curve:u},{x:i+a,y:o+e-n},{x:i+a-t,y:o+e,curve:u},{x:i+t,y:o+e},{x:i,y:o+e-n,curve:u},{x:i,y:o+n},{x:i+t,y:o,curve:u}]},Te=function(r){return r.shapes.map(function(r){return de(r)})},qe=function(r){var e="",t=0,n=void 0,a=!0,i=!1,o=void 0;try{for(var u,s=r[Symbol.iterator]();!(a=(u=s.next()).done);a=!0){var c=u.value,f=c.curve,l=void 0!==f&&f,y=c.moveTo,v=c.x,p=c.y,h=0===t||y,m=t===r.length-1||r[t+1].moveTo,d=0===t?null:r[t-1];if(h)n=c,m||(e+="M"+v+","+p);else if(l){switch(l.type){case"arc":var x=c.curve,g=x.largeArcFlag,b=void 0===g?0:g,F=x.rx,w=x.ry,A=x.sweepFlag,S=void 0===A?0:A,O=x.xAxisRotation;e+="A"+F+","+w+","+(void 0===O?0:O)+","+b+","+S+","+v+","+p;break;case"cubic":var M=c.curve;e+="C"+M.x1+","+M.y1+","+M.x2+","+M.y2+","+v+","+p;break;case"quadratic":var k=c.curve;e+="Q"+k.x1+","+k.y1+","+v+","+p}m&&v===n.x&&p===n.y&&(e+="Z")}else m&&v===n.x&&p===n.y?e+="Z":v!==d.x&&p!==d.y?e+="L"+v+","+p:v!==d.x?e+="H"+v:p!==d.y&&(e+="V"+p);t++}}catch(r){i=!0,o=r}finally{try{!a&&s.return&&s.return()}finally{if(i)throw o}}return e},Ne=function(r){var e=Array.isArray(r),t=e?Array.isArray(r[0]):"g"===r.type,n=e?r:t?r.shapes.map(function(r){return de(r)}):de(r);return t?n.map(function(r){return qe(r)}):qe(n)},Qe=("function"==typeof Symbol&&Symbol.iterator,"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r}),Le=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},Re=function r(e,t){var n=e.points,a=e.childFrameShapes;if(a){for(var i=[],o=0,u=a.length;o<u;o++)i.push(r(a[o],t[o]));e.childFrameShapes=i}else{for(var s=!1,c=0,f=t.length;c<f;c++)if(t[c]){s=!0;break}if(s){for(var l=[],y=Mr(n),v=0,p=y.length;v<p;v++){var h=y[v];t[v]&&!h.curve?l.push(Le({},h,{curve:{type:"cubic",x1:n[v-1].x,y1:n[v-1].y,x2:n[v].x,y2:n[v].y}})):l.push(h)}e.points=l}}return e},We=function r(e,t){if(Array.isArray(t[0])){if(e.childFrameShapes||(e.childFrameShapes=[k(e)],delete e.points),e.childFrameShapes.length!==t.length)for(var n=0,a=t.length;n<a;n++)if(n>=e.childFrameShapes.length){var i=e.childFrameShapes[n-1].points;e.childFrameShapes.push({attributes:k(e.attributes),points:[Le({},k(i[i.length-1]),{moveTo:!0}),k(i[i.length-1])]})}for(var o=[],u=0,s=e.childFrameShapes.length;u<s;u++)o.push(r(e.childFrameShapes[u],t[u]));e.childFrameShapes=o}else{for(var c=Ke(e.points),f=0,l=t.length;f<l;f++){var y=t[f];if(!c[f]){var v=c[f-1];c[f]=[Le({},k(v[v.length-1]),{moveTo:!0}),k(v[v.length-1])]}y>c[f].length&&(c[f]=Br(c[f],y))}e.points=Ue(c)}return e},He=function r(e,t,n){if(Array.isArray(t)){Array.isArray(e[n])||(e[n]=[e[n]]);for(var a=0,i=t.length;a<i;a++)e[n]=r(e[n],t[a],a)}else Array.isArray(e[n])?r(e[n],t,0):e[n]=Math.max(e[n]||0,t);return e},Ve=function r(e){for(var t=e[0],n=1,a=e.length;n<a;n++){for(var i=e[n],o=[],u=0,s=t.length;u<s;u++){var c=t[u];Array.isArray(c)?o.push(r([c,i[u]])):o.push(c||i[u])}t=o}return t},Ze=function(r){for(var e=[],t=0,n=r.length;t<n;t++)for(var a=r[t],i=0,o=a.length;i<o;i++)e=He(e,a[i],i);return e},ze=function(r,e){G(r,void 0!==e?e:Date.now());for(var t=[],n=r.timelineShapes,a=0,i=n.length;a<i;a++){var o=n[a],u=o.shape,s=u.keyframes,c=o.timelinePosition,f=c.start,l=c.finish,y=r.state.position;if(y<=f)t.push(T(s[0].frameShape,r.middleware));else if(y>=l)t.push(T(s[s.length-1].frameShape,r.middleware));else{var v=(y-f)/(l-f);t.push(_e(u,v,r.middleware))}}return t},Je=function r(e){var t=e.shapes,n=o(e,["shapes"]),a=(n.type,n.height,n.width,n.x,n.y,n.cx,n.cy,n.r,n.rx,n.ry,n.x1,n.x2,n.y1,n.y2,n.d,n.points,n.shapes,o(n,["type","height","width","x","y","cx","cy","r","rx","ry","x1","x2","y1","y2","d","points","shapes"]));if("g"===n.type&&t){for(var i=[],u=0,s=t.length;u<s;u++)i.push(r(t[u]));return{attributes:a,childFrameShapes:i}}return{attributes:a,points:de(n)}},_e=function(r,e,t){for(var n=r.keyframes,a=0,i=0,o=n.length;i<o;i++)e>n[i].position&&(a=i);for(var u=a+1,s=n[a],c=n[u],f=(e-s.position)/(c.position-s.position),l=c.tween.forces,y=Xe(s.frameShape,c.frameShape,c.tween.easing,f),v=0,p=l.length;v<p;v++)y=l[v](y,f);return T(y,t)},Ue=function(r){var e;return(e=[]).concat.apply(e,i(r))},$e=function r(e){var t=e.points,n=e.childFrameShapes,a=[];if(n)for(var i=0,o=n.length;i<o;i++)a.push(r(n[i]));else for(var u=0,s=t.length;u<s;u++)a.push(void 0!==t[u].curve);return a},Ge=function r(e){var t=e.points,n=e.childFrameShapes;if(n){for(var a=[],i=0,o=n.length;i<o;i++)a.push(r(n[i]));return a}for(var u=[],s=0,c=t.length;s<c;s++)t[s].moveTo?u.push(1):u[u.length-1]++;return u},Ke=function(r){for(var e=[],t=0,n=r.length;t<n;t++){var a=r[t];a.moveTo?e.push([a]):e[e.length-1].push(a)}return e},Xe=function r(e,t,n,a){if("number"==typeof e)return e===t?e:n(a,e,t,1);if(Array.isArray(e)){for(var i=[],o=0,u=e.length;o<u;o++)i.push(r(e[o],t[o],n,a));return i}if(null!==e&&"object"===(void 0===e?"undefined":Qe(e))){var s={};for(var c in e)s[c]=r(e[c],t[c],n,a);return s}return e},Ye={linear:function(r,e,t,n){return(t-e)*r/n+e},easeInQuad:function(r,e,t,n){return(t-e)*(r/=n)*r+e},easeOutQuad:function(r,e,t,n){return-(t-e)*(r/=n)*(r-2)+e},easeInOutQuad:function(r,e,t,n){var a=t-e;return(r/=n/2)<1?a/2*r*r+e:-a/2*(--r*(r-2)-1)+e},easeInCubic:function(r,e,t,n){return(t-e)*(r/=n)*r*r+e},easeOutCubic:function(r,e,t,n){return(t-e)*((r=r/n-1)*r*r+1)+e},easeInOutCubic:function(r,e,t,n){var a=t-e;return(r/=n/2)<1?a/2*r*r*r+e:a/2*((r-=2)*r*r+2)+e},easeInQuart:function(r,e,t,n){return(t-e)*(r/=n)*r*r*r+e},easeOutQuart:function(r,e,t,n){return-(t-e)*((r=r/n-1)*r*r*r-1)+e},easeInOutQuart:function(r,e,t,n){var a=t-e;return(r/=n/2)<1?a/2*r*r*r*r+e:-a/2*((r-=2)*r*r*r-2)+e},easeInQuint:function(r,e,t,n){return(t-e)*(r/=n)*r*r*r*r+e},easeOutQuint:function(r,e,t,n){return(t-e)*((r=r/n-1)*r*r*r*r+1)+e},easeInOutQuint:function(r,e,t,n){var a=t-e;return(r/=n/2)<1?a/2*r*r*r*r*r+e:a/2*((r-=2)*r*r*r*r+2)+e},easeInSine:function(r,e,t,n){var a=t-e;return-a*Math.cos(r/n*(Math.PI/2))+a+e},easeOutSine:function(r,e,t,n){return(t-e)*Math.sin(r/n*(Math.PI/2))+e},easeInOutSine:function(r,e,t,n){return-(t-e)/2*(Math.cos(Math.PI*r/n)-1)+e},easeInExpo:function(r,e,t,n){var a=t-e;return 0==r?e:a*Math.pow(2,10*(r/n-1))+e},easeOutExpo:function(r,e,t,n){var a=t-e;return r==n?e+a:a*(1-Math.pow(2,-10*r/n))+e},easeInOutExpo:function(r,e,t,n){var a=t-e;return 0===r?e:r===n?e+a:(r/=n/2)<1?a/2*Math.pow(2,10*(r-1))+e:a/2*(2-Math.pow(2,-10*--r))+e},easeInCirc:function(r,e,t,n){return-(t-e)*(Math.sqrt(1-(r/=n)*r)-1)+e},easeOutCirc:function(r,e,t,n){return(t-e)*Math.sqrt(1-(r=r/n-1)*r)+e},easeInOutCirc:function(r,e,t,n){var a=t-e;return(r/=n/2)<1?-a/2*(Math.sqrt(1-r*r)-1)+e:a/2*(Math.sqrt(1-(r-=2)*r)+1)+e},easeInElastic:function(r,e,t,n){var a,i,o,u=t-e;return o=1.70158,i=0,a=u,0===r?e:1==(r/=n)?e+u:(i||(i=.3*n),a<Math.abs(u)?(a=u,o=i/4):o=i/(2*Math.PI)*Math.asin(u/a),-a*Math.pow(2,10*(r-=1))*Math.sin((r*n-o)*(2*Math.PI)/i)+e)},easeOutElastic:function(r,e,t,n){var a,i,o,u=t-e;return o=1.70158,i=0,a=u,0===r?e:1==(r/=n)?e+u:(i||(i=.3*n),a<Math.abs(u)?(a=u,o=i/4):o=i/(2*Math.PI)*Math.asin(u/a),a*Math.pow(2,-10*r)*Math.sin((r*n-o)*(2*Math.PI)/i)+u+e)},easeInOutElastic:function(r,e,t,n){var a,i,o,u=t-e;return o=1.70158,i=0,a=u,0===r?e:2==(r/=n/2)?e+u:(i||(i=n*(.3*1.5)),a<Math.abs(u)?(a=u,o=i/4):o=i/(2*Math.PI)*Math.asin(u/a),r<1?a*Math.pow(2,10*(r-=1))*Math.sin((r*n-o)*(2*Math.PI)/i)*-.5+e:a*Math.pow(2,-10*(r-=1))*Math.sin((r*n-o)*(2*Math.PI)/i)*.5+u+e)},easeInBack:function(r,e,t,n,a){var i=t-e;return void 0===a&&(a=1.70158),i*(r/=n)*r*((a+1)*r-a)+e},easeOutBack:function(r,e,t,n,a){var i=t-e;return void 0===a&&(a=1.70158),i*((r=r/n-1)*r*((a+1)*r+a)+1)+e},easeInOutBack:function(r,e,t,n,a){var i=t-e;return void 0===a&&(a=1.70158),(r/=n/2)<1?i/2*(r*r*((1+(a*=1.525))*r-a))+e:i/2*((r-=2)*r*((1+(a*=1.525))*r+a)+2)+e},easeInBounce:function(r,e,t,n){var a,i=t-e;return a=Ye.easeOutBounce(n-r,0,i,n),i-a+e},easeOutBounce:function(r,e,t,n){var a=t-e;return(r/=n)<1/2.75?a*(7.5625*r*r)+e:r<2/2.75?a*(7.5625*(r-=1.5/2.75)*r+.75)+e:r<2.5/2.75?a*(7.5625*(r-=2.25/2.75)*r+.9375)+e:a*(7.5625*(r-=2.625/2.75)*r+.984375)+e},easeInOutBounce:function(r,e,t,n){var a=t-e;return r<n/2?.5*Ye.easeInBounce(2*r,0,a,n)+e:.5*Ye.easeOutBounce(2*r-n,0,a,n)+.5*a+e}},rt=Ye,et="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},tt=function(r){switch(void 0===r?"undefined":et(r)){case"string":if(rt[r])return rt[r];break;case"function":return r}},nt=function(r,e){var t=s(e),n=t[0],a=t.slice(1),i=at(r),o=i.points,c=i.pointsMap,f=he[n].apply(he,[o].concat(u(a)));return it({frameShape:r,points:f,pointsMap:c})},at=function r(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new WeakMap,a=e.childFrameShapes;if(a)for(var i=0,o=a.length;i<o;i++)r(a[i],t,n);else n.set(e,t.length),t.push(e.points);return{points:t,pointsMap:n}},it=function r(e){var t=e.frameShape,n=e.points,a=e.pointsMap,i=t.childFrameShapes;if(t.points&&(t.points=n[a.get(t)]),i)for(var o=0,u=i.length;o<u;o++)r({frameShape:i[o],points:n,pointsMap:a});return t},ot=function(r,e){for(var t=0,n=e.length;t<n;t++)r=nt(r,e[t]);return r},ut=function(r,e){for(var t=0,n=e.length;t<n;t++){var a=s(e[t]),i=a[0],o=a.slice(1);r=he[i].apply(he,[r].concat(u(o)))}return r},st=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},ct=("function"==typeof Symbol&&Symbol.iterator,function r(e){var t=e.attributes,n=e.points,a=e.childFrameShapes;if(a){for(var i=[],o=0,u=a.length;o<u;o++)i.push(r(a[o]));return st({},t,{type:"g",shapes:i})}return st({},t,{type:"path",d:Ne(n)})}),ft=function(r){var e=r.angle,t=r.frameShape,n=r.x,a=r.y,i=at(t),o=i.points,u=i.pointsMap,s=Yr(o,n,a),c=e?ye(s,e):s;return it({frameShape:t,points:c,pointsMap:u})},lt=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},yt=function(r){for(var e=[],t=[],n=[],a=[],i=0,o=r.length;i<o;i++)e.push(Ge(r[i].frameShape));for(var u=Ze(e),s=0,c=r.length;s<c;s++){var f=r[s];f.frameShape=We(f.frameShape,u),t.push(f)}for(var l=0,y=t.length;l<y;l++)n.push($e(t[l].frameShape));for(var v=Ve(n),p=0,h=t.length;p<h;p++){var m=t[p];m.frameShape=Re(m.frameShape,v),a.push(m)}return a},vt=function(r){for(var e=[],t=0,n=r.length;t<n;t++){var a=r[t],i=a.delay,o=a.duration,u=a.easing,s=a.forces,c=void 0===s?[]:s,l=a.name,y=a.transforms,v=void 0===y?[]:y,p=f(a,["delay","duration","easing","forces","name","transforms"]),h=Je(p),m={name:void 0!==l?l:t,frameShape:ot(h,v)};if(t>0&&(m.tween={duration:void 0!==o?o:D.defaults.keyframe.duration,easing:tt(u||D.defaults.keyframe.easing),forces:c},i)){var d=e[e.length-1],x=lt({},d,{name:d.name+".delay",tween:{duration:i}});e.push(x)}e.push(m)}var g=yt(e),b=ht(e);return{duration:b,keyframes:pt(g,b)}},pt=function(r,e){for(var t=[],n=0,a=0,i=r.length;a<i;a++){var o=r[a],u=o.tween,s=(u=void 0===u?{}:u).duration;n+=void 0===s?0:s,t.push(lt({},o,{position:0===n?0:n/e}))}return t},ht=function(r){for(var e=0,t=0,n=r.length;t<n;t++){var a=r[t].tween,i=(a=void 0===a?{}:a).duration;e+=void 0===i?0:i}return e},mt=("function"==typeof Symbol&&Symbol.iterator,function(r){var e={plainShapeObjects:r.filter(function(r){return r.type}),options:r.length>1&&void 0===r[r.length-1].type?r[r.length-1]:{}};if(dt(e))return e}),dt=function(r){r.plainShapeObjects,r.options.name;return!0};r.colorMiddleware=O,r.events=function(r){or(r)&&(r.event.previousPlaybackOptions={},r.event.previousState={});var e=r.event.subscriptions;if(e.length&&tr(r))for(var t=nr(r),n=ar(r,t),a=0,i=n.length;a<i;a++)for(var o=n[a],u=o.name,s=o.options||{},c=0,f=e.length;c<f;c++){var l=e[c];u===l.name&&l.callback(s)}r.event.previousPlaybackOptions=Y({},r.playbackOptions),r.event.previousState=Y({},r.state)},r.frame=ze,r.motionPath=function(r){var e=r.accuracy,t=void 0===e?1:e,n=r.easing,a=void 0===n?D.defaults.motionPath.easing:n,i=r.rotate,o=void 0!==i&&i,u=r.transforms,s=void 0===u?[]:u,f=c(r,["accuracy","easing","rotate","transforms"]),l=ut(de(f),s),y=tt(a);return function(r,e){var n=y(e,0,1,1),a=te(l,n,t),i=a.angle,u=a.x,s=a.y;return u||s?ft({angle:"number"==typeof o?(i+o)%360:!0===o?i:0,frameShape:r,x:u,y:s}):r}},r.pause=function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=arguments[2];r.playbackOptions=$({at:t,timeline:r,pause:!0,playbackOptions:e}),G(r,t)},r.plainShapeObject=function(r,e){var t=void 0===r.timeline?r.keyframes[0].frameShape:ze(r.timeline,e)[r.timelineIndex];return ct(t)},r.play=function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=arguments[2];r.playbackOptions=$({at:t,timeline:r,playbackOptions:e}),G(r,t)},r.shape=function(){for(var r=arguments.length,e=Array(r),t=0;t<r;t++)e[t]=arguments[t];var n=mt(e),a=n.plainShapeObjects,i=n.options.name,o=vt(a),u={duration:o.duration,keyframes:o.keyframes};return void 0!==i&&(u.name=i),u},r.timeline=function(){for(var r=arguments.length,e=Array(r),t=0;t<r;t++)e[t]=arguments[t];var n=J(e),a=n.middleware,i=n.playbackOptions,o=n.shapesWithOptions,u=U(o,a),s=u.duration,c=u.timelineShapes;void 0===i.duration&&(i.duration=s);for(var f={middleware:a,playbackOptions:i,state:{},timelineShapes:c},l=0,y=c.length;l<y;l++){var v=c[l].shape;v.timeline=f,v.timelineIndex=l}return G(f),f.event=er(f),f},r.unitMiddleware=C,Object.defineProperty(r,"__esModule",{value:!0})});