@progress/kendo-themes-html 4.42.1-dev.4 → 4.43.0

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.
@@ -66,6 +66,16 @@ const booleanAttr = new Set([
66
66
  'aria'
67
67
  ]);
68
68
 
69
+ const nullAttr = new Set([
70
+ 'size',
71
+ 'rounded',
72
+ 'fillMode',
73
+ 'themeColor',
74
+
75
+ 'trackRounded',
76
+ 'thumbRounded'
77
+ ]);
78
+
69
79
  const skipAttr = new Set([
70
80
  'is',
71
81
  'aria',
@@ -144,6 +154,10 @@ function attrToProps( attributes ) {
144
154
  attrName = attrMap[attrName];
145
155
  }
146
156
 
157
+ // Set props as is
158
+ props[ attrName ] = attrValue;
159
+
160
+ // Ensure boolean value
147
161
  if (booleanAttr.has(attrName) && typeof attrValue === 'string') {
148
162
  switch (attrValue) {
149
163
  case '':
@@ -154,8 +168,11 @@ function attrToProps( attributes ) {
154
168
  props[ attrName ] = false;
155
169
  break;
156
170
  }
157
- } else {
158
- props[ attrName ] = attrValue;
171
+ }
172
+
173
+ // Ensure null value
174
+ if (nullAttr.has(attrName) && attrValue === 'null') {
175
+ props[ attrName ] = null;
159
176
  }
160
177
  });
161
178
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@progress/kendo-themes-html",
3
3
  "description": "A collection of HTML helpers used for developing Kendo UI themes",
4
- "version": "4.42.1-dev.4",
4
+ "version": "4.43.0",
5
5
  "author": "Progress",
6
6
  "license": "Apache-2.0",
7
7
  "keywords": [
@@ -42,5 +42,5 @@
42
42
  "@rollup/plugin-node-resolve": "^13.0.6",
43
43
  "rollup": "^2.59.0"
44
44
  },
45
- "gitHead": "e858f6d0ffd07117aa86b4c83d28e9999b2884f9"
45
+ "gitHead": "8841c18b8c8f2b159bcd5ed316ce283c5de2fd7c"
46
46
  }
@@ -138,10 +138,10 @@ AutocompleteStatic.propTypes = {
138
138
  prefix: typeof '#fragment',
139
139
  suffix: typeof '#fragment',
140
140
 
141
- size: typeof [ 'none', 'small', 'medium', 'large' ],
142
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
141
+ size: typeof [ null, 'small', 'medium', 'large' ],
142
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
143
143
 
144
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
144
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
145
145
 
146
146
  hover: typeof false,
147
147
  focus: typeof false,
@@ -0,0 +1,21 @@
1
+ ```html
2
+ <!-- default rendering -->
3
+ <div class="k-avatar k-avatar-md k-rounded-circle k-avatar-solid k-avatar-solid-primary">
4
+ <span class="k-avatar-image">
5
+ <img src="../../assets/avatar.jpg" class="">
6
+ </span>
7
+ </div>
8
+
9
+ <!-- canonical rendering -->
10
+ <div class="
11
+ k-avatar
12
+ k-avatar-{size}
13
+ k-rounded-{rounded}
14
+ k-avatar-{fillMode}
15
+ k-avatar-{fillMode}-{themeColor}
16
+ ">
17
+ <span class="k-avatar-{type}">
18
+ {content}
19
+ </span>
20
+ </div>
21
+ ```
@@ -0,0 +1,116 @@
1
+ import * as styles from '../../utils/styles';
2
+ import { Component, globalDefaultProps } from '../component';
3
+
4
+ class Avatar extends Component {
5
+ render() {
6
+ return <AvatarStatic {...this.props} />;
7
+ }
8
+ }
9
+
10
+ function AvatarStatic(props) {
11
+ const {
12
+ className: ownClassName,
13
+
14
+ children,
15
+
16
+ type,
17
+
18
+ size,
19
+ shape,
20
+ rounded,
21
+ bordered,
22
+
23
+ fillMode,
24
+ themeColor,
25
+
26
+ aria,
27
+ legacy,
28
+
29
+ ...htmlAttributes
30
+ } = props;
31
+
32
+ let avatarClasses = [
33
+ ownClassName,
34
+ 'k-avatar',
35
+ styles.sizeClass( size, 'k-avatar' ),
36
+ styles.roundedClass( rounded ),
37
+ styles.fillModeClass( fillMode, 'k-avatar' ),
38
+ styles.shapeClass( shape, 'k-avatar' ),
39
+ styles.themeColorClass( fillMode, themeColor, 'k-avatar' ),
40
+ styles.borderedClass( bordered, 'k-avatar' ),
41
+ ];
42
+
43
+ let legacyClasses = [
44
+ ownClassName,
45
+ 'k-avatar',
46
+ `k-avatar-${themeColor}`,
47
+ {
48
+ 'k-avatar-circle': rounded === 'circle',
49
+ 'k-avatar-rounded': rounded !== 'circle' && rounded !== null
50
+ },
51
+ styles.sizeClass( size, 'k-avatar' ),
52
+ styles.fillModeClass( fillMode, 'k-avatar' ),
53
+ styles.borderedClass( bordered, 'k-avatar' ),
54
+ ];
55
+
56
+ let ariaAttr = aria
57
+ ? {}
58
+ : {};
59
+
60
+ if (legacy) {
61
+ return (
62
+ <span className={legacyClasses} {...ariaAttr} {...htmlAttributes}>
63
+ <span className={`k-avatar-${type}`}>
64
+ {children}
65
+ </span>
66
+ </span>
67
+ );
68
+ }
69
+
70
+ return (
71
+ <span className={avatarClasses} {...ariaAttr} {...htmlAttributes}>
72
+ <span className={`k-avatar-${type}`}>
73
+ {children}
74
+ </span>
75
+ </span>
76
+ );
77
+ }
78
+
79
+ AvatarStatic.defaultProps = {
80
+ ...globalDefaultProps,
81
+
82
+ className: '',
83
+ children: [],
84
+
85
+ type: '',
86
+
87
+ size: 'medium',
88
+ shape: 'square',
89
+ rounded: 'circle',
90
+ bordered: false,
91
+
92
+ fillMode: 'solid',
93
+ themeColor: 'primary'
94
+ };
95
+
96
+ AvatarStatic.propTypes = {
97
+ className: typeof '',
98
+ children: typeof [],
99
+
100
+ type: typeof '',
101
+
102
+ size: typeof [ null, 'small', 'medium', 'large', 'circle' ],
103
+ shape: typeof [ null, 'square', 'circle', 'rounded' ],
104
+ rounded: typeof [ null, '0', 'small', 'medium', 'large' ],
105
+ bordered: typeof false,
106
+
107
+ fillMode: typeof [ null, 'solid', 'outline' ],
108
+ themeColor: typeof [ null, 'primary' ],
109
+
110
+ aria: typeof false,
111
+ legacy: typeof false,
112
+
113
+ htmlAttributes: typeof []
114
+ };
115
+
116
+ export { Avatar, AvatarStatic };
@@ -0,0 +1 @@
1
+ export * from './avatar.jsx';
@@ -124,12 +124,12 @@ ButtonStatic.propTypes = {
124
124
 
125
125
  type: typeof [ 'button', 'submit', 'reset' ],
126
126
 
127
- size: typeof [ 'none', 'small', 'medium', 'large' ],
128
- rounded: typeof [ 'none', '0', 'small', 'medium', 'large', 'pill', 'circle' ],
129
- shape: typeof [ 'none', 'rectangle', 'square' ],
127
+ size: typeof [ null, 'small', 'medium', 'large' ],
128
+ rounded: typeof [ null, '0', 'small', 'medium', 'large', 'pill', 'circle' ],
129
+ shape: typeof [ null, 'rectangle', 'square' ],
130
130
 
131
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline', 'link' ],
132
- themeColor: typeof [ 'none', 'surface', 'base', 'primary' ],
131
+ fillMode: typeof [ null, 'solid', 'flat', 'outline', 'link' ],
132
+ themeColor: typeof [ null, 'surface', 'base', 'primary' ],
133
133
 
134
134
  hover: typeof false,
135
135
  focus: typeof false,
@@ -103,8 +103,8 @@ CheckboxStatic.propTypes = {
103
103
  checked: typeof false,
104
104
  indeterminate: typeof false,
105
105
 
106
- size: typeof [ 'none', 'small', 'medium', 'large' ],
107
- rounded: typeof [ 'none', 'small', 'medium', 'large' ],
106
+ size: typeof [ null, 'small', 'medium', 'large' ],
107
+ rounded: typeof [ null, 'small', 'medium', 'large' ],
108
108
 
109
109
  hover: typeof false,
110
110
  focus: typeof false,
@@ -29,6 +29,10 @@ function ColorPreviewStatic(props) {
29
29
  }
30
30
  ];
31
31
 
32
+ let styles = {
33
+ 'background-color': color
34
+ };
35
+
32
36
  let ariaAttr = aria
33
37
  ? {}
34
38
  : {};
@@ -64,7 +68,7 @@ function ColorPreviewStatic(props) {
64
68
  return (
65
69
  <span className={colorPreviewClasses} {...ariaAttr} {...htmlAttributes}>
66
70
  {iconName && <IconStatic name={iconName} className="k-color-preview-icon" />}
67
- <span className="k-color-preview-mask"></span>
71
+ <span className="k-color-preview-mask" style={styles}></span>
68
72
  </span>
69
73
  );
70
74
  }
@@ -52,7 +52,8 @@ function ColorpickerStatic(props) {
52
52
 
53
53
  let colorpickerClasses = [
54
54
  ownClassName,
55
- 'k-colorpicker'
55
+ 'k-colorpicker',
56
+ 'k-icon-picker'
56
57
  ];
57
58
 
58
59
  let ariaAttr = aria
@@ -92,9 +93,9 @@ function ColorpickerStatic(props) {
92
93
  return (
93
94
  <PickerStatic className={colorpickerClasses} {...ariaAttr} {...htmlAttributes}>
94
95
  {prefix}
95
- <InputInnerSpanStatic showValue={false} valueIcon={<ColorPreviewStatic className="k-icon k-value-icon" color={value} iconName={iconName} />} />
96
+ <InputInnerSpanStatic showValue={false} valueIcon={<ColorPreviewStatic className="k-value-icon" color={value} iconName={iconName} />} />
96
97
  {suffix}
97
- <ButtonStatic className="k-input-button" icon="arrow-s" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
98
+ <ButtonStatic className="k-input-button" icon="arrow-s" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
98
99
  </PickerStatic>
99
100
  );
100
101
  }
@@ -131,10 +132,10 @@ ColorpickerStatic.propTypes = {
131
132
  prefix: typeof '#fragment',
132
133
  suffix: typeof '#fragment',
133
134
 
134
- size: typeof [ 'none', 'small', 'medium', 'large' ],
135
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
135
+ size: typeof [ null, 'small', 'medium', 'large' ],
136
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
136
137
 
137
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
138
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
138
139
 
139
140
  hover: typeof false,
140
141
  focus: typeof false,
@@ -110,7 +110,7 @@ function ComboboxStatic(props) {
110
110
  <InputValidationIconStatic {...props} />
111
111
  <InputLoadingIconStatic {...props} />
112
112
  <InputClearValueStatic {...props} />
113
- <ButtonStatic className="k-input-button" icon="arrow-s" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
113
+ <ButtonStatic className="k-input-button" icon="arrow-s" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
114
114
  </InputStatic>
115
115
  );
116
116
  }
@@ -149,10 +149,10 @@ ComboboxStatic.propTypes = {
149
149
  prefix: typeof '#fragment',
150
150
  suffix: typeof '#fragment',
151
151
 
152
- size: typeof [ 'none', 'small', 'medium', 'large' ],
153
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
152
+ size: typeof [ null, 'small', 'medium', 'large' ],
153
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
154
154
 
155
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
155
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
156
156
 
157
157
  hover: typeof false,
158
158
  focus: typeof false,
@@ -111,7 +111,7 @@ function DateInputStatic(props) {
111
111
  <InputValidationIconStatic {...props} />
112
112
  <InputLoadingIconStatic {...props} />
113
113
  <InputClearValueStatic {...props} />
114
- {showSpinButton === true && <SpinButtonStatic className="k-input-spinner" />}
114
+ {showSpinButton === true && <SpinButtonStatic className="k-input-spinner" size={size} fillMode={fillMode} />}
115
115
  </InputStatic>
116
116
  );
117
117
  }
@@ -147,10 +147,10 @@ DateInputStatic.propTypes = {
147
147
  showLoadingIcon: typeof true,
148
148
  showClearButton: typeof true,
149
149
 
150
- size: typeof [ 'none', 'small', 'medium', 'large' ],
151
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
150
+ size: typeof [ null, 'small', 'medium', 'large' ],
151
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
152
152
 
153
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
153
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
154
154
 
155
155
  hover: typeof false,
156
156
  focus: typeof false,
@@ -110,7 +110,7 @@ function DatePickerStatic(props) {
110
110
  <InputValidationIconStatic {...props} />
111
111
  <InputLoadingIconStatic {...props} />
112
112
  <InputClearValueStatic {...props} />
113
- <ButtonStatic className="k-input-button" icon="calendar" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
113
+ <ButtonStatic className="k-input-button" icon="calendar" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
114
114
  </InputStatic>
115
115
  );
116
116
  }
@@ -149,10 +149,10 @@ DatePickerStatic.propTypes = {
149
149
  prefix: typeof '#fragment',
150
150
  suffix: typeof '#fragment',
151
151
 
152
- size: typeof [ 'none', 'small', 'medium', 'large' ],
153
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
152
+ size: typeof [ null, 'small', 'medium', 'large' ],
153
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
154
154
 
155
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
155
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
156
156
 
157
157
  hover: typeof false,
158
158
  focus: typeof false,
@@ -110,7 +110,7 @@ function DateTimePickerStatic(props) {
110
110
  <InputValidationIconStatic {...props} />
111
111
  <InputLoadingIconStatic {...props} />
112
112
  <InputClearValueStatic {...props} />
113
- <ButtonStatic className="k-input-button" icon="calendar" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
113
+ <ButtonStatic className="k-input-button" icon="calendar" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
114
114
  </InputStatic>
115
115
  );
116
116
  }
@@ -149,10 +149,10 @@ DateTimePickerStatic.propTypes = {
149
149
  prefix: typeof '#fragment',
150
150
  suffix: typeof '#fragment',
151
151
 
152
- size: typeof [ 'none', 'small', 'medium', 'large' ],
153
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
152
+ size: typeof [ null, 'small', 'medium', 'large' ],
153
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
154
154
 
155
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
155
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
156
156
 
157
157
  hover: typeof false,
158
158
  focus: typeof false,
@@ -71,7 +71,10 @@ function DropdownListStatic(props) {
71
71
 
72
72
  let dropdownListClasses = [
73
73
  ownClassName,
74
- 'k-dropdown'
74
+ 'k-dropdown',
75
+ {
76
+ 'k-icon-picker': showValue !== true && (valueIcon !== null || valueIconName !== '')
77
+ }
75
78
  ];
76
79
 
77
80
  let ariaAttr = aria
@@ -119,7 +122,7 @@ function DropdownListStatic(props) {
119
122
  <InputValidationIconStatic {...props} />
120
123
  <InputLoadingIconStatic {...props} />
121
124
  <InputClearValueStatic {...props} />
122
- <ButtonStatic className="k-input-button" icon={arrowIconName} rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
125
+ <ButtonStatic className="k-input-button" icon={arrowIconName} shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
123
126
  </PickerStatic>
124
127
  );
125
128
  }
@@ -168,10 +171,10 @@ DropdownListStatic.propTypes = {
168
171
  prefix: typeof '#fragment',
169
172
  suffix: typeof '#fragment',
170
173
 
171
- size: typeof [ 'none', 'small', 'medium', 'large' ],
172
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
174
+ size: typeof [ null, 'small', 'medium', 'large' ],
175
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
173
176
 
174
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
177
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
175
178
 
176
179
  hover: typeof false,
177
180
  focus: typeof false,
package/src/index.js CHANGED
@@ -26,6 +26,7 @@ export * from './input/index';
26
26
  // export * from './picker/index';
27
27
  // export * from './popup/index';
28
28
  // export * from './list/index';
29
+ export * from './avatar/index';
29
30
 
30
31
  // Native forms
31
32
  export * from './button/index';
@@ -126,10 +126,10 @@ InputStatic.propTypes = {
126
126
  prefix: typeof '#fragment',
127
127
  suffix: typeof '#fragment',
128
128
 
129
- size: typeof [ 'none', 'small', 'medium', 'large' ],
130
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
129
+ size: typeof [ null, 'small', 'medium', 'large' ],
130
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
131
131
 
132
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
132
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
133
133
 
134
134
  hover: typeof false,
135
135
  focus: typeof false,
@@ -124,10 +124,10 @@ PickerStatic.propTypes = {
124
124
  prefix: typeof '#fragment',
125
125
  suffix: typeof '#fragment',
126
126
 
127
- size: typeof [ 'none', 'small', 'medium', 'large' ],
128
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
127
+ size: typeof [ null, 'small', 'medium', 'large' ],
128
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
129
129
 
130
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
130
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
131
131
 
132
132
  hover: typeof false,
133
133
  focus: typeof false,
@@ -132,10 +132,10 @@ MaskedTextboxStatic.propTypes = {
132
132
  showLoadingIcon: typeof true,
133
133
  showClearButton: typeof true,
134
134
 
135
- size: typeof [ 'none', 'small', 'medium', 'large' ],
136
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
135
+ size: typeof [ null, 'small', 'medium', 'large' ],
136
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
137
137
 
138
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
138
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
139
139
 
140
140
  hover: typeof false,
141
141
  focus: typeof false,
@@ -112,7 +112,7 @@ function NumericTextboxStatic(props) {
112
112
  <InputValidationIconStatic {...props} />
113
113
  <InputLoadingIconStatic {...props} />
114
114
  <InputClearValueStatic {...props} />
115
- {showSpinButton === true && <SpinButtonStatic className="k-input-spinner" />}
115
+ {showSpinButton === true && <SpinButtonStatic className="k-input-spinner" size={size} fillMode={fillMode} />}
116
116
  </InputStatic>
117
117
  );
118
118
  }
@@ -148,10 +148,10 @@ NumericTextboxStatic.propTypes = {
148
148
  showLoadingIcon: typeof true,
149
149
  showClearButton: typeof true,
150
150
 
151
- size: typeof [ 'none', 'small', 'medium', 'large' ],
152
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
151
+ size: typeof [ null, 'small', 'medium', 'large' ],
152
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
153
153
 
154
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
154
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
155
155
 
156
156
  hover: typeof false,
157
157
  focus: typeof false,
@@ -86,7 +86,7 @@ RadioStatic.propTypes = {
86
86
 
87
87
  checked: typeof false,
88
88
 
89
- size: typeof [ 'none', 'small', 'medium', 'large' ],
89
+ size: typeof [ null, 'small', 'medium', 'large' ],
90
90
 
91
91
  hover: typeof false,
92
92
  focus: typeof false,
@@ -149,10 +149,10 @@ SearchboxInner.propTypes = {
149
149
  prefix: typeof '#fragment',
150
150
  suffix: typeof '#fragment',
151
151
 
152
- size: typeof [ 'none', 'small', 'medium', 'large' ],
153
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
152
+ size: typeof [ null, 'small', 'medium', 'large' ],
153
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
154
154
 
155
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
155
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
156
156
 
157
157
  hover: typeof false,
158
158
  focus: typeof false,
@@ -13,6 +13,9 @@ function SpinButtonStatic(props) {
13
13
  const {
14
14
  className: ownClassName,
15
15
 
16
+ size,
17
+ fillMode,
18
+
16
19
  aria,
17
20
  legacy,
18
21
 
@@ -43,8 +46,8 @@ function SpinButtonStatic(props) {
43
46
 
44
47
  return (
45
48
  <span className={spinButtonClasses} {...ariaAttr} {...htmlAttributes}>
46
- <ButtonStatic size="none" rounded="none" className="k-spinner-increase" icon="arrow-n" />
47
- <ButtonStatic size="none" rounded="none" className="k-spinner-decrease" icon="arrow-s" />
49
+ <ButtonStatic className="k-spinner-increase" icon="arrow-n" shape={null} rounded={null} size={size} fillMode={fillMode} />
50
+ <ButtonStatic className="k-spinner-decrease" icon="arrow-s" shape={null} rounded={null} size={size} fillMode={fillMode} />
48
51
  </span>
49
52
  );
50
53
  }
@@ -56,6 +59,9 @@ SpinButtonStatic.defaultProps = {
56
59
  SpinButtonStatic.propTypes = {
57
60
  className: typeof '',
58
61
 
62
+ size: typeof '',
63
+ fillMode: typeof '',
64
+
59
65
  aria: typeof false,
60
66
  legacy: typeof false,
61
67
 
@@ -114,9 +114,9 @@ SwitchStatic.propTypes = {
114
114
  onLabel: typeof '',
115
115
  offLabel: typeof '',
116
116
 
117
- size: typeof [ 'none', 'small', 'medium', 'large' ],
118
- trackRounded: typeof [ 'none', '0', 'small', 'medium', 'large', 'pill', 'circle' ],
119
- thumbRounded: typeof [ 'none', '0', 'small', 'medium', 'large', 'pill', 'circle' ],
117
+ size: typeof [ null, 'small', 'medium', 'large' ],
118
+ trackRounded: typeof [ null, '0', 'small', 'medium', 'large', 'pill', 'circle' ],
119
+ thumbRounded: typeof [ null, '0', 'small', 'medium', 'large', 'pill', 'circle' ],
120
120
 
121
121
  hover: typeof false,
122
122
  focus: typeof false,
@@ -116,10 +116,10 @@ TextareaStatic.propTypes = {
116
116
  prefix: typeof '#fragment',
117
117
  suffix: typeof '#fragment',
118
118
 
119
- size: typeof [ 'none', 'small', 'medium', 'large' ],
120
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
119
+ size: typeof [ null, 'small', 'medium', 'large' ],
120
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
121
121
 
122
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
122
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
123
123
 
124
124
  hover: typeof false,
125
125
  focus: typeof false,
@@ -139,10 +139,10 @@ TextboxStatic.propTypes = {
139
139
  prefix: typeof '#fragment',
140
140
  suffix: typeof '#fragment',
141
141
 
142
- size: typeof [ 'none', 'small', 'medium', 'large' ],
143
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
142
+ size: typeof [ null, 'small', 'medium', 'large' ],
143
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
144
144
 
145
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
145
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
146
146
 
147
147
  hover: typeof false,
148
148
  focus: typeof false,
@@ -110,7 +110,7 @@ function TimePickerStatic(props) {
110
110
  <InputValidationIconStatic {...props} />
111
111
  <InputLoadingIconStatic {...props} />
112
112
  <InputClearValueStatic {...props} />
113
- <ButtonStatic className="k-input-button" icon="clock" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
113
+ <ButtonStatic className="k-input-button" icon="clock" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
114
114
  </InputStatic>
115
115
  );
116
116
  }
@@ -149,10 +149,10 @@ TimePickerStatic.propTypes = {
149
149
  prefix: typeof '#fragment',
150
150
  suffix: typeof '#fragment',
151
151
 
152
- size: typeof [ 'none', 'small', 'medium', 'large' ],
153
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
152
+ size: typeof [ null, 'small', 'medium', 'large' ],
153
+ rounded: typeof [ null, 'small', 'medium', 'large', 'pill' ],
154
154
 
155
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
155
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
156
156
 
157
157
  hover: typeof false,
158
158
  focus: typeof false,
package/utils/styles.js CHANGED
@@ -25,7 +25,7 @@ function lookup( map, key ) {
25
25
  }
26
26
 
27
27
  function sizeClass( size, prefix ) {
28
- if ( size === 'none' ) {
28
+ if ( size === null ) {
29
29
  return '';
30
30
  }
31
31
 
@@ -33,7 +33,7 @@ function sizeClass( size, prefix ) {
33
33
  }
34
34
 
35
35
  function roundedClass( rounded ) {
36
- if ( rounded === 'none' ) {
36
+ if ( rounded === null ) {
37
37
  return '';
38
38
  }
39
39
 
@@ -41,7 +41,7 @@ function roundedClass( rounded ) {
41
41
  }
42
42
 
43
43
  function shapeClass( shape, prefix ) {
44
- if ( shape === 'none' ) {
44
+ if ( shape === null ) {
45
45
  return '';
46
46
  }
47
47
 
@@ -49,7 +49,7 @@ function shapeClass( shape, prefix ) {
49
49
  }
50
50
 
51
51
  function fillModeClass( fill, prefix ) {
52
- if ( fill === 'none' ) {
52
+ if ( fill === null) {
53
53
  return '';
54
54
  }
55
55
 
@@ -57,13 +57,21 @@ function fillModeClass( fill, prefix ) {
57
57
  }
58
58
 
59
59
  function themeColorClass( fill, color, prefix ) {
60
- if ( fill === 'none' || color === 'none' ) {
60
+ if ( fill === null || color === null) {
61
61
  return '';
62
62
  }
63
63
 
64
64
  return `${prefix}-${fill}-${color}`;
65
65
  }
66
66
 
67
+ function borderedClass( bordered, prefix ) {
68
+ if ( !bordered ) {
69
+ return '';
70
+ }
71
+
72
+ return `${prefix}-bordered`;
73
+ }
74
+
67
75
  function classNames( ...args ) {
68
76
 
69
77
  /* eslint-disable arrow-body-style, no-nested-ternary */
@@ -122,6 +130,7 @@ export {
122
130
  shapeClass,
123
131
  fillModeClass,
124
132
  themeColorClass,
133
+ borderedClass,
125
134
 
126
135
  classNames,
127
136
  cssStyle,