@alba-cars/common-modules 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/README.md +42 -0
  2. package/dist/features/blog/data/dto/BlogDTO.d.ts +41 -0
  3. package/dist/features/blog/data/dto/BlogDTO.js +128 -0
  4. package/dist/features/newsletter/data/dto/NewsletterDTO.d.ts +17 -0
  5. package/dist/features/newsletter/data/dto/NewsletterDTO.js +79 -0
  6. package/dist/features/sales-team/data/dto/SalesAgentDTO.d.ts +47 -0
  7. package/dist/features/sales-team/data/dto/SalesAgentDTO.js +134 -0
  8. package/dist/features/showroom-visit/data/dto/ShowroomVisit.d.ts +28 -0
  9. package/dist/features/showroom-visit/data/dto/ShowroomVisit.js +119 -0
  10. package/dist/features/test-drive-request/data/dto/TestDriveRequestDTO.d.ts +45 -0
  11. package/dist/features/test-drive-request/data/dto/TestDriveRequestDTO.js +163 -0
  12. package/dist/features/test-drive-request/data/enums/index.d.ts +24 -0
  13. package/dist/features/test-drive-request/data/enums/index.js +29 -0
  14. package/dist/features/test-drive-request/data/models/TestDriveRequest.d.ts +14 -0
  15. package/dist/features/test-drive-request/data/models/TestDriveRequest.js +7 -0
  16. package/dist/features/test-drive-request/data/models/index.d.ts +2 -0
  17. package/dist/features/test-drive-request/data/models/index.js +5 -0
  18. package/dist/features/test-drive-request/data/utilities.d.ts +29 -0
  19. package/dist/features/test-drive-request/data/utilities.js +95 -0
  20. package/dist/features/vehicle/data/dto/BaseDTO.d.ts +10 -0
  21. package/dist/features/vehicle/data/dto/BaseDTO.js +42 -0
  22. package/dist/features/vehicle/data/dto/PaymentDTO.d.ts +52 -0
  23. package/dist/features/vehicle/data/dto/PaymentDTO.js +161 -0
  24. package/dist/features/vehicle/data/dto/UserDTO.d.ts +16 -0
  25. package/dist/features/vehicle/data/dto/UserDTO.js +53 -0
  26. package/dist/features/vehicle/data/dto/VehicleDTO.d.ts +103 -0
  27. package/dist/features/vehicle/data/dto/VehicleDTO.js +425 -0
  28. package/dist/features/vehicle/data/dto/VehicleFeatureCategoriesDTO.d.ts +39 -0
  29. package/dist/features/vehicle/data/dto/VehicleFeatureCategoriesDTO.js +114 -0
  30. package/dist/features/vehicle/data/dto/VehicleFeatureDTO.d.ts +38 -0
  31. package/dist/features/vehicle/data/dto/VehicleFeatureDTO.js +121 -0
  32. package/dist/features/vehicle/data/dto/VehicleFinanceDTO.d.ts +46 -0
  33. package/dist/features/vehicle/data/dto/VehicleFinanceDTO.js +143 -0
  34. package/dist/features/vehicle/data/dto/VehicleMakeDTO.d.ts +46 -0
  35. package/dist/features/vehicle/data/dto/VehicleMakeDTO.js +169 -0
  36. package/dist/features/vehicle/data/dto/VehicleMedia.d.ts +28 -0
  37. package/dist/features/vehicle/data/dto/VehicleMedia.js +119 -0
  38. package/dist/features/vehicle/data/dto/VehicleModelDTO.d.ts +52 -0
  39. package/dist/features/vehicle/data/dto/VehicleModelDTO.js +189 -0
  40. package/dist/features/vehicle/data/dto/VehicleOrderDTO.d.ts +34 -0
  41. package/dist/features/vehicle/data/dto/VehicleOrderDTO.js +139 -0
  42. package/dist/features/vehicle/data/dto/VehicleTypeDTO.d.ts +35 -0
  43. package/dist/features/vehicle/data/dto/VehicleTypeDTO.js +102 -0
  44. package/dist/features/vehicle/data/enums/index.d.ts +4 -0
  45. package/dist/features/vehicle/data/enums/index.js +8 -0
  46. package/dist/features/vehicle/data/models/Base.d.ts +12 -0
  47. package/dist/features/vehicle/data/models/Base.js +6 -0
  48. package/dist/features/vehicle/data/models/Payment.d.ts +18 -0
  49. package/dist/features/vehicle/data/models/Payment.js +7 -0
  50. package/dist/features/vehicle/data/models/User.d.ts +15 -0
  51. package/dist/features/vehicle/data/models/User.js +6 -0
  52. package/dist/features/vehicle/data/models/Vehicle.d.ts +42 -0
  53. package/dist/features/vehicle/data/models/Vehicle.js +7 -0
  54. package/dist/features/vehicle/data/models/VehicleBodyType.d.ts +8 -0
  55. package/dist/features/vehicle/data/models/VehicleBodyType.js +7 -0
  56. package/dist/features/vehicle/data/models/VehicleCategory.d.ts +6 -0
  57. package/dist/features/vehicle/data/models/VehicleCategory.js +7 -0
  58. package/dist/features/vehicle/data/models/VehicleFeature.d.ts +8 -0
  59. package/dist/features/vehicle/data/models/VehicleFeature.js +7 -0
  60. package/dist/features/vehicle/data/models/VehicleFeatureCategory.d.ts +6 -0
  61. package/dist/features/vehicle/data/models/VehicleFeatureCategory.js +7 -0
  62. package/dist/features/vehicle/data/models/VehicleFinance.d.ts +16 -0
  63. package/dist/features/vehicle/data/models/VehicleFinance.js +7 -0
  64. package/dist/features/vehicle/data/models/VehicleMake.d.ts +14 -0
  65. package/dist/features/vehicle/data/models/VehicleMake.js +7 -0
  66. package/dist/features/vehicle/data/models/VehicleMedia.d.ts +11 -0
  67. package/dist/features/vehicle/data/models/VehicleMedia.js +7 -0
  68. package/dist/features/vehicle/data/models/VehicleMetaData.d.ts +11 -0
  69. package/dist/features/vehicle/data/models/VehicleMetaData.js +7 -0
  70. package/dist/features/vehicle/data/models/VehicleModel.d.ts +17 -0
  71. package/dist/features/vehicle/data/models/VehicleModel.js +7 -0
  72. package/dist/features/vehicle/data/models/VehicleOrder.d.ts +14 -0
  73. package/dist/features/vehicle/data/models/VehicleOrder.js +7 -0
  74. package/dist/features/vehicle/data/models/index.d.ts +14 -0
  75. package/dist/features/vehicle/data/models/index.js +29 -0
  76. package/dist/features/vehicle/data/utilities.d.ts +209 -0
  77. package/dist/features/vehicle/data/utilities.js +706 -0
  78. package/dist/global/dto/BaseGetDTO.d.ts +8 -0
  79. package/dist/global/dto/BaseGetDTO.js +18 -0
  80. package/dist/global/utilities.d.ts +48 -0
  81. package/dist/global/utilities.js +138 -0
  82. package/dist/index.d.ts +18 -0
  83. package/dist/index.js +34 -0
  84. package/package.json +49 -0
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ // UserDTO.ts
3
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
4
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
5
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
6
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
7
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
8
+ };
9
+ var __metadata = (this && this.__metadata) || function (k, v) {
10
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.UserUpdateDTO = exports.UserCreateDTO = exports.UserGetDTO = void 0;
14
+ const class_validator_1 = require("class-validator");
15
+ const class_transformer_1 = require("class-transformer");
16
+ class UserGetDTO {
17
+ static fromEntity(entity) {
18
+ return (0, class_transformer_1.plainToClass)(UserGetDTO, entity);
19
+ }
20
+ toPlain() {
21
+ return (0, class_transformer_1.classToPlain)(this);
22
+ }
23
+ }
24
+ exports.UserGetDTO = UserGetDTO;
25
+ class UserCreateDTO {
26
+ validate() {
27
+ const errors = (0, class_validator_1.validateSync)(this);
28
+ return errors.map(error => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
29
+ }
30
+ static fromPlain(plain) {
31
+ return (0, class_transformer_1.plainToClass)(UserCreateDTO, plain);
32
+ }
33
+ }
34
+ __decorate([
35
+ (0, class_validator_1.IsString)(),
36
+ __metadata("design:type", String)
37
+ ], UserCreateDTO.prototype, "name", void 0);
38
+ exports.UserCreateDTO = UserCreateDTO;
39
+ class UserUpdateDTO {
40
+ validate() {
41
+ const errors = (0, class_validator_1.validateSync)(this);
42
+ return errors.map(error => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
43
+ }
44
+ static fromPlain(plain) {
45
+ return (0, class_transformer_1.plainToClass)(UserUpdateDTO, plain);
46
+ }
47
+ }
48
+ __decorate([
49
+ (0, class_validator_1.IsOptional)(),
50
+ (0, class_validator_1.IsString)(),
51
+ __metadata("design:type", String)
52
+ ], UserUpdateDTO.prototype, "name", void 0);
53
+ exports.UserUpdateDTO = UserUpdateDTO;
@@ -0,0 +1,103 @@
1
+ import { VehicleFilter, VehicleOptions, VehicleUniqueFilter } from '../utilities';
2
+ import { BaseCreateDTO, BaseUpdateDTO } from './BaseDTO';
3
+ import { DynamicMakeDTO } from './VehicleMakeDTO';
4
+ import { DynamicModelDTO } from './VehicleModelDTO';
5
+ import { DynamicVehicleBodyTypeDTO } from './VehicleTypeDTO';
6
+ import { VehicleMediaCreateDTO, VehicleMediaUpdateDTO } from './VehicleMedia';
7
+ export declare class VehicleGetDTO {
8
+ filter?: VehicleFilter;
9
+ options?: VehicleOptions;
10
+ validate(): string[];
11
+ static fromPlain(plain: Record<string, unknown>): VehicleGetDTO;
12
+ static toPlain(entity: any): Record<string, unknown>;
13
+ }
14
+ export declare class VehicleGetUniqueDTO {
15
+ filter?: VehicleUniqueFilter;
16
+ options?: Omit<VehicleOptions, 'page' | 'limit' | 'sort'>;
17
+ validate(): string[];
18
+ static fromPlain(plain: Record<string, unknown>): VehicleGetUniqueDTO;
19
+ static toPlain(entity: any): Record<string, unknown>;
20
+ }
21
+ export declare class VehicleMetaDataDTO {
22
+ metaTitle?: string;
23
+ metaDescription?: string;
24
+ metaKeywords?: string;
25
+ vehicleDescription: string;
26
+ others?: Record<string, string>;
27
+ validate(): string[];
28
+ static fromPlain(plain: Record<string, unknown>): VehicleMetaDataDTO;
29
+ static toPlain(entity: any): Record<string, unknown>;
30
+ }
31
+ export declare class VehicleCreateDTO extends BaseCreateDTO {
32
+ make: DynamicMakeDTO;
33
+ model: DynamicModelDTO;
34
+ bodyType: DynamicVehicleBodyTypeDTO;
35
+ vin: string;
36
+ chassisNumber: string;
37
+ mileage: number;
38
+ fuelType: string;
39
+ color: string;
40
+ engineCapacity: string;
41
+ numberOfCylinders: number;
42
+ cylinderCapacity: number;
43
+ doors: number;
44
+ seats: number;
45
+ keys: number;
46
+ wheelsType: string;
47
+ airbags: number;
48
+ transmission: string;
49
+ driveType: string;
50
+ emissions: string;
51
+ media?: VehicleMediaCreateDTO[];
52
+ year: number;
53
+ price: number;
54
+ status: string;
55
+ features?: string[];
56
+ metaData?: VehicleMetaDataDTO;
57
+ validate(): string[];
58
+ static fromPlain(plain: Record<string, unknown>): VehicleCreateDTO;
59
+ static toPlain(entity: any): Record<string, unknown>;
60
+ }
61
+ export declare class VehicleFeaturesUpdateDTO {
62
+ data: string[];
63
+ replace?: boolean;
64
+ filter?: string | string[];
65
+ validate(): string[];
66
+ static fromPlain(plain: Record<string, unknown>): VehicleFeaturesUpdateDTO;
67
+ static toPlain(entity: any): Record<string, unknown>;
68
+ }
69
+ export declare class VehicleUpdateDTO extends BaseUpdateDTO {
70
+ make: DynamicMakeDTO;
71
+ model: DynamicModelDTO;
72
+ bodyType: DynamicVehicleBodyTypeDTO;
73
+ vin: string;
74
+ chassisNumber: string;
75
+ mileage: number;
76
+ fuelType: string;
77
+ color: string;
78
+ engineCapacity: string;
79
+ numberOfCylinders: number;
80
+ cylinderCapacity: number;
81
+ doors: number;
82
+ seats: number;
83
+ keys: number;
84
+ wheelsType: string;
85
+ airbags: number;
86
+ transmission: string;
87
+ driveType: string;
88
+ emissions: string;
89
+ media: VehicleMediaUpdateDTO;
90
+ year: number;
91
+ price: number;
92
+ status: string;
93
+ features: VehicleFeaturesUpdateDTO;
94
+ metaData: VehicleMetaDataDTO;
95
+ validate(): string[];
96
+ static fromPlain(plain: Record<string, unknown>): VehicleUpdateDTO;
97
+ static toPlain(entity: any): Record<string, unknown>;
98
+ }
99
+ export declare class DynamicVehicleDTO {
100
+ existingId?: string;
101
+ new?: VehicleCreateDTO;
102
+ validate(): void;
103
+ }
@@ -0,0 +1,425 @@
1
+ "use strict";
2
+ // VehicleDTO.ts
3
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
4
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
5
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
6
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
7
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
8
+ };
9
+ var __metadata = (this && this.__metadata) || function (k, v) {
10
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.DynamicVehicleDTO = exports.VehicleUpdateDTO = exports.VehicleFeaturesUpdateDTO = exports.VehicleCreateDTO = exports.VehicleMetaDataDTO = exports.VehicleGetUniqueDTO = exports.VehicleGetDTO = void 0;
14
+ const class_validator_1 = require("class-validator");
15
+ const class_transformer_1 = require("class-transformer");
16
+ const BaseDTO_1 = require("./BaseDTO");
17
+ const VehicleMakeDTO_1 = require("./VehicleMakeDTO");
18
+ const VehicleModelDTO_1 = require("./VehicleModelDTO");
19
+ const VehicleTypeDTO_1 = require("./VehicleTypeDTO");
20
+ const VehicleMedia_1 = require("./VehicleMedia");
21
+ class VehicleGetDTO {
22
+ validate() {
23
+ const errors = (0, class_validator_1.validateSync)(this);
24
+ return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
25
+ }
26
+ static fromPlain(plain) {
27
+ return (0, class_transformer_1.plainToClass)(VehicleGetDTO, plain);
28
+ }
29
+ static toPlain(entity) {
30
+ return (0, class_transformer_1.instanceToPlain)(entity);
31
+ }
32
+ }
33
+ exports.VehicleGetDTO = VehicleGetDTO;
34
+ class VehicleGetUniqueDTO {
35
+ validate() {
36
+ const errors = (0, class_validator_1.validateSync)(this);
37
+ return errors.map(error => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
38
+ }
39
+ static fromPlain(plain) {
40
+ return (0, class_transformer_1.plainToClass)(VehicleGetUniqueDTO, plain);
41
+ }
42
+ static toPlain(entity) {
43
+ return (0, class_transformer_1.instanceToPlain)(entity);
44
+ }
45
+ }
46
+ exports.VehicleGetUniqueDTO = VehicleGetUniqueDTO;
47
+ class VehicleMetaDataDTO {
48
+ validate() {
49
+ const errors = (0, class_validator_1.validateSync)(this);
50
+ return errors.map(error => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
51
+ }
52
+ static fromPlain(plain) {
53
+ return (0, class_transformer_1.plainToClass)(VehicleMetaDataDTO, plain);
54
+ }
55
+ static toPlain(entity) {
56
+ return (0, class_transformer_1.instanceToPlain)(entity);
57
+ }
58
+ }
59
+ __decorate([
60
+ (0, class_validator_1.IsOptional)(),
61
+ (0, class_validator_1.IsString)(),
62
+ __metadata("design:type", String)
63
+ ], VehicleMetaDataDTO.prototype, "metaTitle", void 0);
64
+ __decorate([
65
+ (0, class_validator_1.IsOptional)(),
66
+ (0, class_validator_1.IsString)(),
67
+ __metadata("design:type", String)
68
+ ], VehicleMetaDataDTO.prototype, "metaDescription", void 0);
69
+ __decorate([
70
+ (0, class_validator_1.IsOptional)(),
71
+ (0, class_validator_1.IsString)(),
72
+ __metadata("design:type", String)
73
+ ], VehicleMetaDataDTO.prototype, "metaKeywords", void 0);
74
+ __decorate([
75
+ (0, class_validator_1.IsNotEmpty)(),
76
+ (0, class_validator_1.IsString)(),
77
+ __metadata("design:type", String)
78
+ ], VehicleMetaDataDTO.prototype, "vehicleDescription", void 0);
79
+ __decorate([
80
+ (0, class_validator_1.IsOptional)(),
81
+ (0, class_validator_1.IsArray)(),
82
+ (0, class_validator_1.ValidateNested)({ each: true }),
83
+ (0, class_transformer_1.Type)(() => Object) // This transforms each object in the array to the OtherDetailsDTO class
84
+ ,
85
+ __metadata("design:type", Object)
86
+ ], VehicleMetaDataDTO.prototype, "others", void 0);
87
+ exports.VehicleMetaDataDTO = VehicleMetaDataDTO;
88
+ class VehicleCreateDTO extends BaseDTO_1.BaseCreateDTO {
89
+ validate() {
90
+ const errors = (0, class_validator_1.validateSync)(this);
91
+ return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
92
+ }
93
+ static fromPlain(plain) {
94
+ return (0, class_transformer_1.plainToClass)(VehicleCreateDTO, plain);
95
+ }
96
+ static toPlain(entity) {
97
+ return (0, class_transformer_1.instanceToPlain)(entity);
98
+ }
99
+ }
100
+ __decorate([
101
+ (0, class_validator_1.IsNotEmpty)(),
102
+ (0, class_validator_1.ValidateNested)(),
103
+ (0, class_transformer_1.Type)(() => VehicleMakeDTO_1.DynamicMakeDTO),
104
+ __metadata("design:type", VehicleMakeDTO_1.DynamicMakeDTO)
105
+ ], VehicleCreateDTO.prototype, "make", void 0);
106
+ __decorate([
107
+ (0, class_validator_1.IsNotEmpty)(),
108
+ (0, class_validator_1.ValidateNested)(),
109
+ (0, class_transformer_1.Type)(() => VehicleModelDTO_1.DynamicModelDTO),
110
+ __metadata("design:type", VehicleModelDTO_1.DynamicModelDTO)
111
+ ], VehicleCreateDTO.prototype, "model", void 0);
112
+ __decorate([
113
+ (0, class_validator_1.IsNotEmpty)(),
114
+ (0, class_validator_1.ValidateNested)(),
115
+ (0, class_transformer_1.Type)(() => VehicleTypeDTO_1.DynamicVehicleBodyTypeDTO),
116
+ __metadata("design:type", VehicleTypeDTO_1.DynamicVehicleBodyTypeDTO)
117
+ ], VehicleCreateDTO.prototype, "bodyType", void 0);
118
+ __decorate([
119
+ (0, class_validator_1.IsNotEmpty)(),
120
+ (0, class_validator_1.IsString)(),
121
+ __metadata("design:type", String)
122
+ ], VehicleCreateDTO.prototype, "vin", void 0);
123
+ __decorate([
124
+ (0, class_validator_1.IsNotEmpty)(),
125
+ (0, class_validator_1.IsString)(),
126
+ __metadata("design:type", String)
127
+ ], VehicleCreateDTO.prototype, "chassisNumber", void 0);
128
+ __decorate([
129
+ (0, class_validator_1.IsNotEmpty)(),
130
+ (0, class_validator_1.IsNumber)(),
131
+ __metadata("design:type", Number)
132
+ ], VehicleCreateDTO.prototype, "mileage", void 0);
133
+ __decorate([
134
+ (0, class_validator_1.IsNotEmpty)(),
135
+ (0, class_validator_1.IsString)(),
136
+ __metadata("design:type", String)
137
+ ], VehicleCreateDTO.prototype, "fuelType", void 0);
138
+ __decorate([
139
+ (0, class_validator_1.IsNotEmpty)(),
140
+ (0, class_validator_1.IsString)(),
141
+ __metadata("design:type", String)
142
+ ], VehicleCreateDTO.prototype, "color", void 0);
143
+ __decorate([
144
+ (0, class_validator_1.IsNotEmpty)(),
145
+ (0, class_validator_1.IsString)(),
146
+ __metadata("design:type", String)
147
+ ], VehicleCreateDTO.prototype, "engineCapacity", void 0);
148
+ __decorate([
149
+ (0, class_validator_1.IsNotEmpty)(),
150
+ (0, class_validator_1.IsNumber)(),
151
+ __metadata("design:type", Number)
152
+ ], VehicleCreateDTO.prototype, "numberOfCylinders", void 0);
153
+ __decorate([
154
+ (0, class_validator_1.IsNotEmpty)(),
155
+ (0, class_validator_1.IsNumber)(),
156
+ __metadata("design:type", Number)
157
+ ], VehicleCreateDTO.prototype, "cylinderCapacity", void 0);
158
+ __decorate([
159
+ (0, class_validator_1.IsNotEmpty)(),
160
+ (0, class_validator_1.IsNumber)(),
161
+ __metadata("design:type", Number)
162
+ ], VehicleCreateDTO.prototype, "doors", void 0);
163
+ __decorate([
164
+ (0, class_validator_1.IsNotEmpty)(),
165
+ (0, class_validator_1.IsNumber)(),
166
+ __metadata("design:type", Number)
167
+ ], VehicleCreateDTO.prototype, "seats", void 0);
168
+ __decorate([
169
+ (0, class_validator_1.IsNotEmpty)(),
170
+ (0, class_validator_1.IsNumber)(),
171
+ __metadata("design:type", Number)
172
+ ], VehicleCreateDTO.prototype, "keys", void 0);
173
+ __decorate([
174
+ (0, class_validator_1.IsNotEmpty)(),
175
+ (0, class_validator_1.IsString)(),
176
+ __metadata("design:type", String)
177
+ ], VehicleCreateDTO.prototype, "wheelsType", void 0);
178
+ __decorate([
179
+ (0, class_validator_1.IsNotEmpty)(),
180
+ (0, class_validator_1.IsNumber)(),
181
+ __metadata("design:type", Number)
182
+ ], VehicleCreateDTO.prototype, "airbags", void 0);
183
+ __decorate([
184
+ (0, class_validator_1.IsNotEmpty)(),
185
+ (0, class_validator_1.IsString)(),
186
+ __metadata("design:type", String)
187
+ ], VehicleCreateDTO.prototype, "transmission", void 0);
188
+ __decorate([
189
+ (0, class_validator_1.IsNotEmpty)(),
190
+ (0, class_validator_1.IsString)(),
191
+ __metadata("design:type", String)
192
+ ], VehicleCreateDTO.prototype, "driveType", void 0);
193
+ __decorate([
194
+ (0, class_validator_1.IsNotEmpty)(),
195
+ (0, class_validator_1.IsString)(),
196
+ __metadata("design:type", String)
197
+ ], VehicleCreateDTO.prototype, "emissions", void 0);
198
+ __decorate([
199
+ (0, class_validator_1.IsArray)(),
200
+ (0, class_validator_1.IsOptional)(),
201
+ (0, class_validator_1.ValidateNested)({ each: true }),
202
+ (0, class_transformer_1.Type)(() => VehicleMedia_1.VehicleMediaCreateDTO),
203
+ __metadata("design:type", Array)
204
+ ], VehicleCreateDTO.prototype, "media", void 0);
205
+ __decorate([
206
+ (0, class_validator_1.IsNotEmpty)(),
207
+ (0, class_validator_1.IsNumber)(),
208
+ __metadata("design:type", Number)
209
+ ], VehicleCreateDTO.prototype, "year", void 0);
210
+ __decorate([
211
+ (0, class_validator_1.IsNotEmpty)(),
212
+ (0, class_validator_1.IsNumber)(),
213
+ __metadata("design:type", Number)
214
+ ], VehicleCreateDTO.prototype, "price", void 0);
215
+ __decorate([
216
+ (0, class_validator_1.IsNotEmpty)(),
217
+ (0, class_validator_1.IsString)(),
218
+ __metadata("design:type", String)
219
+ ], VehicleCreateDTO.prototype, "status", void 0);
220
+ __decorate([
221
+ (0, class_validator_1.IsArray)(),
222
+ (0, class_validator_1.IsOptional)(),
223
+ (0, class_validator_1.IsString)({ each: true }),
224
+ __metadata("design:type", Array)
225
+ ], VehicleCreateDTO.prototype, "features", void 0);
226
+ __decorate([
227
+ (0, class_validator_1.ValidateNested)(),
228
+ (0, class_validator_1.IsOptional)(),
229
+ (0, class_transformer_1.Type)(() => VehicleMetaDataDTO),
230
+ __metadata("design:type", VehicleMetaDataDTO)
231
+ ], VehicleCreateDTO.prototype, "metaData", void 0);
232
+ exports.VehicleCreateDTO = VehicleCreateDTO;
233
+ class VehicleFeaturesUpdateDTO {
234
+ validate() {
235
+ const errors = (0, class_validator_1.validateSync)(this);
236
+ return errors.map(error => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
237
+ }
238
+ static fromPlain(plain) {
239
+ return (0, class_transformer_1.plainToClass)(VehicleFeaturesUpdateDTO, plain);
240
+ }
241
+ static toPlain(entity) {
242
+ return (0, class_transformer_1.instanceToPlain)(entity);
243
+ }
244
+ }
245
+ __decorate([
246
+ (0, class_validator_1.IsArray)(),
247
+ (0, class_validator_1.IsString)({ each: true }),
248
+ __metadata("design:type", Array)
249
+ ], VehicleFeaturesUpdateDTO.prototype, "data", void 0);
250
+ __decorate([
251
+ (0, class_validator_1.IsOptional)(),
252
+ (0, class_validator_1.IsBoolean)(),
253
+ __metadata("design:type", Boolean)
254
+ ], VehicleFeaturesUpdateDTO.prototype, "replace", void 0);
255
+ __decorate([
256
+ (0, class_validator_1.IsOptional)(),
257
+ (0, class_validator_1.IsString)({ each: true }),
258
+ (0, class_transformer_1.Transform)(({ value }) => Array.isArray(value) ? value : [value]),
259
+ __metadata("design:type", Object)
260
+ ], VehicleFeaturesUpdateDTO.prototype, "filter", void 0);
261
+ exports.VehicleFeaturesUpdateDTO = VehicleFeaturesUpdateDTO;
262
+ class VehicleUpdateDTO extends BaseDTO_1.BaseUpdateDTO {
263
+ validate() {
264
+ const errors = (0, class_validator_1.validateSync)(this);
265
+ return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
266
+ }
267
+ static fromPlain(plain) {
268
+ return (0, class_transformer_1.plainToClass)(VehicleUpdateDTO, plain);
269
+ }
270
+ static toPlain(entity) {
271
+ return (0, class_transformer_1.instanceToPlain)(entity);
272
+ }
273
+ }
274
+ __decorate([
275
+ (0, class_validator_1.IsOptional)(),
276
+ (0, class_validator_1.ValidateNested)(),
277
+ (0, class_transformer_1.Type)(() => VehicleMakeDTO_1.DynamicMakeDTO),
278
+ __metadata("design:type", VehicleMakeDTO_1.DynamicMakeDTO)
279
+ ], VehicleUpdateDTO.prototype, "make", void 0);
280
+ __decorate([
281
+ (0, class_validator_1.IsOptional)(),
282
+ (0, class_validator_1.ValidateNested)(),
283
+ (0, class_transformer_1.Type)(() => VehicleModelDTO_1.DynamicModelDTO),
284
+ __metadata("design:type", VehicleModelDTO_1.DynamicModelDTO)
285
+ ], VehicleUpdateDTO.prototype, "model", void 0);
286
+ __decorate([
287
+ (0, class_validator_1.IsOptional)(),
288
+ (0, class_validator_1.ValidateNested)(),
289
+ (0, class_transformer_1.Type)(() => VehicleTypeDTO_1.DynamicVehicleBodyTypeDTO),
290
+ __metadata("design:type", VehicleTypeDTO_1.DynamicVehicleBodyTypeDTO)
291
+ ], VehicleUpdateDTO.prototype, "bodyType", void 0);
292
+ __decorate([
293
+ (0, class_validator_1.IsOptional)(),
294
+ (0, class_validator_1.IsString)(),
295
+ __metadata("design:type", String)
296
+ ], VehicleUpdateDTO.prototype, "vin", void 0);
297
+ __decorate([
298
+ (0, class_validator_1.IsOptional)(),
299
+ (0, class_validator_1.IsString)(),
300
+ __metadata("design:type", String)
301
+ ], VehicleUpdateDTO.prototype, "chassisNumber", void 0);
302
+ __decorate([
303
+ (0, class_validator_1.IsOptional)(),
304
+ (0, class_validator_1.IsNumber)(),
305
+ __metadata("design:type", Number)
306
+ ], VehicleUpdateDTO.prototype, "mileage", void 0);
307
+ __decorate([
308
+ (0, class_validator_1.IsOptional)(),
309
+ (0, class_validator_1.IsString)(),
310
+ __metadata("design:type", String)
311
+ ], VehicleUpdateDTO.prototype, "fuelType", void 0);
312
+ __decorate([
313
+ (0, class_validator_1.IsOptional)(),
314
+ (0, class_validator_1.IsString)(),
315
+ __metadata("design:type", String)
316
+ ], VehicleUpdateDTO.prototype, "color", void 0);
317
+ __decorate([
318
+ (0, class_validator_1.IsOptional)(),
319
+ (0, class_validator_1.IsString)(),
320
+ __metadata("design:type", String)
321
+ ], VehicleUpdateDTO.prototype, "engineCapacity", void 0);
322
+ __decorate([
323
+ (0, class_validator_1.IsOptional)(),
324
+ (0, class_validator_1.IsNumber)(),
325
+ __metadata("design:type", Number)
326
+ ], VehicleUpdateDTO.prototype, "numberOfCylinders", void 0);
327
+ __decorate([
328
+ (0, class_validator_1.IsOptional)(),
329
+ (0, class_validator_1.IsNumber)(),
330
+ __metadata("design:type", Number)
331
+ ], VehicleUpdateDTO.prototype, "cylinderCapacity", void 0);
332
+ __decorate([
333
+ (0, class_validator_1.IsOptional)(),
334
+ (0, class_validator_1.IsNumber)(),
335
+ __metadata("design:type", Number)
336
+ ], VehicleUpdateDTO.prototype, "doors", void 0);
337
+ __decorate([
338
+ (0, class_validator_1.IsOptional)(),
339
+ (0, class_validator_1.IsNumber)(),
340
+ __metadata("design:type", Number)
341
+ ], VehicleUpdateDTO.prototype, "seats", void 0);
342
+ __decorate([
343
+ (0, class_validator_1.IsOptional)(),
344
+ (0, class_validator_1.IsNumber)(),
345
+ __metadata("design:type", Number)
346
+ ], VehicleUpdateDTO.prototype, "keys", void 0);
347
+ __decorate([
348
+ (0, class_validator_1.IsOptional)(),
349
+ (0, class_validator_1.IsString)(),
350
+ __metadata("design:type", String)
351
+ ], VehicleUpdateDTO.prototype, "wheelsType", void 0);
352
+ __decorate([
353
+ (0, class_validator_1.IsOptional)(),
354
+ (0, class_validator_1.IsNumber)(),
355
+ __metadata("design:type", Number)
356
+ ], VehicleUpdateDTO.prototype, "airbags", void 0);
357
+ __decorate([
358
+ (0, class_validator_1.IsOptional)(),
359
+ (0, class_validator_1.IsString)(),
360
+ __metadata("design:type", String)
361
+ ], VehicleUpdateDTO.prototype, "transmission", void 0);
362
+ __decorate([
363
+ (0, class_validator_1.IsOptional)(),
364
+ (0, class_validator_1.IsString)(),
365
+ __metadata("design:type", String)
366
+ ], VehicleUpdateDTO.prototype, "driveType", void 0);
367
+ __decorate([
368
+ (0, class_validator_1.IsOptional)(),
369
+ (0, class_validator_1.IsString)(),
370
+ __metadata("design:type", String)
371
+ ], VehicleUpdateDTO.prototype, "emissions", void 0);
372
+ __decorate([
373
+ (0, class_validator_1.IsOptional)(),
374
+ (0, class_validator_1.IsArray)(),
375
+ (0, class_validator_1.ValidateNested)({ each: true }),
376
+ (0, class_transformer_1.Type)(() => VehicleMedia_1.VehicleMediaUpdateDTO),
377
+ __metadata("design:type", VehicleMedia_1.VehicleMediaUpdateDTO)
378
+ ], VehicleUpdateDTO.prototype, "media", void 0);
379
+ __decorate([
380
+ (0, class_validator_1.IsOptional)(),
381
+ (0, class_validator_1.IsNumber)(),
382
+ __metadata("design:type", Number)
383
+ ], VehicleUpdateDTO.prototype, "year", void 0);
384
+ __decorate([
385
+ (0, class_validator_1.IsOptional)(),
386
+ (0, class_validator_1.IsNumber)(),
387
+ __metadata("design:type", Number)
388
+ ], VehicleUpdateDTO.prototype, "price", void 0);
389
+ __decorate([
390
+ (0, class_validator_1.IsOptional)(),
391
+ (0, class_validator_1.IsString)(),
392
+ __metadata("design:type", String)
393
+ ], VehicleUpdateDTO.prototype, "status", void 0);
394
+ __decorate([
395
+ (0, class_validator_1.IsOptional)(),
396
+ (0, class_validator_1.ValidateNested)(),
397
+ (0, class_transformer_1.Type)(() => VehicleFeaturesUpdateDTO),
398
+ __metadata("design:type", VehicleFeaturesUpdateDTO)
399
+ ], VehicleUpdateDTO.prototype, "features", void 0);
400
+ __decorate([
401
+ (0, class_validator_1.IsOptional)(),
402
+ (0, class_validator_1.ValidateNested)(),
403
+ (0, class_transformer_1.Type)(() => VehicleMetaDataDTO),
404
+ __metadata("design:type", VehicleMetaDataDTO)
405
+ ], VehicleUpdateDTO.prototype, "metaData", void 0);
406
+ exports.VehicleUpdateDTO = VehicleUpdateDTO;
407
+ class DynamicVehicleDTO {
408
+ validate() {
409
+ if (!this.existingId && !this.new) {
410
+ throw new Error("Either an existing vehicle or new vehicle details must be provided.");
411
+ }
412
+ }
413
+ }
414
+ __decorate([
415
+ (0, class_validator_1.IsString)(),
416
+ (0, class_validator_1.IsOptional)(),
417
+ __metadata("design:type", String)
418
+ ], DynamicVehicleDTO.prototype, "existingId", void 0);
419
+ __decorate([
420
+ (0, class_validator_1.ValidateNested)(),
421
+ (0, class_transformer_1.Type)(() => VehicleCreateDTO),
422
+ (0, class_validator_1.IsOptional)(),
423
+ __metadata("design:type", VehicleCreateDTO)
424
+ ], DynamicVehicleDTO.prototype, "new", void 0);
425
+ exports.DynamicVehicleDTO = DynamicVehicleDTO;
@@ -0,0 +1,39 @@
1
+ import { VehicleFeatureCategoryFilter, VehicleFeatureCategoryOptions, VehicleFeatureCategoryUniqueFilter } from '../utilities';
2
+ import { BaseCreateDTO, BaseUpdateDTO } from './BaseDTO';
3
+ export declare class VehicleFeatureCategoryGetDTO {
4
+ filter?: VehicleFeatureCategoryFilter;
5
+ options?: VehicleFeatureCategoryOptions;
6
+ validate(): string[];
7
+ static fromPlain(plain: Record<string, unknown>): VehicleFeatureCategoryGetDTO;
8
+ static toPlain(entity: any): Record<string, unknown>;
9
+ }
10
+ export declare class VehicleFeatureCategoryGetUniqueDTO {
11
+ filter?: VehicleFeatureCategoryUniqueFilter;
12
+ options?: Omit<VehicleFeatureCategoryOptions, 'page' | 'limit' | 'sort'>;
13
+ validate(): string[];
14
+ static fromPlain(plain: Record<string, unknown>): VehicleFeatureCategoryGetUniqueDTO;
15
+ static toPlain(entity: any): Record<string, unknown>;
16
+ }
17
+ export declare class VehicleFeatureCategoryCreateDTO extends BaseCreateDTO {
18
+ name: string;
19
+ validate(): string[];
20
+ static fromPlain(plain: Record<string, unknown>): VehicleFeatureCategoryCreateDTO;
21
+ static toPlain(entity: any): Record<string, unknown>;
22
+ }
23
+ export declare class VehicleFeatureCategoryUpdateDTO extends BaseUpdateDTO {
24
+ name?: string;
25
+ validate(): string[];
26
+ static fromPlain(plain: Record<string, unknown>): VehicleFeatureCategoryUpdateDTO;
27
+ static toPlain(entity: any): Record<string, unknown>;
28
+ }
29
+ export declare class DynamicVehicleFeatureCategoryDTO {
30
+ constructor(payload: {
31
+ existingId?: string;
32
+ new?: VehicleFeatureCategoryCreateDTO;
33
+ });
34
+ existingId?: string;
35
+ new?: VehicleFeatureCategoryCreateDTO;
36
+ validate(): void;
37
+ static fromPlain(plain: Record<string, unknown>): DynamicVehicleFeatureCategoryDTO;
38
+ static toPlain(entity: any): Record<string, unknown>;
39
+ }