24 lines
		
	
	
		
			619 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			619 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
"use strict";
 | 
						|
Object.defineProperty(exports, "__esModule", { value: true });
 | 
						|
exports.read = void 0;
 | 
						|
function read(path, settings) {
 | 
						|
    const lstat = settings.fs.lstatSync(path);
 | 
						|
    if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) {
 | 
						|
        return lstat;
 | 
						|
    }
 | 
						|
    try {
 | 
						|
        const stat = settings.fs.statSync(path);
 | 
						|
        if (settings.markSymbolicLink) {
 | 
						|
            stat.isSymbolicLink = () => true;
 | 
						|
        }
 | 
						|
        return stat;
 | 
						|
    }
 | 
						|
    catch (error) {
 | 
						|
        if (!settings.throwErrorOnBrokenSymbolicLink) {
 | 
						|
            return lstat;
 | 
						|
        }
 | 
						|
        throw error;
 | 
						|
    }
 | 
						|
}
 | 
						|
exports.read = read;
 |