express-crud-router
Version:
React Admin backend for Express. 1 line per resource! ORM agnostic.
104 lines (86 loc) • 2.52 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "Create", {
enumerable: true,
get: function () {
return _create.Create;
}
});
Object.defineProperty(exports, "Destroy", {
enumerable: true,
get: function () {
return _delete.Destroy;
}
});
Object.defineProperty(exports, "Get", {
enumerable: true,
get: function () {
return _getList.Get;
}
});
Object.defineProperty(exports, "Update", {
enumerable: true,
get: function () {
return _update.Update;
}
});
exports.default = exports.crud = void 0;
Object.defineProperty(exports, "populateReference", {
enumerable: true,
get: function () {
return _additionalAttributeHelpers.populateReference;
}
});
Object.defineProperty(exports, "populateReferenceMany", {
enumerable: true,
get: function () {
return _additionalAttributeHelpers.populateReferenceMany;
}
});
Object.defineProperty(exports, "populateReferenceManyCount", {
enumerable: true,
get: function () {
return _additionalAttributeHelpers.populateReferenceManyCount;
}
});
Object.defineProperty(exports, "populateReferenceOne", {
enumerable: true,
get: function () {
return _additionalAttributeHelpers.populateReferenceOne;
}
});
var _express = require("express");
var _bodyParser = _interopRequireDefault(require("body-parser"));
var _getList = require("./getList");
var _getOne = require("./getOne");
var _create = require("./create");
var _update = require("./update");
var _delete = require("./delete");
var _additionalAttributeHelpers = require("./additionalAttributeHelpers");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const crud = (path, actions, options) => {
const router = (0, _express.Router)();
router.use(_bodyParser.default.json());
if (actions.get) {
router.get(path, (0, _getList.getMany)(actions.get, options));
router.get(`${path}/:id`, (0, _getOne.getOne)(actions.get, options));
}
if (actions.create) {
router.post(path, (0, _create.create)(actions.create));
}
if (actions.update) {
if (!actions.get) {
throw new Error('You cannot define update without defining getOne');
}
router.put(`${path}/:id`, (0, _update.update)(actions.update, actions.get));
}
if (actions.destroy) {
router.delete(`${path}/:id`, (0, _delete.destroy)(actions.destroy));
}
return router;
};
exports.crud = crud;
var _default = crud;
exports.default = _default;