From 7fca94867dca4613076112ee88d4e1a912cf5a86 Mon Sep 17 00:00:00 2001 From: ev1stensberg Date: Thu, 17 May 2018 17:05:11 +0200 Subject: [PATCH] cli(path): resolve better --- bin/prompt-command.js | 23 ++++++++++++++++++----- package.json | 2 +- packages/init/index.js | 2 +- 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/bin/prompt-command.js b/bin/prompt-command.js index c77f3c8f1a8..8db70736521 100644 --- a/bin/prompt-command.js +++ b/bin/prompt-command.js @@ -31,13 +31,20 @@ const runCommand = (command, args) => { module.exports = function promptForInstallation(packages, ...args) { const nameOfPackage = "@webpack-cli/" + packages; let packageIsInstalled = false; + let pathForCmd; try { - require.resolve(nameOfPackage); + const path = require("path"); + pathForCmd = path.resolve( + process.cwd(), + "node_modules", + "@webpack-cli", + packages + ); + require.resolve(pathForCmd); packageIsInstalled = true; } catch (err) { packageIsInstalled = false; } - if (!packageIsInstalled) { const path = require("path"); const fs = require("fs"); @@ -71,10 +78,16 @@ module.exports = function promptForInstallation(packages, ...args) { //eslint-disable-next-line runCommand(packageManager, options) .then(result => { + pathForCmd = path.resolve( + process.cwd(), + "node_modules", + "@webpack-cli", + packages + ); if (packages === "serve") { - return require(`@webpack-cli/${packages}`).serve(); + return require(pathForCmd).serve(); } - return require(nameOfPackage)(...args); //eslint-disable-line + return require(pathForCmd)(...args); //eslint-disable-line }) .catch(error => { console.error(error); @@ -92,6 +105,6 @@ module.exports = function promptForInstallation(packages, ...args) { } }); } else { - require(nameOfPackage)(...args); // eslint-disable-line + require(pathForCmd)(...args); // eslint-disable-line } }; diff --git a/package.json b/package.json index f8cac1a179d..5f471a13eba 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "webpack-cli", - "version": "0.0.3-development", + "version": "0.0.4-development", "description": "CLI for webpack & friends", "license": "MIT", "repository": { diff --git a/packages/init/index.js b/packages/init/index.js index 237b2da4264..6a2c4987f72 100644 --- a/packages/init/index.js +++ b/packages/init/index.js @@ -1,7 +1,7 @@ "use strict"; const npmPackagesExists = require("@webpack-cli/utils/npm-packages-exists"); -const defaultGenerator = require("@webpack-cli/utils/generators/init-generator"); +const defaultGenerator = require("@webpack-cli/generators/init-generator"); const modifyHelper = require("@webpack-cli/utils/modify-config-helper"); /**