HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/elite/node_modules/vinyl-file/index.js
'use strict';
const path = require('path');
const fs = require('graceful-fs');
const stripBomBuf = require('strip-bom-buf');
const stripBomStream = require('strip-bom-stream');
const File = require('vinyl');
const pify = require('pify');

const fsP = pify(fs);

exports.read = (pth, opts) => {
	opts = opts || {};

	const cwd = opts.cwd || process.cwd();
	const base = opts.base || cwd;

	pth = path.resolve(cwd, pth);

	return fsP.stat(pth).then(stat => {
		const file = new File({
			cwd,
			base,
			path: pth,
			stat
		});

		if (opts.read === false) {
			return file;
		}

		if (opts.buffer === false) {
			file.contents = fs.createReadStream(pth).pipe(stripBomStream());
			return file;
		}

		return fsP.readFile(pth).then(contents => {
			file.contents = stripBomBuf(contents);
			return file;
		});
	});
};

exports.readSync = (pth, opts) => {
	opts = opts || {};

	const cwd = opts.cwd || process.cwd();
	const base = opts.base || cwd;

	pth = path.resolve(cwd, pth);

	let contents;

	if (opts.read !== false) {
		contents = opts.buffer === false ?
			fs.createReadStream(pth).pipe(stripBomStream()) :
			stripBomBuf(fs.readFileSync(pth));
	}

	return new File({
		cwd,
		base,
		path: pth,
		stat: fs.statSync(pth),
		contents
	});
};