ms-data-grid 0.0.91 → 0.0.94

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,6 +10,15 @@ import { CellHostDirective } from '../directives/cellHost.directive';
10
10
  import { DatePipe } from '@angular/common';
11
11
  import { FormatCurrencyPipe } from '../pipes/format-currency.pipe';
12
12
  import * as i0 from "@angular/core";
13
+ export declare enum RowAnimationType {
14
+ None = "none",
15
+ Spread = "spreadAnimation",
16
+ Bounce = "bounceAnimation",
17
+ SlideUp = "slideUpFromBottom",
18
+ Flip = "flipAnimation",
19
+ Skew = "skewAnimation",
20
+ SlideRight = "slideFromRight"
21
+ }
13
22
  export interface DataGridConfig {
14
23
  fontFaimly: string;
15
24
  bodyTextFontsSize: number;
@@ -23,15 +32,6 @@ export interface DataGridConfig {
23
32
  rowShadingEnabled: boolean;
24
33
  activeFilters: boolean;
25
34
  }
26
- export declare enum RowAnimationType {
27
- None = "none",
28
- Spread = "spreadAnimation",
29
- Bounce = "bounceAnimation",
30
- SlideUp = "slideUpFromBottom",
31
- Flip = "flipAnimation",
32
- Skew = "skewAnimation",
33
- SlideRight = "slideFromRight"
34
- }
35
35
  export declare const sortingAnimation: import("@angular/animations").AnimationTriggerMetadata;
36
36
  export declare class DataGridComponent implements OnChanges, AfterViewInit, OnInit, AfterViewChecked {
37
37
  private columnService;
@@ -139,11 +139,11 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
139
139
  enableCut: boolean;
140
140
  tabs: string[];
141
141
  showCheckboxes: boolean;
142
- pageSizeOptions: number[];
142
+ consumerFont: string | null;
143
+ defaultConfig: DataGridConfig | null;
143
144
  resetAllFilters: {
144
145
  resetAll: boolean;
145
146
  };
146
- defaultConfig: DataGridConfig | null;
147
147
  columnThreedotsMunuConfig: {
148
148
  showPinleft: boolean;
149
149
  showPinright: boolean;
@@ -157,6 +157,7 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
157
157
  showResetColumns: boolean;
158
158
  };
159
159
  cellHosts: QueryList<CellHostDirective>;
160
+ globalSearchInput: ElementRef<HTMLInputElement>;
160
161
  changeLayout: EventEmitter<any>;
161
162
  customCellEvent: EventEmitter<any>;
162
163
  filterOptions: EventEmitter<any>;
@@ -164,7 +165,6 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
164
165
  tablePresetConfig: EventEmitter<any>;
165
166
  sortingOrderOptions: EventEmitter<any>;
166
167
  createUpdateConfigListing: EventEmitter<any>;
167
- storePresetName: string;
168
168
  isFullScreen: boolean;
169
169
  activeTab: string | null;
170
170
  groupedColumns: any[];
@@ -182,6 +182,7 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
182
182
  filterColumnsList: any[];
183
183
  groupBoxPadding: number;
184
184
  presetName: string;
185
+ storePresetName: string;
185
186
  presetFilter: boolean;
186
187
  searchTextPresetTable: string;
187
188
  addFilterColumnInput: string;
@@ -204,7 +205,6 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
204
205
  private injector;
205
206
  createCellInjector(row: any, col: any): Injector;
206
207
  private renderCustomCells;
207
- shouldRestoreScroll: boolean;
208
208
  ngAfterViewChecked(): void;
209
209
  ngOnInit(): void;
210
210
  dataSetLoading: boolean;
@@ -228,7 +228,6 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
228
228
  leftPinnedHeader: ElementRef<HTMLDivElement>;
229
229
  centerPinnedHeader: ElementRef<HTMLDivElement>;
230
230
  rightPinnedHeader: ElementRef<HTMLDivElement>;
231
- globalSearchInput: ElementRef<HTMLInputElement>;
232
231
  columnsGroupedBox: ElementRef<HTMLDivElement>;
233
232
  centerFakeScrollbar: ElementRef<HTMLDivElement>;
234
233
  updateColumnWidthsAndGroups(columns?: any): Promise<void>;
@@ -240,25 +239,6 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
240
239
  isNestedValueArray(obj: any, field: string): boolean;
241
240
  onResizeGroup(event: MouseEvent, col: any, isRightPinned?: boolean): void;
242
241
  private updateColumnWidthInSourceByField;
243
- get createUpdateColumnConfig(): {
244
- columns: any[];
245
- filters: any[];
246
- no_of_records: any;
247
- table_config: {
248
- rowShadingEnabled: boolean;
249
- showVerticalBorder: boolean;
250
- fontFaimly: string | undefined;
251
- headerTextFontsSize: number;
252
- selectedTableLayout: any;
253
- bodyTextFontsSize: number;
254
- globalSearch: string;
255
- filterNames: string;
256
- totalCount: number;
257
- activeFilters: boolean;
258
- oddRowsBackgroundColor: string;
259
- };
260
- type: string;
261
- };
262
242
  cleanColumns(columns: any[]): any[];
263
243
  onResizeColumn(event: MouseEvent, col: any): void;
264
244
  onResizeGroupBox(event: MouseEvent): void;
@@ -273,7 +253,8 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
273
253
  closeFilterDropdowns(event: MouseEvent): void;
274
254
  private hasParentWithClass;
275
255
  isMenueHidden: boolean;
276
- openThreeDotsMenu(event: MouseEvent, child: any, keepOriginalPosition?: boolean): void;
256
+ clickedOnSortIcon: boolean;
257
+ openThreeDotsMenu(event: MouseEvent, child: any, clickedOnSortIcon?: boolean): void;
277
258
  sortAsc(col: any): void;
278
259
  sortDesc(col: any): void;
279
260
  resetSort(col: any): void;
@@ -401,6 +382,7 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
401
382
  toggleActionsDropdown(): void;
402
383
  changeTableLayout(event: Event, layoutType: string): Promise<void>;
403
384
  setTableLayout(layoutType: string): void;
385
+ pageSizeOptions: number[];
404
386
  get startIndexData(): number;
405
387
  get endIndex(): number;
406
388
  get visiblePages(): (number | string)[];
@@ -419,8 +401,8 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
419
401
  firstValue: any;
420
402
  firstCondition: string;
421
403
  secondValue: any;
422
- secondCondition: string | null;
423
- condition: string | null;
404
+ secondCondition: null;
405
+ condition: string;
424
406
  resetTextFilterChanges(): void;
425
407
  toggleAllValusSelectionInDropdownFilter(column: any): void;
426
408
  selectedFilterOptions: any[];
@@ -433,7 +415,7 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
433
415
  isAllSideFilterOptionsSelected(col: any): boolean;
434
416
  onOptionToggle(col: any, option: any): void;
435
417
  resetSideFilter(col: any): void;
436
- clearAllFilters(shouldUpdateConfigListing?: boolean): void;
418
+ clearAllFilters(): void;
437
419
  applySideFilter(column: any): void;
438
420
  removeSideFilter(column: any): void;
439
421
  collapseAllExpandedCells(): void;
@@ -598,6 +580,7 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
598
580
  hasAnyDefaultView(): boolean;
599
581
  get isTablePresetNotChanged(): any;
600
582
  onActionButtonClick(button: string): void;
583
+ createCustomColumn(): void;
601
584
  setActiveTab(tab: string | null): void;
602
585
  getBackgroundColor(row: any, isEven: boolean, section: 'left' | 'center' | 'right'): string | undefined;
603
586
  hasHorizontalScrollbar(): boolean;
@@ -618,9 +601,8 @@ export declare class DataGridComponent implements OnChanges, AfterViewInit, OnIn
618
601
  selectGroupRow(e: Event, row: any): void;
619
602
  getGroupCheckedState(row: any): boolean | undefined;
620
603
  getCellTitle(row: any, col: any): string;
621
- finishEdit(event: any): void;
622
- getDynamicRight(col: any, section: string, colIndex: number, subColIndex: number): number | null;
623
- blurInput(event: Event, row: any, col: any): void;
604
+ activeFilterType: string;
605
+ activeFilter(type: string): void;
624
606
  static ɵfac: i0.ɵɵFactoryDeclaration<DataGridComponent, never>;
625
- static ɵcmp: i0.ɵɵComponentDeclaration<DataGridComponent, "data-grid", never, { "rowAnimation": { "alias": "rowAnimation"; "required": false; }; "paginationConfig": { "alias": "paginationConfig"; "required": false; }; "dataSet": { "alias": "dataSet"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "headerRowHeight": { "alias": "headerRowHeight"; "required": false; }; "showVerticalBorder": { "alias": "showVerticalBorder"; "required": false; }; "evenRowsBackgroundColor": { "alias": "evenRowsBackgroundColor"; "required": false; }; "oddRowsBackgroundColor": { "alias": "oddRowsBackgroundColor"; "required": false; }; "headerBackgroundColor": { "alias": "headerBackgroundColor"; "required": false; }; "checkboxesBackgroundColor": { "alias": "checkboxesBackgroundColor"; "required": false; }; "showColumnsGrouping": { "alias": "showColumnsGrouping"; "required": false; }; "rowHoverColor": { "alias": "rowHoverColor"; "required": false; }; "leftPinnedBackgroundColor": { "alias": "leftPinnedBackgroundColor"; "required": false; }; "bodyBackgroundColor": { "alias": "bodyBackgroundColor"; "required": false; }; "rightPinnedBackgroundColor": { "alias": "rightPinnedBackgroundColor"; "required": false; }; "sidemenuBackgroundColor": { "alias": "sidemenuBackgroundColor"; "required": false; }; "bodyTextColor": { "alias": "bodyTextColor"; "required": false; }; "headerTextColor": { "alias": "headerTextColor"; "required": false; }; "checkboxesColor": { "alias": "checkboxesColor"; "required": false; }; "headerTextFontsSize": { "alias": "headerTextFontsSize"; "required": false; }; "bodyTextFontsSize": { "alias": "bodyTextFontsSize"; "required": false; }; "headerFontWeight": { "alias": "headerFontWeight"; "required": false; }; "bodyFontWeight": { "alias": "bodyFontWeight"; "required": false; }; "checkedRowBackgroundColor": { "alias": "checkedRowBackgroundColor"; "required": false; }; "dropdownsBackgroundColor": { "alias": "dropdownsBackgroundColor"; "required": false; }; "footerRowBackgroundColor": { "alias": "footerRowBackgroundColor"; "required": false; }; "footerRowHeight": { "alias": "footerRowHeight"; "required": false; }; "topGroupedBadgesBackgroundColor": { "alias": "topGroupedBadgesBackgroundColor"; "required": false; }; "showRowsGrouping": { "alias": "showRowsGrouping"; "required": false; }; "showFilterRow": { "alias": "showFilterRow"; "required": false; }; "fontFaimly": { "alias": "fontFaimly"; "required": false; }; "showSideMenu": { "alias": "showSideMenu"; "required": false; }; "footerPadding": { "alias": "footerPadding"; "required": false; }; "topFilterRowHeight": { "alias": "topFilterRowHeight"; "required": false; }; "rowShadingEnabled": { "alias": "rowShadingEnabled"; "required": false; }; "showSerialNumber": { "alias": "showSerialNumber"; "required": false; }; "singleSpaAssetsPath": { "alias": "singleSpaAssetsPath"; "required": false; }; "filtersConfig": { "alias": "filtersConfig"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "verticalScrollbarWidth": { "alias": "verticalScrollbarWidth"; "required": false; }; "horizintalScrollbarWidth": { "alias": "horizintalScrollbarWidth"; "required": false; }; "showCellDetailsBox": { "alias": "showCellDetailsBox"; "required": false; }; "dateFormat": { "alias": "dateFormat"; "required": false; }; "tableSearch": { "alias": "tableSearch"; "required": false; }; "actions": { "alias": "actions"; "required": false; }; "config": { "alias": "config"; "required": false; }; "showTaskbar": { "alias": "showTaskbar"; "required": false; }; "tableName": { "alias": "tableName"; "required": false; }; "listingType": { "alias": "listingType"; "required": false; }; "checkboxState": { "alias": "checkboxState"; "required": false; }; "taskbarActions": { "alias": "taskbarActions"; "required": false; }; "sortingConfig": { "alias": "sortingConfig"; "required": false; }; "tableFilterViewId": { "alias": "tableFilterViewId"; "required": false; }; "selectedTableLayout": { "alias": "selectedTableLayout"; "required": false; }; "closeDropdown": { "alias": "closeDropdown"; "required": false; }; "globalSearchText": { "alias": "globalSearchText"; "required": false; }; "nestedTablerowFontsize": { "alias": "nestedTablerowFontsize"; "required": false; }; "nestedTableHeaderRowHeight": { "alias": "nestedTableHeaderRowHeight"; "required": false; }; "nestedTablerowHeight": { "alias": "nestedTablerowHeight"; "required": false; }; "gridType": { "alias": "gridType"; "required": false; }; "currencySymbol": { "alias": "currencySymbol"; "required": false; }; "currencyFormat": { "alias": "currencyFormat"; "required": false; }; "leftPinnedBoxshadow": { "alias": "leftPinnedBoxshadow"; "required": false; }; "rightPinnedBoxshadow": { "alias": "rightPinnedBoxshadow"; "required": false; }; "selectedRowsBackgroundColor": { "alias": "selectedRowsBackgroundColor"; "required": false; }; "nestedTableHeaderBackgroundColor": { "alias": "nestedTableHeaderBackgroundColor"; "required": false; }; "nestedTableRowBackgroundColor": { "alias": "nestedTableRowBackgroundColor"; "required": false; }; "tableView": { "alias": "tableView"; "required": false; }; "buttons": { "alias": "buttons"; "required": false; }; "keepMultipleExpandedDetails": { "alias": "keepMultipleExpandedDetails"; "required": false; }; "showTotalAmountRow": { "alias": "showTotalAmountRow"; "required": false; }; "enableGlobalSearch": { "alias": "enableGlobalSearch"; "required": false; }; "tableType": { "alias": "tableType"; "required": false; }; "enableExport": { "alias": "enableExport"; "required": false; }; "showFullScreenButton": { "alias": "showFullScreenButton"; "required": false; }; "enableCut": { "alias": "enableCut"; "required": false; }; "tabs": { "alias": "tabs"; "required": false; }; "showCheckboxes": { "alias": "showCheckboxes"; "required": false; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; }; "resetAllFilters": { "alias": "resetAllFilters"; "required": false; }; "defaultConfig": { "alias": "defaultConfig"; "required": false; }; "columnThreedotsMunuConfig": { "alias": "columnThreedotsMunuConfig"; "required": false; }; }, { "changeLayout": "changeLayout"; "customCellEvent": "customCellEvent"; "filterOptions": "filterOptions"; "genericEvent": "genericEvent"; "tablePresetConfig": "tablePresetConfig"; "sortingOrderOptions": "sortingOrderOptions"; "createUpdateConfigListing": "createUpdateConfigListing"; }, never, never, false, never>;
607
+ static ɵcmp: i0.ɵɵComponentDeclaration<DataGridComponent, "data-grid", never, { "rowAnimation": { "alias": "rowAnimation"; "required": false; }; "paginationConfig": { "alias": "paginationConfig"; "required": false; }; "dataSet": { "alias": "dataSet"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "headerRowHeight": { "alias": "headerRowHeight"; "required": false; }; "showVerticalBorder": { "alias": "showVerticalBorder"; "required": false; }; "evenRowsBackgroundColor": { "alias": "evenRowsBackgroundColor"; "required": false; }; "oddRowsBackgroundColor": { "alias": "oddRowsBackgroundColor"; "required": false; }; "headerBackgroundColor": { "alias": "headerBackgroundColor"; "required": false; }; "checkboxesBackgroundColor": { "alias": "checkboxesBackgroundColor"; "required": false; }; "showColumnsGrouping": { "alias": "showColumnsGrouping"; "required": false; }; "rowHoverColor": { "alias": "rowHoverColor"; "required": false; }; "leftPinnedBackgroundColor": { "alias": "leftPinnedBackgroundColor"; "required": false; }; "bodyBackgroundColor": { "alias": "bodyBackgroundColor"; "required": false; }; "rightPinnedBackgroundColor": { "alias": "rightPinnedBackgroundColor"; "required": false; }; "sidemenuBackgroundColor": { "alias": "sidemenuBackgroundColor"; "required": false; }; "bodyTextColor": { "alias": "bodyTextColor"; "required": false; }; "headerTextColor": { "alias": "headerTextColor"; "required": false; }; "checkboxesColor": { "alias": "checkboxesColor"; "required": false; }; "headerTextFontsSize": { "alias": "headerTextFontsSize"; "required": false; }; "bodyTextFontsSize": { "alias": "bodyTextFontsSize"; "required": false; }; "headerFontWeight": { "alias": "headerFontWeight"; "required": false; }; "bodyFontWeight": { "alias": "bodyFontWeight"; "required": false; }; "checkedRowBackgroundColor": { "alias": "checkedRowBackgroundColor"; "required": false; }; "dropdownsBackgroundColor": { "alias": "dropdownsBackgroundColor"; "required": false; }; "footerRowBackgroundColor": { "alias": "footerRowBackgroundColor"; "required": false; }; "footerRowHeight": { "alias": "footerRowHeight"; "required": false; }; "topGroupedBadgesBackgroundColor": { "alias": "topGroupedBadgesBackgroundColor"; "required": false; }; "showRowsGrouping": { "alias": "showRowsGrouping"; "required": false; }; "showFilterRow": { "alias": "showFilterRow"; "required": false; }; "fontFaimly": { "alias": "fontFaimly"; "required": false; }; "showSideMenu": { "alias": "showSideMenu"; "required": false; }; "footerPadding": { "alias": "footerPadding"; "required": false; }; "topFilterRowHeight": { "alias": "topFilterRowHeight"; "required": false; }; "rowShadingEnabled": { "alias": "rowShadingEnabled"; "required": false; }; "showSerialNumber": { "alias": "showSerialNumber"; "required": false; }; "singleSpaAssetsPath": { "alias": "singleSpaAssetsPath"; "required": false; }; "filtersConfig": { "alias": "filtersConfig"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "verticalScrollbarWidth": { "alias": "verticalScrollbarWidth"; "required": false; }; "horizintalScrollbarWidth": { "alias": "horizintalScrollbarWidth"; "required": false; }; "showCellDetailsBox": { "alias": "showCellDetailsBox"; "required": false; }; "dateFormat": { "alias": "dateFormat"; "required": false; }; "tableSearch": { "alias": "tableSearch"; "required": false; }; "actions": { "alias": "actions"; "required": false; }; "config": { "alias": "config"; "required": false; }; "showTaskbar": { "alias": "showTaskbar"; "required": false; }; "tableName": { "alias": "tableName"; "required": false; }; "listingType": { "alias": "listingType"; "required": false; }; "checkboxState": { "alias": "checkboxState"; "required": false; }; "taskbarActions": { "alias": "taskbarActions"; "required": false; }; "sortingConfig": { "alias": "sortingConfig"; "required": false; }; "tableFilterViewId": { "alias": "tableFilterViewId"; "required": false; }; "selectedTableLayout": { "alias": "selectedTableLayout"; "required": false; }; "closeDropdown": { "alias": "closeDropdown"; "required": false; }; "globalSearchText": { "alias": "globalSearchText"; "required": false; }; "nestedTablerowFontsize": { "alias": "nestedTablerowFontsize"; "required": false; }; "nestedTableHeaderRowHeight": { "alias": "nestedTableHeaderRowHeight"; "required": false; }; "nestedTablerowHeight": { "alias": "nestedTablerowHeight"; "required": false; }; "gridType": { "alias": "gridType"; "required": false; }; "currencySymbol": { "alias": "currencySymbol"; "required": false; }; "currencyFormat": { "alias": "currencyFormat"; "required": false; }; "leftPinnedBoxshadow": { "alias": "leftPinnedBoxshadow"; "required": false; }; "rightPinnedBoxshadow": { "alias": "rightPinnedBoxshadow"; "required": false; }; "selectedRowsBackgroundColor": { "alias": "selectedRowsBackgroundColor"; "required": false; }; "nestedTableHeaderBackgroundColor": { "alias": "nestedTableHeaderBackgroundColor"; "required": false; }; "nestedTableRowBackgroundColor": { "alias": "nestedTableRowBackgroundColor"; "required": false; }; "tableView": { "alias": "tableView"; "required": false; }; "buttons": { "alias": "buttons"; "required": false; }; "keepMultipleExpandedDetails": { "alias": "keepMultipleExpandedDetails"; "required": false; }; "showTotalAmountRow": { "alias": "showTotalAmountRow"; "required": false; }; "enableGlobalSearch": { "alias": "enableGlobalSearch"; "required": false; }; "tableType": { "alias": "tableType"; "required": false; }; "enableExport": { "alias": "enableExport"; "required": false; }; "showFullScreenButton": { "alias": "showFullScreenButton"; "required": false; }; "enableCut": { "alias": "enableCut"; "required": false; }; "tabs": { "alias": "tabs"; "required": false; }; "showCheckboxes": { "alias": "showCheckboxes"; "required": false; }; "consumerFont": { "alias": "consumerFont"; "required": false; }; "defaultConfig": { "alias": "defaultConfig"; "required": false; }; "resetAllFilters": { "alias": "resetAllFilters"; "required": false; }; "columnThreedotsMunuConfig": { "alias": "columnThreedotsMunuConfig"; "required": false; }; }, { "changeLayout": "changeLayout"; "customCellEvent": "customCellEvent"; "filterOptions": "filterOptions"; "genericEvent": "genericEvent"; "tablePresetConfig": "tablePresetConfig"; "sortingOrderOptions": "sortingOrderOptions"; "createUpdateConfigListing": "createUpdateConfigListing"; }, never, never, false, never>;
626
608
  }
@@ -0,0 +1,34 @@
1
+ @font-face {
2
+ font-family: "Inter";
3
+ src: url("../assets/fonts/Inter/static/Inter_18pt-Regular.ttf") format("truetype");
4
+ font-weight: 400;
5
+ font-style: normal;
6
+ font-display: swap;
7
+ }
8
+
9
+ /* medium */
10
+ @font-face {
11
+ font-family: "Inter";
12
+ src: url("../assets/fonts/Inter/static/Inter_18pt-Medium.ttf") format("truetype");
13
+ font-weight: 500;
14
+ font-style: normal;
15
+ font-display: swap;
16
+ }
17
+
18
+ /* bold */
19
+ @font-face {
20
+ font-family: "Inter";
21
+ src: url("../assets/fonts/Inter/static/Inter_18pt-Bold.ttf") format("truetype");
22
+ font-weight: 700;
23
+ font-style: normal;
24
+ font-display: swap;
25
+ }
26
+
27
+ /* semi bold */
28
+ @font-face {
29
+ font-family: "Inter";
30
+ src: url("../assets/fonts/Inter/static/Inter_18pt-SemiBold.ttf") format("truetype");
31
+ font-weight: 600;
32
+ font-style: normal;
33
+ font-display: swap;
34
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ms-data-grid",
3
- "version": "0.0.91",
3
+ "version": "0.0.94",
4
4
  "description": "A powerful, customizable Angular data grid component with advanced features like sorting, filtering, pagination, column pinning, and taskbar actions. Perfect for enterprise applications.",
5
5
  "keywords": [
6
6
  "angular",