UNPKG

@alba-cars/common-modules

Version:

A package containing DTOs, validation classes and common modules and interfaces for Alba Cars

238 lines (237 loc) 10.2 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); 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; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ShowRoomVisitFetchDTO = exports.ShowRoomVisitFilterDTO = exports.ShowRoomVisitOptionsDTO = exports.ShowroomVisitResponseDTO = exports.ShowroomVisitUpdateDTO = exports.ShowroomVisitCreateDTO = exports.IsTimeConstraint = void 0; const class_validator_1 = require("class-validator"); const class_transformer_1 = require("class-transformer"); const global_1 = require("../../../../global"); const enums_1 = require("../enums"); // Custom time format validator let IsTimeConstraint = class IsTimeConstraint { validate(time, args) { // Regex for HH:MM 24-hour time format return /^([01]\d|2[0-3]):([0-5]\d)$/.test(time); } defaultMessage(args) { return "Time ($value) is not a valid 24-hour time format (HH:MM)"; } }; IsTimeConstraint = __decorate([ (0, class_validator_1.ValidatorConstraint)({ name: "isTime", async: false }) ], IsTimeConstraint); exports.IsTimeConstraint = IsTimeConstraint; class ShowroomVisitCreateDTO { validate() { const errors = (0, class_validator_1.validateSync)(this); return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat(); } static fromPlain(plain) { return (0, class_transformer_1.plainToClass)(ShowroomVisitCreateDTO, plain); } toPlain() { return (0, class_transformer_1.classToPlain)(this); } } __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitCreateDTO.prototype, "Visitor_FullName", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitCreateDTO.prototype, "Visitor_Mobile", void 0); __decorate([ (0, class_validator_1.IsDateString)(), __metadata("design:type", String) ], ShowroomVisitCreateDTO.prototype, "Visit_Date", void 0); __decorate([ (0, class_validator_1.Validate)(IsTimeConstraint), __metadata("design:type", String) ], ShowroomVisitCreateDTO.prototype, "Visit_Time", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitCreateDTO.prototype, "Visit_Interest", void 0); __decorate([ (0, class_validator_1.IsArray)(), (0, class_validator_1.IsString)({ each: true }), (0, class_validator_1.IsOptional)(), __metadata("design:type", Array) ], ShowroomVisitCreateDTO.prototype, "Interested_Cars", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsUUID)() // Ensure that AssignedAgentId is a valid UUID , __metadata("design:type", String) ], ShowroomVisitCreateDTO.prototype, "AssignedAgentId", void 0); exports.ShowroomVisitCreateDTO = ShowroomVisitCreateDTO; class ShowroomVisitUpdateDTO { validate() { const errors = (0, class_validator_1.validateSync)(this); return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat(); } static fromPlain(plain) { return (0, class_transformer_1.plainToClass)(ShowroomVisitUpdateDTO, plain); } } __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitUpdateDTO.prototype, "Visitor_FullName", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitUpdateDTO.prototype, "Visitor_Mobile", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsDateString)(), __metadata("design:type", String) ], ShowroomVisitUpdateDTO.prototype, "Visit_Date", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.Validate)(IsTimeConstraint), __metadata("design:type", String) ], ShowroomVisitUpdateDTO.prototype, "Visit_Time", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitUpdateDTO.prototype, "Visit_Interest", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsArray)(), (0, class_validator_1.IsString)({ each: true }), __metadata("design:type", Array) ], ShowroomVisitUpdateDTO.prototype, "Interested_Cars", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsUUID)() // Ensure that AssignedAgentId is a valid UUID , __metadata("design:type", String) ], ShowroomVisitUpdateDTO.prototype, "AssignedAgentId", void 0); exports.ShowroomVisitUpdateDTO = ShowroomVisitUpdateDTO; class ShowroomVisitResponseDTO { validate() { const errors = (0, class_validator_1.validateSync)(this); return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat(); } static fromPlain(plain) { return (0, class_transformer_1.plainToClass)(ShowroomVisitResponseDTO, plain); } toPlain() { return (0, class_transformer_1.classToPlain)(this); } } __decorate([ (0, class_validator_1.IsUUID)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "id", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "Visitor_FullName", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "Visitor_Mobile", void 0); __decorate([ (0, class_validator_1.IsDateString)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "Visit_Date", void 0); __decorate([ (0, class_validator_1.Validate)(IsTimeConstraint), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "Visit_Time", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "Visit_Interest", void 0); __decorate([ (0, class_validator_1.IsArray)(), (0, class_validator_1.IsString)({ each: true }), (0, class_validator_1.IsOptional)(), __metadata("design:type", Array) ], ShowroomVisitResponseDTO.prototype, "Interested_Cars", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsUUID)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "AssignedAgentId", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "AssignedAgentName", void 0); __decorate([ (0, class_validator_1.IsBoolean)(), (0, class_validator_1.IsOptional)(), __metadata("design:type", Boolean) ], ShowroomVisitResponseDTO.prototype, "IsCompleted", void 0); __decorate([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "VisitNotes", void 0); __decorate([ (0, class_validator_1.IsDateString)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "CreatedAt", void 0); __decorate([ (0, class_validator_1.IsDateString)(), __metadata("design:type", String) ], ShowroomVisitResponseDTO.prototype, "UpdatedAt", void 0); exports.ShowroomVisitResponseDTO = ShowroomVisitResponseDTO; class ShowRoomVisitOptionsDTO extends global_1.PaginationOptions { static fromPlain(plain) { return (0, class_transformer_1.plainToClass)(ShowRoomVisitOptionsDTO, plain); } toPlain() { return (0, class_transformer_1.classToPlain)(this); } } exports.ShowRoomVisitOptionsDTO = ShowRoomVisitOptionsDTO; class ShowRoomVisitFilterDTO { validate() { const errors = (0, class_validator_1.validateSync)(this); return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat(); } static fromPlain(plain) { return (0, class_transformer_1.plainToClass)(ShowRoomVisitFilterDTO, plain); } toPlain() { return (0, class_transformer_1.classToPlain)(this); } } __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", String) ], ShowRoomVisitFilterDTO.prototype, "search", void 0); __decorate([ (0, class_validator_1.IsUUID)(), (0, class_validator_1.IsOptional)(), __metadata("design:type", String) ], ShowRoomVisitFilterDTO.prototype, "leadId", void 0); exports.ShowRoomVisitFilterDTO = ShowRoomVisitFilterDTO; class ShowRoomVisitFetchDTO { validate() { const errors = (0, class_validator_1.validateSync)(this); return errors.map((error) => { var _a; return Object.values((_a = error.constraints) !== null && _a !== void 0 ? _a : {}); }).flat(); } static fromPlain(plain) { return (0, class_transformer_1.plainToClass)(ShowRoomVisitFetchDTO, plain); } toPlain() { return (0, class_transformer_1.classToPlain)(this); } } exports.ShowRoomVisitFetchDTO = ShowRoomVisitFetchDTO;