fix: masks shouldn't override node's properties
Massimo Melina committed
Feb 20, 2023 at 17:10 UTC
562fde0d8598065155c48073c3428c0184e04398
1 file changed
+2
-2
src/vfs.ts
+2
-2
@@ -203,10 +203,10 @@ export async function* walkNode(parent:VfsNode, ctx?: Koa.Context, depth:number=
203
function applyMasks(item: VfsNode, parent: VfsNode, virtualBasename: string) {
204
const { masks } = parent
205
if (!masks) return
206
- for (const k in masks)
206
+ for (const [k,v] of Object.entries(masks))
207
if (k.startsWith('**/') && isMatch(virtualBasename, k.slice(3))
208
|| !k.includes('/') && isMatch(virtualBasename, k))
209
- Object.assign(item, masks[k])
209
+ _.defaults(item, v)
210
}
211
212
function inheritMasks(item: VfsNode, parent: VfsNode, virtualBasename:string) {