ep-craft 0.1.32 → 0.1.34

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 (205) hide show
  1. package/dist/components/button/index.d.ts +12 -0
  2. package/dist/components/button-group/index.d.ts +3 -2
  3. package/dist/components/button-group/index.js +7 -3
  4. package/dist/components/button-group/src/button-group.d.ts +48 -0
  5. package/dist/components/button-group/src/button-group.js +7 -0
  6. package/dist/components/button-group/src/button-group.vue.d.ts +16 -0
  7. package/dist/components/button-group/src/button-group.vue.js +42 -0
  8. package/dist/components/button-group/src/button-group2.vue.js +4 -0
  9. package/dist/components/checkbox/index.js +6 -5
  10. package/dist/components/collection/index.d.ts +8 -0
  11. package/dist/components/collection/src/collection-item.vue.d.ts +2 -0
  12. package/dist/components/collection/src/collection-item.vue.js +10 -0
  13. package/dist/components/collection/src/collection-item2.vue.js +8 -0
  14. package/dist/components/collection/src/collection.d.ts +39 -0
  15. package/dist/components/collection/src/collection.js +52 -0
  16. package/dist/components/collection/src/collection.vue.d.ts +2 -0
  17. package/dist/components/collection/src/collection.vue.js +10 -0
  18. package/dist/components/collection/src/collection2.vue.js +7 -0
  19. package/dist/components/collection/src/tokens.d.ts +18 -0
  20. package/dist/components/divider/index.d.ts +24 -2
  21. package/dist/components/divider/index.js +8 -3
  22. package/dist/components/divider/src/divider.d.ts +30 -0
  23. package/dist/components/divider/src/divider.js +34 -0
  24. package/dist/components/divider/src/divider.vue.d.ts +24 -0
  25. package/dist/components/divider/src/divider.vue.js +39 -0
  26. package/dist/components/divider/src/divider2.vue.js +4 -0
  27. package/dist/components/dropdown/index.d.ts +3017 -3
  28. package/dist/components/dropdown/index.js +23 -3
  29. package/dist/components/dropdown/src/dropdown-item-impl.vue.d.ts +79 -0
  30. package/dist/components/dropdown/src/dropdown-item-impl.vue.js +40 -0
  31. package/dist/components/dropdown/src/dropdown-item-impl2.vue.js +68 -0
  32. package/dist/components/dropdown/src/dropdown-item.vue.d.ts +169 -0
  33. package/dist/components/dropdown/src/dropdown-item.vue.js +35 -0
  34. package/dist/components/dropdown/src/dropdown-item2.vue.js +63 -0
  35. package/dist/components/dropdown/src/dropdown-menu.vue.d.ts +27 -0
  36. package/dist/components/dropdown/src/dropdown-menu.vue.js +24 -0
  37. package/dist/components/dropdown/src/dropdown-menu2.vue.js +75 -0
  38. package/dist/components/dropdown/src/dropdown.d.ts +200 -0
  39. package/dist/components/dropdown/src/dropdown.js +201 -0
  40. package/dist/components/dropdown/src/dropdown.vue.d.ts +1126 -0
  41. package/dist/components/dropdown/src/dropdown.vue.js +127 -0
  42. package/dist/components/dropdown/src/dropdown2.vue.js +127 -0
  43. package/dist/components/dropdown/src/instance.d.ts +2 -0
  44. package/dist/components/dropdown/src/tokens.d.ts +13 -0
  45. package/dist/components/dropdown/src/tokens.js +5 -0
  46. package/dist/components/dropdown/src/useDropdown.d.ts +5 -0
  47. package/dist/components/dropdown/src/useDropdown.js +15 -0
  48. package/dist/components/dropdown-item/index.d.ts +1 -4
  49. package/dist/components/dropdown-menu/index.d.ts +1 -4
  50. package/dist/components/index.js +129 -131
  51. package/dist/components/popover/index.d.ts +121 -3
  52. package/dist/components/popover/index.js +19 -4
  53. package/dist/components/popover/src/directive.d.ts +4 -0
  54. package/dist/components/popover/src/directive.js +15 -0
  55. package/dist/components/popover/src/popover.d.ts +291 -0
  56. package/dist/components/popover/src/popover.js +168 -0
  57. package/dist/components/popover/src/popover.vue.d.ts +53 -0
  58. package/dist/components/popover/src/popover.vue.js +125 -0
  59. package/dist/components/popover/src/popover2.vue.js +4 -0
  60. package/dist/components/progress/index.d.ts +35 -2
  61. package/dist/components/progress/index.js +10 -4
  62. package/dist/components/progress/src/progress.d.ts +97 -0
  63. package/dist/components/progress/src/progress.js +104 -0
  64. package/dist/components/progress/src/progress.vue.d.ts +30 -0
  65. package/dist/components/progress/src/progress.vue.js +179 -0
  66. package/dist/components/progress/src/progress2.vue.js +4 -0
  67. package/dist/components/roving-focus-group/index.d.ts +14 -0
  68. package/dist/components/roving-focus-group/index.js +15 -0
  69. package/dist/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +50 -0
  70. package/dist/components/roving-focus-group/src/roving-focus-group-impl.vue.js +10 -0
  71. package/dist/components/roving-focus-group/src/roving-focus-group-impl2.vue.js +115 -0
  72. package/dist/components/roving-focus-group/src/roving-focus-group.d.ts +56 -0
  73. package/dist/components/roving-focus-group/src/roving-focus-group.js +43 -0
  74. package/dist/components/roving-focus-group/src/roving-focus-group.vue.d.ts +67 -0
  75. package/dist/components/roving-focus-group/src/roving-focus-group.vue.js +13 -0
  76. package/dist/components/roving-focus-group/src/roving-focus-group2.vue.js +21 -0
  77. package/dist/components/roving-focus-group/src/roving-focus-item.vue.d.ts +43 -0
  78. package/dist/components/roving-focus-group/src/roving-focus-item.vue.js +20 -0
  79. package/dist/components/roving-focus-group/src/roving-focus-item2.vue.js +78 -0
  80. package/dist/components/roving-focus-group/src/tokens.d.ts +28 -0
  81. package/dist/components/roving-focus-group/src/tokens.js +5 -0
  82. package/dist/components/roving-focus-group/src/utils.d.ts +8 -0
  83. package/dist/components/roving-focus-group/src/utils.js +28 -0
  84. package/dist/components/table/index.d.ts +56 -3
  85. package/dist/components/table/index.js +20 -4
  86. package/dist/components/table/src/composables/use-scrollbar.d.ts +6 -0
  87. package/dist/components/table/src/composables/use-scrollbar.js +24 -0
  88. package/dist/components/table/src/config.d.ts +87 -0
  89. package/dist/components/table/src/config.js +210 -0
  90. package/dist/components/table/src/filter-panel.vue.d.ts +837 -0
  91. package/dist/components/table/src/filter-panel.vue.js +130 -0
  92. package/dist/components/table/src/filter-panel2.vue.js +155 -0
  93. package/dist/components/table/src/h-helper.d.ts +13 -0
  94. package/dist/components/table/src/h-helper.js +30 -0
  95. package/dist/components/table/src/layout-observer.d.ts +8 -0
  96. package/dist/components/table/src/layout-observer.js +49 -0
  97. package/dist/components/table/src/store/current.d.ts +15 -0
  98. package/dist/components/table/src/store/current.js +45 -0
  99. package/dist/components/table/src/store/expand.d.ts +14 -0
  100. package/dist/components/table/src/store/expand.js +55 -0
  101. package/dist/components/table/src/store/helper.d.ts +548 -0
  102. package/dist/components/table/src/store/helper.js +61 -0
  103. package/dist/components/table/src/store/index.d.ts +1107 -0
  104. package/dist/components/table/src/store/index.js +123 -0
  105. package/dist/components/table/src/store/tree.d.ts +27 -0
  106. package/dist/components/table/src/store/tree.js +153 -0
  107. package/dist/components/table/src/store/watcher.d.ts +88 -0
  108. package/dist/components/table/src/store/watcher.js +483 -0
  109. package/dist/components/table/src/table/defaults.d.ts +560 -0
  110. package/dist/components/table/src/table/defaults.js +236 -0
  111. package/dist/components/table/src/table/key-render-helper.d.ts +2 -0
  112. package/dist/components/table/src/table/key-render-helper.js +18 -0
  113. package/dist/components/table/src/table/style-helper.d.ts +51 -0
  114. package/dist/components/table/src/table/style-helper.js +169 -0
  115. package/dist/components/table/src/table/utils-helper.d.ts +16 -0
  116. package/dist/components/table/src/table/utils-helper.js +36 -0
  117. package/dist/components/table/src/table-body/defaults.d.ts +39 -0
  118. package/dist/components/table/src/table-body/defaults.js +25 -0
  119. package/dist/components/table/src/table-body/events-helper.d.ts +19 -0
  120. package/dist/components/table/src/table-body/events-helper.js +126 -0
  121. package/dist/components/table/src/table-body/index.d.ts +84 -0
  122. package/dist/components/table/src/table-body/index.js +77 -0
  123. package/dist/components/table/src/table-body/render-helper.d.ts +18 -0
  124. package/dist/components/table/src/table-body/render-helper.js +188 -0
  125. package/dist/components/table/src/table-body/styles-helper.d.ts +15 -0
  126. package/dist/components/table/src/table-body/styles-helper.js +98 -0
  127. package/dist/components/table/src/table-body/td-wrapper.vue.d.ts +33 -0
  128. package/dist/components/table/src/table-body/td-wrapper.vue.js +26 -0
  129. package/dist/components/table/src/table-body/td-wrapper2.vue.js +4 -0
  130. package/dist/components/table/src/table-column/defaults.d.ts +348 -0
  131. package/dist/components/table/src/table-column/defaults.js +152 -0
  132. package/dist/components/table/src/table-column/index.d.ts +2 -0
  133. package/dist/components/table/src/table-column/index.vue.d.ts +32 -0
  134. package/dist/components/table/src/table-column/index.vue.js +161 -0
  135. package/dist/components/table/src/table-column/index2.vue.js +4 -0
  136. package/dist/components/table/src/table-column/render-helper.d.ts +17 -0
  137. package/dist/components/table/src/table-column/render-helper.js +116 -0
  138. package/dist/components/table/src/table-column/watcher-helper.d.ts +8 -0
  139. package/dist/components/table/src/table-column/watcher-helper.js +85 -0
  140. package/dist/components/table/src/table-footer/index.d.ts +79 -0
  141. package/dist/components/table/src/table-footer/index.js +110 -0
  142. package/dist/components/table/src/table-footer/mapState-helper.d.ts +9 -0
  143. package/dist/components/table/src/table-footer/mapState-helper.js +16 -0
  144. package/dist/components/table/src/table-footer/style-helper.d.ts +9 -0
  145. package/dist/components/table/src/table-footer/style-helper.js +42 -0
  146. package/dist/components/table/src/table-header/event-helper.d.ts +14 -0
  147. package/dist/components/table/src/table-header/event-helper.js +113 -0
  148. package/dist/components/table/src/table-header/index.d.ts +361 -0
  149. package/dist/components/table/src/table-header/index.js +255 -0
  150. package/dist/components/table/src/table-header/style.helper.d.ts +10 -0
  151. package/dist/components/table/src/table-header/style.helper.js +73 -0
  152. package/dist/components/table/src/table-header/utils-helper.d.ts +10 -0
  153. package/dist/components/table/src/table-header/utils-helper.js +45 -0
  154. package/dist/components/table/src/table-layout.d.ts +37 -0
  155. package/dist/components/table/src/table-layout.js +144 -0
  156. package/dist/components/table/src/table.vue.d.ts +734 -0
  157. package/dist/components/table/src/table.vue.js +443 -0
  158. package/dist/components/table/src/table2.vue.js +4 -0
  159. package/dist/components/table/src/tableColumn.d.ts +2 -0
  160. package/dist/components/table/src/tokens.d.ts +3 -0
  161. package/dist/components/table/src/tokens.js +4 -0
  162. package/dist/components/table/src/util.d.ts +55 -0
  163. package/dist/components/table/src/util.js +310 -0
  164. package/dist/components/table-column/index.d.ts +40 -3
  165. package/dist/components/table-column/index.js +6 -3
  166. package/dist/components/upload/index.d.ts +45 -2
  167. package/dist/components/upload/index.js +23 -4
  168. package/dist/components/upload/src/ajax.d.ts +9 -0
  169. package/dist/components/upload/src/ajax.js +58 -0
  170. package/dist/components/upload/src/constants.d.ts +5 -0
  171. package/dist/components/upload/src/constants.js +4 -0
  172. package/dist/components/upload/src/upload-content.d.ts +136 -0
  173. package/dist/components/upload/src/upload-content.js +53 -0
  174. package/dist/components/upload/src/upload-content.vue.d.ts +38 -0
  175. package/dist/components/upload/src/upload-content.vue.js +186 -0
  176. package/dist/components/upload/src/upload-content2.vue.js +4 -0
  177. package/dist/components/upload/src/upload-dragger.d.ts +22 -0
  178. package/dist/components/upload/src/upload-dragger.js +19 -0
  179. package/dist/components/upload/src/upload-dragger.vue.d.ts +19 -0
  180. package/dist/components/upload/src/upload-dragger.vue.js +91 -0
  181. package/dist/components/upload/src/upload-dragger2.vue.js +4 -0
  182. package/dist/components/upload/src/upload-list.d.ts +45 -0
  183. package/dist/components/upload/src/upload-list.js +39 -0
  184. package/dist/components/upload/src/upload-list.vue.d.ts +28 -0
  185. package/dist/components/upload/src/upload-list.vue.js +182 -0
  186. package/dist/components/upload/src/upload-list2.vue.js +4 -0
  187. package/dist/components/upload/src/upload.d.ts +361 -0
  188. package/dist/components/upload/src/upload.js +216 -0
  189. package/dist/components/upload/src/upload.vue.d.ts +64 -0
  190. package/dist/components/upload/src/upload.vue.js +150 -0
  191. package/dist/components/upload/src/upload2.vue.js +4 -0
  192. package/dist/components/upload/src/use-handlers.d.ts +60 -0
  193. package/dist/components/upload/src/use-handlers.js +111 -0
  194. package/dist/directives/mousewheel/index.js +28 -0
  195. package/dist/ep-craft.js +277 -236
  196. package/dist/index.d.ts +67 -0
  197. package/dist/utils/dom/event.js +12 -11
  198. package/dist/utils/objects.js +10 -9
  199. package/dist/utils/vue/install.js +21 -18
  200. package/dist/utils/vue/refs.js +8 -0
  201. package/dist/vendored-components.d.ts +1 -1
  202. package/dist/vendored-components.js +44 -4
  203. package/package.json +1 -1
  204. package/dist/components/dropdown-item/index.js +0 -6
  205. package/dist/components/dropdown-menu/index.js +0 -6
@@ -0,0 +1,361 @@
1
+ import type TableLayout from '../table-layout';
2
+ import type { ComponentInternalInstance, PropType, Ref } from 'vue';
3
+ import type { DefaultRow, Sort } from '../table/defaults';
4
+ import type { Store } from '../store';
5
+ export interface TableHeader extends ComponentInternalInstance {
6
+ state: {
7
+ onColumnsChange: (layout: TableLayout<any>) => void;
8
+ onScrollableChange: (layout: TableLayout<any>) => void;
9
+ };
10
+ filterPanels: Ref<DefaultRow>;
11
+ }
12
+ export interface TableHeaderProps<T extends DefaultRow> {
13
+ fixed: string;
14
+ store: Store<T>;
15
+ border: boolean;
16
+ defaultSort: Sort;
17
+ allowDragLastColumn: boolean;
18
+ }
19
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
20
+ fixed: {
21
+ type: StringConstructor;
22
+ default: string;
23
+ };
24
+ store: {
25
+ required: true;
26
+ type: PropType<TableHeaderProps<any>["store"]>;
27
+ };
28
+ border: BooleanConstructor;
29
+ defaultSort: {
30
+ type: PropType<TableHeaderProps<any>["defaultSort"]>;
31
+ default: () => {
32
+ prop: string;
33
+ order: string;
34
+ };
35
+ };
36
+ appendFilterPanelTo: {
37
+ type: StringConstructor;
38
+ };
39
+ allowDragLastColumn: {
40
+ type: BooleanConstructor;
41
+ };
42
+ }>, {
43
+ ns: {
44
+ namespace: import("vue").ComputedRef<string>;
45
+ b: (blockSuffix?: string) => string;
46
+ e: (element?: string) => string;
47
+ m: (modifier?: string) => string;
48
+ be: (blockSuffix?: string, element?: string) => string;
49
+ em: (element?: string, modifier?: string) => string;
50
+ bm: (blockSuffix?: string, modifier?: string) => string;
51
+ bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
52
+ is: {
53
+ (name: string, state: boolean | undefined): string;
54
+ (name: string): string;
55
+ };
56
+ cssVar: (object: Record<string, string>) => Record<string, string>;
57
+ cssVarName: (name: string) => string;
58
+ cssVarBlock: (object: Record<string, string>) => Record<string, string>;
59
+ cssVarBlockName: (name: string) => string;
60
+ };
61
+ t: import("@element-plus/hooks").Translator;
62
+ filterPanels: Ref<{}, {}>;
63
+ onColumnsChange: (layout: TableLayout<DefaultRow>) => void;
64
+ onScrollableChange: (layout: TableLayout<DefaultRow>) => void;
65
+ columnRows: import("vue").ComputedRef<import("../table-column/defaults.js").TableColumnCtx<any>[][]>;
66
+ getHeaderRowClass: (rowIndex: number) => string;
67
+ getHeaderRowStyle: (rowIndex: number) => any;
68
+ getHeaderCellClass: (rowIndex: number, columnIndex: number, row: any, column: import("../table-column/defaults.js").TableColumnCtx<any>) => string;
69
+ getHeaderCellStyle: (rowIndex: number, columnIndex: number, row: any, column: import("../table-column/defaults.js").TableColumnCtx<any>) => import("vue").CSSProperties;
70
+ handleHeaderClick: (event: PointerEvent, column: import("../table-column/defaults.js").TableColumnCtx<any>) => void;
71
+ handleHeaderContextMenu: (event: PointerEvent, column: import("../table-column/defaults.js").TableColumnCtx<any>) => void;
72
+ handleMouseDown: (event: MouseEvent, column: import("../table-column/defaults.js").TableColumnCtx<any>) => void;
73
+ handleMouseMove: (event: MouseEvent, column: import("../table-column/defaults.js").TableColumnCtx<any>) => void;
74
+ handleMouseOut: () => void;
75
+ handleSortClick: (event: Event, column: import("../table-column/defaults.js").TableColumnCtx<any>, givenOrder?: import("../table/defaults").TableSortOrder | boolean) => void;
76
+ handleFilterClick: (event: Event) => void;
77
+ isGroup: import("vue").ComputedRef<boolean>;
78
+ toggleAllSelection: (event: Event) => void;
79
+ saveIndexSelection: import("vue").Reactive<Map<any, any>>;
80
+ isTableLayoutAuto: boolean;
81
+ theadRef: Ref<any, any>;
82
+ updateFixedColumnStyle: () => void;
83
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
84
+ fixed: {
85
+ type: StringConstructor;
86
+ default: string;
87
+ };
88
+ store: {
89
+ required: true;
90
+ type: PropType<TableHeaderProps<any>["store"]>;
91
+ };
92
+ border: BooleanConstructor;
93
+ defaultSort: {
94
+ type: PropType<TableHeaderProps<any>["defaultSort"]>;
95
+ default: () => {
96
+ prop: string;
97
+ order: string;
98
+ };
99
+ };
100
+ appendFilterPanelTo: {
101
+ type: StringConstructor;
102
+ };
103
+ allowDragLastColumn: {
104
+ type: BooleanConstructor;
105
+ };
106
+ }>> & Readonly<{}>, {
107
+ fixed: string;
108
+ border: boolean;
109
+ defaultSort: Sort;
110
+ allowDragLastColumn: boolean;
111
+ }, {}, {
112
+ ElCheckbox: {
113
+ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
114
+ ariaControls: StringConstructor;
115
+ modelValue: {
116
+ type: (BooleanConstructor | NumberConstructor | StringConstructor)[];
117
+ default: undefined;
118
+ };
119
+ label: {
120
+ type: (BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[];
121
+ default: undefined;
122
+ };
123
+ value: {
124
+ type: (BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[];
125
+ default: undefined;
126
+ };
127
+ indeterminate: BooleanConstructor;
128
+ disabled: {
129
+ type: BooleanConstructor;
130
+ default: undefined;
131
+ };
132
+ checked: BooleanConstructor;
133
+ name: {
134
+ type: StringConstructor;
135
+ default: undefined;
136
+ };
137
+ trueValue: {
138
+ type: (NumberConstructor | StringConstructor)[];
139
+ default: undefined;
140
+ };
141
+ falseValue: {
142
+ type: (NumberConstructor | StringConstructor)[];
143
+ default: undefined;
144
+ };
145
+ trueLabel: {
146
+ type: (NumberConstructor | StringConstructor)[];
147
+ default: undefined;
148
+ };
149
+ falseLabel: {
150
+ type: (NumberConstructor | StringConstructor)[];
151
+ default: undefined;
152
+ };
153
+ id: {
154
+ type: StringConstructor;
155
+ default: undefined;
156
+ };
157
+ border: BooleanConstructor;
158
+ size: {
159
+ readonly type: PropType<import("../../../../utils/index.js").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
160
+ readonly required: false;
161
+ readonly validator: ((val: unknown) => boolean) | undefined;
162
+ __epPropKey: true;
163
+ };
164
+ tabindex: (NumberConstructor | StringConstructor)[];
165
+ validateEvent: {
166
+ type: BooleanConstructor;
167
+ default: boolean;
168
+ };
169
+ ariaLabel: StringConstructor;
170
+ }>> & Readonly<{
171
+ "onUpdate:modelValue"?: ((val: import("@element-plus/components/checkbox").CheckboxValueType) => any) | undefined;
172
+ onChange?: ((val: import("@element-plus/components/checkbox").CheckboxValueType) => any) | undefined;
173
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
174
+ "update:modelValue": (val: import("@element-plus/components/checkbox").CheckboxValueType) => void;
175
+ change: (val: import("@element-plus/components/checkbox").CheckboxValueType) => void;
176
+ }, import("vue").PublicProps, {
177
+ name: string;
178
+ border: boolean;
179
+ disabled: boolean;
180
+ label: string | number | boolean | Record<string, any>;
181
+ value: string | number | boolean | Record<string, any>;
182
+ id: string;
183
+ modelValue: string | number | boolean;
184
+ validateEvent: boolean;
185
+ checked: boolean;
186
+ indeterminate: boolean;
187
+ trueValue: string | number;
188
+ falseValue: string | number;
189
+ trueLabel: string | number;
190
+ falseLabel: string | number;
191
+ }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
192
+ P: {};
193
+ B: {};
194
+ D: {};
195
+ C: {};
196
+ M: {};
197
+ Defaults: {};
198
+ }, Readonly<import("vue").ExtractPropTypes<{
199
+ ariaControls: StringConstructor;
200
+ modelValue: {
201
+ type: (BooleanConstructor | NumberConstructor | StringConstructor)[];
202
+ default: undefined;
203
+ };
204
+ label: {
205
+ type: (BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[];
206
+ default: undefined;
207
+ };
208
+ value: {
209
+ type: (BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[];
210
+ default: undefined;
211
+ };
212
+ indeterminate: BooleanConstructor;
213
+ disabled: {
214
+ type: BooleanConstructor;
215
+ default: undefined;
216
+ };
217
+ checked: BooleanConstructor;
218
+ name: {
219
+ type: StringConstructor;
220
+ default: undefined;
221
+ };
222
+ trueValue: {
223
+ type: (NumberConstructor | StringConstructor)[];
224
+ default: undefined;
225
+ };
226
+ falseValue: {
227
+ type: (NumberConstructor | StringConstructor)[];
228
+ default: undefined;
229
+ };
230
+ trueLabel: {
231
+ type: (NumberConstructor | StringConstructor)[];
232
+ default: undefined;
233
+ };
234
+ falseLabel: {
235
+ type: (NumberConstructor | StringConstructor)[];
236
+ default: undefined;
237
+ };
238
+ id: {
239
+ type: StringConstructor;
240
+ default: undefined;
241
+ };
242
+ border: BooleanConstructor;
243
+ size: {
244
+ readonly type: PropType<import("../../../../utils/index.js").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
245
+ readonly required: false;
246
+ readonly validator: ((val: unknown) => boolean) | undefined;
247
+ __epPropKey: true;
248
+ };
249
+ tabindex: (NumberConstructor | StringConstructor)[];
250
+ validateEvent: {
251
+ type: BooleanConstructor;
252
+ default: boolean;
253
+ };
254
+ ariaLabel: StringConstructor;
255
+ }>> & Readonly<{
256
+ "onUpdate:modelValue"?: ((val: import("@element-plus/components/checkbox").CheckboxValueType) => any) | undefined;
257
+ onChange?: ((val: import("@element-plus/components/checkbox").CheckboxValueType) => any) | undefined;
258
+ }>, {}, {}, {}, {}, {
259
+ name: string;
260
+ border: boolean;
261
+ disabled: boolean;
262
+ label: string | number | boolean | Record<string, any>;
263
+ value: string | number | boolean | Record<string, any>;
264
+ id: string;
265
+ modelValue: string | number | boolean;
266
+ validateEvent: boolean;
267
+ checked: boolean;
268
+ indeterminate: boolean;
269
+ trueValue: string | number;
270
+ falseValue: string | number;
271
+ trueLabel: string | number;
272
+ falseLabel: string | number;
273
+ }>;
274
+ __isFragment?: never;
275
+ __isTeleport?: never;
276
+ __isSuspense?: never;
277
+ } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
278
+ ariaControls: StringConstructor;
279
+ modelValue: {
280
+ type: (BooleanConstructor | NumberConstructor | StringConstructor)[];
281
+ default: undefined;
282
+ };
283
+ label: {
284
+ type: (BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[];
285
+ default: undefined;
286
+ };
287
+ value: {
288
+ type: (BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[];
289
+ default: undefined;
290
+ };
291
+ indeterminate: BooleanConstructor;
292
+ disabled: {
293
+ type: BooleanConstructor;
294
+ default: undefined;
295
+ };
296
+ checked: BooleanConstructor;
297
+ name: {
298
+ type: StringConstructor;
299
+ default: undefined;
300
+ };
301
+ trueValue: {
302
+ type: (NumberConstructor | StringConstructor)[];
303
+ default: undefined;
304
+ };
305
+ falseValue: {
306
+ type: (NumberConstructor | StringConstructor)[];
307
+ default: undefined;
308
+ };
309
+ trueLabel: {
310
+ type: (NumberConstructor | StringConstructor)[];
311
+ default: undefined;
312
+ };
313
+ falseLabel: {
314
+ type: (NumberConstructor | StringConstructor)[];
315
+ default: undefined;
316
+ };
317
+ id: {
318
+ type: StringConstructor;
319
+ default: undefined;
320
+ };
321
+ border: BooleanConstructor;
322
+ size: {
323
+ readonly type: PropType<import("../../../../utils/index.js").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
324
+ readonly required: false;
325
+ readonly validator: ((val: unknown) => boolean) | undefined;
326
+ __epPropKey: true;
327
+ };
328
+ tabindex: (NumberConstructor | StringConstructor)[];
329
+ validateEvent: {
330
+ type: BooleanConstructor;
331
+ default: boolean;
332
+ };
333
+ ariaLabel: StringConstructor;
334
+ }>> & Readonly<{
335
+ "onUpdate:modelValue"?: ((val: import("@element-plus/components/checkbox").CheckboxValueType) => any) | undefined;
336
+ onChange?: ((val: import("@element-plus/components/checkbox").CheckboxValueType) => any) | undefined;
337
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
338
+ "update:modelValue": (val: import("@element-plus/components/checkbox").CheckboxValueType) => void;
339
+ change: (val: import("@element-plus/components/checkbox").CheckboxValueType) => void;
340
+ }, string, {
341
+ name: string;
342
+ border: boolean;
343
+ disabled: boolean;
344
+ label: string | number | boolean | Record<string, any>;
345
+ value: string | number | boolean | Record<string, any>;
346
+ id: string;
347
+ modelValue: string | number | boolean;
348
+ validateEvent: boolean;
349
+ checked: boolean;
350
+ indeterminate: boolean;
351
+ trueValue: string | number;
352
+ falseValue: string | number;
353
+ trueLabel: string | number;
354
+ falseLabel: string | number;
355
+ }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
356
+ $slots: {
357
+ default?: (props: {}) => any;
358
+ };
359
+ }) & import("vue").Plugin;
360
+ }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
361
+ export default _default;
@@ -0,0 +1,255 @@
1
+ import { defineComponent as A, h as a, getCurrentInstance as D, inject as _, ref as O, reactive as j, watch as N, onBeforeUnmount as q, onMounted as G, nextTick as x } from "vue";
2
+ import { EpCheckbox as I } from "../../../checkbox/index.js";
3
+ import { useNamespace as U } from "../../../../hooks/use-namespace/index.js";
4
+ import "@vue/shared";
5
+ import "lodash-unified";
6
+ import "@vueuse/core";
7
+ import "@element-plus/icons-vue";
8
+ import { useLocale as V } from "../../../../hooks/use-locale/index.js";
9
+ import "../../../../hooks/use-size/index.js";
10
+ import "@popperjs/core";
11
+ import "../../../../hooks/use-z-index/index.js";
12
+ import "../../../../hooks/use-delayed-toggle/index.js";
13
+ import "../../../../hooks/use-aria/index.js";
14
+ import "../../../../hooks/use-model-toggle/index.js";
15
+ import "../../../../hooks/use-empty-values/index.js";
16
+ import z from "../filter-panel.vue.js";
17
+ import J from "../layout-observer.js";
18
+ import { TABLE_INJECTION_KEY as K } from "../tokens.js";
19
+ import Y from "./event-helper.js";
20
+ import $ from "./style.helper.js";
21
+ import Q from "./utils-helper.js";
22
+ const ye = A({
23
+ name: "ElTableHeader",
24
+ components: {
25
+ ElCheckbox: I
26
+ },
27
+ props: {
28
+ fixed: {
29
+ type: String,
30
+ default: ""
31
+ },
32
+ store: {
33
+ required: !0,
34
+ type: Object
35
+ },
36
+ border: Boolean,
37
+ defaultSort: {
38
+ type: Object,
39
+ default: () => ({
40
+ prop: "",
41
+ order: ""
42
+ })
43
+ },
44
+ appendFilterPanelTo: {
45
+ type: String
46
+ },
47
+ allowDragLastColumn: {
48
+ type: Boolean
49
+ }
50
+ },
51
+ setup(l, { emit: H }) {
52
+ const h = D(), r = _(K), k = U("table"), u = O({}), { onColumnsChange: C, onScrollableChange: g } = J(r), M = (r == null ? void 0 : r.props.tableLayout) === "auto", o = j(/* @__PURE__ */ new Map()), S = O();
53
+ let n;
54
+ const s = () => {
55
+ n = setTimeout(() => {
56
+ o.size > 0 && (o.forEach((m, R) => {
57
+ const E = S.value.querySelector(
58
+ `.${R.replace(/\s/g, ".")}`
59
+ );
60
+ if (E) {
61
+ const B = E.getBoundingClientRect().width;
62
+ m.width = B || m.width;
63
+ }
64
+ }), o.clear());
65
+ });
66
+ };
67
+ N(o, s), q(() => {
68
+ n && (clearTimeout(n), n = void 0);
69
+ }), G(async () => {
70
+ await x(), await x();
71
+ const { prop: m, order: R } = l.defaultSort;
72
+ r == null || r.store.commit("sort", { prop: m, order: R, init: !0 }), s();
73
+ });
74
+ const {
75
+ handleHeaderClick: T,
76
+ handleHeaderContextMenu: y,
77
+ handleMouseDown: d,
78
+ handleMouseMove: v,
79
+ handleMouseOut: L,
80
+ handleSortClick: b,
81
+ handleFilterClick: c
82
+ } = Y(l, H), {
83
+ getHeaderRowStyle: i,
84
+ getHeaderRowClass: e,
85
+ getHeaderCellStyle: f,
86
+ getHeaderCellClass: w
87
+ } = $(l), { isGroup: t, toggleAllSelection: p, columnRows: F } = Q(
88
+ l
89
+ ), { t: P } = V();
90
+ return h.state = {
91
+ onColumnsChange: C,
92
+ onScrollableChange: g
93
+ }, h.filterPanels = u, {
94
+ ns: k,
95
+ t: P,
96
+ filterPanels: u,
97
+ onColumnsChange: C,
98
+ onScrollableChange: g,
99
+ columnRows: F,
100
+ getHeaderRowClass: e,
101
+ getHeaderRowStyle: i,
102
+ getHeaderCellClass: w,
103
+ getHeaderCellStyle: f,
104
+ handleHeaderClick: T,
105
+ handleHeaderContextMenu: y,
106
+ handleMouseDown: d,
107
+ handleMouseMove: v,
108
+ handleMouseOut: L,
109
+ handleSortClick: b,
110
+ handleFilterClick: c,
111
+ isGroup: t,
112
+ toggleAllSelection: p,
113
+ saveIndexSelection: o,
114
+ isTableLayoutAuto: M,
115
+ theadRef: S,
116
+ updateFixedColumnStyle: s
117
+ };
118
+ },
119
+ render() {
120
+ const {
121
+ ns: l,
122
+ t: H,
123
+ isGroup: h,
124
+ columnRows: r,
125
+ getHeaderCellStyle: k,
126
+ getHeaderCellClass: u,
127
+ getHeaderRowClass: C,
128
+ getHeaderRowStyle: g,
129
+ handleHeaderClick: M,
130
+ handleHeaderContextMenu: o,
131
+ handleMouseDown: S,
132
+ handleMouseMove: n,
133
+ handleSortClick: s,
134
+ handleMouseOut: T,
135
+ store: y,
136
+ $parent: d,
137
+ saveIndexSelection: v,
138
+ isTableLayoutAuto: L
139
+ } = this;
140
+ let b = 1;
141
+ return a(
142
+ "thead",
143
+ {
144
+ ref: "theadRef",
145
+ class: l.is("group", h)
146
+ },
147
+ r.map(
148
+ (c, i) => a(
149
+ "tr",
150
+ {
151
+ class: C(i),
152
+ key: i,
153
+ style: g(i)
154
+ },
155
+ c.map((e, f) => {
156
+ e.rowSpan > b && (b = e.rowSpan);
157
+ const w = u(
158
+ i,
159
+ f,
160
+ c,
161
+ e
162
+ );
163
+ return L && e.fixed && v.set(w, e), a(
164
+ "th",
165
+ {
166
+ class: w,
167
+ colspan: e.colSpan,
168
+ key: `${e.id}-thead`,
169
+ rowspan: e.rowSpan,
170
+ scope: e.colSpan > 1 ? "colgroup" : "col",
171
+ ariaSort: e.sortable ? e.order : void 0,
172
+ style: k(
173
+ i,
174
+ f,
175
+ c,
176
+ e
177
+ ),
178
+ onClick: (t) => {
179
+ var p;
180
+ (p = t.currentTarget) != null && p.classList.contains(
181
+ "noclick"
182
+ ) || M(t, e);
183
+ },
184
+ onContextmenu: (t) => o(t, e),
185
+ onMousedown: (t) => S(t, e),
186
+ onMousemove: (t) => n(t, e),
187
+ onMouseout: T
188
+ },
189
+ [
190
+ a(
191
+ "div",
192
+ {
193
+ class: [
194
+ "cell",
195
+ e.filteredValue && e.filteredValue.length > 0 ? "highlight" : ""
196
+ ]
197
+ },
198
+ [
199
+ e.renderHeader ? e.renderHeader({
200
+ column: e,
201
+ $index: f,
202
+ store: y,
203
+ _self: d
204
+ }) : e.label,
205
+ e.sortable && a(
206
+ "button",
207
+ {
208
+ type: "button",
209
+ class: "caret-wrapper",
210
+ "aria-label": H("el.table.sortLabel", {
211
+ column: e.label || ""
212
+ }),
213
+ onClick: (t) => s(t, e)
214
+ },
215
+ [
216
+ a("i", {
217
+ onClick: (t) => s(t, e, "ascending"),
218
+ class: "sort-caret ascending"
219
+ }),
220
+ a("i", {
221
+ onClick: (t) => s(t, e, "descending"),
222
+ class: "sort-caret descending"
223
+ })
224
+ ]
225
+ ),
226
+ e.filterable && a(
227
+ z,
228
+ {
229
+ store: y,
230
+ placement: e.filterPlacement || "bottom-start",
231
+ appendTo: d == null ? void 0 : d.appendFilterPanelTo,
232
+ column: e,
233
+ upDataColumn: (t, p) => {
234
+ e[t] = p;
235
+ }
236
+ },
237
+ {
238
+ "filter-icon": () => e.renderFilterIcon ? e.renderFilterIcon({
239
+ filterOpened: e.filterOpened
240
+ }) : null
241
+ }
242
+ )
243
+ ]
244
+ )
245
+ ]
246
+ );
247
+ })
248
+ )
249
+ )
250
+ );
251
+ }
252
+ });
253
+ export {
254
+ ye as default
255
+ };
@@ -0,0 +1,10 @@
1
+ import type { TableColumnCtx } from '../table-column/defaults';
2
+ import type { DefaultRow } from '../table/defaults';
3
+ import type { TableHeaderProps } from '.';
4
+ declare function useStyle<T extends DefaultRow>(props: TableHeaderProps<T>): {
5
+ getHeaderRowStyle: (rowIndex: number) => any;
6
+ getHeaderRowClass: (rowIndex: number) => string;
7
+ getHeaderCellStyle: (rowIndex: number, columnIndex: number, row: T, column: TableColumnCtx<T>) => import("vue").CSSProperties;
8
+ getHeaderCellClass: (rowIndex: number, columnIndex: number, row: T, column: TableColumnCtx<T>) => string;
9
+ };
10
+ export default useStyle;
@@ -0,0 +1,73 @@
1
+ import { inject as m } from "vue";
2
+ import { useNamespace as c } from "../../../../hooks/use-namespace/index.js";
3
+ import { isString as C, isFunction as d } from "@vue/shared";
4
+ import "lodash-unified";
5
+ import "@vueuse/core";
6
+ import "@element-plus/icons-vue";
7
+ import "../../../../hooks/use-size/index.js";
8
+ import "@popperjs/core";
9
+ import "../../../../hooks/use-z-index/index.js";
10
+ import "../../../../hooks/use-delayed-toggle/index.js";
11
+ import "../../../../hooks/use-aria/index.js";
12
+ import "../../../../hooks/use-model-toggle/index.js";
13
+ import "../../../../hooks/use-empty-values/index.js";
14
+ import { getFixedColumnsClass as g, getFixedColumnOffset as u, ensurePosition as n } from "../util.js";
15
+ import { TABLE_INJECTION_KEY as S } from "../tokens.js";
16
+ function Y(f) {
17
+ const s = m(S), p = c("table");
18
+ return {
19
+ getHeaderRowStyle: (i) => {
20
+ const e = s == null ? void 0 : s.props.headerRowStyle;
21
+ return d(e) ? e.call(null, { rowIndex: i }) : e;
22
+ },
23
+ getHeaderRowClass: (i) => {
24
+ const e = [], l = s == null ? void 0 : s.props.headerRowClassName;
25
+ return C(l) ? e.push(l) : d(l) && e.push(l.call(null, { rowIndex: i })), e.join(" ");
26
+ },
27
+ getHeaderCellStyle: (i, e, l, t) => {
28
+ let o = (s == null ? void 0 : s.props.headerCellStyle) ?? {};
29
+ d(o) && (o = o.call(null, {
30
+ rowIndex: i,
31
+ columnIndex: e,
32
+ row: l,
33
+ column: t
34
+ }));
35
+ const r = u(
36
+ e,
37
+ t.fixed,
38
+ f.store,
39
+ l
40
+ );
41
+ return n(r, "left"), n(r, "right"), Object.assign({}, o, r);
42
+ },
43
+ getHeaderCellClass: (i, e, l, t) => {
44
+ const o = g(
45
+ p.b(),
46
+ e,
47
+ t.fixed,
48
+ f.store,
49
+ l
50
+ ), r = [
51
+ t.id,
52
+ t.order,
53
+ t.headerAlign,
54
+ t.className,
55
+ t.labelClassName,
56
+ ...o
57
+ ];
58
+ t.children || r.push("is-leaf"), t.sortable && r.push("is-sortable");
59
+ const a = s == null ? void 0 : s.props.headerCellClassName;
60
+ return C(a) ? r.push(a) : d(a) && r.push(
61
+ a.call(null, {
62
+ rowIndex: i,
63
+ columnIndex: e,
64
+ row: l,
65
+ column: t
66
+ })
67
+ ), r.push(p.e("cell")), r.filter((h) => !!h).join(" ");
68
+ }
69
+ };
70
+ }
71
+ export {
72
+ Y as default
73
+ };