UNPKG

@lucidcms/core

Version:

The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.

2 lines 1.71 kB
import{copy as e}from"../../../../i18n/copy.mjs";import t from"../../../../../constants/constants.mjs";import n from"../../../../../utils/errors/lucid-api-error.mjs";import r from"../../../../../services/auth/invitation/accept-invitation.mjs";import i from"../../../utils/create-service-context.mjs";import a from"../../../../../utils/services/service-wrapper.mjs";import o from"../../../middleware/rate-limiter.mjs";import s from"../../../middleware/validate.mjs";import c from"../../../middleware/validate-csrf.mjs";import l from"../../../openapi/index.mjs";import{controllerSchemas as u}from"../../../../../schemas/auth.mjs";import{minutesToMilliseconds as d}from"date-fns";import{createFactory as f}from"hono/factory";import{describeRoute as p}from"hono-openapi";const m=f().createHandlers(p({description:`Accepts an invitation and sets the user's password. This will mark the invitation as accepted.`,tags:[`auth`],summary:`Accept Invitation`,responses:l.responses(),parameters:l.parameters({headers:{csrf:!0},params:u.acceptInvitation.params}),requestBody:l.requestBody(u.acceptInvitation.body)}),c,o({mode:`ip`,limit:t.rateLimit.scopes.sensitive.limit,scope:t.rateLimit.scopes.sensitive.scopeKey,windowMs:d(1)}),s(`param`,u.acceptInvitation.params),s(`json`,u.acceptInvitation.body),async t=>{let{token:o}=t.req.valid(`param`),{password:s}=t.req.valid(`json`),c=i(t),l=await a(r,{transaction:!0,defaultError:{type:`basic`,name:e(`server:core.routes.accept.invitation.error.name`),message:e(`server:core.routes.accept.invitation.error.message`)}})(c,{token:o,password:s});if(l.error)throw new n(l.error);return t.status(204),t.body(null)});export{m as default}; //# sourceMappingURL=accept-invitation.mjs.map