@libs-ui/components-inputs-search 0.2.306 → 0.2.307-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/esm2022/index.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './search.component';
|
|
2
2
|
export * from './interfaces/config.interface';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzLXVpL2NvbXBvbmVudHMvaW5wdXRzL3NlYXJjaC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zZWFyY2guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlJztcbiJdfQ==
|
|
@@ -8,6 +8,7 @@ import * as i1 from "@ngx-translate/core";
|
|
|
8
8
|
export class LibsUiComponentsInputsSearchComponent {
|
|
9
9
|
// #region PROPERTY
|
|
10
10
|
valueSearch = signal('');
|
|
11
|
+
inputFunctionControl = signal(undefined);
|
|
11
12
|
onDestroy = new Subject();
|
|
12
13
|
onSearch = new Subject();
|
|
13
14
|
onEnter = new Subject();
|
|
@@ -31,14 +32,16 @@ export class LibsUiComponentsInputsSearchComponent {
|
|
|
31
32
|
outFunctionsControl = output();
|
|
32
33
|
ngOnInit() {
|
|
33
34
|
this.valueSearch.set(this.searchConfig()?.value || '');
|
|
34
|
-
this.onSearch
|
|
35
|
+
this.onSearch
|
|
36
|
+
.pipe(debounceTime(this.debounceTime()), filter((keySearch) => !!keySearch), takeUntil(this.onDestroy))
|
|
37
|
+
.subscribe((keySearch) => {
|
|
35
38
|
if (this.searchingWhileEntering() || this.ignoreAutoComplete() || !this.valueSearch()) {
|
|
36
39
|
this.searchingWhileEntering.set(false);
|
|
37
40
|
return;
|
|
38
41
|
}
|
|
39
42
|
this.outSearch.emit(`${keySearch}`.trim());
|
|
40
43
|
});
|
|
41
|
-
this.onEnter.pipe(throttleTime(this.debounceTime()), takeUntil(this.onDestroy)).subscribe(keySearch => {
|
|
44
|
+
this.onEnter.pipe(throttleTime(this.debounceTime()), takeUntil(this.onDestroy)).subscribe((keySearch) => {
|
|
42
45
|
this.outSearch.emit(`${keySearch}`.trim());
|
|
43
46
|
});
|
|
44
47
|
}
|
|
@@ -75,6 +78,10 @@ export class LibsUiComponentsInputsSearchComponent {
|
|
|
75
78
|
}
|
|
76
79
|
handlerFunctionControl(event) {
|
|
77
80
|
this.outFunctionsControl.emit(event);
|
|
81
|
+
this.inputFunctionControl.set(event);
|
|
82
|
+
}
|
|
83
|
+
get FunctionsControl() {
|
|
84
|
+
return this.inputFunctionControl();
|
|
78
85
|
}
|
|
79
86
|
handlerFocusAndBlur(event) {
|
|
80
87
|
this.outFocusAndBlur.emit(event);
|
|
@@ -85,10 +92,10 @@ export class LibsUiComponentsInputsSearchComponent {
|
|
|
85
92
|
this.onDestroy.complete();
|
|
86
93
|
}
|
|
87
94
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
88
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: LibsUiComponentsInputsSearchComponent, isStandalone: true, selector: "libs_ui-components-inputs-search", inputs: { disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, searchConfig: { classPropertyName: "searchConfig", publicName: "searchConfig", isSignal: true, isRequired: false, transformFunction: null }, ignoreAutoComplete: { classPropertyName: "ignoreAutoComplete", publicName: "ignoreAutoComplete", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, ignoreStopPropagationEvent: { classPropertyName: "ignoreStopPropagationEvent", publicName: "ignoreStopPropagationEvent", isSignal: true, isRequired: false, transformFunction: null }, focusTimeOut: { classPropertyName: "focusTimeOut", publicName: "focusTimeOut", isSignal: true, isRequired: false, transformFunction: null }, blurTimeOut: { classPropertyName: "blurTimeOut", publicName: "blurTimeOut", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { outSearch: "outSearch", outValueChange: "outValueChange", outIconLeft: "outIconLeft", outIconRight: "outIconRight", outFocusAndBlur: "outFocusAndBlur", outFunctionsControl: "outFunctionsControl" }, ngImport: i0, template: "<libs_ui-components-inputs-input
|
|
95
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: LibsUiComponentsInputsSearchComponent, isStandalone: true, selector: "libs_ui-components-inputs-search", inputs: { disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, searchConfig: { classPropertyName: "searchConfig", publicName: "searchConfig", isSignal: true, isRequired: false, transformFunction: null }, ignoreAutoComplete: { classPropertyName: "ignoreAutoComplete", publicName: "ignoreAutoComplete", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, ignoreStopPropagationEvent: { classPropertyName: "ignoreStopPropagationEvent", publicName: "ignoreStopPropagationEvent", isSignal: true, isRequired: false, transformFunction: null }, focusTimeOut: { classPropertyName: "focusTimeOut", publicName: "focusTimeOut", isSignal: true, isRequired: false, transformFunction: null }, blurTimeOut: { classPropertyName: "blurTimeOut", publicName: "blurTimeOut", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { outSearch: "outSearch", outValueChange: "outValueChange", outIconLeft: "outIconLeft", outIconRight: "outIconRight", outFocusAndBlur: "outFocusAndBlur", outFunctionsControl: "outFunctionsControl" }, ngImport: i0, template: "<libs_ui-components-inputs-input\n [disable]=\"disable()\"\n [readonly]=\"readonly()\"\n [ignoreStopPropagationEvent]=\"ignoreStopPropagationEvent()\"\n [defaultHeight]=\"searchConfig().defaultHeight || 32\"\n [classInclude]=\"'w-full ' + (searchConfig().classInclude ? searchConfig().classInclude : '')\"\n [iconLeftClass]=\"searchConfig().iconLeftClass ?? 'libs-ui-icon-search'\"\n [iconRightClass]=\"(searchConfig().hasClearSearch && valueSearch() ? 'libs-ui-icon-close-circle-solid cursor-pointer ' : '') + (searchConfig().iconRightClass ? ' ' + searchConfig().iconRightClass : '')\"\n [setIconRightColorSameColorDisableReadOnly]=\"searchConfig().hasClearSearch && valueSearch() ? true : false\"\n [value]=\"searchConfig().value ?? this.valueSearch()\"\n [placeholder]=\"searchConfig().placeholder || 'i18n_search' | translate\"\n [noBorder]=\"searchConfig().noBorder || false\"\n [backgroundNone]=\"searchConfig().backgroundNone || false\"\n [classContainerInput]=\"searchConfig().classContainerInput || ''\"\n [popoverContentIconRight]=\"searchConfig().popoverContentIconRight || ''\"\n [focusTimeOut]=\"focusTimeOut()\"\n [blurTimeOut]=\"blurTimeOut()\"\n (outChange)=\"handlerValueChange($event)\"\n (outIconLeft)=\"handlerEventIconLeft($event)\"\n (outIconRight)=\"handlerEventIconRight($event)\"\n (outFunctionsControl)=\"handlerFunctionControl($event)\"\n (outEnterEvent)=\"handlerEnterInput($event)\"\n (outFocusAndBlurEvent)=\"handlerFocusAndBlur($event)\" />\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: LibsUiComponentsInputsInputComponent, selector: "libs_ui-components-inputs-input", inputs: ["tagInput", "dataType", "typeInput", "modeInput", "tabInsertContentTagInput", "textAreaEnterNotNewLine", "emitEmptyInDataTypeNumber", "keepZeroInTypeInt", "autoAddZeroLessThan10InTypeInt", "ignoreBlockInputMaxValue", "maxValueNumber", "minValueNumber", "fixedFloat", "acceptNegativeValue", "valueUpDownNumber", "classInclude", "maxLength", "readonly", "disable", "noBorder", "backgroundNone", "borderError", "useColorModeExist", "placeholder", "keepPlaceholderOnly", "value", "autoRemoveEmoji", "defaultHeight", "minHeightTextArea", "maxHeightTextArea", "focusTimeOut", "selectAllTimeOut", "blurTimeOut", "zIndexPopoverContent", "classContainerInput", "showCount", "ignoreStopPropagationEvent", "resize", "templateLeftBottomInput", "templateRightBottomInput", "classContainerBottomInput", "ignoreWidthInput100", "iframeTextareaCustomStyle", "iconLeftClass", "popoverContentIconLeft", "iconRightClass", "popoverContentIconRight", "resetAutoCompletePassword", "acceptOnlyClickIcon", "setIconRightColorSameColorDisableReadOnly", "onlyAcceptNegativeValue", "maxLengthNumberCount", "focusInput"], outputs: ["maxValueNumberChange", "minValueNumberChange", "fixedFloatChange", "acceptNegativeValueChange", "maxLengthChange", "valueChange", "maxLengthNumberCountChange", "outHeightAreaChange", "outChange", "outFocusAndBlurEvent", "outEnterEvent", "outInputEvent", "outIconLeft", "outIconRight", "outFunctionsControl", "outFilesDrop", "outFileDrop", "outChangeValueByButtonUpDown"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
89
96
|
}
|
|
90
97
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsSearchComponent, decorators: [{
|
|
91
98
|
type: Component,
|
|
92
|
-
args: [{ selector: 'libs_ui-components-inputs-search', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [TranslateModule, LibsUiComponentsInputsInputComponent], template: "<libs_ui-components-inputs-input
|
|
99
|
+
args: [{ selector: 'libs_ui-components-inputs-search', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [TranslateModule, LibsUiComponentsInputsInputComponent], template: "<libs_ui-components-inputs-input\n [disable]=\"disable()\"\n [readonly]=\"readonly()\"\n [ignoreStopPropagationEvent]=\"ignoreStopPropagationEvent()\"\n [defaultHeight]=\"searchConfig().defaultHeight || 32\"\n [classInclude]=\"'w-full ' + (searchConfig().classInclude ? searchConfig().classInclude : '')\"\n [iconLeftClass]=\"searchConfig().iconLeftClass ?? 'libs-ui-icon-search'\"\n [iconRightClass]=\"(searchConfig().hasClearSearch && valueSearch() ? 'libs-ui-icon-close-circle-solid cursor-pointer ' : '') + (searchConfig().iconRightClass ? ' ' + searchConfig().iconRightClass : '')\"\n [setIconRightColorSameColorDisableReadOnly]=\"searchConfig().hasClearSearch && valueSearch() ? true : false\"\n [value]=\"searchConfig().value ?? this.valueSearch()\"\n [placeholder]=\"searchConfig().placeholder || 'i18n_search' | translate\"\n [noBorder]=\"searchConfig().noBorder || false\"\n [backgroundNone]=\"searchConfig().backgroundNone || false\"\n [classContainerInput]=\"searchConfig().classContainerInput || ''\"\n [popoverContentIconRight]=\"searchConfig().popoverContentIconRight || ''\"\n [focusTimeOut]=\"focusTimeOut()\"\n [blurTimeOut]=\"blurTimeOut()\"\n (outChange)=\"handlerValueChange($event)\"\n (outIconLeft)=\"handlerEventIconLeft($event)\"\n (outIconRight)=\"handlerEventIconRight($event)\"\n (outFunctionsControl)=\"handlerFunctionControl($event)\"\n (outEnterEvent)=\"handlerEnterInput($event)\"\n (outFocusAndBlurEvent)=\"handlerFocusAndBlur($event)\" />\n" }]
|
|
93
100
|
}] });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMtdWkvY29tcG9uZW50cy9pbnB1dHMvc2VhcmNoL3NyYy9zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL2lucHV0cy9zZWFyY2gvc3JjL3NlYXJjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFxQixLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQWtELG9DQUFvQyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFeEksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFXL0UsTUFBTSxPQUFPLHFDQUFxQztJQUNoRCxtQkFBbUI7SUFDVCxXQUFXLEdBQUcsTUFBTSxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBRW5DLFNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQ2hDLFFBQVEsR0FBb0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUMxQyxPQUFPLEdBQW9CLElBQUksT0FBTyxFQUFFLENBQUM7SUFDekMsT0FBTyxHQUFHLE1BQU0sQ0FBUyxDQUFDLENBQUMsQ0FBQztJQUM1QixzQkFBc0IsR0FBRyxNQUFNLENBQVUsS0FBSyxDQUFDLENBQUM7SUFFeEQsZ0JBQWdCO0lBQ1AsT0FBTyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUNoQyxRQUFRLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFD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QUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFUyxzQkFBc0IsQ0FBQyxLQUFpQztRQUNoRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxLQUF5QjtRQUNyRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVztRQUNULFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQzt3R0FoR1UscUNBQXFDOzRGQUFyQyxxQ0FBcUMsKzdDQ2hCbEQsczlDQXNCQSwyQ0RSWSxlQUFlLDRGQUFFLG9DQUFvQzs7NEZBRXBELHFDQUFxQztrQkFSakQsU0FBUzsrQkFFRSxrQ0FBa0MsY0FFaEMsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsZUFBZSxFQUFFLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQsIGlucHV0LCBvdXRwdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUZvY3VzQW5kQmx1ckV2ZW50LCBJSW5wdXRGdW5jdGlvbkNvbnRyb2xFdmVudCwgTGlic1VpQ29tcG9uZW50c0lucHV0c0lucHV0Q29tcG9uZW50IH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1pbnB1dHMtaW5wdXQnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnQGxpYnMtdWkvaW50ZXJmYWNlcy10eXBlcyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCB0YWtlVW50aWwsIHRocm90dGxlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IElJbnB1dFNlYXJjaENvbmZpZyB9IGZyb20gJy4vaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnbGlic191aS1jb21wb25lbnRzLWlucHV0cy1zZWFyY2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtUcmFuc2xhdGVNb2R1bGUsIExpYnNVaUNvbXBvbmVudHNJbnB1dHNJbnB1dENvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgTGlic1VpQ29tcG9uZW50c0lucHV0c1NlYXJjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLy8gI3JlZ2lvbiBQUk9QRVJUWVxuICBwcm90ZWN0ZWQgdmFsdWVTZWFyY2ggPSBzaWduYWw8c3RyaW5nPignJyk7XG5cbiAgcHJpdmF0ZSBvbkRlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIG9uU2VhcmNoOiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIG9uRW50ZXI6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgdGltZW91dCA9IHNpZ25hbDxudW1iZXI+KDApO1xuICBwcml2YXRlIHNlYXJjaGluZ1doaWxlRW50ZXJpbmcgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIC8vICNyZWdpb24gSU5QVVRcbiAgcmVhZG9ubHkgZGlzYWJsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgcmVhZG9ubHkgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IHNlYXJjaENvbmZpZyA9IGlucHV0PElJbnB1dFNlYXJjaENvbmZpZywgSUlucHV0U2VhcmNoQ29uZmlnPih7fSwgeyB0cmFuc2Zvcm06ICh2YWx1ZSkgPT4gdmFsdWUgfHwge30gfSk7XG4gIHJlYWRvbmx5IGlnbm9yZUF1dG9Db21wbGV0ZSA9IGlucHV0PGJvb2xlYW4+KCk7IC8vIGtow7RuZyBlbWl0IHPhu7Ega2nhu4duIHNhdSAxIGtob+G6o25nIHRo4budaSBnaWFuIG5nxrDhu51pIGTDuW5nIG5n4burbmcgbmjhuq1wXG4gIHJlYWRvbmx5IGRlYm91bmNlVGltZSA9IGlucHV0PG51bWJlciwgbnVtYmVyPigxMDAwLCB7IHRyYW5zZm9ybTogKHZhbHVlKSA9PiB2YWx1ZSA/PyAxMDAwIH0pO1xuICByZWFkb25seSBpZ25vcmVTdG9wUHJvcGFnYXRpb25FdmVudCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgZm9jdXNUaW1lT3V0ID0gaW5wdXQ8bnVtYmVyLCBudW1iZXI+KDYwMCwgeyB0cmFuc2Zvcm06ICh2YWx1ZSkgPT4gdmFsdWUgPz8gNjAwIH0pO1xuICByZWFkb25seSBibHVyVGltZU91dCA9IGlucHV0PG51bWJlciwgbnVtYmVyPig2MDAsIHsgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlID8/IDYwMCB9KTtcblxuICAvLyAjcmVnaW9uIE9VVFBVVFxuICByZWFkb25seSBvdXRTZWFyY2ggPSBvdXRwdXQ8c3RyaW5nPigpOyAvLyBzYXUgMSBraG/huqNuZyB0aOG7nWkgZ2lhbiBuZ8aw4budaSBkw7luZyBuZ+G7q25nIG5o4bqtcCBz4bq9IGVtaXQgc+G7sSBraeG7h25cbiAgcmVhZG9ubHkgb3V0VmFsdWVDaGFuZ2UgPSBvdXRwdXQ8c3RyaW5nPigpOyAvLyBz4butIGThu6VuZyBraGkgbXXhu5FuIGzhuq9uZyBuZ2hlIG3hu5dpIGzhuqduIGfDtSB0ZXh0XG4gIHJlYWRvbmx5IG91dEljb25MZWZ0ID0gb3V0cHV0PHN0cmluZz4oKTtcbiAgcmVhZG9ubHkgb3V0SWNvblJpZ2h0ID0gb3V0cHV0PHN0cmluZz4oKTtcbiAgcmVhZG9ubHkgb3V0Rm9jdXNBbmRCbHVyID0gb3V0cHV0PElGb2N1c0FuZEJsdXJFdmVudD4oKTtcbiAgcmVhZG9ubHkgb3V0RnVuY3Rpb25zQ29udHJvbCA9IG91dHB1dDxJSW5wdXRGdW5jdGlvbkNvbnRyb2xFdmVudD4oKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlU2VhcmNoLnNldCh0aGlzLnNlYXJjaENvbmZpZygpPy52YWx1ZSB8fCAnJylcbiAgICB0aGlzLm9uU2VhcmNoLnBpcGUoXG4gICAgICBkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZVRpbWUoKSksXG4gICAgICBmaWx0ZXIoKGtleVNlYXJjaCkgPT4gISFrZXlTZWFyY2gpLFxuICAgICAgdGFrZVVudGlsKHRoaXMub25EZXN0cm95KVxuICAgICkuc3Vic2NyaWJlKGtleVNlYXJjaCA9PiB7XG4gICAgICBpZiAodGhpcy5zZWFyY2hpbmdXaGlsZUVudGVyaW5nKCkgfHwgdGhpcy5pZ25vcmVBdXRvQ29tcGxldGUoKSB8fCAhdGhpcy52YWx1ZVNlYXJjaCgpKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoaW5nV2hpbGVFbnRlcmluZy5zZXQoZmFsc2UpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMub3V0U2VhcmNoLmVtaXQoYCR7a2V5U2VhcmNofWAudHJpbSgpKTtcbiAgICB9KTtcbiAgICB0aGlzLm9uRW50ZXIucGlwZSh0aHJvdHRsZVRpbWUodGhpcy5kZWJvdW5jZVRpbWUoKSksIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSkpLnN1YnNjcmliZShrZXlTZWFyY2ggPT4ge1xuICAgICAgdGhpcy5vdXRTZWFyY2guZW1pdChgJHtrZXlTZWFyY2h9YC50cmltKCkpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gI3JlZ2lvbiBGVU5DVElPTlNcbiAgcHJvdGVjdGVkIGhhbmRsZXJWYWx1ZUNoYW5nZShrZXlTZWFyY2g6IHN0cmluZykge1xuICAgIHRoaXMub3V0VmFsdWVDaGFuZ2UuZW1pdChrZXlTZWFyY2gudG9TdHJpbmcoKSk7XG4gICAgdGhpcy52YWx1ZVNlYXJjaC5zZXQoa2V5U2VhcmNoIGFzIHN0cmluZyk7XG4gICAgdGhpcy5zZWFyY2hpbmdXaGlsZUVudGVyaW5nLnNldChmYWxzZSk7XG4gICAgaWYgKHRoaXMudmFsdWVTZWFyY2goKSkge1xuICAgICAgdGhpcy5vblNlYXJjaC5uZXh0KHRoaXMudmFsdWVTZWFyY2goKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dCgpKTtcbiAgICB0aGlzLnRpbWVvdXQuc2V0KHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnZhbHVlU2VhcmNoKCkgJiYgIXRoaXMuaWdub3JlQXV0b0NvbXBsZXRlKCkpIHtcbiAgICAgICAgdGhpcy5vdXRTZWFyY2guZW1pdCh0aGlzLnZhbHVlU2VhcmNoKCkpO1xuICAgICAgfVxuICAgIH0sIHRoaXMuZGVib3VuY2VUaW1lKCkgLyAyKSk7XG5cbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVyRW50ZXJJbnB1dChlOiBJRXZlbnQpIHtcbiAgICB0aGlzLnZhbHVlU2VhcmNoLnNldChlLnRhcmdldC52YWx1ZSk7XG4gICAgdGhpcy5zZWFyY2hpbmdXaGlsZUVudGVyaW5nLnNldCh0cnVlKTtcbiAgICB0aGlzLm9uRW50ZXIubmV4dCh0aGlzLnZhbHVlU2VhcmNoKCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZXJFdmVudEljb25MZWZ0KGV2ZW50TmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5vdXRJY29uTGVmdC5lbWl0KGV2ZW50TmFtZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlckV2ZW50SWNvblJpZ2h0KGV2ZW50TmFtZTogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuc2VhcmNoQ29uZmlnKCk/Lmhhc0NsZWFyU2VhcmNoKSB7XG4gICAgICB0aGlzLnZhbHVlU2VhcmNoLnNldCgnJyk7XG4gICAgICB0aGlzLm91dFNlYXJjaC5lbWl0KHRoaXMudmFsdWVTZWFyY2goKSk7XG4gICAgfVxuICAgIHRoaXMub3V0SWNvblJpZ2h0LmVtaXQoZXZlbnROYW1lKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVyRnVuY3Rpb25Db250cm9sKGV2ZW50OiBJSW5wdXRGdW5jdGlvbkNvbnRyb2xFdmVudCkge1xuICAgIHRoaXMub3V0RnVuY3Rpb25zQ29udHJvbC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVyRm9jdXNBbmRCbHVyKGV2ZW50OiBJRm9jdXNBbmRCbHVyRXZlbnQpIHtcbiAgICB0aGlzLm91dEZvY3VzQW5kQmx1ci5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXQoKSk7XG4gICAgdGhpcy5vbkRlc3Ryb3kubmV4dCgpO1xuICAgIHRoaXMub25EZXN0cm95LmNvbXBsZXRlKCk7XG4gIH1cbn1cbiIsIjxsaWJzX3VpLWNvbXBvbmVudHMtaW5wdXRzLWlucHV0IFtkaXNhYmxlXT1cImRpc2FibGUoKVwiXG4gIFtyZWFkb25seV09XCJyZWFkb25seSgpXCJcbiAgW2lnbm9yZVN0b3BQcm9wYWdhdGlvbkV2ZW50XT1cImlnbm9yZVN0b3BQcm9wYWdhdGlvbkV2ZW50KClcIlxuICBbZGVmYXVsdEhlaWdodF09XCJzZWFyY2hDb25maWcoKS5kZWZhdWx0SGVpZ2h0IHx8IDMyXCJcbiAgW2NsYXNzSW5jbHVkZV09XCIndy1mdWxsICcrKHNlYXJjaENvbmZpZygpLmNsYXNzSW5jbHVkZSA/IHNlYXJjaENvbmZpZygpLmNsYXNzSW5jbHVkZSA6ICcnKVwiXG4gIFtpY29uTGVmdENsYXNzXT1cInNlYXJjaENvbmZpZygpLmljb25MZWZ0Q2xhc3MgPz8gJ2xpYnMtdWktaWNvbi1zZWFyY2gnXCJcbiAgW2ljb25SaWdodENsYXNzXT1cIigoc2VhcmNoQ29uZmlnKCkuaGFzQ2xlYXJTZWFyY2ggJiYgdmFsdWVTZWFyY2goKSkgPyAnbGlicy11aS1pY29uLWNsb3NlLWNpcmNsZS1zb2xpZCBjdXJzb3ItcG9pbnRlciAnIDogJycpICsgKHNlYXJjaENvbmZpZygpLmljb25SaWdodENsYXNzID8gJyAnK3NlYXJjaENvbmZpZygpLmljb25SaWdodENsYXNzOicnKVwiXG4gIFtzZXRJY29uUmlnaHRDb2xvclNhbWVDb2xvckRpc2FibGVSZWFkT25seV09XCIoc2VhcmNoQ29uZmlnKCkuaGFzQ2xlYXJTZWFyY2ggJiYgdmFsdWVTZWFyY2goKSkgPyB0cnVlOiBmYWxzZVwiXG4gIFt2YWx1ZV09XCJzZWFyY2hDb25maWcoKS52YWx1ZSA/PyB0aGlzLnZhbHVlU2VhcmNoKClcIlxuICBbcGxhY2Vob2xkZXJdPVwiKHNlYXJjaENvbmZpZygpLnBsYWNlaG9sZGVyIHx8ICdpMThuX3NlYXJjaCcpIHwgdHJhbnNsYXRlXCJcbiAgW25vQm9yZGVyXT1cInNlYXJjaENvbmZpZygpLm5vQm9yZGVyIHx8IGZhbHNlXCJcbiAgW2JhY2tncm91bmROb25lXT1cInNlYXJjaENvbmZpZygpLmJhY2tncm91bmROb25lIHx8IGZhbHNlXCJcbiAgW2NsYXNzQ29udGFpbmVySW5wdXRdPVwic2VhcmNoQ29uZmlnKCkuY2xhc3NDb250YWluZXJJbnB1dCB8fCAnJ1wiXG4gIFtwb3BvdmVyQ29udGVudEljb25SaWdodF09XCJzZWFyY2hDb25maWcoKS5wb3BvdmVyQ29udGVudEljb25SaWdodCB8fCAnJ1wiXG4gIFtmb2N1c1RpbWVPdXRdPVwiZm9jdXNUaW1lT3V0KClcIlxuICBbYmx1clRpbWVPdXRdPVwiYmx1clRpbWVPdXQoKVwiXG4gIChvdXRDaGFuZ2UpPVwiaGFuZGxlclZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAob3V0SWNvbkxlZnQpPVwiaGFuZGxlckV2ZW50SWNvbkxlZnQoJGV2ZW50KVwiXG4gIChvdXRJY29uUmlnaHQpPVwiaGFuZGxlckV2ZW50SWNvblJpZ2h0KCRldmVudClcIlxuICAob3V0RnVuY3Rpb25zQ29udHJvbCk9XCJoYW5kbGVyRnVuY3Rpb25Db250cm9sKCRldmVudClcIlxuICAob3V0RW50ZXJFdmVudCk9XCJoYW5kbGVyRW50ZXJJbnB1dCgkZXZlbnQpXCJcbiAgKG91dEZvY3VzQW5kQmx1ckV2ZW50KT1cImhhbmRsZXJGb2N1c0FuZEJsdXIoJGV2ZW50KVwiIC8+XG4iXX0=
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMtdWkvY29tcG9uZW50cy9pbnB1dHMvc2VhcmNoL3NyYy9zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL2lucHV0cy9zZWFyY2gvc3JjL3NlYXJjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFxQixLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQWtELG9DQUFvQyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFeEksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFXL0UsTUFBTSxPQUFPLHFDQUFxQztJQUNoRCxtQkFBbUI7SUFDVCxXQUFXLEdBQUcsTUFBTSxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBRW5DLG9CQUFvQixHQUFHLE1BQU0sQ0FBeUMsU0FBUyxDQUFDLENBQUM7SUFDakYsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFDaEMsUUFBUSxHQUFvQixJQUFJLE9BQU8sRUFBRSxDQUFDO0lBQzFDLE9BQU8sR0FBb0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUN6QyxPQUFPLEdBQUcsTUFBTSxDQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzVCLHNCQUFzQixHQUFHLE1BQU0sQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUV4RCxnQkFBZ0I7SUFDUCxPQUFPLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxD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Q0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRVMsc0JBQXNCLENBQUMsS0FBaUM7UUFDaEUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFXLGdCQUFnQjtRQUN6QixPQUFPLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxLQUF5QjtRQUNyRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVztRQUNULFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQzt3R0F6R1UscUNBQXFDOzRGQUFyQyxxQ0FBcUMsKzdDQ2hCbEQsMDlDQXVCQSwyQ0RUWSxlQUFlLDRGQUFFLG9DQUFvQzs7NEZBRXBELHFDQUFxQztrQkFSakQsU0FBUzsrQkFFRSxrQ0FBa0MsY0FFaEMsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsZUFBZSxFQUFFLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQsIGlucHV0LCBvdXRwdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUZvY3VzQW5kQmx1ckV2ZW50LCBJSW5wdXRGdW5jdGlvbkNvbnRyb2xFdmVudCwgTGlic1VpQ29tcG9uZW50c0lucHV0c0lucHV0Q29tcG9uZW50IH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1pbnB1dHMtaW5wdXQnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnQGxpYnMtdWkvaW50ZXJmYWNlcy10eXBlcyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCB0YWtlVW50aWwsIHRocm90dGxlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IElJbnB1dFNlYXJjaENvbmZpZyB9IGZyb20gJy4vaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnbGlic191aS1jb21wb25lbnRzLWlucHV0cy1zZWFyY2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtUcmFuc2xhdGVNb2R1bGUsIExpYnNVaUNvbXBvbmVudHNJbnB1dHNJbnB1dENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIExpYnNVaUNvbXBvbmVudHNJbnB1dHNTZWFyY2hDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8vICNyZWdpb24gUFJPUEVSVFlcbiAgcHJvdGVjdGVkIHZhbHVlU2VhcmNoID0gc2lnbmFsPHN0cmluZz4oJycpO1xuXG4gIHByaXZhdGUgaW5wdXRGdW5jdGlvbkNvbnRyb2wgPSBzaWduYWw8SUlucHV0RnVuY3Rpb25Db250cm9sRXZlbnQgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgb25EZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBvblNlYXJjaDogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3QoKTtcbiAgcHJpdmF0ZSBvbkVudGVyOiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIHRpbWVvdXQgPSBzaWduYWw8bnVtYmVyPigwKTtcbiAgcHJpdmF0ZSBzZWFyY2hpbmdXaGlsZUVudGVyaW5nID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcblxuICAvLyAjcmVnaW9uIElOUFVUXG4gIHJlYWRvbmx5IGRpc2FibGUgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IHJlYWRvbmx5ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBzZWFyY2hDb25maWcgPSBpbnB1dDxJSW5wdXRTZWFyY2hDb25maWcsIElJbnB1dFNlYXJjaENvbmZpZz4oe30sIHsgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlIHx8IHt9IH0pO1xuICByZWFkb25seSBpZ25vcmVBdXRvQ29tcGxldGUgPSBpbnB1dDxib29sZWFuPigpOyAvLyBraMO0bmcgZW1pdCBz4buxIGtp4buHbiBzYXUgMSBraG/huqNuZyB0aOG7nWkgZ2lhbiBuZ8aw4budaSBkw7luZyBuZ+G7q25nIG5o4bqtcFxuICByZWFkb25seSBkZWJvdW5jZVRpbWUgPSBpbnB1dDxudW1iZXIsIG51bWJlcj4oMTAwMCwgeyB0cmFuc2Zvcm06ICh2YWx1ZSkgPT4gdmFsdWUgPz8gMTAwMCB9KTtcbiAgcmVhZG9ubHkgaWdub3JlU3RvcFByb3BhZ2F0aW9uRXZlbnQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IGZvY3VzVGltZU91dCA9IGlucHV0PG51bWJlciwgbnVtYmVyPig2MDAsIHsgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlID8/IDYwMCB9KTtcbiAgcmVhZG9ubHkgYmx1clRpbWVPdXQgPSBpbnB1dDxudW1iZXIsIG51bWJlcj4oNjAwLCB7IHRyYW5zZm9ybTogKHZhbHVlKSA9PiB2YWx1ZSA/PyA2MDAgfSk7XG5cbiAgLy8gI3JlZ2lvbiBPVVRQVVRcbiAgcmVhZG9ubHkgb3V0U2VhcmNoID0gb3V0cHV0PHN0cmluZz4oKTsgLy8gc2F1IDEga2hv4bqjbmcgdGjhu51pIGdpYW4gbmfGsOG7nWkgZMO5bmcgbmfhu6tuZyBuaOG6rXAgc+G6vSBlbWl0IHPhu7Ega2nhu4duXG4gIHJlYWRvbmx5IG91dFZhbHVlQ2hhbmdlID0gb3V0cHV0PHN0cmluZz4oKTsgLy8gc+G7rSBk4bulbmcga2hpIG114buRbiBs4bqvbmcgbmdoZSBt4buXaSBs4bqnbiBnw7UgdGV4dFxuICByZWFkb25seSBvdXRJY29uTGVmdCA9IG91dHB1dDxzdHJpbmc+KCk7XG4gIHJlYWRvbmx5IG91dEljb25SaWdodCA9IG91dHB1dDxzdHJpbmc+KCk7XG4gIHJlYWRvbmx5IG91dEZvY3VzQW5kQmx1ciA9IG91dHB1dDxJRm9jdXNBbmRCbHVyRXZlbnQ+KCk7XG4gIHJlYWRvbmx5IG91dEZ1bmN0aW9uc0NvbnRyb2wgPSBvdXRwdXQ8SUlucHV0RnVuY3Rpb25Db250cm9sRXZlbnQ+KCk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZVNlYXJjaC5zZXQodGhpcy5zZWFyY2hDb25maWcoKT8udmFsdWUgfHwgJycpO1xuICAgIHRoaXMub25TZWFyY2hcbiAgICAgIC5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZVRpbWUoKSksXG4gICAgICAgIGZpbHRlcigoa2V5U2VhcmNoKSA9PiAhIWtleVNlYXJjaCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGtleVNlYXJjaCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5zZWFyY2hpbmdXaGlsZUVudGVyaW5nKCkgfHwgdGhpcy5pZ25vcmVBdXRvQ29tcGxldGUoKSB8fCAhdGhpcy52YWx1ZVNlYXJjaCgpKSB7XG4gICAgICAgICAgdGhpcy5zZWFyY2hpbmdXaGlsZUVudGVyaW5nLnNldChmYWxzZSk7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vdXRTZWFyY2guZW1pdChgJHtrZXlTZWFyY2h9YC50cmltKCkpO1xuICAgICAgfSk7XG4gICAgdGhpcy5vbkVudGVyLnBpcGUodGhyb3R0bGVUaW1lKHRoaXMuZGVib3VuY2VUaW1lKCkpLCB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kpKS5zdWJzY3JpYmUoKGtleVNlYXJjaCkgPT4ge1xuICAgICAgdGhpcy5vdXRTZWFyY2guZW1pdChgJHtrZXlTZWFyY2h9YC50cmltKCkpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gI3JlZ2lvbiBGVU5DVElPTlNcbiAgcHJvdGVjdGVkIGhhbmRsZXJWYWx1ZUNoYW5nZShrZXlTZWFyY2g6IHN0cmluZykge1xuICAgIHRoaXMub3V0VmFsdWVDaGFuZ2UuZW1pdChrZXlTZWFyY2gudG9TdHJpbmcoKSk7XG4gICAgdGhpcy52YWx1ZVNlYXJjaC5zZXQoa2V5U2VhcmNoIGFzIHN0cmluZyk7XG4gICAgdGhpcy5zZWFyY2hpbmdXaGlsZUVudGVyaW5nLnNldChmYWxzZSk7XG4gICAgaWYgKHRoaXMudmFsdWVTZWFyY2goKSkge1xuICAgICAgdGhpcy5vblNlYXJjaC5uZXh0KHRoaXMudmFsdWVTZWFyY2goKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dCgpKTtcbiAgICB0aGlzLnRpbWVvdXQuc2V0KFxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy52YWx1ZVNlYXJjaCgpICYmICF0aGlzLmlnbm9yZUF1dG9Db21wbGV0ZSgpKSB7XG4gICAgICAgICAgdGhpcy5vdXRTZWFyY2guZW1pdCh0aGlzLnZhbHVlU2VhcmNoKCkpO1xuICAgICAgICB9XG4gICAgICB9LCB0aGlzLmRlYm91bmNlVGltZSgpIC8gMilcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZXJFbnRlcklucHV0KGU6IElFdmVudCkge1xuICAgIHRoaXMudmFsdWVTZWFyY2guc2V0KGUudGFyZ2V0LnZhbHVlKTtcbiAgICB0aGlzLnNlYXJjaGluZ1doaWxlRW50ZXJpbmcuc2V0KHRydWUpO1xuICAgIHRoaXMub25FbnRlci5uZXh0KHRoaXMudmFsdWVTZWFyY2goKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlckV2ZW50SWNvbkxlZnQoZXZlbnROYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLm91dEljb25MZWZ0LmVtaXQoZXZlbnROYW1lKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVyRXZlbnRJY29uUmlnaHQoZXZlbnROYW1lOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5zZWFyY2hDb25maWcoKT8uaGFzQ2xlYXJTZWFyY2gpIHtcbiAgICAgIHRoaXMudmFsdWVTZWFyY2guc2V0KCcnKTtcbiAgICAgIHRoaXMub3V0U2VhcmNoLmVtaXQodGhpcy52YWx1ZVNlYXJjaCgpKTtcbiAgICB9XG4gICAgdGhpcy5vdXRJY29uUmlnaHQuZW1pdChldmVudE5hbWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZXJGdW5jdGlvbkNvbnRyb2woZXZlbnQ6IElJbnB1dEZ1bmN0aW9uQ29udHJvbEV2ZW50KSB7XG4gICAgdGhpcy5vdXRGdW5jdGlvbnNDb250cm9sLmVtaXQoZXZlbnQpO1xuICAgIHRoaXMuaW5wdXRGdW5jdGlvbkNvbnRyb2wuc2V0KGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgRnVuY3Rpb25zQ29udHJvbCgpOiBJSW5wdXRGdW5jdGlvbkNvbnRyb2xFdmVudCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRGdW5jdGlvbkNvbnRyb2woKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVyRm9jdXNBbmRCbHVyKGV2ZW50OiBJRm9jdXNBbmRCbHVyRXZlbnQpIHtcbiAgICB0aGlzLm91dEZvY3VzQW5kQmx1ci5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXQoKSk7XG4gICAgdGhpcy5vbkRlc3Ryb3kubmV4dCgpO1xuICAgIHRoaXMub25EZXN0cm95LmNvbXBsZXRlKCk7XG4gIH1cbn1cbiIsIjxsaWJzX3VpLWNvbXBvbmVudHMtaW5wdXRzLWlucHV0XG4gIFtkaXNhYmxlXT1cImRpc2FibGUoKVwiXG4gIFtyZWFkb25seV09XCJyZWFkb25seSgpXCJcbiAgW2lnbm9yZVN0b3BQcm9wYWdhdGlvbkV2ZW50XT1cImlnbm9yZVN0b3BQcm9wYWdhdGlvbkV2ZW50KClcIlxuICBbZGVmYXVsdEhlaWdodF09XCJzZWFyY2hDb25maWcoKS5kZWZhdWx0SGVpZ2h0IHx8IDMyXCJcbiAgW2NsYXNzSW5jbHVkZV09XCIndy1mdWxsICcgKyAoc2VhcmNoQ29uZmlnKCkuY2xhc3NJbmNsdWRlID8gc2VhcmNoQ29uZmlnKCkuY2xhc3NJbmNsdWRlIDogJycpXCJcbiAgW2ljb25MZWZ0Q2xhc3NdPVwic2VhcmNoQ29uZmlnKCkuaWNvbkxlZnRDbGFzcyA/PyAnbGlicy11aS1pY29uLXNlYXJjaCdcIlxuICBbaWNvblJpZ2h0Q2xhc3NdPVwiKHNlYXJjaENvbmZpZygpLmhhc0NsZWFyU2VhcmNoICYmIHZhbHVlU2VhcmNoKCkgPyAnbGlicy11aS1pY29uLWNsb3NlLWNpcmNsZS1zb2xpZCBjdXJzb3ItcG9pbnRlciAnIDogJycpICsgKHNlYXJjaENvbmZpZygpLmljb25SaWdodENsYXNzID8gJyAnICsgc2VhcmNoQ29uZmlnKCkuaWNvblJpZ2h0Q2xhc3MgOiAnJylcIlxuICBbc2V0SWNvblJpZ2h0Q29sb3JTYW1lQ29sb3JEaXNhYmxlUmVhZE9ubHldPVwic2VhcmNoQ29uZmlnKCkuaGFzQ2xlYXJTZWFyY2ggJiYgdmFsdWVTZWFyY2goKSA/IHRydWUgOiBmYWxzZVwiXG4gIFt2YWx1ZV09XCJzZWFyY2hDb25maWcoKS52YWx1ZSA/PyB0aGlzLnZhbHVlU2VhcmNoKClcIlxuICBbcGxhY2Vob2xkZXJdPVwic2VhcmNoQ29uZmlnKCkucGxhY2Vob2xkZXIgfHwgJ2kxOG5fc2VhcmNoJyB8IHRyYW5zbGF0ZVwiXG4gIFtub0JvcmRlcl09XCJzZWFyY2hDb25maWcoKS5ub0JvcmRlciB8fCBmYWxzZVwiXG4gIFtiYWNrZ3JvdW5kTm9uZV09XCJzZWFyY2hDb25maWcoKS5iYWNrZ3JvdW5kTm9uZSB8fCBmYWxzZVwiXG4gIFtjbGFzc0NvbnRhaW5lcklucHV0XT1cInNlYXJjaENvbmZpZygpLmNsYXNzQ29udGFpbmVySW5wdXQgfHwgJydcIlxuICBbcG9wb3ZlckNvbnRlbnRJY29uUmlnaHRdPVwic2VhcmNoQ29uZmlnKCkucG9wb3ZlckNvbnRlbnRJY29uUmlnaHQgfHwgJydcIlxuICBbZm9jdXNUaW1lT3V0XT1cImZvY3VzVGltZU91dCgpXCJcbiAgW2JsdXJUaW1lT3V0XT1cImJsdXJUaW1lT3V0KClcIlxuICAob3V0Q2hhbmdlKT1cImhhbmRsZXJWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgKG91dEljb25MZWZ0KT1cImhhbmRsZXJFdmVudEljb25MZWZ0KCRldmVudClcIlxuICAob3V0SWNvblJpZ2h0KT1cImhhbmRsZXJFdmVudEljb25SaWdodCgkZXZlbnQpXCJcbiAgKG91dEZ1bmN0aW9uc0NvbnRyb2wpPVwiaGFuZGxlckZ1bmN0aW9uQ29udHJvbCgkZXZlbnQpXCJcbiAgKG91dEVudGVyRXZlbnQpPVwiaGFuZGxlckVudGVySW5wdXQoJGV2ZW50KVwiXG4gIChvdXRGb2N1c0FuZEJsdXJFdmVudCk9XCJoYW5kbGVyRm9jdXNBbmRCbHVyKCRldmVudClcIiAvPlxuIl19
|
|
@@ -9,6 +9,7 @@ import { debounceTime, filter, takeUntil, throttleTime } from 'rxjs/operators';
|
|
|
9
9
|
class LibsUiComponentsInputsSearchComponent {
|
|
10
10
|
// #region PROPERTY
|
|
11
11
|
valueSearch = signal('');
|
|
12
|
+
inputFunctionControl = signal(undefined);
|
|
12
13
|
onDestroy = new Subject();
|
|
13
14
|
onSearch = new Subject();
|
|
14
15
|
onEnter = new Subject();
|
|
@@ -32,14 +33,16 @@ class LibsUiComponentsInputsSearchComponent {
|
|
|
32
33
|
outFunctionsControl = output();
|
|
33
34
|
ngOnInit() {
|
|
34
35
|
this.valueSearch.set(this.searchConfig()?.value || '');
|
|
35
|
-
this.onSearch
|
|
36
|
+
this.onSearch
|
|
37
|
+
.pipe(debounceTime(this.debounceTime()), filter((keySearch) => !!keySearch), takeUntil(this.onDestroy))
|
|
38
|
+
.subscribe((keySearch) => {
|
|
36
39
|
if (this.searchingWhileEntering() || this.ignoreAutoComplete() || !this.valueSearch()) {
|
|
37
40
|
this.searchingWhileEntering.set(false);
|
|
38
41
|
return;
|
|
39
42
|
}
|
|
40
43
|
this.outSearch.emit(`${keySearch}`.trim());
|
|
41
44
|
});
|
|
42
|
-
this.onEnter.pipe(throttleTime(this.debounceTime()), takeUntil(this.onDestroy)).subscribe(keySearch => {
|
|
45
|
+
this.onEnter.pipe(throttleTime(this.debounceTime()), takeUntil(this.onDestroy)).subscribe((keySearch) => {
|
|
43
46
|
this.outSearch.emit(`${keySearch}`.trim());
|
|
44
47
|
});
|
|
45
48
|
}
|
|
@@ -76,6 +79,10 @@ class LibsUiComponentsInputsSearchComponent {
|
|
|
76
79
|
}
|
|
77
80
|
handlerFunctionControl(event) {
|
|
78
81
|
this.outFunctionsControl.emit(event);
|
|
82
|
+
this.inputFunctionControl.set(event);
|
|
83
|
+
}
|
|
84
|
+
get FunctionsControl() {
|
|
85
|
+
return this.inputFunctionControl();
|
|
79
86
|
}
|
|
80
87
|
handlerFocusAndBlur(event) {
|
|
81
88
|
this.outFocusAndBlur.emit(event);
|
|
@@ -86,11 +93,11 @@ class LibsUiComponentsInputsSearchComponent {
|
|
|
86
93
|
this.onDestroy.complete();
|
|
87
94
|
}
|
|
88
95
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
89
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: LibsUiComponentsInputsSearchComponent, isStandalone: true, selector: "libs_ui-components-inputs-search", inputs: { disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, searchConfig: { classPropertyName: "searchConfig", publicName: "searchConfig", isSignal: true, isRequired: false, transformFunction: null }, ignoreAutoComplete: { classPropertyName: "ignoreAutoComplete", publicName: "ignoreAutoComplete", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, ignoreStopPropagationEvent: { classPropertyName: "ignoreStopPropagationEvent", publicName: "ignoreStopPropagationEvent", isSignal: true, isRequired: false, transformFunction: null }, focusTimeOut: { classPropertyName: "focusTimeOut", publicName: "focusTimeOut", isSignal: true, isRequired: false, transformFunction: null }, blurTimeOut: { classPropertyName: "blurTimeOut", publicName: "blurTimeOut", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { outSearch: "outSearch", outValueChange: "outValueChange", outIconLeft: "outIconLeft", outIconRight: "outIconRight", outFocusAndBlur: "outFocusAndBlur", outFunctionsControl: "outFunctionsControl" }, ngImport: i0, template: "<libs_ui-components-inputs-input
|
|
96
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: LibsUiComponentsInputsSearchComponent, isStandalone: true, selector: "libs_ui-components-inputs-search", inputs: { disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, searchConfig: { classPropertyName: "searchConfig", publicName: "searchConfig", isSignal: true, isRequired: false, transformFunction: null }, ignoreAutoComplete: { classPropertyName: "ignoreAutoComplete", publicName: "ignoreAutoComplete", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, ignoreStopPropagationEvent: { classPropertyName: "ignoreStopPropagationEvent", publicName: "ignoreStopPropagationEvent", isSignal: true, isRequired: false, transformFunction: null }, focusTimeOut: { classPropertyName: "focusTimeOut", publicName: "focusTimeOut", isSignal: true, isRequired: false, transformFunction: null }, blurTimeOut: { classPropertyName: "blurTimeOut", publicName: "blurTimeOut", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { outSearch: "outSearch", outValueChange: "outValueChange", outIconLeft: "outIconLeft", outIconRight: "outIconRight", outFocusAndBlur: "outFocusAndBlur", outFunctionsControl: "outFunctionsControl" }, ngImport: i0, template: "<libs_ui-components-inputs-input\n [disable]=\"disable()\"\n [readonly]=\"readonly()\"\n [ignoreStopPropagationEvent]=\"ignoreStopPropagationEvent()\"\n [defaultHeight]=\"searchConfig().defaultHeight || 32\"\n [classInclude]=\"'w-full ' + (searchConfig().classInclude ? searchConfig().classInclude : '')\"\n [iconLeftClass]=\"searchConfig().iconLeftClass ?? 'libs-ui-icon-search'\"\n [iconRightClass]=\"(searchConfig().hasClearSearch && valueSearch() ? 'libs-ui-icon-close-circle-solid cursor-pointer ' : '') + (searchConfig().iconRightClass ? ' ' + searchConfig().iconRightClass : '')\"\n [setIconRightColorSameColorDisableReadOnly]=\"searchConfig().hasClearSearch && valueSearch() ? true : false\"\n [value]=\"searchConfig().value ?? this.valueSearch()\"\n [placeholder]=\"searchConfig().placeholder || 'i18n_search' | translate\"\n [noBorder]=\"searchConfig().noBorder || false\"\n [backgroundNone]=\"searchConfig().backgroundNone || false\"\n [classContainerInput]=\"searchConfig().classContainerInput || ''\"\n [popoverContentIconRight]=\"searchConfig().popoverContentIconRight || ''\"\n [focusTimeOut]=\"focusTimeOut()\"\n [blurTimeOut]=\"blurTimeOut()\"\n (outChange)=\"handlerValueChange($event)\"\n (outIconLeft)=\"handlerEventIconLeft($event)\"\n (outIconRight)=\"handlerEventIconRight($event)\"\n (outFunctionsControl)=\"handlerFunctionControl($event)\"\n (outEnterEvent)=\"handlerEnterInput($event)\"\n (outFocusAndBlurEvent)=\"handlerFocusAndBlur($event)\" />\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: LibsUiComponentsInputsInputComponent, selector: "libs_ui-components-inputs-input", inputs: ["tagInput", "dataType", "typeInput", "modeInput", "tabInsertContentTagInput", "textAreaEnterNotNewLine", "emitEmptyInDataTypeNumber", "keepZeroInTypeInt", "autoAddZeroLessThan10InTypeInt", "ignoreBlockInputMaxValue", "maxValueNumber", "minValueNumber", "fixedFloat", "acceptNegativeValue", "valueUpDownNumber", "classInclude", "maxLength", "readonly", "disable", "noBorder", "backgroundNone", "borderError", "useColorModeExist", "placeholder", "keepPlaceholderOnly", "value", "autoRemoveEmoji", "defaultHeight", "minHeightTextArea", "maxHeightTextArea", "focusTimeOut", "selectAllTimeOut", "blurTimeOut", "zIndexPopoverContent", "classContainerInput", "showCount", "ignoreStopPropagationEvent", "resize", "templateLeftBottomInput", "templateRightBottomInput", "classContainerBottomInput", "ignoreWidthInput100", "iframeTextareaCustomStyle", "iconLeftClass", "popoverContentIconLeft", "iconRightClass", "popoverContentIconRight", "resetAutoCompletePassword", "acceptOnlyClickIcon", "setIconRightColorSameColorDisableReadOnly", "onlyAcceptNegativeValue", "maxLengthNumberCount", "focusInput"], outputs: ["maxValueNumberChange", "minValueNumberChange", "fixedFloatChange", "acceptNegativeValueChange", "maxLengthChange", "valueChange", "maxLengthNumberCountChange", "outHeightAreaChange", "outChange", "outFocusAndBlurEvent", "outEnterEvent", "outInputEvent", "outIconLeft", "outIconRight", "outFunctionsControl", "outFilesDrop", "outFileDrop", "outChangeValueByButtonUpDown"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
90
97
|
}
|
|
91
98
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsSearchComponent, decorators: [{
|
|
92
99
|
type: Component,
|
|
93
|
-
args: [{ selector: 'libs_ui-components-inputs-search', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [TranslateModule, LibsUiComponentsInputsInputComponent], template: "<libs_ui-components-inputs-input
|
|
100
|
+
args: [{ selector: 'libs_ui-components-inputs-search', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [TranslateModule, LibsUiComponentsInputsInputComponent], template: "<libs_ui-components-inputs-input\n [disable]=\"disable()\"\n [readonly]=\"readonly()\"\n [ignoreStopPropagationEvent]=\"ignoreStopPropagationEvent()\"\n [defaultHeight]=\"searchConfig().defaultHeight || 32\"\n [classInclude]=\"'w-full ' + (searchConfig().classInclude ? searchConfig().classInclude : '')\"\n [iconLeftClass]=\"searchConfig().iconLeftClass ?? 'libs-ui-icon-search'\"\n [iconRightClass]=\"(searchConfig().hasClearSearch && valueSearch() ? 'libs-ui-icon-close-circle-solid cursor-pointer ' : '') + (searchConfig().iconRightClass ? ' ' + searchConfig().iconRightClass : '')\"\n [setIconRightColorSameColorDisableReadOnly]=\"searchConfig().hasClearSearch && valueSearch() ? true : false\"\n [value]=\"searchConfig().value ?? this.valueSearch()\"\n [placeholder]=\"searchConfig().placeholder || 'i18n_search' | translate\"\n [noBorder]=\"searchConfig().noBorder || false\"\n [backgroundNone]=\"searchConfig().backgroundNone || false\"\n [classContainerInput]=\"searchConfig().classContainerInput || ''\"\n [popoverContentIconRight]=\"searchConfig().popoverContentIconRight || ''\"\n [focusTimeOut]=\"focusTimeOut()\"\n [blurTimeOut]=\"blurTimeOut()\"\n (outChange)=\"handlerValueChange($event)\"\n (outIconLeft)=\"handlerEventIconLeft($event)\"\n (outIconRight)=\"handlerEventIconRight($event)\"\n (outFunctionsControl)=\"handlerFunctionControl($event)\"\n (outEnterEvent)=\"handlerEnterInput($event)\"\n (outFocusAndBlurEvent)=\"handlerFocusAndBlur($event)\" />\n" }]
|
|
94
101
|
}] });
|
|
95
102
|
|
|
96
103
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libs-ui-components-inputs-search.mjs","sources":["../../../../../../libs-ui/components/inputs/search/src/search.component.ts","../../../../../../libs-ui/components/inputs/search/src/search.component.html","../../../../../../libs-ui/components/inputs/search/src/libs-ui-components-inputs-search.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, OnDestroy, OnInit, input, output, signal } from '@angular/core';\nimport { IFocusAndBlurEvent, IInputFunctionControlEvent, LibsUiComponentsInputsInputComponent } from '@libs-ui/components-inputs-input';\nimport { IEvent } from '@libs-ui/interfaces-types';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { Subject } from 'rxjs';\nimport { debounceTime, filter, takeUntil, throttleTime } from 'rxjs/operators';\nimport { IInputSearchConfig } from './interfaces/config.interface';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'libs_ui-components-inputs-search',\n templateUrl: './search.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [TranslateModule, LibsUiComponentsInputsInputComponent]\n})\nexport class LibsUiComponentsInputsSearchComponent implements OnInit, OnDestroy {\n // #region PROPERTY\n protected valueSearch = signal<string>('');\n\n private onDestroy = new Subject<void>();\n private onSearch: Subject<string> = new Subject();\n private onEnter: Subject<string> = new Subject();\n private timeout = signal<number>(0);\n private searchingWhileEntering = signal<boolean>(false);\n\n // #region INPUT\n readonly disable = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly searchConfig = input<IInputSearchConfig, IInputSearchConfig>({}, { transform: (value) => value || {} });\n readonly ignoreAutoComplete = input<boolean>(); // không emit sự kiện sau 1 khoảng thời gian người dùng ngừng nhập\n readonly debounceTime = input<number, number>(1000, { transform: (value) => value ?? 1000 });\n readonly ignoreStopPropagationEvent = input<boolean>(false);\n readonly focusTimeOut = input<number, number>(600, { transform: (value) => value ?? 600 });\n readonly blurTimeOut = input<number, number>(600, { transform: (value) => value ?? 600 });\n\n // #region OUTPUT\n readonly outSearch = output<string>(); // sau 1 khoảng thời gian người dùng ngừng nhập sẽ emit sự kiện\n readonly outValueChange = output<string>(); // sử dụng khi muốn lắng nghe mỗi lần gõ text\n readonly outIconLeft = output<string>();\n readonly outIconRight = output<string>();\n readonly outFocusAndBlur = output<IFocusAndBlurEvent>();\n readonly outFunctionsControl = output<IInputFunctionControlEvent>();\n\n ngOnInit(): void {\n this.valueSearch.set(this.searchConfig()?.value || '')\n this.onSearch.pipe(\n debounceTime(this.debounceTime()),\n filter((keySearch) => !!keySearch),\n takeUntil(this.onDestroy)\n ).subscribe(keySearch => {\n if (this.searchingWhileEntering() || this.ignoreAutoComplete() || !this.valueSearch()) {\n this.searchingWhileEntering.set(false);\n\n return;\n }\n this.outSearch.emit(`${keySearch}`.trim());\n });\n this.onEnter.pipe(throttleTime(this.debounceTime()), takeUntil(this.onDestroy)).subscribe(keySearch => {\n this.outSearch.emit(`${keySearch}`.trim());\n });\n }\n\n // #region FUNCTIONS\n protected handlerValueChange(keySearch: string) {\n this.outValueChange.emit(keySearch.toString());\n this.valueSearch.set(keySearch as string);\n this.searchingWhileEntering.set(false);\n if (this.valueSearch()) {\n this.onSearch.next(this.valueSearch());\n return;\n }\n\n clearTimeout(this.timeout());\n this.timeout.set(setTimeout(() => {\n if (!this.valueSearch() && !this.ignoreAutoComplete()) {\n this.outSearch.emit(this.valueSearch());\n }\n }, this.debounceTime() / 2));\n\n }\n\n protected handlerEnterInput(e: IEvent) {\n this.valueSearch.set(e.target.value);\n this.searchingWhileEntering.set(true);\n this.onEnter.next(this.valueSearch());\n }\n\n protected handlerEventIconLeft(eventName: string) {\n this.outIconLeft.emit(eventName);\n }\n\n protected handlerEventIconRight(eventName: string) {\n if (this.searchConfig()?.hasClearSearch) {\n this.valueSearch.set('');\n this.outSearch.emit(this.valueSearch());\n }\n this.outIconRight.emit(eventName);\n }\n\n protected handlerFunctionControl(event: IInputFunctionControlEvent) {\n this.outFunctionsControl.emit(event);\n }\n\n protected handlerFocusAndBlur(event: IFocusAndBlurEvent) {\n this.outFocusAndBlur.emit(event);\n }\n\n ngOnDestroy(): void {\n clearTimeout(this.timeout());\n this.onDestroy.next();\n this.onDestroy.complete();\n }\n}\n","<libs_ui-components-inputs-input [disable]=\"disable()\"\n [readonly]=\"readonly()\"\n [ignoreStopPropagationEvent]=\"ignoreStopPropagationEvent()\"\n [defaultHeight]=\"searchConfig().defaultHeight || 32\"\n [classInclude]=\"'w-full '+(searchConfig().classInclude ? searchConfig().classInclude : '')\"\n [iconLeftClass]=\"searchConfig().iconLeftClass ?? 'libs-ui-icon-search'\"\n [iconRightClass]=\"((searchConfig().hasClearSearch && valueSearch()) ? 'libs-ui-icon-close-circle-solid cursor-pointer ' : '') + (searchConfig().iconRightClass ? ' '+searchConfig().iconRightClass:'')\"\n [setIconRightColorSameColorDisableReadOnly]=\"(searchConfig().hasClearSearch && valueSearch()) ? true: false\"\n [value]=\"searchConfig().value ?? this.valueSearch()\"\n [placeholder]=\"(searchConfig().placeholder || 'i18n_search') | translate\"\n [noBorder]=\"searchConfig().noBorder || false\"\n [backgroundNone]=\"searchConfig().backgroundNone || false\"\n [classContainerInput]=\"searchConfig().classContainerInput || ''\"\n [popoverContentIconRight]=\"searchConfig().popoverContentIconRight || ''\"\n [focusTimeOut]=\"focusTimeOut()\"\n [blurTimeOut]=\"blurTimeOut()\"\n (outChange)=\"handlerValueChange($event)\"\n (outIconLeft)=\"handlerEventIconLeft($event)\"\n (outIconRight)=\"handlerEventIconRight($event)\"\n (outFunctionsControl)=\"handlerFunctionControl($event)\"\n (outEnterEvent)=\"handlerEnterInput($event)\"\n (outFocusAndBlurEvent)=\"handlerFocusAndBlur($event)\" />\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"libs-ui-components-inputs-search.mjs","sources":["../../../../../../libs-ui/components/inputs/search/src/search.component.ts","../../../../../../libs-ui/components/inputs/search/src/search.component.html","../../../../../../libs-ui/components/inputs/search/src/libs-ui-components-inputs-search.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, OnDestroy, OnInit, input, output, signal } from '@angular/core';\nimport { IFocusAndBlurEvent, IInputFunctionControlEvent, LibsUiComponentsInputsInputComponent } from '@libs-ui/components-inputs-input';\nimport { IEvent } from '@libs-ui/interfaces-types';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { Subject } from 'rxjs';\nimport { debounceTime, filter, takeUntil, throttleTime } from 'rxjs/operators';\nimport { IInputSearchConfig } from './interfaces/config.interface';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'libs_ui-components-inputs-search',\n templateUrl: './search.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [TranslateModule, LibsUiComponentsInputsInputComponent],\n})\nexport class LibsUiComponentsInputsSearchComponent implements OnInit, OnDestroy {\n // #region PROPERTY\n protected valueSearch = signal<string>('');\n\n private inputFunctionControl = signal<IInputFunctionControlEvent | undefined>(undefined);\n private onDestroy = new Subject<void>();\n private onSearch: Subject<string> = new Subject();\n private onEnter: Subject<string> = new Subject();\n private timeout = signal<number>(0);\n private searchingWhileEntering = signal<boolean>(false);\n\n // #region INPUT\n readonly disable = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly searchConfig = input<IInputSearchConfig, IInputSearchConfig>({}, { transform: (value) => value || {} });\n readonly ignoreAutoComplete = input<boolean>(); // không emit sự kiện sau 1 khoảng thời gian người dùng ngừng nhập\n readonly debounceTime = input<number, number>(1000, { transform: (value) => value ?? 1000 });\n readonly ignoreStopPropagationEvent = input<boolean>(false);\n readonly focusTimeOut = input<number, number>(600, { transform: (value) => value ?? 600 });\n readonly blurTimeOut = input<number, number>(600, { transform: (value) => value ?? 600 });\n\n // #region OUTPUT\n readonly outSearch = output<string>(); // sau 1 khoảng thời gian người dùng ngừng nhập sẽ emit sự kiện\n readonly outValueChange = output<string>(); // sử dụng khi muốn lắng nghe mỗi lần gõ text\n readonly outIconLeft = output<string>();\n readonly outIconRight = output<string>();\n readonly outFocusAndBlur = output<IFocusAndBlurEvent>();\n readonly outFunctionsControl = output<IInputFunctionControlEvent>();\n\n ngOnInit(): void {\n this.valueSearch.set(this.searchConfig()?.value || '');\n this.onSearch\n .pipe(\n debounceTime(this.debounceTime()),\n filter((keySearch) => !!keySearch),\n takeUntil(this.onDestroy)\n )\n .subscribe((keySearch) => {\n if (this.searchingWhileEntering() || this.ignoreAutoComplete() || !this.valueSearch()) {\n this.searchingWhileEntering.set(false);\n\n return;\n }\n this.outSearch.emit(`${keySearch}`.trim());\n });\n this.onEnter.pipe(throttleTime(this.debounceTime()), takeUntil(this.onDestroy)).subscribe((keySearch) => {\n this.outSearch.emit(`${keySearch}`.trim());\n });\n }\n\n // #region FUNCTIONS\n protected handlerValueChange(keySearch: string) {\n this.outValueChange.emit(keySearch.toString());\n this.valueSearch.set(keySearch as string);\n this.searchingWhileEntering.set(false);\n if (this.valueSearch()) {\n this.onSearch.next(this.valueSearch());\n return;\n }\n\n clearTimeout(this.timeout());\n this.timeout.set(\n setTimeout(() => {\n if (!this.valueSearch() && !this.ignoreAutoComplete()) {\n this.outSearch.emit(this.valueSearch());\n }\n }, this.debounceTime() / 2)\n );\n }\n\n protected handlerEnterInput(e: IEvent) {\n this.valueSearch.set(e.target.value);\n this.searchingWhileEntering.set(true);\n this.onEnter.next(this.valueSearch());\n }\n\n protected handlerEventIconLeft(eventName: string) {\n this.outIconLeft.emit(eventName);\n }\n\n protected handlerEventIconRight(eventName: string) {\n if (this.searchConfig()?.hasClearSearch) {\n this.valueSearch.set('');\n this.outSearch.emit(this.valueSearch());\n }\n this.outIconRight.emit(eventName);\n }\n\n protected handlerFunctionControl(event: IInputFunctionControlEvent) {\n this.outFunctionsControl.emit(event);\n this.inputFunctionControl.set(event);\n }\n\n public get FunctionsControl(): IInputFunctionControlEvent | undefined {\n return this.inputFunctionControl();\n }\n\n protected handlerFocusAndBlur(event: IFocusAndBlurEvent) {\n this.outFocusAndBlur.emit(event);\n }\n\n ngOnDestroy(): void {\n clearTimeout(this.timeout());\n this.onDestroy.next();\n this.onDestroy.complete();\n }\n}\n","<libs_ui-components-inputs-input\n [disable]=\"disable()\"\n [readonly]=\"readonly()\"\n [ignoreStopPropagationEvent]=\"ignoreStopPropagationEvent()\"\n [defaultHeight]=\"searchConfig().defaultHeight || 32\"\n [classInclude]=\"'w-full ' + (searchConfig().classInclude ? searchConfig().classInclude : '')\"\n [iconLeftClass]=\"searchConfig().iconLeftClass ?? 'libs-ui-icon-search'\"\n [iconRightClass]=\"(searchConfig().hasClearSearch && valueSearch() ? 'libs-ui-icon-close-circle-solid cursor-pointer ' : '') + (searchConfig().iconRightClass ? ' ' + searchConfig().iconRightClass : '')\"\n [setIconRightColorSameColorDisableReadOnly]=\"searchConfig().hasClearSearch && valueSearch() ? true : false\"\n [value]=\"searchConfig().value ?? this.valueSearch()\"\n [placeholder]=\"searchConfig().placeholder || 'i18n_search' | translate\"\n [noBorder]=\"searchConfig().noBorder || false\"\n [backgroundNone]=\"searchConfig().backgroundNone || false\"\n [classContainerInput]=\"searchConfig().classContainerInput || ''\"\n [popoverContentIconRight]=\"searchConfig().popoverContentIconRight || ''\"\n [focusTimeOut]=\"focusTimeOut()\"\n [blurTimeOut]=\"blurTimeOut()\"\n (outChange)=\"handlerValueChange($event)\"\n (outIconLeft)=\"handlerEventIconLeft($event)\"\n (outIconRight)=\"handlerEventIconRight($event)\"\n (outFunctionsControl)=\"handlerFunctionControl($event)\"\n (outEnterEvent)=\"handlerEnterInput($event)\"\n (outFocusAndBlurEvent)=\"handlerFocusAndBlur($event)\" />\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libs-ui/components-inputs-search",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.307-0",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/core": ">=18.0.0",
|
|
6
|
-
"@libs-ui/components-inputs-input": "0.2.
|
|
7
|
-
"@libs-ui/interfaces-types": "0.2.
|
|
6
|
+
"@libs-ui/components-inputs-input": "0.2.307-0",
|
|
7
|
+
"@libs-ui/interfaces-types": "0.2.307-0",
|
|
8
8
|
"@ngx-translate/core": "^15.0.0",
|
|
9
9
|
"rxjs": "~7.8.0"
|
|
10
10
|
},
|
package/search.component.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { IInputSearchConfig } from './interfaces/config.interface';
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class LibsUiComponentsInputsSearchComponent implements OnInit, OnDestroy {
|
|
7
7
|
protected valueSearch: import("@angular/core").WritableSignal<string>;
|
|
8
|
+
private inputFunctionControl;
|
|
8
9
|
private onDestroy;
|
|
9
10
|
private onSearch;
|
|
10
11
|
private onEnter;
|
|
@@ -30,6 +31,7 @@ export declare class LibsUiComponentsInputsSearchComponent implements OnInit, On
|
|
|
30
31
|
protected handlerEventIconLeft(eventName: string): void;
|
|
31
32
|
protected handlerEventIconRight(eventName: string): void;
|
|
32
33
|
protected handlerFunctionControl(event: IInputFunctionControlEvent): void;
|
|
34
|
+
get FunctionsControl(): IInputFunctionControlEvent | undefined;
|
|
33
35
|
protected handlerFocusAndBlur(event: IFocusAndBlurEvent): void;
|
|
34
36
|
ngOnDestroy(): void;
|
|
35
37
|
static ɵfac: i0.ɵɵFactoryDeclaration<LibsUiComponentsInputsSearchComponent, never>;
|