@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
54 lines • 9.19 kB
JavaScript
import { Component, EventEmitter, Inject, Optional } from '@angular/core';
import { Router } from '@angular/router';
import { RouterService as C8yRouter } from '@c8y/ngx-components';
import { SEARCH_CONFIG } from './search-config.model';
import * as i0 from "@angular/core";
import * as i1 from "@c8y/ngx-components";
import * as i2 from "@angular/router";
import * as i3 from "@angular/common";
import * as i4 from "./search-custom-filters.component";
export class SearchActionComponent {
constructor(c8yRouter, router, moduleConfig) {
this.c8yRouter = c8yRouter;
this.router = router;
this.moduleConfig = moduleConfig;
this.typeaheadReload = new EventEmitter();
this.showAdvancedFilters = moduleConfig?.showAdvancedFilters ?? true;
this.customPlaceholder = moduleConfig?.placeholder;
}
triggerDataLoad() {
this.typeaheadReload.next(null);
}
onSearch(on) {
this.navigate(['/assetsearch'], {
queryParams: { search: on },
replaceUrl: true
});
}
onFilter(on) {
this.navigate(['/assetsearch'], {
queryParams: { filter: on },
replaceUrl: true
});
}
onClick(mo) {
this.router.navigateByUrl(this.c8yRouter.getHref(mo, '/'));
}
navigate(commands, extras) {
this.router
.navigateByUrl('/', { skipLocationChange: true })
.then(() => this.router.navigate(commands, extras));
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchActionComponent, deps: [{ token: i1.RouterService }, { token: i2.Router }, { token: SEARCH_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SearchActionComponent, selector: "c8y-search-action", ngImport: i0, template: "<c8y-search-input\n (filter)=\"onFilter($event)\"\n (search)=\"onSearch($event)\"\n (onClick)=\"onClick($event)\"\n [enableCustomTemplatePlaceholder]=\"true\"\n [customPlaceholder]=\"customPlaceholder\"\n [customDataQuery]=\"customQuery\"\n [externalTerm]=\"typeaheadReload\"\n>\n <c8y-search-custom-filters\n *ngIf=\"showAdvancedFilters\"\n class=\"d-flex gap-16 p-l-4 p-l-24 p-r-24\"\n (refresh)=\"triggerDataLoad()\"\n (customDataQuery)=\"customQuery = $event\"\n ></c8y-search-custom-filters>\n</c8y-search-input>\n", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.SearchInputComponent, selector: "c8y-search-input", inputs: ["mode", "enableCustomTemplatePlaceholder", "customPlaceholder", "externalTerm", "customDataQuery", "container", "groupsOnly"], outputs: ["filter", "search", "reset", "onClick"] }, { kind: "component", type: i4.SearchCustomFiltersComponent, selector: "c8y-search-custom-filters", outputs: ["customDataQuery", "refresh"] }] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchActionComponent, decorators: [{
type: Component,
args: [{ selector: 'c8y-search-action', template: "<c8y-search-input\n (filter)=\"onFilter($event)\"\n (search)=\"onSearch($event)\"\n (onClick)=\"onClick($event)\"\n [enableCustomTemplatePlaceholder]=\"true\"\n [customPlaceholder]=\"customPlaceholder\"\n [customDataQuery]=\"customQuery\"\n [externalTerm]=\"typeaheadReload\"\n>\n <c8y-search-custom-filters\n *ngIf=\"showAdvancedFilters\"\n class=\"d-flex gap-16 p-l-4 p-l-24 p-r-24\"\n (refresh)=\"triggerDataLoad()\"\n (customDataQuery)=\"customQuery = $event\"\n ></c8y-search-custom-filters>\n</c8y-search-input>\n" }]
}], ctorParameters: () => [{ type: i1.RouterService }, { type: i2.Router }, { type: undefined, decorators: [{
type: Optional
}, {
type: Inject,
args: [SEARCH_CONFIG]
}] }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zZWFyY2gvc2VhcmNoLWFjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zZWFyY2gvc2VhcmNoLWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBb0IsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsSUFBSSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVqRSxPQUFPLEVBQWdCLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7QUFNcEUsTUFBTSxPQUFPLHFCQUFxQjtJQU1oQyxZQUNVLFNBQW9CLEVBQ3BCLE1BQWMsRUFDb0IsWUFBMEI7UUFGNUQsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ29CLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBTHRFLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQU9uQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsWUFBWSxFQUFFLG1CQUFtQixJQUFJLElBQUksQ0FBQztRQUNyRSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsWUFBWSxFQUFFLFdBQVcsQ0FBQztJQUNyRCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxRQUFRLENBQUMsRUFBVTtRQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDOUIsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRTtZQUMzQixVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxDQUFDLEVBQVU7UUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQzlCLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUU7WUFDM0IsVUFBVSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUFrQjtRQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRU8sUUFBUSxDQUFDLFFBQWUsRUFBRSxNQUF5QjtRQUN6RCxJQUFJLENBQUMsTUFBTTthQUNSLGFBQWEsQ0FBQyxHQUFHLEVBQUUsRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUNoRCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQzsrR0F6Q1UscUJBQXFCLHFFQVNWLGFBQWE7bUdBVHhCLHFCQUFxQix5RENYbEMsOGhCQWdCQTs7NEZETGEscUJBQXFCO2tCQUpqQyxTQUFTOytCQUNFLG1CQUFtQjs7MEJBWTFCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJTWFuYWdlZE9iamVjdCwgSVJlc3VsdExpc3QgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRXh0cmFzLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUm91dGVyU2VydmljZSBhcyBDOHlSb3V0ZXIgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFVuYXJ5RnVuY3Rpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNlYXJjaENvbmZpZywgU0VBUkNIX0NPTkZJRyB9IGZyb20gJy4vc2VhcmNoLWNvbmZpZy5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1zZWFyY2gtYWN0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1hY3Rpb24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEFjdGlvbkNvbXBvbmVudCB7XG4gIHNob3dBZHZhbmNlZEZpbHRlcnM6IGJvb2xlYW47XG4gIGN1c3RvbVBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIGN1c3RvbVF1ZXJ5OiBVbmFyeUZ1bmN0aW9uPHN0cmluZywgT2JzZXJ2YWJsZTxJUmVzdWx0TGlzdDxJTWFuYWdlZE9iamVjdD4+PjtcbiAgdHlwZWFoZWFkUmVsb2FkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYzh5Um91dGVyOiBDOHlSb3V0ZXIsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFNFQVJDSF9DT05GSUcpIHB1YmxpYyBtb2R1bGVDb25maWc6IFNlYXJjaENvbmZpZ1xuICApIHtcbiAgICB0aGlzLnNob3dBZHZhbmNlZEZpbHRlcnMgPSBtb2R1bGVDb25maWc/LnNob3dBZHZhbmNlZEZpbHRlcnMgPz8gdHJ1ZTtcbiAgICB0aGlzLmN1c3RvbVBsYWNlaG9sZGVyID0gbW9kdWxlQ29uZmlnPy5wbGFjZWhvbGRlcjtcbiAgfVxuXG4gIHRyaWdnZXJEYXRhTG9hZCgpIHtcbiAgICB0aGlzLnR5cGVhaGVhZFJlbG9hZC5uZXh0KG51bGwpO1xuICB9XG5cbiAgb25TZWFyY2gob246IHN0cmluZykge1xuICAgIHRoaXMubmF2aWdhdGUoWycvYXNzZXRzZWFyY2gnXSwge1xuICAgICAgcXVlcnlQYXJhbXM6IHsgc2VhcmNoOiBvbiB9LFxuICAgICAgcmVwbGFjZVVybDogdHJ1ZVxuICAgIH0pO1xuICB9XG5cbiAgb25GaWx0ZXIob246IHN0cmluZykge1xuICAgIHRoaXMubmF2aWdhdGUoWycvYXNzZXRzZWFyY2gnXSwge1xuICAgICAgcXVlcnlQYXJhbXM6IHsgZmlsdGVyOiBvbiB9LFxuICAgICAgcmVwbGFjZVVybDogdHJ1ZVxuICAgIH0pO1xuICB9XG5cbiAgb25DbGljayhtbzogSU1hbmFnZWRPYmplY3QpIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRoaXMuYzh5Um91dGVyLmdldEhyZWYobW8sICcvJykpO1xuICB9XG5cbiAgcHJpdmF0ZSBuYXZpZ2F0ZShjb21tYW5kczogYW55W10sIGV4dHJhcz86IE5hdmlnYXRpb25FeHRyYXMpIHtcbiAgICB0aGlzLnJvdXRlclxuICAgICAgLm5hdmlnYXRlQnlVcmwoJy8nLCB7IHNraXBMb2NhdGlvbkNoYW5nZTogdHJ1ZSB9KVxuICAgICAgLnRoZW4oKCkgPT4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoY29tbWFuZHMsIGV4dHJhcykpO1xuICB9XG59XG4iLCI8Yzh5LXNlYXJjaC1pbnB1dFxuICAoZmlsdGVyKT1cIm9uRmlsdGVyKCRldmVudClcIlxuICAoc2VhcmNoKT1cIm9uU2VhcmNoKCRldmVudClcIlxuICAob25DbGljayk9XCJvbkNsaWNrKCRldmVudClcIlxuICBbZW5hYmxlQ3VzdG9tVGVtcGxhdGVQbGFjZWhvbGRlcl09XCJ0cnVlXCJcbiAgW2N1c3RvbVBsYWNlaG9sZGVyXT1cImN1c3RvbVBsYWNlaG9sZGVyXCJcbiAgW2N1c3RvbURhdGFRdWVyeV09XCJjdXN0b21RdWVyeVwiXG4gIFtleHRlcm5hbFRlcm1dPVwidHlwZWFoZWFkUmVsb2FkXCJcbj5cbiAgPGM4eS1zZWFyY2gtY3VzdG9tLWZpbHRlcnNcbiAgICAqbmdJZj1cInNob3dBZHZhbmNlZEZpbHRlcnNcIlxuICAgIGNsYXNzPVwiZC1mbGV4IGdhcC0xNiBwLWwtNCBwLWwtMjQgcC1yLTI0XCJcbiAgICAocmVmcmVzaCk9XCJ0cmlnZ2VyRGF0YUxvYWQoKVwiXG4gICAgKGN1c3RvbURhdGFRdWVyeSk9XCJjdXN0b21RdWVyeSA9ICRldmVudFwiXG4gID48L2M4eS1zZWFyY2gtY3VzdG9tLWZpbHRlcnM+XG48L2M4eS1zZWFyY2gtaW5wdXQ+XG4iXX0=