From 19a065a471b0ce8baf3a184cc21dacafbc4b9094 Mon Sep 17 00:00:00 2001 From: Jordan Husney Date: Sun, 21 Feb 2016 08:42:11 -0500 Subject: [PATCH 1/9] Updated CONTRIBUTING.md, final edits before merge Mostly clarifications. Also moved some sctions around. --- CONTRIBUTING.md | 93 +++++++++++++++++++++++++------------------------ 1 file changed, 48 insertions(+), 45 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b7aa28c0a7d..77f19c15689 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,7 +12,8 @@ workplace is to support individuals and teams to: * See and celebrate progress. We’re a young organization, and we won’t be able to develop this software -and realize this vision without your help. +and realize this vision without your help. Whether you’re a designer or a +developer, we could use a hand. However, we also believe that contributing to Action _isn’t_ its own reward. That’s why we’re offering equity compensation for designers and coders who @@ -24,11 +25,10 @@ Here’s how contributing to Action works. # Find an Issue -Whether you’re a designer or a developer, we could use a hand. - -All of the development work for Action is captured as an issue on Github -issues. To see which issues are available for you to help with, have a look -at our [waffle.io board](https://waffle.io/ParabolInc/action). +All of the design and development work for Action is captured as GitHub issues. +They are tagged and arranged on our +[waffle.io board](https://waffle.io/ParabolInc/action). To see where you can +jump in, begin by having a look at the issues in the following stages: All Issues begin in our *Backlog*. Consider these a list of things we _could_ do but aren’t actively looking to develop yet. Issues ready for contribution @@ -38,7 +38,8 @@ appear in *Needs Design Spec* or *Ready for Build*. ![Contributing to Action - Designers](./docs/images/ContributingToActionDesigners.png) -Whether helping us develop a new spinner or rethinking the UX of our on-boarding flow, we could use your talent. +Whether its helping us to develop a new spinner or rethinking the UX of our +on-boarding flow, we could use your talent! Here’s how to get involved: @@ -48,17 +49,17 @@ Here’s how to get involved: 2. Click on the issue number and read the comments. Inside you’ll find a link to the issue’s *mission spec* which details the work to be done. -3. If you’re interested in taking the mission, add a comment to it and +3. If you’re interested in taking on the mission, add a comment to it and tell us how many points you’re interested in doing the job for (see: [Compensation](#compensation)). We’ll acknowledge that the issue now belongs to you and move it to the *Designing* column. 4. Contribute your work along the guidelines in the mission spec. Once you’re - done add a comment to the issue. We’ll look over your work and provide + done add a comment to the issue. We’ll review your hard work and provide feedback. 5. Once any feedback is addressed, we’ll assign you points to compensate you - for your work, and grant you our eternal thanks! + for your work, and give you our eternal thanks! ## If you’re a coder @@ -80,14 +81,15 @@ Contributing is easy: 3. If you’re interested in taking the mission, add a comment to it and tell us how many points you’re interested in doing the job for - (see: [Compensation](#compensation)). We’ll acknowledge that the issue + (see: [Compensation](#compensation)). We’ll acknowledge the issue now belongs to you and move it to the *Building* column. 4. Create a branch named similarly to `feature-name-#issue` where `#issue` - is the GitHub issue number (e.g. `timer-feature-#42`). + is the GitHub issue number (e.g. `timer-feature-#42`). This keeps our + waffle board happy. 5. Contribute your work along the guidelines provided in the spec documents. - Once you’re done, add a comment to the issue. We’ll look over your work, + Once you’re done, add a comment to the issue. We’ll review your work, and provide feedback. 6. Once any feedback is addressed, we’ll assign you points to compensate you @@ -114,30 +116,11 @@ Contributing is easy: for your work, and grant you our eternal thanks! -# Points and sizes - -Before you begin working on an issue, you size it. Most issues will have a -*swag* sizing from one of the Action maintainers, but it’s up to you to -adjust it to what you think is fair. - -| Points | Individual *or* team effort required | -| -------- | ------------------------------------ | -| 1 | Less than a single day | -| 2 | One or two days | -| 3 | Three or four days | -| 5 | Five to seven days | -| 8 | Less than two weeks | -| 13 | Two to three weeks | -| 20 | Three to four weeks | -| 40 | Four to eight weeks | -| 100 | Too big! Let’s break it down… | - - # Compensation -For giving us a hand and helping the broader Action community your -contributions can be converted into equity in Parabol Inc. Here’s how it -works: +For giving us a hand and helping the broader Action community, your +qualifying contributions may be converted into equity in Parabol Inc. Here’s +how it works: 1. When an issue is merged into the [Parabol Inc Action Repository](https://github.com/ParabolInc/action) by @@ -161,30 +144,43 @@ works: accrue points by contributing, we’ll amend your advisory agreement no less frequently than once per quarter. +## Points and sizes + +Before you begin working on an issue, you size it. Most issues will have a +*swag* sizing from one of the Action maintainers, but it’s up to you to +adjust it to what you think is fair. + +| Points | Individual *or* team effort required | +| -------- | ------------------------------------ | +| 1 | Less than a single day | +| 2 | One or two days | +| 3 | Three or four days | +| 5 | Five to seven days | +| 8 | Less than two weeks | +| 13 | Two to three weeks | +| 20 | Three to four weeks | +| 40 | Four to eight weeks | +| 100 | Too big! Let’s break it down… | + ## Conversion rate At present, 100 points convert to options for 10,000 shares in Parabol Inc. With 10,000,000 shares outstanding, that’s 0.1% of the company. We currently will reevaluate this conversion rate once per calendar quarter -during our board meeting. - -## Questions - -If you’ve got questions, please don’t hesitate to reach out. You can -always reach us at [love@parabol.co](mailto:love@parabol.co). +at our board meeting. # Mission specs Mission specs are brief definitions of design or engineering work. They -answer a few vital questions to frame in the job to be done including: +answer a few vital questions to frame in the work to be done, including: * Why is this work important? * Which user(s) does it serve? * What’s the primary journey or experience? * Which skills are needed to do the work? - * What quantitative and qualitative metrics can we measure? + * How can we measure if the work is successful? * How many points do we think the work is worth? The official Action mission template document can be found @@ -194,7 +190,8 @@ The official Action mission template document can be found Some GitHub issues require a design spec in addition to a mission spec. Design specs are needed when a particular mission is complicated enough -that a more in-depth written description, series of diagrams, or prototype is necessary to communicate intent. +that a more in-depth written description, series of diagrams, or prototype is +necessary to communicate intent. There are no specific requirements for how to create a design, but some examples we like are: @@ -215,8 +212,14 @@ feedback. # Community -Questions? Want to collaborate? Come join us on our Slack community. +Want to collaborate? Join us on our Slack community! [![Slack Status](http://slackin.parabol.co/badge.svg)](http://slackin.parabol.co/) Sign up at http://slackin.parabol.co/. + +## Questions + +If you’ve got questions you'd like to inquire about privately, please don’t +hesitate to reach out. You can reach us at +[love@parabol.co](mailto:love@parabol.co). From e2e4a49e5c2946155348221bc9425408ac30fb72 Mon Sep 17 00:00:00 2001 From: Adam Michel Date: Tue, 23 Feb 2016 18:45:33 -0600 Subject: [PATCH 2/9] Add new favicon and apple-touch-icon. --- src/helpers/Html.js | 4 +++- static/apple-touch-icon.png | Bin 0 -> 8314 bytes static/favicon.ico | Bin 1406 -> 4286 bytes static/favicon.png | Bin 2706 -> 1526 bytes static/logo.jpg | Bin 22822 -> 0 bytes 5 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 static/apple-touch-icon.png delete mode 100644 static/logo.jpg diff --git a/src/helpers/Html.js b/src/helpers/Html.js index c7041437d97..dd070638598 100644 --- a/src/helpers/Html.js +++ b/src/helpers/Html.js @@ -33,7 +33,9 @@ export default class Html extends Component { {head.link.toComponent()} {head.script.toComponent()} - + + + {/* styles (will be present only in production with webpack extract text plugin) */} {Object.keys(assets.styles).map((style, key) => diff --git a/static/apple-touch-icon.png b/static/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..fd5d39812daa62c8a42f91dc65f486c5036d320a GIT binary patch literal 8314 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 literal 0 HcmV?d00001 diff --git a/static/favicon.ico b/static/favicon.ico index e933f6e6c3dfea0eb4b3fbfd10980e30b0c15fdc..1218d5b17774b2d82f7958c5588e9501b0b4fd5f 100644 GIT binary patch literal 4286 zcmcgweN0+LoNw(L;z>2p_p2&ET@r@?JNL2bj_ly_SfIFL8us8W5 zeE7!ONZq*`#CBF?|A`KWatFBNmR^a(G`E9uZ+m?^_foFLM_z;QcMz zIBfEV`S?(l!^WJ#%4|IA*&7cb`SPG(H|FE z@}svx^F2s;&f)9xb*lK5?j8&u_aJq>db}k}Wo!J@$=P2KNNbE6&r8qX@SAID5m^T8 z9UhEyc`U%oHA12)@ts&h_sCd;~|#rNZ~-;X4=&i@!1R@GmN z&^2{JwkgGeTEbG&=!k*SbG!S|RBceIT~psww~4b&J`kovwKdOkI=wxq((rY)Q zZNjH_BN64QGCtJTA56gVa!69SuC}t`an3$rO4LyQ5;smhI7W?<$~CvaV34iB1DySO z(~Gjr>FF-e8i|cTb=3x@!!1#H-fA8CUg`4+F*o-+XM5UZj+#DT%T@KkFX&wIVlmpvr=Kv-(zJkx}OB@f7Y6pzD|PqI7+s;S47g;;Gs^$P9R11EnKzdvQA z58})iZF$-h2>4*>%Vgir`(!^XeOcNQG)5Y$Yvk`|L)8(SciRvMENE!+;&5mQV`D#| zz3p8b(myP|LtaZ=;u@cbs$EKR^3)ZtNL3T8c8?RLlt0Bf!#@{9FnB4R4S6gW2;hs| zAIr~9@z-T$%i}Q}!dBgXY0p;H5ZN0~q5J~}n)Xeiv*0Yc_2*zU&WhY~=$u$NU#g0VIr}RDsz0a(;>co{T@!xB zvxAr(_M@YzMHQRy&BrwNZ^Bkx5PnY(Uv99)^+C7Qj*Dmifil-)W1qb3P52jl-1Dsn z2%BnPRq8u(UKRhVr)@A7&tN$eK{y-+)yi}}iN)Trc`H__UBvSk1D{lNfC;I#q`WKG zVn@YJhgf4S&hz`yC7%!7?VZqN96;8d6j1#*Y#Y=vOLD>#&w{MgJb#hm4IugaC7lBq z2Kk^FhyTzA!iYM5DtwU6W0V)t*+8>KUd5*f8>hL_8k2G@>iq2zgj;$9;pPnbo8W&U L!s=m|E{6RtMjcDS literal 1406 zcmeHFX;4jJ7=E&bq%7GC3C zaAnx$e-FDls;>)<5(50qczlHr5~SeNK@G+E0*{IaCT|(mr-UC>g!BXzdvjIPvMxC- zU}e5?g0MY{bq%5V2EqD@P;`<|RYJIZL7;1Q30pE0Sl<%9KGkq^525gwisQ_#ZW2l_ z3FPGpL`Ill@Q~on$W2#qWVZ@`Ki<1WLuR6Y(M!U+a>C{e6-D_PDy|9m_((XpPsO=I z#C0;vvV<=cguw%3)D#O|D>#FO@0FaNVP#ZYBdkwVP+Lvd!2FZh%J}($keQ^y$}Gz= zc4Z6hW5(7@1=|?kDmA>mMYw*3uyd_~o|?=(G_KX~ri|d>DRB=C{=HM|`jB%r6y{x z@C9^Tm;E9T%lv1|bo%x|p6C>0?`@%!`MjU0 zdkfCArdjie7RSEq#p+Ro?$kt>l1=I52;hS{D0B@^~m;VwxaNzDg<(Q_-0pZOj=q9R``8W-C{ln_C~NY;!ehnU!wU%#SG4 zGQY}5Ei6+I5GSIbfC|3$042aD?>*o>A9T;f|DX5&(22{=c7JxyIrrRq&i{YUIrm%* ze4wwd&%oFmh8YYK8AdV;V5n!PVK^A*W6B)ue&KfITejXWfXG-Kg%u+wbP{1j`)8>G6 zJ;jU?ypC>IKRt|d3pV0blbsuu8>dz5@@O~Dh(}OrG~6a50`;n@lC`hAnv2Vq8ezR^ z6Xkk6nNbBj9f4|vd+4JqoLQEPRlPPO?AwI~yIpk$xzJ$HW7X;v&}y~fl+kDuX&IqW zxYp@*V?)Jhd~v1{_MRTD|K_ALB#js$TYG0VI)7#io?V#1Q}N1CDuOQ~hdw`j8joz_P^HHl6 zYk!JMc;OHxXtaccAS*u3S2QR(eR>*Z%$x$7*MnxqKvunbq8LS2t$Z);z`D|Mg>jmF zJ#C_Tgx;eYREk%=mWu=RmlP{LC@tkO?m$&*t3n|>Fc1sJTNLua3iK>>cU-ujSXTW{ ze{J9nM4Lox5T0#f3HG5Siy&7 z>i57)$^F+fcOWMr9*YwP?j*CnKN5$TuxIx{oIOLG)cwJ4jaO0D)T~%cw#X&{cYuhm zo}P`jCqD^2t6-BxMxv&=4qk6BzRTZ3)At2yOHNAG(UHD4buzalOh_sr+Y;!p9&hcVA8WxJVF){pik5vhDvQ0-ot+N8Ckr1G(s~a0P zY*DQhf{uKwS(b;RDNiA<(gnXSPk+d#1>Qq{fEqdJ4Z#HN9%(mJb@l>w7VJlMb|%`6 zoP(c12W>$AEl2$TwP~IkF1T$SaMib<>AVfM?EO6=UFmlKCpkc28Z1``HV4T?_P&(?p9%OSmp{Un?J1%Fi~nQ&-g zluRPB)#QL`>pLYqRnk-lOT1n$*1f+8RR#wVw!a8N=rCbQb=2szFwYvOF*2n>a-e`A zJrX295kD_;jzlIf)NWUwuf>q$(MbMvHNvyfc&Z8WzGLK)sqh~?+*c&fWV3*$AKQ?g zNq;dMBFqZofqjQ@7-|002ovPDHLkV1f>y!~6gM literal 2706 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 L|8=$M5BmQBS<}j= From 04dbe0db6108c2d86de067d7c63dd9cb3916d8a7 Mon Sep 17 00:00:00 2001 From: Jordan Husney Date: Thu, 25 Feb 2016 09:48:02 -0500 Subject: [PATCH 3/9] Updating `falcor-saddle` dependency to latest revision 0.0.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 481b159deee..6c7f500bbe7 100644 --- a/package.json +++ b/package.json @@ -94,7 +94,7 @@ "falcor-express": "^0.1.2", "falcor-http-datasource": "^0.1.2", "falcor-router": "^0.2.12", - "falcor-saddle": "0.0.1", + "falcor-saddle": "0.0.3", "file-loader": "^0.8.5", "history": "1.17.0", "hoist-non-react-statics": "^1.0.3", From 045e4f66622512dd97b5e2b84b7616c58cd1bb35 Mon Sep 17 00:00:00 2001 From: Jordan Husney Date: Thu, 25 Feb 2016 09:48:57 -0500 Subject: [PATCH 4/9] Adding mocked handlers for inactive fields on demo MeetingLayout container. Closes #27 --- src/containers/MeetingLayout/MeetingLayout.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/containers/MeetingLayout/MeetingLayout.js b/src/containers/MeetingLayout/MeetingLayout.js index 1043645be31..4e52f2261fa 100755 --- a/src/containers/MeetingLayout/MeetingLayout.js +++ b/src/containers/MeetingLayout/MeetingLayout.js @@ -113,6 +113,10 @@ export default class MeetingLayout extends Component { updateContent(meeting.instance.id, event.target.value, socketId); }; + const handleUserInputChangeMocked = () => { + console.log('handleUserInputChangeMocked'); + }; + const handleOnMeetingNameChange = () => { console.log('handleOnMeetingNameChange'); }; @@ -135,10 +139,10 @@ export default class MeetingLayout extends Component { /> - + - + From 89dddd5e54377e86cb56d8ba29c0e4d9ee6fe8cd Mon Sep 17 00:00:00 2001 From: Jordan Husney Date: Thu, 25 Feb 2016 19:33:39 -0500 Subject: [PATCH 5/9] Removed a bunch of sails cruft reintroduced in a hasty rebasing. --- config/blueprints.js | 162 -------------------------------------- config/bootstrap.js | 17 ---- config/connections.js | 92 ---------------------- config/cors.js | 78 ------------------ config/csrf.js | 64 --------------- config/globals.js | 63 --------------- config/http.js | 88 --------------------- config/i18n.js | 57 -------------- config/local.js | 85 -------------------- config/locales/_README.md | 28 ------- config/locales/de.json | 4 - config/locales/en.json | 4 - config/locales/es.json | 4 - config/locales/fr.json | 4 - config/log.js | 29 ------- config/models.js | 32 -------- config/policies.js | 51 ------------ config/routes.js | 49 ------------ config/session.js | 91 --------------------- config/sockets.js | 141 --------------------------------- config/views.js | 95 ---------------------- config/webpack.js | 83 ------------------- 22 files changed, 1321 deletions(-) delete mode 100644 config/blueprints.js delete mode 100644 config/bootstrap.js delete mode 100644 config/connections.js delete mode 100644 config/cors.js delete mode 100644 config/csrf.js delete mode 100644 config/globals.js delete mode 100644 config/http.js delete mode 100644 config/i18n.js delete mode 100644 config/local.js delete mode 100644 config/locales/_README.md delete mode 100644 config/locales/de.json delete mode 100644 config/locales/en.json delete mode 100644 config/locales/es.json delete mode 100644 config/locales/fr.json delete mode 100644 config/log.js delete mode 100644 config/models.js delete mode 100644 config/policies.js delete mode 100644 config/routes.js delete mode 100644 config/session.js delete mode 100644 config/sockets.js delete mode 100644 config/views.js delete mode 100644 config/webpack.js diff --git a/config/blueprints.js b/config/blueprints.js deleted file mode 100644 index 8bd34f26bc9..00000000000 --- a/config/blueprints.js +++ /dev/null @@ -1,162 +0,0 @@ -/** - * Blueprint API Configuration - * (sails.config.blueprints) - * - * These settings are for the global configuration of blueprint routes and - * request options (which impact the behavior of blueprint actions). - * - * You may also override any of these settings on a per-controller basis - * by defining a '_config' key in your controller defintion, and assigning it - * a configuration object with overrides for the settings in this file. - * A lot of the configuration options below affect so-called "CRUD methods", - * or your controllers' `find`, `create`, `update`, and `destroy` actions. - * - * It's important to realize that, even if you haven't defined these yourself, as long as - * a model exists with the same name as the controller, Sails will respond with built-in CRUD - * logic in the form of a JSON API, including support for sort, pagination, and filtering. - * - * For more information on the blueprint API, check out: - * http://sailsjs.org/#!/documentation/reference/blueprint-api - * - * For more information on the settings in this file, see: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.blueprints.html - * - */ - -module.exports.blueprints = { - - /*************************************************************************** - * * - * Action routes speed up the backend development workflow by * - * eliminating the need to manually bind routes. When enabled, GET, POST, * - * PUT, and DELETE routes will be generated for every one of a controller's * - * actions. * - * * - * If an `index` action exists, additional naked routes will be created for * - * it. Finally, all `actions` blueprints support an optional path * - * parameter, `id`, for convenience. * - * * - * `actions` are enabled by default, and can be OK for production-- * - * however, if you'd like to continue to use controller/action autorouting * - * in a production deployment, you must take great care not to * - * inadvertently expose unsafe/unintentional controller logic to GET * - * requests. * - * * - ***************************************************************************/ - - // actions: true, - - /*************************************************************************** - * * - * RESTful routes (`sails.config.blueprints.rest`) * - * * - * REST blueprints are the automatically generated routes Sails uses to * - * expose a conventional REST API on top of a controller's `find`, * - * `create`, `update`, and `destroy` actions. * - * * - * For example, a BoatController with `rest` enabled generates the * - * following routes: * - * ::::::::::::::::::::::::::::::::::::::::::::::::::::::: * - * GET /boat -> BoatController.find * - * GET /boat/:id -> BoatController.findOne * - * POST /boat -> BoatController.create * - * PUT /boat/:id -> BoatController.update * - * DELETE /boat/:id -> BoatController.destroy * - * * - * `rest` blueprint routes are enabled by default, and are suitable for use * - * in a production scenario, as long you take standard security precautions * - * (combine w/ policies, etc.) * - * * - ***************************************************************************/ - - // rest: true, - - /*************************************************************************** - * * - * Shortcut routes are simple helpers to provide access to a * - * controller's CRUD methods from your browser's URL bar. When enabled, * - * GET, POST, PUT, and DELETE routes will be generated for the * - * controller's`find`, `create`, `update`, and `destroy` actions. * - * * - * `shortcuts` are enabled by default, but should be disabled in * - * production. * - * * - ***************************************************************************/ - - // shortcuts: true, - - /*************************************************************************** - * * - * An optional mount path for all blueprint routes on a controller, * - * including `rest`, `actions`, and `shortcuts`. This allows you to take * - * advantage of blueprint routing, even if you need to namespace your API * - * methods. * - * * - * (NOTE: This only applies to blueprint autoroutes, not manual routes from * - * `sails.config.routes`) * - * * - ***************************************************************************/ - - // prefix: '', - - /*************************************************************************** - * * - * An optional mount path for all REST blueprint routes on a controller. * - * And it do not include `actions` and `shortcuts` routes. * - * This allows you to take advantage of REST blueprint routing, * - * even if you need to namespace your RESTful API methods * - * * - ***************************************************************************/ - - // restPrefix: '', - - /*************************************************************************** - * * - * Whether to pluralize controller names in blueprint routes. * - * * - * (NOTE: This only applies to blueprint autoroutes, not manual routes from * - * `sails.config.routes`) * - * * - * For example, REST blueprints for `FooController` with `pluralize` * - * enabled: * - * GET /foos/:id? * - * POST /foos * - * PUT /foos/:id? * - * DELETE /foos/:id? * - * * - ***************************************************************************/ - - // pluralize: false, - - /*************************************************************************** - * * - * Whether the blueprint controllers should populate model fetches with * - * data from other models which are linked by associations * - * * - * If you have a lot of data in one-to-many associations, leaving this on * - * may result in very heavy api calls * - * * - ***************************************************************************/ - - // populate: true, - - /**************************************************************************** - * * - * Whether to run Model.watch() in the find and findOne blueprint actions. * - * Can be overridden on a per-model basis. * - * * - ****************************************************************************/ - - // autoWatch: true, - - /**************************************************************************** - * * - * The default number of records to show in the response from a "find" * - * action. Doubles as the default size of populated arrays if populate is * - * true. * - * * - ****************************************************************************/ - - // defaultLimit: 30 - -}; diff --git a/config/bootstrap.js b/config/bootstrap.js deleted file mode 100644 index 96208a18658..00000000000 --- a/config/bootstrap.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Bootstrap - * (sails.config.bootstrap) - * - * An asynchronous bootstrap function that runs before your Sails app gets lifted. - * This gives you an opportunity to set up your data model, run jobs, or perform some special logic. - * - * For more information on bootstrapping your app, check out: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.bootstrap.html - */ - -module.exports.bootstrap = function(cb) { - - // It's very important to trigger this callback method when you are finished - // with the bootstrap! (otherwise your server will never lift, since it's waiting on the bootstrap) - cb(); -}; diff --git a/config/connections.js b/config/connections.js deleted file mode 100644 index 3a8eefc4493..00000000000 --- a/config/connections.js +++ /dev/null @@ -1,92 +0,0 @@ -/** - * Connections - * (sails.config.connections) - * - * `Connections` are like "saved settings" for your adapters. What's the difference between - * a connection and an adapter, you might ask? An adapter (e.g. `sails-mysql`) is generic-- - * it needs some additional information to work (e.g. your database host, password, user, etc.) - * A `connection` is that additional information. - * - * Each model must have a `connection` property (a string) which is references the name of one - * of these connections. If it doesn't, the default `connection` configured in `config/models.js` - * will be applied. Of course, a connection can (and usually is) shared by multiple models. - * . - * Note: If you're using version control, you should put your passwords/api keys - * in `config/local.js`, environment variables, or use another strategy. - * (this is to prevent you inadvertently sensitive credentials up to your repository.) - * - * For more information on configuration, check out: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.connections.html - */ - -module.exports.connections = { - - /*************************************************************************** - * * - * Local disk storage for DEVELOPMENT ONLY * - * * - * Installed by default. * - * * - ***************************************************************************/ - localDiskDb: { - adapter: 'sails-disk' - }, - - /*************************************************************************** - * * - * MySQL is the world's most popular relational database. * - * http://en.wikipedia.org/wiki/MySQL * - * * - * Run: npm install sails-mysql * - * * - ***************************************************************************/ - someMysqlServer: { - adapter: 'sails-mysql', - host: 'YOUR_MYSQL_SERVER_HOSTNAME_OR_IP_ADDRESS', - user: 'YOUR_MYSQL_USER', - password: 'YOUR_MYSQL_PASSWORD', - database: 'YOUR_MYSQL_DB' - }, - - /*************************************************************************** - * * - * MongoDB is the leading NoSQL database. * - * http://en.wikipedia.org/wiki/MongoDB * - * * - * Run: npm install sails-mongo * - * * - ***************************************************************************/ - someMongodbServer: { - adapter: 'sails-mongo', - host: 'localhost', - port: 27017, - // user: 'username', - // password: 'password', - // database: 'your_mongo_db_name_here' - }, - - /*************************************************************************** - * * - * PostgreSQL is another officially supported relational database. * - * http://en.wikipedia.org/wiki/PostgreSQL * - * * - * Run: npm install sails-postgresql * - * * - * * - ***************************************************************************/ - somePostgresqlServer: { - adapter: 'sails-postgresql', - host: 'YOUR_POSTGRES_SERVER_HOSTNAME_OR_IP_ADDRESS', - user: 'YOUR_POSTGRES_USER', - password: 'YOUR_POSTGRES_PASSWORD', - database: 'YOUR_POSTGRES_DB' - } - - - /*************************************************************************** - * * - * More adapters: https://github.com/balderdashy/sails * - * * - ***************************************************************************/ - -}; diff --git a/config/cors.js b/config/cors.js deleted file mode 100644 index 9939d58b688..00000000000 --- a/config/cors.js +++ /dev/null @@ -1,78 +0,0 @@ -/** - * Cross-Origin Resource Sharing (CORS) Settings - * (sails.config.cors) - * - * CORS is like a more modern version of JSONP-- it allows your server/API - * to successfully respond to requests from client-side JavaScript code - * running on some other domain (e.g. google.com) - * Unlike JSONP, it works with POST, PUT, and DELETE requests - * - * For more information on CORS, check out: - * http://en.wikipedia.org/wiki/Cross-origin_resource_sharing - * - * Note that any of these settings (besides 'allRoutes') can be changed on a per-route basis - * by adding a "cors" object to the route configuration: - * - * '/get foo': { - * controller: 'foo', - * action: 'bar', - * cors: { - * origin: 'http://foobar.com,https://owlhoot.com' - * } - * } - * - * For more information on this configuration file, see: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.cors.html - * - */ - -module.exports.cors = { - - /*************************************************************************** - * * - * Allow CORS on all routes by default? If not, you must enable CORS on a * - * per-route basis by either adding a "cors" configuration object to the * - * route config, or setting "cors:true" in the route config to use the * - * default settings below. * - * * - ***************************************************************************/ - - // allRoutes: false, - - /*************************************************************************** - * * - * Which domains which are allowed CORS access? This can be a * - * comma-delimited list of hosts (beginning with http:// or https://) or * - * "*" to allow all domains CORS access. * - * * - ***************************************************************************/ - - // origin: '*', - - /*************************************************************************** - * * - * Allow cookies to be shared for CORS requests? * - * * - ***************************************************************************/ - - // credentials: true, - - /*************************************************************************** - * * - * Which methods should be allowed for CORS requests? This is only used in * - * response to preflight requests (see article linked above for more info) * - * * - ***************************************************************************/ - - // methods: 'GET, POST, PUT, DELETE, OPTIONS, HEAD', - - /*************************************************************************** - * * - * Which headers should be allowed for CORS requests? This is only used in * - * response to preflight requests. * - * * - ***************************************************************************/ - - // headers: 'content-type' - -}; diff --git a/config/csrf.js b/config/csrf.js deleted file mode 100644 index 5667e0bf7a4..00000000000 --- a/config/csrf.js +++ /dev/null @@ -1,64 +0,0 @@ -/** - * Cross-Site Request Forgery Protection Settings - * (sails.config.csrf) - * - * CSRF tokens are like a tracking chip. While a session tells the server that a user - * "is who they say they are", a csrf token tells the server "you are where you say you are". - * - * When enabled, all non-GET requests to the Sails server must be accompanied by - * a special token, identified as the '_csrf' parameter. - * - * This option protects your Sails app against cross-site request forgery (or CSRF) attacks. - * A would-be attacker needs not only a user's session cookie, but also this timestamped, - * secret CSRF token, which is refreshed/granted when the user visits a URL on your app's domain. - * - * This allows us to have certainty that our users' requests haven't been hijacked, - * and that the requests they're making are intentional and legitimate. - * - * This token has a short-lived expiration timeline, and must be acquired by either: - * - * (a) For traditional view-driven web apps: - * Fetching it from one of your views, where it may be accessed as - * a local variable, e.g.: - *
- * - *
- * - * or (b) For AJAX/Socket-heavy and/or single-page apps: - * Sending a GET request to the `/csrfToken` route, where it will be returned - * as JSON, e.g.: - * { _csrf: 'ajg4JD(JGdajhLJALHDa' } - * - * - * Enabling this option requires managing the token in your front-end app. - * For traditional web apps, it's as easy as passing the data from a view into a form action. - * In AJAX/Socket-heavy apps, just send a GET request to the /csrfToken route to get a valid token. - * - * For more information on CSRF, check out: - * http://en.wikipedia.org/wiki/Cross-site_request_forgery - * - * For more information on this configuration file, including info on CSRF + CORS, see: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.csrf.html - * - */ - -/**************************************************************************** -* * -* Enabled CSRF protection for your site? * -* * -****************************************************************************/ - -// module.exports.csrf = false; - -/**************************************************************************** -* * -* You may also specify more fine-grained settings for CSRF, including the * -* domains which are allowed to request the CSRF token via AJAX. These * -* settings override the general CORS settings in your config/cors.js file. * -* * -****************************************************************************/ - -// module.exports.csrf = { -// grantTokenViaAjax: true, -// origin: '' -// } diff --git a/config/globals.js b/config/globals.js deleted file mode 100644 index c1819c334c0..00000000000 --- a/config/globals.js +++ /dev/null @@ -1,63 +0,0 @@ -/** - * Global Variable Configuration - * (sails.config.globals) - * - * Configure which global variables which will be exposed - * automatically by Sails. - * - * For more information on configuration, check out: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.globals.html - */ -module.exports.globals = { - - /**************************************************************************** - * * - * Expose the lodash installed in Sails core as a global variable. If this * - * is disabled, like any other node module you can always run npm install * - * lodash --save, then var _ = require('lodash') at the top of any file. * - * * - ****************************************************************************/ - - // _: true, - - /**************************************************************************** - * * - * Expose the async installed in Sails core as a global variable. If this is * - * disabled, like any other node module you can always run npm install async * - * --save, then var async = require('async') at the top of any file. * - * * - ****************************************************************************/ - - // async: true, - - /**************************************************************************** - * * - * Expose the sails instance representing your app. If this is disabled, you * - * can still get access via req._sails. * - * * - ****************************************************************************/ - - // sails: true, - - /**************************************************************************** - * * - * Expose each of your app's services as global variables (using their * - * "globalId"). E.g. a service defined in api/models/NaturalLanguage.js * - * would have a globalId of NaturalLanguage by default. If this is disabled, * - * you can still access your services via sails.services.* * - * * - ****************************************************************************/ - - // services: true, - - /**************************************************************************** - * * - * Expose each of your app's models as global variables (using their * - * "globalId"). E.g. a model defined in api/models/User.js would have a * - * globalId of User by default. If this is disabled, you can still access * - * your models via sails.models.*. * - * * - ****************************************************************************/ - - // models: true -}; diff --git a/config/http.js b/config/http.js deleted file mode 100644 index 2e7aa1acea3..00000000000 --- a/config/http.js +++ /dev/null @@ -1,88 +0,0 @@ -/** - * HTTP Server Settings - * (sails.config.http) - * - * Configuration for the underlying HTTP server in Sails. - * Only applies to HTTP requests (not WebSockets) - * - * For more information on configuration, check out: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.http.html - */ - - -module.exports.http = { - - /**************************************************************************** - * * - * Express middleware to use for every Sails request. To add custom * - * middleware to the mix, add a function to the middleware config object and * - * add its key to the "order" array. The $custom key is reserved for * - * backwards-compatibility with Sails v0.9.x apps that use the * - * `customMiddleware` config option. * - * * - ****************************************************************************/ - - middleware: { - - /*************************************************************************** - * * - * The order in which middleware should be run for HTTP request. (the Sails * - * router is invoked by the "router" middleware below.) * - * * - ***************************************************************************/ - - order: [ - 'startRequestTimer', - 'cookieParser', - 'session', - 'myRequestLogger', - 'bodyParser', - 'handleBodyParserError', - 'compress', - 'methodOverride', - 'poweredBy', - '$custom', - 'webpackDevMiddleware', - 'webpackHotMiddleware', - 'router', - 'www', - 'favicon', - '404', - '500' - ], - - /**************************************************************************** - * * - * Example custom middleware; logs each request to the console. * - * * - ****************************************************************************/ - - // myRequestLogger: function (req, res, next) { - // console.log("Requested :: ", req.method, req.url); - // return next(); - // } - - /*************************************************************************** - * * - * The body parser that will handle incoming multipart HTTP requests. By * - * default as of v0.10, Sails uses * - * [skipper](http://github.com/balderdashy/skipper). See * - * http://www.senchalabs.org/connect/multipart.html for other options. * - * * - ***************************************************************************/ - - // bodyParser: require('skipper') - }, - - /*************************************************************************** - * * - * The number of seconds to cache flat files on disk being served by * - * Express static middleware (by default, these files are in `.tmp/public`) * - * * - * The HTTP static cache is only active in a 'production' environment, * - * since that's the only time Express will cache flat-files. * - * * - ***************************************************************************/ - - // cache: 31557600000 -}; diff --git a/config/i18n.js b/config/i18n.js deleted file mode 100644 index facf7070fdf..00000000000 --- a/config/i18n.js +++ /dev/null @@ -1,57 +0,0 @@ -/** - * Internationalization / Localization Settings - * (sails.config.i18n) - * - * If your app will touch people from all over the world, i18n (or internationalization) - * may be an important part of your international strategy. - * - * - * For more informationom i18n in Sails, check out: - * http://sailsjs.org/#!/documentation/concepts/Internationalization - * - * For a complete list of i18n options, see: - * https://github.com/mashpie/i18n-node#list-of-configuration-options - * - * - */ - -module.exports.i18n = { - - /*************************************************************************** - * * - * Which locales are supported? * - * * - ***************************************************************************/ - - // locales: ['en', 'es', 'fr', 'de'], - - /**************************************************************************** - * * - * What is the default locale for the site? Note that this setting will be * - * overridden for any request that sends an "Accept-Language" header (i.e. * - * most browsers), but it's still useful if you need to localize the * - * response for requests made by non-browser clients (e.g. cURL). * - * * - ****************************************************************************/ - - // defaultLocale: 'en', - - /**************************************************************************** - * * - * Automatically add new keys to locale (translation) files when they are * - * encountered during a request? * - * * - ****************************************************************************/ - - // updateFiles: false, - - /**************************************************************************** - * * - * Path (relative to app root) of directory to store locale (translation) * - * files in. * - * * - ****************************************************************************/ - - // localesDirectory: '/config/locales' - -}; diff --git a/config/local.js b/config/local.js deleted file mode 100644 index d64c3b18129..00000000000 --- a/config/local.js +++ /dev/null @@ -1,85 +0,0 @@ -/** - * Local environment settings - * - * Use this file to specify configuration settings for use while developing - * the app on your personal system: for example, this would be a good place - * to store database or email passwords that apply only to you, and shouldn't - * be shared with others in your organization. - * - * These settings take precedence over all other config files, including those - * in the env/ subfolder. - * - * PLEASE NOTE: - * local.js is included in your .gitignore, so if you're using git - * as a version control solution for your Sails app, keep in mind that - * this file won't be committed to your repository! - * - * Good news is, that means you can specify configuration for your local - * machine in this file without inadvertently committing personal information - * (like database passwords) to the repo. Plus, this prevents other members - * of your team from commiting their local configuration changes on top of yours. - * - * In a production environment, you probably want to leave this file out - * entirely and leave all your settings in env/production.js - * - * - * For more information, check out: - * http://sailsjs.org/#!/documentation/anatomy/myApp/config/local.js.html - */ - -module.exports = { - - /*************************************************************************** - * Your SSL certificate and key, if you want to be able to serve HTTP * - * responses over https:// and/or use websockets over the wss:// protocol * - * (recommended for HTTP, strongly encouraged for WebSockets) * - * * - * In this example, we'll assume you created a folder in your project, * - * `config/ssl` and dumped your certificate/key files there: * - ***************************************************************************/ - - // ssl: { - // ca: require('fs').readFileSync(__dirname + './ssl/my_apps_ssl_gd_bundle.crt'), - // key: require('fs').readFileSync(__dirname + './ssl/my_apps_ssl.key'), - // cert: require('fs').readFileSync(__dirname + './ssl/my_apps_ssl.crt') - // }, - - /*************************************************************************** - * The `port` setting determines which TCP port your app will be * - * deployed on. * - * * - * Ports are a transport-layer concept designed to allow many different * - * networking applications run at the same time on a single computer. * - * More about ports: * - * http://en.wikipedia.org/wiki/Port_(computer_networking) * - * * - * By default, if it's set, Sails uses the `PORT` environment variable. * - * Otherwise it falls back to port 1337. * - * * - * In env/production.js, you'll probably want to change this setting * - * to 80 (http://) or 443 (https://) if you have an SSL certificate * - ***************************************************************************/ - - // port: process.env.PORT || 1337, - - /*************************************************************************** - * The runtime "environment" of your Sails app is either typically * - * 'development' or 'production'. * - * * - * In development, your Sails app will go out of its way to help you * - * (for instance you will receive more descriptive error and * - * debugging output) * - * * - * In production, Sails configures itself (and its dependencies) to * - * optimize performance. You should always put your app in production mode * - * before you deploy it to a server. This helps ensure that your Sails * - * app remains stable, performant, and scalable. * - * * - * By default, Sails sets its environment using the `NODE_ENV` environment * - * variable. If NODE_ENV is not set, Sails will run in the * - * 'development' environment. * - ***************************************************************************/ - - // environment: process.env.NODE_ENV || 'development' - -}; diff --git a/config/locales/_README.md b/config/locales/_README.md deleted file mode 100644 index 5f89b1548eb..00000000000 --- a/config/locales/_README.md +++ /dev/null @@ -1,28 +0,0 @@ -# Internationalization / Localization Settings - -> Also see the official docs on internationalization/localization: -> http://links.sailsjs.org/docs/config/locales - -## Locales -All locale files live under `config/locales`. Here is where you can add translations -as JSON key-value pairs. The name of the file should match the language that you are supporting, which allows for automatic language detection based on request headers. - -Here is an example locale stringfile for the Spanish language (`config/locales/es.json`): -```json -{ - "Hello!": "Hola!", - "Hello %s, how are you today?": "¿Hola %s, como estas?", -} -``` -## Usage -Locales can be accessed in controllers/policies through `res.i18n()`, or in views through the `__(key)` or `i18n(key)` functions. -Remember that the keys are case sensitive and require exact key matches, e.g. - -```ejs -

<%= __('Welcome to PencilPals!') %>

-

<%= i18n('Hello %s, how are you today?', 'Pencil Maven') %>

-

<%= i18n('That\'s right-- you can use either i18n() or __()') %>

-``` - -## Configuration -Localization/internationalization config can be found in `config/i18n.js`, from where you can set your supported locales. diff --git a/config/locales/de.json b/config/locales/de.json deleted file mode 100644 index 12f23d94a29..00000000000 --- a/config/locales/de.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "Welcome": "Willkommen", - "A brand new app.": "Eine neue App." -} diff --git a/config/locales/en.json b/config/locales/en.json deleted file mode 100644 index 6eeeb33c6c8..00000000000 --- a/config/locales/en.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "Welcome": "Welcome", - "A brand new app.": "A brand new app." -} diff --git a/config/locales/es.json b/config/locales/es.json deleted file mode 100644 index 91f824802ec..00000000000 --- a/config/locales/es.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "Welcome": "Bienvenido", - "A brand new app.": "Una aplicación de la nueva marca." -} diff --git a/config/locales/fr.json b/config/locales/fr.json deleted file mode 100644 index 972935c6a27..00000000000 --- a/config/locales/fr.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "Welcome": "Bienvenue", - "A brand new app.": "Une toute nouvelle application." -} diff --git a/config/log.js b/config/log.js deleted file mode 100644 index e192529e4a7..00000000000 --- a/config/log.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Built-in Log Configuration - * (sails.config.log) - * - * Configure the log level for your app, as well as the transport - * (Underneath the covers, Sails uses Winston for logging, which - * allows for some pretty neat custom transports/adapters for log messages) - * - * For more information on the Sails logger, check out: - * http://sailsjs.org/#!/documentation/concepts/Logging - */ - -module.exports.log = { - - /*************************************************************************** - * * - * Valid `level` configs: i.e. the minimum log level to capture with * - * sails.log.*() * - * * - * The order of precedence for log levels from lowest to highest is: * - * silly, verbose, info, debug, warn, error * - * * - * You may also set the level to "silent" to suppress all logs. * - * * - ***************************************************************************/ - - // level: 'info' - -}; diff --git a/config/models.js b/config/models.js deleted file mode 100644 index 49ac9eeb691..00000000000 --- a/config/models.js +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Default model configuration - * (sails.config.models) - * - * Unless you override them, the following properties will be included - * in each of your models. - * - * For more info on Sails models, see: - * http://sailsjs.org/#!/documentation/concepts/ORM - */ - -module.exports.models = { - - /*************************************************************************** - * * - * Your app's default connection. i.e. the name of one of your app's * - * connections (see `config/connections.js`) * - * * - ***************************************************************************/ - // connection: 'localDiskDb', - - /*************************************************************************** - * * - * How and whether Sails will attempt to automatically rebuild the * - * tables/collections/etc. in your schema. * - * * - * See http://sailsjs.org/#!/documentation/concepts/ORM/model-settings.html * - * * - ***************************************************************************/ - // migrate: 'alter' - -}; diff --git a/config/policies.js b/config/policies.js deleted file mode 100644 index 1785d4ef60c..00000000000 --- a/config/policies.js +++ /dev/null @@ -1,51 +0,0 @@ -/** - * Policy Mappings - * (sails.config.policies) - * - * Policies are simple functions which run **before** your controllers. - * You can apply one or more policies to a given controller, or protect - * its actions individually. - * - * Any policy file (e.g. `api/policies/authenticated.js`) can be accessed - * below by its filename, minus the extension, (e.g. "authenticated") - * - * For more information on how policies work, see: - * http://sailsjs.org/#!/documentation/concepts/Policies - * - * For more information on configuring policies, check out: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.policies.html - */ - - -module.exports.policies = { - - /*************************************************************************** - * * - * Default policy for all controllers and actions (`true` allows public * - * access) * - * * - ***************************************************************************/ - - // '*': true, - - /*************************************************************************** - * * - * Here's an example of mapping some policies to run before a controller * - * and its actions * - * * - ***************************************************************************/ - // RabbitController: { - - // Apply the `false` policy as the default for all of RabbitController's actions - // (`false` prevents all access, which ensures that nothing bad happens to our rabbits) - // '*': false, - - // For the action `nurture`, apply the 'isRabbitMother' policy - // (this overrides `false` above) - // nurture : 'isRabbitMother', - - // Apply the `isNiceToAnimals` AND `hasRabbitFood` policies - // before letting any users feed our rabbits - // feed : ['isNiceToAnimals', 'hasRabbitFood'] - // } -}; diff --git a/config/routes.js b/config/routes.js deleted file mode 100644 index 5d769d3d6a6..00000000000 --- a/config/routes.js +++ /dev/null @@ -1,49 +0,0 @@ -/** - * Route Mappings - * (sails.config.routes) - * - * Your routes map URLs to views and controllers. - * - * If Sails receives a URL that doesn't match any of the routes below, - * it will check for matching files (images, scripts, stylesheets, etc.) - * in your assets directory. e.g. `http://localhost:1337/images/foo.jpg` - * might match an image file: `/assets/images/foo.jpg` - * - * Finally, if those don't match either, the default 404 handler is triggered. - * See `api/responses/notFound.js` to adjust your app's 404 logic. - * - * Note: Sails doesn't ACTUALLY serve stuff from `assets`-- the default Gruntfile in Sails copies - * flat files from `assets` to `.tmp/public`. This allows you to do things like compile LESS or - * CoffeeScript for the front-end. - * - * For more information on configuring custom routes, check out: - * http://sailsjs.org/#!/documentation/concepts/Routes/RouteTargetSyntax.html - */ - -module.exports.routes = { - - /*************************************************************************** - * * - * Make the view located at `views/homepage.ejs` (or `views/homepage.jade`, * - * etc. depending on your default view engine) your home page. * - * * - * (Alternatively, remove this and add an `index.html` file in your * - * `assets` directory) * - * * - ***************************************************************************/ - - '/': { - view: 'homepage' - } - - /*************************************************************************** - * * - * Custom routes here... * - * * - * If a request to a URL doesn't match any of the custom routes above, it * - * is matched against Sails route blueprints. See `config/blueprints.js` * - * for configuration options and examples. * - * * - ***************************************************************************/ - -}; diff --git a/config/session.js b/config/session.js deleted file mode 100644 index 89f05df8466..00000000000 --- a/config/session.js +++ /dev/null @@ -1,91 +0,0 @@ -/** - * Session Configuration - * (sails.config.session) - * - * Sails session integration leans heavily on the great work already done by - * Express, but also unifies Socket.io with the Connect session store. It uses - * Connect's cookie parser to normalize configuration differences between Express - * and Socket.io and hooks into Sails' middleware interpreter to allow you to access - * and auto-save to `req.session` with Socket.io the same way you would with Express. - * - * For more information on configuring the session, check out: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.session.html - */ - -module.exports.session = { - - /*************************************************************************** - * * - * Session secret is automatically generated when your new app is created * - * Replace at your own risk in production-- you will invalidate the cookies * - * of your users, forcing them to log in again. * - * * - ***************************************************************************/ - secret: 'd7eec01a3b23c40ea93b37aa38817c3e', - - - /*************************************************************************** - * * - * Set the session cookie expire time The maxAge is set by milliseconds, * - * the example below is for 24 hours * - * * - ***************************************************************************/ - - // cookie: { - // maxAge: 24 * 60 * 60 * 1000 - // }, - - /*************************************************************************** - * * - * In production, uncomment the following lines to set up a shared redis * - * session store that can be shared across multiple Sails.js servers * - ***************************************************************************/ - - // adapter: 'redis', - - /*************************************************************************** - * * - * The following values are optional, if no options are set a redis * - * instance running on localhost is expected. Read more about options at: * - * https://github.com/visionmedia/connect-redis * - * * - * * - ***************************************************************************/ - - // host: 'localhost', - // port: 6379, - // ttl: , - // db: 0, - // pass: , - // prefix: 'sess:', - - - /*************************************************************************** - * * - * Uncomment the following lines to use your Mongo adapter as a session * - * store * - * * - ***************************************************************************/ - - // adapter: 'mongo', - // host: 'localhost', - // port: 27017, - // db: 'sails', - // collection: 'sessions', - - /*************************************************************************** - * * - * Optional Values: * - * * - * # Note: url will override other connection settings url: * - * 'mongodb://user:pass@host:port/database/collection', * - * * - ***************************************************************************/ - - // username: '', - // password: '', - // auto_reconnect: false, - // ssl: false, - // stringify: true - -}; diff --git a/config/sockets.js b/config/sockets.js deleted file mode 100644 index f23b925ae66..00000000000 --- a/config/sockets.js +++ /dev/null @@ -1,141 +0,0 @@ -/** - * WebSocket Server Settings - * (sails.config.sockets) - * - * These settings provide transparent access to the options for Sails' - * encapsulated WebSocket server, as well as some additional Sails-specific - * configuration layered on top. - * - * For more information on sockets configuration, including advanced config options, see: - * http://sailsjs.org/#!/documentation/reference/sails.config/sails.config.sockets.html - */ - -module.exports.sockets = { - - - /*************************************************************************** - * * - * Node.js (and consequently Sails.js) apps scale horizontally. It's a * - * powerful, efficient approach, but it involves a tiny bit of planning. At * - * scale, you'll want to be able to copy your app onto multiple Sails.js * - * servers and throw them behind a load balancer. * - * * - * One of the big challenges of scaling an application is that these sorts * - * of clustered deployments cannot share memory, since they are on * - * physically different machines. On top of that, there is no guarantee * - * that a user will "stick" with the same server between requests (whether * - * HTTP or sockets), since the load balancer will route each request to the * - * Sails server with the most available resources. However that means that * - * all room/pubsub/socket processing and shared memory has to be offloaded * - * to a shared, remote messaging queue (usually Redis) * - * * - * Luckily, Socket.io (and consequently Sails.js) apps support Redis for * - * sockets by default. To enable a remote redis pubsub server, uncomment * - * the config below. * - * * - * Worth mentioning is that, if `adapter` config is `redis`, but host/port * - * is left unset, Sails will try to connect to redis running on localhost * - * via port 6379 * - * * - ***************************************************************************/ - // adapter: 'memory', - - // - // -OR- - // - - // adapter: 'redis', - // host: '127.0.0.1', - // port: 6379, - // db: 'sails', - // pass: '', - - - - /*************************************************************************** - * * - * Whether to expose a 'get /__getcookie' route with CORS support that sets * - * a cookie (this is used by the sails.io.js socket client to get access to * - * a 3rd party cookie and to enable sessions). * - * * - * Warning: Currently in this scenario, CORS settings apply to interpreted * - * requests sent via a socket.io connection that used this cookie to * - * connect, even for non-browser clients! (e.g. iOS apps, toasters, node.js * - * unit tests) * - * * - ***************************************************************************/ - - // grant3rdPartyCookie: true, - - - - /*************************************************************************** - * * - * `beforeConnect` * - * * - * This custom beforeConnect function will be run each time BEFORE a new * - * socket is allowed to connect, when the initial socket.io handshake is * - * performed with the server. * - * * - * By default, when a socket tries to connect, Sails allows it, every time. * - * (much in the same way any HTTP request is allowed to reach your routes. * - * If no valid cookie was sent, a temporary session will be created for the * - * connecting socket. * - * * - * If the cookie sent as part of the connection request doesn't match any * - * known user session, a new user session is created for it. * - * * - * In most cases, the user would already have a cookie since they loaded * - * the socket.io client and the initial HTML page you're building. * - * * - * However, in the case of cross-domain requests, it is possible to receive * - * a connection upgrade request WITHOUT A COOKIE (for certain transports) * - * In this case, there is no way to keep track of the requesting user * - * between requests, since there is no identifying information to link * - * him/her with a session. The sails.io.js client solves this by connecting * - * to a CORS/jsonp endpoint first to get a 3rd party cookie(fortunately this* - * works, even in Safari), then opening the connection. * - * * - * You can also pass along a ?cookie query parameter to the upgrade url, * - * which Sails will use in the absence of a proper cookie e.g. (when * - * connecting from the client): * - * io.sails.connect('http://localhost:1337?cookie=smokeybear') * - * * - * Finally note that the user's cookie is NOT (and will never be) accessible* - * from client-side javascript. Using HTTP-only cookies is crucial for your * - * app's security. * - * * - ***************************************************************************/ - // beforeConnect: function(handshake, cb) { - // // `true` allows the connection - // return cb(null, true); - // - // // (`false` would reject the connection) - // }, - - - /*************************************************************************** - * * - * `afterDisconnect` * - * * - * This custom afterDisconnect function will be run each time a socket * - * disconnects * - * * - ***************************************************************************/ - // afterDisconnect: function(session, socket, cb) { - // // By default: do nothing. - // return cb(); - // }, - - /*************************************************************************** - * * - * `transports` * - * * - * A array of allowed transport methods which the clients will try to use. * - * On server environments that don't support sticky sessions, the "polling" * - * transport should be disabled. * - * * - ***************************************************************************/ - // transports: ["polling", "websocket"] - -}; diff --git a/config/views.js b/config/views.js deleted file mode 100644 index e49f1cc6e5b..00000000000 --- a/config/views.js +++ /dev/null @@ -1,95 +0,0 @@ -/** - * View Engine Configuration - * (sails.config.views) - * - * Server-sent views are a classic and effective way to get your app up - * and running. Views are normally served from controllers. Below, you can - * configure your templating language/framework of choice and configure - * Sails' layout support. - * - * For more information on views and layouts, check out: - * http://sailsjs.org/#!/documentation/concepts/Views - */ - -module.exports.views = { - - /**************************************************************************** - * * - * View engine (aka template language) to use for your app's *server-side* * - * views * - * * - * Sails+Express supports all view engines which implement TJ Holowaychuk's * - * `consolidate.js`, including, but not limited to: * - * * - * ejs, jade, handlebars, mustache underscore, hogan, haml, haml-coffee, * - * dust atpl, eco, ect, jazz, jqtpl, JUST, liquor, QEJS, swig, templayed, * - * toffee, walrus, & whiskers * - * * - * For more options, check out the docs: * - * https://github.com/balderdashy/sails-wiki/blob/0.9/config.views.md#engine * - * * - ****************************************************************************/ - - engine: 'ejs', - - - /**************************************************************************** - * * - * Layouts are simply top-level HTML templates you can use as wrappers for * - * your server-side views. If you're using ejs or jade, you can take * - * advantage of Sails' built-in `layout` support. * - * * - * When using a layout, when one of your views is served, it is injected * - * into the `body` partial defined in the layout. This lets you reuse header * - * and footer logic between views. * - * * - * NOTE: Layout support is only implemented for the `ejs` view engine! * - * For most other engines, it is not necessary, since they implement * - * partials/layouts themselves. In those cases, this config will be * - * silently ignored. * - * * - * The `layout` setting may be set to one of the following: * - * * - * If `false`, layouts will be disabled. Otherwise, if a string is * - * specified, it will be interpreted as the relative path to your layout * - * file from `views/` folder. (the file extension, ".ejs", should be * - * omitted) * - * * - ****************************************************************************/ - - /**************************************************************************** - * * - * Using Multiple Layouts * - * * - * If you're using the default `ejs` or `handlebars` Sails supports the use * - * of multiple `layout` files. To take advantage of this, before rendering a * - * view, override the `layout` local in your controller by setting * - * `res.locals.layout`. (this is handy if you parts of your app's UI look * - * completely different from each other) * - * * - * e.g. your default might be * - * layout: 'layouts/public' * - * * - * But you might override that in some of your controllers with: * - * layout: 'layouts/internal' * - * * - ****************************************************************************/ - - layout: false, - - /**************************************************************************** - * * - * Partials are simply top-level snippets you can leverage to reuse template * - * for your server-side views. If you're using handlebars, you can take * - * advantage of Sails' built-in `partials` support. * - * * - * If `false` or empty partials will be located in the same folder as views. * - * Otherwise, if a string is specified, it will be interpreted as the * - * relative path to your partial files from `views/` folder. * - * * - ****************************************************************************/ - - partials: false - - -}; diff --git a/config/webpack.js b/config/webpack.js deleted file mode 100644 index da0a3c08031..00000000000 --- a/config/webpack.js +++ /dev/null @@ -1,83 +0,0 @@ -var webpack = require('webpack'); -var path = require('path'); - -// Webpack plugins -var CopyWebpackPlugin = require('copy-webpack-plugin'); - -// compile js assets into a single bundle file -module.exports.webpack = { - options: { - context: path.join(__dirname, '..'), - - devtool: 'eval', - - entry: [ - './assets/js', - 'webpack-hot-middleware/client' - ], - - output: { - path: path.resolve(__dirname, '../.tmp/public/assets'), - publicPath: "/", - filename: 'js/app.js' - }, - - plugins: [ - new webpack.HotModuleReplacementPlugin(), - new webpack.NoErrorsPlugin(), - - /* Copy sails.io.js unmolested: */ - new CopyWebpackPlugin([ - { - from: 'assets/js/dependencies', - to: 'js/dependencies', - force: true - } - ]) - ], - - resolve: { - modulesDirectories: ['node_modules', './assets'], - extensions: ['', '.js', '.jsx'] - }, - - module: { - loaders: [ - { - test: /\.jsx?$/, - exclude: /(bower_components|node_modules)/, - loader: 'babel', - }, - { - test: /\.scss$/, - loader: 'style-loader!css-loader!postcss-loader!sass-loader' - }, - { - test: /\.jpe?g$|\.png$|\.gif|\.svg$/, - loader: 'file-loader?name=images/[name].[ext]' - }, - { - test: /\.wav$|\.mp3$/, - loader: 'file-loader?name=audio/[name].[ext]' - }, - { - test: /\.woff$|\.ttf$/, - loader: 'file-loader?name=fonts/[name].[ext]' - } - ] - } - }, - - postcss: function plugins(bundler) { - // PostCSS plugins - return [ - require('autoprefixer')({ browsers: ['last 2 versions'] }), - require('postcss-color-rgba-fallback')() - ] - }, - - // docs: https://webpack.github.io/docs/node.js-api.html#compiler - watchOptions: { - aggregateTimeout: 300 - } -}; From 627fefa77d623ab369ed62ff088a052150d3ffec Mon Sep 17 00:00:00 2001 From: Jordan Husney Date: Sat, 5 Mar 2016 12:52:12 -0500 Subject: [PATCH 6/9] Bumped to using `falcor-saddle` v0.1.0 --- package.json | 2 +- static/dist/main-e35c5716b0f31c4bec25.css | 2 -- static/dist/main-e35c5716b0f31c4bec25.css.map | 1 - static/dist/main-e35c5716b0f31c4bec25.js | 23 ------------------- static/dist/main-e35c5716b0f31c4bec25.js.map | 1 - 5 files changed, 1 insertion(+), 28 deletions(-) delete mode 100644 static/dist/main-e35c5716b0f31c4bec25.css delete mode 100644 static/dist/main-e35c5716b0f31c4bec25.css.map delete mode 100644 static/dist/main-e35c5716b0f31c4bec25.js delete mode 100644 static/dist/main-e35c5716b0f31c4bec25.js.map diff --git a/package.json b/package.json index 6c7f500bbe7..2a5a72afc29 100644 --- a/package.json +++ b/package.json @@ -94,7 +94,7 @@ "falcor-express": "^0.1.2", "falcor-http-datasource": "^0.1.2", "falcor-router": "^0.2.12", - "falcor-saddle": "0.0.3", + "falcor-saddle": "0.1.0", "file-loader": "^0.8.5", "history": "1.17.0", "hoist-non-react-statics": "^1.0.3", diff --git a/static/dist/main-e35c5716b0f31c4bec25.css b/static/dist/main-e35c5716b0f31c4bec25.css deleted file mode 100644 index edbba3221b9..00000000000 --- a/static/dist/main-e35c5716b0f31c4bec25.css +++ /dev/null @@ -1,2 +0,0 @@ -._3CaW76q_itao4vT6ImAtWY{font-variant:italics}._3uiV15bAtFsNhGVmJOLUIm{margin:0 30px}body{font-family:Helvetica Neue,Helvetica,sans-serif}._2N2tMYhyM4guw6BcfLIHRZ .navbar-brand{position:relative;padding-left:50px}._2N2tMYhyM4guw6BcfLIHRZ .H2EnzIdjXxu077Pyos9u9{position:absolute;top:5px;left:5px;display:inline-block;background:#2d2d2d url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExODIyQUNDNjJBRjdFQjgyRSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpGM0RENEFGQTJEODMxMUU1QjQ4QkIwRjdGNEM3OUNFMiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpGM0RENEFGOTJEODMxMUU1QjQ4QkIwRjdGNEM3OUNFMiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MDE4MDExNzQwNzIwNjgxMTgyMkFDQzYyQUY3RUI4MkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDE4MDExNzQwNzIwNjgxMTgyMkFDQzYyQUY3RUI4MkUiLz4gPC9yZGY6RGVzY3Jp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) no-repeat center center;width:40px;height:40px;background-size:80%;margin:0 10px 0 0;border-radius:20px}._2N2tMYhyM4guw6BcfLIHRZ nav .fa{font-size:2em;line-height:20px}._2TNaaqV4672lJZWDK3SmYl{margin:50px 0}._7W8gWO2O6UzmbjycMt06y dd{margin-bottom:15px}._3YnXLhQSO45M7g8zMwTS2m{background:#2d2d2d;padding:40px 20px;color:#fff;text-align:center}._3YnXLhQSO45M7g8zMwTS2m ._3tAuMHJjDL3Bsi2es1fe9w{margin:auto;height:200px;width:200px;border-radius:75pt;border:1px solid #33e0ff;box-shadow:inset 0 0 10px #33e0ff;vertical-align:middle}._3YnXLhQSO45M7g8zMwTS2m ._3tAuMHJjDL3Bsi2es1fe9w p{line-height:200px;margin:0}._3YnXLhQSO45M7g8zMwTS2m ._3tAuMHJjDL3Bsi2es1fe9w img{width:75%;margin:auto}._3YnXLhQSO45M7g8zMwTS2m h1{color:#33e0ff;font-size:4em}._3YnXLhQSO45M7g8zMwTS2m h2{color:#ddd;font-size:2em;margin:20px}._3YnXLhQSO45M7g8zMwTS2m a{color:#ddd}._3YnXLhQSO45M7g8zMwTS2m p{margin:10px}._3YnXLhQSO45M7g8zMwTS2m ._1zm76T9uCMq1qNPr-NvB67,._3YnXLhQSO45M7g8zMwTS2m ._1zm76T9uCMq1qNPr-NvB67 a{color:#777}._3YnXLhQSO45M7g8zMwTS2m ._1qAW-pHBGZ2CubHM1ExTk0{font-size:1.5em}.xXL-P-ZWCR_7Xn1jEVOAG{text-align:center;margin:20px}._3b78fAtttDm8hG8XmGjptr .tzSnAInHGmOuUSkWYNeBH{margin-left:20px}._13mAukbEFo9faR8plXhVHq input{padding:5px 10px;border-radius:5px;border:1px solid #ccc}._13mAukbEFo9faR8plXhVHq form{margin:30px 0}._13mAukbEFo9faR8plXhVHq form .btn{margin-left:10px} -/*# sourceMappingURL=main-e35c5716b0f31c4bec25.css.map*/ \ No newline at end of file diff --git a/static/dist/main-e35c5716b0f31c4bec25.css.map b/static/dist/main-e35c5716b0f31c4bec25.css.map deleted file mode 100644 index 30f9f276835..00000000000 --- a/static/dist/main-e35c5716b0f31c4bec25.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/components/src/components/InfoBar.scss","webpack:///./src/views/src/views/App.scss","webpack:///./src/views/src/views/Home.scss","webpack:///./src/views/src/views/Widgets.scss","webpack:///./src/views/src/views/Login.scss"],"names":[],"mappings":"AAAA,yBACE,oBAAsB,CAGxB,yBACE,aAAc,CCLhB,KACE,+CAAqD,CAGhC,uCACnB,kBACA,iBAAmB,CAErB,gDACE,kBAEA,QACA,SACA,qBACA,yEACA,WACA,YACA,oBACA,kBACA,kBAAoB,CAEP,iCACb,cACA,gBAAkB,CAGtB,yBACE,aAAe,CADJ,k1UCtBX,2BACE,kBAAoB,CAGxB,yBACE,mBACA,kBACA,WACA,iBAAmB,CACnB,kDAEE,YACA,aACA,YACA,mBACA,yBACA,kCACA,qBAAuB,CACvB,oDACE,kBACA,QAAY,CAEd,sDACE,UACA,WAAa,CAGjB,4BACE,cACA,aAAe,CAEjB,4BACE,WACA,cACA,WAAa,CAEf,2BACE,UAAY,CAEd,2BACE,WAAa,CAIb,sGACE,UAhDS,CAmDb,kDACE,eAAiB,CAIrB,uBACE,kBACA,WAAa,CC1Db,gDACE,gBAAkB,CCDpB,+BACE,iBACA,kBACA,qBAAuB,CAEzB,8BACE,aAAe,CACH,mCACV,gBAAkB","file":"main-e35c5716b0f31c4bec25.css","sourcesContent":[".infoBar {\n font-variant: italics;\n}\n\n.time {\n margin: 0 30px;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** webpack:///autoprefixer-loader?browsers=last 2 version!./~/sass-loader?outputStyle=expanded&sourceMap=true&sourceMapContents=true!./src/components/src/components/InfoBar.scss\n **/","body {\n font-family: \"Helvetica Neue\", Helvetica, sans-serif;\n}\n.app {\n :global(.navbar-brand) {\n position:relative;\n padding-left: 50px;\n }\n .brand {\n position:absolute;\n $size: 40px;\n top:5px;\n left:5px;\n display:inline-block;\n background: #2d2d2d url('./logo.png') no-repeat center center;\n width: $size;\n height: $size;\n background-size: 80%;\n margin: 0 10px 0 0;\n border-radius: $size / 2;\n }\n nav :global(.fa) {\n font-size: 2em;\n line-height: 20px;\n }\n}\n.appContent {\n margin: 50px 0; // for fixed navbar\n}\n\n\n\n/** WEBPACK FOOTER **\n ** webpack:///autoprefixer-loader?browsers=last 2 version!./~/sass-loader?outputStyle=expanded&sourceMap=true&sourceMapContents=true!./src/views/src/views/App.scss\n **/","$cyan: #33e0ff;\n$humility: #777;\n\n.home {\n dd {\n margin-bottom: 15px;\n }\n}\n.masthead {\n background: #2d2d2d;\n padding: 40px 20px;\n color: white;\n text-align: center;\n .logo {\n $size: 200px;\n margin: auto;\n height: $size;\n width: $size;\n border-radius: $size / 2;\n border: 1px solid $cyan;\n box-shadow: inset 0 0 10px $cyan;\n vertical-align: middle;\n p {\n line-height: $size;\n margin: 0px;\n }\n img {\n width: 75%;\n margin: auto;\n }\n }\n h1 {\n color: $cyan;\n font-size: 4em;\n }\n h2 {\n color: #ddd;\n font-size: 2em;\n margin: 20px;\n }\n a {\n color: #ddd;\n }\n p {\n margin: 10px;\n }\n .humility {\n color: $humility;\n a {\n color: $humility;\n }\n }\n .github {\n font-size: 1.5em;\n }\n}\n\n.counterContainer {\n text-align: center;\n margin: 20px;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** webpack:///autoprefixer-loader?browsers=last 2 version!./~/sass-loader?outputStyle=expanded&sourceMap=true&sourceMapContents=true!./src/views/src/views/Home.scss\n **/",".widgets {\n .refreshBtn {\n margin-left: 20px;\n }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** webpack:///autoprefixer-loader?browsers=last 2 version!./~/sass-loader?outputStyle=expanded&sourceMap=true&sourceMapContents=true!./src/views/src/views/Widgets.scss\n **/",".loginPage {\n input {\n padding: 5px 10px;\n border-radius: 5px;\n border: 1px solid #ccc;\n }\n form {\n margin: 30px 0;\n :global(.btn) {\n margin-left: 10px;\n }\n }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** webpack:///autoprefixer-loader?browsers=last 2 version!./~/sass-loader?outputStyle=expanded&sourceMap=true&sourceMapContents=true!./src/views/src/views/Login.scss\n **/"],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/main-e35c5716b0f31c4bec25.js b/static/dist/main-e35c5716b0f31c4bec25.js deleted file mode 100644 index 26c07c3382e..00000000000 --- a/static/dist/main-e35c5716b0f31c4bec25.js +++ /dev/null @@ -1,23 +0,0 @@ -!function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="/dist/",t(0)}(function(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))switch(typeof e[t]){case"function":break;case"object":e[t]=function(t){var n=t.slice(1),r=e[t[0]];return function(e,t,o){r.apply(this,[e,t,o].concat(n))}}(e[t]);break;default:e[t]=e[e[t]]}return e}([function(e,t,n){"use strict";var r=n(9)["default"];n(257);var o=n(4),a=r(o),i=n(276),u=r(i),s=n(66),l=r(s),c=n(385),f=r(c),p=n(374),d=r(p),h=n(167),m=r(h),g=new u["default"],v=new d["default"],y=document.getElementById("content"),b=f["default"](v,window.__data),E=new l["default"](document.location.pathname,document.location.search);m["default"](E,g,b).then(function(e){var t=e.component;a["default"].render(t,y)},function(e){console.error(e)})},[415,171],function(e,t,n){"use strict";var r=function(e,t,n,r,o,a,i,u){if(!e){var s;if(void 0===t)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,o,a,i,u],c=0;s=new Error("Invariant Violation: "+t.replace(/%s/g,function(){return l[c++]}))}throw s.framesToPop=1,s}};e.exports=r},function(e,t,n){function r(e,t){return function(){return e.apply(t,arguments)}}function o(e,t,n){var c,f,p,d,h=e&o.G,m=e&o.P,g=h?i:e&o.S?i[t]:(i[t]||{}).prototype,v=h?u:u[t]||(u[t]={});h&&(n=t);for(c in n)f=!(e&o.F)&&g&&c in g,p=(f?g:n)[c],d=e&o.B&&f?r(p,i):m&&s(p)?r(Function.call,p):p,g&&!f&&l(g,c,p),v[c]!=p&&a.hide(v,c,d),m&&((v.prototype||(v.prototype={}))[c]=p)}var a=n(1),i=a.g,u=a.core,s=a.isFunction,l=n(21);i.core=u,o.F=1,o.G=2,o.S=4,o.P=8,o.B=16,o.W=32,e.exports=o},function(e,t,n){e.exports=n(305)},[415,238],function(e,t){"use strict";function n(e,t){if(null==e)throw new TypeError("Object.assign target cannot be null or undefined");for(var n=Object(e),r=Object.prototype.hasOwnProperty,o=1;o1){for(var p=Array(f),d=0;f>d;d++)p[d]=arguments[d+2];s.children=p}if(e&&e.defaultProps){var h=e.defaultProps;for(a in h)"undefined"==typeof s[a]&&(s[a]=h[a])}return new u(e,l,c,o.current,r.current,s)},u.createFactory=function(e){var t=u.createElement.bind(null,e);return t.type=e,t},u.cloneAndReplaceProps=function(e,t){var n=new u(e.type,e.key,e.ref,e._owner,e._context,t);return n},u.cloneElement=function(e,t,n){var r,s=a({},e.props),l=e.key,c=e.ref,f=e._owner;if(null!=t){void 0!==t.ref&&(c=t.ref,f=o.current),void 0!==t.key&&(l=""+t.key);for(r in t)t.hasOwnProperty(r)&&!i.hasOwnProperty(r)&&(s[r]=t[r])}var p=arguments.length-2;if(1===p)s.children=n;else if(p>1){for(var d=Array(p),h=0;p>h;h++)d[h]=arguments[h+2];s.children=d}return new u(e.type,l,c,f,e._context,s)},u.isValidElement=function(e){var t=!(!e||!e._isReactElement);return t},e.exports=u},function(e,t,n){"use strict";var r=n(30),o=r;e.exports=o},function(e,t){"use strict";t["default"]=function(e){return e&&e.__esModule?e:{"default":e}},t.__esModule=!0},function(e,t){"use strict";t["default"]=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},t.__esModule=!0},function(e,t){"use strict";var n=!("undefined"==typeof window||!window.document||!window.document.createElement),r={canUseDOM:n,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:n&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:n&&!!window.screen,isInWorker:!n};e.exports=r},[403,1],function(e,t,n){"use strict";var r=n(225)["default"];t["default"]=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=r(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(e.__proto__=t)},t.__esModule=!0},[405,1,15],[423,1,84,18],function(e,t,n){"use strict";var r=n(55),o=r({bubbled:null,captured:null}),a=r({topBlur:null,topChange:null,topClick:null,topCompositionEnd:null,topCompositionStart:null,topCompositionUpdate:null,topContextMenu:null,topCopy:null,topCut:null,topDoubleClick:null,topDrag:null,topDragEnd:null,topDragEnter:null,topDragExit:null,topDragLeave:null,topDragOver:null,topDragStart:null,topDrop:null,topError:null,topFocus:null,topInput:null,topKeyDown:null,topKeyPress:null,topKeyUp:null,topLoad:null,topMouseDown:null,topMouseMove:null,topMouseOut:null,topMouseOver:null,topMouseUp:null,topPaste:null,topReset:null,topScroll:null,topSelectionChange:null,topSubmit:null,topTextInput:null,topTouchCancel:null,topTouchEnd:null,topTouchMove:null,topTouchStart:null,topWheel:null}),i={topLevelTypes:a,PropagationPhases:o};e.exports=i},function(e,t,n){"use strict";function r(e,t){var n=_.hasOwnProperty(t)?_[t]:null;T.hasOwnProperty(t)&&y(n===w.OVERRIDE_BASE),e.hasOwnProperty(t)&&y(n===w.DEFINE_MANY||n===w.DEFINE_MANY_MERGED)}function o(e,t){if(t){y("function"!=typeof t),y(!p.isValidElement(t));var n=e.prototype;t.hasOwnProperty(C)&&A.mixins(e,t.mixins);for(var o in t)if(t.hasOwnProperty(o)&&o!==C){var a=t[o];if(r(n,o),A.hasOwnProperty(o))A[o](e,a);else{var i=_.hasOwnProperty(o),l=n.hasOwnProperty(o),c=a&&a.__reactDontBind,f="function"==typeof a,d=f&&!i&&!l&&!c;if(d)n.__reactAutoBindMap||(n.__reactAutoBindMap={}),n.__reactAutoBindMap[o]=a,n[o]=a;else if(l){var h=_[o];y(i&&(h===w.DEFINE_MANY_MERGED||h===w.DEFINE_MANY)),h===w.DEFINE_MANY_MERGED?n[o]=u(n[o],a):h===w.DEFINE_MANY&&(n[o]=s(n[o],a))}else n[o]=a}}}}function a(e,t){if(t)for(var n in t){var r=t[n];if(t.hasOwnProperty(n)){var o=n in A;y(!o);var a=n in e;y(!a),e[n]=r}}}function i(e,t){y(e&&t&&"object"==typeof e&&"object"==typeof t);for(var n in t)t.hasOwnProperty(n)&&(y(void 0===e[n]),e[n]=t[n]);return e}function u(e,t){return function(){var n=e.apply(this,arguments),r=t.apply(this,arguments);if(null==n)return r;if(null==r)return n;var o={};return i(o,n),i(o,r),o}}function s(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function l(e,t){var n=t.bind(e);return n}function c(e){for(var t in e.__reactAutoBindMap)if(e.__reactAutoBindMap.hasOwnProperty(t)){var n=e.__reactAutoBindMap[t];e[t]=l(e,d.guard(n,e.constructor.displayName+"."+t))}}var f=n(137),p=(n(26),n(7)),d=n(321),h=n(41),m=n(99),g=(n(100),n(74),n(101)),v=n(6),y=n(2),b=n(55),E=n(31),C=(n(8),E({mixins:null})),w=b({DEFINE_ONCE:null,DEFINE_MANY:null,OVERRIDE_BASE:null,DEFINE_MANY_MERGED:null}),x=[],_={mixins:w.DEFINE_MANY,statics:w.DEFINE_MANY,propTypes:w.DEFINE_MANY,contextTypes:w.DEFINE_MANY,childContextTypes:w.DEFINE_MANY,getDefaultProps:w.DEFINE_MANY_MERGED,getInitialState:w.DEFINE_MANY_MERGED,getChildContext:w.DEFINE_MANY_MERGED,render:w.DEFINE_ONCE,componentWillMount:w.DEFINE_MANY,componentDidMount:w.DEFINE_MANY,componentWillReceiveProps:w.DEFINE_MANY,shouldComponentUpdate:w.DEFINE_ONCE,componentWillUpdate:w.DEFINE_MANY,componentDidUpdate:w.DEFINE_MANY,componentWillUnmount:w.DEFINE_MANY,updateComponent:w.OVERRIDE_BASE},A={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;nn;n++){var r=v[n],o=r._pendingCallbacks;if(r._pendingCallbacks=null,d.performUpdateIfNecessary(r,e.reconcileTransaction),o)for(var a=0;ar;r++)if(e.charAt(r)!==t.charAt(r))return r;return e.length===t.length?-1:n}function o(e){var t=M(e);return t&&G.getID(t)}function a(e){var t=i(e);if(t)if(L.hasOwnProperty(t)){var n=L[t];n!==e&&(N(!c(n,t)),L[t]=e)}else L[t]=e;return t}function i(e){return e&&e.getAttribute&&e.getAttribute(k)||""}function u(e,t){var n=i(e);n!==t&&delete L[n],e.setAttribute(k,t),L[t]=e}function s(e){return L.hasOwnProperty(e)&&c(L[e],e)||(L[e]=G.findReactNodeByID(e)),L[e]}function l(e){var t=C.get(e)._rootNodeID;return b.isNullComponentID(t)?null:(L.hasOwnProperty(t)&&c(L[t],t)||(L[t]=G.findReactNodeByID(t)),L[t])}function c(e,t){if(e){N(i(e)===t);var n=G.findReactContainerForID(t);if(n&&O(n,e))return!0}return!1}function f(e){delete L[e]}function p(e){var t=L[e];return t&&c(t,e)?void(H=t):!1}function d(e){H=null,E.traverseAncestors(e,p);var t=H;return H=null,t}function h(e,t,n,r,o){var a=_.mountComponent(e,t,r,I);e._isTopLevel=!0,G._mountImageIntoNode(a,n,o)}function m(e,t,n,r){var o=T.ReactReconcileTransaction.getPooled();o.perform(h,null,e,t,n,o,r),T.ReactReconcileTransaction.release(o)}var g=n(38),v=n(39),y=(n(26),n(7)),b=(n(53),n(98)),E=n(40),C=n(41),w=n(141),x=n(35),_=n(42),A=n(101),T=n(19),I=n(77),O=n(147),M=n(353),D=n(107),N=n(2),S=n(109),P=n(110),R=(n(8),E.SEPARATOR),k=g.ID_ATTRIBUTE_NAME,L={},j=1,U=9,F={},B={},W=[],H=null,G={_instancesByReactRootID:F,scrollMonitor:function(e,t){t()},_updateRootComponent:function(e,t,n,r){return G.scrollMonitor(n,function(){A.enqueueElementInternal(e,t),r&&A.enqueueCallbackInternal(e,r)}),e},_registerComponent:function(e,t){N(t&&(t.nodeType===j||t.nodeType===U)),v.ensureScrollValueMonitoring();var n=G.registerContainer(t);return F[n]=e,n},_renderNewRootComponent:function(e,t,n){var r=D(e,null),o=G._registerComponent(r,t);return T.batchedUpdates(m,r,o,t,n),r},render:function(e,t,n){N(y.isValidElement(e));var r=F[o(t)];if(r){var a=r._currentElement;if(P(a,e))return G._updateRootComponent(r,e,t,n).getPublicInstance();G.unmountComponentAtNode(t)}var i=M(t),u=i&&G.isRenderedByReact(i),s=u&&!r,l=G._renderNewRootComponent(e,t,s).getPublicInstance();return n&&n.call(l),l},constructAndRenderComponent:function(e,t,n){var r=y.createElement(e,t);return G.render(r,n)},constructAndRenderComponentByID:function(e,t,n){var r=document.getElementById(n);return N(r),G.constructAndRenderComponent(e,t,r)},registerContainer:function(e){var t=o(e);return t&&(t=E.getReactRootIDFromNodeID(t)),t||(t=E.createReactRootID()),B[t]=e,t},unmountComponentAtNode:function(e){N(e&&(e.nodeType===j||e.nodeType===U));var t=o(e),n=F[t];return n?(G.unmountComponentFromNode(n,e),delete F[t],delete B[t],!0):!1},unmountComponentFromNode:function(e,t){for(_.unmountComponent(e),t.nodeType===U&&(t=t.documentElement);t.lastChild;)t.removeChild(t.lastChild)},findReactContainerForID:function(e){var t=E.getReactRootIDFromNodeID(e),n=B[t];return n},findReactNodeByID:function(e){var t=G.findReactContainerForID(e);return G.findComponentRoot(t,e)},isRenderedByReact:function(e){if(1!==e.nodeType)return!1;var t=G.getID(e);return t?t.charAt(0)===R:!1},getFirstReactDOM:function(e){for(var t=e;t&&t.parentNode!==t;){if(G.isRenderedByReact(t))return t;t=t.parentNode}return null},findComponentRoot:function(e,t){var n=W,r=0,o=d(t)||e;for(n[0]=o.firstChild,n.length=1;rl;l++){var p=u[l];a.hasOwnProperty(p)&&a[p]||(p===s.topWheel?c("wheel")?g.ReactEventListener.trapBubbledEvent(s.topWheel,"wheel",n):c("mousewheel")?g.ReactEventListener.trapBubbledEvent(s.topWheel,"mousewheel",n):g.ReactEventListener.trapBubbledEvent(s.topWheel,"DOMMouseScroll",n):p===s.topScroll?c("scroll",!0)?g.ReactEventListener.trapCapturedEvent(s.topScroll,"scroll",n):g.ReactEventListener.trapBubbledEvent(s.topScroll,"scroll",g.ReactEventListener.WINDOW_HANDLE):p===s.topFocus||p===s.topBlur?(c("focus",!0)?(g.ReactEventListener.trapCapturedEvent(s.topFocus,"focus",n),g.ReactEventListener.trapCapturedEvent(s.topBlur,"blur",n)):c("focusin")&&(g.ReactEventListener.trapBubbledEvent(s.topFocus,"focusin",n),g.ReactEventListener.trapBubbledEvent(s.topBlur,"focusout",n)),a[s.topBlur]=!0,a[s.topFocus]=!0):h.hasOwnProperty(p)&&g.ReactEventListener.trapBubbledEvent(p,h[p],n),a[p]=!0)}},trapBubbledEvent:function(e,t,n){return g.ReactEventListener.trapBubbledEvent(e,t,n)},trapCapturedEvent:function(e,t,n){return g.ReactEventListener.trapCapturedEvent(e,t,n)},ensureScrollValueMonitoring:function(){if(!p){var e=s.refreshScrollValues;g.ReactEventListener.monitorScrollValue(e),p=!0}},eventNameDispatchConfigs:a.eventNameDispatchConfigs,registrationNameModules:a.registrationNameModules,putListener:a.putListener,getListener:a.getListener,deleteListener:a.deleteListener,deleteAllListeners:a.deleteAllListeners});e.exports=g},function(e,t,n){"use strict";function r(e){return d+e.toString(36)}function o(e,t){return e.charAt(t)===d||t===e.length}function a(e){return""===e||e.charAt(0)===d&&e.charAt(e.length-1)!==d}function i(e,t){return 0===t.indexOf(e)&&o(t,e.length)}function u(e){return e?e.substr(0,e.lastIndexOf(d)):""}function s(e,t){if(p(a(e)&&a(t)),p(i(e,t)),e===t)return e;var n,r=e.length+h;for(n=r;n=i;i++)if(o(e,i)&&o(t,i))r=i;else if(e.charAt(i)!==t.charAt(i))break;var u=e.substr(0,r);return p(a(u)),u}function c(e,t,n,r,o,a){e=e||"",t=t||"",p(e!==t);var l=i(t,e);p(l||i(e,t));for(var c=0,f=l?u:s,d=e;;d=f(d,t)){var h;if(o&&d===e||a&&d===t||(h=n(d,l,r)),h===!1||d===t)break;p(c++1){var t=e.indexOf(d,1);return t>-1?e.substr(0,t):e}return null},traverseEnterLeave:function(e,t,n,r,o){var a=l(e,t);a!==e&&c(e,a,n,r,!1,!0),a!==t&&c(a,t,n,o,!0,!1)},traverseTwoPhase:function(e,t,n){e&&(c("",e,t,n,!0,!1),c(e,"",t,n,!1,!0))},traverseAncestors:function(e,t,n){c("",e,t,n,!0,!1)},_getFirstCommonAncestorID:l,_getNextDescendantID:s,isAncestorIDOf:i,SEPARATOR:d};e.exports=g},function(e,t){"use strict";var n={remove:function(e){e._reactInternalInstance=void 0},get:function(e){return e._reactInternalInstance},has:function(e){return void 0!==e._reactInternalInstance},set:function(e,t){e._reactInternalInstance=t}};e.exports=n},function(e,t,n){"use strict";function r(){o.attachRefs(this,this._currentElement)}var o=n(328),a=(n(53),{mountComponent:function(e,t,n,o){var a=e.mountComponent(t,n,o);return n.getReactMountReady().enqueue(r,e),a},unmountComponent:function(e){o.detachRefs(e,e._currentElement),e.unmountComponent()},receiveComponent:function(e,t,n,a){var i=e._currentElement;if(t!==i||null==t._owner){var u=o.shouldUpdateRefs(i,t);u&&o.detachRefs(e,i),e.receiveComponent(t,n,a),u&&n.getReactMountReady().enqueue(r,e)}},performUpdateIfNecessary:function(e,t){e.performUpdateIfNecessary(t)}});e.exports=a},function(e,t,n){(function(e){"use strict";function n(e){throw new Error("server-side only css resolver called on client")}function r(e){if(!e)return"";throw new Error("server-side only image resolver called on client")}t.__esModule=!0,t.requireServerCss=n,t.requireServerImage=r}).call(t,"/")},[409,28,20,120],function(e,t,n){"use strict";var r=n(224)["default"];t["default"]=r||function(e){for(var t=1;tt||o.hasOverloadedBooleanValue[e]&&t===!1}var o=n(38),a=n(361),i=(n(8),{createMarkupForID:function(e){return o.ID_ATTRIBUTE_NAME+"="+a(e)},createMarkupForProperty:function(e,t){if(o.isStandardName.hasOwnProperty(e)&&o.isStandardName[e]){if(r(e,t))return"";var n=o.getAttributeName[e];return o.hasBooleanValue[e]||o.hasOverloadedBooleanValue[e]&&t===!0?n:n+"="+a(t)}return o.isCustomAttribute(e)?null==t?"":e+"="+a(t):null},setValueForProperty:function(e,t,n){if(o.isStandardName.hasOwnProperty(t)&&o.isStandardName[t]){var a=o.getMutationMethod[t];if(a)a(e,n);else if(r(t,n))this.deleteValueForProperty(e,t);else if(o.mustUseAttribute[t])e.setAttribute(o.getAttributeName[t],""+n);else{var i=o.getPropertyName[t];o.hasSideEffects[t]&&""+e[i]==""+n||(e[i]=n)}}else o.isCustomAttribute(t)&&(null==n?e.removeAttribute(t):e.setAttribute(t,""+n))},deleteValueForProperty:function(e,t){if(o.isStandardName.hasOwnProperty(t)&&o.isStandardName[t]){var n=o.getMutationMethod[t];if(n)n(e,void 0);else if(o.mustUseAttribute[t])e.removeAttribute(o.getAttributeName[t]);else{var r=o.getPropertyName[t],a=o.getDefaultValueForProperty(e.nodeName,r);o.hasSideEffects[t]&&""+e[r]===a||(e[r]=a)}}else o.isCustomAttribute(t)&&e.removeAttribute(t)}});e.exports=i},function(e,t,n){"use strict";var r=n(136),o=n(91),a=n(102),i=n(103),u=n(2),s={},l=null,c=function(e){if(e){var t=o.executeDispatch,n=r.getPluginModuleForEvent(e);n&&n.executeDispatch&&(t=n.executeDispatch),o.executeDispatchesInOrder(e,t),e.isPersistent()||e.constructor.release(e)}},f=null,p={injection:{injectMount:o.injection.injectMount,injectInstanceHandle:function(e){f=e},getInstanceHandle:function(){return f},injectEventPluginOrder:r.injectEventPluginOrder,injectEventPluginsByName:r.injectEventPluginsByName},eventNameDispatchConfigs:r.eventNameDispatchConfigs,registrationNameModules:r.registrationNameModules,putListener:function(e,t,n){ -u(!n||"function"==typeof n);var r=s[t]||(s[t]={});r[e]=n},getListener:function(e,t){var n=s[t];return n&&n[e]},deleteListener:function(e,t){var n=s[t];n&&delete n[e]},deleteAllListeners:function(e){for(var t in s)delete s[t][e]},extractEvents:function(e,t,n,o){for(var i,u=r.plugins,s=0,l=u.length;l>s;s++){var c=u[s];if(c){var f=c.extractEvents(e,t,n,o);f&&(i=a(i,f))}}return i},enqueueEvents:function(e){e&&(l=a(l,e))},processEventQueue:function(){var e=l;l=null,i(e,c),u(!l)},__purge:function(){s={}},__getListenerBank:function(){return s}};e.exports=p},function(e,t,n){"use strict";function r(e,t,n){var r=t.dispatchConfig.phasedRegistrationNames[n];return g(e,r)}function o(e,t,n){var o=t?m.bubbled:m.captured,a=r(e,n,o);a&&(n._dispatchListeners=d(n._dispatchListeners,a),n._dispatchIDs=d(n._dispatchIDs,e))}function a(e){e&&e.dispatchConfig.phasedRegistrationNames&&p.injection.getInstanceHandle().traverseTwoPhase(e.dispatchMarker,o,e)}function i(e,t,n){if(n&&n.dispatchConfig.registrationName){var r=n.dispatchConfig.registrationName,o=g(e,r);o&&(n._dispatchListeners=d(n._dispatchListeners,o),n._dispatchIDs=d(n._dispatchIDs,e))}}function u(e){e&&e.dispatchConfig.registrationName&&i(e.dispatchMarker,null,e)}function s(e){h(e,a)}function l(e,t,n,r){p.injection.getInstanceHandle().traverseEnterLeave(n,r,i,e,t)}function c(e){h(e,u)}var f=n(16),p=n(51),d=n(102),h=n(103),m=f.PropagationPhases,g=p.getListener,v={accumulateTwoPhaseDispatches:s,accumulateDirectDispatches:c,accumulateEnterLeaveDispatches:l};e.exports=v},function(e,t,n){"use strict";function r(){if(y.current){var e=y.current.getName();if(e)return" Check the render method of `"+e+"`."}return""}function o(e){var t=e&&e.getPublicInstance();if(!t)return void 0;var n=t.constructor;return n?n.displayName||n.name||void 0:void 0}function a(){var e=y.current;return e&&o(e)||void 0}function i(e,t){e._store.validated||null!=e.key||(e._store.validated=!0,s('Each child in an array or iterator should have a unique "key" prop.',e,t))}function u(e,t,n){_.test(e)&&s("Child objects should have non-numeric keys so ordering is preserved.",t,n)}function s(e,t,n){var r=a(),i="string"==typeof n?n:n.displayName||n.name,u=r||i,s=w[e]||(w[e]={});if(!s.hasOwnProperty(u)){s[u]=!0;var l="";if(t&&t._owner&&t._owner!==y.current){var c=o(t._owner);l=" It was passed a child from "+c+"."}}}function l(e,t){if(Array.isArray(e))for(var n=0;n");var u="";o&&(u=" The element was created by "+o+".")}}function p(e,t){return e!==e?t!==t:0===e&&0===t?1/e===1/t:e===t}function d(e){if(e._store){var t=e._store.originalProps,n=e.props;for(var r in n)n.hasOwnProperty(r)&&(t.hasOwnProperty(r)&&p(t[r],n[r])||(f(r,e),t[r]=n[r]))}}function h(e){if(null!=e.type){var t=b.getComponentClassForElement(e),n=t.displayName||t.name;t.propTypes&&c(n,t.propTypes,e.props,v.prop),"function"==typeof t.getDefaultProps}}var m=n(7),g=n(72),v=n(100),y=(n(74),n(26)),b=n(73),E=n(151),C=n(2),w=(n(8),{}),x={},_=/^\d+$/,A={},T={checkAndWarnForMutatedProps:d,createElement:function(e,t,n){var r=m.createElement.apply(this,arguments);if(null==r)return r;for(var o=2;oy;y++)if((s||y in m)&&(p=m[y],d=g(p,y,h),e))if(t)b[y]=d;else if(d)switch(e){case 3:return!0;case 5:return p;case 6:return y;case 2:b.push(p)}else if(i)return!1;return u?-1:a||i?i:b}}},function(e,t,n){"use strict";var r=n(1),o=n(3),a=n(20).BUGGY,i=n(44),u=n(60),s=n(12).inst;e.exports=function(e,t,l,c,f,p){function d(e){var t=v[e];n(21)(v,e,"delete"==e?function(e){return t.call(this,0===e?0:e)}:"has"==e?function(e){return t.call(this,0===e?0:e)}:"get"==e?function(e){return t.call(this,0===e?0:e)}:"add"==e?function(e){return t.call(this,0===e?0:e),this}:function(e,n){return t.call(this,0===e?0:e,n),this})}var h=r.g[e],m=h,g=f?"set":"add",v=m&&m.prototype,y={};if(r.isFunction(m)&&(p||!a&&v.forEach&&v.entries)){var b,E=new m,C=E[g](p?{}:-0,1);n(81)(function(e){new m(e)})||(m=t(function(t,n){s(t,m,e);var r=new h;return void 0!=n&&i(n,f,r[g],r),r}),m.prototype=v,v.constructor=m),p||E.forEach(function(e,t){b=1/t===-(1/0)}),b&&(d("delete"),d("has"),f&&d("get")),(b||C!==E)&&d(g)}else m=c.getConstructor(t,e,f,g),n(59)(m.prototype,l);return n(14).set(m,e),y[e]=m,o(o.G+o.W+o.F*(m!=h),y),u(m),u(r.core[e]),p||c.setIter(m,e,f),m}},function(e,t){e.exports=function(e,t,n){var r=void 0===n;switch(t.length){case 0:return r?e():e.call(n);case 1:return r?e(t[0]):e.call(n,t[0]);case 2:return r?e(t[0],t[1]):e.call(n,t[0],t[1]);case 3:return r?e(t[0],t[1],t[2]):e.call(n,t[0],t[1],t[2]);case 4:return r?e(t[0],t[1],t[2],t[3]):e.call(n,t[0],t[1],t[2],t[3]);case 5:return r?e(t[0],t[1],t[2],t[3],t[4]):e.call(n,t[0],t[1],t[2],t[3],t[4])}return e.apply(n,t)}},[416,21],[419,1,15],function(e,t,n){e.exports={"default":n(233),__esModule:!0}},function(e,t){"use strict";t["default"]=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t["default"]=e,t},t.__esModule=!0},[406,46],function(e,t,n){function r(e,t){return function(){return e.apply(t,arguments)}}function o(e,t,n){var a,l,c,f,p=e&o.G,d=e&o.P,h=p?i:e&o.S?i[t]:(i[t]||{}).prototype,m=p?u:u[t]||(u[t]={});p&&(n=t);for(a in n)l=!(e&o.F)&&h&&a in h,l&&a in m||(c=l?h[a]:n[a],p&&!s(h[a])?f=n[a]:e&o.B&&l?f=r(c,i):e&o.W&&h[a]==c?!function(e){f=function(t){return this instanceof e?new e(t):e(t)},f.prototype=e.prototype}(c):f=d&&s(c)?r(Function.call,c):c,m[a]=f,d&&((m.prototype||(m.prototype={}))[a]=c))}var a=n(5),i=a.g,u=a.core,s=a.isFunction;o.F=1,o.G=2,o.S=4,o.P=8,o.B=16,o.W=32,e.exports=o},[422,5],function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}t.__esModule=!0;var a=n(89),i=r(a),u=function(){function e(){var t=void 0===arguments[0]?"/":arguments[0],n=void 0===arguments[1]?null:arguments[1],r=void 0===arguments[2]?null:arguments[2],a=void 0===arguments[3]?i["default"].POP:arguments[3];o(this,e),this.pathname=t,this.query=n,this.state=r,this.navigationType=a}return e.isLocation=function(t){return t instanceof e},e}();t["default"]=u,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,n){return e[t]?new Error("<"+n+'> should not have a "'+t+'" prop'):void 0}var a=n(4),i=r(a),u=n(66),s=r(u),l=n(132),c=r(l),f=i["default"].PropTypes,p=f.func,d=f.object,h=f.arrayOf,m=f.instanceOf,g=f.oneOfType,v=f.element,y=p,b=g([y,d]),E=m(c["default"]),C=m(s["default"]),w=g([d,v]),x=g([w,h(w)]);e.exports={falsy:o,component:y,components:b,history:E,location:C,route:w,routes:x}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e){return v["default"].stringify(e,{arrayFormat:"brackets"})}function a(e){return e.replace(C,"")}function i(e){var t=e.match(C);return t?t[1]:""}function u(e){return e?e.replace(/^\/+/,""):""}function s(e){return"string"==typeof e&&"/"===e.charAt(0)}function l(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function c(e){return l(e).replace(/\/+/g,"/+")}function f(e){for(var t,n="",r=[],o=[],a=0,i=/:([a-zA-Z_$][a-zA-Z0-9_$]*)|\*|\(|\)/g;t=i.exec(e);)t.index!==a&&(o.push(e.slice(a,t.index)),n+=c(e.slice(a,t.index))),t[1]?(n+="([^/?#]+)",r.push(t[1])):"*"===t[0]?(n+="(.*?)",r.push("splat")):"("===t[0]?n+="(?:":")"===t[0]&&(n+=")?"),o.push(t[0]),a=i.lastIndex;return a!==e.length&&(o.push(e.slice(a,e.length)),n+=c(e.slice(a,e.length))),{pattern:e,regexpSource:n,paramNames:r,tokens:o}}function p(e){return e in w||(w[e]=f(e)),w[e]}function d(e,t){var n=p(u(e)),r=n.regexpSource,o=n.paramNames,a=n.tokens;r+="/*";var i="*"!==a[a.length-1];i&&(r+="(.*?)");var s,l,c=t.match(new RegExp("^"+r+"$","i"));return null!=c&&(l=Array.prototype.slice.call(c,1),s=i?l.pop():t.replace(c[0],"")),{remainingPathname:s,paramNames:o,paramValues:l}}function h(e){return p(e).paramNames}function m(e,t){t=t||{};for(var n,r,o,a=p(e),i=a.tokens,u=0,s="",l=0,c=0,f=i.length;f>c;++c)n=i[c],"*"===n?(o=Array.isArray(t.splat)?t.splat[l++]:t.splat,b["default"](null!=o||u>0,'Missing splat #%s for path "%s"',l,e),null!=o&&(s+=o)):"("===n?u+=1:")"===n?u-=1:":"===n.charAt(0)?(r=n.substring(1),o=t[r],b["default"](null!=o||u>0,'Missing "%s" parameter for path "%s"',r,e),null!=o&&(s+=o)):s+=n;return s.replace(/\/+/g,"/")}t.__esModule=!0,t.stringifyQuery=o,t.getPathname=a,t.getQueryString=i,t.stripLeadingSlashes=u,t.isAbsolutePath=s,t.compilePattern=p,t.matchPattern=d,t.getParamNames=h,t.formatPattern=m;var g=n(290),v=r(g),y=n(34),b=r(y),E=v["default"].parse;t.parseQueryString=E;var C=/\?(.*)$/,w={}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}t.__esModule=!0;var o=n(282),a=r(o);t.Router=a["default"];var i=n(278),u=r(i);t.Link=u["default"];var s=n(280),l=r(s);t.Redirect=l["default"];var c=n(281),f=r(c);t.Route=f["default"];var p=n(279),d=r(p);t.Navigation=d["default"];var h=n(288),m=r(h);t.TransitionHook=m["default"];var g=n(286),v=r(g);t.State=v["default"];var y=n(49);t.createRoutesFromReactChildren=y.createRoutesFromReactChildren;var b=n(67),E=r(b);t.PropTypes=E["default"];var C=r(o);t["default"]=C["default"]},function(e,t,n){"use strict";var r=!1,o=function(){};r&&(o=function(e,t,n){var r=arguments.length;n=new Array(r>2?r-2:0);for(var o=2;r>o;o++)n[o-2]=arguments[o];if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(t.length<10||/^[s\W]*$/.test(t))throw new Error("The warning format should be able to uniquely identify this warning. Please, use a more descriptive format than: "+t);if(!e){var a=0,i="Warning: "+t.replace(/%s/g,function(){return n[a++]});"undefined"!=typeof console&&console.error(i);try{throw new Error(i)}catch(u){}}}),e.exports=o},function(e,t,n){"use strict";var r=n(149),o={componentDidMount:function(){this.props.autoFocus&&r(this.getDOMNode())}};e.exports=o},function(e,t,n){"use strict";var r=(n(7),n(8),{create:function(e){return e},extract:function(e){return e},extractIfFragment:function(e){return e}});e.exports=r},function(e,t,n){"use strict";function r(e){if("function"==typeof e.type)return e.type;var t=e.type,n=f[t];return null==n&&(f[t]=n=l(t)),n}function o(e){return s(c),new c(e.type,e.props)}function a(e){return new p(e)}function i(e){return e instanceof p}var u=n(6),s=n(2),l=null,c=null,f={},p=null,d={injectGenericComponentClass:function(e){c=e},injectTextComponentClass:function(e){p=e},injectComponentClasses:function(e){u(f,e)},injectAutoWrapper:function(e){l=e}},h={getComponentClassForElement:r,createInternalComponent:o,createInstanceForText:a,isTextComponent:i,injection:d};e.exports=h},function(e,t,n){"use strict";var r={};e.exports=r},function(e,t,n){"use strict";function r(e,t,n){o.call(this,e,t,n)}var o=n(54),a=n(146),i=n(105),u={screenX:null,screenY:null,clientX:null,clientY:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,getModifierState:i,button:function(e){var t=e.button;return"which"in e?t:2===t?2:4===t?1:0},buttons:null,relatedTarget:function(e){return e.relatedTarget||(e.fromElement===e.srcElement?e.toElement:e.fromElement)},pageX:function(e){return"pageX"in e?e.pageX:e.clientX+a.currentScrollLeft},pageY:function(e){return"pageY"in e?e.pageY:e.clientY+a.currentScrollTop}};o.augmentClass(r,u),e.exports=r},function(e,t,n){"use strict";var r=n(2),o={reinitializeTransaction:function(){this.transactionWrappers=this.getTransactionWrappers(),this.wrapperInitData?this.wrapperInitData.length=0:this.wrapperInitData=[],this._isInTransaction=!1},_isInTransaction:!1,getTransactionWrappers:null,isInTransaction:function(){return!!this._isInTransaction},perform:function(e,t,n,o,a,i,u,s){r(!this.isInTransaction());var l,c;try{this._isInTransaction=!0,l=!0,this.initializeAll(0),c=e.call(t,n,o,a,i,u,s),l=!1}finally{try{if(l)try{this.closeAll(0)}catch(f){}else this.closeAll(0)}finally{this._isInTransaction=!1}}return c},initializeAll:function(e){for(var t=this.transactionWrappers,n=e;n":">","<":"<",'"':""","'":"'"},a=/[&><"']/g;e.exports=r},function(e,t,n){"use strict";function r(){var e=void 0===arguments[0]?u:arguments[0],t=void 0===arguments[1]?{}:arguments[1];switch(t.type){case i.AUTH_LOAD:return a({},e,{loading:!0});case i.AUTH_LOAD_SUCCESS:return a({},e,{loading:!1,loaded:!0,user:t.result});case i.AUTH_LOAD_FAIL:return a({},e,{loading:!1,loaded:!1,error:t.error});case i.AUTH_LOGIN:return a({},e,{loggingIn:!0});case i.AUTH_LOGIN_SUCCESS:return a({},e,{loggingIn:!1,user:t.result});case i.AUTH_LOGIN_FAIL:return a({},e,{loggingIn:!1,user:null,loginError:t.error});case i.AUTH_LOGOUT:return a({},e,{loggingOut:!0});case i.AUTH_LOGOUT_SUCCESS:return a({},e,{loggingOut:!1,user:null});case i.AUTH_LOGOUT_FAIL:return a({},e,{loggingOut:!1,logoutError:t.error});default:return e}}function o(e){return e.auth&&e.auth.loaded}var a=n(45)["default"];t.__esModule=!0,t["default"]=r,t.isLoaded=o;var i=n(33),u={loaded:!1}},[412,14,3,21,1,20,15],[413,15],function(e,t){"use strict";e.exports=function(e,t,n){var r=t===Object(t)?function(e){return t[e]}:t;return function(t){return String(n?t:this).replace(e,r)}}},[417,1,12,28],[418,1],[420,1],function(e,t){e.exports=function(e){try{return e(),!1}catch(t){return!0}}},function(e,t,n){e.exports=n(5).hide},function(e,t){"use strict";function n(){return decodeURI(window.location.href.split("#")[1]||"")}function r(e){window.location.replace(window.location.pathname+window.location.search+"#"+e)}function o(){return decodeURI(window.location.pathname+window.location.search)}function a(){return{scrollX:window.pageXOffset||document.documentElement.scrollLeft,scrollY:window.pageYOffset||document.documentElement.scrollTop}}function i(e,t){window.scrollTo(e,t)}function u(){var e=navigator.userAgent;return-1===e.indexOf("Android 2.")&&-1===e.indexOf("Android 4.0")||-1===e.indexOf("Mobile Safari")||-1!==e.indexOf("Chrome")||-1!==e.indexOf("Windows Phone")?window.history&&"pushState"in window.history:!1}t.__esModule=!0,t.getHashPath=n,t.replaceHashPath=r,t.getWindowPath=o,t.getWindowScrollPosition=a,t.setWindowScrollPosition=i,t.supportsHistory=u;var s=!("undefined"==typeof window||!window.document||!window.document.createElement);t.canUseDOM=s},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}t.__esModule=!0;var o=n(289),a=r(o),i=a["default"]({PUSH:null,REPLACE:null,POP:null});t["default"]=i,e.exports=t["default"]},function(e,t,n){"use strict";function r(){this._callbacks=null,this._contexts=null}var o=n(24),a=n(6),i=n(2);a(r.prototype,{enqueue:function(e,t){this._callbacks=this._callbacks||[],this._contexts=this._contexts||[],this._callbacks.push(e),this._contexts.push(t)},notifyAll:function(){var e=this._callbacks,t=this._contexts;if(e){i(e.length===t.length),this._callbacks=null,this._contexts=null;for(var n=0,r=e.length;r>n;n++)e[n].call(t[n]);e.length=0,t.length=0}},reset:function(){this._callbacks=null,this._contexts=null},destructor:function(){this.reset()}}),o.addPoolingTo(r),e.exports=r},function(e,t,n){"use strict";function r(e){return e===g.topMouseUp||e===g.topTouchEnd||e===g.topTouchCancel}function o(e){return e===g.topMouseMove||e===g.topTouchMove}function a(e){return e===g.topMouseDown||e===g.topTouchStart}function i(e,t){var n=e._dispatchListeners,r=e._dispatchIDs;if(Array.isArray(n))for(var o=0;o";return this._createOpenTagMarkupAndPutListeners(t)+this._createContentMarkup(t,n)+o},_createOpenTagMarkupAndPutListeners:function(e){var t=this._currentElement.props,n="<"+this._tag;for(var r in t)if(t.hasOwnProperty(r)){var a=t[r];if(null!=a)if(C.hasOwnProperty(r))o(this._rootNodeID,r,a,e);else{r===x&&(a&&(a=this._previousStyleCopy=m({},t.style)),a=u.createMarkupForStyles(a));var i=l.createMarkupForProperty(r,a);i&&(n+=" "+i)}}if(e.renderToStaticMarkup)return n+">";var s=l.createMarkupForID(this._rootNodeID);return n+" "+s+">"},_createContentMarkup:function(e,t){var n="";("listing"===this._tag||"pre"===this._tag||"textarea"===this._tag)&&(n="\n");var r=this._currentElement.props,o=r.dangerouslySetInnerHTML;if(null!=o){if(null!=o.__html)return n+o.__html}else{var a=w[typeof r.children]?r.children:null,i=null!=a?null:r.children;if(null!=a)return n+g(a);if(null!=i){var u=this.mountChildren(i,e,t);return n+u.join("")}}return n},receiveComponent:function(e,t,n){var r=this._currentElement;this._currentElement=e,this.updateComponent(t,r,e,n)},updateComponent:function(e,t,n,o){r(this._currentElement.props),this._updateDOMProperties(t.props,e),this._updateDOMChildren(t.props,e,o)},_updateDOMProperties:function(e,t){var n,r,a,i=this._currentElement.props;for(n in e)if(!i.hasOwnProperty(n)&&e.hasOwnProperty(n))if(n===x){var u=this._previousStyleCopy;for(r in u)u.hasOwnProperty(r)&&(a=a||{},a[r]="");this._previousStyleCopy=null}else C.hasOwnProperty(n)?b(this._rootNodeID,n):(s.isStandardName[n]||s.isCustomAttribute(n))&&A.deletePropertyByID(this._rootNodeID,n);for(n in i){var l=i[n],c=n===x?this._previousStyleCopy:e[n];if(i.hasOwnProperty(n)&&l!==c)if(n===x)if(l?l=this._previousStyleCopy=m({},l):this._previousStyleCopy=null,c){for(r in c)!c.hasOwnProperty(r)||l&&l.hasOwnProperty(r)||(a=a||{},a[r]="");for(r in l)l.hasOwnProperty(r)&&c[r]!==l[r]&&(a=a||{},a[r]=l[r])}else a=l;else C.hasOwnProperty(n)?o(this._rootNodeID,n,l,t):(s.isStandardName[n]||s.isCustomAttribute(n))&&A.updatePropertyByID(this._rootNodeID,n,l)}a&&A.updateStylesByID(this._rootNodeID,a)},_updateDOMChildren:function(e,t,n){var r=this._currentElement.props,o=w[typeof e.children]?e.children:null,a=w[typeof r.children]?r.children:null,i=e.dangerouslySetInnerHTML&&e.dangerouslySetInnerHTML.__html,u=r.dangerouslySetInnerHTML&&r.dangerouslySetInnerHTML.__html,s=null!=o?null:e.children,l=null!=a?null:r.children,c=null!=o||null!=i,f=null!=a||null!=u;null!=s&&null==l?this.updateChildren(null,t,n):c&&!f&&this.updateTextContent(""),null!=a?o!==a&&this.updateTextContent(""+a):null!=u?i!==u&&A.updateInnerHTMLByID(this._rootNodeID,u):null!=l&&this.updateChildren(l,t,n)},unmountComponent:function(){this.unmountChildren(),c.deleteAllListeners(this._rootNodeID),f.unmountIDFromEnvironment(this._rootNodeID),this._rootNodeID=null}},h.measureMethods(i,"ReactDOMComponent",{mountComponent:"mountComponent",updateComponent:"updateComponent"}),m(i.prototype,i.Mixin,d.Mixin),i.injection={injectIDOperations:function(e){i.BackendIDOperations=A=e}},e.exports=i},function(e,t,n){"use strict";function r(e){c[e]=!0}function o(e){delete c[e]}function a(e){return!!c[e]}var i,u=n(7),s=n(41),l=n(2),c={},f={injectEmptyComponent:function(e){i=u.createFactory(e)}},p=function(){};p.prototype.componentDidMount=function(){var e=s.get(this);e&&r(e._rootNodeID)},p.prototype.componentWillUnmount=function(){var e=s.get(this);e&&o(e._rootNodeID)},p.prototype.render=function(){return l(i),i()};var d=u.createElement(p),h={emptyElement:d,injection:f,isNullComponentID:a};e.exports=h},function(e,t){"use strict";var n={currentlyMountingInstance:null,currentlyUnmountingInstance:null};e.exports=n},function(e,t,n){"use strict";var r=n(55),o=r({prop:null,context:null,childContext:null});e.exports=o},function(e,t,n){"use strict";function r(e){e!==a.currentlyMountingInstance&&l.enqueueUpdate(e)}function o(e,t){f(null==i.current);var n=s.get(e);return n?n===a.currentlyUnmountingInstance?null:n:null}var a=n(99),i=n(26),u=n(7),s=n(41),l=n(19),c=n(6),f=n(2),p=(n(8),{enqueueCallback:function(e,t){f("function"==typeof t);var n=o(e);return n&&n!==a.currentlyMountingInstance?(n._pendingCallbacks?n._pendingCallbacks.push(t):n._pendingCallbacks=[t],void r(n)):null},enqueueCallbackInternal:function(e,t){f("function"==typeof t),e._pendingCallbacks?e._pendingCallbacks.push(t):e._pendingCallbacks=[t],r(e)},enqueueForceUpdate:function(e){var t=o(e,"forceUpdate");t&&(t._pendingForceUpdate=!0,r(t))},enqueueReplaceState:function(e,t){var n=o(e,"replaceState");n&&(n._pendingStateQueue=[t],n._pendingReplaceState=!0,r(n))},enqueueSetState:function(e,t){var n=o(e,"setState");if(n){var a=n._pendingStateQueue||(n._pendingStateQueue=[]);a.push(t),r(n)}},enqueueSetProps:function(e,t){var n=o(e,"setProps");if(n){f(n._isTopLevel);var a=n._pendingElement||n._currentElement,i=c({},a.props,t);n._pendingElement=u.cloneAndReplaceProps(a,i),r(n)}},enqueueReplaceProps:function(e,t){var n=o(e,"replaceProps");if(n){f(n._isTopLevel);var a=n._pendingElement||n._currentElement;n._pendingElement=u.cloneAndReplaceProps(a,t),r(n)}},enqueueElementInternal:function(e,t){e._pendingElement=t,r(e)}});e.exports=p},function(e,t,n){"use strict";function r(e,t){if(o(null!=t),null==e)return t;var n=Array.isArray(e),r=Array.isArray(t);return n&&r?(e.push.apply(e,t),e):n?(e.push(t),e):r?[e].concat(t):[e,t]}var o=n(2);e.exports=r},function(e,t){"use strict";var n=function(e,t,n){Array.isArray(e)?e.forEach(t,n):e&&t.call(n,e)};e.exports=n},function(e,t){"use strict";function n(e){var t,n=e.keyCode;return"charCode"in e?(t=e.charCode,0===t&&13===n&&(t=13)):t=n,t>=32||13===t?t:0}e.exports=n},function(e,t){"use strict";function n(e){var t=this,n=t.nativeEvent;if(n.getModifierState)return n.getModifierState(e);var r=o[e];return r?!!n[r]:!1}function r(e){return n}var o={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};e.exports=r},function(e,t){"use strict";function n(e){var t=e.target||e.srcElement||window;return 3===t.nodeType?t.parentNode:t}e.exports=n},function(e,t,n){"use strict";function r(e){return"function"==typeof e&&"undefined"!=typeof e.prototype&&"function"==typeof e.prototype.mountComponent&&"function"==typeof e.prototype.receiveComponent}function o(e,t){var n;if((null===e||e===!1)&&(e=i.emptyElement),"object"==typeof e){var o=e;n=t===o.type&&"string"==typeof o.type?u.createInternalComponent(o):r(o.type)?new o.type(o):new c}else"string"==typeof e||"number"==typeof e?n=u.createInstanceForText(e):l(!1);return n.construct(e),n._mountIndex=0,n._mountImage=null,n}var a=n(308),i=n(98),u=n(73),s=n(6),l=n(2),c=(n(8),function(){});s(c.prototype,a.Mixin,{_instantiateReactComponent:o}),e.exports=o},function(e,t,n){"use strict";/** - * Checks if an event is supported in the current execution environment. - * - * NOTE: This will not work correctly for non-generic events such as `change`, - * `reset`, `load`, `error`, and `select`. - * - * Borrows from Modernizr. - * - * @param {string} eventNameSuffix Event name, e.g. "click". - * @param {?boolean} capture Check if the capture phase is supported. - * @return {boolean} True if the event is supported. - * @internal - * @license Modernizr 3.0.0pre (Custom Build) | MIT - */ -function r(e,t){if(!a.canUseDOM||t&&!("addEventListener"in document))return!1;var n="on"+e,r=n in document;if(!r){var i=document.createElement("div");i.setAttribute(n,"return;"),r="function"==typeof i[n]}return!r&&o&&"wheel"===e&&(r=document.implementation.hasFeature("Events.wheel","3.0")),r}var o,a=n(11);a.canUseDOM&&(o=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0),e.exports=r},function(e,t,n){"use strict";var r=n(11),o=/^[ \r\n\t\f]/,a=/<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/,i=function(e,t){e.innerHTML=t};if("undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction&&(i=function(e,t){MSApp.execUnsafeLocalFunction(function(){e.innerHTML=t})}),r.canUseDOM){var u=document.createElement("div");u.innerHTML=" ",""===u.innerHTML&&(i=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),o.test(t)||"<"===t[0]&&a.test(t)){e.innerHTML="\ufeff"+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t})}e.exports=i},function(e,t,n){"use strict";function r(e,t){if(null!=e&&null!=t){var n=typeof e,r=typeof t;if("string"===n||"number"===n)return"string"===r||"number"===r;if("object"===r&&e.type===t.type&&e.key===t.key){var o=e._owner===t._owner;return o}}return!1}n(8);e.exports=r},function(e,t){"use strict";function n(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return t.reduceRight(function(e,t){return t(e)})}t.__esModule=!0,t["default"]=n,e.exports=t["default"]},function(e,t,n){"use strict";function r(){return{types:[i.AUTH_LOAD,i.AUTH_LOAD_SUCCESS,i.AUTH_LOAD_FAIL],promise:function(e){return e.get("/loadAuth")}}}function o(e){return{types:[i.AUTH_LOGIN,i.AUTH_LOGIN_SUCCESS,i.AUTH_LOGIN_FAIL],promise:function(t){return t.post("/login",{data:{name:e}})}}}function a(){return{types:[i.AUTH_LOGOUT,i.AUTH_LOGOUT_SUCCESS,i.AUTH_LOGOUT_FAIL],promise:function(e){return e.get("/logout")}}}t.__esModule=!0,t.load=r,t.login=o,t.logout=a;var i=n(33)},function(e,t,n){var r=n(1);e.exports=function(e){return function(t,n,o){var a,i=r.toObject(t),u=r.toLength(i.length),s=r.toIndex(o,u);if(e&&n!=n){for(;u>s;)if(a=i[s++],a!=a)return!0}else for(;u>s;s++)if((e||s in i)&&i[s]===n)return e||s;return!e&&-1}}},function(e,t,n){"use strict";function r(e,t){if(!d(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!f(e,g)){if(!m(e))return"F";if(!t)return"E";h(e,g,++w)}return"O"+e[g]}function o(e,t){var n,o=r(t);if("F"!==o)return e[v][o];for(n=e[b];n;n=n.n)if(n.k==t)return n}var a=n(1),i=n(28),u=n(18).safe,s=n(12),l=n(44),c=n(20).step,f=a.has,p=a.set,d=a.isObject,h=a.hide,m=Object.isExtensible||d,g=u("id"),v=u("O1"),y=u("last"),b=u("first"),E=u("iter"),C=a.DESC?u("size"):"size",w=0;e.exports={getConstructor:function(e,t,r,u){var c=e(function(e,n){s.inst(e,c,t),p(e,v,a.create(null)),p(e,C,0),p(e,y,void 0),p(e,b,void 0),void 0!=n&&l(n,r,e[u],e)});return n(59)(c.prototype,{clear:function(){for(var e=this,t=e[v],n=e[b];n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=void 0),delete t[n.i];e[b]=e[y]=void 0,e[C]=0},"delete":function(e){var t=this,n=o(t,e);if(n){var r=n.n,a=n.p;delete t[v][n.i],n.r=!0,a&&(a.n=r),r&&(r.p=a),t[b]==n&&(t[b]=r),t[y]==n&&(t[y]=a),t[C]--}return!!n},forEach:function(e){for(var t,n=i(e,arguments[1],3);t=t?t.n:this[b];)for(n(t.v,t.k,this);t&&t.r;)t=t.p},has:function(e){return!!o(this,e)}}),a.DESC&&a.setDesc(c.prototype,"size",{get:function(){return s.def(this[C])}}),c},def:function(e,t,n){var a,i,u=o(e,t);return u?u.v=n:(e[y]=u={i:i=r(t,!0),k:t,v:n,p:a=e[y],n:void 0,r:!1},e[b]||(e[b]=u),a&&(a.n=u),e[C]++,"F"!==i&&(e[v][i]=u)),e},getEntry:o,setIter:function(e,t,r){n(80)(e,t,function(e,t){p(this,E,{o:e,k:t})},function(){for(var e=this[E],t=e.k,n=e.l;n&&n.r;)n=n.p;return e.o&&(e.l=n=n?n.n:e.o[b])?"keys"==t?c(0,n.k):"values"==t?c(0,n.v):c(0,[n.k,n.v]):(e.o=void 0,c(1))},r?"entries":"values",!r,!0)}}},function(e,t,n){var r=n(3),o=n(44);e.exports=function(e){r(r.P,e,{toJSON:function(){var e=[];return o(this,!1,e.push,e),e}})}},function(e,t,n){"use strict";function r(e,t){return y(e.array,function(e){return e[0]===t})}function o(e){return e[g]||f(e,g,{array:[],get:function(e){var t=r(this,e);return t?t[1]:void 0},has:function(e){return!!r(this,e)},set:function(e,t){var n=r(this,e);n?n[1]=t:this.array.push([e,t])},"delete":function(e){var t=b(this.array,function(t){return t[0]===e});return~t&&this.array.splice(t,1),!!~t}})[g]}var a=n(1),i=n(18).safe,u=n(12),s=n(44),l=a.has,c=a.isObject,f=a.hide,p=Object.isExtensible||c,d=0,h=i("id"),m=i("weak"),g=i("leak"),v=n(56),y=v(5),b=v(6);e.exports={getConstructor:function(e,t,r,i){var f=e(function(e,n){a.set(u.inst(e,f,t),h,d++),void 0!=n&&s(n,r,e[i],e)});return n(59)(f.prototype,{"delete":function(e){return c(e)?p(e)?l(e,m)&&l(e[m],this[h])&&delete e[m][this[h]]:o(this)["delete"](e):!1},has:function(e){return c(e)?p(e)?l(e,m)&&l(e[m],this[h]):o(this).has(e):!1}}),f},def:function(e,t,n){return p(u.obj(t))?(l(t,m)||f(t,m,{}),t[m][e[h]]=n):o(e).set(t,n),e},leakStore:o,WEAK:m,ID:h}},[407,1],[408,1],[410,1],[411,12],function(e,t,n){var r=n(1),o=n(12).obj;e.exports=function(e){o(e);var t=r.getNames(e),n=r.getSymbols;return n?t.concat(n(e)):t}},function(e,t){e.exports=Object.is||function(e,t){return e===t?0!==e||1/e===1/t:e!=e&&t!=t}},function(e,t,n){var r=n(1),o=n(124);e.exports=function(e,t,n,a){var i=String(r.assertDefined(e));if(void 0===t)return i;var u=r.toInteger(t),s=u-i.length;if(0>s||s===1/0)throw new RangeError("Cannot satisfy string length "+t+" for string: "+i);var l=void 0===n?" ":String(n),c=o.call(l,Math.ceil(s/l.length));return c.length>s&&(c=a?c.slice(c.length-s):c.slice(0,s)),a?c.concat(i):i.concat(c)}},function(e,t,n){"use strict";var r=n(1);e.exports=function(e){var t=String(r.assertDefined(this)),n="",o=r.toInteger(e);if(0>o||o==1/0)throw RangeError("Count can't be negative");for(;o>0;(o>>>=1)&&(t+=t))1&o&&(n+=t);return n}},[421,1,28,14,58,117],[424,1,37,18,20,80],function(e,t,n){e.exports={"default":n(232),__esModule:!0}},[412,47,64,87,5,48,29],[418,5],function(e,t){"use strict";function n(e){return e.shape({subscribe:e.func.isRequired,dispatch:e.func.isRequired,getState:e.func.isRequired})}t.__esModule=!0,t["default"]=n,e.exports=t["default"]},function(e,t){"use strict";function n(e,t,n){function r(){i=!0,n.apply(this,arguments)}function o(){i||(e>a?(a+=1,t.call(this,a-1,o,r)):r.apply(this,arguments))}var a=0,i=!1;o()}function r(e,t,n){function r(e,t,r){i||(t?(i=!0,n(t)):(a[e]=r,i=++u===o,i&&n(null,a)))}var o=e.length,a=[];if(0===o)return n(null,a);var i=!1,u=0;e.forEach(function(e,n){t(e,n,function(e,t){r(n,e,t)})})}function o(e,t,n){var o=Object.keys(e);r(o,function(n,r,o){t(e[n],o)},function(e,t){if(e)n(e);else{var r=t.reduce(function(e,t,n){return e[o[n]]=t,e},{});n(null,r)}})}t.__esModule=!0,t.loopAsync=n,t.mapAsync=r,t.hashAsync=o},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(){return Math.random().toString(36).substr(2)}t.__esModule=!0;var i=n(34),u=r(i),s=n(68),l=n(66),c=r(l),f=["pushState","replaceState","go"],p=function(){function e(){var t=void 0===arguments[0]?{}:arguments[0];o(this,e),f.forEach(function(e){u["default"]("function"==typeof this[e],'%s needs a "%s" method',this.constructor.name,e)},this),this.parseQueryString=t.parseQueryString||s.parseQueryString,this.changeListeners=[],this.location=null}return e.prototype._notifyChange=function(){for(var e=0,t=this.changeListeners.length;t>e;++e)this.changeListeners[e].call(this)},e.prototype.addChangeListener=function(e){this.changeListeners.push(e)},e.prototype.removeChangeListener=function(e){this.changeListeners=this.changeListeners.filter(function(t){return t!==e})},e.prototype.back=function(){this.go(-1)},e.prototype.forward=function(){this.go(1)},e.prototype._createState=function(e){return e=e||{},e.key||(e.key=a()),e},e.prototype.createLocation=function(e,t,n){var r=s.getPathname(e),o=s.getQueryString(e),a=o?this.parseQueryString(o):null;return new c["default"](r,a,t,n)},e}();t["default"]=p,e.exports=t["default"]},function(e,t){t.arrayToObject=function(e){for(var t={},n=0,r=e.length;r>n;++n)"undefined"!=typeof e[n]&&(t[n]=e[n]);return t},t.merge=function(e,n){if(!n)return e;if("object"!=typeof n)return Array.isArray(e)?e.push(n):e[n]=!0,e;if("object"!=typeof e)return e=[e].concat(n);Array.isArray(e)&&!Array.isArray(n)&&(e=t.arrayToObject(e));for(var r=Object.keys(n),o=0,a=r.length;a>o;++o){var i=r[o],u=n[i];e[i]?e[i]=t.merge(e[i],u):e[i]=u}return e},t.decode=function(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(t){return e}},t.compact=function(e,n){if("object"!=typeof e||null===e)return e;n=n||[];var r=n.indexOf(e);if(-1!==r)return n[r];if(n.push(e),Array.isArray(e)){for(var o=[],a=0,i=e.length;i>a;++a)"undefined"!=typeof e[a]&&o.push(e[a]);return o}var u=Object.keys(e);for(a=0,i=u.length;i>a;++a){var s=u[a];e[s]=t.compact(e[s],n)}return e},t.isRegExp=function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},t.isBuffer=function(e){return null===e||"undefined"==typeof e?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))}},function(e,t){"use strict";function n(e,t){return e+t.charAt(0).toUpperCase()+t.substring(1)}var r={boxFlex:!0,boxFlexGroup:!0,columnCount:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,strokeDashoffset:!0,strokeOpacity:!0,strokeWidth:!0},o=["Webkit","ms","Moz","O"];Object.keys(r).forEach(function(e){o.forEach(function(t){r[n(t,e)]=r[e]})});var a={background:{backgroundImage:!0,backgroundPosition:!0,backgroundRepeat:!0,backgroundColor:!0},border:{borderWidth:!0,borderStyle:!0,borderColor:!0},borderBottom:{borderBottomWidth:!0,borderBottomStyle:!0,borderBottomColor:!0},borderLeft:{borderLeftWidth:!0,borderLeftStyle:!0,borderLeftColor:!0},borderRight:{borderRightWidth:!0,borderRightStyle:!0,borderRightColor:!0},borderTop:{borderTopWidth:!0,borderTopStyle:!0,borderTopColor:!0},font:{fontStyle:!0,fontVariant:!0,fontWeight:!0,fontSize:!0,lineHeight:!0,fontFamily:!0}},i={isUnitlessNumber:r,shorthandPropertyExpansions:a};e.exports=i},function(e,t,n){"use strict";var r=n(134),o=n(11),a=(n(345),n(349)),i=n(356),u=n(359),s=(n(8),u(function(e){return i(e)})),l="cssFloat";o.canUseDOM&&void 0===document.documentElement.style.cssFloat&&(l="styleFloat");var c={createMarkupForStyles:function(e){var t="";for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];null!=r&&(t+=s(n)+":",t+=a(n,r)+";")}return t||null},setValueForStyles:function(e,t){var n=e.style;for(var o in t)if(t.hasOwnProperty(o)){var i=a(o,t[o]);if("float"===o&&(o=l),i)n[o]=i;else{var u=r.shorthandPropertyExpansions[o];if(u)for(var s in u)n[s]="";else n[o]=""}}}};e.exports=c},function(e,t,n){"use strict";function r(){if(u)for(var e in s){var t=s[e],n=u.indexOf(e);if(i(n>-1),!l.plugins[n]){i(t.extractEvents),l.plugins[n]=t;var r=t.eventTypes;for(var a in r)i(o(r[a],t,a))}}}function o(e,t,n){i(!l.eventNameDispatchConfigs.hasOwnProperty(n)),l.eventNameDispatchConfigs[n]=e;var r=e.phasedRegistrationNames;if(r){for(var o in r)if(r.hasOwnProperty(o)){var u=r[o];a(u,t,n)}return!0}return e.registrationName?(a(e.registrationName,t,n),!0):!1}function a(e,t,n){i(!l.registrationNameModules[e]),l.registrationNameModules[e]=t,l.registrationNameDependencies[e]=t.eventTypes[n].dependencies}var i=n(2),u=null,s={},l={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},injectEventPluginOrder:function(e){i(!u),u=Array.prototype.slice.call(e),r()},injectEventPluginsByName:function(e){var t=!1;for(var n in e)if(e.hasOwnProperty(n)){var o=e[n];s.hasOwnProperty(n)&&s[n]===o||(i(!s[n]),s[n]=o,t=!0)}t&&r()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return l.registrationNameModules[t.registrationName]||null;for(var n in t.phasedRegistrationNames)if(t.phasedRegistrationNames.hasOwnProperty(n)){var r=l.registrationNameModules[t.phasedRegistrationNames[n]];if(r)return r}return null},_resetEventPlugins:function(){u=null;for(var e in s)s.hasOwnProperty(e)&&delete s[e];l.plugins.length=0;var t=l.eventNameDispatchConfigs;for(var n in t)t.hasOwnProperty(n)&&delete t[n];var r=l.registrationNameModules;for(var o in r)r.hasOwnProperty(o)&&delete r[o]}};e.exports=l},function(e,t,n){"use strict";function r(e,t){this.props=e,this.context=t}var o=n(101),a=n(2);n(8);r.prototype.setState=function(e,t){a("object"==typeof e||"function"==typeof e||null==e),o.enqueueSetState(this,e),t&&o.enqueueCallback(this,t)},r.prototype.forceUpdate=function(e){o.enqueueForceUpdate(this),e&&o.enqueueCallback(this,e)};e.exports=r},function(e,t,n){"use strict";var r=n(135),o=n(297),a=n(50),i=n(27),u=n(35),s=n(2),l=n(109),c={dangerouslySetInnerHTML:"`dangerouslySetInnerHTML` must be set using `updateInnerHTMLByID()`.",style:"`style` must be set using `updateStylesByID()`."},f={updatePropertyByID:function(e,t,n){var r=i.getNode(e);s(!c.hasOwnProperty(t)),null!=n?a.setValueForProperty(r,t,n):a.deleteValueForProperty(r,t)},deletePropertyByID:function(e,t,n){var r=i.getNode(e);s(!c.hasOwnProperty(t)),a.deleteValueForProperty(r,t,n)},updateStylesByID:function(e,t){var n=i.getNode(e);r.setValueForStyles(n,t)},updateInnerHTMLByID:function(e,t){var n=i.getNode(e);l(n,t)},updateTextContentByID:function(e,t){var n=i.getNode(e);o.updateTextContent(n,t)},dangerouslyReplaceNodeWithMarkupByID:function(e,t){var n=i.getNode(e);o.dangerouslyReplaceNodeWithMarkup(n,t)},dangerouslyProcessChildrenUpdates:function(e,t){for(var n=0;n"+o+""},receiveComponent:function(e,t){if(e!==this._currentElement){this._currentElement=e;var n=""+e;n!==this._stringText&&(this._stringText=n,a.BackendIDOperations.updateTextContentByID(this._rootNodeID,n))}},unmountComponent:function(){o.unmountIDFromEnvironment(this._rootNodeID)}}),e.exports=s},function(e,t,n){"use strict";function r(e){return a(document.documentElement,e)}var o=n(317),a=n(147),i=n(149),u=n(150),s={hasSelectionCapabilities:function(e){return e&&("INPUT"===e.nodeName&&"text"===e.type||"TEXTAREA"===e.nodeName||"true"===e.contentEditable)},getSelectionInformation:function(){var e=u();return{focusedElem:e,selectionRange:s.hasSelectionCapabilities(e)?s.getSelection(e):null}},restoreSelection:function(e){var t=u(),n=e.focusedElem,o=e.selectionRange;t!==n&&r(n)&&(s.hasSelectionCapabilities(n)&&s.setSelection(n,o),i(n))},getSelection:function(e){var t;if("selectionStart"in e)t={start:e.selectionStart,end:e.selectionEnd};else if(document.selection&&"INPUT"===e.nodeName){var n=document.selection.createRange();n.parentElement()===e&&(t={start:-n.moveStart("character",-e.value.length),end:-n.moveEnd("character",-e.value.length)})}else t=o.getOffsets(e);return t||{start:0,end:0}},setSelection:function(e,t){var n=t.start,r=t.end;if("undefined"==typeof r&&(r=n),"selectionStart"in e)e.selectionStart=n,e.selectionEnd=Math.min(r,e.value.length);else if(document.selection&&"INPUT"===e.nodeName){var a=e.createTextRange();a.collapse(!0),a.moveStart("character",n),a.moveEnd("character",r-n),a.select()}else o.setOffsets(e,t)}};e.exports=s},function(e,t,n){"use strict";var r=n(343),o={CHECKSUM_ATTR_NAME:"data-react-checksum",addChecksumToMarkup:function(e){var t=r(e);return e.replace(">"," "+o.CHECKSUM_ATTR_NAME+'="'+t+'">')},canReuseMarkup:function(e,t){var n=t.getAttribute(o.CHECKSUM_ATTR_NAME);n=n&&parseInt(n,10);var a=r(e);return a===n}};e.exports=o},function(e,t,n){"use strict";var r=n(55),o=r({INSERT_MARKUP:null,MOVE_EXISTING:null,REMOVE_NODE:null,TEXT_CONTENT:null});e.exports=o},function(e,t,n){"use strict";function r(e){function t(t,n,r,o,a){if(o=o||C,null==n[r]){var i=b[a];return t?new Error("Required "+i+" `"+r+"` was not specified in "+("`"+o+"`.")):null}return e(n,r,o,a)}var n=t.bind(null,!1);return n.isRequired=t.bind(null,!0),n}function o(e){function t(t,n,r,o){var a=t[n],i=m(a);if(i!==e){var u=b[o],s=g(a);return new Error("Invalid "+u+" `"+n+"` of type `"+s+"` "+("supplied to `"+r+"`, expected `"+e+"`."))}return null}return r(t)}function a(){return r(E.thatReturns(null))}function i(e){function t(t,n,r,o){var a=t[n];if(!Array.isArray(a)){var i=b[o],u=m(a);return new Error("Invalid "+i+" `"+n+"` of type "+("`"+u+"` supplied to `"+r+"`, expected an array."))}for(var s=0;s>",w=u(),x=p(),_={array:o("array"),bool:o("boolean"),func:o("function"),number:o("number"),object:o("object"),string:o("string"),any:a(),arrayOf:i,element:w,instanceOf:s,node:x,objectOf:c,oneOf:l,oneOfType:f,shape:d};e.exports=_},function(e,t,n){"use strict";function r(){this.listenersToPut=[]}var o=n(24),a=n(39),i=n(6);i(r.prototype,{enqueuePutListener:function(e,t,n){this.listenersToPut.push({rootNodeID:e,propKey:t,propValue:n})},putListeners:function(){for(var e=0;e":i.innerHTML="<"+e+">",u[e]=!i.firstChild),u[e]?p[e]:null}var o=n(11),a=n(2),i=o.canUseDOM?document.createElement("div"):null,u={circle:!0,clipPath:!0,defs:!0,ellipse:!0,g:!0,line:!0,linearGradient:!0,path:!0,polygon:!0,polyline:!0,radialGradient:!0,rect:!0,stop:!0,text:!0},s=[1,'"],l=[1,"","
"],c=[3,"","
"],f=[1,"",""],p={"*":[1,"?
","
"],area:[1,"",""],col:[2,"","
"],legend:[1,"
","
"],param:[1,"",""],tr:[2,"","
"],optgroup:s,option:s,caption:l,colgroup:l,tbody:l,tfoot:l,thead:l,td:c,th:c,circle:f,clipPath:f,defs:f,ellipse:f,g:f,line:f,linearGradient:f,path:f,polygon:f,polyline:f,radialGradient:f,rect:f,stop:f,text:f};e.exports=r},function(e,t,n){"use strict";function r(){return!a&&o.canUseDOM&&(a="textContent"in document.documentElement?"textContent":"innerText"),a}var o=n(11),a=null;e.exports=r},function(e,t){function n(e){return!(!e||!("function"==typeof Node?e instanceof Node:"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName))}e.exports=n},function(e,t){"use strict";function n(e){return e&&("INPUT"===e.nodeName&&r[e.type]||"TEXTAREA"===e.nodeName)}var r={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};e.exports=n},function(e,t,n){"use strict";function r(e){return g[e]}function o(e,t){return e&&null!=e.key?i(e.key):t.toString(36)}function a(e){return(""+e).replace(v,r)}function i(e){return"$"+a(e)}function u(e,t,n,r,a){var s=typeof e;if(("undefined"===s||"boolean"===s)&&(e=null),null===e||"string"===s||"number"===s||l.isValidElement(e))return r(a,e,""===t?h+o(e,0):t,n),1;var f,g,v,y=0;if(Array.isArray(e))for(var b=0;b1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r];return{type:d.TOUCH,form:e,fields:n}}function c(e){return{type:d.TOUCH_ALL,form:e}}function f(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r];return{type:d.UNTOUCH,form:e,fields:n}}function p(e){return{type:d.UNTOUCH_ALL,form:e}}t.__esModule=!0,t.blur=r,t.change=o,t.initialize=a,t.reset=i,t.startAsyncValidation=u,t.stopAsyncValidation=s,t.touch=l,t.touchAll=c,t.untouch=f,t.untouchAll=p;var d=n(157)},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}t.__esModule=!0;var o=n(365),a=r(o),i=n(366),u=r(i),s=n(158);t["default"]=u["default"],t.createFormReducer=a["default"],t.blur=s.blur,t.change=s.change,t.initialize=s.initialize,t.reset=s.reset,t.touch=s.touch,t.touchAll=s.touchAll,t.untouch=s.untouch,t.untouchAll=s.untouchAll},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}t.__esModule=!0;var a=n(163),i=r(a),u=n(372),s=r(u),l={INIT:"@@redux/INIT"};t.ActionTypes=l;var c=function(){function e(t,n){o(this,e),i["default"]("function"==typeof t,"Expected the reducer to be a function."),this.state=n,this.listeners=[],this.replaceReducer(t)}return e.prototype.getReducer=function(){return this.reducer},e.prototype.replaceReducer=function(e){this.reducer=e,this.dispatch({type:l.INIT})},e.prototype.dispatch=function(e){i["default"](s["default"](e),"Actions must be plain objects. Use custom middleware for async actions.");var t=this.reducer;return this.state=t(this.state,e),this.listeners.forEach(function(e){return e()}),e},e.prototype.getState=function(){return this.state},e.prototype.subscribe=function(e){var t=this.listeners;return t.push(e),function(){var n=t.indexOf(e);t.splice(n,1)}},e}();t["default"]=c},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return function(e){return function(n){return i["default"].apply(void 0,t.map(function(t){return t(e)}).concat([n]))}}}t.__esModule=!0,t["default"]=o;var a=n(111),i=r(a);e.exports=t["default"]},function(e,t){"use strict";function n(e,t){return Object.keys(e).reduce(function(n,r){return n[r]=t(e[r],r),n},{})}t.__esModule=!0,t["default"]=n,e.exports=t["default"]},34,function(e,t,n){"use strict";function r(){return{types:[o.INFO_LOAD,o.INFO_LOAD_SUCCESS,o.INFO_LOAD_FAIL],promise:function(e){return e.get("/loadInfo")}}}t.__esModule=!0,t.load=r;var o=n(33)},function(e,t,n){"use strict";function r(){var e=void 0===arguments[0]?u:arguments[0],t=void 0===arguments[1]?{}:arguments[1];switch(t.type){case i.INFO_LOAD:return a({},e,{loading:!0});case i.INFO_LOAD_SUCCESS:return a({},e,{loading:!1,loaded:!0,data:t.result});case i.INFO_LOAD_FAIL:return a({},e,{loading:!1,loaded:!1,error:t.error});default:return e}}function o(e){return e.info&&e.info.loaded}var a=n(45)["default"];t.__esModule=!0,t["default"]=r,t.isLoaded=o;var i=n(33),u={loaded:!1}},function(e,t,n){"use strict";function r(){var e=void 0===arguments[0]?u:arguments[0],t=void 0===arguments[1]?{}:arguments[1];switch(t.type){case i.WIDGET_LOAD:return a({},e,{loading:!0});case i.WIDGET_LOAD_SUCCESS:return a({},e,{loading:!1,loaded:!0,data:t.result,error:null});case i.WIDGET_LOAD_FAIL:return a({},e,{loading:!1,loaded:!1,data:null,error:t.error});default:return e}}function o(e){return e.widgets&&e.widgets.loaded}var a=n(45)["default"];t.__esModule=!0,t["default"]=r,t.isLoaded=o;var i=n(33),u={loaded:!1}},function(e,t,n){"use strict";function r(e){return function(t,n,r){var o=t.branch.map(function(e){return e.component}).filter(function(e){return m(e)}).map(m).map(function(n){return n(e,t.params)});i.all(o).then(function(){r()},function(e){r(e)})}}function o(e,t,n){var o=d["default"](n);return new i(function(i,u){f["default"].run(o,e,[r(n)],function(e,r,s){if(e)return u(e);if(s&&s.redirectInfo)return i({transition:s,isRedirect:!0});t&&(r.history=t);var c=l["default"].createElement(h.Provider,{store:n,key:"provider"},function(){return l["default"].createElement(f["default"],a({},r,{children:o}))});return i({component:c,isRedirect:!1})})})}var a=n(45)["default"],i=n(61)["default"],u=n(9)["default"];t.__esModule=!0,t.createTransitionHook=r,t["default"]=o;var s=n(4),l=u(s),c=n(69),f=u(c),p=n(397),d=u(p),h=n(23),m=function(){for(var e=arguments,t=!0;t;){n=void 0,t=!1;var n=void 0===e[0]?{}:e[0];if(!n.WrappedComponent)return n.fetchData;e=[n.WrappedComponent],t=!0}}},function(e,t){function n(){l=!1,i.length?s=i.concat(s):c=-1,s.length&&r()}function r(){if(!l){var e=setTimeout(n);l=!0;for(var t=s.length;t;){for(i=s,s=[];++c1)for(var n=1;nu;)if(o[n=a[u++]]===t)return n}},function(e,t,n){"use strict";var r=n(1),o=n(58),a=n(12).fn;e.exports=function(){for(var e=a(this),t=arguments.length,n=Array(t),i=0,u=r.path._,s=!1;t>i;)(n[i]=arguments[i++])===u&&(s=!0);return function(){var r,a=this,i=arguments.length,l=0,c=0;if(!s&&!i)return o(e,n,a);if(r=n.slice(),s)for(;t>l;l++)r[l]===u&&(r[l]=arguments[c++]);for(;i>c;)r.push(arguments[c++]);return o(e,r,a)}}},function(e,t,n){function r(e,t){return function(n){var r,o=O(n),a=0,i=[];for(r in o)r!=d&&w(o,r)&&i.push(r);for(;t>a;)w(o,r=e[a++])&&(~S(i,r)||i.push(r));return i}}function o(){}function a(e){return function(t,n){h.fn(t);var r=O(this),o=M(r.length),a=e?o-1:0,i=e?-1:1;if(arguments.length<2)for(;;){if(a in r){n=r[a],a+=i;break}a+=i,h(e?a>=0:o>a,"Reduce of empty array with no initial value")}for(;e?a>=0:o>a;a+=i)a in r&&(n=t(n,r[a],a,this));return n}}function i(e){return e>9?e:"0"+e}var u=n(1),s=n(117),l=n(14),c=n(3),f=n(58),p=n(56),d=n(18).safe("__proto__"),h=n(12),m=h.obj,g=Object.prototype,v=u.html,y=[],b=y.slice,E=y.join,C=l.classof,w=u.has,x=u.setDesc,_=u.getDesc,A=u.setDescs,T=u.isFunction,I=u.isObject,O=u.toObject,M=u.toLength,D=u.toIndex,N=!1,S=n(113)(!1),P=p(0),R=p(1),k=p(2),L=p(3),j=p(4); -if(!u.DESC){try{N=8==x(s("div"),"x",{get:function(){return 8}}).x}catch(U){}u.setDesc=function(e,t,n){if(N)try{return x(e,t,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(m(e)[t]=n.value),e},u.getDesc=function(e,t){if(N)try{return _(e,t)}catch(n){}return w(e,t)?u.desc(!g.propertyIsEnumerable.call(e,t),e[t]):void 0},u.setDescs=A=function(e,t){m(e);for(var n,r=u.getKeys(t),o=r.length,a=0;o>a;)u.setDesc(e,n=r[a++],t[n]);return e}}c(c.S+c.F*!u.DESC,"Object",{getOwnPropertyDescriptor:u.getDesc,defineProperty:u.setDesc,defineProperties:A});var F="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),B=F.concat("length","prototype"),W=F.length,H=function(){var e,t=s("iframe"),n=W,r=">";for(t.style.display="none",v.appendChild(t),t.src="javascript:",e=t.contentWindow.document,e.open(),e.write("