{"version":3,"sources":["../../../../src/collections/operations/utilities/buildAfterOperation.ts"],"sourcesContent":["import type { CollectionSlug } from '../../../index.js'\nimport type { AfterOperationArg, OperationMap, OperationResult } from './types.js'\n\nexport const buildAfterOperation = async <\n TOperationGeneric extends CollectionSlug,\n O extends keyof OperationMap = keyof OperationMap,\n>(\n operationArgs: { operation: O } & Omit, 'req'>,\n): Promise> => {\n const { args, collection, operation, overrideAccess, result } = operationArgs\n\n let newResult = result as OperationResult\n\n if (args.collection.config.hooks?.afterOperation?.length) {\n for (const hook of args.collection.config.hooks.afterOperation) {\n const hookResult = await hook({\n args,\n collection,\n operation,\n overrideAccess,\n req: args.req,\n result: newResult,\n } as AfterOperationArg)\n\n if (hookResult !== undefined) {\n newResult = hookResult as OperationResult\n }\n }\n }\n\n return newResult\n}\n"],"names":["buildAfterOperation","operationArgs","args","collection","operation","overrideAccess","result","newResult","config","hooks","afterOperation","length","hook","hookResult","req","undefined"],"mappings":"AAGA,OAAO,MAAMA,sBAAsB,OAIjCC;IAEA,MAAM,EAAEC,IAAI,EAAEC,UAAU,EAAEC,SAAS,EAAEC,cAAc,EAAEC,MAAM,EAAE,GAAGL;IAEhE,IAAIM,YAAYD;IAEhB,IAAIJ,KAAKC,UAAU,CAACK,MAAM,CAACC,KAAK,EAAEC,gBAAgBC,QAAQ;QACxD,KAAK,MAAMC,QAAQV,KAAKC,UAAU,CAACK,MAAM,CAACC,KAAK,CAACC,cAAc,CAAE;YAC9D,MAAMG,aAAa,MAAMD,KAAK;gBAC5BV;gBACAC;gBACAC;gBACAC;gBACAS,KAAKZ,KAAKY,GAAG;gBACbR,QAAQC;YACV;YAEA,IAAIM,eAAeE,WAAW;gBAC5BR,YAAYM;YACd;QACF;IACF;IAEA,OAAON;AACT,EAAC"}