@@ -38,31 +38,25 @@ export default async function processPattern(globalRef, pattern) {
3838 . map ( ( item ) => {
3939 const from = item . path ;
4040
41- const file = { absoluteFrom : path . resolve ( pattern . context , from ) } ;
42-
43- file . relativeFrom = path . relative ( pattern . context , file . absoluteFrom ) ;
44-
45- if ( pattern . flatten ) {
46- file . relativeFrom = path . basename ( file . relativeFrom ) ;
47- }
48-
4941 logger . debug ( `found ${ from } ` ) ;
5042
51- // Change the to path to be relative for webpack
52- file . webpackTo =
43+ // `globby`/`fast-glob` return the relative path when the path contains special characters on windows
44+ const absoluteFrom = path . resolve ( pattern . context , from ) ;
45+ const relativeFrom = pattern . flatten
46+ ? path . basename ( absoluteFrom )
47+ : path . relative ( pattern . context , absoluteFrom ) ;
48+ let webpackTo =
5349 pattern . toType === 'dir'
54- ? path . join ( pattern . to , file . relativeFrom )
50+ ? path . join ( pattern . to , relativeFrom )
5551 : pattern . to ;
5652
57- if ( path . isAbsolute ( file . webpackTo ) ) {
58- file . webpackTo = path . relative ( output , file . webpackTo ) ;
53+ if ( path . isAbsolute ( webpackTo ) ) {
54+ webpackTo = path . relative ( output , webpackTo ) ;
5955 }
6056
61- logger . log (
62- `determined that '${ from } ' should write to '${ file . webpackTo } '`
63- ) ;
57+ logger . log ( `determined that '${ from } ' should write to '${ webpackTo } '` ) ;
6458
65- return file ;
59+ return { absoluteFrom , relativeFrom , webpackTo } ;
6660 } )
6761 ) ;
6862}
0 commit comments