core/validators/barrel.validator.ts
core/validators/barrel.validator.ts is a file in GovLab Docs. 19 lines of code and 3 definitions.
import { PACKAGE_TEXT, entryUndeclared, entryUnresolved } from "#configuration/strings/package.strings";
import { declaredEntries, unresolvedEntryPatterns } from "#core/loaders/manifest.loader";
import { MANIFEST_FILE } from "#configuration/constants/document.constants";
import type { ManifestModule } from "#types/manifest.types";
import { resolveSourceBarrels } from "#core/resolvers/barrel.resolver";
export const analyzabilityMessages = function analyzabilityMessages(
module: ManifestModule,
isAggregate: boolean,
): string[] {
const at = [module.label, MANIFEST_FILE].join("/");
const unresolved = unresolvedEntryPatterns(module.dir).map((pattern) => entryUnresolved(at, pattern));
if (isAggregate || module.manifest.docs === undefined) {
return unresolved;
}
if (declaredEntries(module.dir) === null && resolveSourceBarrels(module.dir, module.pkg).length === 0) {
return [...unresolved, entryUndeclared(at, PACKAGE_TEXT.undeclaredEntry)];
}
return unresolved;
};