@alba-cars/common-modules 1.3.8 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/network/endpoint-config.d.ts +2 -0
- package/dist/core/network/endpoint-config.js +14 -0
- package/dist/features/models/User.d.ts +4 -0
- package/dist/features/models/UserFavoriteVehicle.d.ts +9 -0
- package/dist/features/models/UserFavoriteVehicle.js +6 -0
- package/dist/features/models/Vehicle.d.ts +4 -0
- package/dist/features/models/VehicleMedia.d.ts +1 -0
- package/dist/features/vehicle/data/dto/VehicleDTO.d.ts +3 -0
- package/dist/features/vehicle/data/dto/VehicleDTO.js +13 -0
- package/dist/features/vehicle/data/dto/VehicleFavoritesDTO.d.ts +14 -0
- package/dist/features/vehicle/data/dto/VehicleFavoritesDTO.js +60 -0
- package/dist/features/vehicle/data/dto/VehicleMedia.d.ts +1 -1
- package/dist/features/vehicle/data/dto/index.d.ts +1 -0
- package/dist/features/vehicle/data/dto/index.js +1 -0
- package/package.json +1 -1
|
@@ -28,6 +28,8 @@ type APIEndpointType = {
|
|
|
28
28
|
vehicleMeta: BaseEndpoint;
|
|
29
29
|
vehicleInspection: BaseEndpoint;
|
|
30
30
|
vehicleOrder: BaseEndpoint;
|
|
31
|
+
vehicleFeatures: BaseEndpoint;
|
|
32
|
+
vehicleFeatureCategories: BaseEndpoint;
|
|
31
33
|
vehicleType: BaseEndpoint;
|
|
32
34
|
carOptions: BaseEndpoint;
|
|
33
35
|
payment: BaseEndpoint;
|
|
@@ -36,6 +36,20 @@ exports.API_ENDPOINTS = {
|
|
|
36
36
|
deleteOne: (id) => `/vehicle/makes/${id}`,
|
|
37
37
|
updateOne: (id) => `/vehicle/makes/${id}`,
|
|
38
38
|
},
|
|
39
|
+
vehicleFeatures: {
|
|
40
|
+
getAll: `/vehicle/features`,
|
|
41
|
+
create: `/vehicle/features`,
|
|
42
|
+
getOne: (id) => `/vehicle/features/${id}`,
|
|
43
|
+
deleteOne: (id) => `/vehicle/features/${id}`,
|
|
44
|
+
updateOne: (id) => `/vehicle/features/${id}`,
|
|
45
|
+
},
|
|
46
|
+
vehicleFeatureCategories: {
|
|
47
|
+
getAll: `/vehicle/feature-categories`,
|
|
48
|
+
create: `/vehicle/feature-categories`,
|
|
49
|
+
getOne: (id) => `/vehicle/feature-categories/${id}`,
|
|
50
|
+
deleteOne: (id) => `/vehicle/feature-categories/${id}`,
|
|
51
|
+
updateOne: (id) => `/vehicle/feature-categories/${id}`,
|
|
52
|
+
},
|
|
39
53
|
vehicleModel: {
|
|
40
54
|
getAll: `/vehicle/models`,
|
|
41
55
|
create: `/vehicle/models`,
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { Role } from "./Roles";
|
|
2
|
+
import { UserFavoriteVehicle } from "./UserFavoriteVehicle";
|
|
3
|
+
import { Vehicle } from "./Vehicle";
|
|
2
4
|
export interface User {
|
|
3
5
|
id: string;
|
|
4
6
|
refId: number;
|
|
@@ -11,4 +13,6 @@ export interface User {
|
|
|
11
13
|
lastLogin?: Date;
|
|
12
14
|
createdAt: Date;
|
|
13
15
|
updatedAt: Date;
|
|
16
|
+
vehicleFavorites?: UserFavoriteVehicle[];
|
|
17
|
+
favoriteVehicles?: Vehicle[];
|
|
14
18
|
}
|
|
@@ -7,6 +7,8 @@ import { VehicleMedia } from "./VehicleMedia";
|
|
|
7
7
|
import { VehicleMetaData } from "./VehicleMetaData";
|
|
8
8
|
import { VehicleModel } from "./VehicleModel";
|
|
9
9
|
import { VehicleOrder } from "./VehicleOrder";
|
|
10
|
+
import { UserFavoriteVehicle } from "./UserFavoriteVehicle";
|
|
11
|
+
import { User } from "./User";
|
|
10
12
|
export declare class Vehicle extends BaseModel {
|
|
11
13
|
referenceNumber?: string;
|
|
12
14
|
slug: string;
|
|
@@ -41,6 +43,8 @@ export declare class Vehicle extends BaseModel {
|
|
|
41
43
|
finance?: VehicleFinance;
|
|
42
44
|
orders?: VehicleOrder[];
|
|
43
45
|
draft?: VehicleDraft;
|
|
46
|
+
vehicleFavorites?: UserFavoriteVehicle[];
|
|
47
|
+
favoritedBy?: User[];
|
|
44
48
|
static fromPlain(plain: Record<string, unknown>): Vehicle;
|
|
45
49
|
toPlain(): Record<string, unknown>;
|
|
46
50
|
}
|
|
@@ -4,6 +4,7 @@ import { DynamicModelDTO } from "./VehicleModelDTO";
|
|
|
4
4
|
import { DynamicVehicleBodyTypeDTO } from "./VehicleTypeDTO";
|
|
5
5
|
import { VehicleMediaCreateDTO, VehicleMediaUpdateDTO } from "./VehicleMedia";
|
|
6
6
|
import { VehicleFilter, VehicleOptions, VehicleUniqueFilter } from "./VehicleFilterDTO";
|
|
7
|
+
import { VehicleFinanceCreateDTO } from "./VehicleFinanceDTO";
|
|
7
8
|
export declare class VehicleGetDTO {
|
|
8
9
|
filter?: VehicleFilter;
|
|
9
10
|
options?: VehicleOptions;
|
|
@@ -53,6 +54,7 @@ export declare class VehicleCreateDTO extends BaseCreateDTO {
|
|
|
53
54
|
driveType: string;
|
|
54
55
|
emissions: string;
|
|
55
56
|
media?: VehicleMediaCreateDTO[];
|
|
57
|
+
finance?: VehicleFinanceCreateDTO;
|
|
56
58
|
year: number;
|
|
57
59
|
price: number;
|
|
58
60
|
status: string;
|
|
@@ -101,6 +103,7 @@ export declare class VehicleUpdateDTO extends BaseUpdateDTO {
|
|
|
101
103
|
pageNo?: number;
|
|
102
104
|
features: VehicleFeaturesUpdateDTO;
|
|
103
105
|
metaData: VehicleMetaDataDTO;
|
|
106
|
+
favoritedBy?: string | string[];
|
|
104
107
|
validate(): string[];
|
|
105
108
|
static fromPlain(plain: Record<string, unknown>): VehicleUpdateDTO;
|
|
106
109
|
static toPlain(entity: any): Record<string, unknown>;
|
|
@@ -18,6 +18,7 @@ const VehicleMakeDTO_1 = require("./VehicleMakeDTO");
|
|
|
18
18
|
const VehicleModelDTO_1 = require("./VehicleModelDTO");
|
|
19
19
|
const VehicleTypeDTO_1 = require("./VehicleTypeDTO");
|
|
20
20
|
const VehicleMedia_1 = require("./VehicleMedia");
|
|
21
|
+
const VehicleFinanceDTO_1 = require("./VehicleFinanceDTO");
|
|
21
22
|
class VehicleGetDTO {
|
|
22
23
|
constructor(shouldIncludeValidate = true) {
|
|
23
24
|
if (shouldIncludeValidate) {
|
|
@@ -225,6 +226,12 @@ __decorate([
|
|
|
225
226
|
(0, class_transformer_1.Type)(() => VehicleMedia_1.VehicleMediaCreateDTO),
|
|
226
227
|
__metadata("design:type", Array)
|
|
227
228
|
], VehicleCreateDTO.prototype, "media", void 0);
|
|
229
|
+
__decorate([
|
|
230
|
+
(0, class_validator_1.IsOptional)(),
|
|
231
|
+
(0, class_validator_1.ValidateNested)({ each: true }),
|
|
232
|
+
(0, class_transformer_1.Type)(() => VehicleMedia_1.VehicleMediaCreateDTO),
|
|
233
|
+
__metadata("design:type", VehicleFinanceDTO_1.VehicleFinanceCreateDTO)
|
|
234
|
+
], VehicleCreateDTO.prototype, "finance", void 0);
|
|
228
235
|
__decorate([
|
|
229
236
|
(0, class_validator_1.IsNotEmpty)(),
|
|
230
237
|
(0, class_validator_1.IsNumber)(),
|
|
@@ -447,6 +454,12 @@ __decorate([
|
|
|
447
454
|
(0, class_transformer_1.Type)(() => VehicleMetaDataDTO),
|
|
448
455
|
__metadata("design:type", VehicleMetaDataDTO)
|
|
449
456
|
], VehicleUpdateDTO.prototype, "metaData", void 0);
|
|
457
|
+
__decorate([
|
|
458
|
+
(0, class_validator_1.IsOptional)(),
|
|
459
|
+
(0, class_validator_1.IsUUID)(undefined, { each: true }),
|
|
460
|
+
(0, class_transformer_1.Transform)(({ value }) => Array.isArray(value) ? value : [value]),
|
|
461
|
+
__metadata("design:type", Object)
|
|
462
|
+
], VehicleUpdateDTO.prototype, "favoritedBy", void 0);
|
|
450
463
|
exports.VehicleUpdateDTO = VehicleUpdateDTO;
|
|
451
464
|
class DynamicVehicleDTO {
|
|
452
465
|
validate() {
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare class VehicleFavoriteCreateDTO {
|
|
2
|
+
userId: string;
|
|
3
|
+
vehicleId: string;
|
|
4
|
+
validate(): string[];
|
|
5
|
+
static fromPlain(plain: Record<string, unknown>): VehicleFavoriteCreateDTO;
|
|
6
|
+
toPlain(): Record<string, unknown>;
|
|
7
|
+
}
|
|
8
|
+
export declare class UpdateUserFavoritesDTO {
|
|
9
|
+
userId: string;
|
|
10
|
+
favoriteVehicles: string | string[];
|
|
11
|
+
validate?(): string[];
|
|
12
|
+
static fromPlain(plain: Record<string, unknown>): UpdateUserFavoritesDTO;
|
|
13
|
+
toPlain(): Record<string, unknown>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
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;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.UpdateUserFavoritesDTO = exports.VehicleFavoriteCreateDTO = void 0;
|
|
13
|
+
const class_transformer_1 = require("class-transformer");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
class VehicleFavoriteCreateDTO {
|
|
16
|
+
validate() {
|
|
17
|
+
const errors = (0, class_validator_1.validateSync)(this);
|
|
18
|
+
return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
|
|
19
|
+
}
|
|
20
|
+
static fromPlain(plain) {
|
|
21
|
+
return (0, class_transformer_1.plainToClass)(VehicleFavoriteCreateDTO, plain);
|
|
22
|
+
}
|
|
23
|
+
toPlain() {
|
|
24
|
+
return (0, class_transformer_1.instanceToPlain)(this);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
__decorate([
|
|
28
|
+
(0, class_validator_1.IsString)(),
|
|
29
|
+
(0, class_validator_1.IsUUID)(),
|
|
30
|
+
__metadata("design:type", String)
|
|
31
|
+
], VehicleFavoriteCreateDTO.prototype, "userId", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
(0, class_validator_1.IsString)(),
|
|
34
|
+
(0, class_validator_1.IsUUID)(),
|
|
35
|
+
__metadata("design:type", String)
|
|
36
|
+
], VehicleFavoriteCreateDTO.prototype, "vehicleId", void 0);
|
|
37
|
+
exports.VehicleFavoriteCreateDTO = VehicleFavoriteCreateDTO;
|
|
38
|
+
class UpdateUserFavoritesDTO {
|
|
39
|
+
validate() {
|
|
40
|
+
const errors = (0, class_validator_1.validateSync)(this);
|
|
41
|
+
return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat();
|
|
42
|
+
}
|
|
43
|
+
static fromPlain(plain) {
|
|
44
|
+
return (0, class_transformer_1.plainToClass)(UpdateUserFavoritesDTO, plain);
|
|
45
|
+
}
|
|
46
|
+
toPlain() {
|
|
47
|
+
return (0, class_transformer_1.instanceToPlain)(this);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
__decorate([
|
|
51
|
+
(0, class_validator_1.IsString)(),
|
|
52
|
+
(0, class_validator_1.IsUUID)(),
|
|
53
|
+
__metadata("design:type", String)
|
|
54
|
+
], UpdateUserFavoritesDTO.prototype, "userId", void 0);
|
|
55
|
+
__decorate([
|
|
56
|
+
(0, class_validator_1.IsUUID)(undefined, { each: true }),
|
|
57
|
+
(0, class_transformer_1.Transform)(({ value }) => (Array.isArray(value) ? value : [value])),
|
|
58
|
+
__metadata("design:type", Object)
|
|
59
|
+
], UpdateUserFavoritesDTO.prototype, "favoriteVehicles", void 0);
|
|
60
|
+
exports.UpdateUserFavoritesDTO = UpdateUserFavoritesDTO;
|
|
@@ -31,3 +31,4 @@ __exportStar(require("./MediaDTO"), exports);
|
|
|
31
31
|
__exportStar(require("./VehicleInspectionDTO"), exports);
|
|
32
32
|
__exportStar(require("./VehicleFilterDTO"), exports);
|
|
33
33
|
__exportStar(require("./SimilarVehicleDTO"), exports);
|
|
34
|
+
__exportStar(require("./VehicleFavoritesDTO"), exports);
|
package/package.json
CHANGED