@@ -6,18 +6,30 @@ import configHandler from "./ConfigHandler.js";
6
6
import { ModuleCategory } from "./modules/Module.js" ;
7
7
import Logger from "../../utils/logger.js" ;
8
8
9
+ import type Module from "./modules/Module.js" ;
9
10
import type { ModuleNode } from "./modules/Module.js" ;
10
11
11
12
type LocalConfigOptions = {
12
13
node ?: string ;
13
14
modules ?: string [ ] ;
14
15
} ;
15
16
17
+ const formatModuleName = ( module : Module ) => {
18
+ let name = `${ module . name } - ${ module . description } ` ;
19
+ if ( process . env . NODE_ENV === "development" ) {
20
+ name += chalk . gray ( ` - ${ module . package . name } ` ) ;
21
+ }
22
+ if ( module . package . symlinked ) {
23
+ name += chalk . gray ( " (installed via --link)" ) ;
24
+ }
25
+ return name ;
26
+ } ;
27
+
16
28
export const setupConfig = async ( options : LocalConfigOptions = { } ) => {
17
29
const modules = await configHandler . getAllModules ( ) ;
18
30
if ( ! modules . length ) {
19
31
Logger . error ( "No installed modules were found" ) ;
20
- Logger . error ( "Run `zksync-cli dev install [module-name...]` to install modules." ) ;
32
+ Logger . error ( "Run `npx zksync-cli dev install [module-name...]` to install modules." ) ;
21
33
return ;
22
34
}
23
35
@@ -31,7 +43,7 @@ export const setupConfig = async (options: LocalConfigOptions = {}) => {
31
43
type : "list" ,
32
44
when : ( ) => nodes . length > 0 ,
33
45
choices : nodes . map ( ( node ) => ( {
34
- name : ` ${ node . name } - ${ node . description } ` ,
46
+ name : formatModuleName ( node ) ,
35
47
short : node . name ,
36
48
value : node . package . name ,
37
49
} ) ) ,
@@ -54,12 +66,12 @@ export const setupConfig = async (options: LocalConfigOptions = {}) => {
54
66
potentialModules . map ( async ( module ) => {
55
67
try {
56
68
return {
57
- ... module ,
69
+ instance : module ,
58
70
unsupported : ( await module . isNodeSupported ( nodeInfo ) ) ? false : "Module doesn't support selected node" ,
59
71
} ;
60
72
} catch ( error ) {
61
73
return {
62
- ... module ,
74
+ instance : module ,
63
75
unsupported : "Failed to check node support status" ,
64
76
} ;
65
77
}
@@ -71,11 +83,11 @@ export const setupConfig = async (options: LocalConfigOptions = {}) => {
71
83
return a . unsupported ? 1 : - 1 ;
72
84
}
73
85
// If categories are equal, compare by name.
74
- if ( a . category === b . category ) {
75
- return a . name . localeCompare ( b . name ) ;
86
+ if ( a . instance . category === b . instance . category ) {
87
+ return a . instance . name . localeCompare ( b . instance . name ) ;
76
88
}
77
89
// Compare by category.
78
- return a . category . localeCompare ( b . category ) ;
90
+ return a . instance . category . localeCompare ( b . instance . category ) ;
79
91
} ) ;
80
92
81
93
const modulesAnswers : LocalConfigOptions = await inquirer . prompt (
@@ -86,9 +98,9 @@ export const setupConfig = async (options: LocalConfigOptions = {}) => {
86
98
type : "checkbox" ,
87
99
when : ( ) => sortedModules . length > 0 ,
88
100
choices : sortedModules . map ( ( module ) => ( {
89
- name : ` ${ module . name } - ${ module . description } ` ,
90
- short : module . name ,
91
- value : module . package . name ,
101
+ name : formatModuleName ( module . instance ) ,
102
+ short : module . instance . name ,
103
+ value : module . instance . package . name ,
92
104
disabled : module . unsupported ,
93
105
} ) ) ,
94
106
} ,
@@ -120,7 +132,7 @@ export const handler = async (options: LocalConfigOptions = {}) => {
120
132
await setupConfig ( options ) ;
121
133
122
134
Logger . info ( "\nConfiguration saved successfully!" , { noFormat : true } ) ;
123
- Logger . info ( `Start configured environment with \`${ chalk . magentaBright ( "zksync-cli dev start" ) } \`` ) ;
135
+ Logger . info ( `Start configured environment with \`${ chalk . magentaBright ( "npx zksync-cli dev start" ) } \`` ) ;
124
136
} catch ( error ) {
125
137
Logger . error ( "There was an error while configuring the testing environment:" ) ;
126
138
Logger . error ( error ) ;
0 commit comments