@@ -90,19 +90,29 @@ function organizeByVersion(): void {
9090
9191 for ( const mapping of versionMappings ) {
9292 const versionDir = path . join ( VERSIONS_DIR , mapping . sourceVersion . toString ( ) ) ;
93+ const srcDir = path . join ( versionDir , 'src' ) ;
9394
94- // Create version directory
95- if ( ! fs . existsSync ( versionDir ) ) {
96- fs . mkdirSync ( versionDir , { recursive : true } ) ;
95+ // Create version directory and src subdirectory
96+ if ( ! fs . existsSync ( srcDir ) ) {
97+ fs . mkdirSync ( srcDir , { recursive : true } ) ;
9798 }
9899
99100 console . log ( `Processing version ${ mapping . sourceVersion } ...` ) ;
100101
101- // Copy transformers
102+ // Copy transformers to src directory
102103 for ( const transformer of mapping . transformers ) {
103104 const sourcePath = path . join ( VERSIONS_DIR , transformer . fileName ) ;
104- const destFileName = path . basename ( transformer . fileName ) ;
105- const destPath = path . join ( versionDir , destFileName ) ;
105+ let destFileName = path . basename ( transformer . fileName ) ;
106+
107+ // Rename direct transformers to avoid conflicts
108+ if ( transformer . fileName . startsWith ( 'direct/' ) ) {
109+ const match = destFileName . match ( / v ( \d + ) - t o - v ( \d + ) \. t s / ) ;
110+ if ( match ) {
111+ destFileName = `v${ match [ 1 ] } -to-v${ match [ 2 ] } -direct.ts` ;
112+ }
113+ }
114+
115+ const destPath = path . join ( srcDir , destFileName ) ;
106116
107117 if ( fs . existsSync ( sourcePath ) ) {
108118 copyTransformer ( sourcePath , destPath ) ;
@@ -112,12 +122,12 @@ function organizeByVersion(): void {
112122 }
113123 }
114124
115- // Create index file
125+ // Create index file in src directory
116126 const indexContent = createIndexFile ( mapping . sourceVersion , mapping . transformers ) ;
117- fs . writeFileSync ( path . join ( versionDir , 'index.js' ) , indexContent ) ;
127+ fs . writeFileSync ( path . join ( srcDir , 'index.js' ) , indexContent ) ;
118128 console . log ( ` ✓ Created index.js` ) ;
119129
120- // Create README
130+ // Create README in version directory (not in src)
121131 copyReadme ( versionDir ) ;
122132 console . log ( ` ✓ Created README.md` ) ;
123133
@@ -128,11 +138,11 @@ function organizeByVersion(): void {
128138 console . log ( 'Copying dependency transformers...' ) ;
129139
130140 // v14 needs v14-to-v15 for its direct transformer
131- const v14Dir = path . join ( VERSIONS_DIR , '14' ) ;
141+ const v14SrcDir = path . join ( VERSIONS_DIR , '14' , 'src ') ;
132142 if ( fs . existsSync ( path . join ( VERSIONS_DIR , 'v14-to-v15.ts' ) ) ) {
133143 copyTransformer (
134144 path . join ( VERSIONS_DIR , 'v14-to-v15.ts' ) ,
135- path . join ( v14Dir , 'v14-to-v15.ts' )
145+ path . join ( v14SrcDir , 'v14-to-v15.ts' )
136146 ) ;
137147 console . log ( ' ✓ Copied v14-to-v15.ts to v14 directory (dependency)' ) ;
138148 }
@@ -141,40 +151,40 @@ function organizeByVersion(): void {
141151 if ( fs . existsSync ( path . join ( VERSIONS_DIR , 'v15-to-v16.ts' ) ) ) {
142152 copyTransformer (
143153 path . join ( VERSIONS_DIR , 'v15-to-v16.ts' ) ,
144- path . join ( v14Dir , 'v15-to-v16.ts' )
154+ path . join ( v14SrcDir , 'v15-to-v16.ts' )
145155 ) ;
146156 console . log ( ' ✓ Copied v15-to-v16.ts to v14 directory (dependency)' ) ;
147157 }
148158
149159 if ( fs . existsSync ( path . join ( VERSIONS_DIR , 'v16-to-v17.ts' ) ) ) {
150160 copyTransformer (
151161 path . join ( VERSIONS_DIR , 'v16-to-v17.ts' ) ,
152- path . join ( v14Dir , 'v16-to-v17.ts' )
162+ path . join ( v14SrcDir , 'v16-to-v17.ts' )
153163 ) ;
154164 console . log ( ' ✓ Copied v16-to-v17.ts to v14 directory (dependency)' ) ;
155165 }
156166
157167 // v13 needs all transformers for its direct transformer
158- const v13Dir = path . join ( VERSIONS_DIR , '13' ) ;
168+ const v13SrcDir = path . join ( VERSIONS_DIR , '13' , 'src ') ;
159169 const v13Dependencies = [ 'v13-to-v14.ts' , 'v14-to-v15.ts' , 'v15-to-v16.ts' , 'v16-to-v17.ts' ] ;
160170 for ( const dep of v13Dependencies ) {
161171 if ( fs . existsSync ( path . join ( VERSIONS_DIR , dep ) ) ) {
162172 copyTransformer (
163173 path . join ( VERSIONS_DIR , dep ) ,
164- path . join ( v13Dir , dep )
174+ path . join ( v13SrcDir , dep )
165175 ) ;
166176 console . log ( ` ✓ Copied ${ dep } to v13 directory (dependency)` ) ;
167177 }
168178 }
169179
170180 // v15 needs v15-to-v16 and v16-to-v17 for its direct transformer
171- const v15Dir = path . join ( VERSIONS_DIR , '15' ) ;
181+ const v15SrcDir = path . join ( VERSIONS_DIR , '15' , 'src ') ;
172182 const v15Dependencies = [ 'v15-to-v16.ts' , 'v16-to-v17.ts' ] ;
173183 for ( const dep of v15Dependencies ) {
174184 if ( fs . existsSync ( path . join ( VERSIONS_DIR , dep ) ) ) {
175185 copyTransformer (
176186 path . join ( VERSIONS_DIR , dep ) ,
177- path . join ( v15Dir , dep )
187+ path . join ( v15SrcDir , dep )
178188 ) ;
179189 console . log ( ` ✓ Copied ${ dep } to v15 directory (dependency)` ) ;
180190 }
0 commit comments