Repository: pl12133/react-solitaire
Branch: master
Commit: a7547a078ef4
Files: 59
Total size: 1.3 MB
Directory structure:
gitextract_egkjk96b/
├── .babelrc
├── .eslintrc
├── .gitignore
├── .travis.yml
├── NOTICE.txt
├── README.md
├── index.html
├── lib/
│ └── index.js
├── package.json
├── server.js
├── server.prod.js
├── src/
│ ├── actions/
│ │ ├── cards.js
│ │ └── dragdrop.js
│ ├── components/
│ │ ├── AceArea/
│ │ │ ├── index.js
│ │ │ └── styles/
│ │ │ ├── index.js
│ │ │ └── styles.scss
│ │ ├── ButtonsPanel/
│ │ │ └── index.js
│ │ ├── Card/
│ │ │ ├── index.js
│ │ │ └── styles/
│ │ │ ├── index.js
│ │ │ └── styles.scss
│ │ ├── DealArea/
│ │ │ ├── index.js
│ │ │ └── styles/
│ │ │ ├── index.js
│ │ │ └── styles.scss
│ │ ├── DroppableStack/
│ │ │ ├── index.js
│ │ │ └── styles/
│ │ │ ├── index.js
│ │ │ └── styles.scss
│ │ ├── GameButton/
│ │ │ ├── index.js
│ │ │ └── styles/
│ │ │ ├── index.js
│ │ │ └── styles.scss
│ │ ├── LoadSpinner/
│ │ │ ├── index.js
│ │ │ └── styles/
│ │ │ ├── index.js
│ │ │ └── styles.scss
│ │ ├── LowerArea/
│ │ │ ├── index.js
│ │ │ └── styles/
│ │ │ ├── index.js
│ │ │ └── styles.scss
│ │ └── Table/
│ │ ├── index.js
│ │ └── styles/
│ │ ├── index.js
│ │ └── styles.scss
│ ├── constants/
│ │ └── cardUtils.js
│ ├── containers/
│ │ ├── App/
│ │ │ ├── index.js
│ │ │ └── styles/
│ │ │ ├── index.js
│ │ │ └── styles.scss
│ │ └── index.js
│ ├── index.js
│ ├── reducers/
│ │ ├── cards.js
│ │ ├── dragdrop.js
│ │ └── index.js
│ ├── store/
│ │ └── configureStore.js
│ └── tests/
│ ├── .babelrc
│ ├── AceArea.spec.js
│ ├── Card.spec.js
│ ├── DealArea.spec.js
│ ├── DroppableStack.spec.js
│ ├── Table.spec.js
│ ├── boilerplate.js
│ ├── compiler.js
│ └── index.js
└── webpack/
├── webpack.config.js
└── webpack.config.prod.js
================================================
FILE CONTENTS
================================================
================================================
FILE: .babelrc
================================================
{
"presets": [ "es2015", "react" ],
"plugins": [ "transform-object-rest-spread" ]
}
================================================
FILE: .eslintrc
================================================
{
"extends": "semistandard",
"parser": "babel-eslint",
"plugins": [
"react"
],
"env": {
"browser": true,
"mocha": true,
"node": true
}
}
================================================
FILE: .gitignore
================================================
node_modules
================================================
FILE: .travis.yml
================================================
language: node_js
node_js:
- "5.0.0"
script:
- npm run lint
- npm test
================================================
FILE: NOTICE.txt
================================================
All content Copyright Peter Lenahan 2015, Licensed under Apache 2.0
================================================
FILE: README.md
================================================

# react-solitaire
A game of Solitaire in React
React for view, Redux for state, mocha and unexpected-react for testing, Webpack for module bundling, SASS for styles
###### Demo available: [Github Pages](http://pl12133.github.io/react-solitaire/)
## installation
Clone git repo:
git clone https://github.com/pl12133/react-solitaire/
cd react-solitaire
Install:
npm install
Set HOST and PORT environment variables:
export HOST=example.com
export PORT=80
Start a local server:
npm start
Play!
## features

Mobile friendly interface, card moves are undoable and redoable, tapping a card will automatically move it to the first available stack.
## license
All content Copyright Peter Lenahan 2015, Licensed under Apache 2.0
================================================
FILE: index.html
================================================
React-Redux Solitaire
================================================
FILE: lib/index.js
================================================
!function(I,M){"object"==typeof exports&&"object"==typeof module?module.exports=M():"function"==typeof define&&define.amd?define([],M):"object"==typeof exports?exports["react-solitaire"]=M():I["react-solitaire"]=M()}(this,function(){return function(I){function M(C){if(g[C])return g[C].exports;var N=g[C]={exports:{},id:C,loaded:!1};return I[C].call(N.exports,N,N.exports,M),N.loaded=!0,N.exports}var g={};return M.m=I,M.c=g,M.p="/lib/",M(0)}(function(I){for(var M in I)if(Object.prototype.hasOwnProperty.call(I,M))switch(typeof I[M]){case"function":break;case"object":I[M]=function(M){var g=M.slice(1),C=I[M[0]];return function(I,M,N){C.apply(this,[I,M,N].concat(g))}}(I[M]);break;default:I[M]=I[I[M]]}return I}([function(I,M,g){I.exports=g(1)},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}Object.defineProperty(M,"__esModule",{value:!0}),g(2);var N=g(192),A=C(N),t=g(344),i=C(t),c=g(345),j=g(366),e=C(j),z=g(378),u=C(z),L=(g(477),(0,e["default"])()),D=function(){return A["default"].createElement("div",{style:{height:"100%"}},A["default"].createElement(c.Provider,{store:L},A["default"].createElement(u["default"],null)))},n=document.getElementById("root");n&&i["default"].render(A["default"].createElement(D,null),n),console.log("Runner runner"),M["default"]=D},function(I,M,g){(function(I){"use strict";if(g(3),g(190),I._babelPolyfill)throw new Error("only one instance of babel-polyfill is allowed");I._babelPolyfill=!0}).call(M,function(){return this}())},function(I,M,g){g(4),g(37),g(43),g(45),g(47),g(49),g(51),g(53),g(54),g(55),g(56),g(57),g(58),g(59),g(60),g(61),g(62),g(63),g(64),g(67),g(68),g(69),g(71),g(72),g(73),g(74),g(75),g(76),g(77),g(79),g(80),g(81),g(83),g(84),g(85),g(87),g(88),g(89),g(90),g(91),g(92),g(93),g(94),g(95),g(96),g(97),g(98),g(99),g(100),g(105),g(106),g(110),g(111),g(113),g(114),g(119),g(120),g(123),g(125),g(127),g(129),g(130),g(131),g(133),g(134),g(136),g(137),g(138),g(139),g(146),g(149),g(150),g(152),g(153),g(154),g(155),g(156),g(157),g(158),g(159),g(160),g(161),g(162),g(163),g(165),g(166),g(167),g(168),g(169),g(170),g(172),g(173),g(174),g(175),g(177),g(178),g(180),g(181),g(183),g(184),g(185),g(188),g(189),I.exports=g(8)},function(I,M,g){"use strict";var C,N=g(5),A=g(6),t=g(11),i=g(10),c=g(17),j=g(18),e=g(20),z=g(21),u=g(22),L=g(12),D=g(23),n=g(16),l=g(19),o=g(24),T=g(26),s=g(28),w=g(29),a=g(30),y=g(27),b=g(14)("__proto__"),Z=g(31),m=g(36)(!1),d=Object.prototype,Y=Array.prototype,r=Y.slice,O=Y.join,p=N.setDesc,G=N.getDesc,W=N.setDescs,x={};t||(C=!L(function(){return 7!=p(j("div"),"a",{get:function(){return 7}}).a}),N.setDesc=function(I,M,g){if(C)try{return p(I,M,g)}catch(N){}if("get"in g||"set"in g)throw TypeError("Accessors not supported!");return"value"in g&&(D(I)[M]=g.value),I},N.getDesc=function(I,M){if(C)try{return G(I,M)}catch(g){}return e(I,M)?i(!d.propertyIsEnumerable.call(I,M),I[M]):void 0},N.setDescs=W=function(I,M){D(I);for(var g,C=N.getKeys(M),A=C.length,t=0;A>t;)N.setDesc(I,g=C[t++],M[g]);return I}),A(A.S+A.F*!t,"Object",{getOwnPropertyDescriptor:N.getDesc,defineProperty:N.setDesc,defineProperties:W});var S="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),k=S.concat("length","prototype"),h=S.length,Q=function(){var I,M=j("iframe"),g=h,C=">";for(M.style.display="none",c.appendChild(M),M.src="javascript:",I=M.contentWindow.document,I.open(),I.write("A;)e(N,C=I[A++])&&(~m(t,C)||t.push(C));return t}},E=function(){};A(A.S,"Object",{getPrototypeOf:N.getProto=N.getProto||function(I){return I=o(I),e(I,b)?I[b]:"function"==typeof I.constructor&&I instanceof I.constructor?I.constructor.prototype:I instanceof Object?d:null},getOwnPropertyNames:N.getNames=N.getNames||v(k,k.length,!0),create:N.create=N.create||function(I,M){var g;return null!==I?(E.prototype=D(I),g=new E,E.prototype=null,g[b]=I):g=Q(),void 0===M?g:W(g,M)},keys:N.getKeys=N.getKeys||v(S,h,!1)});var R=function(I,M,g){if(!(M in x)){for(var C=[],N=0;M>N;N++)C[N]="a["+N+"]";x[M]=Function("F,a","return new F("+C.join(",")+")")}return x[M](I,g)};A(A.P,"Function",{bind:function(I){var M=n(this),g=r.call(arguments,1),C=function(){var N=g.concat(r.call(arguments));return this instanceof C?R(M,N.length,N):u(M,N,I)};return l(M.prototype)&&(C.prototype=M.prototype),C}}),A(A.P+A.F*L(function(){c&&r.call(c)}),"Array",{slice:function(I,M){var g=a(this.length),C=z(this);if(M=void 0===M?g:M,"Array"==C)return r.call(this,I,M);for(var N=w(I,g),A=w(M,g),t=a(A-N),i=Array(t),c=0;t>c;c++)i[c]="String"==C?this.charAt(N+c):this[N+c];return i}}),A(A.P+A.F*(y!=Object),"Array",{join:function(I){return O.call(y(this),void 0===I?",":I)}}),A(A.S,"Array",{isArray:g(33)});var U=function(I){return function(M,g){n(M);var C=y(this),N=a(C.length),A=I?N-1:0,t=I?-1:1;if(arguments.length<2)for(;;){if(A in C){g=C[A],A+=t;break}if(A+=t,I?0>A:A>=N)throw TypeError("Reduce of empty array with no initial value")}for(;I?A>=0:N>A;A+=t)A in C&&(g=M(g,C[A],A,this));return g}},P=function(I){return function(M){return I(this,M,arguments[1])}};A(A.P,"Array",{forEach:N.each=N.each||P(Z(0)),map:P(Z(1)),filter:P(Z(2)),some:P(Z(3)),every:P(Z(4)),reduce:U(!1),reduceRight:U(!0),indexOf:P(m),lastIndexOf:function(I,M){var g=T(this),C=a(g.length),N=C-1;for(arguments.length>1&&(N=Math.min(N,s(M))),0>N&&(N=a(C+N));N>=0;N--)if(N in g&&g[N]===I)return N;return-1}}),A(A.S,"Date",{now:function(){return+new Date}});var J=function(I){return I>9?I:"0"+I};A(A.P+A.F*(L(function(){return"0385-07-25T07:06:39.999Z"!=new Date(-5e13-1).toISOString()})||!L(function(){new Date(NaN).toISOString()})),"Date",{toISOString:function(){if(!isFinite(this))throw RangeError("Invalid time value");var I=this,M=I.getUTCFullYear(),g=I.getUTCMilliseconds(),C=0>M?"-":M>9999?"+":"";return C+("00000"+Math.abs(M)).slice(C?-6:-4)+"-"+J(I.getUTCMonth()+1)+"-"+J(I.getUTCDate())+"T"+J(I.getUTCHours())+":"+J(I.getUTCMinutes())+":"+J(I.getUTCSeconds())+"."+(g>99?g:"0"+J(g))+"Z"}})},function(I,M){var g=Object;I.exports={create:g.create,getProto:g.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:g.getOwnPropertyDescriptor,setDesc:g.defineProperty,setDescs:g.defineProperties,getKeys:g.keys,getNames:g.getOwnPropertyNames,getSymbols:g.getOwnPropertySymbols,each:[].forEach}},function(I,M,g){var C=g(7),N=g(8),A=g(9),t=g(13),i=g(15),c="prototype",j=function(I,M,g){var e,z,u,L,D=I&j.F,n=I&j.G,l=I&j.S,o=I&j.P,T=I&j.B,s=n?C:l?C[M]||(C[M]={}):(C[M]||{})[c],w=n?N:N[M]||(N[M]={}),a=w[c]||(w[c]={});n&&(g=M);for(e in g)z=!D&&s&&e in s,u=(z?s:g)[e],L=T&&z?i(u,C):o&&"function"==typeof u?i(Function.call,u):u,s&&!z&&t(s,e,u),w[e]!=u&&A(w,e,L),o&&a[e]!=u&&(a[e]=u)};C.core=N,j.F=1,j.G=2,j.S=4,j.P=8,j.B=16,j.W=32,I.exports=j},function(I,M){var g=I.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=g)},function(I,M){var g=I.exports={version:"1.2.6"};"number"==typeof __e&&(__e=g)},[618,5,10,11],function(I,M){I.exports=function(I,M){return{enumerable:!(1&I),configurable:!(2&I),writable:!(4&I),value:M}}},[619,12],function(I,M){I.exports=function(I){try{return!!I()}catch(M){return!0}}},function(I,M,g){var C=g(7),N=g(9),A=g(14)("src"),t="toString",i=Function[t],c=(""+i).split(t);g(8).inspectSource=function(I){return i.call(I)},(I.exports=function(I,M,g,t){"function"==typeof g&&(g.hasOwnProperty(A)||N(g,A,I[M]?""+I[M]:c.join(String(M))),g.hasOwnProperty("name")||N(g,"name",M)),I===C?I[M]=g:(t||delete I[M],N(I,M,g))})(Function.prototype,t,function(){return"function"==typeof this&&this[A]||i.call(this)})},function(I,M){var g=0,C=Math.random();I.exports=function(I){return"Symbol(".concat(void 0===I?"":I,")_",(++g+C).toString(36))}},[620,16],function(I,M){I.exports=function(I){if("function"!=typeof I)throw TypeError(I+" is not a function!");return I}},function(I,M,g){I.exports=g(7).document&&document.documentElement},function(I,M,g){var C=g(19),N=g(7).document,A=C(N)&&C(N.createElement);I.exports=function(I){return A?N.createElement(I):{}}},function(I,M){I.exports=function(I){return"object"==typeof I?null!==I:"function"==typeof I}},function(I,M){var g={}.hasOwnProperty;I.exports=function(I,M){return g.call(I,M)}},function(I,M){var g={}.toString;I.exports=function(I){return g.call(I).slice(8,-1)}},function(I,M){I.exports=function(I,M,g){var C=void 0===g;switch(M.length){case 0:return C?I():I.call(g);case 1:return C?I(M[0]):I.call(g,M[0]);case 2:return C?I(M[0],M[1]):I.call(g,M[0],M[1]);case 3:return C?I(M[0],M[1],M[2]):I.call(g,M[0],M[1],M[2]);case 4:return C?I(M[0],M[1],M[2],M[3]):I.call(g,M[0],M[1],M[2],M[3])}return I.apply(g,M)}},[621,19],[622,25],function(I,M){I.exports=function(I){if(void 0==I)throw TypeError("Can't call method on "+I);return I}},[623,27,25],[624,21],function(I,M){var g=Math.ceil,C=Math.floor;I.exports=function(I){return isNaN(I=+I)?0:(I>0?C:g)(I)}},function(I,M,g){var C=g(28),N=Math.max,A=Math.min;I.exports=function(I,M){return I=C(I),0>I?N(I+M,0):A(I,M)}},function(I,M,g){var C=g(28),N=Math.min;I.exports=function(I){return I>0?N(C(I),9007199254740991):0}},function(I,M,g){var C=g(15),N=g(27),A=g(24),t=g(30),i=g(32);I.exports=function(I){var M=1==I,g=2==I,c=3==I,j=4==I,e=6==I,z=5==I||e;return function(u,L,D){for(var n,l,o=A(u),T=N(o),s=C(L,D,3),w=t(T.length),a=0,y=M?i(u,w):g?i(u,0):void 0;w>a;a++)if((z||a in T)&&(n=T[a],l=s(n,a,o),I))if(M)y[a]=l;else if(l)switch(I){case 3:return!0;case 5:return n;case 6:return a;case 2:y.push(n)}else if(j)return!1;return e?-1:c||j?j:y}}},function(I,M,g){var C=g(19),N=g(33),A=g(34)("species");I.exports=function(I,M){var g;return N(I)&&(g=I.constructor,"function"!=typeof g||g!==Array&&!N(g.prototype)||(g=void 0),C(g)&&(g=g[A],null===g&&(g=void 0))),new(void 0===g?Array:g)(M)}},function(I,M,g){var C=g(21);I.exports=Array.isArray||function(I){return"Array"==C(I)}},[625,35,14,7],[626,7],function(I,M,g){var C=g(26),N=g(30),A=g(29);I.exports=function(I){return function(M,g,t){var i,c=C(M),j=N(c.length),e=A(t,j);if(I&&g!=g){for(;j>e;)if(i=c[e++],i!=i)return!0}else for(;j>e;e++)if((I||e in c)&&c[e]===g)return I||e;return!I&&-1}}},function(I,M,g){"use strict";var C=g(5),N=g(7),A=g(20),t=g(11),i=g(6),c=g(13),j=g(12),e=g(35),z=g(38),u=g(14),L=g(34),D=g(39),n=g(40),l=g(41),o=g(33),T=g(23),s=g(26),w=g(10),a=C.getDesc,y=C.setDesc,b=C.create,Z=n.get,m=N.Symbol,d=N.JSON,Y=d&&d.stringify,r=!1,O=L("_hidden"),p=C.isEnum,G=e("symbol-registry"),W=e("symbols"),x="function"==typeof m,S=Object.prototype,k=t&&j(function(){return 7!=b(y({},"a",{get:function(){return y(this,"a",{value:7}).a}})).a})?function(I,M,g){var C=a(S,M);C&&delete S[M],y(I,M,g),C&&I!==S&&y(S,M,C)}:y,h=function(I){var M=W[I]=b(m.prototype);return M._k=I,t&&r&&k(S,I,{configurable:!0,set:function(M){A(this,O)&&A(this[O],I)&&(this[O][I]=!1),k(this,I,w(1,M))}}),M},Q=function(I){return"symbol"==typeof I},v=function(I,M,g){return g&&A(W,M)?(g.enumerable?(A(I,O)&&I[O][M]&&(I[O][M]=!1),g=b(g,{enumerable:w(0,!1)})):(A(I,O)||y(I,O,w(1,{})),I[O][M]=!0),k(I,M,g)):y(I,M,g)},E=function(I,M){T(I);for(var g,C=l(M=s(M)),N=0,A=C.length;A>N;)v(I,g=C[N++],M[g]);return I},R=function(I,M){return void 0===M?b(I):E(b(I),M)},U=function(I){var M=p.call(this,I);return M||!A(this,I)||!A(W,I)||A(this,O)&&this[O][I]?M:!0},P=function(I,M){var g=a(I=s(I),M);return!g||!A(W,M)||A(I,O)&&I[O][M]||(g.enumerable=!0),g},J=function(I){for(var M,g=Z(s(I)),C=[],N=0;g.length>N;)A(W,M=g[N++])||M==O||C.push(M);return C},B=function(I){for(var M,g=Z(s(I)),C=[],N=0;g.length>N;)A(W,M=g[N++])&&C.push(W[M]);return C},H=function(I){if(void 0!==I&&!Q(I)){for(var M,g,C=[I],N=1,A=arguments;A.length>N;)C.push(A[N++]);return M=C[1],"function"==typeof M&&(g=M),(g||!o(M))&&(M=function(I,M){return g&&(M=g.call(this,I,M)),Q(M)?void 0:M}),C[1]=M,Y.apply(d,C)}},X=j(function(){var I=m();return"[null]"!=Y([I])||"{}"!=Y({a:I})||"{}"!=Y(Object(I))});x||(m=function(){if(Q(this))throw TypeError("Symbol is not a constructor");return h(u(arguments.length>0?arguments[0]:void 0))},c(m.prototype,"toString",function(){return this._k}),Q=function(I){return I instanceof m},C.create=R,C.isEnum=U,C.getDesc=P,C.setDesc=v,C.setDescs=E,C.getNames=n.get=J,C.getSymbols=B,t&&!g(42)&&c(S,"propertyIsEnumerable",U,!0));var F={"for":function(I){return A(G,I+="")?G[I]:G[I]=m(I)},keyFor:function(I){return D(G,I)},useSetter:function(){r=!0},useSimple:function(){r=!1}};C.each.call("hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),function(I){var M=L(I);F[I]=x?M:h(M)}),r=!0,i(i.G+i.W,{Symbol:m}),i(i.S,"Symbol",F),i(i.S+i.F*!x,"Object",{create:R,defineProperty:v,defineProperties:E,getOwnPropertyDescriptor:P,getOwnPropertyNames:J,getOwnPropertySymbols:B}),d&&i(i.S+i.F*(!x||X),"JSON",{stringify:H}),z(m,"Symbol"),z(Math,"Math",!0),z(N.JSON,"JSON",!0)},[627,5,20,34],function(I,M,g){var C=g(5),N=g(26);I.exports=function(I,M){for(var g,A=N(I),t=C.getKeys(A),i=t.length,c=0;i>c;)if(A[g=t[c++]]===M)return g}},function(I,M,g){var C=g(26),N=g(5).getNames,A={}.toString,t="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],i=function(I){try{return N(I)}catch(M){return t.slice()}};I.exports.get=function(I){return t&&"[object Window]"==A.call(I)?i(I):N(C(I))}},function(I,M,g){var C=g(5);I.exports=function(I){var M=C.getKeys(I),g=C.getSymbols;if(g)for(var N,A=g(I),t=C.isEnum,i=0;A.length>i;)t.call(I,N=A[i++])&&M.push(N);return M}},function(I,M){I.exports=!1},[628,6,44],[629,5,24,27,12],function(I,M,g){var C=g(6);C(C.S,"Object",{is:g(46)})},function(I,M){I.exports=Object.is||function(I,M){return I===M?0!==I||1/I===1/M:I!=I&&M!=M}},[630,6,48],[631,5,19,23,15],function(I,M,g){"use strict";var C=g(50),N={};N[g(34)("toStringTag")]="z",N+""!="[object z]"&&g(13)(Object.prototype,"toString",function(){return"[object "+C(this)+"]"},!0)},[632,21,34],function(I,M,g){var C=g(19);g(52)("freeze",function(I){return function(M){return I&&C(M)?I(M):M}})},[633,6,8,12],function(I,M,g){var C=g(19);g(52)("seal",function(I){return function(M){return I&&C(M)?I(M):M}})},function(I,M,g){var C=g(19);g(52)("preventExtensions",function(I){return function(M){return I&&C(M)?I(M):M}})},function(I,M,g){var C=g(19);g(52)("isFrozen",function(I){return function(M){return C(M)?I?I(M):!1:!0}})},function(I,M,g){var C=g(19);g(52)("isSealed",function(I){return function(M){return C(M)?I?I(M):!1:!0}})},function(I,M,g){var C=g(19);g(52)("isExtensible",function(I){return function(M){return C(M)?I?I(M):!0:!1}})},function(I,M,g){var C=g(26);g(52)("getOwnPropertyDescriptor",function(I){return function(M,g){return I(C(M),g)}})},function(I,M,g){var C=g(24);g(52)("getPrototypeOf",function(I){return function(M){return I(C(M))}})},[634,24,52],function(I,M,g){g(52)("getOwnPropertyNames",function(){return g(40).get})},function(I,M,g){var C=g(5).setDesc,N=g(10),A=g(20),t=Function.prototype,i=/^\s*function ([^ (]*)/,c="name";c in t||g(11)&&C(t,c,{configurable:!0,get:function(){var I=(""+this).match(i),M=I?I[1]:"";return A(this,c)||C(this,c,N(5,M)),M}})},function(I,M,g){"use strict";var C=g(5),N=g(19),A=g(34)("hasInstance"),t=Function.prototype;A in t||C.setDesc(t,A,{value:function(I){if("function"!=typeof this||!N(I))return!1;if(!N(this.prototype))return I instanceof this;for(;I=C.getProto(I);)if(this.prototype===I)return!0;return!1}})},function(I,M,g){"use strict";var C=g(5),N=g(7),A=g(20),t=g(21),i=g(65),c=g(12),j=g(66).trim,e="Number",z=N[e],u=z,L=z.prototype,D=t(C.create(L))==e,n="trim"in String.prototype,l=function(I){var M=i(I,!1);if("string"==typeof M&&M.length>2){M=n?M.trim():j(M,3);var g,C,N,A=M.charCodeAt(0);if(43===A||45===A){if(g=M.charCodeAt(2),88===g||120===g)return NaN}else if(48===A){switch(M.charCodeAt(1)){case 66:case 98:C=2,N=49;break;case 79:case 111:C=8,N=55;break;default:return+M}for(var t,c=M.slice(2),e=0,z=c.length;z>e;e++)if(t=c.charCodeAt(e),48>t||t>N)return NaN;return parseInt(c,C)}}return+M};z(" 0o1")&&z("0b1")&&!z("+0x1")||(z=function(I){var M=arguments.length<1?0:I,g=this;return g instanceof z&&(D?c(function(){L.valueOf.call(g)}):t(g)!=e)?new u(l(M)):l(M)},C.each.call(g(11)?C.getNames(u):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),function(I){A(u,I)&&!A(z,I)&&C.setDesc(z,I,C.getDesc(u,I))}),z.prototype=L,L.constructor=z,g(13)(N,e,z))},function(I,M,g){var C=g(19);I.exports=function(I,M){if(!C(I))return I;var g,N;if(M&&"function"==typeof(g=I.toString)&&!C(N=g.call(I)))return N;if("function"==typeof(g=I.valueOf)&&!C(N=g.call(I)))return N;if(!M&&"function"==typeof(g=I.toString)&&!C(N=g.call(I)))return N;throw TypeError("Can't convert object to primitive value")}},function(I,M,g){var C=g(6),N=g(25),A=g(12),t=" \n\x0B\f\r \u2028\u2029\ufeff",i="["+t+"]",c="
",j=RegExp("^"+i+i+"*"),e=RegExp(i+i+"*$"),z=function(I,M){var g={};g[I]=M(u),C(C.P+C.F*A(function(){return!!t[I]()||c[I]()!=c}),"String",g)},u=z.trim=function(I,M){return I=String(N(I)),1&M&&(I=I.replace(j,"")),2&M&&(I=I.replace(e,"")),I};I.exports=z},function(I,M,g){var C=g(6);C(C.S,"Number",{EPSILON:Math.pow(2,-52)})},function(I,M,g){var C=g(6),N=g(7).isFinite;C(C.S,"Number",{isFinite:function(I){return"number"==typeof I&&N(I)}})},function(I,M,g){var C=g(6);C(C.S,"Number",{isInteger:g(70)})},[635,19],function(I,M,g){var C=g(6);C(C.S,"Number",{isNaN:function(I){return I!=I}})},[636,6,70],function(I,M,g){var C=g(6);C(C.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},function(I,M,g){var C=g(6);C(C.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},function(I,M,g){var C=g(6);C(C.S,"Number",{parseFloat:parseFloat})},function(I,M,g){var C=g(6);C(C.S,"Number",{parseInt:parseInt})},function(I,M,g){var C=g(6),N=g(78),A=Math.sqrt,t=Math.acosh;C(C.S+C.F*!(t&&710==Math.floor(t(Number.MAX_VALUE))),"Math",{acosh:function(I){return(I=+I)<1?NaN:I>94906265.62425156?Math.log(I)+Math.LN2:N(I-1+A(I-1)*A(I+1))}})},function(I,M){I.exports=Math.log1p||function(I){return(I=+I)>-1e-8&&1e-8>I?I-I*I/2:Math.log(1+I)}},function(I,M,g){function C(I){return isFinite(I=+I)&&0!=I?0>I?-C(-I):Math.log(I+Math.sqrt(I*I+1)):I}var N=g(6);N(N.S,"Math",{asinh:C})},function(I,M,g){var C=g(6);C(C.S,"Math",{atanh:function(I){return 0==(I=+I)?I:Math.log((1+I)/(1-I))/2}})},function(I,M,g){var C=g(6),N=g(82);C(C.S,"Math",{cbrt:function(I){return N(I=+I)*Math.pow(Math.abs(I),1/3)}})},function(I,M){I.exports=Math.sign||function(I){return 0==(I=+I)||I!=I?I:0>I?-1:1}},function(I,M,g){var C=g(6);C(C.S,"Math",{clz32:function(I){return(I>>>=0)?31-Math.floor(Math.log(I+.5)*Math.LOG2E):32}})},function(I,M,g){var C=g(6),N=Math.exp;C(C.S,"Math",{cosh:function(I){return(N(I=+I)+N(-I))/2}})},function(I,M,g){var C=g(6);C(C.S,"Math",{expm1:g(86)})},function(I,M){I.exports=Math.expm1||function(I){return 0==(I=+I)?I:I>-1e-6&&1e-6>I?I+I*I/2:Math.exp(I)-1}},function(I,M,g){var C=g(6),N=g(82),A=Math.pow,t=A(2,-52),i=A(2,-23),c=A(2,127)*(2-i),j=A(2,-126),e=function(I){return I+1/t-1/t};C(C.S,"Math",{fround:function(I){var M,g,C=Math.abs(I),A=N(I);return j>C?A*e(C/j/i)*j*i:(M=(1+i/t)*C,g=M-(M-C),g>c||g!=g?A*(1/0):A*g)}})},function(I,M,g){var C=g(6),N=Math.abs;C(C.S,"Math",{hypot:function(I,M){for(var g,C,A=0,t=0,i=arguments,c=i.length,j=0;c>t;)g=N(i[t++]),g>j?(C=j/g,A=A*C*C+1,j=g):g>0?(C=g/j,A+=C*C):A+=g;return j===1/0?1/0:j*Math.sqrt(A)}})},function(I,M,g){var C=g(6),N=Math.imul;C(C.S+C.F*g(12)(function(){return-5!=N(4294967295,5)||2!=N.length}),"Math",{imul:function(I,M){var g=65535,C=+I,N=+M,A=g&C,t=g&N;return 0|A*t+((g&C>>>16)*t+A*(g&N>>>16)<<16>>>0)}})},function(I,M,g){var C=g(6);C(C.S,"Math",{log10:function(I){return Math.log(I)/Math.LN10}})},function(I,M,g){var C=g(6);C(C.S,"Math",{log1p:g(78)})},function(I,M,g){var C=g(6);C(C.S,"Math",{log2:function(I){return Math.log(I)/Math.LN2}})},function(I,M,g){var C=g(6);C(C.S,"Math",{sign:g(82)})},function(I,M,g){var C=g(6),N=g(86),A=Math.exp;C(C.S+C.F*g(12)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function(I){return Math.abs(I=+I)<1?(N(I)-N(-I))/2:(A(I-1)-A(-I-1))*(Math.E/2)}})},function(I,M,g){var C=g(6),N=g(86),A=Math.exp;C(C.S,"Math",{tanh:function(I){var M=N(I=+I),g=N(-I);return M==1/0?1:g==1/0?-1:(M-g)/(A(I)+A(-I))}})},function(I,M,g){var C=g(6);C(C.S,"Math",{trunc:function(I){return(I>0?Math.floor:Math.ceil)(I)}})},function(I,M,g){var C=g(6),N=g(29),A=String.fromCharCode,t=String.fromCodePoint;C(C.S+C.F*(!!t&&1!=t.length),"String",{fromCodePoint:function(I){for(var M,g=[],C=arguments,t=C.length,i=0;t>i;){if(M=+C[i++],N(M,1114111)!==M)throw RangeError(M+" is not a valid code point");g.push(65536>M?A(M):A(((M-=65536)>>10)+55296,M%1024+56320))}return g.join("")}})},function(I,M,g){var C=g(6),N=g(26),A=g(30);C(C.S,"String",{raw:function(I){for(var M=N(I.raw),g=A(M.length),C=arguments,t=C.length,i=[],c=0;g>c;)i.push(String(M[c++])),t>c&&i.push(String(C[c]));return i.join("")}})},function(I,M,g){"use strict";g(66)("trim",function(I){return function(){return I(this,3)}})},[637,101,102],[638,28,25],[639,42,6,13,9,20,103,104,38,5,34],function(I,M){I.exports={}},[640,5,10,38,9,34],function(I,M,g){"use strict";var C=g(6),N=g(101)(!1);C(C.P,"String",{codePointAt:function(I){return N(this,I)}})},function(I,M,g){"use strict";var C=g(6),N=g(30),A=g(107),t="endsWith",i=""[t];C(C.P+C.F*g(109)(t),"String",{endsWith:function(I){var M=A(this,I,t),g=arguments,C=g.length>1?g[1]:void 0,c=N(M.length),j=void 0===C?c:Math.min(N(C),c),e=String(I);return i?i.call(M,e,j):M.slice(j-e.length,j)===e}})},function(I,M,g){var C=g(108),N=g(25);I.exports=function(I,M,g){if(C(M))throw TypeError("String#"+g+" doesn't accept regex!");return String(N(I))}},function(I,M,g){var C=g(19),N=g(21),A=g(34)("match");I.exports=function(I){var M;return C(I)&&(void 0!==(M=I[A])?!!M:"RegExp"==N(I))}},function(I,M,g){var C=g(34)("match");I.exports=function(I){var M=/./;try{"/./"[I](M)}catch(g){try{return M[C]=!1,!"/./"[I](M)}catch(N){}}return!0}},function(I,M,g){"use strict";var C=g(6),N=g(107),A="includes";C(C.P+C.F*g(109)(A),"String",{includes:function(I){return!!~N(this,I,A).indexOf(I,arguments.length>1?arguments[1]:void 0)}})},function(I,M,g){var C=g(6);C(C.P,"String",{repeat:g(112)})},function(I,M,g){"use strict";var C=g(28),N=g(25);I.exports=function(I){var M=String(N(this)),g="",A=C(I);if(0>A||A==1/0)throw RangeError("Count can't be negative");for(;A>0;(A>>>=1)&&(M+=M))1&A&&(g+=M);return g}},function(I,M,g){"use strict";var C=g(6),N=g(30),A=g(107),t="startsWith",i=""[t];C(C.P+C.F*g(109)(t),"String",{startsWith:function(I){var M=A(this,I,t),g=arguments,C=N(Math.min(g.length>1?g[1]:void 0,M.length)),c=String(I);return i?i.call(M,c,C):M.slice(C,C+c.length)===c}})},function(I,M,g){"use strict";var C=g(15),N=g(6),A=g(24),t=g(115),i=g(116),c=g(30),j=g(117);N(N.S+N.F*!g(118)(function(I){Array.from(I)}),"Array",{from:function(I){var M,g,N,e,z=A(I),u="function"==typeof this?this:Array,L=arguments,D=L.length,n=D>1?L[1]:void 0,l=void 0!==n,o=0,T=j(z);if(l&&(n=C(n,D>2?L[2]:void 0,2)),void 0==T||u==Array&&i(T))for(M=c(z.length),g=new u(M);M>o;o++)g[o]=l?n(z[o],o):z[o];else for(e=T.call(z),g=new u;!(N=e.next()).done;o++)g[o]=l?t(e,n,[N.value,o],!0):N.value;return g.length=o,g}})},function(I,M,g){var C=g(23);I.exports=function(I,M,g,N){try{return N?M(C(g)[0],g[1]):M(g)}catch(A){var t=I["return"];throw void 0!==t&&C(t.call(I)),A}}},function(I,M,g){var C=g(103),N=g(34)("iterator"),A=Array.prototype;I.exports=function(I){return void 0!==I&&(C.Array===I||A[N]===I)}},[641,50,34,103,8],function(I,M,g){var C=g(34)("iterator"),N=!1;try{var A=[7][C]();A["return"]=function(){N=!0},Array.from(A,function(){throw 2})}catch(t){}I.exports=function(I,M){if(!M&&!N)return!1;var g=!1;try{var A=[7],t=A[C]();t.next=function(){g=!0},A[C]=function(){return t},I(A)}catch(i){}return g}},function(I,M,g){"use strict";var C=g(6);C(C.S+C.F*g(12)(function(){function I(){}return!(Array.of.call(I)instanceof I)}),"Array",{of:function(){for(var I=0,M=arguments,g=M.length,C=new("function"==typeof this?this:Array)(g);g>I;)C[I]=M[I++];return C.length=g,C}})},[642,121,122,103,26,102],function(I,M,g){var C=g(34)("unscopables"),N=Array.prototype;void 0==N[C]&&g(9)(N,C,{}),I.exports=function(I){N[C][I]=!0}},function(I,M){I.exports=function(I,M){return{value:M,done:!!I}}},function(I,M,g){g(124)("Array")},function(I,M,g){"use strict";var C=g(7),N=g(5),A=g(11),t=g(34)("species");I.exports=function(I){var M=C[I];A&&M&&!M[t]&&N.setDesc(M,t,{configurable:!0,get:function(){return this}})}},function(I,M,g){var C=g(6);C(C.P,"Array",{copyWithin:g(126)}),g(121)("copyWithin")},function(I,M,g){"use strict";var C=g(24),N=g(29),A=g(30);I.exports=[].copyWithin||function(I,M){var g=C(this),t=A(g.length),i=N(I,t),c=N(M,t),j=arguments,e=j.length>2?j[2]:void 0,z=Math.min((void 0===e?t:N(e,t))-c,t-i),u=1;for(i>c&&c+z>i&&(u=-1,c+=z-1,i+=z-1);z-- >0;)c in g?g[i]=g[c]:delete g[i],i+=u,c+=u;return g}},function(I,M,g){var C=g(6);C(C.P,"Array",{fill:g(128)}),g(121)("fill")},function(I,M,g){"use strict";var C=g(24),N=g(29),A=g(30);I.exports=[].fill||function(I){for(var M=C(this),g=A(M.length),t=arguments,i=t.length,c=N(i>1?t[1]:void 0,g),j=i>2?t[2]:void 0,e=void 0===j?g:N(j,g);e>c;)M[c++]=I;return M}},function(I,M,g){"use strict";var C=g(6),N=g(31)(5),A="find",t=!0;A in[]&&Array(1)[A](function(){t=!1}),C(C.P+C.F*t,"Array",{find:function(I){return N(this,I,arguments.length>1?arguments[1]:void 0)}}),g(121)(A)},function(I,M,g){"use strict";var C=g(6),N=g(31)(6),A="findIndex",t=!0;A in[]&&Array(1)[A](function(){t=!1}),C(C.P+C.F*t,"Array",{findIndex:function(I){return N(this,I,arguments.length>1?arguments[1]:void 0)}}),g(121)(A)},function(I,M,g){var C=g(5),N=g(7),A=g(108),t=g(132),i=N.RegExp,c=i,j=i.prototype,e=/a/g,z=/a/g,u=new i(e)!==e;!g(11)||u&&!g(12)(function(){return z[g(34)("match")]=!1,i(e)!=e||i(z)==z||"/a/i"!=i(e,"i")})||(i=function(I,M){var g=A(I),C=void 0===M;return this instanceof i||!g||I.constructor!==i||!C?u?new c(g&&!C?I.source:I,M):c((g=I instanceof i)?I.source:I,g&&C?t.call(I):M):I},C.each.call(C.getNames(c),function(I){I in i||C.setDesc(i,I,{configurable:!0,get:function(){return c[I]},set:function(M){c[I]=M}})}),j.constructor=i,i.prototype=j,g(13)(N,"RegExp",i)),g(124)("RegExp")},function(I,M,g){"use strict";var C=g(23);I.exports=function(){var I=C(this),M="";return I.global&&(M+="g"),I.ignoreCase&&(M+="i"),I.multiline&&(M+="m"),I.unicode&&(M+="u"),I.sticky&&(M+="y"),M}},function(I,M,g){var C=g(5);g(11)&&"g"!=/./g.flags&&C.setDesc(RegExp.prototype,"flags",{configurable:!0,get:g(132)})},function(I,M,g){g(135)("match",1,function(I,M){return function(g){"use strict";var C=I(this),N=void 0==g?void 0:g[M];return void 0!==N?N.call(g,C):new RegExp(g)[M](String(C))}})},function(I,M,g){"use strict";var C=g(9),N=g(13),A=g(12),t=g(25),i=g(34);I.exports=function(I,M,g){var c=i(I),j=""[I];A(function(){var M={};return M[c]=function(){return 7},7!=""[I](M)})&&(N(String.prototype,I,g(t,c,j)),C(RegExp.prototype,c,2==M?function(I,M){return j.call(I,this,M)}:function(I){return j.call(I,this)}))}},function(I,M,g){g(135)("replace",2,function(I,M,g){return function(C,N){"use strict";var A=I(this),t=void 0==C?void 0:C[M];return void 0!==t?t.call(C,A,N):g.call(String(A),C,N)}})},function(I,M,g){g(135)("search",1,function(I,M){return function(g){"use strict";var C=I(this),N=void 0==g?void 0:g[M];return void 0!==N?N.call(g,C):new RegExp(g)[M](String(C))}})},function(I,M,g){g(135)("split",2,function(I,M,g){return function(C,N){"use strict";var A=I(this),t=void 0==C?void 0:C[M];return void 0!==t?t.call(C,A,N):g.call(String(A),C,N)}})},function(I,M,g){"use strict";var C,N=g(5),A=g(42),t=g(7),i=g(15),c=g(50),j=g(6),e=g(19),z=g(23),u=g(16),L=g(140),D=g(141),n=g(48).set,l=g(46),o=g(34)("species"),T=g(142),s=g(143),w="Promise",a=t.process,y="process"==c(a),b=t[w],Z=function(I){var M=new b(function(){});return I&&(M.constructor=Object),b.resolve(M)===M},m=function(){function I(M){var g=new b(M);return n(g,I.prototype),g}var M=!1;try{if(M=b&&b.resolve&&Z(),n(I,b),I.prototype=N.create(b.prototype,{constructor:{value:I}}),I.resolve(5).then(function(){})instanceof I||(M=!1),M&&g(11)){var C=!1;b.resolve(N.setDesc({},"then",{get:function(){C=!0}})),M=C}}catch(A){M=!1}return M}(),d=function(I,M){return A&&I===b&&M===C?!0:l(I,M)},Y=function(I){var M=z(I)[o];return void 0!=M?M:I},r=function(I){var M;return e(I)&&"function"==typeof(M=I.then)?M:!1},O=function(I){var M,g;this.promise=new I(function(I,C){if(void 0!==M||void 0!==g)throw TypeError("Bad Promise constructor");M=I,g=C}),this.resolve=u(M),this.reject=u(g)},p=function(I){try{I()}catch(M){return{error:M}}},G=function(I,M){if(!I.n){I.n=!0;var g=I.c;s(function(){for(var C=I.v,N=1==I.s,A=0,i=function(M){var g,A,t=N?M.ok:M.fail,i=M.resolve,c=M.reject;try{t?(N||(I.h=!0),g=t===!0?C:t(C),g===M.promise?c(TypeError("Promise-chain cycle")):(A=r(g))?A.call(g,i,c):i(g)):c(C)}catch(j){c(j)}};g.length>A;)i(g[A++]);g.length=0,I.n=!1,M&&setTimeout(function(){var M,g,N=I.p;W(N)&&(y?a.emit("unhandledRejection",C,N):(M=t.onunhandledrejection)?M({promise:N,reason:C}):(g=t.console)&&g.error&&g.error("Unhandled promise rejection",C)),I.a=void 0},1)})}},W=function(I){var M,g=I._d,C=g.a||g.c,N=0;if(g.h)return!1;for(;C.length>N;)if(M=C[N++],M.fail||!W(M.promise))return!1;return!0},x=function(I){var M=this;M.d||(M.d=!0,M=M.r||M,M.v=I,M.s=2,M.a=M.c.slice(),G(M,!0))},S=function(I){var M,g=this;if(!g.d){g.d=!0,g=g.r||g;try{if(g.p===I)throw TypeError("Promise can't be resolved itself");(M=r(I))?s(function(){var C={r:g,d:!1};try{M.call(I,i(S,C,1),i(x,C,1))}catch(N){x.call(C,N)}}):(g.v=I,g.s=1,G(g,!1))}catch(C){x.call({r:g,d:!1},C)}}};m||(b=function(I){u(I);var M=this._d={p:L(this,b,w),c:[],a:void 0,s:0,d:!1,v:void 0,h:!1,n:!1};try{I(i(S,M,1),i(x,M,1))}catch(g){x.call(M,g)}},g(145)(b.prototype,{then:function(I,M){var g=new O(T(this,b)),C=g.promise,N=this._d;return g.ok="function"==typeof I?I:!0,g.fail="function"==typeof M&&M,N.c.push(g),N.a&&N.a.push(g),N.s&&G(N,!1),C},"catch":function(I){return this.then(void 0,I)}})),j(j.G+j.W+j.F*!m,{Promise:b}),g(38)(b,w),g(124)(w),C=g(8)[w],j(j.S+j.F*!m,w,{reject:function(I){var M=new O(this),g=M.reject;return g(I),M.promise}}),j(j.S+j.F*(!m||Z(!0)),w,{resolve:function(I){if(I instanceof b&&d(I.constructor,this))return I;var M=new O(this),g=M.resolve;return g(I),M.promise}}),j(j.S+j.F*!(m&&g(118)(function(I){b.all(I)["catch"](function(){})})),w,{all:function(I){var M=Y(this),g=new O(M),C=g.resolve,A=g.reject,t=[],i=p(function(){D(I,!1,t.push,t);var g=t.length,i=Array(g);g?N.each.call(t,function(I,N){var t=!1;M.resolve(I).then(function(I){t||(t=!0,i[N]=I,--g||C(i))},A)}):C(i)});return i&&A(i.error),g.promise},race:function(I){var M=Y(this),g=new O(M),C=g.reject,N=p(function(){D(I,!1,function(I){M.resolve(I).then(g.resolve,C)})});return N&&C(N.error),g.promise}})},function(I,M){I.exports=function(I,M,g){if(!(I instanceof M))throw TypeError(g+": use the 'new' operator!");return I}},function(I,M,g){var C=g(15),N=g(115),A=g(116),t=g(23),i=g(30),c=g(117);I.exports=function(I,M,g,j){var e,z,u,L=c(I),D=C(g,j,M?2:1),n=0;if("function"!=typeof L)throw TypeError(I+" is not iterable!");if(A(L))for(e=i(I.length);e>n;n++)M?D(t(z=I[n])[0],z[1]):D(I[n]);else for(u=L.call(I);!(z=u.next()).done;)N(u,D,z.value,M)}},function(I,M,g){var C=g(23),N=g(16),A=g(34)("species");I.exports=function(I,M){var g,t=C(I).constructor;return void 0===t||void 0==(g=C(t)[A])?M:N(g)}},function(I,M,g){var C,N,A,t=g(7),i=g(144).set,c=t.MutationObserver||t.WebKitMutationObserver,j=t.process,e=t.Promise,z="process"==g(21)(j),u=function(){var I,M,g;for(z&&(I=j.domain)&&(j.domain=null,I.exit());C;)M=C.domain,g=C.fn,M&&M.enter(),g(),M&&M.exit(),C=C.next;N=void 0,I&&I.enter()};if(z)A=function(){j.nextTick(u)};else if(c){var L=1,D=document.createTextNode("");new c(u).observe(D,{characterData:!0}),A=function(){
D.data=L=-L}}else A=e&&e.resolve?function(){e.resolve().then(u)}:function(){i.call(t,u)};I.exports=function(I){var M={fn:I,next:void 0,domain:z&&j.domain};N&&(N.next=M),C||(C=M,A()),N=M}},function(I,M,g){var C,N,A,t=g(15),i=g(22),c=g(17),j=g(18),e=g(7),z=e.process,u=e.setImmediate,L=e.clearImmediate,D=e.MessageChannel,n=0,l={},o="onreadystatechange",T=function(){var I=+this;if(l.hasOwnProperty(I)){var M=l[I];delete l[I],M()}},s=function(I){T.call(I.data)};u&&L||(u=function(I){for(var M=[],g=1;arguments.length>g;)M.push(arguments[g++]);return l[++n]=function(){i("function"==typeof I?I:Function(I),M)},C(n),n},L=function(I){delete l[I]},"process"==g(21)(z)?C=function(I){z.nextTick(t(T,I,1))}:D?(N=new D,A=N.port2,N.port1.onmessage=s,C=t(A.postMessage,A,1)):e.addEventListener&&"function"==typeof postMessage&&!e.importScripts?(C=function(I){e.postMessage(I+"","*")},e.addEventListener("message",s,!1)):C=o in j("script")?function(I){c.appendChild(j("script"))[o]=function(){c.removeChild(this),T.call(I)}}:function(I){setTimeout(t(T,I,1),0)}),I.exports={set:u,clear:L}},function(I,M,g){var C=g(13);I.exports=function(I,M){for(var g in M)C(I,g,M[g]);return I}},function(I,M,g){"use strict";var C=g(147);g(148)("Map",function(I){return function(){return I(this,arguments.length>0?arguments[0]:void 0)}},{get:function(I){var M=C.getEntry(this,I);return M&&M.v},set:function(I,M){return C.def(this,0===I?0:I,M)}},C,!0)},function(I,M,g){"use strict";var C=g(5),N=g(9),A=g(145),t=g(15),i=g(140),c=g(25),j=g(141),e=g(102),z=g(122),u=g(14)("id"),L=g(20),D=g(19),n=g(124),l=g(11),o=Object.isExtensible||D,T=l?"_s":"size",s=0,w=function(I,M){if(!D(I))return"symbol"==typeof I?I:("string"==typeof I?"S":"P")+I;if(!L(I,u)){if(!o(I))return"F";if(!M)return"E";N(I,u,++s)}return"O"+I[u]},a=function(I,M){var g,C=w(M);if("F"!==C)return I._i[C];for(g=I._f;g;g=g.n)if(g.k==M)return g};I.exports={getConstructor:function(I,M,g,N){var e=I(function(I,A){i(I,e,M),I._i=C.create(null),I._f=void 0,I._l=void 0,I[T]=0,void 0!=A&&j(A,g,I[N],I)});return A(e.prototype,{clear:function(){for(var I=this,M=I._i,g=I._f;g;g=g.n)g.r=!0,g.p&&(g.p=g.p.n=void 0),delete M[g.i];I._f=I._l=void 0,I[T]=0},"delete":function(I){var M=this,g=a(M,I);if(g){var C=g.n,N=g.p;delete M._i[g.i],g.r=!0,N&&(N.n=C),C&&(C.p=N),M._f==g&&(M._f=C),M._l==g&&(M._l=N),M[T]--}return!!g},forEach:function(I){for(var M,g=t(I,arguments.length>1?arguments[1]:void 0,3);M=M?M.n:this._f;)for(g(M.v,M.k,this);M&&M.r;)M=M.p},has:function(I){return!!a(this,I)}}),l&&C.setDesc(e.prototype,"size",{get:function(){return c(this[T])}}),e},def:function(I,M,g){var C,N,A=a(I,M);return A?A.v=g:(I._l=A={i:N=w(M,!0),k:M,v:g,p:C=I._l,n:void 0,r:!1},I._f||(I._f=A),C&&(C.n=A),I[T]++,"F"!==N&&(I._i[N]=A)),I},getEntry:a,setStrong:function(I,M,g){e(I,M,function(I,M){this._t=I,this._k=M,this._l=void 0},function(){for(var I=this,M=I._k,g=I._l;g&&g.r;)g=g.p;return I._t&&(I._l=g=g?g.n:I._t._f)?"keys"==M?z(0,g.k):"values"==M?z(0,g.v):z(0,[g.k,g.v]):(I._t=void 0,z(1))},g?"entries":"values",!g,!0),n(M)}}},function(I,M,g){"use strict";var C=g(7),N=g(6),A=g(13),t=g(145),i=g(141),c=g(140),j=g(19),e=g(12),z=g(118),u=g(38);I.exports=function(I,M,g,L,D,n){var l=C[I],o=l,T=D?"set":"add",s=o&&o.prototype,w={},a=function(I){var M=s[I];A(s,I,"delete"==I?function(I){return n&&!j(I)?!1:M.call(this,0===I?0:I)}:"has"==I?function(I){return n&&!j(I)?!1:M.call(this,0===I?0:I)}:"get"==I?function(I){return n&&!j(I)?void 0:M.call(this,0===I?0:I)}:"add"==I?function(I){return M.call(this,0===I?0:I),this}:function(I,g){return M.call(this,0===I?0:I,g),this})};if("function"==typeof o&&(n||s.forEach&&!e(function(){(new o).entries().next()}))){var y,b=new o,Z=b[T](n?{}:-0,1)!=b,m=e(function(){b.has(1)}),d=z(function(I){new o(I)});d||(o=M(function(M,g){c(M,o,I);var C=new l;return void 0!=g&&i(g,D,C[T],C),C}),o.prototype=s,s.constructor=o),n||b.forEach(function(I,M){y=1/M===-(1/0)}),(m||y)&&(a("delete"),a("has"),D&&a("get")),(y||Z)&&a(T),n&&s.clear&&delete s.clear}else o=L.getConstructor(M,I,D,T),t(o.prototype,g);return u(o,I),w[I]=o,N(N.G+N.W+N.F*(o!=l),w),n||L.setStrong(o,I,D),o}},function(I,M,g){"use strict";var C=g(147);g(148)("Set",function(I){return function(){return I(this,arguments.length>0?arguments[0]:void 0)}},{add:function(I){return C.def(this,I=0===I?0:I,I)}},C)},function(I,M,g){"use strict";var C=g(5),N=g(13),A=g(151),t=g(19),i=g(20),c=A.frozenStore,j=A.WEAK,e=Object.isExtensible||t,z={},u=g(148)("WeakMap",function(I){return function(){return I(this,arguments.length>0?arguments[0]:void 0)}},{get:function(I){if(t(I)){if(!e(I))return c(this).get(I);if(i(I,j))return I[j][this._i]}},set:function(I,M){return A.def(this,I,M)}},A,!0,!0);7!=(new u).set((Object.freeze||Object)(z),7).get(z)&&C.each.call(["delete","has","get","set"],function(I){var M=u.prototype,g=M[I];N(M,I,function(M,C){if(t(M)&&!e(M)){var N=c(this)[I](M,C);return"set"==I?this:N}return g.call(this,M,C)})})},function(I,M,g){"use strict";var C=g(9),N=g(145),A=g(23),t=g(19),i=g(140),c=g(141),j=g(31),e=g(20),z=g(14)("weak"),u=Object.isExtensible||t,L=j(5),D=j(6),n=0,l=function(I){return I._l||(I._l=new o)},o=function(){this.a=[]},T=function(I,M){return L(I.a,function(I){return I[0]===M})};o.prototype={get:function(I){var M=T(this,I);return M?M[1]:void 0},has:function(I){return!!T(this,I)},set:function(I,M){var g=T(this,I);g?g[1]=M:this.a.push([I,M])},"delete":function(I){var M=D(this.a,function(M){return M[0]===I});return~M&&this.a.splice(M,1),!!~M}},I.exports={getConstructor:function(I,M,g,C){var A=I(function(I,N){i(I,A,M),I._i=n++,I._l=void 0,void 0!=N&&c(N,g,I[C],I)});return N(A.prototype,{"delete":function(I){return t(I)?u(I)?e(I,z)&&e(I[z],this._i)&&delete I[z][this._i]:l(this)["delete"](I):!1},has:function(I){return t(I)?u(I)?e(I,z)&&e(I[z],this._i):l(this).has(I):!1}}),A},def:function(I,M,g){return u(A(M))?(e(M,z)||C(M,z,{}),M[z][I._i]=g):l(I).set(M,g),I},frozenStore:l,WEAK:z}},function(I,M,g){"use strict";var C=g(151);g(148)("WeakSet",function(I){return function(){return I(this,arguments.length>0?arguments[0]:void 0)}},{add:function(I){return C.def(this,I,!0)}},C,!1,!0)},function(I,M,g){var C=g(6),N=Function.apply;C(C.S,"Reflect",{apply:function(I,M,g){return N.call(I,M,g)}})},function(I,M,g){var C=g(5),N=g(6),A=g(16),t=g(23),i=g(19),c=Function.bind||g(8).Function.prototype.bind;N(N.S+N.F*g(12)(function(){function I(){}return!(Reflect.construct(function(){},[],I)instanceof I)}),"Reflect",{construct:function(I,M){A(I);var g=arguments.length<3?I:A(arguments[2]);if(I==g){if(void 0!=M)switch(t(M).length){case 0:return new I;case 1:return new I(M[0]);case 2:return new I(M[0],M[1]);case 3:return new I(M[0],M[1],M[2]);case 4:return new I(M[0],M[1],M[2],M[3])}var N=[null];return N.push.apply(N,M),new(c.apply(I,N))}var j=g.prototype,e=C.create(i(j)?j:Object.prototype),z=Function.apply.call(I,e,M);return i(z)?z:e}})},function(I,M,g){var C=g(5),N=g(6),A=g(23);N(N.S+N.F*g(12)(function(){Reflect.defineProperty(C.setDesc({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(I,M,g){A(I);try{return C.setDesc(I,M,g),!0}catch(N){return!1}}})},function(I,M,g){var C=g(6),N=g(5).getDesc,A=g(23);C(C.S,"Reflect",{deleteProperty:function(I,M){var g=N(A(I),M);return g&&!g.configurable?!1:delete I[M]}})},function(I,M,g){"use strict";var C=g(6),N=g(23),A=function(I){this._t=N(I),this._i=0;var M,g=this._k=[];for(M in I)g.push(M)};g(104)(A,"Object",function(){var I,M=this,g=M._k;do if(M._i>=g.length)return{value:void 0,done:!0};while(!((I=g[M._i++])in M._t));return{value:I,done:!1}}),C(C.S,"Reflect",{enumerate:function(I){return new A(I)}})},function(I,M,g){function C(I,M){var g,t,j=arguments.length<3?I:arguments[2];return c(I)===j?I[M]:(g=N.getDesc(I,M))?A(g,"value")?g.value:void 0!==g.get?g.get.call(j):void 0:i(t=N.getProto(I))?C(t,M,j):void 0}var N=g(5),A=g(20),t=g(6),i=g(19),c=g(23);t(t.S,"Reflect",{get:C})},function(I,M,g){var C=g(5),N=g(6),A=g(23);N(N.S,"Reflect",{getOwnPropertyDescriptor:function(I,M){return C.getDesc(A(I),M)}})},function(I,M,g){var C=g(6),N=g(5).getProto,A=g(23);C(C.S,"Reflect",{getPrototypeOf:function(I){return N(A(I))}})},function(I,M,g){var C=g(6);C(C.S,"Reflect",{has:function(I,M){return M in I}})},function(I,M,g){var C=g(6),N=g(23),A=Object.isExtensible;C(C.S,"Reflect",{isExtensible:function(I){return N(I),A?A(I):!0}})},function(I,M,g){var C=g(6);C(C.S,"Reflect",{ownKeys:g(164)})},function(I,M,g){var C=g(5),N=g(23),A=g(7).Reflect;I.exports=A&&A.ownKeys||function(I){var M=C.getNames(N(I)),g=C.getSymbols;return g?M.concat(g(I)):M}},function(I,M,g){var C=g(6),N=g(23),A=Object.preventExtensions;C(C.S,"Reflect",{preventExtensions:function(I){N(I);try{return A&&A(I),!0}catch(M){return!1}}})},function(I,M,g){function C(I,M,g){var t,e,z=arguments.length<4?I:arguments[3],u=N.getDesc(c(I),M);if(!u){if(j(e=N.getProto(I)))return C(e,M,g,z);u=i(0)}return A(u,"value")?u.writable!==!1&&j(z)?(t=N.getDesc(z,M)||i(0),t.value=g,N.setDesc(z,M,t),!0):!1:void 0===u.set?!1:(u.set.call(z,g),!0)}var N=g(5),A=g(20),t=g(6),i=g(10),c=g(23),j=g(19);t(t.S,"Reflect",{set:C})},function(I,M,g){var C=g(6),N=g(48);N&&C(C.S,"Reflect",{setPrototypeOf:function(I,M){N.check(I,M);try{return N.set(I,M),!0}catch(g){return!1}}})},function(I,M,g){"use strict";var C=g(6),N=g(36)(!0);C(C.P,"Array",{includes:function(I){return N(this,I,arguments.length>1?arguments[1]:void 0)}}),g(121)("includes")},function(I,M,g){"use strict";var C=g(6),N=g(101)(!0);C(C.P,"String",{at:function(I){return N(this,I)}})},function(I,M,g){"use strict";var C=g(6),N=g(171);C(C.P,"String",{padLeft:function(I){return N(this,I,arguments.length>1?arguments[1]:void 0,!0)}})},function(I,M,g){var C=g(30),N=g(112),A=g(25);I.exports=function(I,M,g,t){var i=String(A(I)),c=i.length,j=void 0===g?" ":String(g),e=C(M);if(c>=e)return i;""==j&&(j=" ");var z=e-c,u=N.call(j,Math.ceil(z/j.length));return u.length>z&&(u=u.slice(0,z)),t?u+i:i+u}},function(I,M,g){"use strict";var C=g(6),N=g(171);C(C.P,"String",{padRight:function(I){return N(this,I,arguments.length>1?arguments[1]:void 0,!1)}})},function(I,M,g){"use strict";g(66)("trimLeft",function(I){return function(){return I(this,1)}})},function(I,M,g){"use strict";g(66)("trimRight",function(I){return function(){return I(this,2)}})},function(I,M,g){var C=g(6),N=g(176)(/[\\^$*+?.()|[\]{}]/g,"\\$&");C(C.S,"RegExp",{escape:function(I){return N(I)}})},function(I,M){I.exports=function(I,M){var g=M===Object(M)?function(I){return M[I]}:M;return function(M){return String(M).replace(I,g)}}},function(I,M,g){var C=g(5),N=g(6),A=g(164),t=g(26),i=g(10);N(N.S,"Object",{getOwnPropertyDescriptors:function(I){for(var M,g,N=t(I),c=C.setDesc,j=C.getDesc,e=A(N),z={},u=0;e.length>u;)g=j(N,M=e[u++]),M in z?c(z,M,i(0,g)):z[M]=g;return z}})},function(I,M,g){var C=g(6),N=g(179)(!1);C(C.S,"Object",{values:function(I){return N(I)}})},function(I,M,g){var C=g(5),N=g(26),A=C.isEnum;I.exports=function(I){return function(M){for(var g,t=N(M),i=C.getKeys(t),c=i.length,j=0,e=[];c>j;)A.call(t,g=i[j++])&&e.push(I?[g,t[g]]:t[g]);return e}}},function(I,M,g){var C=g(6),N=g(179)(!0);C(C.S,"Object",{entries:function(I){return N(I)}})},function(I,M,g){var C=g(6);C(C.P,"Map",{toJSON:g(182)("Map")})},function(I,M,g){var C=g(141),N=g(50);I.exports=function(I){return function(){if(N(this)!=I)throw TypeError(I+"#toJSON isn't generic");var M=[];return C(this,!1,M.push,M),M}}},function(I,M,g){var C=g(6);C(C.P,"Set",{toJSON:g(182)("Set")})},function(I,M,g){var C=g(5),N=g(6),A=g(15),t=g(8).Array||Array,i={},c=function(I,M){C.each.call(I.split(","),function(I){void 0==M&&I in t?i[I]=t[I]:I in[]&&(i[I]=A(Function.call,[][I],M))})};c("pop,reverse,shift,keys,values,entries",1),c("indexOf,every,some,forEach,map,filter,find,findIndex,includes",3),c("join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill"),N(N.S,"Array",i)},function(I,M,g){var C=g(7),N=g(6),A=g(22),t=g(186),i=C.navigator,c=!!i&&/MSIE .\./.test(i.userAgent),j=function(I){return c?function(M,g){return I(A(t,[].slice.call(arguments,2),"function"==typeof M?M:Function(M)),g)}:I};N(N.G+N.B+N.F*c,{setTimeout:j(C.setTimeout),setInterval:j(C.setInterval)})},function(I,M,g){"use strict";var C=g(187),N=g(22),A=g(16);I.exports=function(){for(var I=A(this),M=arguments.length,g=Array(M),t=0,i=C._,c=!1;M>t;)(g[t]=arguments[t++])===i&&(c=!0);return function(){var C,A=this,t=arguments,j=t.length,e=0,z=0;if(!c&&!j)return N(I,g,A);if(C=g.slice(),c)for(;M>e;e++)C[e]===i&&(C[e]=t[z++]);for(;j>z;)C.push(t[z++]);return N(I,C,A)}}},function(I,M,g){I.exports=g(7)},function(I,M,g){var C=g(6),N=g(144);C(C.G+C.B,{setImmediate:N.set,clearImmediate:N.clear})},function(I,M,g){g(120);var C=g(7),N=g(9),A=g(103),t=g(34)("iterator"),i=C.NodeList,c=C.HTMLCollection,j=i&&i.prototype,e=c&&c.prototype,z=A.NodeList=A.HTMLCollection=A.Array;j&&!j[t]&&N(j,t,z),e&&!e[t]&&N(e,t,z)},function(I,M,g){(function(M,g){!function(M){"use strict";function C(I,M,g,C){var N=Object.create((M||A).prototype),t=new D(C||[]);return N._invoke=z(I,g,t),N}function N(I,M,g){try{return{type:"normal",arg:I.call(M,g)}}catch(C){return{type:"throw",arg:C}}}function A(){}function t(){}function i(){}function c(I){["next","throw","return"].forEach(function(M){I[M]=function(I){return this._invoke(M,I)}})}function j(I){this.arg=I}function e(I){function M(M,g){var C=I[M](g),N=C.value;return N instanceof j?Promise.resolve(N.arg).then(A,t):Promise.resolve(N).then(function(I){return C.value=I,C})}function C(I,g){function C(){return M(I,g)}return N=N?N.then(C,C):new Promise(function(I){I(C())})}"object"==typeof g&&g.domain&&(M=g.domain.bind(M));var N,A=M.bind(I,"next"),t=M.bind(I,"throw");M.bind(I,"return");this._invoke=C}function z(I,M,g){var C=y;return function(A,t){if(C===Z)throw new Error("Generator is already running");if(C===m){if("throw"===A)throw t;return l()}for(;;){var i=g.delegate;if(i){if("return"===A||"throw"===A&&i.iterator[A]===o){g.delegate=null;var c=i.iterator["return"];if(c){var j=N(c,i.iterator,t);if("throw"===j.type){A="throw",t=j.arg;continue}}if("return"===A)continue}var j=N(i.iterator[A],i.iterator,t);if("throw"===j.type){g.delegate=null,A="throw",t=j.arg;continue}A="next",t=o;var e=j.arg;if(!e.done)return C=b,e;g[i.resultName]=e.value,g.next=i.nextLoc,g.delegate=null}if("next"===A)g._sent=t,C===b?g.sent=t:g.sent=o;else if("throw"===A){if(C===y)throw C=m,t;g.dispatchException(t)&&(A="next",t=o)}else"return"===A&&g.abrupt("return",t);C=Z;var j=N(I,M,g);if("normal"===j.type){C=g.done?m:b;var e={value:j.arg,done:g.done};if(j.arg!==d)return e;g.delegate&&"next"===A&&(t=o)}else"throw"===j.type&&(C=m,A="throw",t=j.arg)}}}function u(I){var M={tryLoc:I[0]};1 in I&&(M.catchLoc=I[1]),2 in I&&(M.finallyLoc=I[2],M.afterLoc=I[3]),this.tryEntries.push(M)}function L(I){var M=I.completion||{};M.type="normal",delete M.arg,I.completion=M}function D(I){this.tryEntries=[{tryLoc:"root"}],I.forEach(u,this),this.reset(!0)}function n(I){if(I){var M=I[s];if(M)return M.call(I);if("function"==typeof I.next)return I;if(!isNaN(I.length)){var g=-1,C=function N(){for(;++g=0;--C){var N=this.tryEntries[C],A=N.completion;if("root"===N.tryLoc)return M("end");if(N.tryLoc<=this.prev){var t=T.call(N,"catchLoc"),i=T.call(N,"finallyLoc");if(t&&i){if(this.prev=0;--g){var C=this.tryEntries[g];if(C.tryLoc<=this.prev&&T.call(C,"finallyLoc")&&this.prev=0;--M){var g=this.tryEntries[M];if(g.finallyLoc===I)return this.complete(g.completion,g.afterLoc),L(g),d}},"catch":function(I){for(var M=this.tryEntries.length-1;M>=0;--M){var g=this.tryEntries[M];if(g.tryLoc===I){var C=g.completion;if("throw"===C.type){var N=C.arg;L(g)}return N}}throw new Error("illegal catch attempt")},delegateYield:function(I,M,g){return this.delegate={iterator:n(I),resultName:M,nextLoc:g},d}}}("object"==typeof M?M:"object"==typeof window?window:"object"==typeof self?self:this)}).call(M,function(){return this}(),g(191))},function(I,M){function g(){j=!1,t.length?c=t.concat(c):e=-1,c.length&&C()}function C(){if(!j){var I=setTimeout(g);j=!0;for(var M=c.length;M;){for(t=c,c=[];++e1)for(var g=1;g"+i+""},receiveComponent:function(I,M){if(I!==this._currentElement){this._currentElement=I;var g=""+I;if(g!==this._stringText){this._stringText=g;var N=t.getNode(this._rootNodeID);C.updateTextContent(N,g)}}},unmountComponent:function(){A.unmountIDFromEnvironment(this._rootNodeID)}}),I.exports=e},function(I,M,g){"use strict";function C(I,M,g){var C=g>=I.childNodes.length?null:I.childNodes.item(g);I.insertBefore(M,C)}var N=g(198),A=g(206),t=g(208),i=g(209),c=g(210),j=g(203),e={dangerouslyReplaceNodeWithMarkup:N.dangerouslyReplaceNodeWithMarkup,updateTextContent:c,processUpdates:function(I,M){for(var g,t=null,e=null,z=0;z]+)/,e="data-danger-index",z={dangerouslyRenderMarkup:function(I){N.canUseDOM?void 0:c(!1);for(var M,g={},z=0;zA;A++)C[A]=I[A];return C}var N=g(203);I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C,N,A,t,i){if(!I){var c;if(void 0===M)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var j=[g,C,N,A,t,i],e=0;c=new Error(M.replace(/%s/g,function(){return j[e++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}}I.exports=C},function(I,M,g){"use strict";function C(I){return t?void 0:A(!1),u.hasOwnProperty(I)||(I="*"),i.hasOwnProperty(I)||("*"===I?t.innerHTML="":t.innerHTML="<"+I+">"+I+">",i[I]=!t.firstChild),i[I]?u[I]:null}var N=g(199),A=g(203),t=N.canUseDOM?document.createElement("div"):null,i={},c=[1,'"],j=[1,""],e=[3,""],z=[1,'"],u={"*":[1,"?","
"],area:[1,""],col:[2,""],legend:[1,""],param:[1,""],tr:[2,""],optgroup:c,option:c,caption:j,colgroup:j,tbody:j,tfoot:j,thead:j,td:e,th:e},L=["circle","clipPath","defs","ellipse","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","text","tspan"];L.forEach(function(I){u[I]=z,i[I]=!0}),I.exports=C},function(I,M){"use strict";function g(I){return function(){return I}}function C(){}C.thatReturns=g,C.thatReturnsFalse=g(!1),C.thatReturnsTrue=g(!0),C.thatReturnsNull=g(null),C.thatReturnsThis=function(){return this},C.thatReturnsArgument=function(I){return I},I.exports=C},function(I,M,g){"use strict";var C=g(207),N=C({INSERT_MARKUP:null,MOVE_EXISTING:null,REMOVE_NODE:null,SET_MARKUP:null,TEXT_CONTENT:null});I.exports=N},function(I,M,g){"use strict";var C=g(203),N=function(I){var M,g={};I instanceof Object&&!Array.isArray(I)?void 0:C(!1);for(M in I)I.hasOwnProperty(M)&&(g[M]=M);return g};I.exports=N},function(I,M,g){"use strict";function C(I,M,g){return g}var N={enableMeasure:!1,storedMeasure:C,measureMethods:function(I,M,g){},measure:function(I,M,g){return g},injection:{injectMeasure:function(I){N.storedMeasure=I}}};I.exports=N},function(I,M,g){"use strict";var C=g(199),N=/^[ \r\n\t\f]/,A=/<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/,t=function(I,M){I.innerHTML=M};if("undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction&&(t=function(I,M){MSApp.execUnsafeLocalFunction(function(){I.innerHTML=M})}),C.canUseDOM){var i=document.createElement("div");i.innerHTML=" ",""===i.innerHTML&&(t=function(I,M){if(I.parentNode&&I.parentNode.replaceChild(I,I),N.test(M)||"<"===M[0]&&A.test(M)){I.innerHTML=String.fromCharCode(65279)+M;var g=I.firstChild;1===g.data.length?I.removeChild(g):g.deleteData(0,1)}else I.innerHTML=M})}I.exports=t},function(I,M,g){"use strict";var C=g(199),N=g(211),A=g(209),t=function(I,M){I.textContent=M};C.canUseDOM&&("textContent"in document.documentElement||(t=function(I,M){A(I,N(M))})),I.exports=t},function(I,M){"use strict";function g(I){return N[I]}function C(I){return(""+I).replace(A,g)}var N={"&":"&",">":">","<":"<",'"':""","'":"'"},A=/[&><"']/g;I.exports=C},function(I,M,g){"use strict";function C(I){return e.hasOwnProperty(I)?!0:j.hasOwnProperty(I)?!1:c.test(I)?(e[I]=!0,!0):(j[I]=!0,!1)}function N(I,M){return null==M||I.hasBooleanValue&&!M||I.hasNumericValue&&isNaN(M)||I.hasPositiveNumericValue&&1>M||I.hasOverloadedBooleanValue&&M===!1}var A=g(213),t=g(208),i=g(214),c=(g(215),/^[a-zA-Z_][\w\.\-]*$/),j={},e={},z={createMarkupForID:function(I){return A.ID_ATTRIBUTE_NAME+"="+i(I)},setAttributeForID:function(I,M){I.setAttribute(A.ID_ATTRIBUTE_NAME,M)},createMarkupForProperty:function(I,M){var g=A.properties.hasOwnProperty(I)?A.properties[I]:null;if(g){if(N(g,M))return"";var C=g.attributeName;return g.hasBooleanValue||g.hasOverloadedBooleanValue&&M===!0?C+'=""':C+"="+i(M)}return A.isCustomAttribute(I)?null==M?"":I+"="+i(M):null},createMarkupForCustomAttribute:function(I,M){return C(I)&&null!=M?I+"="+i(M):""},setValueForProperty:function(I,M,g){var C=A.properties.hasOwnProperty(M)?A.properties[M]:null;if(C){var t=C.mutationMethod;if(t)t(I,g);else if(N(C,g))this.deleteValueForProperty(I,M);else if(C.mustUseAttribute){var i=C.attributeName,c=C.attributeNamespace;c?I.setAttributeNS(c,i,""+g):C.hasBooleanValue||C.hasOverloadedBooleanValue&&g===!0?I.setAttribute(i,""):I.setAttribute(i,""+g)}else{var j=C.propertyName;C.hasSideEffects&&""+I[j]==""+g||(I[j]=g)}}else A.isCustomAttribute(M)&&z.setValueForAttribute(I,M,g)},setValueForAttribute:function(I,M,g){C(M)&&(null==g?I.removeAttribute(M):I.setAttribute(M,""+g))},deleteValueForProperty:function(I,M){var g=A.properties.hasOwnProperty(M)?A.properties[M]:null;if(g){var C=g.mutationMethod;if(C)C(I,void 0);else if(g.mustUseAttribute)I.removeAttribute(g.attributeName);else{var N=g.propertyName,t=A.getDefaultValueForProperty(I.nodeName,N);g.hasSideEffects&&""+I[N]===t||(I[N]=t)}}else A.isCustomAttribute(M)&&I.removeAttribute(M)}};t.measureMethods(z,"DOMPropertyOperations",{setValueForProperty:"setValueForProperty",setValueForAttribute:"setValueForAttribute",deleteValueForProperty:"deleteValueForProperty"}),I.exports=z},function(I,M,g){"use strict";function C(I,M){return(I&M)===M}var N=g(203),A={MUST_USE_ATTRIBUTE:1,MUST_USE_PROPERTY:2,HAS_SIDE_EFFECTS:4,HAS_BOOLEAN_VALUE:8,HAS_NUMERIC_VALUE:16,HAS_POSITIVE_NUMERIC_VALUE:48,HAS_OVERLOADED_BOOLEAN_VALUE:64,injectDOMPropertyConfig:function(I){var M=A,g=I.Properties||{},t=I.DOMAttributeNamespaces||{},c=I.DOMAttributeNames||{},j=I.DOMPropertyNames||{},e=I.DOMMutationMethods||{};I.isCustomAttribute&&i._isCustomAttributeFunctions.push(I.isCustomAttribute);for(var z in g){i.properties.hasOwnProperty(z)?N(!1):void 0;var u=z.toLowerCase(),L=g[z],D={attributeName:u,attributeNamespace:null,propertyName:z,mutationMethod:null,mustUseAttribute:C(L,M.MUST_USE_ATTRIBUTE),mustUseProperty:C(L,M.MUST_USE_PROPERTY),hasSideEffects:C(L,M.HAS_SIDE_EFFECTS),hasBooleanValue:C(L,M.HAS_BOOLEAN_VALUE),hasNumericValue:C(L,M.HAS_NUMERIC_VALUE),hasPositiveNumericValue:C(L,M.HAS_POSITIVE_NUMERIC_VALUE),hasOverloadedBooleanValue:C(L,M.HAS_OVERLOADED_BOOLEAN_VALUE)};if(D.mustUseAttribute&&D.mustUseProperty?N(!1):void 0,!D.mustUseProperty&&D.hasSideEffects?N(!1):void 0,D.hasBooleanValue+D.hasNumericValue+D.hasOverloadedBooleanValue<=1?void 0:N(!1),c.hasOwnProperty(z)){var n=c[z];D.attributeName=n}t.hasOwnProperty(z)&&(D.attributeNamespace=t[z]),j.hasOwnProperty(z)&&(D.propertyName=j[z]),e.hasOwnProperty(z)&&(D.mutationMethod=e[z]),i.properties[z]=D}}},t={},i={ID_ATTRIBUTE_NAME:"data-reactid",properties:{},getPossibleStandardName:null,_isCustomAttributeFunctions:[],isCustomAttribute:function(I){for(var M=0;MC;C++)if(I.charAt(C)!==M.charAt(C))return C;return I.length===M.length?-1:g}function N(I){return I?I.nodeType===P?I.documentElement:I.firstChild:null}function A(I){var M=N(I);return M&&K.getID(M)}function t(I){var M=i(I);if(M)if(R.hasOwnProperty(M)){var g=R[M];g!==I&&(z(g,M)?h(!1):void 0,R[M]=I)}else R[M]=I;return M}function i(I){return I&&I.getAttribute&&I.getAttribute(E)||""}function c(I,M){var g=i(I);g!==M&&delete R[g],I.setAttribute(E,M),R[M]=I}function j(I){return R.hasOwnProperty(I)&&z(R[I],I)||(R[I]=K.findReactNodeByID(I)),R[I]}function e(I){var M=d.get(I)._rootNodeID;return Z.isNullComponentID(M)?null:(R.hasOwnProperty(M)&&z(R[M],M)||(R[M]=K.findReactNodeByID(M)),R[M])}function z(I,M){if(I){i(I)!==M?h(!1):void 0;var g=K.findReactContainerForID(M);if(g&&S(g,I))return!0}return!1}function u(I){delete R[I]}function L(I){var M=R[I];return M&&z(M,I)?void(f=M):!1}function D(I){f=null,m.traverseAncestors(I,L);var M=f;return f=null,M}function n(I,M,g,C,N,A){y.useCreateElement&&(A=W({},A),g.nodeType===P?A[B]=g:A[B]=g.ownerDocument);var t=O.mountComponent(I,M,C,A);I._renderedComponent._topLevelWrapper=I,K._mountImageIntoNode(t,g,N,C)}function l(I,M,g,C,N){var A=G.ReactReconcileTransaction.getPooled(C);A.perform(n,null,I,M,g,A,C,N),G.ReactReconcileTransaction.release(A)}function o(I,M){for(O.unmountComponent(I),M.nodeType===P&&(M=M.documentElement);M.lastChild;)M.removeChild(M.lastChild)}function T(I){var M=A(I);return M?M!==m.getReactRootIDFromNodeID(M):!1}function s(I){for(;I&&I.parentNode!==I;I=I.parentNode)if(1===I.nodeType){var M=i(I);if(M){var g,C=m.getReactRootIDFromNodeID(M),N=I;do if(g=i(N),N=N.parentNode,null==N)return null;while(g!==C);if(N===X[C])return I}}return null}var w=g(213),a=g(219),y=(g(195),g(231)),b=g(232),Z=g(234),m=g(235),d=g(237),Y=g(238),r=g(208),O=g(240),p=g(243),G=g(244),W=g(229),x=g(248),S=g(249),k=g(252),h=g(203),Q=g(209),v=g(257),E=(g(260),g(215),w.ID_ATTRIBUTE_NAME),R={},U=1,P=9,J=11,B="__ReactMount_ownerDocument$"+Math.random().toString(36).slice(2),H={},X={},F=[],f=null,V=function(){};V.prototype.isReactComponent={},V.prototype.render=function(){return this.props};var K={TopLevelWrapper:V,_instancesByReactRootID:H,scrollMonitor:function(I,M){M()},_updateRootComponent:function(I,M,g,C){return K.scrollMonitor(g,function(){p.enqueueElementInternal(I,M),C&&p.enqueueCallbackInternal(I,C)}),I},_registerComponent:function(I,M){!M||M.nodeType!==U&&M.nodeType!==P&&M.nodeType!==J?h(!1):void 0,a.ensureScrollValueMonitoring();var g=K.registerContainer(M);return H[g]=I,g},_renderNewRootComponent:function(I,M,g,C){var N=k(I,null),A=K._registerComponent(N,M);return G.batchedUpdates(l,N,A,M,g,C),N},renderSubtreeIntoContainer:function(I,M,g,C){return null==I||null==I._reactInternalInstance?h(!1):void 0,K._renderSubtreeIntoContainer(I,M,g,C)},_renderSubtreeIntoContainer:function(I,M,g,C){b.isValidElement(M)?void 0:h(!1);var t=new b(V,null,null,null,null,null,M),c=H[A(g)];if(c){var j=c._currentElement,e=j.props;if(v(e,M)){var z=c._renderedComponent.getPublicInstance(),u=C&&function(){C.call(z)};return K._updateRootComponent(c,t,g,u),z}K.unmountComponentAtNode(g)}var L=N(g),D=L&&!!i(L),n=T(g),l=D&&!c&&!n,o=K._renderNewRootComponent(t,g,l,null!=I?I._reactInternalInstance._processChildContext(I._reactInternalInstance._context):x)._renderedComponent.getPublicInstance();return C&&C.call(o),o},render:function(I,M,g){return K._renderSubtreeIntoContainer(null,I,M,g)},registerContainer:function(I){var M=A(I);return M&&(M=m.getReactRootIDFromNodeID(M)),M||(M=m.createReactRootID()),X[M]=I,M},unmountComponentAtNode:function(I){!I||I.nodeType!==U&&I.nodeType!==P&&I.nodeType!==J?h(!1):void 0;var M=A(I),g=H[M];if(!g){var C=(T(I),i(I));C&&C===m.getReactRootIDFromNodeID(C);return!1}return G.batchedUpdates(o,g,I),delete H[M],delete X[M],!0},findReactContainerForID:function(I){var M=m.getReactRootIDFromNodeID(I),g=X[M];return g},findReactNodeByID:function(I){var M=K.findReactContainerForID(I);return K.findComponentRoot(M,I)},getFirstReactDOM:function(I){return s(I)},findComponentRoot:function(I,M){var g=F,C=0,N=D(M)||I;for(g[0]=N.firstChild,g.length=1;C-1?void 0:t(!1),!j.plugins[g]){M.extractEvents?void 0:t(!1),j.plugins[g]=M;var C=M.eventTypes;for(var A in C)N(C[A],M,A)?void 0:t(!1)}}}function N(I,M,g){j.eventNameDispatchConfigs.hasOwnProperty(g)?t(!1):void 0,j.eventNameDispatchConfigs[g]=I;var C=I.phasedRegistrationNames;if(C){for(var N in C)if(C.hasOwnProperty(N)){var i=C[N];A(i,M,g)}return!0}return I.registrationName?(A(I.registrationName,M,g),!0):!1}function A(I,M,g){j.registrationNameModules[I]?t(!1):void 0,j.registrationNameModules[I]=M,j.registrationNameDependencies[I]=M.eventTypes[g].dependencies}var t=g(203),i=null,c={},j={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},injectEventPluginOrder:function(I){i?t(!1):void 0,i=Array.prototype.slice.call(I),C()},injectEventPluginsByName:function(I){var M=!1;for(var g in I)if(I.hasOwnProperty(g)){var N=I[g];c.hasOwnProperty(g)&&c[g]===N||(c[g]?t(!1):void 0,c[g]=N,M=!0)}M&&C()},getPluginModuleForEvent:function(I){var M=I.dispatchConfig;if(M.registrationName)return j.registrationNameModules[M.registrationName]||null;for(var g in M.phasedRegistrationNames)if(M.phasedRegistrationNames.hasOwnProperty(g)){var C=j.registrationNameModules[M.phasedRegistrationNames[g]];if(C)return C}return null},_resetEventPlugins:function(){i=null;for(var I in c)c.hasOwnProperty(I)&&delete c[I];j.plugins.length=0;var M=j.eventNameDispatchConfigs;for(var g in M)M.hasOwnProperty(g)&&delete M[g];var C=j.registrationNameModules;for(var N in C)C.hasOwnProperty(N)&&delete C[N]}};I.exports=j},function(I,M,g){"use strict";function C(I){return I===l.topMouseUp||I===l.topTouchEnd||I===l.topTouchCancel}function N(I){return I===l.topMouseMove||I===l.topTouchMove}function A(I){return I===l.topMouseDown||I===l.topTouchStart}function t(I,M,g,C){var N=I.type||"unknown-event";I.currentTarget=n.Mount.getNode(C),M?L.invokeGuardedCallbackWithCatch(N,g,I,C):L.invokeGuardedCallback(N,g,I,C),I.currentTarget=null}function i(I,M){var g=I._dispatchListeners,C=I._dispatchIDs;if(Array.isArray(g))for(var N=0;N1){for(var L=Array(u),D=0;u>D;D++)L[D]=arguments[D+2];A.children=L}if(I&&I.defaultProps){var n=I.defaultProps;for(N in n)"undefined"==typeof A[N]&&(A[N]=n[N])}return i(I,c,j,e,z,C.current,A)},i.createFactory=function(I){var M=i.createElement.bind(null,I);return M.type=I,M},i.cloneAndReplaceKey=function(I,M){var g=i(I.type,M,I.ref,I._self,I._source,I._owner,I.props);return g},i.cloneAndReplaceProps=function(I,M){var g=i(I.type,I.key,I.ref,I._self,I._source,I._owner,M);return g},i.cloneElement=function(I,M,g){var A,c=N({},I.props),j=I.key,e=I.ref,z=I._self,u=I._source,L=I._owner;if(null!=M){void 0!==M.ref&&(e=M.ref,L=C.current),void 0!==M.key&&(j=""+M.key);for(A in M)M.hasOwnProperty(A)&&!t.hasOwnProperty(A)&&(c[A]=M[A])}var D=arguments.length-2;if(1===D)c.children=g;else if(D>1){for(var n=Array(D),l=0;D>l;l++)n[l]=arguments[l+2];c.children=n}return i(I.type,j,e,z,u,L,c)},i.isValidElement=function(I){return"object"==typeof I&&null!==I&&I.$$typeof===A},I.exports=i},function(I,M,g){"use strict";var C=!1;I.exports=C},function(I,M){"use strict";function g(I){return!!A[I]}function C(I){A[I]=!0}function N(I){delete A[I]}var A={},t={isNullComponentID:g,registerNullComponentID:C,deregisterNullComponentID:N};I.exports=t},function(I,M,g){"use strict";function C(I){return L+I.toString(36)}function N(I,M){return I.charAt(M)===L||M===I.length}function A(I){return""===I||I.charAt(0)===L&&I.charAt(I.length-1)!==L}function t(I,M){return 0===M.indexOf(I)&&N(M,I.length)}function i(I){return I?I.substr(0,I.lastIndexOf(L)):""}function c(I,M){if(A(I)&&A(M)?void 0:u(!1),t(I,M)?void 0:u(!1),I===M)return I;var g,C=I.length+D;for(g=C;g=t;t++)if(N(I,t)&&N(M,t))C=t;else if(I.charAt(t)!==M.charAt(t))break;var i=I.substr(0,C);return A(i)?void 0:u(!1),i}function e(I,M,g,C,N,A){I=I||"",M=M||"",I===M?u(!1):void 0;var j=t(M,I);j||t(I,M)?void 0:u(!1);for(var e=0,z=j?i:c,L=I;;L=z(L,M)){var D;if(N&&L===I||A&&L===M||(D=g(L,j,C)),D===!1||L===M)break;e++1){var M=I.indexOf(L,1);return M>-1?I.substr(0,M):I}return null},traverseEnterLeave:function(I,M,g,C,N){var A=j(I,M);A!==I&&e(I,A,g,C,!1,!0),A!==M&&e(A,M,g,N,!0,!1)},traverseTwoPhase:function(I,M,g){I&&(e("",I,M,g,!0,!1),e(I,"",M,g,!1,!0))},traverseTwoPhaseSkipTarget:function(I,M,g){I&&(e("",I,M,g,!0,!0),e(I,"",M,g,!0,!0))},traverseAncestors:function(I,M,g){e("",I,M,g,!0,!1)},getFirstCommonAncestorID:j,_getNextDescendantID:c,isAncestorIDOf:t,SEPARATOR:L};I.exports=l},function(I,M){"use strict";var g={injectCreateReactRootIndex:function(I){C.createReactRootIndex=I}},C={createReactRootIndex:null,injection:g};I.exports=C},function(I,M){"use strict";var g={remove:function(I){I._reactInternalInstance=void 0},get:function(I){return I._reactInternalInstance},has:function(I){return void 0!==I._reactInternalInstance},set:function(I,M){I._reactInternalInstance=M}};I.exports=g},function(I,M,g){"use strict";var C=g(239),N=/\/?>/,A={CHECKSUM_ATTR_NAME:"data-react-checksum",addChecksumToMarkup:function(I){var M=C(I);return I.replace(N," "+A.CHECKSUM_ATTR_NAME+'="'+M+'"$&')},canReuseMarkup:function(I,M){var g=M.getAttribute(A.CHECKSUM_ATTR_NAME);g=g&&parseInt(g,10);var N=C(I);return N===g}};I.exports=A},function(I,M){"use strict";function g(I){for(var M=1,g=0,N=0,A=I.length,t=-4&A;t>N;){for(;NN;N++)g+=M+=I.charCodeAt(N);return M%=C,g%=C,M|g<<16}var C=65521;I.exports=g},function(I,M,g){"use strict";function C(){N.attachRefs(this,this._currentElement)}var N=g(241),A={mountComponent:function(I,M,g,N){var A=I.mountComponent(M,g,N);return I._currentElement&&null!=I._currentElement.ref&&g.getReactMountReady().enqueue(C,I),A},unmountComponent:function(I){N.detachRefs(I,I._currentElement),I.unmountComponent()},receiveComponent:function(I,M,g,A){var t=I._currentElement;if(M!==t||A!==I._context){var i=N.shouldUpdateRefs(t,M);i&&N.detachRefs(I,t),I.receiveComponent(M,g,A),i&&I._currentElement&&null!=I._currentElement.ref&&g.getReactMountReady().enqueue(C,I)}},performUpdateIfNecessary:function(I,M){I.performUpdateIfNecessary(M)}};I.exports=A},function(I,M,g){"use strict";function C(I,M,g){"function"==typeof I?I(M.getPublicInstance()):A.addComponentAsRefTo(M,I,g)}function N(I,M,g){"function"==typeof I?I(null):A.removeComponentAsRefFrom(M,I,g)}var A=g(242),t={};t.attachRefs=function(I,M){if(null!==M&&M!==!1){var g=M.ref;null!=g&&C(g,I,M._owner)}},t.shouldUpdateRefs=function(I,M){var g=null===I||I===!1,C=null===M||M===!1;return g||C||M._owner!==I._owner||M.ref!==I.ref},t.detachRefs=function(I,M){if(null!==M&&M!==!1){var g=M.ref;null!=g&&N(g,I,M._owner)}},I.exports=t},function(I,M,g){"use strict";var C=g(203),N={isValidOwner:function(I){return!(!I||"function"!=typeof I.attachRef||"function"!=typeof I.detachRef)},addComponentAsRefTo:function(I,M,g){N.isValidOwner(g)?void 0:C(!1),g.attachRef(M,I)},removeComponentAsRefFrom:function(I,M,g){N.isValidOwner(g)?void 0:C(!1),g.getPublicInstance().refs[M]===I.getPublicInstance()&&g.detachRef(M)}};I.exports=N},function(I,M,g){"use strict";function C(I){i.enqueueUpdate(I)}function N(I,M){var g=t.get(I);return g?g:null}var A=(g(195),g(232)),t=g(237),i=g(244),c=g(229),j=g(203),e=(g(215),{isMounted:function(I){var M=t.get(I);return M?!!M._renderedComponent:!1},enqueueCallback:function(I,M){"function"!=typeof M?j(!1):void 0;var g=N(I);return g?(g._pendingCallbacks?g._pendingCallbacks.push(M):g._pendingCallbacks=[M],void C(g)):null},enqueueCallbackInternal:function(I,M){"function"!=typeof M?j(!1):void 0,I._pendingCallbacks?I._pendingCallbacks.push(M):I._pendingCallbacks=[M],C(I)},enqueueForceUpdate:function(I){var M=N(I,"forceUpdate");M&&(M._pendingForceUpdate=!0,C(M))},enqueueReplaceState:function(I,M){var g=N(I,"replaceState");g&&(g._pendingStateQueue=[M],g._pendingReplaceState=!0,C(g))},enqueueSetState:function(I,M){var g=N(I,"setState");if(g){var A=g._pendingStateQueue||(g._pendingStateQueue=[]);A.push(M),C(g)}},enqueueSetProps:function(I,M){var g=N(I,"setProps");g&&e.enqueueSetPropsInternal(g,M)},enqueueSetPropsInternal:function(I,M){var g=I._topLevelWrapper;g?void 0:j(!1);var N=g._pendingElement||g._currentElement,t=N.props,i=c({},t.props,M);g._pendingElement=A.cloneAndReplaceProps(N,A.cloneAndReplaceProps(t,i)),C(g)},enqueueReplaceProps:function(I,M){var g=N(I,"replaceProps");g&&e.enqueueReplacePropsInternal(g,M)},enqueueReplacePropsInternal:function(I,M){var g=I._topLevelWrapper;g?void 0:j(!1);var N=g._pendingElement||g._currentElement,t=N.props;g._pendingElement=A.cloneAndReplaceProps(N,A.cloneAndReplaceProps(t,M)),C(g)},enqueueElementInternal:function(I,M){I._pendingElement=M,C(I)}});I.exports=e},function(I,M,g){"use strict";function C(){d.ReactReconcileTransaction&&w?void 0:l(!1)}function N(){this.reinitializeTransaction(),this.dirtyComponentsLength=null,this.callbackQueue=e.getPooled(),this.reconcileTransaction=d.ReactReconcileTransaction.getPooled(!1)}function A(I,M,g,N,A,t){C(),w.batchedUpdates(I,M,g,N,A,t)}function t(I,M){return I._mountOrder-M._mountOrder}function i(I){var M=I.dirtyComponentsLength;M!==o.length?l(!1):void 0,o.sort(t);for(var g=0;M>g;g++){var C=o[g],N=C._pendingCallbacks;if(C._pendingCallbacks=null,L.performUpdateIfNecessary(C,I.reconcileTransaction),N)for(var A=0;A8&&11>=b),d=32,Y=String.fromCharCode(d),r=L.topLevelTypes,O={beforeInput:{phasedRegistrationNames:{bubbled:s({onBeforeInput:null}),captured:s({onBeforeInputCapture:null})},dependencies:[r.topCompositionEnd,r.topKeyPress,r.topTextInput,r.topPaste]},compositionEnd:{phasedRegistrationNames:{bubbled:s({onCompositionEnd:null}),captured:s({onCompositionEndCapture:null})},dependencies:[r.topBlur,r.topCompositionEnd,r.topKeyDown,r.topKeyPress,r.topKeyUp,r.topMouseDown]},compositionStart:{phasedRegistrationNames:{bubbled:s({onCompositionStart:null}),captured:s({onCompositionStartCapture:null})},dependencies:[r.topBlur,r.topCompositionStart,r.topKeyDown,r.topKeyPress,r.topKeyUp,r.topMouseDown]},compositionUpdate:{phasedRegistrationNames:{bubbled:s({onCompositionUpdate:null}),captured:s({onCompositionUpdateCapture:null})},dependencies:[r.topBlur,r.topCompositionUpdate,r.topKeyDown,r.topKeyPress,r.topKeyUp,r.topMouseDown]}},p=!1,G=null,W={eventTypes:O,extractEvents:function(I,M,g,C,N){return[j(I,M,g,C,N),u(I,M,g,C,N)]}};I.exports=W},function(I,M,g){"use strict";function C(I,M,g){var C=M.dispatchConfig.phasedRegistrationNames[g];return T(I,C)}function N(I,M,g){var N=M?o.bubbled:o.captured,A=C(I,g,N);A&&(g._dispatchListeners=n(g._dispatchListeners,A),g._dispatchIDs=n(g._dispatchIDs,I))}function A(I){I&&I.dispatchConfig.phasedRegistrationNames&&D.injection.getInstanceHandle().traverseTwoPhase(I.dispatchMarker,N,I)}function t(I){I&&I.dispatchConfig.phasedRegistrationNames&&D.injection.getInstanceHandle().traverseTwoPhaseSkipTarget(I.dispatchMarker,N,I)}function i(I,M,g){if(g&&g.dispatchConfig.registrationName){var C=g.dispatchConfig.registrationName,N=T(I,C);N&&(g._dispatchListeners=n(g._dispatchListeners,N),g._dispatchIDs=n(g._dispatchIDs,I))}}function c(I){I&&I.dispatchConfig.registrationName&&i(I.dispatchMarker,null,I)}function j(I){l(I,A)}function e(I){l(I,t)}function z(I,M,g,C){D.injection.getInstanceHandle().traverseEnterLeave(g,C,i,I,M)}function u(I){l(I,c)}var L=g(220),D=g(221),n=(g(215),g(225)),l=g(226),o=L.PropagationPhases,T=D.getListener,s={accumulateTwoPhaseDispatches:j,accumulateTwoPhaseDispatchesSkipTarget:e,accumulateDirectDispatches:u,accumulateEnterLeaveDispatches:z};I.exports=s},function(I,M,g){"use strict";function C(I){this._root=I,this._startText=this.getText(),this._fallbackText=null}var N=g(246),A=g(229),t=g(265);A(C.prototype,{destructor:function(){this._root=null,this._startText=null,this._fallbackText=null},getText:function(){return"value"in this._root?this._root.value:this._root[t()]},getData:function(){if(this._fallbackText)return this._fallbackText;var I,M,g=this._startText,C=g.length,N=this.getText(),A=N.length;for(I=0;C>I&&g[I]===N[I];I++);var t=C-I;for(M=1;t>=M&&g[C-M]===N[A-M];M++);var i=M>1?1-M:void 0;return this._fallbackText=N.slice(I,i),this._fallbackText}}),N.addPoolingTo(C),I.exports=C},function(I,M,g){"use strict";function C(){return!A&&N.canUseDOM&&(A="textContent"in document.documentElement?"textContent":"innerText"),A}var N=g(199),A=null;I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(267),A={data:null};N.augmentClass(C,A),I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){this.dispatchConfig=I,this.dispatchMarker=M,this.nativeEvent=g;var N=this.constructor.Interface;for(var A in N)if(N.hasOwnProperty(A)){var i=N[A];i?this[A]=i(g):"target"===A?this.target=C:this[A]=g[A]}var c=null!=g.defaultPrevented?g.defaultPrevented:g.returnValue===!1;c?this.isDefaultPrevented=t.thatReturnsTrue:this.isDefaultPrevented=t.thatReturnsFalse,this.isPropagationStopped=t.thatReturnsFalse}var N=g(246),A=g(229),t=g(205),i=(g(215),{type:null,target:null,currentTarget:t.thatReturnsNull,eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(I){return I.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null});A(C.prototype,{preventDefault:function(){this.defaultPrevented=!0;var I=this.nativeEvent;I&&(I.preventDefault?I.preventDefault():I.returnValue=!1,this.isDefaultPrevented=t.thatReturnsTrue)},stopPropagation:function(){var I=this.nativeEvent;I&&(I.stopPropagation?I.stopPropagation():I.cancelBubble=!0,this.isPropagationStopped=t.thatReturnsTrue)},persist:function(){this.isPersistent=t.thatReturnsTrue},isPersistent:t.thatReturnsFalse,destructor:function(){var I=this.constructor.Interface;for(var M in I)this[M]=null;this.dispatchConfig=null,this.dispatchMarker=null,this.nativeEvent=null}}),C.Interface=i,C.augmentClass=function(I,M){var g=this,C=Object.create(g.prototype);A(C,I.prototype),I.prototype=C,I.prototype.constructor=I,I.Interface=A({},g.Interface,M),I.augmentClass=g.augmentClass,N.addPoolingTo(I,N.fourArgumentPooler)},N.addPoolingTo(C,N.fourArgumentPooler),I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(267),A={data:null};N.augmentClass(C,A),I.exports=C},function(I,M){"use strict";var g=function(I){var M;for(M in I)if(I.hasOwnProperty(M))return M;return null};I.exports=g},function(I,M,g){"use strict";function C(I){var M=I.nodeName&&I.nodeName.toLowerCase();return"select"===M||"input"===M&&"file"===I.type}function N(I){var M=b.getPooled(O.change,G,I,Z(I));w.accumulateTwoPhaseDispatches(M),y.batchedUpdates(A,M)}function A(I){s.enqueueEvents(I),s.processEventQueue(!1)}function t(I,M){p=I,G=M,p.attachEvent("onchange",N)}function i(){p&&(p.detachEvent("onchange",N),p=null,G=null)}function c(I,M,g){return I===r.topChange?g:void 0}function j(I,M,g){I===r.topFocus?(i(),t(M,g)):I===r.topBlur&&i()}function e(I,M){p=I,G=M,W=I.value,x=Object.getOwnPropertyDescriptor(I.constructor.prototype,"value"),Object.defineProperty(p,"value",h),p.attachEvent("onpropertychange",u)}function z(){p&&(delete p.value,p.detachEvent("onpropertychange",u),p=null,G=null,W=null,x=null)}function u(I){if("value"===I.propertyName){var M=I.srcElement.value;M!==W&&(W=M,N(I))}}function L(I,M,g){return I===r.topInput?g:void 0}function D(I,M,g){I===r.topFocus?(z(),e(M,g)):I===r.topBlur&&z()}function n(I,M,g){return I!==r.topSelectionChange&&I!==r.topKeyUp&&I!==r.topKeyDown||!p||p.value===W?void 0:(W=p.value,G)}function l(I){return I.nodeName&&"input"===I.nodeName.toLowerCase()&&("checkbox"===I.type||"radio"===I.type)}function o(I,M,g){return I===r.topClick?g:void 0}var T=g(220),s=g(221),w=g(263),a=g(199),y=g(244),b=g(267),Z=g(271),m=g(230),d=g(272),Y=g(269),r=T.topLevelTypes,O={
change:{phasedRegistrationNames:{bubbled:Y({onChange:null}),captured:Y({onChangeCapture:null})},dependencies:[r.topBlur,r.topChange,r.topClick,r.topFocus,r.topInput,r.topKeyDown,r.topKeyUp,r.topSelectionChange]}},p=null,G=null,W=null,x=null,S=!1;a.canUseDOM&&(S=m("change")&&(!("documentMode"in document)||document.documentMode>8));var k=!1;a.canUseDOM&&(k=m("input")&&(!("documentMode"in document)||document.documentMode>9));var h={get:function(){return x.get.call(this)},set:function(I){W=""+I,x.set.call(this,I)}},Q={eventTypes:O,extractEvents:function(I,M,g,N,A){var t,i;if(C(M)?S?t=c:i=j:d(M)?k?t=L:(t=n,i=D):l(M)&&(t=o),t){var e=t(I,M,g);if(e){var z=b.getPooled(O.change,e,N,A);return z.type="change",w.accumulateTwoPhaseDispatches(z),z}}i&&i(I,M,g)}};I.exports=Q},function(I,M){"use strict";function g(I){var M=I.target||I.srcElement||window;return 3===M.nodeType?M.parentNode:M}I.exports=g},function(I,M){"use strict";function g(I){var M=I&&I.nodeName&&I.nodeName.toLowerCase();return M&&("input"===M&&C[I.type]||"textarea"===M)}var C={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};I.exports=g},function(I,M){"use strict";var g=0,C={createReactRootIndex:function(){return g++}};I.exports=C},function(I,M,g){"use strict";var C=g(269),N=[C({ResponderEventPlugin:null}),C({SimpleEventPlugin:null}),C({TapEventPlugin:null}),C({EnterLeaveEventPlugin:null}),C({ChangeEventPlugin:null}),C({SelectEventPlugin:null}),C({BeforeInputEventPlugin:null})];I.exports=N},function(I,M,g){"use strict";var C=g(220),N=g(263),A=g(276),t=g(218),i=g(269),c=C.topLevelTypes,j=t.getFirstReactDOM,e={mouseEnter:{registrationName:i({onMouseEnter:null}),dependencies:[c.topMouseOut,c.topMouseOver]},mouseLeave:{registrationName:i({onMouseLeave:null}),dependencies:[c.topMouseOut,c.topMouseOver]}},z=[null,null],u={eventTypes:e,extractEvents:function(I,M,g,C,i){if(I===c.topMouseOver&&(C.relatedTarget||C.fromElement))return null;if(I!==c.topMouseOut&&I!==c.topMouseOver)return null;var u;if(M.window===M)u=M;else{var L=M.ownerDocument;u=L?L.defaultView||L.parentWindow:window}var D,n,l="",o="";if(I===c.topMouseOut?(D=M,l=g,n=j(C.relatedTarget||C.toElement),n?o=t.getID(n):n=u,n=n||u):(D=u,n=M,o=g),D===n)return null;var T=A.getPooled(e.mouseLeave,l,C,i);T.type="mouseleave",T.target=D,T.relatedTarget=n;var s=A.getPooled(e.mouseEnter,o,C,i);return s.type="mouseenter",s.target=n,s.relatedTarget=D,N.accumulateEnterLeaveDispatches(T,s,l,o),z[0]=T,z[1]=s,z}};I.exports=u},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(277),A=g(228),t=g(278),i={screenX:null,screenY:null,clientX:null,clientY:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,getModifierState:t,button:function(I){var M=I.button;return"which"in I?M:2===M?2:4===M?1:0},buttons:null,relatedTarget:function(I){return I.relatedTarget||(I.fromElement===I.srcElement?I.toElement:I.fromElement)},pageX:function(I){return"pageX"in I?I.pageX:I.clientX+A.currentScrollLeft},pageY:function(I){return"pageY"in I?I.pageY:I.clientY+A.currentScrollTop}};N.augmentClass(C,i),I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(267),A=g(271),t={view:function(I){if(I.view)return I.view;var M=A(I);if(null!=M&&M.window===M)return M;var g=M.ownerDocument;return g?g.defaultView||g.parentWindow:window},detail:function(I){return I.detail||0}};N.augmentClass(C,t),I.exports=C},function(I,M){"use strict";function g(I){var M=this,g=M.nativeEvent;if(g.getModifierState)return g.getModifierState(I);var C=N[I];return C?!!g[C]:!1}function C(I){return g}var N={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};I.exports=C},function(I,M,g){"use strict";var C,N=g(213),A=g(199),t=N.injection.MUST_USE_ATTRIBUTE,i=N.injection.MUST_USE_PROPERTY,c=N.injection.HAS_BOOLEAN_VALUE,j=N.injection.HAS_SIDE_EFFECTS,e=N.injection.HAS_NUMERIC_VALUE,z=N.injection.HAS_POSITIVE_NUMERIC_VALUE,u=N.injection.HAS_OVERLOADED_BOOLEAN_VALUE;if(A.canUseDOM){var L=document.implementation;C=L&&L.hasFeature&&L.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")}var D={isCustomAttribute:RegExp.prototype.test.bind(/^(data|aria)-[a-z_][a-z\d_.\-]*$/),Properties:{accept:null,acceptCharset:null,accessKey:null,action:null,allowFullScreen:t|c,allowTransparency:t,alt:null,async:c,autoComplete:null,autoPlay:c,capture:t|c,cellPadding:null,cellSpacing:null,charSet:t,challenge:t,checked:i|c,classID:t,className:C?t:i,cols:t|z,colSpan:null,content:null,contentEditable:null,contextMenu:t,controls:i|c,coords:null,crossOrigin:null,data:null,dateTime:t,"default":c,defer:c,dir:null,disabled:t|c,download:u,draggable:null,encType:null,form:t,formAction:t,formEncType:t,formMethod:t,formNoValidate:c,formTarget:t,frameBorder:t,headers:null,height:t,hidden:t|c,high:null,href:null,hrefLang:null,htmlFor:null,httpEquiv:null,icon:null,id:i,inputMode:t,integrity:null,is:t,keyParams:t,keyType:t,kind:null,label:null,lang:null,list:t,loop:i|c,low:null,manifest:t,marginHeight:null,marginWidth:null,max:null,maxLength:t,media:t,mediaGroup:null,method:null,min:null,minLength:t,multiple:i|c,muted:i|c,name:null,nonce:t,noValidate:c,open:c,optimum:null,pattern:null,placeholder:null,poster:null,preload:null,radioGroup:null,readOnly:i|c,rel:null,required:c,reversed:c,role:t,rows:t|z,rowSpan:null,sandbox:null,scope:null,scoped:c,scrolling:null,seamless:t|c,selected:i|c,shape:null,size:t|z,sizes:t,span:z,spellCheck:null,src:null,srcDoc:i,srcLang:null,srcSet:t,start:e,step:null,style:null,summary:null,tabIndex:null,target:null,title:null,type:null,useMap:null,value:i|j,width:t,wmode:t,wrap:null,about:t,datatype:t,inlist:t,prefix:t,property:t,resource:t,"typeof":t,vocab:t,autoCapitalize:t,autoCorrect:t,autoSave:null,color:null,itemProp:t,itemScope:t|c,itemType:t,itemID:t,itemRef:t,results:null,security:t,unselectable:t},DOMAttributeNames:{acceptCharset:"accept-charset",className:"class",htmlFor:"for",httpEquiv:"http-equiv"},DOMPropertyNames:{autoComplete:"autocomplete",autoFocus:"autofocus",autoPlay:"autoplay",autoSave:"autosave",encType:"encoding",hrefLang:"hreflang",radioGroup:"radiogroup",spellCheck:"spellcheck",srcDoc:"srcdoc",srcSet:"srcset"}};I.exports=D},function(I,M,g){"use strict";var C=(g(237),g(281)),N=(g(215),"_getDOMNodeDidWarn"),A={getDOMNode:function(){return this.constructor[N]=!0,C(this)}};I.exports=A},function(I,M,g){"use strict";function C(I){return null==I?null:1===I.nodeType?I:N.has(I)?A.getNodeFromInstance(I):(null!=I.render&&"function"==typeof I.render?t(!1):void 0,void t(!1))}var N=(g(195),g(237)),A=g(218),t=g(203);g(215);I.exports=C},function(I,M,g){"use strict";function C(){this.reinitializeTransaction()}var N=g(244),A=g(247),t=g(229),i=g(205),c={initialize:i,close:function(){u.isBatchingUpdates=!1}},j={initialize:i,close:N.flushBatchedUpdates.bind(N)},e=[j,c];t(C.prototype,A.Mixin,{getTransactionWrappers:function(){return e}});var z=new C,u={isBatchingUpdates:!1,batchedUpdates:function(I,M,g,C,N,A){var t=u.isBatchingUpdates;u.isBatchingUpdates=!0,t?I(M,g,C,N,A):z.perform(I,null,M,g,C,N,A)}};I.exports=u},function(I,M,g){"use strict";function C(){return this}function N(){var I=this._reactInternalComponent;return!!I}function A(){}function t(I,M){var g=this._reactInternalComponent;g&&(W.enqueueSetPropsInternal(g,I),M&&W.enqueueCallbackInternal(g,M))}function i(I,M){var g=this._reactInternalComponent;g&&(W.enqueueReplacePropsInternal(g,I),M&&W.enqueueCallbackInternal(g,M))}function c(I,M){M&&(null!=M.dangerouslySetInnerHTML&&(null!=M.children?h(!1):void 0,"object"==typeof M.dangerouslySetInnerHTML&&X in M.dangerouslySetInnerHTML?void 0:h(!1)),null!=M.style&&"object"!=typeof M.style?h(!1):void 0)}function j(I,M,g,C){var N=O.findReactContainerForID(I);if(N){var A=N.nodeType===F?N.ownerDocument:N;U(M,A)}C.getReactMountReady().enqueue(e,{id:I,registrationName:M,listener:g})}function e(){var I=this;y.putListener(I.id,I.registrationName,I.listener)}function z(){var I=this;I._rootNodeID?void 0:h(!1);var M=O.getNode(I._rootNodeID);switch(M?void 0:h(!1),I._tag){case"iframe":I._wrapperState.listeners=[y.trapBubbledEvent(a.topLevelTypes.topLoad,"load",M)];break;case"video":case"audio":I._wrapperState.listeners=[];for(var g in f)f.hasOwnProperty(g)&&I._wrapperState.listeners.push(y.trapBubbledEvent(a.topLevelTypes[g],f[g],M));break;case"img":I._wrapperState.listeners=[y.trapBubbledEvent(a.topLevelTypes.topError,"error",M),y.trapBubbledEvent(a.topLevelTypes.topLoad,"load",M)];break;case"form":I._wrapperState.listeners=[y.trapBubbledEvent(a.topLevelTypes.topReset,"reset",M),y.trapBubbledEvent(a.topLevelTypes.topSubmit,"submit",M)]}}function u(){m.mountReadyWrapper(this)}function L(){Y.postUpdateWrapper(this)}function D(I){$.call(_,I)||(q.test(I)?void 0:h(!1),_[I]=!0)}function n(I,M){return I.indexOf("-")>=0||null!=M.is}function l(I){D(I),this._tag=I.toLowerCase(),this._renderedChildren=null,this._previousStyle=null,this._previousStyleCopy=null,this._rootNodeID=null,this._wrapperState=null,this._topLevelWrapper=null,this._nodeWithLegacyProperties=null}var o=g(284),T=g(286),s=g(213),w=g(212),a=g(220),y=g(219),b=g(216),Z=g(294),m=g(295),d=g(299),Y=g(302),r=g(303),O=g(218),p=g(304),G=g(208),W=g(243),x=g(229),S=g(233),k=g(211),h=g(203),Q=(g(230),g(269)),v=g(209),E=g(210),R=(g(307),g(260),g(215),y.deleteListener),U=y.listenTo,P=y.registrationNameModules,J={string:!0,number:!0},B=Q({children:null}),H=Q({style:null}),X=Q({__html:null}),F=1,f={topAbort:"abort",topCanPlay:"canplay",topCanPlayThrough:"canplaythrough",topDurationChange:"durationchange",topEmptied:"emptied",topEncrypted:"encrypted",topEnded:"ended",topError:"error",topLoadedData:"loadeddata",topLoadedMetadata:"loadedmetadata",topLoadStart:"loadstart",topPause:"pause",topPlay:"play",topPlaying:"playing",topProgress:"progress",topRateChange:"ratechange",topSeeked:"seeked",topSeeking:"seeking",topStalled:"stalled",topSuspend:"suspend",topTimeUpdate:"timeupdate",topVolumeChange:"volumechange",topWaiting:"waiting"},V={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},K={listing:!0,pre:!0,textarea:!0},q=(x({menuitem:!0},V),/^[a-zA-Z][a-zA-Z:_\.\-\d]*$/),_={},$={}.hasOwnProperty;l.displayName="ReactDOMComponent",l.Mixin={construct:function(I){this._currentElement=I},mountComponent:function(I,M,g){this._rootNodeID=I;var C=this._currentElement.props;switch(this._tag){case"iframe":case"img":case"form":case"video":case"audio":this._wrapperState={listeners:null},M.getReactMountReady().enqueue(z,this);break;case"button":C=Z.getNativeProps(this,C,g);break;case"input":m.mountWrapper(this,C,g),C=m.getNativeProps(this,C,g);break;case"option":d.mountWrapper(this,C,g),C=d.getNativeProps(this,C,g);break;case"select":Y.mountWrapper(this,C,g),C=Y.getNativeProps(this,C,g),g=Y.processChildContext(this,C,g);break;case"textarea":r.mountWrapper(this,C,g),C=r.getNativeProps(this,C,g)}c(this,C);var N;if(M.useCreateElement){var A=g[O.ownerDocumentContextKey],t=A.createElement(this._currentElement.type);w.setAttributeForID(t,this._rootNodeID),O.getID(t),this._updateDOMProperties({},C,M,t),this._createInitialChildren(M,C,g,t),N=t}else{var i=this._createOpenTagMarkupAndPutListeners(M,C),j=this._createContentMarkup(M,C,g);N=!j&&V[this._tag]?i+"/>":i+">"+j+""+this._currentElement.type+">"}switch(this._tag){case"input":M.getReactMountReady().enqueue(u,this);case"button":case"select":case"textarea":C.autoFocus&&M.getReactMountReady().enqueue(o.focusDOMComponent,this)}return N},_createOpenTagMarkupAndPutListeners:function(I,M){var g="<"+this._currentElement.type;for(var C in M)if(M.hasOwnProperty(C)){var N=M[C];if(null!=N)if(P.hasOwnProperty(C))N&&j(this._rootNodeID,C,N,I);else{C===H&&(N&&(N=this._previousStyleCopy=x({},M.style)),N=T.createMarkupForStyles(N));var A=null;null!=this._tag&&n(this._tag,M)?C!==B&&(A=w.createMarkupForCustomAttribute(C,N)):A=w.createMarkupForProperty(C,N),A&&(g+=" "+A)}}if(I.renderToStaticMarkup)return g;var t=w.createMarkupForID(this._rootNodeID);return g+" "+t},_createContentMarkup:function(I,M,g){var C="",N=M.dangerouslySetInnerHTML;if(null!=N)null!=N.__html&&(C=N.__html);else{var A=J[typeof M.children]?M.children:null,t=null!=A?null:M.children;if(null!=A)C=k(A);else if(null!=t){var i=this.mountChildren(t,I,g);C=i.join("")}}return K[this._tag]&&"\n"===C.charAt(0)?"\n"+C:C},_createInitialChildren:function(I,M,g,C){var N=M.dangerouslySetInnerHTML;if(null!=N)null!=N.__html&&v(C,N.__html);else{var A=J[typeof M.children]?M.children:null,t=null!=A?null:M.children;if(null!=A)E(C,A);else if(null!=t)for(var i=this.mountChildren(t,I,g),c=0;c>"}var T=g(232),s=g(256),w=g(205),a=g(298),y="<>",b={array:N("array"),bool:N("boolean"),func:N("function"),number:N("number"),object:N("object"),string:N("string"),any:A(),arrayOf:t,element:i(),instanceOf:c,node:u(),objectOf:e,oneOf:j,oneOfType:z,shape:L};I.exports=b},function(I,M){"use strict";function g(I){var M=I&&(C&&I[C]||I[N]);return"function"==typeof M?M:void 0}var C="function"==typeof Symbol&&Symbol.iterator,N="@@iterator";I.exports=g},function(I,M,g){"use strict";var C=g(300),N=g(302),A=g(229),t=(g(215),N.valueContextKey),i={mountWrapper:function(I,M,g){var C=g[t],N=null;if(null!=C)if(N=!1,Array.isArray(C)){for(var A=0;AM.end?(g=M.end,C=M.start):(g=M.start,C=M.end),N.moveToElementText(I),N.moveStart("character",g),N.setEndPoint("EndToStart",N),N.moveEnd("character",C-g),N.select()}function i(I,M){if(window.getSelection){var g=window.getSelection(),C=I[e()].length,N=Math.min(M.start,C),A="undefined"==typeof M.end?N:Math.min(M.end,C);if(!g.extend&&N>A){var t=A;A=N,N=t}var i=j(I,N),c=j(I,A);if(i&&c){var z=document.createRange();z.setStart(i.node,i.offset),g.removeAllRanges(),N>A?(g.addRange(z),g.extend(c.node,c.offset)):(z.setEnd(c.node,c.offset),g.addRange(z))}}}var c=g(199),j=g(318),e=g(265),z=c.canUseDOM&&"selection"in document&&!("getSelection"in window),u={getOffsets:z?N:A,setOffsets:z?t:i};I.exports=u},function(I,M){"use strict";function g(I){for(;I&&I.firstChild;)I=I.firstChild;return I}function C(I){for(;I;){if(I.nextSibling)return I.nextSibling;I=I.parentNode}}function N(I,M){for(var N=g(I),A=0,t=0;N;){if(3===N.nodeType){if(t=A+N.textContent.length,M>=A&&t>=M)return{node:N,offset:M-A};A=t}N=g(C(N))}}I.exports=N},function(I,M){"use strict";function g(){if("undefined"==typeof document)return null;try{return document.activeElement||document.body}catch(I){return document.body}}I.exports=g},function(I,M,g){"use strict";function C(I){if("selectionStart"in I&&c.hasSelectionCapabilities(I))return{start:I.selectionStart,end:I.selectionEnd};if(window.getSelection){var M=window.getSelection();return{anchorNode:M.anchorNode,anchorOffset:M.anchorOffset,focusNode:M.focusNode,focusOffset:M.focusOffset}}if(document.selection){var g=document.selection.createRange();return{parentElement:g.parentElement(),text:g.text,top:g.boundingTop,left:g.boundingLeft}}}function N(I,M){if(w||null==o||o!==e())return null;var g=C(o);if(!s||!L(s,g)){s=g;var N=j.getPooled(l.select,T,I,M);return N.type="select",N.target=o,t.accumulateTwoPhaseDispatches(N),N}return null}var A=g(220),t=g(263),i=g(199),c=g(316),j=g(267),e=g(319),z=g(272),u=g(269),L=g(307),D=A.topLevelTypes,n=i.canUseDOM&&"documentMode"in document&&document.documentMode<=11,l={select:{phasedRegistrationNames:{bubbled:u({onSelect:null}),captured:u({onSelectCapture:null})},dependencies:[D.topBlur,D.topContextMenu,D.topFocus,D.topKeyDown,D.topMouseDown,D.topMouseUp,D.topSelectionChange]}},o=null,T=null,s=null,w=!1,a=!1,y=u({onSelect:null}),b={eventTypes:l,extractEvents:function(I,M,g,C,A){if(!a)return null;switch(I){case D.topFocus:(z(M)||"true"===M.contentEditable)&&(o=M,T=g,s=null);break;case D.topBlur:o=null,T=null,s=null;break;case D.topMouseDown:w=!0;break;case D.topContextMenu:case D.topMouseUp:return w=!1,N(C,A);case D.topSelectionChange:if(n)break;case D.topKeyDown:case D.topKeyUp:return N(C,A)}return null},didPutListener:function(I,M,g){M===y&&(a=!0)}};I.exports=b},function(I,M){"use strict";var g=Math.pow(2,53),C={createReactRootIndex:function(){return Math.ceil(Math.random()*g)}};I.exports=C},function(I,M,g){"use strict";var C=g(220),N=g(309),A=g(263),t=g(218),i=g(323),c=g(267),j=g(324),e=g(325),z=g(276),u=g(328),L=g(329),D=g(277),n=g(330),l=g(205),o=g(326),T=g(203),s=g(269),w=C.topLevelTypes,a={abort:{phasedRegistrationNames:{bubbled:s({onAbort:!0}),captured:s({onAbortCapture:!0})}},blur:{phasedRegistrationNames:{bubbled:s({onBlur:!0}),captured:s({onBlurCapture:!0})}},canPlay:{phasedRegistrationNames:{bubbled:s({onCanPlay:!0}),captured:s({onCanPlayCapture:!0})}},canPlayThrough:{phasedRegistrationNames:{bubbled:s({onCanPlayThrough:!0}),captured:s({onCanPlayThroughCapture:!0})}},click:{phasedRegistrationNames:{bubbled:s({onClick:!0}),captured:s({onClickCapture:!0})}},contextMenu:{phasedRegistrationNames:{bubbled:s({onContextMenu:!0}),captured:s({onContextMenuCapture:!0})}},copy:{phasedRegistrationNames:{bubbled:s({onCopy:!0}),captured:s({onCopyCapture:!0})}},cut:{phasedRegistrationNames:{bubbled:s({onCut:!0}),captured:s({onCutCapture:!0})}},doubleClick:{phasedRegistrationNames:{bubbled:s({onDoubleClick:!0}),captured:s({onDoubleClickCapture:!0})}},drag:{phasedRegistrationNames:{bubbled:s({onDrag:!0}),captured:s({onDragCapture:!0})}},dragEnd:{phasedRegistrationNames:{bubbled:s({onDragEnd:!0}),captured:s({onDragEndCapture:!0})}},dragEnter:{phasedRegistrationNames:{bubbled:s({onDragEnter:!0}),captured:s({onDragEnterCapture:!0})}},dragExit:{phasedRegistrationNames:{bubbled:s({onDragExit:!0}),captured:s({onDragExitCapture:!0})}},dragLeave:{phasedRegistrationNames:{bubbled:s({onDragLeave:!0}),captured:s({onDragLeaveCapture:!0})}},dragOver:{phasedRegistrationNames:{bubbled:s({onDragOver:!0}),captured:s({onDragOverCapture:!0})}},dragStart:{phasedRegistrationNames:{bubbled:s({onDragStart:!0}),captured:s({onDragStartCapture:!0})}},drop:{phasedRegistrationNames:{bubbled:s({onDrop:!0}),captured:s({onDropCapture:!0})}},durationChange:{phasedRegistrationNames:{bubbled:s({onDurationChange:!0}),captured:s({onDurationChangeCapture:!0})}},emptied:{phasedRegistrationNames:{bubbled:s({onEmptied:!0}),captured:s({onEmptiedCapture:!0})}},encrypted:{phasedRegistrationNames:{bubbled:s({onEncrypted:!0}),captured:s({onEncryptedCapture:!0})}},ended:{phasedRegistrationNames:{bubbled:s({onEnded:!0}),captured:s({onEndedCapture:!0})}},error:{phasedRegistrationNames:{bubbled:s({onError:!0}),captured:s({onErrorCapture:!0})}},focus:{phasedRegistrationNames:{bubbled:s({onFocus:!0}),captured:s({onFocusCapture:!0})}},input:{phasedRegistrationNames:{bubbled:s({onInput:!0}),captured:s({onInputCapture:!0})}},keyDown:{phasedRegistrationNames:{bubbled:s({onKeyDown:!0}),captured:s({onKeyDownCapture:!0})}},keyPress:{phasedRegistrationNames:{bubbled:s({onKeyPress:!0}),captured:s({onKeyPressCapture:!0})}},keyUp:{phasedRegistrationNames:{bubbled:s({onKeyUp:!0}),captured:s({onKeyUpCapture:!0})}},load:{phasedRegistrationNames:{bubbled:s({onLoad:!0}),captured:s({onLoadCapture:!0})}},loadedData:{phasedRegistrationNames:{bubbled:s({onLoadedData:!0}),captured:s({onLoadedDataCapture:!0})}},loadedMetadata:{phasedRegistrationNames:{bubbled:s({onLoadedMetadata:!0}),captured:s({onLoadedMetadataCapture:!0})}},loadStart:{phasedRegistrationNames:{bubbled:s({onLoadStart:!0}),captured:s({onLoadStartCapture:!0})}},mouseDown:{phasedRegistrationNames:{bubbled:s({onMouseDown:!0}),captured:s({onMouseDownCapture:!0})}},mouseMove:{phasedRegistrationNames:{bubbled:s({onMouseMove:!0}),captured:s({onMouseMoveCapture:!0})}},mouseOut:{phasedRegistrationNames:{bubbled:s({onMouseOut:!0}),captured:s({onMouseOutCapture:!0})}},mouseOver:{phasedRegistrationNames:{bubbled:s({onMouseOver:!0}),captured:s({onMouseOverCapture:!0})}},mouseUp:{phasedRegistrationNames:{bubbled:s({onMouseUp:!0}),captured:s({onMouseUpCapture:!0})}},paste:{phasedRegistrationNames:{bubbled:s({onPaste:!0}),captured:s({onPasteCapture:!0})}},pause:{phasedRegistrationNames:{bubbled:s({onPause:!0}),captured:s({onPauseCapture:!0})}},play:{phasedRegistrationNames:{bubbled:s({onPlay:!0}),captured:s({onPlayCapture:!0})}},playing:{phasedRegistrationNames:{bubbled:s({onPlaying:!0}),captured:s({onPlayingCapture:!0})}},progress:{phasedRegistrationNames:{bubbled:s({onProgress:!0}),captured:s({onProgressCapture:!0})}},rateChange:{phasedRegistrationNames:{bubbled:s({onRateChange:!0}),captured:s({onRateChangeCapture:!0})}},reset:{phasedRegistrationNames:{bubbled:s({onReset:!0}),captured:s({onResetCapture:!0})}},scroll:{phasedRegistrationNames:{bubbled:s({onScroll:!0}),captured:s({onScrollCapture:!0})}},seeked:{phasedRegistrationNames:{bubbled:s({onSeeked:!0}),captured:s({onSeekedCapture:!0})}},seeking:{phasedRegistrationNames:{bubbled:s({onSeeking:!0}),captured:s({onSeekingCapture:!0})}},stalled:{phasedRegistrationNames:{bubbled:s({onStalled:!0}),captured:s({onStalledCapture:!0})}},submit:{phasedRegistrationNames:{bubbled:s({onSubmit:!0}),captured:s({onSubmitCapture:!0})}},suspend:{phasedRegistrationNames:{bubbled:s({onSuspend:!0}),captured:s({onSuspendCapture:!0})}},timeUpdate:{phasedRegistrationNames:{bubbled:s({onTimeUpdate:!0}),captured:s({onTimeUpdateCapture:!0})}},touchCancel:{phasedRegistrationNames:{bubbled:s({onTouchCancel:!0}),captured:s({onTouchCancelCapture:!0})}},touchEnd:{phasedRegistrationNames:{bubbled:s({onTouchEnd:!0}),captured:s({onTouchEndCapture:!0})}},touchMove:{phasedRegistrationNames:{bubbled:s({onTouchMove:!0}),captured:s({onTouchMoveCapture:!0})}},touchStart:{phasedRegistrationNames:{bubbled:s({onTouchStart:!0}),captured:s({onTouchStartCapture:!0})}},volumeChange:{phasedRegistrationNames:{bubbled:s({onVolumeChange:!0}),captured:s({onVolumeChangeCapture:!0})}},waiting:{phasedRegistrationNames:{bubbled:s({onWaiting:!0}),captured:s({onWaitingCapture:!0})}},wheel:{phasedRegistrationNames:{bubbled:s({onWheel:!0}),captured:s({onWheelCapture:!0})}}},y={topAbort:a.abort,topBlur:a.blur,topCanPlay:a.canPlay,topCanPlayThrough:a.canPlayThrough,topClick:a.click,topContextMenu:a.contextMenu,topCopy:a.copy,topCut:a.cut,topDoubleClick:a.doubleClick,topDrag:a.drag,topDragEnd:a.dragEnd,topDragEnter:a.dragEnter,topDragExit:a.dragExit,topDragLeave:a.dragLeave,topDragOver:a.dragOver,topDragStart:a.dragStart,topDrop:a.drop,topDurationChange:a.durationChange,topEmptied:a.emptied,topEncrypted:a.encrypted,topEnded:a.ended,topError:a.error,topFocus:a.focus,topInput:a.input,topKeyDown:a.keyDown,topKeyPress:a.keyPress,topKeyUp:a.keyUp,topLoad:a.load,topLoadedData:a.loadedData,topLoadedMetadata:a.loadedMetadata,topLoadStart:a.loadStart,topMouseDown:a.mouseDown,topMouseMove:a.mouseMove,topMouseOut:a.mouseOut,topMouseOver:a.mouseOver,topMouseUp:a.mouseUp,topPaste:a.paste,topPause:a.pause,topPlay:a.play,topPlaying:a.playing,topProgress:a.progress,topRateChange:a.rateChange,topReset:a.reset,topScroll:a.scroll,topSeeked:a.seeked,topSeeking:a.seeking,topStalled:a.stalled,topSubmit:a.submit,topSuspend:a.suspend,topTimeUpdate:a.timeUpdate,topTouchCancel:a.touchCancel,topTouchEnd:a.touchEnd,topTouchMove:a.touchMove,topTouchStart:a.touchStart,topVolumeChange:a.volumeChange,topWaiting:a.waiting,topWheel:a.wheel};for(var b in y)y[b].dependencies=[b];var Z=s({onClick:null}),m={},d={eventTypes:a,extractEvents:function(I,M,g,C,N){var t=y[I];if(!t)return null;var l;switch(I){case w.topAbort:case w.topCanPlay:case w.topCanPlayThrough:case w.topDurationChange:case w.topEmptied:case w.topEncrypted:case w.topEnded:case w.topError:case w.topInput:case w.topLoad:case w.topLoadedData:case w.topLoadedMetadata:case w.topLoadStart:case w.topPause:case w.topPlay:case w.topPlaying:case w.topProgress:case w.topRateChange:case w.topReset:case w.topSeeked:case w.topSeeking:case w.topStalled:case w.topSubmit:case w.topSuspend:case w.topTimeUpdate:case w.topVolumeChange:case w.topWaiting:l=c;break;case w.topKeyPress:if(0===o(C))return null;case w.topKeyDown:case w.topKeyUp:l=e;break;case w.topBlur:case w.topFocus:l=j;break;case w.topClick:if(2===C.button)return null;case w.topContextMenu:case w.topDoubleClick:case w.topMouseDown:case w.topMouseMove:case w.topMouseOut:case w.topMouseOver:case w.topMouseUp:l=z;break;case w.topDrag:case w.topDragEnd:case w.topDragEnter:case w.topDragExit:case w.topDragLeave:case w.topDragOver:case w.topDragStart:case w.topDrop:l=u;break;case w.topTouchCancel:case w.topTouchEnd:case w.topTouchMove:case w.topTouchStart:l=L;break;case w.topScroll:l=D;break;case w.topWheel:l=n;break;case w.topCopy:case w.topCut:case w.topPaste:l=i}l?void 0:T(!1);var s=l.getPooled(t,g,C,N);return A.accumulateTwoPhaseDispatches(s),s},didPutListener:function(I,M,g){if(M===Z){var C=t.getNode(I);m[I]||(m[I]=N.listen(C,"click",l))}},willDeleteListener:function(I,M){M===Z&&(m[I].remove(),delete m[I])}};I.exports=d},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(267),A={clipboardData:function(I){return"clipboardData"in I?I.clipboardData:window.clipboardData}};N.augmentClass(C,A),I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(277),A={relatedTarget:null};N.augmentClass(C,A),I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(277),A=g(326),t=g(327),i=g(278),c={key:t,location:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,repeat:null,locale:null,getModifierState:i,charCode:function(I){return"keypress"===I.type?A(I):0},keyCode:function(I){return"keydown"===I.type||"keyup"===I.type?I.keyCode:0},which:function(I){return"keypress"===I.type?A(I):"keydown"===I.type||"keyup"===I.type?I.keyCode:0}};N.augmentClass(C,c),I.exports=C},function(I,M){"use strict";function g(I){var M,g=I.keyCode;return"charCode"in I?(M=I.charCode,0===M&&13===g&&(M=13)):M=g,M>=32||13===M?M:0}I.exports=g},function(I,M,g){"use strict";function C(I){if(I.key){var M=A[I.key]||I.key;if("Unidentified"!==M)return M}if("keypress"===I.type){var g=N(I);return 13===g?"Enter":String.fromCharCode(g)}return"keydown"===I.type||"keyup"===I.type?t[I.keyCode]||"Unidentified":""}var N=g(326),A={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},t={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"};I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(276),A={dataTransfer:null};N.augmentClass(C,A),I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(277),A=g(278),t={touches:null,targetTouches:null,changedTouches:null,altKey:null,metaKey:null,ctrlKey:null,shiftKey:null,getModifierState:A};N.augmentClass(C,t),I.exports=C},function(I,M,g){"use strict";function C(I,M,g,C){N.call(this,I,M,g,C)}var N=g(276),A={deltaX:function(I){return"deltaX"in I?I.deltaX:"wheelDeltaX"in I?-I.wheelDeltaX:0},deltaY:function(I){return"deltaY"in I?I.deltaY:"wheelDeltaY"in I?-I.wheelDeltaY:"wheelDelta"in I?-I.wheelDelta:0},deltaZ:null,deltaMode:null};N.augmentClass(C,A),I.exports=C},function(I,M,g){"use strict";var C=g(213),N=C.injection.MUST_USE_ATTRIBUTE,A={xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace"},t={Properties:{clipPath:N,cx:N,cy:N,d:N,dx:N,dy:N,fill:N,fillOpacity:N,fontFamily:N,fontSize:N,fx:N,fy:N,gradientTransform:N,gradientUnits:N,markerEnd:N,markerMid:N,markerStart:N,offset:N,opacity:N,patternContentUnits:N,patternUnits:N,points:N,preserveAspectRatio:N,r:N,rx:N,ry:N,spreadMethod:N,stopColor:N,stopOpacity:N,stroke:N,strokeDasharray:N,strokeLinecap:N,strokeOpacity:N,strokeWidth:N,textAnchor:N,transform:N,version:N,viewBox:N,x1:N,x2:N,x:N,xlinkActuate:N,xlinkArcrole:N,xlinkHref:N,xlinkRole:N,xlinkShow:N,xlinkTitle:N,xlinkType:N,xmlBase:N,xmlLang:N,xmlSpace:N,y1:N,y2:N,y:N},DOMAttributeNamespaces:{xlinkActuate:A.xlink,xlinkArcrole:A.xlink,xlinkHref:A.xlink,xlinkRole:A.xlink,xlinkShow:A.xlink,xlinkTitle:A.xlink,xlinkType:A.xlink,xmlBase:A.xml,xmlLang:A.xml,xmlSpace:A.xml},DOMAttributeNames:{clipPath:"clip-path",fillOpacity:"fill-opacity",fontFamily:"font-family",fontSize:"font-size",gradientTransform:"gradientTransform",gradientUnits:"gradientUnits",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",patternContentUnits:"patternContentUnits",patternUnits:"patternUnits",preserveAspectRatio:"preserveAspectRatio",spreadMethod:"spreadMethod",stopColor:"stop-color",stopOpacity:"stop-opacity",strokeDasharray:"stroke-dasharray",strokeLinecap:"stroke-linecap",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",textAnchor:"text-anchor",viewBox:"viewBox",xlinkActuate:"xlink:actuate",xlinkArcrole:"xlink:arcrole",xlinkHref:"xlink:href",xlinkRole:"xlink:role",xlinkShow:"xlink:show",xlinkTitle:"xlink:title",xlinkType:"xlink:type",xmlBase:"xml:base",xmlLang:"xml:lang",xmlSpace:"xml:space"}};I.exports=t},function(I,M){"use strict";I.exports="0.14.7"},function(I,M,g){"use strict";var C=g(218);I.exports=C.renderSubtreeIntoContainer},function(I,M,g){"use strict";var C=g(261),N=g(335),A=g(332);C.inject();var t={renderToString:N.renderToString,renderToStaticMarkup:N.renderToStaticMarkup,version:A};I.exports=t},function(I,M,g){"use strict";function C(I){t.isValidElement(I)?void 0:D(!1);var M;try{z.injection.injectBatchingStrategy(j);var g=i.createReactRootID();return M=e.getPooled(!1),M.perform(function(){var C=L(I,null),N=C.mountComponent(g,M,u);return c.addChecksumToMarkup(N)},null)}finally{e.release(M),z.injection.injectBatchingStrategy(A)}}function N(I){t.isValidElement(I)?void 0:D(!1);var M;try{z.injection.injectBatchingStrategy(j);var g=i.createReactRootID();return M=e.getPooled(!0),M.perform(function(){var C=L(I,null);return C.mountComponent(g,M,u)},null)}finally{e.release(M),z.injection.injectBatchingStrategy(A)}}var A=g(282),t=g(232),i=g(235),c=g(238),j=g(336),e=g(337),z=g(244),u=g(248),L=g(252),D=g(203);I.exports={renderToString:C,renderToStaticMarkup:N}},function(I,M){"use strict";var g={isBatchingUpdates:!1,batchedUpdates:function(I){}};I.exports=g},function(I,M,g){"use strict";function C(I){this.reinitializeTransaction(),this.renderToStaticMarkup=I,this.reactMountReady=A.getPooled(null),this.useCreateElement=!1}var N=g(246),A=g(245),t=g(247),i=g(229),c=g(205),j={initialize:function(){this.reactMountReady.reset()},close:c},e=[j],z={getTransactionWrappers:function(){return e},getReactMountReady:function(){return this.reactMountReady},destructor:function(){A.release(this.reactMountReady),this.reactMountReady=null}};i(C.prototype,t.Mixin,z),N.addPoolingTo(C),I.exports=C},function(I,M,g){"use strict";var C=g(300),N=g(313),A=g(312),t=g(339),i=g(232),c=(g(340),g(297)),j=g(332),e=g(229),z=g(342),u=i.createElement,L=i.createFactory,D=i.cloneElement,n={
Children:{map:C.map,forEach:C.forEach,count:C.count,toArray:C.toArray,only:z},Component:N,createElement:u,cloneElement:D,isValidElement:i.isValidElement,PropTypes:c,createClass:A.createClass,createFactory:L,createMixin:function(I){return I},DOM:t,version:j,__spread:e};I.exports=n},function(I,M,g){"use strict";function C(I){return N.createFactory(I)}var N=g(232),A=(g(340),g(341)),t=A({a:"a",abbr:"abbr",address:"address",area:"area",article:"article",aside:"aside",audio:"audio",b:"b",base:"base",bdi:"bdi",bdo:"bdo",big:"big",blockquote:"blockquote",body:"body",br:"br",button:"button",canvas:"canvas",caption:"caption",cite:"cite",code:"code",col:"col",colgroup:"colgroup",data:"data",datalist:"datalist",dd:"dd",del:"del",details:"details",dfn:"dfn",dialog:"dialog",div:"div",dl:"dl",dt:"dt",em:"em",embed:"embed",fieldset:"fieldset",figcaption:"figcaption",figure:"figure",footer:"footer",form:"form",h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",h6:"h6",head:"head",header:"header",hgroup:"hgroup",hr:"hr",html:"html",i:"i",iframe:"iframe",img:"img",input:"input",ins:"ins",kbd:"kbd",keygen:"keygen",label:"label",legend:"legend",li:"li",link:"link",main:"main",map:"map",mark:"mark",menu:"menu",menuitem:"menuitem",meta:"meta",meter:"meter",nav:"nav",noscript:"noscript",object:"object",ol:"ol",optgroup:"optgroup",option:"option",output:"output",p:"p",param:"param",picture:"picture",pre:"pre",progress:"progress",q:"q",rp:"rp",rt:"rt",ruby:"ruby",s:"s",samp:"samp",script:"script",section:"section",select:"select",small:"small",source:"source",span:"span",strong:"strong",style:"style",sub:"sub",summary:"summary",sup:"sup",table:"table",tbody:"tbody",td:"td",textarea:"textarea",tfoot:"tfoot",th:"th",thead:"thead",time:"time",title:"title",tr:"tr",track:"track",u:"u",ul:"ul","var":"var",video:"video",wbr:"wbr",circle:"circle",clipPath:"clipPath",defs:"defs",ellipse:"ellipse",g:"g",image:"image",line:"line",linearGradient:"linearGradient",mask:"mask",path:"path",pattern:"pattern",polygon:"polygon",polyline:"polyline",radialGradient:"radialGradient",rect:"rect",stop:"stop",svg:"svg",text:"text",tspan:"tspan"},C);I.exports=t},function(I,M,g){"use strict";function C(){if(z.current){var I=z.current.getName();if(I)return" Check the render method of `"+I+"`."}return""}function N(I,M){if(I._store&&!I._store.validated&&null==I.key){I._store.validated=!0;A("uniqueKey",I,M)}}function A(I,M,g){var N=C();if(!N){var A="string"==typeof g?g:g.displayName||g.name;A&&(N=" Check the top-level render call using <"+A+">.")}var t=D[I]||(D[I]={});if(t[N])return null;t[N]=!0;var i={parentOrOwner:N,url:" See https://fb.me/react-warning-keys for more information.",childOwner:null};return M&&M._owner&&M._owner!==z.current&&(i.childOwner=" It was passed a child from "+M._owner.getName()+"."),i}function t(I,M){if("object"==typeof I)if(Array.isArray(I))for(var g=0;g, "+('or explicitly pass "store" as a prop to "'+t.constructor.displayName+'".'));var i=t.store.getState();return t.state={storeState:i},t.clearCache(),t}return t(g,M),g.prototype.shouldComponentUpdate=function(){return!r||this.haveOwnPropsChanged||this.hasStoreStateChanged},g.prototype.computeStateProps=function(I,M){if(!this.finalMapStateToProps)return this.configureFinalMapState(I,M);var g=I.getState(),C=this.doStatePropsDependOnOwnProps?this.finalMapStateToProps(g,M):this.finalMapStateToProps(g);return c(C)},g.prototype.configureFinalMapState=function(I,M){var g=D(I.getState(),M),C="function"==typeof g;return this.finalMapStateToProps=C?g:D,this.doStatePropsDependOnOwnProps=1!==this.finalMapStateToProps.length,C?this.computeStateProps(I,M):c(g)},g.prototype.computeDispatchProps=function(I,M){if(!this.finalMapDispatchToProps)return this.configureFinalMapDispatch(I,M);var g=I.dispatch,C=this.doDispatchPropsDependOnOwnProps?this.finalMapDispatchToProps(g,M):this.finalMapDispatchToProps(g);return c(C,!0)},g.prototype.configureFinalMapDispatch=function(I,M){var g=l(I.dispatch,M),C="function"==typeof g;return this.finalMapDispatchToProps=C?g:l,this.doDispatchPropsDependOnOwnProps=1!==this.finalMapDispatchToProps.length,C?this.computeDispatchProps(I,M):c(g,!0)},g.prototype.updateStatePropsIfNeeded=function(){var I=this.computeStateProps(this.store,this.props);return this.stateProps&&(0,n["default"])(I,this.stateProps)?!1:(this.stateProps=I,!0)},g.prototype.updateDispatchPropsIfNeeded=function(){var I=this.computeDispatchProps(this.store,this.props);return this.dispatchProps&&(0,n["default"])(I,this.dispatchProps)?!1:(this.dispatchProps=I,!0)},g.prototype.updateMergedPropsIfNeeded=function(){var I=C(this.stateProps,this.dispatchProps,this.props);return this.mergedProps&&w&&(0,n["default"])(I,this.mergedProps)?!1:(this.mergedProps=I,!0)},g.prototype.isSubscribed=function(){return"function"==typeof this.unsubscribe},g.prototype.trySubscribe=function(){u&&!this.unsubscribe&&(this.unsubscribe=this.store.subscribe(this.handleChange.bind(this)),this.handleChange())},g.prototype.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null)},g.prototype.componentDidMount=function(){this.trySubscribe()},g.prototype.componentWillReceiveProps=function(I){r&&(0,n["default"])(I,this.props)||(this.haveOwnPropsChanged=!0)},g.prototype.componentWillUnmount=function(){this.tryUnsubscribe(),this.clearCache()},g.prototype.clearCache=function(){this.dispatchProps=null,this.stateProps=null,this.mergedProps=null,this.haveOwnPropsChanged=!0,this.hasStoreStateChanged=!0,this.renderedElement=null,this.finalMapDispatchToProps=null,this.finalMapStateToProps=null},g.prototype.handleChange=function(){if(this.unsubscribe){var I=this.state.storeState,M=this.store.getState();r&&I===M||(this.hasStoreStateChanged=!0,this.setState({storeState:M}))}},g.prototype.getWrappedInstance=function(){return(0,b["default"])(p,"To access the wrapped instance, you need to specify { withRef: true } as the fourth argument of the connect() call."),this.refs.wrappedInstance},g.prototype.render=function(){var M=this.haveOwnPropsChanged,g=this.hasStoreStateChanged,C=this.renderedElement;this.haveOwnPropsChanged=!1,this.hasStoreStateChanged=!1;var N=!0,A=!0;r&&C&&(N=g||M&&this.doStatePropsDependOnOwnProps,A=M&&this.doDispatchPropsDependOnOwnProps);var t=!1,i=!1;N&&(t=this.updateStatePropsIfNeeded()),A&&(i=this.updateDispatchPropsIfNeeded());var c=!0;return c=t||i||M?this.updateMergedPropsIfNeeded():!1,!c&&C?C:(p?this.renderedElement=(0,z.createElement)(I,e({},this.mergedProps,{ref:"wrappedInstance"})):this.renderedElement=(0,z.createElement)(I,this.mergedProps),this.renderedElement)},g}(z.Component);return M.displayName="Connect("+i(I)+")",M.WrappedComponent=I,M.contextTypes={store:L["default"]},M.propTypes={store:L["default"]},(0,a["default"])(M,I)}}var e=Object.assign||function(I){for(var M=1;Mg;g++)M[g]=arguments[g];return function(I){return function(g,C,N){var t=I(g,C,N),c=t.dispatch,j=[],e={getState:t.getState,dispatch:function(I){return c(I)}};return j=M.map(function(I){return I(e)}),c=i["default"].apply(void 0,j)(t.dispatch),A({},t,{dispatch:c})}}}var A=Object.assign||function(I){for(var M=1;Mg;g++)M[g]=arguments[g];return function(){if(0===M.length)return arguments.length<=0?void 0:arguments[0];var I=M[M.length-1],g=M.slice(0,-1);return g.reduceRight(function(I,M){return M(I)},I.apply(void 0,arguments))}}M.__esModule=!0,M["default"]=g},[643,362,363],354,355,function(I,M){"use strict";var g={childContextTypes:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,mixins:!0,propTypes:!0,type:!0},C={name:!0,length:!0,prototype:!0,caller:!0,arguments:!0,arity:!0};I.exports=function(I,M){for(var N=Object.getOwnPropertyNames(M),A=0;A=g;++g)for(var C=g;7>=C;++C){var N=I[M++];N.flipped=C!==g,N.location="STACK-"+C}for(;Mg;g++)M[g]=arguments[g];console.group||M.unshift("%credux-undo","font-style: italic"),console.log.apply(console,M)}}function C(I,M){if(s){var C=["action",I.type];console.group?(C.unshift("%credux-undo","font-style: italic"),console.groupCollapsed.apply(console,C),console.log("received",{state:M,action:I})):g.apply(void 0,C)}}function N(){return s?console.groupEnd&&console.groupEnd():void 0}function A(I){var M=I.past,g=I.future;return M.length+1+g.length}function t(I,M,C){g("insert",{state:M,history:I,free:C-A(I)});var N=I.past,t=I.present,i=C&&A(I)>=C;return void 0===t?{past:[],present:M,future:[]}:{past:[].concat(N.slice(i?1:0),[t]),present:M,future:[]}}function i(I){g("undo",{history:I});var M=I.past,C=I.present,N=I.future;return M.length<=0?I:{past:M.slice(0,M.length-1),present:M[M.length-1],future:[C].concat(N)}}function c(I){g("redo",{history:I});var M=I.past,C=I.present,N=I.future;return N.length<=0?I:{future:N.slice(1,N.length),present:N[0],past:[].concat(M,[C])}}function j(I){return T({},I,{history:I})}function e(I,M){return j(T({},I,M))}function z(I){return{past:[],present:I,future:[]}}function u(I){var M=arguments.length<=1||void 0===arguments[1]?[]:arguments[1];return Array.isArray(I)?I:"string"==typeof I?[I]:M}function L(I){var M=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];s=M.debug;var L={initialState:M.initialState,initTypes:u(M.initTypes,["@@redux/INIT","@@INIT"]),limit:M.limit,filter:M.filter||function(){return!0},undoType:M.undoType||w.UNDO,redoType:M.redoType||w.REDO};return L.history=M.initialHistory||z(L.initialState),0===L.initTypes.length&&console.warn("redux-undo: supply at least one action type in initTypes to ensure initial state"),function(M,u){C(u,M);var D=void 0;switch(u.type){case L.undoType:return D=i(M),g("after undo",D),N(),D?e(M,D):M;case L.redoType:return D=c(M),g("after redo",D),N(),D?e(M,D):M;default:if(D=I(M&&M.present,u),L.initTypes.some(function(I){return I===u.type}))return g("reset history due to init action"),N(),j(T({},M,z(D)));if(L.filter&&"function"==typeof L.filter&&!L.filter(u,D,M&&M.present))return g("filter prevented action, not storing it"),N(),j(T({},M,{present:D}));var n=M&&void 0!==M.present?M:L.history,l=t(n,D,L.limit);return g("after insert",{history:l,free:L.limit-A(l)}),N(),j(T({},M,l))}}}function D(){return function(I,M,g){return M!==g}}function n(I){var M=u(I);return function(I){return M.indexOf(I.type)>=0}}function l(I){return console.error("Deprecation Warning: Please change `ifAction` to `includeAction`"),n(I)}function o(){var I=arguments.length<=0||void 0===arguments[0]?[]:arguments[0],M=u(I);
return function(I){return M.indexOf(I.type)<0}}M.__esModule=!0;var T=Object.assign||function(I){for(var M=1;Mt&&i>N&&A>c&&j>A}var g=this,C=this.props,N=C.endDrag,A=C.dragdrop,t=A.dragNodes,i=A.dragCards,c=I.pageX,j=I.pageY,e=[].slice.call(document.querySelectorAll("#lowerArea > .droppable")),z=[].slice.call(document.querySelectorAll("#aceArea > .droppable")),u=function(I){return function(C,N){var A=g.getOffsetFromTable(C),t=C.offsetLeft+A.x,e=C.offsetTop+A.y;if(M(t,e,C.offsetWidth,C.offsetHeight,c,j)){var z=I+"-"+(N+1),u=g.refs[z],L={name:i[0].props.name,flipped:!1};if(u.checkGoodDrop(L,i.length)){var D=g.props.moveCards,n=i.map(function(I){var M={name:I.props.name,flipped:!1};return M});return D(n,z),!0}return!1}return!1}},L=e.some(u("STACK"))||z.some(u("ACE"));L||!function(){var I=A.dragOrigins;t.forEach(function(M,g){M.style.left=I[g].x+"px",M.style.top=I[g].y+"px"})}(),t.forEach(function(I,M){I.style.zIndex="10"}),N()}},{key:"handleMouseMove",value:function(I){var M=this,g=this.props.dragdrop,C=g.isDragging,N=g.dragNodes;C&&!function(){var g=I.pageX,C=I.pageY;N.forEach(function(I,N){var A=M.getOffsetFromTable(I),t=g-A.x,i=C-A.y,c={x:t-I.offsetWidth/2,y:i-I.offsetHeight/2+N*O};I.style.left=c.x+"px",I.style.top=c.y+"px",I.style.zIndex=""+(100+N)})}()}},{key:"createRow",value:function(I,M){for(var g=arguments.length<=2||void 0===arguments[2]?0:arguments[2],C=arguments.length<=3||void 0===arguments[3]?0:arguments[3],N=arguments.length<=4||void 0===arguments[4]?0:arguments[4],A=arguments.length<=5||void 0===arguments[5]?0:arguments[5],t=[],i=0;M>i;++i){var c=I+"-"+(i+1),e=this.getCardDimensions(),z=e.offsetWidth,u=e.offsetHeight;N=N||z,A=A||u;var L=this.cardSlice(c,g,C,N,A);t.push(j["default"].createElement(b["default"],{stackName:c,key:c,ref:c,index:i+1,offsetWidth:N,offsetHeight:A,handleBeginDragDrop:this.handleBeginDragDrop,getAvailableMoves:this.getAvailableMoves,moveCards:this.props.moveCards,flipCard:this.handleCardFlip},L))}return t}},{key:"cardLocate",value:function(I){function M(I){return function(M){return M.location===I}}return M(I)}},{key:"cardSlice",value:function(I){var M=arguments.length<=1||void 0===arguments[1]?0:arguments[1],g=arguments.length<=2||void 0===arguments[2]?0:arguments[2],C=this,N=arguments.length<=3||void 0===arguments[3]?0:arguments[3],A=arguments.length<=4||void 0===arguments[4]?0:arguments[4],t=function(){var I=arguments.length<=0||void 0===arguments[0]?0:arguments[0],M=arguments.length<=1||void 0===arguments[1]?0:arguments[1],g=arguments.length<=2||void 0===arguments[2]?0:arguments[2],N=arguments.length<=3||void 0===arguments[3]?0:arguments[3];return function(A,t){return j["default"].createElement(a["default"],{name:A.name,key:A.name,flipped:A.flipped,offsetLeft:t*I,offsetTop:t*M,offsetWidth:g,offsetHeight:N,handleBeginDragDrop:C.handleBeginDragDrop})}},i=this.props.cards,c=this.getCardDimensions(),e=c.offsetWidth,z=c.offsetHeight;return N=N||e,A=A||z,i.filter(this.cardLocate(I)).map(t(M,g,N,A))}},{key:"dealCards",value:function(){this.setState({redeal:!0})}},{key:"checkGameWon",value:function(){var I=this.props.cards;return I.every(function(I){return I.location.indexOf("ACE")>=0})}},{key:"doWinAnimation",value:function(){function I(I,M,g){var C=void 0;return function(){for(var N=this,A=arguments.length,t=Array(A),i=0;A>i;i++)t[i]=arguments[i];var c=function(){C=null,I.apply(N,t)},j=g&&!C;clearTimeout(C),C=setTimeout(c,M),j&&I.apply(this,t)}}var M=this,g=[].slice.call(document.querySelectorAll('div[id*="-of-"]'));console.log("Wow you won!");var C=document.body.clientHeight,N=function(I){var g=M.getCardDimensions(),N=g.offsetWidth,A=g.offsetHeight,t=M.getOffsetFromTable(I),i=t.x,c=t.y,j=Math.floor(Math.random()*M.state.width)-i-N/2,e=Math.floor(Math.random()*C)-c-A/2;I.style.left=j+"px",I.style.top=e+"px",I.style.transition="top 1s ease-in-out, left 1s ease-in-out"},A=document.getElementById("table");A.style.overflow="visible",document.documentElement.style.overflow="hidden";var t=2e3,i=N,c=I(function(I){g.forEach(i),window.requestAnimationFrame(c)},t,!0);window.requestAnimationFrame(c)}},{key:"componentDidMount",value:function(){var I=this;this.setState({redeal:!0,width:document.getElementById("table").clientWidth},function(){setTimeout(function(){return I.setState({loading:!1})},0)}),window.addEventListener("resize",this.handleResize),document.addEventListener("keyup",this.handleKeyUp)}},{key:"handleKeyUp",value:function(I){I.ctrlKey&&I.keyCode==="Z".charCodeAt(0)?this.handleUndoButtonClick():I.ctrlKey&&I.keyCode==="Y".charCodeAt(0)&&this.handleRedoButtonClick()}},{key:"componentDidUpdate",value:function(I,M){if(this.state.redeal){var g=this.props.shuffleCards;g(),this.setState({redeal:!1})}else this.checkGameWon()&&this.doWinAnimation()}},{key:"getCardDimensions",value:function(){var I=222.77,M=323.551,g=M/I,C=this.state.width,N=Math.floor(.11*C),A=g*N;return{offsetWidth:N,offsetHeight:A}}},{key:"render",value:function(){if(this.state.loading)return j["default"].createElement("div",{id:"table",className:L["default"]},j["default"].createElement(Y["default"],null));var I=this.state.width||800,M=this.getCardDimensions(),g=M.offsetWidth,C=M.offsetHeight,N=this.createRow("STACK",7,0,O),A=this.createRow("ACE",4),t=this.cardSlice("DEAL-AREA-FACEDOWN",.004*I),i=this.cardSlice("DEAL-AREA-FACEUP"),c=this.cardSlice("TABLE");return j["default"].createElement("div",{id:"table",className:L["default"],onMouseMove:this.handleMouseMove,onMouseUp:this.handleMouseUp,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd},j["default"].createElement(m["default"],{handleRedoButtonClick:this.handleRedoButtonClick,handleUndoButtonClick:this.handleUndoButtonClick,doWinAnimation:this.doWinAnimation,handleDealButtonClick:this.handleDealButtonClick}),j["default"].createElement(n["default"],{moveCards:this.props.moveCards,getAvailableMoves:this.getAvailableMoves,offsetWidth:g,offsetHeight:C,faceUp:i,faceDown:t}),j["default"].createElement(o["default"],null,A),j["default"].createElement(s["default"],null,N),c)}}]),M}(c.Component);G.propTypes=p,M["default"]=G},function(I,M,g){var C=g(381);I.exports=function(I){I=I||{};var M=I.shouldRejectClick||C;g(221).injection.injectEventPluginsByName({TapEventPlugin:g(382)(M)})}},function(I,M){I.exports=function(I,M){return I&&750>M-I?!0:void 0}},function(I,M,g){"use strict";function C(I,M){var g=e.extractSingleTouch(M);return g?g[I.page]:I.page in M?M[I.page]:M[I.client]+z[I.envScroll]}function N(I,M){var g=C(a.x,M),N=C(a.y,M);return Math.pow(Math.pow(g-I.x,2)+Math.pow(N-I.y,2),.5)}function A(I){return{tapMoveThreshold:o,ignoreMouseThreshold:T,eventTypes:Z,extractEvents:function(M,g,A,t,i){if(l(M))w=m();else if(I(w,m()))return null;if(!D(M)&&!n(M))return null;var e=null,z=N(s,t);return n(M)&&o>z&&(e=j.getPooled(Z.touchTap,A,t,i)),D(M)?(s.x=C(a.x,t),s.y=C(a.y,t)):n(M)&&(s.x=0,s.y=0),c.accumulateTwoPhaseDispatches(e),e}}}var t=g(220),i=g(223),c=g(263),j=g(277),e=g(383),z=g(228),u=g(384),L=t.topLevelTypes,D=i.isStartish,n=i.isEndish,l=function(I){var M=[L.topTouchCancel,L.topTouchEnd,L.topTouchStart,L.topTouchMove];return M.indexOf(I)>=0},o=10,T=750,s={x:null,y:null},w=null,a={x:{page:"pageX",client:"clientX",envScroll:"currentPageScrollLeft"},y:{page:"pageY",client:"clientY",envScroll:"currentPageScrollTop"}},y=[L.topTouchStart,L.topTouchCancel,L.topTouchEnd,L.topTouchMove],b=[L.topMouseDown,L.topMouseMove,L.topMouseUp].concat(y),Z={touchTap:{phasedRegistrationNames:{bubbled:u({onTouchTap:null}),captured:u({onTouchTapCapture:null})},dependencies:b}},m=function(){return Date.now?Date.now:function(){return+new Date}}();I.exports=A},function(I,M){var g={extractSingleTouch:function(I){var M=I.touches,g=I.changedTouches,C=M&&M.length>0,N=g&&g.length>0;return!C&&N?g[0]:C?M[0]:I}};I.exports=g},269,[644,386],[645,387],function(I,M,g){M=I.exports=g(388)(),M.push([I.id,"._22s4JTfT5eeNMKn3JEGe_s{position:relative;max-width:95%;height:100%;margin:0 auto;user-select:none;background:url("+g(389)+") no-repeat local 50%;background-size:100% 100%;overflow-x:hidden;overflow-y:auto}._22s4JTfT5eeNMKn3JEGe_s div[id*=-of-]{position:absolute;padding:.5px;margin:0;display:inline-block;border-radius:.375em;background-repeat:no-repeat;background-size:100%!important}._22s4JTfT5eeNMKn3JEGe_s #ace-of-clubs{background:url("+g(390)+")}._22s4JTfT5eeNMKn3JEGe_s #two-of-clubs{background:url("+g(391)+")}._22s4JTfT5eeNMKn3JEGe_s #three-of-clubs{background:url("+g(392)+")}._22s4JTfT5eeNMKn3JEGe_s #four-of-clubs{background:url("+g(393)+")}._22s4JTfT5eeNMKn3JEGe_s #five-of-clubs{background:url("+g(394)+")}._22s4JTfT5eeNMKn3JEGe_s #six-of-clubs{background:url("+g(395)+")}._22s4JTfT5eeNMKn3JEGe_s #seven-of-clubs{background:url("+g(396)+")}._22s4JTfT5eeNMKn3JEGe_s #eight-of-clubs{background:url("+g(397)+")}._22s4JTfT5eeNMKn3JEGe_s #nine-of-clubs{background:url("+g(398)+")}._22s4JTfT5eeNMKn3JEGe_s #ten-of-clubs{background:url("+g(399)+")}._22s4JTfT5eeNMKn3JEGe_s #jack-of-clubs{background:url("+g(400)+")}._22s4JTfT5eeNMKn3JEGe_s #queen-of-clubs{background:url("+g(401)+")}._22s4JTfT5eeNMKn3JEGe_s #king-of-clubs{background:url("+g(402)+")}._22s4JTfT5eeNMKn3JEGe_s #ace-of-spades{background:url("+g(403)+")}._22s4JTfT5eeNMKn3JEGe_s #two-of-spades{background:url("+g(404)+")}._22s4JTfT5eeNMKn3JEGe_s #three-of-spades{background:url("+g(405)+")}._22s4JTfT5eeNMKn3JEGe_s #four-of-spades{background:url("+g(406)+")}._22s4JTfT5eeNMKn3JEGe_s #five-of-spades{background:url("+g(407)+")}._22s4JTfT5eeNMKn3JEGe_s #six-of-spades{background:url("+g(408)+")}._22s4JTfT5eeNMKn3JEGe_s #seven-of-spades{background:url("+g(409)+")}._22s4JTfT5eeNMKn3JEGe_s #eight-of-spades{background:url("+g(410)+")}._22s4JTfT5eeNMKn3JEGe_s #nine-of-spades{background:url("+g(411)+")}._22s4JTfT5eeNMKn3JEGe_s #ten-of-spades{background:url("+g(412)+")}._22s4JTfT5eeNMKn3JEGe_s #jack-of-spades{background:url("+g(413)+")}._22s4JTfT5eeNMKn3JEGe_s #queen-of-spades{background:url("+g(414)+")}._22s4JTfT5eeNMKn3JEGe_s #king-of-spades{background:url("+g(415)+")}._22s4JTfT5eeNMKn3JEGe_s #ace-of-hearts{background:url("+g(416)+")}._22s4JTfT5eeNMKn3JEGe_s #two-of-hearts{background:url("+g(417)+")}._22s4JTfT5eeNMKn3JEGe_s #three-of-hearts{background:url("+g(418)+")}._22s4JTfT5eeNMKn3JEGe_s #four-of-hearts{background:url("+g(419)+")}._22s4JTfT5eeNMKn3JEGe_s #five-of-hearts{background:url("+g(420)+")}._22s4JTfT5eeNMKn3JEGe_s #six-of-hearts{background:url("+g(421)+")}._22s4JTfT5eeNMKn3JEGe_s #seven-of-hearts{background:url("+g(422)+")}._22s4JTfT5eeNMKn3JEGe_s #eight-of-hearts{background:url("+g(423)+")}._22s4JTfT5eeNMKn3JEGe_s #nine-of-hearts{background:url("+g(424)+")}._22s4JTfT5eeNMKn3JEGe_s #ten-of-hearts{background:url("+g(425)+")}._22s4JTfT5eeNMKn3JEGe_s #jack-of-hearts{background:url("+g(426)+")}._22s4JTfT5eeNMKn3JEGe_s #queen-of-hearts{background:url("+g(427)+")}._22s4JTfT5eeNMKn3JEGe_s #king-of-hearts{background:url("+g(428)+")}._22s4JTfT5eeNMKn3JEGe_s #ace-of-diamonds{background:url("+g(429)+")}._22s4JTfT5eeNMKn3JEGe_s #two-of-diamonds{background:url("+g(430)+")}._22s4JTfT5eeNMKn3JEGe_s #three-of-diamonds{background:url("+g(431)+")}._22s4JTfT5eeNMKn3JEGe_s #four-of-diamonds{background:url("+g(432)+")}._22s4JTfT5eeNMKn3JEGe_s #five-of-diamonds{background:url("+g(433)+")}._22s4JTfT5eeNMKn3JEGe_s #six-of-diamonds{background:url("+g(434)+")}._22s4JTfT5eeNMKn3JEGe_s #seven-of-diamonds{background:url("+g(435)+")}._22s4JTfT5eeNMKn3JEGe_s #eight-of-diamonds{background:url("+g(436)+")}._22s4JTfT5eeNMKn3JEGe_s #nine-of-diamonds{background:url("+g(437)+")}._22s4JTfT5eeNMKn3JEGe_s #ten-of-diamonds{background:url("+g(438)+")}._22s4JTfT5eeNMKn3JEGe_s #jack-of-diamonds{background:url("+g(439)+")}._22s4JTfT5eeNMKn3JEGe_s #queen-of-diamonds{background:url("+g(440)+")}._22s4JTfT5eeNMKn3JEGe_s #king-of-diamonds{background:url("+g(441)+")}",""]),M.locals={styles:"_22s4JTfT5eeNMKn3JEGe_s"}},function(I,M){I.exports=function(){var I=[];return I.toString=function(){for(var I=[],M=0;M=0&&s.splice(M,1)}function i(I){var M=document.createElement("style");return M.type="text/css",A(I,M),M}function c(I){var M=document.createElement("link");return M.rel="stylesheet",A(I,M),M}function j(I,M){var g,C,N;if(M.singleton){var A=T++;g=o||(o=i(M)),C=e.bind(null,g,A,!1),N=e.bind(null,g,A,!0)}else I.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(g=c(M),C=u.bind(null,g),N=function(){t(g),g.href&&URL.revokeObjectURL(g.href)}):(g=i(M),C=z.bind(null,g),N=function(){t(g)});return C(I),function(M){if(M){if(M.css===I.css&&M.media===I.media&&M.sourceMap===I.sourceMap)return;C(I=M)}else N()}}function e(I,M,g,C){var N=g?"":C.css;if(I.styleSheet)I.styleSheet.cssText=w(M,N);else{var A=document.createTextNode(N),t=I.childNodes;t[M]&&I.removeChild(t[M]),t.length?I.insertBefore(A,t[M]):I.appendChild(A)}}function z(I,M){var g=M.css,C=M.media;M.sourceMap;if(C&&I.setAttribute("media",C),I.styleSheet)I.styleSheet.cssText=g;else{for(;I.firstChild;)I.removeChild(I.firstChild);I.appendChild(document.createTextNode(g))}}function u(I,M){var g=M.css,C=(M.media,M.sourceMap);C&&(g+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(C))))+" */");var N=new Blob([g],{type:"text/css"}),A=I.href;I.href=URL.createObjectURL(N),A&&URL.revokeObjectURL(A)}var L={},D=function(I){var M;return function(){return"undefined"==typeof M&&(M=I.apply(this,arguments)),M}},n=D(function(){return/msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase())}),l=D(function(){return document.head||document.getElementsByTagName("head")[0]}),o=null,T=0,s=[];I.exports=function(I,M){M=M||{},"undefined"==typeof M.singleton&&(M.singleton=n()),"undefined"==typeof M.insertAt&&(M.insertAt="bottom");var g=N(I);return C(g,M),function(I){for(var A=[],t=0;t",D=3,n={faceUp:j.PropTypes.array.isRequired,faceDown:j.PropTypes.array.isRequired,getAvailableMoves:j.PropTypes.func.isRequired,moveCards:j.PropTypes.func.isRequired},l=function(I){function M(I){N(this,M);var g=A(this,Object.getPrototypeOf(M).call(this,I)),C=["handleMouseDown","handleDoubleClick","handleTouchTap","handleTouchStart"];return C.forEach(function(I){return g[I]?void(g[I]=g[I].bind(g)):void console.error("Attempt to self-bind '"+I+"' to "+L+" failed")}),g}return t(M,I),c(M,[{key:"shouldComponentUpdate",value:function(I,M){var g=this.props,C=g.faceUp,N=g.faceDown,A=I.faceUp,t=I.faceDown;return C.length!==A.length||N.length!==t.length}},{key:"handleTouchTap",value:function(I){I.preventDefault(),this.handleDoubleClick(I)}},{key:"handleMouseDown",value:function(I){var M=this.props.faceDown,g="child-"+(M.length-1),C=this.refs[g];if(!C){var N=this.props,A=N.moveCards,t=N.faceUp,i=t.reverse().map(function(I){return{name:I.props.name,flipped:!0}});return void A(i,"DEAL-AREA-FACEDOWN")}var c=C.props.flipped;if(c){var A=this.props.moveCards,i=M.slice(-D).reverse().map(function(I){var M=I.props.name;return{name:M,flipped:!1}});A(i,"DEAL-AREA-FACEUP")}}},{key:"handleDoubleClick",value:function(I){var M=this.props.getAvailableMoves,g=I.target.id,C=M(g,1);if(C.length){var N=this.props.moveCards;N({name:g,flipped:!1},C[0])}}},{key:"handleTouchStart",value:function(I){I.preventDefault();var M=I.changedTouches[0];M&&this.handleMouseDown(M)}},{key:"render",value:function(){var I=this,M=this.props,g=M.faceUp,C=M.faceDown,N=M.offsetWidth,A=M.offsetHeight,t=void 0;g.length?!function(){var M=g.length,C=0,A={onMouseDown:function(I){return!1},onTouchStart:function(I){return!1}};t=e["default"].Children.map(g,function(g){var t=C++;switch(t){case M-2:return e["default"].cloneElement(g,i({offsetLeft:.15*N},A));case M-1:return e["default"].cloneElement(g,{offsetLeft:.3*N,onDoubleClick:I.handleDoubleClick,onTouchTap:I.handleTouchTap});default:return e["default"].cloneElement(g,i({offsetLeft:0},A))}})}():t=[];var c=void 0;C.length?!function(){var M=0;c=e["default"].Children.map(C,function(g){return M!==C.length-1?e["default"].cloneElement(g,{ref:"child-"+M++}):e["default"].cloneElement(g,{onMouseDown:I.handleMouseDown,onTouchStart:I.handleTouchStart,ref:"child-"+M++})})}():c=e["default"].createElement("div",{className:"reset",onMouseDown:this.handleMouseDown,onTouchStart:this.handleTouchStart});var j=c.length?N+"px":"50%";return e["default"].createElement("div",{className:u["default"],style:{height:1.02*A+"px"}},e["default"].createElement("span",{id:"left",style:{width:j,height:A+"px"}},c),e["default"].createElement("span",{id:"right",style:{width:N+"px",height:A+"px"}},t))}}]),M}(j.Component);l.propTypes=n,M["default"]=l},[644,445],[645,446],function(I,M,g){M=I.exports=g(388)(),M.push([I.id,"._1cpkAF2WOA55nwW2YIQ1t7{position:absolute;width:28.5%;left:8%;top:10%;border:2px solid #fff;padding:.5% 4% .5% .5%}._1cpkAF2WOA55nwW2YIQ1t7 div.reset{width:100%;height:100%}._1cpkAF2WOA55nwW2YIQ1t7 span#left{position:relative;padding:0;float:left}._1cpkAF2WOA55nwW2YIQ1t7 span#right{position:relative;display:inline-block;padding:0;float:right}",""]),M.locals={styles:"_1cpkAF2WOA55nwW2YIQ1t7"}},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}Object.defineProperty(M,"__esModule",{value:!0});var N=g(192),A=C(N),t=g(448),i=C(t),c=function(I){var M=I.children;return A["default"].createElement("div",{id:"aceArea",className:i["default"]},M)};M["default"]=c},[644,449],[645,450],function(I,M,g){M=I.exports=g(388)(),M.push([I.id,"._1g1yyDf4beK0IUgXbwpB6x{display:inline-block;position:absolute;left:48%;top:11%;width:45%;max-width:45%;display:flex;justify-content:space-between}._1g1yyDf4beK0IUgXbwpB6x div.droppable{top:1%}",""]),M.locals={styles:"_1g1yyDf4beK0IUgXbwpB6x"}},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}function N(I,M){if(!(I instanceof M))throw new TypeError("Cannot call a class as a function")}function A(I,M){if(!I)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!M||"object"!=typeof M&&"function"!=typeof M?I:M}function t(I,M){if("function"!=typeof M&&null!==M)throw new TypeError("Super expression must either be null or a function, not "+typeof M);I.prototype=Object.create(M&&M.prototype,{constructor:{value:I,enumerable:!1,writable:!0,configurable:!0}}),M&&(Object.setPrototypeOf?Object.setPrototypeOf(I,M):I.__proto__=M)}Object.defineProperty(M,"__esModule",{value:!0});var i=function(){function I(I,M){for(var g=0;g",n={stackName:c.PropTypes.string.isRequired,index:c.PropTypes.number,offsetWidth:c.PropTypes.number,offsetHeight:c.PropTypes.number,handleBeginDragDrop:c.PropTypes.func.isRequired,getAvailableMoves:c.PropTypes.func.isRequired,moveCards:c.PropTypes.func.isRequired,flipCard:c.PropTypes.func.isRequired},l=function(I){function M(I){N(this,M);var g=A(this,Object.getPrototypeOf(M).call(this,I)),C=["checkGoodDrop","handleStackDrop","handleAceDrop","handleTouchTap","shouldComponentUpdate","handleMouseDown","handleTouchStart","handleDoubleClick"];return C.forEach(function(I){return g[I]?void(g[I]=g[I].bind(g)):void console.error("Attempt to self-bind '"+I+"' to "+D+" failed")}),g}return t(M,I),i(M,[{key:"handleAceDrop",value:function(I){var M=this.props.children.length,g=L["default"].getCardValue(I),C=L["default"].getCardSuit(I);if(g===M+1){if(M>0){var N=this.props.children[0],A=L["default"].getCardSuit({name:N.props.name});return A===C}return 1===g}return!1}},{key:"handleStackDrop",value:function(I){var M=this.props.children.length,g=L["default"].getCardValue(I),C=L["default"].getCardColor(I);if(M>0){var N=this.props.children,A=N[N.length-1],t={name:A.props.name},i=L["default"].getCardValue(t),c=L["default"].getCardColor(t);return c!==C&&i===g+1}return 13===g}},{key:"checkGoodDrop",value:function(I,M){var g=this.props.stackName;return g.indexOf("ACE")>=0?M>1?!1:this.handleAceDrop(I):g.indexOf("STACK")>=0?this.handleStackDrop(I):void 0}},{key:"shouldComponentUpdate",value:function(I,M){var g=this.props.children,C=I.children;return g.length!==C.length||this.props.offsetWidth!==I.offsetWidth||g[g.length-1]!==C[C.length-1]}},{key:"componentWillReceiveProps",value:function(I){var M=I.children,g=this.props.children;if(M.length>0&&M.lengthN;++N){var t="child-"+N;C.push(this.refs[t])}if(C.length){var i=this.props.handleBeginDragDrop;i(I,C)}}},{key:"handleTouchTap",value:function(I,M){I.preventDefault(),this.handleDoubleClick(I,M)}},{key:"handleDoubleClick",value:function(I,M){I.preventDefault();for(var g=I.target.id,C=this.props.children,N=C.length-M,A=this.props.getAvailableMoves(g,N),t=[],i=M,c=C.length;c>i;++i){var j="child-"+i,e=this.refs[j],z=e.props,u=z.flipped,L=z.name;if(u)return;t.push({name:L,flipped:!1})}if(A.length){var D=this.props.moveCards;D(t,A[0])}}},{key:"render",value:function(){var I=this,M=this.props,g=M.index,C=void 0===g?1:g,N=M.stackName,A=M.offsetHeight,t=M.offsetWidth;C-=1;var i=0,c=function(I,M){return function(g){I(g,M)}},e=j["default"].Children.map(this.props.children,function(M){return j["default"].cloneElement(M,{onMouseDown:c(I.handleMouseDown,i),onTouchStart:c(I.handleTouchStart,i),onDoubleClick:c(I.handleDoubleClick,i),onTouchTap:c(I.handleTouchTap,i),ref:"child-"+i++})}),u=e.length;return N.indexOf("STACK")>=0&&(A+=u>2?15*(u-2):0),j["default"].createElement("div",{className:"droppable "+z["default"],style:{height:A+"px",width:t+"px"}},e)}}]),M}(c.Component);l.propTypes=n,M["default"]=l},[644,462],[645,463],function(I,M,g){M=I.exports=g(388)(),M.push([I.id,"._362XMMzvcj7x4jIHofLs2I{position:relative;background:#00f;border-radius:.375em;user-select:none;float:left;margin:0 auto}",""]),M.locals={styles:"_362XMMzvcj7x4jIHofLs2I"}},function(I,M){"use strict";function g(I){var M=I.name,g=M.substr(M.lastIndexOf("-")+1);return g}function C(I){var M=I.name,g=M.substr(M.lastIndexOf("-")+1);switch(g){case"hearts":case"diamonds":return"red";case"spades":case"clubs":return"black";default:return"blank"}}function N(I){var M=I.name,g=M.substr(0,M.indexOf("-"));switch(g){case"ace":return 1;case"two":return 2;case"three":return 3;case"four":return 4;case"five":return 5;case"six":return 6;case"seven":return 7;case"eight":return 8;case"nine":return 9;case"ten":return 10;case"jack":return 11;case"queen":return 12;case"king":return 13;default:return 0}}Object.defineProperty(M,"__esModule",{value:!0}),M["default"]={getCardValue:N,getCardSuit:g,getCardColor:C}},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}Object.defineProperty(M,"__esModule",{value:!0});var N=g(192),A=C(N),t=g(466),i=C(t),c={handleRedoButtonClick:N.PropTypes.func.isRequired,handleUndoButtonClick:N.PropTypes.func.isRequired,doWinAnimation:N.PropTypes.func.isRequired,handleDealButtonClick:N.PropTypes.func.isRequired},j=function(I){var M=I.handleRedoButtonClick,g=I.handleUndoButtonClick,C=(I.doWinAnimation,I.handleDealButtonClick);return A["default"].createElement("div",null,A["default"].createElement(i["default"],{className:"btn btn-sucess","float":"left",onClick:M},"Redo!"),A["default"].createElement(i["default"],{className:"btn btn-sucess","float":"left",onClick:g},"Undo!"),A["default"].createElement(i["default"],{className:"btn btn-primary","float":"right",onClick:C},"Deal!"))};j.propTypes=c,M["default"]=j},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}Object.defineProperty(M,"__esModule",{value:!0});var N=g(192),A=C(N),t=g(467),i=C(t),c={className:N.PropTypes.string.isRequired,"float":N.PropTypes.string.isRequired,onClick:N.PropTypes.func.isRequired,children:N.PropTypes.node.isRequired},j=function(I){var M=I.className,g=I["float"],C=I.onClick,N=I.children;return A["default"].createElement("button",{className:M+" "+i["default"],style:{"float":g},onClick:C},N)};j.propTypes=c,M["default"]=j},[644,468],[645,469],function(I,M,g){M=I.exports=g(388)(),M.push([I.id,"._3jASsTnRu2w-xeYYGs8jRx{margin:.5%;z-index:20}._3jASsTnRu2w-xeYYGs8jRx.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}._3jASsTnRu2w-xeYYGs8jRx.btn.active.focus,._3jASsTnRu2w-xeYYGs8jRx.btn.active:focus,._3jASsTnRu2w-xeYYGs8jRx.btn.focus,._3jASsTnRu2w-xeYYGs8jRx.btn:active.focus,._3jASsTnRu2w-xeYYGs8jRx.btn:active:focus,._3jASsTnRu2w-xeYYGs8jRx.btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}._3jASsTnRu2w-xeYYGs8jRx.btn.focus,._3jASsTnRu2w-xeYYGs8jRx.btn:focus,._3jASsTnRu2w-xeYYGs8jRx.btn:hover{color:#333;text-decoration:none}._3jASsTnRu2w-xeYYGs8jRx.btn.active,._3jASsTnRu2w-xeYYGs8jRx.btn:active{background-image:none;outline:0;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}._3jASsTnRu2w-xeYYGs8jRx.btn.disabled,._3jASsTnRu2w-xeYYGs8jRx.btn[disabled]{cursor:not-allowed;filter:alpha(opacity=65);box-shadow:none;opacity:.65}._3jASsTnRu2w-xeYYGs8jRx.btn-default{color:#333;background-color:#fff;border-color:#ccc}._3jASsTnRu2w-xeYYGs8jRx.btn-default.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}._3jASsTnRu2w-xeYYGs8jRx.btn-default.active,._3jASsTnRu2w-xeYYGs8jRx.btn-default:active,._3jASsTnRu2w-xeYYGs8jRx.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}._3jASsTnRu2w-xeYYGs8jRx.btn-default.active.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default.active:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default.active:hover,._3jASsTnRu2w-xeYYGs8jRx.btn-default:active.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default:active:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default:active:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}._3jASsTnRu2w-xeYYGs8jRx.btn-default.active,._3jASsTnRu2w-xeYYGs8jRx.btn-default:active{background-image:none}._3jASsTnRu2w-xeYYGs8jRx.btn-default.disabled.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default.disabled:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default.disabled:hover,._3jASsTnRu2w-xeYYGs8jRx.btn-default[disabled].focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default[disabled]:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-default[disabled]:hover{background-color:#fff;border-color:#ccc}._3jASsTnRu2w-xeYYGs8jRx.btn-default .badge{color:#fff;background-color:#333}._3jASsTnRu2w-xeYYGs8jRx.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}._3jASsTnRu2w-xeYYGs8jRx.btn-primary.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}._3jASsTnRu2w-xeYYGs8jRx.btn-primary.active,._3jASsTnRu2w-xeYYGs8jRx.btn-primary:active,._3jASsTnRu2w-xeYYGs8jRx.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}._3jASsTnRu2w-xeYYGs8jRx.btn-primary.active.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary.active:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary.active:hover,._3jASsTnRu2w-xeYYGs8jRx.btn-primary:active.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary:active:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary:active:hover{color:#fff;background-color:#204d74;border-color:#122b40}._3jASsTnRu2w-xeYYGs8jRx.btn-primary.active,._3jASsTnRu2w-xeYYGs8jRx.btn-primary:active{background-image:none}._3jASsTnRu2w-xeYYGs8jRx.btn-primary.disabled.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary.disabled:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary.disabled:hover,._3jASsTnRu2w-xeYYGs8jRx.btn-primary[disabled].focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary[disabled]:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-primary[disabled]:hover{background-color:#337ab7;border-color:#2e6da4}._3jASsTnRu2w-xeYYGs8jRx.btn-primary .badge{color:#337ab7;background-color:#fff}._3jASsTnRu2w-xeYYGs8jRx.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}._3jASsTnRu2w-xeYYGs8jRx.btn-success.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}._3jASsTnRu2w-xeYYGs8jRx.btn-success.active,._3jASsTnRu2w-xeYYGs8jRx.btn-success:active,._3jASsTnRu2w-xeYYGs8jRx.btn-success:hover,._3jASsTnRu2w-xeYYGs8jRx.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}._3jASsTnRu2w-xeYYGs8jRx.btn-success.active.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success.active:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success.active:hover,._3jASsTnRu2w-xeYYGs8jRx.btn-success:active.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success:active:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success:active:hover,._3jASsTnRu2w-xeYYGs8jRx.open>.dropdown-toggle.btn-success.focus,._3jASsTnRu2w-xeYYGs8jRx.open>.dropdown-toggle.btn-success:focus,._3jASsTnRu2w-xeYYGs8jRx.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}._3jASsTnRu2w-xeYYGs8jRx.btn-success.active,._3jASsTnRu2w-xeYYGs8jRx.btn-success:active{background-image:none}._3jASsTnRu2w-xeYYGs8jRx.btn-success.disabled.focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success.disabled:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success.disabled:hover,._3jASsTnRu2w-xeYYGs8jRx.btn-success[disabled].focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success[disabled]:focus,._3jASsTnRu2w-xeYYGs8jRx.btn-success[disabled]:hover{background-color:#5cb85c;border-color:#4cae4c}._3jASsTnRu2w-xeYYGs8jRx.btn-success .badge{color:#5cb85c;background-color:#fff}",""]),M.locals={styles:"_3jASsTnRu2w-xeYYGs8jRx"}},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}Object.defineProperty(M,"__esModule",{value:!0});var N=g(192),A=C(N),t=g(471),i=C(t),c=function(){return A["default"].createElement("div",{className:i["default"],style:{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"100%"}},A["default"].createElement("div",{className:"overlay-loader"},A["default"].createElement("div",{className:"loader"},A["default"].createElement("div",null),A["default"].createElement("div",null),A["default"].createElement("div",null),A["default"].createElement("div",null),A["default"].createElement("div",null),A["default"].createElement("div",null),A["default"].createElement("div",null))))};M["default"]=c},[644,472],[645,473],function(I,M,g){M=I.exports=g(388)(),M.push([I.id,"._1WvoNHs6eDWEryyESMUHlM .overlay-loader{display:block;margin:auto;width:97px;height:97px;position:relative;top:0;left:0;right:0;bottom:0}._1WvoNHs6eDWEryyESMUHlM .loader{position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;width:97px;height:97px;animation-name:rotateAnim;-o-animation-name:rotateAnim;-ms-animation-name:rotateAnim;-webkit-animation-name:rotateAnim;-moz-animation-name:rotateAnim;animation-duration:.4s;-o-animation-duration:.4s;-ms-animation-duration:.4s;-webkit-animation-duration:.4s;-moz-animation-duration:.4s;animation-iteration-count:infinite;-o-animation-iteration-count:infinite;-ms-animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite;-moz-animation-iteration-count:infinite;animation-timing-function:linear;-o-animation-timing-function:linear;-ms-animation-timing-function:linear;-webkit-animation-timing-function:linear;-moz-animation-timing-function:linear}._1WvoNHs6eDWEryyESMUHlM .loader div{width:8px;height:8px;border-radius:50%;border:1px solid #000;position:absolute;top:2px;left:0;right:0;bottom:0;margin:auto}._1WvoNHs6eDWEryyESMUHlM .loader div:nth-child(odd){border-top:none;border-left:none}._1WvoNHs6eDWEryyESMUHlM .loader div:nth-child(even){border-bottom:none;border-right:none}._1WvoNHs6eDWEryyESMUHlM .loader div:nth-child(2){border-width:2px;left:0;top:-4px;width:12px;height:12px}._1WvoNHs6eDWEryyESMUHlM .loader div:nth-child(3){border-width:2px;left:-1px;top:3px;width:18px;height:18px}._1WvoNHs6eDWEryyESMUHlM .loader div:nth-child(4){border-width:3px;left:-1px;top:-4px;width:23px;height:23px}._1WvoNHs6eDWEryyESMUHlM .loader div:nth-child(5){border-width:3px;left:-1px;top:4px;width:31px;height:31px}._1WvoNHs6eDWEryyESMUHlM .loader div:nth-child(6){border-width:4px;left:0;top:-4px;width:39px;height:39px}._1WvoNHs6eDWEryyESMUHlM .loader div:nth-child(7){border-width:4px;left:0;top:6px;width:49px;height:49px}@keyframes rotateAnim{0%{transform:rotate(1turn)}to{transform:rotate(0deg)}}@-webkit-keyframes rotateAnim{0%{-webkit-transform:rotate(1turn)}to{-webkit-transform:rotate(0deg)}}",""]),M.locals={styles:"_1WvoNHs6eDWEryyESMUHlM"}},[644,475],[645,476],function(I,M,g){M=I.exports=g(388)(),M.push([I.id,"._2EoCz--VIVO4cAuQQHe7w8 *{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}",""]),M.locals={styles:"_2EoCz--VIVO4cAuQQHe7w8"}},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I["default"]:I}function N(I){return I&&I.__esModule?I:{"default":I}}M.__esModule=!0;var A=g(192),t=N(A),i=g(478),c=N(i),j=c["default"](t["default"]);M.DevTools=j;var e=g(486);M.LogMonitor=C(e);var z=g(617);M.DebugPanel=C(z)},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}function N(I,M){if(!(I instanceof M))throw new TypeError("Cannot call a class as a function")}function A(I,M){if("function"!=typeof M&&null!==M)throw new TypeError("Super expression must either be null or a function, not "+typeof M);I.prototype=Object.create(M&&M.prototype,{constructor:{value:I,enumerable:!1,writable:!0,configurable:!0}}),M&&(Object.setPrototypeOf?Object.setPrototypeOf(I,M):I.__proto__=M)}function t(I){var M=I.PropTypes,g=I.Component,C=e["default"](I),t=C.connect,j=function(M){function g(){N(this,C),M.apply(this,arguments)}A(g,M),g.prototype.render=function(){var M=this.props.monitor;return I.createElement(M,this.props)};var C=g;return g=t(function(I){return I},z.ActionCreators)(g)||g}(g);return function(g){function C(I,M){N(this,C),I.store&&!I.store.devToolsStore&&console.error("Could not find the devTools store inside your store. Have you applied devTools() store enhancer?"),g.call(this,I,M)}return A(C,g),c(C,null,[{key:"propTypes",value:{monitor:M.func.isRequired,store:M.shape({devToolsStore:M.shape({dispatch:M.func.isRequired}).isRequired}).isRequired},enumerable:!0}]),C.prototype.render=function(){return I.createElement(j,i({},this.props,{store:this.props.store.devToolsStore}))},C}(g)}M.__esModule=!0;var i=Object.assign||function(I){for(var M=1;M child into a function."))}function g(){!L&&u&&(L=!0,console.error("With React 0.13, you need to wrap child into a function. This restriction will be removed with React 0.14."))}function C(){D||(D=!0,console.error(" does not support changing `store` on the fly. It is most likely that you see this error because you updated to Redux 2.x and React Redux 2.x which no longer hot reload reducers automatically. See https://github.com/rackt/react-redux/releases/tag/v2.0.0 for the migration instructions."))}var i=I.Component,c=I.PropTypes,e=I.Children,z=j["default"](c),u=t(I),L=!1,D=!1,n=function(I){function t(M,g){N(this,t),I.call(this,M,g),this.store=M.store}return A(t,I),t.prototype.getChildContext=function(){return{store:this.store}},t.prototype.componentWillReceiveProps=function(I){var M=this.store,g=I.store;M!==g&&C()},t.prototype.render=function(){var I=this.props.children;return"function"==typeof I?(M(),I=I()):g(),e.only(I)},t}(i);return n.childContextTypes={store:z.isRequired},n.propTypes={store:z.isRequired,children:(u?c.func:c.element).isRequired},n}M.__esModule=!0,M["default"]=i;var c=g(481),j=C(c);I.exports=M["default"]},function(I,M){"use strict";function g(I){return I.shape({subscribe:I.func.isRequired,dispatch:I.func.isRequired,getState:I.func.isRequired})}M.__esModule=!0,M["default"]=g,I.exports=M["default"]},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}function N(I,M){if(!(I instanceof M))throw new TypeError("Cannot call a class as a function")}function A(I,M){if("function"!=typeof M&&null!==M)throw new TypeError("Super expression must either be null or a function, not "+typeof M);I.prototype=Object.create(M&&M.prototype,{constructor:{value:I,enumerable:!1,writable:!0,configurable:!0}}),M&&(Object.setPrototypeOf?Object.setPrototypeOf(I,M):I.__proto__=M)}function t(I){return I.displayName||I.name||"Component"}function i(I){var M=I.Component,g=I.PropTypes,C=e["default"](g);return function(g,i,j){function e(I,M){var g=I.getState(),C=Y?s(g,M):s(g);return w["default"](D["default"](C),"`mapStateToProps` must return an object. Instead received %s.",C),C}function z(I,M){var g=I.dispatch,C=r?m(g,M):m(g);return w["default"](D["default"](C),"`mapDispatchToProps` must return an object. Instead received %s.",C),C}function L(I,M,g){var C=d(I,M,g);return w["default"](D["default"](C),"`mergeProps` must return an object. Instead received %s.",C),C}var n=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],o=Boolean(g),s=g||a,m=D["default"](i)?l["default"](i):i||y,d=j||b,Y=s.length>1,r=m.length>1,O=n.pure,p=void 0===O?!0:O,G=Z++;return function(g){var i=function(M){function C(I,g){N(this,C),M.call(this,I,g),this.version=G,this.store=I.store||g.store,w["default"](this.store,'Could not find "store" in either the context or '+('props of "'+this.constructor.displayName+'". ')+"Either wrap the root component in a , "+('or explicitly pass "store" as a prop to "'+this.constructor.displayName+'".')),this.stateProps=e(this.store,I),this.dispatchProps=z(this.store,I),this.state={storeState:null},this.updateState()}return A(C,M),C.prototype.shouldComponentUpdate=function(I,M){if(!p)return this.updateStateProps(I),this.updateDispatchProps(I),this.updateState(I),!0;var g=M.storeState!==this.state.storeState,C=!u["default"](I,this.props),N=!1,A=!1;return(g||C&&Y)&&(N=this.updateStateProps(I)),C&&r&&(A=this.updateDispatchProps(I)),C||N||A?(this.updateState(I),!0):!1},C.prototype.computeNextState=function(){var I=arguments.length<=0||void 0===arguments[0]?this.props:arguments[0];return L(this.stateProps,this.dispatchProps,I)},C.prototype.updateStateProps=function(){var I=arguments.length<=0||void 0===arguments[0]?this.props:arguments[0],M=e(this.store,I);return u["default"](M,this.stateProps)?!1:(this.stateProps=M,!0)},C.prototype.updateDispatchProps=function(){var I=arguments.length<=0||void 0===arguments[0]?this.props:arguments[0],M=z(this.store,I);return u["default"](M,this.dispatchProps)?!1:(this.dispatchProps=M,!0)},C.prototype.updateState=function(){var I=arguments.length<=0||void 0===arguments[0]?this.props:arguments[0];this.nextState=this.computeNextState(I)},C.prototype.isSubscribed=function(){return"function"==typeof this.unsubscribe},C.prototype.trySubscribe=function(){o&&!this.unsubscribe&&(this.unsubscribe=this.store.subscribe(this.handleChange.bind(this)),this.handleChange())},C.prototype.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null)},C.prototype.componentDidMount=function(){this.trySubscribe()},C.prototype.componentWillUnmount=function(){this.tryUnsubscribe()},C.prototype.handleChange=function(){this.unsubscribe&&this.setState({storeState:this.store.getState()})},C.prototype.getWrappedInstance=function(){return this.refs.wrappedInstance},C.prototype.render=function(){return I.createElement(g,c({ref:"wrappedInstance"},this.nextState))},C}(M);return i.displayName="Connect("+t(g)+")",i.WrappedComponent=g,i.contextTypes={store:C},i.propTypes={store:C},T["default"](i,g)}}}M.__esModule=!0;var c=Object.assign||function(I){for(var M=1;M0&&(s=A[j-1].state),I.push(e["default"].createElement(u["default"],{key:j,index:j,theme:c,select:t,action:z,state:n,previousState:s,collapsed:C[j],error:T,onActionClick:this.handleToggleAction.bind(this)}))}return e["default"].createElement("div",{style:i({},o.container,{backgroundColor:c.base00})},e["default"].createElement("div",{style:i({},o.buttonBar,{borderColor:c.base02})},e["default"].createElement(D["default"],{theme:c,onClick:this.handleReset.bind(this)},"Reset"),e["default"].createElement(D["default"],{theme:c,onClick:this.handleRollback.bind(this),enabled:A.length},"Revert"),e["default"].createElement(D["default"],{theme:c,onClick:this.handleSweep.bind(this),enabled:Object.keys(C).some(function(I){return C[I]})},"Sweep"),e["default"].createElement(D["default"],{theme:c,onClick:this.handleCommit.bind(this),enabled:A.length>1},"Commit")),e["default"].createElement("div",{style:o.elements,ref:"elements"},I))},c(M,null,[{key:"propTypes",value:{computedStates:j.PropTypes.array.isRequired,currentStateIndex:j.PropTypes.number.isRequired,monitorState:j.PropTypes.object.isRequired,stagedActions:j.PropTypes.array.isRequired,skippedActions:j.PropTypes.object.isRequired,reset:j.PropTypes.func.isRequired,commit:j.PropTypes.func.isRequired,rollback:j.PropTypes.func.isRequired,sweep:j.PropTypes.func.isRequired,toggleAction:j.PropTypes.func.isRequired,jumpToState:j.PropTypes.func.isRequired,setMonitorState:j.PropTypes.func.isRequired,select:j.PropTypes.func.isRequired,visibleOnLoad:j.PropTypes.bool,theme:j.PropTypes.oneOfType([j.PropTypes.object,j.PropTypes.string])},enumerable:!0},{key:"defaultProps",value:{select:function(I){return I},monitorState:{isVisible:!0},theme:"nicinabox",visibleOnLoad:!0},enumerable:!0}]),M}(j.Component);M["default"]=T,I.exports=M["default"]},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}function N(I,M){if(!(I instanceof M))throw new TypeError("Cannot call a class as a function")}function A(I,M){if("function"!=typeof M&&null!==M)throw new TypeError("Super expression must either be null or a function, not "+typeof M);I.prototype=Object.create(M&&M.prototype,{constructor:{value:I,enumerable:!1,writable:!0,configurable:!0}}),M&&(Object.setPrototypeOf?Object.setPrototypeOf(I,M):I.__proto__=M)}M.__esModule=!0;var t=Object.assign||function(I){for(var M=1;M0&&g(M)},M.prototype.render=function(){var I=this.props,M=I.index,g=I.error,C=I.action,N=I.state,A=I.collapsed,i={opacity:A?.5:1,cursor:M>0?"pointer":"default"};return j["default"].createElement("div",{style:{textDecoration:A?"line-through":"none"}},j["default"].createElement(L["default"],{theme:this.props.theme,collapsed:A,action:C,
onClick:this.handleActionClick.bind(this),style:t({},D.entry,i)}),!A&&j["default"].createElement("div",null,this.printState(N,g)))},i(M,null,[{key:"propTypes",value:{index:c.PropTypes.number.isRequired,state:c.PropTypes.object.isRequired,action:c.PropTypes.object.isRequired,select:c.PropTypes.func.isRequired,error:c.PropTypes.string,onActionClick:c.PropTypes.func.isRequired,collapsed:c.PropTypes.bool},enumerable:!0}]),M}(c.Component);M["default"]=n,I.exports=M["default"]},function(I,M,g){"use strict";var C=g(489)["default"],N=g(504)["default"],A=g(507)["default"],t=g(508)["default"],i=g(518)["default"];M.__esModule=!0;var c=g(192),j=i(c),e=g(519),z=i(e),u=g(574),L=i(u),D={tree:{border:0,padding:0,marginTop:8,marginBottom:8,marginLeft:2,marginRight:0,fontSize:"0.90em",listStyle:"none",MozUserSelect:"none",WebkitUserSelect:"none"}},n=function(I){function M(g){A(this,M),I.call(this,g)}return C(M,I),N(M,null,[{key:"propTypes",value:{data:j["default"].PropTypes.oneOfType([j["default"].PropTypes.array,j["default"].PropTypes.object]).isRequired},enumerable:!0},{key:"defaultProps",value:{theme:L["default"]},enumerable:!0}]),M.prototype.render=function(){var I=this.props.keyName||"root",M=z["default"](I,this.props.data,this.props.previousData,this.props.theme,!0);return j["default"].createElement("ul",{style:t({},D.tree,this.props.style)},M)},M}(j["default"].Component);M["default"]=n,I.exports=M["default"]},function(I,M,g){"use strict";var C=g(490)["default"],N=g(493)["default"];M["default"]=function(I,M){if("function"!=typeof M&&null!==M)throw new TypeError("Super expression must either be null or a function, not "+typeof M);I.prototype=C(M&&M.prototype,{constructor:{value:I,enumerable:!1,writable:!0,configurable:!0}}),M&&(N?N(I,M):I.__proto__=M)},M.__esModule=!0},function(I,M,g){I.exports={"default":g(491),__esModule:!0}},function(I,M,g){var C=g(492);I.exports=function(I,M){return C.create(I,M)}},5,function(I,M,g){I.exports={"default":g(494),__esModule:!0}},function(I,M,g){g(495),I.exports=g(498).Object.setPrototypeOf},[630,496,501],function(I,M,g){var C=g(497),N=g(498),A=g(499),t="prototype",i=function(I,M,g){var c,j,e,z=I&i.F,u=I&i.G,L=I&i.S,D=I&i.P,n=I&i.B,l=I&i.W,o=u?N:N[M]||(N[M]={}),T=u?C:L?C[M]:(C[M]||{})[t];u&&(g=M);for(c in g)j=!z&&T&&c in T,j&&c in o||(e=j?T[c]:g[c],o[c]=u&&"function"!=typeof T[c]?g[c]:n&&j?A(e,C):l&&T[c]==e?function(I){var M=function(M){return this instanceof I?new I(M):I(M)};return M[t]=I[t],M}(e):D&&"function"==typeof e?A(Function.call,e):e,D&&((o[t]||(o[t]={}))[c]=e))};i.F=1,i.G=2,i.S=4,i.P=8,i.B=16,i.W=32,I.exports=i},7,8,[620,500],16,[631,492,502,503,499],19,[621,502],function(I,M,g){"use strict";var C=g(505)["default"];M["default"]=function(){function I(I,M){for(var g=0;g=M.length)break;N=M[C++]}else{if(C=M.next(),C.done)break;N=C.value}var A=N,i=null,c=null;Array.isArray(A)?(i=A[0],c=A[1]):(i=I.length,c=A);var j=void 0;"undefined"!=typeof this.props.previousData&&null!==this.props.previousData&&(j=this.props.previousData[i]);var e=o["default"](i,c,j,this.props.theme);e!==!1&&I.push(e)}this.needsChildNodes=!1,this.renderedChildren=I}return this.renderedChildren},M.prototype.getItemString=function(){if(!this.itemString){var I=this.props.data,M=0;if(i(I.size))M=I.size;else for(var g=I,C=Array.isArray(g),N=0,g=C?g:t(g);;){var A;if(C){if(N>=g.length)break;A=g[N++]}else{if(N=g.next(),N.done)break;A=N.value}M+=1}this.itemString=M+" entr"+(1!==M?"ies":"y")}return this.itemString},M.prototype.render=function(){var I=this.getChildNodes(),M={padding:0,margin:0,listStyle:"none",display:this.state.expanded?"block":"none"},g=void 0,C=A({},T.span,{color:this.props.theme.base0E});return g=A({},T.base),this.state.expanded&&(C=A({},C,{color:this.props.theme.base03})),e["default"].createElement("li",{style:g},e["default"].createElement(n["default"],{theme:this.props.theme,open:this.state.expanded,onClick:this.handleClick.bind(this)}),e["default"].createElement("label",{style:A({},T.label,{color:this.props.theme.base0D}),onClick:this.handleClick.bind(this)},this.props.keyName,":"),e["default"].createElement("span",{style:C,onClick:this.handleClick.bind(this)},e["default"].createElement("span",{style:T.spanType},"()"),this.getItemString()),e["default"].createElement("ol",{style:M},I))};var g=M;return M=u["default"].decorate(L.ExpandedStateHandlerMixin)(M)||M}(e["default"].Component);M["default"]=s,I.exports=M["default"]},function(I,M,g){I.exports={"default":g(560),__esModule:!0}},function(I,M,g){g(539),g(523),I.exports=g(561)},function(I,M,g){var C=g(503),N=g(562);I.exports=g(498).getIterator=function(I){var M=N(I);if("function"!=typeof M)throw TypeError(I+" is not iterable!");return C(M.call(I))}},[641,563,536,533,498],[632,516,536],function(I,M,g){I.exports={"default":g(565),__esModule:!0}},function(I,M,g){g(566),I.exports=g(498).Number.isSafeInteger},[636,496,567],[635,502],function(I,M,g){"use strict";var C=g(489)["default"],N=g(507)["default"],A=g(508)["default"],t=g(518)["default"];M.__esModule=!0;var i=g(192),c=t(i),j=g(549),e=t(j),z=g(552),u=g(569),L=t(u),D={base:{paddingTop:3,paddingBottom:3,paddingRight:0,marginLeft:14},label:{display:"inline-block",marginRight:5}},n=function(I){function M(){N(this,g),I.apply(this,arguments)}C(M,I),M.prototype.render=function(){var I="transparent";if(this.props.previousValue!==this.props.value){var M=L["default"](this.props.theme.base06);I="rgba("+M.r+", "+M.g+", "+M.b+", 0.1)"}return c["default"].createElement("li",{style:A({},D.base,{backgroundColor:I}),onClick:this.handleClick.bind(this)},c["default"].createElement("label",{style:A({},D.label,{color:this.props.theme.base0D})},this.props.keyName,":"),c["default"].createElement("span",{style:{color:this.props.theme.base0B}},'"',this.props.value,'"'))};var g=M;return M=e["default"].decorate(z.SquashClickEventMixin)(M)||M}(c["default"].Component);M["default"]=n,I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]=function(I){var M=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(I);return M?{r:parseInt(M[1],16),g:parseInt(M[2],16),b:parseInt(M[3],16)}:null},I.exports=M["default"]},function(I,M,g){"use strict";var C=g(489)["default"],N=g(507)["default"],A=g(508)["default"],t=g(518)["default"];M.__esModule=!0;var i=g(192),c=t(i),j=g(549),e=t(j),z=g(552),u=g(569),L=t(u),D={base:{paddingTop:3,paddingBottom:3,paddingRight:0,marginLeft:14},label:{display:"inline-block",marginRight:5}},n=function(I){function M(){N(this,g),I.apply(this,arguments)}C(M,I),M.prototype.render=function(){var I="transparent";if(this.props.previousValue!==this.props.value){var M=L["default"](this.props.theme.base06);I="rgba("+M.r+", "+M.g+", "+M.b+", 0.1)"}return c["default"].createElement("li",{style:A({},D.base,{backgroundColor:I}),onClick:this.handleClick.bind(this)},c["default"].createElement("label",{style:A({},D.label,{color:this.props.theme.base0D})},this.props.keyName,":"),c["default"].createElement("span",{style:{color:this.props.theme.base09}},this.props.value))};var g=M;return M=e["default"].decorate(z.SquashClickEventMixin)(M)||M}(c["default"].Component);M["default"]=n,I.exports=M["default"]},function(I,M,g){"use strict";var C=g(489)["default"],N=g(507)["default"],A=g(508)["default"],t=g(518)["default"];M.__esModule=!0;var i=g(192),c=t(i),j=g(549),e=t(j),z=g(552),u=g(569),L=t(u),D={base:{paddingTop:3,paddingBottom:3,paddingRight:0,marginLeft:14},label:{display:"inline-block",marginRight:5}},n=function(I){function M(){N(this,g),I.apply(this,arguments)}C(M,I),M.prototype.render=function(){var I=this.props.value?"true":"false",M="transparent";if(this.props.previousValue!==this.props.value){var g=L["default"](this.props.theme.base06);M="rgba("+g.r+", "+g.g+", "+g.b+", 0.1)"}return c["default"].createElement("li",{style:A({},D.base,{backgroundColor:M}),onClick:this.handleClick.bind(this)},c["default"].createElement("label",{style:A({},D.label,{color:this.props.theme.base0D})},this.props.keyName,":"),c["default"].createElement("span",{style:{color:this.props.theme.base09}},I))};var g=M;return M=e["default"].decorate(z.SquashClickEventMixin)(M)||M}(c["default"].Component);M["default"]=n,I.exports=M["default"]},function(I,M,g){"use strict";var C=g(489)["default"],N=g(507)["default"],A=g(508)["default"],t=g(518)["default"];M.__esModule=!0;var i=g(192),c=t(i),j=g(549),e=t(j),z=g(552),u=g(569),L=t(u),D={base:{paddingTop:3,paddingBottom:3,paddingRight:0,marginLeft:14},label:{display:"inline-block",marginRight:5}},n=function(I){function M(){N(this,g),I.apply(this,arguments)}C(M,I),M.prototype.render=function(){var I="transparent";if(this.props.previousValue!==this.props.value){var M=L["default"](this.props.theme.base06);I="rgba("+M.r+", "+M.g+", "+M.b+", 0.1)"}return c["default"].createElement("li",{style:A({},D.base,{backgroundColor:I}),onClick:this.handleClick.bind(this)},c["default"].createElement("label",{style:A({},D.label,{color:this.props.theme.base0D})},this.props.keyName,":"),c["default"].createElement("span",{style:{color:this.props.theme.base08}},"null"))};var g=M;return M=e["default"].decorate(z.SquashClickEventMixin)(M)||M}(c["default"].Component);M["default"]=n,I.exports=M["default"]},function(I,M,g){"use strict";var C=g(489)["default"],N=g(507)["default"],A=g(508)["default"],t=g(518)["default"];M.__esModule=!0;var i=g(192),c=t(i),j=g(549),e=t(j),z=g(552),u=g(569),L=t(u),D={base:{paddingTop:3,paddingBottom:3,paddingRight:0,marginLeft:14},label:{display:"inline-block",marginRight:5}},n=function(I){function M(){N(this,g),I.apply(this,arguments)}C(M,I),M.prototype.render=function(){var I="transparent";if(this.props.previousValue!==this.props.value){var M=L["default"](this.props.theme.base06);I="rgba("+M.r+", "+M.g+", "+M.b+", 0.1)"}return c["default"].createElement("li",{style:A({},D.base,{backgroundColor:I}),onClick:this.handleClick.bind(this)},c["default"].createElement("label",{style:A({},D.label,{color:this.props.theme.base0D})},this.props.keyName,":"),c["default"].createElement("span",{style:{color:this.props.theme.base0B}},this.props.value.toISOString()))};var g=M;return M=e["default"].decorate(z.SquashClickEventMixin)(M)||M}(c["default"].Component);M["default"]=n,I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"solarized",author:"ethan schoonover (http://ethanschoonover.com/solarized)",base00:"#002b36",base01:"#073642",base02:"#586e75",base03:"#657b83",base04:"#839496",base05:"#93a1a1",base06:"#eee8d5",base07:"#fdf6e3",base08:"#dc322f",base09:"#cb4b16",base0A:"#b58900",base0B:"#859900",base0C:"#2aa198",base0D:"#268bd2",base0E:"#6c71c4",base0F:"#d33682"},I.exports=M["default"]},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}function N(I,M){var g={};for(var C in I)M.indexOf(C)>=0||Object.prototype.hasOwnProperty.call(I,C)&&(g[C]=I[C]);return g}function A(I,M){if(!(I instanceof M))throw new TypeError("Cannot call a class as a function")}function t(I,M){if("function"!=typeof M&&null!==M)throw new TypeError("Super expression must either be null or a function, not "+typeof M);I.prototype=Object.create(M&&M.prototype,{constructor:{value:I,enumerable:!1,writable:!0,configurable:!0}}),M&&(Object.setPrototypeOf?Object.setPrototypeOf(I,M):I.__proto__=M)}M.__esModule=!0;var i=Object.assign||function(I){for(var M=1;M0?j["default"].createElement(z["default"],{theme:this.props.theme,keyName:"action",data:I}):"")},M.prototype.render=function(){var I=this.props.action,M=I.type,g=N(I,["type"]);return j["default"].createElement("div",{style:i({backgroundColor:this.props.theme.base02,color:this.props.theme.base06},this.props.style)},j["default"].createElement("div",{style:u.actionBar,onClick:this.props.onClick},M),this.props.collapsed?"":this.renderPayload(g))},M}(j["default"].Component);M["default"]=L,I.exports=M["default"]},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}function N(I,M){if(!(I instanceof M))throw new TypeError("Cannot call a class as a function")}function A(I,M){if("function"!=typeof M&&null!==M)throw new TypeError("Super expression must either be null or a function, not "+typeof M);I.prototype=Object.create(M&&M.prototype,{constructor:{value:I,enumerable:!1,writable:!0,configurable:!0}}),M&&(Object.setPrototypeOf?Object.setPrototypeOf(I,M):I.__proto__=M)}M.__esModule=!0;var t=Object.assign||function(I){for(var M=1;Mt;++t)A=parseInt(g.substr(2*t,2),16),A=Math.round(Math.min(Math.max(0,A+A*C),255)).toString(16),N+=("00"+A).substr(A.length);return N},I.exports=M["default"]},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I["default"]:I}M.__esModule=!0;var N=g(579);M.threezerotwofour=C(N);var A=g(580);M.apathy=C(A);var t=g(581);M.ashes=C(t);var i=g(582);M.atelierDune=C(i);var c=g(583);M.atelierForest=C(c);var j=g(584);M.atelierHeath=C(j);var e=g(585);M.atelierLakeside=C(e);var z=g(586);M.atelierSeaside=C(z);var u=g(587);M.bespin=C(u);var L=g(588);M.brewer=C(L);var D=g(589);M.bright=C(D);var n=g(590);M.chalk=C(n);var l=g(591);M.codeschool=C(l);var o=g(592);M.colors=C(o);var T=g(593);M["default"]=C(T);var s=g(594);M.eighties=C(s);var w=g(595);M.embers=C(w);var a=g(596);M.flat=C(a);var y=g(597);M.google=C(y);var b=g(598);M.grayscale=C(b);var Z=g(599);M.greenscreen=C(Z);var m=g(600);M.harmonic=C(m);var d=g(601);M.hopscotch=C(d);var Y=g(602);M.isotope=C(Y);var r=g(603);M.marrakesh=C(r);var O=g(604);M.mocha=C(O);var p=g(605);M.monokai=C(p);var G=g(606);M.ocean=C(G);var W=g(607);M.paraiso=C(W);var x=g(608);M.pop=C(x);var S=g(609);M.railscasts=C(S);var k=g(610);M.shapeshifter=C(k);var h=g(611);M.solarized=C(h);var Q=g(612);M.summerfruit=C(Q);var v=g(613);M.tomorrow=C(v);var E=g(614);M.tube=C(E);var R=g(615);M.twilight=C(R);var U=g(616);M.nicinabox=C(U)},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"threezerotwofour",author:"jan t. sott (http://github.com/idleberg)",base00:"#090300",base01:"#3a3432",base02:"#4a4543",base03:"#5c5855",base04:"#807d7c",base05:"#a5a2a2",base06:"#d6d5d4",base07:"#f7f7f7",base08:"#db2d20",base09:"#e8bbd0",base0A:"#fded02",base0B:"#01a252",base0C:"#b5e4f4",base0D:"#01a0e4",base0E:"#a16a94",base0F:"#cdab53"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"apathy",author:"jannik siebert (https://github.com/janniks)",base00:"#031A16",base01:"#0B342D",base02:"#184E45",base03:"#2B685E",base04:"#5F9C92",base05:"#81B5AC",base06:"#A7CEC8",base07:"#D2E7E4",base08:"#3E9688",base09:"#3E7996",base0A:"#3E4C96",base0B:"#883E96",base0C:"#963E4C",base0D:"#96883E",base0E:"#4C963E",base0F:"#3E965B"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"ashes",author:"jannik siebert (https://github.com/janniks)",base00:"#1C2023",base01:"#393F45",base02:"#565E65",base03:"#747C84",base04:"#ADB3BA",base05:"#C7CCD1",base06:"#DFE2E5",base07:"#F3F4F5",base08:"#C7AE95",base09:"#C7C795",base0A:"#AEC795",base0B:"#95C7AE",base0C:"#95AEC7",base0D:"#AE95C7",base0E:"#C795AE",base0F:"#C79595"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"atelier dune",author:"bram de haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/dune)",base00:"#20201d",base01:"#292824",base02:"#6e6b5e",base03:"#7d7a68",base04:"#999580",base05:"#a6a28c",base06:"#e8e4cf",base07:"#fefbec",base08:"#d73737",base09:"#b65611",base0A:"#cfb017",base0B:"#60ac39",base0C:"#1fad83",base0D:"#6684e1",base0E:"#b854d4",base0F:"#d43552"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"atelier forest",author:"bram de haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/forest)",
base00:"#1b1918",base01:"#2c2421",base02:"#68615e",base03:"#766e6b",base04:"#9c9491",base05:"#a8a19f",base06:"#e6e2e0",base07:"#f1efee",base08:"#f22c40",base09:"#df5320",base0A:"#d5911a",base0B:"#5ab738",base0C:"#00ad9c",base0D:"#407ee7",base0E:"#6666ea",base0F:"#c33ff3"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"atelier heath",author:"bram de haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/heath)",base00:"#1b181b",base01:"#292329",base02:"#695d69",base03:"#776977",base04:"#9e8f9e",base05:"#ab9bab",base06:"#d8cad8",base07:"#f7f3f7",base08:"#ca402b",base09:"#a65926",base0A:"#bb8a35",base0B:"#379a37",base0C:"#159393",base0D:"#516aec",base0E:"#7b59c0",base0F:"#cc33cc"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"atelier lakeside",author:"bram de haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/lakeside/)",base00:"#161b1d",base01:"#1f292e",base02:"#516d7b",base03:"#5a7b8c",base04:"#7195a8",base05:"#7ea2b4",base06:"#c1e4f6",base07:"#ebf8ff",base08:"#d22d72",base09:"#935c25",base0A:"#8a8a0f",base0B:"#568c3b",base0C:"#2d8f6f",base0D:"#257fad",base0E:"#5d5db1",base0F:"#b72dd2"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"atelier seaside",author:"bram de haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/seaside/)",base00:"#131513",base01:"#242924",base02:"#5e6e5e",base03:"#687d68",base04:"#809980",base05:"#8ca68c",base06:"#cfe8cf",base07:"#f0fff0",base08:"#e6193c",base09:"#87711d",base0A:"#c3c322",base0B:"#29a329",base0C:"#1999b3",base0D:"#3d62f5",base0E:"#ad2bee",base0F:"#e619c3"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"bespin",author:"jan t. sott",base00:"#28211c",base01:"#36312e",base02:"#5e5d5c",base03:"#666666",base04:"#797977",base05:"#8a8986",base06:"#9d9b97",base07:"#baae9e",base08:"#cf6a4c",base09:"#cf7d34",base0A:"#f9ee98",base0B:"#54be0d",base0C:"#afc4db",base0D:"#5ea6ea",base0E:"#9b859d",base0F:"#937121"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"brewer",author:"timothée poisot (http://github.com/tpoisot)",base00:"#0c0d0e",base01:"#2e2f30",base02:"#515253",base03:"#737475",base04:"#959697",base05:"#b7b8b9",base06:"#dadbdc",base07:"#fcfdfe",base08:"#e31a1c",base09:"#e6550d",base0A:"#dca060",base0B:"#31a354",base0C:"#80b1d3",base0D:"#3182bd",base0E:"#756bb1",base0F:"#b15928"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"bright",author:"chris kempson (http://chriskempson.com)",base00:"#000000",base01:"#303030",base02:"#505050",base03:"#b0b0b0",base04:"#d0d0d0",base05:"#e0e0e0",base06:"#f5f5f5",base07:"#ffffff",base08:"#fb0120",base09:"#fc6d24",base0A:"#fda331",base0B:"#a1c659",base0C:"#76c7b7",base0D:"#6fb3d2",base0E:"#d381c3",base0F:"#be643c"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"chalk",author:"chris kempson (http://chriskempson.com)",base00:"#151515",base01:"#202020",base02:"#303030",base03:"#505050",base04:"#b0b0b0",base05:"#d0d0d0",base06:"#e0e0e0",base07:"#f5f5f5",base08:"#fb9fb1",base09:"#eda987",base0A:"#ddb26f",base0B:"#acc267",base0C:"#12cfc0",base0D:"#6fc2ef",base0E:"#e1a3ee",base0F:"#deaf8f"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"codeschool",author:"brettof86",base00:"#232c31",base01:"#1c3657",base02:"#2a343a",base03:"#3f4944",base04:"#84898c",base05:"#9ea7a6",base06:"#a7cfa3",base07:"#b5d8f6",base08:"#2a5491",base09:"#43820d",base0A:"#a03b1e",base0B:"#237986",base0C:"#b02f30",base0D:"#484d79",base0E:"#c59820",base0F:"#c98344"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"colors",author:"mrmrs (http://clrs.cc)",base00:"#111111",base01:"#333333",base02:"#555555",base03:"#777777",base04:"#999999",base05:"#bbbbbb",base06:"#dddddd",base07:"#ffffff",base08:"#ff4136",base09:"#ff851b",base0A:"#ffdc00",base0B:"#2ecc40",base0C:"#7fdbff",base0D:"#0074d9",base0E:"#b10dc9",base0F:"#85144b"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"default",author:"chris kempson (http://chriskempson.com)",base00:"#181818",base01:"#282828",base02:"#383838",base03:"#585858",base04:"#b8b8b8",base05:"#d8d8d8",base06:"#e8e8e8",base07:"#f8f8f8",base08:"#ab4642",base09:"#dc9656",base0A:"#f7ca88",base0B:"#a1b56c",base0C:"#86c1b9",base0D:"#7cafc2",base0E:"#ba8baf",base0F:"#a16946"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"eighties",author:"chris kempson (http://chriskempson.com)",base00:"#2d2d2d",base01:"#393939",base02:"#515151",base03:"#747369",base04:"#a09f93",base05:"#d3d0c8",base06:"#e8e6df",base07:"#f2f0ec",base08:"#f2777a",base09:"#f99157",base0A:"#ffcc66",base0B:"#99cc99",base0C:"#66cccc",base0D:"#6699cc",base0E:"#cc99cc",base0F:"#d27b53"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"embers",author:"jannik siebert (https://github.com/janniks)",base00:"#16130F",base01:"#2C2620",base02:"#433B32",base03:"#5A5047",base04:"#8A8075",base05:"#A39A90",base06:"#BEB6AE",base07:"#DBD6D1",base08:"#826D57",base09:"#828257",base0A:"#6D8257",base0B:"#57826D",base0C:"#576D82",base0D:"#6D5782",base0E:"#82576D",base0F:"#825757"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"flat",author:"chris kempson (http://chriskempson.com)",base00:"#2C3E50",base01:"#34495E",base02:"#7F8C8D",base03:"#95A5A6",base04:"#BDC3C7",base05:"#e0e0e0",base06:"#f5f5f5",base07:"#ECF0F1",base08:"#E74C3C",base09:"#E67E22",base0A:"#F1C40F",base0B:"#2ECC71",base0C:"#1ABC9C",base0D:"#3498DB",base0E:"#9B59B6",base0F:"#be643c"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"google",author:"seth wright (http://sethawright.com)",base00:"#1d1f21",base01:"#282a2e",base02:"#373b41",base03:"#969896",base04:"#b4b7b4",base05:"#c5c8c6",base06:"#e0e0e0",base07:"#ffffff",base08:"#CC342B",base09:"#F96A38",base0A:"#FBA922",base0B:"#198844",base0C:"#3971ED",base0D:"#3971ED",base0E:"#A36AC7",base0F:"#3971ED"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"grayscale",author:"alexandre gavioli (https://github.com/alexx2/)",base00:"#101010",base01:"#252525",base02:"#464646",base03:"#525252",base04:"#ababab",base05:"#b9b9b9",base06:"#e3e3e3",base07:"#f7f7f7",base08:"#7c7c7c",base09:"#999999",base0A:"#a0a0a0",base0B:"#8e8e8e",base0C:"#868686",base0D:"#686868",base0E:"#747474",base0F:"#5e5e5e"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"green screen",author:"chris kempson (http://chriskempson.com)",base00:"#001100",base01:"#003300",base02:"#005500",base03:"#007700",base04:"#009900",base05:"#00bb00",base06:"#00dd00",base07:"#00ff00",base08:"#007700",base09:"#009900",base0A:"#007700",base0B:"#00bb00",base0C:"#005500",base0D:"#009900",base0E:"#00bb00",base0F:"#005500"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"harmonic16",author:"jannik siebert (https://github.com/janniks)",base00:"#0b1c2c",base01:"#223b54",base02:"#405c79",base03:"#627e99",base04:"#aabcce",base05:"#cbd6e2",base06:"#e5ebf1",base07:"#f7f9fb",base08:"#bf8b56",base09:"#bfbf56",base0A:"#8bbf56",base0B:"#56bf8b",base0C:"#568bbf",base0D:"#8b56bf",base0E:"#bf568b",base0F:"#bf5656"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"hopscotch",author:"jan t. sott",base00:"#322931",base01:"#433b42",base02:"#5c545b",base03:"#797379",base04:"#989498",base05:"#b9b5b8",base06:"#d5d3d5",base07:"#ffffff",base08:"#dd464c",base09:"#fd8b19",base0A:"#fdcc59",base0B:"#8fc13e",base0C:"#149b93",base0D:"#1290bf",base0E:"#c85e7c",base0F:"#b33508"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"isotope",author:"jan t. sott",base00:"#000000",base01:"#404040",base02:"#606060",base03:"#808080",base04:"#c0c0c0",base05:"#d0d0d0",base06:"#e0e0e0",base07:"#ffffff",base08:"#ff0000",base09:"#ff9900",base0A:"#ff0099",base0B:"#33ff00",base0C:"#00ffff",base0D:"#0066ff",base0E:"#cc00ff",base0F:"#3300ff"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"marrakesh",author:"alexandre gavioli (http://github.com/alexx2/)",base00:"#201602",base01:"#302e00",base02:"#5f5b17",base03:"#6c6823",base04:"#86813b",base05:"#948e48",base06:"#ccc37a",base07:"#faf0a5",base08:"#c35359",base09:"#b36144",base0A:"#a88339",base0B:"#18974e",base0C:"#75a738",base0D:"#477ca1",base0E:"#8868b3",base0F:"#b3588e"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"mocha",author:"chris kempson (http://chriskempson.com)",base00:"#3B3228",base01:"#534636",base02:"#645240",base03:"#7e705a",base04:"#b8afad",base05:"#d0c8c6",base06:"#e9e1dd",base07:"#f5eeeb",base08:"#cb6077",base09:"#d28b71",base0A:"#f4bc87",base0B:"#beb55b",base0C:"#7bbda4",base0D:"#8ab3b5",base0E:"#a89bb9",base0F:"#bb9584"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"monokai",author:"wimer hazenberg (http://www.monokai.nl)",base00:"#272822",base01:"#383830",base02:"#49483e",base03:"#75715e",base04:"#a59f85",base05:"#f8f8f2",base06:"#f5f4f1",base07:"#f9f8f5",base08:"#f92672",base09:"#fd971f",base0A:"#f4bf75",base0B:"#a6e22e",base0C:"#a1efe4",base0D:"#66d9ef",base0E:"#ae81ff",base0F:"#cc6633"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"ocean",author:"chris kempson (http://chriskempson.com)",base00:"#2b303b",base01:"#343d46",base02:"#4f5b66",base03:"#65737e",base04:"#a7adba",base05:"#c0c5ce",base06:"#dfe1e8",base07:"#eff1f5",base08:"#bf616a",base09:"#d08770",base0A:"#ebcb8b",base0B:"#a3be8c",base0C:"#96b5b4",base0D:"#8fa1b3",base0E:"#b48ead",base0F:"#ab7967"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"paraiso",author:"jan t. sott",base00:"#2f1e2e",base01:"#41323f",base02:"#4f424c",base03:"#776e71",base04:"#8d8687",base05:"#a39e9b",base06:"#b9b6b0",base07:"#e7e9db",base08:"#ef6155",base09:"#f99b15",base0A:"#fec418",base0B:"#48b685",base0C:"#5bc4bf",base0D:"#06b6ef",base0E:"#815ba4",base0F:"#e96ba8"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"pop",author:"chris kempson (http://chriskempson.com)",base00:"#000000",base01:"#202020",base02:"#303030",base03:"#505050",base04:"#b0b0b0",base05:"#d0d0d0",base06:"#e0e0e0",base07:"#ffffff",base08:"#eb008a",base09:"#f29333",base0A:"#f8ca12",base0B:"#37b349",base0C:"#00aabb",base0D:"#0e5a94",base0E:"#b31e8d",base0F:"#7a2d00"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"railscasts",author:"ryan bates (http://railscasts.com)",base00:"#2b2b2b",base01:"#272935",base02:"#3a4055",base03:"#5a647e",base04:"#d4cfc9",base05:"#e6e1dc",base06:"#f4f1ed",base07:"#f9f7f3",base08:"#da4939",base09:"#cc7833",base0A:"#ffc66d",base0B:"#a5c261",base0C:"#519f50",base0D:"#6d9cbe",base0E:"#b6b3eb",base0F:"#bc9458"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"shapeshifter",author:"tyler benziger (http://tybenz.com)",base00:"#000000",base01:"#040404",base02:"#102015",base03:"#343434",base04:"#555555",base05:"#ababab",base06:"#e0e0e0",base07:"#f9f9f9",base08:"#e92f2f",base09:"#e09448",base0A:"#dddd13",base0B:"#0ed839",base0C:"#23edda",base0D:"#3b48e3",base0E:"#f996e2",base0F:"#69542d"},I.exports=M["default"]},574,function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"summerfruit",author:"christopher corley (http://cscorley.github.io/)",base00:"#151515",base01:"#202020",base02:"#303030",base03:"#505050",base04:"#B0B0B0",base05:"#D0D0D0",base06:"#E0E0E0",base07:"#FFFFFF",base08:"#FF0086",base09:"#FD8900",base0A:"#ABA800",base0B:"#00C918",base0C:"#1faaaa",base0D:"#3777E6",base0E:"#AD00A1",base0F:"#cc6633"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"tomorrow",author:"chris kempson (http://chriskempson.com)",base00:"#1d1f21",base01:"#282a2e",base02:"#373b41",base03:"#969896",base04:"#b4b7b4",base05:"#c5c8c6",base06:"#e0e0e0",base07:"#ffffff",base08:"#cc6666",base09:"#de935f",base0A:"#f0c674",base0B:"#b5bd68",base0C:"#8abeb7",base0D:"#81a2be",base0E:"#b294bb",base0F:"#a3685a"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"london tube",author:"jan t. sott",base00:"#231f20",base01:"#1c3f95",base02:"#5a5758",base03:"#737171",base04:"#959ca1",base05:"#d9d8d8",base06:"#e7e7e8",base07:"#ffffff",base08:"#ee2e24",base09:"#f386a1",base0A:"#ffd204",base0B:"#00853e",base0C:"#85cebc",base0D:"#009ddc",base0E:"#98005d",base0F:"#b06110"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"twilight",author:"david hart (http://hart-dev.com)",base00:"#1e1e1e",base01:"#323537",base02:"#464b50",base03:"#5f5a60",base04:"#838184",base05:"#a7a7a7",base06:"#c3c3c3",base07:"#ffffff",base08:"#cf6a4c",base09:"#cda869",base0A:"#f9ee98",base0B:"#8f9d6a",base0C:"#afc4db",base0D:"#7587a6",base0E:"#9b859d",base0F:"#9b703f"},I.exports=M["default"]},function(I,M){"use strict";M.__esModule=!0,M["default"]={scheme:"nicinabox",author:"nicinabox (http://github.com/nicinabox)",base00:"#2A2F3A",base01:"#3C444F",base02:"#4F5A65",base03:"#BEBEBE",base04:"#b0b0b0",base05:"#d0d0d0",base06:"#FFFFFF",base07:"#f5f5f5",base08:"#fb9fb1",base09:"#FC6D24",base0A:"#ddb26f",base0B:"#A1C659",base0C:"#12cfc0",base0D:"#6FB3D2",base0E:"#D381C3",base0F:"#deaf8f"},I.exports=M["default"]},function(I,M,g){"use strict";function C(I){return I&&I.__esModule?I:{"default":I}}function N(I,M){if(!(I instanceof M))throw new TypeError("Cannot call a class as a function")}function A(I,M){if("function"!=typeof M&&null!==M)throw new TypeError("Super expression must either be null or a function, not "+typeof M);I.prototype=Object.create(M&&M.prototype,{constructor:{value:I,enumerable:!1,writable:!0,configurable:!0}}),M&&(Object.setPrototypeOf?Object.setPrototypeOf(I,M):I.__proto__=M)}function t(I){var M=I.left,g=I.right,C=I.bottom,N=I.top;return"undefined"==typeof M&&"undefined"==typeof g&&(g=!0),"undefined"==typeof N&&"undefined"==typeof C&&(C=!0),{position:"fixed",zIndex:1e4,fontSize:17,overflow:"hidden",opacity:1,color:"white",left:M?0:void 0,right:g?0:void 0,top:N?0:void 0,bottom:C?0:void 0,maxHeight:C&&N?"100%":"30%",maxWidth:M&&g?"100%":"30%",wordWrap:"break-word",boxSizing:"border-box",boxShadow:"-2px 0 7px 0 rgba(0, 0, 0, 0.5)"}}M.__esModule=!0;var i=Object.assign||function(I){for(var M=1;MA;)for(var u,L=j(C[A++]),D=e?t(L).concat(e(L)):t(L),n=D.length,l=0;n>l;)z.call(L,u=D[l++])&&(g[u]=L[u]);return g}:Object.assign},function(I,M,g,C,N){var A=g(C);A(A.S,"Object",{setPrototypeOf:g(N).set})},function(I,M,g,C,N,A,t){var i=g(C).getDesc,c=g(N),j=g(A),e=function(I,M){if(j(I),!c(M)&&null!==M)throw TypeError(M+": can't set as prototype!")};I.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(I,M,C){try{C=g(t)(Function.call,i(Object.prototype,"__proto__").set,2),C(I,[]),M=!(I instanceof Array)}catch(N){M=!0}return function(I,g){return e(I,g),M?I.__proto__=g:C(I,g),I}}({},!1):void 0),check:e}},function(I,M,g,C,N){var A=g(C),t=g(N)("toStringTag"),i="Arguments"==A(function(){return arguments}());I.exports=function(I){var M,g,C;return void 0===I?"Undefined":null===I?"Null":"string"==typeof(g=(M=Object(I))[t])?g:i?A(M):"Object"==(C=A(M))&&"function"==typeof M.callee?"Arguments":C}},function(I,M,g,C,N,A){var t=g(C),i=g(N),c=g(A);I.exports=function(I,M){var g=(i.Object||{})[I]||Object[I],C={};C[I]=M(g),t(t.S+t.F*c(function(){g(1)}),"Object",C)}},function(I,M,g,C,N){var A=g(C);g(N)("keys",function(I){return function(M){return I(A(M))}})},function(I,M,g,C){var N=g(C),A=Math.floor;I.exports=function(I){return!N(I)&&isFinite(I)&&A(I)===I}},function(I,M,g,C,N){var A=g(C),t=g(N),i=Math.abs;A(A.S,"Number",{isSafeInteger:function(I){return t(I)&&i(I)<=9007199254740991}})},function(I,M,g,C,N){"use strict";var A=g(C)(!0);g(N)(String,"String",function(I){this._t=String(I),this._i=0},function(){var I,M=this._t,g=this._i;return g>=M.length?{value:void 0,done:!0}:(I=A(M,g),this._i+=I.length,{value:I,done:!1})})},function(I,M,g,C,N){var A=g(C),t=g(N);I.exports=function(I){return function(M,g){var C,N,i=String(t(M)),c=A(g),j=i.length;return 0>c||c>=j?I?"":void 0:(C=i.charCodeAt(c),55296>C||C>56319||c+1===j||(N=i.charCodeAt(c+1))<56320||N>57343?I?i.charAt(c):C:I?i.slice(c,c+2):(C-55296<<10)+(N-56320)+65536)}}},function(I,M,g,C,N,A,t,i,c,j,e,z,u){"use strict";var L=g(C),D=g(N),n=g(A),l=g(t),o=g(i),T=g(c),s=g(j),w=g(e),a=g(z).getProto,y=g(u)("iterator"),b=!([].keys&&"next"in[].keys()),Z="@@iterator",m="keys",d="values",Y=function(){return this};I.exports=function(I,M,g,C,N,A,t){s(g,M,C);var i,c,j=function(I){if(!b&&I in r)return r[I];switch(I){case m:return function(){return new g(this,I)};case d:return function(){return new g(this,I)}}return function(){return new g(this,I)}},e=M+" Iterator",z=N==d,u=!1,r=I.prototype,O=r[y]||r[Z]||N&&r[N],p=O||j(N);if(O){var G=a(p.call(new I));w(G,e,!0),!L&&o(r,Z)&&l(G,y,Y),z&&O.name!==d&&(u=!0,p=function(){return O.call(this)})}if(L&&!t||!b&&!u&&r[y]||l(r,y,p),T[M]=p,T[e]=Y,N)if(i={values:z?p:j(d),keys:A?p:j(m),entries:z?j("entries"):p},t)for(c in i)c in r||n(r,c,i[c]);else D(D.P+D.F*(b||u),M,i);return i}},function(I,M,g,C,N,A,t,i){"use strict";var c=g(C),j=g(N),e=g(A),z={};g(t)(z,g(i)("iterator"),function(){return this}),I.exports=function(I,M,g){I.prototype=c.create(z,{next:j(1,g)}),e(I,M+" Iterator")}},function(I,M,g,C,N,A,t){var i=g(C),c=g(N)("iterator"),j=g(A);I.exports=g(t).getIteratorMethod=function(I){return void 0!=I?I[c]||I["@@iterator"]||j[i(I)]:void 0}},function(I,M,g,C,N,A,t,i){"use strict";var c=g(C),j=g(N),e=g(A),z=g(t);I.exports=g(i)(Array,"Array",function(I,M){this._t=z(I),this._i=0,this._k=M},function(){var I=this._t,M=this._k,g=this._i++;return!I||g>=I.length?(this._t=void 0,j(1)):"keys"==M?j(0,g):"values"==M?j(0,I[g]):j(0,[g,I[g]])},"values"),e.Arguments=e.Array,c("keys"),c("values"),c("entries")},function(I,M,g,C,N){function A(I){if(!i(I)||u.call(I)!=c||t(I))return!1;var M=j;if("function"==typeof I.constructor&&(M=L(I)),null===M)return!0;var g=M.constructor;return"function"==typeof g&&g instanceof g&&e.call(g)==z}var t=g(C),i=g(N),c="[object Object]",j=Object.prototype,e=Function.prototype.toString,z=e.call(Object),u=j.toString,L=Object.getPrototypeOf;I.exports=A},function(I,M,g,C){"use strict";Object.defineProperty(M,"__esModule",{value:!0}),M["default"]=g(C).styles},function(I,M,g,C){var N=g(C);"string"==typeof N&&(N=[[I.id,N,""]]);g(442)(N,{});N.locals&&(I.exports=N.locals)}]))});
================================================
FILE: package.json
================================================
{
"name": "react-solitair",
"version": "0.0.1",
"description": "A solitair game with react",
"main": "lib/index.js",
"scripts": {
"build": "export NODE_ENV=production && webpack --config ./webpack/webpack.config.prod.js",
"test": "export NODE_PATH=$PWD/src; echo $NODE_PATH; mocha --compilers js:./src/tests/compiler.js ./src/tests/*.spec.js",
"lint": "eslint src",
"start": "node ./server.js",
"start:prod": "node ./server.prod.js",
"prepublish": "npm run lint && npm run test"
},
"keywords": [
"react",
"redux",
"es2015",
"webpack",
"sass-node",
"mocha"
],
"author": "",
"license": "ISC",
"dependencies": {
"babel": "^6.0.15",
"babel-core": "^6.1.2",
"babel-loader": "^6.0.1",
"babel-plugin-transform-object-rest-spread": "^6.5.0",
"babel-polyfill": "^6.5.0",
"css-loader": "^0.22.0",
"file-loader": "^0.8.5",
"node-sass": "^3.4.1",
"postcss-modules-extract-imports": "^1.0.0",
"postcss-modules-scope": "^1.0.0",
"react": "^0.14.2",
"react-dom": "^0.14.2",
"react-redux": "^4.0.0",
"react-tap-event-plugin": "^0.2.1",
"redux": "^3.0.4",
"redux-undo": "^0.5.0",
"sass": "^0.5.0",
"sass-loader": "^3.1.1",
"style-loader": "^0.13.0",
"unexpected-react": "^0.3.0",
"url-loader": "^0.5.7"
},
"devDependencies": {
"babel-eslint": "^4.1.6",
"babel-preset-es2015": "^6.1.18",
"babel-preset-react": "^6.1.2",
"css-modules-require-hook": "^2.0.2",
"eslint": "^1.10.3",
"eslint-config-semistandard": "^5.0.0",
"eslint-config-standard": "^4.4.0",
"eslint-plugin-react": "^3.11.3",
"eslint-plugin-standard": "^1.3.1",
"jsdom": "^7.0.2",
"mocha": "^2.3.4",
"react-addons-test-utils": "^0.14.2",
"react-tools": "^0.13.3",
"redux-devtools": "^2.1.5",
"redux-logger": "^2.0.4",
"redux-thunk": "^1.0.0",
"source-map": "^0.5.3",
"unexpected": "^10.2.0",
"webpack": "^1.12.3",
"webpack-dev-server": "^1.12.1"
},
"repository": {
"type": "git",
"url": "https://github.com/pl12133/react-solitaire.git"
}
}
================================================
FILE: server.js
================================================
var webpack = require('webpack');
var WebpackDevServer = require('webpack-dev-server');
var config = require('./webpack/webpack.config');
var port= process.env.PORT || 8080
var host= process.env.HOST || 'localhost'
new WebpackDevServer(webpack(config), {
publicPath: config.output.publicPath,
historyApiFallback: true
}).listen(port, host, function(err,result) {
if (err) {
console.error(err);
}
console.log('Listening at ' + host + ':' + port);
});
================================================
FILE: server.prod.js
================================================
const express = require('express')
const path = require('path')
const port = process.env.PORT || 8080
const host = process.env.HOST || 'hearthdraft.net'
const app = express()
// serve static assets normally
app.use(express.static(__dirname))
// handle every other route with index.html, which will contain
// a script tag to your application's JavaScript file(s).
app.get('*', function (request, response){
response.sendFile(path.resolve(__dirname, 'index.html'))
})
app.listen(port, host)
console.log('server started on ' + host + ':' + port)
================================================
FILE: src/actions/cards.js
================================================
export const MOVE_CARDS = 'MOVE_CARDS';
export const SHUFFLE_CARDS = 'SHUFFLE_CARDS';
export const FLIP_CARD = 'FLIP_CARD';
export const UNDO_MOVE = 'UNDO_MOVE';
export const REDO_MOVE = 'REDO_MOVE';
export const CLEAR_UNDO_HISTORY = 'CLEAR_UNDO_HISTORY';
export function clearHistory () {
return {
type: CLEAR_UNDO_HISTORY
};
}
export function shuffleCards () {
return {
type: SHUFFLE_CARDS
};
}
export function moveCards (cards, destination) {
if (!Array.isArray(cards)) {
cards = [cards];
}
return {
type: MOVE_CARDS,
cards,
destination
};
}
export function flipCard (card) {
return {
type: FLIP_CARD,
card
};
}
export function undoMove () {
return {
type: UNDO_MOVE
};
}
export function redoMove () {
return {
type: REDO_MOVE
};
}
================================================
FILE: src/actions/dragdrop.js
================================================
import ReactDOM from 'react-dom';
export const DRAGDROP_BEGIN_DRAG = 'DRAGDROP_BEGIN_DRAG';
export const DRAGDROP_END_DRAG = 'DRAGDROP_END_DRAG';
export function beginDrag (cards) {
let origins = cards.map((elem) => {
return ReactDOM.findDOMNode(elem);
});
return {
type: DRAGDROP_BEGIN_DRAG,
cards,
origins
};
}
export function endDrag () {
return {
type: DRAGDROP_END_DRAG
};
}
================================================
FILE: src/components/AceArea/index.js
================================================
/* eslint-disable no-unused-vars*/
import React, {Component, PropTypes } from 'react';
/* eslint-enable no-unused-vars*/
import styles from './styles';
const AceArea = ({children}) => (
{children}
);
export default AceArea;
================================================
FILE: src/components/AceArea/styles/index.js
================================================
export default require('./styles.scss').styles;
================================================
FILE: src/components/AceArea/styles/styles.scss
================================================
/* AceArea styles */
:local(.styles) {
display: inline-block;
position: absolute;
left: 48%;
top: 11%;
width: 45%;
max-width: 45%;
display: flex;
justify-content: space-between;
& div.droppable {
top: 1%;
}
}
================================================
FILE: src/components/ButtonsPanel/index.js
================================================
/* eslint-disable no-unused-vars*/
import React, { Component, PropTypes } from 'react';
/* eslint-enable no-unused-vars*/
import GameButton from '../../components/GameButton/';
const propTypes = {
handleRedoButtonClick: PropTypes.func.isRequired,
handleUndoButtonClick: PropTypes.func.isRequired,
doWinAnimation: PropTypes.func.isRequired,
handleDealButtonClick: PropTypes.func.isRequired,
canUndo: PropTypes.bool,
canRedo: PropTypes.bool
};
const ButtonsPanel = ({handleRedoButtonClick,
handleUndoButtonClick,
doWinAnimation,
canUndo,
canRedo,
handleDealButtonClick}) => (
{'Redo!'}
{'Undo!'}
{/*
{'Win!'}
*/}
{'Deal!'}
);
ButtonsPanel.propTypes = propTypes;
export default ButtonsPanel;
================================================
FILE: src/components/Card/index.js
================================================
/* eslint-disable no-unused-vars*/
import React, { Component, PropTypes } from 'react';
/* eslint-enable no-unused-vars*/
/* Styles */
import cssStyles from './styles/';
const cardStyle = cssStyles.styles || '';
const unflippedStyle = cssStyles.unflipped || '';
const flippedStyle = cssStyles.flipped || '';
//
const propTypes = {
name: PropTypes.string.isRequired,
offsetLeft: PropTypes.number,
offsetTop: PropTypes.number,
offsetWidth: PropTypes.number.isRequired,
offsetHeight: PropTypes.number.isRequired,
flipped: PropTypes.bool.isRequired,
handleBeginDragDrop: PropTypes.func.isRequired,
onMouseDown: PropTypes.func, // For overriding a MouseDown handler
onTouchStart: PropTypes.func, // For overriding a TouchStart handler
onTouchTap: PropTypes.func,
onDoubleClick: PropTypes.func
};
class Card extends Component {
constructor (props) {
super(props);
}
shouldComponentUpdate (nextProps, nextState) {
let { props } = this;
let oldPropKeys = Object.keys(props);
let newPropKeys = Object.keys(nextProps);
if (oldPropKeys.length !== newPropKeys.length) {
return true;
}
return !oldPropKeys.every(prop => {
return props[prop].toString() === nextProps[prop].toString();
});
}
render () {
let {
name,
flipped,
offsetLeft = 0,
offsetTop = 0,
offsetWidth = 0,
offsetHeight = 0
} = this.props;
let className = cardStyle + ' ';
className += (flipped)
? flippedStyle
: unflippedStyle;
return (
this.props.handleBeginDragDrop(e, this))}
onTouchStart={this.props.onTouchStart || ((e) => this.props.handleBeginDragDrop(e.changedTouches[0], this))}
onTouchTap={this.props.onTouchTap}
onDoubleClick={this.props.onDoubleClick}
/>
);
}
}
Card.propTypes = propTypes;
export default Card;
================================================
FILE: src/components/Card/styles/index.js
================================================
import * as css from './styles.scss';
export default css;
================================================
FILE: src/components/Card/styles/styles.scss
================================================
/* Card styles */
/* .styles are always applied to the card */
:local(.styles) {
}
/* .unflipped for when a card is not flipped (face up)*/
:local(.unflipped) {
}
/* .flipped for when a card is flipped (face down)*/
:local(.flipped) {
/* These styles display when a card is flipped */
background: url('../../../../dist/cardback.png') no-repeat center center !important;
background-size: cover !important;
border-radius: 10px;
}
================================================
FILE: src/components/DealArea/index.js
================================================
import React, {Component, PropTypes } from 'react';
import styles from './styles';
const DISPLAY_NAME = '
';
const FLIP_AT_A_TIME = 3;
const propTypes = {
faceUp: PropTypes.array.isRequired,
faceDown: PropTypes.array.isRequired,
getAvailableMoves: PropTypes.func.isRequired,
moveCards: PropTypes.func.isRequired
};
class DealArea extends Component {
constructor (props) {
super(props);
let ownFuncs = [
'handleMouseDown', 'handleDoubleClick',
'handleTouchTap', 'handleTouchStart'
];
ownFuncs.forEach((elem) => {
if (!this[elem]) {
console.error(`Attempt to self-bind \'${elem}\' to ${DISPLAY_NAME} failed`);
return;
}
this[elem] = this[elem].bind(this);
});
}
shouldComponentUpdate (nextProps, nextState) {
let { faceUp: oldFaceUp, faceDown: oldFaceDown } = this.props;
let { faceUp: newFaceUp, faceDown: newFaceDown } = nextProps;
return oldFaceUp.length !== newFaceUp.length || oldFaceDown.length !== newFaceDown.length;
}
handleTouchTap (e) {
e.preventDefault();
this.handleDoubleClick(e);
}
handleMouseDown (e) {
// Called when the top of is clicked
let { faceDown: children } = this.props;
let childRefName = 'child-' + (children.length - 1);
let lastChild = this.refs[childRefName];
if (!lastChild) {
let { moveCards, faceUp } = this.props;
let toMove = faceUp.reverse().map((card) => {
return {
name: card.props.name,
flipped: true
};
});
moveCards(toMove, 'DEAL-AREA-FACEDOWN');
return;
}
let { flipped } = lastChild.props;
if (flipped) {
// If the card is face down, flip the top three cards off the stack and move to FACEUP
let { moveCards } = this.props;
let toMove = children.slice(-FLIP_AT_A_TIME).reverse().map((card) => {
let { name } = card.props;
return {
name,
flipped: false
};
});
moveCards(toMove, 'DEAL-AREA-FACEUP');
}
}
handleDoubleClick (e) {
let { getAvailableMoves } = this.props;
let clickedCardName = e.target.id;
let canMoveTo = getAvailableMoves(clickedCardName, 1);
if (canMoveTo.length) {
let { moveCards } = this.props;
moveCards({
name: clickedCardName,
flipped: false
}, canMoveTo[0]);
}
}
handleTouchStart (e) {
e.preventDefault();
let touchObj = e.changedTouches[0];
if (touchObj) {
this.handleMouseDown(touchObj);
}
}
render () {
let { faceUp, faceDown, offsetWidth, offsetHeight } = this.props;
let faceUpHooked;
if (!faceUp.length) {
faceUpHooked = [];
} else {
let { length: len } = faceUp;
let index = 0;
let noopHandlers = {
onMouseDown: (e) => false,
onTouchStart: (e) => false
};
faceUpHooked = React.Children.map(faceUp, (child) => {
// Add refs to all children and an onMouseDown handler to the last child
// Disable mouseDown on all cards except the top one
// Reposition cards so we always see three
let thisIndex = index++;
switch (thisIndex) {
case len - 2:
return React.cloneElement(child, {
offsetLeft: offsetWidth * 0.15,
...noopHandlers
});
case len - 1:
return React.cloneElement(child, {
offsetLeft: offsetWidth * 0.30,
onDoubleClick: this.handleDoubleClick,
onTouchTap: this.handleTouchTap
});
default:
return React.cloneElement(child, {
offsetLeft: 0,
...noopHandlers
});
}
});
}
let faceDownHooked;
if (!faceDown.length) {
faceDownHooked = (
);
} else {
let index = 0;
faceDownHooked = React.Children.map(faceDown, (child) => {
// Add refs to all children and an onMouseDown handler to the last child
if (index !== faceDown.length - 1) {
return React.cloneElement(child, {
ref: 'child-' + (index++)
});
}
return React.cloneElement(child, {
onMouseDown: this.handleMouseDown,
onTouchStart: this.handleTouchStart,
ref: 'child-' + (index++)
});
});
}
let leftOffsetWidth = (faceDownHooked.length)
? offsetWidth + 'px'
: '50%';
return (
{faceDownHooked}
{faceUpHooked}
);
}
}
DealArea.propTypes = propTypes;
export default DealArea;
================================================
FILE: src/components/DealArea/styles/index.js
================================================
export default require('./styles.scss').styles;
================================================
FILE: src/components/DealArea/styles/styles.scss
================================================
/* DealArea styles */
:local(.styles) {
position: absolute;
width: 28.5%;
left: 8%;
top: 10%;
border: 2px solid white;
padding: 0.5% 4% 0.5% 0.5%;
& div.reset {
width: 100%;
height: 100%;
}
& span#left {
position: relative;
padding: 0;
float: left;
}
& span#right {
position: relative;
display: inline-block;
padding: 0;
float: right;
}
}
================================================
FILE: src/components/DroppableStack/index.js
================================================
import React, { Component, PropTypes } from 'react';
/* Styles */
import styles from './styles/';
import cardUtils from '../../constants/cardUtils';
const DISPLAY_NAME = '';
const propTypes = {
stackName: PropTypes.string.isRequired,
index: PropTypes.number,
offsetWidth: PropTypes.number,
offsetHeight: PropTypes.number,
handleBeginDragDrop: PropTypes.func.isRequired,
getAvailableMoves: PropTypes.func.isRequired,
moveCards: PropTypes.func.isRequired,
flipCard: PropTypes.func.isRequired
};
class DroppableStack extends Component {
constructor (props) {
super(props);
let ownFuncs = [
'checkGoodDrop', 'handleStackDrop', 'handleAceDrop', 'handleTouchTap',
'shouldComponentUpdate', 'handleMouseDown', 'handleTouchStart', 'handleDoubleClick'
];
ownFuncs.forEach((elem) => {
if (!this[elem]) {
console.error(`Attempt to self-bind \'${elem}\' to ${DISPLAY_NAME} failed`);
return;
}
this[elem] = this[elem].bind(this);
});
}
handleAceDrop (card) {
let numChildren = this.props.children.length;
let cardValue = cardUtils.getCardValue(card);
let cardSuit = cardUtils.getCardSuit(card);
if (cardValue === (numChildren + 1)) {
if (numChildren > 0) {
let firstChild = this.props.children[0];
let stackSuit = cardUtils.getCardSuit({name: firstChild.props.name});
return (stackSuit === cardSuit);
} else {
return (cardValue === 1);
}
}
return false;
}
handleStackDrop (card) {
let numChildren = this.props.children.length;
let cardValue = cardUtils.getCardValue(card);
let cardColor = cardUtils.getCardColor(card);
if (numChildren > 0) {
let { children } = this.props;
let lastChild = children[children.length - 1];
let stackCard = {name: lastChild.props.name};
let stackValue = cardUtils.getCardValue(stackCard);
let stackColor = cardUtils.getCardColor(stackCard);
return ((stackColor !== cardColor) && (stackValue === (cardValue + 1)));
} else {
return (cardValue === 13);
}
}
checkGoodDrop (cards, numCards) {
// This is called when there is a drop on this droppable from
// return true to accept the drop, false to reject it
let { stackName } = this.props;
if (stackName.indexOf('ACE') >= 0) {
if (numCards > 1) {
return false;
}
return this.handleAceDrop(cards);
}
if (stackName.indexOf('STACK') >= 0) {
return this.handleStackDrop(cards);
}
}
shouldComponentUpdate (nextProps, nextState) {
let { children: oldChildren } = this.props;
let { children: newChildren } = nextProps;
return ((oldChildren.length !== newChildren.length) || (this.props.offsetWidth !== nextProps.offsetWidth) || (oldChildren[oldChildren.length - 1] !== newChildren[newChildren.length - 1]));
}
componentWillReceiveProps (nextProps) {
// When receiving new props, if the facing card is face down,
// then flip it over
let { children: newChildren } = nextProps;
let { children: oldChildren } = this.props;
if ((newChildren.length > 0) && (newChildren.length < oldChildren.length)) {
let lastChild = 'child-' + (newChildren.length - 1);
let child = this.refs[lastChild];
if (child && child.props.flipped) {
let { flipped, name } = child.props;
let { stackName, flipCard } = this.props;
flipCard({
name,
flipped,
location: stackName
});
}
}
}
handleTouchStart (e, childIndex) {
e.preventDefault();
let touchObj = e.changedTouches[0];
if (touchObj) {
this.handleMouseDown(touchObj, childIndex);
}
}
handleMouseDown (e, childIndex) {
let { children } = this.props;
let stackBelowClicked = [];
for (let index = childIndex, len = children.length; index < len; ++index) {
let refName = 'child-' + index;
stackBelowClicked.push(this.refs[refName]);
}
if (stackBelowClicked.length) {
let { handleBeginDragDrop } = this.props;
handleBeginDragDrop(e, stackBelowClicked);
}
}
handleTouchTap (e, childIndex) {
e.preventDefault();
this.handleDoubleClick(e, childIndex);
}
handleDoubleClick (e, childIndex) {
e.preventDefault();
let clickedCardName = e.target.id;
let { children } = this.props;
let numCardsBelowClicked = children.length - childIndex;
let canMoveTo = this.props.getAvailableMoves(clickedCardName, numCardsBelowClicked);
let stackBelowClicked = [];
for (let index = childIndex, len = children.length; index < len; ++index) {
let refName = 'child-' + index;
let child = this.refs[refName];
let { flipped, name } = child.props;
if (flipped) {
return;
}
stackBelowClicked.push({
name,
flipped: false
});
}
if (canMoveTo.length) {
let { moveCards } = this.props;
moveCards(stackBelowClicked, canMoveTo[0]);
}
}
render () {
let { index = 1, stackName, offsetHeight, offsetWidth } = this.props;
index -= 1;
let cardIndex = 0;
let fnWrap = (fn, index) => {
return (e) => {
fn(e, index);
};
};
let children = React.Children.map(this.props.children, (child) => {
return React.cloneElement(child, {
onMouseDown: fnWrap(this.handleMouseDown, cardIndex),
onTouchStart: fnWrap(this.handleTouchStart, cardIndex),
onDoubleClick: fnWrap(this.handleDoubleClick, cardIndex),
onTouchTap: fnWrap(this.handleTouchTap, cardIndex),
ref: 'child-' + (cardIndex++)
});
});
let numChildren = children.length;
if (stackName.indexOf('STACK') >= 0) {
offsetHeight += (numChildren > 2) ? (numChildren - 2) * 15 : 0;
}
return (
{children}
);
}
}
DroppableStack.propTypes = propTypes;
export default DroppableStack;
================================================
FILE: src/components/DroppableStack/styles/index.js
================================================
export default require('./styles.scss').styles;
================================================
FILE: src/components/DroppableStack/styles/styles.scss
================================================
/* DroppableStack styles */
:local(.styles) {
position: relative;
background: #00f;
border-radius: .375em;
user-select: none;
float: left;
margin: 0 auto;
}
================================================
FILE: src/components/GameButton/index.js
================================================
/* eslint-disable no-unused-vars*/
import React, { PropTypes } from 'react';
/* eslint-enable no-unused-vars*/
import styles from './styles/';
const propTypes = {
className: PropTypes.string.isRequired,
float: PropTypes.string.isRequired,
onClick: PropTypes.func.isRequired,
children: PropTypes.node.isRequired,
disabled: PropTypes.bool
};
const GameButton = ({className, float, onClick, children, disabled}) => {
return (
);
};
GameButton.propTypes = propTypes;
export default GameButton;
================================================
FILE: src/components/GameButton/styles/index.js
================================================
export default require('./styles.scss').styles;
================================================
FILE: src/components/GameButton/styles/styles.scss
================================================
/* Button Default Styles from Bootstrap */
:local(.styles) {
margin: 0.5%;
z-index: 20;
&.btn {
display: inline-block;
padding: 6px 12px;
margin-bottom: 0;
font-size: 14px;
font-weight: normal;
line-height: 1.42857143;
text-align: center;
white-space: nowrap;
vertical-align: middle;
-ms-touch-action: manipulation;
touch-action: manipulation;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-image: none;
border: 1px solid transparent;
border-radius: 4px;
}
&.btn:focus,
&.btn:active:focus,
&.btn.active:focus,
&.btn.focus,
&.btn:active.focus,
&.btn.active.focus {
outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
&.btn:hover,
&.btn:focus,
&.btn.focus {
color: #333;
text-decoration: none;
}
&.btn:active,
&.btn.active {
background-image: none;
outline: 0;
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
&.btn.disabled,
&.btn[disabled] {
cursor: not-allowed;
filter: alpha(opacity=65);
-webkit-box-shadow: none;
box-shadow: none;
opacity: .65;
}
&.btn-default {
color: #333;
background-color: #fff;
border-color: #ccc;
}
&.btn-default:focus,
&.btn-default.focus {
color: #333;
background-color: #e6e6e6;
border-color: #8c8c8c;
}
&.btn-default:hover {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
&.btn-default:active,
&.btn-default.active {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
&.btn-default:active:hover,
&.btn-default.active:hover,
&.btn-default:active:focus,
&.btn-default.active:focus,
&.btn-default:active.focus,
&.btn-default.active.focus {
color: #333;
background-color: #d4d4d4;
border-color: #8c8c8c;
}
&.btn-default:active,
&.btn-default.active {
background-image: none;
}
&.btn-default.disabled:hover,
&.btn-default[disabled]:hover,
&.btn-default.disabled:focus,
&.btn-default[disabled]:focus,
&.btn-default.disabled.focus,
&.btn-default[disabled].focus {
background-color: #fff;
border-color: #ccc;
}
&.btn-default .badge {
color: #fff;
background-color: #333;
}
&.btn-primary {
color: #fff;
background-color: #337ab7;
border-color: #2e6da4;
}
&.btn-primary:focus,
&.btn-primary.focus {
color: #fff;
background-color: #286090;
border-color: #122b40;
}
&.btn-primary:hover {
color: #fff;
background-color: #286090;
border-color: #204d74;
}
&.btn-primary:active,
&.btn-primary.active {
color: #fff;
background-color: #286090;
border-color: #204d74;
}
&.btn-primary:active:hover,
&.btn-primary.active:hover,
&.btn-primary:active:focus,
&.btn-primary.active:focus,
&.btn-primary:active.focus,
&.btn-primary.active.focus {
color: #fff;
background-color: #204d74;
border-color: #122b40;
}
&.btn-primary:active,
&.btn-primary.active {
background-image: none;
}
&.btn-primary.disabled:hover,
&.btn-primary[disabled]:hover,
&.btn-primary.disabled:focus,
&.btn-primary[disabled]:focus,
&.btn-primary.disabled.focus,
&.btn-primary[disabled].focus {
background-color: #337ab7;
border-color: #2e6da4;
}
&.btn-primary .badge {
color: #337ab7;
background-color: #fff;
}
&.btn-success {
color: #fff;
background-color: #5cb85c;
border-color: #4cae4c;
}
&.btn-success:focus,
&.btn-success.focus {
color: #fff;
background-color: #449d44;
border-color: #255625;
}
&.btn-success:hover {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
&.btn-success:active,
&.btn-success.active,
&.open > .dropdown-toggle.btn-success {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
&.btn-success:active:hover,
&.btn-success.active:hover,
&.open > .dropdown-toggle.btn-success:hover,
&.btn-success:active:focus,
&.btn-success.active:focus,
&.open > .dropdown-toggle.btn-success:focus,
&.btn-success:active.focus,
&.btn-success.active.focus,
&.open > .dropdown-toggle.btn-success.focus {
color: #fff;
background-color: #398439;
border-color: #255625;
}
&.btn-success:active,
&.btn-success.active {
background-image: none;
}
&.btn-success.disabled:hover,
&.btn-success[disabled]:hover,
&.btn-success.disabled:focus,
&.btn-success[disabled]:focus,
&.btn-success.disabled.focus,
&.btn-success[disabled].focus {
background-color: #5cb85c;
border-color: #4cae4c;
}
&.btn-success .badge {
color: #5cb85c;
background-color: #fff;
}
}
================================================
FILE: src/components/LoadSpinner/index.js
================================================
/* eslint-disable no-unused-vars*/
import React, { Component, PropTypes } from 'react';
/* eslint-enable no-unused-vars*/
import styles from './styles/';
const LoadSpinner = () => (
);
export default LoadSpinner;
================================================
FILE: src/components/LoadSpinner/styles/index.js
================================================
export default require('./styles.scss').styles;
================================================
FILE: src/components/LoadSpinner/styles/styles.scss
================================================
/* LoadingText styles */
:local(.styles) {
.overlay-loader {
display: block;
margin: auto;
width: 97px;
height: 97px;
position: relative;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
.loader {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
width: 97px;
height: 97px;
animation-name: rotateAnim;
-o-animation-name: rotateAnim;
-ms-animation-name: rotateAnim;
-webkit-animation-name: rotateAnim;
-moz-animation-name: rotateAnim;
animation-duration: 0.4s;
-o-animation-duration: 0.4s;
-ms-animation-duration: 0.4s;
-webkit-animation-duration: 0.4s;
-moz-animation-duration: 0.4s;
animation-iteration-count: infinite;
-o-animation-iteration-count: infinite;
-ms-animation-iteration-count: infinite;
-webkit-animation-iteration-count: infinite;
-moz-animation-iteration-count: infinite;
animation-timing-function: linear;
-o-animation-timing-function: linear;
-ms-animation-timing-function: linear;
-webkit-animation-timing-function: linear;
-moz-animation-timing-function: linear;
}
.loader div {
width: 8px;
height: 8px;
border-radius: 50%;
border: 1px solid rgb(0,0,0);
position: absolute;
top: 2px;
left: 0;
right: 0;
bottom: 0;
margin: auto;
}
.loader div:nth-child(odd) {
border-top: none;
border-left: none;
}
.loader div:nth-child(even) {
border-bottom: none;
border-right: none;
}
.loader div:nth-child(2) {
border-width: 2px;
left: 0px;
top: -4px;
width: 12px;
height: 12px;
}
.loader div:nth-child(3) {
border-width: 2px;
left: -1px;
top: 3px;
width: 18px;
height: 18px;
}
.loader div:nth-child(4) {
border-width: 3px;
left: -1px;
top: -4px;
width: 23px;
height: 23px;
}
.loader div:nth-child(5) {
border-width: 3px;
left: -1px;
top: 4px;
width: 31px;
height: 31px;
}
.loader div:nth-child(6) {
border-width: 4px;
left: 0px;
top: -4px;
width: 39px;
height: 39px;
}
.loader div:nth-child(7) {
border-width: 4px;
left: 0px;
top: 6px;
width: 49px;
height: 49px;
}
@keyframes rotateAnim {
from {
transform: rotate(360deg);
}
to {
transform: rotate(0deg);
}
}
@-o-keyframes rotateAnim {
from {
-o-transform: rotate(360deg);
}
to {
-o-transform: rotate(0deg);
}
}
@-ms-keyframes rotateAnim {
from {
-ms-transform: rotate(360deg);
}
to {
-ms-transform: rotate(0deg);
}
}
@-webkit-keyframes rotateAnim {
from {
-webkit-transform: rotate(360deg);
}
to {
-webkit-transform: rotate(0deg);
}
}
@-moz-keyframes rotateAnim {
from {
-moz-transform: rotate(360deg);
}
to {
-moz-transform: rotate(0deg);
}
}
}
================================================
FILE: src/components/LowerArea/index.js
================================================
/* eslint-disable no-unused-vars*/
import React, { Component, PropTypes } from 'react';
/* eslint-enable no-unused-vars*/
import styles from './styles/';
const propTypes = {
children: PropTypes.node.isRequired
};
class LowerArea extends Component {
render () {
let { children } = this.props;
return (
{children}
);
}
}
LowerArea.propTypes = propTypes;
export default LowerArea;
================================================
FILE: src/components/LowerArea/styles/index.js
================================================
export default require('./styles.scss').styles;
================================================
FILE: src/components/LowerArea/styles/styles.scss
================================================
/* LowerArea styles */
:local(.styles) {
position: absolute;
width: 85%;
max-width: 85%;
left: 7.5%;
top: 50%;
user-select: none;
display: flex;
justify-content: space-between;
@media screen and (max-width: 768px) {
& {
top: 40%;
}
}
@media screen and (max-width: 480px) {
& {
top: 30%;
}
}
}
================================================
FILE: src/components/Table/index.js
================================================
/* eslint-disable no-unused-vars*/
import React, { Component, PropTypes } from 'react';
/* eslint-enable no-unused-vars*/
/* TouchTap event injection */
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();
//
/* Styles */
import styles from './styles/';
/* Co-Components */
import DealArea from '../../components/DealArea/';
import AceArea from '../../components/AceArea/';
import LowerArea from '../../components/LowerArea/';
import Card from '../../components/Card/';
import DroppableStack from '../../components/DroppableStack/';
import ButtonsPanel from '../../components/ButtonsPanel/';
import LoadSpinner from '../../components/LoadSpinner/';
const DISPLAY_NAME = '';
const CARD_Y_DISTANCE = 15;
const propTypes = {
// Two slices of state from redux
dragdrop: PropTypes.object.isRequired,
cards: PropTypes.array.isRequired,
// Dragdrop actionCreators
beginDrag: PropTypes.func.isRequired,
endDrag: PropTypes.func.isRequired,
// Card actionCreators
moveCards: PropTypes.func.isRequired,
shuffleCards: PropTypes.func.isRequired,
flipCard: PropTypes.func.isRequired,
// redux-undo actionCreators
undoMove: PropTypes.func.isRequired,
redoMove: PropTypes.func.isRequired,
canUndo: PropTypes.bool,
canRedo: PropTypes.bool
};
class Table extends Component {
constructor (props) {
super(props);
let ownFuncs = [
'handleMouseUp', 'handleMouseMove',
'handleBeginDragDrop', 'handleEndDragDrop',
'handleCardFlip', 'handleResize', 'handleKeyUp',
'handleDealButtonClick', 'handleUndoButtonClick', 'handleRedoButtonClick',
'handleTouchEnd', 'handleTouchMove',
'getOffsetFromTable', 'getCardDimensions', 'getAvailableMoves',
'cardSlice', 'cardLocate', 'createRow', 'dealCards',
'checkGameWon', 'doWinAnimation'
];
ownFuncs.forEach((elem) => {
if (!this[elem]) {
console.error(`Attempt to self-bind \'${elem}\' to ${DISPLAY_NAME} failed`);
return;
}
this[elem] = this[elem].bind(this);
});
this.state = {
loading: true,
redeal: false
};
}
getOffsetFromTable (elem) {
if (!elem || !elem.parentNode) {
return {x: 0, y: 0};
}
let tableElem = document.getElementById('table');
let offset = { x: tableElem.offsetLeft - tableElem.scrollLeft,
y: tableElem.offsetTop - tableElem.scrollTop };
for (let node = elem.parentNode; node.id !== 'table'; node = node.parentNode) {
offset.x += node.offsetLeft;
offset.y += node.offsetTop;
}
return offset;
}
getAvailableMoves (cardName, numCards) {
return Object.keys(this.refs).filter((key, index) => {
let stack = this.refs[key];
return stack.checkGoodDrop({name: cardName}, numCards);
});
}
handleResize (e) {
this.setState({
loading: true,
width: document.getElementById('table').clientWidth
}, () => {
setTimeout(() => this.setState({loading: false}), 0);
});
}
handleCardFlip (card) {
let { flipCard } = this.props;
flipCard(card);
}
handleRedoButtonClick (e) {
let { redoMove } = this.props;
redoMove();
}
handleUndoButtonClick (e) {
let { undoMove } = this.props;
undoMove();
}
handleDealButtonClick (e) {
this.props.clearHistory();
this.dealCards();
}
handleMouseUp (e) {
let { isDragging } = this.props.dragdrop;
if (isDragging) {
this.handleEndDragDrop(e);
}
}
handleTouchMove (e) {
let { isDragging } = this.props.dragdrop;
if (isDragging) {
e.preventDefault();
let touchObj = e.changedTouches[0];
if (touchObj) {
this.handleMouseMove(touchObj);
}
}
}
handleTouchEnd (e) {
let touchObj = e.changedTouches[0];
if (touchObj) {
this.handleMouseUp(touchObj);
}
}
handleBeginDragDrop (e, cards) {
cards = (Array.isArray(cards)) ? cards : [cards];
let { isDragging } = this.props.dragdrop;
let isFlipped = cards[0].props.flipped; // Don't drag face down cards
if (!isDragging && !isFlipped) {
let { beginDrag } = this.props;
beginDrag(cards);
}
}
handleEndDragDrop (e) {
let { endDrag, dragdrop } = this.props;
let { dragNodes, dragCards } = dragdrop;
let { pageX, pageY } = e;
let tableDroppables = [].slice.call(document.querySelectorAll('#lowerArea > .droppable'));
let aceDroppables = [].slice.call(document.querySelectorAll('#aceArea > .droppable'));
function pointInsideRect (rX, rY, width, height, ptX, ptY) {
let left = rX;
let right = rX + width;
let top = rY;
let bottom = rY + height;
return (((left < ptX) && (ptX < right)) && ((top < ptY) && (ptY < bottom)));
}
let dropCheck = (stackName) => {
return (elem, index) => {
// Check for a successful drop
let offset = this.getOffsetFromTable(elem);
let left = elem.offsetLeft + offset.x;
let top = elem.offsetTop + offset.y;
if (pointInsideRect(left, top,
elem.offsetWidth, elem.offsetHeight,
pageX, pageY)) {
// Collision, check if drop is acceptable
let toStack = stackName + '-' + (index + 1);
let droppedOn = this.refs[toStack];
let testCard = {
name: dragCards[0].props.name,
flipped: false
};
if (droppedOn.checkGoodDrop(testCard, dragCards.length)) {
// Successful drop!
let { moveCards } = this.props;
let toMove = dragCards.map((card) => {
let dropCard = {
name: card.props.name,
flipped: false
};
return dropCard;
});
moveCards(toMove, toStack);
return true;
}
return false;
}
return false;
};
};
let dropped = tableDroppables.some(dropCheck('STACK')) ||
aceDroppables.some(dropCheck('ACE'));
if (!dropped) {
// Snap back if not dropped
let { dragOrigins } = dragdrop;
dragNodes.forEach((node, index) => {
node.style.left = dragOrigins[index].x + 'px';
node.style.top = dragOrigins[index].y + 'px';
});
}
dragNodes.forEach((node, index) => {
node.style.zIndex = '10';
});
endDrag();
}
handleMouseMove (e) {
let { isDragging, dragNodes } = this.props.dragdrop;
if (isDragging) {
let { pageX, pageY } = e;
dragNodes.forEach((node, index) => {
let offset = this.getOffsetFromTable(node);
let elemLeft = pageX - offset.x;
let elemTop = pageY - offset.y;
let off = { x: elemLeft - (node.offsetWidth / 2),
y: (elemTop - (node.offsetHeight / 2)) + index * CARD_Y_DISTANCE};
node.style.left = off.x + 'px';
node.style.top = off.y + 'px';
// Dragging Card should appear above everything else
node.style.zIndex = '' + (100 + index);
});
}
}
createRow (namePrefix, numCols, cardsXOffset = 0, cardsYOffset = 0, offsetWidth = 0, offsetHeight = 0) {
let row = [];
for (let index = 0; index < numCols; ++index) {
let stackName = namePrefix + '-' + (index + 1);
let { offsetWidth: cardWidth, offsetHeight: cardHeight } = this.getCardDimensions();
offsetWidth = offsetWidth || cardWidth;
offsetHeight = offsetHeight || cardHeight;
let stackChildren = this.cardSlice(stackName, cardsXOffset, cardsYOffset, offsetWidth, offsetHeight);
row.push(
{stackChildren}
);
}
return row;
}
cardLocate (location) {
function locationFilter (location) {
return function (elem) {
return (elem.location === location);
};
}
return locationFilter(location);
}
cardSlice (location, offsetLeft = 0, offsetTop = 0, offsetWidth = 0, offsetHeight = 0) {
let cardMap = (offsetLeft = 0, offsetTop = 0, offsetWidth = 0, offsetHeight = 0) => {
return (card, index) => {
return (
);
};
};
let { cards } = this.props;
let { offsetWidth: cardWidth, offsetHeight: cardHeight } = this.getCardDimensions();
offsetWidth = offsetWidth || cardWidth;
offsetHeight = offsetHeight || cardHeight;
return cards
.filter(this.cardLocate(location))
.map(cardMap(offsetLeft, offsetTop, offsetWidth, offsetHeight));
}
dealCards () {
this.setState({
redeal: true
});
}
checkGameWon () {
let { cards } = this.props;
return cards.every((elem) => {
return (elem.location.indexOf('ACE') >= 0);
});
}
doWinAnimation () {
let cards = [].slice.call(document.querySelectorAll('div[id*="-of-"]'));
console.log('Wow you won!');
let height = document.body.clientHeight;
let moveAllOverAnimation = (card) => {
let { offsetWidth, offsetHeight } = this.getCardDimensions();
let { x, y } = this.getOffsetFromTable(card);
let randomWithinWidth = Math.floor(Math.random() * this.state.width) - x - (offsetWidth / 2);
let randomWithinHeight = Math.floor(Math.random() * height) - y - (offsetHeight / 2);
card.style.left = randomWithinWidth + 'px';
card.style.top = randomWithinHeight + 'px';
card.style.transition = 'top 1s ease-in-out, left 1s ease-in-out';
};
function debounce (func, wait, immediate) {
let timeout;
return function (...args) {
let later = () => {
timeout = null;
func.apply(this, args);
};
let callNow = immediate && !timeout;
clearTimeout(timeout);
timeout = setTimeout(later, wait);
if (callNow) func.apply(this, args);
};
}
let tableElem = document.getElementById('table');
tableElem.style.overflow = 'visible';
document.documentElement.style.overflow = 'hidden';
let timeout = 2000;
let useAnimation = moveAllOverAnimation;
let step = debounce((timestamp) => {
cards.forEach(useAnimation);
window.requestAnimationFrame(step);
}, timeout, true);
window.requestAnimationFrame(step);
}
componentDidMount () {
this.setState({
redeal: true,
width: document.getElementById('table').clientWidth
}, () => {
setTimeout(() => this.setState({loading: false}), 0);
});
window.addEventListener('resize', this.handleResize);
document.addEventListener('keyup', this.handleKeyUp);
}
handleKeyUp (e) {
if (e.ctrlKey && e.keyCode === 'Z'.charCodeAt(0)) {
this.handleUndoButtonClick();
} else if (e.ctrlKey && e.keyCode === 'Y'.charCodeAt(0)) {
this.handleRedoButtonClick();
}
}
componentDidUpdate (prevProps, prevState) {
if (this.state.redeal) {
let { shuffleCards } = this.props;
shuffleCards();
this.setState({
redeal: false
});
} else if (this.checkGameWon()) {
this.doWinAnimation();
}
}
getCardDimensions () {
// 7.5% padding on left, 7.5% padding on right, 85% in the middle
// cards should take up 11% of the table with 1.14% padding between
const CARD_WIDTH = 222.77;
const CARD_HEIGHT = 323.551;
const ASPECT = CARD_HEIGHT / CARD_WIDTH;
let { width } = this.state;
let offsetWidth = Math.floor(width * 0.11);
let offsetHeight = ASPECT * offsetWidth;
return { offsetWidth, offsetHeight };
}
render () {
if (this.state.loading) {
return (
);
}
// calculations
let tableWidth = this.state.width || 800;
let { offsetWidth: droppableWidth, offsetHeight: droppableHeight } = this.getCardDimensions();
// renderables
let sevenDroppableStacks = this.createRow('STACK', 7, 0, CARD_Y_DISTANCE);
let aceDroppableStacks = this.createRow('ACE', 4);
let dealAreaFaceDownCards = this.cardSlice('DEAL-AREA-FACEDOWN', tableWidth * 0.004);
let dealAreaFaceUpCards = this.cardSlice('DEAL-AREA-FACEUP');
let tableCards = this.cardSlice('TABLE');
return (
{aceDroppableStacks}
{sevenDroppableStacks}
{/* tableCards are rendered for testing */}
{tableCards}
);
}
}
Table.propTypes = propTypes;
export default Table;
================================================
FILE: src/components/Table/styles/index.js
================================================
export default require('./styles.scss').styles;
================================================
FILE: src/components/Table/styles/styles.scss
================================================
/* Table styles */
:local(.styles) {
position: relative;
max-width: 95%;
height: 100%;
margin: 0 auto;
user-select: none;
background: url('../../../../dist/table-background.png') no-repeat local center;
background-size: 100% 100%;
overflow-x: hidden;
overflow-y: auto;
/* Deck styles */
& div[id*='-of-'] {
position: absolute;
padding: .5px;
margin: 0;
display: inline-block;
border-radius: .375em;
background-repeat: no-repeat;
background-size: 100% !important;
}
& #ace-of-clubs {
background: url('../../../../dist/cards/ace_of_clubs.svg');
}
& #two-of-clubs {
background: url('../../../../dist/cards/2_of_clubs.svg');
}
& #three-of-clubs {
background: url('../../../../dist/cards/3_of_clubs.svg');
}
& #four-of-clubs {
background: url('../../../../dist/cards/4_of_clubs.svg');
}
& #five-of-clubs {
background: url('../../../../dist/cards/5_of_clubs.svg');
}
& #six-of-clubs {
background: url('../../../../dist/cards/6_of_clubs.svg');
}
& #seven-of-clubs {
background: url('../../../../dist/cards/7_of_clubs.svg');
}
& #eight-of-clubs {
background: url('../../../../dist/cards/8_of_clubs.svg');
}
& #nine-of-clubs {
background: url('../../../../dist/cards/9_of_clubs.svg');
}
& #ten-of-clubs {
background: url('../../../../dist/cards/10_of_clubs.svg');
}
& #jack-of-clubs {
background: url('../../../../dist/cards/jack_of_clubs.svg');
}
& #queen-of-clubs {
background: url('../../../../dist/cards/queen_of_clubs.svg');
}
& #king-of-clubs {
background: url('../../../../dist/cards/king_of_clubs.svg');
}
& #ace-of-spades {
background: url('../../../../dist/cards/ace_of_spades.svg');
}
& #two-of-spades {
background: url('../../../../dist/cards/2_of_spades.svg');
}
& #three-of-spades {
background: url('../../../../dist/cards/3_of_spades.svg');
}
& #four-of-spades {
background: url('../../../../dist/cards/4_of_spades.svg');
}
& #five-of-spades {
background: url('../../../../dist/cards/5_of_spades.svg');
}
& #six-of-spades {
background: url('../../../../dist/cards/6_of_spades.svg');
}
& #seven-of-spades {
background: url('../../../../dist/cards/7_of_spades.svg');
}
& #eight-of-spades {
background: url('../../../../dist/cards/8_of_spades.svg');
}
& #nine-of-spades {
background: url('../../../../dist/cards/9_of_spades.svg');
}
& #ten-of-spades {
background: url('../../../../dist/cards/10_of_spades.svg');
}
& #jack-of-spades {
background: url('../../../../dist/cards/jack_of_spades.svg');
}
& #queen-of-spades {
background: url('../../../../dist/cards/queen_of_spades.svg');
}
& #king-of-spades {
background: url('../../../../dist/cards/king_of_spades.svg');
}
& #ace-of-hearts {
background: url('../../../../dist/cards/ace_of_hearts.svg');
}
& #two-of-hearts {
background: url('../../../../dist/cards/2_of_hearts.svg');
}
& #three-of-hearts {
background: url('../../../../dist/cards/3_of_hearts.svg');
}
& #four-of-hearts {
background: url('../../../../dist/cards/4_of_hearts.svg');
}
& #five-of-hearts {
background: url('../../../../dist/cards/5_of_hearts.svg');
}
& #six-of-hearts {
background: url('../../../../dist/cards/6_of_hearts.svg');
}
& #seven-of-hearts {
background: url('../../../../dist/cards/7_of_hearts.svg');
}
& #eight-of-hearts {
background: url('../../../../dist/cards/8_of_hearts.svg');
}
& #nine-of-hearts {
background: url('../../../../dist/cards/9_of_hearts.svg');
}
& #ten-of-hearts {
background: url('../../../../dist/cards/10_of_hearts.svg');
}
& #jack-of-hearts {
background: url('../../../../dist/cards/jack_of_hearts.svg');
}
& #queen-of-hearts {
background: url('../../../../dist/cards/queen_of_hearts.svg');
}
& #king-of-hearts {
background: url('../../../../dist/cards/king_of_hearts.svg');
}
& #ace-of-diamonds {
background: url('../../../../dist/cards/ace_of_diamonds.svg');
}
& #two-of-diamonds {
background: url('../../../../dist/cards/2_of_diamonds.svg');
}
& #three-of-diamonds {
background: url('../../../../dist/cards/3_of_diamonds.svg');
}
& #four-of-diamonds {
background: url('../../../../dist/cards/4_of_diamonds.svg');
}
& #five-of-diamonds {
background: url('../../../../dist/cards/5_of_diamonds.svg');
}
& #six-of-diamonds {
background: url('../../../../dist/cards/6_of_diamonds.svg');
}
& #seven-of-diamonds {
background: url('../../../../dist/cards/7_of_diamonds.svg');
}
& #eight-of-diamonds {
background: url('../../../../dist/cards/8_of_diamonds.svg');
}
& #nine-of-diamonds {
background: url('../../../../dist/cards/9_of_diamonds.svg');
}
& #ten-of-diamonds {
background: url('../../../../dist/cards/10_of_diamonds.svg');
}
& #jack-of-diamonds {
background: url('../../../../dist/cards/jack_of_diamonds.svg');
}
& #queen-of-diamonds {
background: url('../../../../dist/cards/queen_of_diamonds.svg');
}
& #king-of-diamonds {
background: url('../../../../dist/cards/king_of_diamonds.svg');
}
}
================================================
FILE: src/constants/cardUtils.js
================================================
function getCardSuit (card) {
let { name } = card;
let suit = name.substr(name.lastIndexOf('-') + 1);
return suit;
}
function getCardColor (card) {
let { name } = card;
let suit = name.substr(name.lastIndexOf('-') + 1);
switch (suit) {
case 'hearts':
case 'diamonds':
return 'red';
case 'spades':
case 'clubs':
return 'black';
default:
return 'blank';
}
}
function getCardValue (card) {
let { name } = card;
let value = name.substr(0, name.indexOf('-'));
switch (value) {
case 'ace': return 1;
case 'two': return 2;
case 'three': return 3;
case 'four': return 4;
case 'five': return 5;
case 'six': return 6;
case 'seven': return 7;
case 'eight': return 8;
case 'nine': return 9;
case 'ten': return 10;
case 'jack': return 11;
case 'queen': return 12;
case 'king': return 13;
default: return 0;
}
}
export default { getCardValue, getCardSuit, getCardColor };
================================================
FILE: src/containers/App/index.js
================================================
/* eslint-disable no-unused-vars*/
import React, { Component } from 'react';
/* eslint-enable no-unused-vars*/
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
import * as cardActionCreators from '../../actions/cards';
import * as dragActionCreators from '../../actions/dragdrop';
import Table from '../../components/Table';
import styles from './styles/';
class App extends Component {
constructor (props) {
super(props);
}
render () {
return (
);
}
}
function mapStateToProps (state) {
return {
dragdrop: state.dragdrop,
cards: state.cards.present,
canUndo: !state.cards.past.length,
canRedo: !state.cards.future.length
};
}
function mapDispatchToProps (dispatch) {
let allActionCreators = Object.assign({},
dragActionCreators,
cardActionCreators);
return bindActionCreators(allActionCreators, dispatch);
}
export default connect(mapStateToProps, mapDispatchToProps)(App);
================================================
FILE: src/containers/App/styles/index.js
================================================
export default require('./styles.scss').styles;
================================================
FILE: src/containers/App/styles/styles.scss
================================================
/* Global styles */
:local(.styles) {
& * {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
}
================================================
FILE: src/containers/index.js
================================================
export App from './App';
================================================
FILE: src/index.js
================================================
import 'babel-polyfill';
/* eslint-disable no-unused-vars*/
import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import configureStore from './store/configureStore';
import App from './containers/App/';
/* redux-devtools */
import { DevTools, DebugPanel, LogMonitor } from 'redux-devtools/lib/react';
/* eslint-enable no-unused-vars*/
const store = configureStore();
const Game = () => (
);
const root = document.getElementById('root');
if (root) {
ReactDOM.render(, root);
}
console.log('Runner runner');
export default Game;
================================================
FILE: src/reducers/cards.js
================================================
import { MOVE_CARDS, SHUFFLE_CARDS, FLIP_CARD, UNDO_MOVE, REDO_MOVE, CLEAR_UNDO_HISTORY } from '../actions/cards';
/* Undoable setup */
import undoable, { includeAction } from 'redux-undo';
// Cards state is an array of 52 objects of form {name, location}
function makeDeck () {
let initDeck = () => {
let memo = [];
const suits = ['hearts', 'diamonds', 'clubs', 'spades'];
const values = ['two', 'three', 'four', 'five', 'six', 'seven',
'eight', 'nine', 'ten', 'jack', 'queen', 'king', 'ace'];
suits.forEach((suit) => {
values.forEach((value) => {
let str = value + '-of-' + suit;
memo.push({name: str, location: 'TABLE', flipped: true});
});
});
return memo;
};
let deck = initDeck();
console.log('Using Deck: ', deck);
return deck;
}
const initialState = makeDeck();
function shuffle (array) {
let currentIndex = array.length;
let temporaryValue;
let randomIndex;
// While there remain elements to shuffle...
while (currentIndex !== 0) {
// Pick a remaining element...
randomIndex = Math.floor(Math.random() * currentIndex);
currentIndex -= 1;
// And swap it with the current element.
temporaryValue = array[currentIndex];
array[currentIndex] = array[randomIndex];
array[randomIndex] = temporaryValue;
}
return array;
}
function deal (cards) {
let count = 0;
for (let index = 1; index <= 7; ++index) {
for (let innerIndex = index; innerIndex <= 7; ++innerIndex) {
let card = cards[count++];
card.flipped = (innerIndex !== index);
card.location = 'STACK-' + innerIndex;
}
}
while (count < cards.length) {
let card = cards[count++];
card.flipped = true;
card.location = 'DEAL-AREA-FACEDOWN';
}
return cards;
}
function card (state = initialState, action) {
switch (action.type) {
case SHUFFLE_CARDS:
return deal(shuffle(initialState));
case MOVE_CARDS: {
return [
...state.filter(stateCard => !action.cards.some(card => card.name === stateCard.name)),
...action.cards.map(card => ({
name: card.name,
location: action.destination,
flipped: card.flipped
}))
];
}
case FLIP_CARD: {
return [
...state.filter((elem) => elem.name !== action.card.name), {
name: action.card.name,
location: action.card.location,
flipped: !action.card.flipped
}
];
}
default:
return state;
}
}
let undoConfig = {
filter: includeAction([MOVE_CARDS]),
limit: 128,
undoType: UNDO_MOVE,
redoType: REDO_MOVE,
clearHistoryType: CLEAR_UNDO_HISTORY
};
export default undoable(card, undoConfig);
================================================
FILE: src/reducers/dragdrop.js
================================================
import { DRAGDROP_BEGIN_DRAG, DRAGDROP_END_DRAG } from '../actions/dragdrop';
const initialState = {
isDragging: false,
dragOrigins: [],
dragNodes: [],
dragCards: []
};
export default function dragdrop (state = initialState, action) {
switch (action.type) {
case DRAGDROP_BEGIN_DRAG: {
let dragOrigins = action.origins.map((elem) => {
return { x: elem.offsetLeft,
y: elem.offsetTop };
});
return {
isDragging: true,
dragOrigins,
dragNodes: action.origins,
dragCards: action.cards
};
}
case DRAGDROP_END_DRAG: {
return initialState;
}
default:
return state;
}
}
================================================
FILE: src/reducers/index.js
================================================
import { combineReducers } from 'redux';
import dragdrop from './dragdrop';
import cards from './cards';
const rootReducer = combineReducers({
dragdrop,
cards
});
export default rootReducer;
================================================
FILE: src/store/configureStore.js
================================================
import { compose, createStore, applyMiddleware } from 'redux';
import thunkMiddleware from 'redux-thunk';
import createLogger from 'redux-logger';
import { devTools } from 'redux-devtools';
import rootReducer from '../reducers';
const logger = createLogger({collapsed: true});
const createStoreWithMiddleware = compose(
applyMiddleware(
thunkMiddleware,
logger
),
devTools()
)(createStore);
export default function configureStore (initialState) {
const store = createStoreWithMiddleware(rootReducer, initialState);
if (module.hot) {
module.hot.accept('../reducers', () => {
const nextRootReducer = require('../reducers');
store.replaceReducer(nextRootReducer);
});
}
return store;
}
================================================
FILE: src/tests/.babelrc
================================================
{
"presets": [ "es2015", "react" ],
"sourceMaps": true
}
================================================
FILE: src/tests/AceArea.spec.js
================================================
/* eslint-disable no-unused-vars*/
const React = require('react');
/* eslint-enable no-unused-vars*/
const Unexpected = require('unexpected');
const UnexpectedReact = require('unexpected-react');
const TestUtils = require('react-addons-test-utils');
const expect = Unexpected.clone()
.use(UnexpectedReact);
const AceArea = require('../components/AceArea/').default;
describe('AceArea', () => {
let renderer;
beforeEach(() => {
renderer = TestUtils.createRenderer();
renderer.render(
);
});
it('should be a function', () => {
return expect(AceArea, 'to be a', 'function');
});
it('should render a ReactElement', () => {
let result = renderer.getRenderOutput();
return expect(TestUtils.isElement(result), 'to be ok');
});
it('should render a container with id aceArea', () => {
return expect(renderer, 'to have rendered', );
});
it('should render its children', () => {
let result = renderer.getRenderOutput();
return expect(result.props.children, 'to have length', 4);
});
});
================================================
FILE: src/tests/Card.spec.js
================================================
/* eslint-disable no-unused-vars*/
const React = require('react');
/* eslint-enable no-unused-vars*/
const Unexpected = require('unexpected');
const UnexpectedReact = require('unexpected-react');
const TestUtils = require('react-addons-test-utils');
const expect = Unexpected.clone()
.use(UnexpectedReact);
const Card = require('../components/Card/').default;
describe('Card', () => {
let renderer;
beforeEach(() => {
renderer = TestUtils.createRenderer();
renderer.render(
);
});
it('should be a function', () => {
expect(Card, 'to be a', 'function');
});
it('should render a ReactElement', () => {
let result = renderer.getRenderOutput();
return expect(TestUtils.isElement(result), 'to be ok');
});
it('should be positioned with inline style', () => {
return expect(renderer, 'to have rendered',
);
});
it('should render a king of hearts', () => {
return expect(renderer, 'to have rendered', );
});
});
================================================
FILE: src/tests/DealArea.spec.js
================================================
/* eslint-disable no-unused-vars*/
const React = require('react');
/* eslint-enable no-unused-vars*/
const Unexpected = require('unexpected');
const UnexpectedReact = require('unexpected-react');
const TestUtils = require('react-addons-test-utils');
const expect = Unexpected.clone()
.use(UnexpectedReact);
const DealArea = require('../components/DealArea/').default;
describe('DealArea', () => {
let renderer;
beforeEach(() => {
renderer = TestUtils.createRenderer();
renderer.render(
);
});
it('should be a function', () => {
return expect(DealArea, 'to be a', 'function');
});
it('should render a left and right container', () => {
return expect(renderer, 'to have rendered',
);
});
it('should have imported styles', () => {
let result = renderer.getRenderOutput();
return expect(result.props.className, 'to be', undefined);
});
});
================================================
FILE: src/tests/DroppableStack.spec.js
================================================
/* eslint-disable no-unused-vars*/
const React = require('react');
/* eslint-enable no-unused-vars*/
const Unexpected = require('unexpected');
const UnexpectedReact = require('unexpected-react');
const TestUtils = require('react-addons-test-utils');
const expect = Unexpected.clone()
.use(UnexpectedReact);
const DroppableStack = require('../components/DroppableStack/').default;
describe('DroppableStack', () => {
let renderer;
beforeEach(() => {
renderer = TestUtils.createRenderer();
renderer.render(
);
});
it('should be a function', () => {
expect(DroppableStack, 'to be a', 'function');
});
it('should render a ReactElement', () => {
let result = renderer.getRenderOutput();
return expect(TestUtils.isElement(result), 'to be ok');
});
it('should render with its offsetWidth, and offsetHeight', () => {
return expect(renderer, 'to have rendered',
);
});
it('should render its children', () => {
let result = renderer.getRenderOutput();
return expect(result.props.children, 'to have length', 2);
});
it('should have class droppable', () => {
let result = renderer.getRenderOutput();
return expect(result.props.className, 'to contain', 'droppable');
});
});
================================================
FILE: src/tests/Table.spec.js
================================================
/* eslint-disable no-unused-vars*/
const React = require('react');
/* eslint-enable no-unused-vars*/
const Unexpected = require('unexpected');
const UnexpectedReact = require('unexpected-react');
const TestUtils = require('react-addons-test-utils');
const expect = Unexpected.clone()
.use(UnexpectedReact);
const Table = require('../components/Table/').default;
const LoadSpinner = require('../components/LoadSpinner/').default;
const deck = (function () {
let memo = [];
let initDeck = () => {
if (memo.length) {
return memo;
}
const suits = ['hearts', 'diamonds', 'clubs', 'spades'];
const values = ['two', 'three', 'four', 'five', 'six', 'seven',
'eight', 'nine', 'ten', 'jack', 'queen', 'king', 'ace'];
suits.forEach((suit) => {
values.forEach((value) => {
let str = value + '-of-' + suit;
memo.push({name: str, location: 'TABLE', flipped: true});
});
});
return memo;
};
return initDeck();
})();
describe('Table', () => {
let renderer;
beforeEach(() => {
renderer = TestUtils.createRenderer();
renderer.render(
);
});
it('should be a function', () => {
return expect(Table, 'to be a', 'function');
});
it('should render a ReactElement', () => {
let result = renderer.getRenderOutput();
return expect(TestUtils.isElement(result), 'to be ok');
});
it('should render with id "table"', () => {
return expect(renderer, 'to have rendered',
);
});
it('should render a loading spinner', () => {
return expect(renderer, 'to have rendered',
);
});
});
================================================
FILE: src/tests/boilerplate.js
================================================
/*
* These tests use the shallow renderer, which is faster and doesn't require an emulated DOM
*/
const Unexpected = require('unexpected');
const UnexpectedReact = require('unexpected-react');
var React = require('react');
var TestUtils = require('react-addons-test-utils');
const Card = require('../components/Card/').default;
const expect = Unexpected.clone()
.use(UnexpectedReact);
// This test is optional, but allows you to easily check that everything has been required in the correct order
describe('React', () => {
it('should have been injected', () => {
expect(React, 'to have been injected');
});
});
describe('Card', () => {
let renderer;
beforeEach(() => {
renderer = TestUtils.createRenderer();
renderer.render();
});
it('should be a function', () => {
expect(Card, 'to be a', 'function');
});
it('renders a king of hearts', () => {
return expect(renderer, 'to have rendered', );
});
});
================================================
FILE: src/tests/compiler.js
================================================
'use strict';
require('babel-core/register');
function noop () {
return null;
}
require.extensions['.scss'] = noop;
require.extensions['.css'] = noop;
================================================
FILE: src/tests/index.js
================================================
/*
* These tests use the shallow renderer, which is faster and doesn't require an emulated DOM
*/
const Unexpected = require('unexpected');
const UnexpectedReact = require('unexpected-react');
const React = require('react');
const expect = Unexpected.clone()
.use(UnexpectedReact);
// This test is optional, but allows you to easily check that everything has been required in the correct order
describe('React', () => {
it('should have been injected', () => {
expect(React, 'to have been injected');
});
});
================================================
FILE: webpack/webpack.config.js
================================================
var path = require('path');
var webpack = require('webpack');
var host = process.env.HOST || 'localhost';
var port = process.env.PORT || '8080';
module.exports = {
entry: [
'webpack-dev-server/client?http://'+host+':'+port,
'./src/index'
],
output: {
filename: 'bundle.js',
path: path.join(__dirname, '/dist/'),
publicPath: '/dist/',
sourceMapFilename: 'debugging/[file].map',
library: 'react-solitaire',
libraryTarget: 'umd'
},
resolve: {
extensions: ['', '.jsx', '.js', '.json'],
modulesDirectories: ['node_modules', 'src'],
},
module: {
loaders: [{
test: /\.scss$/,
loaders: ["style", "css", "sass"]
}, {
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
}, {
test: /\.(png|jpg|svg)$/,
loader: 'url-loader?limit=1048576'
}
]
},
devtool: 'eval'
};
================================================
FILE: webpack/webpack.config.prod.js
================================================
var path = require('path');
var webpack = require('webpack');
module.exports = {
entry: [
'./src/index'
],
output: {
filename: 'index.js',
path: path.join(__dirname, '..', '/lib/'),
publicPath: '/lib/',
library: 'react-solitaire',
libraryTarget: 'umd'
},
plugins: [
new webpack.DefinePlugin({
'process.env.NODE_ENV': '"production"'
}),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false
}
})
],
resolve: {
extensions: ['', '.jsx', '.js', '.json'],
modulesDirectories: ['node_modules', 'src'],
},
module: {
loaders: [{
test: /\.scss$/,
loaders: ["style", "css", "sass"]
}, {
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
}, {
test: /\.(png|jpg|svg)$/,
loader: 'url-loader?limit=1048576'
}
]
}
};