1 | ;
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports["default"] = reducer;
|
7 |
|
8 | var _react = require("react");
|
9 |
|
10 | var _actions = require("./actions");
|
11 |
|
12 | var _constants = require("./constants");
|
13 |
|
14 | function position(props) {
|
15 | var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : props.defaultPosition;
|
16 | var action = arguments.length > 2 ? arguments[2] : undefined;
|
17 | return action.type === _actions.CHANGE_POSITION ? _constants.POSITIONS[(_constants.POSITIONS.indexOf(state) + 1) % _constants.POSITIONS.length] : state;
|
18 | }
|
19 |
|
20 | function size(props) {
|
21 | var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : props.defaultSize;
|
22 | var action = arguments.length > 2 ? arguments[2] : undefined;
|
23 | return action.type === _actions.CHANGE_SIZE ? action.size : state;
|
24 | }
|
25 |
|
26 | function isVisible(props) {
|
27 | var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : props.defaultIsVisible;
|
28 | var action = arguments.length > 2 ? arguments[2] : undefined;
|
29 | return action.type === _actions.TOGGLE_VISIBILITY ? !state : state;
|
30 | }
|
31 |
|
32 | function childMonitorStates(props) {
|
33 | var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
34 | var action = arguments.length > 2 ? arguments[2] : undefined;
|
35 | return _react.Children.map(props.children, function (child, index) {
|
36 | return child.type.update(child.props, state[index], action);
|
37 | });
|
38 | }
|
39 |
|
40 | function childMonitorIndex(props) {
|
41 | var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
42 | var action = arguments.length > 2 ? arguments[2] : undefined;
|
43 |
|
44 | switch (action.type) {
|
45 | case _actions.CHANGE_MONITOR:
|
46 | return (state + 1) % _react.Children.count(props.children);
|
47 |
|
48 | default:
|
49 | return state;
|
50 | }
|
51 | }
|
52 |
|
53 | function reducer(props) {
|
54 | var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
55 | var action = arguments.length > 2 ? arguments[2] : undefined;
|
56 |
|
57 | if (!state.childMonitorStates) {
|
58 | _react.Children.forEach(props.children, function (child, index) {
|
59 | if (typeof child.type.update !== 'function') {
|
60 | // eslint-disable-next-line no-console
|
61 | console.error("Child of <DockMonitor> with the index ".concat(index, " ") + "(".concat(child.type.displayName || child.type.name || child.type, ") ") + 'does not appear to be a valid Redux DevTools monitor.');
|
62 | }
|
63 | });
|
64 | }
|
65 |
|
66 | return {
|
67 | position: position(props, state.position, action),
|
68 | isVisible: isVisible(props, state.isVisible, action),
|
69 | size: size(props, state.size, action),
|
70 | childMonitorIndex: childMonitorIndex(props, state.childMonitorIndex, action),
|
71 | childMonitorStates: childMonitorStates(props, state.childMonitorStates, action)
|
72 | };
|
73 | }
|
74 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9yZWR1Y2Vycy50cyJdLCJuYW1lcyI6WyJwb3NpdGlvbiIsInByb3BzIiwic3RhdGUiLCJkZWZhdWx0UG9zaXRpb24iLCJhY3Rpb24iLCJ0eXBlIiwiQ0hBTkdFX1BPU0lUSU9OIiwiUE9TSVRJT05TIiwiaW5kZXhPZiIsImxlbmd0aCIsInNpemUiLCJkZWZhdWx0U2l6ZSIsIkNIQU5HRV9TSVpFIiwiaXNWaXNpYmxlIiwiZGVmYXVsdElzVmlzaWJsZSIsIlRPR0dMRV9WSVNJQklMSVRZIiwiY2hpbGRNb25pdG9yU3RhdGVzIiwiQ2hpbGRyZW4iLCJtYXAiLCJjaGlsZHJlbiIsImNoaWxkIiwiaW5kZXgiLCJ1cGRhdGUiLCJjaGlsZE1vbml0b3JJbmRleCIsIkNIQU5HRV9NT05JVE9SIiwiY291bnQiLCJyZWR1Y2VyIiwiZm9yRWFjaCIsImNvbnNvbGUiLCJlcnJvciIsImRpc3BsYXlOYW1lIiwibmFtZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUVBOztBQU9BOztBQVdBLFNBQVNBLFFBQVQsQ0FDRUMsS0FERixFQUlFO0FBQUEsTUFGQUMsS0FFQSx1RUFGUUQsS0FBSyxDQUFDRSxlQUVkO0FBQUEsTUFEQUMsTUFDQTtBQUNBLFNBQU9BLE1BQU0sQ0FBQ0MsSUFBUCxLQUFnQkMsd0JBQWhCLEdBQ0hDLHFCQUFVLENBQUNBLHFCQUFVQyxPQUFWLENBQWtCTixLQUFsQixJQUEyQixDQUE1QixJQUFpQ0sscUJBQVVFLE1BQXJELENBREcsR0FFSFAsS0FGSjtBQUdEOztBQUVELFNBQVNRLElBQVQsQ0FDRVQsS0FERixFQUlFO0FBQUEsTUFGQUMsS0FFQSx1RUFGUUQsS0FBSyxDQUFDVSxXQUVkO0FBQUEsTUFEQVAsTUFDQTtBQUNBLFNBQU9BLE1BQU0sQ0FBQ0MsSUFBUCxLQUFnQk8sb0JBQWhCLEdBQThCUixNQUFNLENBQUNNLElBQXJDLEdBQTRDUixLQUFuRDtBQUNEOztBQUVELFNBQVNXLFNBQVQsQ0FDRVosS0FERixFQUlFO0FBQUEsTUFGQUMsS0FFQSx1RUFGUUQsS0FBSyxDQUFDYSxnQkFFZDtBQUFBLE1BREFWLE1BQ0E7QUFDQSxTQUFPQSxNQUFNLENBQUNDLElBQVAsS0FBZ0JVLDBCQUFoQixHQUFvQyxDQUFDYixLQUFyQyxHQUE2Q0EsS0FBcEQ7QUFDRDs7QUFFRCxTQUFTYyxrQkFBVCxDQUNFZixLQURGLEVBSUU7QUFBQSxNQUZBQyxLQUVBLHVFQUZtQixFQUVuQjtBQUFBLE1BREFFLE1BQ0E7QUFDQSxTQUFPYSxnQkFBU0MsR0FBVCxDQUFhakIsS0FBSyxDQUFDa0IsUUFBbkIsRUFBNkIsVUFBQ0MsS0FBRCxFQUFRQyxLQUFSO0FBQUEsV0FDbENELEtBQUssQ0FBQ2YsSUFBTixDQUFXaUIsTUFBWCxDQUFrQkYsS0FBSyxDQUFDbkIsS0FBeEIsRUFBK0JDLEtBQUssQ0FBQ21CLEtBQUQsQ0FBcEMsRUFBNkNqQixNQUE3QyxDQURrQztBQUFBLEdBQTdCLENBQVA7QUFHRDs7QUFFRCxTQUFTbUIsaUJBQVQsQ0FDRXRCLEtBREYsRUFJRTtBQUFBLE1BRkFDLEtBRUEsdUVBRlEsQ0FFUjtBQUFBLE1BREFFLE1BQ0E7O0FBQ0EsVUFBUUEsTUFBTSxDQUFDQyxJQUFmO0FBQ0UsU0FBS21CLHVCQUFMO0FBQ0UsYUFBTyxDQUFDdEIsS0FBSyxHQUFHLENBQVQsSUFBY2UsZ0JBQVNRLEtBQVQsQ0FBZXhCLEtBQUssQ0FBQ2tCLFFBQXJCLENBQXJCOztBQUNGO0FBQ0UsYUFBT2pCLEtBQVA7QUFKSjtBQU1EOztBQUVjLFNBQVN3QixPQUFULENBQ2J6QixLQURhLEVBSUs7QUFBQSxNQUZsQkMsS0FFa0IsdUVBRmlCLEVBRWpCO0FBQUEsTUFEbEJFLE1BQ2tCOztBQUNsQixNQUFJLENBQUNGLEtBQUssQ0FBQ2Msa0JBQVgsRUFBK0I7QUFDN0JDLG9CQUFTVSxPQUFULENBQWlCMUIsS0FBSyxDQUFDa0IsUUFBdkIsRUFBaUMsVUFBQ0MsS0FBRCxFQUFRQyxLQUFSLEVBQWtCO0FBQ2pELFVBQUksT0FBT0QsS0FBSyxDQUFDZixJQUFOLENBQVdpQixNQUFsQixLQUE2QixVQUFqQyxFQUE2QztBQUMzQztBQUNBTSxRQUFBQSxPQUFPLENBQUNDLEtBQVIsQ0FDRSxnREFBeUNSLEtBQXpDLG9CQUVJRCxLQUFLLENBQUNmLElBQU4sQ0FBV3lCLFdBQVgsSUFDQVYsS0FBSyxDQUFDZixJQUFOLENBQVcwQixJQURYLElBRUVYLEtBQUssQ0FBQ2YsSUFKWixVQU1FLHVEQVBKO0FBU0Q7QUFDRixLQWJEO0FBY0Q7O0FBRUQsU0FBTztBQUNMTCxJQUFBQSxRQUFRLEVBQUVBLFFBQVEsQ0FBQ0MsS0FBRCxFQUFRQyxLQUFLLENBQUNGLFFBQWQsRUFBd0JJLE1BQXhCLENBRGI7QUFFTFMsSUFBQUEsU0FBUyxFQUFFQSxTQUFTLENBQUNaLEtBQUQsRUFBUUMsS0FBSyxDQUFDVyxTQUFkLEVBQXlCVCxNQUF6QixDQUZmO0FBR0xNLElBQUFBLElBQUksRUFBRUEsSUFBSSxDQUFDVCxLQUFELEVBQVFDLEtBQUssQ0FBQ1EsSUFBZCxFQUFvQk4sTUFBcEIsQ0FITDtBQUlMbUIsSUFBQUEsaUJBQWlCLEVBQUVBLGlCQUFpQixDQUNsQ3RCLEtBRGtDLEVBRWxDQyxLQUFLLENBQUNxQixpQkFGNEIsRUFHbENuQixNQUhrQyxDQUovQjtBQVNMWSxJQUFBQSxrQkFBa0IsRUFBRUEsa0JBQWtCLENBQ3BDZixLQURvQyxFQUVwQ0MsS0FBSyxDQUFDYyxrQkFGOEIsRUFHcENaLE1BSG9DO0FBVGpDLEdBQVA7QUFlRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoaWxkcmVuIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAncmVkdXgnO1xuaW1wb3J0IHtcbiAgQ0hBTkdFX01PTklUT1IsXG4gIENIQU5HRV9QT1NJVElPTixcbiAgQ0hBTkdFX1NJWkUsXG4gIERvY2tNb25pdG9yQWN0aW9uLFxuICBUT0dHTEVfVklTSUJJTElUWSxcbn0gZnJvbSAnLi9hY3Rpb25zJztcbmltcG9ydCB7IFBPU0lUSU9OUyB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IERvY2tNb25pdG9yUHJvcHMgfSBmcm9tICcuL0RvY2tNb25pdG9yJztcblxuZXhwb3J0IGludGVyZmFjZSBEb2NrTW9uaXRvclN0YXRlIHtcbiAgcG9zaXRpb246ICdsZWZ0JyB8ICd0b3AnIHwgJ3JpZ2h0JyB8ICdib3R0b20nO1xuICBzaXplOiBudW1iZXI7XG4gIGlzVmlzaWJsZTogYm9vbGVhbjtcbiAgY2hpbGRNb25pdG9yU3RhdGVzOiB1bmtub3duW107XG4gIGNoaWxkTW9uaXRvckluZGV4OiBudW1iZXI7XG59XG5cbmZ1bmN0aW9uIHBvc2l0aW9uPFMsIEEgZXh0ZW5kcyBBY3Rpb248dW5rbm93bj4+KFxuICBwcm9wczogRG9ja01vbml0b3JQcm9wczxTLCBBPixcbiAgc3RhdGUgPSBwcm9wcy5kZWZhdWx0UG9zaXRpb24sXG4gIGFjdGlvbjogRG9ja01vbml0b3JBY3Rpb25cbikge1xuICByZXR1cm4gYWN0aW9uLnR5cGUgPT09IENIQU5HRV9QT1NJVElPTlxuICAgID8gUE9TSVRJT05TWyhQT1NJVElPTlMuaW5kZXhPZihzdGF0ZSkgKyAxKSAlIFBPU0lUSU9OUy5sZW5ndGhdXG4gICAgOiBzdGF0ZTtcbn1cblxuZnVuY3Rpb24gc2l6ZTxTLCBBIGV4dGVuZHMgQWN0aW9uPHVua25vd24+PihcbiAgcHJvcHM6IERvY2tNb25pdG9yUHJvcHM8UywgQT4sXG4gIHN0YXRlID0gcHJvcHMuZGVmYXVsdFNpemUsXG4gIGFjdGlvbjogRG9ja01vbml0b3JBY3Rpb25cbikge1xuICByZXR1cm4gYWN0aW9uLnR5cGUgPT09IENIQU5HRV9TSVpFID8gYWN0aW9uLnNpemUgOiBzdGF0ZTtcbn1cblxuZnVuY3Rpb24gaXNWaXNpYmxlPFMsIEEgZXh0ZW5kcyBBY3Rpb248dW5rbm93bj4+KFxuICBwcm9wczogRG9ja01vbml0b3JQcm9wczxTLCBBPixcbiAgc3RhdGUgPSBwcm9wcy5kZWZhdWx0SXNWaXNpYmxlLFxuICBhY3Rpb246IERvY2tNb25pdG9yQWN0aW9uXG4pIHtcbiAgcmV0dXJuIGFjdGlvbi50eXBlID09PSBUT0dHTEVfVklTSUJJTElUWSA/ICFzdGF0ZSA6IHN0YXRlO1xufVxuXG5mdW5jdGlvbiBjaGlsZE1vbml0b3JTdGF0ZXM8UywgQSBleHRlbmRzIEFjdGlvbjx1bmtub3duPj4oXG4gIHByb3BzOiBEb2NrTW9uaXRvclByb3BzPFMsIEE+LFxuICBzdGF0ZTogdW5rbm93bltdID0gW10sXG4gIGFjdGlvbjogRG9ja01vbml0b3JBY3Rpb25cbikge1xuICByZXR1cm4gQ2hpbGRyZW4ubWFwKHByb3BzLmNoaWxkcmVuLCAoY2hpbGQsIGluZGV4KSA9PlxuICAgIGNoaWxkLnR5cGUudXBkYXRlKGNoaWxkLnByb3BzLCBzdGF0ZVtpbmRleF0sIGFjdGlvbilcbiAgKTtcbn1cblxuZnVuY3Rpb24gY2hpbGRNb25pdG9ySW5kZXg8UywgQSBleHRlbmRzIEFjdGlvbjx1bmtub3duPj4oXG4gIHByb3BzOiBEb2NrTW9uaXRvclByb3BzPFMsIEE+LFxuICBzdGF0ZSA9IDAsXG4gIGFjdGlvbjogRG9ja01vbml0b3JBY3Rpb25cbikge1xuICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgY2FzZSBDSEFOR0VfTU9OSVRPUjpcbiAgICAgIHJldHVybiAoc3RhdGUgKyAxKSAlIENoaWxkcmVuLmNvdW50KHByb3BzLmNoaWxkcmVuKTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHN0YXRlO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlZHVjZXI8UywgQSBleHRlbmRzIEFjdGlvbjx1bmtub3duPj4oXG4gIHByb3BzOiBEb2NrTW9uaXRvclByb3BzPFMsIEE+LFxuICBzdGF0ZTogUGFydGlhbDxEb2NrTW9uaXRvclN0YXRlPiA9IHt9LFxuICBhY3Rpb246IERvY2tNb25pdG9yQWN0aW9uXG4pOiBEb2NrTW9uaXRvclN0YXRlIHtcbiAgaWYgKCFzdGF0ZS5jaGlsZE1vbml0b3JTdGF0ZXMpIHtcbiAgICBDaGlsZHJlbi5mb3JFYWNoKHByb3BzLmNoaWxkcmVuLCAoY2hpbGQsIGluZGV4KSA9PiB7XG4gICAgICBpZiAodHlwZW9mIGNoaWxkLnR5cGUudXBkYXRlICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgYENoaWxkIG9mIDxEb2NrTW9uaXRvcj4gd2l0aCB0aGUgaW5kZXggJHtpbmRleH0gYCArXG4gICAgICAgICAgICBgKCR7XG4gICAgICAgICAgICAgIGNoaWxkLnR5cGUuZGlzcGxheU5hbWUgfHxcbiAgICAgICAgICAgICAgY2hpbGQudHlwZS5uYW1lIHx8XG4gICAgICAgICAgICAgICgoY2hpbGQudHlwZSBhcyB1bmtub3duKSBhcyBzdHJpbmcpXG4gICAgICAgICAgICB9KSBgICtcbiAgICAgICAgICAgICdkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCBSZWR1eCBEZXZUb29scyBtb25pdG9yLidcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgcG9zaXRpb246IHBvc2l0aW9uKHByb3BzLCBzdGF0ZS5wb3NpdGlvbiwgYWN0aW9uKSxcbiAgICBpc1Zpc2libGU6IGlzVmlzaWJsZShwcm9wcywgc3RhdGUuaXNWaXNpYmxlLCBhY3Rpb24pLFxuICAgIHNpemU6IHNpemUocHJvcHMsIHN0YXRlLnNpemUsIGFjdGlvbiksXG4gICAgY2hpbGRNb25pdG9ySW5kZXg6IGNoaWxkTW9uaXRvckluZGV4KFxuICAgICAgcHJvcHMsXG4gICAgICBzdGF0ZS5jaGlsZE1vbml0b3JJbmRleCxcbiAgICAgIGFjdGlvblxuICAgICksXG4gICAgY2hpbGRNb25pdG9yU3RhdGVzOiBjaGlsZE1vbml0b3JTdGF0ZXMoXG4gICAgICBwcm9wcyxcbiAgICAgIHN0YXRlLmNoaWxkTW9uaXRvclN0YXRlcyxcbiAgICAgIGFjdGlvblxuICAgICksXG4gIH07XG59XG4iXX0= |
\ | No newline at end of file |