|
1 | | -import { dirname, basename } from 'path' |
| 1 | +import { dirname, basename, extname, join } from 'path' |
2 | 2 |
|
3 | 3 | import os from 'os' |
4 | 4 | import fs from 'fs-extra' |
@@ -448,6 +448,14 @@ class BuildLists { |
448 | 448 |
|
449 | 449 | const apiListDirectory = `${ apiDirectory }/${ listOptions.endpointPrefix }` |
450 | 450 |
|
| 451 | + await fs.ensureDir( apiListDirectory ) |
| 452 | + |
| 453 | + for ( const existingFile of await fs.readdir( apiListDirectory ) ) { |
| 454 | + if ( extname( existingFile ) !== '.json' ) continue |
| 455 | + |
| 456 | + await fs.remove( join( apiListDirectory, existingFile ) ) |
| 457 | + } |
| 458 | + |
451 | 459 | // const poolSize = 1000 |
452 | 460 |
|
453 | 461 | // Store app bundles to memory |
@@ -516,14 +524,18 @@ class BuildLists { |
516 | 524 | } |
517 | 525 |
|
518 | 526 | // Count saved files |
519 | | - const fileCount = fs.readdirSync( apiListDirectory ).length |
| 527 | + const fileCount = fs.readdirSync( apiListDirectory ) |
| 528 | + .filter( fileName => extname( fileName ) === '.json' ) |
| 529 | + .length |
520 | 530 |
|
521 | 531 | console.log( fileCount, 'Files saved in', apiListDirectory ) |
522 | 532 | console.log( this.lists[listOptions.name].size, 'Entries' ) |
523 | 533 |
|
524 | 534 | if ( fileCount !== this.lists[listOptions.name].size ) { |
525 | 535 | const listSlugs = Array.from( this.lists[listOptions.name] ).map( listEntry => listEntry.slug ) |
526 | | - const fileNames = fs.readdirSync( apiListDirectory ).map( fileName => basename(fileName).split('.')[0] ) |
| 536 | + const fileNames = fs.readdirSync( apiListDirectory ) |
| 537 | + .filter( fileName => extname( fileName ) === '.json' ) |
| 538 | + .map( fileName => basename(fileName).split('.')[0] ) |
527 | 539 |
|
528 | 540 | logArraysDifference( listSlugs, fileNames ) |
529 | 541 |
|
|
0 commit comments