@covalent/core
Version:
Core Teradata UI Platform for layouts, icons, custom components and themes. This should be added as a dependency for any project that wants to use layouts, icons and themes for Angular Material.
23 lines • 6.92 kB
JavaScript
import { Component, EventEmitter, Input, Output } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
import * as i2 from "@angular/material/icon";
import * as i3 from "@angular/material/menu";
export class TdDynamicMenuLinkComponent {
item;
itemClicked = new EventEmitter();
emitClicked() {
this.itemClicked.emit({ text: this.item.text, action: this.item.action });
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TdDynamicMenuLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: TdDynamicMenuLinkComponent, selector: "td-dynamic-menu-link", inputs: { item: "item" }, outputs: { itemClicked: "itemClicked" }, ngImport: i0, template: "<a\n *ngIf=\"item.link\"\n class=\"new-tab\"\n mat-menu-item\n [id]=\"item.id\"\n [href]=\"item.link\"\n [target]=\"item.newTab ? '_blank' : '_self'\"\n (click)=\"emitClicked()\"\n>\n <mat-icon\n *ngIf=\"item.svgIcon\"\n [class]=\"item.iconClasses\"\n [svgIcon]=\"item.svgIcon\"\n ></mat-icon>\n <mat-icon *ngIf=\"item.icon\" [class]=\"item.iconClasses\">{{\n item.icon\n }}</mat-icon>\n <span>{{ item.text }}</span>\n <mat-icon *ngIf=\"item.newTab\" class=\"new-tab-icon\">launch</mat-icon>\n</a>\n<button\n *ngIf=\"item.action\"\n mat-menu-item\n [id]=\"item.id\"\n (click)=\"emitClicked()\"\n>\n <mat-icon\n *ngIf=\"item.svgIcon\"\n [class]=\"item.iconClasses\"\n [svgIcon]=\"item.svgIcon\"\n ></mat-icon>\n <mat-icon *ngIf=\"item.icon\" [class]=\"item.iconClasses\">{{\n item.icon\n }}</mat-icon>\n <span>{{ item.text }}</span>\n</button>\n", styles: [".new-tab{display:flex;justify-content:flex-start;align-items:center}.new-tab span{flex:1}.new-tab .new-tab-icon{margin:0 0 0 16px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }] });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TdDynamicMenuLinkComponent, decorators: [{
type: Component,
args: [{ selector: 'td-dynamic-menu-link', template: "<a\n *ngIf=\"item.link\"\n class=\"new-tab\"\n mat-menu-item\n [id]=\"item.id\"\n [href]=\"item.link\"\n [target]=\"item.newTab ? '_blank' : '_self'\"\n (click)=\"emitClicked()\"\n>\n <mat-icon\n *ngIf=\"item.svgIcon\"\n [class]=\"item.iconClasses\"\n [svgIcon]=\"item.svgIcon\"\n ></mat-icon>\n <mat-icon *ngIf=\"item.icon\" [class]=\"item.iconClasses\">{{\n item.icon\n }}</mat-icon>\n <span>{{ item.text }}</span>\n <mat-icon *ngIf=\"item.newTab\" class=\"new-tab-icon\">launch</mat-icon>\n</a>\n<button\n *ngIf=\"item.action\"\n mat-menu-item\n [id]=\"item.id\"\n (click)=\"emitClicked()\"\n>\n <mat-icon\n *ngIf=\"item.svgIcon\"\n [class]=\"item.iconClasses\"\n [svgIcon]=\"item.svgIcon\"\n ></mat-icon>\n <mat-icon *ngIf=\"item.icon\" [class]=\"item.iconClasses\">{{\n item.icon\n }}</mat-icon>\n <span>{{ item.text }}</span>\n</button>\n", styles: [".new-tab{display:flex;justify-content:flex-start;align-items:center}.new-tab span{flex:1}.new-tab .new-tab-icon{margin:0 0 0 16px}\n"] }]
}], propDecorators: { item: [{
type: Input
}], itemClicked: [{
type: Output
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1tZW51LWxpbmsuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2R5bmFtaWMtbWVudS9zcmMvZHluYW1pYy1tZW51LWl0ZW0vZHluYW1pYy1tZW51LWxpbmsvZHluYW1pYy1tZW51LWxpbmsuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2R5bmFtaWMtbWVudS9zcmMvZHluYW1pYy1tZW51LWl0ZW0vZHluYW1pYy1tZW51LWxpbmsvZHluYW1pYy1tZW51LWxpbmsuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFXdkUsTUFBTSxPQUFPLDBCQUEwQjtJQUM1QixJQUFJLENBQWE7SUFFaEIsV0FBVyxHQUNuQixJQUFJLFlBQVksRUFBZ0MsQ0FBQztJQUVuRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUM1RSxDQUFDO3VHQVJVLDBCQUEwQjsyRkFBMUIsMEJBQTBCLCtIQ1h2Qyw0M0JBb0NBOzsyRkR6QmEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHNCQUFzQjs4QkFLdkIsSUFBSTtzQkFBWixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSU1lbnVJdGVtLFxuICBJVGREeW5hbWljTWVudUxpbmtDbGlja0V2ZW50LFxufSBmcm9tICcuLi8uLi9keW5hbWljLW1lbnUubWVudSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RkLWR5bmFtaWMtbWVudS1saW5rJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtbWVudS1saW5rLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZHluYW1pYy1tZW51LWxpbmsuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGREeW5hbWljTWVudUxpbmtDb21wb25lbnQge1xuICBASW5wdXQoKSBpdGVtITogSU1lbnVJdGVtO1xuXG4gIEBPdXRwdXQoKSBpdGVtQ2xpY2tlZDogRXZlbnRFbWl0dGVyPElUZER5bmFtaWNNZW51TGlua0NsaWNrRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPElUZER5bmFtaWNNZW51TGlua0NsaWNrRXZlbnQ+KCk7XG5cbiAgZW1pdENsaWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5pdGVtQ2xpY2tlZC5lbWl0KHsgdGV4dDogdGhpcy5pdGVtLnRleHQsIGFjdGlvbjogdGhpcy5pdGVtLmFjdGlvbiB9KTtcbiAgfVxufVxuIiwiPGFcbiAgKm5nSWY9XCJpdGVtLmxpbmtcIlxuICBjbGFzcz1cIm5ldy10YWJcIlxuICBtYXQtbWVudS1pdGVtXG4gIFtpZF09XCJpdGVtLmlkXCJcbiAgW2hyZWZdPVwiaXRlbS5saW5rXCJcbiAgW3RhcmdldF09XCJpdGVtLm5ld1RhYiA/ICdfYmxhbmsnIDogJ19zZWxmJ1wiXG4gIChjbGljayk9XCJlbWl0Q2xpY2tlZCgpXCJcbj5cbiAgPG1hdC1pY29uXG4gICAgKm5nSWY9XCJpdGVtLnN2Z0ljb25cIlxuICAgIFtjbGFzc109XCJpdGVtLmljb25DbGFzc2VzXCJcbiAgICBbc3ZnSWNvbl09XCJpdGVtLnN2Z0ljb25cIlxuICA+PC9tYXQtaWNvbj5cbiAgPG1hdC1pY29uICpuZ0lmPVwiaXRlbS5pY29uXCIgW2NsYXNzXT1cIml0ZW0uaWNvbkNsYXNzZXNcIj57e1xuICAgIGl0ZW0uaWNvblxuICB9fTwvbWF0LWljb24+XG4gIDxzcGFuPnt7IGl0ZW0udGV4dCB9fTwvc3Bhbj5cbiAgPG1hdC1pY29uICpuZ0lmPVwiaXRlbS5uZXdUYWJcIiBjbGFzcz1cIm5ldy10YWItaWNvblwiPmxhdW5jaDwvbWF0LWljb24+XG48L2E+XG48YnV0dG9uXG4gICpuZ0lmPVwiaXRlbS5hY3Rpb25cIlxuICBtYXQtbWVudS1pdGVtXG4gIFtpZF09XCJpdGVtLmlkXCJcbiAgKGNsaWNrKT1cImVtaXRDbGlja2VkKClcIlxuPlxuICA8bWF0LWljb25cbiAgICAqbmdJZj1cIml0ZW0uc3ZnSWNvblwiXG4gICAgW2NsYXNzXT1cIml0ZW0uaWNvbkNsYXNzZXNcIlxuICAgIFtzdmdJY29uXT1cIml0ZW0uc3ZnSWNvblwiXG4gID48L21hdC1pY29uPlxuICA8bWF0LWljb24gKm5nSWY9XCJpdGVtLmljb25cIiBbY2xhc3NdPVwiaXRlbS5pY29uQ2xhc3Nlc1wiPnt7XG4gICAgaXRlbS5pY29uXG4gIH19PC9tYXQtaWNvbj5cbiAgPHNwYW4+e3sgaXRlbS50ZXh0IH19PC9zcGFuPlxuPC9idXR0b24+XG4iXX0=