@@ -69,8 +69,10 @@ async function askBeforeWrite(options: Options, path: string, content: string) {
6969export async function writeFiles ( options : Options , { jsonConfig, payloads} : Files ) {
7070 const baseName = generateFolderName ( options ) ;
7171 const baseFolder = path . join ( process . cwd ( ) , 'src/contracts/updates/' , baseName ) ;
72+ const zkSyncBaseFolder = path . join ( process . cwd ( ) , 'zksync/src/contracts/updates' , baseName ) ;
73+ const isZkSync = options . pools . includes ( 'AaveV3ZkSync' ) ;
7274
73- if ( fs . existsSync ( baseFolder ) ) {
75+ if ( fs . existsSync ( baseFolder ) || ( isZkSync && fs . existsSync ( zkSyncBaseFolder ) ) ) {
7476 if ( ! options . force && fs . existsSync ( baseFolder ) ) {
7577 const force = await confirm ( {
7678 message : 'A proposal already exists at that location, do you want to continue?' ,
@@ -79,16 +81,25 @@ export async function writeFiles(options: Options, {jsonConfig, payloads}: Files
7981 if ( ! force ) return ;
8082 }
8183 } else {
82- fs . mkdirSync ( baseFolder , { recursive : true } ) ;
84+ if ( isZkSync ) {
85+ fs . mkdirSync ( zkSyncBaseFolder , { recursive : true } ) ;
86+ }
87+ if ( ! isZkSync || options . pools . length > 1 ) {
88+ fs . mkdirSync ( baseFolder , { recursive : true } ) ;
89+ }
8390 }
8491
8592 // write config
86- await askBeforeWrite ( options , path . join ( baseFolder , 'config.ts' ) , jsonConfig ) ;
93+ await askBeforeWrite (
94+ options ,
95+ path . join ( isZkSync ? zkSyncBaseFolder : baseFolder , 'config.ts' ) ,
96+ jsonConfig
97+ ) ;
8798
88- for ( const { payload, contractName} of payloads ) {
99+ for ( const { pool , payload, contractName} of payloads ) {
89100 await askBeforeWrite (
90101 options ,
91- path . join ( baseFolder , `${ contractName } .sol` ) ,
102+ path . join ( pool === 'AaveV3ZkSync' ? zkSyncBaseFolder : baseFolder , `${ contractName } .sol` ) ,
92103 payload ,
93104 ) ;
94105 }
0 commit comments