Golang bot for managing discord verifications
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

90 lines
2.2 KiB

"use strict";
exports.__esModule = true;
exports.chmod = chmod;
exports.readdirFilter = readdirFilter;
exports.shouldIgnore = shouldIgnore;
exports.addSourceMappingUrl = addSourceMappingUrl;
exports.log = log;
exports.transform = transform;
exports.compile = compile;
exports.requireChokidar = requireChokidar;
var commander = require("commander");
var defaults = require("lodash/defaults");
var readdir = require("fs-readdir-recursive");
var index = require("./index");
var babel = require("babel-core");
var util = require("babel-core").util;
var path = require("path");
var fs = require("fs");
function chmod(src, dest) {
fs.chmodSync(dest, fs.statSync(src).mode);
}
function readdirFilter(filename) {
return readdir(filename).filter(function (filename) {
return util.canCompile(filename);
});
}
exports.readdir = readdir;
var canCompile = exports.canCompile = util.canCompile;
function shouldIgnore(loc) {
return util.shouldIgnore(loc, index.opts.ignore, index.opts.only);
}
function addSourceMappingUrl(code, loc) {
return code + "\n//# sourceMappingURL=" + path.basename(loc);
}
function log(msg) {
if (!commander.quiet) console.log(msg);
}
function transform(filename, code, opts) {
opts = defaults(opts || {}, index.opts);
opts.filename = filename;
var result = babel.transform(code, opts);
result.filename = filename;
result.actual = code;
return result;
}
function compile(filename, opts) {
try {
var code = fs.readFileSync(filename, "utf8");
return transform(filename, code, opts);
} catch (err) {
if (commander.watch) {
console.error(toErrorStack(err));
return { ignored: true };
} else {
throw err;
}
}
}
function toErrorStack(err) {
if (err._babel && err instanceof SyntaxError) {
return err.name + ": " + err.message + "\n" + err.codeFrame;
} else {
return err.stack;
}
}
process.on("uncaughtException", function (err) {
console.error(toErrorStack(err));
process.exit(1);
});
function requireChokidar() {
try {
return require("chokidar");
} catch (err) {
console.error("The optional dependency chokidar failed to install and is required for " + "--watch. Chokidar is likely not supported on your platform.");
throw err;
}
}