import { Component, Directive, HostBinding, TemplateRef } from '@angular/core'; import { GridType } from '../common/grid.interface'; @Directive({// eslint-disable-next-line @angular-eslint/directive-selector selector: '[excelText],excel-text', standalone: true }) export class IgxExcelTextDirective { } @Directive({// eslint-disable-next-line @angular-eslint/directive-selector selector: '[csvText],csv-text', standalone: true }) export class IgxCSVTextDirective { } /** * Provides a way to template the title portion of the toolbar in the grid. * * @igxModule IgxGridToolbarModule * @igxParent IgxGridToolbarComponent * * @example * ```html * My custom title * ``` */ @Component({ selector: 'igx-grid-toolbar-title', template: '', standalone: true }) export class IgxGridToolbarTitleComponent { /** * Host `class.igx-grid-toolbar__title` binding. * * @hidden * @internal */ @HostBinding('class.igx-grid-toolbar__title') public cssClass = 'igx-grid-toolbar__title'; } /** * Provides a way to template the action portion of the toolbar in the grid. * * @igxModule IgxGridToolbarModule * @igxParent IgxGridToolbarComponent * * @example * ```html * * * * ``` */ @Component({ selector: 'igx-grid-toolbar-actions', template: '', standalone: true }) export class IgxGridToolbarActionsComponent { /** * Host `class.igx-grid-toolbar__actions` binding. * * @hidden * @internal */ @HostBinding('class.igx-grid-toolbar__actions') public cssClass = 'igx-grid-toolbar__actions'; } export interface IgxGridToolbarTemplateContext { $implicit: GridType; } @Directive({ selector: '[igxGridToolbar]', standalone: true }) export class IgxGridToolbarDirective { constructor(public template: TemplateRef) {} public static ngTemplateContextGuard(_dir: IgxGridToolbarDirective, ctx: unknown): ctx is IgxGridToolbarTemplateContext { return true } }