evui 3.4.214 → 3.5.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 (134) hide show
  1. package/dist/_virtual/_plugin-vue_export-helper.js +9 -0
  2. package/dist/common/utils.bignumber.js +23 -0
  3. package/dist/common/utils.debounce.js +66 -0
  4. package/dist/common/utils.js +64 -0
  5. package/dist/common/utils.throttle.js +15 -0
  6. package/dist/components/button/Button.vue.js +65 -0
  7. package/dist/components/button/index.js +7 -0
  8. package/dist/components/buttonGroup/ButtonGroup.vue.js +14 -0
  9. package/dist/components/buttonGroup/index.js +7 -0
  10. package/dist/components/calendar/Calendar.vue.js +299 -0
  11. package/dist/components/calendar/index.js +7 -0
  12. package/dist/components/calendar/uses.js +579 -0
  13. package/dist/components/chart/Chart.vue.js +261 -0
  14. package/dist/components/chart/ChartToolbar.vue.js +32 -0
  15. package/dist/components/chart/chart.core.js +738 -0
  16. package/dist/components/chart/chartZoom.core.js +221 -0
  17. package/dist/components/chart/element/element.bar.js +358 -0
  18. package/dist/components/chart/element/element.bar.time.js +55 -0
  19. package/dist/components/chart/element/element.heatmap.js +403 -0
  20. package/dist/components/chart/element/element.line.js +292 -0
  21. package/dist/components/chart/element/element.pie.js +73 -0
  22. package/dist/components/chart/element/element.scatter.js +209 -0
  23. package/dist/components/chart/element/element.tip.js +312 -0
  24. package/dist/components/chart/helpers/helpers.canvas.js +141 -0
  25. package/dist/components/chart/helpers/helpers.constant.js +253 -0
  26. package/dist/components/chart/helpers/helpers.util.js +265 -0
  27. package/dist/components/chart/index.js +7 -0
  28. package/dist/components/chart/model/index.js +6 -0
  29. package/dist/components/chart/model/model.series.js +82 -0
  30. package/dist/components/chart/model/model.store.js +650 -0
  31. package/dist/components/chart/plugins/plugins.interaction.js +823 -0
  32. package/dist/components/chart/plugins/plugins.legend.gradient.js +281 -0
  33. package/dist/components/chart/plugins/plugins.legend.js +665 -0
  34. package/dist/components/chart/plugins/plugins.pie.js +86 -0
  35. package/dist/components/chart/plugins/plugins.scrollbar.js +345 -0
  36. package/dist/components/chart/plugins/plugins.title.js +43 -0
  37. package/dist/components/chart/plugins/plugins.tooltip.js +508 -0
  38. package/dist/components/chart/scale/scale.js +492 -0
  39. package/dist/components/chart/scale/scale.linear.js +248 -0
  40. package/dist/components/chart/scale/scale.logarithmic.js +82 -0
  41. package/dist/components/chart/scale/scale.step.js +227 -0
  42. package/dist/components/chart/scale/scale.time.category.js +148 -0
  43. package/dist/components/chart/scale/scale.time.js +95 -0
  44. package/dist/components/chart/uses.js +479 -0
  45. package/dist/components/chartBrush/ChartBrush.vue.js +198 -0
  46. package/dist/components/chartBrush/chartBrush.core.js +265 -0
  47. package/dist/components/chartBrush/index.js +7 -0
  48. package/dist/components/chartBrush/uses.js +18 -0
  49. package/dist/components/chartGroup/ChartGroup.vue.js +128 -0
  50. package/dist/components/chartGroup/index.js +7 -0
  51. package/dist/components/chartGroup/uses.js +47 -0
  52. package/dist/components/checkbox/Checkbox.vue.js +99 -0
  53. package/dist/components/checkbox/index.js +7 -0
  54. package/dist/components/checkboxGroup/CheckboxGroup.vue.js +40 -0
  55. package/dist/components/checkboxGroup/index.js +7 -0
  56. package/dist/components/contextMenu/ContextMenu.vue.js +70 -0
  57. package/dist/components/contextMenu/MenuList.vue.js +105 -0
  58. package/dist/components/contextMenu/index.js +7 -0
  59. package/dist/components/contextMenu/uses.js +79 -0
  60. package/dist/components/datePicker/DatePicker.vue.js +310 -0
  61. package/dist/components/datePicker/index.js +7 -0
  62. package/dist/components/datePicker/uses.js +190 -0
  63. package/dist/components/grid/Grid.vue.js +1261 -0
  64. package/dist/components/grid/GridColumnSetting.vue.js +212 -0
  65. package/dist/components/grid/GridFilterSetting.vue.js +222 -0
  66. package/dist/components/grid/GridPagination.vue.js +69 -0
  67. package/dist/components/grid/GridSummary.vue.js +186 -0
  68. package/dist/components/grid/GridToolbar.vue.js +15 -0
  69. package/dist/components/grid/icon/icon-option-button.vue.js +39 -0
  70. package/dist/components/grid/icon/icon-sort-button.vue.js +56 -0
  71. package/dist/components/grid/index.js +7 -0
  72. package/dist/components/grid/uses.js +697 -0
  73. package/dist/components/icon/Icon.vue.js +50 -0
  74. package/dist/components/icon/index.js +8 -0
  75. package/dist/components/inputNumber/InputNumber.vue.js +112 -0
  76. package/dist/components/inputNumber/index.js +7 -0
  77. package/dist/components/inputNumber/uses.js +76 -0
  78. package/dist/components/loading/Loading.vue.js +78 -0
  79. package/dist/components/loading/index.js +7 -0
  80. package/dist/components/menu/Menu.vue.js +66 -0
  81. package/dist/components/menu/MenuItem.vue.js +125 -0
  82. package/dist/components/menu/index.js +7 -0
  83. package/dist/components/message/Message.vue.js +122 -0
  84. package/dist/components/message/index.js +16 -0
  85. package/dist/components/messageBox/MessageBox.vue.js +216 -0
  86. package/dist/components/messageBox/index.js +13 -0
  87. package/dist/components/notification/Notification.vue.js +140 -0
  88. package/dist/components/notification/index.js +23 -0
  89. package/dist/components/pagination/Pagination.vue.js +215 -0
  90. package/dist/components/pagination/index.js +7 -0
  91. package/dist/components/pagination/pageButton.vue.js +35 -0
  92. package/dist/components/progress/Progress.vue.js +88 -0
  93. package/dist/components/progress/index.js +7 -0
  94. package/dist/components/radio/Radio.vue.js +75 -0
  95. package/dist/components/radio/index.js +7 -0
  96. package/dist/components/radioGroup/RadioGroup.vue.js +37 -0
  97. package/dist/components/radioGroup/index.js +7 -0
  98. package/dist/components/scheduler/Scheduler.vue.js +128 -0
  99. package/dist/components/scheduler/index.js +7 -0
  100. package/dist/components/scheduler/uses.js +73 -0
  101. package/dist/components/select/Select.vue.js +381 -0
  102. package/dist/components/select/index.js +7 -0
  103. package/dist/components/select/uses.js +147 -0
  104. package/dist/components/slider/Slider.vue.js +243 -0
  105. package/dist/components/slider/index.js +7 -0
  106. package/dist/components/slider/uses.js +188 -0
  107. package/dist/components/tabPanel/TabPanel.vue.js +39 -0
  108. package/dist/components/tabPanel/index.js +7 -0
  109. package/dist/components/tabs/Tabs.vue.js +220 -0
  110. package/dist/components/tabs/index.js +7 -0
  111. package/dist/components/textField/TextField.vue.js +209 -0
  112. package/dist/components/textField/index.js +7 -0
  113. package/dist/components/timePicker/TimePicker.vue.js +227 -0
  114. package/dist/components/timePicker/index.js +7 -0
  115. package/dist/components/toggle/Toggle.vue.js +66 -0
  116. package/dist/components/toggle/index.js +7 -0
  117. package/dist/components/tree/Tree.vue.js +220 -0
  118. package/dist/components/tree/TreeNode.vue.js +146 -0
  119. package/dist/components/tree/index.js +7 -0
  120. package/dist/components/treeGrid/TreeGrid.vue.js +898 -0
  121. package/dist/components/treeGrid/TreeGridNode.vue.js +274 -0
  122. package/dist/components/treeGrid/TreeGridToolbar.vue.js +15 -0
  123. package/dist/components/treeGrid/index.js +7 -0
  124. package/dist/components/treeGrid/uses.js +497 -0
  125. package/dist/components/window/Window.vue.js +211 -0
  126. package/dist/components/window/index.js +7 -0
  127. package/dist/components/window/uses.js +345 -0
  128. package/dist/directives/clickoutside.js +47 -0
  129. package/dist/main.js +142 -0
  130. package/dist/package.json.js +4 -0
  131. package/dist/resolver.js +17 -0
  132. package/package.json +11 -5
  133. package/dist/index.js +0 -22966
  134. package/dist/index.umd.cjs +0 -28
@@ -0,0 +1,1261 @@
1
+ import { resolveComponent as B, resolveDirective as De, openBlock as r, createElementBlock as a, Fragment as D, normalizeStyle as S, createVNode as w, withCtx as Bt, createElementVNode as C, createCommentVNode as c, renderList as ie, withModifiers as T, toDisplayString as b, createBlock as N, withDirectives as ge, renderSlot as X, mergeProps as Ht, normalizeClass as k, createTextVNode as Mt, vShow as Ge, ref as M, computed as u, reactive as p, onMounted as Wt, onUnmounted as Ot, onActivated as Pt, onUpdated as _t, watch as y, nextTick as ue, onBeforeMount as At, toRefs as v } from "vue";
2
+ import { cloneDeep as xt } from "lodash-es";
3
+ import { ObserveVisibility as Tt } from "vue3-observe-visibility";
4
+ import Nt from "vue-resize-observer";
5
+ import { clickoutside as Lt } from "../../directives/clickoutside.js";
6
+ import Vt from "./GridToolbar.vue.js";
7
+ import Xt from "./GridPagination.vue.js";
8
+ import zt from "./GridSummary.vue.js";
9
+ import Gt from "./GridColumnSetting.vue.js";
10
+ import Ut from "./GridFilterSetting.vue.js";
11
+ import jt from "./icon/icon-sort-button.vue.js";
12
+ import Kt from "./icon/icon-option-button.vue.js";
13
+ import { commonFunctions as Yt, getUpdatedColumns as qt, pagingEvent as Jt, checkEvent as Qt, expandEvent as Zt, sortEvent as $t, filterEvent as ei, storeEvent as ti, resizeEvent as ii, columnSettingEvent as ni, contextMenuEvent as oi, clickEvent as li, dragEvent as si, scrollEvent as ri } from "./uses.js";
14
+ /* empty css */
15
+ import di from "../../_virtual/_plugin-vue_export-helper.js";
16
+ const ai = {
17
+ name: "EvGrid",
18
+ directives: {
19
+ clickoutside: Lt,
20
+ observeVisibility: Tt,
21
+ resize: Nt
22
+ },
23
+ components: {
24
+ Toolbar: Vt,
25
+ GridPagination: Xt,
26
+ GridSummary: zt,
27
+ ColumnSetting: Gt,
28
+ FilterSetting: Ut,
29
+ GridSortButton: jt,
30
+ GridOptionButton: Kt
31
+ },
32
+ props: {
33
+ columns: {
34
+ type: [Array],
35
+ default: () => []
36
+ },
37
+ rows: {
38
+ type: [Array],
39
+ default: () => []
40
+ },
41
+ width: {
42
+ type: [String, Number],
43
+ default: "100%"
44
+ },
45
+ height: {
46
+ type: [String, Number],
47
+ default: "100%"
48
+ },
49
+ selected: {
50
+ type: [Array],
51
+ default: () => []
52
+ },
53
+ checked: {
54
+ type: [Array],
55
+ default: () => []
56
+ },
57
+ uncheckable: {
58
+ type: [Array],
59
+ default: () => []
60
+ },
61
+ expanded: {
62
+ type: [Array],
63
+ default: () => []
64
+ },
65
+ disabledRows: {
66
+ type: [Array],
67
+ default: () => []
68
+ },
69
+ /**
70
+ * @type {Object}
71
+ * @property {number} columnWidth 컬럼 너비 minWidth
72
+ * @property {number} scrollWidth 스크롤 너비
73
+ * @property {number} rowHeight 행 높이
74
+ * @property {number} gridWidth 그리드 너비 width
75
+ * @property {number} gridHeight 그리드 높이
76
+ * @property {boolean} adjust 컬럼 너비 조정 여부
77
+ * @property {boolean} useGridSetting 그리드 설정 사용 여부
78
+ * @property {number} gridWidth 그리드 너비 width
79
+ * @property {number} gridHeight 그리드 높이
80
+ * @property {boolean} adjust 컬럼 너비 조정 여부
81
+ * @property {boolean} useGridSetting 그리드 설정 사용 여부
82
+ */
83
+ option: {
84
+ type: Object,
85
+ default: () => ({})
86
+ }
87
+ },
88
+ emits: {
89
+ "update:selected": null,
90
+ "update:checked": null,
91
+ "update:expanded": null,
92
+ "check-row": null,
93
+ "check-all": null,
94
+ "click-row": null,
95
+ "dblclick-row": null,
96
+ "page-change": null,
97
+ "sort-column": null,
98
+ "expand-row": null,
99
+ "resize-column": ({ column: e, columns: d }) => ({ column: e, columns: d }),
100
+ "change-column-order": ({ column: e, columns: d }) => ({ column: e, columns: d }),
101
+ "change-column-status": ({ columns: e }) => ({ columns: e }),
102
+ "change-column-info": ({ type: e, columns: d }) => ({ type: e, columns: d })
103
+ },
104
+ setup(e) {
105
+ var Pe, _e, Ae, xe, Te, Ne, Le, Ve, Xe;
106
+ const { isRenderer: W, getComponentName: me, getConvertValue: Q, getColumnIndex: ne, setPixelUnit: z } = Yt(), Z = M(null), G = u(() => {
107
+ var t, l;
108
+ return ((l = (t = e.option) == null ? void 0 : t.useGridSetting) == null ? void 0 : l.use) || !1;
109
+ }), ce = u(() => e.option.showHeader ?? !0), he = u(() => {
110
+ var t;
111
+ return ((t = e.option) == null ? void 0 : t.useSummary) || !1;
112
+ }), fe = u(() => {
113
+ var t;
114
+ return ((t = e.option.style) == null ? void 0 : t.stripe) || !1;
115
+ }), Ce = u(() => {
116
+ var t;
117
+ return ((t = e.option.style) == null ? void 0 : t.border) || "";
118
+ }), U = u(() => {
119
+ var t;
120
+ return ((t = e.option.style) == null ? void 0 : t.highlight) ?? -1;
121
+ }), ye = u(() => e.option.emptyText ?? "No records"), oe = e.option.rowMinHeight || 35, j = M(0), i = p({
122
+ body: null,
123
+ header: null,
124
+ table: null,
125
+ resizeLine: null,
126
+ "grid-wrapper": null
127
+ }), g = p({
128
+ isSearch: !1,
129
+ searchWord: "",
130
+ isFiltering: u(() => e.option.useFilter ?? !1),
131
+ isShowFilterSetting: !1,
132
+ filterSettingPosition: {
133
+ left: 0,
134
+ top: 0
135
+ },
136
+ filteringColumn: null,
137
+ filteringItemsByColumn: {},
138
+ columnOperator: "and"
139
+ }), m = p({
140
+ isShowColumnSetting: !1,
141
+ isFilteringColumn: !1,
142
+ // hide된 컬럼이 있는지
143
+ visibleColumnIdx: [],
144
+ // 보여지는 컬럼의 인덱스 목록
145
+ hiddenColumn: "",
146
+ columnSettingPosition: {
147
+ top: 0,
148
+ left: 0,
149
+ columnListMenuWidth: 0
150
+ },
151
+ useDefaultColumnSetting: u(
152
+ () => {
153
+ var t, l;
154
+ return ((l = (t = e.option) == null ? void 0 : t.useGridSetting) == null ? void 0 : l.useDefaultColumnSetting) ?? !0;
155
+ }
156
+ ),
157
+ columnSettingTextInfo: {
158
+ title: ((_e = (Pe = e.option) == null ? void 0 : Pe.useGridSetting) == null ? void 0 : _e.columnMenuText) ?? "Column List",
159
+ search: ((xe = (Ae = e.option) == null ? void 0 : Ae.useGridSetting) == null ? void 0 : xe.searchText) ?? "Search",
160
+ empty: ((Ne = (Te = e.option) == null ? void 0 : Te.useGridSetting) == null ? void 0 : Ne.emptyText) ?? "No records",
161
+ ok: ((Ve = (Le = e.option) == null ? void 0 : Le.useGridSetting) == null ? void 0 : Ve.okBtnText) ?? "OK"
162
+ }
163
+ }), s = p({
164
+ viewStore: [],
165
+ originStore: [],
166
+ pagingStore: [],
167
+ searchStore: [],
168
+ filterStore: [],
169
+ store: u(() => {
170
+ const t = g.isFiltering ? s.filterStore : s.originStore;
171
+ return g.isSearch ? s.searchStore : t;
172
+ }),
173
+ filteredColumns: [],
174
+ movedColumns: [],
175
+ originColumns: u(
176
+ () => e.columns.map((t, l) => {
177
+ var h;
178
+ return {
179
+ index: l,
180
+ hiddenDisplay: !1,
181
+ ...t,
182
+ width: isFinite(t.width) ? t.width : void 0,
183
+ sortOption: {
184
+ sortType: ((h = t == null ? void 0 : t.sortOption) == null ? void 0 : h.sortType) || "init"
185
+ }
186
+ };
187
+ })
188
+ ),
189
+ orderedColumns: u(() => {
190
+ const t = s.movedColumns.length ? s.movedColumns : s.originColumns;
191
+ return s.filteredColumns.length ? s.filteredColumns : t;
192
+ }),
193
+ updatedColumns: u(() => qt(s))
194
+ }), o = p({
195
+ usePage: u(() => {
196
+ var t;
197
+ return ((t = e.option.page) == null ? void 0 : t.use) || !1;
198
+ }),
199
+ useClient: ((Xe = e.option.page) == null ? void 0 : Xe.useClient) || !1,
200
+ isInfinite: u(() => {
201
+ var t;
202
+ return ((t = e.option.page) == null ? void 0 : t.isInfinite) || !1;
203
+ }),
204
+ startIndex: 0,
205
+ prevPage: 0,
206
+ currentPage: 0,
207
+ pageTotal: u(
208
+ () => {
209
+ var t, l;
210
+ return (t = e.option.page) != null && t.useClient ? s.store.length : (l = e.option.page) == null ? void 0 : l.total;
211
+ }
212
+ ),
213
+ perPage: u(() => {
214
+ var t;
215
+ return ((t = e.option.page) == null ? void 0 : t.perPage) || 20;
216
+ }),
217
+ visiblePage: u(() => {
218
+ var t;
219
+ return ((t = e.option.page) == null ? void 0 : t.visiblePage) || 8;
220
+ }),
221
+ order: u(() => {
222
+ var t;
223
+ return ((t = e.option.page) == null ? void 0 : t.order) || "center";
224
+ }),
225
+ showPageInfo: u(() => {
226
+ var t;
227
+ return ((t = e.option.page) == null ? void 0 : t.showPageInfo) || !1;
228
+ }),
229
+ isClientPaging: u(
230
+ () => o.useClient && o.usePage && !o.isInfinite
231
+ ),
232
+ isHighlight: !1,
233
+ highlightPage: 0
234
+ }), f = p({
235
+ prevCheckedRow: [],
236
+ isHeaderChecked: !1,
237
+ isHeaderUncheckable: !1,
238
+ isHeaderIndeterminate: !1,
239
+ checkedRows: e.checked,
240
+ useCheckbox: u(() => e.option.useCheckbox || {})
241
+ }), I = p({
242
+ expandedRows: e.expanded,
243
+ useRowDetail: u(() => {
244
+ var t, l;
245
+ return ((l = (t = e.option) == null ? void 0 : t.rowDetail) == null ? void 0 : l.use) ?? !1;
246
+ }),
247
+ detailRowHeight: u(() => {
248
+ var t, l;
249
+ return (l = (t = e.option) == null ? void 0 : t.rowDetail) == null ? void 0 : l.detailRowHeight;
250
+ })
251
+ }), A = p({
252
+ lastScroll: {
253
+ top: 0,
254
+ left: 0
255
+ },
256
+ vScrollTopHeight: 0,
257
+ vScrollBottomHeight: 0,
258
+ hasVerticalScrollBar: !1,
259
+ hasHorizontalScrollBar: !1
260
+ }), E = p({
261
+ contextmenuInfo: e.contextmenuInfo,
262
+ selectedRow: e.selected,
263
+ useSelect: u(() => {
264
+ var t, l;
265
+ return ((l = (t = e.option) == null ? void 0 : t.useSelection) == null ? void 0 : l.use) ?? !0;
266
+ }),
267
+ multiple: u(() => {
268
+ var t, l;
269
+ return ((l = (t = e.option) == null ? void 0 : t.useSelection) == null ? void 0 : l.multiple) ?? !1;
270
+ })
271
+ }), K = p({
272
+ isSorting: !1,
273
+ sortField: "",
274
+ sortOrder: "",
275
+ sortColumn: {},
276
+ sortFunction: e.option.customAscFunction ?? {}
277
+ }), R = p({
278
+ menu: null,
279
+ contextMenuItems: [],
280
+ contextMenuClass: e.option.customContextMenuClass || "",
281
+ columnMenu: null,
282
+ columnMenuItems: [],
283
+ columnMenuTextInfo: e.option.columnMenuText || {},
284
+ hiddenColumnMenuItem: e.option.hiddenColumnMenuItem || {},
285
+ customContextMenu: e.option.customContextMenu || [],
286
+ gridSettingMenu: null,
287
+ gridSettingContextMenuItems: [],
288
+ customGridSettingContextMenu: u(
289
+ () => {
290
+ var t, l;
291
+ return ((l = (t = e.option) == null ? void 0 : t.useGridSetting) == null ? void 0 : l.customContextMenu) || [];
292
+ }
293
+ ),
294
+ isShowMenuOnClick: !1
295
+ }), O = p({
296
+ minWidth: 40,
297
+ rendererMinWidth: 80,
298
+ iconWidth: 42,
299
+ showResizeLine: !1,
300
+ adjust: e.option.adjust || !1,
301
+ columnWidth: e.option.columnWidth || 80,
302
+ scrollWidth: e.option.scrollWidth || 17,
303
+ rowHeight: u(
304
+ () => e.option.rowHeight > oe ? e.option.rowHeight : oe
305
+ ),
306
+ gridWidth: u(() => e.width ? z(e.width) : "100%"),
307
+ gridHeight: u(() => e.height ? z(e.height) : "100%")
308
+ }), Y = () => {
309
+ f.checkedRows = [], f.isHeaderChecked = !1, f.isHeaderIndeterminate = !1, s.store.forEach((t) => {
310
+ t[1] = !1;
311
+ });
312
+ }, le = () => {
313
+ E.selectedRow = [], s.store.forEach((t) => {
314
+ t[3] = !1;
315
+ });
316
+ }, Ye = () => {
317
+ s.store.forEach((t) => {
318
+ t[4] = !1;
319
+ }), I.expandedRows = [];
320
+ }, { getPagingData: $, updatePagingInfo: Se, changePage: qe } = Jt({
321
+ stores: s,
322
+ pageInfo: o,
323
+ sortInfo: K,
324
+ filterInfo: g,
325
+ elementInfo: i,
326
+ clearCheckInfo: Y
327
+ }), Ee = M(0), { updateVScroll: x, updateHScroll: Re, onScroll: Je } = ri({
328
+ scrollInfo: A,
329
+ stores: s,
330
+ elementInfo: i,
331
+ resizeInfo: O,
332
+ pageInfo: o,
333
+ summaryScroll: Ee,
334
+ expandedInfo: I,
335
+ getPagingData: $,
336
+ updatePagingInfo: Se
337
+ }), { onCheck: Qe, onCheckAll: Ze } = Qt({
338
+ checkInfo: f,
339
+ stores: s,
340
+ pageInfo: o,
341
+ getPagingData: $
342
+ }), { onExpanded: $e } = Zt({
343
+ expandedInfo: I
344
+ }), { onSort: Be, getSortTarget: He, setSort: Ie, setSortInfo: ke, hasSortTarget: et } = $t({
345
+ sortInfo: K,
346
+ stores: s,
347
+ updatePagingInfo: Se
348
+ }), { onSearch: se, setFilter: tt, setHeaderCheckboxByFilter: it } = ei({
349
+ columnSettingInfo: m,
350
+ filterInfo: g,
351
+ stores: s,
352
+ checkInfo: f,
353
+ pageInfo: o,
354
+ getConvertValue: Q,
355
+ updateVScroll: x,
356
+ getPagingData: $,
357
+ updatePagingInfo: Se,
358
+ getColumnIndex: ne
359
+ }), { setStore: P } = ti({
360
+ selectInfo: E,
361
+ checkInfo: f,
362
+ stores: s,
363
+ sortInfo: K,
364
+ elementInfo: i,
365
+ filterInfo: g,
366
+ expandedInfo: I,
367
+ setSort: Ie,
368
+ setSortInfo: ke,
369
+ updateVScroll: x,
370
+ setFilter: tt
371
+ }), { calculatedColumn: Me, onResize: ee, onShow: nt, onColumnResize: ot } = ii({
372
+ resizeInfo: O,
373
+ elementInfo: i,
374
+ checkInfo: f,
375
+ expandedInfo: I,
376
+ stores: s,
377
+ isRenderer: W,
378
+ updateVScroll: x,
379
+ updateHScroll: Re,
380
+ contextInfo: R
381
+ }), { setPositionColumnSetting: lt, initColumnSettingInfo: st, onApplyColumn: rt, setColumnHidden: dt } = ni({
382
+ stores: s,
383
+ columnSettingInfo: m,
384
+ contextInfo: R,
385
+ onSearch: se,
386
+ onResize: ee
387
+ }), { setContextMenu: at, onContextMenu: gt, onColumnContextMenu: ut, onGridSettingContextMenu: mt } = oi({
388
+ contextInfo: R,
389
+ stores: s,
390
+ selectInfo: E,
391
+ useGridSetting: G,
392
+ filterInfo: g,
393
+ columnSettingInfo: m,
394
+ setColumnHidden: dt,
395
+ onSort: Be
396
+ }), { onRowClick: ct, onRowDblClick: ht } = li({ selectInfo: E, stores: s }), { onDragStart: ft, onDragOver: Ct, onDrop: yt } = si({ stores: s }), St = (t) => {
397
+ R.gridSettingContextMenuItems.length = 0, R.customGridSettingContextMenu.length ? mt(t) : m.isShowColumnSetting = !0;
398
+ }, re = (t) => {
399
+ var l, h, H, V, te, _, F, de, ae, ze;
400
+ t.type === "wheel" && ((l = R.menu) == null || l.hide(t)), t.type === "scroll" && !((h = t.target.classList) != null && h.contains("table-body")) && !((V = (H = t.target.offsetParent) == null ? void 0 : H.classList) != null && V.contains("ev-select-dropbox")) && !((_ = (te = t.target.offsetParent) == null ? void 0 : te.classList) != null && _.contains("ev-grid-column-setting")) && !((de = (F = t.target.offsetParent) == null ? void 0 : F.classList) != null && de.contains("ev-text-field-wrapper")) && (g.isShowFilterSetting = !1, m.isShowColumnSetting = !1, R.isShowMenuOnClick = !1, (ae = R.columnMenu) == null || ae.hide(t), (ze = R.gridSettingMenu) == null || ze.hide());
401
+ };
402
+ Wt(() => {
403
+ Me(), P({ rows: e.rows, isInit: !0 }), document.addEventListener("wheel", re, { capture: !1 }), document.addEventListener("scroll", re, { capture: !0 });
404
+ }), Ot(() => {
405
+ document.removeEventListener("wheel", re, { capture: !1 }), document.removeEventListener("scroll", re, { capture: !0 });
406
+ }), Pt(() => {
407
+ ee();
408
+ }), _t(() => {
409
+ var t;
410
+ j.value = ((t = i["grid-wrapper"]) == null ? void 0 : t.offsetWidth) / 1.5 || 0;
411
+ }), y(
412
+ () => m.isShowColumnSetting,
413
+ (t) => {
414
+ var l;
415
+ if (!t) {
416
+ (l = R.gridSettingMenu) == null || l.hide();
417
+ return;
418
+ }
419
+ lt(Z.value);
420
+ }
421
+ ), y(
422
+ () => e.columns,
423
+ () => {
424
+ et() ? ke(He()) : (ke(He()), Ie()), g.filteringColumn = null, g.filteringItemsByColumn = {}, s.filterStore = [], P({ rows: [], isMakeIndex: !1 }), st(), s.movedColumns.length = 0;
425
+ },
426
+ { deep: !0 }
427
+ ), y(
428
+ () => K.isSorting,
429
+ (t) => {
430
+ t && (P({ rows: s.originStore, isMakeIndex: !1 }), K.isSorting = !t, o.isClientPaging && (o.currentPage = 1, s.pagingStore = $(), Y()));
431
+ }
432
+ ), y(
433
+ () => e.rows,
434
+ (t) => {
435
+ P({ rows: t }), g.isSearch && se(g.searchWord), ee();
436
+ },
437
+ { deep: !0 }
438
+ ), y(
439
+ () => e.uncheckable,
440
+ () => {
441
+ P({ rows: e.rows });
442
+ },
443
+ { deep: !0 }
444
+ ), y(
445
+ () => e.checked,
446
+ (t) => {
447
+ f.checkedRows = t;
448
+ }
449
+ ), y(
450
+ () => e.disabledRows,
451
+ () => {
452
+ s.store.length && s.store.forEach((t) => {
453
+ t[6] = e.disabledRows.includes(t[2]);
454
+ });
455
+ },
456
+ { deep: !0 }
457
+ ), y(
458
+ () => f.checkedRows,
459
+ (t) => {
460
+ f.isHeaderChecked = !1;
461
+ let l = s.store;
462
+ o.isClientPaging && (l = $()), l.length && (l.forEach((h) => {
463
+ h[1] = t.includes(h[2]);
464
+ }), f.isHeaderChecked = t.length === l.length), x();
465
+ }
466
+ ), y(
467
+ () => e.selected,
468
+ (t) => {
469
+ E.useSelect && (E.selectedRow = t);
470
+ }
471
+ ), y(
472
+ () => E.selectedRow,
473
+ (t) => {
474
+ E.useSelect && (s.store.forEach((l) => {
475
+ l[3] = t.includes(l[2]) && !e.disabledRows.includes(l[2]);
476
+ }), x());
477
+ }
478
+ ), y(
479
+ () => U.value,
480
+ async (t) => {
481
+ if (await ue(), t >= 0) {
482
+ if (o.usePage && !o.isInfinite && (o.highlightPage = Math.ceil(t / o.perPage) || 1, o.highlightPage !== o.currentPage)) {
483
+ o.currentPage = o.highlightPage, o.isHighlight = !0;
484
+ return;
485
+ }
486
+ i.body.scrollTop = O.rowHeight * U.value;
487
+ }
488
+ }
489
+ ), y(
490
+ () => f.useCheckbox.mode,
491
+ () => {
492
+ Y();
493
+ }
494
+ ), y(
495
+ () => E.useSelect,
496
+ () => {
497
+ le();
498
+ }
499
+ ), y(
500
+ () => E.multiple,
501
+ () => {
502
+ le();
503
+ }
504
+ ), y(
505
+ () => e.checked.length,
506
+ (t) => {
507
+ t || Y();
508
+ }
509
+ ), y(
510
+ () => e.expanded.length,
511
+ (t) => {
512
+ t || Ye(), x();
513
+ }
514
+ ), y(
515
+ () => [e.option.columnWidth, O.gridWidth],
516
+ async () => {
517
+ await ue(), O.columnWidth = e.option.columnWidth;
518
+ const t = i["grid-wrapper"];
519
+ t.style.width = O.gridWidth, t.style.height = O.gridHeight, s.orderedColumns.map((l) => {
520
+ var H;
521
+ const h = l;
522
+ return !((H = e.columns[l.index]) != null && H.width) && !h.resized && (h.width = 0), h;
523
+ }), ee();
524
+ }
525
+ ), y(
526
+ () => e.option.searchValue,
527
+ (t) => {
528
+ t !== void 0 && (se((t == null ? void 0 : t.value) ?? t), o.isClientPaging && (Y(), le()));
529
+ },
530
+ { immediate: !0 }
531
+ ), y(
532
+ () => {
533
+ var t;
534
+ return (t = e.option.page) == null ? void 0 : t.currentPage;
535
+ },
536
+ (t) => {
537
+ var h;
538
+ const l = t || 1;
539
+ o.currentPage = (h = e.option.page) != null && h.isInfinite ? 1 : l;
540
+ },
541
+ { immediate: !0 }
542
+ ), y(
543
+ () => o.currentPage,
544
+ (t, l) => {
545
+ ue(() => {
546
+ qe(l), o.isClientPaging && t !== l && (Y(), le()), x(), t === o.highlightPage && o.isHighlight && (i.body.scrollTop = O.rowHeight * U.value, o.isHighlight = !o.isHighlight);
547
+ });
548
+ }
549
+ );
550
+ const pe = p({
551
+ boxTop: 0,
552
+ boxLeft: 0
553
+ }), L = M(null), We = M(!1), q = M(!1), It = M(null), J = M({}), we = p({
554
+ caption: "",
555
+ field: ""
556
+ }), Oe = M([]), kt = [
557
+ { name: "AND", value: "and" },
558
+ { name: "OR", value: "or" }
559
+ ], be = M(0), pt = ({ caption: t, field: l }, h) => {
560
+ if (we.caption = t, we.field = l, Oe.value = h, (h == null ? void 0 : h.length) > 1) {
561
+ We.value = !0;
562
+ const H = L.value.getBoundingClientRect().left, V = window.pageYOffset + L.value.getBoundingClientRect().top + L.value.getBoundingClientRect().height;
563
+ pe.boxTop = `${V}px`, pe.boxLeft = `${H}px`;
564
+ }
565
+ }, wt = () => {
566
+ s.filterStore = [], P({ rows: [], isMakeIndex: !1 });
567
+ }, ve = async (t) => {
568
+ var V, te;
569
+ t && q.value && (be.value = 0);
570
+ const l = (V = L.value) == null ? void 0 : V.getElementsByClassName("filtering-items__item"), h = [];
571
+ let H = 0;
572
+ if (l) {
573
+ for (let _ = 0; _ < l.length; _++) {
574
+ const F = l[_];
575
+ F.classList.remove("non-display");
576
+ const de = (te = L.value.getBoundingClientRect()) == null ? void 0 : te.width, { width: ae } = F.getBoundingClientRect();
577
+ H += ae + 10, de - 150 <= H && !F.classList.contains("filtering-items__item--count") ? (be.value++, h.push(F), J.value = {
578
+ ...J.value,
579
+ [F.dataset.field]: xt(
580
+ g.filteringItemsByColumn[F.dataset.field]
581
+ )
582
+ }) : delete J.value[F.dataset.field];
583
+ }
584
+ l.forEach((_) => {
585
+ const F = h.includes(_);
586
+ _.classList.toggle("non-display", F);
587
+ });
588
+ }
589
+ }, bt = async (t, l) => {
590
+ l != null && l.length ? (g.filteringItemsByColumn[t] = l, q.value = !0) : (delete J.value[t], delete g.filteringItemsByColumn[t]), await ue(), ve(!0), g.isShowFilterSetting = !1, s.filterStore = [], P({ rows: [], isMakeIndex: !1 }), it(s.filterStore);
591
+ };
592
+ let Fe = null;
593
+ const vt = () => {
594
+ Fe && clearTimeout(Fe), Fe = setTimeout(() => {
595
+ q.value = !q.value, ve(q.value);
596
+ }, 150);
597
+ }, Ft = () => {
598
+ g.filteringColumn = null, g.filteringItemsByColumn = {}, J.value = {}, s.filterStore = [], P({ rows: [], isMakeIndex: !1 });
599
+ }, Dt = u(() => {
600
+ var t;
601
+ return {
602
+ width: `${j.value}px`,
603
+ top: `${((t = L.value) == null ? void 0 : t.getBoundingClientRect().height) || 0}px`
604
+ };
605
+ }), Et = (t) => {
606
+ const l = g.filteringItemsByColumn[t];
607
+ return l == null ? void 0 : l[l.length - 1];
608
+ }, Rt = () => {
609
+ const t = document.createElement("div");
610
+ t.id = "ev-grid-filtering-items-modal", t.setAttribute("style", "position: absolute; top: 0; left: 0;"), document.getElementById("ev-grid-filtering-items-modal") || document.body.appendChild(t);
611
+ };
612
+ return At(() => Rt()), {
613
+ idColIndex: u(() => {
614
+ var t;
615
+ return (t = s.orderedColumns.find((l) => l.field === "id")) == null ? void 0 : t.index;
616
+ }),
617
+ summaryScroll: Ee,
618
+ showHeader: ce,
619
+ stripeStyle: fe,
620
+ borderStyle: Ce,
621
+ highlightIdx: U,
622
+ useSummary: he,
623
+ useGridSetting: G,
624
+ toolbarRef: Z,
625
+ stores: s,
626
+ emptyText: ye,
627
+ ...v(i),
628
+ ...v(s),
629
+ ...v(g),
630
+ ...v(A),
631
+ ...v(o),
632
+ ...v(O),
633
+ ...v(E),
634
+ ...v(f),
635
+ ...v(I),
636
+ ...v(K),
637
+ ...v(R),
638
+ ...v(m),
639
+ isRenderer: W,
640
+ getComponentName: me,
641
+ getConvertValue: Q,
642
+ getColumnIndex: ne,
643
+ setPixelUnit: z,
644
+ updateVScroll: x,
645
+ updateHScroll: Re,
646
+ onScroll: Je,
647
+ calculatedColumn: Me,
648
+ onResize: ee,
649
+ onShow: nt,
650
+ onColumnResize: ot,
651
+ onRowClick: ct,
652
+ onRowDblClick: ht,
653
+ onCheck: Qe,
654
+ onCheckAll: Ze,
655
+ onExpanded: $e,
656
+ onSort: Be,
657
+ setSort: Ie,
658
+ setStore: P,
659
+ setContextMenu: at,
660
+ onContextMenu: gt,
661
+ onSearch: se,
662
+ setGridSetting: St,
663
+ onApplyColumn: rt,
664
+ onColumnContextMenu: ut,
665
+ // filtering
666
+ filteringItemsWidth: j,
667
+ isShowColumnFilteringItems: q,
668
+ operatorItems: kt,
669
+ selectedFilteringItems: Oe,
670
+ selectedFilteringColumn: we,
671
+ filteringItemsRef: L,
672
+ isShowFilteringItemsBox: We,
673
+ filteringItemsStyle: Dt,
674
+ hiddenFilteringItemsCount: be,
675
+ ...v(pe),
676
+ hiddenFilteringItemsRef: It,
677
+ hiddenFilteringItemsByColumn: J,
678
+ removeAllFiltering: Ft,
679
+ onExpandFilteringItems: vt,
680
+ setColumnFilteringItems: ve,
681
+ onChangeOperator: wt,
682
+ onApplyFilter: bt,
683
+ onClickFilteringItem: pt,
684
+ getFilteringItemByField: Et,
685
+ // drag
686
+ onDragStart: ft,
687
+ onDragOver: Ct,
688
+ onDrop: yt,
689
+ ROW_DISABLED_INDEX: 6
690
+ };
691
+ }
692
+ }, gi = {
693
+ key: 0,
694
+ class: "filtering-items filtering-items--used"
695
+ }, ui = {
696
+ key: 1,
697
+ ref: "filteringItemsRef",
698
+ class: "filtering-items"
699
+ }, mi = ["data-field", "onClick"], ci = { class: "filtering-items__item--title" }, hi = ["title"], fi = {
700
+ key: 1,
701
+ class: "filtering-items__item--value"
702
+ }, Ci = ["onClick"], yi = { class: "filtering-items__item--title" }, Si = ["title"], Ii = {
703
+ key: 1,
704
+ class: "filtering-items__item--value"
705
+ }, ki = { class: "column-list" }, pi = ["data-index"], wi = ["title", "onClick"], bi = ["onClick"], vi = ["onMousedown"], Fi = { ref: "table" }, Di = ["data-index", "disabled", "onClick", "onContextmenu", "onDblclick"], Ei = ["data-name", "data-index", "disabled"], Ri = { key: 0 }, Bi = ["title"], Hi = ["disabled"], Mi = ["disabled"], Wi = { key: 0 }, Oi = ["colspan"], Pi = { key: 0 }, _i = { class: "is-empty" }, Ai = {
706
+ ref: "resizeLine",
707
+ class: "table-resize-line"
708
+ };
709
+ function xi(e, d, Ue, n, je, Ke) {
710
+ var j;
711
+ const W = B("ev-icon"), me = B("ev-select"), Q = B("grid-option-button"), ne = B("toolbar"), z = B("ev-checkbox"), Z = B("grid-sort-button"), G = B("ev-context-menu"), ce = B("grid-summary"), he = B("grid-pagination"), fe = B("filter-setting"), Ce = B("column-setting"), U = De("clickoutside"), ye = De("resize"), oe = De("observe-visibility");
712
+ return r(), a(D, null, [
713
+ e.$slots.toolbar || n.useGridSetting ? (r(), a("div", {
714
+ key: 0,
715
+ ref: "toolbarRef",
716
+ class: "toolbar-wrapper",
717
+ style: S(`width: ${e.gridWidth};`)
718
+ }, [
719
+ w(ne, null, {
720
+ toolbarWrapper: Bt(() => [
721
+ C("div", {
722
+ class: "filtering",
723
+ style: S({ width: `${n.filteringItemsWidth}px` })
724
+ }, [
725
+ e.isFiltering && !Object.keys(e.filteringItemsByColumn).length ? (r(), a("div", gi, [
726
+ w(W, { icon: "ev-icon-filter-list" }),
727
+ d[18] || (d[18] = C("span", null, "Filter", -1))
728
+ ])) : c("", !0),
729
+ e.isFiltering && Object.keys(e.filteringItemsByColumn).length ? (r(), a("div", ui, [
730
+ (r(!0), a(D, null, ie(Object.keys(e.filteringItemsByColumn), (i, g) => {
731
+ var m, s, o, f;
732
+ return r(), a(D, { key: g }, [
733
+ g === 0 ? (r(), a("div", {
734
+ key: 0,
735
+ class: "filtering-items__item filtering-items__item--filter",
736
+ onClick: d[0] || (d[0] = T((...I) => n.onExpandFilteringItems && n.onExpandFilteringItems(...I), ["stop"]))
737
+ }, [
738
+ w(W, {
739
+ icon: "ev-icon-filter-list",
740
+ class: "filtering-items-expand"
741
+ }),
742
+ C("span", null, " Filter (" + b(Object.keys(e.filteringItemsByColumn).length) + ") ", 1),
743
+ w(W, {
744
+ class: "filtering-items__item--remove",
745
+ icon: "ev-icon-s-close",
746
+ style: { "margin-left": "0" },
747
+ onClick: T(n.removeAllFiltering, ["stop"])
748
+ }, null, 8, ["onClick"])
749
+ ])) : c("", !0),
750
+ g === 1 ? (r(), N(me, {
751
+ key: 1,
752
+ modelValue: e.columnOperator,
753
+ "onUpdate:modelValue": d[1] || (d[1] = (I) => e.columnOperator = I),
754
+ items: n.operatorItems,
755
+ class: "filtering-items__item--operator",
756
+ onChange: n.onChangeOperator
757
+ }, null, 8, ["modelValue", "items", "onChange"])) : c("", !0),
758
+ C("div", {
759
+ class: "filtering-items__item non-display",
760
+ "data-field": i,
761
+ onClick: T((I) => {
762
+ var A;
763
+ return n.onClickFilteringItem(
764
+ {
765
+ caption: (A = n.getFilteringItemByField(i)) == null ? void 0 : A.caption,
766
+ field: i
767
+ },
768
+ e.filteringItemsByColumn[i]
769
+ );
770
+ }, ["stop"])
771
+ }, [
772
+ C("span", ci, b((m = n.getFilteringItemByField(i)) == null ? void 0 : m.caption) + " " + b((s = n.getFilteringItemByField(i)) == null ? void 0 : s.comparison), 1),
773
+ e.filteringItemsByColumn[i].length < 2 ? (r(), a("span", {
774
+ key: 0,
775
+ class: "filtering-items__item--value",
776
+ title: (o = n.getFilteringItemByField(i)) == null ? void 0 : o.value
777
+ }, b((f = n.getFilteringItemByField(i)) == null ? void 0 : f.value), 9, hi)) : (r(), a("span", fi, " + " + b(e.filteringItemsByColumn[i].length), 1)),
778
+ w(W, {
779
+ class: "filtering-items__item--remove",
780
+ icon: "ev-icon-s-close",
781
+ onClick: (I) => n.onApplyFilter(i, [])
782
+ }, null, 8, ["onClick"])
783
+ ], 8, mi)
784
+ ], 64);
785
+ }), 128)),
786
+ n.isShowColumnFilteringItems && Object.keys(e.filteringItemsByColumn).length && n.hiddenFilteringItemsCount > 0 ? (r(), a("div", {
787
+ key: 0,
788
+ class: "filtering-items__item filtering-items__item--count",
789
+ onClick: d[2] || (d[2] = (...i) => n.onExpandFilteringItems && n.onExpandFilteringItems(...i))
790
+ }, " + " + b(n.hiddenFilteringItemsCount), 1)) : c("", !0)
791
+ ], 512)) : c("", !0),
792
+ !n.isShowColumnFilteringItems && Object.keys(n.hiddenFilteringItemsByColumn).length ? ge((r(), a("div", {
793
+ key: 2,
794
+ ref: "hiddenFilteringItemsRef",
795
+ class: "filtering-items filtering-items__hidden-items",
796
+ style: S(n.filteringItemsStyle)
797
+ }, [
798
+ (r(!0), a(D, null, ie(Object.keys(n.hiddenFilteringItemsByColumn), (i, g) => {
799
+ var m, s, o, f;
800
+ return r(), a("div", {
801
+ key: g,
802
+ class: "filtering-items__item",
803
+ onClick: T((I) => {
804
+ var A;
805
+ return n.onClickFilteringItem(
806
+ {
807
+ caption: (A = n.getFilteringItemByField(i)) == null ? void 0 : A.caption,
808
+ field: i
809
+ },
810
+ n.hiddenFilteringItemsByColumn[i]
811
+ );
812
+ }, ["stop"])
813
+ }, [
814
+ C("span", yi, b((m = n.getFilteringItemByField(i)) == null ? void 0 : m.caption) + " " + b((s = n.getFilteringItemByField(i)) == null ? void 0 : s.comparison), 1),
815
+ n.hiddenFilteringItemsByColumn[i].length < 2 ? (r(), a("span", {
816
+ key: 0,
817
+ class: "filtering-items__item--value",
818
+ title: (o = n.getFilteringItemByField(i)) == null ? void 0 : o.value
819
+ }, b((f = n.getFilteringItemByField(i)) == null ? void 0 : f.value), 9, Si)) : (r(), a("span", Ii, " + " + b(n.hiddenFilteringItemsByColumn[i].length), 1)),
820
+ w(W, {
821
+ class: "filtering-items__item--remove",
822
+ icon: "ev-icon-s-close",
823
+ onClick: (I) => n.onApplyFilter(i, [], !0)
824
+ }, null, 8, ["onClick"])
825
+ ], 8, Ci);
826
+ }), 128))
827
+ ], 4)), [
828
+ [
829
+ U,
830
+ () => {
831
+ n.isShowColumnFilteringItems || n.onExpandFilteringItems();
832
+ }
833
+ ]
834
+ ]) : c("", !0)
835
+ ], 4),
836
+ n.useGridSetting ? (r(), N(Q, {
837
+ key: 0,
838
+ class: "grid-setting__icon",
839
+ onClick: d[3] || (d[3] = (i) => n.setGridSetting(i))
840
+ })) : c("", !0),
841
+ X(e.$slots, "toolbar", {
842
+ item: { onSearch: n.onSearch }
843
+ }, void 0, !0)
844
+ ]),
845
+ _: 3
846
+ })
847
+ ], 4)) : c("", !0),
848
+ ge((r(), a("div", Ht({ ref: "grid-wrapper" }, e.$attrs, {
849
+ class: "grid-wrapper",
850
+ style: `width: ${e.gridWidth}; height: ${e.gridHeight};`
851
+ }), [
852
+ C("div", {
853
+ ref: "grid",
854
+ class: k({
855
+ table: !0,
856
+ adjust: e.adjust,
857
+ "ev-grid": !0,
858
+ "non-header": !n.showHeader,
859
+ "ev-grid--empty": !e.viewStore.length
860
+ })
861
+ }, [
862
+ ge(C("div", {
863
+ ref: "header",
864
+ class: k({
865
+ "table-header": !0,
866
+ "non-border": !!n.borderStyle
867
+ })
868
+ }, [
869
+ C("ul", ki, [
870
+ e.useCheckbox.use ? (r(), a("li", {
871
+ key: 0,
872
+ class: k({
873
+ column: !0,
874
+ "checkbox-all": !0,
875
+ "non-border": !!n.borderStyle
876
+ }),
877
+ style: S({
878
+ width: `${e.minWidth}px`,
879
+ "border-right": "1px solid #CFCFCF"
880
+ })
881
+ }, [
882
+ e.useCheckbox.use && e.useCheckbox.headerCheck && e.useCheckbox.mode !== "single" ? (r(), N(z, {
883
+ key: 0,
884
+ modelValue: e.isHeaderChecked,
885
+ "onUpdate:modelValue": d[4] || (d[4] = (i) => e.isHeaderChecked = i),
886
+ disabled: e.isHeaderUncheckable,
887
+ indeterminate: e.isHeaderIndeterminate,
888
+ onChange: n.onCheckAll
889
+ }, null, 8, ["modelValue", "disabled", "indeterminate", "onChange"])) : c("", !0)
890
+ ], 6)) : c("", !0),
891
+ e.useRowDetail ? (r(), a("li", {
892
+ key: 1,
893
+ class: k({
894
+ column: !0,
895
+ "non-border": !!n.borderStyle
896
+ }),
897
+ style: S({
898
+ width: `${e.minWidth}px`,
899
+ "border-right": "1px solid #CFCFCF"
900
+ })
901
+ }, null, 6)) : c("", !0),
902
+ (r(!0), a(D, null, ie(e.orderedColumns, (i, g) => (r(), a(D, { key: g }, [
903
+ !i.hide && !i.hiddenDisplay ? (r(), a("li", {
904
+ key: 0,
905
+ "data-index": g,
906
+ class: k({
907
+ column: !0,
908
+ render: n.isRenderer(i),
909
+ "non-border": !!n.borderStyle,
910
+ [i.field]: i.field
911
+ }),
912
+ style: S({
913
+ width: `${i.width}px`,
914
+ "min-width": `${n.isRenderer(i) ? e.rendererMinWidth : e.minWidth}px`,
915
+ "margin-right": e.orderedColumns.length - 1 === g && (e.hasVerticalScrollBar || e.hasHorizontalScrollBar) ? `${e.scrollWidth}px` : "0px",
916
+ "border-right": e.orderedColumns.length - 1 === g ? "none" : "1px solid #CFCFCF"
917
+ }),
918
+ draggable: !0,
919
+ onDragstart: d[6] || (d[6] = (...m) => n.onDragStart && n.onDragStart(...m)),
920
+ onDragover: d[7] || (d[7] = (...m) => n.onDragOver && n.onDragOver(...m)),
921
+ onDrop: d[8] || (d[8] = (...m) => n.onDrop && n.onDrop(...m))
922
+ }, [
923
+ i.customHeader && e.$slots.customHeader ? X(e.$slots, "customHeader", { key: 0 }, void 0, !0) : (r(), a("span", {
924
+ key: 1,
925
+ title: i.caption,
926
+ class: "column-name",
927
+ onClick: [
928
+ (m) => n.onColumnContextMenu(m, i),
929
+ d[5] || (d[5] = T((...m) => e.columnMenu.show && e.columnMenu.show(...m), ["prevent"]))
930
+ ]
931
+ }, [
932
+ Mt(b(i.caption) + " ", 1),
933
+ C("span", {
934
+ onClick: T((m) => n.onSort(i), ["stop"])
935
+ }, [
936
+ e.$slots.sortIcon ? (r(), a(D, { key: 0 }, [
937
+ i.sortable === void 0 || i.sortable ? (r(), a("span", {
938
+ key: 0,
939
+ class: "column-sort__icon column-sort__icon--basic",
940
+ style: S({
941
+ height: `${e.rowHeight}px`,
942
+ "line-height": `${e.rowHeight}px`
943
+ })
944
+ }, [
945
+ X(e.$slots, "sortIcon", {}, void 0, !0)
946
+ ], 4)) : c("", !0),
947
+ e.sortField === i.field ? (r(), a("span", {
948
+ key: 1,
949
+ class: k([
950
+ {
951
+ "column-sort__icon": !0,
952
+ "column-sort__icon--asc": e.sortOrder === "asc",
953
+ "column-sort__icon--desc": e.sortOrder === "desc"
954
+ }
955
+ ]),
956
+ style: S({
957
+ height: `${e.rowHeight}px`,
958
+ "line-height": `${e.rowHeight}px`
959
+ })
960
+ }, [
961
+ X(e.$slots, `sortIcon_${e.sortOrder}`, {}, void 0, !0)
962
+ ], 6)) : c("", !0)
963
+ ], 64)) : (r(), a(D, { key: 1 }, [
964
+ i.sortable === void 0 || i.sortable ? (r(), N(Z, {
965
+ key: 0,
966
+ class: "column-sort__icon column-sort__icon--basic",
967
+ icon: "basic",
968
+ style: S({
969
+ height: `${e.rowHeight}px`,
970
+ "line-height": `${e.rowHeight}px`
971
+ })
972
+ }, null, 8, ["style"])) : c("", !0),
973
+ e.sortField === i.field ? (r(), N(Z, {
974
+ key: 1,
975
+ class: k([
976
+ {
977
+ "column-sort__icon": !0,
978
+ "column-sort__icon--asc": e.sortOrder === "asc",
979
+ "column-sort__icon--desc": e.sortOrder === "desc"
980
+ }
981
+ ]),
982
+ icon: e.sortOrder,
983
+ style: S({
984
+ height: `${e.rowHeight}px`,
985
+ "line-height": `${e.rowHeight}px`,
986
+ visibility: e.sortOrder ? i.hidden : !0
987
+ })
988
+ }, null, 8, ["class", "icon", "style"])) : c("", !0)
989
+ ], 64))
990
+ ], 8, bi)
991
+ ], 8, wi)),
992
+ C("span", {
993
+ class: "column-resize",
994
+ onMousedown: T((m) => n.onColumnResize(g, m), ["stop", "left"])
995
+ }, null, 40, vi)
996
+ ], 46, pi)) : c("", !0)
997
+ ], 64))), 128)),
998
+ (j = e.$props.option.customContextMenu) != null && j.length ? (r(), a("li", {
999
+ key: 2,
1000
+ class: k({
1001
+ column: !0,
1002
+ "non-border": !!n.borderStyle
1003
+ }),
1004
+ style: S({
1005
+ width: "30px",
1006
+ "min-width": "30px",
1007
+ "margin-right": e.hasVerticalScrollBar || e.hasHorizontalScrollBar ? `${e.scrollWidth}px` : "0px"
1008
+ })
1009
+ }, null, 6)) : c("", !0)
1010
+ ])
1011
+ ], 2), [
1012
+ [Ge, n.showHeader]
1013
+ ]),
1014
+ C("div", {
1015
+ ref: "body",
1016
+ class: k({
1017
+ stripe: n.stripeStyle,
1018
+ "table-body": !0,
1019
+ "bottom-border": !!e.viewStore.length,
1020
+ "non-border": !!n.borderStyle
1021
+ }),
1022
+ onScroll: d[11] || (d[11] = (...i) => n.onScroll && n.onScroll(...i)),
1023
+ onContextmenu: d[12] || (d[12] = (i) => n.onContextMenu(i))
1024
+ }, [
1025
+ C("div", {
1026
+ style: S(`height: ${e.vScrollTopHeight}px;`),
1027
+ class: "vscroll-spacer"
1028
+ }, null, 4),
1029
+ C("table", Fi, [
1030
+ C("tbody", null, [
1031
+ (r(!0), a(D, null, ie(e.viewStore, (i, g) => {
1032
+ var m, s;
1033
+ return r(), a(D, {
1034
+ key: n.idColIndex != null ? i[2][n.idColIndex] : g
1035
+ }, [
1036
+ C("tr", {
1037
+ "data-index": i[0],
1038
+ class: k({
1039
+ row: !0,
1040
+ selected: i[3],
1041
+ highlight: i[0] === n.highlightIdx,
1042
+ "non-border": !!n.borderStyle && n.borderStyle !== "rows"
1043
+ }),
1044
+ disabled: i[n.ROW_DISABLED_INDEX],
1045
+ onClick: (o) => n.onRowClick(o, i),
1046
+ onContextmenu: (o) => n.onRowClick(o, i, !0),
1047
+ onDblclick: (o) => n.onRowDblClick(o, i)
1048
+ }, [
1049
+ e.useCheckbox.use ? (r(), a("td", {
1050
+ key: 0,
1051
+ class: k({
1052
+ cell: !0,
1053
+ "row-checkbox": !0,
1054
+ "non-border": !!n.borderStyle
1055
+ }),
1056
+ style: S({
1057
+ width: `${e.minWidth}px`,
1058
+ height: `${e.rowHeight}px`,
1059
+ "border-right": "1px solid #CFCFCF"
1060
+ })
1061
+ }, [
1062
+ w(z, {
1063
+ modelValue: i[1],
1064
+ "onUpdate:modelValue": (o) => i[1] = o,
1065
+ class: "row-checkbox-input",
1066
+ disabled: i[5] || i[n.ROW_DISABLED_INDEX],
1067
+ onChange: (o) => n.onCheck(o, i)
1068
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "disabled", "onChange"])
1069
+ ], 6)) : c("", !0),
1070
+ e.useRowDetail ? (r(), a("td", {
1071
+ key: 1,
1072
+ class: k({
1073
+ cell: !0,
1074
+ "row-detail-toggle": !0,
1075
+ "non-border": !!n.borderStyle,
1076
+ "row-detail-toggle--expanded": i[4]
1077
+ }),
1078
+ style: S({
1079
+ width: `${e.minWidth}px`,
1080
+ height: `${e.rowHeight}px`,
1081
+ "border-right": "1px solid #CFCFCF"
1082
+ })
1083
+ }, [
1084
+ w(W, {
1085
+ modelValue: i[4],
1086
+ "onUpdate:modelValue": (o) => i[4] = o,
1087
+ icon: "ev-icon-s-play",
1088
+ class: "row-detail-toggle-icon",
1089
+ onClick: T((o) => n.onExpanded(o, i), ["stop"])
1090
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onClick"])
1091
+ ], 6)) : c("", !0),
1092
+ (r(!0), a(D, null, ie(e.orderedColumns, (o, f) => (r(), a(D, {
1093
+ key: `${n.idColIndex != null ? i[2][n.idColIndex] : g}-${f}`
1094
+ }, [
1095
+ !o.hide && !o.hiddenDisplay ? (r(), a("td", {
1096
+ key: 0,
1097
+ "data-name": o.field,
1098
+ "data-index": o.index,
1099
+ class: k({
1100
+ cell: !0,
1101
+ render: n.isRenderer(o),
1102
+ [o.type]: o.type,
1103
+ [o.align]: o.align,
1104
+ [o.field]: o.field,
1105
+ "non-border": !!n.borderStyle
1106
+ }),
1107
+ style: S({
1108
+ width: `${o.width}px`,
1109
+ height: `${e.rowHeight}px`,
1110
+ "line-height": `${e.rowHeight}px`,
1111
+ "min-width": `${n.isRenderer(o) ? e.rendererMinWidth : e.minWidth}px`,
1112
+ "border-right": e.orderedColumns.length - 1 === f ? "none" : "1px solid #CFCFCF"
1113
+ }),
1114
+ disabled: i[n.ROW_DISABLED_INDEX]
1115
+ }, [
1116
+ e.$slots[o.field] ? (r(), a("div", Ri, [
1117
+ X(e.$slots, o.field, {
1118
+ item: { row: i, column: o },
1119
+ disabled: i[n.ROW_DISABLED_INDEX]
1120
+ }, void 0, !0)
1121
+ ])) : (r(), a("div", {
1122
+ key: 1,
1123
+ title: n.getConvertValue(o, i[2][o.index])
1124
+ }, b(n.getConvertValue(o, i[2][o.index])), 9, Bi))
1125
+ ], 14, Ei)) : c("", !0)
1126
+ ], 64))), 128)),
1127
+ (m = e.$props.option.customContextMenu) != null && m.length ? (r(), a("td", {
1128
+ key: 2,
1129
+ class: k({
1130
+ "row-contextmenu": !0,
1131
+ "non-border": !!n.borderStyle
1132
+ }),
1133
+ style: S({
1134
+ position: "sticky",
1135
+ right: 0,
1136
+ width: "30px",
1137
+ height: `${e.rowHeight}px`,
1138
+ "min-width": "30px",
1139
+ "line-height": `${e.rowHeight}px`
1140
+ }),
1141
+ disabled: i[n.ROW_DISABLED_INDEX]
1142
+ }, [
1143
+ e.$slots.contextmenuIcon ? (r(), a("span", {
1144
+ key: 0,
1145
+ class: "row-contextmenu__btn",
1146
+ disabled: i[n.ROW_DISABLED_INDEX],
1147
+ onClick: d[9] || (d[9] = (o) => n.onContextMenu(o))
1148
+ }, [
1149
+ X(e.$slots, "contextmenuIcon", {}, void 0, !0)
1150
+ ], 8, Mi)) : (r(), N(Q, {
1151
+ key: 1,
1152
+ icon: "ev-icon-warning2",
1153
+ class: "row-contextmenu__btn",
1154
+ disabled: i[n.ROW_DISABLED_INDEX],
1155
+ onClick: d[10] || (d[10] = (o) => n.onContextMenu(o))
1156
+ }, null, 8, ["disabled"]))
1157
+ ], 14, Hi)) : c("", !0)
1158
+ ], 42, Di),
1159
+ e.useRowDetail && ((s = e.$slots) != null && s.rowDetail) && i[4] ? (r(), a("tr", Wi, [
1160
+ C("td", {
1161
+ colspan: i.length
1162
+ }, [
1163
+ C("div", {
1164
+ style: S({
1165
+ width: "100%",
1166
+ height: `${e.detailRowHeight}px`,
1167
+ "min-height": `${e.detailRowHeight}px`,
1168
+ "max-height": `${e.detailRowHeight}px`
1169
+ })
1170
+ }, [
1171
+ X(e.$slots, "rowDetail", {
1172
+ item: { row: i }
1173
+ }, void 0, !0)
1174
+ ], 4)
1175
+ ], 8, Oi)
1176
+ ])) : c("", !0)
1177
+ ], 64);
1178
+ }), 128)),
1179
+ e.viewStore.length ? c("", !0) : (r(), a("tr", Pi, [
1180
+ C("td", _i, b(n.emptyText), 1)
1181
+ ]))
1182
+ ])
1183
+ ], 512),
1184
+ C("div", {
1185
+ style: S(`height: ${e.vScrollBottomHeight}px;`),
1186
+ class: "vscroll-spacer"
1187
+ }, null, 4),
1188
+ w(G, {
1189
+ ref: "menu",
1190
+ "custom-class": e.contextMenuClass,
1191
+ items: e.contextMenuItems
1192
+ }, null, 8, ["custom-class", "items"]),
1193
+ w(G, {
1194
+ ref: "columnMenu",
1195
+ items: e.columnMenuItems
1196
+ }, null, 8, ["items"]),
1197
+ w(G, {
1198
+ ref: "gridSettingMenu",
1199
+ items: e.gridSettingContextMenuItems,
1200
+ "is-show-menu-on-click": e.isShowMenuOnClick
1201
+ }, null, 8, ["items", "is-show-menu-on-click"])
1202
+ ], 34),
1203
+ ge(C("div", Ai, null, 512), [
1204
+ [Ge, e.showResizeLine]
1205
+ ])
1206
+ ], 2)
1207
+ ], 16)), [
1208
+ [ye, n.onResize],
1209
+ [oe, {
1210
+ callback: n.onShow,
1211
+ once: !0
1212
+ }]
1213
+ ]),
1214
+ n.useSummary ? (r(), N(ce, {
1215
+ key: 1,
1216
+ "ordered-columns": e.orderedColumns,
1217
+ stores: n.stores,
1218
+ "use-checkbox": e.useCheckbox.use,
1219
+ "style-option": {
1220
+ borderStyle: n.borderStyle,
1221
+ minWidth: e.minWidth,
1222
+ rowHeight: e.rowHeight
1223
+ },
1224
+ "scroll-left": n.summaryScroll
1225
+ }, null, 8, ["ordered-columns", "stores", "use-checkbox", "style-option", "scroll-left"])) : c("", !0),
1226
+ e.usePage && !e.isInfinite ? (r(), N(he, {
1227
+ key: 2,
1228
+ modelValue: e.currentPage,
1229
+ "onUpdate:modelValue": d[13] || (d[13] = (i) => e.currentPage = i),
1230
+ total: e.pageTotal,
1231
+ "per-page": e.perPage,
1232
+ "visible-page": e.visiblePage,
1233
+ "show-page-info": e.showPageInfo,
1234
+ order: e.order
1235
+ }, null, 8, ["modelValue", "total", "per-page", "visible-page", "show-page-info", "order"])) : c("", !0),
1236
+ w(fe, {
1237
+ "is-show": e.isShowFilterSetting,
1238
+ "onUpdate:isShow": d[14] || (d[14] = (i) => e.isShowFilterSetting = i),
1239
+ items: e.filteringItemsByColumn,
1240
+ "onUpdate:items": d[15] || (d[15] = (i) => e.filteringItemsByColumn = i),
1241
+ column: e.filteringColumn,
1242
+ position: e.filterSettingPosition,
1243
+ onApplyFiltering: n.onApplyFilter
1244
+ }, null, 8, ["is-show", "items", "column", "position", "onApplyFiltering"]),
1245
+ w(Ce, {
1246
+ "is-show": e.isShowColumnSetting,
1247
+ "onUpdate:isShow": d[16] || (d[16] = (i) => e.isShowColumnSetting = i),
1248
+ "is-show-menu-on-click": e.isShowMenuOnClick,
1249
+ "onUpdate:isShowMenuOnClick": d[17] || (d[17] = (i) => e.isShowMenuOnClick = i),
1250
+ columns: e.updatedColumns,
1251
+ "hidden-column": e.hiddenColumn,
1252
+ position: e.columnSettingPosition,
1253
+ "text-info": e.columnSettingTextInfo,
1254
+ onApplyColumn: n.onApplyColumn
1255
+ }, null, 8, ["is-show", "is-show-menu-on-click", "columns", "hidden-column", "position", "text-info", "onApplyColumn"])
1256
+ ], 64);
1257
+ }
1258
+ const en = /* @__PURE__ */ di(ai, [["render", xi], ["__scopeId", "data-v-f8886e09"]]);
1259
+ export {
1260
+ en as default
1261
+ };