@progress/kendo-angular-inputs 19.3.0-develop.10 → 19.3.0-develop.12
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/common/models/gutters.d.ts +15 -9
- package/common/models/responsive-breakpoints.d.ts +16 -6
- package/esm2022/form/form.component.mjs +16 -20
- package/esm2022/form/utils.mjs +20 -14
- package/esm2022/formfieldset/formfieldset.component.mjs +12 -17
- package/esm2022/package-metadata.mjs +2 -2
- package/fesm2022/progress-kendo-angular-inputs.mjs +46 -50
- package/form/form.component.d.ts +3 -7
- package/form/utils.d.ts +15 -14
- package/formfieldset/formfieldset.component.d.ts +3 -7
- package/package.json +12 -12
|
@@ -4,19 +4,25 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { ResponsiveFormBreakPoint } from './responsive-breakpoints';
|
|
6
6
|
/**
|
|
7
|
-
* Represents the gutters configuration for a
|
|
8
|
-
*
|
|
9
|
-
*
|
|
7
|
+
* Represents the gutters configuration for a Form layout. Defines the spacing between the columns and rows of the Form.
|
|
8
|
+
* Set any property to a number or a string to apply that value as a fixed gutter size. Set it to an array of responsive breakpoints to allow different gutter sizes in relation to the current Form width.
|
|
9
|
+
* Numeric values are interpreted as pixels. String values can include units like `px`, `rem`, `em`, etc.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* const formGutters: Gutters = {
|
|
14
|
+
* cols: 16,
|
|
15
|
+
* rows: '1rem'
|
|
16
|
+
* };
|
|
17
|
+
* ```
|
|
10
18
|
*/
|
|
11
19
|
export interface Gutters {
|
|
12
20
|
/**
|
|
13
|
-
* Defines the gutters for the columns in the
|
|
14
|
-
* Can be a number or an array of responsive breakpoints.
|
|
21
|
+
* Defines the gutters for the columns in the Form.
|
|
15
22
|
*/
|
|
16
|
-
cols?: number | ResponsiveFormBreakPoint[];
|
|
23
|
+
cols?: number | string | ResponsiveFormBreakPoint[];
|
|
17
24
|
/**
|
|
18
|
-
* Defines the gutters for the rows in the
|
|
19
|
-
* Can be a number or an array of responsive breakpoints.
|
|
25
|
+
* Defines the gutters for the rows in the Form.
|
|
20
26
|
*/
|
|
21
|
-
rows?: number | ResponsiveFormBreakPoint[];
|
|
27
|
+
rows?: number | string | ResponsiveFormBreakPoint[];
|
|
22
28
|
}
|
|
@@ -3,22 +3,32 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Defines responsive breakpoints for form controls in relation to the width of the Form component.
|
|
7
7
|
* Each breakpoint can specify a minimum and/or maximum width, and a value that represents either the number of columns
|
|
8
8
|
* or the colspan/gutters for that breakpoint.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* const breakpoints: ResponsiveFormBreakPoint[] = [
|
|
13
|
+
* { minWidth: 768, value: 2 },
|
|
14
|
+
* { maxWidth: 767, value: 1 }
|
|
15
|
+
* ];
|
|
16
|
+
* ```
|
|
9
17
|
*/
|
|
10
18
|
export interface ResponsiveFormBreakPoint {
|
|
11
19
|
/**
|
|
12
|
-
*
|
|
20
|
+
* Specifies the minimum Form width for this breakpoint in pixels.
|
|
13
21
|
*/
|
|
14
22
|
minWidth?: number;
|
|
15
23
|
/**
|
|
16
|
-
*
|
|
24
|
+
* Specifies the maximum Form width for this breakpoint in pixels.
|
|
17
25
|
*/
|
|
18
26
|
maxWidth?: number;
|
|
19
27
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
28
|
+
* Specifies the value associated with this breakpoint.
|
|
29
|
+
* Can represent the number of columns or the colspan/gutters for the form control.
|
|
30
|
+
* For gutters configurations, numeric values are interpreted as pixels, while string values can include units like `px`, `em`, etc.
|
|
31
|
+
* For columns number and colspan, numeric values are typically used and strings are parsed to numbers.
|
|
22
32
|
*/
|
|
23
|
-
value: number;
|
|
33
|
+
value: number | string;
|
|
24
34
|
}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { NgClass, NgIf } from '@angular/common';
|
|
5
|
+
import { NgClass, NgIf, NgStyle } from '@angular/common';
|
|
6
6
|
import { Component, ElementRef, HostBinding, Input, ChangeDetectorRef } from '@angular/core';
|
|
7
7
|
import { ResizeSensorComponent, shouldShowValidationUI, WatermarkOverlayComponent } from '@progress/kendo-angular-common';
|
|
8
|
-
import { calculateColumns, calculateGutters, generateColumnClass,
|
|
8
|
+
import { calculateColumns, calculateGutters, DEFAULT_GUTTERS, generateColumnClass, generateGuttersStyling, innerWidth } from './utils';
|
|
9
9
|
import { FormService } from '../common/formservice.service';
|
|
10
10
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
11
11
|
import { packageMetadata } from '../package-metadata';
|
|
@@ -36,7 +36,7 @@ export class FormComponent {
|
|
|
36
36
|
* Defines the gutters for the form.
|
|
37
37
|
* You can specify gutters for rows and columns.
|
|
38
38
|
*/
|
|
39
|
-
gutters;
|
|
39
|
+
gutters = { ...DEFAULT_GUTTERS };
|
|
40
40
|
/**
|
|
41
41
|
* @hidden
|
|
42
42
|
*/
|
|
@@ -44,21 +44,19 @@ export class FormComponent {
|
|
|
44
44
|
/**
|
|
45
45
|
* @hidden
|
|
46
46
|
*/
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* @hidden
|
|
50
|
-
*/
|
|
51
|
-
colsGutterClass = '';
|
|
47
|
+
guttersStyle = '';
|
|
52
48
|
/**
|
|
53
49
|
* @hidden
|
|
54
50
|
*/
|
|
55
51
|
showLicenseWatermark = false;
|
|
56
|
-
formClass
|
|
52
|
+
get formClass() {
|
|
53
|
+
return 'k-form k-form-md';
|
|
54
|
+
}
|
|
57
55
|
get horizontalClass() {
|
|
58
56
|
return this.orientation === 'horizontal';
|
|
59
57
|
}
|
|
60
58
|
_formColumnsNumber;
|
|
61
|
-
_formGutters;
|
|
59
|
+
_formGutters = { ...DEFAULT_GUTTERS };
|
|
62
60
|
constructor(element, cdr, formService) {
|
|
63
61
|
this.element = element;
|
|
64
62
|
this.cdr = cdr;
|
|
@@ -75,7 +73,7 @@ export class FormComponent {
|
|
|
75
73
|
if (changes['cols']) {
|
|
76
74
|
this.applyColumns();
|
|
77
75
|
}
|
|
78
|
-
|
|
76
|
+
if (changes['gutters']) {
|
|
79
77
|
this.applyGutters();
|
|
80
78
|
}
|
|
81
79
|
}
|
|
@@ -109,18 +107,16 @@ export class FormComponent {
|
|
|
109
107
|
this.columnsClass = generateColumnClass(this._formColumnsNumber);
|
|
110
108
|
}
|
|
111
109
|
updateGutterClasses() {
|
|
112
|
-
|
|
113
|
-
this.rowsGutterClass = gutterClasses.rows;
|
|
114
|
-
this.colsGutterClass = gutterClasses.cols;
|
|
110
|
+
this.guttersStyle = generateGuttersStyling(this._formGutters);
|
|
115
111
|
}
|
|
116
112
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
117
|
-
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
|
|
118
|
-
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass
|
|
113
|
+
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: `
|
|
114
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{ gap: guttersStyle }">
|
|
119
115
|
<ng-content></ng-content>
|
|
120
116
|
</div>
|
|
121
117
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
122
118
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
123
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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]" }] });
|
|
119
|
+
`, 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]" }] });
|
|
124
120
|
}
|
|
125
121
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormComponent, decorators: [{
|
|
126
122
|
type: Component,
|
|
@@ -128,14 +124,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
128
124
|
exportAs: 'kendoForm',
|
|
129
125
|
selector: 'form[kendoForm]',
|
|
130
126
|
template: `
|
|
131
|
-
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass
|
|
127
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{ gap: guttersStyle }">
|
|
132
128
|
<ng-content></ng-content>
|
|
133
129
|
</div>
|
|
134
130
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
135
131
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
136
132
|
`,
|
|
137
133
|
standalone: true,
|
|
138
|
-
imports: [NgClass, NgIf, ResizeSensorComponent, WatermarkOverlayComponent],
|
|
134
|
+
imports: [NgClass, NgStyle, NgIf, ResizeSensorComponent, WatermarkOverlayComponent],
|
|
139
135
|
}]
|
|
140
136
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.FormService }]; }, propDecorators: { orientation: [{
|
|
141
137
|
type: Input
|
|
@@ -145,7 +141,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
145
141
|
type: Input
|
|
146
142
|
}], formClass: [{
|
|
147
143
|
type: HostBinding,
|
|
148
|
-
args: ['class
|
|
144
|
+
args: ['class']
|
|
149
145
|
}], horizontalClass: [{
|
|
150
146
|
type: HostBinding,
|
|
151
147
|
args: ['class.k-form-horizontal']
|
package/esm2022/form/utils.mjs
CHANGED
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { processCssValue } from '@progress/kendo-angular-common';
|
|
6
|
+
/**
|
|
7
|
+
* @hidden
|
|
8
|
+
*/
|
|
9
|
+
export const DEFAULT_GUTTERS = { rows: '0px', cols: '32px' };
|
|
5
10
|
/**
|
|
6
11
|
* @hidden
|
|
7
12
|
*/
|
|
@@ -17,7 +22,7 @@ export function innerWidth(element) {
|
|
|
17
22
|
*/
|
|
18
23
|
export function processBreakpoints(breakpoints, containerWidth) {
|
|
19
24
|
if (!breakpoints?.length || containerWidth === null) {
|
|
20
|
-
return
|
|
25
|
+
return '';
|
|
21
26
|
}
|
|
22
27
|
for (const [index, breakpoint] of breakpoints.entries()) {
|
|
23
28
|
const minBreakpointWidth = breakpoint.minWidth || breakpoints[index - 1]?.maxWidth + 1 || 0;
|
|
@@ -26,7 +31,7 @@ export function processBreakpoints(breakpoints, containerWidth) {
|
|
|
26
31
|
return breakpoint.value;
|
|
27
32
|
}
|
|
28
33
|
}
|
|
29
|
-
return
|
|
34
|
+
return '';
|
|
30
35
|
}
|
|
31
36
|
/**
|
|
32
37
|
* @hidden
|
|
@@ -36,7 +41,8 @@ export const calculateColumns = (cols, containerWidth) => {
|
|
|
36
41
|
return null;
|
|
37
42
|
}
|
|
38
43
|
if (Array.isArray(cols) && cols.length > 0) {
|
|
39
|
-
|
|
44
|
+
const processedCols = processBreakpoints(cols, containerWidth) || null;
|
|
45
|
+
return typeof processedCols === 'string' ? parseInt(processedCols, 10) : processedCols;
|
|
40
46
|
}
|
|
41
47
|
else if (typeof cols === 'number') {
|
|
42
48
|
return cols;
|
|
@@ -52,18 +58,18 @@ export const calculateGutters = (gutters, containerWidth) => {
|
|
|
52
58
|
if (!gutters) {
|
|
53
59
|
return null;
|
|
54
60
|
}
|
|
55
|
-
if (typeof gutters === 'number') {
|
|
61
|
+
if (typeof gutters === 'number' || typeof gutters === 'string') {
|
|
56
62
|
return { cols: gutters, rows: gutters };
|
|
57
63
|
}
|
|
58
64
|
else if (Array.isArray(gutters)) {
|
|
59
|
-
const processedGutters = processBreakpoints(gutters, containerWidth);
|
|
65
|
+
const processedGutters = processBreakpoints(gutters, containerWidth) || null;
|
|
60
66
|
return processedGutters !== null ? { cols: processedGutters, rows: processedGutters } : null;
|
|
61
67
|
}
|
|
62
68
|
else if (typeof gutters === 'object') {
|
|
63
69
|
const gutterObject = gutters;
|
|
64
70
|
const result = { rows: null, cols: null };
|
|
65
71
|
if (gutterObject.cols !== undefined && gutterObject.cols !== null) {
|
|
66
|
-
if (typeof gutterObject.cols === 'number') {
|
|
72
|
+
if (typeof gutterObject.cols === 'number' || typeof gutterObject.cols === 'string') {
|
|
67
73
|
result.cols = gutterObject.cols;
|
|
68
74
|
}
|
|
69
75
|
else if (Array.isArray(gutterObject.cols)) {
|
|
@@ -74,7 +80,7 @@ export const calculateGutters = (gutters, containerWidth) => {
|
|
|
74
80
|
result.cols = null;
|
|
75
81
|
}
|
|
76
82
|
if (gutterObject.rows !== undefined) {
|
|
77
|
-
if (typeof gutterObject.rows === 'number') {
|
|
83
|
+
if (typeof gutterObject.rows === 'number' || typeof gutterObject.rows === 'string') {
|
|
78
84
|
result.rows = gutterObject.rows;
|
|
79
85
|
}
|
|
80
86
|
else if (Array.isArray(gutterObject.rows)) {
|
|
@@ -101,7 +107,8 @@ export const calculateColSpan = (colSpan, containerWidth) => {
|
|
|
101
107
|
return colSpan;
|
|
102
108
|
}
|
|
103
109
|
else if (Array.isArray(colSpan) && colSpan.length > 0) {
|
|
104
|
-
|
|
110
|
+
const processedColSpan = processBreakpoints(colSpan, containerWidth) || null;
|
|
111
|
+
return typeof processedColSpan === 'string' ? parseInt(processedColSpan, 10) : processedColSpan;
|
|
105
112
|
}
|
|
106
113
|
return null;
|
|
107
114
|
};
|
|
@@ -116,13 +123,12 @@ export const generateColumnClass = (columnsNumber) => {
|
|
|
116
123
|
/**
|
|
117
124
|
* @hidden
|
|
118
125
|
*
|
|
119
|
-
* Generates CSS
|
|
126
|
+
* Generates CSS styles for gutters based on the provided gutters object.
|
|
120
127
|
*/
|
|
121
|
-
export const
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
};
|
|
128
|
+
export const generateGuttersStyling = (gutters) => {
|
|
129
|
+
const rows = processCssValue(gutters?.rows);
|
|
130
|
+
const cols = processCssValue(gutters?.cols);
|
|
131
|
+
return `${rows ?? DEFAULT_GUTTERS.rows} ${cols ?? DEFAULT_GUTTERS.cols}`;
|
|
126
132
|
};
|
|
127
133
|
/**
|
|
128
134
|
* @hidden
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { NgClass, NgIf } from '@angular/common';
|
|
5
|
+
import { NgClass, NgIf, NgStyle } from '@angular/common';
|
|
6
6
|
import { Component, HostBinding, Input, ElementRef, Renderer2, ChangeDetectorRef, } from '@angular/core';
|
|
7
7
|
import { FormService } from '../common/formservice.service';
|
|
8
8
|
import { filter } from 'rxjs/operators';
|
|
9
|
-
import { calculateColSpan, calculateColumns, calculateGutters, generateColSpanClass, generateColumnClass,
|
|
9
|
+
import { calculateColSpan, calculateColumns, calculateGutters, DEFAULT_GUTTERS, generateColSpanClass, generateColumnClass, generateGuttersStyling } from '../form/utils';
|
|
10
10
|
import { Subscription } from 'rxjs';
|
|
11
11
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
12
12
|
import { packageMetadata } from '../package-metadata';
|
|
@@ -29,7 +29,7 @@ export class FormFieldSetComponent {
|
|
|
29
29
|
*/
|
|
30
30
|
legend;
|
|
31
31
|
/**
|
|
32
|
-
* Defines the number of columns the fieldset.
|
|
32
|
+
* Defines the number of columns of the fieldset.
|
|
33
33
|
* Can be a number or an array of responsive breakpoints.
|
|
34
34
|
*/
|
|
35
35
|
cols;
|
|
@@ -50,18 +50,14 @@ export class FormFieldSetComponent {
|
|
|
50
50
|
/**
|
|
51
51
|
* @hidden
|
|
52
52
|
*/
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* @hidden
|
|
56
|
-
*/
|
|
57
|
-
colsGutterClass = '';
|
|
53
|
+
guttersStyle = '';
|
|
58
54
|
_formColumnsNumber;
|
|
59
55
|
_colSpanClass = null;
|
|
60
56
|
_formWidth = null;
|
|
61
|
-
_formGutters =
|
|
57
|
+
_formGutters = { ...DEFAULT_GUTTERS };
|
|
62
58
|
_previousColSpan = null;
|
|
63
59
|
_previousCols = null;
|
|
64
|
-
_previousGutters
|
|
60
|
+
_previousGutters;
|
|
65
61
|
subs = new Subscription();
|
|
66
62
|
constructor(elementRef, renderer, formService, cdr) {
|
|
67
63
|
this.elementRef = elementRef;
|
|
@@ -115,9 +111,8 @@ export class FormFieldSetComponent {
|
|
|
115
111
|
this.cdr.detectChanges();
|
|
116
112
|
}
|
|
117
113
|
updateGutterClasses() {
|
|
118
|
-
|
|
119
|
-
this.
|
|
120
|
-
this.colsGutterClass = gutterClasses.cols;
|
|
114
|
+
this.guttersStyle = generateGuttersStyling(this._formGutters);
|
|
115
|
+
this.cdr.detectChanges();
|
|
121
116
|
}
|
|
122
117
|
updateColSpanClass() {
|
|
123
118
|
const hostElement = this.elementRef.nativeElement;
|
|
@@ -140,10 +135,10 @@ export class FormFieldSetComponent {
|
|
|
140
135
|
<legend *ngIf="legend" class="k-form-legend">
|
|
141
136
|
{{ legend }}
|
|
142
137
|
</legend>
|
|
143
|
-
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass
|
|
138
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{'gap': guttersStyle}">
|
|
144
139
|
<ng-content></ng-content>
|
|
145
140
|
</div>
|
|
146
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
141
|
+
`, 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"] }] });
|
|
147
142
|
}
|
|
148
143
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldSetComponent, decorators: [{
|
|
149
144
|
type: Component,
|
|
@@ -154,12 +149,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
154
149
|
<legend *ngIf="legend" class="k-form-legend">
|
|
155
150
|
{{ legend }}
|
|
156
151
|
</legend>
|
|
157
|
-
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass
|
|
152
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{'gap': guttersStyle}">
|
|
158
153
|
<ng-content></ng-content>
|
|
159
154
|
</div>
|
|
160
155
|
`,
|
|
161
156
|
standalone: true,
|
|
162
|
-
imports: [NgIf, NgClass],
|
|
157
|
+
imports: [NgIf, NgClass, NgStyle],
|
|
163
158
|
}]
|
|
164
159
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.FormService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { formFieldSetClass: [{
|
|
165
160
|
type: HostBinding,
|
|
@@ -10,7 +10,7 @@ export const packageMetadata = {
|
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCode: 'KENDOUIANGULAR',
|
|
12
12
|
productCodes: ['KENDOUIANGULAR'],
|
|
13
|
-
publishDate:
|
|
14
|
-
version: '19.3.0-develop.
|
|
13
|
+
publishDate: 1753180917,
|
|
14
|
+
version: '19.3.0-develop.12',
|
|
15
15
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
16
|
};
|
|
@@ -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, replaceMessagePlaceholder, shouldShowValidationUI, WatermarkOverlayComponent, SeparatorComponent, ResizeBatchService, KENDO_ADORNMENTS } 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, processCssValue, replaceMessagePlaceholder, 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';
|
|
@@ -550,8 +550,8 @@ const packageMetadata = {
|
|
|
550
550
|
productName: 'Kendo UI for Angular',
|
|
551
551
|
productCode: 'KENDOUIANGULAR',
|
|
552
552
|
productCodes: ['KENDOUIANGULAR'],
|
|
553
|
-
publishDate:
|
|
554
|
-
version: '19.3.0-develop.
|
|
553
|
+
publishDate: 1753180917,
|
|
554
|
+
version: '19.3.0-develop.12',
|
|
555
555
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
556
556
|
};
|
|
557
557
|
|
|
@@ -14215,6 +14215,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
14215
14215
|
}]
|
|
14216
14216
|
}] });
|
|
14217
14217
|
|
|
14218
|
+
/**
|
|
14219
|
+
* @hidden
|
|
14220
|
+
*/
|
|
14221
|
+
const DEFAULT_GUTTERS = { rows: '0px', cols: '32px' };
|
|
14218
14222
|
/**
|
|
14219
14223
|
* @hidden
|
|
14220
14224
|
*/
|
|
@@ -14230,7 +14234,7 @@ function innerWidth(element) {
|
|
|
14230
14234
|
*/
|
|
14231
14235
|
function processBreakpoints(breakpoints, containerWidth) {
|
|
14232
14236
|
if (!breakpoints?.length || containerWidth === null) {
|
|
14233
|
-
return
|
|
14237
|
+
return '';
|
|
14234
14238
|
}
|
|
14235
14239
|
for (const [index, breakpoint] of breakpoints.entries()) {
|
|
14236
14240
|
const minBreakpointWidth = breakpoint.minWidth || breakpoints[index - 1]?.maxWidth + 1 || 0;
|
|
@@ -14239,7 +14243,7 @@ function processBreakpoints(breakpoints, containerWidth) {
|
|
|
14239
14243
|
return breakpoint.value;
|
|
14240
14244
|
}
|
|
14241
14245
|
}
|
|
14242
|
-
return
|
|
14246
|
+
return '';
|
|
14243
14247
|
}
|
|
14244
14248
|
/**
|
|
14245
14249
|
* @hidden
|
|
@@ -14249,7 +14253,8 @@ const calculateColumns = (cols, containerWidth) => {
|
|
|
14249
14253
|
return null;
|
|
14250
14254
|
}
|
|
14251
14255
|
if (Array.isArray(cols) && cols.length > 0) {
|
|
14252
|
-
|
|
14256
|
+
const processedCols = processBreakpoints(cols, containerWidth) || null;
|
|
14257
|
+
return typeof processedCols === 'string' ? parseInt(processedCols, 10) : processedCols;
|
|
14253
14258
|
}
|
|
14254
14259
|
else if (typeof cols === 'number') {
|
|
14255
14260
|
return cols;
|
|
@@ -14265,18 +14270,18 @@ const calculateGutters = (gutters, containerWidth) => {
|
|
|
14265
14270
|
if (!gutters) {
|
|
14266
14271
|
return null;
|
|
14267
14272
|
}
|
|
14268
|
-
if (typeof gutters === 'number') {
|
|
14273
|
+
if (typeof gutters === 'number' || typeof gutters === 'string') {
|
|
14269
14274
|
return { cols: gutters, rows: gutters };
|
|
14270
14275
|
}
|
|
14271
14276
|
else if (Array.isArray(gutters)) {
|
|
14272
|
-
const processedGutters = processBreakpoints(gutters, containerWidth);
|
|
14277
|
+
const processedGutters = processBreakpoints(gutters, containerWidth) || null;
|
|
14273
14278
|
return processedGutters !== null ? { cols: processedGutters, rows: processedGutters } : null;
|
|
14274
14279
|
}
|
|
14275
14280
|
else if (typeof gutters === 'object') {
|
|
14276
14281
|
const gutterObject = gutters;
|
|
14277
14282
|
const result = { rows: null, cols: null };
|
|
14278
14283
|
if (gutterObject.cols !== undefined && gutterObject.cols !== null) {
|
|
14279
|
-
if (typeof gutterObject.cols === 'number') {
|
|
14284
|
+
if (typeof gutterObject.cols === 'number' || typeof gutterObject.cols === 'string') {
|
|
14280
14285
|
result.cols = gutterObject.cols;
|
|
14281
14286
|
}
|
|
14282
14287
|
else if (Array.isArray(gutterObject.cols)) {
|
|
@@ -14287,7 +14292,7 @@ const calculateGutters = (gutters, containerWidth) => {
|
|
|
14287
14292
|
result.cols = null;
|
|
14288
14293
|
}
|
|
14289
14294
|
if (gutterObject.rows !== undefined) {
|
|
14290
|
-
if (typeof gutterObject.rows === 'number') {
|
|
14295
|
+
if (typeof gutterObject.rows === 'number' || typeof gutterObject.rows === 'string') {
|
|
14291
14296
|
result.rows = gutterObject.rows;
|
|
14292
14297
|
}
|
|
14293
14298
|
else if (Array.isArray(gutterObject.rows)) {
|
|
@@ -14314,7 +14319,8 @@ const calculateColSpan = (colSpan, containerWidth) => {
|
|
|
14314
14319
|
return colSpan;
|
|
14315
14320
|
}
|
|
14316
14321
|
else if (Array.isArray(colSpan) && colSpan.length > 0) {
|
|
14317
|
-
|
|
14322
|
+
const processedColSpan = processBreakpoints(colSpan, containerWidth) || null;
|
|
14323
|
+
return typeof processedColSpan === 'string' ? parseInt(processedColSpan, 10) : processedColSpan;
|
|
14318
14324
|
}
|
|
14319
14325
|
return null;
|
|
14320
14326
|
};
|
|
@@ -14329,13 +14335,12 @@ const generateColumnClass = (columnsNumber) => {
|
|
|
14329
14335
|
/**
|
|
14330
14336
|
* @hidden
|
|
14331
14337
|
*
|
|
14332
|
-
* Generates CSS
|
|
14338
|
+
* Generates CSS styles for gutters based on the provided gutters object.
|
|
14333
14339
|
*/
|
|
14334
|
-
const
|
|
14335
|
-
|
|
14336
|
-
|
|
14337
|
-
|
|
14338
|
-
};
|
|
14340
|
+
const generateGuttersStyling = (gutters) => {
|
|
14341
|
+
const rows = processCssValue(gutters?.rows);
|
|
14342
|
+
const cols = processCssValue(gutters?.cols);
|
|
14343
|
+
return `${rows ?? DEFAULT_GUTTERS.rows} ${cols ?? DEFAULT_GUTTERS.cols}`;
|
|
14339
14344
|
};
|
|
14340
14345
|
/**
|
|
14341
14346
|
* @hidden
|
|
@@ -19022,7 +19027,7 @@ class FormComponent {
|
|
|
19022
19027
|
* Defines the gutters for the form.
|
|
19023
19028
|
* You can specify gutters for rows and columns.
|
|
19024
19029
|
*/
|
|
19025
|
-
gutters;
|
|
19030
|
+
gutters = { ...DEFAULT_GUTTERS };
|
|
19026
19031
|
/**
|
|
19027
19032
|
* @hidden
|
|
19028
19033
|
*/
|
|
@@ -19030,21 +19035,19 @@ class FormComponent {
|
|
|
19030
19035
|
/**
|
|
19031
19036
|
* @hidden
|
|
19032
19037
|
*/
|
|
19033
|
-
|
|
19034
|
-
/**
|
|
19035
|
-
* @hidden
|
|
19036
|
-
*/
|
|
19037
|
-
colsGutterClass = '';
|
|
19038
|
+
guttersStyle = '';
|
|
19038
19039
|
/**
|
|
19039
19040
|
* @hidden
|
|
19040
19041
|
*/
|
|
19041
19042
|
showLicenseWatermark = false;
|
|
19042
|
-
formClass
|
|
19043
|
+
get formClass() {
|
|
19044
|
+
return 'k-form k-form-md';
|
|
19045
|
+
}
|
|
19043
19046
|
get horizontalClass() {
|
|
19044
19047
|
return this.orientation === 'horizontal';
|
|
19045
19048
|
}
|
|
19046
19049
|
_formColumnsNumber;
|
|
19047
|
-
_formGutters;
|
|
19050
|
+
_formGutters = { ...DEFAULT_GUTTERS };
|
|
19048
19051
|
constructor(element, cdr, formService) {
|
|
19049
19052
|
this.element = element;
|
|
19050
19053
|
this.cdr = cdr;
|
|
@@ -19061,7 +19064,7 @@ class FormComponent {
|
|
|
19061
19064
|
if (changes['cols']) {
|
|
19062
19065
|
this.applyColumns();
|
|
19063
19066
|
}
|
|
19064
|
-
|
|
19067
|
+
if (changes['gutters']) {
|
|
19065
19068
|
this.applyGutters();
|
|
19066
19069
|
}
|
|
19067
19070
|
}
|
|
@@ -19095,18 +19098,16 @@ class FormComponent {
|
|
|
19095
19098
|
this.columnsClass = generateColumnClass(this._formColumnsNumber);
|
|
19096
19099
|
}
|
|
19097
19100
|
updateGutterClasses() {
|
|
19098
|
-
|
|
19099
|
-
this.rowsGutterClass = gutterClasses.rows;
|
|
19100
|
-
this.colsGutterClass = gutterClasses.cols;
|
|
19101
|
+
this.guttersStyle = generateGuttersStyling(this._formGutters);
|
|
19101
19102
|
}
|
|
19102
19103
|
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 });
|
|
19103
|
-
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
|
|
19104
|
-
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass
|
|
19104
|
+
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: `
|
|
19105
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{ gap: guttersStyle }">
|
|
19105
19106
|
<ng-content></ng-content>
|
|
19106
19107
|
</div>
|
|
19107
19108
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
19108
19109
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
19109
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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]" }] });
|
|
19110
|
+
`, 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]" }] });
|
|
19110
19111
|
}
|
|
19111
19112
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormComponent, decorators: [{
|
|
19112
19113
|
type: Component,
|
|
@@ -19114,14 +19115,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19114
19115
|
exportAs: 'kendoForm',
|
|
19115
19116
|
selector: 'form[kendoForm]',
|
|
19116
19117
|
template: `
|
|
19117
|
-
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass
|
|
19118
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{ gap: guttersStyle }">
|
|
19118
19119
|
<ng-content></ng-content>
|
|
19119
19120
|
</div>
|
|
19120
19121
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
19121
19122
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
19122
19123
|
`,
|
|
19123
19124
|
standalone: true,
|
|
19124
|
-
imports: [NgClass, NgIf, ResizeSensorComponent, WatermarkOverlayComponent],
|
|
19125
|
+
imports: [NgClass, NgStyle, NgIf, ResizeSensorComponent, WatermarkOverlayComponent],
|
|
19125
19126
|
}]
|
|
19126
19127
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: FormService }]; }, propDecorators: { orientation: [{
|
|
19127
19128
|
type: Input
|
|
@@ -19131,7 +19132,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19131
19132
|
type: Input
|
|
19132
19133
|
}], formClass: [{
|
|
19133
19134
|
type: HostBinding,
|
|
19134
|
-
args: ['class
|
|
19135
|
+
args: ['class']
|
|
19135
19136
|
}], horizontalClass: [{
|
|
19136
19137
|
type: HostBinding,
|
|
19137
19138
|
args: ['class.k-form-horizontal']
|
|
@@ -19222,7 +19223,7 @@ class FormFieldSetComponent {
|
|
|
19222
19223
|
*/
|
|
19223
19224
|
legend;
|
|
19224
19225
|
/**
|
|
19225
|
-
* Defines the number of columns the fieldset.
|
|
19226
|
+
* Defines the number of columns of the fieldset.
|
|
19226
19227
|
* Can be a number or an array of responsive breakpoints.
|
|
19227
19228
|
*/
|
|
19228
19229
|
cols;
|
|
@@ -19243,18 +19244,14 @@ class FormFieldSetComponent {
|
|
|
19243
19244
|
/**
|
|
19244
19245
|
* @hidden
|
|
19245
19246
|
*/
|
|
19246
|
-
|
|
19247
|
-
/**
|
|
19248
|
-
* @hidden
|
|
19249
|
-
*/
|
|
19250
|
-
colsGutterClass = '';
|
|
19247
|
+
guttersStyle = '';
|
|
19251
19248
|
_formColumnsNumber;
|
|
19252
19249
|
_colSpanClass = null;
|
|
19253
19250
|
_formWidth = null;
|
|
19254
|
-
_formGutters =
|
|
19251
|
+
_formGutters = { ...DEFAULT_GUTTERS };
|
|
19255
19252
|
_previousColSpan = null;
|
|
19256
19253
|
_previousCols = null;
|
|
19257
|
-
_previousGutters
|
|
19254
|
+
_previousGutters;
|
|
19258
19255
|
subs = new Subscription();
|
|
19259
19256
|
constructor(elementRef, renderer, formService, cdr) {
|
|
19260
19257
|
this.elementRef = elementRef;
|
|
@@ -19308,9 +19305,8 @@ class FormFieldSetComponent {
|
|
|
19308
19305
|
this.cdr.detectChanges();
|
|
19309
19306
|
}
|
|
19310
19307
|
updateGutterClasses() {
|
|
19311
|
-
|
|
19312
|
-
this.
|
|
19313
|
-
this.colsGutterClass = gutterClasses.cols;
|
|
19308
|
+
this.guttersStyle = generateGuttersStyling(this._formGutters);
|
|
19309
|
+
this.cdr.detectChanges();
|
|
19314
19310
|
}
|
|
19315
19311
|
updateColSpanClass() {
|
|
19316
19312
|
const hostElement = this.elementRef.nativeElement;
|
|
@@ -19333,10 +19329,10 @@ class FormFieldSetComponent {
|
|
|
19333
19329
|
<legend *ngIf="legend" class="k-form-legend">
|
|
19334
19330
|
{{ legend }}
|
|
19335
19331
|
</legend>
|
|
19336
|
-
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass
|
|
19332
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{'gap': guttersStyle}">
|
|
19337
19333
|
<ng-content></ng-content>
|
|
19338
19334
|
</div>
|
|
19339
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
19335
|
+
`, 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"] }] });
|
|
19340
19336
|
}
|
|
19341
19337
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldSetComponent, decorators: [{
|
|
19342
19338
|
type: Component,
|
|
@@ -19347,12 +19343,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19347
19343
|
<legend *ngIf="legend" class="k-form-legend">
|
|
19348
19344
|
{{ legend }}
|
|
19349
19345
|
</legend>
|
|
19350
|
-
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass
|
|
19346
|
+
<div class="k-form-layout k-d-grid" [ngClass]="[columnsClass]" [ngStyle]="{'gap': guttersStyle}">
|
|
19351
19347
|
<ng-content></ng-content>
|
|
19352
19348
|
</div>
|
|
19353
19349
|
`,
|
|
19354
19350
|
standalone: true,
|
|
19355
|
-
imports: [NgIf, NgClass],
|
|
19351
|
+
imports: [NgIf, NgClass, NgStyle],
|
|
19356
19352
|
}]
|
|
19357
19353
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: FormService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { formFieldSetClass: [{
|
|
19358
19354
|
type: HostBinding,
|
package/form/form.component.d.ts
CHANGED
|
@@ -33,7 +33,7 @@ export declare class FormComponent implements AfterContentInit, OnChanges {
|
|
|
33
33
|
* Defines the gutters for the form.
|
|
34
34
|
* You can specify gutters for rows and columns.
|
|
35
35
|
*/
|
|
36
|
-
gutters: number | ResponsiveFormBreakPoint[] | Gutters;
|
|
36
|
+
gutters: number | string | ResponsiveFormBreakPoint[] | Gutters;
|
|
37
37
|
/**
|
|
38
38
|
* @hidden
|
|
39
39
|
*/
|
|
@@ -41,16 +41,12 @@ export declare class FormComponent implements AfterContentInit, OnChanges {
|
|
|
41
41
|
/**
|
|
42
42
|
* @hidden
|
|
43
43
|
*/
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* @hidden
|
|
47
|
-
*/
|
|
48
|
-
colsGutterClass: string;
|
|
44
|
+
guttersStyle: string;
|
|
49
45
|
/**
|
|
50
46
|
* @hidden
|
|
51
47
|
*/
|
|
52
48
|
showLicenseWatermark: boolean;
|
|
53
|
-
formClass:
|
|
49
|
+
get formClass(): string;
|
|
54
50
|
get horizontalClass(): boolean;
|
|
55
51
|
private _formColumnsNumber;
|
|
56
52
|
private _formGutters;
|
package/form/utils.d.ts
CHANGED
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { Gutters } from '../common/models/gutters';
|
|
6
6
|
import { ResponsiveFormBreakPoint } from '../common/models/responsive-breakpoints';
|
|
7
|
+
/**
|
|
8
|
+
* @hidden
|
|
9
|
+
*/
|
|
10
|
+
export declare const DEFAULT_GUTTERS: Gutters;
|
|
7
11
|
/**
|
|
8
12
|
* @hidden
|
|
9
13
|
*/
|
|
@@ -11,7 +15,7 @@ export declare function innerWidth(element: HTMLElement): number;
|
|
|
11
15
|
/**
|
|
12
16
|
* @hidden
|
|
13
17
|
*/
|
|
14
|
-
export declare function processBreakpoints(breakpoints: ResponsiveFormBreakPoint[], containerWidth: number): number |
|
|
18
|
+
export declare function processBreakpoints(breakpoints: ResponsiveFormBreakPoint[], containerWidth: number): number | string;
|
|
15
19
|
/**
|
|
16
20
|
* @hidden
|
|
17
21
|
*/
|
|
@@ -21,16 +25,16 @@ export declare const calculateColumns: (cols: number | ResponsiveFormBreakPoint[
|
|
|
21
25
|
*
|
|
22
26
|
* Calculates gutters for rows and columns based on responsive breakpoints or fixed values
|
|
23
27
|
*/
|
|
24
|
-
export declare const calculateGutters: (gutters: number | ResponsiveFormBreakPoint[] | Gutters | undefined, containerWidth: number) => {
|
|
25
|
-
cols: number;
|
|
26
|
-
rows: number;
|
|
28
|
+
export declare const calculateGutters: (gutters: number | string | ResponsiveFormBreakPoint[] | Gutters | undefined, containerWidth: number) => {
|
|
29
|
+
cols: number | string;
|
|
30
|
+
rows: number | string;
|
|
27
31
|
} | null;
|
|
28
32
|
/**
|
|
29
33
|
* @hidden
|
|
30
34
|
*
|
|
31
35
|
* Calculates column span value based on responsive breakpoints or fixed number
|
|
32
36
|
*/
|
|
33
|
-
export declare const calculateColSpan: (colSpan: number | ResponsiveFormBreakPoint[]
|
|
37
|
+
export declare const calculateColSpan: (colSpan: number | ResponsiveFormBreakPoint[], containerWidth: number) => number | null;
|
|
34
38
|
/**
|
|
35
39
|
* @hidden
|
|
36
40
|
*
|
|
@@ -40,15 +44,12 @@ export declare const generateColumnClass: (columnsNumber: number | null) => stri
|
|
|
40
44
|
/**
|
|
41
45
|
* @hidden
|
|
42
46
|
*
|
|
43
|
-
* Generates CSS
|
|
44
|
-
*/
|
|
45
|
-
export declare const
|
|
46
|
-
cols
|
|
47
|
-
rows
|
|
48
|
-
} | null) =>
|
|
49
|
-
rows: string;
|
|
50
|
-
cols: string;
|
|
51
|
-
};
|
|
47
|
+
* Generates CSS styles for gutters based on the provided gutters object.
|
|
48
|
+
*/
|
|
49
|
+
export declare const generateGuttersStyling: (gutters: {
|
|
50
|
+
cols?: number | string;
|
|
51
|
+
rows?: number | string;
|
|
52
|
+
} | null) => string;
|
|
52
53
|
/**
|
|
53
54
|
* @hidden
|
|
54
55
|
*
|
|
@@ -24,7 +24,7 @@ export declare class FormFieldSetComponent implements OnInit, OnChanges {
|
|
|
24
24
|
*/
|
|
25
25
|
legend: string;
|
|
26
26
|
/**
|
|
27
|
-
* Defines the number of columns the fieldset.
|
|
27
|
+
* Defines the number of columns of the fieldset.
|
|
28
28
|
* Can be a number or an array of responsive breakpoints.
|
|
29
29
|
*/
|
|
30
30
|
cols: number | ResponsiveFormBreakPoint[];
|
|
@@ -32,7 +32,7 @@ export declare class FormFieldSetComponent implements OnInit, OnChanges {
|
|
|
32
32
|
* Defines the gutters for the fieldset.
|
|
33
33
|
* You can specify gutters for rows and columns.
|
|
34
34
|
*/
|
|
35
|
-
gutters: number | ResponsiveFormBreakPoint[] | Gutters;
|
|
35
|
+
gutters: number | string | ResponsiveFormBreakPoint[] | Gutters;
|
|
36
36
|
/**
|
|
37
37
|
* Defines the colspan for the fieldset related to the parent Form component columns.
|
|
38
38
|
* Can be a number or an array of responsive breakpoints.
|
|
@@ -45,11 +45,7 @@ export declare class FormFieldSetComponent implements OnInit, OnChanges {
|
|
|
45
45
|
/**
|
|
46
46
|
* @hidden
|
|
47
47
|
*/
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* @hidden
|
|
51
|
-
*/
|
|
52
|
-
colsGutterClass: string;
|
|
48
|
+
guttersStyle: string;
|
|
53
49
|
private _formColumnsNumber;
|
|
54
50
|
private _colSpanClass;
|
|
55
51
|
private _formWidth;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-inputs",
|
|
3
|
-
"version": "19.3.0-develop.
|
|
3
|
+
"version": "19.3.0-develop.12",
|
|
4
4
|
"description": "Kendo UI for Angular Inputs Package - Everything you need to build professional form functionality (Checkbox, ColorGradient, ColorPalette, ColorPicker, FlatColorPicker, FormField, MaskedTextBox, NumericTextBox, RadioButton, RangeSlider, Slider, Switch, TextArea, and TextBox Components)",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"package": {
|
|
29
29
|
"productName": "Kendo UI for Angular",
|
|
30
30
|
"productCode": "KENDOUIANGULAR",
|
|
31
|
-
"publishDate":
|
|
31
|
+
"publishDate": 1753180917,
|
|
32
32
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
33
33
|
}
|
|
34
34
|
},
|
|
@@ -40,20 +40,20 @@
|
|
|
40
40
|
"@angular/platform-browser": "16 - 20",
|
|
41
41
|
"@progress/kendo-drawing": "^1.21.0",
|
|
42
42
|
"@progress/kendo-licensing": "^1.5.0",
|
|
43
|
-
"@progress/kendo-angular-buttons": "19.3.0-develop.
|
|
44
|
-
"@progress/kendo-angular-common": "19.3.0-develop.
|
|
45
|
-
"@progress/kendo-angular-utils": "19.3.0-develop.
|
|
46
|
-
"@progress/kendo-angular-navigation": "19.3.0-develop.
|
|
47
|
-
"@progress/kendo-angular-dialog": "19.3.0-develop.
|
|
48
|
-
"@progress/kendo-angular-intl": "19.3.0-develop.
|
|
49
|
-
"@progress/kendo-angular-l10n": "19.3.0-develop.
|
|
50
|
-
"@progress/kendo-angular-popup": "19.3.0-develop.
|
|
51
|
-
"@progress/kendo-angular-icons": "19.3.0-develop.
|
|
43
|
+
"@progress/kendo-angular-buttons": "19.3.0-develop.12",
|
|
44
|
+
"@progress/kendo-angular-common": "19.3.0-develop.12",
|
|
45
|
+
"@progress/kendo-angular-utils": "19.3.0-develop.12",
|
|
46
|
+
"@progress/kendo-angular-navigation": "19.3.0-develop.12",
|
|
47
|
+
"@progress/kendo-angular-dialog": "19.3.0-develop.12",
|
|
48
|
+
"@progress/kendo-angular-intl": "19.3.0-develop.12",
|
|
49
|
+
"@progress/kendo-angular-l10n": "19.3.0-develop.12",
|
|
50
|
+
"@progress/kendo-angular-popup": "19.3.0-develop.12",
|
|
51
|
+
"@progress/kendo-angular-icons": "19.3.0-develop.12",
|
|
52
52
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
55
|
"tslib": "^2.3.1",
|
|
56
|
-
"@progress/kendo-angular-schematics": "19.3.0-develop.
|
|
56
|
+
"@progress/kendo-angular-schematics": "19.3.0-develop.12",
|
|
57
57
|
"@progress/kendo-common": "^1.0.1",
|
|
58
58
|
"@progress/kendo-draggable": "^3.0.0",
|
|
59
59
|
"@progress/kendo-inputs-common": "^3.1.0"
|