@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
44 lines • 5.06 kB
JavaScript
import { Component, Input, Output, ViewChild, EventEmitter } from '@angular/core';
import { SearchService } from './search.service';
import * as i0 from "@angular/core";
import * as i1 from "./search.service";
export class SearchComponent {
constructor(searchService) {
this.searchService = searchService;
this.icon = 'search';
this.priority = 0;
this.search = new EventEmitter();
this.term = '';
}
onSearch() {
this.search.emit(this);
}
ngAfterViewInit() {
this.template = undefined;
this.viewInitTimeout = setTimeout(() => this.searchService.add(this));
}
ngOnDestroy() {
clearTimeout(this.viewInitTimeout);
this.searchService.remove(this);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchComponent, deps: [{ token: i1.SearchService }], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SearchComponent, selector: "c8y-search", inputs: { name: "name", icon: "icon", priority: "priority", term: "term" }, outputs: { search: "search" }, viewQueries: [{ propertyName: "template", first: true, predicate: ["template"], descendants: true }], ngImport: i0, template: "<ng-template #template>\n <ng-content></ng-content>\n</ng-template>" }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchComponent, decorators: [{
type: Component,
args: [{ selector: 'c8y-search', template: "<ng-template #template>\n <ng-content></ng-content>\n</ng-template>" }]
}], ctorParameters: () => [{ type: i1.SearchService }], propDecorators: { name: [{
type: Input
}], icon: [{
type: Input
}], priority: [{
type: Input
}], template: [{
type: ViewChild,
args: ['template', { static: false }]
}], search: [{
type: Output
}], term: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9jb3JlL3NlYXJjaC9zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFNakQsTUFBTSxPQUFPLGVBQWU7SUFVMUIsWUFBb0IsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFSdkMsU0FBSSxHQUFHLFFBQVEsQ0FBQztRQUNoQixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBRVosV0FBTSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDckMsU0FBSSxHQUFHLEVBQUUsQ0FBQztJQUlnQyxDQUFDO0lBRXBELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO1FBQzFCLElBQUksQ0FBQyxlQUFlLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQWMsQ0FBQyxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVELFdBQVc7UUFDVCxZQUFZLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQWMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7K0dBeEJVLGVBQWU7bUdBQWYsZUFBZSxtUUNSNUIsc0VBRWM7OzRGRE1ELGVBQWU7a0JBSjNCLFNBQVM7K0JBQ0UsWUFBWTtrRkFJYixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ29DLFFBQVE7c0JBQWpELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDOUIsTUFBTTtzQkFBZixNQUFNO2dCQUNFLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkLCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlYXJjaCB9IGZyb20gJy4vc2VhcmNoLm1vZGVsJztcbmltcG9ydCB7IFNlYXJjaFNlcnZpY2UgfSBmcm9tICcuL3NlYXJjaC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LXNlYXJjaCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2guY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaENvbXBvbmVudCBpbXBsZW1lbnRzIFNlYXJjaCB7XG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcbiAgQElucHV0KCkgaWNvbiA9ICdzZWFyY2gnO1xuICBASW5wdXQoKSBwcmlvcml0eSA9IDA7XG4gIEBWaWV3Q2hpbGQoJ3RlbXBsYXRlJywgeyBzdGF0aWM6IGZhbHNlIH0pIHRlbXBsYXRlOiBhbnk7XG4gIEBPdXRwdXQoKSBzZWFyY2ggPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaD4oKTtcbiAgQElucHV0KCkgdGVybSA9ICcnO1xuXG4gIHByaXZhdGUgdmlld0luaXRUaW1lb3V0O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSkge31cblxuICBvblNlYXJjaCgpIHtcbiAgICB0aGlzLnNlYXJjaC5lbWl0KHRoaXMpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMudGVtcGxhdGUgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy52aWV3SW5pdFRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2VhcmNoU2VydmljZS5hZGQodGhpcyBhcyBTZWFyY2gpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnZpZXdJbml0VGltZW91dCk7XG4gICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnJlbW92ZSh0aGlzIGFzIFNlYXJjaCk7XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+Il19