UNPKG

@knora/search

Version:
33 lines 3.89 kB
import * as tslib_1 from "tslib"; import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core'; import { MatMenuTrigger } from '@angular/material/menu'; let ListDisplayComponent = class ListDisplayComponent { constructor() { this.selectedNode = new EventEmitter(); } setValue(item) { this.selectedNode.emit(item); } }; tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Array) ], ListDisplayComponent.prototype, "children", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], ListDisplayComponent.prototype, "selectedNode", void 0); tslib_1.__decorate([ ViewChild('childMenu', { static: true }), tslib_1.__metadata("design:type", MatMenuTrigger) ], ListDisplayComponent.prototype, "childMenu", void 0); ListDisplayComponent = tslib_1.__decorate([ Component({ selector: 'list-display', template: "<mat-menu #childMenu=\"matMenu\" [overlapTrigger]=\"false\">\n <span *ngFor=\"let child of children\">\n <span *ngIf=\"child.children && child.children.length > 0\">\n <button mat-menu-item [matMenuTriggerFor]=\"menu.childMenu\" (click)=\"setValue(child)\" type=\"button\">\n {{child.label}}\n </button>\n <list-display #menu [children]=\"child.children\" (selectedNode)=\"setValue($event)\"></list-display>\n </span>\n\n <span *ngIf=\"!child.children || child.children.length === 0\">\n <button mat-menu-item (click)=\"setValue(child)\" type=\"button\">\n {{child.label}}\n </button>\n </span>\n </span>\n</mat-menu>\n", styles: [""] }), tslib_1.__metadata("design:paramtypes", []) ], ListDisplayComponent); export { ListDisplayComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1kaXNwbGF5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Brbm9yYS9zZWFyY2gvIiwic291cmNlcyI6WyJsaWIvZXh0ZW5kZWQtc2VhcmNoL3NlbGVjdC1wcm9wZXJ0eS9zcGVjaWZ5LXByb3BlcnR5LXZhbHVlL2xpc3QtdmFsdWUvbGlzdC1kaXNwbGF5L2xpc3QtZGlzcGxheS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQVF4RCxJQUFhLG9CQUFvQixHQUFqQyxNQUFhLG9CQUFvQjtJQVE3QjtRQUpVLGlCQUFZLEdBQTZCLElBQUksWUFBWSxFQUFjLENBQUM7SUFLbEYsQ0FBQztJQUVELFFBQVEsQ0FBQyxJQUFnQjtRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0NBRUosQ0FBQTtBQWJZO0lBQVIsS0FBSyxFQUFFOztzREFBd0I7QUFFdEI7SUFBVCxNQUFNLEVBQUU7c0NBQWUsWUFBWTswREFBOEM7QUFFeEM7SUFBekMsU0FBUyxDQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQztzQ0FBbUIsY0FBYzt1REFBQztBQU5sRSxvQkFBb0I7SUFMaEMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGNBQWM7UUFDeEIsOHVCQUE0Qzs7S0FFL0MsQ0FBQzs7R0FDVyxvQkFBb0IsQ0FlaEM7U0FmWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRNZW51VHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgTGlzdE5vZGVWMiB9IGZyb20gJ0Brbm9yYS9hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpc3QtZGlzcGxheScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xpc3QtZGlzcGxheS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbGlzdC1kaXNwbGF5LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTGlzdERpc3BsYXlDb21wb25lbnQge1xuXG4gICAgQElucHV0KCkgY2hpbGRyZW46IExpc3ROb2RlVjJbXTtcblxuICAgIEBPdXRwdXQoKSBzZWxlY3RlZE5vZGU6IEV2ZW50RW1pdHRlcjxMaXN0Tm9kZVYyPiA9IG5ldyBFdmVudEVtaXR0ZXI8TGlzdE5vZGVWMj4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2NoaWxkTWVudScsIHsgc3RhdGljOiB0cnVlIH0pIHB1YmxpYyBjaGlsZE1lbnU6IE1hdE1lbnVUcmlnZ2VyO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgfVxuXG4gICAgc2V0VmFsdWUoaXRlbTogTGlzdE5vZGVWMikge1xuICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5lbWl0KGl0ZW0pO1xuICAgIH1cblxufVxuIl19