1+ const path = require ( 'path' ) ;
2+ const { existsSync } = require ( 'fs' ) ;
13const { options } = require ( 'colorette' ) ;
4+ const webpackMerge = require ( 'webpack-merge' ) ;
25const GroupHelper = require ( './utils/GroupHelper' ) ;
36const handleConfigResolution = require ( './groups/ConfigGroup' ) ;
47const resolveMode = require ( './groups/resolveMode' ) ;
58const resolveStats = require ( './groups/resolveStats' ) ;
69const resolveOutput = require ( './groups/resolveOutput' ) ;
710const { Compiler } = require ( './utils/Compiler' ) ;
811const { groups, core } = require ( './utils/cli-flags' ) ;
9- const webpackMerge = require ( 'webpack-merge ' ) ;
12+ const basicResolver = require ( './groups/basicResolver ' ) ;
1013const { toKebabCase } = require ( './utils/helpers' ) ;
1114const argParser = require ( './utils/arg-parser' ) ;
1215const { outputStrategy } = require ( './utils/merge-strategies' ) ;
@@ -17,16 +20,6 @@ class WebpackCLI extends GroupHelper {
1720 this . groupMap = new Map ( ) ;
1821 this . args = { } ;
1922 this . compilation = new Compiler ( ) ;
20- this . defaultEntry = 'index' ;
21- this . possibleFileNames = [
22- `./${ this . defaultEntry } ` ,
23- `./${ this . defaultEntry } .js` ,
24- `${ this . defaultEntry } .js` ,
25- this . defaultEntry ,
26- `./src/${ this . defaultEntry } ` ,
27- `./src/${ this . defaultEntry } .js` ,
28- `src/${ this . defaultEntry } .js` ,
29- ] ;
3023 this . compilerConfiguration = { } ;
3124 this . outputConfiguration = { } ;
3225 }
@@ -106,11 +99,6 @@ class WebpackCLI extends GroupHelper {
10699 resolveGroups ( ) {
107100 for ( const [ key , value ] of this . groupMap . entries ( ) ) {
108101 switch ( key ) {
109- case groups . BASIC_GROUP : {
110- const BasicGroup = require ( './groups/BasicGroup' ) ;
111- this . basicGroup = new BasicGroup ( value ) ;
112- break ;
113- }
114102 case groups . ADVANCED_GROUP : {
115103 const AdvancedGroup = require ( './groups/AdvancedGroup' ) ;
116104 this . advancedGroup = new AdvancedGroup ( value ) ;
@@ -217,11 +205,13 @@ class WebpackCLI extends GroupHelper {
217205 * @returns {void }
218206 */
219207 _handleDefaultEntry ( ) {
220- if ( ! this . basicGroup ) {
221- const BasicGroup = require ( './groups/BasicGroup' ) ;
222- this . basicGroup = new BasicGroup ( ) ;
208+ let defaultEntry ;
209+ const rootIndexPath = path . resolve ( 'index.js' ) ;
210+ if ( existsSync ( rootIndexPath ) ) {
211+ defaultEntry = './index.js' ;
212+ } else {
213+ defaultEntry = './src/index.js' ;
223214 }
224- const defaultEntry = this . basicGroup . resolveFilePath ( null , 'index.js' ) ;
225215 const options = { entry : defaultEntry } ;
226216 this . _mergeOptionsToConfiguration ( options ) ;
227217 }
@@ -240,7 +230,7 @@ class WebpackCLI extends GroupHelper {
240230 . then ( ( ) => this . _baseResolver ( resolveMode , parsedArgs , this . compilerConfiguration ) )
241231 . then ( ( ) => this . _baseResolver ( resolveOutput , parsedArgs , { } , outputStrategy ) )
242232 . then ( ( ) => this . _handleCoreFlags ( ) )
243- . then ( ( ) => this . _handleGroupHelper ( this . basicGroup ) )
233+ . then ( ( ) => this . _baseResolver ( basicResolver , parsedArgs ) )
244234 . then ( ( ) => this . _handleGroupHelper ( this . advancedGroup ) )
245235 . then ( ( ) => this . _baseResolver ( resolveStats , parsedArgs ) )
246236 . then ( ( ) => this . _handleGroupHelper ( this . helpGroup ) ) ;
0 commit comments