OXBOX Help

Списки

Модуль выводит информационный список в виде таблицы с возможностью индивидуальной привязки кнопок действий к каждой строке.

Имеет следующую структуру:

{ type: "list", size: number, settings: { object: string, headers: Array<{ "title": string, "article": string, "type": "textarea" | "list" | "datetime" | ... }>, filters: {...}, link?: string | false, is_csv?: boolean, is_exel?: boolean, is_edit?: boolean, context?: {...}, linked_filter?: string is_infinite: boolean, hide_empty?: boolean }, components: { filters: Array<{...}>, buttons: Array<{...}>, search?: boolean } }
  • object - объект для запроса данных списка.

  • headers - столбцы таблицы. Представляет из себя массив объектов со следующей структурой:

    • title - заголовок столбца.

    • article - артикул столбца. В полученных данных для каждой строки извлекаются данные, находящиеся под указанным артикулом.

    • type - тип данных. Используется для форматирования перед отображением. Подробнее о типах ниже.

  • filters - вариативный объект для передачи инициализационных значений фильтров.

  • link - ссылка для кастомизации перехода при нажатии на строку. В базовом варианте ссылка формируется на основе объекта запроса.

  • is_csv - кнопка для выгрузки отображаемых данных в формате csv.

  • is_exel - кнопка для выгрузки отображаемых данных в формате exel.

  • is_edit - свойство для управления редактированием таблицы. При передаче значения в false, чекбоксы выбора строк и столбец с кнопками отключаются.

  • context - вариативный объект для передачи дополнительных параметров, участвующих в запросе на получение данных, но не имеющих фильтров (константы).

  • linked_filter - свойство для фильтрации данных модуля на основе фильтрации в другом модуле. Используется при комбинации нескольких модулей в отображении одного типа информации.

  • is_infinite - подключать ли бесконечную прокрутку. Является альтернативой базовой пагинации.

  • hide_empty - скрывать ли список при отсутствии данных для заполнения.

  • components:

    • search - выводить ли поисковую строку над таблицей.

Для столбцов таблицы доступны следующие типы данных:

  • email - оборачивает данные в нативную ссылку с префиксом "mailto:".

  • date, time, datetime - форматирует данные в стандартную дату. Может быть как строкой, так и объектом со свойствами color, value. В случае корректного указания свойства color, фон данных окрашивается в соответствующий цвет.

  • list - перечисляемый список данных. Представляет из себя массив объектов или единственный объект со свойствами title, value и вариативным color.

  • phone - форматирует данные в корректный формат телефона.

  • price - отображает стандартные данные как цену с фоном, цвет которого зависит от положения значения данных относительно цифры 0. Может быть как числом, так и объектом со свойствами old_price, new_price, price, icon. При указании old_price появляется уменьшенное значение старой цены в правом верхнем углу. Свойства new_price и price идентичны, price существует для семантики при отсутствии old_price, но использовании объекта. При указании свойства icon, слева от данных появляется соответствующая иконка. Указывать необходимо только название иконки.

  • float, integer - отображение чисел.

  • image - вывод изображения. Передавать необходимо абсолютную ссылку.

  • checkbox - вывод boolean-значения, как "Да" или "Нет".

  • audio_player - вывод звуковой дорожки.

  • link_list - аналог типа list, но с возможностью открытия во вложенности новой страницы. Дополнительно в объекте могут присутствовать свойства href и context, где context - дополнительные данные, указываемые при запросе страницы.

  • link - предоставляет возможность обернуть данные в ссылку для перехода. Данные представляют из себя объект с свойствами title и href.

  • color_list - аналог типа list, где в качестве значения указывается цвет в корректном формате (rgb(a), hex и т.д.). Данные отображаются в виде "точек", окрашенных в указанный цвет.

Во всех остальных случаях данные проверяются на соответствие массиву. В случае подтверждения происходит проход по массиву, иначе данные выводятся в том виде, в котором переданы.

Важно - столбец для кнопок вшит базово, передавать его не нужно. Необходимо позаботиться о наличии свойства buttons в объектах массива получаемых данных при запросе.

15 мая 2025