{ "version": 3, "sources": [ "node_modules/browser-pack/_prelude.js", "node_modules/classnames/index.js", "node_modules/combine-selectors/src/combine-selectors.js", "node_modules/link-react/link.jsx", "node_modules/lodash/_getPrototype.js", "node_modules/lodash/_overArg.js", "node_modules/lodash/isObjectLike.js", "node_modules/lodash/isPlainObject.js", "node_modules/map-or-similar/src/map-or-similar.js", "node_modules/map-or-similar/src/similar.js", "node_modules/memoizerific/src/memoizerific.js", "node_modules/process/browser.js", "node_modules/redux-thunk/lib/index.js", "node_modules/redux/lib/applyMiddleware.js", "node_modules/redux/lib/bindActionCreators.js", "node_modules/redux/lib/combineReducers.js", "node_modules/redux/lib/compose.js", "node_modules/redux/lib/createStore.js", "node_modules/redux/lib/index.js", "node_modules/redux/lib/utils/warning.js", "node_modules/symbol-observable/index.js", "node_modules/symbol-observable/lib/index.js", "node_modules/symbol-observable/lib/ponyfill.js", "src/components/app.jsx", "src/components/constants/pages.js", "src/components/items.jsx", "src/components/page-about.jsx", "src/components/page-account.jsx", "src/components/page-home.jsx", "src/components/site-header.jsx", "src/index.js", "src/selectors/items/items.js", "src/selectors/selectors.js", "src/selectors/site/routing.js", "src/selectors/site/selected-page.js", "src/selectors/site/site-header.js", "src/state/items/reducers/items.js", "src/state/items/reducers/selected-item-id.js", "src/state/site/actions/update-url.js", "src/state/site/constants/paths.js", "src/state/site/constants/sections.js", "src/state/site/reducers/selected-section.js", "src/state/site/reducers/url.js", "src/state/store.js" ], "names": [], "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;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;ACNA;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;;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;;;ACpEA;AACA;AACA;AACA;AACA;AACA;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;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;;;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;;;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;kBCbe,UAAU,IAAV,EAAgB,UAAhB,EAA4B;AAC1C,KAAI,aAAJ;;AAEA,KAAI,KAAK,OAAL,CAAa,GAAb,KAAqB,OAAO,QAAP,CAAgB,QAAhB,GAA2B,OAAO,QAAP,CAAgB,MAApE,EAA4E;AAC3E,SAAO,OAAP,CAAe,SAAf,CAAyB,IAAzB,EAA+B,IAA/B,EAAqC,KAAK,OAAL,CAAa,GAAlD;AACA;AACD,UAAS,KAAT,GAAiB,KAAK,OAAL,CAAa,KAA9B;;AAEA,SAAO,KAAK,YAAZ;AACA;AACC,UAAO;AACN,eAAU,YADJ;AAEN,gBAAa,KAAK;AAFZ,KAAP;AAIA;;AAED;AACC,UAAO;AACN,eAAU,cADJ;AAEN,gBAAa,KAAK;AAFZ,KAAP;AAIA;;AA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", "file": "generated.js", "sourceRoot": "", "sourcesContent": [ "(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o {\n\t\tObject.defineProperty(p, selectorKey, {\n\t\t\tget: function() { return selectors[selectorKey](getState(), ...args) },\n\t\t\tenumerable: true\n\t\t});\n\t\treturn p;\n\t}, {});\n};\n", "module.exports = React.createClass({\n\tpropTypes: {\n\t\tclassName: React.PropTypes.string,\n\t\thref: React.PropTypes.string,\n\t\ttarget: React.PropTypes.string,\n\t\tonClick: React.PropTypes.func\n\t},\n\n\thandleClick: function(e) {\n\n\t\t// if target is set (e.g. to \"_blank\"), let the browser handle it\n\t\tif (this.props.target || (this.props.href && this.props.href.indexOf('mailto:') === 0)) {\n\t\t\treturn;\n\t\t}\n\n\t\t// if keyboard click, or not a left click, let the browser handle it\n\t\tif (!e.button === 0 || e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) {\n\t\t\treturn;\n\t\t}\n\n\t\t// otherwise intercept the browser\n\t\te.preventDefault();\n\n\t\t// if a handler was provided, run it\n\t\tif (this.props.onClick) {\n\t\t\tthis.props.onClick(this.props.href);\n\t\t}\n\t},\n\n\trender: function() {\n\t\treturn React.createElement('a', Object.assign({}, this.props, {\n\t\t\thref: this.props.href,\n\t\t\tclassName: 'link ' + this.props.className,\n\t\t\tonClick: this.handleClick\n\t\t}));\n\t}\n});\n", "var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n", "/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n", "/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n", "var getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || objectToString.call(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return (typeof Ctor == 'function' &&\n Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString);\n}\n\nmodule.exports = isPlainObject;\n", "if (typeof Map !== 'function' || (process && process.env && process.env.TEST_MAPORSIMILAR === 'true')) {\n\tmodule.exports = require('./similar');\n}\nelse {\n\tmodule.exports = Map;\n}", "function Similar() {\n\tthis.list = [];\n\tthis.lastItem = undefined;\n\tthis.size = 0;\n\n\treturn this;\n}\n\nSimilar.prototype.get = function(key) {\n\tvar index;\n\n\tif (this.lastItem && this.isEqual(this.lastItem.key, key)) {\n\t\treturn this.lastItem.val;\n\t}\n\n\tindex = this.indexOf(key);\n\tif (index >= 0) {\n\t\tthis.lastItem = this.list[index];\n\t\treturn this.list[index].val;\n\t}\n\n\treturn undefined;\n};\n\nSimilar.prototype.set = function(key, val) {\n\tvar index;\n\n\tif (this.lastItem && this.isEqual(this.lastItem.key, key)) {\n\t\tthis.lastItem.val = val;\n\t\treturn this;\n\t}\n\n\tindex = this.indexOf(key);\n\tif (index >= 0) {\n\t\tthis.lastItem = this.list[index];\n\t\tthis.list[index].val = val;\n\t\treturn this;\n\t}\n\n\tthis.lastItem = { key: key, val: val };\n\tthis.list.push(this.lastItem);\n\tthis.size++;\n\n\treturn this;\n};\n\nSimilar.prototype.delete = function(key) {\n\tvar index;\n\n\tif (this.lastItem && this.isEqual(this.lastItem.key, key)) {\n\t\tthis.lastItem = undefined;\n\t}\n\n\tindex = this.indexOf(key);\n\tif (index >= 0) {\n\t\tthis.size--;\n\t\treturn this.list.splice(index, 1)[0];\n\t}\n\n\treturn undefined;\n};\n\n\n// important that has() doesn't use get() in case an existing key has a falsy value, in which case has() would return false\nSimilar.prototype.has = function(key) {\n\tvar index;\n\n\tif (this.lastItem && this.isEqual(this.lastItem.key, key)) {\n\t\treturn true;\n\t}\n\n\tindex = this.indexOf(key);\n\tif (index >= 0) {\n\t\tthis.lastItem = this.list[index];\n\t\treturn true;\n\t}\n\n\treturn false;\n};\n\nSimilar.prototype.forEach = function(callback, thisArg) {\n\tvar i;\n\tfor (i = 0; i < this.size; i++) {\n\t\tcallback.call(thisArg || this, this.list[i].val, this.list[i].key, this);\n\t}\n};\n\nSimilar.prototype.indexOf = function(key) {\n\tvar i;\n\tfor (i = 0; i < this.size; i++) {\n\t\tif (this.isEqual(this.list[i].key, key)) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn -1;\n};\n\n// check if the numbers are equal, or whether they are both precisely NaN (isNaN returns true for all non-numbers)\nSimilar.prototype.isEqual = function(val1, val2) {\n\treturn val1 === val2 || (val1 !== val1 && val2 !== val2);\n};\n\nmodule.exports = Similar;", "var MapOrSimilar = require('map-or-similar');\n\nmodule.exports = function (limit) {\n\tvar cache = new MapOrSimilar(),\n\t\tlru = [];\n\n\treturn function (fn) {\n\t\tvar memoizerific = function () {\n\t\t\tvar currentCache = cache,\n\t\t\t\tnewMap,\n\t\t\t\tfnResult,\n\t\t\t\targsLengthMinusOne = arguments.length - 1,\n\t\t\t\tlruPath = Array(argsLengthMinusOne + 1),\n\t\t\t\tisMemoized = true,\n\t\t\t\ti;\n\n\t\t\tif ((memoizerific.numArgs || memoizerific.numArgs === 0) && memoizerific.numArgs !== argsLengthMinusOne + 1) {\n\t\t\t\tthrow new Error('Memoizerific functions should always be called with the same number of arguments');\n\t\t\t}\n\n\t\t\t// loop through each argument to traverse the map tree\n\t\t\tfor (i = 0; i < argsLengthMinusOne; i++) {\n\t\t\t\tlruPath[i] = {\n\t\t\t\t\tcacheItem: currentCache,\n\t\t\t\t\targ: arguments[i]\n\t\t\t\t};\n\n\t\t\t\t// climb through the hierarchical map tree until the second-last argument has been found, or an argument is missing.\n\t\t\t\t// if all arguments up to the second-last have been found, this will potentially be a cache hit (determined below)\n\t\t\t\tif (currentCache.has(arguments[i])) {\n\t\t\t\t\tcurrentCache = currentCache.get(arguments[i]);\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tisMemoized = false;\n\n\t\t\t\t// make maps until last value\n\t\t\t\tnewMap = new MapOrSimilar();\n\t\t\t\tcurrentCache.set(arguments[i], newMap);\n\t\t\t\tcurrentCache = newMap;\n\t\t\t}\n\n\t\t\t// we are at the last arg, check if it is really memoized\n\t\t\tif (isMemoized) {\n\t\t\t\tif (currentCache.has(arguments[argsLengthMinusOne])) {\n\t\t\t\t\tfnResult = currentCache.get(arguments[argsLengthMinusOne]);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tisMemoized = false;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!isMemoized) {\n\t\t\t\tfnResult = fn.apply(null, arguments);\n\t\t\t\tcurrentCache.set(arguments[argsLengthMinusOne], fnResult);\n\t\t\t}\n\n\t\t\tif (limit > 0) {\n\t\t\t\tlruPath[argsLengthMinusOne] = {\n\t\t\t\t\tcacheItem: currentCache,\n\t\t\t\t\targ: arguments[argsLengthMinusOne]\n\t\t\t\t};\n\n\t\t\t\tif (isMemoized) {\n\t\t\t\t\tmoveToMostRecentLru(lru, lruPath);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tlru.push(lruPath);\n\t\t\t\t}\n\n\t\t\t\tif (lru.length > limit) {\n\t\t\t\t\tremoveCachedResult(lru.shift());\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tmemoizerific.wasMemoized = isMemoized;\n\t\t\tmemoizerific.numArgs = argsLengthMinusOne + 1;\n\n\t\t\treturn fnResult;\n\t\t};\n\n\t\tmemoizerific.limit = limit;\n\t\tmemoizerific.wasMemoized = false;\n\t\tmemoizerific.cache = cache;\n\t\tmemoizerific.lru = lru;\n\n\t\treturn memoizerific;\n\t};\n};\n\n// move current args to most recent position\nfunction moveToMostRecentLru(lru, lruPath) {\n\tvar lruLen = lru.length,\n\t\tlruPathLen = lruPath.length,\n\t\tisMatch,\n\t\ti, ii;\n\n\tfor (i = 0; i < lruLen; i++) {\n\t\tisMatch = true;\n\t\tfor (ii = 0; ii < lruPathLen; ii++) {\n\t\t\tif (!isEqual(lru[i][ii].arg, lruPath[ii].arg)) {\n\t\t\t\tisMatch = false;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (isMatch) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tlru.push(lru.splice(i, 1)[0]);\n}\n\n// remove least recently used cache item and all dead branches\nfunction removeCachedResult(removedLru) {\n\tvar removedLruLen = removedLru.length,\n\t\tcurrentLru = removedLru[removedLruLen - 1],\n\t\ttmp,\n\t\ti;\n\n\tcurrentLru.cacheItem.delete(currentLru.arg);\n\n\t// walk down the tree removing dead branches (size 0) along the way\n\tfor (i = removedLruLen - 2; i >= 0; i--) {\n\t\tcurrentLru = removedLru[i];\n\t\ttmp = currentLru.cacheItem.get(currentLru.arg);\n\n\t\tif (!tmp || !tmp.size) {\n\t\t\tcurrentLru.cacheItem.delete(currentLru.arg);\n\t\t} else {\n\t\t\tbreak;\n\t\t}\n\t}\n}\n\n// check if the numbers are equal, or whether they are both precisely NaN (isNaN returns true for all non-numbers)\nfunction isEqual(val1, val2) {\n\treturn val1 === val2 || (val1 !== val1 && val2 !== val2);\n}", "// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 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 runTimeout(drainQueue);\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\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n", "'use strict';\n\nexports.__esModule = true;\nfunction createThunkMiddleware(extraArgument) {\n return function (_ref) {\n var dispatch = _ref.dispatch;\n var getState = _ref.getState;\n return function (next) {\n return function (action) {\n if (typeof action === 'function') {\n return action(dispatch, getState, extraArgument);\n }\n\n return next(action);\n };\n };\n };\n}\n\nvar thunk = createThunkMiddleware();\nthunk.withExtraArgument = createThunkMiddleware;\n\nexports['default'] = thunk;", "'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nexports['default'] = applyMiddleware;\n\nvar _compose = require('./compose');\n\nvar _compose2 = _interopRequireDefault(_compose);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\nfunction applyMiddleware() {\n for (var _len = arguments.length, middlewares = Array(_len), _key = 0; _key < _len; _key++) {\n middlewares[_key] = arguments[_key];\n }\n\n return function (createStore) {\n return function (reducer, preloadedState, enhancer) {\n var store = createStore(reducer, preloadedState, enhancer);\n var _dispatch = store.dispatch;\n var chain = [];\n\n var middlewareAPI = {\n getState: store.getState,\n dispatch: function dispatch(action) {\n return _dispatch(action);\n }\n };\n chain = middlewares.map(function (middleware) {\n return middleware(middlewareAPI);\n });\n _dispatch = _compose2['default'].apply(undefined, chain)(store.dispatch);\n\n return _extends({}, store, {\n dispatch: _dispatch\n });\n };\n };\n}", "'use strict';\n\nexports.__esModule = true;\nexports['default'] = bindActionCreators;\nfunction bindActionCreator(actionCreator, dispatch) {\n return function () {\n return dispatch(actionCreator.apply(undefined, arguments));\n };\n}\n\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass a single function as the first argument,\n * and get a function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\nfunction bindActionCreators(actionCreators, dispatch) {\n if (typeof actionCreators === 'function') {\n return bindActionCreator(actionCreators, dispatch);\n }\n\n if (typeof actionCreators !== 'object' || actionCreators === null) {\n throw new Error('bindActionCreators expected an object or a function, instead received ' + (actionCreators === null ? 'null' : typeof actionCreators) + '. ' + 'Did you write \"import ActionCreators from\" instead of \"import * as ActionCreators from\"?');\n }\n\n var keys = Object.keys(actionCreators);\n var boundActionCreators = {};\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var actionCreator = actionCreators[key];\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n }\n }\n return boundActionCreators;\n}", "'use strict';\n\nexports.__esModule = true;\nexports['default'] = combineReducers;\n\nvar _createStore = require('./createStore');\n\nvar _isPlainObject = require('lodash/isPlainObject');\n\nvar _isPlainObject2 = _interopRequireDefault(_isPlainObject);\n\nvar _warning = require('./utils/warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction getUndefinedStateErrorMessage(key, action) {\n var actionType = action && action.type;\n var actionName = actionType && '\"' + actionType.toString() + '\"' || 'an action';\n\n return 'Given action ' + actionName + ', reducer \"' + key + '\" returned undefined. ' + 'To ignore an action, you must explicitly return the previous state.';\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n var reducerKeys = Object.keys(reducers);\n var argumentName = action && action.type === _createStore.ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n if (reducerKeys.length === 0) {\n return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n }\n\n if (!(0, _isPlainObject2['default'])(inputState)) {\n return 'The ' + argumentName + ' has unexpected type of \"' + {}.toString.call(inputState).match(/\\s([a-z|A-Z]+)/)[1] + '\". Expected argument to be an object with the following ' + ('keys: \"' + reducerKeys.join('\", \"') + '\"');\n }\n\n var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n });\n\n unexpectedKeys.forEach(function (key) {\n unexpectedKeyCache[key] = true;\n });\n\n if (unexpectedKeys.length > 0) {\n return 'Unexpected ' + (unexpectedKeys.length > 1 ? 'keys' : 'key') + ' ' + ('\"' + unexpectedKeys.join('\", \"') + '\" found in ' + argumentName + '. ') + 'Expected to find one of the known reducer keys instead: ' + ('\"' + reducerKeys.join('\", \"') + '\". Unexpected keys will be ignored.');\n }\n}\n\nfunction assertReducerSanity(reducers) {\n Object.keys(reducers).forEach(function (key) {\n var reducer = reducers[key];\n var initialState = reducer(undefined, { type: _createStore.ActionTypes.INIT });\n\n if (typeof initialState === 'undefined') {\n throw new Error('Reducer \"' + key + '\" returned undefined during initialization. ' + 'If the state passed to the reducer is undefined, you must ' + 'explicitly return the initial state. The initial state may ' + 'not be undefined.');\n }\n\n var type = '@@redux/PROBE_UNKNOWN_ACTION_' + Math.random().toString(36).substring(7).split('').join('.');\n if (typeof reducer(undefined, { type: type }) === 'undefined') {\n throw new Error('Reducer \"' + key + '\" returned undefined when probed with a random type. ' + ('Don\\'t try to handle ' + _createStore.ActionTypes.INIT + ' or other actions in \"redux/*\" ') + 'namespace. They are considered private. Instead, you must return the ' + 'current state for any unknown actions, unless it is undefined, ' + 'in which case you must return the initial state, regardless of the ' + 'action type. The initial state may not be undefined.');\n }\n });\n}\n\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\nfunction combineReducers(reducers) {\n var reducerKeys = Object.keys(reducers);\n var finalReducers = {};\n for (var i = 0; i < reducerKeys.length; i++) {\n var key = reducerKeys[i];\n\n if (\"development\" !== 'production') {\n if (typeof reducers[key] === 'undefined') {\n (0, _warning2['default'])('No reducer provided for key \"' + key + '\"');\n }\n }\n\n if (typeof reducers[key] === 'function') {\n finalReducers[key] = reducers[key];\n }\n }\n var finalReducerKeys = Object.keys(finalReducers);\n\n if (\"development\" !== 'production') {\n var unexpectedKeyCache = {};\n }\n\n var sanityError;\n try {\n assertReducerSanity(finalReducers);\n } catch (e) {\n sanityError = e;\n }\n\n return function combination() {\n var state = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n var action = arguments[1];\n\n if (sanityError) {\n throw sanityError;\n }\n\n if (\"development\" !== 'production') {\n var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);\n if (warningMessage) {\n (0, _warning2['default'])(warningMessage);\n }\n }\n\n var hasChanged = false;\n var nextState = {};\n for (var i = 0; i < finalReducerKeys.length; i++) {\n var key = finalReducerKeys[i];\n var reducer = finalReducers[key];\n var previousStateForKey = state[key];\n var nextStateForKey = reducer(previousStateForKey, action);\n if (typeof nextStateForKey === 'undefined') {\n var errorMessage = getUndefinedStateErrorMessage(key, action);\n throw new Error(errorMessage);\n }\n nextState[key] = nextStateForKey;\n hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n }\n return hasChanged ? nextState : state;\n };\n}", "\"use strict\";\n\nexports.__esModule = true;\nexports[\"default\"] = compose;\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\n\nfunction compose() {\n for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n if (funcs.length === 0) {\n return function (arg) {\n return arg;\n };\n }\n\n if (funcs.length === 1) {\n return funcs[0];\n }\n\n var last = funcs[funcs.length - 1];\n var rest = funcs.slice(0, -1);\n return function () {\n return rest.reduceRight(function (composed, f) {\n return f(composed);\n }, last.apply(undefined, arguments));\n };\n}", "'use strict';\n\nexports.__esModule = true;\nexports.ActionTypes = undefined;\nexports['default'] = createStore;\n\nvar _isPlainObject = require('lodash/isPlainObject');\n\nvar _isPlainObject2 = _interopRequireDefault(_isPlainObject);\n\nvar _symbolObservable = require('symbol-observable');\n\nvar _symbolObservable2 = _interopRequireDefault(_symbolObservable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\nvar ActionTypes = exports.ActionTypes = {\n INIT: '@@redux/INIT'\n};\n\n/**\n * Creates a Redux store that holds the state tree.\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} enhancer The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\nfunction createStore(reducer, preloadedState, enhancer) {\n var _ref2;\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n enhancer = preloadedState;\n preloadedState = undefined;\n }\n\n if (typeof enhancer !== 'undefined') {\n if (typeof enhancer !== 'function') {\n throw new Error('Expected the enhancer to be a function.');\n }\n\n return enhancer(createStore)(reducer, preloadedState);\n }\n\n if (typeof reducer !== 'function') {\n throw new Error('Expected the reducer to be a function.');\n }\n\n var currentReducer = reducer;\n var currentState = preloadedState;\n var currentListeners = [];\n var nextListeners = currentListeners;\n var isDispatching = false;\n\n function ensureCanMutateNextListeners() {\n if (nextListeners === currentListeners) {\n nextListeners = currentListeners.slice();\n }\n }\n\n /**\n * Reads the state tree managed by the store.\n *\n * @returns {any} The current state tree of your application.\n */\n function getState() {\n return currentState;\n }\n\n /**\n * Adds a change listener. It will be called any time an action is dispatched,\n * and some part of the state tree may potentially have changed. You may then\n * call `getState()` to read the current state tree inside the callback.\n *\n * You may call `dispatch()` from a change listener, with the following\n * caveats:\n *\n * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n * If you subscribe or unsubscribe while the listeners are being invoked, this\n * will not have any effect on the `dispatch()` that is currently in progress.\n * However, the next `dispatch()` call, whether nested or not, will use a more\n * recent snapshot of the subscription list.\n *\n * 2. The listener should not expect to see all state changes, as the state\n * might have been updated multiple times during a nested `dispatch()` before\n * the listener is called. It is, however, guaranteed that all subscribers\n * registered before the `dispatch()` started will be called with the latest\n * state by the time it exits.\n *\n * @param {Function} listener A callback to be invoked on every dispatch.\n * @returns {Function} A function to remove this change listener.\n */\n function subscribe(listener) {\n if (typeof listener !== 'function') {\n throw new Error('Expected listener to be a function.');\n }\n\n var isSubscribed = true;\n\n ensureCanMutateNextListeners();\n nextListeners.push(listener);\n\n return function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n isSubscribed = false;\n\n ensureCanMutateNextListeners();\n var index = nextListeners.indexOf(listener);\n nextListeners.splice(index, 1);\n };\n }\n\n /**\n * Dispatches an action. It is the only way to trigger a state change.\n *\n * The `reducer` function, used to create the store, will be called with the\n * current state tree and the given `action`. Its return value will\n * be considered the **next** state of the tree, and the change listeners\n * will be notified.\n *\n * The base implementation only supports plain object actions. If you want to\n * dispatch a Promise, an Observable, a thunk, or something else, you need to\n * wrap your store creating function into the corresponding middleware. For\n * example, see the documentation for the `redux-thunk` package. Even the\n * middleware will eventually dispatch plain object actions using this method.\n *\n * @param {Object} action A plain object representing “what changed”. It is\n * a good idea to keep actions serializable so you can record and replay user\n * sessions, or use the time travelling `redux-devtools`. An action must have\n * a `type` property which may not be `undefined`. It is a good idea to use\n * string constants for action types.\n *\n * @returns {Object} For convenience, the same action object you dispatched.\n *\n * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n * return something else (for example, a Promise you can await).\n */\n function dispatch(action) {\n if (!(0, _isPlainObject2['default'])(action)) {\n throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.');\n }\n\n if (typeof action.type === 'undefined') {\n throw new Error('Actions may not have an undefined \"type\" property. ' + 'Have you misspelled a constant?');\n }\n\n if (isDispatching) {\n throw new Error('Reducers may not dispatch actions.');\n }\n\n try {\n isDispatching = true;\n currentState = currentReducer(currentState, action);\n } finally {\n isDispatching = false;\n }\n\n var listeners = currentListeners = nextListeners;\n for (var i = 0; i < listeners.length; i++) {\n listeners[i]();\n }\n\n return action;\n }\n\n /**\n * Replaces the reducer currently used by the store to calculate the state.\n *\n * You might need this if your app implements code splitting and you want to\n * load some of the reducers dynamically. You might also need this if you\n * implement a hot reloading mechanism for Redux.\n *\n * @param {Function} nextReducer The reducer for the store to use instead.\n * @returns {void}\n */\n function replaceReducer(nextReducer) {\n if (typeof nextReducer !== 'function') {\n throw new Error('Expected the nextReducer to be a function.');\n }\n\n currentReducer = nextReducer;\n dispatch({ type: ActionTypes.INIT });\n }\n\n /**\n * Interoperability point for observable/reactive libraries.\n * @returns {observable} A minimal observable of state changes.\n * For more information, see the observable proposal:\n * https://github.com/zenparsing/es-observable\n */\n function observable() {\n var _ref;\n\n var outerSubscribe = subscribe;\n return _ref = {\n /**\n * The minimal observable subscription method.\n * @param {Object} observer Any object that can be used as an observer.\n * The observer object should have a `next` method.\n * @returns {subscription} An object with an `unsubscribe` method that can\n * be used to unsubscribe the observable from the store, and prevent further\n * emission of values from the observable.\n */\n subscribe: function subscribe(observer) {\n if (typeof observer !== 'object') {\n throw new TypeError('Expected the observer to be an object.');\n }\n\n function observeState() {\n if (observer.next) {\n observer.next(getState());\n }\n }\n\n observeState();\n var unsubscribe = outerSubscribe(observeState);\n return { unsubscribe: unsubscribe };\n }\n }, _ref[_symbolObservable2['default']] = function () {\n return this;\n }, _ref;\n }\n\n // When a store is created, an \"INIT\" action is dispatched so that every\n // reducer returns their initial state. This effectively populates\n // the initial state tree.\n dispatch({ type: ActionTypes.INIT });\n\n return _ref2 = {\n dispatch: dispatch,\n subscribe: subscribe,\n getState: getState,\n replaceReducer: replaceReducer\n }, _ref2[_symbolObservable2['default']] = observable, _ref2;\n}", "'use strict';\n\nexports.__esModule = true;\nexports.compose = exports.applyMiddleware = exports.bindActionCreators = exports.combineReducers = exports.createStore = undefined;\n\nvar _createStore = require('./createStore');\n\nvar _createStore2 = _interopRequireDefault(_createStore);\n\nvar _combineReducers = require('./combineReducers');\n\nvar _combineReducers2 = _interopRequireDefault(_combineReducers);\n\nvar _bindActionCreators = require('./bindActionCreators');\n\nvar _bindActionCreators2 = _interopRequireDefault(_bindActionCreators);\n\nvar _applyMiddleware = require('./applyMiddleware');\n\nvar _applyMiddleware2 = _interopRequireDefault(_applyMiddleware);\n\nvar _compose = require('./compose');\n\nvar _compose2 = _interopRequireDefault(_compose);\n\nvar _warning = require('./utils/warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n/*\n* This is a dummy function to check if the function name has been altered by minification.\n* If the function has been minified and NODE_ENV !== 'production', warn the user.\n*/\nfunction isCrushed() {}\n\nif (\"development\" !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {\n (0, _warning2['default'])('You are currently using minified code outside of NODE_ENV === \\'production\\'. ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or DefinePlugin for webpack (http://stackoverflow.com/questions/30030031) ' + 'to ensure you have the correct code for your production build.');\n}\n\nexports.createStore = _createStore2['default'];\nexports.combineReducers = _combineReducers2['default'];\nexports.bindActionCreators = _bindActionCreators2['default'];\nexports.applyMiddleware = _applyMiddleware2['default'];\nexports.compose = _compose2['default'];", "'use strict';\n\nexports.__esModule = true;\nexports['default'] = warning;\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n /* eslint-disable no-empty */\n } catch (e) {}\n /* eslint-enable no-empty */\n}", "module.exports = require('./lib/index');\n", "'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _ponyfill = require('./ponyfill');\n\nvar _ponyfill2 = _interopRequireDefault(_ponyfill);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar root; /* global window */\n\n\nif (typeof self !== 'undefined') {\n root = self;\n} else if (typeof window !== 'undefined') {\n root = window;\n} else if (typeof global !== 'undefined') {\n root = global;\n} else if (typeof module !== 'undefined') {\n root = module;\n} else {\n root = Function('return this')();\n}\n\nvar result = (0, _ponyfill2['default'])(root);\nexports['default'] = result;", "'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports['default'] = symbolObservablePonyfill;\nfunction symbolObservablePonyfill(root) {\n\tvar result;\n\tvar _Symbol = root.Symbol;\n\n\tif (typeof _Symbol === 'function') {\n\t\tif (_Symbol.observable) {\n\t\t\tresult = _Symbol.observable;\n\t\t} else {\n\t\t\tresult = _Symbol('observable');\n\t\t\t_Symbol.observable = result;\n\t\t}\n\t} else {\n\t\tresult = '@@observable';\n\t}\n\n\treturn result;\n};", "import React from 'react';\nimport { render } from 'react-dom';\n\nimport { HOME, ABOUT, ACCOUNT } from './constants/pages';\n\nimport HomePage from './page-home';\nimport AboutPage from './page-about';\nimport AccountPage from './page-account';\n\nexport default function (data, domElement) {\n\tlet page;\n\n\tif (data.routing.url !== window.location.pathname + window.location.search) {\n\t\twindow.history.pushState(null, null, data.routing.url);\n\t}\n\tdocument.title = data.routing.title;\n\n\tswitch(data.selectedPage) {\n\tcase ABOUT:\n\t\tpage = ;\n\t\tbreak;\n\n\tcase ACCOUNT:\n\t\tpage = ;\n\t\tbreak;\n\n\tdefault:\n\t\tpage = ;\n\t\tbreak;\n\t}\n\n\trender(page, domElement);\n}\n\n", "export const HOME = 'HOME';\nexport const ABOUT = 'ABOUT';\nexport const ACCOUNT = 'ACCOUNT';", "import React from 'react';\nimport classnames from 'classnames';\n\nimport Link from 'link-react';\n\nconst Items = (p) => (\n\t
    \n\t\t{ !!p.items && p.items.map(item => (\n\t\t\t
  • \n\t\t\t\t\n\t\t\t\t\t\t{ item.label }\n\t\t\t\t\n\t\t\t
  • \n\t\t))}\n\t
\n);\n\nItems.propTypes = {\n\tclassName: React.PropTypes.string,\n\titems: React.PropTypes.arrayOf(React.PropTypes.shape({\n\t\tid: React.PropTypes.string,\n\t\tlabel: React.PropTypes.string,\n\t\thref: React.PropTypes.string,\n\t\tisSelected: React.PropTypes.bool,\n\t\tonClick: React.PropTypes.func\n\t}))\n};\n\nexport default Items;\n", "import React from 'react';\nimport classnames from 'classnames';\n\nimport SiteHeader from './site-header';\n\nconst AboutPage = (p) => (\n\t
\n\t\t\n\n\t\t
\n\t\t\t

\n\t\t\t\tAbout\n\t\t\t

\n\t\t
\n\t
\n);\n\nAboutPage.propTypes = {\n\tclassName: React.PropTypes.string,\n\tsiteHeader: React.PropTypes.object\n};\n\nexport default AboutPage;\n", "import React from 'react';\nimport classnames from 'classnames';\n\nimport SiteHeader from './site-header';\n\nconst AccountPage = (p) => (\n\t
\n\t\t\n\n\t\t
\n\t\t\t

\n\t\t\t\tAccount\n\t\t\t

\n\t\t
\n\t
\n);\n\nAccountPage.propTypes = {\n\tclassName: React.PropTypes.string,\n\tsiteHeader: React.PropTypes.object\n};\n\nexport default AccountPage;\n", "import React from 'react';\nimport classnames from 'classnames';\n\nimport SiteHeader from './site-header';\nimport Items from './items';\n\nconst HomePage = (p) => (\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t
\n\n\t\t
\n\t\t\topen the console while clicking\n\t\t
\n\t
\n);\n\nHomePage.propTypes = {\n\tclassName: React.PropTypes.string,\n\tsiteHeader: React.PropTypes.object,\n\titems: React.PropTypes.array,\n};\n\nexport default HomePage;\n", "import React from 'react';\nimport classnames from 'classnames';\n\nimport Link from 'link-react';\n\nconst SiteHeader = (p) => (\n\t
\n\t\t\n\t
\n);\n\nSiteHeader.propTypes = {\n\tclassName: React.PropTypes.string,\n\tlinks: React.PropTypes.arrayOf(React.PropTypes.shape({\n\t\tlabel: React.PropTypes.string,\n\t\thref: React.PropTypes.string,\n\t\tisSelected: React.PropTypes.bool,\n\t\tonClick: React.PropTypes.func\n\t}))\n};\n\nexport default SiteHeader;\n", "import store from './state/store';\nimport app from './components/app';\nimport selectors from './selectors/selectors';\n\nimport updateURL from './state/site/actions/update-url';\n\n// import selectors from './selectors';\n\n// debug stuff\nObject.defineProperty(window, \"state\", { get: store.getState });\nwindow.selectors = selectors;\n\nconsole.log('********************************************* \\n DEVELOPMENT MODE \\n window.state available \\n window.selectors available \\n ********************************************* \\n');\n\n// subscribe to state changes and re-render view on every change\nconst domElement = document.getElementById('app');\nstore.subscribe(() => app(selectors, domElement));\n\n// listen for back button, forward button, etc\nwindow.onpopstate = (e) => {\n\tstore.dispatch(updateURL(window.location.pathname + window.location.search));\n};\n\n// read the url and navigate to the right page\nstore.dispatch(updateURL(window.location.pathname + window.location.search));\n", "import memoizerific from 'memoizerific';\nimport store from '../../state/store';\n\nimport { SECTIONS_PATHS } from '../../state/site/constants/paths';\nimport { HOME, ABOUT, ACCOUNT, ITEM } from '../../state/site/constants/sections';\n\nimport updateURL from '../../state/site/actions/update-url';\n\nexport default function () {\n\tconst { items, selectedItemID } = store.getState();\n\treturn selectItems(items, selectedItemID);\n}\n\nexport const selectItems = memoizerific(10)((items, selectedItemID) => {\n\treturn Object.keys(items).map(key => selectItem(key, items[key].name, `${SECTIONS_PATHS[ITEM]}/${key}`, selectedItemID === key));\n});\n\nexport const selectItem = memoizerific(20)((id, label, href, isSelected) => {\n\treturn {\n\t\tid,\n\t\tlabel,\n\t\thref,\n\t\tisSelected,\n\t\tonClick: () => store.dispatch(updateURL(href))\n\t};\n});\n", "import combineSelectors from 'combine-selectors';\nimport store from '../state/store';\n\nimport selectedPage from './site/selected-page';\nimport routing from './site/routing';\nimport siteHeader from './site/site-header';\nimport items from './items/items';\n\nconst selectors = {\n\tselectedPage,\n\trouting,\n\tsiteHeader,\n\titems\n};\n\nexport default combineSelectors(selectors, store.getState);\n", "import memoizerific from 'memoizerific';\nimport store from '../../state/store';\n\nexport default function () {\n\tconst { url, selectedSection } = store.getState();\n\treturn selectRouting(url, selectedSection);\n}\n\nexport const selectRouting = memoizerific(1)((url, selectedSection) => {\n\treturn {\n\t\turl,\n\t\ttitle: selectTitle(selectedSection)\n\t};\n});\n\nexport const selectTitle = memoizerific(1)((selectedSection) => {\n\treturn selectedSection + ' - State-Driven Routing';\n});\n", "import memoizerific from 'memoizerific';\nimport store from '../../state/store';\n\nimport * as PAGES from '../../components/constants/pages';\n\nexport default function () {\n\tconst { selectedSection } = store.getState();\n\treturn selectSelectedPage(selectedSection);\n}\n\nexport const selectSelectedPage = memoizerific(1)((selectedSection) => {\n\treturn PAGES[selectedSection];\n});\n", "import memoizerific from 'memoizerific';\nimport store from '../../state/store';\n\nimport { SECTIONS_PATHS } from '../../state/site/constants/paths';\nimport { HOME, ABOUT, ACCOUNT } from '../../state/site/constants/sections';\n\nimport updateURL from '../../state/site/actions/update-url';\n\nexport default function () {\n\tconst { selectedSection } = store.getState();\n\treturn selectSiteHeader(selectedSection);\n}\n\nexport const selectSiteHeader = memoizerific(10)((selectedSection) => {\n\treturn {\n\t\tlinks: [\n\t\t\tselectSiteHeaderLink('Home', SECTIONS_PATHS[HOME], selectedSection === HOME),\n\t\t\tselectSiteHeaderLink('About', SECTIONS_PATHS[ABOUT], selectedSection === ABOUT),\n\t\t\tselectSiteHeaderLink('Account', SECTIONS_PATHS[ACCOUNT], selectedSection === ACCOUNT)\n\t\t]\n\t};\n});\n\nexport const selectSiteHeaderLink = memoizerific(20)((label, href, isSelected) => {\n\treturn {\n\t\tlabel,\n\t\thref,\n\t\tisSelected,\n\t\tonClick: () => store.dispatch(updateURL(href))\n\t};\n});\n", "import { UPDATE_URL } from '../../site/actions/update-url';\n\nimport { HOME } from '../../site/constants/sections';\nimport { PATHS_SECTIONS } from '../../site/constants/paths';\n\nconst defaultItems = {\n\t'id1': {\n\t\tname: 'Item #1'\n\t},\n\t'id2': {\n\t\tname: 'Item #2'\n\t},\n\t'id3': {\n\t\tname: 'Item #3'\n\t}\n};\n\nexport default function (items = defaultItems, action) {\n\tswitch (action.type) {\n\n\tdefault:\n\t\treturn items;\n\t}\n}\n", "import { UPDATE_URL } from '../../site/actions/update-url';\n\nimport { SECTIONS_PATHS } from '../../site/constants/paths';\n\nexport default function (selectedItem = null, action) {\n\tswitch (action.type) {\n\n\tcase UPDATE_URL:\n\t\tlet parsedItemID = action.parsedURL.path.replace(SECTIONS_PATHS.ITEM + '/', '');\n\t\treturn parsedItemID !== action.parsedURL.path ? parsedItemID || null : null;\n\n\tdefault:\n\t\treturn selectedItem;\n\t}\n}\n", "export const UPDATE_URL = 'UPDATE_URL';\n\nexport default function (newURL) {\n\treturn (dispatch, getState) => {\n\t\tconst { url } = getState();\n\t\tif (newURL === url) {\n\t\t\treturn;\n\t\t}\n\n\t\tdispatch({\n\t\t\ttype: UPDATE_URL,\n\t\t\tparsedURL: parseURL(newURL)\n\t\t});\n\t};\n}\n\nfunction parseURL(url) {\n\tconst splitURL = url.split('?');\n\tlet path = splitURL[0].replace(/[/]+/g, '/');\n\tlet searchParams = {};\n\n\t// make sure there isn't a trailing slash, except for home being a single slash: '/'\n\tif (path.length >= 2) {\n\t\tpath = path.replace(/\\/$/, '');\n\t}\n\telse {\n\t\tpath = '/';\n\t}\n\n\tif (splitURL.length >= 2) {\n\t\tsearchParams = parseSearchParams(splitURL[1]);\n\t}\n\n\tconst finalURL = path + joinSearchParams(searchParams);\n\n\treturn {\n\t\tpath,\n\t\tsearchParams,\n\t\turl: finalURL\n\t};\n}\n\nfunction parseSearchParams(searchString) {\n\tlet pairSplit;\n\treturn (searchString || '').replace(/^\\?/, '').split('&').reduce((p, pair) => {\n\t\tpairSplit = pair.split('=');\n\t\tif (pairSplit.length >= 1 && pairSplit[0].length >= 1) {\n\t\t\tp[decodeURIComponent(pairSplit[0])] = decodeURIComponent(pairSplit[1]) || '';\n\t\t}\n\t\treturn p;\n\t}, {});\n}\n\nfunction joinSearchParams(searchParams) {\n\tlet searchString = Object.keys(searchParams).reduce((p, paramKey) => p += `&${paramKey}=${searchParams[paramKey]}`, '?');\n\n\tif (searchString.length <= 1) {\n\t\treturn '';\n\t}\n\n\treturn searchString.replace('?&', '?');\n}\n", "import { HOME, ABOUT, ACCOUNT, ITEM } from '../../site/constants/sections';\n\nexport const PATHS_SECTIONS = {\n\t'/': HOME,\n\t'/about': ABOUT,\n\t'/account': ACCOUNT,\n\t'/item': ITEM\n};\nexport const SECTIONS_PATHS = Object.keys(PATHS_SECTIONS).reduce((p, key) => { p[PATHS_SECTIONS[key]] = key; return p; }, {});\n\nexport const DEFAULT_PATH = '/';", "export const HOME = 'HOME';\nexport const ABOUT = 'ABOUT';\nexport const ACCOUNT = 'ACCOUNT';\nexport const ITEM = 'ITEM';\n", "import { UPDATE_URL } from '../../site/actions/update-url';\n\nimport { HOME } from '../../site/constants/sections';\nimport { PATHS_SECTIONS } from '../../site/constants/paths';\n\nexport default function (selectedSection = HOME, action) {\n\tswitch (action.type) {\n\n\tcase UPDATE_URL:\n\t\treturn PATHS_SECTIONS[action.parsedURL.path] || HOME;\n\n\tdefault:\n\t\treturn selectedSection;\n\t}\n}\n", "import { UPDATE_URL } from '../../site/actions/update-url';\nimport { DEFAULT_PATH } from '../../site/constants/paths';\n\nexport default function (url = null, action) {\n\tswitch (action.type) {\n\n\tcase UPDATE_URL:\n\t\treturn action.parsedURL.url;\n\n\tdefault:\n\t\treturn url;\n\t}\n}\n", "import { createStore, combineReducers, applyMiddleware } from 'redux';\nimport thunk from 'redux-thunk';\n\n// reducers\nimport url from './site/reducers/url';\nimport selectedSection from './site/reducers/selected-section';\nimport items from './items/reducers/items';\nimport selectedItemID from './items/reducers/selected-item-id';\n\nconst reducers = {\n\turl,\n\tselectedSection,\n\titems,\n\tselectedItemID\n};\n\n// console log middleware that logs all actions to console\nconst consoleLog = store => next => action => {\n\tif (typeof action !== 'function') {\n\t\tconsole.log(action);\n\t}\n\treturn next(action);\n};\n\n// conditionally set middleware based on dev or prod env\nlet middleWare;\nif (process.env.NODE_ENV !== 'production') {\n\tmiddleWare = applyMiddleware(consoleLog, thunk);\n} else {\n\tmiddleWare = applyMiddleware(thunk);\n}\n\n// create store\nexport default createStore(combineReducers(reducers), middleWare);\n" ] }