import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, forwardRef, Input, Output, Renderer2, ViewChild } from '@angular/core';
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { I18nService } from 'ng-devui/i18n';
import { fromEvent, Subject } from 'rxjs';
import { debounceTime, filter, map, takeUntil } from 'rxjs/operators';
import * as i0 from "@angular/core";
import * as i1 from "ng-devui/i18n";
import * as i2 from "@angular/common";
import * as i3 from "ng-devui/common";
export class SearchComponent {
    constructor(renderer, i18n, cdr, el) {
        this.renderer = renderer;
        this.i18n = i18n;
        this.cdr = cdr;
        this.el = el;
        this.maxLength = Number.MAX_SAFE_INTEGER;
        this.isKeyupSearch = false;
        this.delay = 300;
        this.disabled = false;
        this.iconPosition = 'right';
        this.noBorder = false;
        this.autoFocus = false;
        this.searchFn = new EventEmitter();
        this.clearIconExit = false;
        this.destroy$ = new Subject();
        this.onChange = (_) => null;
        this.onTouch = () => null;
    }
    ngOnInit() {
        this.setI18nText();
    }
    registerOnChange(fn) {
        this.onChange = fn;
    }
    registerOnTouched(fn) {
        this.onTouch = fn;
    }
    writeValue(value = '') {
        this.renderer.setProperty(this.filterInputElement.nativeElement, 'value', value);
        this.renderClearIcon();
    }
    setI18nText() {
        this.i18nCommonText = this.i18n.getI18nText().common;
        this.i18nSubscription = this.i18n.langChange()
            .pipe(takeUntil(this.destroy$))
            .subscribe((data) => {
            this.i18nCommonText = data.common;
            this.cdr.markForCheck();
        });
    }
    clearText() {
        this.renderer.setProperty(this.filterInputElement.nativeElement, 'value', '');
        if (this.onChange) {
            this.onChange('');
        }
        this.searchFn.emit('');
        this.filterInputElement.nativeElement.focus();
        this.renderClearIcon();
    }
    inputChange(value, event) {
        this.renderClearIcon();
        // 此函数不能删除，需要给filterInput.value赋值，从而控制clear的显隐。因为registerFilterChange对clear的显隐控制不起作用。
    }
    inputBlur() {
        this.onTouch();
    }
    clickSearch(term) {
        if (!this.disabled) {
            this.searchFn.emit(term);
        }
    }
    registerFilterChange() {
        fromEvent(this.filterInputElement.nativeElement, 'input')
            .pipe(takeUntil(this.destroy$), map((e) => e.target.value), debounceTime(this.delay))
            .subscribe((value) => {
            this.onChange(value);
            if (this.isKeyupSearch) {
                this.searchFn.emit(value);
            }
        });
        fromEvent(this.filterInputElement.nativeElement, 'keydown').pipe(takeUntil(this.destroy$), filter((keyEvent) => keyEvent.key === 'Enter'), debounceTime(this.delay)).subscribe((keyEvent) => {
            this.searchFn.emit(this.filterInputElement.nativeElement.value);
        });
    }
    ngAfterViewInit() {
        this.registerFilterChange();
        this.renderClearIcon();
    }
    renderClearIcon() {
        if (this.iconPosition === 'right') {
            if (this.filterInputElement.nativeElement.value && this.lineElement && this.clearIconElement) {
                this.clearIconExit = true;
            }
            else if (this.lineElement && this.clearIconElement) {
                this.clearIconExit = false;
            }
        }
        else {
            if (this.filterInputElement.nativeElement.value && this.clearIconElement) {
                this.clearIconExit = true;
            }
            else if (this.clearIconElement) {
                this.clearIconExit = false;
            }
        }
        this.cdr.markForCheck();
    }
    ngOnDestroy() {
        this.destroy$.next(true);
    }
}
SearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SearchComponent, deps: [{ token: i0.Renderer2 }, { token: i1.I18nService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
SearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SearchComponent, selector: "d-search", inputs: { size: "size", placeholder: "placeholder", maxLength: "maxLength", isKeyupSearch: "isKeyupSearch", delay: "delay", disabled: "disabled", cssClass: "cssClass", iconPosition: "iconPosition", noBorder: "noBorder", autoFocus: "autoFocus" }, outputs: { searchFn: "searchFn" }, providers: [
        {
            provide: NG_VALUE_ACCESSOR,
            useExisting: forwardRef(() => SearchComponent),
            multi: true,
        },
    ], viewQueries: [{ propertyName: "filterInputElement", first: true, predicate: ["filterInput"], descendants: true, static: true }, { propertyName: "lineElement", first: true, predicate: ["line"], descendants: true }, { propertyName: "clearIconElement", first: true, predicate: ["clearIcon"], descendants: true }], exportAs: ["search"], ngImport: i0, template: "<div class=\"devui-search\">\n  <input\n    #filterInput\n    [dAutoFocus]=\"autoFocus\"\n    [placeholder]=\"placeholder || i18nCommonText?.searchPlaceholder\"\n    (change)=\"inputChange(filterInput.value, $event)\"\n    (keyup)=\"inputChange(filterInput.value, $event)\"\n    [attr.maxlength]=\"maxLength\"\n    [disabled]=\"disabled\"\n    (blur)=\"inputBlur()\"\n    type=\"text\"\n    class=\"devui-input {{ cssClass }}\"\n    [ngClass]=\"{\n      'devui-input-sm': size === 'sm',\n      'devui-input-lg': size === 'lg',\n      'devui-clear-exit': clearIconExit,\n      'devui-icon-left': iconPosition === 'left',\n      'devui-search-no-border': noBorder === true\n    }\"\n  />\n  <span\n    class=\"devui-search-icon\"\n    [ngClass]=\"{ 'devui-search-icon-sm': size === 'sm', 'devui-search-icon-lg': size === 'lg', 'devui-icon-left': iconPosition === 'left' }\"\n    (click)=\"clickSearch(filterInput.value)\"\n  >\n    <svg\n      width=\"16px\"\n      height=\"16px\"\n      viewBox=\"0 0 16 16\"\n      version=\"1.1\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n      xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n      class=\"svg-icon-search\"\n    >\n      <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n        <path\n          d=\"M7,0 C10.8659932,0 14,3.13400675 14,7 C14,8.57190212 13.4818819,10.0227913 12.6071076,11.1912056 L15.7071068,14.2928932 C16.0976311,14.6834175 16.0976311,15.3165825 15.7071068,15.7071068 C15.3466228,16.0675907 14.7793918,16.0953203 14.3871006,15.7902954 L14.2928932,15.7071068 L11.1912056,12.6071076 C10.0227913,13.4818819 8.57190212,14 7,14 C3.13400675,14 5.5067062e-14,10.8659932 5.5067062e-14,7 C5.5067062e-14,3.13400675 3.13400675,0 7,0 Z M7,2 C4.23857625,2 2,4.23857625 2,7 C2,9.76142375 4.23857625,12 7,12 C9.76142375,12 12,9.76142375 12,7 C12,4.23857625 9.76142375,2 7,2 Z\"\n          id=\"\u692D\u5706\u5F62\"\n          fill=\"#71757F\"\n        ></path>\n      </g>\n    </svg>\n  </span>\n  <span\n    #line\n    *ngIf=\"iconPosition === 'right'\"\n    class=\"devui-search-line\"\n    [ngClass]=\"{ 'devui-search-line-sm': size === 'sm', 'devui-search-line-lg': size === 'lg', 'devui-clear-exit': clearIconExit }\"\n  >\n  </span>\n  <span\n    #clearIcon\n    (click)=\"clearText()\"\n    class=\"devui-search-clear\"\n    [ngClass]=\"{\n      'devui-search-clear-sm': size === 'sm',\n      'devui-search-clear-lg': size === 'lg',\n      'devui-clear-exit': clearIconExit,\n      'devui-icon-left': iconPosition === 'left'\n    }\"\n  >\n    <svg\n      width=\"16px\"\n      height=\"16px\"\n      viewBox=\"0 0 16 16\"\n      version=\"1.1\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n      xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n      class=\"svg-icon-clear\"\n    >\n      <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n        <path\n          d=\"M8,1 C11.8659932,1 15,4.13400675 15,8 C15,11.8659932 11.8659932,15 8,15 C4.13400675,15 1,11.8659932 1,8 C1,4.13400675 4.13400675,1 8,1 Z M5.87867966,5.17157288 C5.68341751,4.97631073 5.36683502,4.97631073 5.17157288,5.17157288 C4.99800652,5.34513923 4.97872137,5.61456363 5.11371742,5.80943177 L5.17157288,5.87867966 L7.29218611,7.99929289 L5.17157288,10.1213203 C4.97631073,10.3165825 4.97631073,10.633165 5.17157288,10.8284271 C5.34513923,11.0019935 5.61456363,11.0212786 5.80943177,10.8862826 L5.87867966,10.8284271 L7.99929289,8.70639967 L10.1213203,10.8284271 C10.3165825,11.0236893 10.633165,11.0236893 10.8284271,10.8284271 C11.0019935,10.6548608 11.0212786,10.3854364 10.8862826,10.1905682 L10.8284271,10.1213203 L8.70710678,8 L10.8284271,5.87867966 C11.0236893,5.68341751 11.0236893,5.36683502 10.8284271,5.17157288 C10.6548608,4.99800652 10.3854364,4.97872137 10.1905682,5.11371742 L10.1213203,5.17157288 L8,7.29289322 L5.87867966,5.17157288 Z\"\n          id=\"\u5F62\u72B6\"\n          fill=\"#D5D5DB\"\n          fill-rule=\"nonzero\"\n        ></path>\n      </g>\n    </svg>\n  </span>\n</div>\n", styles: [".devui-font-size-base{font-size:12px;font-size:var(--devui-font-size, 12px)}.devui-font-base{font-size:12px;font-size:var(--devui-font-size, 12px);font-weight:400;line-height:1.5}.devui-font-size-modal-title{font-size:18px;font-size:var(--devui-font-size-modal-title, 18px)}.devui-font-modal-title{font-size:18px;font-size:var(--devui-font-size-modal-title, 18px);font-weight:700;line-height:1.5}.devui-font-size-page-title{font-size:16px;font-size:var(--devui-font-size-page-title, 16px)}.devui-font-page-title{font-size:16px;font-size:var(--devui-font-size-page-title, 16px);font-weight:700;line-height:1.5}.devui-font-size-secondary-title{font-size:14px;font-size:var(--devui-font-size-card-title, 14px)}.devui-font-secondary-title{font-size:14px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700;line-height:1.5}.devui-search .devui-serach-line{border-color:#f2f2f3;border-color:var(--devui-dividing-line, #f2f2f3)}svg.svg-icon-search path{fill:#71757f;fill:var(--devui-icon-fill, #71757f);transition:all cubic-bezier(.645,.045,.355,1) .3s;transition:all var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)) var(--devui-animation-duration-slow, .3s)}svg.svg-icon-search:hover path{fill:#252b3a;fill:var(--devui-icon-fill-hover, #252b3a)}svg.svg-icon-clear{vertical-align:middle;position:relative;top:-.1em}svg.svg-icon-clear path{fill:#d7d8da;fill:var(--devui-shape-icon-fill, #d7d8da);transition:all cubic-bezier(.645,.045,.355,1) .3s;transition:all var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)) var(--devui-animation-duration-slow, .3s)}svg.svg-icon-clear:hover path{fill:#babbc0;fill:var(--devui-shape-icon-fill-hover, #babbc0)}:host{display:inline-block}.devui-search{position:relative}.devui-search .devui-input{height:28px;padding:4px 28px 4px 8px;font-size:12px;font-size:var(--devui-font-size, 12px);text-overflow:ellipsis}.devui-search .devui-input.devui-icon-left{padding-left:32px}.devui-search .devui-input.devui-search-no-border{background-color:transparent;background-color:initial}.devui-search .devui-input.devui-search-no-border:not(:hover,:focus,:active){border:1px solid transparent}.devui-search .devui-input.devui-clear-exit:not(.devui-icon-left){padding-right:60px}.devui-search .devui-input-sm{height:26px;padding:4px 24px 4px 8px;font-size:12px;font-size:var(--devui-font-size, 12px)}.devui-search .devui-input-sm.devui-clear-exit:not(.devui-icon-left){padding-right:56px}.devui-search .devui-input-lg{height:46px;padding:12px 36px 12px 8px;font-size:14px;font-size:var(--devui-font-size-lg, 14px);line-height:24px}.devui-search .devui-input-lg.devui-clear-exit:not(.devui-icon-left){padding-right:72px}.devui-search .devui-input::-ms-clear{display:none}.devui-search .devui-input:disabled{background-color:#f5f5f5;background-color:var(--devui-disabled-bg, #f5f5f5);border-color:#dfe1e6;border-color:var(--devui-disabled-line, #dfe1e6);color:#cfd0d3;color:var(--devui-disabled-text, #cfd0d3)}.devui-search .devui-input:disabled+.devui-search-icon svg path{fill:#cfd0d3;fill:var(--devui-disabled-text, #cfd0d3)}.devui-search .icon{cursor:pointer}.devui-search .devui-search-icon{position:absolute;width:auto;pointer-events:all;cursor:pointer;height:100%;line-height:28px;padding:0 12px;top:0;right:0;z-index:2;text-align:center;display:flex;align-items:center;justify-content:center}.devui-search .devui-search-icon.devui-icon-left{left:8px;right:auto;padding-left:0}.devui-search .devui-search-icon>svg{height:16px;width:16px}.devui-search .devui-search-icon-sm{height:26px;line-height:26px;padding:0 12px}.devui-search .devui-search-icon-sm>svg{height:14px;width:14px}.devui-search .devui-search-icon-lg{height:46px;line-height:46px}.devui-search .devui-search-icon-lg>svg{height:18px;width:18px}.devui-search .devui-search-clear{position:absolute;width:auto;top:0;right:36px;padding:0 8px;pointer-events:all;cursor:pointer;height:100%;line-height:28px;font-size:14px;font-size:var(--devui-font-size-lg, 14px);z-index:2;display:none}.devui-search .devui-search-clear.devui-icon-left{right:0}.devui-search .devui-search-clear.devui-clear-exit{display:block}.devui-search .devui-search-clear-sm{line-height:26px;padding:0 8px}.devui-search .devui-search-clear-sm>svg{height:14px;width:14px}.devui-search .devui-search-clear-lg{right:46px;line-height:46px;padding:0 8px}.devui-search .devui-search-clear-lg>svg{height:18px;width:18px}.devui-search .devui-search-line{position:absolute;right:36px;height:46%;top:27%;width:1px;border-left-width:1px;border-left-style:solid;border-color:#d7d8da;border-color:var(--devui-line, #d7d8da);line-height:28px;display:none}.devui-search .devui-search-line.devui-clear-exit{display:block}.devui-search .devui-search-line-sm{line-height:26px}.devui-search .devui-search-line-lg{line-height:46px;right:42px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.AutoFocusDirective, selector: "[dAutoFocus]", inputs: ["dAutoFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SearchComponent, decorators: [{
            type: Component,
            args: [{ selector: 'd-search', exportAs: 'search', changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, providers: [
                        {
                            provide: NG_VALUE_ACCESSOR,
                            useExisting: forwardRef(() => SearchComponent),
                            multi: true,
                        },
                    ], template: "<div class=\"devui-search\">\n  <input\n    #filterInput\n    [dAutoFocus]=\"autoFocus\"\n    [placeholder]=\"placeholder || i18nCommonText?.searchPlaceholder\"\n    (change)=\"inputChange(filterInput.value, $event)\"\n    (keyup)=\"inputChange(filterInput.value, $event)\"\n    [attr.maxlength]=\"maxLength\"\n    [disabled]=\"disabled\"\n    (blur)=\"inputBlur()\"\n    type=\"text\"\n    class=\"devui-input {{ cssClass }}\"\n    [ngClass]=\"{\n      'devui-input-sm': size === 'sm',\n      'devui-input-lg': size === 'lg',\n      'devui-clear-exit': clearIconExit,\n      'devui-icon-left': iconPosition === 'left',\n      'devui-search-no-border': noBorder === true\n    }\"\n  />\n  <span\n    class=\"devui-search-icon\"\n    [ngClass]=\"{ 'devui-search-icon-sm': size === 'sm', 'devui-search-icon-lg': size === 'lg', 'devui-icon-left': iconPosition === 'left' }\"\n    (click)=\"clickSearch(filterInput.value)\"\n  >\n    <svg\n      width=\"16px\"\n      height=\"16px\"\n      viewBox=\"0 0 16 16\"\n      version=\"1.1\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n      xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n      class=\"svg-icon-search\"\n    >\n      <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n        <path\n          d=\"M7,0 C10.8659932,0 14,3.13400675 14,7 C14,8.57190212 13.4818819,10.0227913 12.6071076,11.1912056 L15.7071068,14.2928932 C16.0976311,14.6834175 16.0976311,15.3165825 15.7071068,15.7071068 C15.3466228,16.0675907 14.7793918,16.0953203 14.3871006,15.7902954 L14.2928932,15.7071068 L11.1912056,12.6071076 C10.0227913,13.4818819 8.57190212,14 7,14 C3.13400675,14 5.5067062e-14,10.8659932 5.5067062e-14,7 C5.5067062e-14,3.13400675 3.13400675,0 7,0 Z M7,2 C4.23857625,2 2,4.23857625 2,7 C2,9.76142375 4.23857625,12 7,12 C9.76142375,12 12,9.76142375 12,7 C12,4.23857625 9.76142375,2 7,2 Z\"\n          id=\"\u692D\u5706\u5F62\"\n          fill=\"#71757F\"\n        ></path>\n      </g>\n    </svg>\n  </span>\n  <span\n    #line\n    *ngIf=\"iconPosition === 'right'\"\n    class=\"devui-search-line\"\n    [ngClass]=\"{ 'devui-search-line-sm': size === 'sm', 'devui-search-line-lg': size === 'lg', 'devui-clear-exit': clearIconExit }\"\n  >\n  </span>\n  <span\n    #clearIcon\n    (click)=\"clearText()\"\n    class=\"devui-search-clear\"\n    [ngClass]=\"{\n      'devui-search-clear-sm': size === 'sm',\n      'devui-search-clear-lg': size === 'lg',\n      'devui-clear-exit': clearIconExit,\n      'devui-icon-left': iconPosition === 'left'\n    }\"\n  >\n    <svg\n      width=\"16px\"\n      height=\"16px\"\n      viewBox=\"0 0 16 16\"\n      version=\"1.1\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n      xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n      class=\"svg-icon-clear\"\n    >\n      <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n        <path\n          d=\"M8,1 C11.8659932,1 15,4.13400675 15,8 C15,11.8659932 11.8659932,15 8,15 C4.13400675,15 1,11.8659932 1,8 C1,4.13400675 4.13400675,1 8,1 Z M5.87867966,5.17157288 C5.68341751,4.97631073 5.36683502,4.97631073 5.17157288,5.17157288 C4.99800652,5.34513923 4.97872137,5.61456363 5.11371742,5.80943177 L5.17157288,5.87867966 L7.29218611,7.99929289 L5.17157288,10.1213203 C4.97631073,10.3165825 4.97631073,10.633165 5.17157288,10.8284271 C5.34513923,11.0019935 5.61456363,11.0212786 5.80943177,10.8862826 L5.87867966,10.8284271 L7.99929289,8.70639967 L10.1213203,10.8284271 C10.3165825,11.0236893 10.633165,11.0236893 10.8284271,10.8284271 C11.0019935,10.6548608 11.0212786,10.3854364 10.8862826,10.1905682 L10.8284271,10.1213203 L8.70710678,8 L10.8284271,5.87867966 C11.0236893,5.68341751 11.0236893,5.36683502 10.8284271,5.17157288 C10.6548608,4.99800652 10.3854364,4.97872137 10.1905682,5.11371742 L10.1213203,5.17157288 L8,7.29289322 L5.87867966,5.17157288 Z\"\n          id=\"\u5F62\u72B6\"\n          fill=\"#D5D5DB\"\n          fill-rule=\"nonzero\"\n        ></path>\n      </g>\n    </svg>\n  </span>\n</div>\n", styles: [".devui-font-size-base{font-size:12px;font-size:var(--devui-font-size, 12px)}.devui-font-base{font-size:12px;font-size:var(--devui-font-size, 12px);font-weight:400;line-height:1.5}.devui-font-size-modal-title{font-size:18px;font-size:var(--devui-font-size-modal-title, 18px)}.devui-font-modal-title{font-size:18px;font-size:var(--devui-font-size-modal-title, 18px);font-weight:700;line-height:1.5}.devui-font-size-page-title{font-size:16px;font-size:var(--devui-font-size-page-title, 16px)}.devui-font-page-title{font-size:16px;font-size:var(--devui-font-size-page-title, 16px);font-weight:700;line-height:1.5}.devui-font-size-secondary-title{font-size:14px;font-size:var(--devui-font-size-card-title, 14px)}.devui-font-secondary-title{font-size:14px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700;line-height:1.5}.devui-search .devui-serach-line{border-color:#f2f2f3;border-color:var(--devui-dividing-line, #f2f2f3)}svg.svg-icon-search path{fill:#71757f;fill:var(--devui-icon-fill, #71757f);transition:all cubic-bezier(.645,.045,.355,1) .3s;transition:all var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)) var(--devui-animation-duration-slow, .3s)}svg.svg-icon-search:hover path{fill:#252b3a;fill:var(--devui-icon-fill-hover, #252b3a)}svg.svg-icon-clear{vertical-align:middle;position:relative;top:-.1em}svg.svg-icon-clear path{fill:#d7d8da;fill:var(--devui-shape-icon-fill, #d7d8da);transition:all cubic-bezier(.645,.045,.355,1) .3s;transition:all var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)) var(--devui-animation-duration-slow, .3s)}svg.svg-icon-clear:hover path{fill:#babbc0;fill:var(--devui-shape-icon-fill-hover, #babbc0)}:host{display:inline-block}.devui-search{position:relative}.devui-search .devui-input{height:28px;padding:4px 28px 4px 8px;font-size:12px;font-size:var(--devui-font-size, 12px);text-overflow:ellipsis}.devui-search .devui-input.devui-icon-left{padding-left:32px}.devui-search .devui-input.devui-search-no-border{background-color:transparent;background-color:initial}.devui-search .devui-input.devui-search-no-border:not(:hover,:focus,:active){border:1px solid transparent}.devui-search .devui-input.devui-clear-exit:not(.devui-icon-left){padding-right:60px}.devui-search .devui-input-sm{height:26px;padding:4px 24px 4px 8px;font-size:12px;font-size:var(--devui-font-size, 12px)}.devui-search .devui-input-sm.devui-clear-exit:not(.devui-icon-left){padding-right:56px}.devui-search .devui-input-lg{height:46px;padding:12px 36px 12px 8px;font-size:14px;font-size:var(--devui-font-size-lg, 14px);line-height:24px}.devui-search .devui-input-lg.devui-clear-exit:not(.devui-icon-left){padding-right:72px}.devui-search .devui-input::-ms-clear{display:none}.devui-search .devui-input:disabled{background-color:#f5f5f5;background-color:var(--devui-disabled-bg, #f5f5f5);border-color:#dfe1e6;border-color:var(--devui-disabled-line, #dfe1e6);color:#cfd0d3;color:var(--devui-disabled-text, #cfd0d3)}.devui-search .devui-input:disabled+.devui-search-icon svg path{fill:#cfd0d3;fill:var(--devui-disabled-text, #cfd0d3)}.devui-search .icon{cursor:pointer}.devui-search .devui-search-icon{position:absolute;width:auto;pointer-events:all;cursor:pointer;height:100%;line-height:28px;padding:0 12px;top:0;right:0;z-index:2;text-align:center;display:flex;align-items:center;justify-content:center}.devui-search .devui-search-icon.devui-icon-left{left:8px;right:auto;padding-left:0}.devui-search .devui-search-icon>svg{height:16px;width:16px}.devui-search .devui-search-icon-sm{height:26px;line-height:26px;padding:0 12px}.devui-search .devui-search-icon-sm>svg{height:14px;width:14px}.devui-search .devui-search-icon-lg{height:46px;line-height:46px}.devui-search .devui-search-icon-lg>svg{height:18px;width:18px}.devui-search .devui-search-clear{position:absolute;width:auto;top:0;right:36px;padding:0 8px;pointer-events:all;cursor:pointer;height:100%;line-height:28px;font-size:14px;font-size:var(--devui-font-size-lg, 14px);z-index:2;display:none}.devui-search .devui-search-clear.devui-icon-left{right:0}.devui-search .devui-search-clear.devui-clear-exit{display:block}.devui-search .devui-search-clear-sm{line-height:26px;padding:0 8px}.devui-search .devui-search-clear-sm>svg{height:14px;width:14px}.devui-search .devui-search-clear-lg{right:46px;line-height:46px;padding:0 8px}.devui-search .devui-search-clear-lg>svg{height:18px;width:18px}.devui-search .devui-search-line{position:absolute;right:36px;height:46%;top:27%;width:1px;border-left-width:1px;border-left-style:solid;border-color:#d7d8da;border-color:var(--devui-line, #d7d8da);line-height:28px;display:none}.devui-search .devui-search-line.devui-clear-exit{display:block}.devui-search .devui-search-line-sm{line-height:26px}.devui-search .devui-search-line-lg{line-height:46px;right:42px}\n"] }]
        }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.I18nService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { size: [{
                type: Input
            }], placeholder: [{
                type: Input
            }], maxLength: [{
                type: Input
            }], isKeyupSearch: [{
                type: Input
            }], delay: [{
                type: Input
            }], disabled: [{
                type: Input
            }], cssClass: [{
                type: Input
            }], iconPosition: [{
                type: Input
            }], noBorder: [{
                type: Input
            }], autoFocus: [{
                type: Input
            }], searchFn: [{
                type: Output
            }], filterInputElement: [{
                type: ViewChild,
                args: ['filterInput', { static: true }]
            }], lineElement: [{
                type: ViewChild,
                args: ['line']
            }], clearIconElement: [{
                type: ViewChild,
                args: ['clearIcon']
            }] } });
//# sourceMappingURL=data:application/json;base64, 