{"version":3,"file":"check-roles-exist.mjs","names":[],"sources":["../../../../src/services/users/checks/check-roles-exist.ts"],"sourcesContent":["import { copy } from \"../../../libs/i18n/index.js\";\nimport { RolesRepository } from \"../../../libs/repositories/index.js\";\nimport type { ServiceFn } from \"../../../utils/services/types.js\";\n\nconst checkRolesExist: ServiceFn<\n\t[\n\t\t{\n\t\t\troleIds: number[];\n\t\t\ttenantKey?: string | null;\n\t\t},\n\t],\n\tundefined\n> = async (context, data) => {\n\tif (data.roleIds.length === 0) {\n\t\treturn {\n\t\t\terror: undefined,\n\t\t\tdata: undefined,\n\t\t};\n\t}\n\n\tconst Roles = new RolesRepository(context.db.client, context.config.db);\n\tconst rolesRes = await Roles.selectMultipleIdsByIds({\n\t\tids: data.roleIds,\n\t\ttenantKey: data.tenantKey,\n\t\tvalidation: {\n\t\t\tenabled: true,\n\t\t},\n\t});\n\tif (rolesRes.error) return rolesRes;\n\n\tif (rolesRes.data.length !== data.roleIds.length) {\n\t\treturn {\n\t\t\terror: {\n\t\t\t\ttype: \"basic\",\n\t\t\t\tstatus: 400,\n\t\t\t\terrors: {\n\t\t\t\t\troleIds: {\n\t\t\t\t\t\tcode: \"invalid\",\n\t\t\t\t\t\tmessage: copy(\"server:core.roles.not.found.message\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tdata: undefined,\n\t\t};\n\t}\n\n\treturn {\n\t\terror: undefined,\n\t\tdata: undefined,\n\t};\n};\n\nexport default checkRolesExist;\n"],"mappings":"uGAIA,MAAM,EAQF,MAAO,EAAS,IAAS,CAC5B,GAAI,EAAK,QAAQ,SAAW,EAC3B,MAAO,CACN,MAAO,IAAA,GACP,KAAM,IAAA,EACP,EAID,IAAM,EAAW,MAAM,IADL,EAAgB,EAAQ,GAAG,OAAQ,EAAQ,OAAO,EACzC,CAAC,CAAC,uBAAuB,CACnD,IAAK,EAAK,QACV,UAAW,EAAK,UAChB,WAAY,CACX,QAAS,EACV,CACD,CAAC,EAmBD,OAlBI,EAAS,MAAc,EAEvB,EAAS,KAAK,SAAW,EAAK,QAAQ,OAgBnC,CACN,MAAO,IAAA,GACP,KAAM,IAAA,EACP,EAlBQ,CACN,MAAO,CACN,KAAM,QACN,OAAQ,IACR,OAAQ,CACP,QAAS,CACR,KAAM,UACN,QAAS,EAAK,qCAAqC,CACpD,CACD,CACD,EACA,KAAM,IAAA,EACP,CAOF"}