UNPKG

@progress/kendo-angular-spreadsheet

Version:

A Spreadsheet Component for Angular

140 lines (139 loc) 8.22 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { Component, forwardRef, Inject } from '@angular/core'; import { NgIf } from '@angular/common'; import { ToolBarComponent, ToolBarToolComponent } from '@progress/kendo-angular-toolbar'; import { DialogService } from '@progress/kendo-angular-dialog'; import { IconWrapperComponent } from '@progress/kendo-angular-icons'; import { ColorPickerComponent } from '@progress/kendo-angular-inputs'; import { SpreadsheetLocalizationService } from '../../localization/spreadsheet-localization.service'; import { SpreadsheetService } from '../../common/spreadsheet.service'; import { SpreadsheetToolsService } from '../tools.service'; import { SpreadsheetDropDownToolBase } from '../shared/spreadsheet-dropdown-tools-base'; import * as i0 from "@angular/core"; import * as i1 from "@progress/kendo-angular-dialog"; import * as i2 from "../../localization/spreadsheet-localization.service"; import * as i3 from "../../common/spreadsheet.service"; import * as i4 from "../tools.service"; import * as i5 from "@progress/kendo-angular-toolbar"; /** * A component which configures an existing `ColorPickerComponent` as a Spreadsheet tool to change the text color. * * The component associates a `kendo-colorpicker` with a Spreadsheet command that changes the foreground color of a content block and * automatically defines the options of the color picker and sets its values. [See example](slug:toolbar_tools_spreadsheet#home-menu-item-tools). * @hidden */ export class SpreadsheetForeColorComponent extends SpreadsheetDropDownToolBase { constructor(dialogService, localization, spreadsheetService, toolsService, toolbar) { super('color', dialogService, localization, spreadsheetService, toolsService, toolbar); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SpreadsheetForeColorComponent, deps: [{ token: i1.DialogService }, { token: i2.SpreadsheetLocalizationService }, { token: i3.SpreadsheetService }, { token: i4.SpreadsheetToolsService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SpreadsheetForeColorComponent, isStandalone: true, selector: "kendo-spreadsheet-forecolor-tool", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetForeColorComponent) }], usesInheritance: true, ngImport: i0, template: ` <ng-template #toolbarTemplate> <div class="k-toolbar-item"> <kendo-colorpicker #element [attr.title]="messageFor(command)" [format]="'hex'" [(value)]="value" [tabindex]="tabindex" (valueChange)="onValueChange($event)" [clearButton]="false" fillMode="flat" [icon]="icon" [svgIcon]="svgIcon" [preview]="true"></kendo-colorpicker> </div> </ng-template> <ng-template #popupTemplate> <div #popupButton [tabindex]="tabindex" role="menuitem" class="k-item k-menu-item" (click)="openDialog()"> <span class="k-link k-menu-link"> <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper> <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span> </span> </div> </ng-template> <ng-template #sectionTemplate> <div class="k-toolbar-item"> <kendo-colorpicker #element [attr.title]="messageFor(command)" [format]="'hex'" [(value)]="value" [tabindex]="tabindex" (valueChange)="onValueChange($event)" [clearButton]="false" fillMode="flat" [icon]="icon" [svgIcon]="svgIcon" [preview]="true"></kendo-colorpicker> </div> </ng-template> `, isInline: true, dependencies: [{ kind: "component", type: ColorPickerComponent, selector: "kendo-colorpicker", inputs: ["views", "view", "adaptiveMode", "activeView", "readonly", "disabled", "format", "value", "popupSettings", "paletteSettings", "gradientSettings", "icon", "iconClass", "svgIcon", "adaptiveTitle", "adaptiveSubtitle", "clearButton", "tabindex", "preview", "actionsLayout", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur", "cancel", "activeColorClick", "clearButtonClick", "activeViewChange"], exportAs: ["kendoColorPicker"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SpreadsheetForeColorComponent, decorators: [{ type: Component, args: [{ providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetForeColorComponent) }], selector: 'kendo-spreadsheet-forecolor-tool', template: ` <ng-template #toolbarTemplate> <div class="k-toolbar-item"> <kendo-colorpicker #element [attr.title]="messageFor(command)" [format]="'hex'" [(value)]="value" [tabindex]="tabindex" (valueChange)="onValueChange($event)" [clearButton]="false" fillMode="flat" [icon]="icon" [svgIcon]="svgIcon" [preview]="true"></kendo-colorpicker> </div> </ng-template> <ng-template #popupTemplate> <div #popupButton [tabindex]="tabindex" role="menuitem" class="k-item k-menu-item" (click)="openDialog()"> <span class="k-link k-menu-link"> <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper> <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span> </span> </div> </ng-template> <ng-template #sectionTemplate> <div class="k-toolbar-item"> <kendo-colorpicker #element [attr.title]="messageFor(command)" [format]="'hex'" [(value)]="value" [tabindex]="tabindex" (valueChange)="onValueChange($event)" [clearButton]="false" fillMode="flat" [icon]="icon" [svgIcon]="svgIcon" [preview]="true"></kendo-colorpicker> </div> </ng-template> `, standalone: true, imports: [ColorPickerComponent, IconWrapperComponent, NgIf] }] }], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.SpreadsheetLocalizationService }, { type: i3.SpreadsheetService }, { type: i4.SpreadsheetToolsService }, { type: i5.ToolBarComponent, decorators: [{ type: Inject, args: [ToolBarComponent] }] }]; } });