@nest-omni/core 1.0.14 → 1.0.15

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 (182) hide show
  1. package/dist/common/abstract-client.service.d.ts +16 -0
  2. package/dist/common/abstract-client.service.js +35 -0
  3. package/dist/common/abstract.entity.d.ts +17 -0
  4. package/dist/common/abstract.entity.js +64 -0
  5. package/dist/common/boilerplate.polyfill.d.ts +39 -0
  6. package/dist/common/boilerplate.polyfill.js +77 -0
  7. package/dist/common/dto/abstract.dto.d.ts +13 -0
  8. package/dist/common/dto/abstract.dto.js +59 -0
  9. package/dist/common/dto/bulk-id.dto.d.ts +3 -0
  10. package/dist/common/dto/bulk-id.dto.js +27 -0
  11. package/dist/common/dto/create-translation.dto.d.ts +5 -0
  12. package/dist/common/dto/create-translation.dto.js +25 -0
  13. package/dist/common/dto/index.d.ts +6 -0
  14. package/dist/common/dto/index.js +22 -0
  15. package/dist/common/dto/page-meta.dto.d.ts +15 -0
  16. package/dist/common/dto/page-meta.dto.js +48 -0
  17. package/dist/common/dto/page-options.dto.d.ts +8 -0
  18. package/dist/common/dto/page-options.dto.js +52 -0
  19. package/dist/common/dto/page.dto.d.ts +11 -0
  20. package/dist/common/dto/page.dto.js +53 -0
  21. package/dist/common/index.d.ts +7 -0
  22. package/dist/common/index.js +23 -0
  23. package/dist/common/snake-naming.strategy.d.ts +11 -0
  24. package/dist/common/snake-naming.strategy.js +37 -0
  25. package/dist/common/types.d.ts +9 -0
  26. package/dist/common/types.js +2 -0
  27. package/dist/common/utils.d.ts +3 -0
  28. package/dist/common/utils.js +25 -0
  29. package/dist/constants/index.d.ts +2 -0
  30. package/dist/constants/index.js +18 -0
  31. package/dist/constants/language-code.d.ts +5 -0
  32. package/dist/constants/language-code.js +9 -0
  33. package/dist/constants/order.d.ts +4 -0
  34. package/dist/constants/order.js +8 -0
  35. package/dist/decorators/api-page-ok-response.decorator.d.ts +5 -0
  36. package/dist/decorators/api-page-ok-response.decorator.js +25 -0
  37. package/dist/decorators/auth-user.decorator.d.ts +1 -0
  38. package/dist/decorators/auth-user.decorator.js +15 -0
  39. package/dist/decorators/controller.decorator.d.ts +1 -0
  40. package/dist/decorators/controller.decorator.js +11 -0
  41. package/dist/decorators/field.decorators.d.ts +71 -0
  42. package/dist/decorators/field.decorators.js +449 -0
  43. package/dist/decorators/http.decorators.d.ts +3 -0
  44. package/dist/decorators/http.decorators.js +8 -0
  45. package/dist/decorators/index.d.ts +12 -0
  46. package/dist/decorators/index.js +28 -0
  47. package/dist/decorators/omni-auth.decorator.d.ts +8 -0
  48. package/dist/decorators/omni-auth.decorator.js +35 -0
  49. package/dist/decorators/operation.decorator.d.ts +1 -0
  50. package/dist/decorators/operation.decorator.js +6 -0
  51. package/dist/decorators/property.decorators.d.ts +15 -0
  52. package/dist/decorators/property.decorators.js +32 -0
  53. package/dist/decorators/public-route.decorator.d.ts +3 -0
  54. package/dist/decorators/public-route.decorator.js +7 -0
  55. package/dist/decorators/swagger.schema.d.ts +5 -0
  56. package/dist/decorators/swagger.schema.js +79 -0
  57. package/dist/decorators/timestamp-column.decorator.d.ts +1 -0
  58. package/dist/decorators/timestamp-column.decorator.js +28 -0
  59. package/dist/decorators/transform.decorators.d.ts +8 -0
  60. package/dist/decorators/transform.decorators.js +95 -0
  61. package/dist/decorators/translate.decorator.d.ts +5 -0
  62. package/dist/decorators/translate.decorator.js +17 -0
  63. package/dist/decorators/use-dto.decorator.d.ts +4 -0
  64. package/dist/decorators/use-dto.decorator.js +9 -0
  65. package/dist/decorators/user-check.decorator.d.ts +6 -0
  66. package/dist/decorators/user-check.decorator.js +21 -0
  67. package/dist/decorators/user.decorator.d.ts +8 -0
  68. package/dist/decorators/user.decorator.js +38 -0
  69. package/dist/decorators/user_auth.decorator.d.ts +1 -0
  70. package/dist/decorators/user_auth.decorator.js +16 -0
  71. package/dist/decorators/validator.decorators.d.ts +10 -0
  72. package/dist/decorators/validator.decorators.js +59 -0
  73. package/dist/exceptions/file-not-image.exception.d.ts +4 -0
  74. package/dist/exceptions/file-not-image.exception.js +10 -0
  75. package/dist/exceptions/index.d.ts +2 -0
  76. package/dist/exceptions/index.js +18 -0
  77. package/dist/exceptions/page-type.exception.d.ts +4 -0
  78. package/dist/exceptions/page-type.exception.js +10 -0
  79. package/dist/exceptions/user-not-found.exception.d.ts +4 -0
  80. package/dist/exceptions/user-not-found.exception.js +10 -0
  81. package/dist/filters/bad-request.filter.d.ts +5 -0
  82. package/dist/filters/bad-request.filter.js +60 -0
  83. package/dist/filters/constraint-errors.d.ts +1 -0
  84. package/dist/filters/constraint-errors.js +6 -0
  85. package/dist/filters/index.d.ts +3 -0
  86. package/dist/filters/index.js +19 -0
  87. package/dist/filters/query-failed.filter.d.ts +10 -0
  88. package/dist/filters/query-failed.filter.js +42 -0
  89. package/dist/health-checker/health-checker.controller.d.ts +15 -0
  90. package/dist/health-checker/health-checker.controller.js +72 -0
  91. package/dist/health-checker/health-checker.module.d.ts +2 -0
  92. package/dist/health-checker/health-checker.module.js +25 -0
  93. package/dist/health-checker/health-indicators/service.indicator.d.ts +8 -0
  94. package/dist/health-checker/health-indicators/service.indicator.js +66 -0
  95. package/dist/helpers/common.helper.d.ts +3 -0
  96. package/dist/helpers/common.helper.js +36 -0
  97. package/dist/helpers/date.helper.d.ts +10 -0
  98. package/dist/helpers/date.helper.js +58 -0
  99. package/dist/helpers/index.d.ts +2 -0
  100. package/dist/helpers/index.js +18 -0
  101. package/dist/i18n/en_US/validation.json +38 -0
  102. package/dist/i18n/zh_CN/validation.json +38 -0
  103. package/dist/index.d.ts +11 -0
  104. package/dist/index.js +27 -0
  105. package/dist/interceptors/auth-user.interceptor.d.ts +4 -0
  106. package/dist/interceptors/auth-user.interceptor.js +24 -0
  107. package/dist/interceptors/index.d.ts +2 -0
  108. package/dist/interceptors/index.js +18 -0
  109. package/dist/interceptors/language-interceptor.service.d.ts +6 -0
  110. package/dist/interceptors/language-interceptor.service.js +30 -0
  111. package/dist/interceptors/translation-interceptor.service.d.ts +5 -0
  112. package/dist/interceptors/translation-interceptor.service.js +34 -0
  113. package/dist/interfaces/IApiFile.d.ts +4 -0
  114. package/dist/interfaces/IApiFile.js +2 -0
  115. package/dist/interfaces/IFile.d.ts +9 -0
  116. package/dist/interfaces/IFile.js +2 -0
  117. package/dist/interfaces/ITranslationDecoratorInterface.d.ts +3 -0
  118. package/dist/interfaces/ITranslationDecoratorInterface.js +2 -0
  119. package/dist/interfaces/index.d.ts +3 -0
  120. package/dist/interfaces/index.js +19 -0
  121. package/dist/interfaces/response.d.ts +25 -0
  122. package/dist/interfaces/response.js +2 -0
  123. package/dist/middlewares/index.d.ts +3 -0
  124. package/dist/middlewares/index.js +19 -0
  125. package/dist/middlewares/omni-auth.middleware.d.ts +1 -0
  126. package/dist/middlewares/omni-auth.middleware.js +13 -0
  127. package/dist/middlewares/powerby.middleware.d.ts +1 -0
  128. package/dist/middlewares/powerby.middleware.js +10 -0
  129. package/dist/middlewares/request-id.middleware.d.ts +7 -0
  130. package/dist/middlewares/request-id.middleware.js +22 -0
  131. package/dist/providers/context.provider.d.ts +32 -0
  132. package/dist/providers/context.provider.js +71 -0
  133. package/dist/providers/generator.provider.d.ts +9 -0
  134. package/dist/providers/generator.provider.js +50 -0
  135. package/dist/providers/index.d.ts +2 -0
  136. package/dist/providers/index.js +18 -0
  137. package/dist/setup/bootstrap.setup.d.ts +5 -0
  138. package/dist/setup/bootstrap.setup.js +112 -0
  139. package/dist/setup/index.d.ts +1 -0
  140. package/dist/setup/index.js +17 -0
  141. package/dist/shared/index.d.ts +2 -0
  142. package/dist/shared/index.js +18 -0
  143. package/dist/shared/serviceRegistryModule.d.ts +2 -0
  144. package/dist/shared/serviceRegistryModule.js +110 -0
  145. package/dist/shared/services/api-config.service.d.ts +70 -0
  146. package/dist/shared/services/api-config.service.js +290 -0
  147. package/dist/shared/services/aws-s3.service.d.ts +10 -0
  148. package/dist/shared/services/aws-s3.service.js +56 -0
  149. package/dist/shared/services/generator.service.d.ts +4 -0
  150. package/dist/shared/services/generator.service.js +23 -0
  151. package/dist/shared/services/index.d.ts +5 -0
  152. package/dist/shared/services/index.js +21 -0
  153. package/dist/shared/services/translation.service.d.ts +9 -0
  154. package/dist/shared/services/translation.service.js +70 -0
  155. package/dist/shared/services/validator.service.d.ts +3 -0
  156. package/dist/shared/services/validator.service.js +20 -0
  157. package/dist/tsconfig.tsbuildinfo +1 -0
  158. package/dist/validator-json/decorators.d.ts +6 -0
  159. package/dist/validator-json/decorators.js +23 -0
  160. package/dist/validator-json/default.d.ts +6 -0
  161. package/dist/validator-json/default.js +130 -0
  162. package/dist/validator-json/defaultConverters.d.ts +8 -0
  163. package/dist/validator-json/defaultConverters.js +376 -0
  164. package/dist/validator-json/index.d.ts +4 -0
  165. package/dist/validator-json/index.js +20 -0
  166. package/dist/validator-json/options.d.ts +11 -0
  167. package/dist/validator-json/options.js +10 -0
  168. package/dist/validators/file-mimetype.validator.d.ts +13 -0
  169. package/dist/validators/file-mimetype.validator.js +21 -0
  170. package/dist/validators/index.d.ts +6 -0
  171. package/dist/validators/index.js +22 -0
  172. package/dist/validators/is-exists.validator.d.ts +18 -0
  173. package/dist/validators/is-exists.validator.js +61 -0
  174. package/dist/validators/is-unique.validator.d.ts +17 -0
  175. package/dist/validators/is-unique.validator.js +92 -0
  176. package/dist/validators/phone-country-code.validator.d.ts +2 -0
  177. package/dist/validators/phone-country-code.validator.js +30 -0
  178. package/dist/validators/same-as.validator.d.ts +2 -0
  179. package/dist/validators/same-as.validator.js +25 -0
  180. package/dist/validators/skip-empty.validator.d.ts +1 -0
  181. package/dist/validators/skip-empty.validator.js +18 -0
  182. package/package.json +2 -17
@@ -0,0 +1,449 @@
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 })),
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
+ function EnumField(getEnum, options = {}) {
204
+ const enumValue = getEnum();
205
+ const decorators = [
206
+ (0, class_validator_1.IsEnum)(enumValue, {
207
+ each: options.each,
208
+ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_ENUM'),
209
+ }),
210
+ ];
211
+ if (options.nullable) {
212
+ decorators.push((0, validator_decorators_1.IsNullable)());
213
+ }
214
+ else {
215
+ decorators.push((0, class_validator_1.NotEquals)(null));
216
+ }
217
+ if (options.each) {
218
+ decorators.push((0, transform_decorators_1.ToArray)());
219
+ }
220
+ if (options.swagger !== false) {
221
+ decorators.push((0, property_decorators_1.ApiEnumProperty)(getEnum, Object.assign(Object.assign({}, options), { isArray: options.each })));
222
+ }
223
+ return (0, common_1.applyDecorators)(...decorators);
224
+ }
225
+ exports.EnumField = EnumField;
226
+ function ClassField(getClass, options = {}) {
227
+ const classValue = getClass();
228
+ if (!classValue) {
229
+ throw new Error('ClassField: recursive class definition');
230
+ }
231
+ const decorators = [
232
+ (0, class_transformer_1.Type)(() => classValue),
233
+ (0, class_validator_1.ValidateNested)({ each: options.each }),
234
+ ];
235
+ if (options.required !== false) {
236
+ decorators.push((0, class_validator_1.IsDefined)());
237
+ }
238
+ if (options.nullable) {
239
+ decorators.push((0, validator_decorators_1.IsNullable)());
240
+ }
241
+ else {
242
+ decorators.push((0, class_validator_1.NotEquals)(null));
243
+ }
244
+ if (options.swagger !== false) {
245
+ decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: () => classValue }, options)));
246
+ }
247
+ if (options.each) {
248
+ decorators.push((0, transform_decorators_1.ToArray)());
249
+ }
250
+ return (0, common_1.applyDecorators)(...decorators);
251
+ }
252
+ exports.ClassField = ClassField;
253
+ function EnumFieldOptional(getEnum, options = {}) {
254
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), EnumField(getEnum, Object.assign({ required: false }, options)));
255
+ }
256
+ exports.EnumFieldOptional = EnumFieldOptional;
257
+ function ClassFieldOptional(getClass, options = {}) {
258
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), ClassField(getClass, Object.assign({ required: false }, options)));
259
+ }
260
+ exports.ClassFieldOptional = ClassFieldOptional;
261
+ function EmailField(options = {}) {
262
+ var _a;
263
+ const decorators = [
264
+ (0, class_validator_1.IsEmail)(options.emailOptions, {
265
+ message: (_a = options.message) !== null && _a !== void 0 ? _a : (0, nestjs_i18n_1.i18nValidationMessage)('validation.INVALID_EMAIL'),
266
+ }),
267
+ StringField(Object.assign({ toLowerCase: true }, options)),
268
+ ];
269
+ if (options.nullable) {
270
+ decorators.push((0, validator_decorators_1.IsNullable)());
271
+ }
272
+ else {
273
+ decorators.push((0, class_validator_1.NotEquals)(null));
274
+ }
275
+ if (options.swagger !== false) {
276
+ decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: String }, options)));
277
+ }
278
+ return (0, common_1.applyDecorators)(...decorators);
279
+ }
280
+ exports.EmailField = EmailField;
281
+ function EmailFieldOptional(options = {}) {
282
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), EmailField(Object.assign({ required: false }, options)));
283
+ }
284
+ exports.EmailFieldOptional = EmailFieldOptional;
285
+ function PhoneField(options = {}) {
286
+ const decorators = [(0, validator_decorators_1.IsPhoneNumber)(), (0, transform_decorators_1.PhoneNumberSerializer)()];
287
+ if (options.nullable) {
288
+ decorators.push((0, validator_decorators_1.IsNullable)());
289
+ }
290
+ else {
291
+ decorators.push((0, class_validator_1.NotEquals)(null));
292
+ }
293
+ if (options.swagger !== false) {
294
+ decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: String }, options)));
295
+ }
296
+ return (0, common_1.applyDecorators)(...decorators);
297
+ }
298
+ exports.PhoneField = PhoneField;
299
+ function PhoneFieldOptional(options = {}) {
300
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), PhoneField(Object.assign({ required: false }, options)));
301
+ }
302
+ exports.PhoneFieldOptional = PhoneFieldOptional;
303
+ function UUIDField(options = {}) {
304
+ const decorators = [
305
+ (0, class_transformer_1.Type)(() => String),
306
+ (0, class_validator_1.IsUUID)('4', {
307
+ each: options.each,
308
+ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_UUID'),
309
+ }),
310
+ ];
311
+ if (options.nullable) {
312
+ decorators.push((0, validator_decorators_1.IsNullable)({ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_NULLABLE') }));
313
+ }
314
+ else {
315
+ decorators.push((0, class_validator_1.NotEquals)(null));
316
+ }
317
+ if (options.swagger !== false) {
318
+ decorators.push((0, property_decorators_1.ApiUUIDProperty)(options));
319
+ }
320
+ if (options.each) {
321
+ decorators.push((0, transform_decorators_1.ToArray)());
322
+ }
323
+ return (0, common_1.applyDecorators)(...decorators);
324
+ }
325
+ exports.UUIDField = UUIDField;
326
+ function UUIDFieldOptional(options = {}) {
327
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), UUIDField(Object.assign({ required: false }, options)));
328
+ }
329
+ exports.UUIDFieldOptional = UUIDFieldOptional;
330
+ function URLField(options = {}) {
331
+ const decorators = [
332
+ (0, class_validator_1.IsUrl)({}, {
333
+ each: options.each,
334
+ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_URL'),
335
+ }),
336
+ StringField(Object.assign({ toLowerCase: true }, options)),
337
+ ];
338
+ if (options.nullable) {
339
+ decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
340
+ }
341
+ else {
342
+ decorators.push((0, class_validator_1.NotEquals)(null, { each: options.each }));
343
+ }
344
+ return (0, common_1.applyDecorators)(...decorators);
345
+ }
346
+ exports.URLField = URLField;
347
+ function URLFieldOptional(options = {}) {
348
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), URLField(Object.assign({ required: false }, options)));
349
+ }
350
+ exports.URLFieldOptional = URLFieldOptional;
351
+ function FQDNField(options = {}) {
352
+ const decorators = [
353
+ (0, class_validator_1.IsFQDN)(options, {
354
+ each: options.each,
355
+ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_FQDN'),
356
+ }),
357
+ StringField(Object.assign({ toLowerCase: true }, options)),
358
+ ];
359
+ if (options.nullable) {
360
+ decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
361
+ }
362
+ else {
363
+ decorators.push((0, class_validator_1.NotEquals)(null, { each: options.each }));
364
+ }
365
+ return (0, common_1.applyDecorators)(...decorators);
366
+ }
367
+ exports.FQDNField = FQDNField;
368
+ function FQDNFieldOptional(options = {}) {
369
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), FQDNField(Object.assign({ required: false }, options)));
370
+ }
371
+ exports.FQDNFieldOptional = FQDNFieldOptional;
372
+ function DateField(options = {}) {
373
+ const decorators = [
374
+ (0, class_transformer_1.Type)(() => Date),
375
+ (0, class_validator_1.IsDate)({ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_DATE') }),
376
+ ];
377
+ if (options.nullable) {
378
+ decorators.push((0, validator_decorators_1.IsNullable)());
379
+ }
380
+ else {
381
+ decorators.push((0, class_validator_1.NotEquals)(null));
382
+ }
383
+ if (options.minDate) {
384
+ decorators.push((0, class_validator_1.MinDate)(options.minDate, {
385
+ each: options.each,
386
+ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.MIN_DATE'),
387
+ }));
388
+ }
389
+ if (options.maxDate) {
390
+ decorators.push((0, class_validator_1.MaxDate)(options.maxDate, {
391
+ each: options.each,
392
+ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.MAX_DATE'),
393
+ }));
394
+ }
395
+ if (options.swagger !== false) {
396
+ decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: Date }, options)));
397
+ }
398
+ return (0, common_1.applyDecorators)(...decorators);
399
+ }
400
+ exports.DateField = DateField;
401
+ function DateFieldOptional(options = {}) {
402
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), DateField(Object.assign(Object.assign({}, options), { required: false })));
403
+ }
404
+ exports.DateFieldOptional = DateFieldOptional;
405
+ function IpFieldOptional(options = {}) {
406
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), IpField(Object.assign({ required: false }, options)));
407
+ }
408
+ exports.IpFieldOptional = IpFieldOptional;
409
+ function IpField(options) {
410
+ const decorators = [
411
+ (0, class_validator_1.IsIP)(options.version || 4, {
412
+ each: options.each,
413
+ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_IP'),
414
+ }),
415
+ StringField(Object.assign({ toLowerCase: true }, options)),
416
+ ];
417
+ if (options.nullable) {
418
+ decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
419
+ }
420
+ else {
421
+ decorators.push((0, class_validator_1.NotEquals)(null, { each: options.each }));
422
+ }
423
+ return (0, common_1.applyDecorators)(...decorators);
424
+ }
425
+ exports.IpField = IpField;
426
+ function ObjectField(options) {
427
+ const decorators = [
428
+ (0, class_transformer_1.Type)(() => Object),
429
+ (0, class_validator_1.IsObject)({
430
+ each: options.each,
431
+ message: (0, nestjs_i18n_1.i18nValidationMessage)('validation.IS_OBJECT'),
432
+ }),
433
+ ];
434
+ if (options.nullable) {
435
+ decorators.push((0, validator_decorators_1.IsNullable)({ each: options.each }));
436
+ }
437
+ else {
438
+ decorators.push((0, class_validator_1.NotEquals)(null, { each: options.each }));
439
+ }
440
+ if (options.swagger !== false) {
441
+ decorators.push((0, swagger_1.ApiProperty)(Object.assign({ type: 'object' }, options)));
442
+ }
443
+ return (0, common_1.applyDecorators)(...decorators);
444
+ }
445
+ exports.ObjectField = ObjectField;
446
+ function ObjectFieldOptional(options = {}) {
447
+ return (0, common_1.applyDecorators)((0, validator_decorators_1.IsEmptyable)(), ObjectField(Object.assign({ required: false }, options)));
448
+ }
449
+ exports.ObjectFieldOptional = ObjectFieldOptional;
@@ -0,0 +1,3 @@
1
+ import type { PipeTransform } from '@nestjs/common';
2
+ import type { Type } from '@nestjs/common/interfaces';
3
+ export declare function UUIDParam(property: string, ...pipes: Array<Type<PipeTransform> | PipeTransform>): ParameterDecorator;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UUIDParam = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ function UUIDParam(property, ...pipes) {
6
+ return (0, common_1.Param)(property, new common_1.ParseUUIDPipe({ version: '4' }), ...pipes);
7
+ }
8
+ exports.UUIDParam = UUIDParam;
@@ -0,0 +1,12 @@
1
+ export * from './api-page-ok-response.decorator';
2
+ export * from './auth-user.decorator';
3
+ export * from './field.decorators';
4
+ export * from './http.decorators';
5
+ export * from './property.decorators';
6
+ export * from './public-route.decorator';
7
+ export * from './swagger.schema';
8
+ export * from './transform.decorators';
9
+ export * from './translate.decorator';
10
+ export * from './use-dto.decorator';
11
+ export * from './validator.decorators';
12
+ export * from './controller.decorator';
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./api-page-ok-response.decorator"), exports);
18
+ __exportStar(require("./auth-user.decorator"), exports);
19
+ __exportStar(require("./field.decorators"), exports);
20
+ __exportStar(require("./http.decorators"), exports);
21
+ __exportStar(require("./property.decorators"), exports);
22
+ __exportStar(require("./public-route.decorator"), exports);
23
+ __exportStar(require("./swagger.schema"), exports);
24
+ __exportStar(require("./transform.decorators"), exports);
25
+ __exportStar(require("./translate.decorator"), exports);
26
+ __exportStar(require("./use-dto.decorator"), exports);
27
+ __exportStar(require("./validator.decorators"), exports);
28
+ __exportStar(require("./controller.decorator"), exports);
@@ -0,0 +1,8 @@
1
+ export interface IOmniAuth {
2
+ uid: number;
3
+ username: string;
4
+ tenantId: string;
5
+ appId: string;
6
+ }
7
+ export declare const OmniAuth: (...dataOrPipes: (string | import("@nestjs/common").PipeTransform<any, any> | import("@nestjs/common").Type<import("@nestjs/common").PipeTransform<any, any>>)[]) => ParameterDecorator;
8
+ export declare function getOmniAuthData(req: any, data?: string): IOmniAuth;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOmniAuthData = exports.OmniAuth = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const lodash = require("lodash");
6
+ const config_1 = require("@nestjs/config");
7
+ exports.OmniAuth = (0, common_1.createParamDecorator)((field, ctx) => {
8
+ return getOmniAuthData(ctx.switchToHttp().getRequest(), field);
9
+ });
10
+ function getOmniAuthData(req, data) {
11
+ const headers = req.headers;
12
+ let user;
13
+ const configService = new config_1.ConfigService(req);
14
+ if (lodash.isEmpty(headers['x-userid']) ||
15
+ lodash.isEmpty(headers['x-username'])) {
16
+ if (process.env.NODE_ENV === 'dev' || process.env.NODE_ENV === 'uat') {
17
+ user = {
18
+ uid: configService.get('MOCK_UID'),
19
+ username: configService.get('MOCK_USERNAME'),
20
+ appId: configService.get('MOCK_APP_ID'),
21
+ tenantId: configService.get('MOCK_TENANT_ID'),
22
+ };
23
+ }
24
+ }
25
+ else {
26
+ user = {
27
+ uid: headers['x-userid'],
28
+ username: headers['x-username'],
29
+ appId: headers['x-appid'],
30
+ tenantId: headers['x-tenantid'],
31
+ };
32
+ }
33
+ return data ? user[data] : user;
34
+ }
35
+ exports.getOmniAuthData = getOmniAuthData;
@@ -0,0 +1 @@
1
+ export declare const OperationLog: (operation: string) => import("@nestjs/common").CustomDecorator<string>;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OperationLog = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const OperationLog = (operation) => (0, common_1.SetMetadata)('operation-log', operation);
6
+ exports.OperationLog = OperationLog;
@@ -0,0 +1,15 @@
1
+ import type { ApiPropertyOptions } from '@nestjs/swagger';
2
+ export declare function ApiBooleanProperty(options?: Omit<ApiPropertyOptions, 'type'>): PropertyDecorator;
3
+ export declare function ApiBooleanPropertyOptional(options?: Omit<ApiPropertyOptions, 'type' | 'required'>): PropertyDecorator;
4
+ export declare function ApiUUIDProperty(options?: Omit<ApiPropertyOptions, 'type' | 'format'> & Partial<{
5
+ each: boolean;
6
+ }>): PropertyDecorator;
7
+ export declare function ApiUUIDPropertyOptional(options?: Omit<ApiPropertyOptions, 'type' | 'format' | 'required'> & Partial<{
8
+ each: boolean;
9
+ }>): PropertyDecorator;
10
+ export declare function ApiEnumProperty<TEnum>(getEnum: () => TEnum, options?: Omit<ApiPropertyOptions, 'type'> & {
11
+ each?: boolean;
12
+ }): PropertyDecorator;
13
+ export declare function ApiEnumPropertyOptional<TEnum>(getEnum: () => TEnum, options?: Omit<ApiPropertyOptions, 'type' | 'required'> & {
14
+ each?: boolean;
15
+ }): PropertyDecorator;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ApiEnumPropertyOptional = exports.ApiEnumProperty = exports.ApiUUIDPropertyOptional = exports.ApiUUIDProperty = exports.ApiBooleanPropertyOptional = exports.ApiBooleanProperty = void 0;
4
+ const swagger_1 = require("@nestjs/swagger");
5
+ const utils_1 = require("../common/utils");
6
+ const field_decorators_1 = require("../decorators/field.decorators");
7
+ function ApiBooleanProperty(options = {}) {
8
+ return (0, swagger_1.ApiProperty)(Object.assign({ type: Boolean }, options));
9
+ }
10
+ exports.ApiBooleanProperty = ApiBooleanProperty;
11
+ function ApiBooleanPropertyOptional(options = {}) {
12
+ return ApiBooleanProperty(Object.assign({ required: false }, options));
13
+ }
14
+ exports.ApiBooleanPropertyOptional = ApiBooleanPropertyOptional;
15
+ function ApiUUIDProperty(options = {}) {
16
+ return (0, swagger_1.ApiProperty)(Object.assign({ type: options.each ? [String] : String, format: 'uuid', isArray: options.each }, options));
17
+ }
18
+ exports.ApiUUIDProperty = ApiUUIDProperty;
19
+ function ApiUUIDPropertyOptional(options = {}) {
20
+ return ApiUUIDProperty(Object.assign({ required: false }, options));
21
+ }
22
+ exports.ApiUUIDPropertyOptional = ApiUUIDPropertyOptional;
23
+ function ApiEnumProperty(getEnum, options = {}) {
24
+ const enumValue = getEnum();
25
+ options.description = (0, field_decorators_1.getEnumDescription)(enumValue);
26
+ return (0, swagger_1.ApiProperty)(Object.assign({ type: 'enum', enum: enumValue, enumName: (0, utils_1.getVariableName)(getEnum) }, options));
27
+ }
28
+ exports.ApiEnumProperty = ApiEnumProperty;
29
+ function ApiEnumPropertyOptional(getEnum, options = {}) {
30
+ return ApiEnumProperty(getEnum, Object.assign({ required: false }, options));
31
+ }
32
+ exports.ApiEnumPropertyOptional = ApiEnumPropertyOptional;
@@ -0,0 +1,3 @@
1
+ import type { CustomDecorator } from '@nestjs/common';
2
+ export declare const PUBLIC_ROUTE_KEY = "public_route";
3
+ export declare const PublicRoute: (isPublic?: boolean) => CustomDecorator;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PublicRoute = exports.PUBLIC_ROUTE_KEY = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ exports.PUBLIC_ROUTE_KEY = 'public_route';
6
+ const PublicRoute = (isPublic = false) => (0, common_1.SetMetadata)(exports.PUBLIC_ROUTE_KEY, isPublic);
7
+ exports.PublicRoute = PublicRoute;
@@ -0,0 +1,5 @@
1
+ import _ from 'lodash';
2
+ import type { IApiFile } from '../interfaces';
3
+ export declare function ApiFile(files: _.Many<IApiFile>, options?: Partial<{
4
+ isRequired: boolean;
5
+ }>): MethodDecorator;