@progress/kendo-angular-inputs 15.0.2-develop.1 → 15.0.2-develop.11
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/maskedtextbox/maskedtextbox.component.mjs +21 -14
- package/esm2020/package-metadata.mjs +2 -2
- package/esm2020/textbox/textbox.component.mjs +21 -30
- package/fesm2015/progress-kendo-angular-inputs.mjs +43 -45
- package/fesm2020/progress-kendo-angular-inputs.mjs +43 -45
- package/maskedtextbox/maskedtextbox.component.d.ts +2 -2
- package/package.json +10 -10
- package/textbox/textbox.component.d.ts +12 -5
|
@@ -199,6 +199,8 @@ export class MaskedTextBoxComponent {
|
|
|
199
199
|
this.handleClick = () => {
|
|
200
200
|
if (this.focused && !this.focusClick) {
|
|
201
201
|
this.focusClick = true;
|
|
202
|
+
}
|
|
203
|
+
if (this.promptPlaceholder === null || this.promptPlaceholder === '') {
|
|
202
204
|
const { selectionStart, selectionEnd } = this.input.nativeElement;
|
|
203
205
|
if (selectionStart === selectionEnd) {
|
|
204
206
|
this.setFocusSelection();
|
|
@@ -217,10 +219,14 @@ export class MaskedTextBoxComponent {
|
|
|
217
219
|
}
|
|
218
220
|
if (hasObservers(this.onBlur)) {
|
|
219
221
|
this.ngZone.run(() => {
|
|
220
|
-
this.onTouched();
|
|
221
222
|
this.onBlur.emit();
|
|
222
223
|
});
|
|
223
224
|
}
|
|
225
|
+
this.ngZone.run(() => {
|
|
226
|
+
if (this.control) {
|
|
227
|
+
this.control && !this.control.touched && this.onTouched();
|
|
228
|
+
}
|
|
229
|
+
});
|
|
224
230
|
};
|
|
225
231
|
/**
|
|
226
232
|
* @hidden
|
|
@@ -229,7 +235,6 @@ export class MaskedTextBoxComponent {
|
|
|
229
235
|
this.changeDetector.markForCheck();
|
|
230
236
|
if (hasObservers(this.inputBlur) || requiresZoneOnBlur(this.control)) {
|
|
231
237
|
this.ngZone.run(() => {
|
|
232
|
-
this.onTouched();
|
|
233
238
|
this.inputBlur.emit();
|
|
234
239
|
});
|
|
235
240
|
}
|
|
@@ -412,19 +417,19 @@ export class MaskedTextBoxComponent {
|
|
|
412
417
|
*/
|
|
413
418
|
ngOnChanges(changes) {
|
|
414
419
|
if (changes['value']) {
|
|
415
|
-
this.value = this.normalizeValue();
|
|
420
|
+
this.value = this.normalizeValue(this.value);
|
|
416
421
|
}
|
|
422
|
+
const next = this.extractChanges(changes);
|
|
423
|
+
this.updateService(next);
|
|
417
424
|
if (!this.mask) {
|
|
418
425
|
this.updateInput(this.value);
|
|
419
426
|
return;
|
|
420
427
|
}
|
|
421
|
-
const next = this.extractChanges(changes);
|
|
422
|
-
this.updateService(next);
|
|
423
428
|
const maskedValue = this.service.maskRaw(this.value);
|
|
424
429
|
this.updateInput(maskedValue, null, true);
|
|
425
430
|
if (changes['includeLiterals'] || isChanged('promptPlaceholder', changes)) {
|
|
426
431
|
resolvedPromise.then(() => {
|
|
427
|
-
this.updateValueWithEvents(this.maskedValue);
|
|
432
|
+
this.updateValueWithEvents(this.maskedValue, false);
|
|
428
433
|
});
|
|
429
434
|
}
|
|
430
435
|
}
|
|
@@ -436,7 +441,7 @@ export class MaskedTextBoxComponent {
|
|
|
436
441
|
this.value = this.normalizeValue(value);
|
|
437
442
|
this.updateInput(this.service.maskRaw(this.value));
|
|
438
443
|
if (this.includeLiterals) {
|
|
439
|
-
this.updateValue(this.maskedValue);
|
|
444
|
+
this.updateValue(this.maskedValue, false);
|
|
440
445
|
}
|
|
441
446
|
}
|
|
442
447
|
/**
|
|
@@ -489,25 +494,27 @@ export class MaskedTextBoxComponent {
|
|
|
489
494
|
* @hidden
|
|
490
495
|
*/
|
|
491
496
|
get isControlInvalid() {
|
|
492
|
-
return this.control && this.control.touched &&
|
|
497
|
+
return this.control && this.control.touched && this.control.invalid;
|
|
493
498
|
}
|
|
494
499
|
/**
|
|
495
500
|
* @hidden
|
|
496
501
|
*/
|
|
497
|
-
updateValueWithEvents(maskedValue) {
|
|
498
|
-
this.
|
|
499
|
-
|
|
502
|
+
updateValueWithEvents(maskedValue, callOnChange = true) {
|
|
503
|
+
const previousValue = this.value;
|
|
504
|
+
this.updateValue(maskedValue, callOnChange);
|
|
505
|
+
const valueChanged = this.value !== previousValue;
|
|
506
|
+
if (valueChanged && hasObservers(this.valueChange)) {
|
|
500
507
|
this.valueChange.emit(this.value);
|
|
501
508
|
}
|
|
502
509
|
}
|
|
503
|
-
updateValue(value) {
|
|
510
|
+
updateValue(value, callOnChange = true) {
|
|
504
511
|
if (this.mask && !this.service.validationValue(value) && !this.includeLiterals) {
|
|
505
512
|
this.value = '';
|
|
506
513
|
}
|
|
507
514
|
else {
|
|
508
515
|
this.value = this.service.rawValue(value);
|
|
509
516
|
}
|
|
510
|
-
this.onChange(this.value);
|
|
517
|
+
callOnChange && this.onChange(this.value);
|
|
511
518
|
}
|
|
512
519
|
updateInput(maskedValue = '', selection, isFromOnChanges) {
|
|
513
520
|
if (isFromOnChanges && maskedValue === this.maskedValue) {
|
|
@@ -573,7 +580,7 @@ export class MaskedTextBoxComponent {
|
|
|
573
580
|
this.isFocused = value;
|
|
574
581
|
}
|
|
575
582
|
}
|
|
576
|
-
normalizeValue(value
|
|
583
|
+
normalizeValue(value) {
|
|
577
584
|
const present = isPresent(value);
|
|
578
585
|
if (present && typeof value !== 'string') {
|
|
579
586
|
if (isDevMode()) {
|
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-inputs',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
13
|
-
version: '15.0.2-develop.
|
|
12
|
+
publishDate: 1708345495,
|
|
13
|
+
version: '15.0.2-develop.11',
|
|
14
14
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
15
15
|
};
|
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
6
6
|
import { isJapanese } from './../shared/utils';
|
|
7
7
|
import { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';
|
|
8
|
-
import { Component, ElementRef, forwardRef, Input, Output, EventEmitter, HostBinding, ViewChild, NgZone, ChangeDetectorRef, Injector, ContentChild, Renderer2
|
|
8
|
+
import { Component, ElementRef, forwardRef, Input, Output, EventEmitter, HostBinding, ViewChild, NgZone, ChangeDetectorRef, Injector, ContentChild, Renderer2 } from '@angular/core';
|
|
9
9
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
10
10
|
import { packageMetadata } from '../package-metadata';
|
|
11
11
|
import { invokeElementMethod } from '../common/dom-utils';
|
|
12
|
-
import { areSame, requiresZoneOnBlur, getStylingClasses
|
|
12
|
+
import { areSame, requiresZoneOnBlur, getStylingClasses } from '../common/utils';
|
|
13
13
|
import { guid, hasObservers, KendoInput, isSafari, SuffixTemplateDirective, PrefixTemplateDirective } from '@progress/kendo-angular-common';
|
|
14
14
|
import { TextBoxSuffixTemplateDirective } from './textbox-suffix.directive';
|
|
15
15
|
import { TextBoxPrefixTemplateDirective } from './textbox-prefix.directive';
|
|
@@ -304,9 +304,8 @@ export class TextBoxComponent {
|
|
|
304
304
|
});
|
|
305
305
|
}
|
|
306
306
|
ngAfterContentInit() {
|
|
307
|
-
this.
|
|
308
|
-
this.
|
|
309
|
-
this.subscriptions.add(this.textBoxSuffixTemplate.changes.subscribe(this.configureAdornments.bind(this)));
|
|
307
|
+
this.prefix = this.textBoxPrefixTemplate || this.prefixTemplate;
|
|
308
|
+
this.suffix = this.textBoxSuffixTemplate || this.suffixTemplate;
|
|
310
309
|
}
|
|
311
310
|
ngOnChanges(changes) {
|
|
312
311
|
if (changes['disabled'] || changes['readonly'] || changes['value']) {
|
|
@@ -584,14 +583,6 @@ export class TextBoxComponent {
|
|
|
584
583
|
this.renderer.addClass(elem, classes.toAdd);
|
|
585
584
|
}
|
|
586
585
|
}
|
|
587
|
-
configureAdornments() {
|
|
588
|
-
if (isPresent(this.textBoxPrefixTemplate.first)) {
|
|
589
|
-
this.prefixTemplate = this.textBoxPrefixTemplate.first;
|
|
590
|
-
}
|
|
591
|
-
if (isPresent(this.textBoxSuffixTemplate.first)) {
|
|
592
|
-
this.suffixTemplate = this.textBoxSuffixTemplate.first;
|
|
593
|
-
}
|
|
594
|
-
}
|
|
595
586
|
}
|
|
596
587
|
TextBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TextBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
597
588
|
TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: TextBoxComponent, selector: "kendo-textbox", inputs: { focusableId: "focusableId", title: "title", type: "type", disabled: "disabled", readonly: "readonly", tabindex: "tabindex", value: "value", selectOnFocus: "selectOnFocus", showSuccessIcon: "showSuccessIcon", showErrorIcon: "showErrorIcon", clearButton: "clearButton", successIcon: "successIcon", successSvgIcon: "successSvgIcon", errorIcon: "errorIcon", errorSvgIcon: "errorSvgIcon", clearButtonIcon: "clearButtonIcon", clearButtonSvgIcon: "clearButtonSvgIcon", size: "size", rounded: "rounded", fillMode: "fillMode", tabIndex: "tabIndex", placeholder: "placeholder", maxlength: "maxlength" }, outputs: { valueChange: "valueChange", inputFocus: "inputFocus", inputBlur: "inputBlur", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-disabled": "this.disabledClass", "class.k-textbox": "this.hostClasses", "class.k-input": "this.hostClasses", "attr.dir": "this.direction" } }, providers: [
|
|
@@ -603,7 +594,7 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
603
594
|
multi: true
|
|
604
595
|
},
|
|
605
596
|
{ provide: KendoInput, useExisting: forwardRef(() => TextBoxComponent) }
|
|
606
|
-
], queries: [{ propertyName: "
|
|
597
|
+
], queries: [{ propertyName: "textBoxSuffixTemplate", first: true, predicate: TextBoxSuffixTemplateDirective, descendants: true }, { propertyName: "textBoxPrefixTemplate", first: true, predicate: TextBoxPrefixTemplateDirective, descendants: true }, { propertyName: "suffixTemplate", first: true, predicate: SuffixTemplateDirective, descendants: true }, { propertyName: "prefixTemplate", first: true, predicate: PrefixTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }], exportAs: ["kendoTextBox"], usesOnChanges: true, ngImport: i0, template: `
|
|
607
598
|
<ng-container kendoTextBoxLocalizedMessages
|
|
608
599
|
i18n-clear="kendo.textbox.clear|The title for the **Clear** button in the TextBox."
|
|
609
600
|
clear="Clear">
|
|
@@ -616,11 +607,11 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
616
607
|
(onFocus)="handleFocus()"
|
|
617
608
|
[clearButtonClicked]="clearButtonClicked"
|
|
618
609
|
>
|
|
619
|
-
<span *ngIf="
|
|
620
|
-
<ng-template [ngTemplateOutlet]="
|
|
610
|
+
<span *ngIf="prefix" class="k-input-prefix k-input-prefix-horizontal">
|
|
611
|
+
<ng-template [ngTemplateOutlet]="prefix?.templateRef">
|
|
621
612
|
</ng-template>
|
|
622
613
|
</span>
|
|
623
|
-
<kendo-input-separator *ngIf="
|
|
614
|
+
<kendo-input-separator *ngIf="prefix && prefix.showSeparator"></kendo-input-separator>
|
|
624
615
|
<input #input
|
|
625
616
|
class="k-input-inner"
|
|
626
617
|
[id]="focusableId"
|
|
@@ -672,9 +663,9 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
672
663
|
[svgIcon]="successSvgIcon || svgIcon('checkIcon')"
|
|
673
664
|
>
|
|
674
665
|
</kendo-icon-wrapper>
|
|
675
|
-
<kendo-input-separator *ngIf="
|
|
676
|
-
<span *ngIf="
|
|
677
|
-
<ng-template [ngTemplateOutlet]="
|
|
666
|
+
<kendo-input-separator *ngIf="suffix && suffix.showSeparator"></kendo-input-separator>
|
|
667
|
+
<span *ngIf="suffix" class="k-input-suffix k-input-suffix-horizontal">
|
|
668
|
+
<ng-template [ngTemplateOutlet]="suffix?.templateRef">
|
|
678
669
|
</ng-template>
|
|
679
670
|
</span>
|
|
680
671
|
<ng-container>
|
|
@@ -707,11 +698,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
707
698
|
(onFocus)="handleFocus()"
|
|
708
699
|
[clearButtonClicked]="clearButtonClicked"
|
|
709
700
|
>
|
|
710
|
-
<span *ngIf="
|
|
711
|
-
<ng-template [ngTemplateOutlet]="
|
|
701
|
+
<span *ngIf="prefix" class="k-input-prefix k-input-prefix-horizontal">
|
|
702
|
+
<ng-template [ngTemplateOutlet]="prefix?.templateRef">
|
|
712
703
|
</ng-template>
|
|
713
704
|
</span>
|
|
714
|
-
<kendo-input-separator *ngIf="
|
|
705
|
+
<kendo-input-separator *ngIf="prefix && prefix.showSeparator"></kendo-input-separator>
|
|
715
706
|
<input #input
|
|
716
707
|
class="k-input-inner"
|
|
717
708
|
[id]="focusableId"
|
|
@@ -763,9 +754,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
763
754
|
[svgIcon]="successSvgIcon || svgIcon('checkIcon')"
|
|
764
755
|
>
|
|
765
756
|
</kendo-icon-wrapper>
|
|
766
|
-
<kendo-input-separator *ngIf="
|
|
767
|
-
<span *ngIf="
|
|
768
|
-
<ng-template [ngTemplateOutlet]="
|
|
757
|
+
<kendo-input-separator *ngIf="suffix && suffix.showSeparator"></kendo-input-separator>
|
|
758
|
+
<span *ngIf="suffix" class="k-input-suffix k-input-suffix-horizontal">
|
|
759
|
+
<ng-template [ngTemplateOutlet]="suffix?.templateRef">
|
|
769
760
|
</ng-template>
|
|
770
761
|
</span>
|
|
771
762
|
<ng-container>
|
|
@@ -833,11 +824,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
833
824
|
type: ViewChild,
|
|
834
825
|
args: ['input', { static: true }]
|
|
835
826
|
}], textBoxSuffixTemplate: [{
|
|
836
|
-
type:
|
|
837
|
-
args: [TextBoxSuffixTemplateDirective
|
|
827
|
+
type: ContentChild,
|
|
828
|
+
args: [TextBoxSuffixTemplateDirective]
|
|
838
829
|
}], textBoxPrefixTemplate: [{
|
|
839
|
-
type:
|
|
840
|
-
args: [TextBoxPrefixTemplateDirective
|
|
830
|
+
type: ContentChild,
|
|
831
|
+
args: [TextBoxPrefixTemplateDirective]
|
|
841
832
|
}], suffixTemplate: [{
|
|
842
833
|
type: ContentChild,
|
|
843
834
|
args: [SuffixTemplateDirective]
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { isDevMode, Directive, Optional, EventEmitter, ElementRef, Component, Input, Output, HostBinding, ViewChild, ContentChild, ViewChildren, forwardRef, Inject, Injectable, HostListener, NgModule,
|
|
6
|
+
import { isDevMode, Directive, Optional, EventEmitter, ElementRef, Component, Input, Output, HostBinding, ViewChild, ContentChild, ViewChildren, forwardRef, Inject, Injectable, HostListener, NgModule, ViewContainerRef, ContentChildren, ChangeDetectionStrategy } from '@angular/core';
|
|
7
7
|
import { NgControl, NG_VALUE_ACCESSOR, NG_VALIDATORS, RadioControlValueAccessor } from '@angular/forms';
|
|
8
8
|
import { Subscription, fromEvent, interval, merge, BehaviorSubject, Subject } from 'rxjs';
|
|
9
9
|
import { take, filter, concatMap, startWith, takeUntil, skip, debounceTime, throttleTime } from 'rxjs/operators';
|
|
@@ -538,8 +538,8 @@ const packageMetadata = {
|
|
|
538
538
|
name: '@progress/kendo-angular-inputs',
|
|
539
539
|
productName: 'Kendo UI for Angular',
|
|
540
540
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
541
|
-
publishDate:
|
|
542
|
-
version: '15.0.2-develop.
|
|
541
|
+
publishDate: 1708345495,
|
|
542
|
+
version: '15.0.2-develop.11',
|
|
543
543
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
544
544
|
};
|
|
545
545
|
|
|
@@ -5430,6 +5430,8 @@ class MaskedTextBoxComponent {
|
|
|
5430
5430
|
this.handleClick = () => {
|
|
5431
5431
|
if (this.focused && !this.focusClick) {
|
|
5432
5432
|
this.focusClick = true;
|
|
5433
|
+
}
|
|
5434
|
+
if (this.promptPlaceholder === null || this.promptPlaceholder === '') {
|
|
5433
5435
|
const { selectionStart, selectionEnd } = this.input.nativeElement;
|
|
5434
5436
|
if (selectionStart === selectionEnd) {
|
|
5435
5437
|
this.setFocusSelection();
|
|
@@ -5448,10 +5450,14 @@ class MaskedTextBoxComponent {
|
|
|
5448
5450
|
}
|
|
5449
5451
|
if (hasObservers(this.onBlur)) {
|
|
5450
5452
|
this.ngZone.run(() => {
|
|
5451
|
-
this.onTouched();
|
|
5452
5453
|
this.onBlur.emit();
|
|
5453
5454
|
});
|
|
5454
5455
|
}
|
|
5456
|
+
this.ngZone.run(() => {
|
|
5457
|
+
if (this.control) {
|
|
5458
|
+
this.control && !this.control.touched && this.onTouched();
|
|
5459
|
+
}
|
|
5460
|
+
});
|
|
5455
5461
|
};
|
|
5456
5462
|
/**
|
|
5457
5463
|
* @hidden
|
|
@@ -5460,7 +5466,6 @@ class MaskedTextBoxComponent {
|
|
|
5460
5466
|
this.changeDetector.markForCheck();
|
|
5461
5467
|
if (hasObservers(this.inputBlur) || requiresZoneOnBlur(this.control)) {
|
|
5462
5468
|
this.ngZone.run(() => {
|
|
5463
|
-
this.onTouched();
|
|
5464
5469
|
this.inputBlur.emit();
|
|
5465
5470
|
});
|
|
5466
5471
|
}
|
|
@@ -5643,19 +5648,19 @@ class MaskedTextBoxComponent {
|
|
|
5643
5648
|
*/
|
|
5644
5649
|
ngOnChanges(changes) {
|
|
5645
5650
|
if (changes['value']) {
|
|
5646
|
-
this.value = this.normalizeValue();
|
|
5651
|
+
this.value = this.normalizeValue(this.value);
|
|
5647
5652
|
}
|
|
5653
|
+
const next = this.extractChanges(changes);
|
|
5654
|
+
this.updateService(next);
|
|
5648
5655
|
if (!this.mask) {
|
|
5649
5656
|
this.updateInput(this.value);
|
|
5650
5657
|
return;
|
|
5651
5658
|
}
|
|
5652
|
-
const next = this.extractChanges(changes);
|
|
5653
|
-
this.updateService(next);
|
|
5654
5659
|
const maskedValue = this.service.maskRaw(this.value);
|
|
5655
5660
|
this.updateInput(maskedValue, null, true);
|
|
5656
5661
|
if (changes['includeLiterals'] || isChanged('promptPlaceholder', changes)) {
|
|
5657
5662
|
resolvedPromise.then(() => {
|
|
5658
|
-
this.updateValueWithEvents(this.maskedValue);
|
|
5663
|
+
this.updateValueWithEvents(this.maskedValue, false);
|
|
5659
5664
|
});
|
|
5660
5665
|
}
|
|
5661
5666
|
}
|
|
@@ -5667,7 +5672,7 @@ class MaskedTextBoxComponent {
|
|
|
5667
5672
|
this.value = this.normalizeValue(value);
|
|
5668
5673
|
this.updateInput(this.service.maskRaw(this.value));
|
|
5669
5674
|
if (this.includeLiterals) {
|
|
5670
|
-
this.updateValue(this.maskedValue);
|
|
5675
|
+
this.updateValue(this.maskedValue, false);
|
|
5671
5676
|
}
|
|
5672
5677
|
}
|
|
5673
5678
|
/**
|
|
@@ -5720,25 +5725,27 @@ class MaskedTextBoxComponent {
|
|
|
5720
5725
|
* @hidden
|
|
5721
5726
|
*/
|
|
5722
5727
|
get isControlInvalid() {
|
|
5723
|
-
return this.control && this.control.touched &&
|
|
5728
|
+
return this.control && this.control.touched && this.control.invalid;
|
|
5724
5729
|
}
|
|
5725
5730
|
/**
|
|
5726
5731
|
* @hidden
|
|
5727
5732
|
*/
|
|
5728
|
-
updateValueWithEvents(maskedValue) {
|
|
5729
|
-
this.
|
|
5730
|
-
|
|
5733
|
+
updateValueWithEvents(maskedValue, callOnChange = true) {
|
|
5734
|
+
const previousValue = this.value;
|
|
5735
|
+
this.updateValue(maskedValue, callOnChange);
|
|
5736
|
+
const valueChanged = this.value !== previousValue;
|
|
5737
|
+
if (valueChanged && hasObservers(this.valueChange)) {
|
|
5731
5738
|
this.valueChange.emit(this.value);
|
|
5732
5739
|
}
|
|
5733
5740
|
}
|
|
5734
|
-
updateValue(value) {
|
|
5741
|
+
updateValue(value, callOnChange = true) {
|
|
5735
5742
|
if (this.mask && !this.service.validationValue(value) && !this.includeLiterals) {
|
|
5736
5743
|
this.value = '';
|
|
5737
5744
|
}
|
|
5738
5745
|
else {
|
|
5739
5746
|
this.value = this.service.rawValue(value);
|
|
5740
5747
|
}
|
|
5741
|
-
this.onChange(this.value);
|
|
5748
|
+
callOnChange && this.onChange(this.value);
|
|
5742
5749
|
}
|
|
5743
5750
|
updateInput(maskedValue = '', selection, isFromOnChanges) {
|
|
5744
5751
|
if (isFromOnChanges && maskedValue === this.maskedValue) {
|
|
@@ -5804,7 +5811,7 @@ class MaskedTextBoxComponent {
|
|
|
5804
5811
|
this.isFocused = value;
|
|
5805
5812
|
}
|
|
5806
5813
|
}
|
|
5807
|
-
normalizeValue(value
|
|
5814
|
+
normalizeValue(value) {
|
|
5808
5815
|
const present = isPresent(value);
|
|
5809
5816
|
if (present && typeof value !== 'string') {
|
|
5810
5817
|
if (isDevMode()) {
|
|
@@ -6940,9 +6947,8 @@ class TextBoxComponent {
|
|
|
6940
6947
|
});
|
|
6941
6948
|
}
|
|
6942
6949
|
ngAfterContentInit() {
|
|
6943
|
-
this.
|
|
6944
|
-
this.
|
|
6945
|
-
this.subscriptions.add(this.textBoxSuffixTemplate.changes.subscribe(this.configureAdornments.bind(this)));
|
|
6950
|
+
this.prefix = this.textBoxPrefixTemplate || this.prefixTemplate;
|
|
6951
|
+
this.suffix = this.textBoxSuffixTemplate || this.suffixTemplate;
|
|
6946
6952
|
}
|
|
6947
6953
|
ngOnChanges(changes) {
|
|
6948
6954
|
if (changes['disabled'] || changes['readonly'] || changes['value']) {
|
|
@@ -7220,14 +7226,6 @@ class TextBoxComponent {
|
|
|
7220
7226
|
this.renderer.addClass(elem, classes.toAdd);
|
|
7221
7227
|
}
|
|
7222
7228
|
}
|
|
7223
|
-
configureAdornments() {
|
|
7224
|
-
if (isPresent(this.textBoxPrefixTemplate.first)) {
|
|
7225
|
-
this.prefixTemplate = this.textBoxPrefixTemplate.first;
|
|
7226
|
-
}
|
|
7227
|
-
if (isPresent(this.textBoxSuffixTemplate.first)) {
|
|
7228
|
-
this.suffixTemplate = this.textBoxSuffixTemplate.first;
|
|
7229
|
-
}
|
|
7230
|
-
}
|
|
7231
7229
|
}
|
|
7232
7230
|
TextBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TextBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7233
7231
|
TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: TextBoxComponent, selector: "kendo-textbox", inputs: { focusableId: "focusableId", title: "title", type: "type", disabled: "disabled", readonly: "readonly", tabindex: "tabindex", value: "value", selectOnFocus: "selectOnFocus", showSuccessIcon: "showSuccessIcon", showErrorIcon: "showErrorIcon", clearButton: "clearButton", successIcon: "successIcon", successSvgIcon: "successSvgIcon", errorIcon: "errorIcon", errorSvgIcon: "errorSvgIcon", clearButtonIcon: "clearButtonIcon", clearButtonSvgIcon: "clearButtonSvgIcon", size: "size", rounded: "rounded", fillMode: "fillMode", tabIndex: "tabIndex", placeholder: "placeholder", maxlength: "maxlength" }, outputs: { valueChange: "valueChange", inputFocus: "inputFocus", inputBlur: "inputBlur", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-disabled": "this.disabledClass", "class.k-textbox": "this.hostClasses", "class.k-input": "this.hostClasses", "attr.dir": "this.direction" } }, providers: [
|
|
@@ -7239,7 +7237,7 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
7239
7237
|
multi: true
|
|
7240
7238
|
},
|
|
7241
7239
|
{ provide: KendoInput, useExisting: forwardRef(() => TextBoxComponent) }
|
|
7242
|
-
], queries: [{ propertyName: "
|
|
7240
|
+
], queries: [{ propertyName: "textBoxSuffixTemplate", first: true, predicate: TextBoxSuffixTemplateDirective, descendants: true }, { propertyName: "textBoxPrefixTemplate", first: true, predicate: TextBoxPrefixTemplateDirective, descendants: true }, { propertyName: "suffixTemplate", first: true, predicate: SuffixTemplateDirective, descendants: true }, { propertyName: "prefixTemplate", first: true, predicate: PrefixTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }], exportAs: ["kendoTextBox"], usesOnChanges: true, ngImport: i0, template: `
|
|
7243
7241
|
<ng-container kendoTextBoxLocalizedMessages
|
|
7244
7242
|
i18n-clear="kendo.textbox.clear|The title for the **Clear** button in the TextBox."
|
|
7245
7243
|
clear="Clear">
|
|
@@ -7252,11 +7250,11 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
7252
7250
|
(onFocus)="handleFocus()"
|
|
7253
7251
|
[clearButtonClicked]="clearButtonClicked"
|
|
7254
7252
|
>
|
|
7255
|
-
<span *ngIf="
|
|
7256
|
-
<ng-template [ngTemplateOutlet]="
|
|
7253
|
+
<span *ngIf="prefix" class="k-input-prefix k-input-prefix-horizontal">
|
|
7254
|
+
<ng-template [ngTemplateOutlet]="prefix?.templateRef">
|
|
7257
7255
|
</ng-template>
|
|
7258
7256
|
</span>
|
|
7259
|
-
<kendo-input-separator *ngIf="
|
|
7257
|
+
<kendo-input-separator *ngIf="prefix && prefix.showSeparator"></kendo-input-separator>
|
|
7260
7258
|
<input #input
|
|
7261
7259
|
class="k-input-inner"
|
|
7262
7260
|
[id]="focusableId"
|
|
@@ -7308,9 +7306,9 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
7308
7306
|
[svgIcon]="successSvgIcon || svgIcon('checkIcon')"
|
|
7309
7307
|
>
|
|
7310
7308
|
</kendo-icon-wrapper>
|
|
7311
|
-
<kendo-input-separator *ngIf="
|
|
7312
|
-
<span *ngIf="
|
|
7313
|
-
<ng-template [ngTemplateOutlet]="
|
|
7309
|
+
<kendo-input-separator *ngIf="suffix && suffix.showSeparator"></kendo-input-separator>
|
|
7310
|
+
<span *ngIf="suffix" class="k-input-suffix k-input-suffix-horizontal">
|
|
7311
|
+
<ng-template [ngTemplateOutlet]="suffix?.templateRef">
|
|
7314
7312
|
</ng-template>
|
|
7315
7313
|
</span>
|
|
7316
7314
|
<ng-container>
|
|
@@ -7343,11 +7341,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7343
7341
|
(onFocus)="handleFocus()"
|
|
7344
7342
|
[clearButtonClicked]="clearButtonClicked"
|
|
7345
7343
|
>
|
|
7346
|
-
<span *ngIf="
|
|
7347
|
-
<ng-template [ngTemplateOutlet]="
|
|
7344
|
+
<span *ngIf="prefix" class="k-input-prefix k-input-prefix-horizontal">
|
|
7345
|
+
<ng-template [ngTemplateOutlet]="prefix?.templateRef">
|
|
7348
7346
|
</ng-template>
|
|
7349
7347
|
</span>
|
|
7350
|
-
<kendo-input-separator *ngIf="
|
|
7348
|
+
<kendo-input-separator *ngIf="prefix && prefix.showSeparator"></kendo-input-separator>
|
|
7351
7349
|
<input #input
|
|
7352
7350
|
class="k-input-inner"
|
|
7353
7351
|
[id]="focusableId"
|
|
@@ -7399,9 +7397,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7399
7397
|
[svgIcon]="successSvgIcon || svgIcon('checkIcon')"
|
|
7400
7398
|
>
|
|
7401
7399
|
</kendo-icon-wrapper>
|
|
7402
|
-
<kendo-input-separator *ngIf="
|
|
7403
|
-
<span *ngIf="
|
|
7404
|
-
<ng-template [ngTemplateOutlet]="
|
|
7400
|
+
<kendo-input-separator *ngIf="suffix && suffix.showSeparator"></kendo-input-separator>
|
|
7401
|
+
<span *ngIf="suffix" class="k-input-suffix k-input-suffix-horizontal">
|
|
7402
|
+
<ng-template [ngTemplateOutlet]="suffix?.templateRef">
|
|
7405
7403
|
</ng-template>
|
|
7406
7404
|
</span>
|
|
7407
7405
|
<ng-container>
|
|
@@ -7469,11 +7467,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7469
7467
|
type: ViewChild,
|
|
7470
7468
|
args: ['input', { static: true }]
|
|
7471
7469
|
}], textBoxSuffixTemplate: [{
|
|
7472
|
-
type:
|
|
7473
|
-
args: [TextBoxSuffixTemplateDirective
|
|
7470
|
+
type: ContentChild,
|
|
7471
|
+
args: [TextBoxSuffixTemplateDirective]
|
|
7474
7472
|
}], textBoxPrefixTemplate: [{
|
|
7475
|
-
type:
|
|
7476
|
-
args: [TextBoxPrefixTemplateDirective
|
|
7473
|
+
type: ContentChild,
|
|
7474
|
+
args: [TextBoxPrefixTemplateDirective]
|
|
7477
7475
|
}], suffixTemplate: [{
|
|
7478
7476
|
type: ContentChild,
|
|
7479
7477
|
args: [SuffixTemplateDirective]
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { isDevMode, Directive, Optional, EventEmitter, ElementRef, Component, Input, Output, HostBinding, ViewChild, ContentChild, ViewChildren, forwardRef, Inject, Injectable, HostListener, NgModule,
|
|
6
|
+
import { isDevMode, Directive, Optional, EventEmitter, ElementRef, Component, Input, Output, HostBinding, ViewChild, ContentChild, ViewChildren, forwardRef, Inject, Injectable, HostListener, NgModule, ViewContainerRef, ContentChildren, ChangeDetectionStrategy } from '@angular/core';
|
|
7
7
|
import { NgControl, NG_VALUE_ACCESSOR, NG_VALIDATORS, RadioControlValueAccessor } from '@angular/forms';
|
|
8
8
|
import { Subscription, fromEvent, interval, merge, BehaviorSubject, Subject } from 'rxjs';
|
|
9
9
|
import { take, filter, concatMap, startWith, takeUntil, skip, debounceTime, throttleTime } from 'rxjs/operators';
|
|
@@ -537,8 +537,8 @@ const packageMetadata = {
|
|
|
537
537
|
name: '@progress/kendo-angular-inputs',
|
|
538
538
|
productName: 'Kendo UI for Angular',
|
|
539
539
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
540
|
-
publishDate:
|
|
541
|
-
version: '15.0.2-develop.
|
|
540
|
+
publishDate: 1708345495,
|
|
541
|
+
version: '15.0.2-develop.11',
|
|
542
542
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
543
543
|
};
|
|
544
544
|
|
|
@@ -5423,6 +5423,8 @@ class MaskedTextBoxComponent {
|
|
|
5423
5423
|
this.handleClick = () => {
|
|
5424
5424
|
if (this.focused && !this.focusClick) {
|
|
5425
5425
|
this.focusClick = true;
|
|
5426
|
+
}
|
|
5427
|
+
if (this.promptPlaceholder === null || this.promptPlaceholder === '') {
|
|
5426
5428
|
const { selectionStart, selectionEnd } = this.input.nativeElement;
|
|
5427
5429
|
if (selectionStart === selectionEnd) {
|
|
5428
5430
|
this.setFocusSelection();
|
|
@@ -5441,10 +5443,14 @@ class MaskedTextBoxComponent {
|
|
|
5441
5443
|
}
|
|
5442
5444
|
if (hasObservers(this.onBlur)) {
|
|
5443
5445
|
this.ngZone.run(() => {
|
|
5444
|
-
this.onTouched();
|
|
5445
5446
|
this.onBlur.emit();
|
|
5446
5447
|
});
|
|
5447
5448
|
}
|
|
5449
|
+
this.ngZone.run(() => {
|
|
5450
|
+
if (this.control) {
|
|
5451
|
+
this.control && !this.control.touched && this.onTouched();
|
|
5452
|
+
}
|
|
5453
|
+
});
|
|
5448
5454
|
};
|
|
5449
5455
|
/**
|
|
5450
5456
|
* @hidden
|
|
@@ -5453,7 +5459,6 @@ class MaskedTextBoxComponent {
|
|
|
5453
5459
|
this.changeDetector.markForCheck();
|
|
5454
5460
|
if (hasObservers(this.inputBlur) || requiresZoneOnBlur(this.control)) {
|
|
5455
5461
|
this.ngZone.run(() => {
|
|
5456
|
-
this.onTouched();
|
|
5457
5462
|
this.inputBlur.emit();
|
|
5458
5463
|
});
|
|
5459
5464
|
}
|
|
@@ -5636,19 +5641,19 @@ class MaskedTextBoxComponent {
|
|
|
5636
5641
|
*/
|
|
5637
5642
|
ngOnChanges(changes) {
|
|
5638
5643
|
if (changes['value']) {
|
|
5639
|
-
this.value = this.normalizeValue();
|
|
5644
|
+
this.value = this.normalizeValue(this.value);
|
|
5640
5645
|
}
|
|
5646
|
+
const next = this.extractChanges(changes);
|
|
5647
|
+
this.updateService(next);
|
|
5641
5648
|
if (!this.mask) {
|
|
5642
5649
|
this.updateInput(this.value);
|
|
5643
5650
|
return;
|
|
5644
5651
|
}
|
|
5645
|
-
const next = this.extractChanges(changes);
|
|
5646
|
-
this.updateService(next);
|
|
5647
5652
|
const maskedValue = this.service.maskRaw(this.value);
|
|
5648
5653
|
this.updateInput(maskedValue, null, true);
|
|
5649
5654
|
if (changes['includeLiterals'] || isChanged('promptPlaceholder', changes)) {
|
|
5650
5655
|
resolvedPromise.then(() => {
|
|
5651
|
-
this.updateValueWithEvents(this.maskedValue);
|
|
5656
|
+
this.updateValueWithEvents(this.maskedValue, false);
|
|
5652
5657
|
});
|
|
5653
5658
|
}
|
|
5654
5659
|
}
|
|
@@ -5660,7 +5665,7 @@ class MaskedTextBoxComponent {
|
|
|
5660
5665
|
this.value = this.normalizeValue(value);
|
|
5661
5666
|
this.updateInput(this.service.maskRaw(this.value));
|
|
5662
5667
|
if (this.includeLiterals) {
|
|
5663
|
-
this.updateValue(this.maskedValue);
|
|
5668
|
+
this.updateValue(this.maskedValue, false);
|
|
5664
5669
|
}
|
|
5665
5670
|
}
|
|
5666
5671
|
/**
|
|
@@ -5713,25 +5718,27 @@ class MaskedTextBoxComponent {
|
|
|
5713
5718
|
* @hidden
|
|
5714
5719
|
*/
|
|
5715
5720
|
get isControlInvalid() {
|
|
5716
|
-
return this.control && this.control.touched &&
|
|
5721
|
+
return this.control && this.control.touched && this.control.invalid;
|
|
5717
5722
|
}
|
|
5718
5723
|
/**
|
|
5719
5724
|
* @hidden
|
|
5720
5725
|
*/
|
|
5721
|
-
updateValueWithEvents(maskedValue) {
|
|
5722
|
-
this.
|
|
5723
|
-
|
|
5726
|
+
updateValueWithEvents(maskedValue, callOnChange = true) {
|
|
5727
|
+
const previousValue = this.value;
|
|
5728
|
+
this.updateValue(maskedValue, callOnChange);
|
|
5729
|
+
const valueChanged = this.value !== previousValue;
|
|
5730
|
+
if (valueChanged && hasObservers(this.valueChange)) {
|
|
5724
5731
|
this.valueChange.emit(this.value);
|
|
5725
5732
|
}
|
|
5726
5733
|
}
|
|
5727
|
-
updateValue(value) {
|
|
5734
|
+
updateValue(value, callOnChange = true) {
|
|
5728
5735
|
if (this.mask && !this.service.validationValue(value) && !this.includeLiterals) {
|
|
5729
5736
|
this.value = '';
|
|
5730
5737
|
}
|
|
5731
5738
|
else {
|
|
5732
5739
|
this.value = this.service.rawValue(value);
|
|
5733
5740
|
}
|
|
5734
|
-
this.onChange(this.value);
|
|
5741
|
+
callOnChange && this.onChange(this.value);
|
|
5735
5742
|
}
|
|
5736
5743
|
updateInput(maskedValue = '', selection, isFromOnChanges) {
|
|
5737
5744
|
if (isFromOnChanges && maskedValue === this.maskedValue) {
|
|
@@ -5797,7 +5804,7 @@ class MaskedTextBoxComponent {
|
|
|
5797
5804
|
this.isFocused = value;
|
|
5798
5805
|
}
|
|
5799
5806
|
}
|
|
5800
|
-
normalizeValue(value
|
|
5807
|
+
normalizeValue(value) {
|
|
5801
5808
|
const present = isPresent(value);
|
|
5802
5809
|
if (present && typeof value !== 'string') {
|
|
5803
5810
|
if (isDevMode()) {
|
|
@@ -6927,9 +6934,8 @@ class TextBoxComponent {
|
|
|
6927
6934
|
});
|
|
6928
6935
|
}
|
|
6929
6936
|
ngAfterContentInit() {
|
|
6930
|
-
this.
|
|
6931
|
-
this.
|
|
6932
|
-
this.subscriptions.add(this.textBoxSuffixTemplate.changes.subscribe(this.configureAdornments.bind(this)));
|
|
6937
|
+
this.prefix = this.textBoxPrefixTemplate || this.prefixTemplate;
|
|
6938
|
+
this.suffix = this.textBoxSuffixTemplate || this.suffixTemplate;
|
|
6933
6939
|
}
|
|
6934
6940
|
ngOnChanges(changes) {
|
|
6935
6941
|
if (changes['disabled'] || changes['readonly'] || changes['value']) {
|
|
@@ -7207,14 +7213,6 @@ class TextBoxComponent {
|
|
|
7207
7213
|
this.renderer.addClass(elem, classes.toAdd);
|
|
7208
7214
|
}
|
|
7209
7215
|
}
|
|
7210
|
-
configureAdornments() {
|
|
7211
|
-
if (isPresent(this.textBoxPrefixTemplate.first)) {
|
|
7212
|
-
this.prefixTemplate = this.textBoxPrefixTemplate.first;
|
|
7213
|
-
}
|
|
7214
|
-
if (isPresent(this.textBoxSuffixTemplate.first)) {
|
|
7215
|
-
this.suffixTemplate = this.textBoxSuffixTemplate.first;
|
|
7216
|
-
}
|
|
7217
|
-
}
|
|
7218
7216
|
}
|
|
7219
7217
|
TextBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TextBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7220
7218
|
TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: TextBoxComponent, selector: "kendo-textbox", inputs: { focusableId: "focusableId", title: "title", type: "type", disabled: "disabled", readonly: "readonly", tabindex: "tabindex", value: "value", selectOnFocus: "selectOnFocus", showSuccessIcon: "showSuccessIcon", showErrorIcon: "showErrorIcon", clearButton: "clearButton", successIcon: "successIcon", successSvgIcon: "successSvgIcon", errorIcon: "errorIcon", errorSvgIcon: "errorSvgIcon", clearButtonIcon: "clearButtonIcon", clearButtonSvgIcon: "clearButtonSvgIcon", size: "size", rounded: "rounded", fillMode: "fillMode", tabIndex: "tabIndex", placeholder: "placeholder", maxlength: "maxlength" }, outputs: { valueChange: "valueChange", inputFocus: "inputFocus", inputBlur: "inputBlur", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-disabled": "this.disabledClass", "class.k-textbox": "this.hostClasses", "class.k-input": "this.hostClasses", "attr.dir": "this.direction" } }, providers: [
|
|
@@ -7226,7 +7224,7 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
7226
7224
|
multi: true
|
|
7227
7225
|
},
|
|
7228
7226
|
{ provide: KendoInput, useExisting: forwardRef(() => TextBoxComponent) }
|
|
7229
|
-
], queries: [{ propertyName: "
|
|
7227
|
+
], queries: [{ propertyName: "textBoxSuffixTemplate", first: true, predicate: TextBoxSuffixTemplateDirective, descendants: true }, { propertyName: "textBoxPrefixTemplate", first: true, predicate: TextBoxPrefixTemplateDirective, descendants: true }, { propertyName: "suffixTemplate", first: true, predicate: SuffixTemplateDirective, descendants: true }, { propertyName: "prefixTemplate", first: true, predicate: PrefixTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }], exportAs: ["kendoTextBox"], usesOnChanges: true, ngImport: i0, template: `
|
|
7230
7228
|
<ng-container kendoTextBoxLocalizedMessages
|
|
7231
7229
|
i18n-clear="kendo.textbox.clear|The title for the **Clear** button in the TextBox."
|
|
7232
7230
|
clear="Clear">
|
|
@@ -7239,11 +7237,11 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
7239
7237
|
(onFocus)="handleFocus()"
|
|
7240
7238
|
[clearButtonClicked]="clearButtonClicked"
|
|
7241
7239
|
>
|
|
7242
|
-
<span *ngIf="
|
|
7243
|
-
<ng-template [ngTemplateOutlet]="
|
|
7240
|
+
<span *ngIf="prefix" class="k-input-prefix k-input-prefix-horizontal">
|
|
7241
|
+
<ng-template [ngTemplateOutlet]="prefix?.templateRef">
|
|
7244
7242
|
</ng-template>
|
|
7245
7243
|
</span>
|
|
7246
|
-
<kendo-input-separator *ngIf="
|
|
7244
|
+
<kendo-input-separator *ngIf="prefix && prefix.showSeparator"></kendo-input-separator>
|
|
7247
7245
|
<input #input
|
|
7248
7246
|
class="k-input-inner"
|
|
7249
7247
|
[id]="focusableId"
|
|
@@ -7295,9 +7293,9 @@ TextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
7295
7293
|
[svgIcon]="successSvgIcon || svgIcon('checkIcon')"
|
|
7296
7294
|
>
|
|
7297
7295
|
</kendo-icon-wrapper>
|
|
7298
|
-
<kendo-input-separator *ngIf="
|
|
7299
|
-
<span *ngIf="
|
|
7300
|
-
<ng-template [ngTemplateOutlet]="
|
|
7296
|
+
<kendo-input-separator *ngIf="suffix && suffix.showSeparator"></kendo-input-separator>
|
|
7297
|
+
<span *ngIf="suffix" class="k-input-suffix k-input-suffix-horizontal">
|
|
7298
|
+
<ng-template [ngTemplateOutlet]="suffix?.templateRef">
|
|
7301
7299
|
</ng-template>
|
|
7302
7300
|
</span>
|
|
7303
7301
|
<ng-container>
|
|
@@ -7330,11 +7328,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7330
7328
|
(onFocus)="handleFocus()"
|
|
7331
7329
|
[clearButtonClicked]="clearButtonClicked"
|
|
7332
7330
|
>
|
|
7333
|
-
<span *ngIf="
|
|
7334
|
-
<ng-template [ngTemplateOutlet]="
|
|
7331
|
+
<span *ngIf="prefix" class="k-input-prefix k-input-prefix-horizontal">
|
|
7332
|
+
<ng-template [ngTemplateOutlet]="prefix?.templateRef">
|
|
7335
7333
|
</ng-template>
|
|
7336
7334
|
</span>
|
|
7337
|
-
<kendo-input-separator *ngIf="
|
|
7335
|
+
<kendo-input-separator *ngIf="prefix && prefix.showSeparator"></kendo-input-separator>
|
|
7338
7336
|
<input #input
|
|
7339
7337
|
class="k-input-inner"
|
|
7340
7338
|
[id]="focusableId"
|
|
@@ -7386,9 +7384,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7386
7384
|
[svgIcon]="successSvgIcon || svgIcon('checkIcon')"
|
|
7387
7385
|
>
|
|
7388
7386
|
</kendo-icon-wrapper>
|
|
7389
|
-
<kendo-input-separator *ngIf="
|
|
7390
|
-
<span *ngIf="
|
|
7391
|
-
<ng-template [ngTemplateOutlet]="
|
|
7387
|
+
<kendo-input-separator *ngIf="suffix && suffix.showSeparator"></kendo-input-separator>
|
|
7388
|
+
<span *ngIf="suffix" class="k-input-suffix k-input-suffix-horizontal">
|
|
7389
|
+
<ng-template [ngTemplateOutlet]="suffix?.templateRef">
|
|
7392
7390
|
</ng-template>
|
|
7393
7391
|
</span>
|
|
7394
7392
|
<ng-container>
|
|
@@ -7456,11 +7454,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7456
7454
|
type: ViewChild,
|
|
7457
7455
|
args: ['input', { static: true }]
|
|
7458
7456
|
}], textBoxSuffixTemplate: [{
|
|
7459
|
-
type:
|
|
7460
|
-
args: [TextBoxSuffixTemplateDirective
|
|
7457
|
+
type: ContentChild,
|
|
7458
|
+
args: [TextBoxSuffixTemplateDirective]
|
|
7461
7459
|
}], textBoxPrefixTemplate: [{
|
|
7462
|
-
type:
|
|
7463
|
-
args: [TextBoxPrefixTemplateDirective
|
|
7460
|
+
type: ContentChild,
|
|
7461
|
+
args: [TextBoxPrefixTemplateDirective]
|
|
7464
7462
|
}], suffixTemplate: [{
|
|
7465
7463
|
type: ContentChild,
|
|
7466
7464
|
args: [SuffixTemplateDirective]
|
|
@@ -313,7 +313,7 @@ export declare class MaskedTextBoxComponent implements ControlValueAccessor, OnC
|
|
|
313
313
|
/**
|
|
314
314
|
* @hidden
|
|
315
315
|
*/
|
|
316
|
-
validate(_
|
|
316
|
+
validate(_?: AbstractControl): any;
|
|
317
317
|
/**
|
|
318
318
|
* @hidden
|
|
319
319
|
*/
|
|
@@ -321,7 +321,7 @@ export declare class MaskedTextBoxComponent implements ControlValueAccessor, OnC
|
|
|
321
321
|
/**
|
|
322
322
|
* @hidden
|
|
323
323
|
*/
|
|
324
|
-
updateValueWithEvents(maskedValue: string): void;
|
|
324
|
+
updateValueWithEvents(maskedValue: string, callOnChange?: boolean): void;
|
|
325
325
|
protected onChange: (_: any) => void;
|
|
326
326
|
protected onTouched: () => void;
|
|
327
327
|
private updateValue;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-inputs",
|
|
3
|
-
"version": "15.0.2-develop.
|
|
3
|
+
"version": "15.0.2-develop.11",
|
|
4
4
|
"description": "Kendo UI for Angular Inputs Package - Everything you need to build professional form functionality (Checkbox, ColorGradient, ColorPalette, ColorPicker, FlatColorPicker, FormField, MaskedTextBox, NumericTextBox, RadioButton, RangeSlider, Slider, Switch, TextArea, and TextBox Components)",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -34,19 +34,19 @@
|
|
|
34
34
|
"@angular/platform-browser": "13 - 17",
|
|
35
35
|
"@progress/kendo-drawing": "^1.19.0",
|
|
36
36
|
"@progress/kendo-licensing": "^1.0.2",
|
|
37
|
-
"@progress/kendo-angular-buttons": "15.0.2-develop.
|
|
38
|
-
"@progress/kendo-angular-common": "15.0.2-develop.
|
|
39
|
-
"@progress/kendo-angular-dialog": "15.0.2-develop.
|
|
40
|
-
"@progress/kendo-angular-intl": "15.0.2-develop.
|
|
41
|
-
"@progress/kendo-angular-l10n": "15.0.2-develop.
|
|
42
|
-
"@progress/kendo-angular-popup": "15.0.2-develop.
|
|
43
|
-
"@progress/kendo-angular-icons": "15.0.2-develop.
|
|
37
|
+
"@progress/kendo-angular-buttons": "15.0.2-develop.11",
|
|
38
|
+
"@progress/kendo-angular-common": "15.0.2-develop.11",
|
|
39
|
+
"@progress/kendo-angular-dialog": "15.0.2-develop.11",
|
|
40
|
+
"@progress/kendo-angular-intl": "15.0.2-develop.11",
|
|
41
|
+
"@progress/kendo-angular-l10n": "15.0.2-develop.11",
|
|
42
|
+
"@progress/kendo-angular-popup": "15.0.2-develop.11",
|
|
43
|
+
"@progress/kendo-angular-icons": "15.0.2-develop.11",
|
|
44
44
|
"rxjs": "^6.5.3 || ^7.0.0",
|
|
45
|
-
"@progress/kendo-angular-upload": "15.0.2-develop.
|
|
45
|
+
"@progress/kendo-angular-upload": "15.0.2-develop.11"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
48
|
"tslib": "^2.3.1",
|
|
49
|
-
"@progress/kendo-angular-schematics": "15.0.2-develop.
|
|
49
|
+
"@progress/kendo-angular-schematics": "15.0.2-develop.11",
|
|
50
50
|
"@progress/kendo-common": "^0.2.2",
|
|
51
51
|
"@progress/kendo-draggable": "^3.0.0",
|
|
52
52
|
"@progress/kendo-inputs-common": "^3.1.0"
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { Subscription } from 'rxjs';
|
|
6
6
|
import { ControlValueAccessor, NgControl } from '@angular/forms';
|
|
7
|
-
import { ElementRef, EventEmitter, NgZone, ChangeDetectorRef, Injector, Renderer2, SimpleChanges
|
|
7
|
+
import { ElementRef, EventEmitter, NgZone, ChangeDetectorRef, Injector, Renderer2, SimpleChanges } from '@angular/core';
|
|
8
8
|
import { IconShowOptions } from './models/icon-show-options';
|
|
9
9
|
import { SuffixTemplateDirective, PrefixTemplateDirective } from '@progress/kendo-angular-common';
|
|
10
10
|
import { TextBoxSuffixTemplateDirective } from './textbox-suffix.directive';
|
|
@@ -230,11 +230,11 @@ export declare class TextBoxComponent implements ControlValueAccessor {
|
|
|
230
230
|
/**
|
|
231
231
|
* @hidden
|
|
232
232
|
*/
|
|
233
|
-
textBoxSuffixTemplate:
|
|
233
|
+
textBoxSuffixTemplate: TextBoxSuffixTemplateDirective;
|
|
234
234
|
/**
|
|
235
235
|
* @hidden
|
|
236
236
|
*/
|
|
237
|
-
textBoxPrefixTemplate:
|
|
237
|
+
textBoxPrefixTemplate: TextBoxPrefixTemplateDirective;
|
|
238
238
|
/**
|
|
239
239
|
* @hidden
|
|
240
240
|
*/
|
|
@@ -254,6 +254,14 @@ export declare class TextBoxComponent implements ControlValueAccessor {
|
|
|
254
254
|
* @hidden
|
|
255
255
|
*/
|
|
256
256
|
clearButtonClicked: boolean;
|
|
257
|
+
/**
|
|
258
|
+
* @hidden
|
|
259
|
+
*/
|
|
260
|
+
suffix: TextBoxSuffixTemplateDirective | SuffixTemplateDirective;
|
|
261
|
+
/**
|
|
262
|
+
* @hidden
|
|
263
|
+
*/
|
|
264
|
+
prefix: TextBoxPrefixTemplateDirective | PrefixTemplateDirective;
|
|
257
265
|
protected control: NgControl;
|
|
258
266
|
protected subscriptions: Subscription;
|
|
259
267
|
private _isFocused;
|
|
@@ -401,7 +409,6 @@ export declare class TextBoxComponent implements ControlValueAccessor {
|
|
|
401
409
|
*/
|
|
402
410
|
handleBlur(): void;
|
|
403
411
|
private handleClasses;
|
|
404
|
-
private configureAdornments;
|
|
405
412
|
static ɵfac: i0.ɵɵFactoryDeclaration<TextBoxComponent, never>;
|
|
406
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TextBoxComponent, "kendo-textbox", ["kendoTextBox"], { "focusableId": "focusableId"; "title": "title"; "type": "type"; "disabled": "disabled"; "readonly": "readonly"; "tabindex": "tabindex"; "value": "value"; "selectOnFocus": "selectOnFocus"; "showSuccessIcon": "showSuccessIcon"; "showErrorIcon": "showErrorIcon"; "clearButton": "clearButton"; "successIcon": "successIcon"; "successSvgIcon": "successSvgIcon"; "errorIcon": "errorIcon"; "errorSvgIcon": "errorSvgIcon"; "clearButtonIcon": "clearButtonIcon"; "clearButtonSvgIcon": "clearButtonSvgIcon"; "size": "size"; "rounded": "rounded"; "fillMode": "fillMode"; "tabIndex": "tabIndex"; "placeholder": "placeholder"; "maxlength": "maxlength"; }, { "valueChange": "valueChange"; "inputFocus": "inputFocus"; "inputBlur": "inputBlur"; "onFocus": "focus"; "onBlur": "blur"; }, ["
|
|
413
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TextBoxComponent, "kendo-textbox", ["kendoTextBox"], { "focusableId": "focusableId"; "title": "title"; "type": "type"; "disabled": "disabled"; "readonly": "readonly"; "tabindex": "tabindex"; "value": "value"; "selectOnFocus": "selectOnFocus"; "showSuccessIcon": "showSuccessIcon"; "showErrorIcon": "showErrorIcon"; "clearButton": "clearButton"; "successIcon": "successIcon"; "successSvgIcon": "successSvgIcon"; "errorIcon": "errorIcon"; "errorSvgIcon": "errorSvgIcon"; "clearButtonIcon": "clearButtonIcon"; "clearButtonSvgIcon": "clearButtonSvgIcon"; "size": "size"; "rounded": "rounded"; "fillMode": "fillMode"; "tabIndex": "tabIndex"; "placeholder": "placeholder"; "maxlength": "maxlength"; }, { "valueChange": "valueChange"; "inputFocus": "inputFocus"; "inputBlur": "inputBlur"; "onFocus": "focus"; "onBlur": "blur"; }, ["textBoxSuffixTemplate", "textBoxPrefixTemplate", "suffixTemplate", "prefixTemplate"], never>;
|
|
407
414
|
}
|