@lucidcms/core
Version:
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
2 lines • 1.23 kB
JavaScript
import{copy as e}from"../../libs/i18n/copy.mjs";import t from"../../constants/constants.mjs";import n from"../../libs/repositories/email-change-requests.mjs";import r from"../../libs/repositories/user-tokens.mjs";const i=async(i,a)=>{let o=new r(i.db.client,i.config.db),s=new n(i.db.client,i.config.db),c=await s.selectActivePendingForUser({userId:a.userId,validation:{enabled:!0,defaultError:{status:404,message:e(`server:core.pending.email.change.not.found.message`)}}});if(c.error)return c;let l=new Date().toISOString(),[u,d]=await Promise.all([s.updateSingle({data:{status:t.emailChangeRequestStatuses.cancelled,cancelled_at:l,updated_at:l},where:[{key:`id`,operator:`=`,value:c.data.id},{key:`status`,operator:`=`,value:t.emailChangeRequestStatuses.pending}],returning:[`id`],validation:{enabled:!0,defaultError:{status:404,message:e(`server:core.pending.email.change.not.found.message`)}}}),o.updateMultiple({data:{revoked_at:l,revoke_reason:t.userTokenRevokeReasons.emailChangeCancelled,expiry_date:l},where:[{key:`id`,operator:`in`,value:[c.data.confirm_token_id,c.data.revert_token_id]}]})]);return u.error?u:d.error?d:{error:void 0,data:void 0}};export{i as default};
//# sourceMappingURL=cancel-email-change.mjs.map