@lucidcms/core
Version:
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
2 lines • 1.96 kB
JavaScript
import{copy as e}from"../../../i18n/copy.mjs";import t from"../../../../utils/errors/lucid-api-error.mjs";import n from"../../utils/create-service-context.mjs";import r from"../../../../utils/services/service-wrapper.mjs";import i from"../../../../services/media/update-single.mjs";import{Permissions as a}from"../../../permission/definitions.mjs";import o from"../../middleware/authenticate.mjs";import s from"../../middleware/permissions.mjs";import c from"../../middleware/validate.mjs";import l from"../../middleware/validate-csrf.mjs";import u from"../../openapi/index.mjs";import{controllerSchemas as d}from"../../../../schemas/media.mjs";import{createFactory as f}from"hono/factory";import{describeRoute as p}from"hono-openapi";const m=f().createHandlers(p({description:`Update a single media entry with translations and new upload.`,tags:[`media`],summary:`Update Media`,responses:u.responses({noProperties:!0}),parameters:u.parameters({params:d.updateSingle.params,headers:{csrf:!0}}),requestBody:u.requestBody(d.updateSingle.body)}),l,o(),s([a.MediaUpdate]),c(`param`,d.updateSingle.params),c(`json`,d.updateSingle.body),async a=>{let{id:o}=a.req.valid(`param`),s=a.req.valid(`json`),c=n(a),l=await r(i,{transaction:!0,defaultError:{type:`basic`,name:e(`server:core.routes.media.update.error.name`),message:e(`server:core.routes.media.update.error.message`)}})(c,{id:Number.parseInt(o,10),fileName:s.fileName,key:s.key,public:s.public,folderId:s.folderId,title:s.title,alt:s.alt,description:s.description,summary:s.summary,width:s.width,height:s.height,focalPoint:s.focalPoint,blurHash:s.blurHash,averageColor:s.averageColor,base64:s.base64,isDark:s.isDark,isLight:s.isLight,isDeleted:s.isDeleted,posterId:s.posterId,crop:s.crop,origin:s.origin,aiGenerationRequestId:s.aiGenerationRequestId,userId:a.get(`auth`).id});if(l.error)throw new t(l.error);return a.status(204),a.body(null)});export{m as default};
//# sourceMappingURL=update-single.mjs.map