| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <form [formGroup]="filtersForm"> |
| <div class="form-inline filter-input-container col-md-8"> |
| <search-box [parameterAddSubject]="queryParameterAdd" [parameterNameChangeSubject]="queryParameterNameChange" |
| class="filter-input" formControlName="query" [items]="searchBoxItems$ | async" [itemsOptions]="options" |
| [updateValueImmediately]="true" [updateValueSubject]="searchBoxValueUpdate" |
| defaultParameterName="log_message"></search-box> |
| <time-range-picker *ngIf="isFilterConditionDisplayed('timeRange')" formControlName="timeRange" |
| class="filter-input"></time-range-picker> |
| <timezone-picker class="filter-input"></timezone-picker> |
| <button class="btn btn-success search-button" type="button" (click)="updateSearchBoxValue()"> |
| <span class="fa fa-search"></span> |
| </button> |
| </div> |
| <div class="filter-buttons col-md-4"> |
| <dropdown-button iconClass="fa fa-search-minus" label="{{'filter.exclude' | translate}}" [hideCaret]="true" |
| [showSelectedValue]="false" [showCommonLabelWithSelection]="true" |
| [options]="searchBoxItems$ | async" (selectItem)="proceedWithExclude($event)"></dropdown-button> |
| <filter-button *ngIf="isFilterConditionDisplayed('hosts')" formControlName="hosts" |
| label="{{filters.hosts.label | translate}}" [iconClass]="filters.hosts.iconClass" |
| [subItems]="filters.hosts.options" [isMultipleChoice]="true" [isRightAlign]="true" |
| additionalLabelComponentSetter="getDataForHostsNodeBar" |
| [class.disabled]="isServiceLogsFileView$ | async" [isDisabled]="isServiceLogsFileView$ | async" |
| [useDropDownLocalFilter]="true"></filter-button> |
| <filter-button *ngIf="isFilterConditionDisplayed('users')" formControlName="users" |
| label="{{filters.users.label | translate}}" [iconClass]="filters.users.iconClass" |
| [subItems]="filters.users.options" [isMultipleChoice]="true" [isRightAlign]="true" |
| [useDropDownLocalFilter]="true"></filter-button> |
| <filter-button *ngIf="isFilterConditionDisplayed('components')" formControlName="components" [useDropDownLocalFilter]="true" |
| label="{{filters.components.label | translate}}" [iconClass]="filters.components.iconClass" |
| [subItems]="filters.components.options" [isMultipleChoice]="true" [isRightAlign]="true" |
| [class.disabled]="isServiceLogsFileView$ | async" [isDisabled]="isServiceLogsFileView$ | async" |
| additionalLabelComponentSetter="getDataForComponentsNodeBar"></filter-button> |
| <filter-button *ngIf="isFilterConditionDisplayed('levels')" formControlName="levels" |
| label="{{filters.levels.label | translate}}" [iconClass]="filters.levels.iconClass" |
| [subItems]="filters.levels.options" [isMultipleChoice]="true" [isRightAlign]="true" |
| [useDropDownLocalFilter]="true"></filter-button> |
| <menu-button class="clear-filter-btn" iconClass="fa fa-times" label="{{'filters.clear' | translate}}" |
| (buttonClick)="onClearBtnClick($event)"></menu-button> |
| </div> |
| </form> |