@progress/kendo-themes-html 5.0.0-next.5 → 5.1.2-dev.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.
Files changed (104) hide show
  1. package/lib/jsx-runtime.js +54 -3
  2. package/package.json +8 -8
  3. package/src/autocomplete/README.md +15 -9
  4. package/src/autocomplete/autocomplete.jsx +17 -12
  5. package/src/avatar/README.md +21 -0
  6. package/src/avatar/avatar.jsx +110 -0
  7. package/src/avatar/index.js +1 -0
  8. package/src/button/README.md +8 -8
  9. package/src/button/button.jsx +44 -26
  10. package/src/checkbox/README.md +8 -8
  11. package/src/checkbox/checkbox.jsx +5 -5
  12. package/src/chip/README.md +47 -0
  13. package/src/chip/chip-actions.jsx +80 -0
  14. package/src/chip/chip-avatar.jsx +13 -0
  15. package/src/chip/chip-list.jsx +84 -0
  16. package/src/chip/chip.jsx +180 -0
  17. package/src/chip/index.js +4 -0
  18. package/src/colorpicker/README.md +24 -15
  19. package/src/colorpicker/color-preview.jsx +33 -22
  20. package/src/colorpicker/colorpicker.jsx +14 -16
  21. package/src/combobox/README.md +15 -9
  22. package/src/combobox/combobox.jsx +20 -17
  23. package/src/{component.js → component/component.jsx} +4 -2
  24. package/src/component/index.js +1 -0
  25. package/src/dateinput/README.md +48 -0
  26. package/src/dateinput/dateinput.jsx +168 -0
  27. package/src/dateinput/index.js +1 -0
  28. package/src/datepicker/README.md +36 -0
  29. package/src/datepicker/datepicker.jsx +168 -0
  30. package/src/datepicker/index.js +1 -0
  31. package/src/datetimepicker/README.md +36 -0
  32. package/src/datetimepicker/datetimepicker.jsx +168 -0
  33. package/src/datetimepicker/index.js +1 -0
  34. package/src/dropdownlist/README.md +23 -14
  35. package/src/dropdownlist/dropdownlist.jsx +26 -18
  36. package/src/fab/README.md +19 -0
  37. package/src/fab/fab.jsx +150 -0
  38. package/src/fab/index.js +1 -0
  39. package/src/icon/icon.jsx +1 -1
  40. package/src/index.js +51 -5
  41. package/src/input/index.js +3 -0
  42. package/src/input/input-clear-value.jsx +31 -0
  43. package/src/input/input-inner-input.jsx +1 -1
  44. package/src/input/input-inner-span.jsx +11 -10
  45. package/src/input/input-inner-textarea.jsx +1 -1
  46. package/src/input/input-loading-icon.jsx +28 -0
  47. package/src/input/input-prefix.jsx +1 -1
  48. package/src/input/input-suffix.jsx +1 -1
  49. package/src/input/input-validation-icon.jsx +37 -0
  50. package/src/input/input.jsx +6 -4
  51. package/src/input/picker.jsx +6 -6
  52. package/src/list/README.md +107 -0
  53. package/src/list/index.js +5 -0
  54. package/src/list/list-content.jsx +95 -0
  55. package/src/list/list-group-item.jsx +66 -0
  56. package/src/list/list-header.jsx +67 -0
  57. package/src/list/list-item.jsx +117 -0
  58. package/src/list/list.jsx +182 -0
  59. package/src/maskedtextbox/README.md +15 -9
  60. package/src/maskedtextbox/maskedtextbox.jsx +29 -19
  61. package/src/menu/README.md +40 -0
  62. package/src/menu/index.js +3 -0
  63. package/src/menu/menu-item-content.jsx +48 -0
  64. package/src/menu/menu-item.jsx +174 -0
  65. package/src/menu/menu-list.jsx +74 -0
  66. package/src/menubutton/README.md +60 -0
  67. package/src/menubutton/index.js +1 -0
  68. package/src/menubutton/menubutton.jsx +161 -0
  69. package/src/multiselect/README.md +37 -0
  70. package/src/multiselect/index.js +2 -0
  71. package/src/multiselect/multiselect-chip-list.jsx +55 -0
  72. package/src/multiselect/multiselect.jsx +189 -0
  73. package/src/nodata/index.js +1 -0
  74. package/src/nodata/nodata.jsx +64 -0
  75. package/src/numerictextbox/README.md +15 -9
  76. package/src/numerictextbox/numerictextbox.jsx +25 -16
  77. package/src/popup/README.md +15 -0
  78. package/src/popup/index.js +1 -0
  79. package/src/popup/popup.jsx +80 -0
  80. package/src/radio/README.md +7 -7
  81. package/src/radio/radio.jsx +8 -4
  82. package/src/searchbar/searchbar.jsx +1 -1
  83. package/src/searchbox/README.md +16 -12
  84. package/src/searchbox/searchbox.jsx +23 -14
  85. package/src/spinbutton/spinbutton.jsx +9 -3
  86. package/src/splitbutton/README.md +76 -0
  87. package/src/splitbutton/index.js +1 -0
  88. package/src/splitbutton/splitbutton.jsx +176 -0
  89. package/src/switch/README.md +3 -3
  90. package/src/switch/switch.jsx +6 -6
  91. package/src/textarea/README.md +17 -11
  92. package/src/textarea/textarea.jsx +4 -4
  93. package/src/textbox/README.md +15 -9
  94. package/src/textbox/textbox.jsx +21 -4
  95. package/src/timepicker/README.md +36 -0
  96. package/src/timepicker/index.js +1 -0
  97. package/src/timepicker/timepicker.jsx +168 -0
  98. package/src/treeview/README.md +0 -0
  99. package/src/treeview/index.js +4 -0
  100. package/src/treeview/treeview-group.jsx +70 -0
  101. package/src/treeview/treeview-item.jsx +142 -0
  102. package/src/treeview/treeview-leaf.jsx +99 -0
  103. package/src/treeview/treeview.jsx +125 -0
  104. package/utils/styles.js +23 -5
@@ -0,0 +1,176 @@
1
+ import * as styles from '../../utils/styles';
2
+ import { Component, globalDefaultProps } from '../component/index';
3
+ import { ButtonStatic } from '../button/index';
4
+
5
+ class SplitButton extends Component {
6
+
7
+ init() {
8
+ this._props.text = this.element.innerHTML;
9
+ this._props.children = [];
10
+ }
11
+
12
+ render() {
13
+ return <SplitButtonStatic {...this.props} />;
14
+ }
15
+ }
16
+
17
+ function SplitButtonStatic(props) {
18
+ const {
19
+ className: ownClassName,
20
+
21
+ text,
22
+
23
+ size,
24
+ rounded,
25
+
26
+ fillMode,
27
+ themeColor,
28
+
29
+ icon,
30
+
31
+ arrowIconName,
32
+
33
+ hover,
34
+ focus,
35
+ active,
36
+ selected,
37
+ disabled,
38
+
39
+ aria,
40
+ legacy,
41
+
42
+ ...htmlAttributes
43
+ } = props;
44
+
45
+ let splitButtonClasses = [
46
+ ownClassName,
47
+ 'k-split-button',
48
+ 'k-button-group',
49
+ styles.roundedClass( rounded )
50
+ ];
51
+
52
+ // Augment attributes
53
+ htmlAttributes.disabled = disabled;
54
+
55
+ let ariaAttr = aria
56
+ ? {}
57
+ : {};
58
+
59
+ if (legacy) {
60
+
61
+ let legacySplitButtonClasses = [
62
+ ownClassName,
63
+ 'k-split-button',
64
+ 'k-button-group'
65
+ ];
66
+
67
+ return (
68
+ <div className={legacySplitButtonClasses} {...ariaAttr} {...htmlAttributes}>
69
+ <ButtonStatic
70
+ text={text}
71
+ icon={icon}
72
+
73
+ size={size}
74
+ rounded={rounded}
75
+ fillMode={fillMode}
76
+ themeColor={themeColor}
77
+
78
+ hover={hover}
79
+ focus={focus}
80
+ active={active}
81
+ selected={selected}
82
+ disabled={disabled}
83
+ ></ButtonStatic>
84
+ <ButtonStatic
85
+ className="k-split-button-arrow"
86
+
87
+ icon={arrowIconName}
88
+
89
+ size={size}
90
+ rounded={rounded}
91
+ fillMode={fillMode}
92
+ themeColor={themeColor}
93
+
94
+ disabled={disabled}
95
+ ></ButtonStatic>
96
+ </div>
97
+ );
98
+ }
99
+
100
+ return (
101
+ <div className={splitButtonClasses} {...ariaAttr} {...htmlAttributes}>
102
+ <ButtonStatic
103
+ text={text}
104
+ icon={icon}
105
+
106
+ size={size}
107
+ rounded={rounded}
108
+ fillMode={fillMode}
109
+ themeColor={themeColor}
110
+
111
+ hover={hover}
112
+ focus={focus}
113
+ active={active}
114
+ selected={selected}
115
+ disabled={disabled}
116
+ ></ButtonStatic>
117
+ <ButtonStatic
118
+ className="k-split-button-arrow"
119
+
120
+ icon={arrowIconName}
121
+
122
+ size={size}
123
+ rounded={rounded}
124
+ fillMode={fillMode}
125
+ themeColor={themeColor}
126
+
127
+ disabled={disabled}
128
+ ></ButtonStatic>
129
+ </div>
130
+ );
131
+ }
132
+
133
+ SplitButtonStatic.defaultProps = {
134
+ ...globalDefaultProps,
135
+
136
+ text: '',
137
+ icon: '',
138
+
139
+ arrowIconName: 'arrow-s',
140
+
141
+ className: '',
142
+ type: 'button',
143
+
144
+ size: 'medium',
145
+ rounded: 'medium',
146
+
147
+ fillMode: 'solid',
148
+ themeColor: 'base'
149
+ };
150
+
151
+ SplitButtonStatic.propTypes = {
152
+ text: typeof '',
153
+ icon: typeof '',
154
+
155
+ arrowIconName: typeof '',
156
+
157
+ size: typeof [ null, 'small', 'medium', 'large' ],
158
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
159
+
160
+ fillMode: typeof [ null, 'solid', 'flat', 'outline', 'link' ],
161
+ themeColor: typeof [ null, 'surface', 'base', 'primary' ],
162
+
163
+ hover: typeof false,
164
+ focus: typeof false,
165
+ active: typeof false,
166
+ selected: typeof false,
167
+ disabled: typeof false,
168
+
169
+ aria: typeof false,
170
+ legacy: typeof false,
171
+
172
+ className: typeof '',
173
+ htmlAttributes: typeof []
174
+ };
175
+
176
+ export { SplitButton, SplitButtonStatic };
@@ -1,12 +1,12 @@
1
1
  ```html
2
2
  <!-- default rendering -->
3
- <span class="k-switch k-switch-on k-switch-md k-rounded-pill">
4
- <span class="k-switch-track k-rounded-pill">
3
+ <span class="k-switch k-switch-on k-switch-md k-rounded-full">
4
+ <span class="k-switch-track k-rounded-full">
5
5
  <span class="k-switch-label-on">On</span>
6
6
  <span class="k-switch-label-off">Off</span>
7
7
  </span>
8
8
  <span class="k-switch-thumb-wrap">
9
- <span class="k-switch-thumb k-rounded-pill"></span>
9
+ <span class="k-switch-thumb k-rounded-full"></span>
10
10
  </span>
11
11
  </span>
12
12
 
@@ -1,5 +1,5 @@
1
1
  import * as styles from '../../utils/styles';
2
- import { Component, globalDefaultProps } from '../component';
2
+ import { Component, globalDefaultProps } from '../component/index';
3
3
 
4
4
  class Switch extends Component {
5
5
  render() {
@@ -105,8 +105,8 @@ SwitchStatic.defaultProps = {
105
105
  offLabel: '',
106
106
 
107
107
  size: 'medium',
108
- trackRounded: 'pill',
109
- thumbRounded: 'pill'
108
+ trackRounded: 'full',
109
+ thumbRounded: 'full'
110
110
  };
111
111
  SwitchStatic.propTypes = {
112
112
  checked: typeof false,
@@ -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, 'small', 'medium', 'large', 'full' ],
119
+ thumbRounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
120
120
 
121
121
  hover: typeof false,
122
122
  focus: typeof false,
@@ -1,24 +1,30 @@
1
1
  ```html
2
2
  <!-- default rendering -->
3
3
  <span class="k-textarea k-input k-input-md k-rounded-md k-input-solid">
4
- <textarea type="text" class="k-input-inner" placeholder="...">...</textarea>
4
+ <textarea class="k-input-inner" placeholder="...">...</textarea>
5
5
  </span>
6
6
 
7
7
  <!-- canonical rendering -->
8
8
  <span class="
9
9
  k-textarea
10
10
  k-input
11
- k-input-${size}
12
- k-rounded-${rounded}
13
- k-input-${fillMode}
11
+ k-input-{size}
12
+ k-rounded-{rounded}
13
+ k-input-{fillMode}
14
14
 
15
- ${valid && 'k-valid'}
16
- ${invalid && 'k-invalid'}
17
- ${required && 'k-required'}
18
- ${disabled && 'k-disabled'}
15
+ {valid && 'k-valid'}
16
+ {invalid && 'k-invalid'}
17
+ {loading && 'k-loading'}
18
+ {required && 'k-required'}
19
+ {disabled && 'k-disabled'}
19
20
  ">
20
- <textarea type={type} class="k-input-inner" placeholder={placeholder} disabled={disabled}>{value}</textarea>
21
- {valid && <span class="k-input-icon k-icon k-i-check"></span>}
22
- {invalid && <span class="k-input-icon k-icon k-i-check"></span>}
21
+ {showInputIcon && inputIconName !== '' && <span class="k-input-icon k-i-icon k-i-{inputIconName}"></span>}
22
+ {inputPrefix && <span class="k-input-prefix">...</span>}
23
+ <textarea class="k-input-inner" placeholder="{placeholder}" disabled={disabled}>{value}</textarea>
24
+ {inputPrefix && <span class="k-input-suffix">...</span>}
25
+ {showValidationIcon && valid && <span class="k-validation-icon k-icon k-i-check"></span>}
26
+ {showValidationIcon && invalid && <span class="k-validation-icon k-icon k-i-warning"></span>}
27
+ {showLoadingIcon && loading && <span class="k-icon k-i-loading"></span>}
28
+ {showClearValue && text !== '' && <span class="k-clear-value"><span class="k-icon k-i-x"></span></span>}
23
29
  </span>
24
30
  ```
@@ -1,4 +1,4 @@
1
- import { globalDefaultProps } from '../component';
1
+ import { globalDefaultProps } from '../component/index';
2
2
  import { Input, InputStatic, InputInnerTextareaStatic } from '../input/index';
3
3
 
4
4
  class Textarea extends Input {
@@ -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', 'full' ],
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,
@@ -8,17 +8,23 @@
8
8
  <span class="
9
9
  k-textbox
10
10
  k-input
11
- k-input-${size}
12
- k-rounded-${rounded}
13
- k-input-${fillMode}
11
+ k-input-{size}
12
+ k-rounded-{rounded}
13
+ k-input-{fillMode}
14
14
 
15
- ${valid && 'k-valid'}
16
- ${invalid && 'k-invalid'}
17
- ${required && 'k-required'}
18
- ${disabled && 'k-disabled'}
15
+ {valid && 'k-valid'}
16
+ {invalid && 'k-invalid'}
17
+ {loading && 'k-loading'}
18
+ {required && 'k-required'}
19
+ {disabled && 'k-disabled'}
19
20
  ">
21
+ {showInputIcon && inputIconName !== '' && <span class="k-input-icon k-i-icon k-i-{inputIconName}"></span>}
22
+ {inputPrefix && <span class="k-input-prefix">...</span>}
20
23
  <input type={type} class="k-input-inner" value={value} placeholder={placeholder} disabled={disabled} />
21
- {valid && <span class="k-input-icon k-icon k-i-check"></span>}
22
- {invalid && <span class="k-input-icon k-icon k-i-check"></span>}
24
+ {inputPrefix && <span class="k-input-suffix">...</span>}
25
+ {showValidationIcon && valid && <span class="k-validation-icon k-icon k-i-check"></span>}
26
+ {showValidationIcon && invalid && <span class="k-validation-icon k-icon k-i-warning"></span>}
27
+ {showLoadingIcon && loading && <span class="k-icon k-i-loading"></span>}
28
+ {showClearValue && text !== '' && <span class="k-clear-value"><span class="k-icon k-i-x"></span></span>}
23
29
  </span>
24
30
  ```
@@ -1,5 +1,6 @@
1
- import { globalDefaultProps } from '../component';
1
+ import { globalDefaultProps } from '../component/index';
2
2
  import { Input, InputStatic, InputInnerInputStatic } from '../input/index';
3
+ import { InputValidationIconStatic, InputLoadingIconStatic, InputClearValueStatic } from '../input/index';
3
4
 
4
5
  class Textbox extends Input {
5
6
  render() {
@@ -85,6 +86,9 @@ function TextboxStatic(props) {
85
86
  {prefix}
86
87
  <input type={type} className="k-input" {...inputAttributes} />
87
88
  {suffix}
89
+ <InputValidationIconStatic {...props} />
90
+ <InputLoadingIconStatic {...props} />
91
+ <InputClearValueStatic {...props} />
88
92
  </InputStatic>
89
93
  );
90
94
  }
@@ -94,6 +98,9 @@ function TextboxStatic(props) {
94
98
  {prefix}
95
99
  <InputInnerInputStatic {...inputAttributes} />
96
100
  {suffix}
101
+ <InputValidationIconStatic {...props} />
102
+ <InputLoadingIconStatic {...props} />
103
+ <InputClearValueStatic {...props} />
97
104
  </InputStatic>
98
105
  );
99
106
  }
@@ -106,6 +113,10 @@ TextboxStatic.defaultProps = {
106
113
  placeholder: '',
107
114
  autocomplete: 'off',
108
115
 
116
+ showValidationIcon: true,
117
+ showLoadingIcon: true,
118
+ showClearButton: true,
119
+
109
120
  size: 'medium',
110
121
  rounded: 'medium',
111
122
 
@@ -121,19 +132,25 @@ TextboxStatic.propTypes = {
121
132
  placeholder: typeof '',
122
133
  autocomplete: typeof [ 'on', 'off' ],
123
134
 
135
+ showValidationIcon: typeof true,
136
+ showLoadingIcon: typeof true,
137
+ showClearButton: typeof true,
138
+
124
139
  prefix: typeof '#fragment',
125
140
  suffix: typeof '#fragment',
126
141
 
127
- size: typeof [ 'none', 'small', 'medium', 'large' ],
128
- rounded: typeof [ 'none', 'small', 'medium', 'large', 'pill' ],
142
+ size: typeof [ null, 'small', 'medium', 'large' ],
143
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
129
144
 
130
- fillMode: typeof [ 'none', 'solid', 'flat', 'outline' ],
145
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
131
146
 
132
147
  hover: typeof false,
133
148
  focus: typeof false,
134
149
  valid: typeof false,
135
150
  invalid: typeof false,
151
+ loading: typeof false,
136
152
  required: typeof false,
153
+ readonly: typeof false,
137
154
  disabled: typeof false,
138
155
 
139
156
  aria: typeof false,
@@ -0,0 +1,36 @@
1
+ ```html
2
+ <!-- default rendering -->
3
+ <span class="k-timepicker 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">
6
+ <span class="k-button-icon k-icon k-i-clock"></span>
7
+ </button>
8
+ </span>
9
+
10
+ <!-- canonical rendering -->
11
+ <span class="
12
+ k-timepicker
13
+ k-input
14
+ k-input-{size}
15
+ k-rounded-{rounded}
16
+ k-input-{fillMode}
17
+
18
+ {valid && 'k-valid'}
19
+ {invalid && 'k-invalid'}
20
+ {loading && 'k-loading'}
21
+ {required && 'k-required'}
22
+ {disabled && 'k-disabled'}
23
+ ">
24
+ {showInputIcon && inputIconName !== '' && <span class="k-input-icon k-i-icon k-i-{inputIconName}"></span>}
25
+ {inputPrefix && <span class="k-input-prefix">...</span>}
26
+ <input type={type} class="k-input-inner" value={value} placeholder={placeholder} disabled={disabled} />
27
+ {inputPrefix && <span class="k-input-suffix">...</span>}
28
+ {showValidationIcon && valid && <span class="k-validation-icon k-icon k-i-check"></span>}
29
+ {showValidationIcon && invalid && <span class="k-validation-icon k-icon k-i-warning"></span>}
30
+ {showLoadingIcon && loading && <span class="k-icon k-i-loading"></span>}
31
+ {showClearValue && text !== '' && <span class="k-clear-value"><span class="k-icon k-i-x"></span></span>}
32
+ <button type="button" class="k-input-button k-button k-icon-button k-button-{size} k-button-{fillMode} k-button-{fillMode}-base">
33
+ <span class="k-button-icon k-icon k-i-clock"></span>
34
+ </button>
35
+ </span>
36
+ ```
@@ -0,0 +1 @@
1
+ export * from './timepicker.jsx';
@@ -0,0 +1,168 @@
1
+ import { globalDefaultProps } from '../component/index';
2
+ import { Input, InputStatic, InputInnerInputStatic } from '../input/index';
3
+ import { InputValidationIconStatic, InputLoadingIconStatic, InputClearValueStatic } from '../input/index';
4
+ import { ButtonStatic } from '../button/index';
5
+ import { IconStatic } from '../icon/index';
6
+
7
+ class TimePicker extends Input {
8
+ render() {
9
+ return <TimePickerStatic {...this.props} />;
10
+ }
11
+ }
12
+
13
+ function TimePickerStatic(props) {
14
+
15
+ const {
16
+ className: ownClassName,
17
+
18
+ type,
19
+ value,
20
+ placeholder,
21
+ autocomplete,
22
+
23
+ prefix,
24
+ suffix,
25
+
26
+ size,
27
+ rounded,
28
+
29
+ fillMode,
30
+
31
+ hover,
32
+ focus,
33
+ valid,
34
+ invalid,
35
+ required,
36
+ disabled,
37
+
38
+ aria,
39
+ legacy,
40
+
41
+ ...htmlAttributes
42
+ } = props;
43
+
44
+ htmlAttributes.size = size;
45
+ htmlAttributes.rounded = rounded;
46
+ htmlAttributes.fillMode = fillMode;
47
+ htmlAttributes.hover = hover;
48
+ htmlAttributes.focus = focus;
49
+ htmlAttributes.valid = valid;
50
+ htmlAttributes.invalid = invalid;
51
+ htmlAttributes.required = required;
52
+ htmlAttributes.disabled = disabled;
53
+
54
+ const inputAttributes = {
55
+ type,
56
+ value,
57
+ placeholder,
58
+ autocomplete,
59
+
60
+ disabled
61
+ };
62
+
63
+ let timePickerClasses = [
64
+ ownClassName,
65
+ 'k-timepicker'
66
+ ];
67
+
68
+ let ariaAttr = aria
69
+ ? {}
70
+ : {};
71
+
72
+ if (legacy) {
73
+
74
+ let legacyClasses = [
75
+ ownClassName,
76
+ 'k-widget',
77
+ 'k-timepicker',
78
+ {
79
+ 'k-state-hover': hover === true,
80
+ 'k-state-focus': focus === true,
81
+ 'k-state-invalid': invalid === true,
82
+ 'k-state-disabled': disabled === true
83
+ }
84
+ ];
85
+
86
+ let legacyWrapClasses = [
87
+ 'k-picker-wrap'
88
+ ];
89
+
90
+ return (
91
+ <InputStatic className={legacyClasses} {...htmlAttributes}>
92
+ <span className={legacyWrapClasses}>
93
+ <input type={type} className="k-input" {...inputAttributes} />
94
+ <InputValidationIconStatic {...props} />
95
+ <InputLoadingIconStatic {...props} />
96
+ <InputClearValueStatic {...props} />
97
+ <span className="k-select"><IconStatic name="clock" /></span>
98
+ </span>
99
+ </InputStatic>
100
+ );
101
+ }
102
+
103
+ return (
104
+ <InputStatic className={timePickerClasses} {...ariaAttr} {...htmlAttributes}>
105
+ {prefix}
106
+ <InputInnerInputStatic {...inputAttributes} />
107
+ {suffix}
108
+ <InputValidationIconStatic {...props} />
109
+ <InputLoadingIconStatic {...props} />
110
+ <InputClearValueStatic {...props} />
111
+ <ButtonStatic className="k-input-button" icon="clock" shape={null} rounded={null} size={size} fillMode={fillMode}></ButtonStatic>
112
+ </InputStatic>
113
+ );
114
+ }
115
+
116
+ TimePickerStatic.defaultProps = {
117
+ ...globalDefaultProps,
118
+
119
+ type: 'text',
120
+ value: '',
121
+ placeholder: '',
122
+ autocomplete: 'off',
123
+
124
+ showValidationIcon: true,
125
+ showLoadingIcon: true,
126
+ showClearButton: true,
127
+
128
+ size: 'medium',
129
+ rounded: 'medium',
130
+
131
+ fillMode: 'solid'
132
+ };
133
+
134
+ TimePickerStatic.propTypes = {
135
+ children: typeof [],
136
+ className: typeof '',
137
+
138
+ type: typeof [ 'text', 'password' ],
139
+ value: typeof '',
140
+ placeholder: typeof '',
141
+ autocomplete: typeof [ 'on', 'off' ],
142
+
143
+ showValidationIcon: typeof true,
144
+ showLoadingIcon: typeof true,
145
+ showClearButton: typeof true,
146
+
147
+ prefix: typeof '#fragment',
148
+ suffix: typeof '#fragment',
149
+
150
+ size: typeof [ null, 'small', 'medium', 'large' ],
151
+ rounded: typeof [ null, 'small', 'medium', 'large', 'full' ],
152
+
153
+ fillMode: typeof [ null, 'solid', 'flat', 'outline' ],
154
+
155
+ hover: typeof false,
156
+ focus: typeof false,
157
+ valid: typeof false,
158
+ invalid: typeof false,
159
+ required: typeof false,
160
+ disabled: typeof false,
161
+
162
+ aria: typeof false,
163
+ legacy: typeof false,
164
+
165
+ htmlAttributes: typeof []
166
+ };
167
+
168
+ export { TimePicker, TimePickerStatic };
File without changes
@@ -0,0 +1,4 @@
1
+ export * from './treeview.jsx';
2
+ export * from './treeview-group.jsx';
3
+ export * from './treeview-item.jsx';
4
+ export * from './treeview-leaf.jsx';
@@ -0,0 +1,70 @@
1
+ import { Component, globalDefaultProps } from '../component/index';
2
+
3
+ class TreeviewGroup extends Component {
4
+ render() {
5
+ return <TreeviewGroupStatic {...this.props} />;
6
+ }
7
+ }
8
+
9
+ function TreeviewGroupStatic(props) {
10
+ const {
11
+ className: ownClassName,
12
+
13
+ items,
14
+
15
+ aria,
16
+ legacy,
17
+
18
+ ...htmlAttributes
19
+ } = props;
20
+
21
+ let treeviewULClasses = [
22
+ ownClassName,
23
+ 'k-treeview-group'
24
+ ];
25
+
26
+ let ariaAttr = aria
27
+ ? {}
28
+ : {};
29
+
30
+ if (legacy) {
31
+
32
+ let legacyTreeviewULClasses = [
33
+ ownClassName,
34
+ 'k-group',
35
+ ];
36
+
37
+ return (
38
+ <ul className={legacyTreeviewULClasses} {...ariaAttr} {...htmlAttributes}>
39
+ {items}
40
+ </ul>
41
+ );
42
+ }
43
+
44
+ return (
45
+ <ul className={treeviewULClasses} {...ariaAttr} {...htmlAttributes}>
46
+ {items}
47
+ </ul>
48
+ );
49
+ }
50
+
51
+ TreeviewGroupStatic.defaultProps = {
52
+ ...globalDefaultProps,
53
+
54
+ children: [],
55
+ items: []
56
+ };
57
+
58
+ TreeviewGroupStatic.propTypes = {
59
+ children: typeof [],
60
+ className: typeof '',
61
+
62
+ items: typeof [],
63
+
64
+ aria: typeof false,
65
+ legacy: typeof false,
66
+
67
+ htmlAttributes: typeof []
68
+ };
69
+
70
+ export { TreeviewGroup, TreeviewGroupStatic };