UNPKG

@lucidcms/core

Version:

The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.

1 lines 1.79 kB
{"version":3,"file":"validate-input.mjs","names":["constants"],"sources":["../../../../../../src/libs/collection/custom-fields/fields/user/validate-input.ts"],"sourcesContent":["import constants from \"../../../../../constants/constants.js\";\nimport type { ServiceContext } from \"../../../../../types.js\";\nimport logger from \"../../../../logger/index.js\";\nimport { UsersRepository } from \"../../../../repositories/index.js\";\nimport type { FieldRelationValidationInput } from \"../../types.js\";\nimport type { UserValidationData } from \"./types.js\";\n\n/**\n * Validate user input data\n */\nconst validateUserInputData = async (\n\tcontext: ServiceContext,\n\tinput: FieldRelationValidationInput,\n): Promise<UserValidationData[]> => {\n\tconst userIds = input.default ?? [];\n\tif (userIds.length === 0) return [];\n\n\ttry {\n\t\tconst Users = new UsersRepository(context.db.client, context.config.db);\n\n\t\tconst usersRes = await Users.selectMultipleByIds({\n\t\t\tids: userIds,\n\t\t\ttenantKey: context.request.tenantKey,\n\t\t\tvalidation: {\n\t\t\t\tenabled: true,\n\t\t\t},\n\t\t});\n\n\t\treturn usersRes.error ? [] : usersRes.data;\n\t} catch (_err) {\n\t\tlogger.error({\n\t\t\tscope: constants.logScopes.validation,\n\t\t\tmessage: \"Failed to fetch users for field validation\",\n\t\t});\n\t\treturn [];\n\t}\n};\n\nexport default validateUserInputData;\n"],"mappings":"oJAUA,MAAM,EAAwB,MAC7B,EACA,IACmC,CACnC,IAAM,EAAU,EAAM,SAAW,CAAC,EAClC,GAAI,EAAQ,SAAW,EAAG,MAAO,CAAC,EAElC,GAAI,CAGH,IAAM,EAAW,MAAM,IAFL,EAAgB,EAAQ,GAAG,OAAQ,EAAQ,OAAO,EAEzC,CAAC,CAAC,oBAAoB,CAChD,IAAK,EACL,UAAW,EAAQ,QAAQ,UAC3B,WAAY,CACX,QAAS,EACV,CACD,CAAC,EAED,OAAO,EAAS,MAAQ,CAAC,EAAI,EAAS,IACvC,MAAe,CAKd,OAJA,EAAO,MAAM,CACZ,MAAOA,EAAU,UAAU,WAC3B,QAAS,4CACV,CAAC,EACM,CAAC,CACT,CACD"}