@alba-cars/common-modules 1.3.9 → 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.
@@ -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
  }
@@ -0,0 +1,9 @@
1
+ import { User } from "./User";
2
+ import { Vehicle } from "./Vehicle";
3
+ export declare class UserFavoriteVehicle {
4
+ id: string;
5
+ createdAt: Date;
6
+ updatedAt?: Date;
7
+ vehicle: Vehicle;
8
+ user: User;
9
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserFavoriteVehicle = void 0;
4
+ class UserFavoriteVehicle {
5
+ }
6
+ exports.UserFavoriteVehicle = UserFavoriteVehicle;
@@ -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
  }
@@ -103,6 +103,7 @@ export declare class VehicleUpdateDTO extends BaseUpdateDTO {
103
103
  pageNo?: number;
104
104
  features: VehicleFeaturesUpdateDTO;
105
105
  metaData: VehicleMetaDataDTO;
106
+ favoritedBy?: string | string[];
106
107
  validate(): string[];
107
108
  static fromPlain(plain: Record<string, unknown>): VehicleUpdateDTO;
108
109
  static toPlain(entity: any): Record<string, unknown>;
@@ -454,6 +454,12 @@ __decorate([
454
454
  (0, class_transformer_1.Type)(() => VehicleMetaDataDTO),
455
455
  __metadata("design:type", VehicleMetaDataDTO)
456
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);
457
463
  exports.VehicleUpdateDTO = VehicleUpdateDTO;
458
464
  class DynamicVehicleDTO {
459
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;
@@ -15,3 +15,4 @@ export * from "./MediaDTO";
15
15
  export * from "./VehicleInspectionDTO";
16
16
  export * from "./VehicleFilterDTO";
17
17
  export * from "./SimilarVehicleDTO";
18
+ export * from "./VehicleFavoritesDTO";
@@ -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
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.3.9",
6
+ "version": "1.4.0",
7
7
  "description": "A package containing DTOs, validation classes and common modules and interfaces for Alba Cars",
8
8
  "main": "dist/index.js",
9
9
  "types": "dist/index.d.ts",