@atlantjs/backend 7.0.17 → 7.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/backend/infrastructure/controllers/controller-response.abstract.d.ts +9 -0
- package/backend/infrastructure/controllers/controller-response.abstract.js +14 -0
- package/backend/infrastructure/controllers/controller.abstract.d.ts +2 -2
- package/backend/infrastructure/controllers/controller.abstract.js +8 -2
- package/backend/infrastructure/controllers/responses/response.abstract.d.ts +0 -2
- package/index.d.ts +1 -0
- package/index.js +3 -1
- package/package.json +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { HttpStatusCodes } from "@atlantjs/arch";
|
|
2
|
+
import { ResponseAbstract } from "./responses/response.abstract";
|
|
3
|
+
export declare abstract class ControllerResponse {
|
|
4
|
+
protected _statusCode: HttpStatusCodes;
|
|
5
|
+
protected _schema?: ResponseAbstract | undefined;
|
|
6
|
+
protected _data?: Record<string, unknown> | undefined;
|
|
7
|
+
constructor(_statusCode: HttpStatusCodes, _schema?: ResponseAbstract | undefined, _data?: Record<string, unknown> | undefined);
|
|
8
|
+
get statusCode(): HttpStatusCodes;
|
|
9
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ControllerResponse = void 0;
|
|
4
|
+
class ControllerResponse {
|
|
5
|
+
constructor(_statusCode, _schema, _data) {
|
|
6
|
+
this._statusCode = _statusCode;
|
|
7
|
+
this._schema = _schema;
|
|
8
|
+
this._data = _data;
|
|
9
|
+
}
|
|
10
|
+
get statusCode() {
|
|
11
|
+
return this._statusCode;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.ControllerResponse = ControllerResponse;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { FailureAbstract, HttpStatusCodes } from "@atlantjs/arch";
|
|
2
2
|
import { Response } from "express";
|
|
3
|
-
import {
|
|
3
|
+
import { ControllerResponse } from "./controller-response.abstract";
|
|
4
4
|
export declare abstract class ControllerAbstract {
|
|
5
5
|
abstract handler(response: Response, ...args: unknown[]): Promise<Response>;
|
|
6
|
-
protected onSuccess
|
|
6
|
+
protected onSuccess(res: Response, response: ControllerResponse): Promise<Response>;
|
|
7
7
|
protected onFailure(response: Response, failure: FailureAbstract, httpStatusCode?: HttpStatusCodes): Response;
|
|
8
8
|
}
|
|
@@ -2,9 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ControllerAbstract = void 0;
|
|
4
4
|
const arch_1 = require("@atlantjs/arch");
|
|
5
|
+
const class_transformer_1 = require("class-transformer");
|
|
6
|
+
const class_validator_1 = require("class-validator");
|
|
5
7
|
class ControllerAbstract {
|
|
6
|
-
onSuccess(
|
|
7
|
-
|
|
8
|
+
async onSuccess(res, response) {
|
|
9
|
+
if (arch_1._.isNotUndefined(response)) {
|
|
10
|
+
await (0, class_validator_1.validateOrReject)(response);
|
|
11
|
+
}
|
|
12
|
+
const data = (0, class_transformer_1.instanceToPlain)(response);
|
|
13
|
+
return res.status(response.statusCode).send(data);
|
|
8
14
|
}
|
|
9
15
|
onFailure(response, failure, httpStatusCode = arch_1.HttpStatusCodes.BAD_REQUEST) {
|
|
10
16
|
return response.status(httpStatusCode).send(failure.toPolygon());
|
package/index.d.ts
CHANGED
|
@@ -23,3 +23,4 @@ export { Container, inject, injectable } from "inversify";
|
|
|
23
23
|
export { initializeApi } from "./setup";
|
|
24
24
|
export { InjectionsAbstract } from "./backend/application/injections.abstract";
|
|
25
25
|
export { Injections } from "./backend/application/injections.abstract.type";
|
|
26
|
+
export { ControllerResponse } from "./backend/infrastructure/controllers/controller-response.abstract";
|
package/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.InjectionsAbstract = exports.initializeApi = exports.injectable = exports.inject = exports.Container = exports.Server = exports.DefaultErrorHandlerMiddleware = exports.CorsMiddleware = exports.BodyParserMiddleware = exports.DiContainerAbstract = exports.diContainer = exports.startContainer = exports.ResponseAbstract = exports.ValidatorAbstract = exports.PayloadAbstract = exports.ControllerAbstract = exports.CommandAbstract = exports.ServiceAbstract = exports.RepositoryAbstract = exports.ProviderAbstract = exports.MiddlewareHandlerAbstract = exports.BeforeUpdate = exports.BeforeInsert = exports.ManyToMany = exports.OneToOne = exports.OneToMany = exports.ManyToOne = exports.JoinColumn = exports.Entity = exports.Column = exports.PrimaryColumn = exports.ENVIRONMENT = exports.CORS_ALLOWED_ORIGINS = exports.LOAD_MODULES = exports.APP_PORT = exports.Params = exports.Param = exports.Req = exports.Body = exports.Res = exports.JsonController = exports.UseBefore = exports.Patch = exports.Delete = exports.Post = exports.Get = exports.getFromContainer = void 0;
|
|
3
|
+
exports.ControllerResponse = exports.InjectionsAbstract = exports.initializeApi = exports.injectable = exports.inject = exports.Container = exports.Server = exports.DefaultErrorHandlerMiddleware = exports.CorsMiddleware = exports.BodyParserMiddleware = exports.DiContainerAbstract = exports.diContainer = exports.startContainer = exports.ResponseAbstract = exports.ValidatorAbstract = exports.PayloadAbstract = exports.ControllerAbstract = exports.CommandAbstract = exports.ServiceAbstract = exports.RepositoryAbstract = exports.ProviderAbstract = exports.MiddlewareHandlerAbstract = exports.BeforeUpdate = exports.BeforeInsert = exports.ManyToMany = exports.OneToOne = exports.OneToMany = exports.ManyToOne = exports.JoinColumn = exports.Entity = exports.Column = exports.PrimaryColumn = exports.ENVIRONMENT = exports.CORS_ALLOWED_ORIGINS = exports.LOAD_MODULES = exports.APP_PORT = exports.Params = exports.Param = exports.Req = exports.Body = exports.Res = exports.JsonController = exports.UseBefore = exports.Patch = exports.Delete = exports.Post = exports.Get = exports.getFromContainer = void 0;
|
|
4
4
|
require("./backend/application/envs/load-envs");
|
|
5
5
|
require("reflect-metadata");
|
|
6
6
|
const setup_1 = require("./setup");
|
|
@@ -73,3 +73,5 @@ var setup_2 = require("./setup");
|
|
|
73
73
|
Object.defineProperty(exports, "initializeApi", { enumerable: true, get: function () { return setup_2.initializeApi; } });
|
|
74
74
|
var injections_abstract_1 = require("./backend/application/injections.abstract");
|
|
75
75
|
Object.defineProperty(exports, "InjectionsAbstract", { enumerable: true, get: function () { return injections_abstract_1.InjectionsAbstract; } });
|
|
76
|
+
var controller_response_abstract_1 = require("./backend/infrastructure/controllers/controller-response.abstract");
|
|
77
|
+
Object.defineProperty(exports, "ControllerResponse", { enumerable: true, get: function () { return controller_response_abstract_1.ControllerResponse; } });
|