├── .DS_Store ├── .meteor ├── .finished-upgraders ├── .gitignore ├── .id ├── packages ├── platforms ├── release └── versions ├── README.md ├── client ├── components │ ├── AppBody.jsx │ ├── AppLoading.jsx │ ├── AppNotFound.jsx │ ├── Home.jsx │ ├── Other.jsx │ ├── Settings.jsx │ └── main.html ├── router.jsx └── styles │ └── styles.scss ├── lib ├── app.browserify.js ├── app.browserify.js.cached ├── app.browserify.js.map └── app.browserify.options.json ├── packages.json ├── packages └── npm-container │ ├── .npm │ └── package │ │ ├── .gitignore │ │ ├── README │ │ └── npm-shrinkwrap.json │ ├── index.js │ └── package.js └── server └── server.jsx /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samcorcos/meteor-react-ionic-basic/b7c20e20d66a44f63542788f72fe6a81fbf8d7ed/.DS_Store -------------------------------------------------------------------------------- /.meteor/.finished-upgraders: -------------------------------------------------------------------------------- 1 | # This file contains information which helps Meteor properly upgrade your 2 | # app when you run 'meteor update'. You should check it into version control 3 | # with your project. 4 | 5 | notices-for-0.9.0 6 | notices-for-0.9.1 7 | 0.9.4-platform-file 8 | notices-for-facebook-graph-api-2 9 | -------------------------------------------------------------------------------- /.meteor/.gitignore: -------------------------------------------------------------------------------- 1 | local 2 | -------------------------------------------------------------------------------- /.meteor/.id: -------------------------------------------------------------------------------- 1 | # This file contains a token that is unique to your project. 2 | # Check it into your repository along with the rest of this directory. 3 | # It can be used for purposes such as: 4 | # - ensuring you don't accidentally deploy one app on top of another 5 | # - providing package authors with aggregated statistics 6 | 7 | ncurrb1bapm89trkp67 8 | -------------------------------------------------------------------------------- /.meteor/packages: -------------------------------------------------------------------------------- 1 | # Meteor packages used by this project, one per line. 2 | # Check this file (and the other files in this directory) into your repository. 3 | # 4 | # 'meteor add' and 'meteor remove' will edit this file for you, 5 | # but you can also edit it by hand. 6 | 7 | meteor-platform 8 | autopublish 9 | insecure 10 | cosmos:browserify 11 | fourseven:scss@2.0.0 12 | meteorhacks:npm 13 | meteoric:ionic-sass 14 | meteoric:ionicons-sass 15 | react 16 | 17 | 18 | npm-container 19 | -------------------------------------------------------------------------------- /.meteor/platforms: -------------------------------------------------------------------------------- 1 | server 2 | browser 3 | -------------------------------------------------------------------------------- /.meteor/release: -------------------------------------------------------------------------------- 1 | METEOR@1.1.0.3 2 | -------------------------------------------------------------------------------- /.meteor/versions: -------------------------------------------------------------------------------- 1 | autopublish@1.0.3 2 | autoupdate@1.2.1 3 | babel-compiler@5.8.3_1 4 | babel-runtime@0.1.3 5 | base64@1.0.3 6 | binary-heap@1.0.3 7 | blaze@2.1.2 8 | blaze-tools@1.0.3 9 | boilerplate-generator@1.0.3 10 | callback-hook@1.0.3 11 | check@1.0.5 12 | coffeescript@1.0.6 13 | cosmos:browserify@0.5.0 14 | ddp@1.1.0 15 | deps@1.0.7 16 | ejson@1.0.6 17 | fastclick@1.0.3 18 | fourseven:scss@2.1.1 19 | geojson-utils@1.0.3 20 | html-tools@1.0.4 21 | htmljs@1.0.4 22 | http@1.1.0 23 | id-map@1.0.3 24 | insecure@1.0.3 25 | jquery@1.11.3_2 26 | json@1.0.3 27 | jsx@0.1.5 28 | launch-screen@1.0.2 29 | livedata@1.0.13 30 | logging@1.0.7 31 | meteor@1.1.6 32 | meteor-platform@1.2.2 33 | meteorhacks:async@1.0.0 34 | meteorhacks:npm@1.4.0 35 | meteoric:ionic-sass@0.1.9 36 | meteoric:ionicons-sass@0.1.6 37 | minifiers@1.1.5 38 | minimongo@1.0.8 39 | mobile-status-bar@1.0.3 40 | mongo@1.1.0 41 | npm-container@1.1.0 42 | observe-sequence@1.0.6 43 | ordered-dict@1.0.3 44 | random@1.0.3 45 | react@0.1.7 46 | react-meteor-data@0.1.5 47 | react-runtime@0.13.3_4 48 | react-runtime-dev@0.13.3_3 49 | react-runtime-prod@0.13.3_2 50 | reactive-dict@1.1.0 51 | reactive-var@1.0.5 52 | reload@1.1.3 53 | retry@1.0.3 54 | routepolicy@1.0.5 55 | session@1.1.0 56 | spacebars@1.0.6 57 | spacebars-compiler@1.0.6 58 | templating@1.1.1 59 | tracker@1.0.7 60 | ui@1.0.6 61 | underscore@1.0.3 62 | url@1.0.4 63 | webapp@1.2.0 64 | webapp-hashing@1.0.3 65 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Meteor-React-Ionic Basic Template 2 | 3 | This template is the absolute bare minimum you need to get started with the Meteor-React-Ionic stack to build hybrid mobile apps. Your app will run and you will have three functioning routes. Other than that, the app doesn't do anything. You'll have to add that functionality yourself. 4 | 5 | In the future, I intend to create other, modular repos that build on this template. That functionality would include: passing through data with Mongo.Collections, user accounts, chat functionality, Cordova integration, animations and transitions, and a Tinder interface. 6 | -------------------------------------------------------------------------------- /client/components/AppBody.jsx: -------------------------------------------------------------------------------- 1 | AppBody = React.createClass({ 2 | render() { 3 | return ( 4 |
5 |
6 | 7 | App Name 8 | 9 |
10 | 11 |
12 |
13 |
14 | 15 |
16 |
17 |
18 |
19 | ) 20 | } 21 | }) 22 | -------------------------------------------------------------------------------- /client/components/AppLoading.jsx: -------------------------------------------------------------------------------- 1 | AppLoading = React.createClass({ 2 | render() { 3 | return

Loading…

4 | } 5 | }); 6 | -------------------------------------------------------------------------------- /client/components/AppNotFound.jsx: -------------------------------------------------------------------------------- 1 | AppNotFound = React.createClass({ 2 | render() { 3 | return

Not Found

4 | } 5 | }); 6 | -------------------------------------------------------------------------------- /client/components/Home.jsx: -------------------------------------------------------------------------------- 1 | Home = React.createClass({ 2 | render() { 3 | return

Home

4 | } 5 | }); 6 | -------------------------------------------------------------------------------- /client/components/Other.jsx: -------------------------------------------------------------------------------- 1 | Other = React.createClass({ 2 | render() { 3 | return

Other

4 | } 5 | }); 6 | -------------------------------------------------------------------------------- /client/components/Settings.jsx: -------------------------------------------------------------------------------- 1 | Settings = React.createClass({ 2 | render() { 3 | return

Settings

4 | } 5 | }); 6 | -------------------------------------------------------------------------------- /client/components/main.html: -------------------------------------------------------------------------------- 1 | 2 | React Mobile Template 3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | -------------------------------------------------------------------------------- /client/router.jsx: -------------------------------------------------------------------------------- 1 | const routes = ( 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | ) 10 | 11 | Meteor.startup(function () { 12 | ReactRouter.run(routes, ReactRouter.HistoryLocation, function (Handler, state) { 13 | React.render(, document.getElementById("app")); 14 | }); 15 | }); 16 | -------------------------------------------------------------------------------- /client/styles/styles.scss: -------------------------------------------------------------------------------- 1 | @import ".meteor/local/build/programs/server/assets/packages/meteoric_ionic-sass/ionic"; 2 | @import ".meteor/local/build/programs/server/assets/packages/meteoric_ionicons-sass/ionicons"; 3 | -------------------------------------------------------------------------------- /lib/app.browserify.js: -------------------------------------------------------------------------------- 1 | ReactRouter = require("react-router"); 2 | -------------------------------------------------------------------------------- /lib/app.browserify.js.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "sources": [ 4 | "../../../../../../.meteor/packages/cosmos_browserify/.0.5.0.1b7t3d2++os+web.browser+web.cordova/plugin.CosmosBrowserify.os/npm/CosmosBrowserify/node_modules/browserify/node_modules/browser-pack/_prelude.js", 5 | "../../../../../../.meteor/packages/cosmos_browserify/.0.5.0.1b7t3d2++os+web.browser+web.cordova/plugin.CosmosBrowserify.os/npm/CosmosBrowserify/node_modules/browserify/node_modules/process/browser.js", 6 | "_stream_0.js", 7 | "node_modules/react-router/lib/Cancellation.js", 8 | "node_modules/react-router/lib/History.js", 9 | "node_modules/react-router/lib/Match.js", 10 | "node_modules/react-router/lib/Navigation.js", 11 | "node_modules/react-router/lib/PathUtils.js", 12 | "node_modules/react-router/lib/PropTypes.js", 13 | "node_modules/react-router/lib/Redirect.js", 14 | "node_modules/react-router/lib/Route.js", 15 | "node_modules/react-router/lib/ScrollHistory.js", 16 | "node_modules/react-router/lib/State.js", 17 | "node_modules/react-router/lib/Transition.js", 18 | "node_modules/react-router/lib/actions/LocationActions.js", 19 | "node_modules/react-router/lib/behaviors/ImitateBrowserBehavior.js", 20 | "node_modules/react-router/lib/behaviors/ScrollToTopBehavior.js", 21 | "node_modules/react-router/lib/components/ContextWrapper.js", 22 | "node_modules/react-router/lib/components/DefaultRoute.js", 23 | "node_modules/react-router/lib/components/Link.js", 24 | "node_modules/react-router/lib/components/NotFoundRoute.js", 25 | "node_modules/react-router/lib/components/Redirect.js", 26 | "node_modules/react-router/lib/components/Route.js", 27 | "node_modules/react-router/lib/components/RouteHandler.js", 28 | "node_modules/react-router/lib/createRouter.js", 29 | "node_modules/react-router/lib/createRoutesFromReactChildren.js", 30 | "node_modules/react-router/lib/getWindowScrollPosition.js", 31 | "node_modules/react-router/lib/index.js", 32 | "node_modules/react-router/lib/isReactChildren.js", 33 | "node_modules/react-router/lib/locations/HashLocation.js", 34 | "node_modules/react-router/lib/locations/HistoryLocation.js", 35 | "node_modules/react-router/lib/locations/RefreshLocation.js", 36 | "node_modules/react-router/lib/locations/StaticLocation.js", 37 | "node_modules/react-router/lib/locations/TestLocation.js", 38 | "node_modules/react-router/lib/runRouter.js", 39 | "node_modules/react-router/lib/supportsHistory.js", 40 | "node_modules/react-router/node_modules/object-assign/index.js", 41 | "node_modules/react-router/node_modules/qs/index.js", 42 | "node_modules/react-router/node_modules/qs/lib/index.js", 43 | "node_modules/react-router/node_modules/qs/lib/parse.js", 44 | "node_modules/react-router/node_modules/qs/lib/stringify.js", 45 | "node_modules/react-router/node_modules/qs/lib/utils.js" 46 | ], 47 | "names": [], 48 | "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1FA;AACA;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACxJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACvMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACtIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AC1FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AC3GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACjgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC7FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA", 49 | "file": "generated.js", 50 | "sourceRoot": "", 51 | "sourcesContent": [ 52 | "(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n setTimeout(drainQueue, 0);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\n// TODO(shtylman)\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n", 54 | "ReactRouter = require(\"react-router\");\n", 55 | "/**\n * Represents a cancellation caused by navigating away\n * before the previous transition has fully resolved.\n */\n\"use strict\";\n\nfunction Cancellation() {}\n\nmodule.exports = Cancellation;", 56 | "'use strict';\n\nvar invariant = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/invariant\");\nvar canUseDOM = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/ExecutionEnvironment\").canUseDOM;\n\nvar History = {\n\n /**\n * The current number of entries in the history.\n *\n * Note: This property is read-only.\n */\n length: 1,\n\n /**\n * Sends the browser back one entry in the history.\n */\n back: function back() {\n invariant(canUseDOM, 'Cannot use History.back without a DOM');\n\n // Do this first so that History.length will\n // be accurate in location change listeners.\n History.length -= 1;\n\n window.history.back();\n }\n\n};\n\nmodule.exports = History;", 57 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\n/* jshint -W084 */\nvar PathUtils = require('./PathUtils');\n\nfunction deepSearch(route, pathname, query) {\n // Check the subtree first to find the most deeply-nested match.\n var childRoutes = route.childRoutes;\n if (childRoutes) {\n var match, childRoute;\n for (var i = 0, len = childRoutes.length; i < len; ++i) {\n childRoute = childRoutes[i];\n\n if (childRoute.isDefault || childRoute.isNotFound) continue; // Check these in order later.\n\n if (match = deepSearch(childRoute, pathname, query)) {\n // A route in the subtree matched! Add this route and we're done.\n match.routes.unshift(route);\n return match;\n }\n }\n }\n\n // No child routes matched; try the default route.\n var defaultRoute = route.defaultRoute;\n if (defaultRoute && (params = PathUtils.extractParams(defaultRoute.path, pathname))) {\n return new Match(pathname, params, query, [route, defaultRoute]);\n } // Does the \"not found\" route match?\n var notFoundRoute = route.notFoundRoute;\n if (notFoundRoute && (params = PathUtils.extractParams(notFoundRoute.path, pathname))) {\n return new Match(pathname, params, query, [route, notFoundRoute]);\n } // Last attempt: check this route.\n var params = PathUtils.extractParams(route.path, pathname);\n if (params) {\n return new Match(pathname, params, query, [route]);\n }return null;\n}\n\nvar Match = (function () {\n function Match(pathname, params, query, routes) {\n _classCallCheck(this, Match);\n\n this.pathname = pathname;\n this.params = params;\n this.query = query;\n this.routes = routes;\n }\n\n _createClass(Match, null, [{\n key: 'findMatch',\n\n /**\n * Attempts to match depth-first a route in the given route's\n * subtree against the given path and returns the match if it\n * succeeds, null if no match can be made.\n */\n value: function findMatch(routes, path) {\n var pathname = PathUtils.withoutQuery(path);\n var query = PathUtils.extractQuery(path);\n var match = null;\n\n for (var i = 0, len = routes.length; match == null && i < len; ++i) match = deepSearch(routes[i], pathname, query);\n\n return match;\n }\n }]);\n\n return Match;\n})();\n\nmodule.exports = Match;", 58 | "'use strict';\n\nvar PropTypes = require('./PropTypes');\n\n/**\n * A mixin for components that modify the URL.\n *\n * Example:\n *\n * var MyLink = React.createClass({\n * mixins: [ Router.Navigation ],\n * handleClick(event) {\n * event.preventDefault();\n * this.transitionTo('aRoute', { the: 'params' }, { the: 'query' });\n * },\n * render() {\n * return (\n * Click me!\n * );\n * }\n * });\n */\nvar Navigation = {\n\n contextTypes: {\n router: PropTypes.router.isRequired\n },\n\n /**\n * Returns an absolute URL path created from the given route\n * name, URL parameters, and query values.\n */\n makePath: function makePath(to, params, query) {\n return this.context.router.makePath(to, params, query);\n },\n\n /**\n * Returns a string that may safely be used as the href of a\n * link to the route with the given name.\n */\n makeHref: function makeHref(to, params, query) {\n return this.context.router.makeHref(to, params, query);\n },\n\n /**\n * Transitions to the URL specified in the arguments by pushing\n * a new URL onto the history stack.\n */\n transitionTo: function transitionTo(to, params, query) {\n this.context.router.transitionTo(to, params, query);\n },\n\n /**\n * Transitions to the URL specified in the arguments by replacing\n * the current URL in the history stack.\n */\n replaceWith: function replaceWith(to, params, query) {\n this.context.router.replaceWith(to, params, query);\n },\n\n /**\n * Transitions to the previous URL.\n */\n goBack: function goBack() {\n return this.context.router.goBack();\n }\n\n};\n\nmodule.exports = Navigation;", 59 | "'use strict';\n\nvar invariant = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/invariant\");\nvar assign = require('object-assign');\nvar qs = require('qs');\n\nvar paramCompileMatcher = /:([a-zA-Z_$][a-zA-Z0-9_$]*)|[*.()\\[\\]\\\\+|{}^$]/g;\nvar paramInjectMatcher = /:([a-zA-Z_$][a-zA-Z0-9_$?]*[?]?)|[*]/g;\nvar paramInjectTrailingSlashMatcher = /\\/\\/\\?|\\/\\?\\/|\\/\\?/g;\nvar queryMatcher = /\\?(.*)$/;\n\nvar _compiledPatterns = {};\n\nfunction compilePattern(pattern) {\n if (!(pattern in _compiledPatterns)) {\n var paramNames = [];\n var source = pattern.replace(paramCompileMatcher, function (match, paramName) {\n if (paramName) {\n paramNames.push(paramName);\n return '([^/?#]+)';\n } else if (match === '*') {\n paramNames.push('splat');\n return '(.*?)';\n } else {\n return '\\\\' + match;\n }\n });\n\n _compiledPatterns[pattern] = {\n matcher: new RegExp('^' + source + '$', 'i'),\n paramNames: paramNames\n };\n }\n\n return _compiledPatterns[pattern];\n}\n\nvar PathUtils = {\n\n /**\n * Returns true if the given path is absolute.\n */\n isAbsolute: function isAbsolute(path) {\n return path.charAt(0) === '/';\n },\n\n /**\n * Joins two URL paths together.\n */\n join: function join(a, b) {\n return a.replace(/\\/*$/, '/') + b;\n },\n\n /**\n * Returns an array of the names of all parameters in the given pattern.\n */\n extractParamNames: function extractParamNames(pattern) {\n return compilePattern(pattern).paramNames;\n },\n\n /**\n * Extracts the portions of the given URL path that match the given pattern\n * and returns an object of param name => value pairs. Returns null if the\n * pattern does not match the given path.\n */\n extractParams: function extractParams(pattern, path) {\n var _compilePattern = compilePattern(pattern);\n\n var matcher = _compilePattern.matcher;\n var paramNames = _compilePattern.paramNames;\n\n var match = path.match(matcher);\n\n if (!match) {\n return null;\n }var params = {};\n\n paramNames.forEach(function (paramName, index) {\n params[paramName] = match[index + 1];\n });\n\n return params;\n },\n\n /**\n * Returns a version of the given route path with params interpolated. Throws\n * if there is a dynamic segment of the route path for which there is no param.\n */\n injectParams: function injectParams(pattern, params) {\n params = params || {};\n\n var splatIndex = 0;\n\n return pattern.replace(paramInjectMatcher, function (match, paramName) {\n paramName = paramName || 'splat';\n\n // If param is optional don't check for existence\n if (paramName.slice(-1) === '?') {\n paramName = paramName.slice(0, -1);\n\n if (params[paramName] == null) return '';\n } else {\n invariant(params[paramName] != null, 'Missing \"%s\" parameter for path \"%s\"', paramName, pattern);\n }\n\n var segment;\n if (paramName === 'splat' && Array.isArray(params[paramName])) {\n segment = params[paramName][splatIndex++];\n\n invariant(segment != null, 'Missing splat # %s for path \"%s\"', splatIndex, pattern);\n } else {\n segment = params[paramName];\n }\n\n return segment;\n }).replace(paramInjectTrailingSlashMatcher, '/');\n },\n\n /**\n * Returns an object that is the result of parsing any query string contained\n * in the given path, null if the path contains no query string.\n */\n extractQuery: function extractQuery(path) {\n var match = path.match(queryMatcher);\n return match && qs.parse(match[1]);\n },\n\n /**\n * Returns a version of the given path without the query string.\n */\n withoutQuery: function withoutQuery(path) {\n return path.replace(queryMatcher, '');\n },\n\n /**\n * Returns a version of the given path with the parameters in the given\n * query merged into the query string.\n */\n withQuery: function withQuery(path, query) {\n var existingQuery = PathUtils.extractQuery(path);\n\n if (existingQuery) query = query ? assign(existingQuery, query) : existingQuery;\n\n var queryString = qs.stringify(query, { arrayFormat: 'brackets' });\n\n if (queryString) {\n return PathUtils.withoutQuery(path) + '?' + queryString;\n }return PathUtils.withoutQuery(path);\n }\n\n};\n\nmodule.exports = PathUtils;", 60 | "'use strict';\n\nvar assign = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/Object.assign\");\nvar ReactPropTypes = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react\").PropTypes;\nvar Route = require('./Route');\n\nvar PropTypes = assign({}, ReactPropTypes, {\n\n /**\n * Indicates that a prop should be falsy.\n */\n falsy: function falsy(props, propName, componentName) {\n if (props[propName]) {\n return new Error('<' + componentName + '> should not have a \"' + propName + '\" prop');\n }\n },\n\n /**\n * Indicates that a prop should be a Route object.\n */\n route: ReactPropTypes.instanceOf(Route),\n\n /**\n * Indicates that a prop should be a Router object.\n */\n //router: ReactPropTypes.instanceOf(Router) // TODO\n router: ReactPropTypes.func\n\n});\n\nmodule.exports = PropTypes;", 61 | "/**\n * Encapsulates a redirect to the given route.\n */\n\"use strict\";\n\nfunction Redirect(to, params, query) {\n this.to = to;\n this.params = params;\n this.query = query;\n}\n\nmodule.exports = Redirect;", 62 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nvar assign = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/Object.assign\");\nvar invariant = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/invariant\");\nvar warning = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/warning\");\nvar PathUtils = require('./PathUtils');\n\nvar _currentRoute;\n\nvar Route = (function () {\n function Route(name, path, ignoreScrollBehavior, isDefault, isNotFound, onEnter, onLeave, handler) {\n _classCallCheck(this, Route);\n\n this.name = name;\n this.path = path;\n this.paramNames = PathUtils.extractParamNames(this.path);\n this.ignoreScrollBehavior = !!ignoreScrollBehavior;\n this.isDefault = !!isDefault;\n this.isNotFound = !!isNotFound;\n this.onEnter = onEnter;\n this.onLeave = onLeave;\n this.handler = handler;\n }\n\n _createClass(Route, [{\n key: 'appendChild',\n\n /**\n * Appends the given route to this route's child routes.\n */\n value: function appendChild(route) {\n invariant(route instanceof Route, 'route.appendChild must use a valid Route');\n\n if (!this.childRoutes) this.childRoutes = [];\n\n this.childRoutes.push(route);\n }\n }, {\n key: 'toString',\n value: function toString() {\n var string = '';\n\n return string;\n }\n }], [{\n key: 'createRoute',\n\n /**\n * Creates and returns a new route. Options may be a URL pathname string\n * with placeholders for named params or an object with any of the following\n * properties:\n *\n * - name The name of the route. This is used to lookup a\n * route relative to its parent route and should be\n * unique among all child routes of the same parent\n * - path A URL pathname string with optional placeholders\n * that specify the names of params to extract from\n * the URL when the path matches. Defaults to `/${name}`\n * when there is a name given, or the path of the parent\n * route, or /\n * - ignoreScrollBehavior True to make this route (and all descendants) ignore\n * the scroll behavior of the router\n * - isDefault True to make this route the default route among all\n * its siblings\n * - isNotFound True to make this route the \"not found\" route among\n * all its siblings\n * - onEnter A transition hook that will be called when the\n * router is going to enter this route\n * - onLeave A transition hook that will be called when the\n * router is going to leave this route\n * - handler A React component that will be rendered when\n * this route is active\n * - parentRoute The parent route to use for this route. This option\n * is automatically supplied when creating routes inside\n * the callback to another invocation of createRoute. You\n * only ever need to use this when declaring routes\n * independently of one another to manually piece together\n * the route hierarchy\n *\n * The callback may be used to structure your route hierarchy. Any call to\n * createRoute, createDefaultRoute, createNotFoundRoute, or createRedirect\n * inside the callback automatically uses this route as its parent.\n */\n value: function createRoute(options, callback) {\n options = options || {};\n\n if (typeof options === 'string') options = { path: options };\n\n var parentRoute = _currentRoute;\n\n if (parentRoute) {\n warning(options.parentRoute == null || options.parentRoute === parentRoute, 'You should not use parentRoute with createRoute inside another route\\'s child callback; it is ignored');\n } else {\n parentRoute = options.parentRoute;\n }\n\n var name = options.name;\n var path = options.path || name;\n\n if (path && !(options.isDefault || options.isNotFound)) {\n if (PathUtils.isAbsolute(path)) {\n if (parentRoute) {\n invariant(path === parentRoute.path || parentRoute.paramNames.length === 0, 'You cannot nest path \"%s\" inside \"%s\"; the parent requires URL parameters', path, parentRoute.path);\n }\n } else if (parentRoute) {\n // Relative paths extend their parent.\n path = PathUtils.join(parentRoute.path, path);\n } else {\n path = '/' + path;\n }\n } else {\n path = parentRoute ? parentRoute.path : '/';\n }\n\n if (options.isNotFound && !/\\*$/.test(path)) path += '*'; // Auto-append * to the path of not found routes.\n\n var route = new Route(name, path, options.ignoreScrollBehavior, options.isDefault, options.isNotFound, options.onEnter, options.onLeave, options.handler);\n\n if (parentRoute) {\n if (route.isDefault) {\n invariant(parentRoute.defaultRoute == null, '%s may not have more than one default route', parentRoute);\n\n parentRoute.defaultRoute = route;\n } else if (route.isNotFound) {\n invariant(parentRoute.notFoundRoute == null, '%s may not have more than one not found route', parentRoute);\n\n parentRoute.notFoundRoute = route;\n }\n\n parentRoute.appendChild(route);\n }\n\n // Any routes created in the callback\n // use this route as their parent.\n if (typeof callback === 'function') {\n var currentRoute = _currentRoute;\n _currentRoute = route;\n callback.call(route, route);\n _currentRoute = currentRoute;\n }\n\n return route;\n }\n }, {\n key: 'createDefaultRoute',\n\n /**\n * Creates and returns a route that is rendered when its parent matches\n * the current URL.\n */\n value: function createDefaultRoute(options) {\n return Route.createRoute(assign({}, options, { isDefault: true }));\n }\n }, {\n key: 'createNotFoundRoute',\n\n /**\n * Creates and returns a route that is rendered when its parent matches\n * the current URL but none of its siblings do.\n */\n value: function createNotFoundRoute(options) {\n return Route.createRoute(assign({}, options, { isNotFound: true }));\n }\n }, {\n key: 'createRedirect',\n\n /**\n * Creates and returns a route that automatically redirects the transition\n * to another route. In addition to the normal options to createRoute, this\n * function accepts the following options:\n *\n * - from An alias for the `path` option. Defaults to *\n * - to The path/route/route name to redirect to\n * - params The params to use in the redirect URL. Defaults\n * to using the current params\n * - query The query to use in the redirect URL. Defaults\n * to using the current query\n */\n value: function createRedirect(options) {\n return Route.createRoute(assign({}, options, {\n path: options.path || options.from || '*',\n onEnter: function onEnter(transition, params, query) {\n transition.redirect(options.to, options.params || params, options.query || query);\n }\n }));\n }\n }]);\n\n return Route;\n})();\n\nmodule.exports = Route;", 63 | "'use strict';\n\nvar invariant = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/invariant\");\nvar canUseDOM = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/ExecutionEnvironment\").canUseDOM;\nvar getWindowScrollPosition = require('./getWindowScrollPosition');\n\nfunction shouldUpdateScroll(state, prevState) {\n if (!prevState) {\n return true;\n } // Don't update scroll position when only the query has changed.\n if (state.pathname === prevState.pathname) {\n return false;\n }var routes = state.routes;\n var prevRoutes = prevState.routes;\n\n var sharedAncestorRoutes = routes.filter(function (route) {\n return prevRoutes.indexOf(route) !== -1;\n });\n\n return !sharedAncestorRoutes.some(function (route) {\n return route.ignoreScrollBehavior;\n });\n}\n\n/**\n * Provides the router with the ability to manage window scroll position\n * according to its scroll behavior.\n */\nvar ScrollHistory = {\n\n statics: {\n\n /**\n * Records curent scroll position as the last known position for the given URL path.\n */\n recordScrollPosition: function recordScrollPosition(path) {\n if (!this.scrollHistory) this.scrollHistory = {};\n\n this.scrollHistory[path] = getWindowScrollPosition();\n },\n\n /**\n * Returns the last known scroll position for the given URL path.\n */\n getScrollPosition: function getScrollPosition(path) {\n if (!this.scrollHistory) this.scrollHistory = {};\n\n return this.scrollHistory[path] || null;\n }\n\n },\n\n componentWillMount: function componentWillMount() {\n invariant(this.constructor.getScrollBehavior() == null || canUseDOM, 'Cannot use scroll behavior without a DOM');\n },\n\n componentDidMount: function componentDidMount() {\n this._updateScroll();\n },\n\n componentDidUpdate: function componentDidUpdate(prevProps, prevState) {\n this._updateScroll(prevState);\n },\n\n _updateScroll: function _updateScroll(prevState) {\n if (!shouldUpdateScroll(this.state, prevState)) {\n return;\n }var scrollBehavior = this.constructor.getScrollBehavior();\n\n if (scrollBehavior) scrollBehavior.updateScrollPosition(this.constructor.getScrollPosition(this.state.path), this.state.action);\n }\n\n};\n\nmodule.exports = ScrollHistory;", 64 | "'use strict';\n\nvar PropTypes = require('./PropTypes');\n\n/**\n * A mixin for components that need to know the path, routes, URL\n * params and query that are currently active.\n *\n * Example:\n *\n * var AboutLink = React.createClass({\n * mixins: [ Router.State ],\n * render() {\n * var className = this.props.className;\n *\n * if (this.isActive('about'))\n * className += ' is-active';\n *\n * return React.DOM.a({ className: className }, this.props.children);\n * }\n * });\n */\nvar State = {\n\n contextTypes: {\n router: PropTypes.router.isRequired\n },\n\n /**\n * Returns the current URL path.\n */\n getPath: function getPath() {\n return this.context.router.getCurrentPath();\n },\n\n /**\n * Returns the current URL path without the query string.\n */\n getPathname: function getPathname() {\n return this.context.router.getCurrentPathname();\n },\n\n /**\n * Returns an object of the URL params that are currently active.\n */\n getParams: function getParams() {\n return this.context.router.getCurrentParams();\n },\n\n /**\n * Returns an object of the query params that are currently active.\n */\n getQuery: function getQuery() {\n return this.context.router.getCurrentQuery();\n },\n\n /**\n * Returns an array of the routes that are currently active.\n */\n getRoutes: function getRoutes() {\n return this.context.router.getCurrentRoutes();\n },\n\n /**\n * A helper method to determine if a given route, params, and query\n * are active.\n */\n isActive: function isActive(to, params, query) {\n return this.context.router.isActive(to, params, query);\n }\n\n};\n\nmodule.exports = State;", 65 | "/* jshint -W058 */\n\n'use strict';\n\nvar Cancellation = require('./Cancellation');\nvar Redirect = require('./Redirect');\n\n/**\n * Encapsulates a transition to a given path.\n *\n * The willTransitionTo and willTransitionFrom handlers receive\n * an instance of this class as their first argument.\n */\nfunction Transition(path, retry) {\n this.path = path;\n this.abortReason = null;\n // TODO: Change this to router.retryTransition(transition)\n this.retry = retry.bind(this);\n}\n\nTransition.prototype.abort = function (reason) {\n if (this.abortReason == null) this.abortReason = reason || 'ABORT';\n};\n\nTransition.prototype.redirect = function (to, params, query) {\n this.abort(new Redirect(to, params, query));\n};\n\nTransition.prototype.cancel = function () {\n this.abort(new Cancellation());\n};\n\nTransition.from = function (transition, routes, components, callback) {\n routes.reduce(function (callback, route, index) {\n return function (error) {\n if (error || transition.abortReason) {\n callback(error);\n } else if (route.onLeave) {\n try {\n route.onLeave(transition, components[index], callback);\n\n // If there is no callback in the argument list, call it automatically.\n if (route.onLeave.length < 3) callback();\n } catch (e) {\n callback(e);\n }\n } else {\n callback();\n }\n };\n }, callback)();\n};\n\nTransition.to = function (transition, routes, params, query, callback) {\n routes.reduceRight(function (callback, route) {\n return function (error) {\n if (error || transition.abortReason) {\n callback(error);\n } else if (route.onEnter) {\n try {\n route.onEnter(transition, params, query, callback);\n\n // If there is no callback in the argument list, call it automatically.\n if (route.onEnter.length < 4) callback();\n } catch (e) {\n callback(e);\n }\n } else {\n callback();\n }\n };\n }, callback)();\n};\n\nmodule.exports = Transition;", 66 | "/**\n * Actions that modify the URL.\n */\n'use strict';\n\nvar LocationActions = {\n\n /**\n * Indicates a new location is being pushed to the history stack.\n */\n PUSH: 'push',\n\n /**\n * Indicates the current location should be replaced.\n */\n REPLACE: 'replace',\n\n /**\n * Indicates the most recent entry should be removed from the history stack.\n */\n POP: 'pop'\n\n};\n\nmodule.exports = LocationActions;", 67 | "'use strict';\n\nvar LocationActions = require('../actions/LocationActions');\n\n/**\n * A scroll behavior that attempts to imitate the default behavior\n * of modern browsers.\n */\nvar ImitateBrowserBehavior = {\n\n updateScrollPosition: function updateScrollPosition(position, actionType) {\n switch (actionType) {\n case LocationActions.PUSH:\n case LocationActions.REPLACE:\n window.scrollTo(0, 0);\n break;\n case LocationActions.POP:\n if (position) {\n window.scrollTo(position.x, position.y);\n } else {\n window.scrollTo(0, 0);\n }\n break;\n }\n }\n\n};\n\nmodule.exports = ImitateBrowserBehavior;", 68 | "/**\n * A scroll behavior that always scrolls to the top of the page\n * after a transition.\n */\n\"use strict\";\n\nvar ScrollToTopBehavior = {\n\n updateScrollPosition: function updateScrollPosition() {\n window.scrollTo(0, 0);\n }\n\n};\n\nmodule.exports = ScrollToTopBehavior;", 69 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nvar _inherits = function (subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };\n\n/**\n * This component is necessary to get around a context warning\n * present in React 0.13.0. It sovles this by providing a separation\n * between the \"owner\" and \"parent\" contexts.\n */\n\nvar React = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react\");\n\nvar ContextWrapper = (function (_React$Component) {\n function ContextWrapper() {\n _classCallCheck(this, ContextWrapper);\n\n if (_React$Component != null) {\n _React$Component.apply(this, arguments);\n }\n }\n\n _inherits(ContextWrapper, _React$Component);\n\n _createClass(ContextWrapper, [{\n key: 'render',\n value: function render() {\n return this.props.children;\n }\n }]);\n\n return ContextWrapper;\n})(React.Component);\n\nmodule.exports = ContextWrapper;", 70 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _inherits = function (subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };\n\nvar PropTypes = require('../PropTypes');\nvar RouteHandler = require('./RouteHandler');\nvar Route = require('./Route');\n\n/**\n * A component is a special kind of that\n * renders when its parent matches but none of its siblings do.\n * Only one such route may be used at any given level in the\n * route hierarchy.\n */\n\nvar DefaultRoute = (function (_Route) {\n function DefaultRoute() {\n _classCallCheck(this, DefaultRoute);\n\n if (_Route != null) {\n _Route.apply(this, arguments);\n }\n }\n\n _inherits(DefaultRoute, _Route);\n\n return DefaultRoute;\n})(Route);\n\n// TODO: Include these in the above class definition\n// once we can use ES7 property initializers.\n// https://github.com/babel/babel/issues/619\n\nDefaultRoute.propTypes = {\n name: PropTypes.string,\n path: PropTypes.falsy,\n children: PropTypes.falsy,\n handler: PropTypes.func.isRequired\n};\n\nDefaultRoute.defaultProps = {\n handler: RouteHandler\n};\n\nmodule.exports = DefaultRoute;", 71 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nvar _inherits = function (subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };\n\nvar React = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react\");\nvar assign = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/Object.assign\");\nvar PropTypes = require('../PropTypes');\n\nfunction isLeftClickEvent(event) {\n return event.button === 0;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\n/**\n * components are used to create an element that links to a route.\n * When that route is active, the link gets an \"active\" class name (or the\n * value of its `activeClassName` prop).\n *\n * For example, assuming you have the following route:\n *\n * \n *\n * You could use the following component to link to that route:\n *\n * \n *\n * In addition to params, links may pass along query string parameters\n * using the `query` prop.\n *\n * \n */\n\nvar Link = (function (_React$Component) {\n function Link() {\n _classCallCheck(this, Link);\n\n if (_React$Component != null) {\n _React$Component.apply(this, arguments);\n }\n }\n\n _inherits(Link, _React$Component);\n\n _createClass(Link, [{\n key: 'handleClick',\n value: function handleClick(event) {\n var allowTransition = true;\n var clickResult;\n\n if (this.props.onClick) clickResult = this.props.onClick(event);\n\n if (isModifiedEvent(event) || !isLeftClickEvent(event)) {\n return;\n }if (clickResult === false || event.defaultPrevented === true) allowTransition = false;\n\n event.preventDefault();\n\n if (allowTransition) this.context.router.transitionTo(this.props.to, this.props.params, this.props.query);\n }\n }, {\n key: 'getHref',\n\n /**\n * Returns the value of the \"href\" attribute to use on the DOM element.\n */\n value: function getHref() {\n return this.context.router.makeHref(this.props.to, this.props.params, this.props.query);\n }\n }, {\n key: 'getClassName',\n\n /**\n * Returns the value of the \"class\" attribute to use on the DOM element, which contains\n * the value of the activeClassName property when this is active.\n */\n value: function getClassName() {\n var className = this.props.className;\n\n if (this.getActiveState()) className += ' ' + this.props.activeClassName;\n\n return className;\n }\n }, {\n key: 'getActiveState',\n value: function getActiveState() {\n return this.context.router.isActive(this.props.to, this.props.params, this.props.query);\n }\n }, {\n key: 'render',\n value: function render() {\n var props = assign({}, this.props, {\n href: this.getHref(),\n className: this.getClassName(),\n onClick: this.handleClick.bind(this)\n });\n\n if (props.activeStyle && this.getActiveState()) props.style = props.activeStyle;\n\n return React.DOM.a(props, this.props.children);\n }\n }]);\n\n return Link;\n})(React.Component);\n\n// TODO: Include these in the above class definition\n// once we can use ES7 property initializers.\n// https://github.com/babel/babel/issues/619\n\nLink.contextTypes = {\n router: PropTypes.router.isRequired\n};\n\nLink.propTypes = {\n activeClassName: PropTypes.string.isRequired,\n to: PropTypes.oneOfType([PropTypes.string, PropTypes.route]).isRequired,\n params: PropTypes.object,\n query: PropTypes.object,\n activeStyle: PropTypes.object,\n onClick: PropTypes.func\n};\n\nLink.defaultProps = {\n activeClassName: 'active',\n className: ''\n};\n\nmodule.exports = Link;", 72 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _inherits = function (subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };\n\nvar PropTypes = require('../PropTypes');\nvar RouteHandler = require('./RouteHandler');\nvar Route = require('./Route');\n\n/**\n * A is a special kind of that\n * renders when the beginning of its parent's path matches\n * but none of its siblings do, including any .\n * Only one such route may be used at any given level in the\n * route hierarchy.\n */\n\nvar NotFoundRoute = (function (_Route) {\n function NotFoundRoute() {\n _classCallCheck(this, NotFoundRoute);\n\n if (_Route != null) {\n _Route.apply(this, arguments);\n }\n }\n\n _inherits(NotFoundRoute, _Route);\n\n return NotFoundRoute;\n})(Route);\n\n// TODO: Include these in the above class definition\n// once we can use ES7 property initializers.\n// https://github.com/babel/babel/issues/619\n\nNotFoundRoute.propTypes = {\n name: PropTypes.string,\n path: PropTypes.falsy,\n children: PropTypes.falsy,\n handler: PropTypes.func.isRequired\n};\n\nNotFoundRoute.defaultProps = {\n handler: RouteHandler\n};\n\nmodule.exports = NotFoundRoute;", 73 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _inherits = function (subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };\n\nvar PropTypes = require('../PropTypes');\nvar Route = require('./Route');\n\n/**\n * A component is a special kind of that always\n * redirects to another route when it matches.\n */\n\nvar Redirect = (function (_Route) {\n function Redirect() {\n _classCallCheck(this, Redirect);\n\n if (_Route != null) {\n _Route.apply(this, arguments);\n }\n }\n\n _inherits(Redirect, _Route);\n\n return Redirect;\n})(Route);\n\n// TODO: Include these in the above class definition\n// once we can use ES7 property initializers.\n// https://github.com/babel/babel/issues/619\n\nRedirect.propTypes = {\n path: PropTypes.string,\n from: PropTypes.string, // Alias for path.\n to: PropTypes.string,\n handler: PropTypes.falsy\n};\n\n// Redirects should not have a default handler\nRedirect.defaultProps = {};\n\nmodule.exports = Redirect;", 74 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nvar _inherits = function (subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };\n\nvar React = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react\");\nvar invariant = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/invariant\");\nvar PropTypes = require('../PropTypes');\nvar RouteHandler = require('./RouteHandler');\n\n/**\n * components specify components that are rendered to the page when the\n * URL matches a given pattern.\n *\n * Routes are arranged in a nested tree structure. When a new URL is requested,\n * the tree is searched depth-first to find a route whose path matches the URL.\n * When one is found, all routes in the tree that lead to it are considered\n * \"active\" and their components are rendered into the DOM, nested in the same\n * order as they are in the tree.\n *\n * The preferred way to configure a router is using JSX. The XML-like syntax is\n * a great way to visualize how routes are laid out in an application.\n *\n * var routes = [\n * \n * \n * \n * \n * \n * ];\n * \n * Router.run(routes, function (Handler) {\n * React.render(, document.body);\n * });\n *\n * Handlers for Route components that contain children can render their active\n * child route using a element.\n *\n * var App = React.createClass({\n * render: function () {\n * return (\n *
\n * \n *
\n * );\n * }\n * });\n *\n * If no handler is provided for the route, it will render a matched child route.\n */\n\nvar Route = (function (_React$Component) {\n function Route() {\n _classCallCheck(this, Route);\n\n if (_React$Component != null) {\n _React$Component.apply(this, arguments);\n }\n }\n\n _inherits(Route, _React$Component);\n\n _createClass(Route, [{\n key: 'render',\n value: function render() {\n invariant(false, '%s elements are for router configuration only and should not be rendered', this.constructor.name);\n }\n }]);\n\n return Route;\n})(React.Component);\n\n// TODO: Include these in the above class definition\n// once we can use ES7 property initializers.\n// https://github.com/babel/babel/issues/619\n\nRoute.propTypes = {\n name: PropTypes.string,\n path: PropTypes.string,\n handler: PropTypes.func,\n ignoreScrollBehavior: PropTypes.bool\n};\n\nRoute.defaultProps = {\n handler: RouteHandler\n};\n\nmodule.exports = Route;", 75 | "'use strict';\n\nvar _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nvar _inherits = function (subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };\n\nvar React = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react\");\nvar ContextWrapper = require('./ContextWrapper');\nvar assign = (typeof window !== \"undefined\" ? window['React']['require'] : typeof global !== \"undefined\" ? global['React']['require'] : null)(\"react/lib/Object.assign\");\nvar PropTypes = require('../PropTypes');\n\nvar REF_NAME = '__routeHandler__';\n\n/**\n * A component renders the active child route handler\n * when routes are nested.\n */\n\nvar RouteHandler = (function (_React$Component) {\n function RouteHandler() {\n _classCallCheck(this, RouteHandler);\n\n if (_React$Component != null) {\n _React$Component.apply(this, arguments);\n }\n }\n\n _inherits(RouteHandler, _React$Component);\n\n _createClass(RouteHandler, [{\n key: 'getChildContext',\n value: function getChildContext() {\n return {\n routeDepth: this.context.routeDepth + 1\n };\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n this._updateRouteComponent(this.refs[REF_NAME]);\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate() {\n this._updateRouteComponent(this.refs[REF_NAME]);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this._updateRouteComponent(null);\n }\n }, {\n key: '_updateRouteComponent',\n value: function _updateRouteComponent(component) {\n this.context.router.setRouteComponentAtDepth(this.getRouteDepth(), component);\n }\n }, {\n key: 'getRouteDepth',\n value: function getRouteDepth() {\n return this.context.routeDepth;\n }\n }, {\n key: 'createChildRouteHandler',\n value: function createChildRouteHandler(props) {\n var route = this.context.router.getRouteAtDepth(this.getRouteDepth());\n\n if (route == null) {\n return null;\n }var childProps = assign({}, props || this.props, {\n ref: REF_NAME,\n params: this.context.router.getCurrentParams(),\n query: this.context.router.getCurrentQuery()\n });\n\n return React.createElement(route.handler, childProps);\n }\n }, {\n key: 'render',\n value: function render() {\n var handler = this.createChildRouteHandler();\n //