検証バージョン
"class-validator": "^0.14.1”
class-validarでIsBase64を使用した際にオプションを指定しても無視される不具合があった
class Hoge { @IsBase64({ urlSafe: true }) fuga: string; }
実装を見てもオプションが渡されていない
function IsBase64(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports.IS_BASE64, constraints: [options], validator: { validate: (value, args) => isBase64(value), defaultMessage: (0, ValidateBy_1.buildMessage)(eachPrefix => eachPrefix + '$property must be base64 encoded', validationOptions), }, }, validationOptions); }
他のメソッドを参考に修正すると以下のようになる
function IsBase64(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports.IS_BASE64, constraints: [options], validator: { validate: (value, args) => isBase64(value, args === null || args === void 0 ? void 0 : args.constraints[0]), defaultMessage: (0, ValidateBy_1.buildMessage)(eachPrefix => eachPrefix + '$property must be base64 encoded', validationOptions), }, }, validationOptions); }
既にissueの報告とプルリクエストが作成されていたので修正待ち