@elsikora/nestjs-crud-automator
Version:
A library for automating the creation of CRUD operations in NestJS.
75 lines (71 loc) • 3.75 kB
JavaScript
;
require('../../../../../enum/decorator/api/action.enum.js');
require('../../../../../enum/decorator/api/authentication-type.enum.js');
require('../../../../../enum/decorator/api/controller/get-list/query/filter/missing-behavior.enum.js');
require('../../../../../enum/decorator/api/controller/get-list/query/unlisted-fields.enum.js');
require('../../../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
require('../../../../../enum/decorator/api/controller/request/target.enum.js');
require('../../../../../enum/decorator/api/controller/request/transformer-type.enum.js');
require('../../../../../enum/decorator/api/controller/response-target.enum.js');
require('../../../../../enum/decorator/api/dto-type.enum.js');
require('../../../../../enum/decorator/api/function/context-storage-kind.enum.js');
require('../../../../../enum/decorator/api/function/subscriber-transaction-expectation.enum.js');
require('../../../../../enum/decorator/api/function/transaction/event-status.enum.js');
require('../../../../../enum/decorator/api/function/transaction/failure-stage.enum.js');
require('../../../../../enum/decorator/api/function/transaction/mode.enum.js');
var outcome_enum = require('../../../../../enum/decorator/api/function/transaction/outcome.enum.js');
require('../../../../../enum/decorator/api/function/transaction/owner-kind.enum.js');
require('../../../../../enum/decorator/api/function/transaction/trace-type.enum.js');
require('../../../../../enum/decorator/api/function/type.enum.js');
require('../../../../../enum/decorator/api/on-type.enum.js');
require('../../../../../enum/decorator/api/property/data-type.enum.js');
require('../../../../../enum/decorator/api/property/date/identifier.enum.js');
require('../../../../../enum/decorator/api/property/date/type.enum.js');
require('../../../../../enum/decorator/api/property/desribe-type.enum.js');
require('../../../../../enum/decorator/api/property/number-type.enum.js');
require('../../../../../enum/decorator/api/property/string-type.enum.js');
require('../../../../../enum/decorator/api/route/subscriber-authorization-expectation.enum.js');
require('../../../../../enum/decorator/api/route/type.enum.js');
class ApiFunctionTransactionRollbackException extends Error {
get errorLifecycleFailures() {
return this.ERROR_LIFECYCLE_FAILURES;
}
get hookFailures() {
return this.HOOK_FAILURES;
}
get operationError() {
return this.OPERATION_ERROR;
}
get outcome() {
return this.ROLLBACK_FAILURE ? outcome_enum.EApiFunctionTransactionOutcome.UNKNOWN : outcome_enum.EApiFunctionTransactionOutcome.ROLLED_BACK;
}
get owner() {
return this.OWNER;
}
get rollbackFailure() {
return this.ROLLBACK_FAILURE;
}
get transactionId() {
return this.TRANSACTION_ID;
}
ERROR_LIFECYCLE_FAILURES;
HOOK_FAILURES;
OPERATION_ERROR;
OWNER;
ROLLBACK_FAILURE;
TRANSACTION_ID;
constructor(options) {
super(`Transaction ${options.transactionId} operation failed and rollback handling also failed`, {
cause: options.operationError,
});
this.name = ApiFunctionTransactionRollbackException.name;
this.ERROR_LIFECYCLE_FAILURES = Object.freeze([...options.errorLifecycleFailures]);
this.HOOK_FAILURES = Object.freeze([...options.hookFailures]);
this.OPERATION_ERROR = options.operationError;
this.OWNER = options.owner;
this.ROLLBACK_FAILURE = options.rollbackFailure;
this.TRANSACTION_ID = options.transactionId;
}
}
exports.ApiFunctionTransactionRollbackException = ApiFunctionTransactionRollbackException;
//# sourceMappingURL=rollback.class.js.map