Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/wwwroot/mifepriston.org/node_modules/mem-fs-editor/lib/actions/ |
Upload File : |
'use strict'; var assert = require('assert'); var fs = require('fs'); var path = require('path'); var glob = require('glob'); var globby = require('globby'); var extend = require('deep-extend'); var multimatch = require('multimatch'); var ejs = require('ejs'); var util = require('../util'); function applyProcessingFunc(process, contents, filename) { var output = process(contents, filename); return output instanceof Buffer ? output : Buffer.from(output); } exports.copy = function (from, to, options, context, tplSettings) { to = path.resolve(to); options = options || {}; var fromGlob = util.globify(from); var globOptions = extend(options.globOptions || {}, {nodir: true}); var diskFiles = globby.sync(fromGlob, globOptions); var storeFiles = []; this.store.each(file => { // The store may have a glob path and when we try to copy it will fail because not real file if (!glob.hasMagic(file.path) && multimatch([file.path], fromGlob).length !== 0) { storeFiles.push(file.path); } }); var files = diskFiles.concat(storeFiles); var generateDestination = () => to; if (Array.isArray(from) || !this.exists(from) || glob.hasMagic(from)) { assert( !this.exists(to) || fs.statSync(to).isDirectory(), 'When copying multiple files, provide a directory as destination' ); var root = util.getCommonPath(from); generateDestination = filepath => { var toFile = path.relative(root, filepath); return path.join(to, toFile); }; } // Sanity checks: Makes sure we copy at least one file. assert(options.ignoreNoMatch || files.length > 0, 'Trying to copy from a source that does not exist: ' + from); files.forEach(file => { this._copySingle(file, generateDestination(file), options, context, tplSettings); }); }; exports._copySingle = function (from, to, options, context, tplSettings) { options = options || {}; assert(this.exists(from), 'Trying to copy from a source that does not exist: ' + from); var file = this.store.get(from); var contents = file.contents; if (options.process) { contents = applyProcessingFunc(options.process, file.contents, file.path); } if (context) { to = ejs.render(to, context, tplSettings); } this.write(to, contents, file.stat); };