@@ -36,8 +36,8 @@ export class ScreenshotHelper {
36
36
// Create directories if they don't exist
37
37
this . ensureDirectoriesExist ( ) ;
38
38
39
- // Load any existing screenshots from disk
40
- this . loadExistingScreenshots ( ) ;
39
+ // Clean existing screenshot directories when starting the app
40
+ this . cleanScreenshotDirectories ( ) ;
41
41
}
42
42
43
43
private ensureDirectoriesExist ( ) : void {
@@ -55,35 +55,46 @@ export class ScreenshotHelper {
55
55
}
56
56
}
57
57
58
- private loadExistingScreenshots ( ) : void {
58
+ // This method replaces loadExistingScreenshots() to ensure we start with empty queues
59
+ private cleanScreenshotDirectories ( ) : void {
59
60
try {
60
- // Load main queue screenshots
61
+ // Clean main screenshots directory
61
62
if ( fs . existsSync ( this . screenshotDir ) ) {
62
63
const files = fs . readdirSync ( this . screenshotDir )
63
64
. filter ( file => file . endsWith ( '.png' ) )
64
- . map ( file => path . join ( this . screenshotDir , file ) )
65
- . sort ( ( a , b ) => {
66
- return fs . statSync ( a ) . mtime . getTime ( ) - fs . statSync ( b ) . mtime . getTime ( ) ;
67
- } ) ;
65
+ . map ( file => path . join ( this . screenshotDir , file ) ) ;
68
66
69
- this . screenshotQueue = files . slice ( 0 , this . MAX_SCREENSHOTS ) ;
70
- console . log ( `Loaded ${ this . screenshotQueue . length } existing screenshots` ) ;
67
+ // Delete each screenshot file
68
+ for ( const file of files ) {
69
+ try {
70
+ fs . unlinkSync ( file ) ;
71
+ console . log ( `Deleted existing screenshot: ${ file } ` ) ;
72
+ } catch ( err ) {
73
+ console . error ( `Error deleting screenshot ${ file } :` , err ) ;
74
+ }
75
+ }
71
76
}
72
77
73
- // Load extra queue screenshots
78
+ // Clean extra screenshots directory
74
79
if ( fs . existsSync ( this . extraScreenshotDir ) ) {
75
80
const files = fs . readdirSync ( this . extraScreenshotDir )
76
81
. filter ( file => file . endsWith ( '.png' ) )
77
- . map ( file => path . join ( this . extraScreenshotDir , file ) )
78
- . sort ( ( a , b ) => {
79
- return fs . statSync ( a ) . mtime . getTime ( ) - fs . statSync ( b ) . mtime . getTime ( ) ;
80
- } ) ;
82
+ . map ( file => path . join ( this . extraScreenshotDir , file ) ) ;
81
83
82
- this . extraScreenshotQueue = files . slice ( 0 , this . MAX_SCREENSHOTS ) ;
83
- console . log ( `Loaded ${ this . extraScreenshotQueue . length } existing extra screenshots` ) ;
84
+ // Delete each screenshot file
85
+ for ( const file of files ) {
86
+ try {
87
+ fs . unlinkSync ( file ) ;
88
+ console . log ( `Deleted existing extra screenshot: ${ file } ` ) ;
89
+ } catch ( err ) {
90
+ console . error ( `Error deleting extra screenshot ${ file } :` , err ) ;
91
+ }
92
+ }
84
93
}
94
+
95
+ console . log ( "Screenshot directories cleaned successfully" ) ;
85
96
} catch ( err ) {
86
- console . error ( "Error loading existing screenshots :" , err ) ;
97
+ console . error ( "Error cleaning screenshot directories :" , err ) ;
87
98
}
88
99
}
89
100
0 commit comments