Мы рады сообщить, что вышла новая версия 5.2 нашего набора веб-компонентов Bryntum. Среди основных моментов в этом выпуске: разделение задач/событий, отзывчивость календаря, визуализация задач и событий в нерабочее время и многое другое.
Разделить задачи
Gantt и Scheduler Pro теперь поддерживают разделение задачи/события, превращая одну задачу в связанные сегменты, которые можно перетаскивать и изменять размер по отдельности. Проверьте это для Ганта в новой демонстрации split-tasks:
А в новом демо сплит-события в Scheduler Pro:
Отзывчивость календаря
Календарь теперь использует Отзывчивый миксин (который был переработан), представленный в TaskBoard, чтобы лучше соответствовать меньшим размерам экрана путем скрытия/замены частей пользовательского интерфейса. Он включается автоматически, попробуйте его в любой демо-версии. Вот два снимка экрана из базовой демонстрации на экранах двух разных размеров:
Ускорение экспорта PDF
Функция экспорта PDF имеет новый режим «прямого рендеринга», который теперь включен по умолчанию. Больше не нужно прокручивать набор данных, что улучшает UX и значительно сокращает время, необходимое для создания контента, который серверная часть затем обрабатывает для создания PDF.
Улучшенная типизация TypeScript
Наш продукт поставляется с типами TypeScript, которые мы пытаемся улучшить с каждым выпуском. API слишком велик, чтобы создавать эти типизации вручную, вместо этого мы генерируем их на основе нашей документации. Таким образом, качество наших типов напрямую связано с качеством нашей документации по API.
В этом выпуске мы улучшили и то, и другое, позволив указать, что функция или свойство, которые принимают объект конфигурации для определенного класса, теперь вместо универсального object
могут принимать типизированный объект.
Например, конфигурация cellEditor
сетки Column
позволяет настроить плавающее Editor
, используемое для редактирования ячейки. Раньше он принимал нетипизированный object
, но теперь вместо этого он принимает EditorConfig
(что при типизации переводится как Partial<EditorConfig>
).
type ColumnConfig = {
align: 'left'|'center'|'right'|'start'|'end'
autoHeight: boolean
cellCls: string
cellEditor: Partial<EditorConfig>
...
}
Поддержка заполнения тиков Ганта
Гант теперь поддерживает масштабирование задач для заполнения целых тиков (самая нижняя единица оси времени, «ячейки») с использованием конфигурации (которая была перенесена из Планировщика). Улучшение заключается в том, что теперь он также подходит для диапазонов нерабочего времени для более цельного вида. Попробуйте это в новой демо-версии «fill-ticks»:
Визуализация событий и задач в нерабочее время
У Ганта есть новая функция TaskNonWorkingTime
, которая визуализирует нерабочее время из календаря задачи. Проверьте это в новой демонстрации «календарей»:
Аналогичным образом, в Scheduler есть новая функция EventNonWorkingTime
(которая наиболее правильная в Scheduler Pro), которая отображает диапазоны нерабочего времени как заштрихованные части событий. Используется в «демонстрации нерабочего времени события» в Scheduler Pro:
Выбор времени в Планировщике
В Планировщике появилась новая функция TimeSelection
, которая позволяет пользователям выбирать временной интервал в заголовке оси времени. Цель выбора зависит от приложения, в сопроводительной демонстрации «выбор времени» его можно использовать для выбора пересекающихся событий или фильтрации недоступных ресурсов:
Сворачиваемые столбцы сетки
Сгруппированные столбцы в сетке теперь могут быть свернуты пользователем при настройке с помощью collapsible: true
. При настройке можно выбрать один из двух режимов: либо свертывание скрывает все столбцы в группе, кроме первого, либо переключает видимость столбцов в группе, чтобы отображались ранее скрытые столбцы, и наоборот. Поставляется с новыми демонстрациями в Grid, Scheduler и Gantt, все они называются «складные столбцы». Демонстрация сетки:
Демонстрация планировщика:
Демонстрация Ганта:
Улучшенная функция TreeGroup
Функция TreeGroup
, представленная в версии 5.0.0, была переработана, чтобы сделать ее более полезной. Он больше не преобразует исходное хранилище, а вместо этого создает ссылки на исходные записи в «магазине отображения» и преобразует его.
Для Ганта это имеет большое преимущество, заключающееся в том, что исходная древовидная структура, используемая при планировании, остается нетронутой, а задачи в сгруппированном представлении по-прежнему можно редактировать и они будут придерживаться правил исходной структуры. В предыдущей реализации все задачи нужно было помечать как запланированные вручную, что делало представление доступным только для чтения.
Еще одним преимуществом является то, что новый подход также работает в планировщике, и в качестве бонуса он более производительный, чем старый подход. Scheduler поставляется с новой демонстрацией «древовидной группировки»:
События мыши для ResourceTimeRanges
Теперь можно включить события мыши для временных диапазонов ресурсов, настроив эту функцию с помощью enableMouseEvents : true
. При этом будут запускаться такие события, как щелчок, наведение мыши и т. д. с префиксом «resourceTimeRange», например, resourceTimeRangeClick
. Конфигурация используется в новой демонстрации приложения «бронирование» в планировщике:
Добавление содержимого в пустые ячейки в календаре
В календаре появился новый emptyCellRenderer
, который позволяет вставлять пользовательский контент в пустые дни в представлении месяца. Используется в новой демонстрации «show-booking»:
Больше новостей
- Календарь теперь может отображать все дни недели в заголовке в режиме просмотра дня.
- Функции TimeRanges и NonWorkingTime теперь используют виртуализированный рендеринг, отображая только диапазоны (и линии) рендеринга.
- Появился новый виджет ViewPresetCombo, который позволяет пользователю выбирать между набором пресетов просмотра. Например, день, неделя и месяц
- Базовые линии в Гантте теперь могут быть более легко оформлены путем добавления
cls
илиstyle
в данные. - Столбцы сетки теперь можно переименовывать с помощью контекстного меню.
- В TaskBoard появился новый
isTaskSelectable
API, соответствующий планировщикамisEventSelectable
Сведения о выпуске
Полную информацию об этом выпуске см. в журналах изменений, руководствах «Что нового» и руководствах по обновлению для каждого продукта.
Подведение итогов
В версии 5.2 добавлено множество новых функций и демонстраций, основанных почти исключительно на отзывах, полученных от наших клиентов и сообщества. Мы надеемся, что вам понравится этот релиз, и, пожалуйста, продолжайте оставлять свои отзывы. Есть ли конкретная функция, которую вы хотели бы добавить следующей?
Загрузить бесплатную пробную версию 5.2
Первоначально опубликовано на https://www.bryntum.com 14 октября 2022 г.