UNPKG

@netgrif/components-core

Version:

Netgrif Application engine frontend core Angular library

91 lines (90 loc) 5.83 kB
import { SearchService } from '../search-service/search.service'; import { LoggerService } from '../../logger/services/logger.service'; import { DialogService } from '../../dialog/services/dialog.service'; import { TranslateService } from '@ngx-translate/core'; import { EventEmitter, OnInit, Type } from '@angular/core'; import { SearchComponentConfiguration } from '../models/component-configuration/search-component-configuration'; import { SearchMode } from '../models/component-configuration/search-mode'; import { UserFiltersService } from '../../filter/user-filters.service'; import { AllowedNetsService } from '../../allowed-nets/services/allowed-nets.service'; import { Category } from '../models/category/category'; import { SavedFilterMetadata } from '../models/persistance/saved-filter-metadata'; import { ViewIdService } from '../../user/services/view-id.service'; import { Filter } from '../../filter/models/filter'; import { TaskSetDataRequestFields } from '../../resources/interface/task-set-data-request-body'; import { DataGroup } from '../../resources/interface/data-groups'; import * as i0 from "@angular/core"; /** * A universal search component that can be used to interactively create search predicates for anything with supported categories. * * This component is responsible for the interactive creation of an AND {@link ClausePredicate} object instance. * The nested Predicates are OR {@link ClausePredicate} instances created by {@link AbstractSearchClauseComponent}. * * Search categories must be provided by the {@link NAE_SEARCH_CATEGORIES} injection token. * Default factory methods for [task]{@link defaultTaskSearchCategoriesFactory} and * [case]{@link defaultCaseSearchCategoriesFactory} search categories exist. See their documentation for more information. * * The search component's visuals can be configured either by the {@link NAE_SEARCH_COMPONENT_CONFIGURATION} injection token, * or by the appropriate component inputs. The injection token configuration takes precedence over the inputs if both are present. */ export declare abstract class AbstractSearchComponent implements SearchComponentConfiguration, OnInit { protected _searchService: SearchService; protected _logger: LoggerService; protected _dialogService: DialogService; protected _translate: TranslateService; protected _userFilterService: UserFiltersService; protected _allowedNetsService: AllowedNetsService; protected _viewIdService: ViewIdService; protected _searchCategories: Array<Type<Category<any>>>; protected _configuration: SearchComponentConfiguration; protected _filtersFilter: Filter; protected _navigationItemTaskData: Array<DataGroup>; advancedSearchDisplayed: any; private _showSearchIcon; private _showSearchToggleButton; private _showAdvancedSearchHelp; private _showSaveFilterButton; private _showLoadFilterButton; private _initialSearchMode; disabled: boolean; /** * Set data request body, that is sent to the filter in addition to the default body. * The default body is applied first and can be overridden by this argument. */ additionalFilterData: TaskSetDataRequestFields; /** * The emitted data contains the filter case object */ filterLoaded: EventEmitter<SavedFilterMetadata>; /** * The emitted data contains only the saved case's ID */ filterSaved: EventEmitter<SavedFilterMetadata>; protected constructor(_searchService: SearchService, _logger: LoggerService, _dialogService: DialogService, _translate: TranslateService, _userFilterService: UserFiltersService, _allowedNetsService: AllowedNetsService, _viewIdService: ViewIdService, _searchCategories: Array<Type<Category<any>>>, _configuration: SearchComponentConfiguration, _filtersFilter?: Filter, _navigationItemTaskData?: Array<DataGroup>); ngOnInit(): void; get showSearchIcon(): boolean; set showSearchIcon(value: boolean); get showAdvancedSearchHelp(): boolean; set showAdvancedSearchHelp(value: boolean); get showSaveFilterButton(): boolean; set showSaveFilterButton(value: boolean); get showLoadFilterButton(): boolean; set showLoadFilterButton(value: boolean); get initialSearchMode(): SearchMode; set initialSearchMode(value: SearchMode); get showSearchToggleButton(): boolean; set showSearchToggleButton(value: boolean); hasPredicates(): boolean; toggleSearchMode(): void; showHelp(): void; /** * The saved filter data are emitted into the [filterSaved]{@link AbstractSearchComponent#filterSaved} `EventEmitter` */ saveFilter(): void; /** * The loaded filter data are emitted into the [filterLoaded]{@link AbstractSearchComponent#filterLoaded} `EventEmitter` */ loadFilter(): void; static ɵfac: i0.ɵɵFactoryDeclaration<AbstractSearchComponent, [null, null, null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }]>; static ɵcmp: i0.ɵɵComponentDeclaration<AbstractSearchComponent, "ncc-abstract-search", never, { "disabled": { "alias": "disabled"; "required": false; }; "additionalFilterData": { "alias": "additionalFilterData"; "required": false; }; "showSearchIcon": { "alias": "showSearchIcon"; "required": false; }; "showAdvancedSearchHelp": { "alias": "showAdvancedSearchHelp"; "required": false; }; "showSaveFilterButton": { "alias": "showSaveFilterButton"; "required": false; }; "showLoadFilterButton": { "alias": "showLoadFilterButton"; "required": false; }; "initialSearchMode": { "alias": "initialSearchMode"; "required": false; }; "showSearchToggleButton": { "alias": "showSearchToggleButton"; "required": false; }; }, { "filterLoaded": "filterLoaded"; "filterSaved": "filterSaved"; }, never, never, false, never>; }