Server IP : 92.205.26.207 / Your IP : 216.73.216.16 Web Server : Apache System : Linux 207.26.205.92.host.secureserver.net 4.18.0-553.60.1.el8_10.x86_64 #1 SMP Thu Jul 10 04:01:16 EDT 2025 x86_64 User : zikryat ( 1002) PHP Version : 8.3.23 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/zikryat/public_html/src/core/common/dto/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
/** * Copyright 2023, the hatemragab project author. * All rights reserved. Use of this source code is governed by a * MIT license that can be found in the LICENSE file. */ import { registerDecorator, ValidationOptions, ValidationArguments } from "class-validator"; import {isValidMongoId} from "../../utils/utils"; import {jsonDecoder} from "../../utils/app.validator"; export function IsMongoIdsObject(validationOptions?: ValidationOptions) { return function(object: Object, propertyName: string) { registerDecorator({ name: "IsMongoIdsObject", target: object.constructor, propertyName: propertyName, constraints: [], options: validationOptions ?? { message: "The list must be valid mongo id object !" }, validator: { validate(value: any, args: ValidationArguments) { if(!value){ return false } let data = []; try { data = jsonDecoder(JSON.parse(value)); } catch (err) { } if (!Array.isArray(data)) { return false; } if (value.length == 0) { return false; } for (let i of data) { if (!isValidMongoId(i)) { return false; } } return true; } } }); }; }