npm package: @ooo-inex/nav-tree
Description: КОМПОНЕНТ ДЕРЕВА НАВИГАЦИИ
Latest version: 0.5.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

КОМПОНЕНТ ДЕРЕВА НАВИГАЦИИ

Предназначен для визуализации данных таблиц типа admin.navigation (далее - navigation).

Дерево навигации многоуровневое, произвольной глубины.

Разделы меню могут быть либо только разделами, либо ещё и содержать контент (для таких ТРЕБУЕТСЯ булеан-свойство hasContent в данных пункта навигации).

=======
NavTree
=======
Основной компонент, является родительским для компонента NavItem, включённого в этот же пакет. Отрисовывает пункты навигации списком, прокидывая им часть пропсов из родительского компонента.

Параметры:
	key (Number) - id пункта навигации
	menu (Array) - меню навигации с данными по каждому пункту
	currentNavId (Number) - последний выбранный конечный пункт меню
	options (Object) - настройки, связанные с используемым запросом получения данных меню
		type (String) - тип используемого запроса пунктов меню: overall (всё сразу) | partial (по уровням для конкретного родителя)
		sectionsOpened (Boolean) - открыты ли разделы по умолчанию
		submenuName (String) - название свойства для массива дочерних пунктов меню в данных пункта навигации
		sectionPad (String) - отступ дочернего пункта навигации от родительского раздела в em
	svgIcons (Object) - пути для иконок для NavItem - стрелки вниз-вверх в секциях меню
		down (String) - путь к иконке раскрытого раздела
		up (String) - путь к иконке закрытого раздела (может выглядеть и как toTheRight, например)

Событие:
	nav-item-click - приходит с данными кликнутого пункта навигации (из NavItem через NavTree в родительский компонент)

=======
NavItem
=======
Дочерний компонент ПУНКТА НАВИГАЦИИ

Отрисовывает отдельный пункт меню, а также при наличие и его подменю списком в рекурсивном режиме.

Параметры:
	key - id пункта навигации из таблицы navigation
	item - данные пункта навигации
	current - id последнего выбранного пункта меню с контентом. если он фолси, активируем дефолтный пункт навигации (первый с контентом). если труфи, отмечаем в дереве.
	options - настройки, связанные с используемым запросом получения данных меню
		type - тип используемого запроса пунктов меню: overall (всё сразу) | partial (по уровням для конкретного родителя)
		sectionsOpened - открыты ли разделы по умолчанию
		submenuName - название свойства для массива дочерних пунктов меню в данных пункта навигации
	svgIcons - пути для иконок для NavItem - стрелки вниз-вверх в секциях меню

Событие:
	nav-item-click - приходит с данными кликнутого пункта навигации (из NavItem через NavTree в родительский компонент)

Детские пункты меню конкретного пункта навигации пребывают в виде массива в свойстве с именем options.submenuName
(например NAVIGATION - см. xsl-шаблон _common/xml-to-tree-json.xsl для запросов типа overall).

В компоненте используется обращение к стандартным полям: NAME, а также TREE_LEVEL и KID_COUNT (деревянные поля).
Разделы меню могут быть либо только разделами, либо ещё и содержать контент (определяется свойством hasContent в данных пункта навигации).

Последние выбранные пункты навигации с путём из id для каждого пространства сохраняются в локальном хранилище navPaths.


ЧТО НОВОГО

Минорная версия 0.5.0
- Запоминалка раскрытых/закрытых разделов теперь учитывает оба возможные значения оции sectionsOpened.
- Отступ подраздела теперь можно регулировать через опцию sectionPad.