summaryrefslogtreecommitdiff
path: root/public/bundle.js
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2017-07-07 21:18:33 +0200
committerJules Laplace <julescarbon@gmail.com>2017-07-07 21:18:33 +0200
commitf8b61281be84a6e4e7a44be5109e688a7c56c671 (patch)
tree43797c6b6cfa5c0f89c020f8c89e0da10f791a55 /public/bundle.js
parent3d3a7b80d34c100846c8ae130b424b63ba3c0784 (diff)
refactor files so list updates while processing
Diffstat (limited to 'public/bundle.js')
-rw-r--r--public/bundle.js9024
1 files changed, 4647 insertions, 4377 deletions
diff --git a/public/bundle.js b/public/bundle.js
index 62ee11b..eab42b5 100644
--- a/public/bundle.js
+++ b/public/bundle.js
@@ -60,48 +60,606 @@
/******/ __webpack_require__.p = "";
/******/
/******/ // Load entry module and return exports
-/******/ return __webpack_require__(__webpack_require__.s = 22);
+/******/ return __webpack_require__(__webpack_require__.s = 39);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports, __webpack_require__) {
-/* WEBPACK VAR INJECTION */(function(process) {/**
- * Copyright 2013-present, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- */
+!function() {
+ 'use strict';
+ function VNode() {}
+ function h(nodeName, attributes) {
+ var lastSimple, child, simple, i, children = EMPTY_CHILDREN;
+ for (i = arguments.length; i-- > 2; ) stack.push(arguments[i]);
+ if (attributes && null != attributes.children) {
+ if (!stack.length) stack.push(attributes.children);
+ delete attributes.children;
+ }
+ while (stack.length) if ((child = stack.pop()) && void 0 !== child.pop) for (i = child.length; i--; ) stack.push(child[i]); else {
+ if (child === !0 || child === !1) child = null;
+ if (simple = 'function' != typeof nodeName) if (null == child) child = ''; else if ('number' == typeof child) child = String(child); else if ('string' != typeof child) simple = !1;
+ if (simple && lastSimple) children[children.length - 1] += child; else if (children === EMPTY_CHILDREN) children = [ child ]; else children.push(child);
+ lastSimple = simple;
+ }
+ var p = new VNode();
+ p.nodeName = nodeName;
+ p.children = children;
+ p.attributes = null == attributes ? void 0 : attributes;
+ p.key = null == attributes ? void 0 : attributes.key;
+ if (void 0 !== options.vnode) options.vnode(p);
+ return p;
+ }
+ function extend(obj, props) {
+ for (var i in props) obj[i] = props[i];
+ return obj;
+ }
+ function cloneElement(vnode, props) {
+ return h(vnode.nodeName, extend(extend({}, vnode.attributes), props), arguments.length > 2 ? [].slice.call(arguments, 2) : vnode.children);
+ }
+ function enqueueRender(component) {
+ if (!component.__d && (component.__d = !0) && 1 == items.push(component)) (options.debounceRendering || setTimeout)(rerender);
+ }
+ function rerender() {
+ var p, list = items;
+ items = [];
+ while (p = list.pop()) if (p.__d) renderComponent(p);
+ }
+ function isSameNodeType(node, vnode, hydrating) {
+ if ('string' == typeof vnode || 'number' == typeof vnode) return void 0 !== node.splitText;
+ if ('string' == typeof vnode.nodeName) return !node._componentConstructor && isNamedNode(node, vnode.nodeName); else return hydrating || node._componentConstructor === vnode.nodeName;
+ }
+ function isNamedNode(node, nodeName) {
+ return node.__n === nodeName || node.nodeName.toLowerCase() === nodeName.toLowerCase();
+ }
+ function getNodeProps(vnode) {
+ var props = extend({}, vnode.attributes);
+ props.children = vnode.children;
+ var defaultProps = vnode.nodeName.defaultProps;
+ if (void 0 !== defaultProps) for (var i in defaultProps) if (void 0 === props[i]) props[i] = defaultProps[i];
+ return props;
+ }
+ function createNode(nodeName, isSvg) {
+ var node = isSvg ? document.createElementNS('http://www.w3.org/2000/svg', nodeName) : document.createElement(nodeName);
+ node.__n = nodeName;
+ return node;
+ }
+ function removeNode(node) {
+ if (node.parentNode) node.parentNode.removeChild(node);
+ }
+ function setAccessor(node, name, old, value, isSvg) {
+ if ('className' === name) name = 'class';
+ if ('key' === name) ; else if ('ref' === name) {
+ if (old) old(null);
+ if (value) value(node);
+ } else if ('class' === name && !isSvg) node.className = value || ''; else if ('style' === name) {
+ if (!value || 'string' == typeof value || 'string' == typeof old) node.style.cssText = value || '';
+ if (value && 'object' == typeof value) {
+ if ('string' != typeof old) for (var i in old) if (!(i in value)) node.style[i] = '';
+ for (var i in value) node.style[i] = 'number' == typeof value[i] && IS_NON_DIMENSIONAL.test(i) === !1 ? value[i] + 'px' : value[i];
+ }
+ } else if ('dangerouslySetInnerHTML' === name) {
+ if (value) node.innerHTML = value.__html || '';
+ } else if ('o' == name[0] && 'n' == name[1]) {
+ var useCapture = name !== (name = name.replace(/Capture$/, ''));
+ name = name.toLowerCase().substring(2);
+ if (value) {
+ if (!old) node.addEventListener(name, eventProxy, useCapture);
+ } else node.removeEventListener(name, eventProxy, useCapture);
+ (node.__l || (node.__l = {}))[name] = value;
+ } else if ('list' !== name && 'type' !== name && !isSvg && name in node) {
+ setProperty(node, name, null == value ? '' : value);
+ if (null == value || value === !1) node.removeAttribute(name);
+ } else {
+ var ns = isSvg && name !== (name = name.replace(/^xlink\:?/, ''));
+ if (null == value || value === !1) if (ns) node.removeAttributeNS('http://www.w3.org/1999/xlink', name.toLowerCase()); else node.removeAttribute(name); else if ('function' != typeof value) if (ns) node.setAttributeNS('http://www.w3.org/1999/xlink', name.toLowerCase(), value); else node.setAttribute(name, value);
+ }
+ }
+ function setProperty(node, name, value) {
+ try {
+ node[name] = value;
+ } catch (e) {}
+ }
+ function eventProxy(e) {
+ return this.__l[e.type](options.event && options.event(e) || e);
+ }
+ function flushMounts() {
+ var c;
+ while (c = mounts.pop()) {
+ if (options.afterMount) options.afterMount(c);
+ if (c.componentDidMount) c.componentDidMount();
+ }
+ }
+ function diff(dom, vnode, context, mountAll, parent, componentRoot) {
+ if (!diffLevel++) {
+ isSvgMode = null != parent && void 0 !== parent.ownerSVGElement;
+ hydrating = null != dom && !('__preactattr_' in dom);
+ }
+ var ret = idiff(dom, vnode, context, mountAll, componentRoot);
+ if (parent && ret.parentNode !== parent) parent.appendChild(ret);
+ if (!--diffLevel) {
+ hydrating = !1;
+ if (!componentRoot) flushMounts();
+ }
+ return ret;
+ }
+ function idiff(dom, vnode, context, mountAll, componentRoot) {
+ var out = dom, prevSvgMode = isSvgMode;
+ if (null == vnode) vnode = '';
+ if ('string' == typeof vnode) {
+ if (dom && void 0 !== dom.splitText && dom.parentNode && (!dom._component || componentRoot)) {
+ if (dom.nodeValue != vnode) dom.nodeValue = vnode;
+ } else {
+ out = document.createTextNode(vnode);
+ if (dom) {
+ if (dom.parentNode) dom.parentNode.replaceChild(out, dom);
+ recollectNodeTree(dom, !0);
+ }
+ }
+ out.__preactattr_ = !0;
+ return out;
+ }
+ if ('function' == typeof vnode.nodeName) return buildComponentFromVNode(dom, vnode, context, mountAll);
+ isSvgMode = 'svg' === vnode.nodeName ? !0 : 'foreignObject' === vnode.nodeName ? !1 : isSvgMode;
+ if (!dom || !isNamedNode(dom, String(vnode.nodeName))) {
+ out = createNode(String(vnode.nodeName), isSvgMode);
+ if (dom) {
+ while (dom.firstChild) out.appendChild(dom.firstChild);
+ if (dom.parentNode) dom.parentNode.replaceChild(out, dom);
+ recollectNodeTree(dom, !0);
+ }
+ }
+ var fc = out.firstChild, props = out.__preactattr_ || (out.__preactattr_ = {}), vchildren = vnode.children;
+ if (!hydrating && vchildren && 1 === vchildren.length && 'string' == typeof vchildren[0] && null != fc && void 0 !== fc.splitText && null == fc.nextSibling) {
+ if (fc.nodeValue != vchildren[0]) fc.nodeValue = vchildren[0];
+ } else if (vchildren && vchildren.length || null != fc) innerDiffNode(out, vchildren, context, mountAll, hydrating || null != props.dangerouslySetInnerHTML);
+ diffAttributes(out, vnode.attributes, props);
+ isSvgMode = prevSvgMode;
+ return out;
+ }
+ function innerDiffNode(dom, vchildren, context, mountAll, isHydrating) {
+ var j, c, vchild, child, originalChildren = dom.childNodes, children = [], keyed = {}, keyedLen = 0, min = 0, len = originalChildren.length, childrenLen = 0, vlen = vchildren ? vchildren.length : 0;
+ if (0 !== len) for (var i = 0; i < len; i++) {
+ var _child = originalChildren[i], props = _child.__preactattr_, key = vlen && props ? _child._component ? _child._component.__k : props.key : null;
+ if (null != key) {
+ keyedLen++;
+ keyed[key] = _child;
+ } else if (props || (void 0 !== _child.splitText ? isHydrating ? _child.nodeValue.trim() : !0 : isHydrating)) children[childrenLen++] = _child;
+ }
+ if (0 !== vlen) for (var i = 0; i < vlen; i++) {
+ vchild = vchildren[i];
+ child = null;
+ var key = vchild.key;
+ if (null != key) {
+ if (keyedLen && void 0 !== keyed[key]) {
+ child = keyed[key];
+ keyed[key] = void 0;
+ keyedLen--;
+ }
+ } else if (!child && min < childrenLen) for (j = min; j < childrenLen; j++) if (void 0 !== children[j] && isSameNodeType(c = children[j], vchild, isHydrating)) {
+ child = c;
+ children[j] = void 0;
+ if (j === childrenLen - 1) childrenLen--;
+ if (j === min) min++;
+ break;
+ }
+ child = idiff(child, vchild, context, mountAll);
+ if (child && child !== dom) if (i >= len) dom.appendChild(child); else if (child !== originalChildren[i]) if (child === originalChildren[i + 1]) removeNode(originalChildren[i]); else dom.insertBefore(child, originalChildren[i] || null);
+ }
+ if (keyedLen) for (var i in keyed) if (void 0 !== keyed[i]) recollectNodeTree(keyed[i], !1);
+ while (min <= childrenLen) if (void 0 !== (child = children[childrenLen--])) recollectNodeTree(child, !1);
+ }
+ function recollectNodeTree(node, unmountOnly) {
+ var component = node._component;
+ if (component) unmountComponent(component); else {
+ if (null != node.__preactattr_ && node.__preactattr_.ref) node.__preactattr_.ref(null);
+ if (unmountOnly === !1 || null == node.__preactattr_) removeNode(node);
+ removeChildren(node);
+ }
+ }
+ function removeChildren(node) {
+ node = node.lastChild;
+ while (node) {
+ var next = node.previousSibling;
+ recollectNodeTree(node, !0);
+ node = next;
+ }
+ }
+ function diffAttributes(dom, attrs, old) {
+ var name;
+ for (name in old) if ((!attrs || null == attrs[name]) && null != old[name]) setAccessor(dom, name, old[name], old[name] = void 0, isSvgMode);
+ for (name in attrs) if (!('children' === name || 'innerHTML' === name || name in old && attrs[name] === ('value' === name || 'checked' === name ? dom[name] : old[name]))) setAccessor(dom, name, old[name], old[name] = attrs[name], isSvgMode);
+ }
+ function collectComponent(component) {
+ var name = component.constructor.name;
+ (components[name] || (components[name] = [])).push(component);
+ }
+ function createComponent(Ctor, props, context) {
+ var inst, list = components[Ctor.name];
+ if (Ctor.prototype && Ctor.prototype.render) {
+ inst = new Ctor(props, context);
+ Component.call(inst, props, context);
+ } else {
+ inst = new Component(props, context);
+ inst.constructor = Ctor;
+ inst.render = doRender;
+ }
+ if (list) for (var i = list.length; i--; ) if (list[i].constructor === Ctor) {
+ inst.__b = list[i].__b;
+ list.splice(i, 1);
+ break;
+ }
+ return inst;
+ }
+ function doRender(props, state, context) {
+ return this.constructor(props, context);
+ }
+ function setComponentProps(component, props, opts, context, mountAll) {
+ if (!component.__x) {
+ component.__x = !0;
+ if (component.__r = props.ref) delete props.ref;
+ if (component.__k = props.key) delete props.key;
+ if (!component.base || mountAll) {
+ if (component.componentWillMount) component.componentWillMount();
+ } else if (component.componentWillReceiveProps) component.componentWillReceiveProps(props, context);
+ if (context && context !== component.context) {
+ if (!component.__c) component.__c = component.context;
+ component.context = context;
+ }
+ if (!component.__p) component.__p = component.props;
+ component.props = props;
+ component.__x = !1;
+ if (0 !== opts) if (1 === opts || options.syncComponentUpdates !== !1 || !component.base) renderComponent(component, 1, mountAll); else enqueueRender(component);
+ if (component.__r) component.__r(component);
+ }
+ }
+ function renderComponent(component, opts, mountAll, isChild) {
+ if (!component.__x) {
+ var rendered, inst, cbase, props = component.props, state = component.state, context = component.context, previousProps = component.__p || props, previousState = component.__s || state, previousContext = component.__c || context, isUpdate = component.base, nextBase = component.__b, initialBase = isUpdate || nextBase, initialChildComponent = component._component, skip = !1;
+ if (isUpdate) {
+ component.props = previousProps;
+ component.state = previousState;
+ component.context = previousContext;
+ if (2 !== opts && component.shouldComponentUpdate && component.shouldComponentUpdate(props, state, context) === !1) skip = !0; else if (component.componentWillUpdate) component.componentWillUpdate(props, state, context);
+ component.props = props;
+ component.state = state;
+ component.context = context;
+ }
+ component.__p = component.__s = component.__c = component.__b = null;
+ component.__d = !1;
+ if (!skip) {
+ rendered = component.render(props, state, context);
+ if (component.getChildContext) context = extend(extend({}, context), component.getChildContext());
+ var toUnmount, base, childComponent = rendered && rendered.nodeName;
+ if ('function' == typeof childComponent) {
+ var childProps = getNodeProps(rendered);
+ inst = initialChildComponent;
+ if (inst && inst.constructor === childComponent && childProps.key == inst.__k) setComponentProps(inst, childProps, 1, context, !1); else {
+ toUnmount = inst;
+ component._component = inst = createComponent(childComponent, childProps, context);
+ inst.__b = inst.__b || nextBase;
+ inst.__u = component;
+ setComponentProps(inst, childProps, 0, context, !1);
+ renderComponent(inst, 1, mountAll, !0);
+ }
+ base = inst.base;
+ } else {
+ cbase = initialBase;
+ toUnmount = initialChildComponent;
+ if (toUnmount) cbase = component._component = null;
+ if (initialBase || 1 === opts) {
+ if (cbase) cbase._component = null;
+ base = diff(cbase, rendered, context, mountAll || !isUpdate, initialBase && initialBase.parentNode, !0);
+ }
+ }
+ if (initialBase && base !== initialBase && inst !== initialChildComponent) {
+ var baseParent = initialBase.parentNode;
+ if (baseParent && base !== baseParent) {
+ baseParent.replaceChild(base, initialBase);
+ if (!toUnmount) {
+ initialBase._component = null;
+ recollectNodeTree(initialBase, !1);
+ }
+ }
+ }
+ if (toUnmount) unmountComponent(toUnmount);
+ component.base = base;
+ if (base && !isChild) {
+ var componentRef = component, t = component;
+ while (t = t.__u) (componentRef = t).base = base;
+ base._component = componentRef;
+ base._componentConstructor = componentRef.constructor;
+ }
+ }
+ if (!isUpdate || mountAll) mounts.unshift(component); else if (!skip) {
+ flushMounts();
+ if (component.componentDidUpdate) component.componentDidUpdate(previousProps, previousState, previousContext);
+ if (options.afterUpdate) options.afterUpdate(component);
+ }
+ if (null != component.__h) while (component.__h.length) component.__h.pop().call(component);
+ if (!diffLevel && !isChild) flushMounts();
+ }
+ }
+ function buildComponentFromVNode(dom, vnode, context, mountAll) {
+ var c = dom && dom._component, originalComponent = c, oldDom = dom, isDirectOwner = c && dom._componentConstructor === vnode.nodeName, isOwner = isDirectOwner, props = getNodeProps(vnode);
+ while (c && !isOwner && (c = c.__u)) isOwner = c.constructor === vnode.nodeName;
+ if (c && isOwner && (!mountAll || c._component)) {
+ setComponentProps(c, props, 3, context, mountAll);
+ dom = c.base;
+ } else {
+ if (originalComponent && !isDirectOwner) {
+ unmountComponent(originalComponent);
+ dom = oldDom = null;
+ }
+ c = createComponent(vnode.nodeName, props, context);
+ if (dom && !c.__b) {
+ c.__b = dom;
+ oldDom = null;
+ }
+ setComponentProps(c, props, 1, context, mountAll);
+ dom = c.base;
+ if (oldDom && dom !== oldDom) {
+ oldDom._component = null;
+ recollectNodeTree(oldDom, !1);
+ }
+ }
+ return dom;
+ }
+ function unmountComponent(component) {
+ if (options.beforeUnmount) options.beforeUnmount(component);
+ var base = component.base;
+ component.__x = !0;
+ if (component.componentWillUnmount) component.componentWillUnmount();
+ component.base = null;
+ var inner = component._component;
+ if (inner) unmountComponent(inner); else if (base) {
+ if (base.__preactattr_ && base.__preactattr_.ref) base.__preactattr_.ref(null);
+ component.__b = base;
+ removeNode(base);
+ collectComponent(component);
+ removeChildren(base);
+ }
+ if (component.__r) component.__r(null);
+ }
+ function Component(props, context) {
+ this.__d = !0;
+ this.context = context;
+ this.props = props;
+ this.state = this.state || {};
+ }
+ function render(vnode, parent, merge) {
+ return diff(merge, vnode, {}, !1, parent, !1);
+ }
+ var options = {};
+ var stack = [];
+ var EMPTY_CHILDREN = [];
+ var IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i;
+ var items = [];
+ var mounts = [];
+ var diffLevel = 0;
+ var isSvgMode = !1;
+ var hydrating = !1;
+ var components = {};
+ extend(Component.prototype, {
+ setState: function(state, callback) {
+ var s = this.state;
+ if (!this.__s) this.__s = extend({}, s);
+ extend(s, 'function' == typeof state ? state(s, this.props) : state);
+ if (callback) (this.__h = this.__h || []).push(callback);
+ enqueueRender(this);
+ },
+ forceUpdate: function(callback) {
+ if (callback) (this.__h = this.__h || []).push(callback);
+ renderComponent(this, 2);
+ },
+ render: function() {}
+ });
+ var preact = {
+ h: h,
+ createElement: h,
+ cloneElement: cloneElement,
+ Component: Component,
+ render: render,
+ rerender: rerender,
+ options: options
+ };
+ if (true) module.exports = preact; else self.preact = preact;
+}();
+//# sourceMappingURL=preact.js.map
-if (process.env.NODE_ENV !== 'production') {
- var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
- Symbol.for &&
- Symbol.for('react.element')) ||
- 0xeac7;
+/***/ }),
+/* 1 */
+/***/ (function(module, exports) {
- var isValidElement = function(object) {
- return typeof object === 'object' &&
- object !== null &&
- object.$$typeof === REACT_ELEMENT_TYPE;
- };
+// shim for using process in browser
+var process = module.exports = {};
- // By explicitly using `prop-types` you are opting into new development behavior.
- // http://fb.me/prop-types-in-prod
- var throwOnDirectAccess = true;
- module.exports = __webpack_require__(26)(isValidElement, throwOnDirectAccess);
-} else {
- // By explicitly using `prop-types` you are opting into new production behavior.
- // http://fb.me/prop-types-in-prod
- module.exports = __webpack_require__(28)();
+// cached from whatever global is present so that test runners that stub it
+// don't break things. But we need to wrap it in a try catch in case it is
+// wrapped in strict mode code which doesn't define any globals. It's inside a
+// function because try/catches deoptimize in certain engines.
+
+var cachedSetTimeout;
+var cachedClearTimeout;
+
+function defaultSetTimout() {
+ throw new Error('setTimeout has not been defined');
+}
+function defaultClearTimeout () {
+ throw new Error('clearTimeout has not been defined');
}
+(function () {
+ try {
+ if (typeof setTimeout === 'function') {
+ cachedSetTimeout = setTimeout;
+ } else {
+ cachedSetTimeout = defaultSetTimout;
+ }
+ } catch (e) {
+ cachedSetTimeout = defaultSetTimout;
+ }
+ try {
+ if (typeof clearTimeout === 'function') {
+ cachedClearTimeout = clearTimeout;
+ } else {
+ cachedClearTimeout = defaultClearTimeout;
+ }
+ } catch (e) {
+ cachedClearTimeout = defaultClearTimeout;
+ }
+} ())
+function runTimeout(fun) {
+ if (cachedSetTimeout === setTimeout) {
+ //normal enviroments in sane situations
+ return setTimeout(fun, 0);
+ }
+ // if setTimeout wasn't available but was latter defined
+ if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
+ cachedSetTimeout = setTimeout;
+ return setTimeout(fun, 0);
+ }
+ try {
+ // when when somebody has screwed with setTimeout but no I.E. maddness
+ return cachedSetTimeout(fun, 0);
+ } catch(e){
+ try {
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
+ return cachedSetTimeout.call(null, fun, 0);
+ } catch(e){
+ // 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
+ return cachedSetTimeout.call(this, fun, 0);
+ }
+ }
+
+
+}
+function runClearTimeout(marker) {
+ if (cachedClearTimeout === clearTimeout) {
+ //normal enviroments in sane situations
+ return clearTimeout(marker);
+ }
+ // if clearTimeout wasn't available but was latter defined
+ if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
+ cachedClearTimeout = clearTimeout;
+ return clearTimeout(marker);
+ }
+ try {
+ // when when somebody has screwed with setTimeout but no I.E. maddness
+ return cachedClearTimeout(marker);
+ } catch (e){
+ try {
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
+ return cachedClearTimeout.call(null, marker);
+ } catch (e){
+ // 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.
+ // Some versions of I.E. have different rules for clearTimeout vs setTimeout
+ return cachedClearTimeout.call(this, marker);
+ }
+ }
+
+
+
+}
+var queue = [];
+var draining = false;
+var currentQueue;
+var queueIndex = -1;
+
+function cleanUpNextTick() {
+ if (!draining || !currentQueue) {
+ return;
+ }
+ draining = false;
+ if (currentQueue.length) {
+ queue = currentQueue.concat(queue);
+ } else {
+ queueIndex = -1;
+ }
+ if (queue.length) {
+ drainQueue();
+ }
+}
+
+function drainQueue() {
+ if (draining) {
+ return;
+ }
+ var timeout = runTimeout(cleanUpNextTick);
+ draining = true;
+
+ var len = queue.length;
+ while(len) {
+ currentQueue = queue;
+ queue = [];
+ while (++queueIndex < len) {
+ if (currentQueue) {
+ currentQueue[queueIndex].run();
+ }
+ }
+ queueIndex = -1;
+ len = queue.length;
+ }
+ currentQueue = null;
+ draining = false;
+ runClearTimeout(timeout);
+}
+
+process.nextTick = function (fun) {
+ var args = new Array(arguments.length - 1);
+ if (arguments.length > 1) {
+ for (var i = 1; i < arguments.length; i++) {
+ args[i - 1] = arguments[i];
+ }
+ }
+ queue.push(new Item(fun, args));
+ if (queue.length === 1 && !draining) {
+ runTimeout(drainQueue);
+ }
+};
+
+// v8 likes predictible objects
+function Item(fun, array) {
+ this.fun = fun;
+ this.array = array;
+}
+Item.prototype.run = function () {
+ this.fun.apply(null, this.array);
+};
+process.title = 'browser';
+process.browser = true;
+process.env = {};
+process.argv = [];
+process.version = ''; // empty string to avoid regexp issues
+process.versions = {};
+
+function noop() {}
+
+process.on = noop;
+process.addListener = noop;
+process.once = noop;
+process.off = noop;
+process.removeListener = noop;
+process.removeAllListeners = noop;
+process.emit = noop;
+process.prependListener = noop;
+process.prependOnceListener = noop;
+
+process.listeners = function (name) { return [] }
+
+process.binding = function (name) {
+ throw new Error('process.binding is not supported');
+};
+
+process.cwd = function () { return '/' };
+process.chdir = function (dir) {
+ throw new Error('process.chdir is not supported');
+};
+process.umask = function() { return 0; };
-/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
/***/ }),
-/* 1 */
+/* 2 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
@@ -120,9 +678,9 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Component", function() { return Component$1; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PureComponent", function() { return PureComponent; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "unstable_renderSubtreeIntoContainer", function() { return renderSubtreeIntoContainer; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_preact__ = __webpack_require__(3);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_preact__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_preact___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_preact__);
/* harmony reexport (default from non-hamory) */ __webpack_require__.d(__webpack_exports__, "PropTypes", function() { return __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a; });
@@ -745,711 +1303,14 @@ var index = {
/* harmony default export */ __webpack_exports__["default"] = (index);
//# sourceMappingURL=preact-compat.es.js.map
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4)))
-
-/***/ }),
-/* 2 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__MemoryRouter__ = __webpack_require__(32);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0__MemoryRouter__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Prompt__ = __webpack_require__(34);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__Prompt__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Redirect__ = __webpack_require__(35);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return __WEBPACK_IMPORTED_MODULE_2__Redirect__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Route__ = __webpack_require__(19);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return __WEBPACK_IMPORTED_MODULE_3__Route__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__Router__ = __webpack_require__(15);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return __WEBPACK_IMPORTED_MODULE_4__Router__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__StaticRouter__ = __webpack_require__(38);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return __WEBPACK_IMPORTED_MODULE_5__StaticRouter__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Switch__ = __webpack_require__(39);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return __WEBPACK_IMPORTED_MODULE_6__Switch__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__matchPath__ = __webpack_require__(16);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return __WEBPACK_IMPORTED_MODULE_7__matchPath__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__withRouter__ = __webpack_require__(40);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return __WEBPACK_IMPORTED_MODULE_8__withRouter__["a"]; });
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))
/***/ }),
/* 3 */
/***/ (function(module, exports, __webpack_require__) {
-!function() {
- 'use strict';
- function VNode() {}
- function h(nodeName, attributes) {
- var lastSimple, child, simple, i, children = EMPTY_CHILDREN;
- for (i = arguments.length; i-- > 2; ) stack.push(arguments[i]);
- if (attributes && null != attributes.children) {
- if (!stack.length) stack.push(attributes.children);
- delete attributes.children;
- }
- while (stack.length) if ((child = stack.pop()) && void 0 !== child.pop) for (i = child.length; i--; ) stack.push(child[i]); else {
- if (child === !0 || child === !1) child = null;
- if (simple = 'function' != typeof nodeName) if (null == child) child = ''; else if ('number' == typeof child) child = String(child); else if ('string' != typeof child) simple = !1;
- if (simple && lastSimple) children[children.length - 1] += child; else if (children === EMPTY_CHILDREN) children = [ child ]; else children.push(child);
- lastSimple = simple;
- }
- var p = new VNode();
- p.nodeName = nodeName;
- p.children = children;
- p.attributes = null == attributes ? void 0 : attributes;
- p.key = null == attributes ? void 0 : attributes.key;
- if (void 0 !== options.vnode) options.vnode(p);
- return p;
- }
- function extend(obj, props) {
- for (var i in props) obj[i] = props[i];
- return obj;
- }
- function cloneElement(vnode, props) {
- return h(vnode.nodeName, extend(extend({}, vnode.attributes), props), arguments.length > 2 ? [].slice.call(arguments, 2) : vnode.children);
- }
- function enqueueRender(component) {
- if (!component.__d && (component.__d = !0) && 1 == items.push(component)) (options.debounceRendering || setTimeout)(rerender);
- }
- function rerender() {
- var p, list = items;
- items = [];
- while (p = list.pop()) if (p.__d) renderComponent(p);
- }
- function isSameNodeType(node, vnode, hydrating) {
- if ('string' == typeof vnode || 'number' == typeof vnode) return void 0 !== node.splitText;
- if ('string' == typeof vnode.nodeName) return !node._componentConstructor && isNamedNode(node, vnode.nodeName); else return hydrating || node._componentConstructor === vnode.nodeName;
- }
- function isNamedNode(node, nodeName) {
- return node.__n === nodeName || node.nodeName.toLowerCase() === nodeName.toLowerCase();
- }
- function getNodeProps(vnode) {
- var props = extend({}, vnode.attributes);
- props.children = vnode.children;
- var defaultProps = vnode.nodeName.defaultProps;
- if (void 0 !== defaultProps) for (var i in defaultProps) if (void 0 === props[i]) props[i] = defaultProps[i];
- return props;
- }
- function createNode(nodeName, isSvg) {
- var node = isSvg ? document.createElementNS('http://www.w3.org/2000/svg', nodeName) : document.createElement(nodeName);
- node.__n = nodeName;
- return node;
- }
- function removeNode(node) {
- if (node.parentNode) node.parentNode.removeChild(node);
- }
- function setAccessor(node, name, old, value, isSvg) {
- if ('className' === name) name = 'class';
- if ('key' === name) ; else if ('ref' === name) {
- if (old) old(null);
- if (value) value(node);
- } else if ('class' === name && !isSvg) node.className = value || ''; else if ('style' === name) {
- if (!value || 'string' == typeof value || 'string' == typeof old) node.style.cssText = value || '';
- if (value && 'object' == typeof value) {
- if ('string' != typeof old) for (var i in old) if (!(i in value)) node.style[i] = '';
- for (var i in value) node.style[i] = 'number' == typeof value[i] && IS_NON_DIMENSIONAL.test(i) === !1 ? value[i] + 'px' : value[i];
- }
- } else if ('dangerouslySetInnerHTML' === name) {
- if (value) node.innerHTML = value.__html || '';
- } else if ('o' == name[0] && 'n' == name[1]) {
- var useCapture = name !== (name = name.replace(/Capture$/, ''));
- name = name.toLowerCase().substring(2);
- if (value) {
- if (!old) node.addEventListener(name, eventProxy, useCapture);
- } else node.removeEventListener(name, eventProxy, useCapture);
- (node.__l || (node.__l = {}))[name] = value;
- } else if ('list' !== name && 'type' !== name && !isSvg && name in node) {
- setProperty(node, name, null == value ? '' : value);
- if (null == value || value === !1) node.removeAttribute(name);
- } else {
- var ns = isSvg && name !== (name = name.replace(/^xlink\:?/, ''));
- if (null == value || value === !1) if (ns) node.removeAttributeNS('http://www.w3.org/1999/xlink', name.toLowerCase()); else node.removeAttribute(name); else if ('function' != typeof value) if (ns) node.setAttributeNS('http://www.w3.org/1999/xlink', name.toLowerCase(), value); else node.setAttribute(name, value);
- }
- }
- function setProperty(node, name, value) {
- try {
- node[name] = value;
- } catch (e) {}
- }
- function eventProxy(e) {
- return this.__l[e.type](options.event && options.event(e) || e);
- }
- function flushMounts() {
- var c;
- while (c = mounts.pop()) {
- if (options.afterMount) options.afterMount(c);
- if (c.componentDidMount) c.componentDidMount();
- }
- }
- function diff(dom, vnode, context, mountAll, parent, componentRoot) {
- if (!diffLevel++) {
- isSvgMode = null != parent && void 0 !== parent.ownerSVGElement;
- hydrating = null != dom && !('__preactattr_' in dom);
- }
- var ret = idiff(dom, vnode, context, mountAll, componentRoot);
- if (parent && ret.parentNode !== parent) parent.appendChild(ret);
- if (!--diffLevel) {
- hydrating = !1;
- if (!componentRoot) flushMounts();
- }
- return ret;
- }
- function idiff(dom, vnode, context, mountAll, componentRoot) {
- var out = dom, prevSvgMode = isSvgMode;
- if (null == vnode) vnode = '';
- if ('string' == typeof vnode) {
- if (dom && void 0 !== dom.splitText && dom.parentNode && (!dom._component || componentRoot)) {
- if (dom.nodeValue != vnode) dom.nodeValue = vnode;
- } else {
- out = document.createTextNode(vnode);
- if (dom) {
- if (dom.parentNode) dom.parentNode.replaceChild(out, dom);
- recollectNodeTree(dom, !0);
- }
- }
- out.__preactattr_ = !0;
- return out;
- }
- if ('function' == typeof vnode.nodeName) return buildComponentFromVNode(dom, vnode, context, mountAll);
- isSvgMode = 'svg' === vnode.nodeName ? !0 : 'foreignObject' === vnode.nodeName ? !1 : isSvgMode;
- if (!dom || !isNamedNode(dom, String(vnode.nodeName))) {
- out = createNode(String(vnode.nodeName), isSvgMode);
- if (dom) {
- while (dom.firstChild) out.appendChild(dom.firstChild);
- if (dom.parentNode) dom.parentNode.replaceChild(out, dom);
- recollectNodeTree(dom, !0);
- }
- }
- var fc = out.firstChild, props = out.__preactattr_ || (out.__preactattr_ = {}), vchildren = vnode.children;
- if (!hydrating && vchildren && 1 === vchildren.length && 'string' == typeof vchildren[0] && null != fc && void 0 !== fc.splitText && null == fc.nextSibling) {
- if (fc.nodeValue != vchildren[0]) fc.nodeValue = vchildren[0];
- } else if (vchildren && vchildren.length || null != fc) innerDiffNode(out, vchildren, context, mountAll, hydrating || null != props.dangerouslySetInnerHTML);
- diffAttributes(out, vnode.attributes, props);
- isSvgMode = prevSvgMode;
- return out;
- }
- function innerDiffNode(dom, vchildren, context, mountAll, isHydrating) {
- var j, c, vchild, child, originalChildren = dom.childNodes, children = [], keyed = {}, keyedLen = 0, min = 0, len = originalChildren.length, childrenLen = 0, vlen = vchildren ? vchildren.length : 0;
- if (0 !== len) for (var i = 0; i < len; i++) {
- var _child = originalChildren[i], props = _child.__preactattr_, key = vlen && props ? _child._component ? _child._component.__k : props.key : null;
- if (null != key) {
- keyedLen++;
- keyed[key] = _child;
- } else if (props || (void 0 !== _child.splitText ? isHydrating ? _child.nodeValue.trim() : !0 : isHydrating)) children[childrenLen++] = _child;
- }
- if (0 !== vlen) for (var i = 0; i < vlen; i++) {
- vchild = vchildren[i];
- child = null;
- var key = vchild.key;
- if (null != key) {
- if (keyedLen && void 0 !== keyed[key]) {
- child = keyed[key];
- keyed[key] = void 0;
- keyedLen--;
- }
- } else if (!child && min < childrenLen) for (j = min; j < childrenLen; j++) if (void 0 !== children[j] && isSameNodeType(c = children[j], vchild, isHydrating)) {
- child = c;
- children[j] = void 0;
- if (j === childrenLen - 1) childrenLen--;
- if (j === min) min++;
- break;
- }
- child = idiff(child, vchild, context, mountAll);
- if (child && child !== dom) if (i >= len) dom.appendChild(child); else if (child !== originalChildren[i]) if (child === originalChildren[i + 1]) removeNode(originalChildren[i]); else dom.insertBefore(child, originalChildren[i] || null);
- }
- if (keyedLen) for (var i in keyed) if (void 0 !== keyed[i]) recollectNodeTree(keyed[i], !1);
- while (min <= childrenLen) if (void 0 !== (child = children[childrenLen--])) recollectNodeTree(child, !1);
- }
- function recollectNodeTree(node, unmountOnly) {
- var component = node._component;
- if (component) unmountComponent(component); else {
- if (null != node.__preactattr_ && node.__preactattr_.ref) node.__preactattr_.ref(null);
- if (unmountOnly === !1 || null == node.__preactattr_) removeNode(node);
- removeChildren(node);
- }
- }
- function removeChildren(node) {
- node = node.lastChild;
- while (node) {
- var next = node.previousSibling;
- recollectNodeTree(node, !0);
- node = next;
- }
- }
- function diffAttributes(dom, attrs, old) {
- var name;
- for (name in old) if ((!attrs || null == attrs[name]) && null != old[name]) setAccessor(dom, name, old[name], old[name] = void 0, isSvgMode);
- for (name in attrs) if (!('children' === name || 'innerHTML' === name || name in old && attrs[name] === ('value' === name || 'checked' === name ? dom[name] : old[name]))) setAccessor(dom, name, old[name], old[name] = attrs[name], isSvgMode);
- }
- function collectComponent(component) {
- var name = component.constructor.name;
- (components[name] || (components[name] = [])).push(component);
- }
- function createComponent(Ctor, props, context) {
- var inst, list = components[Ctor.name];
- if (Ctor.prototype && Ctor.prototype.render) {
- inst = new Ctor(props, context);
- Component.call(inst, props, context);
- } else {
- inst = new Component(props, context);
- inst.constructor = Ctor;
- inst.render = doRender;
- }
- if (list) for (var i = list.length; i--; ) if (list[i].constructor === Ctor) {
- inst.__b = list[i].__b;
- list.splice(i, 1);
- break;
- }
- return inst;
- }
- function doRender(props, state, context) {
- return this.constructor(props, context);
- }
- function setComponentProps(component, props, opts, context, mountAll) {
- if (!component.__x) {
- component.__x = !0;
- if (component.__r = props.ref) delete props.ref;
- if (component.__k = props.key) delete props.key;
- if (!component.base || mountAll) {
- if (component.componentWillMount) component.componentWillMount();
- } else if (component.componentWillReceiveProps) component.componentWillReceiveProps(props, context);
- if (context && context !== component.context) {
- if (!component.__c) component.__c = component.context;
- component.context = context;
- }
- if (!component.__p) component.__p = component.props;
- component.props = props;
- component.__x = !1;
- if (0 !== opts) if (1 === opts || options.syncComponentUpdates !== !1 || !component.base) renderComponent(component, 1, mountAll); else enqueueRender(component);
- if (component.__r) component.__r(component);
- }
- }
- function renderComponent(component, opts, mountAll, isChild) {
- if (!component.__x) {
- var rendered, inst, cbase, props = component.props, state = component.state, context = component.context, previousProps = component.__p || props, previousState = component.__s || state, previousContext = component.__c || context, isUpdate = component.base, nextBase = component.__b, initialBase = isUpdate || nextBase, initialChildComponent = component._component, skip = !1;
- if (isUpdate) {
- component.props = previousProps;
- component.state = previousState;
- component.context = previousContext;
- if (2 !== opts && component.shouldComponentUpdate && component.shouldComponentUpdate(props, state, context) === !1) skip = !0; else if (component.componentWillUpdate) component.componentWillUpdate(props, state, context);
- component.props = props;
- component.state = state;
- component.context = context;
- }
- component.__p = component.__s = component.__c = component.__b = null;
- component.__d = !1;
- if (!skip) {
- rendered = component.render(props, state, context);
- if (component.getChildContext) context = extend(extend({}, context), component.getChildContext());
- var toUnmount, base, childComponent = rendered && rendered.nodeName;
- if ('function' == typeof childComponent) {
- var childProps = getNodeProps(rendered);
- inst = initialChildComponent;
- if (inst && inst.constructor === childComponent && childProps.key == inst.__k) setComponentProps(inst, childProps, 1, context, !1); else {
- toUnmount = inst;
- component._component = inst = createComponent(childComponent, childProps, context);
- inst.__b = inst.__b || nextBase;
- inst.__u = component;
- setComponentProps(inst, childProps, 0, context, !1);
- renderComponent(inst, 1, mountAll, !0);
- }
- base = inst.base;
- } else {
- cbase = initialBase;
- toUnmount = initialChildComponent;
- if (toUnmount) cbase = component._component = null;
- if (initialBase || 1 === opts) {
- if (cbase) cbase._component = null;
- base = diff(cbase, rendered, context, mountAll || !isUpdate, initialBase && initialBase.parentNode, !0);
- }
- }
- if (initialBase && base !== initialBase && inst !== initialChildComponent) {
- var baseParent = initialBase.parentNode;
- if (baseParent && base !== baseParent) {
- baseParent.replaceChild(base, initialBase);
- if (!toUnmount) {
- initialBase._component = null;
- recollectNodeTree(initialBase, !1);
- }
- }
- }
- if (toUnmount) unmountComponent(toUnmount);
- component.base = base;
- if (base && !isChild) {
- var componentRef = component, t = component;
- while (t = t.__u) (componentRef = t).base = base;
- base._component = componentRef;
- base._componentConstructor = componentRef.constructor;
- }
- }
- if (!isUpdate || mountAll) mounts.unshift(component); else if (!skip) {
- flushMounts();
- if (component.componentDidUpdate) component.componentDidUpdate(previousProps, previousState, previousContext);
- if (options.afterUpdate) options.afterUpdate(component);
- }
- if (null != component.__h) while (component.__h.length) component.__h.pop().call(component);
- if (!diffLevel && !isChild) flushMounts();
- }
- }
- function buildComponentFromVNode(dom, vnode, context, mountAll) {
- var c = dom && dom._component, originalComponent = c, oldDom = dom, isDirectOwner = c && dom._componentConstructor === vnode.nodeName, isOwner = isDirectOwner, props = getNodeProps(vnode);
- while (c && !isOwner && (c = c.__u)) isOwner = c.constructor === vnode.nodeName;
- if (c && isOwner && (!mountAll || c._component)) {
- setComponentProps(c, props, 3, context, mountAll);
- dom = c.base;
- } else {
- if (originalComponent && !isDirectOwner) {
- unmountComponent(originalComponent);
- dom = oldDom = null;
- }
- c = createComponent(vnode.nodeName, props, context);
- if (dom && !c.__b) {
- c.__b = dom;
- oldDom = null;
- }
- setComponentProps(c, props, 1, context, mountAll);
- dom = c.base;
- if (oldDom && dom !== oldDom) {
- oldDom._component = null;
- recollectNodeTree(oldDom, !1);
- }
- }
- return dom;
- }
- function unmountComponent(component) {
- if (options.beforeUnmount) options.beforeUnmount(component);
- var base = component.base;
- component.__x = !0;
- if (component.componentWillUnmount) component.componentWillUnmount();
- component.base = null;
- var inner = component._component;
- if (inner) unmountComponent(inner); else if (base) {
- if (base.__preactattr_ && base.__preactattr_.ref) base.__preactattr_.ref(null);
- component.__b = base;
- removeNode(base);
- collectComponent(component);
- removeChildren(base);
- }
- if (component.__r) component.__r(null);
- }
- function Component(props, context) {
- this.__d = !0;
- this.context = context;
- this.props = props;
- this.state = this.state || {};
- }
- function render(vnode, parent, merge) {
- return diff(merge, vnode, {}, !1, parent, !1);
- }
- var options = {};
- var stack = [];
- var EMPTY_CHILDREN = [];
- var IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i;
- var items = [];
- var mounts = [];
- var diffLevel = 0;
- var isSvgMode = !1;
- var hydrating = !1;
- var components = {};
- extend(Component.prototype, {
- setState: function(state, callback) {
- var s = this.state;
- if (!this.__s) this.__s = extend({}, s);
- extend(s, 'function' == typeof state ? state(s, this.props) : state);
- if (callback) (this.__h = this.__h || []).push(callback);
- enqueueRender(this);
- },
- forceUpdate: function(callback) {
- if (callback) (this.__h = this.__h || []).push(callback);
- renderComponent(this, 2);
- },
- render: function() {}
- });
- var preact = {
- h: h,
- createElement: h,
- cloneElement: cloneElement,
- Component: Component,
- render: render,
- rerender: rerender,
- options: options
- };
- if (true) module.exports = preact; else self.preact = preact;
-}();
-//# sourceMappingURL=preact.js.map
-
-/***/ }),
-/* 4 */
-/***/ (function(module, exports) {
-
-// shim for using process in browser
-var process = module.exports = {};
-
-// cached from whatever global is present so that test runners that stub it
-// don't break things. But we need to wrap it in a try catch in case it is
-// wrapped in strict mode code which doesn't define any globals. It's inside a
-// function because try/catches deoptimize in certain engines.
-
-var cachedSetTimeout;
-var cachedClearTimeout;
-
-function defaultSetTimout() {
- throw new Error('setTimeout has not been defined');
-}
-function defaultClearTimeout () {
- throw new Error('clearTimeout has not been defined');
-}
-(function () {
- try {
- if (typeof setTimeout === 'function') {
- cachedSetTimeout = setTimeout;
- } else {
- cachedSetTimeout = defaultSetTimout;
- }
- } catch (e) {
- cachedSetTimeout = defaultSetTimout;
- }
- try {
- if (typeof clearTimeout === 'function') {
- cachedClearTimeout = clearTimeout;
- } else {
- cachedClearTimeout = defaultClearTimeout;
- }
- } catch (e) {
- cachedClearTimeout = defaultClearTimeout;
- }
-} ())
-function runTimeout(fun) {
- if (cachedSetTimeout === setTimeout) {
- //normal enviroments in sane situations
- return setTimeout(fun, 0);
- }
- // if setTimeout wasn't available but was latter defined
- if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
- cachedSetTimeout = setTimeout;
- return setTimeout(fun, 0);
- }
- try {
- // when when somebody has screwed with setTimeout but no I.E. maddness
- return cachedSetTimeout(fun, 0);
- } catch(e){
- try {
- // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
- return cachedSetTimeout.call(null, fun, 0);
- } catch(e){
- // 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
- return cachedSetTimeout.call(this, fun, 0);
- }
- }
-
-
-}
-function runClearTimeout(marker) {
- if (cachedClearTimeout === clearTimeout) {
- //normal enviroments in sane situations
- return clearTimeout(marker);
- }
- // if clearTimeout wasn't available but was latter defined
- if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
- cachedClearTimeout = clearTimeout;
- return clearTimeout(marker);
- }
- try {
- // when when somebody has screwed with setTimeout but no I.E. maddness
- return cachedClearTimeout(marker);
- } catch (e){
- try {
- // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
- return cachedClearTimeout.call(null, marker);
- } catch (e){
- // 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.
- // Some versions of I.E. have different rules for clearTimeout vs setTimeout
- return cachedClearTimeout.call(this, marker);
- }
- }
-
-
-
-}
-var queue = [];
-var draining = false;
-var currentQueue;
-var queueIndex = -1;
-
-function cleanUpNextTick() {
- if (!draining || !currentQueue) {
- return;
- }
- draining = false;
- if (currentQueue.length) {
- queue = currentQueue.concat(queue);
- } else {
- queueIndex = -1;
- }
- if (queue.length) {
- drainQueue();
- }
-}
-
-function drainQueue() {
- if (draining) {
- return;
- }
- var timeout = runTimeout(cleanUpNextTick);
- draining = true;
-
- var len = queue.length;
- while(len) {
- currentQueue = queue;
- queue = [];
- while (++queueIndex < len) {
- if (currentQueue) {
- currentQueue[queueIndex].run();
- }
- }
- queueIndex = -1;
- len = queue.length;
- }
- currentQueue = null;
- draining = false;
- runClearTimeout(timeout);
-}
-
-process.nextTick = function (fun) {
- var args = new Array(arguments.length - 1);
- if (arguments.length > 1) {
- for (var i = 1; i < arguments.length; i++) {
- args[i - 1] = arguments[i];
- }
- }
- queue.push(new Item(fun, args));
- if (queue.length === 1 && !draining) {
- runTimeout(drainQueue);
- }
-};
-
-// v8 likes predictible objects
-function Item(fun, array) {
- this.fun = fun;
- this.array = array;
-}
-Item.prototype.run = function () {
- this.fun.apply(null, this.array);
-};
-process.title = 'browser';
-process.browser = true;
-process.env = {};
-process.argv = [];
-process.version = ''; // empty string to avoid regexp issues
-process.versions = {};
-
-function noop() {}
-
-process.on = noop;
-process.addListener = noop;
-process.once = noop;
-process.off = noop;
-process.removeListener = noop;
-process.removeAllListeners = noop;
-process.emit = noop;
-process.prependListener = noop;
-process.prependOnceListener = noop;
-
-process.listeners = function (name) { return [] }
-
-process.binding = function (name) {
- throw new Error('process.binding is not supported');
-};
-
-process.cwd = function () { return '/' };
-process.chdir = function (dir) {
- throw new Error('process.chdir is not supported');
-};
-process.umask = function() { return 0; };
-
-
-/***/ }),
-/* 5 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__ = __webpack_require__(25);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "BrowserRouter", function() { return __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__HashRouter__ = __webpack_require__(42);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "HashRouter", function() { return __WEBPACK_IMPORTED_MODULE_1__HashRouter__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Link__ = __webpack_require__(20);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Link", function() { return __WEBPACK_IMPORTED_MODULE_2__Link__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__MemoryRouter__ = __webpack_require__(44);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MemoryRouter", function() { return __WEBPACK_IMPORTED_MODULE_3__MemoryRouter__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__NavLink__ = __webpack_require__(45);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavLink", function() { return __WEBPACK_IMPORTED_MODULE_4__NavLink__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__Prompt__ = __webpack_require__(46);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Prompt", function() { return __WEBPACK_IMPORTED_MODULE_5__Prompt__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Redirect__ = __webpack_require__(47);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Redirect", function() { return __WEBPACK_IMPORTED_MODULE_6__Redirect__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__Route__ = __webpack_require__(48);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Route", function() { return __WEBPACK_IMPORTED_MODULE_7__Route__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Router__ = __webpack_require__(49);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Router", function() { return __WEBPACK_IMPORTED_MODULE_8__Router__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__StaticRouter__ = __webpack_require__(50);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "StaticRouter", function() { return __WEBPACK_IMPORTED_MODULE_9__StaticRouter__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Switch__ = __webpack_require__(51);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Switch", function() { return __WEBPACK_IMPORTED_MODULE_10__Switch__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__matchPath__ = __webpack_require__(52);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "matchPath", function() { return __WEBPACK_IMPORTED_MODULE_11__matchPath__["a"]; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__withRouter__ = __webpack_require__(53);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "withRouter", function() { return __WEBPACK_IMPORTED_MODULE_12__withRouter__["a"]; });
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-/***/ }),
-/* 6 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
/* WEBPACK VAR INJECTION */(function(process) {/**
- * Copyright 2014-2015, Facebook, Inc.
+ * Copyright 2013-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
@@ -1457,129 +1318,74 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
* of patent rights can be found in the PATENTS file in the same directory.
*/
-
-
-/**
- * Similar to invariant but only logs a warning if the condition is not met.
- * This can be used to log issues in development environments in critical
- * paths. Removing the logging code for production environments will keep the
- * same logic and follow the same code paths.
- */
-
-var warning = function() {};
-
if (process.env.NODE_ENV !== 'production') {
- warning = function(condition, format, args) {
- var len = arguments.length;
- args = new Array(len > 2 ? len - 2 : 0);
- for (var key = 2; key < len; key++) {
- args[key - 2] = arguments[key];
- }
- if (format === undefined) {
- throw new Error(
- '`warning(condition, format, ...args)` requires a warning ' +
- 'message argument'
- );
- }
-
- if (format.length < 10 || (/^[s\W]*$/).test(format)) {
- throw new Error(
- 'The warning format should be able to uniquely identify this ' +
- 'warning. Please, use a more descriptive format than: ' + format
- );
- }
+ var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
+ Symbol.for &&
+ Symbol.for('react.element')) ||
+ 0xeac7;
- if (!condition) {
- var argIndex = 0;
- var message = 'Warning: ' +
- format.replace(/%s/g, function() {
- return args[argIndex++];
- });
- if (typeof console !== 'undefined') {
- console.error(message);
- }
- try {
- // This error was thrown as a convenience so that you can use this stack
- // to find the callsite that caused this warning to fire.
- throw new Error(message);
- } catch(x) {}
- }
+ var isValidElement = function(object) {
+ return typeof object === 'object' &&
+ object !== null &&
+ object.$$typeof === REACT_ELEMENT_TYPE;
};
-}
-module.exports = warning;
+ // By explicitly using `prop-types` you are opting into new development behavior.
+ // http://fb.me/prop-types-in-prod
+ var throwOnDirectAccess = true;
+ module.exports = __webpack_require__(41)(isValidElement, throwOnDirectAccess);
+} else {
+ // By explicitly using `prop-types` you are opting into new production behavior.
+ // http://fb.me/prop-types-in-prod
+ module.exports = __webpack_require__(43)();
+}
-/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))
/***/ }),
-/* 7 */
-/***/ (function(module, exports, __webpack_require__) {
+/* 4 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__MemoryRouter__ = __webpack_require__(86);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0__MemoryRouter__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Prompt__ = __webpack_require__(88);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__Prompt__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Redirect__ = __webpack_require__(89);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return __WEBPACK_IMPORTED_MODULE_2__Redirect__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Route__ = __webpack_require__(36);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return __WEBPACK_IMPORTED_MODULE_3__Route__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__Router__ = __webpack_require__(20);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return __WEBPACK_IMPORTED_MODULE_4__Router__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__StaticRouter__ = __webpack_require__(92);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return __WEBPACK_IMPORTED_MODULE_5__StaticRouter__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Switch__ = __webpack_require__(93);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return __WEBPACK_IMPORTED_MODULE_6__Switch__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__matchPath__ = __webpack_require__(21);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return __WEBPACK_IMPORTED_MODULE_7__matchPath__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__withRouter__ = __webpack_require__(94);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return __WEBPACK_IMPORTED_MODULE_8__withRouter__["a"]; });
+
+
-exports.__esModule = true;
-var addLeadingSlash = exports.addLeadingSlash = function addLeadingSlash(path) {
- return path.charAt(0) === '/' ? path : '/' + path;
-};
-var stripLeadingSlash = exports.stripLeadingSlash = function stripLeadingSlash(path) {
- return path.charAt(0) === '/' ? path.substr(1) : path;
-};
-var hasBasename = exports.hasBasename = function hasBasename(path, prefix) {
- return new RegExp('^' + prefix + '(\\/|\\?|#|$)', 'i').test(path);
-};
-var stripBasename = exports.stripBasename = function stripBasename(path, prefix) {
- return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
-};
-var stripTrailingSlash = exports.stripTrailingSlash = function stripTrailingSlash(path) {
- return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;
-};
-var parsePath = exports.parsePath = function parsePath(path) {
- var pathname = path || '/';
- var search = '';
- var hash = '';
- var hashIndex = pathname.indexOf('#');
- if (hashIndex !== -1) {
- hash = pathname.substr(hashIndex);
- pathname = pathname.substr(0, hashIndex);
- }
- var searchIndex = pathname.indexOf('?');
- if (searchIndex !== -1) {
- search = pathname.substr(searchIndex);
- pathname = pathname.substr(0, searchIndex);
- }
- return {
- pathname: pathname,
- search: search === '?' ? '' : search,
- hash: hash === '#' ? '' : hash
- };
-};
-var createPath = exports.createPath = function createPath(location) {
- var pathname = location.pathname,
- search = location.search,
- hash = location.hash;
- var path = pathname || '/';
- if (search && search !== '?') path += search.charAt(0) === '?' ? search : '?' + search;
- if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : '#' + hash;
- return path;
-};
/***/ }),
-/* 8 */
+/* 5 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -1701,6 +1507,202 @@ function error(err) {
}
/***/ }),
+/* 6 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_Provider__ = __webpack_require__(40);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_connectAdvanced__ = __webpack_require__(24);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__connect_connect__ = __webpack_require__(45);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Provider", function() { return __WEBPACK_IMPORTED_MODULE_0__components_Provider__["b"]; });
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "createProvider", function() { return __WEBPACK_IMPORTED_MODULE_0__components_Provider__["a"]; });
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "connectAdvanced", function() { return __WEBPACK_IMPORTED_MODULE_1__components_connectAdvanced__["a"]; });
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "connect", function() { return __WEBPACK_IMPORTED_MODULE_2__connect_connect__["a"]; });
+
+
+
+
+
+
+/***/ }),
+/* 7 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+/* AudioPlayer */
+
+var audioPlayFile = exports.audioPlayFile = function audioPlayFile(file) {
+ return {
+ type: 'AUDIO_PLAY_FILE',
+ file: file
+ };
+};
+var audioPause = exports.audioPause = function audioPause() {
+ return {
+ type: 'AUDIO_PAUSE'
+ };
+};
+
+/* currentTask */
+
+var setContent = exports.setContent = function setContent(content) {
+ return {
+ type: 'SET_CONTENT',
+ file: content
+ };
+};
+var setStyle = exports.setStyle = function setStyle(style) {
+ return {
+ type: 'SET_STYLE',
+ file: style
+ };
+};
+var setAlpha = exports.setAlpha = function setAlpha(alpha) {
+ return {
+ type: 'SET_ALPHA',
+ alpha: alpha
+ };
+};
+var createTask = exports.createTask = function createTask() {
+ return {
+ type: 'CREATE_TASK'
+ };
+};
+var addTask = exports.addTask = function addTask() {
+ return {
+ type: 'ADD_TASK'
+ };
+};
+
+/* tasks */
+
+var loadTasks = exports.loadTasks = function loadTasks(tasks) {
+ return {
+ type: 'LOAD_TASKS',
+ tasks: tasks
+ };
+};
+
+/* folders */
+
+var loadFolders = exports.loadFolders = function loadFolders(folders) {
+ return {
+ type: 'LOAD_FOLDERS',
+ folders: folders
+ };
+};
+var loadFiles = exports.loadFiles = function loadFiles(files) {
+ return {
+ type: 'LOAD_FILES',
+ files: files
+ };
+};
+var loadOpenFolders = exports.loadOpenFolders = function loadOpenFolders(folders) {
+ return {
+ type: 'LOAD_OPEN_FOLDERS',
+ folders: folders
+ };
+};
+var openFolder = exports.openFolder = function openFolder(folder) {
+ return {
+ type: 'OPEN_FOLDER',
+ folder: folder
+ };
+};
+var closeFolder = exports.closeFolder = function closeFolder(folder) {
+ return {
+ type: 'CLOSE_FOLDER',
+ folder: folder
+ };
+};
+var addFolder = exports.addFolder = function addFolder(folder) {
+ return {
+ type: 'ADD_FOLDER',
+ folder: folder
+ };
+};
+var updateFile = exports.updateFile = function updateFile(file) {
+ return {
+ type: 'UPDATE_FILE',
+ file: file
+ };
+};
+
+/***/ }),
+/* 8 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(process) {/**
+ * Copyright 2014-2015, Facebook, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under the BSD-style license found in the
+ * LICENSE file in the root directory of this source tree. An additional grant
+ * of patent rights can be found in the PATENTS file in the same directory.
+ */
+
+
+
+/**
+ * Similar to invariant but only logs a warning if the condition is not met.
+ * This can be used to log issues in development environments in critical
+ * paths. Removing the logging code for production environments will keep the
+ * same logic and follow the same code paths.
+ */
+
+var warning = function() {};
+
+if (process.env.NODE_ENV !== 'production') {
+ warning = function(condition, format, args) {
+ var len = arguments.length;
+ args = new Array(len > 2 ? len - 2 : 0);
+ for (var key = 2; key < len; key++) {
+ args[key - 2] = arguments[key];
+ }
+ if (format === undefined) {
+ throw new Error(
+ '`warning(condition, format, ...args)` requires a warning ' +
+ 'message argument'
+ );
+ }
+
+ if (format.length < 10 || (/^[s\W]*$/).test(format)) {
+ throw new Error(
+ 'The warning format should be able to uniquely identify this ' +
+ 'warning. Please, use a more descriptive format than: ' + format
+ );
+ }
+
+ if (!condition) {
+ var argIndex = 0;
+ var message = 'Warning: ' +
+ format.replace(/%s/g, function() {
+ return args[argIndex++];
+ });
+ if (typeof console !== 'undefined') {
+ console.error(message);
+ }
+ try {
+ // This error was thrown as a convenience so that you can use this stack
+ // to find the callsite that caused this warning to fire.
+ throw new Error(message);
+ } catch(x) {}
+ }
+ };
+}
+
+module.exports = warning;
+
+/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))
+
+/***/ }),
/* 9 */
/***/ (function(module, exports, __webpack_require__) {
@@ -1757,7 +1759,7 @@ var invariant = function(condition, format, a, b, c, d, e, f) {
module.exports = invariant;
-/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))
/***/ }),
/* 10 */
@@ -1766,6 +1768,73 @@ module.exports = invariant;
"use strict";
+exports.__esModule = true;
+var addLeadingSlash = exports.addLeadingSlash = function addLeadingSlash(path) {
+ return path.charAt(0) === '/' ? path : '/' + path;
+};
+
+var stripLeadingSlash = exports.stripLeadingSlash = function stripLeadingSlash(path) {
+ return path.charAt(0) === '/' ? path.substr(1) : path;
+};
+
+var hasBasename = exports.hasBasename = function hasBasename(path, prefix) {
+ return new RegExp('^' + prefix + '(\\/|\\?|#|$)', 'i').test(path);
+};
+
+var stripBasename = exports.stripBasename = function stripBasename(path, prefix) {
+ return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
+};
+
+var stripTrailingSlash = exports.stripTrailingSlash = function stripTrailingSlash(path) {
+ return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;
+};
+
+var parsePath = exports.parsePath = function parsePath(path) {
+ var pathname = path || '/';
+ var search = '';
+ var hash = '';
+
+ var hashIndex = pathname.indexOf('#');
+ if (hashIndex !== -1) {
+ hash = pathname.substr(hashIndex);
+ pathname = pathname.substr(0, hashIndex);
+ }
+
+ var searchIndex = pathname.indexOf('?');
+ if (searchIndex !== -1) {
+ search = pathname.substr(searchIndex);
+ pathname = pathname.substr(0, searchIndex);
+ }
+
+ return {
+ pathname: pathname,
+ search: search === '?' ? '' : search,
+ hash: hash === '#' ? '' : hash
+ };
+};
+
+var createPath = exports.createPath = function createPath(location) {
+ var pathname = location.pathname,
+ search = location.search,
+ hash = location.hash;
+
+
+ var path = pathname || '/';
+
+ if (search && search !== '?') path += search.charAt(0) === '?' ? search : '?' + search;
+
+ if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : '#' + hash;
+
+ return path;
+};
+
+/***/ }),
+/* 11 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
/**
* Copyright (c) 2013-present, Facebook, Inc.
* All rights reserved.
@@ -1804,7 +1873,7 @@ emptyFunction.thatReturnsArgument = function (arg) {
module.exports = emptyFunction;
/***/ }),
-/* 11 */
+/* 12 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -1863,10 +1932,10 @@ function invariant(condition, format, a, b, c, d, e, f) {
}
module.exports = invariant;
-/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))
/***/ }),
-/* 12 */
+/* 13 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -1887,7 +1956,201 @@ module.exports = ReactPropTypesSecret;
/***/ }),
-/* 13 */
+/* 14 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (immutable) */ __webpack_exports__["a"] = warning;
+/**
+ * Prints a warning in the console if it exists.
+ *
+ * @param {String} message The warning message.
+ * @returns {void}
+ */
+function warning(message) {
+ /* eslint-disable no-console */
+ if (typeof console !== 'undefined' && typeof console.error === 'function') {
+ console.error(message);
+ }
+ /* eslint-enable no-console */
+ try {
+ // This error was thrown as a convenience so that if you enable
+ // "break on all exceptions" in your console,
+ // it would pause the execution at this line.
+ throw new Error(message);
+ /* eslint-disable no-empty */
+ } catch (e) {}
+ /* eslint-enable no-empty */
+}
+
+/***/ }),
+/* 15 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__createStore__ = __webpack_require__(26);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__combineReducers__ = __webpack_require__(60);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__bindActionCreators__ = __webpack_require__(61);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__applyMiddleware__ = __webpack_require__(62);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__compose__ = __webpack_require__(30);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_warning__ = __webpack_require__(29);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "createStore", function() { return __WEBPACK_IMPORTED_MODULE_0__createStore__["b"]; });
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "combineReducers", function() { return __WEBPACK_IMPORTED_MODULE_1__combineReducers__["a"]; });
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "bindActionCreators", function() { return __WEBPACK_IMPORTED_MODULE_2__bindActionCreators__["a"]; });
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "applyMiddleware", function() { return __WEBPACK_IMPORTED_MODULE_3__applyMiddleware__["a"]; });
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "compose", function() { return __WEBPACK_IMPORTED_MODULE_4__compose__["a"]; });
+
+
+
+
+
+
+
+/*
+* This is a dummy function to check if the function name has been altered by minification.
+* If the function has been minified and NODE_ENV !== 'production', warn the user.
+*/
+function isCrushed() {}
+
+if (process.env.NODE_ENV !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {
+ __WEBPACK_IMPORTED_MODULE_5__utils_warning__["a" /* 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.');
+}
+
+
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))
+
+/***/ }),
+/* 16 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__baseGetTag_js__ = __webpack_require__(48);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getPrototype_js__ = __webpack_require__(53);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__isObjectLike_js__ = __webpack_require__(55);
+
+
+
+
+/** `Object#toString` result references. */
+var objectTag = '[object Object]';
+
+/** Used for built-in method references. */
+var funcProto = Function.prototype,
+ objectProto = Object.prototype;
+
+/** Used to resolve the decompiled source of functions. */
+var funcToString = funcProto.toString;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/** Used to infer the `Object` constructor. */
+var objectCtorString = funcToString.call(Object);
+
+/**
+ * Checks if `value` is a plain object, that is, an object created by the
+ * `Object` constructor or one with a `[[Prototype]]` of `null`.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.8.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
+ * @example
+ *
+ * function Foo() {
+ * this.a = 1;
+ * }
+ *
+ * _.isPlainObject(new Foo);
+ * // => false
+ *
+ * _.isPlainObject([1, 2, 3]);
+ * // => false
+ *
+ * _.isPlainObject({ 'x': 0, 'y': 0 });
+ * // => true
+ *
+ * _.isPlainObject(Object.create(null));
+ * // => true
+ */
+function isPlainObject(value) {
+ if (!__WEBPACK_IMPORTED_MODULE_2__isObjectLike_js__["a" /* default */](value) || __WEBPACK_IMPORTED_MODULE_0__baseGetTag_js__["a" /* default */](value) != objectTag) {
+ return false;
+ }
+ var proto = __WEBPACK_IMPORTED_MODULE_1__getPrototype_js__["a" /* default */](value);
+ if (proto === null) {
+ return true;
+ }
+ var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
+ return typeof Ctor == 'function' && Ctor instanceof Ctor &&
+ funcToString.call(Ctor) == objectCtorString;
+}
+
+/* harmony default export */ __webpack_exports__["a"] = (isPlainObject);
+
+
+/***/ }),
+/* 17 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _preact = __webpack_require__(0);
+
+var _react = __webpack_require__(2);
+
+var _react2 = _interopRequireDefault(_react);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+// import PropTypes from 'prop-types'
+
+var Link = function Link(_ref) {
+ var active = _ref.active,
+ children = _ref.children,
+ _onClick = _ref.onClick;
+
+ if (active) {
+ return (0, _preact.h)(
+ 'span',
+ null,
+ children
+ );
+ }
+
+ return (
+ // eslint-disable-next-line
+ (0, _preact.h)(
+ 'a',
+ { href: '#',
+ onClick: function onClick(e) {
+ e.preventDefault();
+ _onClick();
+ }
+ },
+ children
+ )
+ );
+};
+
+// Link.propTypes = {
+// active: PropTypes.bool.isRequired,
+// children: PropTypes.node.isRequired,
+// onClick: PropTypes.func.isRequired
+// }
+
+exports.default = Link;
+
+/***/ }),
+/* 18 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -1898,15 +2161,15 @@ exports.locationsAreEqual = exports.createLocation = undefined;
var _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; };
-var _resolvePathname = __webpack_require__(30);
+var _resolvePathname = __webpack_require__(84);
var _resolvePathname2 = _interopRequireDefault(_resolvePathname);
-var _valueEqual = __webpack_require__(31);
+var _valueEqual = __webpack_require__(85);
var _valueEqual2 = _interopRequireDefault(_valueEqual);
-var _PathUtils = __webpack_require__(7);
+var _PathUtils = __webpack_require__(10);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -1971,7 +2234,7 @@ var locationsAreEqual = exports.locationsAreEqual = function locationsAreEqual(a
};
/***/ }),
-/* 14 */
+/* 19 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -1979,7 +2242,7 @@ var locationsAreEqual = exports.locationsAreEqual = function locationsAreEqual(a
exports.__esModule = true;
-var _warning = __webpack_require__(6);
+var _warning = __webpack_require__(8);
var _warning2 = _interopRequireDefault(_warning);
@@ -2062,16 +2325,16 @@ var createTransitionManager = function createTransitionManager() {
exports.default = createTransitionManager;
/***/ }),
-/* 15 */
+/* 20 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(6);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(8);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_warning__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(9);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__);
var _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; };
@@ -2180,11 +2443,11 @@ Router.childContextTypes = {
/* harmony default export */ __webpack_exports__["a"] = (Router);
/***/ }),
-/* 16 */
+/* 21 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_path_to_regexp__ = __webpack_require__(36);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_path_to_regexp__ = __webpack_require__(90);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_path_to_regexp___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_path_to_regexp__);
@@ -2255,7 +2518,7 @@ var matchPath = function matchPath(pathname) {
/* harmony default export */ __webpack_exports__["a"] = (matchPath);
/***/ }),
-/* 17 */
+/* 22 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -2271,7 +2534,7 @@ var matchPath = function matchPath(pathname) {
-var emptyFunction = __webpack_require__(10);
+var emptyFunction = __webpack_require__(11);
/**
* Similar to invariant but only logs a warning if the condition is not met.
@@ -2325,10 +2588,940 @@ if (process.env.NODE_ENV !== 'production') {
}
module.exports = warning;
-/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))
/***/ }),
-/* 18 */
+/* 23 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return subscriptionShape; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return storeShape; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types__ = __webpack_require__(3);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_prop_types__);
+
+
+var subscriptionShape = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.shape({
+ trySubscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
+ tryUnsubscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
+ notifyNestedSubs: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
+ isSubscribed: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired
+});
+
+var storeShape = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.shape({
+ subscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
+ dispatch: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
+ getState: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired
+});
+
+/***/ }),
+/* 24 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["a"] = connectAdvanced;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics__ = __webpack_require__(25);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics__);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(9);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_Subscription__ = __webpack_require__(44);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__ = __webpack_require__(23);
+var _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; };
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+
+
+
+
+
+
+
+var hotReloadingVersion = 0;
+var dummyState = {};
+function noop() {}
+function makeSelectorStateful(sourceSelector, store) {
+ // wrap the selector in an object that tracks its results between runs.
+ var selector = {
+ run: function runComponentSelector(props) {
+ try {
+ var nextProps = sourceSelector(store.getState(), props);
+ if (nextProps !== selector.props || selector.error) {
+ selector.shouldComponentUpdate = true;
+ selector.props = nextProps;
+ selector.error = null;
+ }
+ } catch (error) {
+ selector.shouldComponentUpdate = true;
+ selector.error = error;
+ }
+ }
+ };
+
+ return selector;
+}
+
+function connectAdvanced(
+/*
+ selectorFactory is a func that is responsible for returning the selector function used to
+ compute new props from state, props, and dispatch. For example:
+ export default connectAdvanced((dispatch, options) => (state, props) => ({
+ thing: state.things[props.thingId],
+ saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)),
+ }))(YourComponent)
+ Access to dispatch is provided to the factory so selectorFactories can bind actionCreators
+ outside of their selector as an optimization. Options passed to connectAdvanced are passed to
+ the selectorFactory, along with displayName and WrappedComponent, as the second argument.
+ Note that selectorFactory is responsible for all caching/memoization of inbound and outbound
+ props. Do not use connectAdvanced directly without memoizing results between calls to your
+ selector, otherwise the Connect component will re-render on every state or props change.
+*/
+selectorFactory) {
+ var _contextTypes, _childContextTypes;
+
+ var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
+ _ref$getDisplayName = _ref.getDisplayName,
+ getDisplayName = _ref$getDisplayName === undefined ? function (name) {
+ return 'ConnectAdvanced(' + name + ')';
+ } : _ref$getDisplayName,
+ _ref$methodName = _ref.methodName,
+ methodName = _ref$methodName === undefined ? 'connectAdvanced' : _ref$methodName,
+ _ref$renderCountProp = _ref.renderCountProp,
+ renderCountProp = _ref$renderCountProp === undefined ? undefined : _ref$renderCountProp,
+ _ref$shouldHandleStat = _ref.shouldHandleStateChanges,
+ shouldHandleStateChanges = _ref$shouldHandleStat === undefined ? true : _ref$shouldHandleStat,
+ _ref$storeKey = _ref.storeKey,
+ storeKey = _ref$storeKey === undefined ? 'store' : _ref$storeKey,
+ _ref$withRef = _ref.withRef,
+ withRef = _ref$withRef === undefined ? false : _ref$withRef,
+ connectOptions = _objectWithoutProperties(_ref, ['getDisplayName', 'methodName', 'renderCountProp', 'shouldHandleStateChanges', 'storeKey', 'withRef']);
+
+ var subscriptionKey = storeKey + 'Subscription';
+ var version = hotReloadingVersion++;
+
+ var contextTypes = (_contextTypes = {}, _contextTypes[storeKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["a" /* storeShape */], _contextTypes[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["b" /* subscriptionShape */], _contextTypes);
+ var childContextTypes = (_childContextTypes = {}, _childContextTypes[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["b" /* subscriptionShape */], _childContextTypes);
+
+ return function wrapWithConnect(WrappedComponent) {
+ __WEBPACK_IMPORTED_MODULE_1_invariant___default.a(typeof WrappedComponent == 'function', 'You must pass a component to the function returned by ' + ('connect. Instead received ' + JSON.stringify(WrappedComponent)));
+
+ var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';
+
+ var displayName = getDisplayName(wrappedComponentName);
+
+ var selectorFactoryOptions = _extends({}, connectOptions, {
+ getDisplayName: getDisplayName,
+ methodName: methodName,
+ renderCountProp: renderCountProp,
+ shouldHandleStateChanges: shouldHandleStateChanges,
+ storeKey: storeKey,
+ withRef: withRef,
+ displayName: displayName,
+ wrappedComponentName: wrappedComponentName,
+ WrappedComponent: WrappedComponent
+ });
+
+ var Connect = function (_Component) {
+ _inherits(Connect, _Component);
+
+ function Connect(props, context) {
+ _classCallCheck(this, Connect);
+
+ var _this = _possibleConstructorReturn(this, _Component.call(this, props, context));
+
+ _this.version = version;
+ _this.state = {};
+ _this.renderCount = 0;
+ _this.store = props[storeKey] || context[storeKey];
+ _this.propsMode = Boolean(props[storeKey]);
+ _this.setWrappedInstance = _this.setWrappedInstance.bind(_this);
+
+ __WEBPACK_IMPORTED_MODULE_1_invariant___default.a(_this.store, 'Could not find "' + storeKey + '" in either the context or props of ' + ('"' + displayName + '". Either wrap the root component in a <Provider>, ') + ('or explicitly pass "' + storeKey + '" as a prop to "' + displayName + '".'));
+
+ _this.initSelector();
+ _this.initSubscription();
+ return _this;
+ }
+
+ Connect.prototype.getChildContext = function getChildContext() {
+ var _ref2;
+
+ // If this component received store from props, its subscription should be transparent
+ // to any descendants receiving store+subscription from context; it passes along
+ // subscription passed to it. Otherwise, it shadows the parent subscription, which allows
+ // Connect to control ordering of notifications to flow top-down.
+ var subscription = this.propsMode ? null : this.subscription;
+ return _ref2 = {}, _ref2[subscriptionKey] = subscription || this.context[subscriptionKey], _ref2;
+ };
+
+ Connect.prototype.componentDidMount = function componentDidMount() {
+ if (!shouldHandleStateChanges) return;
+
+ // componentWillMount fires during server side rendering, but componentDidMount and
+ // componentWillUnmount do not. Because of this, trySubscribe happens during ...didMount.
+ // Otherwise, unsubscription would never take place during SSR, causing a memory leak.
+ // To handle the case where a child component may have triggered a state change by
+ // dispatching an action in its componentWillMount, we have to re-run the select and maybe
+ // re-render.
+ this.subscription.trySubscribe();
+ this.selector.run(this.props);
+ if (this.selector.shouldComponentUpdate) this.forceUpdate();
+ };
+
+ Connect.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
+ this.selector.run(nextProps);
+ };
+
+ Connect.prototype.shouldComponentUpdate = function shouldComponentUpdate() {
+ return this.selector.shouldComponentUpdate;
+ };
+
+ Connect.prototype.componentWillUnmount = function componentWillUnmount() {
+ if (this.subscription) this.subscription.tryUnsubscribe();
+ this.subscription = null;
+ this.notifyNestedSubs = noop;
+ this.store = null;
+ this.selector.run = noop;
+ this.selector.shouldComponentUpdate = false;
+ };
+
+ Connect.prototype.getWrappedInstance = function getWrappedInstance() {
+ __WEBPACK_IMPORTED_MODULE_1_invariant___default.a(withRef, 'To access the wrapped instance, you need to specify ' + ('{ withRef: true } in the options argument of the ' + methodName + '() call.'));
+ return this.wrappedInstance;
+ };
+
+ Connect.prototype.setWrappedInstance = function setWrappedInstance(ref) {
+ this.wrappedInstance = ref;
+ };
+
+ Connect.prototype.initSelector = function initSelector() {
+ var sourceSelector = selectorFactory(this.store.dispatch, selectorFactoryOptions);
+ this.selector = makeSelectorStateful(sourceSelector, this.store);
+ this.selector.run(this.props);
+ };
+
+ Connect.prototype.initSubscription = function initSubscription() {
+ if (!shouldHandleStateChanges) return;
+
+ // parentSub's source should match where store came from: props vs. context. A component
+ // connected to the store via props shouldn't use subscription from context, or vice versa.
+ var parentSub = (this.propsMode ? this.props : this.context)[subscriptionKey];
+ this.subscription = new __WEBPACK_IMPORTED_MODULE_3__utils_Subscription__["a" /* default */](this.store, parentSub, this.onStateChange.bind(this));
+
+ // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in
+ // the middle of the notification loop, where `this.subscription` will then be null. An
+ // extra null check every change can be avoided by copying the method onto `this` and then
+ // replacing it with a no-op on unmount. This can probably be avoided if Subscription's
+ // listeners logic is changed to not call listeners that have been unsubscribed in the
+ // middle of the notification loop.
+ this.notifyNestedSubs = this.subscription.notifyNestedSubs.bind(this.subscription);
+ };
+
+ Connect.prototype.onStateChange = function onStateChange() {
+ this.selector.run(this.props);
+
+ if (!this.selector.shouldComponentUpdate) {
+ this.notifyNestedSubs();
+ } else {
+ this.componentDidUpdate = this.notifyNestedSubsOnComponentDidUpdate;
+ this.setState(dummyState);
+ }
+ };
+
+ Connect.prototype.notifyNestedSubsOnComponentDidUpdate = function notifyNestedSubsOnComponentDidUpdate() {
+ // `componentDidUpdate` is conditionally implemented when `onStateChange` determines it
+ // needs to notify nested subs. Once called, it unimplements itself until further state
+ // changes occur. Doing it this way vs having a permanent `componentDidMount` that does
+ // a boolean check every time avoids an extra method call most of the time, resulting
+ // in some perf boost.
+ this.componentDidUpdate = undefined;
+ this.notifyNestedSubs();
+ };
+
+ Connect.prototype.isSubscribed = function isSubscribed() {
+ return Boolean(this.subscription) && this.subscription.isSubscribed();
+ };
+
+ Connect.prototype.addExtraProps = function addExtraProps(props) {
+ if (!withRef && !renderCountProp && !(this.propsMode && this.subscription)) return props;
+ // make a shallow copy so that fields added don't leak to the original selector.
+ // this is especially important for 'ref' since that's a reference back to the component
+ // instance. a singleton memoized selector would then be holding a reference to the
+ // instance, preventing the instance from being garbage collected, and that would be bad
+ var withExtras = _extends({}, props);
+ if (withRef) withExtras.ref = this.setWrappedInstance;
+ if (renderCountProp) withExtras[renderCountProp] = this.renderCount++;
+ if (this.propsMode && this.subscription) withExtras[subscriptionKey] = this.subscription;
+ return withExtras;
+ };
+
+ Connect.prototype.render = function render() {
+ var selector = this.selector;
+ selector.shouldComponentUpdate = false;
+
+ if (selector.error) {
+ throw selector.error;
+ } else {
+ return __WEBPACK_IMPORTED_MODULE_2_react__["createElement"](WrappedComponent, this.addExtraProps(selector.props));
+ }
+ };
+
+ return Connect;
+ }(__WEBPACK_IMPORTED_MODULE_2_react__["Component"]);
+
+ Connect.WrappedComponent = WrappedComponent;
+ Connect.displayName = displayName;
+ Connect.childContextTypes = childContextTypes;
+ Connect.contextTypes = contextTypes;
+ Connect.propTypes = contextTypes;
+
+ if (process.env.NODE_ENV !== 'production') {
+ Connect.prototype.componentWillUpdate = function componentWillUpdate() {
+ // We are hot reloading!
+ if (this.version !== version) {
+ this.version = version;
+ this.initSelector();
+
+ if (this.subscription) this.subscription.tryUnsubscribe();
+ this.initSubscription();
+ if (shouldHandleStateChanges) this.subscription.trySubscribe();
+ }
+ };
+ }
+
+ return __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics___default.a(Connect, WrappedComponent);
+ };
+}
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))
+
+/***/ }),
+/* 25 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/**
+ * Copyright 2015, Yahoo! Inc.
+ * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
+ */
+
+
+var REACT_STATICS = {
+ childContextTypes: true,
+ contextTypes: true,
+ defaultProps: true,
+ displayName: true,
+ getDefaultProps: true,
+ mixins: true,
+ propTypes: true,
+ type: true
+};
+
+var KNOWN_STATICS = {
+ name: true,
+ length: true,
+ prototype: true,
+ caller: true,
+ arguments: true,
+ arity: true
+};
+
+var isGetOwnPropertySymbolsAvailable = typeof Object.getOwnPropertySymbols === 'function';
+
+module.exports = function hoistNonReactStatics(targetComponent, sourceComponent, customStatics) {
+ if (typeof sourceComponent !== 'string') { // don't hoist over string (html) components
+ var keys = Object.getOwnPropertyNames(sourceComponent);
+
+ /* istanbul ignore else */
+ if (isGetOwnPropertySymbolsAvailable) {
+ keys = keys.concat(Object.getOwnPropertySymbols(sourceComponent));
+ }
+
+ for (var i = 0; i < keys.length; ++i) {
+ if (!REACT_STATICS[keys[i]] && !KNOWN_STATICS[keys[i]] && (!customStatics || !customStatics[keys[i]])) {
+ try {
+ targetComponent[keys[i]] = sourceComponent[keys[i]];
+ } catch (error) {
+
+ }
+ }
+ }
+ }
+
+ return targetComponent;
+};
+
+
+/***/ }),
+/* 26 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ActionTypes; });
+/* harmony export (immutable) */ __webpack_exports__["b"] = createStore;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__ = __webpack_require__(16);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_symbol_observable__ = __webpack_require__(56);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_symbol_observable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_symbol_observable__);
+
+
+
+/**
+ * These are private action types reserved by Redux.
+ * For any unknown actions, you must return the current state.
+ * If the current state is undefined, you must return the initial state.
+ * Do not reference these action types directly in your code.
+ */
+var ActionTypes = {
+ INIT: '@@redux/INIT'
+
+ /**
+ * Creates a Redux store that holds the state tree.
+ * The only way to change the data in the store is to call `dispatch()` on it.
+ *
+ * There should only be a single store in your app. To specify how different
+ * parts of the state tree respond to actions, you may combine several reducers
+ * into a single reducer function by using `combineReducers`.
+ *
+ * @param {Function} reducer A function that returns the next state tree, given
+ * the current state tree and the action to handle.
+ *
+ * @param {any} [preloadedState] The initial state. You may optionally specify it
+ * to hydrate the state from the server in universal apps, or to restore a
+ * previously serialized user session.
+ * If you use `combineReducers` to produce the root reducer function, this must be
+ * an object with the same shape as `combineReducers` keys.
+ *
+ * @param {Function} [enhancer] The store enhancer. You may optionally specify it
+ * to enhance the store with third-party capabilities such as middleware,
+ * time travel, persistence, etc. The only store enhancer that ships with Redux
+ * is `applyMiddleware()`.
+ *
+ * @returns {Store} A Redux store that lets you read the state, dispatch actions
+ * and subscribe to changes.
+ */
+};function createStore(reducer, preloadedState, enhancer) {
+ var _ref2;
+
+ if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {
+ enhancer = preloadedState;
+ preloadedState = undefined;
+ }
+
+ if (typeof enhancer !== 'undefined') {
+ if (typeof enhancer !== 'function') {
+ throw new Error('Expected the enhancer to be a function.');
+ }
+
+ return enhancer(createStore)(reducer, preloadedState);
+ }
+
+ if (typeof reducer !== 'function') {
+ throw new Error('Expected the reducer to be a function.');
+ }
+
+ var currentReducer = reducer;
+ var currentState = preloadedState;
+ var currentListeners = [];
+ var nextListeners = currentListeners;
+ var isDispatching = false;
+
+ function ensureCanMutateNextListeners() {
+ if (nextListeners === currentListeners) {
+ nextListeners = currentListeners.slice();
+ }
+ }
+
+ /**
+ * Reads the state tree managed by the store.
+ *
+ * @returns {any} The current state tree of your application.
+ */
+ function getState() {
+ return currentState;
+ }
+
+ /**
+ * Adds a change listener. It will be called any time an action is dispatched,
+ * and some part of the state tree may potentially have changed. You may then
+ * call `getState()` to read the current state tree inside the callback.
+ *
+ * You may call `dispatch()` from a change listener, with the following
+ * caveats:
+ *
+ * 1. The subscriptions are snapshotted just before every `dispatch()` call.
+ * If you subscribe or unsubscribe while the listeners are being invoked, this
+ * will not have any effect on the `dispatch()` that is currently in progress.
+ * However, the next `dispatch()` call, whether nested or not, will use a more
+ * recent snapshot of the subscription list.
+ *
+ * 2. The listener should not expect to see all state changes, as the state
+ * might have been updated multiple times during a nested `dispatch()` before
+ * the listener is called. It is, however, guaranteed that all subscribers
+ * registered before the `dispatch()` started will be called with the latest
+ * state by the time it exits.
+ *
+ * @param {Function} listener A callback to be invoked on every dispatch.
+ * @returns {Function} A function to remove this change listener.
+ */
+ function subscribe(listener) {
+ if (typeof listener !== 'function') {
+ throw new Error('Expected listener to be a function.');
+ }
+
+ var isSubscribed = true;
+
+ ensureCanMutateNextListeners();
+ nextListeners.push(listener);
+
+ return function unsubscribe() {
+ if (!isSubscribed) {
+ return;
+ }
+
+ isSubscribed = false;
+
+ ensureCanMutateNextListeners();
+ var index = nextListeners.indexOf(listener);
+ nextListeners.splice(index, 1);
+ };
+ }
+
+ /**
+ * Dispatches an action. It is the only way to trigger a state change.
+ *
+ * The `reducer` function, used to create the store, will be called with the
+ * current state tree and the given `action`. Its return value will
+ * be considered the **next** state of the tree, and the change listeners
+ * will be notified.
+ *
+ * The base implementation only supports plain object actions. If you want to
+ * dispatch a Promise, an Observable, a thunk, or something else, you need to
+ * wrap your store creating function into the corresponding middleware. For
+ * example, see the documentation for the `redux-thunk` package. Even the
+ * middleware will eventually dispatch plain object actions using this method.
+ *
+ * @param {Object} action A plain object representing “what changed”. It is
+ * a good idea to keep actions serializable so you can record and replay user
+ * sessions, or use the time travelling `redux-devtools`. An action must have
+ * a `type` property which may not be `undefined`. It is a good idea to use
+ * string constants for action types.
+ *
+ * @returns {Object} For convenience, the same action object you dispatched.
+ *
+ * Note that, if you use a custom middleware, it may wrap `dispatch()` to
+ * return something else (for example, a Promise you can await).
+ */
+ function dispatch(action) {
+ if (!__WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__["a" /* default */](action)) {
+ throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.');
+ }
+
+ if (typeof action.type === 'undefined') {
+ throw new Error('Actions may not have an undefined "type" property. ' + 'Have you misspelled a constant?');
+ }
+
+ if (isDispatching) {
+ throw new Error('Reducers may not dispatch actions.');
+ }
+
+ try {
+ isDispatching = true;
+ currentState = currentReducer(currentState, action);
+ } finally {
+ isDispatching = false;
+ }
+
+ var listeners = currentListeners = nextListeners;
+ for (var i = 0; i < listeners.length; i++) {
+ var listener = listeners[i];
+ listener();
+ }
+
+ return action;
+ }
+
+ /**
+ * Replaces the reducer currently used by the store to calculate the state.
+ *
+ * You might need this if your app implements code splitting and you want to
+ * load some of the reducers dynamically. You might also need this if you
+ * implement a hot reloading mechanism for Redux.
+ *
+ * @param {Function} nextReducer The reducer for the store to use instead.
+ * @returns {void}
+ */
+ function replaceReducer(nextReducer) {
+ if (typeof nextReducer !== 'function') {
+ throw new Error('Expected the nextReducer to be a function.');
+ }
+
+ currentReducer = nextReducer;
+ dispatch({ type: ActionTypes.INIT });
+ }
+
+ /**
+ * Interoperability point for observable/reactive libraries.
+ * @returns {observable} A minimal observable of state changes.
+ * For more information, see the observable proposal:
+ * https://github.com/tc39/proposal-observable
+ */
+ function observable() {
+ var _ref;
+
+ var outerSubscribe = subscribe;
+ return _ref = {
+ /**
+ * The minimal observable subscription method.
+ * @param {Object} observer Any object that can be used as an observer.
+ * The observer object should have a `next` method.
+ * @returns {subscription} An object with an `unsubscribe` method that can
+ * be used to unsubscribe the observable from the store, and prevent further
+ * emission of values from the observable.
+ */
+ subscribe: function subscribe(observer) {
+ if (typeof observer !== 'object') {
+ throw new TypeError('Expected the observer to be an object.');
+ }
+
+ function observeState() {
+ if (observer.next) {
+ observer.next(getState());
+ }
+ }
+
+ observeState();
+ var unsubscribe = outerSubscribe(observeState);
+ return { unsubscribe: unsubscribe };
+ }
+ }, _ref[__WEBPACK_IMPORTED_MODULE_1_symbol_observable___default.a] = function () {
+ return this;
+ }, _ref;
+ }
+
+ // When a store is created, an "INIT" action is dispatched so that every
+ // reducer returns their initial state. This effectively populates
+ // the initial state tree.
+ dispatch({ type: ActionTypes.INIT });
+
+ return _ref2 = {
+ dispatch: dispatch,
+ subscribe: subscribe,
+ getState: getState,
+ replaceReducer: replaceReducer
+ }, _ref2[__WEBPACK_IMPORTED_MODULE_1_symbol_observable___default.a] = observable, _ref2;
+}
+
+/***/ }),
+/* 27 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__root_js__ = __webpack_require__(49);
+
+
+/** Built-in value references. */
+var Symbol = __WEBPACK_IMPORTED_MODULE_0__root_js__["a" /* default */].Symbol;
+
+/* harmony default export */ __webpack_exports__["a"] = (Symbol);
+
+
+/***/ }),
+/* 28 */
+/***/ (function(module, exports) {
+
+var g;
+
+// This works in non-strict mode
+g = (function() {
+ return this;
+})();
+
+try {
+ // This works if eval is allowed (see CSP)
+ g = g || Function("return this")() || (1,eval)("this");
+} catch(e) {
+ // This works if the window reference is available
+ if(typeof window === "object")
+ g = window;
+}
+
+// g can still be undefined, but nothing to do about it...
+// We return undefined, instead of nothing here, so it's
+// easier to handle this case. if(!global) { ...}
+
+module.exports = g;
+
+
+/***/ }),
+/* 29 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (immutable) */ __webpack_exports__["a"] = warning;
+/**
+ * Prints a warning in the console if it exists.
+ *
+ * @param {String} message The warning message.
+ * @returns {void}
+ */
+function warning(message) {
+ /* eslint-disable no-console */
+ if (typeof console !== 'undefined' && typeof console.error === 'function') {
+ console.error(message);
+ }
+ /* eslint-enable no-console */
+ try {
+ // This error was thrown as a convenience so that if you enable
+ // "break on all exceptions" in your console,
+ // it would pause the execution at this line.
+ throw new Error(message);
+ /* eslint-disable no-empty */
+ } catch (e) {}
+ /* eslint-enable no-empty */
+}
+
+/***/ }),
+/* 30 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (immutable) */ __webpack_exports__["a"] = compose;
+/**
+ * Composes single-argument functions from right to left. The rightmost
+ * function can take multiple arguments as it provides the signature for
+ * the resulting composite function.
+ *
+ * @param {...Function} funcs The functions to compose.
+ * @returns {Function} A function obtained by composing the argument functions
+ * from right to left. For example, compose(f, g, h) is identical to doing
+ * (...args) => f(g(h(...args))).
+ */
+
+function compose() {
+ for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) {
+ funcs[_key] = arguments[_key];
+ }
+
+ if (funcs.length === 0) {
+ return function (arg) {
+ return arg;
+ };
+ }
+
+ if (funcs.length === 1) {
+ return funcs[0];
+ }
+
+ return funcs.reduce(function (a, b) {
+ return function () {
+ return a(b.apply(undefined, arguments));
+ };
+ });
+}
+
+/***/ }),
+/* 31 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["a"] = wrapMapToPropsConstant;
+/* unused harmony export getDependsOnOwnProps */
+/* harmony export (immutable) */ __webpack_exports__["b"] = wrapMapToPropsFunc;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__ = __webpack_require__(32);
+
+
+function wrapMapToPropsConstant(getConstant) {
+ return function initConstantSelector(dispatch, options) {
+ var constant = getConstant(dispatch, options);
+
+ function constantSelector() {
+ return constant;
+ }
+ constantSelector.dependsOnOwnProps = false;
+ return constantSelector;
+ };
+}
+
+// dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args
+// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine
+// whether mapToProps needs to be invoked when props have changed.
+//
+// A length of one signals that mapToProps does not depend on props from the parent component.
+// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and
+// therefore not reporting its length accurately..
+function getDependsOnOwnProps(mapToProps) {
+ return mapToProps.dependsOnOwnProps !== null && mapToProps.dependsOnOwnProps !== undefined ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1;
+}
+
+// Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction,
+// this function wraps mapToProps in a proxy function which does several things:
+//
+// * Detects whether the mapToProps function being called depends on props, which
+// is used by selectorFactory to decide if it should reinvoke on props changes.
+//
+// * On first call, handles mapToProps if returns another function, and treats that
+// new function as the true mapToProps for subsequent calls.
+//
+// * On first call, verifies the first result is a plain object, in order to warn
+// the developer that their mapToProps function is not returning a valid result.
+//
+function wrapMapToPropsFunc(mapToProps, methodName) {
+ return function initProxySelector(dispatch, _ref) {
+ var displayName = _ref.displayName;
+
+ var proxy = function mapToPropsProxy(stateOrDispatch, ownProps) {
+ return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch);
+ };
+
+ // allow detectFactoryAndVerify to get ownProps
+ proxy.dependsOnOwnProps = true;
+
+ proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) {
+ proxy.mapToProps = mapToProps;
+ proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps);
+ var props = proxy(stateOrDispatch, ownProps);
+
+ if (typeof props === 'function') {
+ proxy.mapToProps = props;
+ proxy.dependsOnOwnProps = getDependsOnOwnProps(props);
+ props = proxy(stateOrDispatch, ownProps);
+ }
+
+ if (process.env.NODE_ENV !== 'production') __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__["a" /* default */](props, displayName, methodName);
+
+ return props;
+ };
+
+ return proxy;
+ };
+}
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))
+
+/***/ }),
+/* 32 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (immutable) */ __webpack_exports__["a"] = verifyPlainObject;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__ = __webpack_require__(16);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__warning__ = __webpack_require__(14);
+
+
+
+function verifyPlainObject(value, displayName, methodName) {
+ if (!__WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__["a" /* default */](value)) {
+ __WEBPACK_IMPORTED_MODULE_1__warning__["a" /* default */](methodName + '() in ' + displayName + ' must return a plain object. Instead received ' + value + '.');
+ }
+}
+
+/***/ }),
+/* 33 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _reactRedux = __webpack_require__(6);
+
+var _actions = __webpack_require__(7);
+
+var _Link = __webpack_require__(17);
+
+var _Link2 = _interopRequireDefault(_Link);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var mapStateToProps = function mapStateToProps(state, ownProps) {
+ return {};
+};
+
+var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
+ return {
+ onClick: function onClick() {
+ switch (ownProps.file.type) {
+ case 'audio':
+ dispatch((0, _actions.audioPlayFile)(ownProps.file));
+ break;
+ }
+ }
+ };
+};
+
+var FileLink = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_Link2.default);
+
+exports.default = FileLink;
+
+/***/ }),
+/* 34 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__ = __webpack_require__(82);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "BrowserRouter", function() { return __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__HashRouter__ = __webpack_require__(95);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "HashRouter", function() { return __WEBPACK_IMPORTED_MODULE_1__HashRouter__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Link__ = __webpack_require__(37);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Link", function() { return __WEBPACK_IMPORTED_MODULE_2__Link__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__MemoryRouter__ = __webpack_require__(97);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MemoryRouter", function() { return __WEBPACK_IMPORTED_MODULE_3__MemoryRouter__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__NavLink__ = __webpack_require__(98);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavLink", function() { return __WEBPACK_IMPORTED_MODULE_4__NavLink__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__Prompt__ = __webpack_require__(99);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Prompt", function() { return __WEBPACK_IMPORTED_MODULE_5__Prompt__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Redirect__ = __webpack_require__(100);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Redirect", function() { return __WEBPACK_IMPORTED_MODULE_6__Redirect__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__Route__ = __webpack_require__(101);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Route", function() { return __WEBPACK_IMPORTED_MODULE_7__Route__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Router__ = __webpack_require__(102);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Router", function() { return __WEBPACK_IMPORTED_MODULE_8__Router__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__StaticRouter__ = __webpack_require__(103);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "StaticRouter", function() { return __WEBPACK_IMPORTED_MODULE_9__StaticRouter__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Switch__ = __webpack_require__(104);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Switch", function() { return __WEBPACK_IMPORTED_MODULE_10__Switch__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__matchPath__ = __webpack_require__(105);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "matchPath", function() { return __WEBPACK_IMPORTED_MODULE_11__matchPath__["a"]; });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__withRouter__ = __webpack_require__(106);
+/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "withRouter", function() { return __WEBPACK_IMPORTED_MODULE_12__withRouter__["a"]; });
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/***/ }),
+/* 35 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -2389,16 +3582,16 @@ var isExtraneousPopstateEvent = exports.isExtraneousPopstateEvent = function isE
};
/***/ }),
-/* 19 */
+/* 36 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(6);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(8);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_warning__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__matchPath__ = __webpack_require__(16);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__matchPath__ = __webpack_require__(21);
var _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; };
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -2532,12 +3725,12 @@ Route.childContextTypes = {
/* harmony default export */ __webpack_exports__["a"] = (Route);
/***/ }),
-/* 20 */
+/* 37 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
var _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; };
@@ -2634,212 +3827,187 @@ Link.contextTypes = {
/* harmony default export */ __webpack_exports__["a"] = (Link);
/***/ }),
-/* 21 */,
-/* 22 */
+/* 38 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var _preact = __webpack_require__(3);
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
-var _redux = __webpack_require__(69);
+var _redux = __webpack_require__(15);
-var _reactRedux = __webpack_require__(94);
+var _index = __webpack_require__(111);
-var _App = __webpack_require__(23);
+var _index2 = _interopRequireDefault(_index);
-var _App2 = _interopRequireDefault(_App);
+var _index3 = __webpack_require__(7);
-var _index = __webpack_require__(104);
+var _client = __webpack_require__(5);
-var _index2 = _interopRequireDefault(_index);
+var _client2 = _interopRequireDefault(_client);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-var store = (0, _redux.createStore)(_index2.default);
+var store = (0, _redux.createStore)(_index2.default, {
+ currentTask: {
+ content: null,
+ style: null,
+ alpha: 0.001
+ },
+ tasks: [],
+ folders: {
+ openFolders: [],
+ folders: []
+ },
+ audioPlayer: {
+ file: null
+ }
+});
-var app = (0, _preact.h)(
- _reactRedux.Provider,
- { store: store },
- (0, _preact.h)(_App2.default, null)
-);
+_client2.default.folder.index().then(function (folders) {
+ store.dispatch((0, _index3.loadFolders)(folders));
+ try {
+ var openFolders = JSON.parse(localStorage['openFolders']);
+ store.dispatch((0, _index3.loadOpenFolders)(openFolders));
+ openFolders.forEach(function (folder_id) {
+ _client2.default.file.index({ folder_id: folder_id }).then(function (files) {
+ store.dispatch((0, _index3.loadFiles)(files));
+ });
+ });
+ } catch (e) {
+ console.log('error opening folders');
+ }
+});
+_client2.default.task.index().then(function (tasks) {
+ store.dispatch((0, _index3.loadTasks)(tasks));
+});
-(0, _preact.render)(app, document.getElementById('container'));
+exports.default = store;
/***/ }),
-/* 23 */
+/* 39 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _preact = __webpack_require__(3);
-
-var _util = __webpack_require__(24);
-
-var _Header = __webpack_require__(54);
+var _preact = __webpack_require__(0);
-var _Header2 = _interopRequireDefault(_Header);
+var _reactRedux = __webpack_require__(6);
-var _Browser = __webpack_require__(61);
+var _App = __webpack_require__(67);
-var _Browser2 = _interopRequireDefault(_Browser);
+var _App2 = _interopRequireDefault(_App);
-var _Tasks = __webpack_require__(59);
+var _store = __webpack_require__(38);
-var _Tasks2 = _interopRequireDefault(_Tasks);
+var _store2 = _interopRequireDefault(_store);
-var _client = __webpack_require__(8);
+var _socket = __webpack_require__(116);
-var _client2 = _interopRequireDefault(_client);
+var _socket2 = _interopRequireDefault(_socket);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-// import db from '../db'
-
-var socket = io(window.location.origin);
-
-socket.on('connect', function (data) {
- console.log('connected');
-});
-socket.on('worker', function (data) {
- console.log('worker connected', data);
-});
-socket.on('processed', function (data) {
- console.log('processed', data);
-});
-
-var App = function App() {
- return (0, _preact.h)(
- 'div',
- null,
- (0, _preact.h)(_Header2.default, null),
- (0, _preact.h)(
- 'div',
- { 'class': 'columns' },
- (0, _preact.h)(_Browser2.default, null),
- (0, _preact.h)(_Tasks2.default, null)
- )
- );
-};
+var app = (0, _preact.h)(
+ _reactRedux.Provider,
+ { store: _store2.default },
+ (0, _preact.h)(_App2.default, null)
+);
-exports.default = App;
+(0, _preact.render)(app, document.getElementById('container'));
/***/ }),
-/* 24 */
-/***/ (function(module, exports, __webpack_require__) {
+/* 40 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
+/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["a"] = createProvider;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_PropTypes__ = __webpack_require__(23);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_warning__ = __webpack_require__(14);
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-var isIphone = navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i);
-var isIpad = navigator.userAgent.match(/iPad/i);
-var isAndroid = navigator.userAgent.match(/Android/i);
-var isMobile = isIphone || isIpad || isAndroid;
-var isDesktop = !isMobile;
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-document.body.classList.add(isMobile ? 'mobile' : 'desktop');
-var browser = { isIphone: isIphone, isIpad: isIpad, isAndroid: isAndroid, isMobile: isMobile, isDesktop: isDesktop };
-function clamp(n, a, b) {
- return n < a ? a : n < b ? n : b;
-}
-function mod(n, m) {
- return n - m * Math.floor(n / m);
-}
-function choice(a) {
- return a[randint(a.length)];
-}
-function randint(n) {
- return Math.floor(Math.random() * n);
-}
-function randrange(a, b) {
- return Math.random() * (b - a) + a;
-}
-function firstTouch(f) {
- return function (e) {
- e.preventDefault();f(e.touches[0]);
- };
-}
-exports.browser = browser;
-exports.clamp = clamp;
-exports.mod = mod;
-exports.choice = choice;
-exports.randint = randint;
-exports.randrange = randrange;
-exports.firstTouch = firstTouch;
-/***/ }),
-/* 25 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createBrowserHistory__ = __webpack_require__(29);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createBrowserHistory___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_history_createBrowserHistory__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_router__ = __webpack_require__(2);
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+var didWarnAboutReceivingStore = false;
+function warnAboutReceivingStore() {
+ if (didWarnAboutReceivingStore) {
+ return;
+ }
+ didWarnAboutReceivingStore = true;
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+ __WEBPACK_IMPORTED_MODULE_3__utils_warning__["a" /* default */]('<Provider> does not support changing `store` on the fly. ' + 'It is most likely that you see this error because you updated to ' + 'Redux 2.x and React Redux 2.x which no longer hot reload reducers ' + 'automatically. See https://github.com/reactjs/react-redux/releases/' + 'tag/v2.0.0 for the migration instructions.');
+}
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+function createProvider() {
+ var _Provider$childContex;
+ var storeKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'store';
+ var subKey = arguments[1];
+ var subscriptionKey = subKey || storeKey + 'Subscription';
+ var Provider = function (_Component) {
+ _inherits(Provider, _Component);
+ Provider.prototype.getChildContext = function getChildContext() {
+ var _ref;
+ return _ref = {}, _ref[storeKey] = this[storeKey], _ref[subscriptionKey] = null, _ref;
+ };
-/**
- * The public API for a <Router> that uses HTML5 history.
- */
+ function Provider(props, context) {
+ _classCallCheck(this, Provider);
-var BrowserRouter = function (_React$Component) {
- _inherits(BrowserRouter, _React$Component);
+ var _this = _possibleConstructorReturn(this, _Component.call(this, props, context));
- function BrowserRouter() {
- var _temp, _this, _ret;
+ _this[storeKey] = props.store;
+ return _this;
+ }
- _classCallCheck(this, BrowserRouter);
+ Provider.prototype.render = function render() {
+ return __WEBPACK_IMPORTED_MODULE_0_react__["Children"].only(this.props.children);
+ };
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
- args[_key] = arguments[_key];
- }
+ return Provider;
+ }(__WEBPACK_IMPORTED_MODULE_0_react__["Component"]);
- return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.history = __WEBPACK_IMPORTED_MODULE_2_history_createBrowserHistory___default.a(_this.props), _temp), _possibleConstructorReturn(_this, _ret);
+ if (process.env.NODE_ENV !== 'production') {
+ Provider.prototype.componentWillReceiveProps = function (nextProps) {
+ if (this[storeKey] !== nextProps.store) {
+ warnAboutReceivingStore();
+ }
+ };
}
- BrowserRouter.prototype.render = function render() {
- return __WEBPACK_IMPORTED_MODULE_0_react__["default"].createElement(__WEBPACK_IMPORTED_MODULE_3_react_router__["e" /* Router */], { history: this.history, children: this.props.children });
+ Provider.propTypes = {
+ store: __WEBPACK_IMPORTED_MODULE_2__utils_PropTypes__["a" /* storeShape */].isRequired,
+ children: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.element.isRequired
};
+ Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[storeKey] = __WEBPACK_IMPORTED_MODULE_2__utils_PropTypes__["a" /* storeShape */].isRequired, _Provider$childContex[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_2__utils_PropTypes__["b" /* subscriptionShape */], _Provider$childContex);
+ Provider.displayName = 'Provider';
- return BrowserRouter;
-}(__WEBPACK_IMPORTED_MODULE_0_react__["default"].Component);
-
-BrowserRouter.propTypes = {
- basename: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.string,
- forceRefresh: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.bool,
- getUserConfirmation: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func,
- keyLength: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.number,
- children: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.node
-};
-
+ return Provider;
+}
-/* harmony default export */ __webpack_exports__["a"] = (BrowserRouter);
+/* harmony default export */ __webpack_exports__["b"] = (createProvider());
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))
/***/ }),
-/* 26 */
+/* 41 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -2854,12 +4022,12 @@ BrowserRouter.propTypes = {
-var emptyFunction = __webpack_require__(10);
-var invariant = __webpack_require__(11);
-var warning = __webpack_require__(17);
+var emptyFunction = __webpack_require__(11);
+var invariant = __webpack_require__(12);
+var warning = __webpack_require__(22);
-var ReactPropTypesSecret = __webpack_require__(12);
-var checkPropTypes = __webpack_require__(27);
+var ReactPropTypesSecret = __webpack_require__(13);
+var checkPropTypes = __webpack_require__(42);
module.exports = function(isValidElement, throwOnDirectAccess) {
/* global Symbol */
@@ -3356,10 +4524,10 @@ module.exports = function(isValidElement, throwOnDirectAccess) {
return ReactPropTypes;
};
-/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))
/***/ }),
-/* 27 */
+/* 42 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -3375,9 +4543,9 @@ module.exports = function(isValidElement, throwOnDirectAccess) {
if (process.env.NODE_ENV !== 'production') {
- var invariant = __webpack_require__(11);
- var warning = __webpack_require__(17);
- var ReactPropTypesSecret = __webpack_require__(12);
+ var invariant = __webpack_require__(12);
+ var warning = __webpack_require__(22);
+ var ReactPropTypesSecret = __webpack_require__(13);
var loggedTypeFailures = {};
}
@@ -3425,10 +4593,10 @@ function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
module.exports = checkPropTypes;
-/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))
/***/ }),
-/* 28 */
+/* 43 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -3443,9 +4611,9 @@ module.exports = checkPropTypes;
-var emptyFunction = __webpack_require__(10);
-var invariant = __webpack_require__(11);
-var ReactPropTypesSecret = __webpack_require__(12);
+var emptyFunction = __webpack_require__(11);
+var invariant = __webpack_require__(12);
+var ReactPropTypesSecret = __webpack_require__(13);
module.exports = function() {
function shim(props, propName, componentName, location, propFullName, secret) {
@@ -3494,7 +4662,2202 @@ module.exports = function() {
/***/ }),
-/* 29 */
+/* 44 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Subscription; });
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+// encapsulates the subscription logic for connecting a component to the redux store, as
+// well as nesting subscriptions of descendant components, so that we can ensure the
+// ancestor components re-render before descendants
+
+var CLEARED = null;
+var nullListeners = {
+ notify: function notify() {}
+};
+
+function createListenerCollection() {
+ // the current/next pattern is copied from redux's createStore code.
+ // TODO: refactor+expose that code to be reusable here?
+ var current = [];
+ var next = [];
+
+ return {
+ clear: function clear() {
+ next = CLEARED;
+ current = CLEARED;
+ },
+ notify: function notify() {
+ var listeners = current = next;
+ for (var i = 0; i < listeners.length; i++) {
+ listeners[i]();
+ }
+ },
+ subscribe: function subscribe(listener) {
+ var isSubscribed = true;
+ if (next === current) next = current.slice();
+ next.push(listener);
+
+ return function unsubscribe() {
+ if (!isSubscribed || current === CLEARED) return;
+ isSubscribed = false;
+
+ if (next === current) next = current.slice();
+ next.splice(next.indexOf(listener), 1);
+ };
+ }
+ };
+}
+
+var Subscription = function () {
+ function Subscription(store, parentSub, onStateChange) {
+ _classCallCheck(this, Subscription);
+
+ this.store = store;
+ this.parentSub = parentSub;
+ this.onStateChange = onStateChange;
+ this.unsubscribe = null;
+ this.listeners = nullListeners;
+ }
+
+ Subscription.prototype.addNestedSub = function addNestedSub(listener) {
+ this.trySubscribe();
+ return this.listeners.subscribe(listener);
+ };
+
+ Subscription.prototype.notifyNestedSubs = function notifyNestedSubs() {
+ this.listeners.notify();
+ };
+
+ Subscription.prototype.isSubscribed = function isSubscribed() {
+ return Boolean(this.unsubscribe);
+ };
+
+ Subscription.prototype.trySubscribe = function trySubscribe() {
+ if (!this.unsubscribe) {
+ this.unsubscribe = this.parentSub ? this.parentSub.addNestedSub(this.onStateChange) : this.store.subscribe(this.onStateChange);
+
+ this.listeners = createListenerCollection();
+ }
+ };
+
+ Subscription.prototype.tryUnsubscribe = function tryUnsubscribe() {
+ if (this.unsubscribe) {
+ this.unsubscribe();
+ this.unsubscribe = null;
+ this.listeners.clear();
+ this.listeners = nullListeners;
+ }
+ };
+
+ return Subscription;
+}();
+
+
+
+/***/ }),
+/* 45 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* unused harmony export createConnect */
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_connectAdvanced__ = __webpack_require__(24);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__utils_shallowEqual__ = __webpack_require__(46);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mapDispatchToProps__ = __webpack_require__(47);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mapStateToProps__ = __webpack_require__(63);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mergeProps__ = __webpack_require__(64);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__selectorFactory__ = __webpack_require__(65);
+var _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; };
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+
+
+
+
+
+
+
+/*
+ connect is a facade over connectAdvanced. It turns its args into a compatible
+ selectorFactory, which has the signature:
+
+ (dispatch, options) => (nextState, nextOwnProps) => nextFinalProps
+
+ connect passes its args to connectAdvanced as options, which will in turn pass them to
+ selectorFactory each time a Connect component instance is instantiated or hot reloaded.
+
+ selectorFactory returns a final props selector from its mapStateToProps,
+ mapStateToPropsFactories, mapDispatchToProps, mapDispatchToPropsFactories, mergeProps,
+ mergePropsFactories, and pure args.
+
+ The resulting final props selector is called by the Connect component instance whenever
+ it receives new props or store state.
+ */
+
+function match(arg, factories, name) {
+ for (var i = factories.length - 1; i >= 0; i--) {
+ var result = factories[i](arg);
+ if (result) return result;
+ }
+
+ return function (dispatch, options) {
+ throw new Error('Invalid value of type ' + typeof arg + ' for ' + name + ' argument when connecting component ' + options.wrappedComponentName + '.');
+ };
+}
+
+function strictEqual(a, b) {
+ return a === b;
+}
+
+// createConnect with default args builds the 'official' connect behavior. Calling it with
+// different options opens up some testing and extensibility scenarios
+function createConnect() {
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
+ _ref$connectHOC = _ref.connectHOC,
+ connectHOC = _ref$connectHOC === undefined ? __WEBPACK_IMPORTED_MODULE_0__components_connectAdvanced__["a" /* default */] : _ref$connectHOC,
+ _ref$mapStateToPropsF = _ref.mapStateToPropsFactories,
+ mapStateToPropsFactories = _ref$mapStateToPropsF === undefined ? __WEBPACK_IMPORTED_MODULE_3__mapStateToProps__["a" /* default */] : _ref$mapStateToPropsF,
+ _ref$mapDispatchToPro = _ref.mapDispatchToPropsFactories,
+ mapDispatchToPropsFactories = _ref$mapDispatchToPro === undefined ? __WEBPACK_IMPORTED_MODULE_2__mapDispatchToProps__["a" /* default */] : _ref$mapDispatchToPro,
+ _ref$mergePropsFactor = _ref.mergePropsFactories,
+ mergePropsFactories = _ref$mergePropsFactor === undefined ? __WEBPACK_IMPORTED_MODULE_4__mergeProps__["a" /* default */] : _ref$mergePropsFactor,
+ _ref$selectorFactory = _ref.selectorFactory,
+ selectorFactory = _ref$selectorFactory === undefined ? __WEBPACK_IMPORTED_MODULE_5__selectorFactory__["a" /* default */] : _ref$selectorFactory;
+
+ return function connect(mapStateToProps, mapDispatchToProps, mergeProps) {
+ var _ref2 = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
+ _ref2$pure = _ref2.pure,
+ pure = _ref2$pure === undefined ? true : _ref2$pure,
+ _ref2$areStatesEqual = _ref2.areStatesEqual,
+ areStatesEqual = _ref2$areStatesEqual === undefined ? strictEqual : _ref2$areStatesEqual,
+ _ref2$areOwnPropsEqua = _ref2.areOwnPropsEqual,
+ areOwnPropsEqual = _ref2$areOwnPropsEqua === undefined ? __WEBPACK_IMPORTED_MODULE_1__utils_shallowEqual__["a" /* default */] : _ref2$areOwnPropsEqua,
+ _ref2$areStatePropsEq = _ref2.areStatePropsEqual,
+ areStatePropsEqual = _ref2$areStatePropsEq === undefined ? __WEBPACK_IMPORTED_MODULE_1__utils_shallowEqual__["a" /* default */] : _ref2$areStatePropsEq,
+ _ref2$areMergedPropsE = _ref2.areMergedPropsEqual,
+ areMergedPropsEqual = _ref2$areMergedPropsE === undefined ? __WEBPACK_IMPORTED_MODULE_1__utils_shallowEqual__["a" /* default */] : _ref2$areMergedPropsE,
+ extraOptions = _objectWithoutProperties(_ref2, ['pure', 'areStatesEqual', 'areOwnPropsEqual', 'areStatePropsEqual', 'areMergedPropsEqual']);
+
+ var initMapStateToProps = match(mapStateToProps, mapStateToPropsFactories, 'mapStateToProps');
+ var initMapDispatchToProps = match(mapDispatchToProps, mapDispatchToPropsFactories, 'mapDispatchToProps');
+ var initMergeProps = match(mergeProps, mergePropsFactories, 'mergeProps');
+
+ return connectHOC(selectorFactory, _extends({
+ // used in error messages
+ methodName: 'connect',
+
+ // used to compute Connect's displayName from the wrapped component's displayName.
+ getDisplayName: function getDisplayName(name) {
+ return 'Connect(' + name + ')';
+ },
+
+ // if mapStateToProps is falsy, the Connect component doesn't subscribe to store state changes
+ shouldHandleStateChanges: Boolean(mapStateToProps),
+
+ // passed through to selectorFactory
+ initMapStateToProps: initMapStateToProps,
+ initMapDispatchToProps: initMapDispatchToProps,
+ initMergeProps: initMergeProps,
+ pure: pure,
+ areStatesEqual: areStatesEqual,
+ areOwnPropsEqual: areOwnPropsEqual,
+ areStatePropsEqual: areStatePropsEqual,
+ areMergedPropsEqual: areMergedPropsEqual
+
+ }, extraOptions));
+ };
+}
+
+/* harmony default export */ __webpack_exports__["a"] = (createConnect());
+
+/***/ }),
+/* 46 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (immutable) */ __webpack_exports__["a"] = shallowEqual;
+var hasOwn = Object.prototype.hasOwnProperty;
+
+function is(x, y) {
+ if (x === y) {
+ return x !== 0 || y !== 0 || 1 / x === 1 / y;
+ } else {
+ return x !== x && y !== y;
+ }
+}
+
+function shallowEqual(objA, objB) {
+ if (is(objA, objB)) return true;
+
+ if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
+ return false;
+ }
+
+ var keysA = Object.keys(objA);
+ var keysB = Object.keys(objB);
+
+ if (keysA.length !== keysB.length) return false;
+
+ for (var i = 0; i < keysA.length; i++) {
+ if (!hasOwn.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
+ return false;
+ }
+ }
+
+ return true;
+}
+
+/***/ }),
+/* 47 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* unused harmony export whenMapDispatchToPropsIsFunction */
+/* unused harmony export whenMapDispatchToPropsIsMissing */
+/* unused harmony export whenMapDispatchToPropsIsObject */
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_redux__ = __webpack_require__(15);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__wrapMapToProps__ = __webpack_require__(31);
+
+
+
+function whenMapDispatchToPropsIsFunction(mapDispatchToProps) {
+ return typeof mapDispatchToProps === 'function' ? __WEBPACK_IMPORTED_MODULE_1__wrapMapToProps__["b" /* wrapMapToPropsFunc */](mapDispatchToProps, 'mapDispatchToProps') : undefined;
+}
+
+function whenMapDispatchToPropsIsMissing(mapDispatchToProps) {
+ return !mapDispatchToProps ? __WEBPACK_IMPORTED_MODULE_1__wrapMapToProps__["a" /* wrapMapToPropsConstant */](function (dispatch) {
+ return { dispatch: dispatch };
+ }) : undefined;
+}
+
+function whenMapDispatchToPropsIsObject(mapDispatchToProps) {
+ return mapDispatchToProps && typeof mapDispatchToProps === 'object' ? __WEBPACK_IMPORTED_MODULE_1__wrapMapToProps__["a" /* wrapMapToPropsConstant */](function (dispatch) {
+ return __WEBPACK_IMPORTED_MODULE_0_redux__["bindActionCreators"](mapDispatchToProps, dispatch);
+ }) : undefined;
+}
+
+/* harmony default export */ __webpack_exports__["a"] = ([whenMapDispatchToPropsIsFunction, whenMapDispatchToPropsIsMissing, whenMapDispatchToPropsIsObject]);
+
+/***/ }),
+/* 48 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Symbol_js__ = __webpack_require__(27);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getRawTag_js__ = __webpack_require__(51);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__objectToString_js__ = __webpack_require__(52);
+
+
+
+
+/** `Object#toString` result references. */
+var nullTag = '[object Null]',
+ undefinedTag = '[object Undefined]';
+
+/** Built-in value references. */
+var symToStringTag = __WEBPACK_IMPORTED_MODULE_0__Symbol_js__["a" /* default */] ? __WEBPACK_IMPORTED_MODULE_0__Symbol_js__["a" /* default */].toStringTag : undefined;
+
+/**
+ * The base implementation of `getTag` without fallbacks for buggy environments.
+ *
+ * @private
+ * @param {*} value The value to query.
+ * @returns {string} Returns the `toStringTag`.
+ */
+function baseGetTag(value) {
+ if (value == null) {
+ return value === undefined ? undefinedTag : nullTag;
+ }
+ return (symToStringTag && symToStringTag in Object(value))
+ ? __WEBPACK_IMPORTED_MODULE_1__getRawTag_js__["a" /* default */](value)
+ : __WEBPACK_IMPORTED_MODULE_2__objectToString_js__["a" /* default */](value);
+}
+
+/* harmony default export */ __webpack_exports__["a"] = (baseGetTag);
+
+
+/***/ }),
+/* 49 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__freeGlobal_js__ = __webpack_require__(50);
+
+
+/** Detect free variable `self`. */
+var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
+
+/** Used as a reference to the global object. */
+var root = __WEBPACK_IMPORTED_MODULE_0__freeGlobal_js__["a" /* default */] || freeSelf || Function('return this')();
+
+/* harmony default export */ __webpack_exports__["a"] = (root);
+
+
+/***/ }),
+/* 50 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
+var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
+
+/* harmony default export */ __webpack_exports__["a"] = (freeGlobal);
+
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(28)))
+
+/***/ }),
+/* 51 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Symbol_js__ = __webpack_require__(27);
+
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Used to resolve the
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
+ * of values.
+ */
+var nativeObjectToString = objectProto.toString;
+
+/** Built-in value references. */
+var symToStringTag = __WEBPACK_IMPORTED_MODULE_0__Symbol_js__["a" /* default */] ? __WEBPACK_IMPORTED_MODULE_0__Symbol_js__["a" /* default */].toStringTag : undefined;
+
+/**
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
+ *
+ * @private
+ * @param {*} value The value to query.
+ * @returns {string} Returns the raw `toStringTag`.
+ */
+function getRawTag(value) {
+ var isOwn = hasOwnProperty.call(value, symToStringTag),
+ tag = value[symToStringTag];
+
+ try {
+ value[symToStringTag] = undefined;
+ var unmasked = true;
+ } catch (e) {}
+
+ var result = nativeObjectToString.call(value);
+ if (unmasked) {
+ if (isOwn) {
+ value[symToStringTag] = tag;
+ } else {
+ delete value[symToStringTag];
+ }
+ }
+ return result;
+}
+
+/* harmony default export */ __webpack_exports__["a"] = (getRawTag);
+
+
+/***/ }),
+/* 52 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/**
+ * Used to resolve the
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
+ * of values.
+ */
+var nativeObjectToString = objectProto.toString;
+
+/**
+ * Converts `value` to a string using `Object.prototype.toString`.
+ *
+ * @private
+ * @param {*} value The value to convert.
+ * @returns {string} Returns the converted string.
+ */
+function objectToString(value) {
+ return nativeObjectToString.call(value);
+}
+
+/* harmony default export */ __webpack_exports__["a"] = (objectToString);
+
+
+/***/ }),
+/* 53 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__overArg_js__ = __webpack_require__(54);
+
+
+/** Built-in value references. */
+var getPrototype = __WEBPACK_IMPORTED_MODULE_0__overArg_js__["a" /* default */](Object.getPrototypeOf, Object);
+
+/* harmony default export */ __webpack_exports__["a"] = (getPrototype);
+
+
+/***/ }),
+/* 54 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/**
+ * Creates a unary function that invokes `func` with its argument transformed.
+ *
+ * @private
+ * @param {Function} func The function to wrap.
+ * @param {Function} transform The argument transform.
+ * @returns {Function} Returns the new function.
+ */
+function overArg(func, transform) {
+ return function(arg) {
+ return func(transform(arg));
+ };
+}
+
+/* harmony default export */ __webpack_exports__["a"] = (overArg);
+
+
+/***/ }),
+/* 55 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/**
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
+ * and has a `typeof` result of "object".
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
+ * @example
+ *
+ * _.isObjectLike({});
+ * // => true
+ *
+ * _.isObjectLike([1, 2, 3]);
+ * // => true
+ *
+ * _.isObjectLike(_.noop);
+ * // => false
+ *
+ * _.isObjectLike(null);
+ * // => false
+ */
+function isObjectLike(value) {
+ return value != null && typeof value == 'object';
+}
+
+/* harmony default export */ __webpack_exports__["a"] = (isObjectLike);
+
+
+/***/ }),
+/* 56 */
+/***/ (function(module, exports, __webpack_require__) {
+
+module.exports = __webpack_require__(57);
+
+
+/***/ }),
+/* 57 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(global, module) {
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _ponyfill = __webpack_require__(59);
+
+var _ponyfill2 = _interopRequireDefault(_ponyfill);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
+
+var root; /* global window */
+
+
+if (typeof self !== 'undefined') {
+ root = self;
+} else if (typeof window !== 'undefined') {
+ root = window;
+} else if (typeof global !== 'undefined') {
+ root = global;
+} else if (true) {
+ root = module;
+} else {
+ root = Function('return this')();
+}
+
+var result = (0, _ponyfill2['default'])(root);
+exports['default'] = result;
+/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(28), __webpack_require__(58)(module)))
+
+/***/ }),
+/* 58 */
+/***/ (function(module, exports) {
+
+module.exports = function(module) {
+ if(!module.webpackPolyfill) {
+ module.deprecate = function() {};
+ module.paths = [];
+ // module.parent = undefined by default
+ if(!module.children) module.children = [];
+ Object.defineProperty(module, "loaded", {
+ enumerable: true,
+ get: function() {
+ return module.l;
+ }
+ });
+ Object.defineProperty(module, "id", {
+ enumerable: true,
+ get: function() {
+ return module.i;
+ }
+ });
+ module.webpackPolyfill = 1;
+ }
+ return module;
+};
+
+
+/***/ }),
+/* 59 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports['default'] = symbolObservablePonyfill;
+function symbolObservablePonyfill(root) {
+ var result;
+ var _Symbol = root.Symbol;
+
+ if (typeof _Symbol === 'function') {
+ if (_Symbol.observable) {
+ result = _Symbol.observable;
+ } else {
+ result = _Symbol('observable');
+ _Symbol.observable = result;
+ }
+ } else {
+ result = '@@observable';
+ }
+
+ return result;
+};
+
+/***/ }),
+/* 60 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["a"] = combineReducers;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__createStore__ = __webpack_require__(26);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_lodash_es_isPlainObject__ = __webpack_require__(16);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_warning__ = __webpack_require__(29);
+
+
+
+
+function getUndefinedStateErrorMessage(key, action) {
+ var actionType = action && action.type;
+ var actionName = actionType && '"' + actionType.toString() + '"' || 'an action';
+
+ return 'Given action ' + actionName + ', reducer "' + key + '" returned undefined. ' + 'To ignore an action, you must explicitly return the previous state. ' + 'If you want this reducer to hold no value, you can return null instead of undefined.';
+}
+
+function getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {
+ var reducerKeys = Object.keys(reducers);
+ var argumentName = action && action.type === __WEBPACK_IMPORTED_MODULE_0__createStore__["a" /* ActionTypes */].INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';
+
+ if (reducerKeys.length === 0) {
+ return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';
+ }
+
+ if (!__WEBPACK_IMPORTED_MODULE_1_lodash_es_isPlainObject__["a" /* default */](inputState)) {
+ 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('", "') + '"');
+ }
+
+ var unexpectedKeys = Object.keys(inputState).filter(function (key) {
+ return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];
+ });
+
+ unexpectedKeys.forEach(function (key) {
+ unexpectedKeyCache[key] = true;
+ });
+
+ if (unexpectedKeys.length > 0) {
+ 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.');
+ }
+}
+
+function assertReducerShape(reducers) {
+ Object.keys(reducers).forEach(function (key) {
+ var reducer = reducers[key];
+ var initialState = reducer(undefined, { type: __WEBPACK_IMPORTED_MODULE_0__createStore__["a" /* ActionTypes */].INIT });
+
+ if (typeof initialState === 'undefined') {
+ 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. If you don\'t want to set a value for this reducer, ' + 'you can use null instead of undefined.');
+ }
+
+ var type = '@@redux/PROBE_UNKNOWN_ACTION_' + Math.random().toString(36).substring(7).split('').join('.');
+ if (typeof reducer(undefined, { type: type }) === 'undefined') {
+ throw new Error('Reducer "' + key + '" returned undefined when probed with a random type. ' + ('Don\'t try to handle ' + __WEBPACK_IMPORTED_MODULE_0__createStore__["a" /* 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, but can be null.');
+ }
+ });
+}
+
+/**
+ * Turns an object whose values are different reducer functions, into a single
+ * reducer function. It will call every child reducer, and gather their results
+ * into a single state object, whose keys correspond to the keys of the passed
+ * reducer functions.
+ *
+ * @param {Object} reducers An object whose values correspond to different
+ * reducer functions that need to be combined into one. One handy way to obtain
+ * it is to use ES6 `import * as reducers` syntax. The reducers may never return
+ * undefined for any action. Instead, they should return their initial state
+ * if the state passed to them was undefined, and the current state for any
+ * unrecognized action.
+ *
+ * @returns {Function} A reducer function that invokes every reducer inside the
+ * passed object, and builds a state object with the same shape.
+ */
+function combineReducers(reducers) {
+ var reducerKeys = Object.keys(reducers);
+ var finalReducers = {};
+ for (var i = 0; i < reducerKeys.length; i++) {
+ var key = reducerKeys[i];
+
+ if (process.env.NODE_ENV !== 'production') {
+ if (typeof reducers[key] === 'undefined') {
+ __WEBPACK_IMPORTED_MODULE_2__utils_warning__["a" /* default */]('No reducer provided for key "' + key + '"');
+ }
+ }
+
+ if (typeof reducers[key] === 'function') {
+ finalReducers[key] = reducers[key];
+ }
+ }
+ var finalReducerKeys = Object.keys(finalReducers);
+
+ var unexpectedKeyCache = void 0;
+ if (process.env.NODE_ENV !== 'production') {
+ unexpectedKeyCache = {};
+ }
+
+ var shapeAssertionError = void 0;
+ try {
+ assertReducerShape(finalReducers);
+ } catch (e) {
+ shapeAssertionError = e;
+ }
+
+ return function combination() {
+ var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ var action = arguments[1];
+
+ if (shapeAssertionError) {
+ throw shapeAssertionError;
+ }
+
+ if (process.env.NODE_ENV !== 'production') {
+ var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);
+ if (warningMessage) {
+ __WEBPACK_IMPORTED_MODULE_2__utils_warning__["a" /* default */](warningMessage);
+ }
+ }
+
+ var hasChanged = false;
+ var nextState = {};
+ for (var _i = 0; _i < finalReducerKeys.length; _i++) {
+ var _key = finalReducerKeys[_i];
+ var reducer = finalReducers[_key];
+ var previousStateForKey = state[_key];
+ var nextStateForKey = reducer(previousStateForKey, action);
+ if (typeof nextStateForKey === 'undefined') {
+ var errorMessage = getUndefinedStateErrorMessage(_key, action);
+ throw new Error(errorMessage);
+ }
+ nextState[_key] = nextStateForKey;
+ hasChanged = hasChanged || nextStateForKey !== previousStateForKey;
+ }
+ return hasChanged ? nextState : state;
+ };
+}
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))
+
+/***/ }),
+/* 61 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (immutable) */ __webpack_exports__["a"] = bindActionCreators;
+function bindActionCreator(actionCreator, dispatch) {
+ return function () {
+ return dispatch(actionCreator.apply(undefined, arguments));
+ };
+}
+
+/**
+ * Turns an object whose values are action creators, into an object with the
+ * same keys, but with every function wrapped into a `dispatch` call so they
+ * may be invoked directly. This is just a convenience method, as you can call
+ * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.
+ *
+ * For convenience, you can also pass a single function as the first argument,
+ * and get a function in return.
+ *
+ * @param {Function|Object} actionCreators An object whose values are action
+ * creator functions. One handy way to obtain it is to use ES6 `import * as`
+ * syntax. You may also pass a single function.
+ *
+ * @param {Function} dispatch The `dispatch` function available on your Redux
+ * store.
+ *
+ * @returns {Function|Object} The object mimicking the original object, but with
+ * every action creator wrapped into the `dispatch` call. If you passed a
+ * function as `actionCreators`, the return value will also be a single
+ * function.
+ */
+function bindActionCreators(actionCreators, dispatch) {
+ if (typeof actionCreators === 'function') {
+ return bindActionCreator(actionCreators, dispatch);
+ }
+
+ if (typeof actionCreators !== 'object' || actionCreators === null) {
+ 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"?');
+ }
+
+ var keys = Object.keys(actionCreators);
+ var boundActionCreators = {};
+ for (var i = 0; i < keys.length; i++) {
+ var key = keys[i];
+ var actionCreator = actionCreators[key];
+ if (typeof actionCreator === 'function') {
+ boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);
+ }
+ }
+ return boundActionCreators;
+}
+
+/***/ }),
+/* 62 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (immutable) */ __webpack_exports__["a"] = applyMiddleware;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__compose__ = __webpack_require__(30);
+var _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; };
+
+
+
+/**
+ * Creates a store enhancer that applies middleware to the dispatch method
+ * of the Redux store. This is handy for a variety of tasks, such as expressing
+ * asynchronous actions in a concise manner, or logging every action payload.
+ *
+ * See `redux-thunk` package as an example of the Redux middleware.
+ *
+ * Because middleware is potentially asynchronous, this should be the first
+ * store enhancer in the composition chain.
+ *
+ * Note that each middleware will be given the `dispatch` and `getState` functions
+ * as named arguments.
+ *
+ * @param {...Function} middlewares The middleware chain to be applied.
+ * @returns {Function} A store enhancer applying the middleware.
+ */
+function applyMiddleware() {
+ for (var _len = arguments.length, middlewares = Array(_len), _key = 0; _key < _len; _key++) {
+ middlewares[_key] = arguments[_key];
+ }
+
+ return function (createStore) {
+ return function (reducer, preloadedState, enhancer) {
+ var store = createStore(reducer, preloadedState, enhancer);
+ var _dispatch = store.dispatch;
+ var chain = [];
+
+ var middlewareAPI = {
+ getState: store.getState,
+ dispatch: function dispatch(action) {
+ return _dispatch(action);
+ }
+ };
+ chain = middlewares.map(function (middleware) {
+ return middleware(middlewareAPI);
+ });
+ _dispatch = __WEBPACK_IMPORTED_MODULE_0__compose__["a" /* default */].apply(undefined, chain)(store.dispatch);
+
+ return _extends({}, store, {
+ dispatch: _dispatch
+ });
+ };
+ };
+}
+
+/***/ }),
+/* 63 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* unused harmony export whenMapStateToPropsIsFunction */
+/* unused harmony export whenMapStateToPropsIsMissing */
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__wrapMapToProps__ = __webpack_require__(31);
+
+
+function whenMapStateToPropsIsFunction(mapStateToProps) {
+ return typeof mapStateToProps === 'function' ? __WEBPACK_IMPORTED_MODULE_0__wrapMapToProps__["b" /* wrapMapToPropsFunc */](mapStateToProps, 'mapStateToProps') : undefined;
+}
+
+function whenMapStateToPropsIsMissing(mapStateToProps) {
+ return !mapStateToProps ? __WEBPACK_IMPORTED_MODULE_0__wrapMapToProps__["a" /* wrapMapToPropsConstant */](function () {
+ return {};
+ }) : undefined;
+}
+
+/* harmony default export */ __webpack_exports__["a"] = ([whenMapStateToPropsIsFunction, whenMapStateToPropsIsMissing]);
+
+/***/ }),
+/* 64 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export defaultMergeProps */
+/* unused harmony export wrapMergePropsFunc */
+/* unused harmony export whenMergePropsIsFunction */
+/* unused harmony export whenMergePropsIsOmitted */
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__ = __webpack_require__(32);
+var _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; };
+
+
+
+function defaultMergeProps(stateProps, dispatchProps, ownProps) {
+ return _extends({}, ownProps, stateProps, dispatchProps);
+}
+
+function wrapMergePropsFunc(mergeProps) {
+ return function initMergePropsProxy(dispatch, _ref) {
+ var displayName = _ref.displayName,
+ pure = _ref.pure,
+ areMergedPropsEqual = _ref.areMergedPropsEqual;
+
+ var hasRunOnce = false;
+ var mergedProps = void 0;
+
+ return function mergePropsProxy(stateProps, dispatchProps, ownProps) {
+ var nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+
+ if (hasRunOnce) {
+ if (!pure || !areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps;
+ } else {
+ hasRunOnce = true;
+ mergedProps = nextMergedProps;
+
+ if (process.env.NODE_ENV !== 'production') __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__["a" /* default */](mergedProps, displayName, 'mergeProps');
+ }
+
+ return mergedProps;
+ };
+ };
+}
+
+function whenMergePropsIsFunction(mergeProps) {
+ return typeof mergeProps === 'function' ? wrapMergePropsFunc(mergeProps) : undefined;
+}
+
+function whenMergePropsIsOmitted(mergeProps) {
+ return !mergeProps ? function () {
+ return defaultMergeProps;
+ } : undefined;
+}
+
+/* harmony default export */ __webpack_exports__["a"] = ([whenMergePropsIsFunction, whenMergePropsIsOmitted]);
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))
+
+/***/ }),
+/* 65 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export impureFinalPropsSelectorFactory */
+/* unused harmony export pureFinalPropsSelectorFactory */
+/* harmony export (immutable) */ __webpack_exports__["a"] = finalPropsSelectorFactory;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__verifySubselectors__ = __webpack_require__(66);
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+
+
+function impureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch) {
+ return function impureFinalPropsSelector(state, ownProps) {
+ return mergeProps(mapStateToProps(state, ownProps), mapDispatchToProps(dispatch, ownProps), ownProps);
+ };
+}
+
+function pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, _ref) {
+ var areStatesEqual = _ref.areStatesEqual,
+ areOwnPropsEqual = _ref.areOwnPropsEqual,
+ areStatePropsEqual = _ref.areStatePropsEqual;
+
+ var hasRunAtLeastOnce = false;
+ var state = void 0;
+ var ownProps = void 0;
+ var stateProps = void 0;
+ var dispatchProps = void 0;
+ var mergedProps = void 0;
+
+ function handleFirstCall(firstState, firstOwnProps) {
+ state = firstState;
+ ownProps = firstOwnProps;
+ stateProps = mapStateToProps(state, ownProps);
+ dispatchProps = mapDispatchToProps(dispatch, ownProps);
+ mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+ hasRunAtLeastOnce = true;
+ return mergedProps;
+ }
+
+ function handleNewPropsAndNewState() {
+ stateProps = mapStateToProps(state, ownProps);
+
+ if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);
+
+ mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+ return mergedProps;
+ }
+
+ function handleNewProps() {
+ if (mapStateToProps.dependsOnOwnProps) stateProps = mapStateToProps(state, ownProps);
+
+ if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);
+
+ mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+ return mergedProps;
+ }
+
+ function handleNewState() {
+ var nextStateProps = mapStateToProps(state, ownProps);
+ var statePropsChanged = !areStatePropsEqual(nextStateProps, stateProps);
+ stateProps = nextStateProps;
+
+ if (statePropsChanged) mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+
+ return mergedProps;
+ }
+
+ function handleSubsequentCalls(nextState, nextOwnProps) {
+ var propsChanged = !areOwnPropsEqual(nextOwnProps, ownProps);
+ var stateChanged = !areStatesEqual(nextState, state);
+ state = nextState;
+ ownProps = nextOwnProps;
+
+ if (propsChanged && stateChanged) return handleNewPropsAndNewState();
+ if (propsChanged) return handleNewProps();
+ if (stateChanged) return handleNewState();
+ return mergedProps;
+ }
+
+ return function pureFinalPropsSelector(nextState, nextOwnProps) {
+ return hasRunAtLeastOnce ? handleSubsequentCalls(nextState, nextOwnProps) : handleFirstCall(nextState, nextOwnProps);
+ };
+}
+
+// TODO: Add more comments
+
+// If pure is true, the selector returned by selectorFactory will memoize its results,
+// allowing connectAdvanced's shouldComponentUpdate to return false if final
+// props have not changed. If false, the selector will always return a new
+// object and shouldComponentUpdate will always return true.
+
+function finalPropsSelectorFactory(dispatch, _ref2) {
+ var initMapStateToProps = _ref2.initMapStateToProps,
+ initMapDispatchToProps = _ref2.initMapDispatchToProps,
+ initMergeProps = _ref2.initMergeProps,
+ options = _objectWithoutProperties(_ref2, ['initMapStateToProps', 'initMapDispatchToProps', 'initMergeProps']);
+
+ var mapStateToProps = initMapStateToProps(dispatch, options);
+ var mapDispatchToProps = initMapDispatchToProps(dispatch, options);
+ var mergeProps = initMergeProps(dispatch, options);
+
+ if (process.env.NODE_ENV !== 'production') {
+ __WEBPACK_IMPORTED_MODULE_0__verifySubselectors__["a" /* default */](mapStateToProps, mapDispatchToProps, mergeProps, options.displayName);
+ }
+
+ var selectorFactory = options.pure ? pureFinalPropsSelectorFactory : impureFinalPropsSelectorFactory;
+
+ return selectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, options);
+}
+/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))
+
+/***/ }),
+/* 66 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export (immutable) */ __webpack_exports__["a"] = verifySubselectors;
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_warning__ = __webpack_require__(14);
+
+
+function verify(selector, methodName, displayName) {
+ if (!selector) {
+ throw new Error('Unexpected value for ' + methodName + ' in ' + displayName + '.');
+ } else if (methodName === 'mapStateToProps' || methodName === 'mapDispatchToProps') {
+ if (!selector.hasOwnProperty('dependsOnOwnProps')) {
+ __WEBPACK_IMPORTED_MODULE_0__utils_warning__["a" /* default */]('The selector for ' + methodName + ' of ' + displayName + ' did not specify a value for dependsOnOwnProps.');
+ }
+ }
+}
+
+function verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps, displayName) {
+ verify(mapStateToProps, 'mapStateToProps', displayName);
+ verify(mapDispatchToProps, 'mapDispatchToProps', displayName);
+ verify(mergeProps, 'mergeProps', displayName);
+}
+
+/***/ }),
+/* 67 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _preact = __webpack_require__(0);
+
+var _util = __webpack_require__(68);
+
+var _Header = __webpack_require__(69);
+
+var _Header2 = _interopRequireDefault(_Header);
+
+var _browser = __webpack_require__(72);
+
+var _browser2 = _interopRequireDefault(_browser);
+
+var _Tasks = __webpack_require__(81);
+
+var _Tasks2 = _interopRequireDefault(_Tasks);
+
+var _client = __webpack_require__(5);
+
+var _client2 = _interopRequireDefault(_client);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+// import db from '../db'
+
+var App = function App() {
+ return (0, _preact.h)(
+ 'div',
+ null,
+ (0, _preact.h)(_Header2.default, null),
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'columns' },
+ (0, _preact.h)(_browser2.default, null),
+ (0, _preact.h)(_Tasks2.default, null)
+ )
+ );
+};
+
+exports.default = App;
+
+/***/ }),
+/* 68 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+var isIphone = navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i);
+var isIpad = navigator.userAgent.match(/iPad/i);
+var isAndroid = navigator.userAgent.match(/Android/i);
+var isMobile = isIphone || isIpad || isAndroid;
+var isDesktop = !isMobile;
+
+document.body.classList.add(isMobile ? 'mobile' : 'desktop');
+
+var browser = { isIphone: isIphone, isIpad: isIpad, isAndroid: isAndroid, isMobile: isMobile, isDesktop: isDesktop };
+
+function clamp(n, a, b) {
+ return n < a ? a : n < b ? n : b;
+}
+function mod(n, m) {
+ return n - m * Math.floor(n / m);
+}
+function choice(a) {
+ return a[randint(a.length)];
+}
+function randint(n) {
+ return Math.floor(Math.random() * n);
+}
+function randrange(a, b) {
+ return Math.random() * (b - a) + a;
+}
+function firstTouch(f) {
+ return function (e) {
+ e.preventDefault();f(e.touches[0]);
+ };
+}
+
+exports.browser = browser;
+exports.clamp = clamp;
+exports.mod = mod;
+exports.choice = choice;
+exports.randint = randint;
+exports.randrange = randrange;
+exports.firstTouch = firstTouch;
+
+/***/ }),
+/* 69 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _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; }; }();
+
+var _preact = __webpack_require__(0);
+
+var _audioPlayer = __webpack_require__(70);
+
+var _audioPlayer2 = _interopRequireDefault(_audioPlayer);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var Header = function (_Component) {
+ _inherits(Header, _Component);
+
+ function Header(props) {
+ _classCallCheck(this, Header);
+
+ var _this = _possibleConstructorReturn(this, (Header.__proto__ || Object.getPrototypeOf(Header)).call(this));
+
+ _this.state = {};
+ return _this;
+ }
+
+ _createClass(Header, [{
+ key: 'render',
+ value: function render() {
+ return (0, _preact.h)(
+ 'div',
+ { 'class': 'header' },
+ (0, _preact.h)(
+ 'b',
+ null,
+ 'spawn cortex'
+ ),
+ (0, _preact.h)(_audioPlayer2.default, null)
+ );
+ }
+ }]);
+
+ return Header;
+}(_preact.Component);
+
+exports.default = Header;
+
+/***/ }),
+/* 70 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _reactRedux = __webpack_require__(6);
+
+var _AudioPlayerView = __webpack_require__(71);
+
+var _AudioPlayerView2 = _interopRequireDefault(_AudioPlayerView);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var mapStateToProps = function mapStateToProps(state) {
+ return state.audioPlayer;
+};
+
+var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
+ return {};
+};
+
+var AudioPlayer = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_AudioPlayerView2.default);
+
+exports.default = AudioPlayer;
+
+/***/ }),
+/* 71 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = AudioPlayerView;
+
+var _preact = __webpack_require__(0);
+
+var audio = document.createElement('audio');
+
+function AudioPlayerView(props) {
+ if (props.file) {
+ document.body.style.backgroundImage = 'url(' + pngpath(props.file) + ')';
+ audio.src = mp3path(props.file);
+ audio.play();
+ return (0, _preact.h)(
+ 'div',
+ null,
+ 'Playing ',
+ props.file.name
+ );
+ } else {
+ return (0, _preact.h)(
+ 'div',
+ null,
+ 'Not Playing'
+ );
+ }
+}
+
+function filepath(file) {
+ return '/data/' + file.folder_id + '/' + encodeURIComponent(file.name);
+}
+function mp3path(file) {
+ if (file.mime !== 'audio/mp3') {
+ return filepath(file) + '.mp3';
+ }
+ return filepath(file);
+}
+function pngpath(file) {
+ return filepath(file) + '.png';
+}
+
+/***/ }),
+/* 72 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _reactRedux = __webpack_require__(6);
+
+var _BrowserView = __webpack_require__(73);
+
+var _BrowserView2 = _interopRequireDefault(_BrowserView);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var mapStateToProps = function mapStateToProps(state) {
+ return state.folders;
+};
+
+var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
+ return {
+ addFolder: function addFolder(folder) {
+ // this.setState({ folders: this.state.folders.concat([folder]) })
+ },
+ openFolder: function openFolder(folder) {
+ // if (this.state.openFolders.indexOf(folder.id) === -1) {
+ // const newOpenFolders = this.state.openFolders.concat(folder.id)
+ // localStorage['openFolders'] = JSON.stringify(newOpenFolders)
+ // this.setState({ openFolders: newOpenFolders })
+ // }
+ },
+ closeFolder: function closeFolder(folder) {
+ // const openFolders = this.state.openFolders.filter( folder_id => folder_id !== folder.id )
+ // localStorage['openFolders'] = JSON.stringify(openFolders)
+ // this.setState({ openFolders })
+ }
+ };
+};
+
+var Browser = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_BrowserView2.default);
+
+exports.default = Browser;
+
+/***/ }),
+/* 73 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = BrowserView;
+
+var _preact = __webpack_require__(0);
+
+var _Folders = __webpack_require__(74);
+
+var _Folders2 = _interopRequireDefault(_Folders);
+
+var _Files = __webpack_require__(77);
+
+var _Files2 = _interopRequireDefault(_Files);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function BrowserView(props) {
+ console.log('browser view', props);
+ var openFolders = (props.openFolders || []).map(function (folder_id) {
+ var folder_list = props.folders.filter(function (folder) {
+ return folder.id === folder_id;
+ });
+ if (!folder_list.length) return;
+ var folder = folder_list[0];
+ return (0, _preact.h)(_Files2.default, {
+ folder: folder,
+ onClose: function onClose() {
+ return props.closeFolder(folder);
+ }
+ });
+ });
+
+ return (0, _preact.h)(
+ 'div',
+ { 'class': 'column' },
+ (0, _preact.h)(_Folders2.default, { folders: props.folders,
+ openFolder: function openFolder(folder) {
+ return props.openFolder(folder);
+ },
+ addFolder: function addFolder(folder) {
+ return props.addFolder(folder);
+ }
+ }),
+ openFolders
+ );
+}
+
+/***/ }),
+/* 74 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _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; }; }();
+
+var _preact = __webpack_require__(0);
+
+var _Modal = __webpack_require__(75);
+
+var _Modal2 = _interopRequireDefault(_Modal);
+
+var _FolderForm = __webpack_require__(76);
+
+var _FolderForm2 = _interopRequireDefault(_FolderForm);
+
+var _client = __webpack_require__(5);
+
+var _client2 = _interopRequireDefault(_client);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var Folders = function (_Component) {
+ _inherits(Folders, _Component);
+
+ function Folders(props) {
+ _classCallCheck(this, Folders);
+
+ var _this = _possibleConstructorReturn(this, (Folders.__proto__ || Object.getPrototypeOf(Folders)).call(this));
+
+ _this.state = {
+ adding: false
+ };
+ return _this;
+ }
+
+ _createClass(Folders, [{
+ key: 'openModal',
+ value: function openModal() {
+ this.setState({ adding: true });
+ }
+ }, {
+ key: 'closeModal',
+ value: function closeModal() {
+ this.setState({ adding: false });
+ }
+ }, {
+ key: 'toggle',
+ value: function toggle(folder) {
+ var _this2 = this;
+
+ folder.open = !folder.open;
+ if (folder.open && !folder.files) {
+ _client2.default.file.index({ 'folder_id': folder.id }).then(function (files) {
+ console.log(files);
+ folder.files = files;
+ _this2.props.openFolder(folder);
+ });
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this3 = this;
+
+ var folders = (this.props.folders || []).map(function (folder, i) {
+ return (0, _preact.h)(
+ 'div',
+ { key: i, onClick: function onClick() {
+ return _this3.toggle(folder);
+ } },
+ (0, _preact.h)(
+ 'span',
+ { 'class': 'name' },
+ folder.name
+ )
+ );
+ });
+ return (0, _preact.h)(
+ 'div',
+ { 'class': 'window' },
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'heading' },
+ (0, _preact.h)(
+ 'b',
+ null,
+ 'browser'
+ ),
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'buttons' },
+ (0, _preact.h)(
+ 'button',
+ { onClick: function onClick() {
+ return _this3.openModal();
+ } },
+ '+ folder'
+ )
+ )
+ ),
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'list' },
+ folders
+ ),
+ (0, _preact.h)(
+ _Modal2.default,
+ { visible: this.state.adding, onClose: function onClose() {
+ return _this3.closeModal();
+ } },
+ (0, _preact.h)(_FolderForm2.default, { addFolder: this.props.addFolder, onClose: function onClose() {
+ return _this3.closeModal();
+ } })
+ )
+ );
+ }
+ }]);
+
+ return Folders;
+}(_preact.Component);
+
+exports.default = Folders;
+
+/***/ }),
+/* 75 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _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; }; }();
+
+var _preact = __webpack_require__(0);
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var Modal = function (_Component) {
+ _inherits(Modal, _Component);
+
+ function Modal(props) {
+ _classCallCheck(this, Modal);
+
+ return _possibleConstructorReturn(this, (Modal.__proto__ || Object.getPrototypeOf(Modal)).call(this));
+ }
+
+ _createClass(Modal, [{
+ key: 'render',
+ value: function render() {
+ var className = this.props.visible ? 'modal visible' : 'modal';
+ return (0, _preact.h)(
+ 'div',
+ { 'class': className },
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'inner' },
+ this.props.children
+ ),
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'close', onClick: this.props.onClose },
+ '\xD7'
+ )
+ );
+ }
+ }]);
+
+ return Modal;
+}(_preact.Component);
+
+exports.default = Modal;
+
+/***/ }),
+/* 76 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _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; }; }();
+
+var _preact = __webpack_require__(0);
+
+var _client = __webpack_require__(5);
+
+var _client2 = _interopRequireDefault(_client);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var FolderForm = function (_Component) {
+ _inherits(FolderForm, _Component);
+
+ function FolderForm(props) {
+ _classCallCheck(this, FolderForm);
+
+ var _this = _possibleConstructorReturn(this, (FolderForm.__proto__ || Object.getPrototypeOf(FolderForm)).call(this));
+
+ _this.state = {
+ name: ''
+ };
+ _this.updateState = _this.updateState.bind(_this);
+ _this.handleSubmit = _this.handleSubmit.bind(_this);
+ return _this;
+ }
+
+ _createClass(FolderForm, [{
+ key: 'updateState',
+ value: function updateState(event) {
+ var _setState;
+
+ var name = event.target.name;
+ var value = event.target.value;
+ console.log(name, value);
+ this.setState((_setState = {}, _defineProperty(_setState, name, value), _defineProperty(_setState, 'error', null), _setState));
+ }
+ }, {
+ key: 'handleSubmit',
+ value: function handleSubmit(event) {
+ var _this2 = this;
+
+ event.preventDefault();
+ var rec = Object.assign({}, this.state);
+ delete rec.error;
+ this.props.onClose();
+ _client2.default.folder.create(rec).then(function (data) {
+ _this2.props.addFolder(data);
+ });
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ return (0, _preact.h)(
+ 'div',
+ { 'class': 'form' },
+ (0, _preact.h)(
+ 'h1',
+ null,
+ 'new folder'
+ ),
+ (0, _preact.h)(
+ 'div',
+ null,
+ (0, _preact.h)(
+ 'label',
+ { 'for': 'folders_folder_name' },
+ 'Name'
+ ),
+ (0, _preact.h)('input', { type: 'text', id: 'folders_folder_name', name: 'name', value: this.state.name, onChange: this.updateState })
+ ),
+ (0, _preact.h)(
+ 'div',
+ null,
+ (0, _preact.h)('label', null),
+ (0, _preact.h)(
+ 'button',
+ { onClick: this.handleSubmit },
+ 'Create'
+ )
+ )
+ );
+ }
+ }]);
+
+ return FolderForm;
+}(_preact.Component);
+
+exports.default = FolderForm;
+
+/***/ }),
+/* 77 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _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; }; }();
+
+var _preact = __webpack_require__(0);
+
+var _actions = __webpack_require__(7);
+
+var _client = __webpack_require__(5);
+
+var _client2 = _interopRequireDefault(_client);
+
+var _FileUploadButton = __webpack_require__(78);
+
+var _FileUploadButton2 = _interopRequireDefault(_FileUploadButton);
+
+var _fileLink = __webpack_require__(33);
+
+var _fileLink2 = _interopRequireDefault(_fileLink);
+
+var _taskContentLink = __webpack_require__(79);
+
+var _taskContentLink2 = _interopRequireDefault(_taskContentLink);
+
+var _taskStyleLink = __webpack_require__(80);
+
+var _taskStyleLink2 = _interopRequireDefault(_taskStyleLink);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var Files = function (_Component) {
+ _inherits(Files, _Component);
+
+ function Files(props) {
+ _classCallCheck(this, Files);
+
+ var _this = _possibleConstructorReturn(this, (Files.__proto__ || Object.getPrototypeOf(Files)).call(this));
+
+ _this.state = {
+ selected: null
+ };
+ _this.addFiles = _this.addFiles.bind(_this);
+ return _this;
+ }
+
+ _createClass(Files, [{
+ key: 'addFiles',
+ value: function addFiles(newFiles) {
+ if (!newFiles) return;
+ var files = this.state.files.concat(newFiles).sort(function (a, b) {
+ return b.id - a.id;
+ });
+ this.setState({ files: files });
+ }
+ }, {
+ key: 'handleClick',
+ value: function handleClick(file) {
+ this.setState({ selected: file });
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this2 = this;
+
+ var file_list = void 0;
+ if (this.props.folder && this.props.folder.files) {
+ file_list = this.props.folder.files;
+ } else {
+ file_list = [];
+ }
+ var files = file_list.map(toFilenamePair).sort(sortByFilename).map(fromPair).map(function (file, i) {
+ if (!file) return;
+ return (0, _preact.h)(
+ 'div',
+ { key: i, 'class': _this2.state.selected === file ? 'selected' : '' },
+ (0, _preact.h)(
+ 'span',
+ { 'class': 'name' },
+ (0, _preact.h)(
+ _fileLink2.default,
+ { file: file },
+ file.name
+ )
+ ),
+ (0, _preact.h)(
+ 'span',
+ { 'class': 'mime' },
+ file.processed ? file.mime : 'working...'
+ ),
+ (0, _preact.h)(
+ 'span',
+ { 'class': 'duration' },
+ file.duration ? file.duration.toFixed(1) + 's' : ''
+ ),
+ (0, _preact.h)(
+ 'span',
+ { 'class': 'actions' },
+ (0, _preact.h)(
+ _taskContentLink2.default,
+ { file: file },
+ 'content'
+ ),
+ (0, _preact.h)(
+ _taskStyleLink2.default,
+ { file: file },
+ 'style'
+ )
+ )
+ );
+ });
+ return (0, _preact.h)(
+ 'div',
+ { 'class': 'window' },
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'heading' },
+ (0, _preact.h)(
+ 'b',
+ null,
+ this.props.folder.name
+ ),
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'buttons' },
+ (0, _preact.h)(_FileUploadButton2.default, { folder: this.props.folder, addFiles: this.addFiles }),
+ (0, _preact.h)(
+ 'button',
+ { onClick: this.props.onClose },
+ '\xD7'
+ )
+ )
+ ),
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'list' },
+ files
+ )
+ );
+ }
+ }]);
+
+ return Files;
+}(_preact.Component);
+
+exports.default = Files;
+
+
+function toFilenamePair(file) {
+ return [file.name.toLowerCase(), file];
+}
+function sortByFilename(a, b) {
+ return a[0] < b[0] ? -1 : a[0] == b[0] ? 0 : 1;
+}
+function fromPair(pair) {
+ return pair[1];
+}
+
+function filepath(file) {
+ return '/data/' + file.folder_id + '/' + encodeURIComponent(file.name);
+}
+function mp3path(file) {
+ if (file.mime !== 'audio/mp3') {
+ return filepath(file) + '.mp3';
+ }
+ return filepath(file);
+}
+function pngpath(file) {
+ return filepath(file) + '.png';
+}
+
+/***/ }),
+/* 78 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _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; }; }();
+
+var _preact = __webpack_require__(0);
+
+var _client = __webpack_require__(5);
+
+var _client2 = _interopRequireDefault(_client);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var Folder = function (_Component) {
+ _inherits(Folder, _Component);
+
+ function Folder(props) {
+ _classCallCheck(this, Folder);
+
+ var _this = _possibleConstructorReturn(this, (Folder.__proto__ || Object.getPrototypeOf(Folder)).call(this));
+
+ _this.state = {};
+ _this.updateFiles = _this.updateFiles.bind(_this);
+ return _this;
+ }
+
+ _createClass(Folder, [{
+ key: 'updateFiles',
+ value: function updateFiles(event) {
+ var _this2 = this;
+
+ var name = event.target.name;
+ var files = event.target.files;
+ _client2.default.upload(this.props.folder.id, files).then(function (got_files) {
+ _this2.props.addFiles(got_files);
+ });
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var files = (this.props.folder.files || []).map(function (file, i) {
+ return (0, _preact.h)(
+ 'div',
+ { key: i },
+ file.name
+ );
+ });
+ return (0, _preact.h)(
+ 'div',
+ { 'class': 'fileUploadButton' },
+ (0, _preact.h)('input', { type: 'file', multiple: true, name: 'files', onChange: this.updateFiles }),
+ (0, _preact.h)(
+ 'span',
+ null,
+ '+ upload'
+ )
+ );
+ }
+ }]);
+
+ return Folder;
+}(_preact.Component);
+
+exports.default = Folder;
+
+/***/ }),
+/* 79 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _reactRedux = __webpack_require__(6);
+
+var _actions = __webpack_require__(7);
+
+var _Link = __webpack_require__(17);
+
+var _Link2 = _interopRequireDefault(_Link);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var mapStateToProps = function mapStateToProps(state, ownProps) {
+ return {};
+};
+
+var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
+ return {
+ onClick: function onClick() {
+ dispatch((0, _actions.setContent)(ownProps.file));
+ }
+ };
+};
+
+var TaskContentLink = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_Link2.default);
+
+exports.default = TaskContentLink;
+
+/***/ }),
+/* 80 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _reactRedux = __webpack_require__(6);
+
+var _actions = __webpack_require__(7);
+
+var _Link = __webpack_require__(17);
+
+var _Link2 = _interopRequireDefault(_Link);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var mapStateToProps = function mapStateToProps(state, ownProps) {
+ return {};
+};
+
+var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
+ return {
+ onClick: function onClick() {
+ dispatch((0, _actions.setStyle)(ownProps.file));
+ }
+ };
+};
+
+var TaskStyleLink = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_Link2.default);
+
+exports.default = TaskStyleLink;
+
+/***/ }),
+/* 81 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _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; }; }();
+
+var _preact = __webpack_require__(0);
+
+var _reactRouterDom = __webpack_require__(34);
+
+var _taskForm = __webpack_require__(107);
+
+var _taskForm2 = _interopRequireDefault(_taskForm);
+
+var _taskList = __webpack_require__(109);
+
+var _taskList2 = _interopRequireDefault(_taskList);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var Tasks = function (_Component) {
+ _inherits(Tasks, _Component);
+
+ function Tasks() {
+ _classCallCheck(this, Tasks);
+
+ return _possibleConstructorReturn(this, (Tasks.__proto__ || Object.getPrototypeOf(Tasks)).apply(this, arguments));
+ }
+
+ _createClass(Tasks, [{
+ key: 'render',
+ value: function render() {
+ return (0, _preact.h)(
+ 'div',
+ { 'class': 'column' },
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'window' },
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'heading' },
+ (0, _preact.h)(
+ 'b',
+ null,
+ 'create task'
+ )
+ ),
+ (0, _preact.h)(_taskForm2.default, null)
+ ),
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'window' },
+ (0, _preact.h)(
+ 'div',
+ { 'class': 'heading' },
+ (0, _preact.h)(
+ 'b',
+ null,
+ 'recent tasks'
+ )
+ ),
+ (0, _preact.h)(_taskList2.default, null)
+ )
+ );
+ }
+ }]);
+
+ return Tasks;
+}(_preact.Component);
+
+exports.default = Tasks;
+
+/***/ }),
+/* 82 */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createBrowserHistory__ = __webpack_require__(83);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createBrowserHistory___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_history_createBrowserHistory__);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_router__ = __webpack_require__(4);
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+
+
+
+
+
+/**
+ * The public API for a <Router> that uses HTML5 history.
+ */
+
+var BrowserRouter = function (_React$Component) {
+ _inherits(BrowserRouter, _React$Component);
+
+ function BrowserRouter() {
+ var _temp, _this, _ret;
+
+ _classCallCheck(this, BrowserRouter);
+
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.history = __WEBPACK_IMPORTED_MODULE_2_history_createBrowserHistory___default.a(_this.props), _temp), _possibleConstructorReturn(_this, _ret);
+ }
+
+ BrowserRouter.prototype.render = function render() {
+ return __WEBPACK_IMPORTED_MODULE_0_react__["default"].createElement(__WEBPACK_IMPORTED_MODULE_3_react_router__["e" /* Router */], { history: this.history, children: this.props.children });
+ };
+
+ return BrowserRouter;
+}(__WEBPACK_IMPORTED_MODULE_0_react__["default"].Component);
+
+BrowserRouter.propTypes = {
+ basename: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.string,
+ forceRefresh: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.bool,
+ getUserConfirmation: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func,
+ keyLength: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.number,
+ children: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.node
+};
+
+
+/* harmony default export */ __webpack_exports__["a"] = (BrowserRouter);
+
+/***/ }),
+/* 83 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -3506,7 +6869,7 @@ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol
var _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; };
-var _warning = __webpack_require__(6);
+var _warning = __webpack_require__(8);
var _warning2 = _interopRequireDefault(_warning);
@@ -3514,15 +6877,15 @@ var _invariant = __webpack_require__(9);
var _invariant2 = _interopRequireDefault(_invariant);
-var _LocationUtils = __webpack_require__(13);
+var _LocationUtils = __webpack_require__(18);
-var _PathUtils = __webpack_require__(7);
+var _PathUtils = __webpack_require__(10);
-var _createTransitionManager = __webpack_require__(14);
+var _createTransitionManager = __webpack_require__(19);
var _createTransitionManager2 = _interopRequireDefault(_createTransitionManager);
-var _DOMUtils = __webpack_require__(18);
+var _DOMUtils = __webpack_require__(35);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -3807,7 +7170,7 @@ var createBrowserHistory = function createBrowserHistory() {
exports.default = createBrowserHistory;
/***/ }),
-/* 30 */
+/* 84 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -3883,7 +7246,7 @@ var resolvePathname = function resolvePathname(to) {
module.exports = resolvePathname;
/***/ }),
-/* 31 */
+/* 85 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -3929,16 +7292,16 @@ var valueEqual = function valueEqual(a, b) {
exports.default = valueEqual;
/***/ }),
-/* 32 */
+/* 86 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createMemoryHistory__ = __webpack_require__(33);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createMemoryHistory__ = __webpack_require__(87);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createMemoryHistory___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_history_createMemoryHistory__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Router__ = __webpack_require__(15);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Router__ = __webpack_require__(20);
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
@@ -3988,7 +7351,7 @@ MemoryRouter.propTypes = {
/* harmony default export */ __webpack_exports__["a"] = (MemoryRouter);
/***/ }),
-/* 33 */
+/* 87 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -4000,15 +7363,15 @@ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol
var _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; };
-var _warning = __webpack_require__(6);
+var _warning = __webpack_require__(8);
var _warning2 = _interopRequireDefault(_warning);
-var _PathUtils = __webpack_require__(7);
+var _PathUtils = __webpack_require__(10);
-var _LocationUtils = __webpack_require__(13);
+var _LocationUtils = __webpack_require__(18);
-var _createTransitionManager = __webpack_require__(14);
+var _createTransitionManager = __webpack_require__(19);
var _createTransitionManager2 = _interopRequireDefault(_createTransitionManager);
@@ -4164,12 +7527,12 @@ var createMemoryHistory = function createMemoryHistory() {
exports.default = createMemoryHistory;
/***/ }),
-/* 34 */
+/* 88 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -4249,12 +7612,12 @@ Prompt.contextTypes = {
/* harmony default export */ __webpack_exports__["a"] = (Prompt);
/***/ }),
-/* 35 */
+/* 89 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -4334,10 +7697,10 @@ Redirect.contextTypes = {
/* harmony default export */ __webpack_exports__["a"] = (Redirect);
/***/ }),
-/* 36 */
+/* 90 */
/***/ (function(module, exports, __webpack_require__) {
-var isarray = __webpack_require__(37)
+var isarray = __webpack_require__(91)
/**
* Expose `pathToRegexp`.
@@ -4766,7 +8129,7 @@ function pathToRegexp (path, keys, options) {
/***/ }),
-/* 37 */
+/* 91 */
/***/ (function(module, exports) {
module.exports = Array.isArray || function (arr) {
@@ -4775,18 +8138,18 @@ module.exports = Array.isArray || function (arr) {
/***/ }),
-/* 38 */
+/* 92 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_invariant__ = __webpack_require__(9);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_invariant__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_history_PathUtils__ = __webpack_require__(7);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_history_PathUtils__ = __webpack_require__(10);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_history_PathUtils___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_history_PathUtils__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__Router__ = __webpack_require__(15);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__Router__ = __webpack_require__(20);
var _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; };
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
@@ -4950,16 +8313,16 @@ StaticRouter.childContextTypes = {
/* harmony default export */ __webpack_exports__["a"] = (StaticRouter);
/***/ }),
-/* 39 */
+/* 93 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_warning__ = __webpack_require__(6);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_warning__ = __webpack_require__(8);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_warning__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__matchPath__ = __webpack_require__(16);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__matchPath__ = __webpack_require__(21);
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
@@ -5035,16 +8398,16 @@ Switch.propTypes = {
/* harmony default export */ __webpack_exports__["a"] = (Switch);
/***/ }),
-/* 40 */
+/* 94 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_hoist_non_react_statics__ = __webpack_require__(41);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_hoist_non_react_statics__ = __webpack_require__(25);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_hoist_non_react_statics___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_hoist_non_react_statics__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Route__ = __webpack_require__(19);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Route__ = __webpack_require__(36);
var _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; };
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
@@ -5079,73 +8442,16 @@ var withRouter = function withRouter(Component) {
/* harmony default export */ __webpack_exports__["a"] = (withRouter);
/***/ }),
-/* 41 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-/**
- * Copyright 2015, Yahoo! Inc.
- * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
- */
-
-
-var REACT_STATICS = {
- childContextTypes: true,
- contextTypes: true,
- defaultProps: true,
- displayName: true,
- getDefaultProps: true,
- mixins: true,
- propTypes: true,
- type: true
-};
-
-var KNOWN_STATICS = {
- name: true,
- length: true,
- prototype: true,
- caller: true,
- arguments: true,
- arity: true
-};
-
-var isGetOwnPropertySymbolsAvailable = typeof Object.getOwnPropertySymbols === 'function';
-
-module.exports = function hoistNonReactStatics(targetComponent, sourceComponent, customStatics) {
- if (typeof sourceComponent !== 'string') { // don't hoist over string (html) components
- var keys = Object.getOwnPropertyNames(sourceComponent);
-
- /* istanbul ignore else */
- if (isGetOwnPropertySymbolsAvailable) {
- keys = keys.concat(Object.getOwnPropertySymbols(sourceComponent));
- }
-
- for (var i = 0; i < keys.length; ++i) {
- if (!REACT_STATICS[keys[i]] && !KNOWN_STATICS[keys[i]] && (!customStatics || !customStatics[keys[i]])) {
- try {
- targetComponent[keys[i]] = sourceComponent[keys[i]];
- } catch (error) {
-
- }
- }
- }
- }
-
- return targetComponent;
-};
-
-
-/***/ }),
-/* 42 */
+/* 95 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createHashHistory__ = __webpack_require__(43);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createHashHistory__ = __webpack_require__(96);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_history_createHashHistory___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_history_createHashHistory__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_router__ = __webpack_require__(4);
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
@@ -5194,7 +8500,7 @@ HashRouter.propTypes = {
/* harmony default export */ __webpack_exports__["a"] = (HashRouter);
/***/ }),
-/* 43 */
+/* 96 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -5204,7 +8510,7 @@ exports.__esModule = true;
var _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; };
-var _warning = __webpack_require__(6);
+var _warning = __webpack_require__(8);
var _warning2 = _interopRequireDefault(_warning);
@@ -5212,15 +8518,15 @@ var _invariant = __webpack_require__(9);
var _invariant2 = _interopRequireDefault(_invariant);
-var _LocationUtils = __webpack_require__(13);
+var _LocationUtils = __webpack_require__(18);
-var _PathUtils = __webpack_require__(7);
+var _PathUtils = __webpack_require__(10);
-var _createTransitionManager = __webpack_require__(14);
+var _createTransitionManager = __webpack_require__(19);
var _createTransitionManager2 = _interopRequireDefault(_createTransitionManager);
-var _DOMUtils = __webpack_require__(18);
+var _DOMUtils = __webpack_require__(35);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -5524,24 +8830,24 @@ var createHashHistory = function createHashHistory() {
exports.default = createHashHistory;
/***/ }),
-/* 44 */
+/* 97 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["a"]; });
/***/ }),
-/* 45 */
+/* 98 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(3);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_router__ = __webpack_require__(2);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Link__ = __webpack_require__(20);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_router__ = __webpack_require__(4);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Link__ = __webpack_require__(37);
var _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; };
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
@@ -5609,697 +8915,79 @@ NavLink.defaultProps = {
/* harmony default export */ __webpack_exports__["a"] = (NavLink);
/***/ }),
-/* 46 */
+/* 99 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["b"]; });
/***/ }),
-/* 47 */
+/* 100 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["c"]; });
/***/ }),
-/* 48 */
+/* 101 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["d"]; });
/***/ }),
-/* 49 */
+/* 102 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["e"]; });
/***/ }),
-/* 50 */
+/* 103 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["f"]; });
/***/ }),
-/* 51 */
+/* 104 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["g"]; });
/***/ }),
-/* 52 */
+/* 105 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["h"]; });
/***/ }),
-/* 53 */
+/* 106 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(2);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router__ = __webpack_require__(4);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0_react_router__["i"]; });
/***/ }),
-/* 54 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _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; }; }();
-
-var _preact = __webpack_require__(3);
-
-var _audioPlayerContainer = __webpack_require__(114);
-
-var _audioPlayerContainer2 = _interopRequireDefault(_audioPlayerContainer);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-// import { Link } from 'react-router-dom'
-
-
-var Header = function (_Component) {
- _inherits(Header, _Component);
-
- function Header(props) {
- _classCallCheck(this, Header);
-
- var _this = _possibleConstructorReturn(this, (Header.__proto__ || Object.getPrototypeOf(Header)).call(this));
-
- _this.state = {};
- return _this;
- }
-
- _createClass(Header, [{
- key: 'render',
- value: function render() {
- return (0, _preact.h)(
- 'div',
- { 'class': 'header' },
- (0, _preact.h)(
- 'b',
- null,
- 'spawn cortex'
- ),
- (0, _preact.h)(_audioPlayerContainer2.default, null)
- );
- }
- }]);
-
- return Header;
-}(_preact.Component);
-
-exports.default = Header;
-
-/***/ }),
-/* 55 */,
-/* 56 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _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; }; }();
-
-var _preact = __webpack_require__(3);
-
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-var Modal = function (_Component) {
- _inherits(Modal, _Component);
-
- function Modal(props) {
- _classCallCheck(this, Modal);
-
- return _possibleConstructorReturn(this, (Modal.__proto__ || Object.getPrototypeOf(Modal)).call(this));
- }
-
- _createClass(Modal, [{
- key: 'render',
- value: function render() {
- var className = this.props.visible ? 'modal visible' : 'modal';
- return (0, _preact.h)(
- 'div',
- { 'class': className },
- (0, _preact.h)(
- 'div',
- { 'class': 'inner' },
- this.props.children
- ),
- (0, _preact.h)(
- 'div',
- { 'class': 'close', onClick: this.props.onClose },
- '\xD7'
- )
- );
- }
- }]);
-
- return Modal;
-}(_preact.Component);
-
-exports.default = Modal;
-
-/***/ }),
-/* 57 */,
-/* 58 */,
-/* 59 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _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; }; }();
-
-var _preact = __webpack_require__(3);
-
-var _reactRouterDom = __webpack_require__(5);
-
-var _taskForm = __webpack_require__(110);
-
-var _taskForm2 = _interopRequireDefault(_taskForm);
-
-var _client = __webpack_require__(8);
-
-var _client2 = _interopRequireDefault(_client);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-var Tasks = function (_Component) {
- _inherits(Tasks, _Component);
-
- function Tasks(props) {
- _classCallCheck(this, Tasks);
-
- var _this = _possibleConstructorReturn(this, (Tasks.__proto__ || Object.getPrototypeOf(Tasks)).call(this));
-
- _this.state = {
- adding: false,
- tasks: []
- };
- _client2.default.task.index().then(function (tasks) {
- return _this.setState({ tasks: tasks });
- });
- return _this;
- }
-
- _createClass(Tasks, [{
- key: 'render',
- value: function render() {
- var _this2 = this;
-
- // <span class='name'>{task.result_file.name}</span>
- var tasks = (this.state.tasks || []).map(function (task, i) {
- return (0, _preact.h)(
- 'div',
- { key: i, onClick: function onClick() {
- return _this2.toggle(task);
- } },
- (0, _preact.h)(
- 'span',
- null,
- task.id
- ),
- (0, _preact.h)(
- 'span',
- null,
- task.created_at
- ),
- (0, _preact.h)(
- 'span',
- { 'class': 'name' },
- task.content_file.name
- ),
- (0, _preact.h)(
- 'span',
- { 'class': 'name' },
- task.style_file.name
- ),
- (0, _preact.h)(
- 'span',
- null,
- task.alpha
- )
- );
- });
- return (0, _preact.h)(
- 'div',
- { 'class': 'column' },
- (0, _preact.h)(
- 'div',
- { 'class': 'window' },
- (0, _preact.h)(
- 'div',
- { 'class': 'heading' },
- (0, _preact.h)(
- 'b',
- null,
- 'create task'
- )
- ),
- (0, _preact.h)(_taskForm2.default, null)
- ),
- (0, _preact.h)(
- 'div',
- { 'class': 'window' },
- (0, _preact.h)(
- 'div',
- { 'class': 'heading' },
- (0, _preact.h)(
- 'b',
- null,
- 'recent tasks'
- )
- ),
- (0, _preact.h)(
- 'div',
- { 'class': 'list' },
- tasks
- )
- )
- );
- }
- }]);
-
- return Tasks;
-}(_preact.Component);
-
-exports.default = Tasks;
-
-/***/ }),
-/* 60 */,
-/* 61 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _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; }; }();
-
-var _preact = __webpack_require__(3);
-
-var _Folders = __webpack_require__(62);
-
-var _Folders2 = _interopRequireDefault(_Folders);
-
-var _Files = __webpack_require__(111);
-
-var _Files2 = _interopRequireDefault(_Files);
-
-var _client = __webpack_require__(8);
-
-var _client2 = _interopRequireDefault(_client);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-var Browser = function (_Component) {
- _inherits(Browser, _Component);
-
- function Browser(props) {
- _classCallCheck(this, Browser);
-
- var _this = _possibleConstructorReturn(this, (Browser.__proto__ || Object.getPrototypeOf(Browser)).call(this));
-
- var openFolders = JSON.parse(localStorage['openFolders'] || 'null');
- _this.state = {
- folders: [],
- openFolders: openFolders || []
- };
- _client2.default.folder.index().then(function (folders) {
- return _this.setState({ folders: folders });
- });
- return _this;
- }
-
- _createClass(Browser, [{
- key: 'openFolder',
- value: function openFolder(folder) {
- if (this.state.openFolders.indexOf(folder.id) === -1) {
- var newOpenFolders = this.state.openFolders.concat(folder.id);
- localStorage['openFolders'] = JSON.stringify(newOpenFolders);
- this.setState({ openFolders: newOpenFolders });
- }
- }
- }, {
- key: 'closeFolder',
- value: function closeFolder(folder) {
- var openFolders = this.state.openFolders.filter(function (folder_id) {
- return folder_id !== folder.id;
- });
- localStorage['openFolders'] = JSON.stringify(openFolders);
- this.setState({ openFolders: openFolders });
- }
- }, {
- key: 'addFolder',
- value: function addFolder(folder) {
- this.setState({ folders: this.state.folders.concat([folder]) });
- }
- }, {
- key: 'render',
- value: function render() {
- var _this2 = this;
-
- var openFolders = this.state.openFolders.map(function (folder_id) {
- var folder_list = _this2.state.folders.filter(function (folder) {
- return folder.id === folder_id;
- });
- if (!folder_list.length) return;
- var folder = folder_list[0];
- return (0, _preact.h)(_Files2.default, {
- folder: folder,
- onClose: function onClose() {
- return _this2.closeFolder(folder);
- }
- });
- });
- return (0, _preact.h)(
- 'div',
- { 'class': 'column' },
- (0, _preact.h)(_Folders2.default, { folders: this.state.folders,
- openFolder: function openFolder(folder) {
- return _this2.openFolder(folder);
- },
- addFolder: function addFolder(folder) {
- return _this2.addFolder(folder);
- }
- }),
- openFolders
- );
- }
- }]);
-
- return Browser;
-}(_preact.Component);
-
-exports.default = Browser;
-
-/***/ }),
-/* 62 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _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; }; }();
-
-var _preact = __webpack_require__(3);
-
-var _Modal = __webpack_require__(56);
-
-var _Modal2 = _interopRequireDefault(_Modal);
-
-var _FolderForm = __webpack_require__(63);
-
-var _FolderForm2 = _interopRequireDefault(_FolderForm);
-
-var _client = __webpack_require__(8);
-
-var _client2 = _interopRequireDefault(_client);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-var Folders = function (_Component) {
- _inherits(Folders, _Component);
-
- function Folders(props) {
- _classCallCheck(this, Folders);
-
- var _this = _possibleConstructorReturn(this, (Folders.__proto__ || Object.getPrototypeOf(Folders)).call(this));
-
- _this.state = {
- adding: false
- };
- return _this;
- }
-
- _createClass(Folders, [{
- key: 'openModal',
- value: function openModal() {
- this.setState({ adding: true });
- }
- }, {
- key: 'closeModal',
- value: function closeModal() {
- this.setState({ adding: false });
- }
- }, {
- key: 'toggle',
- value: function toggle(folder) {
- var _this2 = this;
-
- folder.open = !folder.open;
- if (folder.open && !folder.files) {
- _client2.default.file.index({ 'folder_id': folder.id }).then(function (files) {
- console.log(files);
- folder.files = files;
- _this2.props.openFolder(folder);
- });
- }
- }
- }, {
- key: 'render',
- value: function render() {
- var _this3 = this;
-
- var folders = (this.props.folders || []).map(function (folder, i) {
- return (0, _preact.h)(
- 'div',
- { key: i, onClick: function onClick() {
- return _this3.toggle(folder);
- } },
- (0, _preact.h)(
- 'span',
- { 'class': 'name' },
- folder.name
- )
- );
- });
- return (0, _preact.h)(
- 'div',
- { 'class': 'window' },
- (0, _preact.h)(
- 'div',
- { 'class': 'heading' },
- (0, _preact.h)(
- 'b',
- null,
- 'browser'
- ),
- (0, _preact.h)(
- 'div',
- { 'class': 'buttons' },
- (0, _preact.h)(
- 'button',
- { onClick: function onClick() {
- return _this3.openModal();
- } },
- '+ folder'
- )
- )
- ),
- (0, _preact.h)(
- 'div',
- { 'class': 'list' },
- folders
- ),
- (0, _preact.h)(
- _Modal2.default,
- { visible: this.state.adding, onClose: function onClose() {
- return _this3.closeModal();
- } },
- (0, _preact.h)(_FolderForm2.default, { addFolder: this.props.addFolder, onClose: function onClose() {
- return _this3.closeModal();
- } })
- )
- );
- }
- }]);
-
- return Folders;
-}(_preact.Component);
-
-exports.default = Folders;
-
-/***/ }),
-/* 63 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _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; }; }();
-
-var _preact = __webpack_require__(3);
-
-var _client = __webpack_require__(8);
-
-var _client2 = _interopRequireDefault(_client);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
-
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-var FolderForm = function (_Component) {
- _inherits(FolderForm, _Component);
-
- function FolderForm(props) {
- _classCallCheck(this, FolderForm);
-
- var _this = _possibleConstructorReturn(this, (FolderForm.__proto__ || Object.getPrototypeOf(FolderForm)).call(this));
-
- _this.state = {
- name: ''
- };
- _this.updateState = _this.updateState.bind(_this);
- _this.handleSubmit = _this.handleSubmit.bind(_this);
- return _this;
- }
-
- _createClass(FolderForm, [{
- key: 'updateState',
- value: function updateState(event) {
- var _setState;
-
- var name = event.target.name;
- var value = event.target.value;
- console.log(name, value);
- this.setState((_setState = {}, _defineProperty(_setState, name, value), _defineProperty(_setState, 'error', null), _setState));
- }
- }, {
- key: 'handleSubmit',
- value: function handleSubmit(event) {
- var _this2 = this;
-
- event.preventDefault();
- var rec = Object.assign({}, this.state);
- delete rec.error;
- this.props.onClose();
- _client2.default.folder.create(rec).then(function (data) {
- _this2.props.addFolder(data);
- });
- }
- }, {
- key: 'render',
- value: function render() {
- return (0, _preact.h)(
- 'div',
- { 'class': 'form' },
- (0, _preact.h)(
- 'h1',
- null,
- 'new folder'
- ),
- (0, _preact.h)(
- 'div',
- null,
- (0, _preact.h)(
- 'label',
- { 'for': 'folders_folder_name' },
- 'Name'
- ),
- (0, _preact.h)('input', { type: 'text', id: 'folders_folder_name', name: 'name', value: this.state.name, onChange: this.updateState })
- ),
- (0, _preact.h)(
- 'div',
- null,
- (0, _preact.h)('label', null),
- (0, _preact.h)(
- 'button',
- { onClick: this.handleSubmit },
- 'Create'
- )
- )
- );
- }
- }]);
-
- return FolderForm;
-}(_preact.Component);
-
-exports.default = FolderForm;
-
-/***/ }),
-/* 64 */,
-/* 65 */
+/* 107 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -6309,76 +8997,41 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
-var _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; }; }();
+var _reactRedux = __webpack_require__(6);
-var _preact = __webpack_require__(3);
+var _actions = __webpack_require__(7);
-var _client = __webpack_require__(8);
+var _TaskFormView = __webpack_require__(108);
-var _client2 = _interopRequireDefault(_client);
+var _TaskFormView2 = _interopRequireDefault(_TaskFormView);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-var Folder = function (_Component) {
- _inherits(Folder, _Component);
-
- function Folder(props) {
- _classCallCheck(this, Folder);
-
- var _this = _possibleConstructorReturn(this, (Folder.__proto__ || Object.getPrototypeOf(Folder)).call(this));
+var mapStateToProps = function mapStateToProps(state) {
+ return state.currentTask;
+};
- _this.state = {};
- _this.updateFiles = _this.updateFiles.bind(_this);
- return _this;
+var mapDispatchToProps = {
+ clearContent: function clearContent() {
+ return (0, _actions.setContent)(null);
+ },
+ clearStyle: function clearStyle() {
+ return (0, _actions.setStyle)(null);
+ },
+ setAlpha: function setAlpha(alpha) {
+ return (0, _actions.setAlpha)(alpha);
+ },
+ createTask: function createTask() {
+ return (0, _actions.createTask)();
}
+};
- _createClass(Folder, [{
- key: 'updateFiles',
- value: function updateFiles(event) {
- var _this2 = this;
-
- var name = event.target.name;
- var files = event.target.files;
- _client2.default.upload(this.props.folder.id, files).then(function (got_files) {
- _this2.props.addFiles(got_files);
- });
- }
- }, {
- key: 'render',
- value: function render() {
- var files = (this.props.folder.files || []).map(function (file, i) {
- return (0, _preact.h)(
- 'div',
- { key: i },
- file.name
- );
- });
- return (0, _preact.h)(
- 'div',
- { 'class': 'fileUploadButton' },
- (0, _preact.h)('input', { type: 'file', multiple: true, name: 'files', onChange: this.updateFiles }),
- (0, _preact.h)(
- 'span',
- null,
- '+ upload'
- )
- );
- }
- }]);
-
- return Folder;
-}(_preact.Component);
+var TaskForm = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_TaskFormView2.default);
-exports.default = Folder;
+exports.default = TaskForm;
/***/ }),
-/* 66 */
+/* 108 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -6389,11 +9042,11 @@ Object.defineProperty(exports, "__esModule", {
});
exports.default = TaskFormView;
-var _preact = __webpack_require__(3);
+var _preact = __webpack_require__(0);
-var _reactRouterDom = __webpack_require__(5);
+var _reactRouterDom = __webpack_require__(34);
-var _client = __webpack_require__(8);
+var _client = __webpack_require__(5);
var _client2 = _interopRequireDefault(_client);
@@ -6466,2092 +9119,38 @@ function TaskFormView(props) {
}
/***/ }),
-/* 67 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__baseGetTag_js__ = __webpack_require__(79);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getPrototype_js__ = __webpack_require__(84);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__isObjectLike_js__ = __webpack_require__(86);
-
-
-
-
-/** `Object#toString` result references. */
-var objectTag = '[object Object]';
-
-/** Used for built-in method references. */
-var funcProto = Function.prototype,
- objectProto = Object.prototype;
-
-/** Used to resolve the decompiled source of functions. */
-var funcToString = funcProto.toString;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/** Used to infer the `Object` constructor. */
-var objectCtorString = funcToString.call(Object);
-
-/**
- * Checks if `value` is a plain object, that is, an object created by the
- * `Object` constructor or one with a `[[Prototype]]` of `null`.
- *
- * @static
- * @memberOf _
- * @since 0.8.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * }
- *
- * _.isPlainObject(new Foo);
- * // => false
- *
- * _.isPlainObject([1, 2, 3]);
- * // => false
- *
- * _.isPlainObject({ 'x': 0, 'y': 0 });
- * // => true
- *
- * _.isPlainObject(Object.create(null));
- * // => true
- */
-function isPlainObject(value) {
- if (!__WEBPACK_IMPORTED_MODULE_2__isObjectLike_js__["a" /* default */](value) || __WEBPACK_IMPORTED_MODULE_0__baseGetTag_js__["a" /* default */](value) != objectTag) {
- return false;
- }
- var proto = __WEBPACK_IMPORTED_MODULE_1__getPrototype_js__["a" /* default */](value);
- if (proto === null) {
- return true;
- }
- var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
- return typeof Ctor == 'function' && Ctor instanceof Ctor &&
- funcToString.call(Ctor) == objectCtorString;
-}
-
-/* harmony default export */ __webpack_exports__["a"] = (isPlainObject);
-
-
-/***/ }),
-/* 68 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (immutable) */ __webpack_exports__["a"] = warning;
-/**
- * Prints a warning in the console if it exists.
- *
- * @param {String} message The warning message.
- * @returns {void}
- */
-function warning(message) {
- /* eslint-disable no-console */
- if (typeof console !== 'undefined' && typeof console.error === 'function') {
- console.error(message);
- }
- /* eslint-enable no-console */
- try {
- // This error was thrown as a convenience so that if you enable
- // "break on all exceptions" in your console,
- // it would pause the execution at this line.
- throw new Error(message);
- /* eslint-disable no-empty */
- } catch (e) {}
- /* eslint-enable no-empty */
-}
-
-/***/ }),
-/* 69 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
-/* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__createStore__ = __webpack_require__(70);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__combineReducers__ = __webpack_require__(91);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__bindActionCreators__ = __webpack_require__(92);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__applyMiddleware__ = __webpack_require__(93);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__compose__ = __webpack_require__(74);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_warning__ = __webpack_require__(73);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "createStore", function() { return __WEBPACK_IMPORTED_MODULE_0__createStore__["b"]; });
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "combineReducers", function() { return __WEBPACK_IMPORTED_MODULE_1__combineReducers__["a"]; });
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "bindActionCreators", function() { return __WEBPACK_IMPORTED_MODULE_2__bindActionCreators__["a"]; });
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "applyMiddleware", function() { return __WEBPACK_IMPORTED_MODULE_3__applyMiddleware__["a"]; });
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "compose", function() { return __WEBPACK_IMPORTED_MODULE_4__compose__["a"]; });
-
-
-
-
-
-
-
-/*
-* This is a dummy function to check if the function name has been altered by minification.
-* If the function has been minified and NODE_ENV !== 'production', warn the user.
-*/
-function isCrushed() {}
-
-if (process.env.NODE_ENV !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {
- __WEBPACK_IMPORTED_MODULE_5__utils_warning__["a" /* 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.');
-}
-
-
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4)))
-
-/***/ }),
-/* 70 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ActionTypes; });
-/* harmony export (immutable) */ __webpack_exports__["b"] = createStore;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__ = __webpack_require__(67);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_symbol_observable__ = __webpack_require__(87);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_symbol_observable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_symbol_observable__);
-
-
-
-/**
- * These are private action types reserved by Redux.
- * For any unknown actions, you must return the current state.
- * If the current state is undefined, you must return the initial state.
- * Do not reference these action types directly in your code.
- */
-var ActionTypes = {
- INIT: '@@redux/INIT'
-
- /**
- * Creates a Redux store that holds the state tree.
- * The only way to change the data in the store is to call `dispatch()` on it.
- *
- * There should only be a single store in your app. To specify how different
- * parts of the state tree respond to actions, you may combine several reducers
- * into a single reducer function by using `combineReducers`.
- *
- * @param {Function} reducer A function that returns the next state tree, given
- * the current state tree and the action to handle.
- *
- * @param {any} [preloadedState] The initial state. You may optionally specify it
- * to hydrate the state from the server in universal apps, or to restore a
- * previously serialized user session.
- * If you use `combineReducers` to produce the root reducer function, this must be
- * an object with the same shape as `combineReducers` keys.
- *
- * @param {Function} [enhancer] The store enhancer. You may optionally specify it
- * to enhance the store with third-party capabilities such as middleware,
- * time travel, persistence, etc. The only store enhancer that ships with Redux
- * is `applyMiddleware()`.
- *
- * @returns {Store} A Redux store that lets you read the state, dispatch actions
- * and subscribe to changes.
- */
-};function createStore(reducer, preloadedState, enhancer) {
- var _ref2;
-
- if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {
- enhancer = preloadedState;
- preloadedState = undefined;
- }
-
- if (typeof enhancer !== 'undefined') {
- if (typeof enhancer !== 'function') {
- throw new Error('Expected the enhancer to be a function.');
- }
-
- return enhancer(createStore)(reducer, preloadedState);
- }
-
- if (typeof reducer !== 'function') {
- throw new Error('Expected the reducer to be a function.');
- }
-
- var currentReducer = reducer;
- var currentState = preloadedState;
- var currentListeners = [];
- var nextListeners = currentListeners;
- var isDispatching = false;
-
- function ensureCanMutateNextListeners() {
- if (nextListeners === currentListeners) {
- nextListeners = currentListeners.slice();
- }
- }
-
- /**
- * Reads the state tree managed by the store.
- *
- * @returns {any} The current state tree of your application.
- */
- function getState() {
- return currentState;
- }
-
- /**
- * Adds a change listener. It will be called any time an action is dispatched,
- * and some part of the state tree may potentially have changed. You may then
- * call `getState()` to read the current state tree inside the callback.
- *
- * You may call `dispatch()` from a change listener, with the following
- * caveats:
- *
- * 1. The subscriptions are snapshotted just before every `dispatch()` call.
- * If you subscribe or unsubscribe while the listeners are being invoked, this
- * will not have any effect on the `dispatch()` that is currently in progress.
- * However, the next `dispatch()` call, whether nested or not, will use a more
- * recent snapshot of the subscription list.
- *
- * 2. The listener should not expect to see all state changes, as the state
- * might have been updated multiple times during a nested `dispatch()` before
- * the listener is called. It is, however, guaranteed that all subscribers
- * registered before the `dispatch()` started will be called with the latest
- * state by the time it exits.
- *
- * @param {Function} listener A callback to be invoked on every dispatch.
- * @returns {Function} A function to remove this change listener.
- */
- function subscribe(listener) {
- if (typeof listener !== 'function') {
- throw new Error('Expected listener to be a function.');
- }
-
- var isSubscribed = true;
-
- ensureCanMutateNextListeners();
- nextListeners.push(listener);
-
- return function unsubscribe() {
- if (!isSubscribed) {
- return;
- }
-
- isSubscribed = false;
-
- ensureCanMutateNextListeners();
- var index = nextListeners.indexOf(listener);
- nextListeners.splice(index, 1);
- };
- }
-
- /**
- * Dispatches an action. It is the only way to trigger a state change.
- *
- * The `reducer` function, used to create the store, will be called with the
- * current state tree and the given `action`. Its return value will
- * be considered the **next** state of the tree, and the change listeners
- * will be notified.
- *
- * The base implementation only supports plain object actions. If you want to
- * dispatch a Promise, an Observable, a thunk, or something else, you need to
- * wrap your store creating function into the corresponding middleware. For
- * example, see the documentation for the `redux-thunk` package. Even the
- * middleware will eventually dispatch plain object actions using this method.
- *
- * @param {Object} action A plain object representing “what changed”. It is
- * a good idea to keep actions serializable so you can record and replay user
- * sessions, or use the time travelling `redux-devtools`. An action must have
- * a `type` property which may not be `undefined`. It is a good idea to use
- * string constants for action types.
- *
- * @returns {Object} For convenience, the same action object you dispatched.
- *
- * Note that, if you use a custom middleware, it may wrap `dispatch()` to
- * return something else (for example, a Promise you can await).
- */
- function dispatch(action) {
- if (!__WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__["a" /* default */](action)) {
- throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.');
- }
-
- if (typeof action.type === 'undefined') {
- throw new Error('Actions may not have an undefined "type" property. ' + 'Have you misspelled a constant?');
- }
-
- if (isDispatching) {
- throw new Error('Reducers may not dispatch actions.');
- }
-
- try {
- isDispatching = true;
- currentState = currentReducer(currentState, action);
- } finally {
- isDispatching = false;
- }
-
- var listeners = currentListeners = nextListeners;
- for (var i = 0; i < listeners.length; i++) {
- var listener = listeners[i];
- listener();
- }
-
- return action;
- }
-
- /**
- * Replaces the reducer currently used by the store to calculate the state.
- *
- * You might need this if your app implements code splitting and you want to
- * load some of the reducers dynamically. You might also need this if you
- * implement a hot reloading mechanism for Redux.
- *
- * @param {Function} nextReducer The reducer for the store to use instead.
- * @returns {void}
- */
- function replaceReducer(nextReducer) {
- if (typeof nextReducer !== 'function') {
- throw new Error('Expected the nextReducer to be a function.');
- }
-
- currentReducer = nextReducer;
- dispatch({ type: ActionTypes.INIT });
- }
-
- /**
- * Interoperability point for observable/reactive libraries.
- * @returns {observable} A minimal observable of state changes.
- * For more information, see the observable proposal:
- * https://github.com/tc39/proposal-observable
- */
- function observable() {
- var _ref;
-
- var outerSubscribe = subscribe;
- return _ref = {
- /**
- * The minimal observable subscription method.
- * @param {Object} observer Any object that can be used as an observer.
- * The observer object should have a `next` method.
- * @returns {subscription} An object with an `unsubscribe` method that can
- * be used to unsubscribe the observable from the store, and prevent further
- * emission of values from the observable.
- */
- subscribe: function subscribe(observer) {
- if (typeof observer !== 'object') {
- throw new TypeError('Expected the observer to be an object.');
- }
-
- function observeState() {
- if (observer.next) {
- observer.next(getState());
- }
- }
-
- observeState();
- var unsubscribe = outerSubscribe(observeState);
- return { unsubscribe: unsubscribe };
- }
- }, _ref[__WEBPACK_IMPORTED_MODULE_1_symbol_observable___default.a] = function () {
- return this;
- }, _ref;
- }
-
- // When a store is created, an "INIT" action is dispatched so that every
- // reducer returns their initial state. This effectively populates
- // the initial state tree.
- dispatch({ type: ActionTypes.INIT });
-
- return _ref2 = {
- dispatch: dispatch,
- subscribe: subscribe,
- getState: getState,
- replaceReducer: replaceReducer
- }, _ref2[__WEBPACK_IMPORTED_MODULE_1_symbol_observable___default.a] = observable, _ref2;
-}
-
-/***/ }),
-/* 71 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__root_js__ = __webpack_require__(80);
-
-
-/** Built-in value references. */
-var Symbol = __WEBPACK_IMPORTED_MODULE_0__root_js__["a" /* default */].Symbol;
-
-/* harmony default export */ __webpack_exports__["a"] = (Symbol);
-
-
-/***/ }),
-/* 72 */
-/***/ (function(module, exports) {
-
-var g;
-
-// This works in non-strict mode
-g = (function() {
- return this;
-})();
-
-try {
- // This works if eval is allowed (see CSP)
- g = g || Function("return this")() || (1,eval)("this");
-} catch(e) {
- // This works if the window reference is available
- if(typeof window === "object")
- g = window;
-}
-
-// g can still be undefined, but nothing to do about it...
-// We return undefined, instead of nothing here, so it's
-// easier to handle this case. if(!global) { ...}
-
-module.exports = g;
-
-
-/***/ }),
-/* 73 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (immutable) */ __webpack_exports__["a"] = warning;
-/**
- * Prints a warning in the console if it exists.
- *
- * @param {String} message The warning message.
- * @returns {void}
- */
-function warning(message) {
- /* eslint-disable no-console */
- if (typeof console !== 'undefined' && typeof console.error === 'function') {
- console.error(message);
- }
- /* eslint-enable no-console */
- try {
- // This error was thrown as a convenience so that if you enable
- // "break on all exceptions" in your console,
- // it would pause the execution at this line.
- throw new Error(message);
- /* eslint-disable no-empty */
- } catch (e) {}
- /* eslint-enable no-empty */
-}
-
-/***/ }),
-/* 74 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (immutable) */ __webpack_exports__["a"] = compose;
-/**
- * Composes single-argument functions from right to left. The rightmost
- * function can take multiple arguments as it provides the signature for
- * the resulting composite function.
- *
- * @param {...Function} funcs The functions to compose.
- * @returns {Function} A function obtained by composing the argument functions
- * from right to left. For example, compose(f, g, h) is identical to doing
- * (...args) => f(g(h(...args))).
- */
-
-function compose() {
- for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) {
- funcs[_key] = arguments[_key];
- }
-
- if (funcs.length === 0) {
- return function (arg) {
- return arg;
- };
- }
-
- if (funcs.length === 1) {
- return funcs[0];
- }
-
- return funcs.reduce(function (a, b) {
- return function () {
- return a(b.apply(undefined, arguments));
- };
- });
-}
-
-/***/ }),
-/* 75 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return subscriptionShape; });
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return storeShape; });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types__ = __webpack_require__(0);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_prop_types__);
-
-
-var subscriptionShape = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.shape({
- trySubscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
- tryUnsubscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
- notifyNestedSubs: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
- isSubscribed: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired
-});
-
-var storeShape = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.shape({
- subscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
- dispatch: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired,
- getState: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired
-});
-
-/***/ }),
-/* 76 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["a"] = connectAdvanced;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics__ = __webpack_require__(41);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(9);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_Subscription__ = __webpack_require__(96);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__ = __webpack_require__(75);
-var _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; };
-
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
-
-
-
-
-
-
-
-
-var hotReloadingVersion = 0;
-var dummyState = {};
-function noop() {}
-function makeSelectorStateful(sourceSelector, store) {
- // wrap the selector in an object that tracks its results between runs.
- var selector = {
- run: function runComponentSelector(props) {
- try {
- var nextProps = sourceSelector(store.getState(), props);
- if (nextProps !== selector.props || selector.error) {
- selector.shouldComponentUpdate = true;
- selector.props = nextProps;
- selector.error = null;
- }
- } catch (error) {
- selector.shouldComponentUpdate = true;
- selector.error = error;
- }
- }
- };
-
- return selector;
-}
-
-function connectAdvanced(
-/*
- selectorFactory is a func that is responsible for returning the selector function used to
- compute new props from state, props, and dispatch. For example:
- export default connectAdvanced((dispatch, options) => (state, props) => ({
- thing: state.things[props.thingId],
- saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)),
- }))(YourComponent)
- Access to dispatch is provided to the factory so selectorFactories can bind actionCreators
- outside of their selector as an optimization. Options passed to connectAdvanced are passed to
- the selectorFactory, along with displayName and WrappedComponent, as the second argument.
- Note that selectorFactory is responsible for all caching/memoization of inbound and outbound
- props. Do not use connectAdvanced directly without memoizing results between calls to your
- selector, otherwise the Connect component will re-render on every state or props change.
-*/
-selectorFactory) {
- var _contextTypes, _childContextTypes;
-
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref$getDisplayName = _ref.getDisplayName,
- getDisplayName = _ref$getDisplayName === undefined ? function (name) {
- return 'ConnectAdvanced(' + name + ')';
- } : _ref$getDisplayName,
- _ref$methodName = _ref.methodName,
- methodName = _ref$methodName === undefined ? 'connectAdvanced' : _ref$methodName,
- _ref$renderCountProp = _ref.renderCountProp,
- renderCountProp = _ref$renderCountProp === undefined ? undefined : _ref$renderCountProp,
- _ref$shouldHandleStat = _ref.shouldHandleStateChanges,
- shouldHandleStateChanges = _ref$shouldHandleStat === undefined ? true : _ref$shouldHandleStat,
- _ref$storeKey = _ref.storeKey,
- storeKey = _ref$storeKey === undefined ? 'store' : _ref$storeKey,
- _ref$withRef = _ref.withRef,
- withRef = _ref$withRef === undefined ? false : _ref$withRef,
- connectOptions = _objectWithoutProperties(_ref, ['getDisplayName', 'methodName', 'renderCountProp', 'shouldHandleStateChanges', 'storeKey', 'withRef']);
-
- var subscriptionKey = storeKey + 'Subscription';
- var version = hotReloadingVersion++;
-
- var contextTypes = (_contextTypes = {}, _contextTypes[storeKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["a" /* storeShape */], _contextTypes[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["b" /* subscriptionShape */], _contextTypes);
- var childContextTypes = (_childContextTypes = {}, _childContextTypes[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["b" /* subscriptionShape */], _childContextTypes);
-
- return function wrapWithConnect(WrappedComponent) {
- __WEBPACK_IMPORTED_MODULE_1_invariant___default.a(typeof WrappedComponent == 'function', 'You must pass a component to the function returned by ' + ('connect. Instead received ' + JSON.stringify(WrappedComponent)));
-
- var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';
-
- var displayName = getDisplayName(wrappedComponentName);
-
- var selectorFactoryOptions = _extends({}, connectOptions, {
- getDisplayName: getDisplayName,
- methodName: methodName,
- renderCountProp: renderCountProp,
- shouldHandleStateChanges: shouldHandleStateChanges,
- storeKey: storeKey,
- withRef: withRef,
- displayName: displayName,
- wrappedComponentName: wrappedComponentName,
- WrappedComponent: WrappedComponent
- });
-
- var Connect = function (_Component) {
- _inherits(Connect, _Component);
-
- function Connect(props, context) {
- _classCallCheck(this, Connect);
-
- var _this = _possibleConstructorReturn(this, _Component.call(this, props, context));
-
- _this.version = version;
- _this.state = {};
- _this.renderCount = 0;
- _this.store = props[storeKey] || context[storeKey];
- _this.propsMode = Boolean(props[storeKey]);
- _this.setWrappedInstance = _this.setWrappedInstance.bind(_this);
-
- __WEBPACK_IMPORTED_MODULE_1_invariant___default.a(_this.store, 'Could not find "' + storeKey + '" in either the context or props of ' + ('"' + displayName + '". Either wrap the root component in a <Provider>, ') + ('or explicitly pass "' + storeKey + '" as a prop to "' + displayName + '".'));
-
- _this.initSelector();
- _this.initSubscription();
- return _this;
- }
-
- Connect.prototype.getChildContext = function getChildContext() {
- var _ref2;
-
- // If this component received store from props, its subscription should be transparent
- // to any descendants receiving store+subscription from context; it passes along
- // subscription passed to it. Otherwise, it shadows the parent subscription, which allows
- // Connect to control ordering of notifications to flow top-down.
- var subscription = this.propsMode ? null : this.subscription;
- return _ref2 = {}, _ref2[subscriptionKey] = subscription || this.context[subscriptionKey], _ref2;
- };
-
- Connect.prototype.componentDidMount = function componentDidMount() {
- if (!shouldHandleStateChanges) return;
-
- // componentWillMount fires during server side rendering, but componentDidMount and
- // componentWillUnmount do not. Because of this, trySubscribe happens during ...didMount.
- // Otherwise, unsubscription would never take place during SSR, causing a memory leak.
- // To handle the case where a child component may have triggered a state change by
- // dispatching an action in its componentWillMount, we have to re-run the select and maybe
- // re-render.
- this.subscription.trySubscribe();
- this.selector.run(this.props);
- if (this.selector.shouldComponentUpdate) this.forceUpdate();
- };
-
- Connect.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
- this.selector.run(nextProps);
- };
-
- Connect.prototype.shouldComponentUpdate = function shouldComponentUpdate() {
- return this.selector.shouldComponentUpdate;
- };
-
- Connect.prototype.componentWillUnmount = function componentWillUnmount() {
- if (this.subscription) this.subscription.tryUnsubscribe();
- this.subscription = null;
- this.notifyNestedSubs = noop;
- this.store = null;
- this.selector.run = noop;
- this.selector.shouldComponentUpdate = false;
- };
-
- Connect.prototype.getWrappedInstance = function getWrappedInstance() {
- __WEBPACK_IMPORTED_MODULE_1_invariant___default.a(withRef, 'To access the wrapped instance, you need to specify ' + ('{ withRef: true } in the options argument of the ' + methodName + '() call.'));
- return this.wrappedInstance;
- };
-
- Connect.prototype.setWrappedInstance = function setWrappedInstance(ref) {
- this.wrappedInstance = ref;
- };
-
- Connect.prototype.initSelector = function initSelector() {
- var sourceSelector = selectorFactory(this.store.dispatch, selectorFactoryOptions);
- this.selector = makeSelectorStateful(sourceSelector, this.store);
- this.selector.run(this.props);
- };
-
- Connect.prototype.initSubscription = function initSubscription() {
- if (!shouldHandleStateChanges) return;
-
- // parentSub's source should match where store came from: props vs. context. A component
- // connected to the store via props shouldn't use subscription from context, or vice versa.
- var parentSub = (this.propsMode ? this.props : this.context)[subscriptionKey];
- this.subscription = new __WEBPACK_IMPORTED_MODULE_3__utils_Subscription__["a" /* default */](this.store, parentSub, this.onStateChange.bind(this));
-
- // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in
- // the middle of the notification loop, where `this.subscription` will then be null. An
- // extra null check every change can be avoided by copying the method onto `this` and then
- // replacing it with a no-op on unmount. This can probably be avoided if Subscription's
- // listeners logic is changed to not call listeners that have been unsubscribed in the
- // middle of the notification loop.
- this.notifyNestedSubs = this.subscription.notifyNestedSubs.bind(this.subscription);
- };
-
- Connect.prototype.onStateChange = function onStateChange() {
- this.selector.run(this.props);
-
- if (!this.selector.shouldComponentUpdate) {
- this.notifyNestedSubs();
- } else {
- this.componentDidUpdate = this.notifyNestedSubsOnComponentDidUpdate;
- this.setState(dummyState);
- }
- };
-
- Connect.prototype.notifyNestedSubsOnComponentDidUpdate = function notifyNestedSubsOnComponentDidUpdate() {
- // `componentDidUpdate` is conditionally implemented when `onStateChange` determines it
- // needs to notify nested subs. Once called, it unimplements itself until further state
- // changes occur. Doing it this way vs having a permanent `componentDidMount` that does
- // a boolean check every time avoids an extra method call most of the time, resulting
- // in some perf boost.
- this.componentDidUpdate = undefined;
- this.notifyNestedSubs();
- };
-
- Connect.prototype.isSubscribed = function isSubscribed() {
- return Boolean(this.subscription) && this.subscription.isSubscribed();
- };
-
- Connect.prototype.addExtraProps = function addExtraProps(props) {
- if (!withRef && !renderCountProp && !(this.propsMode && this.subscription)) return props;
- // make a shallow copy so that fields added don't leak to the original selector.
- // this is especially important for 'ref' since that's a reference back to the component
- // instance. a singleton memoized selector would then be holding a reference to the
- // instance, preventing the instance from being garbage collected, and that would be bad
- var withExtras = _extends({}, props);
- if (withRef) withExtras.ref = this.setWrappedInstance;
- if (renderCountProp) withExtras[renderCountProp] = this.renderCount++;
- if (this.propsMode && this.subscription) withExtras[subscriptionKey] = this.subscription;
- return withExtras;
- };
-
- Connect.prototype.render = function render() {
- var selector = this.selector;
- selector.shouldComponentUpdate = false;
-
- if (selector.error) {
- throw selector.error;
- } else {
- return __WEBPACK_IMPORTED_MODULE_2_react__["createElement"](WrappedComponent, this.addExtraProps(selector.props));
- }
- };
-
- return Connect;
- }(__WEBPACK_IMPORTED_MODULE_2_react__["Component"]);
-
- Connect.WrappedComponent = WrappedComponent;
- Connect.displayName = displayName;
- Connect.childContextTypes = childContextTypes;
- Connect.contextTypes = contextTypes;
- Connect.propTypes = contextTypes;
-
- if (process.env.NODE_ENV !== 'production') {
- Connect.prototype.componentWillUpdate = function componentWillUpdate() {
- // We are hot reloading!
- if (this.version !== version) {
- this.version = version;
- this.initSelector();
-
- if (this.subscription) this.subscription.tryUnsubscribe();
- this.initSubscription();
- if (shouldHandleStateChanges) this.subscription.trySubscribe();
- }
- };
- }
-
- return __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics___default.a(Connect, WrappedComponent);
- };
-}
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4)))
-
-/***/ }),
-/* 77 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["a"] = wrapMapToPropsConstant;
-/* unused harmony export getDependsOnOwnProps */
-/* harmony export (immutable) */ __webpack_exports__["b"] = wrapMapToPropsFunc;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__ = __webpack_require__(78);
-
-
-function wrapMapToPropsConstant(getConstant) {
- return function initConstantSelector(dispatch, options) {
- var constant = getConstant(dispatch, options);
-
- function constantSelector() {
- return constant;
- }
- constantSelector.dependsOnOwnProps = false;
- return constantSelector;
- };
-}
-
-// dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args
-// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine
-// whether mapToProps needs to be invoked when props have changed.
-//
-// A length of one signals that mapToProps does not depend on props from the parent component.
-// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and
-// therefore not reporting its length accurately..
-function getDependsOnOwnProps(mapToProps) {
- return mapToProps.dependsOnOwnProps !== null && mapToProps.dependsOnOwnProps !== undefined ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1;
-}
-
-// Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction,
-// this function wraps mapToProps in a proxy function which does several things:
-//
-// * Detects whether the mapToProps function being called depends on props, which
-// is used by selectorFactory to decide if it should reinvoke on props changes.
-//
-// * On first call, handles mapToProps if returns another function, and treats that
-// new function as the true mapToProps for subsequent calls.
-//
-// * On first call, verifies the first result is a plain object, in order to warn
-// the developer that their mapToProps function is not returning a valid result.
-//
-function wrapMapToPropsFunc(mapToProps, methodName) {
- return function initProxySelector(dispatch, _ref) {
- var displayName = _ref.displayName;
-
- var proxy = function mapToPropsProxy(stateOrDispatch, ownProps) {
- return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch);
- };
-
- // allow detectFactoryAndVerify to get ownProps
- proxy.dependsOnOwnProps = true;
-
- proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) {
- proxy.mapToProps = mapToProps;
- proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps);
- var props = proxy(stateOrDispatch, ownProps);
-
- if (typeof props === 'function') {
- proxy.mapToProps = props;
- proxy.dependsOnOwnProps = getDependsOnOwnProps(props);
- props = proxy(stateOrDispatch, ownProps);
- }
-
- if (process.env.NODE_ENV !== 'production') __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__["a" /* default */](props, displayName, methodName);
-
- return props;
- };
-
- return proxy;
- };
-}
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4)))
-
-/***/ }),
-/* 78 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (immutable) */ __webpack_exports__["a"] = verifyPlainObject;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__ = __webpack_require__(67);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__warning__ = __webpack_require__(68);
-
-
-
-function verifyPlainObject(value, displayName, methodName) {
- if (!__WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__["a" /* default */](value)) {
- __WEBPACK_IMPORTED_MODULE_1__warning__["a" /* default */](methodName + '() in ' + displayName + ' must return a plain object. Instead received ' + value + '.');
- }
-}
-
-/***/ }),
-/* 79 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Symbol_js__ = __webpack_require__(71);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getRawTag_js__ = __webpack_require__(82);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__objectToString_js__ = __webpack_require__(83);
-
-
-
-
-/** `Object#toString` result references. */
-var nullTag = '[object Null]',
- undefinedTag = '[object Undefined]';
-
-/** Built-in value references. */
-var symToStringTag = __WEBPACK_IMPORTED_MODULE_0__Symbol_js__["a" /* default */] ? __WEBPACK_IMPORTED_MODULE_0__Symbol_js__["a" /* default */].toStringTag : undefined;
-
-/**
- * The base implementation of `getTag` without fallbacks for buggy environments.
- *
- * @private
- * @param {*} value The value to query.
- * @returns {string} Returns the `toStringTag`.
- */
-function baseGetTag(value) {
- if (value == null) {
- return value === undefined ? undefinedTag : nullTag;
- }
- return (symToStringTag && symToStringTag in Object(value))
- ? __WEBPACK_IMPORTED_MODULE_1__getRawTag_js__["a" /* default */](value)
- : __WEBPACK_IMPORTED_MODULE_2__objectToString_js__["a" /* default */](value);
-}
-
-/* harmony default export */ __webpack_exports__["a"] = (baseGetTag);
-
-
-/***/ }),
-/* 80 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__freeGlobal_js__ = __webpack_require__(81);
-
-
-/** Detect free variable `self`. */
-var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
-
-/** Used as a reference to the global object. */
-var root = __WEBPACK_IMPORTED_MODULE_0__freeGlobal_js__["a" /* default */] || freeSelf || Function('return this')();
-
-/* harmony default export */ __webpack_exports__["a"] = (root);
-
-
-/***/ }),
-/* 81 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
-var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
-
-/* harmony default export */ __webpack_exports__["a"] = (freeGlobal);
-
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(72)))
-
-/***/ }),
-/* 82 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Symbol_js__ = __webpack_require__(71);
-
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Used to resolve the
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
- * of values.
- */
-var nativeObjectToString = objectProto.toString;
-
-/** Built-in value references. */
-var symToStringTag = __WEBPACK_IMPORTED_MODULE_0__Symbol_js__["a" /* default */] ? __WEBPACK_IMPORTED_MODULE_0__Symbol_js__["a" /* default */].toStringTag : undefined;
-
-/**
- * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
- *
- * @private
- * @param {*} value The value to query.
- * @returns {string} Returns the raw `toStringTag`.
- */
-function getRawTag(value) {
- var isOwn = hasOwnProperty.call(value, symToStringTag),
- tag = value[symToStringTag];
-
- try {
- value[symToStringTag] = undefined;
- var unmasked = true;
- } catch (e) {}
-
- var result = nativeObjectToString.call(value);
- if (unmasked) {
- if (isOwn) {
- value[symToStringTag] = tag;
- } else {
- delete value[symToStringTag];
- }
- }
- return result;
-}
-
-/* harmony default export */ __webpack_exports__["a"] = (getRawTag);
-
-
-/***/ }),
-/* 83 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
- * of values.
- */
-var nativeObjectToString = objectProto.toString;
-
-/**
- * Converts `value` to a string using `Object.prototype.toString`.
- *
- * @private
- * @param {*} value The value to convert.
- * @returns {string} Returns the converted string.
- */
-function objectToString(value) {
- return nativeObjectToString.call(value);
-}
-
-/* harmony default export */ __webpack_exports__["a"] = (objectToString);
-
-
-/***/ }),
-/* 84 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__overArg_js__ = __webpack_require__(85);
-
-
-/** Built-in value references. */
-var getPrototype = __WEBPACK_IMPORTED_MODULE_0__overArg_js__["a" /* default */](Object.getPrototypeOf, Object);
-
-/* harmony default export */ __webpack_exports__["a"] = (getPrototype);
-
-
-/***/ }),
-/* 85 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/**
- * Creates a unary function that invokes `func` with its argument transformed.
- *
- * @private
- * @param {Function} func The function to wrap.
- * @param {Function} transform The argument transform.
- * @returns {Function} Returns the new function.
- */
-function overArg(func, transform) {
- return function(arg) {
- return func(transform(arg));
- };
-}
-
-/* harmony default export */ __webpack_exports__["a"] = (overArg);
-
-
-/***/ }),
-/* 86 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/**
- * Checks if `value` is object-like. A value is object-like if it's not `null`
- * and has a `typeof` result of "object".
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
- * @example
- *
- * _.isObjectLike({});
- * // => true
- *
- * _.isObjectLike([1, 2, 3]);
- * // => true
- *
- * _.isObjectLike(_.noop);
- * // => false
- *
- * _.isObjectLike(null);
- * // => false
- */
-function isObjectLike(value) {
- return value != null && typeof value == 'object';
-}
-
-/* harmony default export */ __webpack_exports__["a"] = (isObjectLike);
-
-
-/***/ }),
-/* 87 */
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__(88);
-
-
-/***/ }),
-/* 88 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(global, module) {
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _ponyfill = __webpack_require__(90);
-
-var _ponyfill2 = _interopRequireDefault(_ponyfill);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
-
-var root; /* global window */
-
-
-if (typeof self !== 'undefined') {
- root = self;
-} else if (typeof window !== 'undefined') {
- root = window;
-} else if (typeof global !== 'undefined') {
- root = global;
-} else if (true) {
- root = module;
-} else {
- root = Function('return this')();
-}
-
-var result = (0, _ponyfill2['default'])(root);
-exports['default'] = result;
-/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(72), __webpack_require__(89)(module)))
-
-/***/ }),
-/* 89 */
-/***/ (function(module, exports) {
-
-module.exports = function(module) {
- if(!module.webpackPolyfill) {
- module.deprecate = function() {};
- module.paths = [];
- // module.parent = undefined by default
- if(!module.children) module.children = [];
- Object.defineProperty(module, "loaded", {
- enumerable: true,
- get: function() {
- return module.l;
- }
- });
- Object.defineProperty(module, "id", {
- enumerable: true,
- get: function() {
- return module.i;
- }
- });
- module.webpackPolyfill = 1;
- }
- return module;
-};
-
-
-/***/ }),
-/* 90 */
+/* 109 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
- value: true
+ value: true
});
-exports['default'] = symbolObservablePonyfill;
-function symbolObservablePonyfill(root) {
- var result;
- var _Symbol = root.Symbol;
-
- if (typeof _Symbol === 'function') {
- if (_Symbol.observable) {
- result = _Symbol.observable;
- } else {
- result = _Symbol('observable');
- _Symbol.observable = result;
- }
- } else {
- result = '@@observable';
- }
-
- return result;
-};
-
-/***/ }),
-/* 91 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["a"] = combineReducers;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__createStore__ = __webpack_require__(70);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_lodash_es_isPlainObject__ = __webpack_require__(67);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_warning__ = __webpack_require__(73);
-
-
-
-
-function getUndefinedStateErrorMessage(key, action) {
- var actionType = action && action.type;
- var actionName = actionType && '"' + actionType.toString() + '"' || 'an action';
-
- return 'Given action ' + actionName + ', reducer "' + key + '" returned undefined. ' + 'To ignore an action, you must explicitly return the previous state. ' + 'If you want this reducer to hold no value, you can return null instead of undefined.';
-}
-
-function getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {
- var reducerKeys = Object.keys(reducers);
- var argumentName = action && action.type === __WEBPACK_IMPORTED_MODULE_0__createStore__["a" /* ActionTypes */].INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';
-
- if (reducerKeys.length === 0) {
- return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';
- }
-
- if (!__WEBPACK_IMPORTED_MODULE_1_lodash_es_isPlainObject__["a" /* default */](inputState)) {
- 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('", "') + '"');
- }
-
- var unexpectedKeys = Object.keys(inputState).filter(function (key) {
- return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];
- });
-
- unexpectedKeys.forEach(function (key) {
- unexpectedKeyCache[key] = true;
- });
-
- if (unexpectedKeys.length > 0) {
- 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.');
- }
-}
-
-function assertReducerShape(reducers) {
- Object.keys(reducers).forEach(function (key) {
- var reducer = reducers[key];
- var initialState = reducer(undefined, { type: __WEBPACK_IMPORTED_MODULE_0__createStore__["a" /* ActionTypes */].INIT });
-
- if (typeof initialState === 'undefined') {
- 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. If you don\'t want to set a value for this reducer, ' + 'you can use null instead of undefined.');
- }
-
- var type = '@@redux/PROBE_UNKNOWN_ACTION_' + Math.random().toString(36).substring(7).split('').join('.');
- if (typeof reducer(undefined, { type: type }) === 'undefined') {
- throw new Error('Reducer "' + key + '" returned undefined when probed with a random type. ' + ('Don\'t try to handle ' + __WEBPACK_IMPORTED_MODULE_0__createStore__["a" /* 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, but can be null.');
- }
- });
-}
-
-/**
- * Turns an object whose values are different reducer functions, into a single
- * reducer function. It will call every child reducer, and gather their results
- * into a single state object, whose keys correspond to the keys of the passed
- * reducer functions.
- *
- * @param {Object} reducers An object whose values correspond to different
- * reducer functions that need to be combined into one. One handy way to obtain
- * it is to use ES6 `import * as reducers` syntax. The reducers may never return
- * undefined for any action. Instead, they should return their initial state
- * if the state passed to them was undefined, and the current state for any
- * unrecognized action.
- *
- * @returns {Function} A reducer function that invokes every reducer inside the
- * passed object, and builds a state object with the same shape.
- */
-function combineReducers(reducers) {
- var reducerKeys = Object.keys(reducers);
- var finalReducers = {};
- for (var i = 0; i < reducerKeys.length; i++) {
- var key = reducerKeys[i];
-
- if (process.env.NODE_ENV !== 'production') {
- if (typeof reducers[key] === 'undefined') {
- __WEBPACK_IMPORTED_MODULE_2__utils_warning__["a" /* default */]('No reducer provided for key "' + key + '"');
- }
- }
-
- if (typeof reducers[key] === 'function') {
- finalReducers[key] = reducers[key];
- }
- }
- var finalReducerKeys = Object.keys(finalReducers);
-
- var unexpectedKeyCache = void 0;
- if (process.env.NODE_ENV !== 'production') {
- unexpectedKeyCache = {};
- }
-
- var shapeAssertionError = void 0;
- try {
- assertReducerShape(finalReducers);
- } catch (e) {
- shapeAssertionError = e;
- }
-
- return function combination() {
- var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var action = arguments[1];
-
- if (shapeAssertionError) {
- throw shapeAssertionError;
- }
-
- if (process.env.NODE_ENV !== 'production') {
- var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);
- if (warningMessage) {
- __WEBPACK_IMPORTED_MODULE_2__utils_warning__["a" /* default */](warningMessage);
- }
- }
-
- var hasChanged = false;
- var nextState = {};
- for (var _i = 0; _i < finalReducerKeys.length; _i++) {
- var _key = finalReducerKeys[_i];
- var reducer = finalReducers[_key];
- var previousStateForKey = state[_key];
- var nextStateForKey = reducer(previousStateForKey, action);
- if (typeof nextStateForKey === 'undefined') {
- var errorMessage = getUndefinedStateErrorMessage(_key, action);
- throw new Error(errorMessage);
- }
- nextState[_key] = nextStateForKey;
- hasChanged = hasChanged || nextStateForKey !== previousStateForKey;
- }
- return hasChanged ? nextState : state;
- };
-}
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4)))
-
-/***/ }),
-/* 92 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (immutable) */ __webpack_exports__["a"] = bindActionCreators;
-function bindActionCreator(actionCreator, dispatch) {
- return function () {
- return dispatch(actionCreator.apply(undefined, arguments));
- };
-}
-
-/**
- * Turns an object whose values are action creators, into an object with the
- * same keys, but with every function wrapped into a `dispatch` call so they
- * may be invoked directly. This is just a convenience method, as you can call
- * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.
- *
- * For convenience, you can also pass a single function as the first argument,
- * and get a function in return.
- *
- * @param {Function|Object} actionCreators An object whose values are action
- * creator functions. One handy way to obtain it is to use ES6 `import * as`
- * syntax. You may also pass a single function.
- *
- * @param {Function} dispatch The `dispatch` function available on your Redux
- * store.
- *
- * @returns {Function|Object} The object mimicking the original object, but with
- * every action creator wrapped into the `dispatch` call. If you passed a
- * function as `actionCreators`, the return value will also be a single
- * function.
- */
-function bindActionCreators(actionCreators, dispatch) {
- if (typeof actionCreators === 'function') {
- return bindActionCreator(actionCreators, dispatch);
- }
-
- if (typeof actionCreators !== 'object' || actionCreators === null) {
- 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"?');
- }
-
- var keys = Object.keys(actionCreators);
- var boundActionCreators = {};
- for (var i = 0; i < keys.length; i++) {
- var key = keys[i];
- var actionCreator = actionCreators[key];
- if (typeof actionCreator === 'function') {
- boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);
- }
- }
- return boundActionCreators;
-}
-
-/***/ }),
-/* 93 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (immutable) */ __webpack_exports__["a"] = applyMiddleware;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__compose__ = __webpack_require__(74);
-var _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; };
-
-
-
-/**
- * Creates a store enhancer that applies middleware to the dispatch method
- * of the Redux store. This is handy for a variety of tasks, such as expressing
- * asynchronous actions in a concise manner, or logging every action payload.
- *
- * See `redux-thunk` package as an example of the Redux middleware.
- *
- * Because middleware is potentially asynchronous, this should be the first
- * store enhancer in the composition chain.
- *
- * Note that each middleware will be given the `dispatch` and `getState` functions
- * as named arguments.
- *
- * @param {...Function} middlewares The middleware chain to be applied.
- * @returns {Function} A store enhancer applying the middleware.
- */
-function applyMiddleware() {
- for (var _len = arguments.length, middlewares = Array(_len), _key = 0; _key < _len; _key++) {
- middlewares[_key] = arguments[_key];
- }
-
- return function (createStore) {
- return function (reducer, preloadedState, enhancer) {
- var store = createStore(reducer, preloadedState, enhancer);
- var _dispatch = store.dispatch;
- var chain = [];
-
- var middlewareAPI = {
- getState: store.getState,
- dispatch: function dispatch(action) {
- return _dispatch(action);
- }
- };
- chain = middlewares.map(function (middleware) {
- return middleware(middlewareAPI);
- });
- _dispatch = __WEBPACK_IMPORTED_MODULE_0__compose__["a" /* default */].apply(undefined, chain)(store.dispatch);
-
- return _extends({}, store, {
- dispatch: _dispatch
- });
- };
- };
-}
-
-/***/ }),
-/* 94 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_Provider__ = __webpack_require__(95);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_connectAdvanced__ = __webpack_require__(76);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__connect_connect__ = __webpack_require__(97);
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Provider", function() { return __WEBPACK_IMPORTED_MODULE_0__components_Provider__["b"]; });
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "createProvider", function() { return __WEBPACK_IMPORTED_MODULE_0__components_Provider__["a"]; });
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "connectAdvanced", function() { return __WEBPACK_IMPORTED_MODULE_1__components_connectAdvanced__["a"]; });
-/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "connect", function() { return __WEBPACK_IMPORTED_MODULE_2__connect_connect__["a"]; });
-
-
-
-
-
-
-/***/ }),
-/* 95 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["a"] = createProvider;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(0);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_PropTypes__ = __webpack_require__(75);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_warning__ = __webpack_require__(68);
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-
-
-
-
-
-var didWarnAboutReceivingStore = false;
-function warnAboutReceivingStore() {
- if (didWarnAboutReceivingStore) {
- return;
- }
- didWarnAboutReceivingStore = true;
-
- __WEBPACK_IMPORTED_MODULE_3__utils_warning__["a" /* default */]('<Provider> does not support changing `store` on the fly. ' + 'It is most likely that you see this error because you updated to ' + 'Redux 2.x and React Redux 2.x which no longer hot reload reducers ' + 'automatically. See https://github.com/reactjs/react-redux/releases/' + 'tag/v2.0.0 for the migration instructions.');
-}
-
-function createProvider() {
- var _Provider$childContex;
-
- var storeKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'store';
- var subKey = arguments[1];
-
- var subscriptionKey = subKey || storeKey + 'Subscription';
-
- var Provider = function (_Component) {
- _inherits(Provider, _Component);
-
- Provider.prototype.getChildContext = function getChildContext() {
- var _ref;
-
- return _ref = {}, _ref[storeKey] = this[storeKey], _ref[subscriptionKey] = null, _ref;
- };
-
- function Provider(props, context) {
- _classCallCheck(this, Provider);
- var _this = _possibleConstructorReturn(this, _Component.call(this, props, context));
+var _reactRedux = __webpack_require__(6);
- _this[storeKey] = props.store;
- return _this;
- }
+var _TaskListView = __webpack_require__(110);
- Provider.prototype.render = function render() {
- return __WEBPACK_IMPORTED_MODULE_0_react__["Children"].only(this.props.children);
- };
+var _TaskListView2 = _interopRequireDefault(_TaskListView);
- return Provider;
- }(__WEBPACK_IMPORTED_MODULE_0_react__["Component"]);
-
- if (process.env.NODE_ENV !== 'production') {
- Provider.prototype.componentWillReceiveProps = function (nextProps) {
- if (this[storeKey] !== nextProps.store) {
- warnAboutReceivingStore();
- }
- };
- }
-
- Provider.propTypes = {
- store: __WEBPACK_IMPORTED_MODULE_2__utils_PropTypes__["a" /* storeShape */].isRequired,
- children: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.element.isRequired
- };
- Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[storeKey] = __WEBPACK_IMPORTED_MODULE_2__utils_PropTypes__["a" /* storeShape */].isRequired, _Provider$childContex[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_2__utils_PropTypes__["b" /* subscriptionShape */], _Provider$childContex);
- Provider.displayName = 'Provider';
-
- return Provider;
-}
-
-/* harmony default export */ __webpack_exports__["b"] = (createProvider());
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4)))
-
-/***/ }),
-/* 96 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Subscription; });
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-// encapsulates the subscription logic for connecting a component to the redux store, as
-// well as nesting subscriptions of descendant components, so that we can ensure the
-// ancestor components re-render before descendants
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-var CLEARED = null;
-var nullListeners = {
- notify: function notify() {}
+var mapStateToProps = function mapStateToProps(state) {
+ return { tasks: state.tasks };
};
-
-function createListenerCollection() {
- // the current/next pattern is copied from redux's createStore code.
- // TODO: refactor+expose that code to be reusable here?
- var current = [];
- var next = [];
-
- return {
- clear: function clear() {
- next = CLEARED;
- current = CLEARED;
- },
- notify: function notify() {
- var listeners = current = next;
- for (var i = 0; i < listeners.length; i++) {
- listeners[i]();
- }
- },
- subscribe: function subscribe(listener) {
- var isSubscribed = true;
- if (next === current) next = current.slice();
- next.push(listener);
-
- return function unsubscribe() {
- if (!isSubscribed || current === CLEARED) return;
- isSubscribed = false;
-
- if (next === current) next = current.slice();
- next.splice(next.indexOf(listener), 1);
- };
- }
- };
-}
-
-var Subscription = function () {
- function Subscription(store, parentSub, onStateChange) {
- _classCallCheck(this, Subscription);
-
- this.store = store;
- this.parentSub = parentSub;
- this.onStateChange = onStateChange;
- this.unsubscribe = null;
- this.listeners = nullListeners;
- }
-
- Subscription.prototype.addNestedSub = function addNestedSub(listener) {
- this.trySubscribe();
- return this.listeners.subscribe(listener);
- };
-
- Subscription.prototype.notifyNestedSubs = function notifyNestedSubs() {
- this.listeners.notify();
- };
-
- Subscription.prototype.isSubscribed = function isSubscribed() {
- return Boolean(this.unsubscribe);
- };
-
- Subscription.prototype.trySubscribe = function trySubscribe() {
- if (!this.unsubscribe) {
- this.unsubscribe = this.parentSub ? this.parentSub.addNestedSub(this.onStateChange) : this.store.subscribe(this.onStateChange);
-
- this.listeners = createListenerCollection();
- }
- };
-
- Subscription.prototype.tryUnsubscribe = function tryUnsubscribe() {
- if (this.unsubscribe) {
- this.unsubscribe();
- this.unsubscribe = null;
- this.listeners.clear();
- this.listeners = nullListeners;
- }
- };
-
- return Subscription;
-}();
-
-
-
-/***/ }),
-/* 97 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* unused harmony export createConnect */
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_connectAdvanced__ = __webpack_require__(76);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__utils_shallowEqual__ = __webpack_require__(98);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mapDispatchToProps__ = __webpack_require__(99);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mapStateToProps__ = __webpack_require__(100);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mergeProps__ = __webpack_require__(101);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__selectorFactory__ = __webpack_require__(102);
-var _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; };
-
-function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
-
-
-
-
-
-
-
-
-/*
- connect is a facade over connectAdvanced. It turns its args into a compatible
- selectorFactory, which has the signature:
-
- (dispatch, options) => (nextState, nextOwnProps) => nextFinalProps
-
- connect passes its args to connectAdvanced as options, which will in turn pass them to
- selectorFactory each time a Connect component instance is instantiated or hot reloaded.
-
- selectorFactory returns a final props selector from its mapStateToProps,
- mapStateToPropsFactories, mapDispatchToProps, mapDispatchToPropsFactories, mergeProps,
- mergePropsFactories, and pure args.
-
- The resulting final props selector is called by the Connect component instance whenever
- it receives new props or store state.
- */
-
-function match(arg, factories, name) {
- for (var i = factories.length - 1; i >= 0; i--) {
- var result = factories[i](arg);
- if (result) return result;
- }
-
- return function (dispatch, options) {
- throw new Error('Invalid value of type ' + typeof arg + ' for ' + name + ' argument when connecting component ' + options.wrappedComponentName + '.');
- };
-}
-
-function strictEqual(a, b) {
- return a === b;
-}
-
-// createConnect with default args builds the 'official' connect behavior. Calling it with
-// different options opens up some testing and extensibility scenarios
-function createConnect() {
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
- _ref$connectHOC = _ref.connectHOC,
- connectHOC = _ref$connectHOC === undefined ? __WEBPACK_IMPORTED_MODULE_0__components_connectAdvanced__["a" /* default */] : _ref$connectHOC,
- _ref$mapStateToPropsF = _ref.mapStateToPropsFactories,
- mapStateToPropsFactories = _ref$mapStateToPropsF === undefined ? __WEBPACK_IMPORTED_MODULE_3__mapStateToProps__["a" /* default */] : _ref$mapStateToPropsF,
- _ref$mapDispatchToPro = _ref.mapDispatchToPropsFactories,
- mapDispatchToPropsFactories = _ref$mapDispatchToPro === undefined ? __WEBPACK_IMPORTED_MODULE_2__mapDispatchToProps__["a" /* default */] : _ref$mapDispatchToPro,
- _ref$mergePropsFactor = _ref.mergePropsFactories,
- mergePropsFactories = _ref$mergePropsFactor === undefined ? __WEBPACK_IMPORTED_MODULE_4__mergeProps__["a" /* default */] : _ref$mergePropsFactor,
- _ref$selectorFactory = _ref.selectorFactory,
- selectorFactory = _ref$selectorFactory === undefined ? __WEBPACK_IMPORTED_MODULE_5__selectorFactory__["a" /* default */] : _ref$selectorFactory;
-
- return function connect(mapStateToProps, mapDispatchToProps, mergeProps) {
- var _ref2 = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
- _ref2$pure = _ref2.pure,
- pure = _ref2$pure === undefined ? true : _ref2$pure,
- _ref2$areStatesEqual = _ref2.areStatesEqual,
- areStatesEqual = _ref2$areStatesEqual === undefined ? strictEqual : _ref2$areStatesEqual,
- _ref2$areOwnPropsEqua = _ref2.areOwnPropsEqual,
- areOwnPropsEqual = _ref2$areOwnPropsEqua === undefined ? __WEBPACK_IMPORTED_MODULE_1__utils_shallowEqual__["a" /* default */] : _ref2$areOwnPropsEqua,
- _ref2$areStatePropsEq = _ref2.areStatePropsEqual,
- areStatePropsEqual = _ref2$areStatePropsEq === undefined ? __WEBPACK_IMPORTED_MODULE_1__utils_shallowEqual__["a" /* default */] : _ref2$areStatePropsEq,
- _ref2$areMergedPropsE = _ref2.areMergedPropsEqual,
- areMergedPropsEqual = _ref2$areMergedPropsE === undefined ? __WEBPACK_IMPORTED_MODULE_1__utils_shallowEqual__["a" /* default */] : _ref2$areMergedPropsE,
- extraOptions = _objectWithoutProperties(_ref2, ['pure', 'areStatesEqual', 'areOwnPropsEqual', 'areStatePropsEqual', 'areMergedPropsEqual']);
-
- var initMapStateToProps = match(mapStateToProps, mapStateToPropsFactories, 'mapStateToProps');
- var initMapDispatchToProps = match(mapDispatchToProps, mapDispatchToPropsFactories, 'mapDispatchToProps');
- var initMergeProps = match(mergeProps, mergePropsFactories, 'mergeProps');
-
- return connectHOC(selectorFactory, _extends({
- // used in error messages
- methodName: 'connect',
-
- // used to compute Connect's displayName from the wrapped component's displayName.
- getDisplayName: function getDisplayName(name) {
- return 'Connect(' + name + ')';
- },
-
- // if mapStateToProps is falsy, the Connect component doesn't subscribe to store state changes
- shouldHandleStateChanges: Boolean(mapStateToProps),
-
- // passed through to selectorFactory
- initMapStateToProps: initMapStateToProps,
- initMapDispatchToProps: initMapDispatchToProps,
- initMergeProps: initMergeProps,
- pure: pure,
- areStatesEqual: areStatesEqual,
- areOwnPropsEqual: areOwnPropsEqual,
- areStatePropsEqual: areStatePropsEqual,
- areMergedPropsEqual: areMergedPropsEqual
-
- }, extraOptions));
- };
-}
-
-/* harmony default export */ __webpack_exports__["a"] = (createConnect());
-
-/***/ }),
-/* 98 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (immutable) */ __webpack_exports__["a"] = shallowEqual;
-var hasOwn = Object.prototype.hasOwnProperty;
-
-function is(x, y) {
- if (x === y) {
- return x !== 0 || y !== 0 || 1 / x === 1 / y;
- } else {
- return x !== x && y !== y;
- }
-}
-
-function shallowEqual(objA, objB) {
- if (is(objA, objB)) return true;
-
- if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
- return false;
- }
-
- var keysA = Object.keys(objA);
- var keysB = Object.keys(objB);
-
- if (keysA.length !== keysB.length) return false;
-
- for (var i = 0; i < keysA.length; i++) {
- if (!hasOwn.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
- return false;
- }
- }
-
- return true;
-}
-
-/***/ }),
-/* 99 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* unused harmony export whenMapDispatchToPropsIsFunction */
-/* unused harmony export whenMapDispatchToPropsIsMissing */
-/* unused harmony export whenMapDispatchToPropsIsObject */
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_redux__ = __webpack_require__(69);
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__wrapMapToProps__ = __webpack_require__(77);
-
-
-
-function whenMapDispatchToPropsIsFunction(mapDispatchToProps) {
- return typeof mapDispatchToProps === 'function' ? __WEBPACK_IMPORTED_MODULE_1__wrapMapToProps__["b" /* wrapMapToPropsFunc */](mapDispatchToProps, 'mapDispatchToProps') : undefined;
-}
-
-function whenMapDispatchToPropsIsMissing(mapDispatchToProps) {
- return !mapDispatchToProps ? __WEBPACK_IMPORTED_MODULE_1__wrapMapToProps__["a" /* wrapMapToPropsConstant */](function (dispatch) {
- return { dispatch: dispatch };
- }) : undefined;
-}
-
-function whenMapDispatchToPropsIsObject(mapDispatchToProps) {
- return mapDispatchToProps && typeof mapDispatchToProps === 'object' ? __WEBPACK_IMPORTED_MODULE_1__wrapMapToProps__["a" /* wrapMapToPropsConstant */](function (dispatch) {
- return __WEBPACK_IMPORTED_MODULE_0_redux__["bindActionCreators"](mapDispatchToProps, dispatch);
- }) : undefined;
-}
-
-/* harmony default export */ __webpack_exports__["a"] = ([whenMapDispatchToPropsIsFunction, whenMapDispatchToPropsIsMissing, whenMapDispatchToPropsIsObject]);
-
-/***/ }),
-/* 100 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* unused harmony export whenMapStateToPropsIsFunction */
-/* unused harmony export whenMapStateToPropsIsMissing */
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__wrapMapToProps__ = __webpack_require__(77);
-
-
-function whenMapStateToPropsIsFunction(mapStateToProps) {
- return typeof mapStateToProps === 'function' ? __WEBPACK_IMPORTED_MODULE_0__wrapMapToProps__["b" /* wrapMapToPropsFunc */](mapStateToProps, 'mapStateToProps') : undefined;
-}
-
-function whenMapStateToPropsIsMissing(mapStateToProps) {
- return !mapStateToProps ? __WEBPACK_IMPORTED_MODULE_0__wrapMapToProps__["a" /* wrapMapToPropsConstant */](function () {
- return {};
- }) : undefined;
-}
-
-/* harmony default export */ __webpack_exports__["a"] = ([whenMapStateToPropsIsFunction, whenMapStateToPropsIsMissing]);
-
-/***/ }),
-/* 101 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export defaultMergeProps */
-/* unused harmony export wrapMergePropsFunc */
-/* unused harmony export whenMergePropsIsFunction */
-/* unused harmony export whenMergePropsIsOmitted */
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__ = __webpack_require__(78);
-var _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; };
-
-
-
-function defaultMergeProps(stateProps, dispatchProps, ownProps) {
- return _extends({}, ownProps, stateProps, dispatchProps);
-}
-
-function wrapMergePropsFunc(mergeProps) {
- return function initMergePropsProxy(dispatch, _ref) {
- var displayName = _ref.displayName,
- pure = _ref.pure,
- areMergedPropsEqual = _ref.areMergedPropsEqual;
-
- var hasRunOnce = false;
- var mergedProps = void 0;
-
- return function mergePropsProxy(stateProps, dispatchProps, ownProps) {
- var nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps);
-
- if (hasRunOnce) {
- if (!pure || !areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps;
- } else {
- hasRunOnce = true;
- mergedProps = nextMergedProps;
-
- if (process.env.NODE_ENV !== 'production') __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__["a" /* default */](mergedProps, displayName, 'mergeProps');
- }
-
- return mergedProps;
- };
- };
-}
-
-function whenMergePropsIsFunction(mergeProps) {
- return typeof mergeProps === 'function' ? wrapMergePropsFunc(mergeProps) : undefined;
-}
-
-function whenMergePropsIsOmitted(mergeProps) {
- return !mergeProps ? function () {
- return defaultMergeProps;
- } : undefined;
-}
-
-/* harmony default export */ __webpack_exports__["a"] = ([whenMergePropsIsFunction, whenMergePropsIsOmitted]);
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4)))
-
-/***/ }),
-/* 102 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export impureFinalPropsSelectorFactory */
-/* unused harmony export pureFinalPropsSelectorFactory */
-/* harmony export (immutable) */ __webpack_exports__["a"] = finalPropsSelectorFactory;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__verifySubselectors__ = __webpack_require__(103);
-function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+// import {} from '../actions'
+var mapDispatchToProps = {};
-function impureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch) {
- return function impureFinalPropsSelector(state, ownProps) {
- return mergeProps(mapStateToProps(state, ownProps), mapDispatchToProps(dispatch, ownProps), ownProps);
- };
-}
+var TaskList = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_TaskListView2.default);
-function pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, _ref) {
- var areStatesEqual = _ref.areStatesEqual,
- areOwnPropsEqual = _ref.areOwnPropsEqual,
- areStatePropsEqual = _ref.areStatePropsEqual;
-
- var hasRunAtLeastOnce = false;
- var state = void 0;
- var ownProps = void 0;
- var stateProps = void 0;
- var dispatchProps = void 0;
- var mergedProps = void 0;
-
- function handleFirstCall(firstState, firstOwnProps) {
- state = firstState;
- ownProps = firstOwnProps;
- stateProps = mapStateToProps(state, ownProps);
- dispatchProps = mapDispatchToProps(dispatch, ownProps);
- mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
- hasRunAtLeastOnce = true;
- return mergedProps;
- }
-
- function handleNewPropsAndNewState() {
- stateProps = mapStateToProps(state, ownProps);
-
- if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);
-
- mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
- return mergedProps;
- }
-
- function handleNewProps() {
- if (mapStateToProps.dependsOnOwnProps) stateProps = mapStateToProps(state, ownProps);
-
- if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);
-
- mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
- return mergedProps;
- }
-
- function handleNewState() {
- var nextStateProps = mapStateToProps(state, ownProps);
- var statePropsChanged = !areStatePropsEqual(nextStateProps, stateProps);
- stateProps = nextStateProps;
-
- if (statePropsChanged) mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
-
- return mergedProps;
- }
-
- function handleSubsequentCalls(nextState, nextOwnProps) {
- var propsChanged = !areOwnPropsEqual(nextOwnProps, ownProps);
- var stateChanged = !areStatesEqual(nextState, state);
- state = nextState;
- ownProps = nextOwnProps;
-
- if (propsChanged && stateChanged) return handleNewPropsAndNewState();
- if (propsChanged) return handleNewProps();
- if (stateChanged) return handleNewState();
- return mergedProps;
- }
-
- return function pureFinalPropsSelector(nextState, nextOwnProps) {
- return hasRunAtLeastOnce ? handleSubsequentCalls(nextState, nextOwnProps) : handleFirstCall(nextState, nextOwnProps);
- };
-}
-
-// TODO: Add more comments
-
-// If pure is true, the selector returned by selectorFactory will memoize its results,
-// allowing connectAdvanced's shouldComponentUpdate to return false if final
-// props have not changed. If false, the selector will always return a new
-// object and shouldComponentUpdate will always return true.
-
-function finalPropsSelectorFactory(dispatch, _ref2) {
- var initMapStateToProps = _ref2.initMapStateToProps,
- initMapDispatchToProps = _ref2.initMapDispatchToProps,
- initMergeProps = _ref2.initMergeProps,
- options = _objectWithoutProperties(_ref2, ['initMapStateToProps', 'initMapDispatchToProps', 'initMergeProps']);
-
- var mapStateToProps = initMapStateToProps(dispatch, options);
- var mapDispatchToProps = initMapDispatchToProps(dispatch, options);
- var mergeProps = initMergeProps(dispatch, options);
-
- if (process.env.NODE_ENV !== 'production') {
- __WEBPACK_IMPORTED_MODULE_0__verifySubselectors__["a" /* default */](mapStateToProps, mapDispatchToProps, mergeProps, options.displayName);
- }
-
- var selectorFactory = options.pure ? pureFinalPropsSelectorFactory : impureFinalPropsSelectorFactory;
-
- return selectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, options);
-}
-/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4)))
-
-/***/ }),
-/* 103 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export (immutable) */ __webpack_exports__["a"] = verifySubselectors;
-/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_warning__ = __webpack_require__(68);
-
-
-function verify(selector, methodName, displayName) {
- if (!selector) {
- throw new Error('Unexpected value for ' + methodName + ' in ' + displayName + '.');
- } else if (methodName === 'mapStateToProps' || methodName === 'mapDispatchToProps') {
- if (!selector.hasOwnProperty('dependsOnOwnProps')) {
- __WEBPACK_IMPORTED_MODULE_0__utils_warning__["a" /* default */]('The selector for ' + methodName + ' of ' + displayName + ' did not specify a value for dependsOnOwnProps.');
- }
- }
-}
-
-function verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps, displayName) {
- verify(mapStateToProps, 'mapStateToProps', displayName);
- verify(mapDispatchToProps, 'mapDispatchToProps', displayName);
- verify(mergeProps, 'mergeProps', displayName);
-}
+exports.default = TaskList;
/***/ }),
-/* 104 */
+/* 110 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -8560,28 +9159,66 @@ function verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps, dis
Object.defineProperty(exports, "__esModule", {
value: true
});
+exports.default = TaskListView;
-var _redux = __webpack_require__(69);
-
-var _currentTask = __webpack_require__(109);
+var _preact = __webpack_require__(0);
-var _currentTask2 = _interopRequireDefault(_currentTask);
-
-var _audioPlayer = __webpack_require__(115);
+var _fileLink = __webpack_require__(33);
-var _audioPlayer2 = _interopRequireDefault(_audioPlayer);
+var _fileLink2 = _interopRequireDefault(_fileLink);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-var cortexApp = (0, _redux.combineReducers)({
- currentTask: _currentTask2.default,
- audioPlayer: _audioPlayer2.default
-});
-
-exports.default = cortexApp;
+function TaskListView(props) {
+ var tasks = (props.tasks || []).map(function (task, i) {
+ return (0, _preact.h)(
+ 'div',
+ { key: i },
+ (0, _preact.h)(
+ 'span',
+ null,
+ task.id
+ ),
+ (0, _preact.h)(
+ 'span',
+ null,
+ task.created_at
+ ),
+ (0, _preact.h)(
+ 'span',
+ { 'class': 'name' },
+ (0, _preact.h)(
+ _fileLink2.default,
+ { file: task.content_file },
+ task.content_file.name
+ )
+ ),
+ (0, _preact.h)(
+ 'span',
+ { 'class': 'name' },
+ (0, _preact.h)(
+ _fileLink2.default,
+ { file: task.style_file },
+ task.style_file.name
+ )
+ ),
+ (0, _preact.h)(
+ 'span',
+ null,
+ task.alpha
+ )
+ );
+ // <span class='name'>{task.result_file.name}</span>
+ });
+ return (0, _preact.h)(
+ 'div',
+ { 'class': 'list' },
+ tasks
+ );
+}
/***/ }),
-/* 105 */
+/* 111 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -8590,128 +9227,38 @@ exports.default = cortexApp;
Object.defineProperty(exports, "__esModule", {
value: true
});
-var audioPlayFile = exports.audioPlayFile = function audioPlayFile(file) {
- return {
- type: 'AUDIO_PLAY_FILE',
- file: file
- };
-};
-
-var audioPause = exports.audioPause = function audioPause() {
- return {
- type: 'AUDIO_PAUSE'
- };
-};
-
-var setContent = exports.setContent = function setContent(content) {
- return {
- type: 'SET_CONTENT',
- file: content
- };
-};
-var setStyle = exports.setStyle = function setStyle(style) {
- return {
- type: 'SET_STYLE',
- file: style
- };
-};
+var _redux = __webpack_require__(15);
-var setAlpha = exports.setAlpha = function setAlpha(alpha) {
- return {
- type: 'SET_ALPHA',
- alpha: alpha
- };
-};
+var _audioPlayer = __webpack_require__(112);
-var createTask = exports.createTask = function createTask() {
- return {
- type: 'CREATE_TASK'
- };
-};
-
-var addTask = exports.addTask = function addTask() {
- return {
- type: 'ADD_TASK'
- };
-};
-
-/***/ }),
-/* 106 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
+var _audioPlayer2 = _interopRequireDefault(_audioPlayer);
+var _currentTask = __webpack_require__(113);
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
+var _currentTask2 = _interopRequireDefault(_currentTask);
-var _reactRedux = __webpack_require__(94);
+var _tasks = __webpack_require__(114);
-var _actions = __webpack_require__(105);
+var _tasks2 = _interopRequireDefault(_tasks);
-var _Link = __webpack_require__(108);
+var _folders = __webpack_require__(115);
-var _Link2 = _interopRequireDefault(_Link);
+var _folders2 = _interopRequireDefault(_folders);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-var mapStateToProps = function mapStateToProps(state, ownProps) {
- return {};
-};
-
-var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
- return {
- onClick: function onClick() {
- dispatch((0, _actions.setContent)(ownProps.file));
- }
- };
-};
-
-var TaskContentLink = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_Link2.default);
-
-exports.default = TaskContentLink;
-
-/***/ }),
-/* 107 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
+var cortexApp = (0, _redux.combineReducers)({
+ audioPlayer: _audioPlayer2.default,
+ currentTask: _currentTask2.default,
+ tasks: _tasks2.default,
+ folders: _folders2.default
});
-var _reactRedux = __webpack_require__(94);
-
-var _actions = __webpack_require__(105);
-
-var _Link = __webpack_require__(108);
-
-var _Link2 = _interopRequireDefault(_Link);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-var mapStateToProps = function mapStateToProps(state, ownProps) {
- return {};
-};
-
-var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
- return {
- onClick: function onClick() {
- dispatch((0, _actions.setStyle)(ownProps.file));
- }
- };
-};
-
-var TaskStyleLink = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_Link2.default);
-
-exports.default = TaskStyleLink;
+exports.default = cortexApp;
/***/ }),
-/* 108 */
+/* 112 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -8721,54 +9268,36 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
-var _preact = __webpack_require__(3);
+var _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; };
-var _react = __webpack_require__(1);
+var _client = __webpack_require__(5);
-var _react2 = _interopRequireDefault(_react);
+var _client2 = _interopRequireDefault(_client);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-// import PropTypes from 'prop-types'
-
-var Link = function Link(_ref) {
- var active = _ref.active,
- children = _ref.children,
- _onClick = _ref.onClick;
+var audioPlayer = function audioPlayer() {
+ var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ var action = arguments[1];
- if (active) {
- return (0, _preact.h)(
- 'span',
- null,
- children
- );
+ switch (action.type) {
+ case 'AUDIO_PLAY_FILE':
+ return _extends({}, state, {
+ file: action.file
+ });
+ case 'AUDIO_PAUSE':
+ return _extends({}, state, {
+ paused: !state.paused
+ });
+ default:
+ return state;
}
-
- return (
- // eslint-disable-next-line
- (0, _preact.h)(
- 'a',
- { href: '#',
- onClick: function onClick(e) {
- e.preventDefault();
- _onClick();
- }
- },
- children
- )
- );
};
-// Link.propTypes = {
-// active: PropTypes.bool.isRequired,
-// children: PropTypes.node.isRequired,
-// onClick: PropTypes.func.isRequired
-// }
-
-exports.default = Link;
+exports.default = audioPlayer;
/***/ }),
-/* 109 */
+/* 113 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -8780,9 +9309,9 @@ Object.defineProperty(exports, "__esModule", {
var _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; };
-var _actions = __webpack_require__(105);
+var _actions = __webpack_require__(7);
-var _client = __webpack_require__(8);
+var _client = __webpack_require__(5);
var _client2 = _interopRequireDefault(_client);
@@ -8830,7 +9359,7 @@ var currentTask = function currentTask() {
exports.default = currentTask;
/***/ }),
-/* 110 */
+/* 114 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -8840,49 +9369,27 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
-var _preact = __webpack_require__(3);
-
-var _reactRouterDom = __webpack_require__(5);
-
-var _client = __webpack_require__(8);
+var _client = __webpack_require__(5);
var _client2 = _interopRequireDefault(_client);
-var _reactRedux = __webpack_require__(94);
-
-var _actions = __webpack_require__(105);
-
-var _TaskFormView = __webpack_require__(66);
-
-var _TaskFormView2 = _interopRequireDefault(_TaskFormView);
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-var mapStateToProps = function mapStateToProps(state) {
- return state.currentTask;
-};
+var tasks = function tasks() {
+ var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ var action = arguments[1];
-var mapDispatchToProps = {
- clearContent: function clearContent() {
- return (0, _actions.setContent)(null);
- },
- clearStyle: function clearStyle() {
- return (0, _actions.setStyle)(null);
- },
- setAlpha: function setAlpha(alpha) {
- return (0, _actions.setAlpha)(alpha);
- },
- createTask: function createTask() {
- return (0, _actions.createTask)();
+ switch (action.type) {
+ case 'LOAD_TASKS':
+ return action.tasks;
+ default:
+ return state;
}
-};
-
-var TaskForm = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_TaskFormView2.default);
-
-exports.default = TaskForm;
+}; // import { addTask } from '../actions'
+exports.default = tasks;
/***/ }),
-/* 111 */
+/* 115 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -8892,299 +9399,69 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
-var _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; }; }();
-
-var _preact = __webpack_require__(3);
+var _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; }; // import { addTask } from '../actions'
-var _actions = __webpack_require__(105);
-var _client = __webpack_require__(8);
+var _client = __webpack_require__(5);
var _client2 = _interopRequireDefault(_client);
-var _FileUploadButton = __webpack_require__(65);
-
-var _FileUploadButton2 = _interopRequireDefault(_FileUploadButton);
-
-var _fileLink = __webpack_require__(116);
-
-var _fileLink2 = _interopRequireDefault(_fileLink);
-
-var _taskContentLink = __webpack_require__(106);
-
-var _taskContentLink2 = _interopRequireDefault(_taskContentLink);
-
-var _taskStyleLink = __webpack_require__(107);
-
-var _taskStyleLink2 = _interopRequireDefault(_taskStyleLink);
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(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) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-var Files = function (_Component) {
- _inherits(Files, _Component);
-
- function Files(props) {
- _classCallCheck(this, Files);
+var folders = function folders() {
+ var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ var action = arguments[1];
- var _this = _possibleConstructorReturn(this, (Files.__proto__ || Object.getPrototypeOf(Files)).call(this));
+ var file = void 0,
+ folders = void 0,
+ folder_id = void 0;
- _this.state = {
- files: props.folder.files || [],
- selected: null
- };
- _this.addFiles = _this.addFiles.bind(_this);
- if (!props.folder.files) {
- _client2.default.file.index({ folder_id: props.folder.id }).then(function (files) {
- return _this.setState({ files: files });
+ switch (action.type) {
+ case 'LOAD_FOLDERS':
+ return _extends({}, state, {
+ folders: action.folders
});
- }
- return _this;
- }
-
- _createClass(Files, [{
- key: 'addFiles',
- value: function addFiles(newFiles) {
- if (!newFiles) return;
- var files = this.state.files.concat(newFiles).sort(function (a, b) {
- return b.id - a.id;
+ case 'LOAD_FILES':
+ if (!action.files.length) {
+ return state;
+ }
+ folder_id = action.files[0].folder_id;
+ console.log(state.folders);
+ folders = state.folders.map(function (folder) {
+ if (folder.id === folder_id) {
+ folder.files = action.files;
+ }
+ return folder;
});
- this.setState({ files: files });
- }
- }, {
- key: 'handleClick',
- value: function handleClick(file) {
- this.setState({ selected: file });
- }
- }, {
- key: 'render',
- value: function render() {
- var _this2 = this;
-
- var files = this.state.files.map(toFilenamePair).sort(sortByFilename).map(fromPair).map(function (file, i) {
- if (!file) return;
- return (0, _preact.h)(
- 'div',
- { key: i, 'class': _this2.state.selected === file ? 'selected' : '' },
- (0, _preact.h)(
- 'span',
- { 'class': 'name' },
- (0, _preact.h)(
- _fileLink2.default,
- { file: file },
- file.name
- )
- ),
- (0, _preact.h)(
- 'span',
- { 'class': 'mime' },
- file.processed ? file.mime : 'working...'
- ),
- (0, _preact.h)(
- 'span',
- { 'class': 'duration' },
- file.duration ? file.duration.toFixed(1) + 's' : ''
- ),
- (0, _preact.h)(
- 'span',
- { 'class': 'actions' },
- (0, _preact.h)(
- _taskContentLink2.default,
- { file: file },
- 'content'
- ),
- (0, _preact.h)(
- _taskStyleLink2.default,
- { file: file },
- 'style'
- )
- )
- );
+ return _extends({}, state, {
+ folders: folders
});
- return (0, _preact.h)(
- 'div',
- { 'class': 'window' },
- (0, _preact.h)(
- 'div',
- { 'class': 'heading' },
- (0, _preact.h)(
- 'b',
- null,
- this.props.folder.name
- ),
- (0, _preact.h)(
- 'div',
- { 'class': 'buttons' },
- (0, _preact.h)(_FileUploadButton2.default, { folder: this.props.folder, addFiles: this.addFiles }),
- (0, _preact.h)(
- 'button',
- { onClick: this.props.onClose },
- '\xD7'
- )
- )
- ),
- (0, _preact.h)(
- 'div',
- { 'class': 'list' },
- files
- )
- );
- }
- }]);
-
- return Files;
-}(_preact.Component);
-
-exports.default = Files;
-
-
-function toFilenamePair(file) {
- return [file.name.toLowerCase(), file];
-}
-function sortByFilename(a, b) {
- return a[0] < b[0] ? -1 : a[0] == b[0] ? 0 : 1;
-}
-function fromPair(pair) {
- return pair[1];
-}
-
-function filepath(file) {
- return '/data/' + file.folder_id + '/' + encodeURIComponent(file.name);
-}
-function mp3path(file) {
- if (file.mime !== 'audio/mp3') {
- return filepath(file) + '.mp3';
- }
- return filepath(file);
-}
-function pngpath(file) {
- return filepath(file) + '.png';
-}
-
-/***/ }),
-/* 112 */,
-/* 113 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = AudioPlayer;
-
-var _preact = __webpack_require__(3);
-
-var audio = document.createElement('audio');
-
-function AudioPlayer(props) {
- if (props.file) {
- document.body.style.backgroundImage = 'url(' + pngpath(file) + ')';
- audio.src = mp3path(props.file);
- audio.play();
- return (0, _preact.h)(
- 'div',
- null,
- 'Playing ',
- props.file.name
- );
- } else {
- return (0, _preact.h)(
- 'div',
- null,
- 'Not Playing'
- );
- }
-}
-
-function filepath(file) {
- return '/data/' + file.folder_id + '/' + encodeURIComponent(file.name);
-}
-function mp3path(file) {
- if (file.mime !== 'audio/mp3') {
- return filepath(file) + '.mp3';
- }
- return filepath(file);
-}
-function pngpath(file) {
- return filepath(file) + '.png';
-}
-
-/***/ }),
-/* 114 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _reactRedux = __webpack_require__(94);
-
-var _AudioPlayer = __webpack_require__(113);
-
-var _AudioPlayer2 = _interopRequireDefault(_AudioPlayer);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-var mapStateToProps = function mapStateToProps(state) {
- return state.audioPlayer;
-};
-
-var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
- return {};
-};
-
-var AudioPlayerContainer = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_AudioPlayer2.default);
-
-exports.default = AudioPlayerContainer;
-
-/***/ }),
-/* 115 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-
-var _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; };
-
-var _client = __webpack_require__(8);
-
-var _client2 = _interopRequireDefault(_client);
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-var audioPlayer = function audioPlayer() {
- var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var action = arguments[1];
-
- switch (action.type) {
- case 'AUDIO_PLAY_FILE':
+ case 'LOAD_OPEN_FOLDERS':
return _extends({}, state, {
- file: action.file
+ openFolders: action.folders
});
- case 'AUDIO_PAUSE':
+ case 'UPDATE_FILE':
+ file = action.file;
+ folders = state.folders.map(function (folder) {
+ if (folder.id === file.folder_id && folder.files) {
+ folder.files = folder.files.map(function (f) {
+ return f.id == file.id ? file : f;
+ });
+ return Object.assign({}, folder);
+ } else {
+ return folder;
+ }
+ });
+
return _extends({}, state, {
- paused: !state.paused
+ folders: folders
});
default:
return state;
}
};
-exports.default = audioPlayer;
+exports.default = folders;
/***/ }),
/* 116 */
@@ -9197,35 +9474,28 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
-var _reactRedux = __webpack_require__(94);
-
-var _actions = __webpack_require__(105);
+var _actions = __webpack_require__(7);
-var _Link = __webpack_require__(108);
+var _store = __webpack_require__(38);
-var _Link2 = _interopRequireDefault(_Link);
+var _store2 = _interopRequireDefault(_store);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-var mapStateToProps = function mapStateToProps(state, ownProps) {
- return {};
-};
-
-var mapDispatchToProps = function mapDispatchToProps(dispatch, ownProps) {
- return {
- onClick: function onClick() {
- switch (ownProps.file.type) {
- case 'audio':
- dispatch((0, _actions.audioPlayFile)(ownProps.file));
- break;
- }
- }
- };
-};
+var socket = io(window.location.origin);
-var FileLink = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(_Link2.default);
+socket.on('connect', function (data) {
+ console.log('connected');
+});
+socket.on('worker', function (data) {
+ console.log('worker connected', data);
+});
+socket.on('processed', function (data) {
+ console.log('processed', data);
+ _store2.default.dispatch((0, _actions.updateFile)(data.file));
+});
-exports.default = FileLink;
+exports.default = socket;
/***/ })
/******/ ]);