Compare commits

...

2 Commits

Author SHA1 Message Date
Davor Racic eead7b1ddf
Merge 25ca803eed into 5b5cb1a396 2026-02-15 08:54:49 +01:00
Davor Racić 25ca803eed fix: improve module config UX messaging and spacing
- Move "Module configuration complete" to appear after all customization
  prompts finish, not just after defaults are applied
- Change spinner stop message to "Module defaults applied" for clarity
  when customization follows; keep "Module configuration complete" for
  express mode where no customization prompts follow
- Remove extra blank line before post-install notes
- Wrap spinner loop in try/finally for error safety

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:12:42 +01:00
1 changed files with 16 additions and 10 deletions

View File

@ -302,23 +302,30 @@ class ConfigCollector {
const configSpinner = await prompts.spinner(); const configSpinner = await prompts.spinner();
configSpinner.start('Configuring modules...'); configSpinner.start('Configuring modules...');
for (const moduleName of defaultModules) { try {
const displayName = displayNameMap.get(moduleName) || moduleName.toUpperCase(); for (const moduleName of defaultModules) {
configSpinner.message(`Configuring ${displayName}...`); const displayName = displayNameMap.get(moduleName) || moduleName.toUpperCase();
try { configSpinner.message(`Configuring ${displayName}...`);
this._silentConfig = true; try {
await this.collectModuleConfig(moduleName, projectDir); this._silentConfig = true;
} finally { await this.collectModuleConfig(moduleName, projectDir);
this._silentConfig = false; } finally {
this._silentConfig = false;
}
} }
} finally {
configSpinner.stop(customizeModules.length > 0 ? 'Module defaults applied' : 'Module configuration complete');
} }
configSpinner.stop('Module configuration complete');
} }
// Run customized modules individually (may show interactive prompts) // Run customized modules individually (may show interactive prompts)
for (const moduleName of customizeModules) { for (const moduleName of customizeModules) {
await this.collectModuleConfig(moduleName, projectDir); await this.collectModuleConfig(moduleName, projectDir);
} }
if (customizeModules.length > 0) {
await prompts.log.step('Module configuration complete');
}
} }
// Add metadata // Add metadata
@ -1239,7 +1246,6 @@ class ConfigCollector {
hasOutput = true; hasOutput = true;
const message = valueMessages[selectedValue]; const message = valueMessages[selectedValue];
await prompts.log.message('');
for (const line of message.trim().split('\n')) { for (const line of message.trim().split('\n')) {
const trimmedLine = line.trim(); const trimmedLine = line.trim();
if (trimmedLine.endsWith(':') && !trimmedLine.startsWith(' ')) { if (trimmedLine.endsWith(':') && !trimmedLine.startsWith(' ')) {