UNPKG

@pubgcorp/pk-template

Version:
31 lines 2.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.findFileUpward = void 0; const url_1 = require("url"); const path_1 = require("path"); const fs_1 = require("fs"); const isHttp_1 = require("./isHttp"); const _findFileUpward = (filename, dir) => { if (!dir.endsWith('/')) { dir = dir + '/'; } while (true) { const path = (0, url_1.resolve)(dir, filename); if ((0, fs_1.existsSync)(path)) { return path; } const parent = (0, url_1.resolve)(dir, '../'); if (parent == null || parent === dir) { return null; } dir = parent; } }; const findFileUpward = (file, dir) => { const absolute = dir ? ((0, isHttp_1.isHttp)(dir) ? dir : (0, path_1.resolve)(dir)) : process.cwd(); return _findFileUpward(file, absolute); }; exports.findFileUpward = findFileUpward; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZEZpbGVVcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9way1wYXRoL2ZpbmRGaWxlVXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQThCO0FBQzlCLCtCQUE4QztBQUM5QywyQkFBZ0M7QUFDaEMscUNBQWtDO0FBRWxDLE1BQU0sZUFBZSxHQUFHLENBQUMsUUFBZ0IsRUFBRSxHQUFXLEVBQWlCLEVBQUU7SUFDdkUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDdEIsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUM7S0FDakI7SUFDRCxPQUFPLElBQUksRUFBRTtRQUNYLE1BQU0sSUFBSSxHQUFHLElBQUEsYUFBTyxFQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNwQyxJQUFJLElBQUEsZUFBVSxFQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3BCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFBLGFBQU8sRUFBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbkMsSUFBSSxNQUFNLElBQUksSUFBSSxJQUFJLE1BQU0sS0FBSyxHQUFHLEVBQUU7WUFDcEMsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELEdBQUcsR0FBRyxNQUFNLENBQUM7S0FDZDtBQUNILENBQUMsQ0FBQTtBQUVNLE1BQU0sY0FBYyxHQUFHLENBQUMsSUFBWSxFQUFFLEdBQVksRUFBRSxFQUFFO0lBQzNELE1BQU0sUUFBUSxHQUFHLEdBQUc7UUFDbEIsQ0FBQyxDQUFDLENBQUMsSUFBQSxlQUFNLEVBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBQSxjQUFXLEVBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNsQixPQUFPLGVBQWUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDekMsQ0FBQyxDQUFBO0FBTFksUUFBQSxjQUFjLGtCQUsxQiJ9