@triproject/nestjs-core 1.0.29 → 1.0.31
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/dist/bootstrap.js +39 -1
- package/dist/config.js +257 -1
- package/dist/controllers/controller.js +53 -1
- package/dist/drivers/cache/cache.js +79 -1
- package/dist/drivers/cache/cache.module.js +30 -1
- package/dist/drivers/cache/index.js +14 -1
- package/dist/drivers/cache/redis.js +76 -1
- package/dist/drivers/db/db.helper.d.ts +1 -1
- package/dist/drivers/db/db.helper.js +276 -1
- package/dist/drivers/db/db.module.js +64 -1
- package/dist/drivers/db/db.service.js +52 -1
- package/dist/drivers/db/index.js +14 -1
- package/dist/drivers/db/migration.js +119 -1
- package/dist/drivers/db/repository.js +258 -1
- package/dist/drivers/encryptions/encryption.js +55 -1
- package/dist/drivers/encryptions/encryption.module.js +34 -1
- package/dist/drivers/encryptions/index.js +14 -1
- package/dist/drivers/encryptions/jwt.js +62 -1
- package/dist/drivers/encryptions/password-hash.js +48 -1
- package/dist/drivers/encryptions/snap.signature.js +111 -1
- package/dist/drivers/logger/app.logger.js +121 -2
- package/dist/drivers/logger/cloudwatch.js +73 -1
- package/dist/drivers/logger/index.js +12 -1
- package/dist/drivers/logger/logger.contract.js +29 -1
- package/dist/drivers/logger/logger.driver.js +49 -1
- package/dist/drivers/logger/slack.logger.js +42 -1
- package/dist/drivers/mail/index.js +14 -1
- package/dist/drivers/mail/mail-template.js +39 -6
- package/dist/drivers/mail/mail.config.js +10 -1
- package/dist/drivers/mail/mail.js +58 -13
- package/dist/drivers/mail/mail.module.js +36 -1
- package/dist/drivers/mail/mail.queue.js +45 -1
- package/dist/drivers/mail/mailer.js +64 -1
- package/dist/drivers/message-broker/index.js +14 -1
- package/dist/drivers/message-broker/kafka.js +104 -1
- package/dist/drivers/message-broker/message-broker.contract.js +24 -1
- package/dist/drivers/message-broker/message-broker.module.js +28 -1
- package/dist/drivers/message-broker/message.broker.js +67 -1
- package/dist/drivers/message-broker/rabbitmq.js +115 -1
- package/dist/drivers/notifications/index.js +14 -1
- package/dist/drivers/notifications/notification.config.js +10 -1
- package/dist/drivers/notifications/notification.module.js +34 -1
- package/dist/drivers/notifications/notification.queue.js +45 -1
- package/dist/drivers/notifications/push-notification.js +81 -1
- package/dist/drivers/notifications/slack.js +74 -1
- package/dist/drivers/queues/app.queue.js +77 -1
- package/dist/drivers/queues/index.js +14 -1
- package/dist/drivers/queues/queue.module.js +51 -1
- package/dist/drivers/secret-manager/aws-secret-manager.js +40 -1
- package/dist/drivers/secret-manager/index.js +50 -1
- package/dist/drivers/storage/csv.storage.js +71 -1
- package/dist/drivers/storage/excel.storage.js +57 -1
- package/dist/drivers/storage/index.js +14 -1
- package/dist/drivers/storage/local.storage.js +94 -1
- package/dist/drivers/storage/minio.storage.js +82 -1
- package/dist/drivers/storage/s3-storage.js +122 -1
- package/dist/drivers/storage/storage.contract.js +31 -1
- package/dist/drivers/storage/storage.module.js +32 -1
- package/dist/drivers/storage/storage.service.js +59 -1
- package/dist/helpers/exception.helper.js +132 -1
- package/dist/helpers/http.helper.js +163 -1
- package/dist/helpers/swagger.helper.js +474 -1
- package/dist/index.js +14 -1
- package/dist/types.d.js +4 -1
- package/dist/utils/redlock.js +51 -1
- package/dist/utils/throttle.js +68 -1
- package/dist/utils/totp.js +56 -1
- package/package.json +32 -29
|
@@ -1 +1,163 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: !0
|
|
4
|
+
});
|
|
5
|
+
var target = exports, all = {
|
|
6
|
+
get CatchError () {
|
|
7
|
+
return CatchError;
|
|
8
|
+
},
|
|
9
|
+
get HandleResponse () {
|
|
10
|
+
return HandleResponse;
|
|
11
|
+
},
|
|
12
|
+
get HttpExceptionFilter () {
|
|
13
|
+
return HttpExceptionFilter;
|
|
14
|
+
},
|
|
15
|
+
get ResponseInterceptor () {
|
|
16
|
+
return ResponseInterceptor;
|
|
17
|
+
},
|
|
18
|
+
get TransformResponseInterceptor () {
|
|
19
|
+
return TransformResponseInterceptor;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
23
|
+
enumerable: !0,
|
|
24
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
25
|
+
});
|
|
26
|
+
let _common = require("@nestjs/common"), _helpers = require("@triproject/helpers"), _rxjs = require("rxjs"), _uaparserjs = require("ua-parser-js"), _config = require("../config"), _applogger = require("../drivers/logger/app.logger"), _exceptionhelper = require("./exception.helper");
|
|
27
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
28
|
+
var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
|
|
29
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc);
|
|
30
|
+
else for(var i = decorators.length - 1; i >= 0; i--)(d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
|
|
31
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
32
|
+
}
|
|
33
|
+
function _ts_metadata(k, v) {
|
|
34
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
|
|
35
|
+
}
|
|
36
|
+
let errorLogger = new _applogger.AppLogger('CatchError Handler');
|
|
37
|
+
function CatchError(err) {
|
|
38
|
+
return (target, key, descriptor)=>{
|
|
39
|
+
let originalMethod = descriptor.value;
|
|
40
|
+
descriptor.value = async function(...args) {
|
|
41
|
+
try {
|
|
42
|
+
return await originalMethod.apply(this, args);
|
|
43
|
+
} catch (error) {
|
|
44
|
+
let context = target.constructor.name + '.' + key;
|
|
45
|
+
if (error instanceof _exceptionhelper.AppBadRequestException || error instanceof _exceptionhelper.AppBadRequestException || error instanceof _exceptionhelper.AppUnprocessableEntityException || error instanceof _exceptionhelper.AppNotFoundException || error instanceof _exceptionhelper.AppForbiddenException || error instanceof _exceptionhelper.AppUnauthorizedException || error instanceof _exceptionhelper.AppConflictException || error instanceof _exceptionhelper.AppBadGatewayException || error instanceof _exceptionhelper.AppGatewayTimeoutException || error instanceof _common.GoneException || error instanceof _common.BadRequestException || error instanceof _common.BadRequestException || error instanceof _common.UnprocessableEntityException || error instanceof _common.NotFoundException || error instanceof _common.ForbiddenException || error instanceof _common.UnauthorizedException || error instanceof _common.ConflictException || error instanceof _common.BadGatewayException || error instanceof _common.GatewayTimeoutException) throw [
|
|
46
|
+
'development',
|
|
47
|
+
'local',
|
|
48
|
+
'staging'
|
|
49
|
+
].includes(_config.NODE_ENV) && errorLogger.debug(err + ': ' + context, args, error?.errors ?? error), error;
|
|
50
|
+
throw errorLogger.error(err + ': ' + context, args, error), new _common.InternalServerErrorException(err);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
let RequestLog = class RequestLog {
|
|
56
|
+
logger = new _applogger.AppLogger('Request Log');
|
|
57
|
+
start(req) {
|
|
58
|
+
req.requestId = (0, _helpers.generateId)(), req.requestStartAt = new Date().getTime();
|
|
59
|
+
let userAgentString = req.get('user-agent') ?? '', ua = new _uaparserjs.UAParser(userAgentString).getResult();
|
|
60
|
+
req.userAgent = [
|
|
61
|
+
ua.browser.name + ' ' + ua.browser.version,
|
|
62
|
+
ua.os.name + ' ' + ua.os.version
|
|
63
|
+
].join(', ');
|
|
64
|
+
}
|
|
65
|
+
end(req, res) {
|
|
66
|
+
let duration = (0, _helpers.dateUtil)().diff('milliseconds', req.requestStartAt), reqData = (0, _helpers.removeEmptyValues)({
|
|
67
|
+
body: Object.keys(req?.body).length ? req?.body : void 0,
|
|
68
|
+
query: Object.keys(req?.query).length ? req?.query : void 0
|
|
69
|
+
}), userData = req?.user, user = userData ? (0, _helpers.removeEmptyValues)({
|
|
70
|
+
id: userData?.id,
|
|
71
|
+
name: userData?.name,
|
|
72
|
+
sessionId: userData?.sessionId
|
|
73
|
+
}) : void 0, logs = [
|
|
74
|
+
`Request ${req.requestId} completed in ${duration} ms`,
|
|
75
|
+
(0, _helpers.removeEmptyValues)({
|
|
76
|
+
requestId: req.requestId,
|
|
77
|
+
durationInMs: duration,
|
|
78
|
+
method: req.method,
|
|
79
|
+
url: req.protocol + '://' + req.hostname + req.baseUrl + req.path,
|
|
80
|
+
origin: req.get('origin'),
|
|
81
|
+
ipAddress: req?.ip,
|
|
82
|
+
userAgent: req?.userAgent,
|
|
83
|
+
request: reqData && Object.keys(reqData).length ? reqData : void 0,
|
|
84
|
+
response: {
|
|
85
|
+
status: res.status,
|
|
86
|
+
message: res.message
|
|
87
|
+
},
|
|
88
|
+
user
|
|
89
|
+
})
|
|
90
|
+
];
|
|
91
|
+
req?.errorMessage && logs.push(req.errorMessage), this.logger.log(...logs);
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
let requestLog = new RequestLog();
|
|
95
|
+
let HttpExceptionFilter = class HttpExceptionFilter {
|
|
96
|
+
catch(exception, host) {
|
|
97
|
+
let ctx = host.switchToHttp(), response = ctx.getResponse(), request = ctx.getRequest(), status = exception.getStatus();
|
|
98
|
+
requestLog.start(request), status.toString().startsWith('5') && (request.errorMessage = exception), 400 === status ? response.status(status).json(exception.getResponse()) : 404 === status ? response.status(status).json({
|
|
99
|
+
statusCode: status,
|
|
100
|
+
message: 'Not found'
|
|
101
|
+
}) : response.status(status).json((0, _helpers.removeEmptyValues)({
|
|
102
|
+
statusCode: status,
|
|
103
|
+
message: exception.message,
|
|
104
|
+
meta: [
|
|
105
|
+
500,
|
|
106
|
+
502,
|
|
107
|
+
504
|
|
108
|
+
].includes(status) ? {
|
|
109
|
+
timestamp: request?.requestStartAt ? (0, _helpers.dateUtil)(request?.requestStartAt).utc().toISOString() : void 0,
|
|
110
|
+
path: request.url,
|
|
111
|
+
reqId: request?.requestId
|
|
112
|
+
} : void 0
|
|
113
|
+
})), requestLog.end(request, {
|
|
114
|
+
status: response.statusCode,
|
|
115
|
+
message: exception.message
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
HttpExceptionFilter = _ts_decorate([
|
|
120
|
+
(0, _common.Catch)(_common.HttpException)
|
|
121
|
+
], HttpExceptionFilter);
|
|
122
|
+
let handleDataValue = (data)=>data?.statusCode && data?.message ? data : !Array.isArray(data) && data?.data && 'object' == typeof data?.data ? {
|
|
123
|
+
statusCode: 200,
|
|
124
|
+
message: 'Success',
|
|
125
|
+
...data
|
|
126
|
+
} : {
|
|
127
|
+
statusCode: 200,
|
|
128
|
+
message: 'Success',
|
|
129
|
+
data
|
|
130
|
+
};
|
|
131
|
+
let TransformResponseInterceptor = class TransformResponseInterceptor {
|
|
132
|
+
intercept(context, next) {
|
|
133
|
+
let req = context.switchToHttp().getRequest();
|
|
134
|
+
return requestLog.start(req), next.handle().pipe((0, _rxjs.map)((data)=>handleDataValue(data)), (0, _rxjs.tap)((res)=>{
|
|
135
|
+
requestLog.end(req, {
|
|
136
|
+
status: res.statusCode,
|
|
137
|
+
message: res?.message
|
|
138
|
+
});
|
|
139
|
+
}));
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
TransformResponseInterceptor = _ts_decorate([
|
|
143
|
+
(0, _common.Injectable)()
|
|
144
|
+
], TransformResponseInterceptor);
|
|
145
|
+
let ResponseInterceptor = class ResponseInterceptor {
|
|
146
|
+
message;
|
|
147
|
+
status;
|
|
148
|
+
constructor(message = 'Success', status = _common.HttpStatus.OK){
|
|
149
|
+
this.message = message, this.status = status;
|
|
150
|
+
}
|
|
151
|
+
intercept(context, next) {
|
|
152
|
+
return next.handle().pipe((0, _rxjs.map)((data)=>handleDataValue(data)));
|
|
153
|
+
}
|
|
154
|
+
};
|
|
155
|
+
ResponseInterceptor = _ts_decorate([
|
|
156
|
+
(0, _common.Injectable)(),
|
|
157
|
+
_ts_metadata("design:type", Function),
|
|
158
|
+
_ts_metadata("design:paramtypes", [
|
|
159
|
+
String,
|
|
160
|
+
void 0 === _common.HttpStatus ? Object : _common.HttpStatus
|
|
161
|
+
])
|
|
162
|
+
], ResponseInterceptor);
|
|
163
|
+
let HandleResponse = (message, status = _common.HttpStatus.OK)=>(0, _common.UseInterceptors)(new ResponseInterceptor(message, status));
|
|
@@ -1 +1,474 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get ApiAddressProperty(){return ApiAddressProperty},get ApiBooleanProperty(){return ApiBooleanProperty},get ApiCityProperty(){return ApiCityProperty},get ApiCompanyProperty(){return ApiCompanyProperty},get ApiDateArrayProperty(){return ApiDateArrayProperty},get ApiDateOnlyProperty(){return ApiDateOnlyProperty},get ApiDateProperty(){return ApiDateProperty},get ApiEmailProperty(){return ApiEmailProperty},get ApiEnumProperty(){return ApiEnumProperty},get ApiNameProperty(){return ApiNameProperty},get ApiNumberArrayProperty(){return ApiNumberArrayProperty},get ApiNumberProperty(){return ApiNumberProperty},get ApiPasswordProperty(){return ApiPasswordProperty},get ApiPhoneProperty(){return ApiPhoneProperty},get ApiProvinceProperty(){return ApiProvinceProperty},get ApiStringArrayProperty(){return ApiStringArrayProperty},get ApiStringProperty(){return ApiStringProperty},get ApiTimeProperty(){return ApiTimeProperty},get ApiTokenProperty(){return ApiTokenProperty},get ApiUrlProperty(){return ApiUrlProperty},get ApiUuidArrayProperty(){return ApiUuidArrayProperty},get ApiUuidProperty(){return ApiUuidProperty},get SwaggerApiBadRequestResponse(){return SwaggerApiBadRequestResponse},get SwaggerApiBadSwaGatewayResponse(){return SwaggerApiBadSwaGatewayResponse},get SwaggerApiConflictResponse(){return SwaggerApiConflictResponse},get SwaggerApiCreatedResponse(){return SwaggerApiCreatedResponse},get SwaggerApiForbiddenResponse(){return SwaggerApiForbiddenResponse},get SwaggerApiInternalServerErrorResponse(){return SwaggerApiInternalServerErrorResponse},get SwaggerApiNoContentResponse(){return SwaggerApiNoContentResponse},get SwaggerApiNotFoundResponse(){return SwaggerApiNotFoundResponse},get SwaggerApiPaginateResponse(){return SwaggerApiPaginateResponse},get SwaggerApiSuccessResponse(){return SwaggerApiSuccessResponse},get SwaggerApiUnauthorizedResponse(){return SwaggerApiUnauthorizedResponse}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});let _swagger=require("@nestjs/swagger");function _ts_decorate(decorators,target,key,desc){var d,c=arguments.length,r=c<3?target:null===desc?desc=Object.getOwnPropertyDescriptor(target,key):desc;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(decorators,target,key,desc);else for(var i=decorators.length-1;i>=0;i--)(d=decorators[i])&&(r=(c<3?d(r):c>3?d(target,key,r):d(target,key))||r);return c>3&&r&&Object.defineProperty(target,key,r),r}function _ts_metadata(k,v){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(k,v)}let paginateResponseCache=new Map;let BadRequestExample=class BadRequestExample{statusCode;message;errors};_ts_decorate([(0,_swagger.ApiProperty)({example:400}),_ts_metadata("design:type",Number)],BadRequestExample.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Error Message 1, Error Message 2"}),_ts_metadata("design:type",String)],BadRequestExample.prototype,"message",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:{field1:["Error message 1","Error message 2"],field2:["Error message 3"]},description:"Validation errors"}),_ts_metadata("design:type","u"<typeof Record?Object:Record)],BadRequestExample.prototype,"errors",void 0);let SwaggerApiBadRequestResponse=(0,_swagger.ApiResponse)({status:400,description:"Bad Request",type:BadRequestExample});let UnauthorizedExample=class UnauthorizedExample{statusCode;message};_ts_decorate([(0,_swagger.ApiProperty)({example:401}),_ts_metadata("design:type",Number)],UnauthorizedExample.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Unauthorized"}),_ts_metadata("design:type",String)],UnauthorizedExample.prototype,"message",void 0);let SwaggerApiUnauthorizedResponse=(0,_swagger.ApiResponse)({status:401,description:"Unauthorized",type:UnauthorizedExample});let ForbiddenExample=class ForbiddenExample{statusCode;message};_ts_decorate([(0,_swagger.ApiProperty)({example:403}),_ts_metadata("design:type",Number)],ForbiddenExample.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Forbidden"}),_ts_metadata("design:type",String)],ForbiddenExample.prototype,"message",void 0);let SwaggerApiForbiddenResponse=(0,_swagger.ApiResponse)({status:403,description:"Forbidden",type:ForbiddenExample});let NotFoundExample=class NotFoundExample{statusCode;message};_ts_decorate([(0,_swagger.ApiProperty)({example:404}),_ts_metadata("design:type",Number)],NotFoundExample.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Resource not found"}),_ts_metadata("design:type",String)],NotFoundExample.prototype,"message",void 0);let SwaggerApiNotFoundResponse=(0,_swagger.ApiResponse)({status:404,description:"Not Found",type:NotFoundExample});let BadSwaGatewayExample=class BadSwaGatewayExample{statusCode;message};_ts_decorate([(0,_swagger.ApiProperty)({example:502}),_ts_metadata("design:type",Number)],BadSwaGatewayExample.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Bad Gateway"}),_ts_metadata("design:type",String)],BadSwaGatewayExample.prototype,"message",void 0);let SwaggerApiBadSwaGatewayResponse=(0,_swagger.ApiResponse)({status:502,description:"Bad Gateway",type:BadSwaGatewayExample});let InternalServerErrorExample=class InternalServerErrorExample{statusCode;message};_ts_decorate([(0,_swagger.ApiProperty)({example:500}),_ts_metadata("design:type",Number)],InternalServerErrorExample.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Internal server error"}),_ts_metadata("design:type",String)],InternalServerErrorExample.prototype,"message",void 0);let SwaggerApiInternalServerErrorResponse=(0,_swagger.ApiResponse)({status:500,description:"Internal Server Error",type:InternalServerErrorExample});let ConflictExample=class ConflictExample{statusCode;message};_ts_decorate([(0,_swagger.ApiProperty)({example:409}),_ts_metadata("design:type",Number)],ConflictExample.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Conflict error"}),_ts_metadata("design:type",String)],ConflictExample.prototype,"message",void 0);let SwaggerApiConflictResponse=(0,_swagger.ApiResponse)({status:409,description:"Conflict",type:ConflictExample});let NoContentExample=class NoContentExample{statusCode;message};_ts_decorate([(0,_swagger.ApiProperty)({example:204}),_ts_metadata("design:type",Number)],NoContentExample.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"No content"}),_ts_metadata("design:type",String)],NoContentExample.prototype,"message",void 0);let SwaggerApiNoContentResponse=(0,_swagger.ApiResponse)({status:204,description:"No Content",type:NoContentExample}),SwaggerApiSuccessResponse=classType=>(0,_swagger.ApiResponse)({status:200,description:"Success",type:(classType=>{let className=classType.name,cacheKey=`Success${className}Response`;if(paginateResponseCache.has(cacheKey))return paginateResponseCache.get(cacheKey);let SuccessResponse=class SuccessResponse{statusCode;message;data};return _ts_decorate([(0,_swagger.ApiProperty)({example:200}),_ts_metadata("design:type",Number)],SuccessResponse.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Success"}),_ts_metadata("design:type",String)],SuccessResponse.prototype,"message",void 0),_ts_decorate([(0,_swagger.ApiProperty)({description:"Response data",type:classType}),_ts_metadata("design:type",Object)],SuccessResponse.prototype,"data",void 0),Object.defineProperty(SuccessResponse,"name",{value:cacheKey}),paginateResponseCache.set(cacheKey,SuccessResponse),SuccessResponse})(classType)}),SwaggerApiCreatedResponse=classType=>(0,_swagger.ApiResponse)({status:201,description:"Created",type:(classType=>{let className=classType.name,cacheKey=`Created${className}Response`;if(paginateResponseCache.has(cacheKey))return paginateResponseCache.get(cacheKey);let CreatedResponse=class CreatedResponse{statusCode;message;data};return _ts_decorate([(0,_swagger.ApiProperty)({example:201}),_ts_metadata("design:type",Number)],CreatedResponse.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Resource created successfully"}),_ts_metadata("design:type",String)],CreatedResponse.prototype,"message",void 0),_ts_decorate([(0,_swagger.ApiProperty)({description:"Response data",type:classType}),_ts_metadata("design:type",Object)],CreatedResponse.prototype,"data",void 0),Object.defineProperty(CreatedResponse,"name",{value:cacheKey}),paginateResponseCache.set(cacheKey,CreatedResponse),CreatedResponse})(classType)});function SwaggerApiPaginateResponse(classType){return(0,_swagger.ApiResponse)({status:200,description:"Success",type:(classType=>{let className=classType.name,cacheKey=`Paginate${className}Response`;if(paginateResponseCache.has(cacheKey))return paginateResponseCache.get(cacheKey);let ApiPaginateResponse=class ApiPaginateResponse{statusCode;message;meta;timestamp};return _ts_decorate([(0,_swagger.ApiProperty)({example:200}),_ts_metadata("design:type",Number)],ApiPaginateResponse.prototype,"statusCode",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"Success"}),_ts_metadata("design:type",String)],ApiPaginateResponse.prototype,"message",void 0),_ts_decorate([(0,_swagger.ApiProperty)({isArray:!0,type:classType}),_ts_metadata("design:type",Array)],ApiPaginateResponse.prototype,"data",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:{total:100,totalPage:10,perPage:10,prevPage:null,page:1,nextPage:2}}),_ts_metadata("design:type",Object)],ApiPaginateResponse.prototype,"meta",void 0),_ts_decorate([(0,_swagger.ApiProperty)({example:"2024-01-01T00:00:00.000Z"}),_ts_metadata("design:type",String)],ApiPaginateResponse.prototype,"timestamp",void 0),Object.defineProperty(ApiPaginateResponse,"name",{value:cacheKey}),paginateResponseCache.set(cacheKey,ApiPaginateResponse),ApiPaginateResponse})(classType)})}let ApiNameProperty=(0,_swagger.ApiProperty)({example:"John Doe"}),ApiCompanyProperty=(0,_swagger.ApiProperty)({example:"PT Gundala Permai"}),ApiCityProperty=(0,_swagger.ApiProperty)({example:"Jakarta"}),ApiProvinceProperty=(0,_swagger.ApiProperty)({example:"DKI Jakarta"}),ApiAddressProperty=(0,_swagger.ApiProperty)({example:"Jl. Merdeka No. 123"}),ApiEmailProperty=(0,_swagger.ApiProperty)({example:"john@gmail.com"}),ApiPhoneProperty=(0,_swagger.ApiProperty)({example:"+62128888888"}),ApiPasswordProperty=(0,_swagger.ApiProperty)({example:"Password@#123"}),ApiTokenProperty=(0,_swagger.ApiProperty)({example:"abcdef1234567890"}),ApiUuidProperty=(0,_swagger.ApiProperty)({example:"123e4567-e89b-12d3-a456-426614174000"}),ApiBooleanProperty=(0,_swagger.ApiProperty)({example:!0}),ApiNumberProperty=(0,_swagger.ApiProperty)({example:42e3}),ApiStringProperty=(0,_swagger.ApiProperty)({example:"Some string value"}),ApiEnumProperty=enums=>(0,_swagger.ApiProperty)({example:enums[0],enum:enums}),ApiDateProperty=(0,_swagger.ApiProperty)({example:"2024-01-01T00:00:00.000Z"}),ApiDateOnlyProperty=(0,_swagger.ApiProperty)({example:"2024-01-01"}),ApiTimeProperty=(0,_swagger.ApiProperty)({example:"14:30:00"}),ApiUrlProperty=(0,_swagger.ApiProperty)({example:"https://www.example.com/resource"}),ApiUuidArrayProperty=(0,_swagger.ApiProperty)({example:["123e4567-e89b-12d3-a456-426614174000","987e6543-e21b-12d3-a456-426614174999"],isArray:!0}),ApiStringArrayProperty=(0,_swagger.ApiProperty)({example:["string1","string2","string3"],isArray:!0}),ApiNumberArrayProperty=(0,_swagger.ApiProperty)({example:[10,20,30,40],isArray:!0}),ApiDateArrayProperty=(0,_swagger.ApiProperty)({example:["2024-01-01T00:00:00.000Z","2024-02-01T00:00:00.000Z"],isArray:!0});
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: !0
|
|
4
|
+
});
|
|
5
|
+
var target = exports, all = {
|
|
6
|
+
get ApiAddressProperty () {
|
|
7
|
+
return ApiAddressProperty;
|
|
8
|
+
},
|
|
9
|
+
get ApiBooleanProperty () {
|
|
10
|
+
return ApiBooleanProperty;
|
|
11
|
+
},
|
|
12
|
+
get ApiCityProperty () {
|
|
13
|
+
return ApiCityProperty;
|
|
14
|
+
},
|
|
15
|
+
get ApiCompanyProperty () {
|
|
16
|
+
return ApiCompanyProperty;
|
|
17
|
+
},
|
|
18
|
+
get ApiDateArrayProperty () {
|
|
19
|
+
return ApiDateArrayProperty;
|
|
20
|
+
},
|
|
21
|
+
get ApiDateOnlyProperty () {
|
|
22
|
+
return ApiDateOnlyProperty;
|
|
23
|
+
},
|
|
24
|
+
get ApiDateProperty () {
|
|
25
|
+
return ApiDateProperty;
|
|
26
|
+
},
|
|
27
|
+
get ApiEmailProperty () {
|
|
28
|
+
return ApiEmailProperty;
|
|
29
|
+
},
|
|
30
|
+
get ApiEnumProperty () {
|
|
31
|
+
return ApiEnumProperty;
|
|
32
|
+
},
|
|
33
|
+
get ApiNameProperty () {
|
|
34
|
+
return ApiNameProperty;
|
|
35
|
+
},
|
|
36
|
+
get ApiNumberArrayProperty () {
|
|
37
|
+
return ApiNumberArrayProperty;
|
|
38
|
+
},
|
|
39
|
+
get ApiNumberProperty () {
|
|
40
|
+
return ApiNumberProperty;
|
|
41
|
+
},
|
|
42
|
+
get ApiPasswordProperty () {
|
|
43
|
+
return ApiPasswordProperty;
|
|
44
|
+
},
|
|
45
|
+
get ApiPhoneProperty () {
|
|
46
|
+
return ApiPhoneProperty;
|
|
47
|
+
},
|
|
48
|
+
get ApiProvinceProperty () {
|
|
49
|
+
return ApiProvinceProperty;
|
|
50
|
+
},
|
|
51
|
+
get ApiStringArrayProperty () {
|
|
52
|
+
return ApiStringArrayProperty;
|
|
53
|
+
},
|
|
54
|
+
get ApiStringProperty () {
|
|
55
|
+
return ApiStringProperty;
|
|
56
|
+
},
|
|
57
|
+
get ApiTimeProperty () {
|
|
58
|
+
return ApiTimeProperty;
|
|
59
|
+
},
|
|
60
|
+
get ApiTokenProperty () {
|
|
61
|
+
return ApiTokenProperty;
|
|
62
|
+
},
|
|
63
|
+
get ApiUrlProperty () {
|
|
64
|
+
return ApiUrlProperty;
|
|
65
|
+
},
|
|
66
|
+
get ApiUuidArrayProperty () {
|
|
67
|
+
return ApiUuidArrayProperty;
|
|
68
|
+
},
|
|
69
|
+
get ApiUuidProperty () {
|
|
70
|
+
return ApiUuidProperty;
|
|
71
|
+
},
|
|
72
|
+
get SwaggerApiBadRequestResponse () {
|
|
73
|
+
return SwaggerApiBadRequestResponse;
|
|
74
|
+
},
|
|
75
|
+
get SwaggerApiBadSwaGatewayResponse () {
|
|
76
|
+
return SwaggerApiBadSwaGatewayResponse;
|
|
77
|
+
},
|
|
78
|
+
get SwaggerApiConflictResponse () {
|
|
79
|
+
return SwaggerApiConflictResponse;
|
|
80
|
+
},
|
|
81
|
+
get SwaggerApiCreatedResponse () {
|
|
82
|
+
return SwaggerApiCreatedResponse;
|
|
83
|
+
},
|
|
84
|
+
get SwaggerApiForbiddenResponse () {
|
|
85
|
+
return SwaggerApiForbiddenResponse;
|
|
86
|
+
},
|
|
87
|
+
get SwaggerApiInternalServerErrorResponse () {
|
|
88
|
+
return SwaggerApiInternalServerErrorResponse;
|
|
89
|
+
},
|
|
90
|
+
get SwaggerApiNoContentResponse () {
|
|
91
|
+
return SwaggerApiNoContentResponse;
|
|
92
|
+
},
|
|
93
|
+
get SwaggerApiNotFoundResponse () {
|
|
94
|
+
return SwaggerApiNotFoundResponse;
|
|
95
|
+
},
|
|
96
|
+
get SwaggerApiPaginateResponse () {
|
|
97
|
+
return SwaggerApiPaginateResponse;
|
|
98
|
+
},
|
|
99
|
+
get SwaggerApiSuccessResponse () {
|
|
100
|
+
return SwaggerApiSuccessResponse;
|
|
101
|
+
},
|
|
102
|
+
get SwaggerApiUnauthorizedResponse () {
|
|
103
|
+
return SwaggerApiUnauthorizedResponse;
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
107
|
+
enumerable: !0,
|
|
108
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
109
|
+
});
|
|
110
|
+
let _swagger = require("@nestjs/swagger");
|
|
111
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
112
|
+
var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
|
|
113
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc);
|
|
114
|
+
else for(var i = decorators.length - 1; i >= 0; i--)(d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
|
|
115
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
116
|
+
}
|
|
117
|
+
function _ts_metadata(k, v) {
|
|
118
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
|
|
119
|
+
}
|
|
120
|
+
let paginateResponseCache = new Map();
|
|
121
|
+
let BadRequestExample = class BadRequestExample {
|
|
122
|
+
statusCode;
|
|
123
|
+
message;
|
|
124
|
+
errors;
|
|
125
|
+
};
|
|
126
|
+
_ts_decorate([
|
|
127
|
+
(0, _swagger.ApiProperty)({
|
|
128
|
+
example: 400
|
|
129
|
+
}),
|
|
130
|
+
_ts_metadata("design:type", Number)
|
|
131
|
+
], BadRequestExample.prototype, "statusCode", void 0), _ts_decorate([
|
|
132
|
+
(0, _swagger.ApiProperty)({
|
|
133
|
+
example: 'Error Message 1, Error Message 2'
|
|
134
|
+
}),
|
|
135
|
+
_ts_metadata("design:type", String)
|
|
136
|
+
], BadRequestExample.prototype, "message", void 0), _ts_decorate([
|
|
137
|
+
(0, _swagger.ApiProperty)({
|
|
138
|
+
example: {
|
|
139
|
+
field1: [
|
|
140
|
+
'Error message 1',
|
|
141
|
+
'Error message 2'
|
|
142
|
+
],
|
|
143
|
+
field2: [
|
|
144
|
+
'Error message 3'
|
|
145
|
+
]
|
|
146
|
+
},
|
|
147
|
+
description: 'Validation errors'
|
|
148
|
+
}),
|
|
149
|
+
_ts_metadata("design:type", "u" < typeof Record ? Object : Record)
|
|
150
|
+
], BadRequestExample.prototype, "errors", void 0);
|
|
151
|
+
let SwaggerApiBadRequestResponse = (0, _swagger.ApiResponse)({
|
|
152
|
+
status: 400,
|
|
153
|
+
description: 'Bad Request',
|
|
154
|
+
type: BadRequestExample
|
|
155
|
+
});
|
|
156
|
+
let UnauthorizedExample = class UnauthorizedExample {
|
|
157
|
+
statusCode;
|
|
158
|
+
message;
|
|
159
|
+
};
|
|
160
|
+
_ts_decorate([
|
|
161
|
+
(0, _swagger.ApiProperty)({
|
|
162
|
+
example: 401
|
|
163
|
+
}),
|
|
164
|
+
_ts_metadata("design:type", Number)
|
|
165
|
+
], UnauthorizedExample.prototype, "statusCode", void 0), _ts_decorate([
|
|
166
|
+
(0, _swagger.ApiProperty)({
|
|
167
|
+
example: 'Unauthorized'
|
|
168
|
+
}),
|
|
169
|
+
_ts_metadata("design:type", String)
|
|
170
|
+
], UnauthorizedExample.prototype, "message", void 0);
|
|
171
|
+
let SwaggerApiUnauthorizedResponse = (0, _swagger.ApiResponse)({
|
|
172
|
+
status: 401,
|
|
173
|
+
description: 'Unauthorized',
|
|
174
|
+
type: UnauthorizedExample
|
|
175
|
+
});
|
|
176
|
+
let ForbiddenExample = class ForbiddenExample {
|
|
177
|
+
statusCode;
|
|
178
|
+
message;
|
|
179
|
+
};
|
|
180
|
+
_ts_decorate([
|
|
181
|
+
(0, _swagger.ApiProperty)({
|
|
182
|
+
example: 403
|
|
183
|
+
}),
|
|
184
|
+
_ts_metadata("design:type", Number)
|
|
185
|
+
], ForbiddenExample.prototype, "statusCode", void 0), _ts_decorate([
|
|
186
|
+
(0, _swagger.ApiProperty)({
|
|
187
|
+
example: 'Forbidden'
|
|
188
|
+
}),
|
|
189
|
+
_ts_metadata("design:type", String)
|
|
190
|
+
], ForbiddenExample.prototype, "message", void 0);
|
|
191
|
+
let SwaggerApiForbiddenResponse = (0, _swagger.ApiResponse)({
|
|
192
|
+
status: 403,
|
|
193
|
+
description: 'Forbidden',
|
|
194
|
+
type: ForbiddenExample
|
|
195
|
+
});
|
|
196
|
+
let NotFoundExample = class NotFoundExample {
|
|
197
|
+
statusCode;
|
|
198
|
+
message;
|
|
199
|
+
};
|
|
200
|
+
_ts_decorate([
|
|
201
|
+
(0, _swagger.ApiProperty)({
|
|
202
|
+
example: 404
|
|
203
|
+
}),
|
|
204
|
+
_ts_metadata("design:type", Number)
|
|
205
|
+
], NotFoundExample.prototype, "statusCode", void 0), _ts_decorate([
|
|
206
|
+
(0, _swagger.ApiProperty)({
|
|
207
|
+
example: 'Resource not found'
|
|
208
|
+
}),
|
|
209
|
+
_ts_metadata("design:type", String)
|
|
210
|
+
], NotFoundExample.prototype, "message", void 0);
|
|
211
|
+
let SwaggerApiNotFoundResponse = (0, _swagger.ApiResponse)({
|
|
212
|
+
status: 404,
|
|
213
|
+
description: 'Not Found',
|
|
214
|
+
type: NotFoundExample
|
|
215
|
+
});
|
|
216
|
+
let BadSwaGatewayExample = class BadSwaGatewayExample {
|
|
217
|
+
statusCode;
|
|
218
|
+
message;
|
|
219
|
+
};
|
|
220
|
+
_ts_decorate([
|
|
221
|
+
(0, _swagger.ApiProperty)({
|
|
222
|
+
example: 502
|
|
223
|
+
}),
|
|
224
|
+
_ts_metadata("design:type", Number)
|
|
225
|
+
], BadSwaGatewayExample.prototype, "statusCode", void 0), _ts_decorate([
|
|
226
|
+
(0, _swagger.ApiProperty)({
|
|
227
|
+
example: 'Bad Gateway'
|
|
228
|
+
}),
|
|
229
|
+
_ts_metadata("design:type", String)
|
|
230
|
+
], BadSwaGatewayExample.prototype, "message", void 0);
|
|
231
|
+
let SwaggerApiBadSwaGatewayResponse = (0, _swagger.ApiResponse)({
|
|
232
|
+
status: 502,
|
|
233
|
+
description: 'Bad Gateway',
|
|
234
|
+
type: BadSwaGatewayExample
|
|
235
|
+
});
|
|
236
|
+
let InternalServerErrorExample = class InternalServerErrorExample {
|
|
237
|
+
statusCode;
|
|
238
|
+
message;
|
|
239
|
+
};
|
|
240
|
+
_ts_decorate([
|
|
241
|
+
(0, _swagger.ApiProperty)({
|
|
242
|
+
example: 500
|
|
243
|
+
}),
|
|
244
|
+
_ts_metadata("design:type", Number)
|
|
245
|
+
], InternalServerErrorExample.prototype, "statusCode", void 0), _ts_decorate([
|
|
246
|
+
(0, _swagger.ApiProperty)({
|
|
247
|
+
example: 'Internal server error'
|
|
248
|
+
}),
|
|
249
|
+
_ts_metadata("design:type", String)
|
|
250
|
+
], InternalServerErrorExample.prototype, "message", void 0);
|
|
251
|
+
let SwaggerApiInternalServerErrorResponse = (0, _swagger.ApiResponse)({
|
|
252
|
+
status: 500,
|
|
253
|
+
description: 'Internal Server Error',
|
|
254
|
+
type: InternalServerErrorExample
|
|
255
|
+
});
|
|
256
|
+
let ConflictExample = class ConflictExample {
|
|
257
|
+
statusCode;
|
|
258
|
+
message;
|
|
259
|
+
};
|
|
260
|
+
_ts_decorate([
|
|
261
|
+
(0, _swagger.ApiProperty)({
|
|
262
|
+
example: 409
|
|
263
|
+
}),
|
|
264
|
+
_ts_metadata("design:type", Number)
|
|
265
|
+
], ConflictExample.prototype, "statusCode", void 0), _ts_decorate([
|
|
266
|
+
(0, _swagger.ApiProperty)({
|
|
267
|
+
example: 'Conflict error'
|
|
268
|
+
}),
|
|
269
|
+
_ts_metadata("design:type", String)
|
|
270
|
+
], ConflictExample.prototype, "message", void 0);
|
|
271
|
+
let SwaggerApiConflictResponse = (0, _swagger.ApiResponse)({
|
|
272
|
+
status: 409,
|
|
273
|
+
description: 'Conflict',
|
|
274
|
+
type: ConflictExample
|
|
275
|
+
});
|
|
276
|
+
let NoContentExample = class NoContentExample {
|
|
277
|
+
statusCode;
|
|
278
|
+
message;
|
|
279
|
+
};
|
|
280
|
+
_ts_decorate([
|
|
281
|
+
(0, _swagger.ApiProperty)({
|
|
282
|
+
example: 204
|
|
283
|
+
}),
|
|
284
|
+
_ts_metadata("design:type", Number)
|
|
285
|
+
], NoContentExample.prototype, "statusCode", void 0), _ts_decorate([
|
|
286
|
+
(0, _swagger.ApiProperty)({
|
|
287
|
+
example: 'No content'
|
|
288
|
+
}),
|
|
289
|
+
_ts_metadata("design:type", String)
|
|
290
|
+
], NoContentExample.prototype, "message", void 0);
|
|
291
|
+
let SwaggerApiNoContentResponse = (0, _swagger.ApiResponse)({
|
|
292
|
+
status: 204,
|
|
293
|
+
description: 'No Content',
|
|
294
|
+
type: NoContentExample
|
|
295
|
+
}), SwaggerApiSuccessResponse = (classType)=>(0, _swagger.ApiResponse)({
|
|
296
|
+
status: 200,
|
|
297
|
+
description: 'Success',
|
|
298
|
+
type: ((classType)=>{
|
|
299
|
+
let className = classType.name, cacheKey = `Success${className}Response`;
|
|
300
|
+
if (paginateResponseCache.has(cacheKey)) return paginateResponseCache.get(cacheKey);
|
|
301
|
+
let SuccessResponse = class SuccessResponse {
|
|
302
|
+
statusCode;
|
|
303
|
+
message;
|
|
304
|
+
data;
|
|
305
|
+
};
|
|
306
|
+
return _ts_decorate([
|
|
307
|
+
(0, _swagger.ApiProperty)({
|
|
308
|
+
example: 200
|
|
309
|
+
}),
|
|
310
|
+
_ts_metadata("design:type", Number)
|
|
311
|
+
], SuccessResponse.prototype, "statusCode", void 0), _ts_decorate([
|
|
312
|
+
(0, _swagger.ApiProperty)({
|
|
313
|
+
example: 'Success'
|
|
314
|
+
}),
|
|
315
|
+
_ts_metadata("design:type", String)
|
|
316
|
+
], SuccessResponse.prototype, "message", void 0), _ts_decorate([
|
|
317
|
+
(0, _swagger.ApiProperty)({
|
|
318
|
+
description: 'Response data',
|
|
319
|
+
type: classType
|
|
320
|
+
}),
|
|
321
|
+
_ts_metadata("design:type", Object)
|
|
322
|
+
], SuccessResponse.prototype, "data", void 0), Object.defineProperty(SuccessResponse, 'name', {
|
|
323
|
+
value: cacheKey
|
|
324
|
+
}), paginateResponseCache.set(cacheKey, SuccessResponse), SuccessResponse;
|
|
325
|
+
})(classType)
|
|
326
|
+
}), SwaggerApiCreatedResponse = (classType)=>(0, _swagger.ApiResponse)({
|
|
327
|
+
status: 201,
|
|
328
|
+
description: 'Created',
|
|
329
|
+
type: ((classType)=>{
|
|
330
|
+
let className = classType.name, cacheKey = `Created${className}Response`;
|
|
331
|
+
if (paginateResponseCache.has(cacheKey)) return paginateResponseCache.get(cacheKey);
|
|
332
|
+
let CreatedResponse = class CreatedResponse {
|
|
333
|
+
statusCode;
|
|
334
|
+
message;
|
|
335
|
+
data;
|
|
336
|
+
};
|
|
337
|
+
return _ts_decorate([
|
|
338
|
+
(0, _swagger.ApiProperty)({
|
|
339
|
+
example: 201
|
|
340
|
+
}),
|
|
341
|
+
_ts_metadata("design:type", Number)
|
|
342
|
+
], CreatedResponse.prototype, "statusCode", void 0), _ts_decorate([
|
|
343
|
+
(0, _swagger.ApiProperty)({
|
|
344
|
+
example: 'Resource created successfully'
|
|
345
|
+
}),
|
|
346
|
+
_ts_metadata("design:type", String)
|
|
347
|
+
], CreatedResponse.prototype, "message", void 0), _ts_decorate([
|
|
348
|
+
(0, _swagger.ApiProperty)({
|
|
349
|
+
description: 'Response data',
|
|
350
|
+
type: classType
|
|
351
|
+
}),
|
|
352
|
+
_ts_metadata("design:type", Object)
|
|
353
|
+
], CreatedResponse.prototype, "data", void 0), Object.defineProperty(CreatedResponse, 'name', {
|
|
354
|
+
value: cacheKey
|
|
355
|
+
}), paginateResponseCache.set(cacheKey, CreatedResponse), CreatedResponse;
|
|
356
|
+
})(classType)
|
|
357
|
+
});
|
|
358
|
+
function SwaggerApiPaginateResponse(classType) {
|
|
359
|
+
return (0, _swagger.ApiResponse)({
|
|
360
|
+
status: 200,
|
|
361
|
+
description: 'Success',
|
|
362
|
+
type: ((classType)=>{
|
|
363
|
+
let className = classType.name, cacheKey = `Paginate${className}Response`;
|
|
364
|
+
if (paginateResponseCache.has(cacheKey)) return paginateResponseCache.get(cacheKey);
|
|
365
|
+
let ApiPaginateResponse = class ApiPaginateResponse {
|
|
366
|
+
statusCode;
|
|
367
|
+
message;
|
|
368
|
+
meta;
|
|
369
|
+
timestamp;
|
|
370
|
+
};
|
|
371
|
+
return _ts_decorate([
|
|
372
|
+
(0, _swagger.ApiProperty)({
|
|
373
|
+
example: 200
|
|
374
|
+
}),
|
|
375
|
+
_ts_metadata("design:type", Number)
|
|
376
|
+
], ApiPaginateResponse.prototype, "statusCode", void 0), _ts_decorate([
|
|
377
|
+
(0, _swagger.ApiProperty)({
|
|
378
|
+
example: 'Success'
|
|
379
|
+
}),
|
|
380
|
+
_ts_metadata("design:type", String)
|
|
381
|
+
], ApiPaginateResponse.prototype, "message", void 0), _ts_decorate([
|
|
382
|
+
(0, _swagger.ApiProperty)({
|
|
383
|
+
isArray: !0,
|
|
384
|
+
type: classType
|
|
385
|
+
}),
|
|
386
|
+
_ts_metadata("design:type", Array)
|
|
387
|
+
], ApiPaginateResponse.prototype, "data", void 0), _ts_decorate([
|
|
388
|
+
(0, _swagger.ApiProperty)({
|
|
389
|
+
example: {
|
|
390
|
+
total: 100,
|
|
391
|
+
totalPage: 10,
|
|
392
|
+
perPage: 10,
|
|
393
|
+
prevPage: null,
|
|
394
|
+
page: 1,
|
|
395
|
+
nextPage: 2
|
|
396
|
+
}
|
|
397
|
+
}),
|
|
398
|
+
_ts_metadata("design:type", Object)
|
|
399
|
+
], ApiPaginateResponse.prototype, "meta", void 0), _ts_decorate([
|
|
400
|
+
(0, _swagger.ApiProperty)({
|
|
401
|
+
example: '2024-01-01T00:00:00.000Z'
|
|
402
|
+
}),
|
|
403
|
+
_ts_metadata("design:type", String)
|
|
404
|
+
], ApiPaginateResponse.prototype, "timestamp", void 0), Object.defineProperty(ApiPaginateResponse, 'name', {
|
|
405
|
+
value: cacheKey
|
|
406
|
+
}), paginateResponseCache.set(cacheKey, ApiPaginateResponse), ApiPaginateResponse;
|
|
407
|
+
})(classType)
|
|
408
|
+
});
|
|
409
|
+
}
|
|
410
|
+
let ApiNameProperty = (0, _swagger.ApiProperty)({
|
|
411
|
+
example: 'John Doe'
|
|
412
|
+
}), ApiCompanyProperty = (0, _swagger.ApiProperty)({
|
|
413
|
+
example: 'PT Gundala Permai'
|
|
414
|
+
}), ApiCityProperty = (0, _swagger.ApiProperty)({
|
|
415
|
+
example: 'Jakarta'
|
|
416
|
+
}), ApiProvinceProperty = (0, _swagger.ApiProperty)({
|
|
417
|
+
example: 'DKI Jakarta'
|
|
418
|
+
}), ApiAddressProperty = (0, _swagger.ApiProperty)({
|
|
419
|
+
example: 'Jl. Merdeka No. 123'
|
|
420
|
+
}), ApiEmailProperty = (0, _swagger.ApiProperty)({
|
|
421
|
+
example: 'john@gmail.com'
|
|
422
|
+
}), ApiPhoneProperty = (0, _swagger.ApiProperty)({
|
|
423
|
+
example: '+62128888888'
|
|
424
|
+
}), ApiPasswordProperty = (0, _swagger.ApiProperty)({
|
|
425
|
+
example: 'Password@#123'
|
|
426
|
+
}), ApiTokenProperty = (0, _swagger.ApiProperty)({
|
|
427
|
+
example: 'abcdef1234567890'
|
|
428
|
+
}), ApiUuidProperty = (0, _swagger.ApiProperty)({
|
|
429
|
+
example: '123e4567-e89b-12d3-a456-426614174000'
|
|
430
|
+
}), ApiBooleanProperty = (0, _swagger.ApiProperty)({
|
|
431
|
+
example: !0
|
|
432
|
+
}), ApiNumberProperty = (0, _swagger.ApiProperty)({
|
|
433
|
+
example: 42000
|
|
434
|
+
}), ApiStringProperty = (0, _swagger.ApiProperty)({
|
|
435
|
+
example: 'Some string value'
|
|
436
|
+
}), ApiEnumProperty = (enums)=>(0, _swagger.ApiProperty)({
|
|
437
|
+
example: enums[0],
|
|
438
|
+
enum: enums
|
|
439
|
+
}), ApiDateProperty = (0, _swagger.ApiProperty)({
|
|
440
|
+
example: '2024-01-01T00:00:00.000Z'
|
|
441
|
+
}), ApiDateOnlyProperty = (0, _swagger.ApiProperty)({
|
|
442
|
+
example: '2024-01-01'
|
|
443
|
+
}), ApiTimeProperty = (0, _swagger.ApiProperty)({
|
|
444
|
+
example: '14:30:00'
|
|
445
|
+
}), ApiUrlProperty = (0, _swagger.ApiProperty)({
|
|
446
|
+
example: 'https://www.example.com/resource'
|
|
447
|
+
}), ApiUuidArrayProperty = (0, _swagger.ApiProperty)({
|
|
448
|
+
example: [
|
|
449
|
+
'123e4567-e89b-12d3-a456-426614174000',
|
|
450
|
+
'987e6543-e21b-12d3-a456-426614174999'
|
|
451
|
+
],
|
|
452
|
+
isArray: !0
|
|
453
|
+
}), ApiStringArrayProperty = (0, _swagger.ApiProperty)({
|
|
454
|
+
example: [
|
|
455
|
+
'string1',
|
|
456
|
+
'string2',
|
|
457
|
+
'string3'
|
|
458
|
+
],
|
|
459
|
+
isArray: !0
|
|
460
|
+
}), ApiNumberArrayProperty = (0, _swagger.ApiProperty)({
|
|
461
|
+
example: [
|
|
462
|
+
10,
|
|
463
|
+
20,
|
|
464
|
+
30,
|
|
465
|
+
40
|
|
466
|
+
],
|
|
467
|
+
isArray: !0
|
|
468
|
+
}), ApiDateArrayProperty = (0, _swagger.ApiProperty)({
|
|
469
|
+
example: [
|
|
470
|
+
'2024-01-01T00:00:00.000Z',
|
|
471
|
+
'2024-02-01T00:00:00.000Z'
|
|
472
|
+
],
|
|
473
|
+
isArray: !0
|
|
474
|
+
});
|