@yandex/themekit
Version:
Build system of design-tokens for any platforms
21 lines (20 loc) • 837 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.findPackageRoot = void 0;
const path_1 = require("path");
const read_pkg_up_1 = __importDefault(require("read-pkg-up"));
function findPackageRoot(path) {
const data = read_pkg_up_1.default.sync({ cwd: path });
if (data === undefined) {
throw new Error('Cannot find package root, please check exists package.json.');
}
if (data.packageJson.version !== '' && data.packageJson.name !== '') {
return path_1.dirname(data.path);
}
const parentDir = path_1.join(path_1.dirname(data.path), '..');
return findPackageRoot(parentDir);
}
exports.findPackageRoot = findPackageRoot;