Все модули

Navbar

Динамический navbar с контекстными меню, multi-badge, inline-фильтрами и глобальным event bus.

Возможности

Что умеет модуль

View-based табы

Каждый таб — самостоятельный View; navbar.getTabViewName резолвит класс по clientDefs.{scope}.navbarItem.

Hover-popup

Статистика, recent items и quick actions в popup рядом с табом; глобальный event закрывает остальные.

Multi-badge с polling

queries[] с Promise.all и refresh.interval; формат '5/12'; клик → переход к списку с where-фильтром.

Inline filter panel

context-nav-item после Home; filters-context-view + record/search двусторонне синхронизируются через navBarEventBus.

Глобальный navBarEventBus

showContextView, applySearchFilter, updateContextFilters + опционально todo:status-changed — единая шина.

Metadata-driven конфигурация

navbarItem.contextMenu: queries, recent, statistics, quickActions, refresh — без правки JavaScript.

where-params handler

Глобальный list handler преобразует params.where из URL в collection.where + searchManager.setAdvanced().

Модуль BPM2B Navbar расширяет стандартную панель навигации платформы BPM2B: каждый таб становится самостоятельным View с собственным lifecycle и polling, рядом с табом появляется hover-popup со статистикой и недавними записями, мульти-бейдж показывает несколько счётчиков сразу, а боковая inline-панель фильтров двусторонне синхронизируется с обычным поиском по списку.

Основные функциональные возможности:

  • View-based табы: каждый таб — самостоятельный View; navbar.getTabViewName() резолвит класс через clientDefs.{scope}.navbarItem.viewcontextMenu.enabled? → дефолтный nav-item.
  • Hover-popup контекстного меню: при наведении на таб entity-nav-item открывает popup рядом — секции statistics (с optionColors из enum), recent items (клик → navigate), quick actions (create / list / kanban). Скрытие через 150 мс при mouseleave; глобальный event navbar:context-menu-opening закрывает остальные popup-ы.
  • Multi-badge с polling: refresh.interval запускает setInterval; массив queries[] с where-условиями выполняется Promise.all — на бейдже отображается «5/12» (несколько счётчиков сразу); клик по бейджу → переход к списку с готовым where-фильтром.
  • Inline filter panel: context-nav-item вставляется после Home и слушает showContextView; filters-context-view рисует bool- и preset-фильтры; click → applySearchFilter → стандартный поиск применяет; и наоборот — search триггерит updateContextFilters, панель перерисовывается.
  • Глобальный Espo.navBarEventBus: 4 события — showContextView, applySearchFilter, updateContextFilters, опциональное todo:status-changed от bpm2bTodo; единая шина для координации между навигацией, списками и панелями.
  • Metadata-driven конфигурация: navbarItem.contextMenu описывает queries, recent (count / fields / orderBy / where), statistics (filters per field), quickActions, refresh — без правки JavaScript.
  • where-params handler: Global list handler принимает params.where из URL → преобразует в collection.where + searchManager.setAdvanced(); ссылки из popup открывают список с уже применённым фильтром.
  • Frontend-only модуль: backend нет, своих сущностей нет — все данные берутся через стандартный BPM2B API; устанавливается без миграций и обновлений БД.

Модуль предназначен для проектов с активной работой в списках: продажи, поддержка, логистика. Зависит от bpm2bNavbarViews ≥ 2.0.0 (базовый view навигации); опционально интегрируется с bpm2bTodo (событие todo:status-changed).

Совместимо с платформой версии 9.1.0+
Связаться

Готовы автоматизировать процессы?

Покажем работу системы на ваших данных за 30 минут. Расскажем, как окупится в вашей отрасли, и подберём конфигурацию под ваши процессы.

Email
info@bpm2b.ru
Москва
+7 (499) 113-22-35
Россия
8 (800) 551-91-16
Компания
ООО «Адм Про»

Мы свяжемся в течение 24 часов. Данные используем только для обработки заявки.