@jeaks03/overseer
Version:
Just another TypeScript Back-End framework
60 lines • 4.36 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const fs_1 = __importDefault(require("fs"));
const path_1 = __importDefault(require("path"));
const deasync_1 = require("deasync");
class Utils {
static clearPromise(target) {
let newTarget = target;
if (newTarget instanceof Promise) {
newTarget.then(response => {
newTarget = response;
}).catch(err => {
newTarget = err;
});
deasync_1.loopWhile(() => newTarget instanceof Promise);
if (newTarget instanceof Error) {
throw newTarget;
}
}
return newTarget;
}
static instanceOf(target, clazz) {
const classKeys = Object.keys(new clazz());
return Object.keys(target).filter(key => !classKeys.includes(key)).length == 0;
}
static isDirectory(path) {
try {
const stat = fs_1.default.lstatSync(path);
return stat.isDirectory();
}
catch (e) {
return false;
}
}
static getSourceFiles(relativePath) {
const out = [];
const files = fs_1.default.readdirSync(relativePath);
for (const file of files) {
const currentPath = path_1.default.join(relativePath, file);
if (this.isDirectory(currentPath)) {
const result = this.getSourceFiles(currentPath);
if (result.length !== 0) {
out.push(...result);
}
continue;
}
if (file.endsWith(".component.js") ||
file.endsWith(".controller.js") ||
file.endsWith(".service.js")) {
out.push(path_1.default.join(relativePath, file));
}
}
return out;
}
}
exports.Utils = Utils;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWlzYy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDRDQUFvQjtBQUNwQixnREFBdUI7QUFDdkIscUNBQW9DO0FBR3BDLE1BQWEsS0FBSztJQUNQLE1BQU0sQ0FBQyxZQUFZLENBQUksTUFBa0I7UUFDNUMsSUFBSSxTQUFTLEdBQW1CLE1BQU0sQ0FBQztRQUV2QyxJQUFHLFNBQVMsWUFBWSxPQUFPLEVBQUU7WUFDN0IsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDdEIsU0FBUyxHQUFHLFFBQVEsQ0FBQTtZQUN4QixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ1gsU0FBUyxHQUFHLEdBQUcsQ0FBQztZQUNwQixDQUFDLENBQUMsQ0FBQTtZQUNGLG1CQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxZQUFZLE9BQU8sQ0FBQyxDQUFDO1lBQzlDLElBQUcsU0FBUyxZQUFZLEtBQUssRUFBRTtnQkFDM0IsTUFBTSxTQUFTLENBQUM7YUFDbkI7U0FDSjtRQUVELE9BQU8sU0FBeUIsQ0FBQztJQUNyQyxDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQVUsQ0FBSSxNQUFNLEVBQUUsS0FBZTtRQUMvQyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQztRQUMzQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJO1FBQzFCLElBQUk7WUFDQSxNQUFNLElBQUksR0FBRyxZQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzdCO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDUixPQUFPLEtBQUssQ0FBQztTQUNoQjtJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsY0FBYyxDQUFDLFlBQW9CO1FBQzdDLE1BQU0sR0FBRyxHQUFhLEVBQUUsQ0FBQztRQUN6QixNQUFNLEtBQUssR0FBRyxZQUFFLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRTNDLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFO1lBQ3RCLE1BQU0sV0FBVyxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2xELElBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDOUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFFaEQsSUFBRyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtvQkFDcEIsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDO2lCQUN2QjtnQkFFRCxTQUFTO2FBQ1o7WUFFRCxJQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDO2dCQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDO2dCQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFO2dCQUM5QixHQUFHLENBQUMsSUFBSSxDQUFDLGNBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDM0M7U0FDSjtRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQztDQUNKO0FBMURELHNCQTBEQyJ9