UNPKG

@compas/store

Version:

Postgres & S3-compatible wrappers for common things

1,486 lines (1,456 loc) 745 kB
// Generated by @compas/code-gen import { isQueryPart } from "@compas/store"; /** * @template T, E * @typedef {{ value: T, error?: never}|{ value?: never, error: E }} Either */ /** * @typedef {Record<string, any|undefined>} ValidatorErrorMap */ const isRecord = (v) => !!v && typeof v === "object" && !Array.isArray(v); /** * Postgres based file storage. * * @param {import("../common/types.js").StoreFileInput|any} value * @returns {Either<import("../common/types.js").StoreFile, ValidatorErrorMap>} */ export function validateStoreFile(value) { /** @type {ValidatorErrorMap} */ const errorMap = {}; /** @type {any} */ let result = undefined; if (value === null || value === undefined) { errorMap[`$`] = { key: "validator.undefined", }; } else { if (!isRecord(value)) { errorMap[`$`] = { key: "validator.object", value: value, foundType: typeof value, }; } else { /** @type {Set<string>} */ const knownKeys0 = new Set([ "id", "contentLength", "bucketName", "contentType", "name", "meta", "createdAt", "updatedAt", ]); for (const key of Object.keys(value)) { if ( !knownKeys0.has(key) && value[key] !== null && value[key] !== undefined ) { const expectedKeys = [...knownKeys0]; const foundKeys = Object.keys(value); const unknownKeys = foundKeys.filter((it) => !knownKeys0.has(it)); errorMap[`$`] = { key: "validator.keys", unknownKeys, expectedKeys, foundKeys, }; break; } } result = { id: undefined, contentLength: undefined, bucketName: undefined, contentType: undefined, name: undefined, meta: undefined, createdAt: undefined, updatedAt: undefined, }; if (value["id"] === null || value["id"] === undefined) { errorMap[`$.id`] = { key: "validator.undefined", }; } else { if ( typeof value["id"] !== "string" || (!/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/gi.test( value["id"], ) && !/^[a-f0-9]{32}$/gi.test(value["id"])) ) { errorMap[`$.id`] = { key: "validator.pattern", patternExplanation: "UUID", }; } else if (value["id"].length === 32) { result["id"] = `${value["id"].slice(0, 8)}-${value["id"].slice( 8, 12, )}-${value["id"].slice(12, 16)}-${value["id"].slice(16, 20)}-${value[ "id" ].slice(20)}`; } else { result["id"] = value["id"]; } } if ( value["contentLength"] === null || value["contentLength"] === undefined ) { errorMap[`$.contentLength`] = { key: "validator.undefined", }; } else { let convertedNumber2 = value["contentLength"]; if ( typeof convertedNumber2 !== "number" && typeof convertedNumber2 === "string" ) { convertedNumber2 = Number(convertedNumber2); } if ( typeof convertedNumber2 !== "number" || isNaN(convertedNumber2) || !isFinite(convertedNumber2) || !Number.isInteger(convertedNumber2) ) { errorMap[`$.contentLength`] = { key: "validator.number", subType: "int", }; } else if (convertedNumber2 < -2147483647) { errorMap[`$.contentLength`] = { key: "validator.range", minValue: -2147483647, }; } else if (convertedNumber2 > 2147483647) { errorMap[`$.contentLength`] = { key: "validator.range", maxValue: 2147483647, }; } else { result["contentLength"] = convertedNumber2; } } if (value["bucketName"] === null || value["bucketName"] === undefined) { errorMap[`$.bucketName`] = { key: "validator.undefined", }; } else { /** @type {string} */ const convertedString3 = value["bucketName"]; if (typeof convertedString3 !== "string") { errorMap[`$.bucketName`] = { key: "validator.string", }; } else { if (convertedString3.length < 1) { errorMap[`$.bucketName`] = { key: "validator.length", minLength: 1, }; } else { result["bucketName"] = convertedString3; } } } if (value["contentType"] === null || value["contentType"] === undefined) { errorMap[`$.contentType`] = { key: "validator.undefined", }; } else { /** @type {string} */ const convertedString4 = value["contentType"]; if (typeof convertedString4 !== "string") { errorMap[`$.contentType`] = { key: "validator.string", }; } else { if (convertedString4.length < 1) { errorMap[`$.contentType`] = { key: "validator.length", minLength: 1, }; } else { result["contentType"] = convertedString4; } } } if (value["name"] === null || value["name"] === undefined) { errorMap[`$.name`] = { key: "validator.undefined", }; } else { /** @type {string} */ const convertedString5 = value["name"]; if (typeof convertedString5 !== "string") { errorMap[`$.name`] = { key: "validator.string", }; } else { if (convertedString5.length < 1) { errorMap[`$.name`] = { key: "validator.length", minLength: 1, }; } else { result["name"] = convertedString5; } } } if (value["meta"] === null || value["meta"] === undefined) { result["meta"] = {}; } else { const refResult6 = validateStoreFileMeta(value["meta"]); if (refResult6.error) { for (const errorKey of Object.keys(refResult6.error)) { errorMap[`$.meta${errorKey.substring(1)}`] = refResult6.error[errorKey]; } } result["meta"] = refResult6.value; } if (value["createdAt"] === null || value["createdAt"] === undefined) { errorMap[`$.createdAt`] = { key: "validator.undefined", }; } else { if ( typeof value["createdAt"] === "string" || typeof value["createdAt"] === "number" ) { result["createdAt"] = new Date(value["createdAt"]); } else if ( Object.prototype.toString.call(value["createdAt"]) === "[object Date]" ) { result["createdAt"] = value["createdAt"]; } else { errorMap[`$.createdAt`] = { key: "validator.type", expectedType: "Date|string", }; } if (isNaN(result["createdAt"]?.getTime() ?? undefined)) { errorMap[`$.createdAt`] = { key: "validator.date.invalid", }; } } if (value["updatedAt"] === null || value["updatedAt"] === undefined) { errorMap[`$.updatedAt`] = { key: "validator.undefined", }; } else { if ( typeof value["updatedAt"] === "string" || typeof value["updatedAt"] === "number" ) { result["updatedAt"] = new Date(value["updatedAt"]); } else if ( Object.prototype.toString.call(value["updatedAt"]) === "[object Date]" ) { result["updatedAt"] = value["updatedAt"]; } else { errorMap[`$.updatedAt`] = { key: "validator.type", expectedType: "Date|string", }; } if (isNaN(result["updatedAt"]?.getTime() ?? undefined)) { errorMap[`$.updatedAt`] = { key: "validator.date.invalid", }; } } } } if (Object.keys(errorMap).length > 0) { return { error: errorMap }; } return { value: result }; } /** * User definable, optional object to store whatever you want * * @param {import("../common/types.js").StoreFileMetaInput|any} value * @returns {Either<import("../common/types.js").StoreFileMeta, ValidatorErrorMap>} */ export function validateStoreFileMeta(value) { /** @type {ValidatorErrorMap} */ const errorMap = {}; /** @type {any} */ let result = undefined; if (value === null || value === undefined) { result = {}; } else { if (!isRecord(value)) { errorMap[`$`] = { key: "validator.object", value: value, foundType: typeof value, }; } else { /** @type {Set<string>} */ const knownKeys0 = new Set([ "transforms", "transformedFromOriginal", "originalWidth", "originalHeight", "placeholderImage", "altText", ]); for (const key of Object.keys(value)) { if ( !knownKeys0.has(key) && value[key] !== null && value[key] !== undefined ) { const expectedKeys = [...knownKeys0]; const foundKeys = Object.keys(value); const unknownKeys = foundKeys.filter((it) => !knownKeys0.has(it)); errorMap[`$`] = { key: "validator.keys", unknownKeys, expectedKeys, foundKeys, }; break; } } result = { transforms: undefined, transformedFromOriginal: undefined, originalWidth: undefined, originalHeight: undefined, placeholderImage: undefined, altText: undefined, }; if (value["transforms"] === null || value["transforms"] === undefined) { result["transforms"] = undefined; } else { result["transforms"] = value["transforms"]; } if ( value["transformedFromOriginal"] === null || value["transformedFromOriginal"] === undefined ) { result["transformedFromOriginal"] = undefined; } else { /** @type {string} */ const convertedString2 = value["transformedFromOriginal"]; if (typeof convertedString2 !== "string") { errorMap[`$.transformedFromOriginal`] = { key: "validator.string", }; } else { if (convertedString2.length === 0) { result["transformedFromOriginal"] = undefined; } else { if (convertedString2.length < 1) { errorMap[`$.transformedFromOriginal`] = { key: "validator.length", minLength: 1, }; } else { result["transformedFromOriginal"] = convertedString2; } } } } if ( value["originalWidth"] === null || value["originalWidth"] === undefined ) { result["originalWidth"] = undefined; } else { let convertedNumber3 = value["originalWidth"]; if ( typeof convertedNumber3 !== "number" && typeof convertedNumber3 === "string" ) { convertedNumber3 = Number(convertedNumber3); } if ( typeof convertedNumber3 !== "number" || isNaN(convertedNumber3) || !isFinite(convertedNumber3) || !Number.isInteger(convertedNumber3) ) { errorMap[`$.originalWidth`] = { key: "validator.number", subType: "int", }; } else if (convertedNumber3 < -2147483647) { errorMap[`$.originalWidth`] = { key: "validator.range", minValue: -2147483647, }; } else if (convertedNumber3 > 2147483647) { errorMap[`$.originalWidth`] = { key: "validator.range", maxValue: 2147483647, }; } else { result["originalWidth"] = convertedNumber3; } } if ( value["originalHeight"] === null || value["originalHeight"] === undefined ) { result["originalHeight"] = undefined; } else { let convertedNumber4 = value["originalHeight"]; if ( typeof convertedNumber4 !== "number" && typeof convertedNumber4 === "string" ) { convertedNumber4 = Number(convertedNumber4); } if ( typeof convertedNumber4 !== "number" || isNaN(convertedNumber4) || !isFinite(convertedNumber4) || !Number.isInteger(convertedNumber4) ) { errorMap[`$.originalHeight`] = { key: "validator.number", subType: "int", }; } else if (convertedNumber4 < -2147483647) { errorMap[`$.originalHeight`] = { key: "validator.range", minValue: -2147483647, }; } else if (convertedNumber4 > 2147483647) { errorMap[`$.originalHeight`] = { key: "validator.range", maxValue: 2147483647, }; } else { result["originalHeight"] = convertedNumber4; } } if ( value["placeholderImage"] === null || value["placeholderImage"] === undefined ) { result["placeholderImage"] = undefined; } else { /** @type {string} */ const convertedString5 = value["placeholderImage"]; if (typeof convertedString5 !== "string") { errorMap[`$.placeholderImage`] = { key: "validator.string", }; } else { if (convertedString5.length === 0) { result["placeholderImage"] = undefined; } else { if (convertedString5.length < 1) { errorMap[`$.placeholderImage`] = { key: "validator.length", minLength: 1, }; } else { result["placeholderImage"] = convertedString5; } } } } if (value["altText"] === null || value["altText"] === undefined) { result["altText"] = undefined; } else { /** @type {string} */ const convertedString6 = value["altText"]; if (typeof convertedString6 !== "string") { errorMap[`$.altText`] = { key: "validator.string", }; } else { if (convertedString6.length === 0) { result["altText"] = undefined; } else { if (convertedString6.length < 1) { errorMap[`$.altText`] = { key: "validator.length", minLength: 1, }; } else { result["altText"] = convertedString6; } } } } } } if (Object.keys(errorMap).length > 0) { return { error: errorMap }; } return { value: result }; } /** * @param {import("../common/types.js").StoreFileWhere|any} value * @returns {Either<import("../common/types.js").StoreFileWhereValidated, ValidatorErrorMap>} */ export function validateStoreFileWhereValidated(value) { /** @type {ValidatorErrorMap} */ const errorMap = {}; /** @type {any} */ let result = undefined; if (value === null || value === undefined) { errorMap[`$`] = { key: "validator.undefined", }; } else { if (!isRecord(value)) { errorMap[`$`] = { key: "validator.object", value: value, foundType: typeof value, }; } else { /** @type {Set<string>} */ const knownKeys0 = new Set([ "$raw", "$or", "id", "idNotEqual", "idIn", "idNotIn", "bucketName", "bucketNameNotEqual", "bucketNameIn", "bucketNameNotIn", "bucketNameLike", "bucketNameILike", "bucketNameNotLike", "createdAt", "createdAtNotEqual", "createdAtIn", "createdAtNotIn", "createdAtGreaterThan", "createdAtLowerThan", "updatedAt", "updatedAtNotEqual", "updatedAtIn", "updatedAtNotIn", "updatedAtGreaterThan", "updatedAtLowerThan", ]); for (const key of Object.keys(value)) { if ( !knownKeys0.has(key) && value[key] !== null && value[key] !== undefined ) { const expectedKeys = [...knownKeys0]; const foundKeys = Object.keys(value); const unknownKeys = foundKeys.filter((it) => !knownKeys0.has(it)); errorMap[`$`] = { key: "validator.keys", unknownKeys, expectedKeys, foundKeys, }; break; } } result = { $raw: undefined, $or: undefined, id: undefined, idNotEqual: undefined, idIn: undefined, idNotIn: undefined, bucketName: undefined, bucketNameNotEqual: undefined, bucketNameIn: undefined, bucketNameNotIn: undefined, bucketNameLike: undefined, bucketNameILike: undefined, bucketNameNotLike: undefined, createdAt: undefined, createdAtNotEqual: undefined, createdAtIn: undefined, createdAtNotIn: undefined, createdAtGreaterThan: undefined, createdAtLowerThan: undefined, updatedAt: undefined, updatedAtNotEqual: undefined, updatedAtIn: undefined, updatedAtNotIn: undefined, updatedAtGreaterThan: undefined, updatedAtLowerThan: undefined, }; if (value["$raw"] === null || value["$raw"] === undefined) { result["$raw"] = undefined; } else { if (isQueryPart(value["$raw"])) { result["$raw"] = value["$raw"]; } else { errorMap[`$.$raw`] = { key: "validator.any", message: "Custom validator error. See the input type for more information.", }; } } if (value["$or"] === null || value["$or"] === undefined) { result["$or"] = undefined; } else { /** @type {ValidatorErrorMap} */ const intermediateErrorMap3 = {}; /** @type {Array<any>} */ const intermediateResult3 = []; /** @type {any | Array<any>} */ const intermediateValue3 = value["$or"]; if (!Array.isArray(intermediateValue3)) { errorMap[`$.$or`] = { key: "validator.array", value: intermediateValue3, }; } else { result["$or"] = []; for (let i3 = 0; i3 < intermediateValue3.length; ++i3) { if ( intermediateValue3[i3] === null || intermediateValue3[i3] === undefined ) { intermediateErrorMap3[`$.${i3}`] = { key: "validator.undefined", }; } else { const refResult3 = validateStoreFileWhereValidated( intermediateValue3[i3], ); if (refResult3.error) { for (const errorKey of Object.keys(refResult3.error)) { intermediateErrorMap3[`$.${i3}${errorKey.substring(1)}`] = refResult3.error[errorKey]; } } intermediateResult3[i3] = refResult3.value; } } } if (Object.keys(intermediateErrorMap3).length) { for (const errorKey of Object.keys(intermediateErrorMap3)) { errorMap[`$.$or${errorKey.substring(1)}`] = intermediateErrorMap3[errorKey]; } } else { result["$or"] = intermediateResult3; } } if (value["id"] === null || value["id"] === undefined) { result["id"] = undefined; } else { if ( typeof value["id"] !== "string" || (!/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/gi.test( value["id"], ) && !/^[a-f0-9]{32}$/gi.test(value["id"])) ) { errorMap[`$.id`] = { key: "validator.pattern", patternExplanation: "UUID", }; } else if (value["id"].length === 32) { result["id"] = `${value["id"].slice(0, 8)}-${value["id"].slice( 8, 12, )}-${value["id"].slice(12, 16)}-${value["id"].slice(16, 20)}-${value[ "id" ].slice(20)}`; } else { result["id"] = value["id"]; } } if (value["idNotEqual"] === null || value["idNotEqual"] === undefined) { result["idNotEqual"] = undefined; } else { if ( typeof value["idNotEqual"] !== "string" || (!/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/gi.test( value["idNotEqual"], ) && !/^[a-f0-9]{32}$/gi.test(value["idNotEqual"])) ) { errorMap[`$.idNotEqual`] = { key: "validator.pattern", patternExplanation: "UUID", }; } else if (value["idNotEqual"].length === 32) { result["idNotEqual"] = `${value["idNotEqual"].slice(0, 8)}-${value[ "idNotEqual" ].slice(8, 12)}-${value["idNotEqual"].slice(12, 16)}-${value[ "idNotEqual" ].slice(16, 20)}-${value["idNotEqual"].slice(20)}`; } else { result["idNotEqual"] = value["idNotEqual"]; } } if (value["idIn"] === null || value["idIn"] === undefined) { result["idIn"] = undefined; } else { let hasAnyOfMatch5 = false; errorMap[`$.idIn`] = { key: "validator.anyOf", errors: [], }; if (!hasAnyOfMatch5) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap7 = {}; /** @type {any} */ let intermediateResult7 = undefined; /** @type {any} */ const intermediateValue7 = value["idIn"]; if (intermediateValue7 === null || intermediateValue7 === undefined) { intermediateErrorMap7[`$`] = { key: "validator.undefined", }; } else { /** @type {ValidatorErrorMap} */ const intermediateErrorMap8 = {}; /** @type {Array<any>} */ const intermediateResult8 = []; /** @type {any | Array<any>} */ const intermediateValue8 = intermediateValue7; if (!Array.isArray(intermediateValue8)) { intermediateErrorMap7[`$`] = { key: "validator.array", value: intermediateValue8, }; } else { intermediateResult7 = []; for (let i8 = 0; i8 < intermediateValue8.length; ++i8) { if ( intermediateValue8[i8] === null || intermediateValue8[i8] === undefined ) { intermediateErrorMap8[`$.${i8}`] = { key: "validator.undefined", }; } else { if ( typeof intermediateValue8[i8] !== "string" || (!/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/gi.test( intermediateValue8[i8], ) && !/^[a-f0-9]{32}$/gi.test(intermediateValue8[i8])) ) { intermediateErrorMap8[`$.${i8}`] = { key: "validator.pattern", patternExplanation: "UUID", }; } else if (intermediateValue8[i8].length === 32) { intermediateResult8[i8] = `${intermediateValue8[i8].slice( 0, 8, )}-${intermediateValue8[i8].slice( 8, 12, )}-${intermediateValue8[i8].slice( 12, 16, )}-${intermediateValue8[i8].slice( 16, 20, )}-${intermediateValue8[i8].slice(20)}`; } else { intermediateResult8[i8] = intermediateValue8[i8]; } } } } if (Object.keys(intermediateErrorMap8).length) { for (const errorKey of Object.keys(intermediateErrorMap8)) { intermediateErrorMap7[`$${errorKey.substring(1)}`] = intermediateErrorMap8[errorKey]; } } else { intermediateResult7 = intermediateResult8; } } if (Object.keys(intermediateErrorMap7).length > 0) { errorMap[`$.idIn`].errors.push(intermediateErrorMap7); } else { hasAnyOfMatch5 = true; delete errorMap[`$.idIn`]; result["idIn"] = intermediateResult7; } } if (!hasAnyOfMatch5) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap7 = {}; /** @type {any} */ let intermediateResult7 = undefined; /** @type {any} */ const intermediateValue7 = value["idIn"]; if (intermediateValue7 === null || intermediateValue7 === undefined) { intermediateErrorMap7[`$`] = { key: "validator.undefined", }; } else { if (isQueryPart(intermediateValue7)) { intermediateResult7 = intermediateValue7; } else { intermediateErrorMap7[`$`] = { key: "validator.any", message: "Custom validator error. See the input type for more information.", }; } } if (Object.keys(intermediateErrorMap7).length > 0) { errorMap[`$.idIn`].errors.push(intermediateErrorMap7); } else { hasAnyOfMatch5 = true; delete errorMap[`$.idIn`]; result["idIn"] = intermediateResult7; } } } if (value["idNotIn"] === null || value["idNotIn"] === undefined) { result["idNotIn"] = undefined; } else { let hasAnyOfMatch6 = false; errorMap[`$.idNotIn`] = { key: "validator.anyOf", errors: [], }; if (!hasAnyOfMatch6) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap8 = {}; /** @type {any} */ let intermediateResult8 = undefined; /** @type {any} */ const intermediateValue8 = value["idNotIn"]; if (intermediateValue8 === null || intermediateValue8 === undefined) { intermediateErrorMap8[`$`] = { key: "validator.undefined", }; } else { /** @type {ValidatorErrorMap} */ const intermediateErrorMap9 = {}; /** @type {Array<any>} */ const intermediateResult9 = []; /** @type {any | Array<any>} */ const intermediateValue9 = intermediateValue8; if (!Array.isArray(intermediateValue9)) { intermediateErrorMap8[`$`] = { key: "validator.array", value: intermediateValue9, }; } else { intermediateResult8 = []; for (let i9 = 0; i9 < intermediateValue9.length; ++i9) { if ( intermediateValue9[i9] === null || intermediateValue9[i9] === undefined ) { intermediateErrorMap9[`$.${i9}`] = { key: "validator.undefined", }; } else { if ( typeof intermediateValue9[i9] !== "string" || (!/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/gi.test( intermediateValue9[i9], ) && !/^[a-f0-9]{32}$/gi.test(intermediateValue9[i9])) ) { intermediateErrorMap9[`$.${i9}`] = { key: "validator.pattern", patternExplanation: "UUID", }; } else if (intermediateValue9[i9].length === 32) { intermediateResult9[i9] = `${intermediateValue9[i9].slice( 0, 8, )}-${intermediateValue9[i9].slice( 8, 12, )}-${intermediateValue9[i9].slice( 12, 16, )}-${intermediateValue9[i9].slice( 16, 20, )}-${intermediateValue9[i9].slice(20)}`; } else { intermediateResult9[i9] = intermediateValue9[i9]; } } } } if (Object.keys(intermediateErrorMap9).length) { for (const errorKey of Object.keys(intermediateErrorMap9)) { intermediateErrorMap8[`$${errorKey.substring(1)}`] = intermediateErrorMap9[errorKey]; } } else { intermediateResult8 = intermediateResult9; } } if (Object.keys(intermediateErrorMap8).length > 0) { errorMap[`$.idNotIn`].errors.push(intermediateErrorMap8); } else { hasAnyOfMatch6 = true; delete errorMap[`$.idNotIn`]; result["idNotIn"] = intermediateResult8; } } if (!hasAnyOfMatch6) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap8 = {}; /** @type {any} */ let intermediateResult8 = undefined; /** @type {any} */ const intermediateValue8 = value["idNotIn"]; if (intermediateValue8 === null || intermediateValue8 === undefined) { intermediateErrorMap8[`$`] = { key: "validator.undefined", }; } else { if (isQueryPart(intermediateValue8)) { intermediateResult8 = intermediateValue8; } else { intermediateErrorMap8[`$`] = { key: "validator.any", message: "Custom validator error. See the input type for more information.", }; } } if (Object.keys(intermediateErrorMap8).length > 0) { errorMap[`$.idNotIn`].errors.push(intermediateErrorMap8); } else { hasAnyOfMatch6 = true; delete errorMap[`$.idNotIn`]; result["idNotIn"] = intermediateResult8; } } } if (value["bucketName"] === null || value["bucketName"] === undefined) { result["bucketName"] = undefined; } else { /** @type {string} */ const convertedString7 = value["bucketName"]; if (typeof convertedString7 !== "string") { errorMap[`$.bucketName`] = { key: "validator.string", }; } else { if (convertedString7.length === 0) { result["bucketName"] = undefined; } else { if (convertedString7.length < 1) { errorMap[`$.bucketName`] = { key: "validator.length", minLength: 1, }; } else { result["bucketName"] = convertedString7; } } } } if ( value["bucketNameNotEqual"] === null || value["bucketNameNotEqual"] === undefined ) { result["bucketNameNotEqual"] = undefined; } else { /** @type {string} */ const convertedString8 = value["bucketNameNotEqual"]; if (typeof convertedString8 !== "string") { errorMap[`$.bucketNameNotEqual`] = { key: "validator.string", }; } else { if (convertedString8.length === 0) { result["bucketNameNotEqual"] = undefined; } else { if (convertedString8.length < 1) { errorMap[`$.bucketNameNotEqual`] = { key: "validator.length", minLength: 1, }; } else { result["bucketNameNotEqual"] = convertedString8; } } } } if ( value["bucketNameIn"] === null || value["bucketNameIn"] === undefined ) { result["bucketNameIn"] = undefined; } else { let hasAnyOfMatch9 = false; errorMap[`$.bucketNameIn`] = { key: "validator.anyOf", errors: [], }; if (!hasAnyOfMatch9) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap11 = {}; /** @type {any} */ let intermediateResult11 = undefined; /** @type {any} */ const intermediateValue11 = value["bucketNameIn"]; if ( intermediateValue11 === null || intermediateValue11 === undefined ) { intermediateErrorMap11[`$`] = { key: "validator.undefined", }; } else { /** @type {ValidatorErrorMap} */ const intermediateErrorMap12 = {}; /** @type {Array<any>} */ const intermediateResult12 = []; /** @type {any | Array<any>} */ const intermediateValue12 = intermediateValue11; if (!Array.isArray(intermediateValue12)) { intermediateErrorMap11[`$`] = { key: "validator.array", value: intermediateValue12, }; } else { intermediateResult11 = []; for (let i12 = 0; i12 < intermediateValue12.length; ++i12) { if ( intermediateValue12[i12] === null || intermediateValue12[i12] === undefined ) { intermediateErrorMap12[`$.${i12}`] = { key: "validator.undefined", }; } else { /** @type {string} */ const convertedString12 = intermediateValue12[i12]; if (typeof convertedString12 !== "string") { intermediateErrorMap12[`$.${i12}`] = { key: "validator.string", }; } else { if (convertedString12.length < 1) { intermediateErrorMap12[`$.${i12}`] = { key: "validator.length", minLength: 1, }; } else { intermediateResult12[i12] = convertedString12; } } } } } if (Object.keys(intermediateErrorMap12).length) { for (const errorKey of Object.keys(intermediateErrorMap12)) { intermediateErrorMap11[`$${errorKey.substring(1)}`] = intermediateErrorMap12[errorKey]; } } else { intermediateResult11 = intermediateResult12; } } if (Object.keys(intermediateErrorMap11).length > 0) { errorMap[`$.bucketNameIn`].errors.push(intermediateErrorMap11); } else { hasAnyOfMatch9 = true; delete errorMap[`$.bucketNameIn`]; result["bucketNameIn"] = intermediateResult11; } } if (!hasAnyOfMatch9) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap11 = {}; /** @type {any} */ let intermediateResult11 = undefined; /** @type {any} */ const intermediateValue11 = value["bucketNameIn"]; if ( intermediateValue11 === null || intermediateValue11 === undefined ) { intermediateErrorMap11[`$`] = { key: "validator.undefined", }; } else { if (isQueryPart(intermediateValue11)) { intermediateResult11 = intermediateValue11; } else { intermediateErrorMap11[`$`] = { key: "validator.any", message: "Custom validator error. See the input type for more information.", }; } } if (Object.keys(intermediateErrorMap11).length > 0) { errorMap[`$.bucketNameIn`].errors.push(intermediateErrorMap11); } else { hasAnyOfMatch9 = true; delete errorMap[`$.bucketNameIn`]; result["bucketNameIn"] = intermediateResult11; } } } if ( value["bucketNameNotIn"] === null || value["bucketNameNotIn"] === undefined ) { result["bucketNameNotIn"] = undefined; } else { let hasAnyOfMatch10 = false; errorMap[`$.bucketNameNotIn`] = { key: "validator.anyOf", errors: [], }; if (!hasAnyOfMatch10) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap12 = {}; /** @type {any} */ let intermediateResult12 = undefined; /** @type {any} */ const intermediateValue12 = value["bucketNameNotIn"]; if ( intermediateValue12 === null || intermediateValue12 === undefined ) { intermediateErrorMap12[`$`] = { key: "validator.undefined", }; } else { /** @type {ValidatorErrorMap} */ const intermediateErrorMap13 = {}; /** @type {Array<any>} */ const intermediateResult13 = []; /** @type {any | Array<any>} */ const intermediateValue13 = intermediateValue12; if (!Array.isArray(intermediateValue13)) { intermediateErrorMap12[`$`] = { key: "validator.array", value: intermediateValue13, }; } else { intermediateResult12 = []; for (let i13 = 0; i13 < intermediateValue13.length; ++i13) { if ( intermediateValue13[i13] === null || intermediateValue13[i13] === undefined ) { intermediateErrorMap13[`$.${i13}`] = { key: "validator.undefined", }; } else { /** @type {string} */ const convertedString13 = intermediateValue13[i13]; if (typeof convertedString13 !== "string") { intermediateErrorMap13[`$.${i13}`] = { key: "validator.string", }; } else { if (convertedString13.length < 1) { intermediateErrorMap13[`$.${i13}`] = { key: "validator.length", minLength: 1, }; } else { intermediateResult13[i13] = convertedString13; } } } } } if (Object.keys(intermediateErrorMap13).length) { for (const errorKey of Object.keys(intermediateErrorMap13)) { intermediateErrorMap12[`$${errorKey.substring(1)}`] = intermediateErrorMap13[errorKey]; } } else { intermediateResult12 = intermediateResult13; } } if (Object.keys(intermediateErrorMap12).length > 0) { errorMap[`$.bucketNameNotIn`].errors.push(intermediateErrorMap12); } else { hasAnyOfMatch10 = true; delete errorMap[`$.bucketNameNotIn`]; result["bucketNameNotIn"] = intermediateResult12; } } if (!hasAnyOfMatch10) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap12 = {}; /** @type {any} */ let intermediateResult12 = undefined; /** @type {any} */ const intermediateValue12 = value["bucketNameNotIn"]; if ( intermediateValue12 === null || intermediateValue12 === undefined ) { intermediateErrorMap12[`$`] = { key: "validator.undefined", }; } else { if (isQueryPart(intermediateValue12)) { intermediateResult12 = intermediateValue12; } else { intermediateErrorMap12[`$`] = { key: "validator.any", message: "Custom validator error. See the input type for more information.", }; } } if (Object.keys(intermediateErrorMap12).length > 0) { errorMap[`$.bucketNameNotIn`].errors.push(intermediateErrorMap12); } else { hasAnyOfMatch10 = true; delete errorMap[`$.bucketNameNotIn`]; result["bucketNameNotIn"] = intermediateResult12; } } } if ( value["bucketNameLike"] === null || value["bucketNameLike"] === undefined ) { result["bucketNameLike"] = undefined; } else { /** @type {string} */ const convertedString11 = value["bucketNameLike"]; if (typeof convertedString11 !== "string") { errorMap[`$.bucketNameLike`] = { key: "validator.string", }; } else { if (convertedString11.length === 0) { result["bucketNameLike"] = undefined; } else { if (convertedString11.length < 1) { errorMap[`$.bucketNameLike`] = { key: "validator.length", minLength: 1, }; } else { result["bucketNameLike"] = convertedString11; } } } } if ( value["bucketNameILike"] === null || value["bucketNameILike"] === undefined ) { result["bucketNameILike"] = undefined; } else { /** @type {string} */ const convertedString12 = value["bucketNameILike"]; if (typeof convertedString12 !== "string") { errorMap[`$.bucketNameILike`] = { key: "validator.string", }; } else { if (convertedString12.length === 0) { result["bucketNameILike"] = undefined; } else { if (convertedString12.length < 1) { errorMap[`$.bucketNameILike`] = { key: "validator.length", minLength: 1, }; } else { result["bucketNameILike"] = convertedString12; } } } } if ( value["bucketNameNotLike"] === null || value["bucketNameNotLike"] === undefined ) { result["bucketNameNotLike"] = undefined; } else { /** @type {string} */ const convertedString13 = value["bucketNameNotLike"]; if (typeof convertedString13 !== "string") { errorMap[`$.bucketNameNotLike`] = { key: "validator.string", }; } else { if (convertedString13.length === 0) { result["bucketNameNotLike"] = undefined; } else { if (convertedString13.length < 1) { errorMap[`$.bucketNameNotLike`] = { key: "validator.length", minLength: 1, }; } else { result["bucketNameNotLike"] = convertedString13; } } } } if (value["createdAt"] === null || value["createdAt"] === undefined) { result["createdAt"] = undefined; } else { if ( typeof value["createdAt"] === "string" || typeof value["createdAt"] === "number" ) { result["createdAt"] = new Date(value["createdAt"]); } else if ( Object.prototype.toString.call(value["createdAt"]) === "[object Date]" ) { result["createdAt"] = value["createdAt"]; } else { errorMap[`$.createdAt`] = { key: "validator.type", expectedType: "Date|string", }; } if (isNaN(result["createdAt"]?.getTime() ?? undefined)) { errorMap[`$.createdAt`] = { key: "validator.date.invalid", }; } } if ( value["createdAtNotEqual"] === null || value["createdAtNotEqual"] === undefined ) { result["createdAtNotEqual"] = undefined; } else { if ( typeof value["createdAtNotEqual"] === "string" || typeof value["createdAtNotEqual"] === "number" ) { result["createdAtNotEqual"] = new Date(value["createdAtNotEqual"]); } else if ( Object.prototype.toString.call(value["createdAtNotEqual"]) === "[object Date]" ) { result["createdAtNotEqual"] = value["createdAtNotEqual"]; } else { errorMap[`$.createdAtNotEqual`] = { key: "validator.type", expectedType: "Date|string", }; } if (isNaN(result["createdAtNotEqual"]?.getTime() ?? undefined)) { errorMap[`$.createdAtNotEqual`] = { key: "validator.date.invalid", }; } } if (value["createdAtIn"] === null || value["createdAtIn"] === undefined) { result["createdAtIn"] = undefined; } else { let hasAnyOfMatch16 = false; errorMap[`$.createdAtIn`] = { key: "validator.anyOf", errors: [], }; if (!hasAnyOfMatch16) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap18 = {}; /** @type {any} */ let intermediateResult18 = undefined; /** @type {any} */ const intermediateValue18 = value["createdAtIn"]; if ( intermediateValue18 === null || intermediateValue18 === undefined ) { intermediateErrorMap18[`$`] = { key: "validator.undefined", }; } else { /** @type {ValidatorErrorMap} */ const intermediateErrorMap19 = {}; /** @type {Array<any>} */ const intermediateResult19 = []; /** @type {any | Array<any>} */ const intermediateValue19 = intermediateValue18; if (!Array.isArray(intermediateValue19)) { intermediateErrorMap18[`$`] = { key: "validator.array", value: intermediateValue19, }; } else { intermediateResult18 = []; for (let i19 = 0; i19 < intermediateValue19.length; ++i19) { if ( intermediateValue19[i19] === null || intermediateValue19[i19] === undefined ) { intermediateErrorMap19[`$.${i19}`] = { key: "validator.undefined", }; } else { if ( typeof intermediateValue19[i19] === "string" || typeof intermediateValue19[i19] === "number" ) { intermediateResult19[i19] = new Date( intermediateValue19[i19], ); } else if ( Object.prototype.toString.call(intermediateValue19[i19]) === "[object Date]" ) { intermediateResult19[i19] = intermediateValue19[i19]; } else { intermediateErrorMap19[`$.${i19}`] = { key: "validator.type", expectedType: "Date|string", }; } if ( isNaN(intermediateResult19[i19]?.getTime() ?? undefined) ) { intermediateErrorMap19[`$.${i19}`] = { key: "validator.date.invalid", }; } } } } if (Object.keys(intermediateErrorMap19).length) { for (const errorKey of Object.keys(intermediateErrorMap19)) { intermediateErrorMap18[`$${errorKey.substring(1)}`] = intermediateErrorMap19[errorKey]; } } else { intermediateResult18 = intermediateResult19; } } if (Object.keys(intermediateErrorMap18).length > 0) { errorMap[`$.createdAtIn`].errors.push(intermediateErrorMap18); } else { hasAnyOfMatch16 = true; delete errorMap[`$.createdAtIn`]; result["createdAtIn"] = intermediateResult18; } } if (!hasAnyOfMatch16) { /** @type {ValidatorErrorMap} */ const intermediateErrorMap18 = {}; /** @type {any} */ let intermediateResult18 = undefined; /** @type {any} */