@@ -6,30 +6,46 @@ function syncAssets() {
6
6
try {
7
7
const srcDir = './src/assets'
8
8
const distDir = './dist/assets'
9
+ const faviconSrcDir = './src/assets/favicon'
10
+ const distRootDir = './dist'
9
11
10
- // Ensure dist directory exists
12
+ // Ensure directories exist
11
13
fs . ensureDirSync ( distDir )
14
+ fs . ensureDirSync ( distRootDir )
12
15
13
16
// Get list of files in both directories
14
17
const srcFiles = getAllFiles ( srcDir )
15
18
const distFiles = getAllFiles ( distDir )
16
19
17
20
// Find files that exist in dist but not in src
18
- const obsoleteFiles = distFiles . filter ( distFile => {
21
+ const obsoleteFiles = distFiles . filter ( ( distFile ) => {
19
22
const relativePath = path . relative ( distDir , distFile )
20
23
const srcPath = path . join ( srcDir , relativePath )
21
24
return ! srcFiles . includes ( srcPath )
22
25
} )
23
26
24
27
// Remove obsolete files
25
- obsoleteFiles . forEach ( file => {
28
+ obsoleteFiles . forEach ( ( file ) => {
26
29
fs . removeSync ( file )
27
30
log ( `Removed obsolete file: ${ file } ` )
28
31
} )
29
32
30
33
// Copy current assets
31
34
fs . copySync ( srcDir , distDir )
32
35
36
+ // Handle favicon files separately
37
+ if ( fs . existsSync ( faviconSrcDir ) ) {
38
+ const faviconFiles = fs . readdirSync ( faviconSrcDir )
39
+ faviconFiles . forEach ( ( file ) => {
40
+ const srcPath = path . join ( faviconSrcDir , file )
41
+ const destPath = path . join ( distRootDir , file )
42
+ fs . copySync ( srcPath , destPath )
43
+ log ( `Copied favicon file: ${ file } to dist root` )
44
+ } )
45
+ } else {
46
+ log ( 'Favicon directory not found' , 'warning' )
47
+ }
48
+
33
49
// Copy index.html to dist directory. Used for redirecting to dashboard
34
50
if ( fs . existsSync ( './index.html' ) ) {
35
51
fs . copySync ( './index.html' , './dist/index.html' )
0 commit comments