/**
 * Minified by jsDelivr using Terser v5.37.0.
 * Original file: /npm/nuxt-neo@5.0.1/lib/module.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
import path from"path";import{injectAPI,injectRouteControllerMapping}from"./server_middleware/api";import{controllerMappingClientSide}from"./utility/controllers";const DEFAULT_MODULE_OPTIONS={directory:"~/api",prefix:"/api",bodyParsers:"json",httpErrors:!0,debug:"production"!==process.env.NODE_ENV,noContentStatusOnEmpty:!0,clientSideApiHandler:"~/api_handler",successHandler:null,errorHandler:null,serverSuccessResponse:function(e,r,t){return!r.result&&t.noContentStatusOnEmpty?r.status(204).send():r.status(200).json(r.result)},serverErrorResponse:function(e,r,t,s){return e&&e.statusCode?t.status(e.statusCode).json({message:e.message,errors:e.errors}):s.debug?t.status(500).json({message:e.message,trace:e.stack.split("\n")}):t.status(500).json({message:"An internal error has occurred"})},serverNotFoundRouteResponse:function(e,r,t){return r.status(404).json({message:"Route not found"})}};export default async function NeoModule(e){(e=Object.assign({},DEFAULT_MODULE_OPTIONS,e,this.options.nuxtNeo)).directory=this.nuxt.resolver.resolveAlias(e.directory),e.httpErrors&&await import("./utility/http_errors"),this.addServerMiddleware(await injectAPI(e)),this.addServerMiddleware(injectRouteControllerMapping(e,this.nuxt.resolver)),e.httpErrors&&this.addPlugin({src:path.resolve(__dirname,"plugins","http_errors.js"),ssr:!1}),this.addPlugin({src:path.resolve(__dirname,"plugins","api.template.js"),options:{apiHandlerFile:e.clientSideApiHandler,successHandlerFile:e.successHandler,errorHandlerFile:e.errorHandler,controllers:JSON.stringify(await controllerMappingClientSide(e.directory)),apiConfig:JSON.stringify(e)}}),this.options.alias["~path-to-regexp"]=require.resolve("path-to-regexp")}
//# sourceMappingURL=/sm/5db509f22e79b4eb7fdd5c051296a872137923e94de6a794ec56b091207c66a7.map