@progress/kendo-angular-spreadsheet
Version:
A Spreadsheet Component for Angular
89 lines (88 loc) • 4.69 kB
JavaScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { Component, ElementRef, Input, Renderer2 } from '@angular/core';
import { NgFor } from '@angular/common';
import { formulaFxIcon } from '@progress/kendo-svg-icons';
import { IconWrapperComponent } from '@progress/kendo-angular-icons';
import { EventsOutsideAngularDirective } from '@progress/kendo-angular-common';
import { SpreadsheetService } from '../common/spreadsheet.service';
import * as i0 from "@angular/core";
import * as i1 from "../common/spreadsheet.service";
/**
* @hidden
*/
export class FormulaListComponent {
element;
spreadsheetService;
renderer;
maxHeight;
data = [];
itemClick;
formulaFxIcon = formulaFxIcon;
constructor(element, spreadsheetService, renderer) {
this.element = element;
this.spreadsheetService = spreadsheetService;
this.renderer = renderer;
}
ngOnInit() {
this.renderer.setAttribute(this.element.nativeElement, 'id', this.spreadsheetService.formulaListId);
}
handleMouseDown = (ev) => {
ev.preventDefault();
};
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormulaListComponent, deps: [{ token: i0.ElementRef }, { token: i1.SpreadsheetService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FormulaListComponent, isStandalone: true, selector: "kendo-spreadsheet-formula-list", inputs: { maxHeight: "maxHeight", data: "data", itemClick: "itemClick" }, ngImport: i0, template: `
<ul
class="k-spreadsheet-formula-list k-list-ul k-list-md k-group k-reset"
role="menu"
[ ]="'auto'"
[ ]="maxHeight"
[ ]="{mousedown: handleMouseDown}">
<li *ngFor="let item of data"
(click)="itemClick(item.text)"
class="k-list-item"
role="menuitem">
<kendo-icon-wrapper
[ ]="formulaFxIcon"
name="formula-fx"
></kendo-icon-wrapper>
<span className="k-list-item-text">{{item.text}}</span>
</li>
</ul>
`, isInline: true, dependencies: [{ kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormulaListComponent, decorators: [{
type: Component,
args: [{
selector: 'kendo-spreadsheet-formula-list',
template: `
<ul
class="k-spreadsheet-formula-list k-list-ul k-list-md k-group k-reset"
role="menu"
[ ]="'auto'"
[ ]="maxHeight"
[ ]="{mousedown: handleMouseDown}">
<li *ngFor="let item of data"
(click)="itemClick(item.text)"
class="k-list-item"
role="menuitem">
<kendo-icon-wrapper
[ ]="formulaFxIcon"
name="formula-fx"
></kendo-icon-wrapper>
<span className="k-list-item-text">{{item.text}}</span>
</li>
</ul>
`,
standalone: true,
imports: [EventsOutsideAngularDirective, NgFor, IconWrapperComponent]
}]
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.SpreadsheetService }, { type: i0.Renderer2 }]; }, propDecorators: { maxHeight: [{
type: Input
}], data: [{
type: Input
}], itemClick: [{
type: Input
}] } });