Не, не то.
Каталог - это абстрактное понятие (по другому группа объектов). Это объект, который содержит другие объекты.
Только в отличии от объекта (статус которого легко вычислить сравнив текущий state с эталонным) - его статус зависит от статусов внутренних объектов.
// с объектом всё просто
obj.problems = obj.currentState === obj.setState;
// а вот каталог зависит от внутренних объектов
groupObjs = groupObjs.map(item => item.currentState === item.setState);
if (groupObjs.indexOf(false) !== -1 ) {
groupObjs.problems = true;
}
Написал упрощённую версию. Кодом просто показал зависимость статуса.
Просто есть подозрения на избыточность, когда на первом экране будут объект и группа объектов. При этом в группе например 500 объектов и тогда приходится грузит их все, чтобы пометить группу, как проблемную... Просто другого решения сейчас не вижу.