@nest-omni/core 1.0.7 → 1.0.8

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.
Files changed (264) hide show
  1. package/package.json +4 -1
  2. package/src/boilerplate.polyfill.d.ts +0 -39
  3. package/src/boilerplate.polyfill.js +0 -78
  4. package/src/boilerplate.polyfill.ts +0 -202
  5. package/src/common/abstract-client.service.d.ts +0 -20
  6. package/src/common/abstract-client.service.js +0 -39
  7. package/src/common/abstract-client.service.ts +0 -56
  8. package/src/common/abstract.entity.d.ts +0 -24
  9. package/src/common/abstract.entity.js +0 -152
  10. package/src/common/abstract.entity.ts +0 -73
  11. package/src/common/dto/abstract.dto.d.ts +0 -13
  12. package/src/common/dto/abstract.dto.js +0 -96
  13. package/src/common/dto/abstract.dto.ts +0 -64
  14. package/src/common/dto/bulk-id.dto.d.ts +0 -3
  15. package/src/common/dto/bulk-id.dto.js +0 -63
  16. package/src/common/dto/bulk-id.dto.ts +0 -13
  17. package/src/common/dto/create-translation.dto.d.ts +0 -5
  18. package/src/common/dto/create-translation.dto.js +0 -63
  19. package/src/common/dto/create-translation.dto.ts +0 -10
  20. package/src/common/dto/page-meta.dto.d.ts +0 -15
  21. package/src/common/dto/page-meta.dto.js +0 -88
  22. package/src/common/dto/page-meta.dto.ts +0 -37
  23. package/src/common/dto/page-options.dto.d.ts +0 -8
  24. package/src/common/dto/page-options.dto.js +0 -87
  25. package/src/common/dto/page-options.dto.ts +0 -35
  26. package/src/common/dto/page.dto.d.ts +0 -11
  27. package/src/common/dto/page.dto.js +0 -94
  28. package/src/common/dto/page.dto.ts +0 -36
  29. package/src/common/utils.d.ts +0 -14
  30. package/src/common/utils.js +0 -39
  31. package/src/common/utils.ts +0 -45
  32. package/src/constants/index.d.ts +0 -4
  33. package/src/constants/index.js +0 -20
  34. package/src/constants/index.ts +0 -4
  35. package/src/constants/language-code.d.ts +0 -5
  36. package/src/constants/language-code.js +0 -10
  37. package/src/constants/language-code.ts +0 -7
  38. package/src/constants/order.d.ts +0 -4
  39. package/src/constants/order.js +0 -8
  40. package/src/constants/order.ts +0 -4
  41. package/src/constants/role-type.d.ts +0 -4
  42. package/src/constants/role-type.js +0 -8
  43. package/src/constants/role-type.ts +0 -4
  44. package/src/constants/token-type.d.ts +0 -4
  45. package/src/constants/token-type.js +0 -8
  46. package/src/constants/token-type.ts +0 -4
  47. package/src/decorators/api-page-ok-response.decorator.d.ts +0 -5
  48. package/src/decorators/api-page-ok-response.decorator.js +0 -25
  49. package/src/decorators/api-page-ok-response.decorator.ts +0 -31
  50. package/src/decorators/auth-user.decorator.d.ts +0 -1
  51. package/src/decorators/auth-user.decorator.js +0 -15
  52. package/src/decorators/auth-user.decorator.ts +0 -16
  53. package/src/decorators/controller.decorator.d.ts +0 -1
  54. package/src/decorators/controller.decorator.js +0 -34
  55. package/src/decorators/controller.decorator.ts +0 -8
  56. package/src/decorators/field.decorators.d.ts +0 -71
  57. package/src/decorators/field.decorators.js +0 -455
  58. package/src/decorators/field.decorators.ts +0 -773
  59. package/src/decorators/http.decorators.d.ts +0 -3
  60. package/src/decorators/http.decorators.js +0 -8
  61. package/src/decorators/http.decorators.ts +0 -10
  62. package/src/decorators/index.d.ts +0 -12
  63. package/src/decorators/index.js +0 -28
  64. package/src/decorators/index.ts +0 -12
  65. package/src/decorators/omni-auth.decorator.d.ts +0 -8
  66. package/src/decorators/omni-auth.decorator.js +0 -60
  67. package/src/decorators/omni-auth.decorator.ts +0 -46
  68. package/src/decorators/operation.decorator.d.ts +0 -1
  69. package/src/decorators/operation.decorator.js +0 -6
  70. package/src/decorators/operation.decorator.ts +0 -4
  71. package/src/decorators/property.decorators.d.ts +0 -15
  72. package/src/decorators/property.decorators.js +0 -36
  73. package/src/decorators/property.decorators.ts +0 -62
  74. package/src/decorators/public-route.decorator.d.ts +0 -3
  75. package/src/decorators/public-route.decorator.js +0 -8
  76. package/src/decorators/public-route.decorator.ts +0 -8
  77. package/src/decorators/swagger.schema.d.ts +0 -5
  78. package/src/decorators/swagger.schema.js +0 -82
  79. package/src/decorators/swagger.schema.ts +0 -117
  80. package/src/decorators/timestamp-column.decorator.d.ts +0 -1
  81. package/src/decorators/timestamp-column.decorator.js +0 -28
  82. package/src/decorators/timestamp-column.decorator.ts +0 -29
  83. package/src/decorators/transform.decorators.d.ts +0 -35
  84. package/src/decorators/transform.decorators.js +0 -122
  85. package/src/decorators/transform.decorators.ts +0 -147
  86. package/src/decorators/translate.decorator.d.ts +0 -5
  87. package/src/decorators/translate.decorator.js +0 -18
  88. package/src/decorators/translate.decorator.ts +0 -19
  89. package/src/decorators/use-dto.decorator.d.ts +0 -4
  90. package/src/decorators/use-dto.decorator.js +0 -9
  91. package/src/decorators/use-dto.decorator.ts +0 -11
  92. package/src/decorators/user-check.decorator.d.ts +0 -6
  93. package/src/decorators/user-check.decorator.js +0 -44
  94. package/src/decorators/user-check.decorator.ts +0 -30
  95. package/src/decorators/user.decorator.d.ts +0 -8
  96. package/src/decorators/user.decorator.js +0 -62
  97. package/src/decorators/user.decorator.ts +0 -48
  98. package/src/decorators/user_auth.decorator.d.ts +0 -1
  99. package/src/decorators/user_auth.decorator.js +0 -16
  100. package/src/decorators/user_auth.decorator.ts +0 -15
  101. package/src/decorators/validator.decorators.d.ts +0 -10
  102. package/src/decorators/validator.decorators.js +0 -59
  103. package/src/decorators/validator.decorators.ts +0 -78
  104. package/src/exceptions/file-not-image.exception.d.ts +0 -4
  105. package/src/exceptions/file-not-image.exception.js +0 -10
  106. package/src/exceptions/file-not-image.exception.ts +0 -7
  107. package/src/exceptions/index.d.ts +0 -2
  108. package/src/exceptions/index.js +0 -18
  109. package/src/exceptions/index.ts +0 -2
  110. package/src/exceptions/page-type.exception.d.ts +0 -4
  111. package/src/exceptions/page-type.exception.js +0 -10
  112. package/src/exceptions/page-type.exception.ts +0 -7
  113. package/src/exceptions/user-not-found.exception.d.ts +0 -4
  114. package/src/exceptions/user-not-found.exception.js +0 -10
  115. package/src/exceptions/user-not-found.exception.ts +0 -7
  116. package/src/filters/bad-request.filter.d.ts +0 -5
  117. package/src/filters/bad-request.filter.js +0 -104
  118. package/src/filters/bad-request.filter.ts +0 -67
  119. package/src/filters/constraint-errors.d.ts +0 -1
  120. package/src/filters/constraint-errors.js +0 -7
  121. package/src/filters/constraint-errors.ts +0 -5
  122. package/src/filters/index.d.ts +0 -3
  123. package/src/filters/index.js +0 -19
  124. package/src/filters/index.ts +0 -3
  125. package/src/filters/query-failed.filter.d.ts +0 -10
  126. package/src/filters/query-failed.filter.js +0 -81
  127. package/src/filters/query-failed.filter.ts +0 -32
  128. package/src/health-checker/health-checker.controller.d.ts +0 -15
  129. package/src/health-checker/health-checker.controller.js +0 -104
  130. package/src/health-checker/health-checker.controller.ts +0 -51
  131. package/src/health-checker/health-checker.module.d.ts +0 -2
  132. package/src/health-checker/health-checker.module.js +0 -69
  133. package/src/health-checker/health-checker.module.ts +0 -13
  134. package/src/health-checker/health-indicators/service.indicator.d.ts +0 -8
  135. package/src/health-checker/health-indicators/service.indicator.js +0 -102
  136. package/src/health-checker/health-indicators/service.indicator.ts +0 -44
  137. package/src/helpers/common.helper.d.ts +0 -16
  138. package/src/helpers/common.helper.js +0 -49
  139. package/src/helpers/common.helper.ts +0 -49
  140. package/src/helpers/date.helper.d.ts +0 -10
  141. package/src/helpers/date.helper.js +0 -81
  142. package/src/helpers/date.helper.ts +0 -64
  143. package/src/helpers/excel.helper.d.ts +0 -27
  144. package/src/helpers/excel.helper.js +0 -338
  145. package/src/helpers/index.d.ts +0 -3
  146. package/src/helpers/index.js +0 -19
  147. package/src/helpers/index.ts +0 -3
  148. package/src/i18n/en_US/validation.json +0 -38
  149. package/src/i18n/zh_CN/validation.json +0 -38
  150. package/src/index.d.ts +0 -11
  151. package/src/index.js +0 -28
  152. package/src/index.ts +0 -12
  153. package/src/interceptors/auth-user.interceptor.d.ts +0 -4
  154. package/src/interceptors/auth-user.interceptor.js +0 -68
  155. package/src/interceptors/auth-user.interceptor.ts +0 -20
  156. package/src/interceptors/index.d.ts +0 -2
  157. package/src/interceptors/index.js +0 -18
  158. package/src/interceptors/index.ts +0 -2
  159. package/src/interceptors/language-interceptor.service.d.ts +0 -6
  160. package/src/interceptors/language-interceptor.service.js +0 -74
  161. package/src/interceptors/language-interceptor.service.ts +0 -31
  162. package/src/interceptors/translation-interceptor.service.d.ts +0 -5
  163. package/src/interceptors/translation-interceptor.service.js +0 -83
  164. package/src/interceptors/translation-interceptor.service.ts +0 -43
  165. package/src/interfaces/IApiFile.d.ts +0 -4
  166. package/src/interfaces/IApiFile.js +0 -2
  167. package/src/interfaces/IApiFile.ts +0 -4
  168. package/src/interfaces/IFile.d.ts +0 -9
  169. package/src/interfaces/IFile.js +0 -2
  170. package/src/interfaces/IFile.ts +0 -8
  171. package/src/interfaces/ITranslationDecoratorInterface.d.ts +0 -3
  172. package/src/interfaces/ITranslationDecoratorInterface.js +0 -2
  173. package/src/interfaces/ITranslationDecoratorInterface.ts +0 -3
  174. package/src/interfaces/index.d.ts +0 -3
  175. package/src/interfaces/index.js +0 -19
  176. package/src/interfaces/index.ts +0 -3
  177. package/src/interfaces/response.d.ts +0 -25
  178. package/src/interfaces/response.js +0 -2
  179. package/src/interfaces/response.ts +0 -37
  180. package/src/middlewares/index.d.ts +0 -3
  181. package/src/middlewares/index.js +0 -19
  182. package/src/middlewares/index.ts +0 -3
  183. package/src/middlewares/omni-auth.middleware.d.ts +0 -1
  184. package/src/middlewares/omni-auth.middleware.js +0 -13
  185. package/src/middlewares/omni-auth.middleware.ts +0 -10
  186. package/src/middlewares/powerby.middleware.d.ts +0 -1
  187. package/src/middlewares/powerby.middleware.js +0 -10
  188. package/src/middlewares/powerby.middleware.ts +0 -6
  189. package/src/middlewares/request-id.middleware.d.ts +0 -7
  190. package/src/middlewares/request-id.middleware.js +0 -22
  191. package/src/middlewares/request-id.middleware.ts +0 -28
  192. package/src/providers/context.provider.d.ts +0 -32
  193. package/src/providers/context.provider.js +0 -73
  194. package/src/providers/context.provider.ts +0 -98
  195. package/src/providers/generator.provider.d.ts +0 -13
  196. package/src/providers/generator.provider.js +0 -54
  197. package/src/providers/generator.provider.ts +0 -66
  198. package/src/providers/index.d.ts +0 -2
  199. package/src/providers/index.js +0 -18
  200. package/src/providers/index.ts +0 -2
  201. package/src/setup/bootstrap.setup.d.ts +0 -5
  202. package/src/setup/bootstrap.setup.js +0 -138
  203. package/src/setup/bootstrap.setup.ts +0 -139
  204. package/src/setup/index.d.ts +0 -1
  205. package/src/setup/index.js +0 -17
  206. package/src/setup/index.ts +0 -1
  207. package/src/setup/microservices.setup.js +0 -55
  208. package/src/setup-swagger.d.ts +0 -2
  209. package/src/setup-swagger.js +0 -62
  210. package/src/setup-swagger.ts +0 -67
  211. package/src/shared/index.d.ts +0 -2
  212. package/src/shared/index.js +0 -18
  213. package/src/shared/index.ts +0 -2
  214. package/src/shared/serviceRegistryModule.d.ts +0 -2
  215. package/src/shared/serviceRegistryModule.js +0 -176
  216. package/src/shared/serviceRegistryModule.ts +0 -110
  217. package/src/shared/services/api-config.service.d.ts +0 -73
  218. package/src/shared/services/api-config.service.js +0 -335
  219. package/src/shared/services/api-config.service.ts +0 -319
  220. package/src/shared/services/aws-s3.service.d.ts +0 -10
  221. package/src/shared/services/aws-s3.service.js +0 -96
  222. package/src/shared/services/aws-s3.service.ts +0 -39
  223. package/src/shared/services/generator.service.d.ts +0 -4
  224. package/src/shared/services/generator.service.js +0 -67
  225. package/src/shared/services/generator.service.ts +0 -13
  226. package/src/shared/services/index.d.ts +0 -5
  227. package/src/shared/services/index.js +0 -21
  228. package/src/shared/services/index.ts +0 -5
  229. package/src/shared/services/translation.service.d.ts +0 -9
  230. package/src/shared/services/translation.service.js +0 -109
  231. package/src/shared/services/translation.service.ts +0 -59
  232. package/src/shared/services/validator.service.d.ts +0 -3
  233. package/src/shared/services/validator.service.js +0 -64
  234. package/src/shared/services/validator.service.ts +0 -10
  235. package/src/snake-naming.strategy.d.ts +0 -11
  236. package/src/snake-naming.strategy.js +0 -37
  237. package/src/snake-naming.strategy.ts +0 -64
  238. package/src/types.d.ts +0 -9
  239. package/src/types.js +0 -2
  240. package/src/types.ts +0 -44
  241. package/src/validators/file-mimetype.validator.d.ts +0 -13
  242. package/src/validators/file-mimetype.validator.js +0 -21
  243. package/src/validators/file-mimetype.validator.ts +0 -34
  244. package/src/validators/index.d.ts +0 -3
  245. package/src/validators/index.js +0 -19
  246. package/src/validators/index.ts +0 -3
  247. package/src/validators/is-exists.validator.d.ts +0 -18
  248. package/src/validators/is-exists.validator.js +0 -99
  249. package/src/validators/is-exists.validator.ts +0 -60
  250. package/src/validators/is-unique.validator.d.ts +0 -17
  251. package/src/validators/is-unique.validator.js +0 -131
  252. package/src/validators/is-unique.validator.ts +0 -93
  253. package/src/validators/phone-country-code.validator.d.ts +0 -2
  254. package/src/validators/phone-country-code.validator.js +0 -30
  255. package/src/validators/phone-country-code.validator.ts +0 -36
  256. package/src/validators/same-as.validator.d.ts +0 -2
  257. package/src/validators/same-as.validator.js +0 -25
  258. package/src/validators/same-as.validator.ts +0 -27
  259. package/src/validators/skip-empty.validator.d.ts +0 -6
  260. package/src/validators/skip-empty.validator.js +0 -23
  261. package/src/validators/skip-empty.validator.ts +0 -25
  262. package/tsconfig.json +0 -30
  263. package/tsconfig.lib.json +0 -16
  264. package/tsconfig.tsbuildinfo +0 -1
@@ -1,455 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ObjectFieldOptional = exports.ObjectField = exports.IpField = exports.IpFieldOptional = exports.DateFieldOptional = exports.DateField = exports.FQDNFieldOptional = exports.FQDNField = exports.URLFieldOptional = exports.URLField = exports.UUIDFieldOptional = exports.UUIDField = exports.PhoneFieldOptional = exports.PhoneField = exports.EmailFieldOptional = exports.EmailField = exports.ClassFieldOptional = exports.EnumFieldOptional = exports.ClassField = exports.EnumField = exports.getEnumDescription = exports.TmpKeyFieldOptional = exports.TmpKeyField = exports.TranslationsFieldOptional = exports.TranslationsField = exports.BooleanFieldOptional = exports.BooleanField = exports.PasswordFieldOptional = exports.PasswordField = exports.StringFieldOptional = exports.StringField = exports.NumberFieldOptional = exports.NumberField = void 0;
4
- const common_1 = require("@nestjs/common");
5
- const swagger_1 = require("@nestjs/swagger");
6
- const nestjs_i18n_1 = require("nestjs-i18n");
7
- const class_transformer_1 = require("class-transformer");
8
- const class_validator_1 = require("class-validator");
9
- const constants_1 = require("../constants");
10
- const property_decorators_1 = require("./property.decorators");
11
- const transform_decorators_1 = require("./transform.decorators");
12
- const validator_decorators_1 = require("./validator.decorators");
13
- function NumberField(options = {}) {
14
- const decorators = [(0, class_transformer_1.Type)(() => Number)];
15
- if (options.nullable) {
16
- decorators.push((0, validator_decorators_1.IsNullable)({
17
- each: options.each,
18
- }));
19
- }
20
- else {
21
- decorators.push((0, class_validator_1.NotEquals)(null, {
22
- each: options.each,
23
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.NOT_EQUALS'),
24
- }));
25
- }
26
- if (options.swagger !== false) {
27
- decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: Number }, options)));
28
- }
29
- if (options.each) {
30
- decorators.push((0, transform_decorators_1.ToArray)());
31
- }
32
- if (options.int) {
33
- decorators.push((0, class_validator_1.IsInt)({
34
- each: options.each,
35
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_INT'),
36
- }));
37
- }
38
- else {
39
- decorators.push((0, class_validator_1.IsNumber)({}, {
40
- each: options.each,
41
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_NUMBER'),
42
- }));
43
- }
44
- if (typeof options.min === 'number') {
45
- decorators.push((0, class_validator_1.Min)(options.min, {
46
- each: options.each,
47
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.MIN'),
48
- }));
49
- }
50
- if (typeof options.max === 'number') {
51
- decorators.push((0, class_validator_1.Max)(options.max, {
52
- each: options.each,
53
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.MAX'),
54
- }));
55
- }
56
- if (options.isPositive) {
57
- decorators.push((0, class_validator_1.IsPositive)({
58
- each: options.each,
59
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_POSITIVE'),
60
- }));
61
- }
62
- return (0, common_1.applyDecorators)(...decorators);
63
- }
64
- exports.NumberField = NumberField;
65
- function NumberFieldOptional(options = {}) {
66
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), NumberField(Object.assign({ required: false }, options)));
67
- }
68
- exports.NumberFieldOptional = NumberFieldOptional;
69
- function StringField(options = {}) {
70
- var _a;
71
- const decorators = [
72
- (0, class_transformer_1.Type)(() => String),
73
- (0, class_validator_1.IsString)({
74
- each: options.each,
75
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_STRING'),
76
- }),
77
- ];
78
- if (options.nullable) {
79
- decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
80
- }
81
- else {
82
- decorators.push((0, class_validator_1.NotEquals)(null, {
83
- each: options.each,
84
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.NOT_EQUALS'),
85
- }));
86
- }
87
- if (options.swagger !== false) {
88
- decorators.push((0, swagger_1.ApiProperty)(Object.assign(Object.assign({ type: String }, options), { isArray: options.each })));
89
- }
90
- const minLength = (_a = options.minLength) !== null && _a !== void 0 ? _a : 1;
91
- decorators.push((0, class_validator_1.MinLength)(minLength, {
92
- each: options.each,
93
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.MIN_LENGTH'),
94
- }));
95
- if (options.maxLength) {
96
- decorators.push((0, class_validator_1.MaxLength)(options.maxLength, {
97
- each: options.each,
98
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.MAX_LENGTH'),
99
- }));
100
- }
101
- if (options.toLowerCase) {
102
- decorators.push((0, transform_decorators_1.ToLowerCase)());
103
- }
104
- if (options.toUpperCase) {
105
- decorators.push((0, transform_decorators_1.ToUpperCase)());
106
- }
107
- return (0, common_1.applyDecorators)(...decorators);
108
- }
109
- exports.StringField = StringField;
110
- function StringFieldOptional(options = {}) {
111
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), StringField(Object.assign({ required: false }, options)));
112
- }
113
- exports.StringFieldOptional = StringFieldOptional;
114
- function PasswordField(options = {}) {
115
- const decorators = [
116
- StringField(Object.assign(Object.assign({}, options), { minLength: 6 })) /*IsPassword()*/,
117
- ];
118
- if (options.nullable) {
119
- decorators.push((0, validator_decorators_1.IsNullable)());
120
- }
121
- else {
122
- decorators.push((0, class_validator_1.NotEquals)(null));
123
- }
124
- return (0, common_1.applyDecorators)(...decorators);
125
- }
126
- exports.PasswordField = PasswordField;
127
- function PasswordFieldOptional(options = {}) {
128
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), PasswordField(Object.assign({ required: false }, options)));
129
- }
130
- exports.PasswordFieldOptional = PasswordFieldOptional;
131
- function BooleanField(options = {}) {
132
- const decorators = [
133
- (0, transform_decorators_1.ToBoolean)(),
134
- (0, class_validator_1.IsBoolean)({ message: 'validation.INVALID_BOOLEAN' }),
135
- ];
136
- if (options.nullable) {
137
- decorators.push((0, validator_decorators_1.IsNullable)());
138
- }
139
- else {
140
- decorators.push((0, class_validator_1.NotEquals)(null));
141
- }
142
- if (options.swagger !== false) {
143
- decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: Boolean }, options)));
144
- }
145
- return (0, common_1.applyDecorators)(...decorators);
146
- }
147
- exports.BooleanField = BooleanField;
148
- function BooleanFieldOptional(options = {}) {
149
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), BooleanField(Object.assign({ required: false }, options)));
150
- }
151
- exports.BooleanFieldOptional = BooleanFieldOptional;
152
- function TranslationsField(options) {
153
- const decorators = [
154
- (0, class_validator_1.ArrayMinSize)(constants_1.supportedLanguageCount),
155
- (0, class_validator_1.ArrayMaxSize)(constants_1.supportedLanguageCount),
156
- (0, class_validator_1.ValidateNested)({
157
- each: true,
158
- }),
159
- (0, class_transformer_1.Type)(() => options.type),
160
- ];
161
- if (options.nullable) {
162
- decorators.push((0, validator_decorators_1.IsNullable)());
163
- }
164
- else {
165
- decorators.push((0, class_validator_1.NotEquals)(null));
166
- }
167
- if (options.swagger !== false) {
168
- decorators.push((0, swagger_1.ApiProperty)(Object.assign({ isArray: true }, options)));
169
- }
170
- return (0, common_1.applyDecorators)(...decorators);
171
- }
172
- exports.TranslationsField = TranslationsField;
173
- function TranslationsFieldOptional(options) {
174
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), TranslationsField(Object.assign({ required: false }, options)));
175
- }
176
- exports.TranslationsFieldOptional = TranslationsFieldOptional;
177
- function TmpKeyField(options = {}) {
178
- const decorators = [
179
- StringField(options),
180
- (0, validator_decorators_1.IsTmpKey)({ each: options.each }),
181
- ];
182
- if (options.nullable) {
183
- decorators.push((0, validator_decorators_1.IsNullable)());
184
- }
185
- else {
186
- decorators.push((0, class_validator_1.NotEquals)(null));
187
- }
188
- if (options.swagger !== false) {
189
- decorators.push((0, swagger_1.ApiProperty)(Object.assign(Object.assign({ type: String }, options), { isArray: options.each })));
190
- }
191
- return (0, common_1.applyDecorators)(...decorators);
192
- }
193
- exports.TmpKeyField = TmpKeyField;
194
- function TmpKeyFieldOptional(options = {}) {
195
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), TmpKeyField(Object.assign({ required: false }, options)));
196
- }
197
- exports.TmpKeyFieldOptional = TmpKeyFieldOptional;
198
- function getEnumDescription(enumType) {
199
- const keys = Object.keys(enumType).filter((k) => typeof enumType[k] === 'number');
200
- return keys.map((k) => `${enumType[k]}: ${k}`).join(', ');
201
- }
202
- exports.getEnumDescription = getEnumDescription;
203
- // eslint-disable-next-line @typescript-eslint/ban-types
204
- function EnumField(getEnum, options = {}) {
205
- // eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/ban-types
206
- const enumValue = getEnum();
207
- const decorators = [
208
- (0, class_validator_1.IsEnum)(enumValue, {
209
- each: options.each,
210
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_ENUM'),
211
- }),
212
- ];
213
- if (options.nullable) {
214
- decorators.push((0, validator_decorators_1.IsNullable)());
215
- }
216
- else {
217
- decorators.push((0, class_validator_1.NotEquals)(null));
218
- }
219
- if (options.each) {
220
- decorators.push((0, transform_decorators_1.ToArray)());
221
- }
222
- if (options.swagger !== false) {
223
- decorators.push((0, property_decorators_1.ApiEnumProperty)(getEnum, Object.assign(Object.assign({}, options), { isArray: options.each })));
224
- }
225
- return (0, common_1.applyDecorators)(...decorators);
226
- }
227
- exports.EnumField = EnumField;
228
- // eslint-disable-next-line @typescript-eslint/ban-types
229
- function ClassField(getClass, options = {}) {
230
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
231
- const classValue = getClass();
232
- if (!classValue) {
233
- throw new Error('ClassField: recursive class definition');
234
- }
235
- const decorators = [
236
- (0, class_transformer_1.Type)(() => classValue),
237
- (0, class_validator_1.ValidateNested)({ each: options.each }),
238
- ];
239
- if (options.required !== false) {
240
- decorators.push((0, class_validator_1.IsDefined)());
241
- }
242
- if (options.nullable) {
243
- decorators.push((0, validator_decorators_1.IsNullable)());
244
- }
245
- else {
246
- decorators.push((0, class_validator_1.NotEquals)(null));
247
- }
248
- if (options.swagger !== false) {
249
- decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: () => classValue }, options)));
250
- }
251
- if (options.each) {
252
- decorators.push((0, transform_decorators_1.ToArray)());
253
- }
254
- return (0, common_1.applyDecorators)(...decorators);
255
- }
256
- exports.ClassField = ClassField;
257
- // eslint-disable-next-line @typescript-eslint/ban-types
258
- function EnumFieldOptional(getEnum, options = {}) {
259
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), EnumField(getEnum, Object.assign({ required: false }, options)));
260
- }
261
- exports.EnumFieldOptional = EnumFieldOptional;
262
- // eslint-disable-next-line @typescript-eslint/ban-types
263
- function ClassFieldOptional(getClass, options = {}) {
264
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), ClassField(getClass, Object.assign({ required: false }, options)));
265
- }
266
- exports.ClassFieldOptional = ClassFieldOptional;
267
- function EmailField(options = {}) {
268
- var _a;
269
- const decorators = [
270
- (0, class_validator_1.IsEmail)(options.emailOptions, {
271
- message: (_a = options.message) !== null && _a !== void 0 ? _a : (0, nestjs_i18n_1.i18nValidationMessage)('validation.INVALID_EMAIL'),
272
- }),
273
- StringField(Object.assign({ toLowerCase: true }, options)),
274
- ];
275
- if (options.nullable) {
276
- decorators.push((0, validator_decorators_1.IsNullable)());
277
- }
278
- else {
279
- decorators.push((0, class_validator_1.NotEquals)(null));
280
- }
281
- if (options.swagger !== false) {
282
- decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: String }, options)));
283
- }
284
- return (0, common_1.applyDecorators)(...decorators);
285
- }
286
- exports.EmailField = EmailField;
287
- function EmailFieldOptional(options = {}) {
288
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), EmailField(Object.assign({ required: false }, options)));
289
- }
290
- exports.EmailFieldOptional = EmailFieldOptional;
291
- function PhoneField(options = {}) {
292
- const decorators = [(0, validator_decorators_1.IsPhoneNumber)(), (0, transform_decorators_1.PhoneNumberSerializer)()];
293
- if (options.nullable) {
294
- decorators.push((0, validator_decorators_1.IsNullable)());
295
- }
296
- else {
297
- decorators.push((0, class_validator_1.NotEquals)(null));
298
- }
299
- if (options.swagger !== false) {
300
- decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: String }, options)));
301
- }
302
- return (0, common_1.applyDecorators)(...decorators);
303
- }
304
- exports.PhoneField = PhoneField;
305
- function PhoneFieldOptional(options = {}) {
306
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), PhoneField(Object.assign({ required: false }, options)));
307
- }
308
- exports.PhoneFieldOptional = PhoneFieldOptional;
309
- function UUIDField(options = {}) {
310
- const decorators = [
311
- (0, class_transformer_1.Type)(() => String),
312
- (0, class_validator_1.IsUUID)('4', {
313
- each: options.each,
314
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_UUID'),
315
- }),
316
- ];
317
- if (options.nullable) {
318
- decorators.push((0, validator_decorators_1.IsNullable)({ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_NULLABLE') }));
319
- }
320
- else {
321
- decorators.push((0, class_validator_1.NotEquals)(null));
322
- }
323
- if (options.swagger !== false) {
324
- decorators.push((0, property_decorators_1.ApiUUIDProperty)(options));
325
- }
326
- if (options.each) {
327
- decorators.push((0, transform_decorators_1.ToArray)());
328
- }
329
- return (0, common_1.applyDecorators)(...decorators);
330
- }
331
- exports.UUIDField = UUIDField;
332
- function UUIDFieldOptional(options = {}) {
333
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), UUIDField(Object.assign({ required: false }, options)));
334
- }
335
- exports.UUIDFieldOptional = UUIDFieldOptional;
336
- function URLField(options = {}) {
337
- const decorators = [
338
- (0, class_validator_1.IsUrl)({}, {
339
- each: options.each,
340
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_URL'),
341
- }),
342
- StringField(Object.assign({ toLowerCase: true }, options)),
343
- ];
344
- if (options.nullable) {
345
- decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
346
- }
347
- else {
348
- decorators.push((0, class_validator_1.NotEquals)(null, { each: options.each }));
349
- }
350
- return (0, common_1.applyDecorators)(...decorators);
351
- }
352
- exports.URLField = URLField;
353
- function URLFieldOptional(options = {}) {
354
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), URLField(Object.assign({ required: false }, options)));
355
- }
356
- exports.URLFieldOptional = URLFieldOptional;
357
- function FQDNField(options = {}) {
358
- const decorators = [
359
- (0, class_validator_1.IsFQDN)(options, {
360
- each: options.each,
361
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_FQDN'),
362
- }),
363
- StringField(Object.assign({ toLowerCase: true }, options)),
364
- ];
365
- if (options.nullable) {
366
- decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
367
- }
368
- else {
369
- decorators.push((0, class_validator_1.NotEquals)(null, { each: options.each }));
370
- }
371
- return (0, common_1.applyDecorators)(...decorators);
372
- }
373
- exports.FQDNField = FQDNField;
374
- function FQDNFieldOptional(options = {}) {
375
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), FQDNField(Object.assign({ required: false }, options)));
376
- }
377
- exports.FQDNFieldOptional = FQDNFieldOptional;
378
- function DateField(options = {}) {
379
- const decorators = [
380
- (0, class_transformer_1.Type)(() => Date),
381
- (0, class_validator_1.IsDate)({ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_DATE') }),
382
- ];
383
- if (options.nullable) {
384
- decorators.push((0, validator_decorators_1.IsNullable)());
385
- }
386
- else {
387
- decorators.push((0, class_validator_1.NotEquals)(null));
388
- }
389
- if (options.minDate) {
390
- decorators.push((0, class_validator_1.MinDate)(options.minDate, {
391
- each: options.each,
392
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.MIN_DATE'),
393
- }));
394
- }
395
- if (options.maxDate) {
396
- decorators.push((0, class_validator_1.MaxDate)(options.maxDate, {
397
- each: options.each,
398
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.MAX_DATE'),
399
- }));
400
- }
401
- if (options.swagger !== false) {
402
- decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: Date }, options)));
403
- }
404
- return (0, common_1.applyDecorators)(...decorators);
405
- }
406
- exports.DateField = DateField;
407
- function DateFieldOptional(options = {}) {
408
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), DateField(Object.assign(Object.assign({}, options), { required: false })));
409
- }
410
- exports.DateFieldOptional = DateFieldOptional;
411
- function IpFieldOptional(options = {}) {
412
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), IpField(Object.assign({ required: false }, options)));
413
- }
414
- exports.IpFieldOptional = IpFieldOptional;
415
- function IpField(options) {
416
- const decorators = [
417
- (0, class_validator_1.IsIP)(options.version || 4, {
418
- each: options.each,
419
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_IP'),
420
- }),
421
- StringField(Object.assign({ toLowerCase: true }, options)),
422
- ];
423
- if (options.nullable) {
424
- decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
425
- }
426
- else {
427
- decorators.push((0, class_validator_1.NotEquals)(null, { each: options.each }));
428
- }
429
- return (0, common_1.applyDecorators)(...decorators);
430
- }
431
- exports.IpField = IpField;
432
- function ObjectField(options) {
433
- const decorators = [
434
- (0, class_transformer_1.Type)(() => Object),
435
- (0, class_validator_1.IsObject)({
436
- each: options.each,
437
- message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_OBJECT'),
438
- }),
439
- ];
440
- if (options.nullable) {
441
- decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
442
- }
443
- else {
444
- decorators.push((0, class_validator_1.NotEquals)(null, { each: options.each }));
445
- }
446
- if (options.swagger !== false) {
447
- decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: 'object' }, options)));
448
- }
449
- return (0, common_1.applyDecorators)(...decorators);
450
- }
451
- exports.ObjectField = ObjectField;
452
- function ObjectFieldOptional(options = {}) {
453
- return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), ObjectField(Object.assign({ required: false }, options)));
454
- }
455
- exports.ObjectFieldOptional = ObjectFieldOptional;