{"version":3,"file":"prompts-DFl7xNfp.mjs","names":["colors"],"sources":["../src/utils/colors.ts","../src/utils/prompts.ts"],"sourcesContent":["import pc from 'picocolors'\n\nexport { pc as colors }\n\nconst METHOD_COLOR_MAP: Record<string, (s: string) => string> = {\n  GET: pc.green,\n  POST: pc.cyan,\n  PUT: pc.yellow,\n  PATCH: pc.magenta,\n  DELETE: pc.red,\n}\n\n/** Color an HTTP method string for terminal display */\nexport function httpMethodColor(method: string): string {\n  const fn = METHOD_COLOR_MAP[method] ?? pc.dim\n  return fn(method.padEnd(7))\n}\n\n/** Color a severity tag for terminal display (padded to 10 chars) */\nexport function severityColor(severity: string): string {\n  const tag = `[${severity}]`.padEnd(10)\n  switch (severity) {\n    case 'CRITICAL':\n      return pc.red(tag)\n    case 'WARNING':\n      return pc.yellow(tag)\n    case 'INFO':\n      return pc.blue(pc.dim(tag))\n    default:\n      return tag\n  }\n}\n","import * as clack from '@clack/prompts'\nimport { colors } from './colors'\n\nexport const symbols = {\n  success: colors.green('✓'),\n  error: colors.red('✖'),\n  warning: colors.yellow('⚠'),\n  info: colors.blue('ℹ'),\n}\n\n/** Show branded intro banner */\nexport function intro(title: string): void {\n  clack.intro(colors.bgCyan(colors.black(` ${title} `)))\n}\n\n/** Show closing message */\nexport function outro(message: string): void {\n  clack.outro(message)\n}\n\n/** Handle cancellation — print message and exit */\nfunction handleCancel(value: unknown): void {\n  if (clack.isCancel(value)) {\n    clack.cancel('Operation cancelled.')\n    process.exit(0)\n  }\n}\n\n/** Text input prompt */\nexport async function text(opts: {\n  message: string\n  placeholder?: string\n  defaultValue?: string\n  validate?: (value: string) => string | void\n}): Promise<string> {\n  const value = await clack.text(opts as any)\n  handleCancel(value)\n  return value as string\n}\n\n/** Single select prompt */\nexport async function select<T>(opts: {\n  message: string\n  options: { value: T; label: string; hint?: string }[]\n  initialValue?: T\n}): Promise<T> {\n  const value = await clack.select(opts as any)\n  handleCancel(value)\n  return value as T\n}\n\n/** Multi-select prompt with checkboxes */\nexport async function multiSelect<T>(opts: {\n  message: string\n  options: { value: T; label: string; hint?: string }[]\n  required?: boolean\n  initialValues?: T[]\n}): Promise<T[]> {\n  const value = await clack.multiselect(opts as any)\n  handleCancel(value)\n  return value as T[]\n}\n\n/** Yes/no confirmation prompt */\nexport async function confirm(opts: {\n  message: string\n  active?: string\n  inactive?: string\n  initialValue?: boolean\n}): Promise<boolean> {\n  const value = await clack.confirm(opts)\n  handleCancel(value)\n  return value as boolean\n}\n\n/** Create a spinner for progress indication */\nexport function spinner() {\n  return clack.spinner()\n}\n\n/** Log utilities for styled messages inside clack flow */\nexport const log = clack.log\n"],"mappings":";;;;;;;;;;2DAIA,MAAM,EAA0D,CAC9D,IAAK,EAAG,MACR,KAAM,EAAG,KACT,IAAK,EAAG,OACR,MAAO,EAAG,QACV,OAAQ,EAAG,GACb,EAGA,SAAgB,EAAgB,EAAwB,CAEtD,OADW,EAAiB,IAAW,EAAG,IAAA,CAChC,EAAO,OAAO,CAAC,CAAC,CAC5B,CAGA,SAAgB,EAAc,EAA0B,CACtD,IAAM,EAAM,IAAI,EAAS,GAAG,OAAO,EAAE,EACrC,OAAQ,EAAR,CACE,IAAK,WACH,OAAO,EAAG,IAAI,CAAG,EACnB,IAAK,UACH,OAAO,EAAG,OAAO,CAAG,EACtB,IAAK,OACH,OAAO,EAAG,KAAK,EAAG,IAAI,CAAG,CAAC,EAC5B,QACE,OAAO,CACX,CACF,CC3BWA,EAAO,MAAM,GAAG,EAClBA,EAAO,IAAI,GAAG,EACZA,EAAO,OAAO,GAAG,EACpBA,EAAO,KAAK,GAAG,EAIvB,SAAgB,EAAM,EAAqB,CACzC,EAAM,MAAMA,EAAO,OAAOA,EAAO,MAAM,IAAI,EAAM,EAAE,CAAC,CAAC,CACvD,CAGA,SAAgB,EAAM,EAAuB,CAC3C,EAAM,MAAM,CAAO,CACrB,CAGA,SAAS,EAAa,EAAsB,CACtC,EAAM,SAAS,CAAK,IACtB,EAAM,OAAO,sBAAsB,EACnC,QAAQ,KAAK,CAAC,EAElB,CAGA,eAAsB,EAAK,EAKP,CAClB,IAAM,EAAQ,MAAM,EAAM,KAAK,CAAW,EAE1C,OADA,EAAa,CAAK,EACX,CACT,CAGA,eAAsB,EAAU,EAIjB,CACb,IAAM,EAAQ,MAAM,EAAM,OAAO,CAAW,EAE5C,OADA,EAAa,CAAK,EACX,CACT,CAGA,eAAsB,EAAe,EAKpB,CACf,IAAM,EAAQ,MAAM,EAAM,YAAY,CAAW,EAEjD,OADA,EAAa,CAAK,EACX,CACT,CAGA,eAAsB,EAAQ,EAKT,CACnB,IAAM,EAAQ,MAAM,EAAM,QAAQ,CAAI,EAEtC,OADA,EAAa,CAAK,EACX,CACT,CAGA,SAAgB,GAAU,CACxB,OAAO,EAAM,QAAQ,CACvB,CAGA,MAAa,EAAM,EAAM"}