@progress/kendo-angular-inputs 7.5.1 → 8.0.0-dev.202112211528
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/dist/cdn/js/kendo-angular-inputs.js +2 -2
- package/dist/cdn/main.js +1 -1
- package/dist/es/checkbox/checkbox.directive.js +79 -3
- package/dist/es/colorpicker/color-contrast-svg.component.js +95 -0
- package/dist/es/colorpicker/color-gradient.component.js +109 -81
- package/dist/es/colorpicker/color-input.component.js +39 -18
- package/dist/es/colorpicker/color-palette.component.js +28 -18
- package/dist/es/colorpicker/colorpicker.component.js +279 -80
- package/dist/es/colorpicker/constants.js +12 -0
- package/dist/es/colorpicker/contrast-validation.component.js +8 -6
- package/dist/es/colorpicker/contrast.component.js +6 -8
- package/dist/es/colorpicker/{models → events}/active-color-click-event.js +0 -0
- package/dist/es/colorpicker/events/cancel-event.js +19 -0
- package/dist/es/colorpicker/events/close-event.js +17 -0
- package/dist/es/colorpicker/{models → events}/kendo-drag-event.js +0 -0
- package/dist/es/colorpicker/events/open-event.js +17 -0
- package/dist/es/colorpicker/events.js +8 -0
- package/dist/es/colorpicker/flatcolorpicker-actions.component.js +50 -0
- package/dist/es/colorpicker/flatcolorpicker-header.component.js +94 -0
- package/dist/es/colorpicker/flatcolorpicker.component.js +553 -0
- package/dist/es/colorpicker/localization/colorgradient-localization.service.js +7 -7
- package/dist/es/colorpicker/localization/colorpalette-localization.service.js +7 -7
- package/dist/es/colorpicker/localization/custom-messages.component.js +1 -1
- package/dist/es/colorpicker/localization/flatcolorpicker-localization.service.js +34 -0
- package/dist/es/colorpicker/localization/localized-colorpicker-messages.directive.js +1 -1
- package/dist/es/colorpicker/localization/messages.js +36 -0
- package/dist/es/colorpicker/models/{color-picker-view.js → actions-layout.js} +0 -0
- package/dist/{es2015/colorpicker/models/color-picker-view.js → es/colorpicker/models/colorpicker-view.js} +0 -0
- package/dist/es/colorpicker/{utils → models}/palette-presets.js +0 -0
- package/dist/es/colorpicker/models.js +1 -2
- package/dist/es/colorpicker/services/flatcolorpicker.service.js +41 -0
- package/dist/es/colorpicker/utils/color-parser.js +18 -5
- package/dist/es/colorpicker/utils/contrast-curve.js +91 -0
- package/dist/es/colorpicker/utils.js +1 -1
- package/dist/es/colorpicker.module.js +9 -1
- package/dist/es/common/models/fillmode.js +4 -0
- package/dist/es/common/models/rounded.js +4 -0
- package/dist/es/common/models/size.js +4 -0
- package/dist/es/common/models/styling-classes.js +4 -0
- package/dist/{es2015/colorpicker/models/kendo-drag-event.js → es/common/models.js} +0 -0
- package/dist/es/common/utils.js +37 -0
- package/dist/es/index.js +5 -0
- package/dist/es/main.js +4 -2
- package/dist/es/maskedtextbox/maskedtextbox.component.js +101 -6
- package/dist/es/numerictextbox/numerictextbox.component.js +116 -20
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/radiobutton/radiobutton.directive.js +52 -3
- package/dist/es/shared/textarea.directive.js +3 -2
- package/dist/es/shared/utils.js +23 -0
- package/dist/es/switch/switch.component.js +167 -21
- package/dist/es/text-fields-common/text-fields-base.js +1 -1
- package/dist/es/textarea/textarea.component.js +101 -5
- package/dist/es/textbox/textbox.component.js +111 -12
- package/dist/es/textbox/textbox.directive.js +3 -2
- package/dist/es/textbox.module.js +0 -3
- package/dist/es2015/checkbox/checkbox.directive.d.ts +31 -0
- package/dist/es2015/checkbox/checkbox.directive.js +68 -10
- package/dist/es2015/colorpicker/color-contrast-svg.component.d.ts +26 -0
- package/dist/es2015/colorpicker/color-contrast-svg.component.js +97 -0
- package/dist/es2015/colorpicker/color-gradient.component.d.ts +32 -43
- package/dist/es2015/colorpicker/color-gradient.component.js +126 -93
- package/dist/es2015/colorpicker/color-input.component.d.ts +11 -4
- package/dist/es2015/colorpicker/color-input.component.js +52 -32
- package/dist/es2015/colorpicker/color-palette.component.d.ts +8 -3
- package/dist/es2015/colorpicker/color-palette.component.js +28 -18
- package/dist/es2015/colorpicker/colorpicker.component.d.ts +127 -25
- package/dist/es2015/colorpicker/colorpicker.component.js +305 -125
- package/dist/es2015/colorpicker/constants.d.ts +12 -0
- package/dist/es2015/colorpicker/constants.js +12 -0
- package/dist/es2015/colorpicker/contrast-validation.component.d.ts +1 -1
- package/dist/es2015/colorpicker/contrast-validation.component.js +16 -12
- package/dist/es2015/colorpicker/contrast.component.d.ts +1 -3
- package/dist/es2015/colorpicker/contrast.component.js +17 -17
- package/dist/es2015/colorpicker/{models → events}/active-color-click-event.d.ts +0 -0
- package/dist/es2015/colorpicker/{models → events}/active-color-click-event.js +0 -0
- package/dist/es2015/colorpicker/events/cancel-event.d.ts +15 -0
- package/dist/es2015/colorpicker/events/cancel-event.js +14 -0
- package/dist/es2015/colorpicker/events/close-event.d.ts +10 -0
- package/dist/es2015/colorpicker/events/close-event.js +10 -0
- package/dist/es2015/colorpicker/{models → events}/kendo-drag-event.d.ts +0 -0
- package/dist/es2015/colorpicker/events/kendo-drag-event.js +4 -0
- package/dist/es2015/colorpicker/events/open-event.d.ts +10 -0
- package/dist/es2015/colorpicker/events/open-event.js +10 -0
- package/dist/es2015/colorpicker/events.d.ts +8 -0
- package/dist/es2015/colorpicker/events.js +8 -0
- package/dist/es2015/colorpicker/flatcolorpicker-actions.component.d.ts +18 -0
- package/dist/es2015/colorpicker/flatcolorpicker-actions.component.js +60 -0
- package/dist/es2015/colorpicker/flatcolorpicker-header.component.d.ts +30 -0
- package/dist/es2015/colorpicker/flatcolorpicker-header.component.js +131 -0
- package/dist/es2015/colorpicker/flatcolorpicker.component.d.ts +214 -0
- package/dist/es2015/colorpicker/flatcolorpicker.component.js +593 -0
- package/dist/es2015/colorpicker/localization/colorgradient-localization.service.d.ts +3 -3
- package/dist/es2015/colorpicker/localization/colorgradient-localization.service.js +7 -7
- package/dist/es2015/colorpicker/localization/colorpalette-localization.service.d.ts +3 -3
- package/dist/es2015/colorpicker/localization/colorpalette-localization.service.js +7 -7
- package/dist/es2015/colorpicker/localization/custom-messages.component.js +1 -1
- package/dist/es2015/colorpicker/localization/flatcolorpicker-localization.service.d.ts +14 -0
- package/dist/es2015/colorpicker/localization/flatcolorpicker-localization.service.js +31 -0
- package/dist/es2015/colorpicker/localization/localized-colorpicker-messages.directive.js +1 -1
- package/dist/es2015/colorpicker/localization/messages.d.ts +36 -0
- package/dist/es2015/colorpicker/localization/messages.js +36 -0
- package/dist/es2015/colorpicker/models/actions-layout.d.ts +8 -0
- package/dist/es2015/colorpicker/models/actions-layout.js +4 -0
- package/dist/es2015/colorpicker/models/colorpicker-view.d.ts +8 -0
- package/dist/es2015/colorpicker/models/colorpicker-view.js +4 -0
- package/dist/es2015/colorpicker/models/gradient-settings.d.ts +4 -3
- package/dist/es2015/colorpicker/models/output-format.d.ts +0 -5
- package/dist/es2015/colorpicker/{utils → models}/palette-presets.d.ts +0 -0
- package/dist/es2015/colorpicker/{utils → models}/palette-presets.js +0 -0
- package/dist/es2015/colorpicker/models/palette-settings.d.ts +2 -3
- package/dist/es2015/colorpicker/models/tile-size.d.ts +1 -5
- package/dist/es2015/colorpicker/models.d.ts +10 -10
- package/dist/es2015/colorpicker/models.js +1 -2
- package/dist/es2015/colorpicker/services/flatcolorpicker.service.d.ts +12 -0
- package/dist/es2015/colorpicker/services/flatcolorpicker.service.js +38 -0
- package/dist/es2015/colorpicker/utils/color-parser.d.ts +8 -2
- package/dist/es2015/colorpicker/utils/color-parser.js +15 -5
- package/dist/es2015/colorpicker/utils/contrast-curve.d.ts +37 -0
- package/dist/es2015/colorpicker/utils/contrast-curve.js +85 -0
- package/dist/es2015/colorpicker/utils.d.ts +1 -1
- package/dist/es2015/colorpicker/utils.js +1 -1
- package/dist/es2015/colorpicker.module.js +9 -1
- package/dist/es2015/{colorpicker/models/color-picker-view.d.ts → common/models/fillmode.d.ts} +5 -5
- package/dist/es2015/common/models/fillmode.js +4 -0
- package/dist/es2015/common/models/rounded.d.ts +23 -0
- package/dist/es2015/common/models/rounded.js +4 -0
- package/dist/es2015/common/models/size.d.ts +14 -0
- package/dist/es2015/common/models/size.js +4 -0
- package/dist/es2015/common/models/styling-classes.d.ts +11 -0
- package/dist/es2015/common/models/styling-classes.js +4 -0
- package/dist/es2015/common/models.d.ts +8 -0
- package/dist/es2015/common/models.js +4 -0
- package/dist/es2015/common/utils.d.ts +7 -0
- package/dist/es2015/common/utils.js +37 -0
- package/dist/es2015/index.d.ts +5 -0
- package/dist/es2015/index.js +5 -0
- package/dist/es2015/index.metadata.json +1 -1
- package/dist/es2015/main.d.ts +5 -2
- package/dist/es2015/main.js +4 -2
- package/dist/es2015/maskedtextbox/maskedtextbox.component.d.ts +39 -1
- package/dist/es2015/maskedtextbox/maskedtextbox.component.js +88 -6
- package/dist/es2015/numerictextbox/numerictextbox.component.d.ts +39 -2
- package/dist/es2015/numerictextbox/numerictextbox.component.js +124 -40
- package/dist/es2015/package-metadata.js +1 -1
- package/dist/es2015/radiobutton/radiobutton.directive.d.ts +18 -0
- package/dist/es2015/radiobutton/radiobutton.directive.js +46 -11
- package/dist/es2015/shared/textarea.directive.d.ts +1 -1
- package/dist/es2015/shared/textarea.directive.js +3 -2
- package/dist/es2015/shared/utils.d.ts +16 -0
- package/dist/es2015/shared/utils.js +23 -0
- package/dist/es2015/switch/switch.component.d.ts +48 -5
- package/dist/es2015/switch/switch.component.js +166 -24
- package/dist/es2015/text-fields-common/text-fields-base.js +1 -1
- package/dist/es2015/textarea/textarea.component.d.ts +39 -1
- package/dist/es2015/textarea/textarea.component.js +89 -5
- package/dist/es2015/textbox/textbox.component.d.ts +40 -1
- package/dist/es2015/textbox/textbox.component.js +99 -12
- package/dist/es2015/textbox/textbox.directive.d.ts +1 -1
- package/dist/es2015/textbox/textbox.directive.js +3 -2
- package/dist/es2015/textbox.module.js +0 -3
- package/dist/fesm2015/index.js +3118 -1477
- package/dist/fesm5/index.js +3040 -1387
- package/dist/npm/checkbox/checkbox.directive.js +78 -2
- package/dist/npm/colorpicker/color-contrast-svg.component.js +97 -0
- package/dist/npm/colorpicker/color-gradient.component.js +109 -81
- package/dist/npm/colorpicker/color-input.component.js +38 -17
- package/dist/npm/colorpicker/color-palette.component.js +29 -19
- package/dist/npm/colorpicker/colorpicker.component.js +285 -86
- package/dist/npm/colorpicker/constants.js +12 -0
- package/dist/npm/colorpicker/contrast-validation.component.js +8 -6
- package/dist/npm/colorpicker/contrast.component.js +6 -8
- package/dist/npm/colorpicker/{models → events}/active-color-click-event.js +0 -0
- package/dist/npm/colorpicker/events/cancel-event.js +21 -0
- package/dist/npm/colorpicker/events/close-event.js +19 -0
- package/dist/npm/colorpicker/{models → events}/kendo-drag-event.js +0 -0
- package/dist/npm/colorpicker/events/open-event.js +19 -0
- package/dist/npm/colorpicker/events.js +11 -0
- package/dist/npm/colorpicker/flatcolorpicker-actions.component.js +52 -0
- package/dist/npm/colorpicker/flatcolorpicker-header.component.js +96 -0
- package/dist/npm/colorpicker/flatcolorpicker.component.js +555 -0
- package/dist/npm/colorpicker/localization/colorgradient-localization.service.js +7 -7
- package/dist/npm/colorpicker/localization/colorpalette-localization.service.js +7 -7
- package/dist/npm/colorpicker/localization/custom-messages.component.js +1 -1
- package/dist/npm/colorpicker/localization/flatcolorpicker-localization.service.js +36 -0
- package/dist/npm/colorpicker/localization/localized-colorpicker-messages.directive.js +1 -1
- package/dist/npm/colorpicker/localization/messages.js +36 -0
- package/dist/npm/colorpicker/models/{color-picker-view.js → actions-layout.js} +0 -0
- package/dist/npm/colorpicker/models/colorpicker-view.js +6 -0
- package/dist/npm/colorpicker/{utils → models}/palette-presets.js +0 -0
- package/dist/npm/colorpicker/models.js +1 -2
- package/dist/npm/colorpicker/services/flatcolorpicker.service.js +43 -0
- package/dist/npm/colorpicker/utils/color-parser.js +18 -5
- package/dist/npm/colorpicker/utils/contrast-curve.js +93 -0
- package/dist/npm/colorpicker/utils.js +1 -1
- package/dist/npm/colorpicker.module.js +9 -1
- package/dist/npm/common/models/fillmode.js +6 -0
- package/dist/npm/common/models/rounded.js +6 -0
- package/dist/npm/common/models/size.js +6 -0
- package/dist/npm/common/models/styling-classes.js +6 -0
- package/dist/npm/common/models.js +6 -0
- package/dist/npm/common/utils.js +37 -0
- package/dist/npm/index.js +10 -0
- package/dist/npm/main.js +7 -4
- package/dist/npm/maskedtextbox/maskedtextbox.component.js +100 -5
- package/dist/npm/numerictextbox/numerictextbox.component.js +115 -19
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/radiobutton/radiobutton.directive.js +51 -2
- package/dist/npm/shared/textarea.directive.js +3 -2
- package/dist/npm/shared/utils.js +25 -0
- package/dist/npm/switch/switch.component.js +166 -20
- package/dist/npm/text-fields-common/text-fields-base.js +1 -1
- package/dist/npm/textarea/textarea.component.js +100 -4
- package/dist/npm/textbox/textbox.component.js +113 -14
- package/dist/npm/textbox/textbox.directive.js +3 -2
- package/dist/npm/textbox.module.js +0 -3
- package/dist/systemjs/kendo-angular-inputs.js +1 -1
- package/package.json +15 -12
- package/dist/es/colorpicker/models/preventable-event.js +0 -29
- package/dist/es/textbox/floating-label-input-adapter.js +0 -58
- package/dist/es/textbox/textbox-container.component.js +0 -224
- package/dist/es2015/colorpicker/models/preventable-event.d.ts +0 -21
- package/dist/es2015/colorpicker/models/preventable-event.js +0 -27
- package/dist/es2015/textbox/floating-label-input-adapter.d.ts +0 -20
- package/dist/es2015/textbox/floating-label-input-adapter.js +0 -52
- package/dist/es2015/textbox/textbox-container.component.d.ts +0 -59
- package/dist/es2015/textbox/textbox-container.component.js +0 -209
- package/dist/npm/colorpicker/models/preventable-event.js +0 -31
- package/dist/npm/textbox/floating-label-input-adapter.js +0 -60
- package/dist/npm/textbox/textbox-container.component.js +0 -226
|
@@ -1,209 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import * as tslib_1 from "tslib";
|
|
6
|
-
import { ContentChild, Component, ElementRef, EventEmitter, HostBinding, Input, Inject, Optional, Renderer2, isDevMode, ChangeDetectorRef } from '@angular/core';
|
|
7
|
-
import { RTL } from '@progress/kendo-angular-l10n';
|
|
8
|
-
import { TextAreaDirective } from '../shared/textarea.directive';
|
|
9
|
-
import { NgControl } from '@angular/forms';
|
|
10
|
-
import { guid, KendoInput } from '@progress/kendo-angular-common';
|
|
11
|
-
import { FloatingLabelInputAdapter } from './floating-label-input-adapter';
|
|
12
|
-
const isFunction = (x) => Object.prototype.toString.call(x) === '[object Function]';
|
|
13
|
-
const ɵ0 = isFunction;
|
|
14
|
-
/**
|
|
15
|
-
* @hidden
|
|
16
|
-
*/
|
|
17
|
-
let TextBoxContainerComponent = class TextBoxContainerComponent {
|
|
18
|
-
constructor(elementRef, renderer, changeDetectorRef, rtl) {
|
|
19
|
-
this.elementRef = elementRef;
|
|
20
|
-
this.renderer = renderer;
|
|
21
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
22
|
-
/**
|
|
23
|
-
* @hidden
|
|
24
|
-
*/
|
|
25
|
-
this.focused = false;
|
|
26
|
-
/**
|
|
27
|
-
* @hidden
|
|
28
|
-
*/
|
|
29
|
-
this.empty = true;
|
|
30
|
-
/**
|
|
31
|
-
* @hidden
|
|
32
|
-
*/
|
|
33
|
-
this.invalid = false;
|
|
34
|
-
this._subscriptions = [];
|
|
35
|
-
this.autoFillStarted = false;
|
|
36
|
-
this.direction = rtl ? 'rtl' : 'ltr';
|
|
37
|
-
this.renderer.removeAttribute(this.elementRef.nativeElement, "id");
|
|
38
|
-
}
|
|
39
|
-
get hostClasses() {
|
|
40
|
-
return true;
|
|
41
|
-
}
|
|
42
|
-
get textareaElementClass() {
|
|
43
|
-
return !!this.textarea;
|
|
44
|
-
}
|
|
45
|
-
get focusedClass() {
|
|
46
|
-
return this.focused;
|
|
47
|
-
}
|
|
48
|
-
get invalidClass() {
|
|
49
|
-
return this.invalid;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* @hidden
|
|
53
|
-
*/
|
|
54
|
-
ngAfterContentInit() {
|
|
55
|
-
if (!this.formControl && !this.kendoInput) {
|
|
56
|
-
if (isDevMode()) {
|
|
57
|
-
throw new Error("The TextBoxContainer requires a Kendo Input component" +
|
|
58
|
-
" or a forms-bound component to function properly.");
|
|
59
|
-
}
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
// add focus/blur/valueChange handlers
|
|
63
|
-
const control = new FloatingLabelInputAdapter(this.kendoInput || this.formControl.valueAccessor, this.formControl);
|
|
64
|
-
const setFocus = (isFocused) => () => {
|
|
65
|
-
this.focused = isFocused;
|
|
66
|
-
this.updateState();
|
|
67
|
-
};
|
|
68
|
-
this.subscribe(control, 'onFocus', setFocus(true));
|
|
69
|
-
this.subscribe(control, 'onBlur', setFocus(false));
|
|
70
|
-
this.subscribe(control, 'autoFillStart', () => {
|
|
71
|
-
this.autoFillStarted = true;
|
|
72
|
-
this.renderer.removeClass(this.elementRef.nativeElement, 'k-state-empty');
|
|
73
|
-
});
|
|
74
|
-
this.subscribe(control, 'autoFillEnd', () => {
|
|
75
|
-
if (this.autoFillStarted) {
|
|
76
|
-
this.autoFillStarted = false;
|
|
77
|
-
if (this.empty) {
|
|
78
|
-
this.renderer.addClass(this.elementRef.nativeElement, 'k-state-empty');
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
const updateState = () => this.updateState();
|
|
83
|
-
updateState();
|
|
84
|
-
this.subscribe(control, 'onValueChange', updateState);
|
|
85
|
-
// set label id for floating label
|
|
86
|
-
if (this.id && control.focusableId) {
|
|
87
|
-
// input wins
|
|
88
|
-
this.id = control.focusableId;
|
|
89
|
-
}
|
|
90
|
-
else if (this.id) {
|
|
91
|
-
control.focusableId = this.id;
|
|
92
|
-
}
|
|
93
|
-
else if (control.focusableId) {
|
|
94
|
-
this.id = control.focusableId;
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
const id = "_" + guid();
|
|
98
|
-
control.focusableId = id;
|
|
99
|
-
this.id = id;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* @hidden
|
|
104
|
-
*/
|
|
105
|
-
ngOnDestroy() {
|
|
106
|
-
this._subscriptions.forEach(s => s.unsubscribe());
|
|
107
|
-
this._subscriptions = [];
|
|
108
|
-
}
|
|
109
|
-
subscribe(control, eventName, handler) {
|
|
110
|
-
if (control[eventName] instanceof EventEmitter) {
|
|
111
|
-
const subscription = control[eventName].subscribe(handler);
|
|
112
|
-
this._subscriptions.push(subscription);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
updateState() {
|
|
116
|
-
const empty = value => {
|
|
117
|
-
// zero is not an empty value (e.g., NumericTextBox)
|
|
118
|
-
if (value === 0 || value === false) {
|
|
119
|
-
return false;
|
|
120
|
-
}
|
|
121
|
-
// empty arrays are an empty value (e.g., MultiSelect)
|
|
122
|
-
if (Array.isArray(value) && !value.length) {
|
|
123
|
-
return true;
|
|
124
|
-
}
|
|
125
|
-
return !value;
|
|
126
|
-
};
|
|
127
|
-
const formControl = this.formControl;
|
|
128
|
-
if (formControl) {
|
|
129
|
-
const valueAccessor = formControl.valueAccessor;
|
|
130
|
-
if (isFunction(valueAccessor.isEmpty)) {
|
|
131
|
-
this.empty = valueAccessor.isEmpty();
|
|
132
|
-
}
|
|
133
|
-
else {
|
|
134
|
-
this.empty = empty(formControl.value);
|
|
135
|
-
}
|
|
136
|
-
this.invalid = formControl.invalid && (formControl.touched || formControl.dirty);
|
|
137
|
-
}
|
|
138
|
-
else {
|
|
139
|
-
this.empty = isFunction(this.kendoInput.isEmpty) ?
|
|
140
|
-
this.kendoInput.isEmpty() : empty(this.kendoInput.value);
|
|
141
|
-
}
|
|
142
|
-
if (this.empty) {
|
|
143
|
-
this.renderer.addClass(this.elementRef.nativeElement, 'k-state-empty');
|
|
144
|
-
}
|
|
145
|
-
else {
|
|
146
|
-
this.renderer.removeClass(this.elementRef.nativeElement, 'k-state-empty');
|
|
147
|
-
}
|
|
148
|
-
this.changeDetectorRef.markForCheck();
|
|
149
|
-
}
|
|
150
|
-
};
|
|
151
|
-
tslib_1.__decorate([
|
|
152
|
-
HostBinding('class.k-textbox-container'),
|
|
153
|
-
tslib_1.__metadata("design:type", Boolean),
|
|
154
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
155
|
-
], TextBoxContainerComponent.prototype, "hostClasses", null);
|
|
156
|
-
tslib_1.__decorate([
|
|
157
|
-
HostBinding('class.k-textarea-wrapper'),
|
|
158
|
-
tslib_1.__metadata("design:type", Boolean),
|
|
159
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
160
|
-
], TextBoxContainerComponent.prototype, "textareaElementClass", null);
|
|
161
|
-
tslib_1.__decorate([
|
|
162
|
-
HostBinding('class.k-state-focused'),
|
|
163
|
-
tslib_1.__metadata("design:type", Boolean),
|
|
164
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
165
|
-
], TextBoxContainerComponent.prototype, "focusedClass", null);
|
|
166
|
-
tslib_1.__decorate([
|
|
167
|
-
HostBinding('class.k-state-invalid'),
|
|
168
|
-
tslib_1.__metadata("design:type", Boolean),
|
|
169
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
170
|
-
], TextBoxContainerComponent.prototype, "invalidClass", null);
|
|
171
|
-
tslib_1.__decorate([
|
|
172
|
-
HostBinding('attr.dir'),
|
|
173
|
-
tslib_1.__metadata("design:type", String)
|
|
174
|
-
], TextBoxContainerComponent.prototype, "direction", void 0);
|
|
175
|
-
tslib_1.__decorate([
|
|
176
|
-
Input(),
|
|
177
|
-
tslib_1.__metadata("design:type", String)
|
|
178
|
-
], TextBoxContainerComponent.prototype, "id", void 0);
|
|
179
|
-
tslib_1.__decorate([
|
|
180
|
-
Input(),
|
|
181
|
-
tslib_1.__metadata("design:type", String)
|
|
182
|
-
], TextBoxContainerComponent.prototype, "floatingLabel", void 0);
|
|
183
|
-
tslib_1.__decorate([
|
|
184
|
-
ContentChild(KendoInput, { static: false }),
|
|
185
|
-
tslib_1.__metadata("design:type", Object)
|
|
186
|
-
], TextBoxContainerComponent.prototype, "kendoInput", void 0);
|
|
187
|
-
tslib_1.__decorate([
|
|
188
|
-
ContentChild(TextAreaDirective, { static: false }),
|
|
189
|
-
tslib_1.__metadata("design:type", TextAreaDirective)
|
|
190
|
-
], TextBoxContainerComponent.prototype, "textarea", void 0);
|
|
191
|
-
tslib_1.__decorate([
|
|
192
|
-
ContentChild(NgControl, { static: false }),
|
|
193
|
-
tslib_1.__metadata("design:type", NgControl)
|
|
194
|
-
], TextBoxContainerComponent.prototype, "formControl", void 0);
|
|
195
|
-
TextBoxContainerComponent = tslib_1.__decorate([
|
|
196
|
-
Component({
|
|
197
|
-
selector: 'kendo-textbox-container',
|
|
198
|
-
template: `
|
|
199
|
-
<ng-content></ng-content>
|
|
200
|
-
<label *ngIf="floatingLabel" [for]="id" class="k-label">{{ floatingLabel }}</label>
|
|
201
|
-
`
|
|
202
|
-
}),
|
|
203
|
-
tslib_1.__param(3, Optional()), tslib_1.__param(3, Inject(RTL)),
|
|
204
|
-
tslib_1.__metadata("design:paramtypes", [ElementRef,
|
|
205
|
-
Renderer2,
|
|
206
|
-
ChangeDetectorRef, Boolean])
|
|
207
|
-
], TextBoxContainerComponent);
|
|
208
|
-
export { TextBoxContainerComponent };
|
|
209
|
-
export { ɵ0 };
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
"use strict";
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
/**
|
|
8
|
-
* @hidden
|
|
9
|
-
*/
|
|
10
|
-
var PreventableEvent = /** @class */ (function () {
|
|
11
|
-
function PreventableEvent() {
|
|
12
|
-
this.prevented = false;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Prevents the default action for a specified event.
|
|
16
|
-
* In this way, the source component suppresses the built-in behavior that follows the event.
|
|
17
|
-
*/
|
|
18
|
-
PreventableEvent.prototype.preventDefault = function () {
|
|
19
|
-
this.prevented = true;
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* If the event is prevented by any of its subscribers, returns `true`.
|
|
23
|
-
*
|
|
24
|
-
* @returns - `true` if the default action was prevented. Otherwise, returns `false`.
|
|
25
|
-
*/
|
|
26
|
-
PreventableEvent.prototype.isDefaultPrevented = function () {
|
|
27
|
-
return this.prevented;
|
|
28
|
-
};
|
|
29
|
-
return PreventableEvent;
|
|
30
|
-
}());
|
|
31
|
-
exports.PreventableEvent = PreventableEvent;
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
"use strict";
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
var rxjs_1 = require("rxjs");
|
|
8
|
-
var core_1 = require("@angular/core");
|
|
9
|
-
/**
|
|
10
|
-
* @hidden
|
|
11
|
-
*/
|
|
12
|
-
var FloatingLabelInputAdapter = /** @class */ (function () {
|
|
13
|
-
function FloatingLabelInputAdapter(component, formControl) {
|
|
14
|
-
this.component = component;
|
|
15
|
-
var isObservableOrEventEmitter = function (event) { return event instanceof rxjs_1.Observable || event instanceof core_1.EventEmitter; };
|
|
16
|
-
if (isObservableOrEventEmitter(component.onFocus)) {
|
|
17
|
-
this.onFocus = component.onFocus;
|
|
18
|
-
}
|
|
19
|
-
if (isObservableOrEventEmitter(component.autoFillStart)) {
|
|
20
|
-
this.autoFillStart = component.autoFillStart;
|
|
21
|
-
}
|
|
22
|
-
if (isObservableOrEventEmitter(component.autoFillEnd)) {
|
|
23
|
-
this.autoFillEnd = component.autoFillEnd;
|
|
24
|
-
}
|
|
25
|
-
if (isObservableOrEventEmitter(component.onBlur)) {
|
|
26
|
-
this.onBlur = component.onBlur;
|
|
27
|
-
}
|
|
28
|
-
if (formControl) {
|
|
29
|
-
this.onValueChange = formControl.valueChanges;
|
|
30
|
-
}
|
|
31
|
-
else if (component.onValueChange) {
|
|
32
|
-
this.onValueChange = component.onValueChange;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
Object.defineProperty(FloatingLabelInputAdapter.prototype, "focusableId", {
|
|
36
|
-
get: function () {
|
|
37
|
-
var component = this.component;
|
|
38
|
-
if ('focusableId' in component) {
|
|
39
|
-
return component.focusableId;
|
|
40
|
-
}
|
|
41
|
-
else if ('id' in component) {
|
|
42
|
-
return component.id;
|
|
43
|
-
}
|
|
44
|
-
return "";
|
|
45
|
-
},
|
|
46
|
-
set: function (value) {
|
|
47
|
-
var component = this.component;
|
|
48
|
-
if ('focusableId' in component) {
|
|
49
|
-
component.focusableId = value;
|
|
50
|
-
}
|
|
51
|
-
else if ('id' in component) {
|
|
52
|
-
component.id = value;
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
enumerable: true,
|
|
56
|
-
configurable: true
|
|
57
|
-
});
|
|
58
|
-
return FloatingLabelInputAdapter;
|
|
59
|
-
}());
|
|
60
|
-
exports.FloatingLabelInputAdapter = FloatingLabelInputAdapter;
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
"use strict";
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
var tslib_1 = require("tslib");
|
|
8
|
-
var core_1 = require("@angular/core");
|
|
9
|
-
var kendo_angular_l10n_1 = require("@progress/kendo-angular-l10n");
|
|
10
|
-
var textarea_directive_1 = require("../shared/textarea.directive");
|
|
11
|
-
var forms_1 = require("@angular/forms");
|
|
12
|
-
var kendo_angular_common_1 = require("@progress/kendo-angular-common");
|
|
13
|
-
var floating_label_input_adapter_1 = require("./floating-label-input-adapter");
|
|
14
|
-
var isFunction = function (x) { return Object.prototype.toString.call(x) === '[object Function]'; };
|
|
15
|
-
var ɵ0 = isFunction;
|
|
16
|
-
exports.ɵ0 = ɵ0;
|
|
17
|
-
/**
|
|
18
|
-
* @hidden
|
|
19
|
-
*/
|
|
20
|
-
var TextBoxContainerComponent = /** @class */ (function () {
|
|
21
|
-
function TextBoxContainerComponent(elementRef, renderer, changeDetectorRef, rtl) {
|
|
22
|
-
this.elementRef = elementRef;
|
|
23
|
-
this.renderer = renderer;
|
|
24
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
25
|
-
/**
|
|
26
|
-
* @hidden
|
|
27
|
-
*/
|
|
28
|
-
this.focused = false;
|
|
29
|
-
/**
|
|
30
|
-
* @hidden
|
|
31
|
-
*/
|
|
32
|
-
this.empty = true;
|
|
33
|
-
/**
|
|
34
|
-
* @hidden
|
|
35
|
-
*/
|
|
36
|
-
this.invalid = false;
|
|
37
|
-
this._subscriptions = [];
|
|
38
|
-
this.autoFillStarted = false;
|
|
39
|
-
this.direction = rtl ? 'rtl' : 'ltr';
|
|
40
|
-
this.renderer.removeAttribute(this.elementRef.nativeElement, "id");
|
|
41
|
-
}
|
|
42
|
-
Object.defineProperty(TextBoxContainerComponent.prototype, "hostClasses", {
|
|
43
|
-
get: function () {
|
|
44
|
-
return true;
|
|
45
|
-
},
|
|
46
|
-
enumerable: true,
|
|
47
|
-
configurable: true
|
|
48
|
-
});
|
|
49
|
-
Object.defineProperty(TextBoxContainerComponent.prototype, "textareaElementClass", {
|
|
50
|
-
get: function () {
|
|
51
|
-
return !!this.textarea;
|
|
52
|
-
},
|
|
53
|
-
enumerable: true,
|
|
54
|
-
configurable: true
|
|
55
|
-
});
|
|
56
|
-
Object.defineProperty(TextBoxContainerComponent.prototype, "focusedClass", {
|
|
57
|
-
get: function () {
|
|
58
|
-
return this.focused;
|
|
59
|
-
},
|
|
60
|
-
enumerable: true,
|
|
61
|
-
configurable: true
|
|
62
|
-
});
|
|
63
|
-
Object.defineProperty(TextBoxContainerComponent.prototype, "invalidClass", {
|
|
64
|
-
get: function () {
|
|
65
|
-
return this.invalid;
|
|
66
|
-
},
|
|
67
|
-
enumerable: true,
|
|
68
|
-
configurable: true
|
|
69
|
-
});
|
|
70
|
-
/**
|
|
71
|
-
* @hidden
|
|
72
|
-
*/
|
|
73
|
-
TextBoxContainerComponent.prototype.ngAfterContentInit = function () {
|
|
74
|
-
var _this = this;
|
|
75
|
-
if (!this.formControl && !this.kendoInput) {
|
|
76
|
-
if (core_1.isDevMode()) {
|
|
77
|
-
throw new Error("The TextBoxContainer requires a Kendo Input component" +
|
|
78
|
-
" or a forms-bound component to function properly.");
|
|
79
|
-
}
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
// add focus/blur/valueChange handlers
|
|
83
|
-
var control = new floating_label_input_adapter_1.FloatingLabelInputAdapter(this.kendoInput || this.formControl.valueAccessor, this.formControl);
|
|
84
|
-
var setFocus = function (isFocused) { return function () {
|
|
85
|
-
_this.focused = isFocused;
|
|
86
|
-
_this.updateState();
|
|
87
|
-
}; };
|
|
88
|
-
this.subscribe(control, 'onFocus', setFocus(true));
|
|
89
|
-
this.subscribe(control, 'onBlur', setFocus(false));
|
|
90
|
-
this.subscribe(control, 'autoFillStart', function () {
|
|
91
|
-
_this.autoFillStarted = true;
|
|
92
|
-
_this.renderer.removeClass(_this.elementRef.nativeElement, 'k-state-empty');
|
|
93
|
-
});
|
|
94
|
-
this.subscribe(control, 'autoFillEnd', function () {
|
|
95
|
-
if (_this.autoFillStarted) {
|
|
96
|
-
_this.autoFillStarted = false;
|
|
97
|
-
if (_this.empty) {
|
|
98
|
-
_this.renderer.addClass(_this.elementRef.nativeElement, 'k-state-empty');
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
});
|
|
102
|
-
var updateState = function () { return _this.updateState(); };
|
|
103
|
-
updateState();
|
|
104
|
-
this.subscribe(control, 'onValueChange', updateState);
|
|
105
|
-
// set label id for floating label
|
|
106
|
-
if (this.id && control.focusableId) {
|
|
107
|
-
// input wins
|
|
108
|
-
this.id = control.focusableId;
|
|
109
|
-
}
|
|
110
|
-
else if (this.id) {
|
|
111
|
-
control.focusableId = this.id;
|
|
112
|
-
}
|
|
113
|
-
else if (control.focusableId) {
|
|
114
|
-
this.id = control.focusableId;
|
|
115
|
-
}
|
|
116
|
-
else {
|
|
117
|
-
var id = "_" + kendo_angular_common_1.guid();
|
|
118
|
-
control.focusableId = id;
|
|
119
|
-
this.id = id;
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
|
-
/**
|
|
123
|
-
* @hidden
|
|
124
|
-
*/
|
|
125
|
-
TextBoxContainerComponent.prototype.ngOnDestroy = function () {
|
|
126
|
-
this._subscriptions.forEach(function (s) { return s.unsubscribe(); });
|
|
127
|
-
this._subscriptions = [];
|
|
128
|
-
};
|
|
129
|
-
TextBoxContainerComponent.prototype.subscribe = function (control, eventName, handler) {
|
|
130
|
-
if (control[eventName] instanceof core_1.EventEmitter) {
|
|
131
|
-
var subscription = control[eventName].subscribe(handler);
|
|
132
|
-
this._subscriptions.push(subscription);
|
|
133
|
-
}
|
|
134
|
-
};
|
|
135
|
-
TextBoxContainerComponent.prototype.updateState = function () {
|
|
136
|
-
var empty = function (value) {
|
|
137
|
-
// zero is not an empty value (e.g., NumericTextBox)
|
|
138
|
-
if (value === 0 || value === false) {
|
|
139
|
-
return false;
|
|
140
|
-
}
|
|
141
|
-
// empty arrays are an empty value (e.g., MultiSelect)
|
|
142
|
-
if (Array.isArray(value) && !value.length) {
|
|
143
|
-
return true;
|
|
144
|
-
}
|
|
145
|
-
return !value;
|
|
146
|
-
};
|
|
147
|
-
var formControl = this.formControl;
|
|
148
|
-
if (formControl) {
|
|
149
|
-
var valueAccessor = formControl.valueAccessor;
|
|
150
|
-
if (isFunction(valueAccessor.isEmpty)) {
|
|
151
|
-
this.empty = valueAccessor.isEmpty();
|
|
152
|
-
}
|
|
153
|
-
else {
|
|
154
|
-
this.empty = empty(formControl.value);
|
|
155
|
-
}
|
|
156
|
-
this.invalid = formControl.invalid && (formControl.touched || formControl.dirty);
|
|
157
|
-
}
|
|
158
|
-
else {
|
|
159
|
-
this.empty = isFunction(this.kendoInput.isEmpty) ?
|
|
160
|
-
this.kendoInput.isEmpty() : empty(this.kendoInput.value);
|
|
161
|
-
}
|
|
162
|
-
if (this.empty) {
|
|
163
|
-
this.renderer.addClass(this.elementRef.nativeElement, 'k-state-empty');
|
|
164
|
-
}
|
|
165
|
-
else {
|
|
166
|
-
this.renderer.removeClass(this.elementRef.nativeElement, 'k-state-empty');
|
|
167
|
-
}
|
|
168
|
-
this.changeDetectorRef.markForCheck();
|
|
169
|
-
};
|
|
170
|
-
tslib_1.__decorate([
|
|
171
|
-
core_1.HostBinding('class.k-textbox-container'),
|
|
172
|
-
tslib_1.__metadata("design:type", Boolean),
|
|
173
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
174
|
-
], TextBoxContainerComponent.prototype, "hostClasses", null);
|
|
175
|
-
tslib_1.__decorate([
|
|
176
|
-
core_1.HostBinding('class.k-textarea-wrapper'),
|
|
177
|
-
tslib_1.__metadata("design:type", Boolean),
|
|
178
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
179
|
-
], TextBoxContainerComponent.prototype, "textareaElementClass", null);
|
|
180
|
-
tslib_1.__decorate([
|
|
181
|
-
core_1.HostBinding('class.k-state-focused'),
|
|
182
|
-
tslib_1.__metadata("design:type", Boolean),
|
|
183
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
184
|
-
], TextBoxContainerComponent.prototype, "focusedClass", null);
|
|
185
|
-
tslib_1.__decorate([
|
|
186
|
-
core_1.HostBinding('class.k-state-invalid'),
|
|
187
|
-
tslib_1.__metadata("design:type", Boolean),
|
|
188
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
189
|
-
], TextBoxContainerComponent.prototype, "invalidClass", null);
|
|
190
|
-
tslib_1.__decorate([
|
|
191
|
-
core_1.HostBinding('attr.dir'),
|
|
192
|
-
tslib_1.__metadata("design:type", String)
|
|
193
|
-
], TextBoxContainerComponent.prototype, "direction", void 0);
|
|
194
|
-
tslib_1.__decorate([
|
|
195
|
-
core_1.Input(),
|
|
196
|
-
tslib_1.__metadata("design:type", String)
|
|
197
|
-
], TextBoxContainerComponent.prototype, "id", void 0);
|
|
198
|
-
tslib_1.__decorate([
|
|
199
|
-
core_1.Input(),
|
|
200
|
-
tslib_1.__metadata("design:type", String)
|
|
201
|
-
], TextBoxContainerComponent.prototype, "floatingLabel", void 0);
|
|
202
|
-
tslib_1.__decorate([
|
|
203
|
-
core_1.ContentChild(kendo_angular_common_1.KendoInput, { static: false }),
|
|
204
|
-
tslib_1.__metadata("design:type", Object)
|
|
205
|
-
], TextBoxContainerComponent.prototype, "kendoInput", void 0);
|
|
206
|
-
tslib_1.__decorate([
|
|
207
|
-
core_1.ContentChild(textarea_directive_1.TextAreaDirective, { static: false }),
|
|
208
|
-
tslib_1.__metadata("design:type", textarea_directive_1.TextAreaDirective)
|
|
209
|
-
], TextBoxContainerComponent.prototype, "textarea", void 0);
|
|
210
|
-
tslib_1.__decorate([
|
|
211
|
-
core_1.ContentChild(forms_1.NgControl, { static: false }),
|
|
212
|
-
tslib_1.__metadata("design:type", forms_1.NgControl)
|
|
213
|
-
], TextBoxContainerComponent.prototype, "formControl", void 0);
|
|
214
|
-
TextBoxContainerComponent = tslib_1.__decorate([
|
|
215
|
-
core_1.Component({
|
|
216
|
-
selector: 'kendo-textbox-container',
|
|
217
|
-
template: "\n <ng-content></ng-content>\n <label *ngIf=\"floatingLabel\" [for]=\"id\" class=\"k-label\">{{ floatingLabel }}</label>\n "
|
|
218
|
-
}),
|
|
219
|
-
tslib_1.__param(3, core_1.Optional()), tslib_1.__param(3, core_1.Inject(kendo_angular_l10n_1.RTL)),
|
|
220
|
-
tslib_1.__metadata("design:paramtypes", [core_1.ElementRef,
|
|
221
|
-
core_1.Renderer2,
|
|
222
|
-
core_1.ChangeDetectorRef, Boolean])
|
|
223
|
-
], TextBoxContainerComponent);
|
|
224
|
-
return TextBoxContainerComponent;
|
|
225
|
-
}());
|
|
226
|
-
exports.TextBoxContainerComponent = TextBoxContainerComponent;
|