@progress/kendo-themes-html 7.2.1-dev.0 → 7.2.1-dev.1

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 (172) hide show
  1. package/dist/cjs/autocomplete/tests/autocomplete-prefix-suffix.js +1096 -888
  2. package/dist/cjs/column-menu/column-menu-expander.spec.js +5933 -0
  3. package/dist/cjs/column-menu/column-menu-item-content.js +47 -0
  4. package/dist/cjs/column-menu/column-menu-item-wrapper.js +46 -0
  5. package/dist/cjs/column-menu/column-menu-item.spec.js +4396 -0
  6. package/dist/cjs/column-menu/column-menu-multicheck-item.js +261 -0
  7. package/dist/cjs/column-menu/column-menu-multicheck-wrap.js +46 -0
  8. package/dist/cjs/column-menu/column-menu.spec.js +67 -0
  9. package/dist/cjs/column-menu/filter-menu.spec.js +61 -0
  10. package/dist/cjs/column-menu/templates/column-menu-normal.js +5957 -0
  11. package/dist/cjs/column-menu/templates/column-menu-tabbed.js +5947 -0
  12. package/dist/cjs/column-menu/templates/filter-menu-multi-check.js +5984 -0
  13. package/dist/cjs/column-menu/templates/filter-menu-normal.js +5947 -0
  14. package/dist/cjs/column-menu/tests/column-menu-rtl.js +6038 -0
  15. package/dist/cjs/column-menu/tests/column-menu-tabbed.js +6026 -0
  16. package/dist/cjs/column-menu/tests/column-menu.js +6038 -0
  17. package/dist/cjs/combobox/tests/combobox-prefix-suffix.js +1096 -888
  18. package/dist/cjs/filemanager/tests/filemanager-gridview-preview.js +957 -749
  19. package/dist/cjs/filemanager/tests/filemanager-listview-preview.js +911 -703
  20. package/dist/cjs/form/tests/form-field-dropdowns.js +1095 -887
  21. package/dist/cjs/grid/tests/grid-column-menu-rtl.js +707 -603
  22. package/dist/cjs/grid/tests/grid-column-menu-tabbed.js +841 -655
  23. package/dist/cjs/grid/tests/grid-column-menu.js +706 -602
  24. package/dist/cjs/grid/tests/grid-column-reordering-actions.js +302 -122
  25. package/dist/cjs/grid/tests/grid-column-reordering.js +308 -128
  26. package/dist/cjs/grid/tests/grid-column-resizing-actions.js +290 -107
  27. package/dist/cjs/grid/tests/grid-editing-custom-editor.js +1168 -960
  28. package/dist/cjs/grid/tests/grid-grouping-actions.js +272 -59
  29. package/dist/cjs/index.js +2539 -2199
  30. package/dist/cjs/multiselect/templates/multiselect-prefix.js +1071 -863
  31. package/dist/cjs/multiselect/templates/multiselect-suffix.js +1071 -863
  32. package/dist/cjs/multiselect/tests/multiselect-adaptive.js +1077 -869
  33. package/dist/cjs/multiselect/tests/multiselect-flat.js +1101 -893
  34. package/dist/cjs/multiselect/tests/multiselect-grouping.js +1077 -869
  35. package/dist/cjs/multiselect/tests/multiselect-opened.js +1079 -871
  36. package/dist/cjs/multiselect/tests/multiselect-outline.js +1101 -893
  37. package/dist/cjs/multiselect/tests/multiselect-prefix-suffix.js +1108 -900
  38. package/dist/cjs/multiselect/tests/multiselect-size-rounded.js +1080 -872
  39. package/dist/cjs/multiselect/tests/multiselect-solid.js +1101 -893
  40. package/dist/cjs/pivotgrid/tests/pivotgrid-column-menus.js +886 -739
  41. package/dist/cjs/pivotgrid/tests/pivotgrid-settings-panel-reordering.js +1172 -308
  42. package/dist/cjs/scheduler/tests/scheduler-edit-dialog.js +1110 -902
  43. package/dist/cjs/scheduler/tests/scheduler-editing-weekly.js +1124 -916
  44. package/dist/cjs/taskboard/taskboard-pane.js +1078 -870
  45. package/dist/cjs/taskboard/taskboard.spec.js +993 -785
  46. package/dist/cjs/taskboard/templates/taskboard-normal.js +1027 -819
  47. package/dist/cjs/taskboard/tests/taskboard-card-column-menu.js +1620 -64
  48. package/dist/cjs/taskboard/tests/taskboard-card.js +1099 -891
  49. package/dist/cjs/taskboard/tests/taskboard-column.js +1114 -906
  50. package/dist/cjs/taskboard/tests/taskboard-pane.js +1035 -827
  51. package/dist/cjs/taskboard/tests/taskboard-resources.js +1081 -873
  52. package/dist/cjs/taskboard/tests/taskboard-rtl.js +1033 -825
  53. package/dist/cjs/taskboard/tests/taskboard.js +1033 -825
  54. package/dist/cjs/treelist/tests/treelist-aggregate-react.js +4277 -73
  55. package/dist/cjs/treelist/tests/treelist-aggregates.js +4519 -216
  56. package/dist/cjs/treelist/tests/treelist-react.js +2518 -98
  57. package/dist/cjs/treelist/tests/treelist-row-reordering.js +4371 -59
  58. package/dist/cjs/treelist/tests/treelist.js +4409 -112
  59. package/dist/cjs/treelist/treelist.spec.js +8415 -0
  60. package/dist/esm/autocomplete/tests/autocomplete-prefix-suffix.js +1011 -803
  61. package/dist/esm/column-menu/column-menu-expander.spec.js +5917 -0
  62. package/dist/esm/column-menu/column-menu-item-content.js +25 -0
  63. package/dist/esm/column-menu/column-menu-item-wrapper.js +24 -0
  64. package/dist/esm/column-menu/column-menu-item.spec.js +4380 -0
  65. package/dist/esm/column-menu/column-menu-multicheck-item.js +239 -0
  66. package/dist/esm/column-menu/column-menu-multicheck-wrap.js +24 -0
  67. package/dist/esm/column-menu/column-menu.spec.js +45 -0
  68. package/dist/esm/column-menu/filter-menu.spec.js +39 -0
  69. package/dist/esm/column-menu/templates/column-menu-normal.js +5941 -0
  70. package/dist/esm/column-menu/templates/column-menu-tabbed.js +5931 -0
  71. package/dist/esm/column-menu/templates/filter-menu-multi-check.js +5968 -0
  72. package/dist/esm/column-menu/templates/filter-menu-normal.js +5931 -0
  73. package/dist/esm/column-menu/tests/column-menu-rtl.js +6022 -0
  74. package/dist/esm/column-menu/tests/column-menu-tabbed.js +6010 -0
  75. package/dist/esm/column-menu/tests/column-menu.js +6022 -0
  76. package/dist/esm/combobox/tests/combobox-prefix-suffix.js +1011 -803
  77. package/dist/esm/filemanager/tests/filemanager-gridview-preview.js +949 -741
  78. package/dist/esm/filemanager/tests/filemanager-listview-preview.js +903 -695
  79. package/dist/esm/form/tests/form-field-dropdowns.js +1010 -802
  80. package/dist/esm/grid/tests/grid-column-menu-rtl.js +707 -603
  81. package/dist/esm/grid/tests/grid-column-menu-tabbed.js +852 -666
  82. package/dist/esm/grid/tests/grid-column-menu.js +706 -602
  83. package/dist/esm/grid/tests/grid-column-reordering-actions.js +302 -122
  84. package/dist/esm/grid/tests/grid-column-reordering.js +308 -128
  85. package/dist/esm/grid/tests/grid-column-resizing-actions.js +290 -107
  86. package/dist/esm/grid/tests/grid-editing-custom-editor.js +1083 -875
  87. package/dist/esm/grid/tests/grid-grouping-actions.js +272 -59
  88. package/dist/esm/index.js +2495 -2155
  89. package/dist/esm/multiselect/templates/multiselect-prefix.js +986 -778
  90. package/dist/esm/multiselect/templates/multiselect-suffix.js +986 -778
  91. package/dist/esm/multiselect/tests/multiselect-adaptive.js +992 -784
  92. package/dist/esm/multiselect/tests/multiselect-flat.js +1016 -808
  93. package/dist/esm/multiselect/tests/multiselect-grouping.js +992 -784
  94. package/dist/esm/multiselect/tests/multiselect-opened.js +994 -786
  95. package/dist/esm/multiselect/tests/multiselect-outline.js +1016 -808
  96. package/dist/esm/multiselect/tests/multiselect-prefix-suffix.js +1023 -815
  97. package/dist/esm/multiselect/tests/multiselect-size-rounded.js +995 -787
  98. package/dist/esm/multiselect/tests/multiselect-solid.js +1016 -808
  99. package/dist/esm/pivotgrid/tests/pivotgrid-column-menus.js +886 -739
  100. package/dist/esm/pivotgrid/tests/pivotgrid-settings-panel-reordering.js +1172 -308
  101. package/dist/esm/scheduler/tests/scheduler-edit-dialog.js +1025 -817
  102. package/dist/esm/scheduler/tests/scheduler-editing-weekly.js +1039 -831
  103. package/dist/esm/taskboard/taskboard-pane.js +985 -777
  104. package/dist/esm/taskboard/taskboard.spec.js +981 -773
  105. package/dist/esm/taskboard/templates/taskboard-normal.js +1015 -807
  106. package/dist/esm/taskboard/tests/taskboard-card-column-menu.js +1620 -64
  107. package/dist/esm/taskboard/tests/taskboard-card.js +1014 -806
  108. package/dist/esm/taskboard/tests/taskboard-column.js +1029 -821
  109. package/dist/esm/taskboard/tests/taskboard-pane.js +1023 -815
  110. package/dist/esm/taskboard/tests/taskboard-resources.js +996 -788
  111. package/dist/esm/taskboard/tests/taskboard-rtl.js +1021 -813
  112. package/dist/esm/taskboard/tests/taskboard.js +1021 -813
  113. package/dist/esm/treelist/tests/treelist-aggregate-react.js +4277 -73
  114. package/dist/esm/treelist/tests/treelist-aggregates.js +4520 -217
  115. package/dist/esm/treelist/tests/treelist-react.js +2518 -98
  116. package/dist/esm/treelist/tests/treelist-row-reordering.js +4371 -59
  117. package/dist/esm/treelist/tests/treelist.js +4410 -113
  118. package/dist/esm/treelist/treelist.spec.js +8399 -0
  119. package/dist/types/column-menu/column-menu-expander.spec.d.ts +17 -0
  120. package/dist/types/column-menu/column-menu-item-content.d.ts +1 -0
  121. package/dist/types/column-menu/column-menu-item-wrapper.d.ts +1 -0
  122. package/dist/types/column-menu/column-menu-item.spec.d.ts +17 -0
  123. package/dist/types/column-menu/column-menu-multicheck-item.d.ts +4 -0
  124. package/dist/types/column-menu/column-menu-multicheck-wrap.d.ts +1 -0
  125. package/dist/types/column-menu/column-menu.spec.d.ts +14 -0
  126. package/dist/types/column-menu/filter-menu.spec.d.ts +9 -0
  127. package/dist/types/column-menu/index.d.ts +12 -0
  128. package/dist/types/column-menu/templates/column-menu-normal.d.ts +1 -0
  129. package/dist/types/column-menu/templates/column-menu-tabbed.d.ts +1 -0
  130. package/dist/types/column-menu/templates/filter-menu-multi-check.d.ts +1 -0
  131. package/dist/types/column-menu/templates/filter-menu-normal.d.ts +1 -0
  132. package/dist/types/column-menu/tests/column-menu-rtl.d.ts +2 -0
  133. package/dist/types/column-menu/tests/column-menu-tabbed.d.ts +2 -0
  134. package/dist/types/column-menu/tests/column-menu.d.ts +2 -0
  135. package/dist/types/index.d.ts +2 -0
  136. package/dist/types/treelist/index.d.ts +1 -0
  137. package/dist/types/treelist/treelist.spec.d.ts +9 -0
  138. package/package.json +2 -2
  139. package/src/column-menu/column-menu-expander.spec.tsx +66 -0
  140. package/src/column-menu/column-menu-item-content.tsx +18 -0
  141. package/src/column-menu/column-menu-item-wrapper.tsx +17 -0
  142. package/src/column-menu/column-menu-item.spec.tsx +56 -0
  143. package/src/column-menu/column-menu-multicheck-item.tsx +32 -0
  144. package/src/column-menu/column-menu-multicheck-wrap.tsx +17 -0
  145. package/src/column-menu/column-menu.spec.tsx +46 -0
  146. package/src/column-menu/filter-menu.spec.tsx +38 -0
  147. package/src/column-menu/index.ts +12 -0
  148. package/src/column-menu/templates/column-menu-normal.tsx +23 -0
  149. package/src/column-menu/templates/column-menu-tabbed.tsx +36 -0
  150. package/src/column-menu/templates/filter-menu-multi-check.tsx +26 -0
  151. package/src/column-menu/templates/filter-menu-normal.tsx +23 -0
  152. package/src/column-menu/tests/column-menu-rtl.tsx +119 -0
  153. package/src/column-menu/tests/column-menu-tabbed.tsx +113 -0
  154. package/src/column-menu/tests/column-menu.tsx +119 -0
  155. package/src/grid/tests/grid-column-menu-rtl.tsx +194 -367
  156. package/src/grid/tests/grid-column-menu-tabbed.tsx +147 -260
  157. package/src/grid/tests/grid-column-menu.tsx +194 -366
  158. package/src/grid/tests/grid-column-reordering-actions.tsx +48 -77
  159. package/src/grid/tests/grid-column-reordering.tsx +60 -86
  160. package/src/grid/tests/grid-column-resizing-actions.tsx +25 -64
  161. package/src/grid/tests/grid-grouping-actions.tsx +15 -11
  162. package/src/index.ts +2 -1
  163. package/src/pivotgrid/tests/pivotgrid-column-menus.tsx +141 -232
  164. package/src/pivotgrid/tests/pivotgrid-settings-panel-reordering.tsx +17 -34
  165. package/src/taskboard/tests/taskboard-card-column-menu.tsx +12 -22
  166. package/src/treelist/index.ts +1 -0
  167. package/src/treelist/tests/treelist-aggregate-react.tsx +73 -71
  168. package/src/treelist/tests/treelist-aggregates.tsx +219 -242
  169. package/src/treelist/tests/treelist-react.tsx +98 -95
  170. package/src/treelist/tests/treelist-row-reordering.tsx +95 -74
  171. package/src/treelist/tests/treelist.tsx +110 -139
  172. package/src/treelist/treelist.spec.tsx +32 -0
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ export declare const COLUMNMENUEXPANDER_CLASSNAME = "k-expander";
3
+ export type KendoColumnMenuExpanderProps = {
4
+ itemText?: string;
5
+ itemIcon?: string;
6
+ expanderIcon?: string;
7
+ itemContent?: JSX.Element;
8
+ expanded?: boolean;
9
+ };
10
+ export declare const ColumnMenuExpander: {
11
+ (props: KendoColumnMenuExpanderProps & React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
12
+ states: any[];
13
+ options: {};
14
+ className: string;
15
+ defaultProps: {};
16
+ };
17
+ export default ColumnMenuExpander;
@@ -0,0 +1 @@
1
+ export declare const ColumnMenuItemContent: (props: React.HTMLAttributes<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ColumnMenuItemWrapper: (props: React.HTMLAttributes<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,17 @@
1
+ export declare const COLUMNMENUITEM_CLASSNAME = "k-columnmenu-item";
2
+ declare const states: ("focus" | "selected")[];
3
+ export type KendoColumnMenuItemProps = {
4
+ text?: string;
5
+ icon?: string;
6
+ };
7
+ export type KendoColumnMenuItemState = {
8
+ [K in (typeof states)[number]]?: boolean;
9
+ };
10
+ export declare const ColumnMenuItem: {
11
+ (props: KendoColumnMenuItemProps & KendoColumnMenuItemState & React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
12
+ states: ("focus" | "selected")[];
13
+ options: {};
14
+ className: string;
15
+ defaultProps: {};
16
+ };
17
+ export default ColumnMenuItem;
@@ -0,0 +1,4 @@
1
+ export type KendoColumnMenuMulticheckItemProps = {
2
+ text: string;
3
+ };
4
+ export declare const ColumnMenuMulticheckItem: (props: KendoColumnMenuMulticheckItemProps & React.HTMLAttributes<HTMLLIElement>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ColumnMenuMulticheckWrap: (props: React.HTMLAttributes<HTMLUListElement>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,14 @@
1
+ export declare const COLUMNMENU_CLASSNAME = "k-column-menu";
2
+ export type KendoColumnMenuProps = {
3
+ view?: 'list' | 'tabbed';
4
+ };
5
+ export declare const ColumnMenu: {
6
+ (props: KendoColumnMenuProps & React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
7
+ states: any[];
8
+ options: {};
9
+ className: string;
10
+ defaultProps: {
11
+ view: string;
12
+ };
13
+ };
14
+ export default ColumnMenu;
@@ -0,0 +1,9 @@
1
+ export declare const FILTERMENU_CLASSNAME = "k-filter-menu";
2
+ export declare const FilterMenu: {
3
+ (props: React.HTMLAttributes<HTMLFormElement>): import("react/jsx-runtime").JSX.Element;
4
+ states: any[];
5
+ options: {};
6
+ className: string;
7
+ defaultProps: {};
8
+ };
9
+ export default FilterMenu;
@@ -0,0 +1,12 @@
1
+ export * from './column-menu.spec';
2
+ export * from './column-menu-item.spec';
3
+ export * from './column-menu-item-wrapper';
4
+ export * from './column-menu-item-content';
5
+ export * from './filter-menu.spec';
6
+ export * from './column-menu-multicheck-wrap';
7
+ export * from './column-menu-multicheck-item';
8
+ export * from './column-menu-expander.spec';
9
+ export * from './templates/column-menu-normal';
10
+ export * from './templates/column-menu-tabbed';
11
+ export * from './templates/filter-menu-normal';
12
+ export * from './templates/filter-menu-multi-check';
@@ -0,0 +1 @@
1
+ export declare const ColumnMenuNormal: (props: any) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ColumnMenuTabbed: (props: any) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const FilterMenuMultiCheck: (props: any) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const FilterMenuNormal: (props: any) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ declare const _default: () => import("react/jsx-runtime").JSX.Element;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: () => import("react/jsx-runtime").JSX.Element;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: () => import("react/jsx-runtime").JSX.Element;
2
+ export default _default;
@@ -73,9 +73,11 @@ export * from './splitter/index';
73
73
  export * from './tilelayout/index';
74
74
  export * from './grid/index';
75
75
  export * from './listview/index';
76
+ export * from './treelist/index';
76
77
  export * from './filter/index';
77
78
  export * from './filemanager/index';
78
79
  export * from './taskboard/index';
80
+ export * from './column-menu/index';
79
81
  export * from './chat/index';
80
82
  export * from './timeline/index';
81
83
  export * from './pdf-viewer/index';
@@ -0,0 +1 @@
1
+ export * from './treelist.spec';
@@ -0,0 +1,9 @@
1
+ import { KendoGridProps } from '../grid';
2
+ export declare const TreeList: {
3
+ (props: KendoGridProps & React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
4
+ states: any[];
5
+ options: {};
6
+ className: string;
7
+ defaultProps: {};
8
+ };
9
+ export default TreeList;
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": "7.2.1-dev.0",
4
+ "version": "7.2.1-dev.1",
5
5
  "author": "Progress",
6
6
  "license": "Apache-2.0",
7
7
  "keywords": [
@@ -52,5 +52,5 @@
52
52
  "devDependencies": {
53
53
  "@types/react": "^18.0.2"
54
54
  },
55
- "gitHead": "e2d5c5a08efe3d7ba9bb5a5c9666d7f2aab15d3d"
55
+ "gitHead": "e457fb8fc63a63e7f4b44765d1240403e0b74703"
56
56
  }
@@ -0,0 +1,66 @@
1
+ import { classNames } from '../misc';
2
+ import { Icon } from '../icon';
3
+ import { ColumnMenuItem, ColumnMenuItemContent } from '../column-menu';
4
+
5
+ export const COLUMNMENUEXPANDER_CLASSNAME = `k-expander`;
6
+
7
+ const states = [];
8
+
9
+ const options = {};
10
+
11
+ export type KendoColumnMenuExpanderProps = {
12
+ itemText?: string;
13
+ itemIcon?: string;
14
+ expanderIcon?: string;
15
+ itemContent?: JSX.Element;
16
+ expanded?: boolean;
17
+ };
18
+
19
+ const defaultProps = {};
20
+
21
+ export const ColumnMenuExpander = (
22
+ props: KendoColumnMenuExpanderProps &
23
+ React.HTMLAttributes<HTMLDivElement>
24
+ ) => {
25
+ const {
26
+ itemText,
27
+ itemIcon,
28
+ expanded,
29
+ itemContent,
30
+ expanderIcon,
31
+ ...other
32
+ } = props;
33
+
34
+ let icon = <></>;
35
+
36
+ if ( !expanded && !expanderIcon) {
37
+ icon = <Icon icon="chevron-down" />;
38
+ } else if (expanded && !expanderIcon) {
39
+ icon = <Icon icon="chevron-up" />;
40
+ } else { icon = <Icon icon={expanderIcon} />; }
41
+
42
+ return (
43
+ <div
44
+ {...other}
45
+ className={classNames(
46
+ props.className,
47
+ COLUMNMENUEXPANDER_CLASSNAME
48
+ )}>
49
+ <ColumnMenuItem text={itemText} icon={itemIcon}>
50
+ <span className="k-spacer"></span>
51
+ <span className="k-expander-indicator">
52
+ {icon}
53
+ </span>
54
+ </ColumnMenuItem>
55
+ { expanded && <ColumnMenuItemContent>{itemContent}</ColumnMenuItemContent> }
56
+ { props.children }
57
+ </div>
58
+ );
59
+ };
60
+
61
+ ColumnMenuExpander.states = states;
62
+ ColumnMenuExpander.options = options;
63
+ ColumnMenuExpander.className = COLUMNMENUEXPANDER_CLASSNAME;
64
+ ColumnMenuExpander.defaultProps = defaultProps;
65
+
66
+ export default ColumnMenuExpander;
@@ -0,0 +1,18 @@
1
+ import { classNames } from '../misc';
2
+
3
+ const className = `k-columnmenu-item-content`;
4
+
5
+ export const ColumnMenuItemContent = (
6
+ props: React.HTMLAttributes<HTMLDivElement>
7
+ ) => (
8
+ <div
9
+ {...props}
10
+ className={classNames(
11
+ props.className,
12
+ className,
13
+ "k-columns-item"
14
+ )}
15
+ >
16
+ {props.children}
17
+ </div>
18
+ );
@@ -0,0 +1,17 @@
1
+ import { classNames } from '../misc';
2
+
3
+ const className = `k-columnmenu-item-wrapper`;
4
+
5
+ export const ColumnMenuItemWrapper = (
6
+ props: React.HTMLAttributes<HTMLDivElement>
7
+ ) => (
8
+ <div
9
+ {...props}
10
+ className={classNames(
11
+ props.className,
12
+ className,
13
+ )}
14
+ >
15
+ {props.children}
16
+ </div>
17
+ );
@@ -0,0 +1,56 @@
1
+ import { classNames, stateClassNames, States } from '../misc';
2
+ import { Icon } from '../icon';
3
+
4
+ export const COLUMNMENUITEM_CLASSNAME = `k-columnmenu-item`;
5
+
6
+ const states = [
7
+ States.focus,
8
+ States.selected
9
+ ];
10
+
11
+ const options = {};
12
+
13
+ export type KendoColumnMenuItemProps = {
14
+ text?: string;
15
+ icon?: string;
16
+ };
17
+
18
+ const defaultProps = {};
19
+
20
+ export type KendoColumnMenuItemState = { [K in (typeof states)[number]]?: boolean };
21
+
22
+ export const ColumnMenuItem = (
23
+ props: KendoColumnMenuItemProps & KendoColumnMenuItemState &
24
+ React.HTMLAttributes<HTMLDivElement>
25
+ ) => {
26
+ const {
27
+ focus,
28
+ selected,
29
+ text,
30
+ icon,
31
+ ...other
32
+ } = props;
33
+
34
+ return (
35
+ <div
36
+ {...other}
37
+ className={classNames(
38
+ props.className,
39
+ COLUMNMENUITEM_CLASSNAME,
40
+ stateClassNames(COLUMNMENUITEM_CLASSNAME, {
41
+ focus,
42
+ selected,
43
+ })
44
+ )}>
45
+ <Icon icon={icon} />{text}
46
+ {props.children}
47
+ </div>
48
+ );
49
+ };
50
+
51
+ ColumnMenuItem.states = states;
52
+ ColumnMenuItem.options = options;
53
+ ColumnMenuItem.className = COLUMNMENUITEM_CLASSNAME;
54
+ ColumnMenuItem.defaultProps = defaultProps;
55
+
56
+ export default ColumnMenuItem;
@@ -0,0 +1,32 @@
1
+ import { classNames } from '../misc';
2
+ import { Checkbox } from '../checkbox';
3
+
4
+ const className = `k-item`;
5
+
6
+ export type KendoColumnMenuMulticheckItemProps = {
7
+ text: string;
8
+ }
9
+
10
+ export const ColumnMenuMulticheckItem = (
11
+ props: KendoColumnMenuMulticheckItemProps &
12
+ React.HTMLAttributes<HTMLLIElement>
13
+ ) => {
14
+ const {
15
+ text,
16
+ ...other
17
+ } = props;
18
+
19
+ return (
20
+ <li
21
+ {...other}
22
+ className={classNames(
23
+ props.className,
24
+ className
25
+ )}
26
+ >
27
+ <label className="k-label k-checkbox-label">
28
+ <Checkbox /><span>{text}</span>
29
+ </label>
30
+ </li>
31
+ );
32
+ };
@@ -0,0 +1,17 @@
1
+ import { classNames } from '../misc';
2
+
3
+ const className = `k-multicheck-wrap`;
4
+
5
+ export const ColumnMenuMulticheckWrap = (
6
+ props: React.HTMLAttributes<HTMLUListElement>
7
+ ) => (
8
+ <ul
9
+ {...props}
10
+ className={classNames(
11
+ props.className,
12
+ className
13
+ )}
14
+ >
15
+ {props.children}
16
+ </ul>
17
+ );
@@ -0,0 +1,46 @@
1
+ import { classNames } from '../misc';
2
+
3
+ export const COLUMNMENU_CLASSNAME = `k-column-menu`;
4
+
5
+ const states = [];
6
+
7
+ const options = {};
8
+
9
+ export type KendoColumnMenuProps = {
10
+ view?: 'list' | 'tabbed';
11
+ };
12
+
13
+ const defaultProps = {
14
+ view: 'list',
15
+ };
16
+
17
+ export const ColumnMenu = (
18
+ props: KendoColumnMenuProps &
19
+ React.HTMLAttributes<HTMLDivElement>
20
+ ) => {
21
+ const {
22
+ view = defaultProps.view,
23
+ ...other
24
+ } = props;
25
+
26
+ return (
27
+ <div
28
+ {...other}
29
+ className={classNames(
30
+ props.className,
31
+ COLUMNMENU_CLASSNAME,
32
+ {
33
+ 'k-column-menu-tabbed': view === 'tabbed'
34
+ },
35
+ )}>
36
+ { props.children }
37
+ </div>
38
+ );
39
+ };
40
+
41
+ ColumnMenu.states = states;
42
+ ColumnMenu.options = options;
43
+ ColumnMenu.className = COLUMNMENU_CLASSNAME;
44
+ ColumnMenu.defaultProps = defaultProps;
45
+
46
+ export default ColumnMenu;
@@ -0,0 +1,38 @@
1
+ import { classNames } from '../misc';
2
+
3
+ export const FILTERMENU_CLASSNAME = `k-filter-menu`;
4
+
5
+ const states = [];
6
+
7
+ const options = {};
8
+
9
+ const defaultProps = {};
10
+
11
+ export const FilterMenu = (
12
+ props: React.HTMLAttributes<HTMLFormElement>
13
+ ) => {
14
+ const {
15
+ ...other
16
+ } = props;
17
+
18
+ return (
19
+ <form
20
+ {...other}
21
+ className={classNames(
22
+ props.className,
23
+ FILTERMENU_CLASSNAME
24
+ )}
25
+ >
26
+ <div className="k-filter-menu-container">
27
+ {props.children}
28
+ </div>
29
+ </form>
30
+ );
31
+ };
32
+
33
+ FilterMenu.states = states;
34
+ FilterMenu.options = options;
35
+ FilterMenu.className = FILTERMENU_CLASSNAME;
36
+ FilterMenu.defaultProps = defaultProps;
37
+
38
+ export default FilterMenu;
@@ -0,0 +1,12 @@
1
+ export * from './column-menu.spec';
2
+ export * from './column-menu-item.spec';
3
+ export * from './column-menu-item-wrapper';
4
+ export * from './column-menu-item-content';
5
+ export * from './filter-menu.spec';
6
+ export * from './column-menu-multicheck-wrap';
7
+ export * from './column-menu-multicheck-item';
8
+ export * from './column-menu-expander.spec';
9
+ export * from './templates/column-menu-normal';
10
+ export * from './templates/column-menu-tabbed';
11
+ export * from './templates/filter-menu-normal';
12
+ export * from './templates/filter-menu-multi-check';
@@ -0,0 +1,23 @@
1
+ import { ColumnMenu, ColumnMenuItemWrapper, ColumnMenuItem, ColumnMenuExpander } from "../../column-menu";
2
+
3
+ export const ColumnMenuNormal = (props) => (
4
+ <ColumnMenu
5
+ children={[
6
+ <ColumnMenuItemWrapper>
7
+ <ColumnMenuItem text="Item 1" icon="sort-asc-small" />
8
+ <ColumnMenuItem text="Item 2" icon="sort-desc-small" />
9
+ </ColumnMenuItemWrapper>,
10
+ <ColumnMenuItemWrapper>
11
+ <ColumnMenuExpander itemText="Expandable item 1" itemIcon="columns" />
12
+ </ColumnMenuItemWrapper>,
13
+ <ColumnMenuItemWrapper>
14
+ <ColumnMenuExpander itemText="Expandable item 2" itemIcon="filter" />
15
+ </ColumnMenuItemWrapper>,
16
+ <ColumnMenuItemWrapper>
17
+ <ColumnMenuExpander itemText="Item with icons" itemIcon="arrows-left-right" expanderIcon="window-restore"/>
18
+ </ColumnMenuItemWrapper>
19
+ ]}
20
+ {...props}
21
+ >
22
+ </ColumnMenu>
23
+ );
@@ -0,0 +1,36 @@
1
+ import { ColumnMenu } from "../../column-menu";
2
+ import { Icon } from '../../icon';
3
+
4
+ export const ColumnMenuTabbed = (props) => (
5
+ <ColumnMenu
6
+ view="tabbed"
7
+ children={[
8
+ <div className="k-tabstrip k-pos-relative k-tabstrip-top">
9
+ <div className="k-tabstrip-items-wrapper k-hstack">
10
+ <ul className="k-reset k-tabstrip-items">
11
+ <li className="k-tabstrip-item k-item k-active">
12
+ <span className="k-link">
13
+ <Icon icon="filter" />
14
+ </span>
15
+ </li>
16
+ <li className="k-tabstrip-item k-item">
17
+ <span className="k-link">
18
+ <Icon icon="sliders" />
19
+ </span>
20
+ </li>
21
+ <li className="k-tabstrip-item k-item">
22
+ <span className="k-link">
23
+ <Icon icon="columns" />
24
+ </span>
25
+ </li>
26
+ </ul>
27
+ </div>
28
+ <div className="k-tabstrip-content k-active">
29
+ Tabbed column menu content
30
+ </div>
31
+ </div>
32
+ ]}
33
+ {...props}
34
+ >
35
+ </ColumnMenu>
36
+ );
@@ -0,0 +1,26 @@
1
+ import { FilterMenu, ColumnMenuMulticheckWrap, ColumnMenuMulticheckItem } from "../../column-menu";
2
+ import { Searchbox } from '../../searchbox';
3
+ import { ActionButtons } from '../../action-buttons';
4
+ import { Button } from '../../button';
5
+
6
+ export const FilterMenuMultiCheck = (props) => (
7
+ <FilterMenu
8
+ children={[
9
+ <Searchbox placeholder="Search..." />,
10
+ <ColumnMenuMulticheckWrap>
11
+ <ColumnMenuMulticheckItem text="Select All" className="k-check-all-wrap" />
12
+ <ColumnMenuMulticheckItem text="Column 1" />
13
+ <ColumnMenuMulticheckItem text="Column 2" />
14
+ <ColumnMenuMulticheckItem text="Column 3" />
15
+ <ColumnMenuMulticheckItem text="Column 4 Column 4 Column 4 Column 4 Column 4 Column 4 Column 4 Column 4" />
16
+ </ColumnMenuMulticheckWrap>,
17
+ <div className="k-filter-selected-items">0 selected items</div>,
18
+ <ActionButtons alignment="stretched">
19
+ <Button themeColor="primary">Apply</Button>
20
+ <Button>Clear</Button>
21
+ </ActionButtons>
22
+ ]}
23
+ {...props}
24
+ >
25
+ </FilterMenu>
26
+ );
@@ -0,0 +1,23 @@
1
+ import { FilterMenu } from "../../column-menu";
2
+ import { DropdownList } from "../../dropdownlist";
3
+ import { Textbox } from "../../textbox";
4
+ import { ActionButtons } from '../../action-buttons';
5
+ import { Button } from '../../button';
6
+
7
+ export const FilterMenuNormal = (props) => (
8
+ <FilterMenu
9
+ children={[
10
+ <DropdownList value="Contains" />,
11
+ <Textbox placeholder="Filter..." />,
12
+ <DropdownList value="And" className="k-filter-and" />,
13
+ <DropdownList value="Contains" />,
14
+ <Textbox placeholder="Filter..." />,
15
+ <ActionButtons alignment="stretched">
16
+ <Button themeColor="primary">Filter</Button>
17
+ <Button>Clear</Button>
18
+ </ActionButtons>
19
+ ]}
20
+ {...props}
21
+ >
22
+ </FilterMenu>
23
+ );