#!/usr/bin/env node
import{a,b as o}from"./chunk-WMYKQURM.js";import{a as i,b as l}from"./chunk-GTNBSMZR.js";var d={name:"sleep",summary:"delay for a specified amount of time",usage:"sleep NUMBER[SUFFIX]",description:`Pause for NUMBER seconds. SUFFIX may be:
  s - seconds (default)
  m - minutes
  h - hours
  d - days

NUMBER may be a decimal number.`,options:["    --help display this help and exit"]},u=36e5;function m(n){let s=n.match(/^(\d+\.?\d*)(s|m|h|d)?$/);if(!s)return null;let e=parseFloat(s[1]);switch(s[2]||"s"){case"s":return e*1e3;case"m":return e*60*1e3;case"h":return e*60*60*1e3;case"d":return e*24*60*60*1e3;default:return null}}var c={name:"sleep",async execute(n,s){if(l(n))return i(d);if(n.length===0)return{stdout:"",stderr:`sleep: missing operand
`,exitCode:1};let e=0;for(let t of n){let r=m(t);if(r===null)return{stdout:"",stderr:`sleep: invalid time interval '${t}'
`,exitCode:1};e+=r}return e>u&&(e=u),s.signal?.aborted?{stdout:"",stderr:"",exitCode:0}:(s.sleep?await s.sleep(e):s.signal?await new Promise(t=>{let r=a(t,e);s.signal?.addEventListener("abort",()=>{o(r),t()},{once:!0})}):await new Promise(t=>a(t,e)),{stdout:"",stderr:"",exitCode:0})}},h={name:"sleep",flags:[],needsArgs:!0};export{c as a,h as b};
