From 33269c888d930d197ab47a3ec1d8a66c5469c43b Mon Sep 17 00:00:00 2001 From: cecil-the-coder Date: Fri, 15 Aug 2025 20:01:30 -0600 Subject: [PATCH] fix: resolve CommonJS import compatibility for chalk, inquirer, and ora (#442) Adds .default fallback for CommonJS imports to resolve compatibility issues with newer versions of chalk, inquirer, and ora packages. Fixes installer failures when error handlers or interactive prompts are triggered. Changes: - chalk: require('chalk').default || require('chalk') - inquirer: require('inquirer').default || require('inquirer') - ora: require('ora').default || require('ora') Affects: installer.js, ide-setup.js, file-manager.js, ide-base-setup.js, bmad.js Co-authored-by: Cecil --- tools/installer/bin/bmad.js | 4 ++-- tools/installer/lib/file-manager.js | 2 +- tools/installer/lib/ide-base-setup.js | 2 +- tools/installer/lib/ide-setup.js | 4 ++-- tools/installer/lib/installer.js | 6 +++--- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/tools/installer/bin/bmad.js b/tools/installer/bin/bmad.js index 51dff138..c425d927 100755 --- a/tools/installer/bin/bmad.js +++ b/tools/installer/bin/bmad.js @@ -4,8 +4,8 @@ const { program } = require('commander'); const path = require('path'); const fs = require('fs').promises; const yaml = require('js-yaml'); -const chalk = require('chalk'); -const inquirer = require('inquirer'); +const chalk = require('chalk').default || require('chalk'); +const inquirer = require('inquirer').default || require('inquirer'); const semver = require('semver'); const https = require('https'); diff --git a/tools/installer/lib/file-manager.js b/tools/installer/lib/file-manager.js index d173f32d..32a0f4a0 100644 --- a/tools/installer/lib/file-manager.js +++ b/tools/installer/lib/file-manager.js @@ -2,7 +2,7 @@ const fs = require("fs-extra"); const path = require("path"); const crypto = require("crypto"); const yaml = require("js-yaml"); -const chalk = require("chalk"); +const chalk = require("chalk").default || require("chalk"); const { createReadStream, createWriteStream, promises: fsPromises } = require('fs'); const { pipeline } = require('stream/promises'); const resourceLocator = require('./resource-locator'); diff --git a/tools/installer/lib/ide-base-setup.js b/tools/installer/lib/ide-base-setup.js index b0fca8e6..7b28e42c 100644 --- a/tools/installer/lib/ide-base-setup.js +++ b/tools/installer/lib/ide-base-setup.js @@ -6,7 +6,7 @@ const path = require("path"); const fs = require("fs-extra"); const yaml = require("js-yaml"); -const chalk = require("chalk"); +const chalk = require("chalk").default || require("chalk"); const fileManager = require("./file-manager"); const resourceLocator = require("./resource-locator"); const { extractYamlFromAgent } = require("../../lib/yaml-utils"); diff --git a/tools/installer/lib/ide-setup.js b/tools/installer/lib/ide-setup.js index 4dbc8e57..29fb6760 100644 --- a/tools/installer/lib/ide-setup.js +++ b/tools/installer/lib/ide-setup.js @@ -1,8 +1,8 @@ const path = require("path"); const fs = require("fs-extra"); const yaml = require("js-yaml"); -const chalk = require("chalk"); -const inquirer = require("inquirer"); +const chalk = require("chalk").default || require("chalk"); +const inquirer = require("inquirer").default || require("inquirer"); const fileManager = require("./file-manager"); const configLoader = require("./config-loader"); const { extractYamlFromAgent } = require("../../lib/yaml-utils"); diff --git a/tools/installer/lib/installer.js b/tools/installer/lib/installer.js index 30ed75ce..04da0864 100644 --- a/tools/installer/lib/installer.js +++ b/tools/installer/lib/installer.js @@ -1,8 +1,8 @@ const path = require("node:path"); const fs = require("fs-extra"); -const chalk = require("chalk"); -const ora = require("ora"); -const inquirer = require("inquirer"); +const chalk = require("chalk").default || require("chalk"); +const ora = require("ora").default || require("ora"); +const inquirer = require("inquirer").default || require("inquirer"); const fileManager = require("./file-manager"); const configLoader = require("./config-loader"); const ideSetup = require("./ide-setup");