ng-zenduit 2.0.21 → 2.0.23
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/esm2020/lib/input/zendu-input.component.mjs +10 -4
- package/esm2020/lib/search-box/zendu-search-box.component.mjs +6 -11
- package/fesm2015/ng-zenduit.mjs +7429 -7429
- package/fesm2015/ng-zenduit.mjs.map +1 -1
- package/fesm2020/ng-zenduit.mjs +7390 -7390
- package/fesm2020/ng-zenduit.mjs.map +1 -1
- package/lib/input/zendu-input.component.d.ts +6 -2
- package/lib/search-box/zendu-search-box.component.d.ts +0 -2
- package/package.json +1 -1
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output,
|
|
1
|
+
import { Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
2
2
|
import { Util } from '../util';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "@angular/common";
|
|
5
5
|
import * as i2 from "@angular/forms";
|
|
6
|
-
import * as i3 from "
|
|
6
|
+
import * as i3 from "../input/zendu-input.component";
|
|
7
|
+
import * as i4 from "@ngx-translate/core";
|
|
7
8
|
export class ZenduSearchBoxComponent {
|
|
8
9
|
constructor(_element, _ngZone) {
|
|
9
10
|
this._element = _element;
|
|
@@ -46,9 +47,6 @@ export class ZenduSearchBoxComponent {
|
|
|
46
47
|
this.invokeChange();
|
|
47
48
|
}, delay);
|
|
48
49
|
}
|
|
49
|
-
activateSearchBox() {
|
|
50
|
-
this.searchInput.nativeElement.focus();
|
|
51
|
-
}
|
|
52
50
|
doFocus() {
|
|
53
51
|
this._focusAttempts++;
|
|
54
52
|
if (this._focusAttempts > 100) {
|
|
@@ -105,10 +103,10 @@ export class ZenduSearchBoxComponent {
|
|
|
105
103
|
}
|
|
106
104
|
}
|
|
107
105
|
ZenduSearchBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ZenduSearchBoxComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
108
|
-
ZenduSearchBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ZenduSearchBoxComponent, selector: "zen-search-box", inputs: { text: "text", delay: "delay", autoFocus: "autoFocus", disabled: "disabled", placeholder: "placeholder" }, outputs: { textChange: "textChange" },
|
|
106
|
+
ZenduSearchBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ZenduSearchBoxComponent, selector: "zen-search-box", inputs: { text: "text", delay: "delay", autoFocus: "autoFocus", disabled: "disabled", placeholder: "placeholder" }, outputs: { textChange: "textChange" }, ngImport: i0, template: "<div class=\"search-box-component\"\n [class.has-text]=\"text\">\n <zen-input [(ngModel)]=\"text\"\n [placeholder]=\"placeholder | translate\"\n [disabled]=\"disabled\"\n leadingIcon=\"search\"\n autocomplete=\"off\"\n (ngModelChange)=\"onChange()\">\n </zen-input>\n <i class=\"material-icons close-icon\"\n *ngIf=\"text\"\n (mousedown)=\"$event.stopPropagation()\"\n (click)=\"clear(); $event.stopPropagation()\">close</i>\n</div>\n", styles: [".search-box-component{position:relative;width:100%}.search-box-component ::ng-deep .zen-input-field-wrapper{height:40px!important;min-height:auto!important;padding:8px 14px!important}.search-box-component.has-text ::ng-deep .zen-input-field{padding-right:24px}.search-box-component .close-icon{position:absolute;top:50%;right:12px;transform:translateY(-50%);color:#828282;font-size:20px;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:1}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.ZenduInputComponent, selector: "zen-input", inputs: ["type", "variant", "placeholder", "label", "hintText", "leadingIcon", "helpIcon", "helpTooltip", "destructive", "errorMessage", "disabled", "required", "maxLength", "minLength", "pattern", "autocomplete", "name", "id", "leadingDropdownOptions", "leadingDropdownValue", "leadingDropdownPlaceholder", "trailingDropdownOptions", "trailingDropdownValue", "trailingDropdownPlaceholder", "leadingText", "trailingText", "size", "showCharacterCount", "phoneMaxLength", "phone", "width"], outputs: ["valueChange", "inputFocus", "inputBlur", "inputKeydown", "inputKeyup", "leadingDropdownChange", "leadingDropdownValueChange", "trailingDropdownChange", "trailingDropdownValueChange", "helpIconClick", "phoneChange", "validChange", "leadingIconClick"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] });
|
|
109
107
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ZenduSearchBoxComponent, decorators: [{
|
|
110
108
|
type: Component,
|
|
111
|
-
args: [{ selector: 'zen-search-box', template: "<div class=\"search-box-component\"
|
|
109
|
+
args: [{ selector: 'zen-search-box', template: "<div class=\"search-box-component\"\n [class.has-text]=\"text\">\n <zen-input [(ngModel)]=\"text\"\n [placeholder]=\"placeholder | translate\"\n [disabled]=\"disabled\"\n leadingIcon=\"search\"\n autocomplete=\"off\"\n (ngModelChange)=\"onChange()\">\n </zen-input>\n <i class=\"material-icons close-icon\"\n *ngIf=\"text\"\n (mousedown)=\"$event.stopPropagation()\"\n (click)=\"clear(); $event.stopPropagation()\">close</i>\n</div>\n", styles: [".search-box-component{position:relative;width:100%}.search-box-component ::ng-deep .zen-input-field-wrapper{height:40px!important;min-height:auto!important;padding:8px 14px!important}.search-box-component.has-text ::ng-deep .zen-input-field{padding-right:24px}.search-box-component .close-icon{position:absolute;top:50%;right:12px;transform:translateY(-50%);color:#828282;font-size:20px;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:1}\n"] }]
|
|
112
110
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { text: [{
|
|
113
111
|
type: Input
|
|
114
112
|
}], textChange: [{
|
|
@@ -121,8 +119,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
121
119
|
type: Input
|
|
122
120
|
}], placeholder: [{
|
|
123
121
|
type: Input
|
|
124
|
-
}], searchInput: [{
|
|
125
|
-
type: ViewChild,
|
|
126
|
-
args: ['searchInput', { static: false }]
|
|
127
122
|
}] } });
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemVuZHUtc2VhcmNoLWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy16ZW5kdWl0L3NyYy9saWIvc2VhcmNoLWJveC96ZW5kdS1zZWFyY2gtYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXplbmR1aXQvc3JjL2xpYi9zZWFyY2gtYm94L3plbmR1LXNlYXJjaC1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sU0FBUyxDQUFDOzs7Ozs7QUFPL0IsTUFBTSxPQUFPLHVCQUF1QjtJQW1CbEMsWUFBMkIsUUFBb0IsRUFBVSxPQUFlO1FBQTdDLGFBQVEsR0FBUixRQUFRLENBQVk7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBaEI5RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQU16QyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFVixnQkFBVyxHQUFHLFFBQVEsQ0FBQztRQUkvQixtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUd6QixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFoQkQsSUFBYSxLQUFLLENBQUMsR0FBVztRQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFnQk0sUUFBUTtRQUNiLHlDQUF5QztRQUN6QyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNsQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDaEI7UUFDSCxDQUFDLEVBQUUs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QUM7WUFDakQsSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsT0FBTyxPQUFPLENBQUM7YUFDaEI7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7cUhBcEhVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLGlOQ2hCcEMsOGdCQWNBOzRGREVhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxnQkFBZ0I7c0hBS2pCLElBQUk7c0JBQVosS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNO2dCQUVNLEtBQUs7c0JBQWpCLEtBQUs7Z0JBSUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVVLFdBQVc7c0JBQTFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uL3V0aWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd6ZW4tc2VhcmNoLWJveCcsXG4gIHRlbXBsYXRlVXJsOiAnLi96ZW5kdS1zZWFyY2gtYm94LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vemVuZHUtc2VhcmNoLWJveC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBaZW5kdVNlYXJjaEJveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHRleHQ6IHN0cmluZztcblxuICBAT3V0cHV0KCkgdGV4dENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBJbnB1dCgpIHNldCBkZWxheSh2YWw6IG51bWJlcikge1xuICAgIHRoaXMuc2V0RGVsYXkodmFsKTtcbiAgfVxuXG4gIEBJbnB1dCgpIGF1dG9Gb2N1cyA9IHRydWU7XG5cbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXIgPSAnU2VhcmNoJztcblxuICBwcml2YXRlIF9kZWJvdW5jZWRJbnZva2UhOiAoKSA9PiB2b2lkO1xuXG4gIHByaXZhdGUgX2ZvY3VzQXR0ZW1wdHMgPSAwO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50OiBFbGVtZW50UmVmLCBwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSkge1xuICAgIHRoaXMuc2V0RGVsYXkoNTAwKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBnaXZlIDEwMG1zIGZvciBhdXRvRm9jdXMgaW5pdGFsaXphdGlvblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuYXV0b0ZvY3VzKSB7XG4gICAgICAgIHRoaXMuZG9Gb2N1cygpO1xuICAgICAgfVxuICAgIH0sIDEwMCk7XG4gIH1cblxuICBwdWJsaWMgb25DaGFuZ2UoKSB7XG4gICAgdGhpcy5fZGVib3VuY2VkSW52b2tlKCk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJGcm9tUGFyZW50KCkge1xuICAgIHRoaXMudGV4dCA9ICcnO1xuICB9XG5cbiAgcHVibGljIGNsZWFyKCkge1xuICAgIHRoaXMudGV4dCA9ICcnO1xuICAgIHRoaXMuX2RlYm91bmNlZEludm9rZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnZva2VDaGFuZ2UoKSB7XG4gICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB7XG4gICAgICB0aGlzLnRleHRDaGFuZ2UuZW1pdCh0aGlzLnRleHQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREZWxheShkZWxheTogbnVtYmVyKSB7XG4gICAgdGhpcy5fZGVib3VuY2VkSW52b2tlID0gVXRpbC5kZWJvdW5jZSgoKSA9PiB7XG4gICAgICB0aGlzLmludm9rZUNoYW5nZSgpO1xuICAgIH0sIGRlbGF5KTtcbiAgfVxuXG4gIHB1YmxpYyBkb0ZvY3VzKCkge1xuICAgIHRoaXMuX2ZvY3VzQXR0ZW1wdHMrKztcbiAgICBpZiAodGhpcy5fZm9jdXNBdHRlbXB0cyA+IDEwMCkge1xuICAgICAgLy8gc3RvcCBhdHRlbXB0cyB0byBpbml0YWxpemVcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuZ2V0SW5wdXQodGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgICBpZiAoIWlucHV0KSB7XG4gICAgICAvLyB3YWl0IDEwMG1zIHRvIHJ1biB0aGUgbmV4dCBjaGVja1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuZG9Gb2N1cygpO1xuICAgICAgfSwgMTAwKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gY2hlY2sgaWYgZWxlbWVudCB2aXNpYmxlIG9yIG5vdFxuICAgIGNvbnN0IGhlaWdodCA9IGlucHV0LmNsaWVudEhlaWdodDtcbiAgICBpZiAoaGVpZ2h0ID09IDApIHtcbiAgICAgIC8vIHdhaXQgMTAwbXMgdG8gcnVuIHRoZSBuZXh0IGNoZWNrXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5kb0ZvY3VzKCk7XG4gICAgICB9LCAxMDApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIHNldCBmb2N1cyB0byBlbGVtZW50XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpbnB1dC5mb2N1cygpO1xuICAgIH0sIDEpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJbnB1dChlbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgaWYgKCFlbGVtZW50KSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgaWYgKGVsZW1lbnQubm9kZU5hbWUgPT0gJ0lOUFVUJykge1xuICAgICAgcmV0dXJuIGVsZW1lbnQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpZHggPSAwOyBpZHggPCBlbGVtZW50LmNoaWxkcmVuLmxlbmd0aDsgaWR4KyspIHtcbiAgICAgIGNvbnN0IGVsID0gZWxlbWVudC5jaGlsZHJlbi5pdGVtKGlkeCk7XG4gICAgICBpZiAoZWwgJiYgZWwubm9kZU5hbWUgPT0gJ0lOUFVUJykge1xuICAgICAgICByZXR1cm4gZWwgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBmaW5kIGlucHV0IGluIHRoZSBjaGlsZHJlbiB0cmVlXG4gICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgZWxlbWVudC5jaGlsZHJlbi5sZW5ndGg7IGlkeCsrKSB7XG4gICAgICBjb25zdCBlbCA9IGVsZW1lbnQuY2hpbGRyZW4uaXRlbShpZHgpO1xuICAgICAgaWYgKCFlbCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGVsSW5wdXQgPSB0aGlzLmdldElucHV0KGVsIGFzIEhUTUxFbGVtZW50KTtcbiAgICAgIGlmIChlbElucHV0KSB7XG4gICAgICAgIHJldHVybiBlbElucHV0O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2VhcmNoLWJveC1jb21wb25lbnRcIlxuICAgICBbY2xhc3MuaGFzLXRleHRdPVwidGV4dFwiPlxuICAgPHplbi1pbnB1dCBbKG5nTW9kZWwpXT1cInRleHRcIlxuICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICBsZWFkaW5nSWNvbj1cInNlYXJjaFwiXG4gICAgICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hhbmdlKClcIj5cbiAgIDwvemVuLWlucHV0PlxuICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBjbG9zZS1pY29uXCJcbiAgICAgICpuZ0lmPVwidGV4dFwiXG4gICAgICAobW91c2Vkb3duKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAoY2xpY2spPVwiY2xlYXIoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+Y2xvc2U8L2k+XG48L2Rpdj5cbiJdfQ==
|