{"version":3,"file":"errors.mjs","sources":["../../src/middlewares/errors.ts"],"sourcesContent":["import { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nimport { formatApplicationError, formatHttpError, formatInternalError } from '../services/errors';\n\nconst errorMiddleware: Core.MiddlewareFactory = (/* _, { strapi } */) => {\n  return async (ctx, next) => {\n    try {\n      await next();\n\n      if (!ctx.response._explicitStatus) {\n        return ctx.notFound();\n      }\n    } catch (error) {\n      if (error instanceof errors.ApplicationError) {\n        const { status, body } = formatApplicationError(error);\n        ctx.status = status;\n        ctx.body = body;\n        return;\n      }\n\n      if (error instanceof errors.HttpError) {\n        const { status, body } = formatHttpError(error);\n        ctx.status = status;\n        ctx.body = body;\n        return;\n      }\n\n      strapi.log.error(error);\n\n      const { status, body } = formatInternalError(error);\n      ctx.status = status;\n      ctx.body = body;\n    }\n  };\n};\n\nexport { errorMiddleware as errors };\n"],"names":["errorMiddleware","ctx","next","response","_explicitStatus","notFound","error","errors","ApplicationError","status","body","formatApplicationError","HttpError","formatHttpError","strapi","log","formatInternalError"],"mappings":";;;AAKA,MAAMA,eAAAA,GAA0C,IAAA;AAC9C,IAAA,OAAO,OAAOC,GAAAA,EAAKC,IAAAA,GAAAA;QACjB,IAAI;YACF,MAAMA,IAAAA,EAAAA;AAEN,YAAA,IAAI,CAACD,GAAAA,CAAIE,QAAQ,CAACC,eAAe,EAAE;AACjC,gBAAA,OAAOH,IAAII,QAAQ,EAAA;AACrB,YAAA;AACF,QAAA,CAAA,CAAE,OAAOC,KAAAA,EAAO;YACd,IAAIA,KAAAA,YAAiBC,MAAAA,CAAOC,gBAAgB,EAAE;AAC5C,gBAAA,MAAM,EAAEC,MAAM,EAAEC,IAAI,EAAE,GAAGC,sBAAAA,CAAuBL,KAAAA,CAAAA;AAChDL,gBAAAA,GAAAA,CAAIQ,MAAM,GAAGA,MAAAA;AACbR,gBAAAA,GAAAA,CAAIS,IAAI,GAAGA,IAAAA;AACX,gBAAA;AACF,YAAA;YAEA,IAAIJ,KAAAA,YAAiBC,MAAAA,CAAOK,SAAS,EAAE;AACrC,gBAAA,MAAM,EAAEH,MAAM,EAAEC,IAAI,EAAE,GAAGG,eAAAA,CAAgBP,KAAAA,CAAAA;AACzCL,gBAAAA,GAAAA,CAAIQ,MAAM,GAAGA,MAAAA;AACbR,gBAAAA,GAAAA,CAAIS,IAAI,GAAGA,IAAAA;AACX,gBAAA;AACF,YAAA;YAEAI,MAAAA,CAAOC,GAAG,CAACT,KAAK,CAACA,KAAAA,CAAAA;AAEjB,YAAA,MAAM,EAAEG,MAAM,EAAEC,IAAI,EAAE,GAAGM,mBAAAA,CAAoBV,KAAAA,CAAAA;AAC7CL,YAAAA,GAAAA,CAAIQ,MAAM,GAAGA,MAAAA;AACbR,YAAAA,GAAAA,CAAIS,IAAI,GAAGA,IAAAA;AACb,QAAA;AACF,IAAA,CAAA;AACF;;;;"}