@@ -9,8 +9,8 @@ const { getRootPath } = require('../modules/utils.js')
99
1010const _7z = path . join ( getRootPath ( ) , 'resources/extraResources/7z.exe' )
1111
12- let getArchivelist = async ( libraryPath ) => {
13- let list = globSync ( '**/*.@(rar|7z|cb7|cbr)' , {
12+ const getArchivelist = async ( libraryPath ) => {
13+ const list = globSync ( '**/*.@(rar|7z|cb7|cbr)' , {
1414 cwd : libraryPath ,
1515 nocase : true ,
1616 follow : true ,
@@ -19,16 +19,16 @@ let getArchivelist = async (libraryPath)=>{
1919 return list
2020}
2121
22- let solveBookTypeArchive = async ( filepath , TEMP_PATH , COVER_PATH ) => {
23- let tempFolder = path . join ( TEMP_PATH , nanoid ( 8 ) )
24- let output = await spawnPromise ( _7z , [ 'l' , filepath , '-slt' , '-p123456' ] )
25- let pathlist = _ . filter ( output . split ( / \r \n / ) , s => _ . startsWith ( s , 'Path' ) && ! _ . includes ( s , '__MACOSX' ) )
26- pathlist = pathlist . map ( p => {
27- let match = / (?< = = ) .* $ / . exec ( p )
22+ const solveBookTypeArchive = async ( filepath , TEMP_PATH , COVER_PATH ) => {
23+ const tempFolder = path . join ( TEMP_PATH , nanoid ( 8 ) )
24+ const output = await spawnPromise ( _7z , [ 'l' , filepath , '-slt' , '-p123456' ] )
25+ let pathlist = _ . filter ( output . split ( / \r \n / ) , s => _ . startsWith ( s , 'Path' ) && ! _ . includes ( s , '__MACOSX' ) )
26+ pathlist = pathlist . map ( p => {
27+ const match = / (?< = = ) .* $ / . exec ( p )
2828 return match ? match [ 0 ] : ''
2929 } )
30- let imageList = _ . filter ( pathlist , p => [ '.jpg' , '.jpeg' , '.png' , '.webp' , '.avif' , '.gif' ] . includes ( path . extname ( p ) . toLowerCase ( ) ) )
31- imageList = imageList . sort ( ( a , b ) => a . localeCompare ( b , undefined , { numeric : true , sensitivity : 'base' } ) )
30+ let imageList = _ . filter ( pathlist , p => [ '.jpg' , '.jpeg' , '.png' , '.webp' , '.avif' , '.gif' ] . includes ( path . extname ( p ) . toLowerCase ( ) ) )
31+ imageList = imageList . sort ( ( a , b ) => a . localeCompare ( b , undefined , { numeric : true , sensitivity : 'base' } ) )
3232
3333 let targetFile
3434 let targetFilePath
@@ -55,42 +55,42 @@ let solveBookTypeArchive = async (filepath, TEMP_PATH, COVER_PATH)=>{
5555
5656 coverPath = path . join ( COVER_PATH , nanoid ( ) + '.webp' )
5757
58- let fileStat = await fs . promises . stat ( filepath )
58+ const fileStat = await fs . promises . stat ( filepath )
5959 return { targetFilePath, tempCoverPath, coverPath, pageCount : imageList . length , bundleSize : fileStat ?. size , mtime : fileStat ?. mtime }
6060}
6161
62- let getImageListFromArchive = async ( filepath , VIEWER_PATH ) => {
63- let tempFolder = path . join ( VIEWER_PATH , nanoid ( 8 ) )
62+ const getImageListFromArchive = async ( filepath , VIEWER_PATH ) => {
63+ const tempFolder = path . join ( VIEWER_PATH , nanoid ( 8 ) )
6464 await spawnPromise ( _7z , [ 'x' , filepath , '-o' + tempFolder , '-p123456' ] )
6565 let list = globSync ( '**/*.@(jpg|jpeg|png|webp|avif|gif)' , {
6666 cwd : tempFolder ,
6767 nocase : true
6868 } )
69- list = _ . filter ( list , s => ! _ . includes ( s , '__MACOSX' ) )
70- list = list . sort ( ( a , b ) => a . localeCompare ( b , undefined , { numeric : true , sensitivity : 'base' } ) ) . map ( f => path . join ( tempFolder , f ) )
69+ list = _ . filter ( list , s => ! _ . includes ( s , '__MACOSX' ) )
70+ list = list . sort ( ( a , b ) => a . localeCompare ( b , undefined , { numeric : true , sensitivity : 'base' } ) ) . map ( f => path . join ( tempFolder , f ) )
7171 return list
7272}
7373
74- let deleteImageFromArchive = async ( filename , filepath ) => {
74+ const deleteImageFromArchive = async ( filename , filepath ) => {
7575 await spawnPromise ( _7z , [ 'd' , filepath , filename , '-p123456' ] )
7676 return true
7777}
7878
79- let spawnPromise = ( commmand , argument ) => {
80- return new Promise ( ( resolve , reject ) => {
79+ const spawnPromise = ( commmand , argument ) => {
80+ return new Promise ( ( resolve , reject ) => {
8181 const spawned = spawn ( commmand , argument )
82- let output = [ ]
83- spawned . on ( 'error' , data => {
82+ const output = [ ]
83+ spawned . on ( 'error' , data => {
8484 reject ( data )
8585 } )
86- spawned . on ( 'exit' , code => {
86+ spawned . on ( 'exit' , code => {
8787 if ( code === 0 ) {
8888 setTimeout ( ( ) => resolve ( output . join ( '\r\n' ) ) , 50 )
8989 } else {
9090 reject ( 'close code is ' + code )
9191 }
9292 } )
93- spawned . stdout . on ( 'data' , data => {
93+ spawned . stdout . on ( 'data' , data => {
9494 output . push ( iconv . decode ( data , 'gbk' ) )
9595 } )
9696 } )
0 commit comments