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/vue/src/server/webpack-plugin/ |
Upload File : |
const hash = require('hash-sum') const uniq = require('lodash.uniq') import { isJS, isCSS, onEmit } from './util' export default class VueSSRClientPlugin { constructor (options = {}) { this.options = Object.assign({ filename: 'vue-ssr-client-manifest.json' }, options) } apply (compiler) { onEmit(compiler, 'vue-client-plugin', (compilation, cb) => { const stats = compilation.getStats().toJson() const allFiles = uniq(stats.assets .map(a => a.name)) const initialFiles = uniq(Object.keys(stats.entrypoints) .map(name => stats.entrypoints[name].assets) .reduce((assets, all) => all.concat(assets), []) .filter((file) => isJS(file) || isCSS(file))) const asyncFiles = allFiles .filter((file) => isJS(file) || isCSS(file)) .filter(file => initialFiles.indexOf(file) < 0) const manifest = { publicPath: stats.publicPath, all: allFiles, initial: initialFiles, async: asyncFiles, modules: { /* [identifier: string]: Array<index: number> */ } } const assetModules = stats.modules.filter(m => m.assets.length) const fileToIndex = file => manifest.all.indexOf(file) stats.modules.forEach(m => { // ignore modules duplicated in multiple chunks if (m.chunks.length === 1) { const cid = m.chunks[0] const chunk = stats.chunks.find(c => c.id === cid) if (!chunk || !chunk.files) { return } const id = m.identifier.replace(/\s\w+$/, '') // remove appended hash const files = manifest.modules[hash(id)] = chunk.files.map(fileToIndex) // find all asset modules associated with the same chunk assetModules.forEach(m => { if (m.chunks.some(id => id === cid)) { files.push.apply(files, m.assets.map(fileToIndex)) } }) } }) const json = JSON.stringify(manifest, null, 2) compilation.assets[this.options.filename] = { source: () => json, size: () => json.length } cb() }) } }