@true-directive/base
Version:
The set of base classes for the TrueDirective Grid
193 lines (192 loc) • 7.09 kB
JavaScript
/**
* Copyright (c) 2018-2019 Aleksey Melnikov, True Directive Company.
* @link https://truedirective.com/
* @license MIT
*/
/**
* Grid apperance settings
*/
var GridAppearance = /** @class */ (function () {
function GridAppearance() {
/**
* Grid's css-class
*/
this.class = 'true-grid-appearance';
/**
* Material grid's css-class
*/
this.classMat = 'true-grid-material';
/**
* Data appearance css-class
*/
this.dataClass = 'true-grid-data-appearance';
/**
* Header apperance css-class
*/
this.headerAreaClass = 'true-header-appearance';
/**
* Footer appearance css-class
*/
this.footerAreaClass = 'true-footer-appearance';
/**
* Класс подсветки ячейки, на которой находится фокус
*/
this.focusedCellClass = 'true-focused-cell-hl';
/**
* Отображение вертикальных границ ячеек данных
*/
this.verticalLines = true;
/**
* Отображение горизонтальных границ ячеек данных
*/
this.horizontalLines = true;
/**
* Отображение вертикальных границ ячеек заголовка
*/
this.headerVerticalLines = true;
/**
* Отображение горизонтальных границ ячеек заголовка
*/
this.headerHorizontalLines = true;
/**
* Отображение вертикальных границ ячеек футера
*/
this.footerVerticalLines = false;
/**
* Внешний вид заголовка группы первого уровня
*/
this.groupL1Class = 'true-group-l1';
/**
* Внешний вид заголовка групп всех уровней
*/
this.groupClass = 'true-group';
/**
* Класс состояния заголовка развернутой группы
*/
this.groupExpandedClass = 'true-expanded';
/**
* Класс состояния заголовка свёрнутой группы
*/
this.groupCollapsedClass = 'true-collapsed';
/**
* Переключатель видимости групп
*/
this.groupSwitcherClass = 'true-group-switcher';
/**
* Переключатель видимости групп первого уровня
*/
this.groupSwitcherL1Class = '';
/**
* Иконка переключателя развернутости группы (для развертывания)
*/
this.groupExpandIconClass = 'true-icon-right-open';
/**
* Иконка переключателя развернутости группы (для свертывания)
*/
this.groupCollapseIconClass = 'true-icon-down-open';
/**
* Класс иконки кнопки фильтра в заголовке колонки (фильтр выключен)
*/
this.filterBtnIconClass = 'true-icon-filter';
/**
* Класс иконки кнопки фильтра в заголовке колонки (фильтр включен)
*/
this.filterBtnIconClass_active = 'true-icon-filter true-accent';
/**
* Иконка индикатора сортирвки (по возрастанию)
*/
this.sortedUpIconClass = 'true-icon-up-dir';
/**
* Иконка индикатора сортирвки (по убыванию)
*/
this.sortedDownIconClass = 'true-icon-down-dir';
/**
* Класс чекбокса
*/
this.checkboxClass = 'true-cb';
/**
* Class of boolean value indicator (false value)
*/
this.booleanClass = 'true-bool';
/**
* Class of boolean value indicator (true value)
*/
this.booleanClass_checked = 'true-bool checked';
/**
* Класс для помеченных строк
*/
this.checkedRowClass = 'true-row-checked';
/**
* Выделение checked rows
*/
this.enableCheckedAppearance = true;
/**
* Анимированное появление содержимого группы
*/
this.groupShowFadeIn = false;
//
/**
* Класс скроллбокса. Можно отдельно кастомизировать скроллбары
*/
this.scrollboxClass = '';
/**
* Класс перетаскиваемой item
*/
this.dragItemClass = 'true-grid-drag-item-appearance';
/**
* Подсветка ячейки, на которой находится фокус
*/
this.enableFocusedAppearance = true;
/**
* Подсветка строки, над которой находится курсор мыши
*/
this.enableHoverAppearance = false;
}
/**
* Список классов для заголовка
* @return Строка с классами через пробел
*/
GridAppearance.prototype.getHeaderClass = function () {
var res = ''; // this.headerClass;
if (this.headerVerticalLines) {
res = ' true-v-lines';
}
if (this.headerHorizontalLines) {
res += ' true-h-lines';
}
return res;
};
/**
* Список классов для футера
* @return Строка с классами через пробел
*/
GridAppearance.prototype.getFooterClass = function () {
var res = '';
if (this.footerVerticalLines) {
res += ' true-v-lines';
}
return res;
};
/**
* Список классов для области данных
* @return Строка с классами через пробел
*/
GridAppearance.prototype.getDataClass = function () {
var res = this.dataClass;
if (this.verticalLines) {
res += ' true-v-lines';
}
if (this.horizontalLines) {
res += ' true-h-lines';
}
if (this.enableFocusedAppearance) {
res += ' ' + this.focusedCellClass;
}
if (this.enableHoverAppearance) {
res += ' true-hovered-row-hl';
}
return res;
};
return GridAppearance;
}());
export { GridAppearance };