Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function copy (pathFrom, pathTo) {
try {
cpFile.sync(pathFrom, pathTo)
} catch (err) {
// Windows lets us create files and folders under C:\Windows\Temp,
// but when you try to `copySync` into one of those folders, you get EPERM
// Ignore for now...
if (process.platform !== 'win32' || err.code !== 'EPERM') throw err
console.log('ignoring windows copy EPERM error', err)
}
}
function copy(pathFrom, pathTo) {
try {
cpFile.sync(pathFrom, pathTo);
} catch (err) {
// Windows lets us create files and folders under C:\Windows\Temp,
// but when you try to `copySync` into one of those folders, you get EPERM
// Ignore for now...
if (process.platform !== 'win32' || err.code !== 'EPERM') {
throw err;
}
console.log('ignoring windows copy EPERM error', err);
}
}
function createMetadata(compilation, callback, options) {
const {
filename,
metadataTemplate = DEFAULT_METADATA_TEMPLATE,
localesDir = DEFAULT_LOCALES_DIR,
postfix = DEFAULT_POSTFIX,
fields = {},
} = options;
// Calculate result metadata file path
const metadataOutputPath = path.join(compilation.outputOptions.path, filename);
// Copy template file to output directory
copyfile.sync(metadataTemplate, metadataOutputPath);
// Separate fields which have multiple translations and simple fields
const multipleFields = {};
const singleFields = {};
Object.entries(fields).forEach(([key, value]) => {
if (typeof value === 'object' && value !== null) {
multipleFields[key] = value;
} else {
singleFields[key] = value;
}
});
// Replace simple fields
replaceWithMultipleSource(singleFields, metadataOutputPath);
// Get all locales paths
export default function createFixture(tmp, commands, fixtureName, cp = true) {
const pathname = Array.isArray(commands) ? fixtureName : path.join(commands.name, fixtureName);
const fixture = tmp.create(pathname);
if (cp) {
cpFile.sync(path.normalize(`fixtures/${pathname}/CHANGELOG.md`), path.join(fixture, 'CHANGELOG.md'));
}
return fixture;
}
staticFiles.map(filepath => {
console.log(`# copyStatic(${filepath})`)
copy.sync(
path.join(process.cwd(), filepath),
path.join(targetdir, filepath)
)
})
)
output.on('close', function() {
try {
del.sync(['extension/manifest.json']);
cpFile.sync('extension/manifest-chrome.json', 'extension/manifest.json', {overwrite: false});
console.log(chalk.green('The extension has been zipped as: ' + zipFileName + ' (' + archive.pointer() + ' bytes)'));
} catch (e) {
warnUserToCheckManifestFile(e);
}
});
fs.readFile(file1, (err1, data1) => {
if (err1) {
console.log(`Невозможно прочитать файл ${file1}`)
return;
}else{
let difa = jsdiff.diffChars(data2.toString(encode), data1.toString(encode));
let difSize = _.size(difa);
if (difSize > 1) {
if (debugMode) {
console.log(`${file1} синхронизирован с ${file2}\n`);
}
cpFile.sync(file1, file2);
}else{
if (debugMode) {
console.log(`Нет причин для синхронизации`)
console.log(`${file1} идентичен ${file2}\n`);
}
}
}
});
}else{
const vendor =
exists(cwd('node_modules/docsify')) || pwd('../node_modules/docsify')
cp(resolve(vendor, 'lib/docsify.min.js'), target('vendor/docsify.js'))
cp(
resolve(vendor, `lib/themes/${theme}.css`),
target(`vendor/themes/${theme}.css`)
)
}
const filename = 'index.html'
cp(readme, target('README.md'))
cp(main, target(filename))
cp(pwd('template/.nojekyll'), target('.nojekyll'))
replace(target(filename), 'vue.css', `${theme}.css`)
if (pkg.name) {
replace(
target(filename),
'Document',
pkg.name + (pkg.description ? ' - ' + pkg.description : '')
)
replace(target(filename), 'name: \'\',', `name: '${pkg.name}',`)
}
if (pkg.description) {
replace(target(filename), 'Description', pkg.description)
}
.forEach(src => cpFile.sync(src, path.join(output, path.relative(input, src))))
}
main = pwd('template/index.local.html')
const vendor =
exists(cwd('node_modules/docsify')) || pwd('../node_modules/docsify')
cp(resolve(vendor, 'lib/docsify.min.js'), target('vendor/docsify.js'))
cp(
resolve(vendor, `lib/themes/${theme}.css`),
target(`vendor/themes/${theme}.css`)
)
}
const filename = 'index.html'
cp(readme, target('README.md'))
cp(main, target(filename))
cp(pwd('template/.nojekyll'), target('.nojekyll'))
replace(target(filename), 'vue.css', `${theme}.css`)
if (pkg.name) {
replace(
target(filename),
'Document',
pkg.name + (pkg.description ? ' - ' + pkg.description : '')
)
replace(target(filename), 'name: \'\',', `name: '${pkg.name}',`)
}
if (pkg.description) {
replace(target(filename), 'Description', pkg.description)
}