@progress/kendo-angular-inputs 19.3.0-develop.4 → 19.3.0-develop.41
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/colorpicker/color-palette.component.d.ts +1 -1
- package/colorpicker/colorpicker.component.d.ts +1 -1
- package/common/formservice.service.d.ts +14 -0
- package/common/models/gutters.d.ts +28 -0
- package/common/models/responsive-breakpoints.d.ts +34 -0
- package/common/utils.d.ts +0 -4
- package/directives.d.ts +19 -1
- package/esm2022/colorpicker/color-palette.component.mjs +3 -2
- package/esm2022/colorpicker/colorpicker.component.mjs +5 -4
- package/esm2022/common/formservice.service.mjs +21 -0
- package/esm2022/common/models/gutters.mjs +5 -0
- package/esm2022/common/models/responsive-breakpoints.mjs +5 -0
- package/esm2022/common/utils.mjs +0 -4
- package/esm2022/directives.mjs +24 -0
- package/esm2022/form/form.component.mjs +153 -0
- package/esm2022/form/formseparator.component.mjs +80 -0
- package/esm2022/form/utils.mjs +144 -0
- package/esm2022/form.module.mjs +46 -0
- package/esm2022/formfield/formfield.component.mjs +47 -5
- package/esm2022/formfieldset/formfieldset.component.mjs +170 -0
- package/esm2022/index.mjs +5 -0
- package/esm2022/inputs.module.mjs +26 -23
- package/esm2022/numerictextbox/numerictextbox.component.mjs +5 -4
- package/esm2022/otpinput/otpinput.component.mjs +6 -5
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/rangeslider/rangeslider.component.mjs +8 -3
- package/esm2022/rating/rating.component.mjs +31 -26
- package/esm2022/shared/shared-events.directive.mjs +1 -1
- package/esm2022/signature/signature.component.mjs +1 -1
- package/esm2022/slider/slider.component.mjs +5 -3
- package/esm2022/switch/switch.component.mjs +2 -2
- package/esm2022/text-fields-common/text-fields-base.mjs +1 -1
- package/esm2022/textarea/models/textarea-settings.mjs +5 -0
- package/esm2022/textarea/textarea.component.mjs +35 -4
- package/fesm2022/progress-kendo-angular-inputs.mjs +717 -62
- package/form/form.component.d.ts +70 -0
- package/form/formseparator.component.d.ts +32 -0
- package/form/utils.d.ts +62 -0
- package/form.module.d.ts +36 -0
- package/formfield/formfield.component.d.ts +19 -4
- package/formfieldset/formfieldset.component.d.ts +68 -0
- package/index.d.ts +8 -0
- package/inputs.module.d.ts +25 -22
- package/numerictextbox/numerictextbox.component.d.ts +1 -1
- package/package.json +13 -13
- package/rangeslider/rangeslider.component.d.ts +1 -1
- package/slider/slider.component.d.ts +1 -1
- package/text-fields-common/text-fields-base.d.ts +1 -1
- package/textarea/models/textarea-settings.d.ts +101 -0
- package/textarea/textarea.component.d.ts +9 -3
|
@@ -10,7 +10,7 @@ import { take, tap, filter, concatMap, startWith, takeUntil, skip, debounceTime,
|
|
|
10
10
|
import * as i1 from '@progress/kendo-angular-l10n';
|
|
11
11
|
import { ComponentMessages, LocalizationService, L10N_PREFIX, RTL } from '@progress/kendo-angular-l10n';
|
|
12
12
|
import * as i7 from '@progress/kendo-angular-common';
|
|
13
|
-
import { Keys, guid, anyChanged, isDocumentAvailable, hasObservers, KendoInput, EventsOutsideAngularDirective, DraggableDirective, ResizeSensorComponent, isObjectPresent, removeHTMLAttributes, parseAttributes, isControlRequired, setHTMLAttributes, SuffixTemplateDirective, PrefixTemplateDirective, isChanged, isPresent as isPresent$1, isSafari, PreventableEvent, findFocusableChild, parseCSSClassNames, closest as closest$1, SeparatorComponent, ResizeBatchService, KENDO_ADORNMENTS } from '@progress/kendo-angular-common';
|
|
13
|
+
import { Keys, guid, anyChanged, isDocumentAvailable, normalizeNumpadKeys, hasObservers, KendoInput, EventsOutsideAngularDirective, DraggableDirective, ResizeSensorComponent, isObjectPresent, removeHTMLAttributes, parseAttributes, isControlRequired, setHTMLAttributes, SuffixTemplateDirective, PrefixTemplateDirective, isChanged, isPresent as isPresent$1, isSafari, PreventableEvent, findFocusableChild, parseCSSClassNames, closest as closest$1, processCssValue, replaceMessagePlaceholder, getLicenseMessage, shouldShowValidationUI, WatermarkOverlayComponent, SeparatorComponent, ResizeBatchService, KENDO_ADORNMENTS } from '@progress/kendo-angular-common';
|
|
14
14
|
export { PrefixTemplateDirective, SeparatorComponent, SuffixTemplateDirective } from '@progress/kendo-angular-common';
|
|
15
15
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
16
16
|
import { caretAltUpIcon, caretAltDownIcon, caretAltLeftIcon, caretAltRightIcon, checkIcon, exclamationCircleIcon, xIcon, caretAltExpandIcon, xCircleIcon, dropletSlashIcon, dropletSliderIcon, paletteIcon, starIcon, starOutlineIcon, hyperlinkOpenIcon } from '@progress/kendo-svg-icons';
|
|
@@ -111,10 +111,6 @@ const getStylingClasses = (componentType, stylingOption, previousValue, newValue
|
|
|
111
111
|
* Used to differentiate between the Radio and CheckBox components in their base class.
|
|
112
112
|
*/
|
|
113
113
|
const COMPONENT_TYPE = new InjectionToken('TYPE_TOKEN');
|
|
114
|
-
/**
|
|
115
|
-
* @hidden
|
|
116
|
-
*/
|
|
117
|
-
const replaceMessagePlaceholder = (message, name, value) => message.replace(new RegExp(`{\\s*${name}\\s*}`, 'g'), value);
|
|
118
114
|
|
|
119
115
|
/**
|
|
120
116
|
* @hidden
|
|
@@ -554,8 +550,8 @@ const packageMetadata = {
|
|
|
554
550
|
productName: 'Kendo UI for Angular',
|
|
555
551
|
productCode: 'KENDOUIANGULAR',
|
|
556
552
|
productCodes: ['KENDOUIANGULAR'],
|
|
557
|
-
publishDate:
|
|
558
|
-
version: '19.3.0-develop.
|
|
553
|
+
publishDate: 1754998518,
|
|
554
|
+
version: '19.3.0-develop.41',
|
|
559
555
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
560
556
|
};
|
|
561
557
|
|
|
@@ -1267,7 +1263,9 @@ class SliderComponent extends SliderBase {
|
|
|
1267
1263
|
onKeyDown = (e) => {
|
|
1268
1264
|
const options = this.getProps();
|
|
1269
1265
|
const { max, min } = options;
|
|
1270
|
-
|
|
1266
|
+
// on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
|
|
1267
|
+
const code = normalizeNumpadKeys(e);
|
|
1268
|
+
const handler = this.keyBinding[code];
|
|
1271
1269
|
if (this.isDisabled || !handler) {
|
|
1272
1270
|
return;
|
|
1273
1271
|
}
|
|
@@ -1452,7 +1450,7 @@ class SliderComponent extends SliderBase {
|
|
|
1452
1450
|
cursorInsideWrapper = false;
|
|
1453
1451
|
}));
|
|
1454
1452
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
1455
|
-
if (args.
|
|
1453
|
+
if (args.code === Keys.Tab) {
|
|
1456
1454
|
tabbing = true;
|
|
1457
1455
|
}
|
|
1458
1456
|
else {
|
|
@@ -1872,6 +1870,7 @@ class RangeSliderComponent extends SliderBase {
|
|
|
1872
1870
|
this.ngZone = ngZone;
|
|
1873
1871
|
this.changeDetector = changeDetector;
|
|
1874
1872
|
this.hostElement = hostElement;
|
|
1873
|
+
validatePackage(packageMetadata);
|
|
1875
1874
|
}
|
|
1876
1875
|
/**
|
|
1877
1876
|
* Focuses the RangeSlider.
|
|
@@ -2029,7 +2028,9 @@ class RangeSliderComponent extends SliderBase {
|
|
|
2029
2028
|
this.value = this.value || [this.min, this.min];
|
|
2030
2029
|
const options = this.getProps();
|
|
2031
2030
|
const { max, min } = options;
|
|
2032
|
-
|
|
2031
|
+
// on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
|
|
2032
|
+
const code = normalizeNumpadKeys(e);
|
|
2033
|
+
const handler = this.keyBinding[code];
|
|
2033
2034
|
if (this.isDisabled || !handler) {
|
|
2034
2035
|
return;
|
|
2035
2036
|
}
|
|
@@ -2221,7 +2222,7 @@ class RangeSliderComponent extends SliderBase {
|
|
|
2221
2222
|
cursorInsideWrapper = false;
|
|
2222
2223
|
}));
|
|
2223
2224
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
2224
|
-
if (args.
|
|
2225
|
+
if (args.code === Keys.Tab) {
|
|
2225
2226
|
tabbing = true;
|
|
2226
2227
|
}
|
|
2227
2228
|
else {
|
|
@@ -2800,8 +2801,8 @@ class SwitchComponent {
|
|
|
2800
2801
|
* @hidden
|
|
2801
2802
|
*/
|
|
2802
2803
|
keyDownHandler(e) {
|
|
2803
|
-
const keyCode = e.
|
|
2804
|
-
if (this.isEnabled && (keyCode === Keys.Space || keyCode === Keys.Enter)) {
|
|
2804
|
+
const keyCode = e.code;
|
|
2805
|
+
if (this.isEnabled && (keyCode === Keys.Space || keyCode === Keys.Enter || keyCode === Keys.NumpadEnter)) {
|
|
2805
2806
|
this.changeValue(!this.checked);
|
|
2806
2807
|
e.preventDefault();
|
|
2807
2808
|
}
|
|
@@ -3696,7 +3697,7 @@ class SharedInputEventsDirective {
|
|
|
3696
3697
|
cursorInsideWrapper = false;
|
|
3697
3698
|
}));
|
|
3698
3699
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
3699
|
-
if (args.
|
|
3700
|
+
if (args.code === Keys.Tab) {
|
|
3700
3701
|
tabbing = true;
|
|
3701
3702
|
}
|
|
3702
3703
|
else {
|
|
@@ -4378,10 +4379,11 @@ class NumericTextBoxComponent {
|
|
|
4378
4379
|
return;
|
|
4379
4380
|
}
|
|
4380
4381
|
let step;
|
|
4381
|
-
|
|
4382
|
+
const code = normalizeNumpadKeys(e);
|
|
4383
|
+
if (code === Keys.ArrowDown) {
|
|
4382
4384
|
step = -1;
|
|
4383
4385
|
}
|
|
4384
|
-
else if (
|
|
4386
|
+
else if (code === Keys.ArrowUp) {
|
|
4385
4387
|
step = 1;
|
|
4386
4388
|
}
|
|
4387
4389
|
if (step && this.step) {
|
|
@@ -4393,7 +4395,7 @@ class NumericTextBoxComponent {
|
|
|
4393
4395
|
end: input.selectionEnd,
|
|
4394
4396
|
start: input.selectionStart
|
|
4395
4397
|
};
|
|
4396
|
-
this.pressedKey =
|
|
4398
|
+
this.pressedKey = code;
|
|
4397
4399
|
};
|
|
4398
4400
|
/**
|
|
4399
4401
|
* @hidden
|
|
@@ -10857,8 +10859,9 @@ class ColorPaletteComponent {
|
|
|
10857
10859
|
* @hidden
|
|
10858
10860
|
*/
|
|
10859
10861
|
handleKeydown(event) {
|
|
10862
|
+
const code = normalizeNumpadKeys(event);
|
|
10860
10863
|
const isRTL = this.direction === 'rtl';
|
|
10861
|
-
switch (
|
|
10864
|
+
switch (code) {
|
|
10862
10865
|
case Keys.ArrowDown:
|
|
10863
10866
|
this.handleCellNavigation(0, 1);
|
|
10864
10867
|
break;
|
|
@@ -13406,7 +13409,8 @@ class ColorPickerComponent {
|
|
|
13406
13409
|
* @hidden
|
|
13407
13410
|
*/
|
|
13408
13411
|
handleWrapperKeyDown(event) {
|
|
13409
|
-
|
|
13412
|
+
const code = normalizeNumpadKeys(event);
|
|
13413
|
+
if (code === Keys.ArrowDown || code === Keys.Enter) {
|
|
13410
13414
|
event.preventDefault();
|
|
13411
13415
|
this.ngZone.run(() => {
|
|
13412
13416
|
this.toggleWithEvents(true);
|
|
@@ -13442,11 +13446,11 @@ class ColorPickerComponent {
|
|
|
13442
13446
|
* @hidden
|
|
13443
13447
|
*/
|
|
13444
13448
|
handlePopupKeyDown(event) {
|
|
13445
|
-
if (event.
|
|
13449
|
+
if (event.code === Keys.Escape) {
|
|
13446
13450
|
this.toggleWithEvents(false);
|
|
13447
13451
|
this.host.nativeElement.focus();
|
|
13448
13452
|
}
|
|
13449
|
-
if (event.
|
|
13453
|
+
if (event.code === Keys.Tab) {
|
|
13450
13454
|
const currentElement = event.shiftKey ? this.firstFocusableElement.nativeElement : this.lastFocusableElement.nativeElement;
|
|
13451
13455
|
const nextElement = event.shiftKey ? this.lastFocusableElement.nativeElement : this.firstFocusableElement.nativeElement;
|
|
13452
13456
|
if (event.target === currentElement) {
|
|
@@ -14203,6 +14207,161 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
14203
14207
|
args: ['attr.id']
|
|
14204
14208
|
}] } });
|
|
14205
14209
|
|
|
14210
|
+
/**
|
|
14211
|
+
* @hidden
|
|
14212
|
+
*/
|
|
14213
|
+
class FormService {
|
|
14214
|
+
formWidth = new BehaviorSubject(null);
|
|
14215
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
14216
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormService, providedIn: 'root' });
|
|
14217
|
+
}
|
|
14218
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormService, decorators: [{
|
|
14219
|
+
type: Injectable,
|
|
14220
|
+
args: [{
|
|
14221
|
+
providedIn: 'root',
|
|
14222
|
+
}]
|
|
14223
|
+
}] });
|
|
14224
|
+
|
|
14225
|
+
/**
|
|
14226
|
+
* @hidden
|
|
14227
|
+
*/
|
|
14228
|
+
const DEFAULT_FORM_GUTTERS = { rows: '0px', cols: '32px' };
|
|
14229
|
+
/**
|
|
14230
|
+
* @hidden
|
|
14231
|
+
*/
|
|
14232
|
+
const DEFAULT_FORMFIELDSET_GUTTERS = { rows: '0px', cols: '16px' };
|
|
14233
|
+
/**
|
|
14234
|
+
* @hidden
|
|
14235
|
+
*/
|
|
14236
|
+
function innerWidth(element) {
|
|
14237
|
+
let width = element.clientWidth;
|
|
14238
|
+
const style = getComputedStyle(element);
|
|
14239
|
+
width -= (parseFloat(style.paddingLeft) || 0) + (parseFloat(style.borderLeftWidth) || 0);
|
|
14240
|
+
width -= (parseFloat(style.paddingRight) || 0) + (parseFloat(style.borderRightWidth) || 0);
|
|
14241
|
+
return width;
|
|
14242
|
+
}
|
|
14243
|
+
/**
|
|
14244
|
+
* @hidden
|
|
14245
|
+
*/
|
|
14246
|
+
function processBreakpoints(breakpoints, containerWidth) {
|
|
14247
|
+
if (!breakpoints?.length || containerWidth === null) {
|
|
14248
|
+
return '';
|
|
14249
|
+
}
|
|
14250
|
+
for (const [index, breakpoint] of breakpoints.entries()) {
|
|
14251
|
+
const minBreakpointWidth = breakpoint.minWidth || breakpoints[index - 1]?.maxWidth + 1 || 0;
|
|
14252
|
+
const maxBreakpointWidth = breakpoint.maxWidth || breakpoints[index + 1]?.minWidth - 1 || Infinity;
|
|
14253
|
+
if (containerWidth >= minBreakpointWidth && containerWidth <= maxBreakpointWidth) {
|
|
14254
|
+
return breakpoint.value;
|
|
14255
|
+
}
|
|
14256
|
+
}
|
|
14257
|
+
return '';
|
|
14258
|
+
}
|
|
14259
|
+
/**
|
|
14260
|
+
* @hidden
|
|
14261
|
+
*/
|
|
14262
|
+
const calculateColumns = (cols, containerWidth) => {
|
|
14263
|
+
if (!cols) {
|
|
14264
|
+
return null;
|
|
14265
|
+
}
|
|
14266
|
+
if (Array.isArray(cols) && cols.length > 0) {
|
|
14267
|
+
const processedCols = processBreakpoints(cols, containerWidth) || null;
|
|
14268
|
+
return typeof processedCols === 'string' ? parseInt(processedCols, 10) : processedCols;
|
|
14269
|
+
}
|
|
14270
|
+
else if (typeof cols === 'number') {
|
|
14271
|
+
return cols;
|
|
14272
|
+
}
|
|
14273
|
+
return null;
|
|
14274
|
+
};
|
|
14275
|
+
/**
|
|
14276
|
+
* @hidden
|
|
14277
|
+
*
|
|
14278
|
+
* Calculates gutters for rows and columns based on responsive breakpoints or fixed values
|
|
14279
|
+
*/
|
|
14280
|
+
const calculateGutters = (gutters, containerWidth) => {
|
|
14281
|
+
if (!gutters) {
|
|
14282
|
+
return null;
|
|
14283
|
+
}
|
|
14284
|
+
if (typeof gutters === 'number' || typeof gutters === 'string') {
|
|
14285
|
+
return { cols: gutters, rows: gutters };
|
|
14286
|
+
}
|
|
14287
|
+
else if (Array.isArray(gutters)) {
|
|
14288
|
+
const processedGutters = processBreakpoints(gutters, containerWidth) || null;
|
|
14289
|
+
return processedGutters !== null ? { cols: processedGutters, rows: processedGutters } : null;
|
|
14290
|
+
}
|
|
14291
|
+
else if (typeof gutters === 'object') {
|
|
14292
|
+
const gutterObject = gutters;
|
|
14293
|
+
const result = { rows: null, cols: null };
|
|
14294
|
+
if (gutterObject.cols !== undefined && gutterObject.cols !== null) {
|
|
14295
|
+
if (typeof gutterObject.cols === 'number' || typeof gutterObject.cols === 'string') {
|
|
14296
|
+
result.cols = gutterObject.cols;
|
|
14297
|
+
}
|
|
14298
|
+
else if (Array.isArray(gutterObject.cols)) {
|
|
14299
|
+
result.cols = processBreakpoints(gutterObject.cols, containerWidth) || null;
|
|
14300
|
+
}
|
|
14301
|
+
}
|
|
14302
|
+
else {
|
|
14303
|
+
result.cols = null;
|
|
14304
|
+
}
|
|
14305
|
+
if (gutterObject.rows !== undefined) {
|
|
14306
|
+
if (typeof gutterObject.rows === 'number' || typeof gutterObject.rows === 'string') {
|
|
14307
|
+
result.rows = gutterObject.rows;
|
|
14308
|
+
}
|
|
14309
|
+
else if (Array.isArray(gutterObject.rows)) {
|
|
14310
|
+
result.rows = processBreakpoints(gutterObject.rows, containerWidth) || null;
|
|
14311
|
+
}
|
|
14312
|
+
}
|
|
14313
|
+
else {
|
|
14314
|
+
result.rows = null;
|
|
14315
|
+
}
|
|
14316
|
+
return result;
|
|
14317
|
+
}
|
|
14318
|
+
return null;
|
|
14319
|
+
};
|
|
14320
|
+
/**
|
|
14321
|
+
* @hidden
|
|
14322
|
+
*
|
|
14323
|
+
* Calculates column span value based on responsive breakpoints or fixed number
|
|
14324
|
+
*/
|
|
14325
|
+
const calculateColSpan = (colSpan, containerWidth) => {
|
|
14326
|
+
if (!colSpan) {
|
|
14327
|
+
return null;
|
|
14328
|
+
}
|
|
14329
|
+
if (typeof colSpan === 'number') {
|
|
14330
|
+
return colSpan;
|
|
14331
|
+
}
|
|
14332
|
+
else if (Array.isArray(colSpan) && colSpan.length > 0) {
|
|
14333
|
+
const processedColSpan = processBreakpoints(colSpan, containerWidth) || null;
|
|
14334
|
+
return typeof processedColSpan === 'string' ? parseInt(processedColSpan, 10) : processedColSpan;
|
|
14335
|
+
}
|
|
14336
|
+
return null;
|
|
14337
|
+
};
|
|
14338
|
+
/**
|
|
14339
|
+
* @hidden
|
|
14340
|
+
*
|
|
14341
|
+
* Generates CSS class names for columns
|
|
14342
|
+
*/
|
|
14343
|
+
const generateColumnClass = (columnsNumber) => {
|
|
14344
|
+
return columnsNumber && columnsNumber > 0 ? `k-grid-cols-${columnsNumber}` : '';
|
|
14345
|
+
};
|
|
14346
|
+
/**
|
|
14347
|
+
* @hidden
|
|
14348
|
+
*
|
|
14349
|
+
* Generates CSS styles for gutters based on the provided gutters object.
|
|
14350
|
+
*/
|
|
14351
|
+
const generateGuttersStyling = (gutters, defaultGutters = DEFAULT_FORM_GUTTERS) => {
|
|
14352
|
+
const rows = processCssValue(gutters?.rows);
|
|
14353
|
+
const cols = processCssValue(gutters?.cols);
|
|
14354
|
+
return `${rows ?? defaultGutters.rows} ${cols ?? defaultGutters.cols}`;
|
|
14355
|
+
};
|
|
14356
|
+
/**
|
|
14357
|
+
* @hidden
|
|
14358
|
+
*
|
|
14359
|
+
* Generates CSS class name for column span
|
|
14360
|
+
*/
|
|
14361
|
+
const generateColSpanClass = (colSpan) => {
|
|
14362
|
+
return colSpan ? `k-col-span-${colSpan}` : '';
|
|
14363
|
+
};
|
|
14364
|
+
|
|
14206
14365
|
/**
|
|
14207
14366
|
* Represents the Kendo UI FormField component for Angular.
|
|
14208
14367
|
* Use this component to group form-bound controls (Kendo Angular components or native HTML controls).
|
|
@@ -14225,6 +14384,7 @@ class FormFieldComponent {
|
|
|
14225
14384
|
renderer;
|
|
14226
14385
|
localizationService;
|
|
14227
14386
|
hostElement;
|
|
14387
|
+
formService;
|
|
14228
14388
|
hostClass = true;
|
|
14229
14389
|
/**
|
|
14230
14390
|
* @hidden
|
|
@@ -14267,6 +14427,8 @@ class FormFieldComponent {
|
|
|
14267
14427
|
/**
|
|
14268
14428
|
* Specifies the layout orientation of the form field.
|
|
14269
14429
|
*
|
|
14430
|
+
* @hidden
|
|
14431
|
+
*
|
|
14270
14432
|
* @default 'vertical'
|
|
14271
14433
|
*/
|
|
14272
14434
|
orientation = 'vertical';
|
|
@@ -14278,6 +14440,11 @@ class FormFieldComponent {
|
|
|
14278
14440
|
* @default 'initial'
|
|
14279
14441
|
*/
|
|
14280
14442
|
showErrors = 'initial';
|
|
14443
|
+
/**
|
|
14444
|
+
* Defines the colspan for the form field.
|
|
14445
|
+
* Can be a number or an array of responsive breakpoints.
|
|
14446
|
+
*/
|
|
14447
|
+
colSpan;
|
|
14281
14448
|
/**
|
|
14282
14449
|
* @hidden
|
|
14283
14450
|
*/
|
|
@@ -14299,15 +14466,23 @@ class FormFieldComponent {
|
|
|
14299
14466
|
control;
|
|
14300
14467
|
subscriptions = new Subscription();
|
|
14301
14468
|
rtl = false;
|
|
14302
|
-
|
|
14469
|
+
_formWidth = null;
|
|
14470
|
+
_colSpanClass = null;
|
|
14471
|
+
_previousColSpan = null;
|
|
14472
|
+
constructor(renderer, localizationService, hostElement, formService) {
|
|
14303
14473
|
this.renderer = renderer;
|
|
14304
14474
|
this.localizationService = localizationService;
|
|
14305
14475
|
this.hostElement = hostElement;
|
|
14476
|
+
this.formService = formService;
|
|
14306
14477
|
validatePackage(packageMetadata);
|
|
14307
14478
|
this.subscriptions.add(this.localizationService.changes.subscribe(({ rtl }) => {
|
|
14308
14479
|
this.rtl = rtl;
|
|
14309
14480
|
this.direction = this.rtl ? 'rtl' : 'ltr';
|
|
14310
14481
|
}));
|
|
14482
|
+
this.subscriptions.add(this.formService.formWidth.pipe(filter((width) => width !== null)).subscribe((width) => {
|
|
14483
|
+
this._formWidth = width;
|
|
14484
|
+
this.updateColSpanClass();
|
|
14485
|
+
}));
|
|
14311
14486
|
}
|
|
14312
14487
|
ngAfterViewInit() {
|
|
14313
14488
|
this.setDescription();
|
|
@@ -14315,6 +14490,11 @@ class FormFieldComponent {
|
|
|
14315
14490
|
ngAfterViewChecked() {
|
|
14316
14491
|
this.updateDescription();
|
|
14317
14492
|
}
|
|
14493
|
+
ngOnChanges(changes) {
|
|
14494
|
+
if (changes['colSpan']) {
|
|
14495
|
+
this.updateColSpanClass();
|
|
14496
|
+
}
|
|
14497
|
+
}
|
|
14318
14498
|
ngOnDestroy() {
|
|
14319
14499
|
this.subscriptions.unsubscribe();
|
|
14320
14500
|
}
|
|
@@ -14419,14 +14599,29 @@ class FormFieldComponent {
|
|
|
14419
14599
|
this.subscriptions.add(this.errorChildren.changes.subscribe(() => this.updateDescription()));
|
|
14420
14600
|
this.subscriptions.add(this.hintChildren.changes.subscribe(() => this.updateDescription()));
|
|
14421
14601
|
}
|
|
14422
|
-
|
|
14423
|
-
|
|
14602
|
+
updateColSpanClass() {
|
|
14603
|
+
const hostElement = this.hostElement.nativeElement;
|
|
14604
|
+
const newColSpan = calculateColSpan(this.colSpan, this._formWidth);
|
|
14605
|
+
if (newColSpan !== this._previousColSpan) {
|
|
14606
|
+
const newClass = generateColSpanClass(newColSpan);
|
|
14607
|
+
if (this._colSpanClass) {
|
|
14608
|
+
this.renderer.removeClass(hostElement, this._colSpanClass);
|
|
14609
|
+
}
|
|
14610
|
+
if (newClass) {
|
|
14611
|
+
this.renderer.addClass(hostElement, newClass);
|
|
14612
|
+
}
|
|
14613
|
+
this._colSpanClass = newClass;
|
|
14614
|
+
this._previousColSpan = newColSpan;
|
|
14615
|
+
}
|
|
14616
|
+
}
|
|
14617
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldComponent, deps: [{ token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.ElementRef }, { token: FormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
14618
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FormFieldComponent, isStandalone: true, selector: "kendo-formfield", inputs: { showHints: "showHints", orientation: "orientation", showErrors: "showErrors", colSpan: "colSpan" }, host: { properties: { "class.k-form-field": "this.hostClass", "attr.dir": "this.direction", "class.k-form-field-error": "this.errorClass", "class.k-form-field-disabled": "this.disabledClass" } }, providers: [
|
|
14424
14619
|
LocalizationService,
|
|
14425
14620
|
{
|
|
14426
14621
|
provide: L10N_PREFIX,
|
|
14427
14622
|
useValue: 'kendo.formfield'
|
|
14428
14623
|
}
|
|
14429
|
-
], queries: [{ propertyName: "kendoInput", first: true, predicate: KendoInput, descendants: true, static: true }, { propertyName: "formControls", predicate: NgControl, descendants: true }, { propertyName: "controlElementRefs", predicate: NgControl, descendants: true, read: ElementRef }, { propertyName: "errorChildren", predicate: ErrorComponent, descendants: true }, { propertyName: "hintChildren", predicate: HintComponent, descendants: true }], ngImport: i0, template: `
|
|
14624
|
+
], queries: [{ propertyName: "kendoInput", first: true, predicate: KendoInput, descendants: true, static: true }, { propertyName: "formControls", predicate: NgControl, descendants: true }, { propertyName: "controlElementRefs", predicate: NgControl, descendants: true, read: ElementRef }, { propertyName: "errorChildren", predicate: ErrorComponent, descendants: true }, { propertyName: "hintChildren", predicate: HintComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
14430
14625
|
<ng-content select="label, kendo-label"></ng-content>
|
|
14431
14626
|
<div class="k-form-field-wrap">
|
|
14432
14627
|
<ng-content></ng-content>
|
|
@@ -14457,7 +14652,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
14457
14652
|
standalone: true,
|
|
14458
14653
|
imports: [NgIf]
|
|
14459
14654
|
}]
|
|
14460
|
-
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.ElementRef }]; }, propDecorators: { hostClass: [{
|
|
14655
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.ElementRef }, { type: FormService }]; }, propDecorators: { hostClass: [{
|
|
14461
14656
|
type: HostBinding,
|
|
14462
14657
|
args: ['class.k-form-field']
|
|
14463
14658
|
}], direction: [{
|
|
@@ -14490,6 +14685,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
14490
14685
|
type: Input
|
|
14491
14686
|
}], showErrors: [{
|
|
14492
14687
|
type: Input
|
|
14688
|
+
}], colSpan: [{
|
|
14689
|
+
type: Input
|
|
14493
14690
|
}] } });
|
|
14494
14691
|
|
|
14495
14692
|
/**
|
|
@@ -15208,33 +15405,38 @@ class RatingComponent {
|
|
|
15208
15405
|
this.cdr.markForCheck();
|
|
15209
15406
|
}
|
|
15210
15407
|
};
|
|
15211
|
-
|
|
15212
|
-
|
|
15213
|
-
|
|
15214
|
-
if (event.keyCode === Keys.ArrowLeft) {
|
|
15215
|
-
if (this.direction === 'ltr') {
|
|
15408
|
+
const code = normalizeNumpadKeys(event);
|
|
15409
|
+
switch (code) {
|
|
15410
|
+
case Keys.ArrowDown:
|
|
15216
15411
|
decreaseValue();
|
|
15217
|
-
|
|
15218
|
-
|
|
15219
|
-
|
|
15220
|
-
|
|
15221
|
-
|
|
15222
|
-
|
|
15223
|
-
|
|
15224
|
-
|
|
15225
|
-
|
|
15226
|
-
|
|
15412
|
+
break;
|
|
15413
|
+
case Keys.ArrowLeft:
|
|
15414
|
+
if (this.direction === 'ltr') {
|
|
15415
|
+
decreaseValue();
|
|
15416
|
+
}
|
|
15417
|
+
else {
|
|
15418
|
+
increaseValue();
|
|
15419
|
+
}
|
|
15420
|
+
break;
|
|
15421
|
+
case Keys.ArrowUp:
|
|
15227
15422
|
increaseValue();
|
|
15228
|
-
|
|
15229
|
-
|
|
15230
|
-
|
|
15231
|
-
|
|
15232
|
-
|
|
15233
|
-
|
|
15234
|
-
|
|
15235
|
-
|
|
15236
|
-
|
|
15237
|
-
|
|
15423
|
+
break;
|
|
15424
|
+
case Keys.ArrowRight:
|
|
15425
|
+
if (this.direction === 'ltr') {
|
|
15426
|
+
increaseValue();
|
|
15427
|
+
}
|
|
15428
|
+
else {
|
|
15429
|
+
decreaseValue();
|
|
15430
|
+
}
|
|
15431
|
+
break;
|
|
15432
|
+
case Keys.Home:
|
|
15433
|
+
setMinValue();
|
|
15434
|
+
break;
|
|
15435
|
+
case Keys.End:
|
|
15436
|
+
setMaxValue();
|
|
15437
|
+
break;
|
|
15438
|
+
default:
|
|
15439
|
+
break;
|
|
15238
15440
|
}
|
|
15239
15441
|
}
|
|
15240
15442
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RatingComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -16183,7 +16385,7 @@ class SignatureComponent {
|
|
|
16183
16385
|
* @hidden
|
|
16184
16386
|
*/
|
|
16185
16387
|
onDialogKeydown(e) {
|
|
16186
|
-
if (e.
|
|
16388
|
+
if (e.code === Keys.Escape) {
|
|
16187
16389
|
this.isOpen = false;
|
|
16188
16390
|
this.cd.detectChanges();
|
|
16189
16391
|
this.maximizeButton?.nativeElement.focus();
|
|
@@ -16894,7 +17096,7 @@ class TextFieldsBase {
|
|
|
16894
17096
|
/**
|
|
16895
17097
|
* Sets the `title` attribute of the internal textarea input element of the component.
|
|
16896
17098
|
*/
|
|
16897
|
-
title
|
|
17099
|
+
title;
|
|
16898
17100
|
/**
|
|
16899
17101
|
* Sets the disabled state of the TextArea component. To learn how to disable the component in reactive forms, refer to the article on [Forms Support](slug:formssupport_textarea#toc-managing-the-textarea-disabled-state-in-reactive-forms).
|
|
16900
17102
|
*
|
|
@@ -17123,6 +17325,10 @@ class TextAreaComponent extends TextFieldsBase {
|
|
|
17123
17325
|
* Sets the maximum number of characters allowed in the text area.
|
|
17124
17326
|
*/
|
|
17125
17327
|
maxlength;
|
|
17328
|
+
/**
|
|
17329
|
+
* @hidden
|
|
17330
|
+
*/
|
|
17331
|
+
maxResizableRows;
|
|
17126
17332
|
/**
|
|
17127
17333
|
* Sets the [`tabindex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the component.
|
|
17128
17334
|
* @default 0
|
|
@@ -17213,6 +17419,7 @@ class TextAreaComponent extends TextFieldsBase {
|
|
|
17213
17419
|
*/
|
|
17214
17420
|
valueChange = new EventEmitter();
|
|
17215
17421
|
initialHeight;
|
|
17422
|
+
maxResizableHeight;
|
|
17216
17423
|
resizeSubscription;
|
|
17217
17424
|
_size = 'medium';
|
|
17218
17425
|
_rounded = 'medium';
|
|
@@ -17253,10 +17460,24 @@ class TextAreaComponent extends TextFieldsBase {
|
|
|
17253
17460
|
validatePackage(packageMetadata);
|
|
17254
17461
|
this.direction = localizationService.rtl ? 'rtl' : 'ltr';
|
|
17255
17462
|
}
|
|
17463
|
+
ngAfterContentInit() {
|
|
17464
|
+
this.ngZone.onStable.pipe((take(1))).subscribe(() => {
|
|
17465
|
+
this.prefix && (this.prefix.orientation = this.adornmentsOrientation);
|
|
17466
|
+
this.suffix && (this.suffix.orientation = this.adornmentsOrientation);
|
|
17467
|
+
});
|
|
17468
|
+
}
|
|
17256
17469
|
ngAfterViewInit() {
|
|
17257
17470
|
this.ngZone.runOutsideAngular(() => {
|
|
17258
17471
|
this.handleFlow();
|
|
17259
17472
|
});
|
|
17473
|
+
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
17474
|
+
if (this.prefix) {
|
|
17475
|
+
this.prefix.flow = this.flow;
|
|
17476
|
+
}
|
|
17477
|
+
if (this.suffix) {
|
|
17478
|
+
this.suffix.flow = this.flow;
|
|
17479
|
+
}
|
|
17480
|
+
});
|
|
17260
17481
|
const stylingInputs = ['size', 'rounded', 'fillMode'];
|
|
17261
17482
|
stylingInputs.forEach(input => {
|
|
17262
17483
|
this.handleClasses(this[input], input);
|
|
@@ -17284,8 +17505,14 @@ class TextAreaComponent extends TextFieldsBase {
|
|
|
17284
17505
|
}
|
|
17285
17506
|
if (changes.resizable) {
|
|
17286
17507
|
if (this.resizable === 'auto') {
|
|
17287
|
-
this.
|
|
17288
|
-
|
|
17508
|
+
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
17509
|
+
this.renderer.removeClass(element, '\!k-overflow-y-auto');
|
|
17510
|
+
this.initialHeight = element.offsetHeight;
|
|
17511
|
+
if (this.maxResizableRows && this.rows) {
|
|
17512
|
+
const heightValue = parseFloat(getComputedStyle(element).getPropertyValue('height')) - 2 * parseFloat(getComputedStyle(element).getPropertyValue('padding'));
|
|
17513
|
+
this.maxResizableHeight = this.initialHeight + (heightValue * (this.maxResizableRows - this.rows));
|
|
17514
|
+
}
|
|
17515
|
+
});
|
|
17289
17516
|
}
|
|
17290
17517
|
else if (this.resizable !== 'both') {
|
|
17291
17518
|
this.renderer.addClass(element, '\!k-overflow-y-auto');
|
|
@@ -17449,6 +17676,10 @@ class TextAreaComponent extends TextFieldsBase {
|
|
|
17449
17676
|
const element = this.input.nativeElement;
|
|
17450
17677
|
this.renderer.setStyle(element, 'height', `${this.initialHeight}px`);
|
|
17451
17678
|
const scrollHeight = element.scrollHeight;
|
|
17679
|
+
if (scrollHeight > this.maxResizableHeight) {
|
|
17680
|
+
this.renderer.setStyle(element, 'height', `${this.maxResizableHeight}px`);
|
|
17681
|
+
return;
|
|
17682
|
+
}
|
|
17452
17683
|
this.renderer.setStyle(hostElement, 'min-height', `${scrollHeight}px`);
|
|
17453
17684
|
if (scrollHeight > this.initialHeight) {
|
|
17454
17685
|
this.renderer.setStyle(element, 'height', `${scrollHeight}px`);
|
|
@@ -17519,7 +17750,7 @@ class TextAreaComponent extends TextFieldsBase {
|
|
|
17519
17750
|
setHTMLAttributes(attributesToRender, this.renderer, this.input.nativeElement, this.ngZone);
|
|
17520
17751
|
}
|
|
17521
17752
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TextAreaComponent, deps: [{ token: i1.LocalizationService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
17522
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TextAreaComponent, isStandalone: true, selector: "kendo-textarea", inputs: { focusableId: "focusableId", flow: "flow", inputAttributes: "inputAttributes", adornmentsOrientation: "adornmentsOrientation", rows: "rows", cols: "cols", maxlength: "maxlength", tabindex: "tabindex", tabIndex: "tabIndex", resizable: "resizable", size: "size", rounded: "rounded", fillMode: "fillMode", showPrefixSeparator: "showPrefixSeparator", showSuffixSeparator: "showSuffixSeparator" }, outputs: { onFocus: "focus", onBlur: "blur", valueChange: "valueChange" }, host: { properties: { "class.k-textarea": "this.hostClasses", "class.k-input": "this.hostClasses", "class.!k-flex-col": "this.flowCol", "class.!k-flex-row": "this.flowRow" } }, providers: [
|
|
17753
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TextAreaComponent, isStandalone: true, selector: "kendo-textarea", inputs: { focusableId: "focusableId", flow: "flow", inputAttributes: "inputAttributes", adornmentsOrientation: "adornmentsOrientation", rows: "rows", cols: "cols", maxlength: "maxlength", maxResizableRows: "maxResizableRows", tabindex: "tabindex", tabIndex: "tabIndex", resizable: "resizable", size: "size", rounded: "rounded", fillMode: "fillMode", showPrefixSeparator: "showPrefixSeparator", showSuffixSeparator: "showSuffixSeparator" }, outputs: { onFocus: "focus", onBlur: "blur", valueChange: "valueChange" }, host: { properties: { "class.k-textarea": "this.hostClasses", "class.k-input": "this.hostClasses", "class.!k-flex-col": "this.flowCol", "class.!k-flex-row": "this.flowRow" } }, providers: [
|
|
17523
17754
|
LocalizationService,
|
|
17524
17755
|
{ provide: L10N_PREFIX, useValue: 'kendo.textarea' },
|
|
17525
17756
|
{
|
|
@@ -17661,6 +17892,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
17661
17892
|
type: Input
|
|
17662
17893
|
}], maxlength: [{
|
|
17663
17894
|
type: Input
|
|
17895
|
+
}], maxResizableRows: [{
|
|
17896
|
+
type: Input
|
|
17664
17897
|
}], tabindex: [{
|
|
17665
17898
|
type: Input
|
|
17666
17899
|
}], tabIndex: [{
|
|
@@ -18421,14 +18654,15 @@ class OTPInputComponent {
|
|
|
18421
18654
|
this.inputFields.get(this.focusedInput).focus();
|
|
18422
18655
|
}
|
|
18423
18656
|
handleKeydown(event) {
|
|
18657
|
+
const code = normalizeNumpadKeys(event);
|
|
18424
18658
|
if (this.readonly) {
|
|
18425
|
-
const isCopyCommand = (event.ctrlKey || event.metaKey) &&
|
|
18426
|
-
if (!(
|
|
18659
|
+
const isCopyCommand = (event.ctrlKey || event.metaKey) && code === Keys.KeyC;
|
|
18660
|
+
if (!(code === Keys.Tab || isCopyCommand)) {
|
|
18427
18661
|
event.preventDefault();
|
|
18428
18662
|
return;
|
|
18429
18663
|
}
|
|
18430
18664
|
}
|
|
18431
|
-
switch (
|
|
18665
|
+
switch (code) {
|
|
18432
18666
|
case Keys.ArrowRight:
|
|
18433
18667
|
event.preventDefault();
|
|
18434
18668
|
this.direction === 'ltr' ? this.focusNext() : this.focusPrevious();
|
|
@@ -18810,6 +19044,372 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
18810
19044
|
}]
|
|
18811
19045
|
}], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
|
|
18812
19046
|
|
|
19047
|
+
/**
|
|
19048
|
+
* Represents the Kendo UI Form component for Angular.
|
|
19049
|
+
*
|
|
19050
|
+
* @remarks
|
|
19051
|
+
* Supported children components are: {@link FormFieldComponent}, {@link FormSeparatorComponent}, and {@link FormFieldSetComponent}.
|
|
19052
|
+
*/
|
|
19053
|
+
class FormComponent {
|
|
19054
|
+
element;
|
|
19055
|
+
cdr;
|
|
19056
|
+
formService;
|
|
19057
|
+
/**
|
|
19058
|
+
* Defines the orientation of the form.
|
|
19059
|
+
*
|
|
19060
|
+
* @default 'vertical'
|
|
19061
|
+
*/
|
|
19062
|
+
orientation = 'vertical';
|
|
19063
|
+
/**
|
|
19064
|
+
* Defines the number of columns in the form.
|
|
19065
|
+
* Can be a number or an array of responsive breakpoints.
|
|
19066
|
+
*/
|
|
19067
|
+
cols;
|
|
19068
|
+
/**
|
|
19069
|
+
* Defines the gutters for the form.
|
|
19070
|
+
* You can specify gutters for rows and columns.
|
|
19071
|
+
*/
|
|
19072
|
+
gutters = { ...DEFAULT_FORM_GUTTERS };
|
|
19073
|
+
/**
|
|
19074
|
+
* @hidden
|
|
19075
|
+
*/
|
|
19076
|
+
columnsClass = '';
|
|
19077
|
+
/**
|
|
19078
|
+
* @hidden
|
|
19079
|
+
*/
|
|
19080
|
+
guttersStyle = '';
|
|
19081
|
+
/**
|
|
19082
|
+
* @hidden
|
|
19083
|
+
*/
|
|
19084
|
+
showLicenseWatermark = false;
|
|
19085
|
+
/**
|
|
19086
|
+
* @hidden
|
|
19087
|
+
*/
|
|
19088
|
+
licenseMessage;
|
|
19089
|
+
get formClass() {
|
|
19090
|
+
return 'k-form k-form-md';
|
|
19091
|
+
}
|
|
19092
|
+
get horizontalClass() {
|
|
19093
|
+
return this.orientation === 'horizontal';
|
|
19094
|
+
}
|
|
19095
|
+
_formColumnsNumber;
|
|
19096
|
+
_formGutters = { ...DEFAULT_FORM_GUTTERS };
|
|
19097
|
+
constructor(element, cdr, formService) {
|
|
19098
|
+
this.element = element;
|
|
19099
|
+
this.cdr = cdr;
|
|
19100
|
+
this.formService = formService;
|
|
19101
|
+
const isValid = validatePackage(packageMetadata);
|
|
19102
|
+
this.licenseMessage = getLicenseMessage(packageMetadata);
|
|
19103
|
+
this.showLicenseWatermark = shouldShowValidationUI(isValid);
|
|
19104
|
+
}
|
|
19105
|
+
ngAfterContentInit() {
|
|
19106
|
+
this.applyColumns();
|
|
19107
|
+
this.applyGutters();
|
|
19108
|
+
this.formService.formWidth.next(innerWidth(this.element.nativeElement));
|
|
19109
|
+
}
|
|
19110
|
+
ngOnChanges(changes) {
|
|
19111
|
+
if (changes['cols']) {
|
|
19112
|
+
this.applyColumns();
|
|
19113
|
+
}
|
|
19114
|
+
if (changes['gutters']) {
|
|
19115
|
+
this.applyGutters();
|
|
19116
|
+
}
|
|
19117
|
+
}
|
|
19118
|
+
/**
|
|
19119
|
+
* @hidden
|
|
19120
|
+
*/
|
|
19121
|
+
onResize() {
|
|
19122
|
+
this.formService.formWidth.next(innerWidth(this.element.nativeElement));
|
|
19123
|
+
const previousColumnsNumber = this._formColumnsNumber;
|
|
19124
|
+
const previousGutters = this._formGutters;
|
|
19125
|
+
this.applyColumns();
|
|
19126
|
+
this.applyGutters();
|
|
19127
|
+
if (previousColumnsNumber !== this._formColumnsNumber) {
|
|
19128
|
+
this.cdr.detectChanges();
|
|
19129
|
+
}
|
|
19130
|
+
if (previousGutters?.cols !== this._formGutters?.cols || previousGutters?.rows !== this._formGutters?.rows) {
|
|
19131
|
+
this.cdr.detectChanges();
|
|
19132
|
+
}
|
|
19133
|
+
}
|
|
19134
|
+
applyColumns() {
|
|
19135
|
+
const containerWidth = innerWidth(this.element.nativeElement);
|
|
19136
|
+
this._formColumnsNumber = calculateColumns(this.cols, containerWidth);
|
|
19137
|
+
this.updateColumnClasses();
|
|
19138
|
+
}
|
|
19139
|
+
applyGutters() {
|
|
19140
|
+
const containerWidth = innerWidth(this.element.nativeElement);
|
|
19141
|
+
this._formGutters = calculateGutters(this.gutters, containerWidth);
|
|
19142
|
+
this.updateGutterClasses();
|
|
19143
|
+
}
|
|
19144
|
+
updateColumnClasses() {
|
|
19145
|
+
this.columnsClass = generateColumnClass(this._formColumnsNumber);
|
|
19146
|
+
}
|
|
19147
|
+
updateGutterClasses() {
|
|
19148
|
+
this.guttersStyle = generateGuttersStyling(this._formGutters, { ...DEFAULT_FORM_GUTTERS });
|
|
19149
|
+
}
|
|
19150
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: FormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
19151
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FormComponent, isStandalone: true, selector: "form[kendoForm]", inputs: { orientation: "orientation", cols: "cols", gutters: "gutters" }, host: { properties: { "class": "this.formClass", "class.k-form-horizontal": "this.horizontalClass" } }, exportAs: ["kendoForm"], usesOnChanges: true, ngImport: i0, template: `
|
|
19152
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{ gap: guttersStyle }">
|
|
19153
|
+
<ng-content></ng-content>
|
|
19154
|
+
</div>
|
|
19155
|
+
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
19156
|
+
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark" [licenseMessage]="licenseMessage"></div>
|
|
19157
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]", inputs: ["licenseMessage"] }] });
|
|
19158
|
+
}
|
|
19159
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormComponent, decorators: [{
|
|
19160
|
+
type: Component,
|
|
19161
|
+
args: [{
|
|
19162
|
+
exportAs: 'kendoForm',
|
|
19163
|
+
selector: 'form[kendoForm]',
|
|
19164
|
+
template: `
|
|
19165
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{ gap: guttersStyle }">
|
|
19166
|
+
<ng-content></ng-content>
|
|
19167
|
+
</div>
|
|
19168
|
+
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
19169
|
+
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark" [licenseMessage]="licenseMessage"></div>
|
|
19170
|
+
`,
|
|
19171
|
+
standalone: true,
|
|
19172
|
+
imports: [NgClass, NgStyle, NgIf, ResizeSensorComponent, WatermarkOverlayComponent],
|
|
19173
|
+
}]
|
|
19174
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: FormService }]; }, propDecorators: { orientation: [{
|
|
19175
|
+
type: Input
|
|
19176
|
+
}], cols: [{
|
|
19177
|
+
type: Input
|
|
19178
|
+
}], gutters: [{
|
|
19179
|
+
type: Input
|
|
19180
|
+
}], formClass: [{
|
|
19181
|
+
type: HostBinding,
|
|
19182
|
+
args: ['class']
|
|
19183
|
+
}], horizontalClass: [{
|
|
19184
|
+
type: HostBinding,
|
|
19185
|
+
args: ['class.k-form-horizontal']
|
|
19186
|
+
}] } });
|
|
19187
|
+
|
|
19188
|
+
/**
|
|
19189
|
+
* Represents the Kendo UI Form Separator component for Angular.
|
|
19190
|
+
*/
|
|
19191
|
+
class FormSeparatorComponent {
|
|
19192
|
+
renderer;
|
|
19193
|
+
hostElement;
|
|
19194
|
+
formService;
|
|
19195
|
+
hostClass = true;
|
|
19196
|
+
/**
|
|
19197
|
+
* Defines the colspan for the separator element related to the parent Form component columns.
|
|
19198
|
+
* Can be a number or an array of responsive breakpoints.
|
|
19199
|
+
*/
|
|
19200
|
+
colSpan;
|
|
19201
|
+
_formWidth = null;
|
|
19202
|
+
_colSpanClass = null;
|
|
19203
|
+
_previousColSpan = null;
|
|
19204
|
+
subscriptions = new Subscription();
|
|
19205
|
+
constructor(renderer, hostElement, formService) {
|
|
19206
|
+
this.renderer = renderer;
|
|
19207
|
+
this.hostElement = hostElement;
|
|
19208
|
+
this.formService = formService;
|
|
19209
|
+
validatePackage(packageMetadata);
|
|
19210
|
+
this.subscriptions.add(this.formService.formWidth.pipe(filter((width) => width !== null)).subscribe((width) => {
|
|
19211
|
+
this._formWidth = width;
|
|
19212
|
+
this.updateColSpanClass();
|
|
19213
|
+
}));
|
|
19214
|
+
}
|
|
19215
|
+
ngOnChanges(changes) {
|
|
19216
|
+
if (changes['colSpan']) {
|
|
19217
|
+
this.updateColSpanClass();
|
|
19218
|
+
}
|
|
19219
|
+
}
|
|
19220
|
+
ngOnDestroy() {
|
|
19221
|
+
this.subscriptions.unsubscribe();
|
|
19222
|
+
}
|
|
19223
|
+
updateColSpanClass() {
|
|
19224
|
+
const hostElement = this.hostElement.nativeElement;
|
|
19225
|
+
const newColSpan = calculateColSpan(this.colSpan, this._formWidth);
|
|
19226
|
+
if (newColSpan !== this._previousColSpan) {
|
|
19227
|
+
const newClass = generateColSpanClass(newColSpan);
|
|
19228
|
+
if (this._colSpanClass) {
|
|
19229
|
+
this.renderer.removeClass(hostElement, this._colSpanClass);
|
|
19230
|
+
}
|
|
19231
|
+
if (newClass) {
|
|
19232
|
+
this.renderer.addClass(hostElement, newClass);
|
|
19233
|
+
}
|
|
19234
|
+
this._colSpanClass = newClass;
|
|
19235
|
+
this._previousColSpan = newColSpan;
|
|
19236
|
+
}
|
|
19237
|
+
}
|
|
19238
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormSeparatorComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: FormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
19239
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FormSeparatorComponent, isStandalone: true, selector: "kendo-form-separator", inputs: { colSpan: "colSpan" }, host: { properties: { "class.k-form-separator": "this.hostClass" } }, exportAs: ["kendoFormSeparator"], usesOnChanges: true, ngImport: i0, template: ``, isInline: true });
|
|
19240
|
+
}
|
|
19241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormSeparatorComponent, decorators: [{
|
|
19242
|
+
type: Component,
|
|
19243
|
+
args: [{
|
|
19244
|
+
exportAs: 'kendoFormSeparator',
|
|
19245
|
+
selector: 'kendo-form-separator',
|
|
19246
|
+
template: ``,
|
|
19247
|
+
standalone: true,
|
|
19248
|
+
}]
|
|
19249
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: FormService }]; }, propDecorators: { hostClass: [{
|
|
19250
|
+
type: HostBinding,
|
|
19251
|
+
args: ['class.k-form-separator']
|
|
19252
|
+
}], colSpan: [{
|
|
19253
|
+
type: Input
|
|
19254
|
+
}] } });
|
|
19255
|
+
|
|
19256
|
+
/**
|
|
19257
|
+
* Represents the Kendo UI FormFieldSet component for Angular.
|
|
19258
|
+
*
|
|
19259
|
+
* @remarks
|
|
19260
|
+
* Supported children components are: {@link FormFieldComponent} and {@link FormSeparatorComponent}.
|
|
19261
|
+
*/
|
|
19262
|
+
class FormFieldSetComponent {
|
|
19263
|
+
elementRef;
|
|
19264
|
+
renderer;
|
|
19265
|
+
formService;
|
|
19266
|
+
cdr;
|
|
19267
|
+
formFieldSetClass = true;
|
|
19268
|
+
/**
|
|
19269
|
+
* Defines the legend for the fieldset.
|
|
19270
|
+
*/
|
|
19271
|
+
legend;
|
|
19272
|
+
/**
|
|
19273
|
+
* Defines the number of columns of the fieldset.
|
|
19274
|
+
* Can be a number or an array of responsive breakpoints.
|
|
19275
|
+
*/
|
|
19276
|
+
cols;
|
|
19277
|
+
/**
|
|
19278
|
+
* Defines the gutters for the fieldset.
|
|
19279
|
+
* You can specify gutters for rows and columns.
|
|
19280
|
+
*/
|
|
19281
|
+
gutters = { ...DEFAULT_FORMFIELDSET_GUTTERS };
|
|
19282
|
+
/**
|
|
19283
|
+
* Defines the colspan for the fieldset related to the parent Form component columns.
|
|
19284
|
+
* Can be a number or an array of responsive breakpoints.
|
|
19285
|
+
*/
|
|
19286
|
+
colSpan;
|
|
19287
|
+
/**
|
|
19288
|
+
* @hidden
|
|
19289
|
+
*/
|
|
19290
|
+
columnsClass = '';
|
|
19291
|
+
/**
|
|
19292
|
+
* @hidden
|
|
19293
|
+
*/
|
|
19294
|
+
guttersStyle = '';
|
|
19295
|
+
_formColumnsNumber;
|
|
19296
|
+
_colSpanClass = null;
|
|
19297
|
+
_formWidth = null;
|
|
19298
|
+
_formGutters = { ...DEFAULT_FORMFIELDSET_GUTTERS };
|
|
19299
|
+
_previousColSpan = null;
|
|
19300
|
+
_previousCols = null;
|
|
19301
|
+
_previousGutters;
|
|
19302
|
+
subs = new Subscription();
|
|
19303
|
+
constructor(elementRef, renderer, formService, cdr) {
|
|
19304
|
+
this.elementRef = elementRef;
|
|
19305
|
+
this.renderer = renderer;
|
|
19306
|
+
this.formService = formService;
|
|
19307
|
+
this.cdr = cdr;
|
|
19308
|
+
validatePackage(packageMetadata);
|
|
19309
|
+
}
|
|
19310
|
+
ngOnInit() {
|
|
19311
|
+
this.subs.add(this.formService.formWidth.pipe(filter((width) => width !== null)).subscribe((width) => {
|
|
19312
|
+
this._formWidth = width;
|
|
19313
|
+
this.applyColumns();
|
|
19314
|
+
this.applyGutters();
|
|
19315
|
+
this.updateColSpanClass();
|
|
19316
|
+
}));
|
|
19317
|
+
}
|
|
19318
|
+
ngOnChanges(changes) {
|
|
19319
|
+
if (changes['colSpan']) {
|
|
19320
|
+
this.updateColSpanClass();
|
|
19321
|
+
}
|
|
19322
|
+
if (changes['cols']) {
|
|
19323
|
+
this.applyColumns();
|
|
19324
|
+
}
|
|
19325
|
+
if (changes['gutters']) {
|
|
19326
|
+
this.applyGutters();
|
|
19327
|
+
}
|
|
19328
|
+
}
|
|
19329
|
+
ngOnDestroy() {
|
|
19330
|
+
this.subs.unsubscribe();
|
|
19331
|
+
}
|
|
19332
|
+
applyColumns() {
|
|
19333
|
+
const containerWidth = this._formWidth;
|
|
19334
|
+
const newColumnsNumber = calculateColumns(this.cols, containerWidth);
|
|
19335
|
+
if (newColumnsNumber !== this._previousCols) {
|
|
19336
|
+
this._formColumnsNumber = newColumnsNumber;
|
|
19337
|
+
this.updateColumnClasses();
|
|
19338
|
+
this._previousCols = newColumnsNumber;
|
|
19339
|
+
}
|
|
19340
|
+
}
|
|
19341
|
+
applyGutters() {
|
|
19342
|
+
const containerWidth = this._formWidth;
|
|
19343
|
+
const newGutters = calculateGutters(this.gutters, containerWidth);
|
|
19344
|
+
if (newGutters && (newGutters.cols !== this._previousGutters?.cols || newGutters.rows !== this._previousGutters?.rows)) {
|
|
19345
|
+
this._formGutters = newGutters;
|
|
19346
|
+
this.updateGutterClasses();
|
|
19347
|
+
this._previousGutters = newGutters;
|
|
19348
|
+
}
|
|
19349
|
+
}
|
|
19350
|
+
updateColumnClasses() {
|
|
19351
|
+
this.columnsClass = generateColumnClass(this._formColumnsNumber);
|
|
19352
|
+
this.cdr.detectChanges();
|
|
19353
|
+
}
|
|
19354
|
+
updateGutterClasses() {
|
|
19355
|
+
this.guttersStyle = generateGuttersStyling(this._formGutters, { ...DEFAULT_FORMFIELDSET_GUTTERS });
|
|
19356
|
+
this.cdr.detectChanges();
|
|
19357
|
+
}
|
|
19358
|
+
updateColSpanClass() {
|
|
19359
|
+
const hostElement = this.elementRef.nativeElement;
|
|
19360
|
+
const newColSpan = calculateColSpan(this.colSpan, this._formWidth);
|
|
19361
|
+
if (newColSpan !== this._previousColSpan) {
|
|
19362
|
+
const newClass = generateColSpanClass(newColSpan);
|
|
19363
|
+
if (this._colSpanClass) {
|
|
19364
|
+
this.renderer.removeClass(hostElement, this._colSpanClass);
|
|
19365
|
+
}
|
|
19366
|
+
if (newClass) {
|
|
19367
|
+
this.renderer.addClass(hostElement, newClass);
|
|
19368
|
+
}
|
|
19369
|
+
this._colSpanClass = newClass;
|
|
19370
|
+
this._previousColSpan = newColSpan;
|
|
19371
|
+
this.cdr.detectChanges();
|
|
19372
|
+
}
|
|
19373
|
+
}
|
|
19374
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldSetComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: FormService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
19375
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FormFieldSetComponent, isStandalone: true, selector: "fieldset[kendoFormFieldSet]", inputs: { legend: "legend", cols: "cols", gutters: "gutters", colSpan: "colSpan" }, host: { properties: { "class.k-form-fieldset": "this.formFieldSetClass" } }, exportAs: ["kendoFormFieldSet"], usesOnChanges: true, ngImport: i0, template: `
|
|
19376
|
+
<legend *ngIf="legend" class="k-form-legend">
|
|
19377
|
+
{{ legend }}
|
|
19378
|
+
</legend>
|
|
19379
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{'gap': guttersStyle}">
|
|
19380
|
+
<ng-content></ng-content>
|
|
19381
|
+
</div>
|
|
19382
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
19383
|
+
}
|
|
19384
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldSetComponent, decorators: [{
|
|
19385
|
+
type: Component,
|
|
19386
|
+
args: [{
|
|
19387
|
+
exportAs: 'kendoFormFieldSet',
|
|
19388
|
+
selector: 'fieldset[kendoFormFieldSet]',
|
|
19389
|
+
template: `
|
|
19390
|
+
<legend *ngIf="legend" class="k-form-legend">
|
|
19391
|
+
{{ legend }}
|
|
19392
|
+
</legend>
|
|
19393
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{'gap': guttersStyle}">
|
|
19394
|
+
<ng-content></ng-content>
|
|
19395
|
+
</div>
|
|
19396
|
+
`,
|
|
19397
|
+
standalone: true,
|
|
19398
|
+
imports: [NgIf, NgClass, NgStyle],
|
|
19399
|
+
}]
|
|
19400
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: FormService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { formFieldSetClass: [{
|
|
19401
|
+
type: HostBinding,
|
|
19402
|
+
args: ['class.k-form-fieldset']
|
|
19403
|
+
}], legend: [{
|
|
19404
|
+
type: Input
|
|
19405
|
+
}], cols: [{
|
|
19406
|
+
type: Input
|
|
19407
|
+
}], gutters: [{
|
|
19408
|
+
type: Input
|
|
19409
|
+
}], colSpan: [{
|
|
19410
|
+
type: Input
|
|
19411
|
+
}] } });
|
|
19412
|
+
|
|
18813
19413
|
/**
|
|
18814
19414
|
* Use the `KENDO_TEXTBOX` utility array to add all TextBox-related components and directives to a standalone Angular component.
|
|
18815
19415
|
*
|
|
@@ -18988,6 +19588,26 @@ const KENDO_FORMFIELD = [
|
|
|
18988
19588
|
HintComponent,
|
|
18989
19589
|
ErrorComponent
|
|
18990
19590
|
];
|
|
19591
|
+
/**
|
|
19592
|
+
* Use the `KENDO_FORM` utility array to add all Form-related components and directives to a standalone Angular component.
|
|
19593
|
+
*
|
|
19594
|
+
* @example
|
|
19595
|
+
* ```typescript
|
|
19596
|
+
* import { KENDO_FORM } from '@progress/kendo-angular-inputs';
|
|
19597
|
+
* @Component({
|
|
19598
|
+
* standalone: true,
|
|
19599
|
+
* imports: [KENDO_FORM],
|
|
19600
|
+
* template: `<form kendoForm>...</form>`
|
|
19601
|
+
* })
|
|
19602
|
+
* export class MyComponent {}
|
|
19603
|
+
* ```
|
|
19604
|
+
*/
|
|
19605
|
+
const KENDO_FORM = [
|
|
19606
|
+
FormComponent,
|
|
19607
|
+
FormSeparatorComponent,
|
|
19608
|
+
FormFieldSetComponent,
|
|
19609
|
+
...KENDO_FORMFIELD
|
|
19610
|
+
];
|
|
18991
19611
|
/**
|
|
18992
19612
|
* Use the `KENDO_SLIDER` utility array to add all Slider-related components and directives to a standalone Angular component.
|
|
18993
19613
|
*
|
|
@@ -19158,6 +19778,7 @@ const KENDO_INPUTS = [
|
|
|
19158
19778
|
...KENDO_CHECKBOX,
|
|
19159
19779
|
...KENDO_RADIOBUTTON,
|
|
19160
19780
|
...KENDO_SWITCH,
|
|
19781
|
+
...KENDO_FORM,
|
|
19161
19782
|
...KENDO_FORMFIELD,
|
|
19162
19783
|
...KENDO_SLIDER,
|
|
19163
19784
|
...KENDO_RANGESLIDER,
|
|
@@ -19193,8 +19814,8 @@ const KENDO_INPUTS = [
|
|
|
19193
19814
|
*/
|
|
19194
19815
|
class InputsModule {
|
|
19195
19816
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
19196
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: InputsModule, imports: [TextBoxDirective, TextBoxComponent, InputSeparatorComponent, TextBoxSuffixTemplateDirective, TextBoxPrefixTemplateDirective, TextBoxCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, NumericTextBoxComponent, NumericTextBoxCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, MaskedTextBoxComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, TextAreaComponent, TextAreaDirective, TextAreaPrefixComponent, TextAreaSuffixComponent, i7.SeparatorComponent, CheckBoxComponent, CheckBoxDirective, RadioButtonComponent, RadioButtonDirective, SwitchComponent, SwitchCustomMessagesComponent, FormFieldComponent, HintComponent, ErrorComponent, SliderComponent, SliderCustomMessagesComponent, LabelTemplateDirective, RangeSliderComponent, RangeSliderCustomMessagesComponent, LabelTemplateDirective, RatingComponent, RatingItemTemplateDirective, RatingHoveredItemTemplateDirective, RatingSelectedItemTemplateDirective, SignatureComponent, SignatureCustomMessagesComponent, ColorPickerComponent, ColorPickerCustomMessagesComponent, FlatColorPickerComponent, ColorPickerCustomMessagesComponent, ColorGradientComponent, ColorPickerCustomMessagesComponent, ColorPaletteComponent, ColorPickerCustomMessagesComponent, OTPInputComponent, OTPInputCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent], exports: [TextBoxDirective, TextBoxComponent, InputSeparatorComponent, TextBoxSuffixTemplateDirective, TextBoxPrefixTemplateDirective, TextBoxCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, NumericTextBoxComponent, NumericTextBoxCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, MaskedTextBoxComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, TextAreaComponent, TextAreaDirective, TextAreaPrefixComponent, TextAreaSuffixComponent, i7.SeparatorComponent, CheckBoxComponent, CheckBoxDirective, RadioButtonComponent, RadioButtonDirective, SwitchComponent, SwitchCustomMessagesComponent, FormFieldComponent, HintComponent, ErrorComponent, SliderComponent, SliderCustomMessagesComponent, LabelTemplateDirective, RangeSliderComponent, RangeSliderCustomMessagesComponent, LabelTemplateDirective, RatingComponent, RatingItemTemplateDirective, RatingHoveredItemTemplateDirective, RatingSelectedItemTemplateDirective, SignatureComponent, SignatureCustomMessagesComponent, ColorPickerComponent, ColorPickerCustomMessagesComponent, FlatColorPickerComponent, ColorPickerCustomMessagesComponent, ColorGradientComponent, ColorPickerCustomMessagesComponent, ColorPaletteComponent, ColorPickerCustomMessagesComponent, OTPInputComponent, OTPInputCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent] });
|
|
19197
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputsModule, providers: [IconsService, PopupService, ResizeBatchService, DialogContainerService, DialogService, WindowService, WindowContainerService, AdaptiveService], imports: [TextBoxComponent, i7.SeparatorComponent, NumericTextBoxComponent, i7.SeparatorComponent, i7.SeparatorComponent, i7.SeparatorComponent, SliderComponent, RangeSliderComponent, RatingComponent, SignatureComponent, ColorPickerComponent, FlatColorPickerComponent, ColorGradientComponent, OTPInputComponent, i7.SeparatorComponent] });
|
|
19817
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: InputsModule, imports: [TextBoxDirective, TextBoxComponent, InputSeparatorComponent, TextBoxSuffixTemplateDirective, TextBoxPrefixTemplateDirective, TextBoxCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, NumericTextBoxComponent, NumericTextBoxCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, MaskedTextBoxComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, TextAreaComponent, TextAreaDirective, TextAreaPrefixComponent, TextAreaSuffixComponent, i7.SeparatorComponent, CheckBoxComponent, CheckBoxDirective, RadioButtonComponent, RadioButtonDirective, SwitchComponent, SwitchCustomMessagesComponent, FormComponent, FormSeparatorComponent, FormFieldSetComponent, FormFieldComponent, HintComponent, ErrorComponent, FormFieldComponent, HintComponent, ErrorComponent, SliderComponent, SliderCustomMessagesComponent, LabelTemplateDirective, RangeSliderComponent, RangeSliderCustomMessagesComponent, LabelTemplateDirective, RatingComponent, RatingItemTemplateDirective, RatingHoveredItemTemplateDirective, RatingSelectedItemTemplateDirective, SignatureComponent, SignatureCustomMessagesComponent, ColorPickerComponent, ColorPickerCustomMessagesComponent, FlatColorPickerComponent, ColorPickerCustomMessagesComponent, ColorGradientComponent, ColorPickerCustomMessagesComponent, ColorPaletteComponent, ColorPickerCustomMessagesComponent, OTPInputComponent, OTPInputCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent], exports: [TextBoxDirective, TextBoxComponent, InputSeparatorComponent, TextBoxSuffixTemplateDirective, TextBoxPrefixTemplateDirective, TextBoxCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, NumericTextBoxComponent, NumericTextBoxCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, MaskedTextBoxComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent, TextAreaComponent, TextAreaDirective, TextAreaPrefixComponent, TextAreaSuffixComponent, i7.SeparatorComponent, CheckBoxComponent, CheckBoxDirective, RadioButtonComponent, RadioButtonDirective, SwitchComponent, SwitchCustomMessagesComponent, FormComponent, FormSeparatorComponent, FormFieldSetComponent, FormFieldComponent, HintComponent, ErrorComponent, FormFieldComponent, HintComponent, ErrorComponent, SliderComponent, SliderCustomMessagesComponent, LabelTemplateDirective, RangeSliderComponent, RangeSliderCustomMessagesComponent, LabelTemplateDirective, RatingComponent, RatingItemTemplateDirective, RatingHoveredItemTemplateDirective, RatingSelectedItemTemplateDirective, SignatureComponent, SignatureCustomMessagesComponent, ColorPickerComponent, ColorPickerCustomMessagesComponent, FlatColorPickerComponent, ColorPickerCustomMessagesComponent, ColorGradientComponent, ColorPickerCustomMessagesComponent, ColorPaletteComponent, ColorPickerCustomMessagesComponent, OTPInputComponent, OTPInputCustomMessagesComponent, i7.PrefixTemplateDirective, i7.SuffixTemplateDirective, i7.SeparatorComponent] });
|
|
19818
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputsModule, providers: [IconsService, PopupService, ResizeBatchService, DialogContainerService, DialogService, WindowService, WindowContainerService, AdaptiveService], imports: [TextBoxComponent, i7.SeparatorComponent, NumericTextBoxComponent, i7.SeparatorComponent, i7.SeparatorComponent, i7.SeparatorComponent, FormComponent, SliderComponent, RangeSliderComponent, RatingComponent, SignatureComponent, ColorPickerComponent, FlatColorPickerComponent, ColorGradientComponent, OTPInputComponent, i7.SeparatorComponent] });
|
|
19198
19819
|
}
|
|
19199
19820
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputsModule, decorators: [{
|
|
19200
19821
|
type: NgModule,
|
|
@@ -19643,6 +20264,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19643
20264
|
}]
|
|
19644
20265
|
}] });
|
|
19645
20266
|
|
|
20267
|
+
//IMPORTANT: NgModule export kept for backwards compatibility
|
|
20268
|
+
/**
|
|
20269
|
+
* Defines the [NgModule](link:site.data.urls.angular['ngmoduleapi']) for the FormField, Error, and Hint components.
|
|
20270
|
+
*
|
|
20271
|
+
* Use this module to add Form features to your NgModule-based Angular application.
|
|
20272
|
+
*
|
|
20273
|
+
* @example
|
|
20274
|
+
* ```typescript
|
|
20275
|
+
* import { FormModule } from '@progress/kendo-angular-inputs';
|
|
20276
|
+
* import { NgModule } from '@angular/core';
|
|
20277
|
+
* import { BrowserModule } from '@angular/platform-browser';
|
|
20278
|
+
* import { AppComponent } from './app.component';
|
|
20279
|
+
*
|
|
20280
|
+
* @NgModule({
|
|
20281
|
+
* declarations: [AppComponent],
|
|
20282
|
+
* imports: [BrowserModule, FormModule],
|
|
20283
|
+
* bootstrap: [AppComponent]
|
|
20284
|
+
* })
|
|
20285
|
+
* export class AppModule {}
|
|
20286
|
+
* ```
|
|
20287
|
+
*/
|
|
20288
|
+
class FormModule {
|
|
20289
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
20290
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: FormModule, imports: [FormComponent, FormSeparatorComponent, FormFieldSetComponent, FormFieldComponent, HintComponent, ErrorComponent], exports: [FormComponent, FormSeparatorComponent, FormFieldSetComponent, FormFieldComponent, HintComponent, ErrorComponent] });
|
|
20291
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormModule, imports: [FormComponent] });
|
|
20292
|
+
}
|
|
20293
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormModule, decorators: [{
|
|
20294
|
+
type: NgModule,
|
|
20295
|
+
args: [{
|
|
20296
|
+
imports: [...KENDO_FORM],
|
|
20297
|
+
exports: [...KENDO_FORM]
|
|
20298
|
+
}]
|
|
20299
|
+
}] });
|
|
20300
|
+
|
|
19646
20301
|
//IMPORTANT: NgModule export kept for backwards compatibility
|
|
19647
20302
|
/**
|
|
19648
20303
|
* Defines the [`NgModule`](link:site.data.urls.angular['ngmoduleapi']) for the Signature component.
|
|
@@ -19717,5 +20372,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19717
20372
|
* Generated bundle index. Do not edit.
|
|
19718
20373
|
*/
|
|
19719
20374
|
|
|
19720
|
-
export { ActiveColorClickEvent, CheckBoxComponent, CheckBoxDirective, CheckBoxModule, ColorGradientComponent, ColorPaletteComponent, ColorPickerCancelEvent, ColorPickerCloseEvent, ColorPickerComponent, ColorPickerCustomMessagesComponent, ColorPickerModule, ColorPickerOpenEvent, ErrorComponent, FlatColorPickerComponent, FormFieldComponent, FormFieldModule, HintComponent, InputSeparatorComponent, InputsModule, KENDO_CHECKBOX, KENDO_COLORGRADIENT, KENDO_COLORPALETTE, KENDO_COLORPICKER, KENDO_FLATCOLORPICKER, KENDO_FORMFIELD, KENDO_INPUTS, KENDO_MASKEDTEXTBOX, KENDO_NUMERICTEXTBOX, KENDO_OTPINPUT, KENDO_RADIOBUTTON, KENDO_RANGESLIDER, KENDO_RATING, KENDO_SIGNATURE, KENDO_SLIDER, KENDO_SWITCH, KENDO_TEXTAREA, KENDO_TEXTBOX, LabelTemplateDirective, LocalizedColorPickerMessagesDirective, LocalizedNumericTextBoxMessagesDirective, LocalizedRangeSliderMessagesDirective, LocalizedSignatureMessagesDirective, LocalizedSliderMessagesDirective, LocalizedSwitchMessagesDirective, LocalizedTextBoxMessagesDirective, MaskedTextBoxComponent, MaskedTextBoxModule, MaskingService, NumericLabelDirective, NumericTextBoxComponent, NumericTextBoxCustomMessagesComponent, NumericTextBoxModule, OTPInputComponent, OTPInputCustomMessagesComponent, OTPInputModule, RadioButtonComponent, RadioButtonDirective, RadioButtonModule, RangeSliderComponent, RangeSliderCustomMessagesComponent, RangeSliderModule, RatingComponent, RatingHoveredItemTemplateDirective, RatingItemTemplateDirective, RatingModule, RatingSelectedItemTemplateDirective, SignatureCloseEvent, SignatureComponent, SignatureCustomMessagesComponent, SignatureMessages, SignatureModule, SignatureOpenEvent, SliderComponent, SliderCustomMessagesComponent, SliderModule, SliderTicksComponent, SwitchBlurEvent, SwitchComponent, SwitchCustomMessagesComponent, SwitchFocusEvent, SwitchModule, TextAreaComponent, TextAreaDirective, TextAreaModule, TextAreaPrefixComponent, TextAreaSuffixComponent, TextBoxComponent, TextBoxCustomMessagesComponent, TextBoxDirective, TextBoxModule, TextBoxPrefixTemplateDirective, TextBoxSuffixTemplateDirective };
|
|
20375
|
+
export { ActiveColorClickEvent, CheckBoxComponent, CheckBoxDirective, CheckBoxModule, ColorGradientComponent, ColorPaletteComponent, ColorPickerCancelEvent, ColorPickerCloseEvent, ColorPickerComponent, ColorPickerCustomMessagesComponent, ColorPickerModule, ColorPickerOpenEvent, ErrorComponent, FlatColorPickerComponent, FormComponent, FormFieldComponent, FormFieldModule, FormFieldSetComponent, FormModule, FormSeparatorComponent, HintComponent, InputSeparatorComponent, InputsModule, KENDO_CHECKBOX, KENDO_COLORGRADIENT, KENDO_COLORPALETTE, KENDO_COLORPICKER, KENDO_FLATCOLORPICKER, KENDO_FORM, KENDO_FORMFIELD, KENDO_INPUTS, KENDO_MASKEDTEXTBOX, KENDO_NUMERICTEXTBOX, KENDO_OTPINPUT, KENDO_RADIOBUTTON, KENDO_RANGESLIDER, KENDO_RATING, KENDO_SIGNATURE, KENDO_SLIDER, KENDO_SWITCH, KENDO_TEXTAREA, KENDO_TEXTBOX, LabelTemplateDirective, LocalizedColorPickerMessagesDirective, LocalizedNumericTextBoxMessagesDirective, LocalizedRangeSliderMessagesDirective, LocalizedSignatureMessagesDirective, LocalizedSliderMessagesDirective, LocalizedSwitchMessagesDirective, LocalizedTextBoxMessagesDirective, MaskedTextBoxComponent, MaskedTextBoxModule, MaskingService, NumericLabelDirective, NumericTextBoxComponent, NumericTextBoxCustomMessagesComponent, NumericTextBoxModule, OTPInputComponent, OTPInputCustomMessagesComponent, OTPInputModule, RadioButtonComponent, RadioButtonDirective, RadioButtonModule, RangeSliderComponent, RangeSliderCustomMessagesComponent, RangeSliderModule, RatingComponent, RatingHoveredItemTemplateDirective, RatingItemTemplateDirective, RatingModule, RatingSelectedItemTemplateDirective, SignatureCloseEvent, SignatureComponent, SignatureCustomMessagesComponent, SignatureMessages, SignatureModule, SignatureOpenEvent, SliderComponent, SliderCustomMessagesComponent, SliderModule, SliderTicksComponent, SwitchBlurEvent, SwitchComponent, SwitchCustomMessagesComponent, SwitchFocusEvent, SwitchModule, TextAreaComponent, TextAreaDirective, TextAreaModule, TextAreaPrefixComponent, TextAreaSuffixComponent, TextBoxComponent, TextBoxCustomMessagesComponent, TextBoxDirective, TextBoxModule, TextBoxPrefixTemplateDirective, TextBoxSuffixTemplateDirective };
|
|
19721
20376
|
|