{"version":3,"sources":["../../src/utils/prompt.ts"],"names":["getConfirmation","question","resolve","logger","onData","text","cleanedText","createConfirmationHandler","options","prompter"],"mappings":"4CAIO,MAAMA,EAA6BC,CAAAA,EACjC,IAAI,OAAA,CAAQC,CAAAA,EAAW,CAC5BC,aAAAA,CAAO,MAAA,CAAOF,CAAQ,CAAA,CACtB,QAAQ,KAAA,CAAM,WAAA,CAAY,MAAM,CAAA,CAChC,OAAA,CAAQ,KAAA,CAAM,MAAA,EAAO,CACrB,MAAMG,CAAAA,CAAUC,CAAAA,EAAiB,CAC/B,MAAMC,EAAcD,CAAAA,CAAK,IAAA,EAAK,CAAE,WAAA,GAE9BH,CAAAA,CADEI,CAAAA,GAAgB,GAAA,EAAOA,CAAAA,GAAgB,KAC7B,CAAA,CAId,OAAA,CAAQ,KAAA,CAAM,OAAM,CACpB,OAAA,CAAQ,KAAA,CAAM,cAAA,CAAe,OAAQF,CAAM,EAC7C,CAAA,CACA,OAAA,CAAQ,MAAM,EAAA,CAAG,MAAA,CAAQA,CAAM,EACjC,CAAC,CAAA,CAGUG,CAAAA,CAA4B,CAACC,EAA6B,EAAC,CAAGC,CAAAA,GACrED,CAAAA,CAAQ,IACH,IAAM,OAAA,CAAQ,OAAA,CAAQ,IAAI,EAE5BC,CAAAA,EAAYT","file":"prompt.cjs","sourcesContent":["import { logger } from './logger';\n\nexport type Prompter = (question: string) => Promise<boolean>;\n\nexport const getConfirmation: Prompter = (question: string) => {\n  return new Promise(resolve => {\n    logger.prompt(question);\n    process.stdin.setEncoding('utf8');\n    process.stdin.resume();\n    const onData = (text: string) => {\n      const cleanedText = text.trim().toLowerCase();\n      if (cleanedText === 'y' || cleanedText === 'yes') {\n        resolve(true);\n      } else {\n        resolve(false);\n      }\n      process.stdin.pause();\n      process.stdin.removeListener('data', onData);\n    };\n    process.stdin.on('data', onData);\n  });\n};\n\nexport const createConfirmationHandler = (options: { yes?: boolean } = {}, prompter?: Prompter): Prompter => {\n  if (options.yes) {\n    return () => Promise.resolve(true);\n  }\n  return prompter || getConfirmation;\n};"]}