@mic-rexjs/usecases
Version:
Usecases of Clean Architecture
169 lines (168 loc) • 6.64 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.arrayUseCase = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _entityUseCase = require("../entityUseCase");
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var arrayUseCase = exports.arrayUseCase = function arrayUseCase() {
var entityReducers = (0, _entityUseCase.entityUseCase)();
var extractEntity = function extractEntity(entity, filter) {
return entity.filter(filter);
};
var fillEntity = /*#__PURE__*/_regenerator["default"].mark(function fillEntity(entity, value, start, end) {
var newEntity;
return _regenerator["default"].wrap(function fillEntity$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
newEntity = entity.slice();
newEntity.fill(value, start, end);
_context.next = 4;
return newEntity;
case 4:
return _context.abrupt("return", _context.sent);
case 5:
case "end":
return _context.stop();
}
}, fillEntity);
});
var filterEntity = /*#__PURE__*/_regenerator["default"].mark(function filterEntity(entity, filter) {
return _regenerator["default"].wrap(function filterEntity$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return entity.filter(filter);
case 2:
return _context2.abrupt("return", _context2.sent);
case 3:
case "end":
return _context2.stop();
}
}, filterEntity);
});
var popEntity = /*#__PURE__*/_regenerator["default"].mark(function popEntity(entity) {
var newEntity, item;
return _regenerator["default"].wrap(function popEntity$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
newEntity = entity.slice();
item = newEntity.pop();
_context3.next = 4;
return newEntity;
case 4:
return _context3.abrupt("return", item);
case 5:
case "end":
return _context3.stop();
}
}, popEntity);
});
var pushEntity = /*#__PURE__*/_regenerator["default"].mark(function pushEntity(entity) {
var _len,
items,
_key,
newEntity,
length,
_args4 = arguments;
return _regenerator["default"].wrap(function pushEntity$(_context4) {
while (1) switch (_context4.prev = _context4.next) {
case 0:
for (_len = _args4.length, items = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
items[_key - 1] = _args4[_key];
}
newEntity = [].concat((0, _toConsumableArray2["default"])(entity), items);
length = newEntity.length;
_context4.next = 5;
return newEntity;
case 5:
return _context4.abrupt("return", length);
case 6:
case "end":
return _context4.stop();
}
}, pushEntity);
});
var shiftEntity = /*#__PURE__*/_regenerator["default"].mark(function shiftEntity(entity) {
var newEntity, item;
return _regenerator["default"].wrap(function shiftEntity$(_context5) {
while (1) switch (_context5.prev = _context5.next) {
case 0:
newEntity = entity.slice();
item = newEntity.shift();
_context5.next = 4;
return newEntity;
case 4:
return _context5.abrupt("return", item);
case 5:
case "end":
return _context5.stop();
}
}, shiftEntity);
});
var spliceEntity = /*#__PURE__*/_regenerator["default"].mark(function spliceEntity(entity) {
var newEntity,
_len2,
args,
_key2,
splicedItems,
_args6 = arguments;
return _regenerator["default"].wrap(function spliceEntity$(_context6) {
while (1) switch (_context6.prev = _context6.next) {
case 0:
newEntity = entity.slice();
for (_len2 = _args6.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
args[_key2 - 1] = _args6[_key2];
}
splicedItems = newEntity.splice.apply(newEntity, args);
_context6.next = 5;
return newEntity;
case 5:
return _context6.abrupt("return", splicedItems);
case 6:
case "end":
return _context6.stop();
}
}, spliceEntity);
});
var unshiftEntity = /*#__PURE__*/_regenerator["default"].mark(function unshiftEntity(entity) {
var _len3,
items,
_key3,
newEntity,
length,
_args7 = arguments;
return _regenerator["default"].wrap(function unshiftEntity$(_context7) {
while (1) switch (_context7.prev = _context7.next) {
case 0:
for (_len3 = _args7.length, items = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
items[_key3 - 1] = _args7[_key3];
}
newEntity = [].concat(items, (0, _toConsumableArray2["default"])(entity));
length = newEntity.length;
_context7.next = 5;
return newEntity;
case 5:
return _context7.abrupt("return", length);
case 6:
case "end":
return _context7.stop();
}
}, unshiftEntity);
});
return _objectSpread(_objectSpread({}, entityReducers), {}, {
extractEntity: extractEntity,
fillEntity: fillEntity,
filterEntity: filterEntity,
popEntity: popEntity,
pushEntity: pushEntity,
shiftEntity: shiftEntity,
spliceEntity: spliceEntity,
unshiftEntity: unshiftEntity
});
};