chore: update comments to reference @clack/prompts instead of inquirer

- Update bmad-cli.js comment about CLI prompts
- Update config-collector.js JSDoc comments
- Rename inquirer variable to choiceUtils in ui.js
- Update JSDoc returns and calls documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Davor Racić 2026-01-13 10:12:28 +01:00
parent 224a944540
commit 4ba3a61ec3
3 changed files with 13 additions and 13 deletions

View File

@ -3,7 +3,7 @@ const path = require('node:path');
const fs = require('node:fs'); const fs = require('node:fs');
// Fix for stdin issues when running through npm on Windows // Fix for stdin issues when running through npm on Windows
// Ensures keyboard interaction works properly with inquirer prompts // Ensures keyboard interaction works properly with CLI prompts
if (process.stdin.isTTY) { if (process.stdin.isTTY) {
try { try {
process.stdin.resume(); process.stdin.resume();

View File

@ -835,7 +835,7 @@ class ConfigCollector {
} }
/** /**
* Build an inquirer question from a config item * Build a prompt question from a config item
* @param {string} moduleName - Module name * @param {string} moduleName - Module name
* @param {string} key - Config key * @param {string} key - Config key
* @param {Object} item - Config item definition * @param {Object} item - Config item definition
@ -997,7 +997,7 @@ class ConfigCollector {
message: message, message: message,
}; };
// Set default - if it's dynamic, use a function that inquirer will evaluate with current answers // Set default - if it's dynamic, use a function that the prompt will evaluate with current answers
// But if we have an existing value, always use that instead // But if we have an existing value, always use that instead
if (existingValue !== null && existingValue !== undefined && questionType !== 'list') { if (existingValue !== null && existingValue !== undefined && questionType !== 'list') {
question.default = existingValue; question.default = existingValue;

View File

@ -16,8 +16,8 @@ class Separator {
type = 'separator'; type = 'separator';
} }
// Provide a compatible interface // Separator for choice lists (compatible interface)
const inquirer = { Separator }; const choiceUtils = { Separator };
/** /**
* UI utilities for the installer * UI utilities for the installer
@ -448,7 +448,7 @@ class UI {
// First, add previously configured IDEs at the top, marked with ✅ // First, add previously configured IDEs at the top, marked with ✅
if (configuredIdes.length > 0) { if (configuredIdes.length > 0) {
ideChoices.push(new inquirer.Separator('── Previously Configured ──')); ideChoices.push(new choiceUtils.Separator('── Previously Configured ──'));
for (const ideValue of configuredIdes) { for (const ideValue of configuredIdes) {
// Skip empty or invalid IDE values // Skip empty or invalid IDE values
if (!ideValue || typeof ideValue !== 'string') { if (!ideValue || typeof ideValue !== 'string') {
@ -477,7 +477,7 @@ class UI {
// Add preferred tools (excluding already processed) // Add preferred tools (excluding already processed)
const remainingPreferred = preferredIdes.filter((ide) => !processedIdes.has(ide.value)); const remainingPreferred = preferredIdes.filter((ide) => !processedIdes.has(ide.value));
if (remainingPreferred.length > 0) { if (remainingPreferred.length > 0) {
ideChoices.push(new inquirer.Separator('── Recommended Tools ──')); ideChoices.push(new choiceUtils.Separator('── Recommended Tools ──'));
for (const ide of remainingPreferred) { for (const ide of remainingPreferred) {
ideChoices.push({ ideChoices.push({
name: `${ide.name}`, name: `${ide.name}`,
@ -491,7 +491,7 @@ class UI {
// Add other tools (excluding already processed) // Add other tools (excluding already processed)
const remainingOther = otherIdes.filter((ide) => !processedIdes.has(ide.value)); const remainingOther = otherIdes.filter((ide) => !processedIdes.has(ide.value));
if (remainingOther.length > 0) { if (remainingOther.length > 0) {
ideChoices.push(new inquirer.Separator('── Additional Tools ──')); ideChoices.push(new choiceUtils.Separator('── Additional Tools ──'));
for (const ide of remainingOther) { for (const ide of remainingOther) {
ideChoices.push({ ideChoices.push({
name: ide.name, name: ide.name,
@ -685,7 +685,7 @@ class UI {
* Get module choices for selection * Get module choices for selection
* @param {Set} installedModuleIds - Currently installed module IDs * @param {Set} installedModuleIds - Currently installed module IDs
* @param {Object} customContentConfig - Custom content configuration * @param {Object} customContentConfig - Custom content configuration
* @returns {Array} Module choices for inquirer * @returns {Array} Module choices for prompt
*/ */
async getModuleChoices(installedModuleIds, customContentConfig = null) { async getModuleChoices(installedModuleIds, customContentConfig = null) {
const moduleChoices = []; const moduleChoices = [];
@ -742,9 +742,9 @@ class UI {
if (allCustomModules.length > 0) { if (allCustomModules.length > 0) {
// Add separator for custom content, all custom modules, and official content separator // Add separator for custom content, all custom modules, and official content separator
moduleChoices.push( moduleChoices.push(
new inquirer.Separator('── Custom Content ──'), new choiceUtils.Separator('── Custom Content ──'),
...allCustomModules, ...allCustomModules,
new inquirer.Separator('── Official Content ──'), new choiceUtils.Separator('── Official Content ──'),
); );
} }
@ -785,7 +785,7 @@ class UI {
/** /**
* Prompt for directory selection * Prompt for directory selection
* @returns {Object} Directory answer from inquirer * @returns {Object} Directory answer from prompt
*/ */
async promptForDirectory() { async promptForDirectory() {
// Use sync validation because @clack/prompts doesn't support async validate // Use sync validation because @clack/prompts doesn't support async validate
@ -1069,7 +1069,7 @@ class UI {
* @sideeffects None - pure user input collection, no files written * @sideeffects None - pure user input collection, no files written
* @edgecases Shows warning if user enables TTS but AgentVibes not detected * @edgecases Shows warning if user enables TTS but AgentVibes not detected
* @calledby promptInstall() during installation flow, after core config, before IDE selection * @calledby promptInstall() during installation flow, after core config, before IDE selection
* @calls checkAgentVibesInstalled(), inquirer.prompt(), chalk.green/yellow/dim() * @calls checkAgentVibesInstalled(), prompts.select(), chalk.green/yellow/dim()
* *
* AI NOTE: This prompt is strategically positioned in installation flow: * AI NOTE: This prompt is strategically positioned in installation flow:
* - AFTER core config (user_name, etc) * - AFTER core config (user_name, etc)