liferay-npm-bundler-preset-reactjs
Version:
liferay npm bundler preset react
36 lines (35 loc) • 1.41 kB
JavaScript
;
/**
* SPDX-FileCopyrightText: © 2020 Liferay, Inc. <https://liferay.com>
* SPDX-License-Identifier: LGPL-3.0-or-later
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.readAliases = void 0;
const fs_extra_1 = __importDefault(require("fs-extra"));
const alias_1 = require("liferay-npm-build-tools-common/lib/alias");
function readAliases(params, absDir) {
const { config, globalConfig } = params;
const aliasFields = alias_1.getAliasFields(globalConfig, config);
return readAliasesFromDir(absDir, aliasFields);
}
exports.readAliases = readAliases;
/**
* Recursively read all aliases in a folder and its descendants and store them
* in an AliasesMap.
*
* @param absDir root search dir
* @param aliasFields configured alias fields
*/
function readAliasesFromDir(absDir, aliasFields) {
const aliasesMap = {};
aliasesMap[absDir.asPosix] = alias_1.loadAliases(absDir.join('package.json'), aliasFields);
fs_extra_1.default.readdirSync(absDir.asNative)
.filter((child) => fs_extra_1.default.statSync(absDir.join(child).asNative).isDirectory())
.forEach((childDir) => {
Object.assign(aliasesMap, readAliasesFromDir(absDir.join(childDir), aliasFields));
});
return aliasesMap;
}