@ea-controls/mat-table-extensions
Version:
Angular directives that allows to extend Angular [mat-table](https://material.angular.io/components/table/overview) features
1 lines • 12.2 kB
Source Map (JSON)
{"version":3,"file":"ea-controls-mat-table-extensions.mjs","sources":["../../../projects/mat-table-extensions/src/lib/cell.ts","../../../projects/mat-table-extensions/src/lib/row.ts","../../../projects/mat-table-extensions/src/lib/module.ts","../../../projects/mat-table-extensions/src/public-api.ts","../../../projects/mat-table-extensions/src/ea-controls-mat-table-extensions.ts"],"sourcesContent":["import { Directive, inject, input, effect, OnDestroy } from \"@angular/core\";\r\nimport { MatHeaderCellDef, MatTable, MatColumnDef, MatFooterCellDef } from \"@angular/material/table\";\r\n\r\n@Directive({\r\n selector: '[matExtraHeaderCellDef]',\r\n providers: [{ provide: MatHeaderCellDef, useExisting: MatExtraHeaderCellDefDirective }]\r\n})\r\nexport class MatExtraHeaderCellDefDirective extends MatHeaderCellDef implements OnDestroy {\r\n\r\n private _table = inject(MatTable);\r\n private _column = inject(MatColumnDef);\r\n private _newColumn: MatColumnDef;\r\n public _prefix = input('', { alias: 'matExtraHeaderCellDef' })\r\n\r\n constructor() {\r\n super();\r\n\r\n this._newColumn = new MatColumnDef();\r\n\r\n effect(() => {\r\n if (this._table) {\r\n this._newColumn.name = `h_${this._column.name}_${this._prefix()}`;\r\n this._newColumn.sticky = this._column.sticky;\r\n this._newColumn.stickyEnd = this._column.stickyEnd;\r\n this._newColumn.cssClassFriendlyName = this._column.cssClassFriendlyName;\r\n this._newColumn.headerCell = this;\r\n this._table.addColumnDef(this._newColumn);\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._table.removeColumnDef(this._newColumn)\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: '[matExtraFooterCellDef]',\r\n providers: [{ provide: MatFooterCellDef, useExisting: MatExtraFooterCellDefDirective }]\r\n})\r\nexport class MatExtraFooterCellDefDirective extends MatFooterCellDef implements OnDestroy {\r\n\r\n private _table = inject(MatTable);\r\n private _column = inject(MatColumnDef);\r\n private _newColumn: MatColumnDef;\r\n public _prefix = input('', { alias: 'matExtraFooterCellDef' })\r\n\r\n constructor() {\r\n super();\r\n\r\n this._newColumn = new MatColumnDef();\r\n\r\n effect(() => {\r\n if (this._table) {\r\n this._newColumn.name = `f_${this._column.name}_${this._prefix()}`;\r\n this._newColumn.sticky = this._column.sticky;\r\n this._newColumn.stickyEnd = this._column.stickyEnd;\r\n this._newColumn.cssClassFriendlyName = this._column.cssClassFriendlyName;\r\n this._newColumn.footerCell = this;\r\n this._table.addColumnDef(this._newColumn);\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._table.removeColumnDef(this._newColumn)\r\n }\r\n}","import { CdkHeaderRowDef, CdkFooterRowDef } from \"@angular/cdk/table\";\r\nimport { Directive, booleanAttribute, input, effect, OnDestroy } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: '[matExtraHeaderRowDef]',\r\n providers: [{ provide: CdkHeaderRowDef, useExisting: MatExtraHeaderRowDefDirective }],\r\n inputs: [\r\n { name: 'columns', alias: 'matExtraHeaderRowDef' },\r\n { name: 'sticky', alias: 'matExtraHeaderRowDefSticky', transform: booleanAttribute },\r\n ],\r\n})\r\nexport class MatExtraHeaderRowDefDirective extends CdkHeaderRowDef implements OnDestroy {\r\n\r\n public _prefix = input.required({ alias: 'matExtraHeaderRowDefName' })\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.columns = [...this.columns].map(c => `h_${c}_${this._prefix()}`));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.columns = [];\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: '[matExtraFooterRowDef]',\r\n providers: [{ provide: CdkFooterRowDef, useExisting: MatExtraFooterRowDefDirective }],\r\n inputs: [\r\n { name: 'columns', alias: 'matExtraFooterRowDef' },\r\n { name: 'sticky', alias: 'matExtraFooterRowDefSticky', transform: booleanAttribute },\r\n ],\r\n})\r\nexport class MatExtraFooterRowDefDirective extends CdkFooterRowDef implements OnDestroy {\r\n\r\n public _prefix = input.required({ alias: 'matExtraFooterRowDefName' })\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.columns = [...this.columns].map(c => `f_${c}_${this._prefix()}`));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.columns = [];\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { MatExtraFooterCellDefDirective, MatExtraFooterRowDefDirective, MatExtraHeaderCellDefDirective, MatExtraHeaderRowDefDirective } from \".\";\r\nimport { MatTableModule } from \"@angular/material/table\";\r\n\r\n@NgModule({\r\n imports: [\r\n MatExtraHeaderCellDefDirective,\r\n MatExtraFooterCellDefDirective,\r\n MatExtraHeaderRowDefDirective,\r\n MatExtraFooterRowDefDirective,\r\n MatTableModule\r\n ],\r\n exports: [\r\n MatExtraHeaderCellDefDirective,\r\n MatExtraFooterCellDefDirective,\r\n MatExtraHeaderRowDefDirective,\r\n MatExtraFooterRowDefDirective,\r\n MatTableModule\r\n ],\r\n})\r\nexport class MatExtraTableModule { }","/*\r\n * Public API Surface of mat-table-extensions\r\n */\r\n\r\n\r\nexport * from './lib';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}