@lucidcms/core
Version:
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
2 lines • 895 B
JavaScript
import e from"../../libs/repositories/document-publish-operations.mjs";import{schedulingDispatchWindowMs as t}from"../document-publish-operations/helpers/index.mjs";import n from"../document-publish-operations/schedule-approved.mjs";const r=async r=>{if(!r.queue.support.scheduling)return{error:void 0,data:void 0};let i=new e(r.db.client,r.config.db),a=new Date(Date.now()+t).toISOString(),o=await i.selectMultiple({select:[`id`],where:[{key:`status`,operator:`=`,value:`approved`},{key:`execution_status`,operator:`=`,value:`scheduled`},{key:`scheduled_job_id`,operator:`is`,value:null},{key:`scheduled_at`,operator:`<=`,value:a}]});if(o.error)return o;let s=await Promise.all((o.data??[]).map(e=>n(r,{id:e.id,eventType:`scheduled`})));for(let e of s)if(e.error)return e;return{error:void 0,data:void 0}};export{r as default};
//# sourceMappingURL=dispatch-scheduled-publish-operations.mjs.map