var fs = require('fs') const request = require('request'); const chalk = require('chalk'); const logSymbols = require('log-symbols'); module.exports.copyFile = function(original_path, destination_path){ try { fs.copyFileSync(original_path, destination_path); return true; } catch (err){ if(err.code == 'ENOENT'){ if(global.isVerbose) { console.log(logSymbols.error, chalk.red(`ERROR: File not found: \'${original_path}\'`)) } } else { if(global.isVerbose) console.log(logSymbols.error, chalk.red('An error occured: ')); if(global.isVerbose) console.log(err); } return false; } } function vimeoCheck(url) { return new Promise((resolve, reject) => { request(`https://vimeo.com/api/oembed.json?url=${url}`, (error, response, body) => { if (error) reject(error); if (response.statusCode == 200) { resolve(true) } else if (response.statusCode == 404) { resolve(false) } }); }); } module.exports.getDirectories = function(source) { return fs.readdirSync(source, { withFileTypes: true }) .filter(item => item.isDirectory()) .map(item => item.name); } module.exports.fileExists = function(path){ if (fs.existsSync(path)) return true; else return false; } module.exports.createDirectory = function(dir){ if (!fs.existsSync(dir)){ fs.mkdirSync(dir); } } module.exports.checkVideo = async function checkVideo(url) { try { if(url.includes("vimeo")){ return await vimeoCheck(url) } } catch (error) { console.error('ERROR:'); console.error(error); } }