@elsikora/nestjs-crud-automator
Version:
A library for automating the creation of CRUD operations in NestJS.
52 lines (48 loc) • 1.95 kB
JavaScript
;
var contextStorage_class = require('./function/context-storage.class.js');
var exception_utility = require('../../utility/error/exception.utility.js');
/**
* Base class for services providing CRUD operations.
* @see {@link https://elsikora.com/docs/nestjs-crud-automator/api-reference/classes#apiservicebase | API Reference - ApiServiceBase}
* @see {@link https://elsikora.com/docs/nestjs-crud-automator/core-concepts/services | Core Concepts - Services}
*/
class ApiServiceBase {
create(properties) {
return Promise.resolve({});
}
delete(criteria) {
return Promise.resolve();
}
// eslint-disable-next-line @elsikora/sonar/no-identical-functions
get(properties) {
return Promise.resolve({});
}
getList(properties) {
return Promise.resolve({ items: [], total: 0 });
}
getMany(properties) {
return Promise.resolve([]);
}
update(criteria, properties) {
return Promise.resolve({});
}
getApiFunctionContext() {
const context = contextStorage_class.ApiFunctionContextStorage.get();
if (!context && contextStorage_class.ApiFunctionContextStorage.getStep()) {
throw exception_utility.ErrorException("Api function context is not available inside a decorated ApiFunctionStep execution");
}
if (!context) {
throw exception_utility.ErrorException("Api function context is not available outside a decorated ApiFunction execution");
}
return context;
}
getApiFunctionStepContext() {
const context = contextStorage_class.ApiFunctionContextStorage.getStep();
if (!context) {
throw exception_utility.ErrorException("Api function step context is not available outside a decorated ApiFunctionStep execution");
}
return context;
}
}
exports.ApiServiceBase = ApiServiceBase;
//# sourceMappingURL=service-base.class.js.map