From daaa770a69915e013bebcee37bb30247ac32c5ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sinan=20=C3=96zt=C3=BCrk?= Date: Mon, 4 Mar 2024 15:27:47 +0300 Subject: [PATCH] Add tooltip functionality to grid actions component --- .../grid-actions/grid-actions.component.html | 37 +++++++++++++------ .../grid-actions/grid-actions.component.ts | 3 +- .../src/lib/models/entity-actions.ts | 3 ++ 3 files changed, 31 insertions(+), 12 deletions(-) diff --git a/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.html b/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.html index 70809a8975..4fcf67fcfc 100644 --- a/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.html +++ b/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.html @@ -53,16 +53,31 @@ @if (action.visible(data)) { - + @if (action.tooltip) { + + } @else { + + } } diff --git a/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.ts b/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.ts index 6937b93d8a..f74d36dd79 100644 --- a/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.ts +++ b/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.ts @@ -8,7 +8,7 @@ import { import { EntityAction, EntityActionList } from '../../models/entity-actions'; import { EXTENSIONS_ACTION_TYPE } from '../../tokens/extensions.token'; import { AbstractActionsComponent } from '../abstract-actions/abstract-actions.component'; -import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; +import { NgbDropdownModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap'; import { LocalizationModule, PermissionDirective } from '@abp/ng.core'; import { EllipsisDirective } from '@abp/ng.theme.shared'; import { NgClass, NgTemplateOutlet } from '@angular/common'; @@ -23,6 +23,7 @@ import { NgClass, NgTemplateOutlet } from '@angular/common'; NgClass, LocalizationModule, NgTemplateOutlet, + NgbTooltipModule ], selector: 'abp-grid-actions', templateUrl: './grid-actions.component.html', diff --git a/npm/ng-packs/packages/components/extensible/src/lib/models/entity-actions.ts b/npm/ng-packs/packages/components/extensible/src/lib/models/entity-actions.ts index f49b6fcf2c..eb103cb1bd 100644 --- a/npm/ng-packs/packages/components/extensible/src/lib/models/entity-actions.ts +++ b/npm/ng-packs/packages/components/extensible/src/lib/models/entity-actions.ts @@ -8,6 +8,7 @@ import { Actions, ActionsFactory, } from './actions'; +import { FormPropTooltip } from './form-props'; export class EntityActionList extends ActionList> {} @@ -25,6 +26,7 @@ export class EntityAction extends Action { readonly btnClass?: string; readonly btnStyle?: string; readonly showOnlyIcon?: boolean; + readonly tooltip?: FormPropTooltip; constructor(options: EntityActionOptions) { super(options.permission || '', options.visible, options.action); @@ -33,6 +35,7 @@ export class EntityAction extends Action { this.btnClass = options.btnClass || 'btn btn-primary text-center'; this.btnStyle = options.btnStyle; this.showOnlyIcon = options.showOnlyIcon || false; + this.tooltip = options.tooltip; } static create(options: EntityActionOptions) {