@@ -24,23 +24,24 @@ export function normalizeAssetPatterns(
2424
2525 // When sourceRoot is not available, we default to ${projectRoot}/src.
2626 const sourceRoot = projectSourceRoot || path . join ( projectRoot , 'src' ) ;
27- const resolvedSourceRoot = path . resolve ( workspaceRoot , sourceRoot ) ;
28- const resolvedProjectRoot = path . resolve ( workspaceRoot , projectRoot ) ;
27+ const resolvedWorkspaceRoot = path . resolve ( workspaceRoot ) ;
28+ const resolvedSourceRoot = path . resolve ( resolvedWorkspaceRoot , sourceRoot ) ;
29+ const resolvedProjectRoot = path . resolve ( resolvedWorkspaceRoot , projectRoot ) ;
2930
3031 return assetPatterns . map ( ( assetPattern ) => {
3132 // Normalize string asset patterns to objects.
3233 if ( typeof assetPattern === 'string' ) {
3334 const assetPath = path . normalize ( assetPattern ) ;
34- const resolvedAssetPath = path . resolve ( workspaceRoot , assetPath ) ;
35+ const resolvedAssetPath = path . resolve ( resolvedWorkspaceRoot , assetPath ) ;
3536 let root : string ;
3637
3738 // Check if the string asset is within sourceRoot.
3839 if ( resolvedAssetPath . startsWith ( resolvedSourceRoot ) ) {
3940 root = resolvedSourceRoot ;
4041 } else if ( resolvedAssetPath . startsWith ( resolvedProjectRoot ) ) {
4142 root = resolvedProjectRoot ;
42- } else if ( resolvedAssetPath . startsWith ( workspaceRoot ) ) {
43- root = workspaceRoot ;
43+ } else if ( resolvedAssetPath . startsWith ( resolvedWorkspaceRoot ) ) {
44+ root = resolvedWorkspaceRoot ;
4445 } else {
4546 throw new Error ( `The ${ assetPattern } asset path must be within the workspace root.` ) ;
4647 }
@@ -67,11 +68,11 @@ export function normalizeAssetPatterns(
6768 }
6869
6970 // Output directory for both is the relative path from the root to input.
70- const output = path . relative ( root , path . resolve ( workspaceRoot , input ) ) ;
71+ const output = path . relative ( root , path . resolve ( resolvedWorkspaceRoot , input ) ) ;
7172
7273 assetPattern = { glob, input, output } ;
7374 } else {
74- if ( ! isSubDirectory ( workspaceRoot , assetPattern . input ) ) {
75+ if ( ! isSubDirectory ( resolvedWorkspaceRoot , assetPattern . input ) ) {
7576 throw new Error ( `The ${ assetPattern . input } asset path must be within the workspace root.` ) ;
7677 }
7778
0 commit comments