LiDataTableComponent class
High-performance AngularDart datatable with table/grid rendering, server-side data requests, selection, sorting, responsive columns, export, and virtual scroll support.
The component deliberately keeps DOM-sensitive orchestration local while delegating stateless template/context and CSS helper responsibilities to smaller files. That keeps the public API compatible and avoids additional work in the render path.
- Annotations
-
- @Component.new(selector: 'li-datatable', styleUrls: ['datatable_component.css', 'grid.css'], templateUrl: 'datatable_component.html', directives: [coreDirectives, limitlessFormDirectives, LiDropdownMenuPositionDirective, LiSafeHtmlDirective, LiCssStyleDirective, ...liTooltipDirectives, ...liPopoverDirectives, ...liPaginationDirectives], changeDetection: ChangeDetectionStrategy.onPush, exports: [DatatableRowType])
Constructors
- LiDataTableComponent(Element rootElement, ChangeDetectorRef _changeDetectorRef)
Properties
- allColumnsVisible → bool
-
no setter
- allowSingleSelectionOnly ↔ bool
-
getter/setter pair
- card ↔ DivElement?
-
getter/setter pair
- cardTemplate ↔ TemplateRef?
-
getter/setter pair
- collapseRowDetailsLabel ↔ String
-
getter/setter pair
- compactPaginationButtonQuantity ↔ int
-
getter/setter pair
- compactPaginationMaxWidth ↔ int
-
getter/setter pair
- data ↔ DataFrame
-
getter/setter pair
-
dataRequest
→ Stream<
Filters> -
no setter
- dataTableFilter ↔ Filters
-
getter/setter pair
- debugInstrumentation ↔ bool
-
getter/setter pair
- debugInstrumentationLabel ↔ String
-
getter/setter pair
- deferInitialDrawUntilData ↔ bool
-
getter/setter pair
- deferInitialDrawUntilVisible ↔ bool
-
getter/setter pair
- disableHeaderPadding ↔ bool
-
getter/setter pair
- disableRowClick ↔ bool
-
getter/setter pair
- disableSearchEvent ↔ bool
-
getter/setter pair
- emptyStateLabel ↔ String
-
getter/setter pair
- enableGlobalSorting ↔ bool
-
getter/setter pair
- enableGridMode ↔ bool
-
Enables the grid/card view and its toggle button.
getter/setter pair
- enableMultiColumnSorting ↔ bool
-
getter/setter pair
- enableResponsiveFeatures ↔ bool
-
Enables responsive collapse and responsive auto-hide features.
getter/setter pair
- expandRowDetailsLabel ↔ String
-
getter/setter pair
- expandsResponsiveDetailsOnRowClick → bool
-
Whether a click on the row body opens the responsive details instead of
being reported through onRowClick.
no setter
-
exportMenuActions
↔ List<
DatatableMenuAction> -
getter/setter pair
- exportMenuButtonTitle ↔ String
-
getter/setter pair
- exportPdfLabel ↔ String
-
getter/setter pair
- exportXlsxLabel ↔ String
-
getter/setter pair
- fixedTableLayout ↔ bool
-
Opt-in for CSS
table-layout: fixed.getter/setter pair -
getter/setter pair
-
no setter
- getCurrentPage → int
-
no setter
- getCurrentTotalItems → int
-
no setter
- gridMode ↔ bool
-
Requests grid/card rendering when enableGridMode allows it.
getter/setter pair
- gridScrollContainer ↔ HtmlElement?
-
getter/setter pair
- hasCustomCardTemplate → bool
-
no setter
-
no setter
- hasCustomHeader → bool
-
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasResponsiveCollapsedColumns → bool
-
no setter
- headerTemplate ↔ TemplateRef?
-
getter/setter pair
- headerTemplateContext → LiDatatableHeaderContext
-
no setter
- hideAllColumnsLabel ↔ String
-
getter/setter pair
- inputSearchElement → InputElement?
-
no setter
-
instrumentation
→ Stream<
LiDatatableInstrumentationEvent> -
no setter
- isCompactPaginationViewport → bool
-
no setter
- isEnglishLocale → bool
-
no setter
- isGridVirtualScrollActive → bool
-
no setter
- isLoading ↔ bool
-
getter/setter pair
- isResponsiveTextWrapActive → bool
-
Se o container de rolagem deve deixar as células quebrarem linha.
no setter
- isSaliPagedPerformanceProfile → bool
-
no setter
- isSelectAll ↔ bool
-
getter/setter pair
- isStickyTableHeaderOnVirtualScrollActive → bool
-
no setter
- isTableVirtualScrollActive → bool
-
no setter
- isVirtualScrollActive → bool
-
no setter
-
limitChange
→ Stream<
Filters> -
no setter
-
limitPerPageOptions
↔ List<
int> -
getter/setter pair
- locale ↔ String
-
getter/setter pair
- nullIsEmpty ↔ bool
-
getter/setter pair
- numPages → int
-
no setter
- onExportPdf ↔ DatatableExportPdfCallback?
-
getter/setter pair
- onExportXlsx ↔ DatatableExportPdfCallback?
-
getter/setter pair
- onRowClick → Stream
-
no setter
- paginationButtonQuantity ↔ int
-
getter/setter pair
- paginationSummaryText → String
-
no setter
- performanceProfile ↔ DatatablePerformanceProfile
-
getter/setter pair
- projectedCardTemplateDirective ↔ LiDatatableCardDirective?
-
getter/setter pair
-
projectedCellTemplateDirectives
↔ List<
LiDatatableCellDirective> ? -
getter/setter pair
-
getter/setter pair
-
projectedHeaderCellTemplateDirectives
↔ List<
LiDatatableHeaderCellDirective> ? -
getter/setter pair
- projectedHeaderTemplateDirective ↔ LiDatatableHeaderDirective?
-
getter/setter pair
-
renderedRows
↔ List<
DatatableRenderedRow> -
getter/setter pair
- requestDataOnItemsPerPageChange ↔ bool
-
When enabled, changing the page size emits dataRequest and recalculates
the offset like a regular page navigation instead of only emitting
limitChange.
getter/setter pair
- resolvedCardTemplate → TemplateRef?
-
no setter
- resolvedEmptyStateLabel → String
-
no setter
-
no setter
- resolvedGridContainerClass ↔ String
-
getter/setter pair
- resolvedGridContainerStyleCss ↔ String
-
getter/setter pair
- resolvedGridLayoutStyleCss ↔ String
-
getter/setter pair
- resolvedGridScrollContainerStyleCss ↔ String
-
getter/setter pair
- resolvedHeaderTemplate → TemplateRef?
-
no setter
- resolvedPaginationButtonQuantity → int
-
no setter
- resolvedScrollContainerStyleCss ↔ String
-
getter/setter pair
- responsiveAutoHideColumns ↔ bool
-
getter/setter pair
- responsiveCollapse ↔ bool
-
getter/setter pair
- responsiveCollapseByContainer ↔ bool
-
getter/setter pair
- responsiveCollapseContainerMaxWidth ↔ int
-
getter/setter pair
- responsiveCollapseMaxWidth ↔ int
-
getter/setter pair
- rootElement → Element
-
final
-
rows
↔ List<
DatatableRow> -
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- scrollContainer ↔ HtmlElement?
-
getter/setter pair
- searchButtonTitle ↔ String
-
getter/setter pair
-
searchInFields
↔ List<
DatatableSearchField> -
getter/setter pair
- searchLabel ↔ String
-
getter/setter pair
- searchPlaceholder ↔ String
-
getter/setter pair
-
searchRequest
→ Stream<
Filters> -
no setter
- select → Stream
-
no setter
-
selectAll
→ Stream<
List> -
no setter
- selectedSearchFieldIndex → int?
-
no setter
- settings ↔ DatatableSettings
-
getter/setter pair
- showAllColumnsLabel ↔ String
-
getter/setter pair
- showCheckboxToSelectRow ↔ bool
-
getter/setter pair
- showExportMenu ↔ bool
-
getter/setter pair
- showGridView → bool
-
no setter
- showResponsiveControlColumn → bool
-
Whether the dedicated expand/collapse column is currently rendered.
no setter
- showTableView → bool
-
no setter
- stickyTableHeaderOnVirtualScroll ↔ bool
-
getter/setter pair
- table ↔ HtmlElement?
-
getter/setter pair
- titleHelp → DatatableTitleHelpController
-
final
- toggleColumnsButtonTitle ↔ String
-
getter/setter pair
- toggleViewModeButtonTitle ↔ String
-
getter/setter pair
- totalRecords ↔ int
-
getter/setter pair
- totalRecordsLabel ↔ String
-
getter/setter pair
- virtualBottomSpacerHeight → int
-
no setter
- virtualGridItemHeight ↔ int
-
getter/setter pair
- virtualGridMinItemWidth ↔ int
-
getter/setter pair
- virtualOverscan ↔ int
-
getter/setter pair
- virtualRowHeight ↔ int
-
getter/setter pair
- virtualScroll ↔ bool
-
getter/setter pair
- virtualSpacerColspan → int
-
no setter
- virtualTopSpacerHeight → int
-
no setter
- virtualViewportHeight ↔ String
-
getter/setter pair
- visible ↔ bool
-
getter/setter pair
Methods
-
changeItemsPerPageHandler(
SelectElement select) → void -
changePage(
int page) → void -
changeViewMode(
) → void -
changeVisibilityOfCol(
DatatableCol col) → void -
draw(
{String reason = 'manual'}) → void -
drawPagination(
) → void -
exportPdf(
[bool isPrint = false, bool isDownload = true]) → Future< void> -
exportXlsx(
) → Future< void> -
getAllSelected<
T> () → List< T> -
handleSearchFieldSelectChange(
dynamic event, String? index) → void -
handleSearchInputKeypress(
dynamic e) → void -
hasCellTemplateFor(
DatatableCol column) → bool -
hasHeaderCellTemplateFor(
DatatableCol column) → bool -
hasResponsiveHiddenColumns(
DatatableRow row) → bool -
hideLoading(
) → void -
irParaPrimeiraPagina(
) → void -
irParaUltimaPagina(
) → void -
isColumnEffectivelyVisible(
DatatableCol column) → bool -
isFixedColumn(
DatatableCol column) → bool -
isLeftFixedColumn(
DatatableCol column) → bool -
isResponsiveControlColumn(
DatatableRenderedRow view, DatatableCol column) → bool -
isRightFixedColumn(
DatatableCol column) → bool -
isRowInteractive(
DatatableRenderedRow view) → bool -
isRuntimeResponsiveHidden(
DatatableCol column) → bool -
nextPage(
) → void -
ngAfterChanges(
) → void -
ngAfterViewInit(
) → void -
ngOnDestroy(
) → void - Executed before the directive is removed from the DOM and destroyed.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onHeaderCellClick(
MouseEvent event, DatatableCol colDefinition) → void -
onOrder(
DatatableCol colDefinition) → void -
onRequestData(
) → void -
onResponsiveControlClick(
MouseEvent event, dynamic viewOrRow) → void -
onResponsiveControlKeydown(
KeyboardEvent event, dynamic viewOrRow) → void - Keyboard parity for the expand/collapse control, which lives on a cell rather than a button.
-
onRowElementClick(
DatatableRenderedRow view) → void - Routes a click landing on the row itself rather than on the control.
-
onSearch(
) → void -
onSelect(
MouseEvent event, DatatableRow item) → void -
onSelectAll(
Event event) → void -
onVirtualViewportScroll(
) → void -
prevPage(
) → void -
refresh(
{bool immediate = false}) → void - Discards the cached rows and redraws the table from the current data.
-
removeItem(
dynamic element) → int -
resolveCardTemplateContext(
DatatableRow row, int rowIndex) → LiDatatableCardContext -
resolveCellTemplateContext(
DatatableRenderedRow view, DatatableCol column, int rowIndex, int columnIndex) → LiDatatableCellContext -
resolveCellTemplateFor(
DatatableCol column) → TemplateRef? -
resolveChildRowColspan(
DatatableRenderedRow view) → int -
resolvedCellStyleCss(
DatatableCol column, int index) → String -
resolvedHeaderStyleCss(
DatatableCol column, int index) → String -
resolveHeaderCellTemplateContext(
DatatableCol column, int columnIndex) → LiDatatableHeaderCellContext -
resolveHeaderCellTemplateFor(
DatatableCol column) → TemplateRef? -
resolveResponsiveControlLabel(
DatatableRenderedRow view) → String -
responsiveHiddenColumns(
DatatableRow row) → Iterable< DatatableCol> -
rowClickHandler(
DatatableRow row) → void -
scheduleDraw(
{bool force = false, String reason = 'unspecified'}) → void -
setInputSearchFocus(
) → void -
showLoading(
) → void -
syncContainerResizeObserverTarget(
) → void - Points the observer at the element that currently carries the width.
-
syncSelection(
bool predicate(dynamic instance)) → void -
toggleAllColumnsVisibility(
) → void -
toggleResponsiveRowDetails(
dynamic viewOrRow) → void -
Expands or collapses the responsive details of
viewOrRow. -
toString(
) → String -
A string representation of this object.
inherited
-
trackByColumnKey(
int index, dynamic column) → Object? -
trackByRenderedRow(
int index, dynamic item) → Object? -
trackByRow(
int index, dynamic item) → Object? -
unSelectAll(
) → void -
unSelectItemInstance(
dynamic item) → void -
update(
) → void - Alias kept for backwards compatibility; prefer refresh.
-
usePlainTextCell(
DatatableCol column) → bool -
useSimpleHeaderTitle(
DatatableCol column) → bool
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited