@wfrog/vc-ui 1.13.0 → 1.13.2

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.
@@ -1,10 +1,12 @@
1
1
  import './index.css'
2
- import { ElTable, ElLoadingDirective } from 'element-plus/es';
2
+ import { ElTable, ElText, ElIcon } from 'element-plus/es';
3
3
  import 'element-plus/es/components/base/style/css';
4
- import 'element-plus/es/components/loading/style/css';
5
4
  import 'element-plus/es/components/table/style/css';
6
- import { defineComponent, h, useCssVars, useCssModule, useTemplateRef, computed, ref, watch, withDirectives, createElementBlock, openBlock, normalizeClass, unref, createVNode, mergeProps, createSlots, withCtx, createBlock, createCommentVNode, renderSlot, withModifiers, isRef, Fragment, renderList, createTextVNode, toDisplayString, resolveDynamicComponent } from 'vue';
7
- import { promiseTimeout } from '@vueuse/core';
5
+ import 'element-plus/es/components/text/style/css';
6
+ import 'element-plus/es/components/icon/style/css';
7
+ import { defineComponent, h, useCssVars, useCssModule, useTemplateRef, computed, ref, watch, createBlock, openBlock, normalizeClass, unref, createSlots, withCtx, createCommentVNode, createElementBlock, renderSlot, withModifiers, isRef, createVNode, Fragment, renderList, mergeProps, createTextVNode, toDisplayString, resolveDynamicComponent, createElementVNode } from 'vue';
8
+ import { Loading } from '@element-plus/icons-vue';
9
+ import { useIntersectionObserver, promiseTimeout } from '@vueuse/core';
8
10
  import { ElTableColumn, ElRadio, ElCheckbox } from 'element-plus';
9
11
  import { i as injectExplorerPanelState } from '../explorer-panel/explorer-panel2.mjs';
10
12
  import { _ as _export_sfc } from '../../chunk/pcqpp-6-.mjs';
@@ -20,30 +22,52 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
20
22
  multipleCheckedKey: { default: "checked" },
21
23
  index: { type: Boolean },
22
24
  highlightCurrent: { type: Boolean, default: false },
23
- empty: { type: Boolean, default: true },
25
+ empty: { type: Boolean, default: false },
24
26
  emptyText: { default: "没有数据" },
25
- pending: { type: Boolean },
27
+ noMoreText: { default: "没有更多了" },
26
28
  loading: { type: Boolean, default: false },
27
- loadingText: { default: "数据加载中..." },
29
+ loadingText: { default: "数据加载中" },
28
30
  size: {},
29
31
  columnRender: { type: Function, default: (column, row) => h("span", row[column.prop]) },
30
32
  columnConfig: {},
31
33
  columnFilter: { type: Function, default: (column) => column.visible !== false },
32
34
  rowClassName: {},
33
35
  startIndex: { default: 0 },
34
- rowKey: { type: [String, Function], default: "id" }
36
+ rowKey: { type: [String, Function], default: "id" },
37
+ scrollLoad: { type: Boolean, default: false },
38
+ scrollLoadDisabled: { type: Boolean, default: false },
39
+ scrollLoadRootMargin: { default: "0px" },
40
+ scrollLoadThreshold: { default: 0 }
35
41
  },
36
- emits: ["columnEvent", "singleSelectionChange", "multipleSelectionChange", "selectionChange", "selectAll"],
42
+ emits: ["columnEvent", "singleSelectionChange", "multipleSelectionChange", "selectionChange", "selectAll", "loadMore"],
37
43
  setup(__props, { expose: __expose, emit: __emit }) {
38
44
  useCssVars((_ctx) => ({
39
- "dc3c53f8": `${_ctx.empty ? "flex" : "none"}`
45
+ "v674feb49": `${_ctx.empty ? "flex" : "none"}`
40
46
  }));
41
47
  const props = __props;
42
48
  const emits = __emit;
43
49
  const state = injectExplorerPanelState();
44
50
  const $style = useCssModule();
45
51
  const tableRef = useTemplateRef("tableRef");
52
+ const sentinelRef = useTemplateRef("sentinelRef");
46
53
  const columns = computed(() => state.columnConfig.value.filter(props.columnFilter));
54
+ const scrollLoadEnabled = computed(
55
+ () => props.scrollLoad && props.data.length > 0 && !props.loading && !props.scrollLoadDisabled
56
+ );
57
+ const scrollRoot = computed(() => tableRef.value?.scrollBarRef?.wrapRef ?? null);
58
+ useIntersectionObserver(
59
+ sentinelRef,
60
+ ([{ isIntersecting }]) => {
61
+ if (isIntersecting && scrollLoadEnabled.value) {
62
+ emits("loadMore");
63
+ }
64
+ },
65
+ {
66
+ root: scrollRoot,
67
+ rootMargin: props.scrollLoadRootMargin,
68
+ threshold: props.scrollLoadThreshold
69
+ }
70
+ );
47
71
  const selectedValue = ref();
48
72
  const selectedValues = computed(() => new Set(props.data.filter((item) => item[props.multipleCheckedKey]).map(getRowValue)));
49
73
  const isSingleSelection = computed(() => props.customSelection === "radio");
@@ -53,7 +77,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
53
77
  if (!isMultipleSelection.value) {
54
78
  return false;
55
79
  }
56
- return selectedValues.value.size === props.data.length;
80
+ return selectedValues.value.size > 0 && Array.from(selectedValues.value).every((value) => props.data.some((row) => getRowValue(row) === value));
57
81
  },
58
82
  set(val) {
59
83
  if (!isMultipleSelection.value) {
@@ -69,7 +93,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
69
93
  if (!isMultipleSelection.value || !props.data.length) {
70
94
  return false;
71
95
  }
72
- return selectedValues.value.size > 0 && selectedValues.value.size < props.data.length;
96
+ return selectedValues.value.size > 0 && selectedValues.value.size < props.data.length && Array.from(selectedValues.value).some((value) => props.data.some((row) => getRowValue(row) !== value));
73
97
  });
74
98
  function getRowValue(row) {
75
99
  if (!row || !props.rowKey)
@@ -86,7 +110,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
86
110
  const value = getRowValue(row);
87
111
  if (selectedValue.value !== value) {
88
112
  selectedValue.value = value;
89
- emits("singleSelectionChange", row);
113
+ emits("singleSelectionChange", row, selectedValue.value);
90
114
  }
91
115
  }
92
116
  async function handleCheckboxClick(row) {
@@ -145,147 +169,186 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
145
169
  tableRef
146
170
  });
147
171
  return (_ctx, _cache) => {
172
+ const _component_el_icon = ElIcon;
173
+ const _component_ElText = ElText;
148
174
  const _component_ElTable = ElTable;
149
- const _directive_loading = ElLoadingDirective;
150
- return withDirectives((openBlock(), createElementBlock("div", {
151
- class: normalizeClass(unref($style)["explorer-table"])
152
- }, [
153
- createVNode(_component_ElTable, mergeProps({
154
- ref_key: "tableRef",
155
- ref: tableRef,
156
- data: __props.data,
157
- stripe: "",
158
- class: unref($style).table,
159
- size: __props.size
160
- }, _ctx.$attrs, {
161
- "scrollbar-always-on": "",
162
- "highlight-current-row": __props.highlightCurrent,
163
- border: "",
164
- "allow-drag-last-column": true,
165
- "row-key": __props.rowKey,
166
- "row-class-name": myRowClassName,
167
- onHeaderDragend
168
- }), createSlots({
169
- empty: withCtx(() => [
170
- renderSlot(_ctx.$slots, "empty", {}, () => [
171
- !__props.loading && !__props.pending ? (openBlock(), createElementBlock("div", _hoisted_1, toDisplayString(__props.emptyText), 1)) : (openBlock(), createElementBlock("div", _hoisted_2))
172
- ])
173
- ]),
174
- default: withCtx(() => [
175
- __props.selection ? (openBlock(), createBlock(unref(ElTableColumn), {
176
- key: 0,
177
- type: "selection",
178
- width: __props.size === "large" ? 50 : 40,
179
- align: "center"
180
- }, null, 8, ["width"])) : createCommentVNode("", true),
181
- __props.customSelection ? (openBlock(), createBlock(unref(ElTableColumn), {
182
- key: 1,
183
- width: __props.size === "large" ? 50 : 40,
184
- align: "center",
185
- fixed: "left",
186
- "class-name": unref($style).selection
187
- }, createSlots({
188
- default: withCtx(({ row }) => [
189
- unref(isSingleSelection) ? (openBlock(), createBlock(unref(ElRadio), {
190
- key: 0,
191
- modelValue: unref(selectedValue),
192
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => isRef(selectedValue) ? selectedValue.value = $event : null),
193
- value: getRowValue(row),
194
- class: normalizeClass(unref($style).radio),
195
- onClick: withModifiers(($event) => handleRadioClick(row), ["stop"])
196
- }, null, 8, ["modelValue", "value", "class", "onClick"])) : createCommentVNode("", true),
197
- unref(isMultipleSelection) ? (openBlock(), createBlock(unref(ElCheckbox), {
198
- key: 1,
199
- modelValue: row[__props.multipleCheckedKey],
200
- "onUpdate:modelValue": ($event) => row[__props.multipleCheckedKey] = $event,
201
- class: normalizeClass(unref($style).checkbox),
202
- onClick: withModifiers(($event) => handleCheckboxClick(row), ["stop"])
203
- }, null, 8, ["modelValue", "onUpdate:modelValue", "class", "onClick"])) : createCommentVNode("", true)
175
+ return openBlock(), createBlock(_component_ElTable, {
176
+ ref_key: "tableRef",
177
+ ref: tableRef,
178
+ data: __props.empty ? [] : __props.data,
179
+ stripe: "",
180
+ class: normalizeClass(unref($style).table),
181
+ size: __props.size,
182
+ "scrollbar-always-on": "",
183
+ "highlight-current-row": __props.highlightCurrent,
184
+ border: "",
185
+ "allow-drag-last-column": true,
186
+ "row-key": __props.rowKey,
187
+ "row-class-name": myRowClassName,
188
+ onHeaderDragend
189
+ }, createSlots({
190
+ empty: withCtx(() => [
191
+ renderSlot(_ctx.$slots, "empty", {}, () => [
192
+ __props.empty ? (openBlock(), createElementBlock("div", _hoisted_1, [
193
+ createVNode(_component_ElText, { type: "info" }, {
194
+ default: withCtx(() => [
195
+ createTextVNode(toDisplayString(__props.emptyText), 1)
196
+ ]),
197
+ _: 1
198
+ })
199
+ ])) : (openBlock(), createElementBlock("div", _hoisted_2))
200
+ ])
201
+ ]),
202
+ default: withCtx(() => [
203
+ __props.selection ? (openBlock(), createBlock(unref(ElTableColumn), {
204
+ key: 0,
205
+ type: "selection",
206
+ width: __props.size === "large" ? 50 : 40,
207
+ align: "center"
208
+ }, null, 8, ["width"])) : createCommentVNode("", true),
209
+ __props.customSelection ? (openBlock(), createBlock(unref(ElTableColumn), {
210
+ key: 1,
211
+ width: __props.size === "large" ? 50 : 40,
212
+ align: "center",
213
+ fixed: "left",
214
+ "class-name": unref($style).selection
215
+ }, createSlots({
216
+ default: withCtx(({ row }) => [
217
+ unref(isSingleSelection) ? (openBlock(), createBlock(unref(ElRadio), {
218
+ key: 0,
219
+ modelValue: unref(selectedValue),
220
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => isRef(selectedValue) ? selectedValue.value = $event : null),
221
+ value: getRowValue(row),
222
+ class: normalizeClass(unref($style).radio),
223
+ onClick: withModifiers(($event) => handleRadioClick(row), ["stop"])
224
+ }, null, 8, ["modelValue", "value", "class", "onClick"])) : createCommentVNode("", true),
225
+ unref(isMultipleSelection) ? (openBlock(), createBlock(unref(ElCheckbox), {
226
+ key: 1,
227
+ modelValue: row[__props.multipleCheckedKey],
228
+ "onUpdate:modelValue": ($event) => row[__props.multipleCheckedKey] = $event,
229
+ class: normalizeClass(unref($style).checkbox),
230
+ onClick: withModifiers(($event) => handleCheckboxClick(row), ["stop"])
231
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "class", "onClick"])) : createCommentVNode("", true)
232
+ ]),
233
+ _: 2
234
+ }, [
235
+ unref(isMultipleSelection) ? {
236
+ name: "header",
237
+ fn: withCtx(() => [
238
+ createVNode(unref(ElCheckbox), {
239
+ modelValue: unref(isSelectedAll),
240
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(isSelectedAll) ? isSelectedAll.value = $event : null),
241
+ indeterminate: unref(indeterminate),
242
+ class: normalizeClass(unref($style).checkbox)
243
+ }, null, 8, ["modelValue", "indeterminate", "class"])
204
244
  ]),
205
- _: 2
206
- }, [
207
- unref(isMultipleSelection) ? {
208
- name: "header",
209
- fn: withCtx(() => [
210
- createVNode(unref(ElCheckbox), {
211
- modelValue: unref(isSelectedAll),
212
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(isSelectedAll) ? isSelectedAll.value = $event : null),
213
- indeterminate: unref(indeterminate),
214
- class: normalizeClass(unref($style).checkbox)
215
- }, null, 8, ["modelValue", "indeterminate", "class"])
245
+ key: "0"
246
+ } : void 0
247
+ ]), 1032, ["width", "class-name"])) : createCommentVNode("", true),
248
+ unref(columns).length ? (openBlock(true), createElementBlock(Fragment, { key: 2 }, renderList(unref(columns), (item) => {
249
+ return openBlock(), createBlock(unref(ElTableColumn), mergeProps({
250
+ key: item.prop
251
+ }, { ref_for: true }, item, {
252
+ type: columnType(item)
253
+ }), createSlots({ _: 2 }, [
254
+ item.prop.startsWith("expand") ? {
255
+ name: "default",
256
+ fn: withCtx(({ row, $index }) => [
257
+ renderSlot(_ctx.$slots, item.prop, {
258
+ row,
259
+ index: $index
260
+ })
216
261
  ]),
217
262
  key: "0"
218
- } : void 0
219
- ]), 1032, ["width", "class-name"])) : createCommentVNode("", true),
220
- unref(columns).length ? (openBlock(true), createElementBlock(Fragment, { key: 2 }, renderList(unref(columns), (item) => {
221
- return openBlock(), createBlock(unref(ElTableColumn), mergeProps({
222
- key: item.prop
223
- }, { ref_for: true }, item, {
224
- type: columnType(item)
225
- }), createSlots({ _: 2 }, [
226
- item.prop.startsWith("expand") ? {
227
- name: "default",
228
- fn: withCtx(({ row, $index }) => [
229
- renderSlot(_ctx.$slots, item.prop, {
230
- row,
231
- index: $index
232
- })
233
- ]),
234
- key: "0"
235
- } : item.prop === "index" ? {
236
- name: "default",
237
- fn: withCtx(({ $index }) => [
238
- createTextVNode(toDisplayString(__props.startIndex + $index + 1), 1)
263
+ } : item.prop === "index" ? {
264
+ name: "default",
265
+ fn: withCtx(({ $index }) => [
266
+ createTextVNode(toDisplayString(__props.startIndex + $index + 1), 1)
267
+ ]),
268
+ key: "1"
269
+ } : item.prop === "operation" ? {
270
+ name: "default",
271
+ fn: withCtx(({ row, $index }) => [
272
+ renderSlot(_ctx.$slots, "operation", {
273
+ row,
274
+ index: $index
275
+ })
276
+ ]),
277
+ key: "2"
278
+ } : {
279
+ name: "default",
280
+ fn: withCtx(({ row, $index }) => [
281
+ (openBlock(), createBlock(resolveDynamicComponent(__props.columnRender(item, row, emits, $index))))
282
+ ]),
283
+ key: "3"
284
+ }
285
+ ]), 1040, ["type"]);
286
+ }), 128)) : createCommentVNode("", true),
287
+ renderSlot(_ctx.$slots, "default")
288
+ ]),
289
+ _: 2
290
+ }, [
291
+ _ctx.$slots.append || unref(scrollLoadEnabled) || __props.loading && __props.scrollLoad || __props.scrollLoadDisabled && __props.scrollLoad ? {
292
+ name: "append",
293
+ fn: withCtx(() => [
294
+ _ctx.$slots.append ? renderSlot(_ctx.$slots, "append", { key: 0 }) : createCommentVNode("", true),
295
+ unref(scrollLoadEnabled) ? (openBlock(), createElementBlock("div", {
296
+ key: 1,
297
+ ref_key: "sentinelRef",
298
+ ref: sentinelRef,
299
+ class: normalizeClass(unref($style).sentinel)
300
+ }, null, 2)) : createCommentVNode("", true),
301
+ __props.loading && __props.scrollLoad ? renderSlot(_ctx.$slots, "loading", { key: 2 }, () => [
302
+ createElementVNode("div", {
303
+ class: normalizeClass(unref($style)["status-text"])
304
+ }, [
305
+ createVNode(_component_el_icon, { class: "is-loading" }, {
306
+ default: withCtx(() => [
307
+ createVNode(unref(Loading))
239
308
  ]),
240
- key: "1"
241
- } : item.prop === "operation" ? {
242
- name: "default",
243
- fn: withCtx(({ row, $index }) => [
244
- renderSlot(_ctx.$slots, "operation", {
245
- row,
246
- index: $index
247
- })
309
+ _: 1
310
+ }),
311
+ createVNode(_component_ElText, { type: "info" }, {
312
+ default: withCtx(() => [
313
+ createTextVNode(toDisplayString(__props.loadingText), 1)
248
314
  ]),
249
- key: "2"
250
- } : {
251
- name: "default",
252
- fn: withCtx(({ row, $index }) => [
253
- (openBlock(), createBlock(resolveDynamicComponent(__props.columnRender(item, row, emits, $index))))
315
+ _: 1
316
+ })
317
+ ], 2)
318
+ ]) : __props.scrollLoadDisabled && __props.scrollLoad ? renderSlot(_ctx.$slots, "no-more", { key: 3 }, () => [
319
+ createElementVNode("div", {
320
+ class: normalizeClass(unref($style)["status-text"])
321
+ }, [
322
+ createVNode(_component_ElText, { type: "info" }, {
323
+ default: withCtx(() => [
324
+ createTextVNode(toDisplayString(__props.noMoreText), 1)
254
325
  ]),
255
- key: "3"
256
- }
257
- ]), 1040, ["type"]);
258
- }), 128)) : createCommentVNode("", true),
259
- renderSlot(_ctx.$slots, "default")
326
+ _: 1
327
+ })
328
+ ], 2)
329
+ ]) : createCommentVNode("", true)
260
330
  ]),
261
- _: 2
262
- }, [
263
- _ctx.$slots.append ? {
264
- name: "append",
265
- fn: withCtx(() => [
266
- renderSlot(_ctx.$slots, "append")
267
- ]),
268
- key: "0"
269
- } : void 0
270
- ]), 1040, ["data", "class", "size", "highlight-current-row", "row-key"])
271
- ], 2)), [
272
- [_directive_loading, __props.loading]
273
- ]);
331
+ key: "0"
332
+ } : void 0
333
+ ]), 1032, ["data", "class", "size", "highlight-current-row", "row-key"]);
274
334
  };
275
335
  }
276
336
  });
277
337
 
278
- /* unplugin-vue-components disabled */const table = "_table_1dvo4_7";
279
- const selection = "_selection_1dvo4_27";
280
- const radio = "_radio_1dvo4_32";
281
- const checkbox = "_checkbox_1dvo4_39";
338
+ /* unplugin-vue-components disabled */const table = "_table_1bdji_7";
339
+ const selection = "_selection_1bdji_27";
340
+ const radio = "_radio_1bdji_32";
341
+ const checkbox = "_checkbox_1bdji_39";
342
+ const sentinel = "_sentinel_1bdji_55";
282
343
  const style0 = {
283
- "explorer-table": "_explorer-table_1dvo4_1",
344
+ "explorer-table": "_explorer-table_1bdji_1",
284
345
  table: table,
285
346
  selection: selection,
286
347
  radio: radio,
287
348
  checkbox: checkbox,
288
- "selected-row": "_selected-row_1dvo4_43"
349
+ "selected-row": "_selected-row_1bdji_43",
350
+ "status-text": "_status-text_1bdji_47",
351
+ sentinel: sentinel
289
352
  };
290
353
 
291
354
  const cssModules = {
@@ -12,6 +12,8 @@ declare function __VLS_template(): {
12
12
  }): any;
13
13
  default?(_: {}): any;
14
14
  append?(_: {}): any;
15
+ loading?(_: {}): any;
16
+ 'no-more'?(_: {}): any;
15
17
  empty?(_: {}): any;
16
18
  };
17
19
  refs: {
@@ -1485,8 +1487,9 @@ declare function __VLS_template(): {
1485
1487
  nativeScrollbar: boolean;
1486
1488
  preserveExpandedContent: boolean;
1487
1489
  }> | null;
1490
+ sentinelRef: HTMLDivElement;
1488
1491
  };
1489
- rootEl: HTMLDivElement;
1492
+ rootEl: any;
1490
1493
  };
1491
1494
  type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
1492
1495
  declare const __VLS_component: import('vue').DefineComponent<IExplorerTableProps, {
@@ -2965,24 +2968,31 @@ declare const __VLS_component: import('vue').DefineComponent<IExplorerTableProps
2965
2968
  preserveExpandedContent: boolean;
2966
2969
  }> | null>>;
2967
2970
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
2971
+ loadMore: () => any;
2968
2972
  columnEvent: (column: IColumnConfig, row: Record<string, any>, value: Record<string, any>) => any;
2969
- singleSelectionChange: (row: Record<string, any>) => any;
2973
+ singleSelectionChange: (row: Record<string, any>, value: string | number) => any;
2970
2974
  multipleSelectionChange: (row: Record<string, any>, values: (string | number)[]) => any;
2971
2975
  selectionChange: (rows: Record<string, any>[]) => any;
2972
2976
  selectAll: (checked: boolean, values: (string | number)[]) => any;
2973
2977
  }, string, import('vue').PublicProps, Readonly<IExplorerTableProps> & Readonly<{
2978
+ onLoadMore?: (() => any) | undefined;
2974
2979
  onColumnEvent?: ((column: IColumnConfig, row: Record<string, any>, value: Record<string, any>) => any) | undefined;
2975
- onSingleSelectionChange?: ((row: Record<string, any>) => any) | undefined;
2980
+ onSingleSelectionChange?: ((row: Record<string, any>, value: string | number) => any) | undefined;
2976
2981
  onMultipleSelectionChange?: ((row: Record<string, any>, values: (string | number)[]) => any) | undefined;
2977
2982
  onSelectionChange?: ((rows: Record<string, any>[]) => any) | undefined;
2978
2983
  onSelectAll?: ((checked: boolean, values: (string | number)[]) => any) | undefined;
2979
2984
  }>, {
2980
2985
  loading: boolean;
2986
+ scrollLoad: boolean;
2987
+ scrollLoadDisabled: boolean;
2988
+ scrollLoadRootMargin: string;
2989
+ scrollLoadThreshold: number;
2981
2990
  loadingText: string;
2991
+ noMoreText: string;
2992
+ empty: boolean;
2982
2993
  emptyText: string;
2983
2994
  highlightCurrent: boolean;
2984
2995
  rowKey: string | ((row: any) => string);
2985
- empty: boolean;
2986
2996
  multipleCheckedKey: string;
2987
2997
  columnRender: (column: IColumnConfig, row: Record<string, any>, emits: IExplorerTableEmits, index: number) => VNode;
2988
2998
  columnFilter: (column: IColumnConfig) => boolean;
@@ -4458,7 +4468,8 @@ declare const __VLS_component: import('vue').DefineComponent<IExplorerTableProps
4458
4468
  nativeScrollbar: boolean;
4459
4469
  preserveExpandedContent: boolean;
4460
4470
  }> | null;
4461
- }, HTMLDivElement>;
4471
+ sentinelRef: HTMLDivElement;
4472
+ }, any>;
4462
4473
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
4463
4474
  export default _default;
4464
4475
  type __VLS_WithTemplateSlots<T, S> = T & {
@@ -1,41 +1,51 @@
1
1
  /* source: src/components/explorer-table/explorer-table.vue */
2
- ._explorer-table_1dvo4_1 {
2
+ ._explorer-table_1bdji_1 {
3
3
  display: flex;
4
4
  flex-direction: column;
5
5
  flex-grow: 1;
6
6
  }
7
- div._table_1dvo4_7 {
7
+ div._table_1bdji_7 {
8
8
  flex-grow: 1;
9
9
  height: 100px;
10
10
  --el-table-header-bg-color: var(--el-color-info-light-9);
11
11
  --el-table-row-hover-bg-color: var(--vc-highlight-bg-color, var(--el-fill-color-light));
12
12
  }
13
- div._table_1dvo4_7 .el-scrollbar__view {
13
+ div._table_1bdji_7 .el-scrollbar__view {
14
14
  min-height: 100%;
15
15
  height: 100px;
16
16
  }
17
- div._table_1dvo4_7 .el-table__header-wrapper .el-table__cell:hover {
17
+ div._table_1bdji_7 .el-table__header-wrapper .el-table__cell:hover {
18
18
  border-right-color: var(--el-color-primary-light-5) !important;
19
19
  }
20
- div._table_1dvo4_7 .el-table__column-resize-proxy {
20
+ div._table_1bdji_7 .el-table__column-resize-proxy {
21
21
  border-color: var(--el-color-primary);
22
22
  }
23
- div._table_1dvo4_7 .el-table__empty-block {
24
- display: var(--dc3c53f8);
23
+ div._table_1bdji_7 .el-table__empty-block {
24
+ display: var(--v674feb49);
25
25
  }
26
- ._selection_1dvo4_27 .cell {
26
+ ._selection_1bdji_27 .cell {
27
27
  display: flex;
28
28
  align-items: center;
29
29
  }
30
- ._radio_1dvo4_32 {
30
+ ._radio_1bdji_32 {
31
31
  height: unset;
32
32
  }
33
- ._radio_1dvo4_32 .el-radio__label {
33
+ ._radio_1bdji_32 .el-radio__label {
34
34
  display: none;
35
35
  }
36
- ._checkbox_1dvo4_39 {
37
- height: unset;
36
+ ._checkbox_1bdji_39 {
37
+ height: unset !important;
38
38
  }
39
- ._selected-row_1dvo4_43 td.el-table__cell {
39
+ ._selected-row_1bdji_43 td.el-table__cell {
40
40
  background-color: var(--vc-highlight-bg-color, var(--el-fill-color-light)) !important;
41
+ }
42
+ ._status-text_1bdji_47 {
43
+ padding: 12px;
44
+ display: flex;
45
+ align-items: center;
46
+ justify-content: flex-start;
47
+ column-gap: 4px;
48
+ }
49
+ ._sentinel_1bdji_55 {
50
+ height: 0;
41
51
  }
@@ -14,6 +14,16 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
14
14
  readonly flex?: boolean | undefined;
15
15
  readonly fillHeight?: boolean | undefined;
16
16
  readonly viewMargin?: string | undefined;
17
+ readonly scrollLoad?: boolean | undefined;
18
+ readonly scrollLoadDisabled?: boolean | undefined;
19
+ readonly scrollLoadRootMargin?: string | undefined;
20
+ readonly scrollLoadThreshold?: number | undefined;
21
+ readonly loading?: boolean | undefined;
22
+ readonly loadingText?: string | undefined;
23
+ readonly noMoreText?: string | undefined;
24
+ readonly empty?: boolean | undefined;
25
+ readonly emptyText?: string | undefined;
26
+ readonly onLoadMore?: (() => any) | undefined;
17
27
  } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
18
28
  $attrs: {
19
29
  [x: string]: unknown;
@@ -216,6 +226,7 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
216
226
  default?: (props: {}) => any;
217
227
  };
218
228
  }) | null;
229
+ sentinelRef: HTMLDivElement;
219
230
  };
220
231
  $slots: Readonly<{
221
232
  [name: string]: globalThis.Slot | undefined;
@@ -223,9 +234,11 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
223
234
  $root: ComponentPublicInstance | null;
224
235
  $parent: ComponentPublicInstance | null;
225
236
  $host: Element | null;
226
- $emit: (event: string, ...args: any[]) => void;
237
+ $emit: (event: "loadMore") => void;
227
238
  $el: any;
228
- $options: import('vue').ComponentOptionsBase<Readonly<import('../../scrollbar/scrollbar').IScrollbarProps> & Readonly<{}>, {
239
+ $options: import('vue').ComponentOptionsBase<Readonly<import('../../scrollbar/scrollbar').IScrollbarProps> & Readonly<{
240
+ onLoadMore?: (() => any) | undefined;
241
+ }>, {
229
242
  scrollbarRef: Readonly<globalThis.ShallowRef<({
230
243
  $: import('vue').ComponentInternalInstance;
231
244
  $data: {};
@@ -421,10 +434,21 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
421
434
  default?: (props: {}) => any;
422
435
  };
423
436
  }) | null>>;
424
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
437
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
438
+ loadMore: () => any;
439
+ }, string, {
440
+ loading: boolean;
425
441
  flex: boolean;
426
442
  fillHeight: boolean;
427
443
  viewMargin: string;
444
+ scrollLoad: boolean;
445
+ scrollLoadDisabled: boolean;
446
+ scrollLoadRootMargin: string;
447
+ scrollLoadThreshold: number;
448
+ loadingText: string;
449
+ noMoreText: string;
450
+ empty: boolean;
451
+ emptyText: string;
428
452
  }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
429
453
  beforeCreate?: (() => void) | (() => void)[];
430
454
  created?: (() => void) | (() => void)[];
@@ -446,10 +470,21 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
446
470
  $nextTick: typeof import('vue').nextTick;
447
471
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
448
472
  } & Readonly<{
473
+ loading: boolean;
449
474
  flex: boolean;
450
475
  fillHeight: boolean;
451
476
  viewMargin: string;
452
- }> & Omit<Readonly<import('../../scrollbar/scrollbar').IScrollbarProps> & Readonly<{}>, ("flex" | "fillHeight" | "viewMargin") | "scrollbarRef"> & import('vue').ShallowUnwrapRef<{
477
+ scrollLoad: boolean;
478
+ scrollLoadDisabled: boolean;
479
+ scrollLoadRootMargin: string;
480
+ scrollLoadThreshold: number;
481
+ loadingText: string;
482
+ noMoreText: string;
483
+ empty: boolean;
484
+ emptyText: string;
485
+ }> & Omit<Readonly<import('../../scrollbar/scrollbar').IScrollbarProps> & Readonly<{
486
+ onLoadMore?: (() => any) | undefined;
487
+ }>, ("loading" | "flex" | "fillHeight" | "viewMargin" | "scrollLoad" | "scrollLoadDisabled" | "scrollLoadRootMargin" | "scrollLoadThreshold" | "loadingText" | "noMoreText" | "empty" | "emptyText") | "scrollbarRef"> & import('vue').ShallowUnwrapRef<{
453
488
  scrollbarRef: Readonly<globalThis.ShallowRef<({
454
489
  $: import('vue').ComponentInternalInstance;
455
490
  $data: {};
@@ -648,6 +683,9 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
648
683
  }> & {} & import('vue').ComponentCustomProperties & {} & {
649
684
  $slots: {
650
685
  default?(_: {}): any;
686
+ empty?(_: {}): any;
687
+ loading?(_: {}): any;
688
+ 'no-more'?(_: {}): any;
651
689
  };
652
690
  }) | null;
653
691
  }, HTMLDivElement>;