awv3
Version:
⚡ AWV3 embedded CAD
41 lines (29 loc) • 1.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.reducer = undefined;
var _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray');
var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);
var _extends2 = require('babel-runtime/helpers/extends');
var _extends3 = _interopRequireDefault(_extends2);
var _without = require('lodash/without');
var _without2 = _interopRequireDefault(_without);
var _plugins = require('./plugins');
var _connections = require('./connections');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var reducer = exports.reducer = function reducer() {
var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { plugins: [], connections: [] };
var _ref = arguments[1];
var type = _ref.type,
payload = _ref.payload;
switch (type) {
case _connections.types.register:
return (0, _extends3.default)({}, state, { connections: [].concat((0, _toConsumableArray3.default)(state.connections), [payload.id]) });
case _connections.types.unregister:
var objects = Array.isArray(payload.ids) ? payload.ids : [payload.ids];
return (0, _extends3.default)({}, state, { connections: _without2.default.apply(undefined, [state.connections].concat((0, _toConsumableArray3.default)(objects))) });
default:
return state;
}
};