@knapsack/app
Version:
Build Design Systems with Knapsack
33 lines • 1.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Navs = void 0;
const path_1 = require("path");
const utils_1 = require("@knapsack/utils");
const file_db_1 = require("../../server/dbs/file-db");
class Navs extends file_db_1.FileDb {
constructor({ dataDir }) {
const defaults = {
byId: {},
order: [],
};
super({
filePath: (0, path_1.join)(dataDir, 'knapsack.navs.yml'),
defaults,
type: 'yml',
orderAlphabetically: true,
// validationSchema: schema,
});
}
validateConfig(config) {
super.validateConfig(config);
// Convert object to array for quick validation
const navsAsArray = Object.values(config.byId);
(0, utils_1.assertUniqueIdInArray)({
items: navsAsArray,
key: 'id',
errorMsgPrefix: `Error: found duplicated nav ids in 'knapsack.navs.yml.`,
});
}
}
exports.Navs = Navs;
//# sourceMappingURL=navs.js.map