@progress/kendo-themes-html 5.0.0-alpha.3 → 5.0.0-beta.3

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.
Files changed (83) hide show
  1. package/lib/jsx-runtime.js +48 -3
  2. package/package.json +7 -7
  3. package/src/autocomplete/autocomplete.jsx +4 -4
  4. package/src/avatar/README.md +21 -0
  5. package/src/avatar/avatar.jsx +113 -0
  6. package/src/avatar/index.js +1 -0
  7. package/src/button/button.jsx +7 -7
  8. package/src/checkbox/checkbox.jsx +3 -3
  9. package/src/chip/README.md +47 -0
  10. package/src/chip/chip-actions.jsx +80 -0
  11. package/src/chip/chip-avatar.jsx +13 -0
  12. package/src/chip/chip-list.jsx +84 -0
  13. package/src/chip/chip.jsx +180 -0
  14. package/src/chip/index.js +4 -0
  15. package/src/colorpicker/README.md +24 -15
  16. package/src/colorpicker/color-preview.jsx +33 -22
  17. package/src/colorpicker/colorpicker.jsx +12 -13
  18. package/src/combobox/combobox.jsx +9 -11
  19. package/src/{component.js → component/component.jsx} +4 -2
  20. package/src/component/index.js +1 -0
  21. package/src/dateinput/dateinput.jsx +9 -11
  22. package/src/datepicker/datepicker.jsx +9 -11
  23. package/src/datetimepicker/datetimepicker.jsx +9 -11
  24. package/src/dropdownbutton/README.md +60 -0
  25. package/src/dropdownbutton/dropdownbutton.jsx +145 -0
  26. package/src/dropdownbutton/index.js +1 -0
  27. package/src/dropdownlist/dropdownlist.jsx +13 -12
  28. package/src/fab/README.md +19 -0
  29. package/src/fab/fab.jsx +154 -0
  30. package/src/fab/index.js +1 -0
  31. package/src/icon/icon.jsx +1 -1
  32. package/src/index.js +47 -4
  33. package/src/input/input-clear-value.jsx +1 -1
  34. package/src/input/input-inner-input.jsx +1 -1
  35. package/src/input/input-inner-span.jsx +1 -1
  36. package/src/input/input-inner-textarea.jsx +1 -1
  37. package/src/input/input-prefix.jsx +1 -1
  38. package/src/input/input-suffix.jsx +1 -1
  39. package/src/input/input.jsx +4 -4
  40. package/src/input/picker.jsx +6 -6
  41. package/src/list/README.md +107 -0
  42. package/src/list/index.js +5 -0
  43. package/src/list/list-content.jsx +95 -0
  44. package/src/list/list-group-item.jsx +66 -0
  45. package/src/list/list-header.jsx +67 -0
  46. package/src/list/list-item.jsx +117 -0
  47. package/src/list/list.jsx +182 -0
  48. package/src/maskedtextbox/maskedtextbox.jsx +11 -14
  49. package/src/menu/README.md +40 -0
  50. package/src/menu/index.js +3 -0
  51. package/src/menu/menu-item-content.jsx +48 -0
  52. package/src/menu/menu-item.jsx +174 -0
  53. package/src/menu/menu-list.jsx +74 -0
  54. package/src/menulist/menulist.jsx +67 -0
  55. package/src/multiselect/README.md +37 -0
  56. package/src/multiselect/index.js +2 -0
  57. package/src/multiselect/multiselect-chip-list.jsx +55 -0
  58. package/src/multiselect/multiselect.jsx +189 -0
  59. package/src/nodata/index.js +1 -0
  60. package/src/nodata/nodata.jsx +64 -0
  61. package/src/numerictextbox/numerictextbox.jsx +5 -5
  62. package/src/popup/README.md +15 -0
  63. package/src/popup/index.js +1 -0
  64. package/src/popup/popup.jsx +80 -0
  65. package/src/radio/radio.jsx +2 -2
  66. package/src/searchbar/searchbar.jsx +1 -1
  67. package/src/searchbox/searchbox.jsx +4 -4
  68. package/src/spinbutton/spinbutton.jsx +9 -3
  69. package/src/splitbutton/README.md +76 -0
  70. package/src/splitbutton/index.js +1 -0
  71. package/src/splitbutton/splitbutton.jsx +152 -0
  72. package/src/switch/README.md +3 -3
  73. package/src/switch/switch.jsx +6 -6
  74. package/src/textarea/textarea.jsx +4 -4
  75. package/src/textbox/textbox.jsx +4 -4
  76. package/src/timepicker/timepicker.jsx +9 -11
  77. package/src/treeview/README.md +0 -0
  78. package/src/treeview/index.js +4 -0
  79. package/src/treeview/treeview-group.jsx +70 -0
  80. package/src/treeview/treeview-item.jsx +142 -0
  81. package/src/treeview/treeview-leaf.jsx +99 -0
  82. package/src/treeview/treeview.jsx +125 -0
  83. package/utils/styles.js +23 -5
@@ -0,0 +1,180 @@
1
+ import * as styles from '../../utils/styles';
2
+ import { Component, globalDefaultProps } from '../component/index';
3
+ import { IconStatic } from '../icon/index';
4
+ import { ChipAvatarStatic } from './chip-avatar.jsx';
5
+ import { ChipActionsStatic } from './chip-actions.jsx';
6
+
7
+ class Chip extends Component {
8
+
9
+ init() {
10
+ let actions = this._props.actions;
11
+ let newActions = [];
12
+
13
+ if (actions === undefined) {
14
+ this._props.actions = [];
15
+ return;
16
+ }
17
+
18
+ if (Array.isArray(actions)) {
19
+ return;
20
+ }
21
+
22
+ actions.split(',').forEach(action => {
23
+ newActions.push(action.trim());
24
+ });
25
+
26
+ this._props.actions = newActions;
27
+ }
28
+
29
+ render() {
30
+ return <ChipStatic {...this.props} />;
31
+ }
32
+ }
33
+
34
+ function ChipStatic(props) {
35
+ const {
36
+ className: ownClassName,
37
+
38
+ children,
39
+
40
+ text,
41
+ icon,
42
+ actions,
43
+
44
+ showAvatar,
45
+
46
+ size,
47
+ rounded,
48
+
49
+ fillMode,
50
+ themeColor,
51
+
52
+ hover,
53
+ focus,
54
+ active,
55
+ selected,
56
+ disabled,
57
+
58
+ aria,
59
+ legacy,
60
+
61
+ ...htmlAttributes
62
+ } = props;
63
+
64
+ let chipClasses = [
65
+ ownClassName,
66
+ 'k-chip',
67
+ styles.sizeClass( size, 'k-chip' ),
68
+ styles.roundedClass( rounded ),
69
+ styles.fillModeClass( fillMode, 'k-chip' ),
70
+ styles.themeColorClass( fillMode, themeColor, 'k-chip' ),
71
+ {
72
+ 'k-hover': hover === true,
73
+ 'k-focus': focus === true,
74
+ 'k-active': active === true,
75
+ 'k-selected': selected === true,
76
+ 'k-disabled': disabled === true
77
+ }
78
+ ];
79
+
80
+ // Augment attributes
81
+ htmlAttributes.disabled = disabled;
82
+
83
+ let ariaAttr = aria
84
+ ? {}
85
+ : {};
86
+
87
+ if (legacy) {
88
+
89
+ let legacyClasses = [
90
+ ownClassName,
91
+ 'k-chip',
92
+ `k-chip-${themeColor}`,
93
+ {
94
+ 'k-chip-outline': fillMode === 'outline',
95
+ 'k-chip-solid': fillMode === 'solid',
96
+ 'k-state-hover': hover === true,
97
+ 'k-state-focus': focus === true,
98
+ 'k-state-active': active === true,
99
+ 'k-state-selected': selected === true,
100
+ 'k-state-disabled': disabled === true
101
+ }
102
+ ];
103
+
104
+ return (
105
+ <div className={legacyClasses} {...ariaAttr} {...htmlAttributes}>
106
+ <IconStatic className="k-chip-icon" name={icon} />
107
+ {showAvatar && <ChipAvatarStatic {...props} />}
108
+ <span className="k-chip-content">
109
+ { children.length
110
+ ? children
111
+ : text && <span className="k-chip-label">{text}</span>
112
+ }
113
+ </span>
114
+ { actions.length > 0 && <ChipActionsStatic actions={actions} />}
115
+ </div>
116
+ );
117
+ }
118
+
119
+ return (
120
+ <div className={chipClasses} {...ariaAttr} {...htmlAttributes}>
121
+ <IconStatic className="k-chip-icon" name={icon} />
122
+ {showAvatar && <ChipAvatarStatic {...props} />}
123
+ <span className="k-chip-content">
124
+ { children.length
125
+ ? children
126
+ : text && <span className="k-chip-label k-text-ellipsis">{text}</span>
127
+ }
128
+ </span>
129
+ { actions.length > 0 && <ChipActionsStatic actions={actions} />}
130
+ </div>
131
+ );
132
+ }
133
+
134
+ ChipStatic.defaultProps = {
135
+ ...globalDefaultProps,
136
+
137
+ children: [],
138
+
139
+ text: '',
140
+ icon: '',
141
+ actions: [],
142
+ showAvatar: false,
143
+
144
+ className: '',
145
+
146
+ size: 'medium',
147
+ rounded: 'medium',
148
+
149
+ fillMode: 'solid',
150
+ themeColor: 'base'
151
+ };
152
+
153
+ ChipStatic.propTypes = {
154
+ className: typeof '',
155
+ children: typeof [],
156
+
157
+ text: typeof '',
158
+ icon: typeof '',
159
+ actions: typeof [],
160
+ showAvatar: typeof false,
161
+
162
+ size: typeof [ null, 'small', 'medium', 'large' ],
163
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
164
+
165
+ fillMode: typeof [ null, 'solid', 'outline' ],
166
+ themeColor: typeof [ null, 'base', 'error', 'warning', 'info', 'success' ],
167
+
168
+ hover: typeof false,
169
+ focus: typeof false,
170
+ active: typeof false,
171
+ selected: typeof false,
172
+ disabled: typeof false,
173
+
174
+ aria: typeof false,
175
+ legacy: typeof false,
176
+
177
+ htmlAttributes: typeof []
178
+ };
179
+
180
+ export { Chip, ChipStatic };
@@ -0,0 +1,4 @@
1
+ export * from './chip.jsx';
2
+ export * from './chip-avatar.jsx';
3
+ export * from './chip-actions.jsx';
4
+ export * from './chip-list.jsx';
@@ -1,28 +1,37 @@
1
1
  ```html
2
2
  <!-- default rendering -->
3
- <span class="k-combobox k-input k-input-md k-rounded-md k-input-solid">
4
- <input type="text" class="k-input-inner" value="..." placeholder="..." />
5
- <button type="button" class="k-input-button k-button k-icon-button k-button-md k-button-solid k-button-solid-base">
3
+ <span class="k-colorpicker k-icon-picker k-picker k-picker-md k-rounded-md k-picker-solid">
4
+ <span class="k-input-inner">
5
+ <span class="k-value-icon k-color-preview k-no-color">
6
+ <span class="k-color-preview-mask" style="background-color: red;"></span>
7
+ </span>
8
+ </span>
9
+ <button type="button" class="k-input-button k-button k-button-md k-button-solid k-button-solid-base k-icon-button">
6
10
  <span class="k-button-icon k-icon k-i-arrow-s"></span>
7
11
  </button>
8
12
  </span>
9
13
 
10
14
  <!-- canonical rendering -->
11
15
  <span class="
12
- k-combobox
13
- k-input
14
- k-input-${size}
15
- k-rounded-${rounded}
16
- k-input-${fillMode}
16
+ k-colorpicker
17
+ k-picker
18
+ k-icon-picker
19
+ k-picker-{size}
20
+ k-rounded-{rounded}
21
+ k-picker-{fillMode}
17
22
 
18
- ${valid && 'k-valid'}
19
- ${invalid && 'k-invalid'}
20
- ${required && 'k-required'}
21
- ${disabled && 'k-disabled'}
23
+ {valid && 'k-valid'}
24
+ {invalid && 'k-invalid'}
25
+ {required && 'k-required'}
26
+ {disabled && 'k-disabled'}
22
27
  ">
23
- <input type={type} class="k-input-inner" value={value} placeholder={placeholder} disabled={disabled} />
24
- {valid && <span class="k-input-icon k-icon k-i-check"></span>}
25
- {invalid && <span class="k-input-icon k-icon k-i-check"></span>}
28
+ {inputPrefix && <span class="k-input-prefix">...</span>}
29
+ <span class="k-input-inner">
30
+ <span class="k-value-icon k-color-preview k-no-color">
31
+ <span class="k-color-preview-mask" style={value}></span>
32
+ </span>
33
+ </span>
34
+ {inputSuffix && <span class="k-input-suffix">...</span>}
26
35
  <button type="button" class="k-input-button k-button k-icon-button k-button-{size} k-button-{fillMode} k-button-{fillMode}-base">
27
36
  <span class="k-button-icon k-icon k-i-arrow-s"></span>
28
37
  </button>
@@ -1,4 +1,4 @@
1
- import { Component, globalDefaultProps } from '../component';
1
+ import { Component, globalDefaultProps } from '../component/index';
2
2
  import { IconStatic } from '../icon/index';
3
3
 
4
4
  class ColorPreview extends Component {
@@ -29,34 +29,45 @@ 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
  : {};
35
39
 
36
40
  if (legacy) {
37
41
 
38
- let legacyClasses = [
39
- ownClassName,
40
- 'k-selected-color',
41
- {
42
- 'k-no-color': color === ''
43
- }
44
- ];
45
-
46
- let legacyStyles = {
47
- 'background-color': color
48
- };
49
-
50
- if (iconName === '') {
51
- return (
52
- <span className={legacyClasses} style={legacyStyles}></span>
53
- );
54
- }
42
+ // let legacyClasses = [
43
+ // ownClassName,
44
+ // 'k-selected-color',
45
+ // {
46
+ // 'k-no-color': color === ''
47
+ // }
48
+ // ];
49
+
50
+ // let legacyStyles = {
51
+ // 'background-color': color
52
+ // };
53
+
54
+ // if (iconName === '') {
55
+ // return (
56
+ // <span className={legacyClasses} style={legacyStyles}></span>
57
+ // );
58
+ // }
59
+
60
+ // return (
61
+ // <IconStatic className="k-tool-icon" name={iconName}>
62
+ // <span className={legacyClasses} style={legacyStyles}></span>
63
+ // </IconStatic>
64
+ // );
55
65
 
56
66
  return (
57
- <IconStatic className="k-tool-icon" name={iconName}>
58
- <span className={legacyClasses} style={legacyStyles}></span>
59
- </IconStatic>
67
+ <span className={colorPreviewClasses} {...ariaAttr} {...htmlAttributes}>
68
+ {iconName && <IconStatic name={iconName} className="k-color-preview-icon" />}
69
+ <span className="k-color-preview-mask" style={styles}></span>
70
+ </span>
60
71
  );
61
72
 
62
73
  }
@@ -64,7 +75,7 @@ function ColorPreviewStatic(props) {
64
75
  return (
65
76
  <span className={colorPreviewClasses} {...ariaAttr} {...htmlAttributes}>
66
77
  {iconName && <IconStatic name={iconName} className="k-color-preview-icon" />}
67
- <span className="k-color-preview-mask"></span>
78
+ <span className="k-color-preview-mask" style={styles}></span>
68
79
  </span>
69
80
  );
70
81
  }
@@ -1,4 +1,4 @@
1
- import { globalDefaultProps } from '../component';
1
+ import { globalDefaultProps } from '../component/index';
2
2
  import { Picker, PickerStatic, InputInnerSpanStatic } from '../input/index';
3
3
  import { ColorPreviewStatic } from './color-preview.jsx';
4
4
  import { ButtonStatic } from '../button/index';
@@ -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
@@ -66,17 +67,15 @@ function ColorpickerStatic(props) {
66
67
  'k-widget',
67
68
  'k-colorpicker',
68
69
  {
70
+ 'k-state-hover': hover === true,
71
+ 'k-state-focus': focus === true,
72
+ 'k-state-invalid': invalid === true,
69
73
  'k-state-disabled': disabled === true
70
74
  }
71
75
  ];
72
76
 
73
77
  let legacyWrapClasses = [
74
- 'k-picker-wrap',
75
- {
76
- 'k-state-hover': hover === true,
77
- 'k-state-focused': focus === true,
78
- 'k-state-invalid': invalid === true
79
- }
78
+ 'k-picker-wrap'
80
79
  ];
81
80
 
82
81
  return (
@@ -92,9 +91,9 @@ function ColorpickerStatic(props) {
92
91
  return (
93
92
  <PickerStatic className={colorpickerClasses} {...ariaAttr} {...htmlAttributes}>
94
93
  {prefix}
95
- <InputInnerSpanStatic showValue={false} valueIcon={<ColorPreviewStatic className="k-icon k-value-icon" color={value} iconName={iconName} />} />
94
+ <InputInnerSpanStatic showValue={false} valueIcon={<ColorPreviewStatic className="k-value-icon" color={value} iconName={iconName} />} />
96
95
  {suffix}
97
- <ButtonStatic className="k-input-button" icon="arrow-s" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
96
+ <ButtonStatic className="k-input-button" icon="arrow-s" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
98
97
  </PickerStatic>
99
98
  );
100
99
  }
@@ -131,10 +130,10 @@ ColorpickerStatic.propTypes = {
131
130
  prefix: typeof '#fragment',
132
131
  suffix: typeof '#fragment',
133
132
 
134
- size: typeof [ 'none', 'small', 'medium', 'large' ],
135
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
133
+ size: typeof [ null, 'small', 'medium', 'large' ],
134
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
136
135
 
137
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
136
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
138
137
 
139
138
  hover: typeof false,
140
139
  focus: typeof false,
@@ -1,4 +1,4 @@
1
- import { globalDefaultProps } from '../component';
1
+ import { globalDefaultProps } from '../component/index';
2
2
  import { Input, InputStatic, InputInnerInputStatic } from '../input/index';
3
3
  import { InputValidationIconStatic, InputLoadingIconStatic, InputClearValueStatic } from '../input/index';
4
4
  import { ButtonStatic } from '../button/index';
@@ -76,17 +76,15 @@ function ComboboxStatic(props) {
76
76
  'k-widget',
77
77
  'k-combobox',
78
78
  {
79
+ 'k-state-hover': hover === true,
80
+ 'k-state-focus': focus === true,
81
+ 'k-state-invalid': invalid === true,
79
82
  'k-state-disabled': disabled === true
80
83
  }
81
84
  ];
82
85
 
83
86
  let legacyWrapClasses = [
84
- 'k-dropdown-wrap',
85
- {
86
- 'k-state-hover': hover === true,
87
- 'k-state-focused': focus === true,
88
- 'k-state-invalid': invalid === true
89
- }
87
+ 'k-dropdown-wrap'
90
88
  ];
91
89
 
92
90
  return (
@@ -110,7 +108,7 @@ function ComboboxStatic(props) {
110
108
  <InputValidationIconStatic {...props} />
111
109
  <InputLoadingIconStatic {...props} />
112
110
  <InputClearValueStatic {...props} />
113
- <ButtonStatic className="k-input-button" icon="arrow-s" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
111
+ <ButtonStatic className="k-input-button" icon="arrow-s" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
114
112
  </InputStatic>
115
113
  );
116
114
  }
@@ -149,10 +147,10 @@ ComboboxStatic.propTypes = {
149
147
  prefix: typeof '#fragment',
150
148
  suffix: typeof '#fragment',
151
149
 
152
- size: typeof [ 'none', 'small', 'medium', 'large' ],
153
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
150
+ size: typeof [ null, 'small', 'medium', 'large' ],
151
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
154
152
 
155
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
153
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
156
154
 
157
155
  hover: typeof false,
158
156
  focus: typeof false,
@@ -1,9 +1,11 @@
1
- import { isFunction } from '../utils/object';
2
- import { renderDOM, htmlToProps } from '../lib/jsx-runtime';
1
+ import { isFunction } from '../../utils/object';
2
+ import { renderDOM, htmlToProps } from '../../lib/jsx-runtime';
3
3
 
4
4
  const globalDefaultProps = {
5
5
  legacy: false,
6
6
 
7
+ framework: 'universal',
8
+
7
9
  className: '',
8
10
 
9
11
  aria: false,
@@ -0,0 +1 @@
1
+ export * from './component.jsx';
@@ -1,4 +1,4 @@
1
- import { Component, globalDefaultProps } from '../component';
1
+ import { Component, globalDefaultProps } from '../component/index';
2
2
  import { InputStatic, InputInnerInputStatic } from '../input/index';
3
3
  import { InputValidationIconStatic, InputLoadingIconStatic, InputClearValueStatic } from '../input/index';
4
4
  import { SpinButtonStatic } from '../spinbutton/index';
@@ -75,17 +75,15 @@ function DateInputStatic(props) {
75
75
  'k-widget',
76
76
  'k-dateinput',
77
77
  {
78
+ 'k-state-hover': hover === true,
79
+ 'k-state-focus': focus === true,
80
+ 'k-state-invalid': invalid === true,
78
81
  'k-state-disabled': disabled === true
79
82
  }
80
83
  ];
81
84
 
82
85
  let legacyWrapClasses = [
83
- 'k-dateinput-wrap',
84
- {
85
- 'k-state-hover': hover === true,
86
- 'k-state-focused': focus === true,
87
- 'k-state-invalid': invalid === true
88
- }
86
+ 'k-dateinput-wrap'
89
87
  ];
90
88
 
91
89
  let legacyInputClasses = [
@@ -111,7 +109,7 @@ function DateInputStatic(props) {
111
109
  <InputValidationIconStatic {...props} />
112
110
  <InputLoadingIconStatic {...props} />
113
111
  <InputClearValueStatic {...props} />
114
- {showSpinButton === true && <SpinButtonStatic className="k-input-spinner" />}
112
+ {showSpinButton === true && <SpinButtonStatic className="k-input-spinner" size={size} fillMode={fillMode} />}
115
113
  </InputStatic>
116
114
  );
117
115
  }
@@ -147,10 +145,10 @@ DateInputStatic.propTypes = {
147
145
  showLoadingIcon: typeof true,
148
146
  showClearButton: typeof true,
149
147
 
150
- size: typeof [ 'none', 'small', 'medium', 'large' ],
151
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
148
+ size: typeof [ null, 'small', 'medium', 'large' ],
149
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
152
150
 
153
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
151
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
154
152
 
155
153
  hover: typeof false,
156
154
  focus: typeof false,
@@ -1,4 +1,4 @@
1
- import { globalDefaultProps } from '../component';
1
+ import { globalDefaultProps } from '../component/index';
2
2
  import { Input, InputStatic, InputInnerInputStatic } from '../input/index';
3
3
  import { InputValidationIconStatic, InputLoadingIconStatic, InputClearValueStatic } from '../input/index';
4
4
  import { ButtonStatic } from '../button/index';
@@ -76,17 +76,15 @@ function DatePickerStatic(props) {
76
76
  'k-widget',
77
77
  'k-datepicker',
78
78
  {
79
+ 'k-state-hover': hover === true,
80
+ 'k-state-focus': focus === true,
81
+ 'k-state-invalid': invalid === true,
79
82
  'k-state-disabled': disabled === true
80
83
  }
81
84
  ];
82
85
 
83
86
  let legacyWrapClasses = [
84
- 'k-picker-wrap',
85
- {
86
- 'k-state-hover': hover === true,
87
- 'k-state-focused': focus === true,
88
- 'k-state-invalid': invalid === true
89
- }
87
+ 'k-picker-wrap'
90
88
  ];
91
89
 
92
90
  return (
@@ -110,7 +108,7 @@ function DatePickerStatic(props) {
110
108
  <InputValidationIconStatic {...props} />
111
109
  <InputLoadingIconStatic {...props} />
112
110
  <InputClearValueStatic {...props} />
113
- <ButtonStatic className="k-input-button" icon="calendar" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
111
+ <ButtonStatic className="k-input-button" icon="calendar" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
114
112
  </InputStatic>
115
113
  );
116
114
  }
@@ -149,10 +147,10 @@ DatePickerStatic.propTypes = {
149
147
  prefix: typeof '#fragment',
150
148
  suffix: typeof '#fragment',
151
149
 
152
- size: typeof [ 'none', 'small', 'medium', 'large' ],
153
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
150
+ size: typeof [ null, 'small', 'medium', 'large' ],
151
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
154
152
 
155
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
153
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
156
154
 
157
155
  hover: typeof false,
158
156
  focus: typeof false,
@@ -1,4 +1,4 @@
1
- import { globalDefaultProps } from '../component';
1
+ import { globalDefaultProps } from '../component/index';
2
2
  import { Input, InputStatic, InputInnerInputStatic } from '../input/index';
3
3
  import { InputValidationIconStatic, InputLoadingIconStatic, InputClearValueStatic } from '../input/index';
4
4
  import { ButtonStatic } from '../button/index';
@@ -76,17 +76,15 @@ function DateTimePickerStatic(props) {
76
76
  'k-widget',
77
77
  'k-datetimepicker',
78
78
  {
79
+ 'k-state-hover': hover === true,
80
+ 'k-state-focus': focus === true,
81
+ 'k-state-invalid': invalid === true,
79
82
  'k-state-disabled': disabled === true
80
83
  }
81
84
  ];
82
85
 
83
86
  let legacyWrapClasses = [
84
- 'k-picker-wrap',
85
- {
86
- 'k-state-hover': hover === true,
87
- 'k-state-focused': focus === true,
88
- 'k-state-invalid': invalid === true
89
- }
87
+ 'k-picker-wrap'
90
88
  ];
91
89
 
92
90
  return (
@@ -110,7 +108,7 @@ function DateTimePickerStatic(props) {
110
108
  <InputValidationIconStatic {...props} />
111
109
  <InputLoadingIconStatic {...props} />
112
110
  <InputClearValueStatic {...props} />
113
- <ButtonStatic className="k-input-button" icon="calendar" rounded="none" size={size} fillMode={fillMode}></ButtonStatic>
111
+ <ButtonStatic className="k-input-button" icon="calendar" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
114
112
  </InputStatic>
115
113
  );
116
114
  }
@@ -149,10 +147,10 @@ DateTimePickerStatic.propTypes = {
149
147
  prefix: typeof '#fragment',
150
148
  suffix: typeof '#fragment',
151
149
 
152
- size: typeof [ 'none', 'small', 'medium', 'large' ],
153
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
150
+ size: typeof [ null, 'small', 'medium', 'large' ],
151
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
154
152
 
155
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
153
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
156
154
 
157
155
  hover: typeof false,
158
156
  focus: typeof false,
@@ -0,0 +1,60 @@
1
+ ```html
2
+ <!-- default rendering -->
3
+ <div class="k-dropdown-button">
4
+ <button type="button" class="k-button k-button-md k-rounded-md k-button-solid k-button-solid-base">
5
+ <span class="k-button-text">Text</span>
6
+ </button>
7
+ </div>
8
+
9
+ <!-- canonical rendering -->
10
+ <div class="k-dropdown-button">
11
+ <button class="
12
+ k-button
13
+ ${text === '' && icon !== '' && 'k-icon-button'}
14
+ k-button-${size}
15
+ k-button-${shape}
16
+ k-rounded-${rounded}
17
+ k-button-${fillMode}
18
+ k-button-${fillMode}-${themeColor}
19
+ k-${state}
20
+ ${disabled && 'k-disabled'}
21
+ " type={type} disabled={disabled}>
22
+ {icon !== '' && <span class="k-button-icon k-icon k-i-${icon}"></span>}
23
+ {text !== '' && <span class="k-button-text">
24
+ Button
25
+ {showArrow && <span className="k-icon k-i-${arrowIconName}"></span>}
26
+ </span>}
27
+ </button>
28
+ </div>
29
+
30
+ <!-- popup menu items default rendering -->
31
+ <div class="k-animation-container k-animation-container-fixed k-animation-container-shown">
32
+ <div class="k-popup k-menu-popup">
33
+ <ul class="k-group k-menu-group k-reset k-menu-group-md">
34
+ <li class="k-item k-menu-item">
35
+ <span class="k-link k-menu-link">
36
+ <span class="k-menu-link-text">Text</span>
37
+ </span>
38
+ </li>
39
+ </ul>
40
+ </div>
41
+ </div>
42
+
43
+ <!-- popup menu items canonical rendering -->
44
+ <div class="k-animation-container k-animation-container-fixed k-animation-container-shown">
45
+ <div class="k-popup k-menu-popup">
46
+ <ul class="k-group k-menu-group k-reset k-menu-group-${size}">
47
+ <li class="k-item k-menu-item">
48
+ <span class="k-link k-menu-link k-${state}">
49
+ {icon !== '' && <span class="k-icon k-i-${icon}"></span>}
50
+ {text !== '' && <span class="k-menu-link-text">Text</span>}
51
+ {hasChildren ?
52
+ <span class="k-menu-expand-arrow k-icon k-i-${arrowIconName || 'arrow-60-right'}"></span> :
53
+ <span class="k-menu-expand-arrow k-icon k-i-none"></span>
54
+ }
55
+ </span>
56
+ </li>
57
+ </ul>
58
+ </div>
59
+ </div>
60
+ ```