@fmdeui/fmui 1.0.161 → 1.0.162
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.
- package/es/components/select-table/index.d.ts +50 -5
- package/es/components/select-table/src/index.vue.d.ts +21 -3
- package/es/components/select-table/src/type.d.ts +4 -0
- package/es/packages/components/select-table/src/index2.vue.mjs +114 -25
- package/index.js +112 -25
- package/index.min.js +7 -7
- package/index.min.mjs +7 -7
- package/index.mjs +113 -26
- package/lib/components/select-table/index.d.ts +50 -5
- package/lib/components/select-table/src/index.vue.d.ts +21 -3
- package/lib/components/select-table/src/type.d.ts +4 -0
- package/lib/packages/components/select-table/src/index2.vue.js +113 -24
- package/locale/en.js +1 -1
- package/locale/en.min.js +1 -1
- package/locale/en.min.mjs +1 -1
- package/locale/en.mjs +1 -1
- package/locale/zh-cn.js +1 -1
- package/locale/zh-cn.min.js +1 -1
- package/locale/zh-cn.min.mjs +1 -1
- package/locale/zh-cn.mjs +1 -1
- package/package.json +1 -1
- /package/{lib → es}/component.css +0 -0
- /package/{es/version.css → lib/make-installer.css} +0 -0
|
@@ -3,8 +3,13 @@ import { FSelectTableProps } from './src/type';
|
|
|
3
3
|
export * from './src/type';
|
|
4
4
|
export * from './src/ClickOutside';
|
|
5
5
|
export declare const FSelectTable: {
|
|
6
|
-
new (...args: any[]): CreateComponentPublicInstanceWithMixins<Readonly<
|
|
6
|
+
new (...args: any[]): CreateComponentPublicInstanceWithMixins<Readonly<{
|
|
7
|
+
id?: any;
|
|
8
|
+
name?: any;
|
|
9
|
+
} & FSelectTableProps> & Readonly<{
|
|
7
10
|
"onPage-change"?: ((val: any) => any) | undefined;
|
|
11
|
+
"onUpdate:id"?: ((value: any) => any) | undefined;
|
|
12
|
+
"onUpdate:name"?: ((value: any) => any) | undefined;
|
|
8
13
|
onSelectionChange?: ((val: any[], ids: any[]) => any) | undefined;
|
|
9
14
|
onRadioChange?: ((row: any, value: any) => any) | undefined;
|
|
10
15
|
"onUpdate:inputValue"?: ((val: string) => any) | undefined;
|
|
@@ -72,6 +77,10 @@ export declare const FSelectTable: {
|
|
|
72
77
|
readonly multipleDisableDelete: boolean;
|
|
73
78
|
readonly tableLoading: boolean;
|
|
74
79
|
readonly loadingTxt: string;
|
|
80
|
+
readonly apiService: string | undefined;
|
|
81
|
+
readonly apiAction: string;
|
|
82
|
+
readonly queryParams: Record<string, any>;
|
|
83
|
+
readonly responseFormatter: Function;
|
|
75
84
|
} & {
|
|
76
85
|
readonly value: boolean;
|
|
77
86
|
readonly remote: boolean;
|
|
@@ -108,7 +117,10 @@ export declare const FSelectTable: {
|
|
|
108
117
|
fQueryConditionRef: Ref<any, any>;
|
|
109
118
|
selectRef: Ref<any, any>;
|
|
110
119
|
selectTable: Ref<any, any>;
|
|
111
|
-
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
120
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
121
|
+
"update:id": (value: any) => any;
|
|
122
|
+
"update:name": (value: any) => any;
|
|
123
|
+
} & {
|
|
112
124
|
"page-change": (val: any) => any;
|
|
113
125
|
selectionChange: (val: any[], ids: any[]) => any;
|
|
114
126
|
radioChange: (row: any, value: any) => any;
|
|
@@ -133,6 +145,8 @@ export declare const FSelectTable: {
|
|
|
133
145
|
filterMethod: Function;
|
|
134
146
|
modelValue: any;
|
|
135
147
|
inputWidth: number;
|
|
148
|
+
apiService: string;
|
|
149
|
+
apiAction: string;
|
|
136
150
|
filterable: boolean;
|
|
137
151
|
isShowPagination: boolean;
|
|
138
152
|
useVirtual: boolean;
|
|
@@ -171,6 +185,8 @@ export declare const FSelectTable: {
|
|
|
171
185
|
multipleDisableDelete: boolean;
|
|
172
186
|
tableLoading: boolean;
|
|
173
187
|
loadingTxt: string;
|
|
188
|
+
queryParams: Record<string, any>;
|
|
189
|
+
responseFormatter: Function;
|
|
174
190
|
}, false, {}, {}, GlobalComponents, GlobalDirectives, string, any, any, ComponentProvideOptions, {
|
|
175
191
|
P: {};
|
|
176
192
|
B: {};
|
|
@@ -178,8 +194,13 @@ export declare const FSelectTable: {
|
|
|
178
194
|
C: {};
|
|
179
195
|
M: {};
|
|
180
196
|
Defaults: {};
|
|
181
|
-
}, Readonly<
|
|
197
|
+
}, Readonly<{
|
|
198
|
+
id?: any;
|
|
199
|
+
name?: any;
|
|
200
|
+
} & FSelectTableProps> & Readonly<{
|
|
182
201
|
"onPage-change"?: ((val: any) => any) | undefined;
|
|
202
|
+
"onUpdate:id"?: ((value: any) => any) | undefined;
|
|
203
|
+
"onUpdate:name"?: ((value: any) => any) | undefined;
|
|
183
204
|
onSelectionChange?: ((val: any[], ids: any[]) => any) | undefined;
|
|
184
205
|
onRadioChange?: ((row: any, value: any) => any) | undefined;
|
|
185
206
|
"onUpdate:inputValue"?: ((val: string) => any) | undefined;
|
|
@@ -247,6 +268,10 @@ export declare const FSelectTable: {
|
|
|
247
268
|
readonly multipleDisableDelete: boolean;
|
|
248
269
|
readonly tableLoading: boolean;
|
|
249
270
|
readonly loadingTxt: string;
|
|
271
|
+
readonly apiService: string | undefined;
|
|
272
|
+
readonly apiAction: string;
|
|
273
|
+
readonly queryParams: Record<string, any>;
|
|
274
|
+
readonly responseFormatter: Function;
|
|
250
275
|
} & {
|
|
251
276
|
readonly value: boolean;
|
|
252
277
|
readonly remote: boolean;
|
|
@@ -299,6 +324,8 @@ export declare const FSelectTable: {
|
|
|
299
324
|
filterMethod: Function;
|
|
300
325
|
modelValue: any;
|
|
301
326
|
inputWidth: number;
|
|
327
|
+
apiService: string;
|
|
328
|
+
apiAction: string;
|
|
302
329
|
filterable: boolean;
|
|
303
330
|
isShowPagination: boolean;
|
|
304
331
|
useVirtual: boolean;
|
|
@@ -337,12 +364,19 @@ export declare const FSelectTable: {
|
|
|
337
364
|
multipleDisableDelete: boolean;
|
|
338
365
|
tableLoading: boolean;
|
|
339
366
|
loadingTxt: string;
|
|
367
|
+
queryParams: Record<string, any>;
|
|
368
|
+
responseFormatter: Function;
|
|
340
369
|
}>;
|
|
341
370
|
__isFragment?: never;
|
|
342
371
|
__isTeleport?: never;
|
|
343
372
|
__isSuspense?: never;
|
|
344
|
-
} & ComponentOptionsBase<Readonly<
|
|
373
|
+
} & ComponentOptionsBase<Readonly<{
|
|
374
|
+
id?: any;
|
|
375
|
+
name?: any;
|
|
376
|
+
} & FSelectTableProps> & Readonly<{
|
|
345
377
|
"onPage-change"?: ((val: any) => any) | undefined;
|
|
378
|
+
"onUpdate:id"?: ((value: any) => any) | undefined;
|
|
379
|
+
"onUpdate:name"?: ((value: any) => any) | undefined;
|
|
346
380
|
onSelectionChange?: ((val: any[], ids: any[]) => any) | undefined;
|
|
347
381
|
onRadioChange?: ((row: any, value: any) => any) | undefined;
|
|
348
382
|
"onUpdate:inputValue"?: ((val: string) => any) | undefined;
|
|
@@ -410,6 +444,10 @@ export declare const FSelectTable: {
|
|
|
410
444
|
readonly multipleDisableDelete: boolean;
|
|
411
445
|
readonly tableLoading: boolean;
|
|
412
446
|
readonly loadingTxt: string;
|
|
447
|
+
readonly apiService: string | undefined;
|
|
448
|
+
readonly apiAction: string;
|
|
449
|
+
readonly queryParams: Record<string, any>;
|
|
450
|
+
readonly responseFormatter: Function;
|
|
413
451
|
} & {
|
|
414
452
|
readonly value: boolean;
|
|
415
453
|
readonly remote: boolean;
|
|
@@ -446,7 +484,10 @@ export declare const FSelectTable: {
|
|
|
446
484
|
fQueryConditionRef: Ref<any, any>;
|
|
447
485
|
selectRef: Ref<any, any>;
|
|
448
486
|
selectTable: Ref<any, any>;
|
|
449
|
-
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
487
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
488
|
+
"update:id": (value: any) => any;
|
|
489
|
+
"update:name": (value: any) => any;
|
|
490
|
+
} & {
|
|
450
491
|
"page-change": (val: any) => any;
|
|
451
492
|
selectionChange: (val: any[], ids: any[]) => any;
|
|
452
493
|
radioChange: (row: any, value: any) => any;
|
|
@@ -471,6 +512,8 @@ export declare const FSelectTable: {
|
|
|
471
512
|
filterMethod: Function;
|
|
472
513
|
modelValue: any;
|
|
473
514
|
inputWidth: number;
|
|
515
|
+
apiService: string;
|
|
516
|
+
apiAction: string;
|
|
474
517
|
filterable: boolean;
|
|
475
518
|
isShowPagination: boolean;
|
|
476
519
|
useVirtual: boolean;
|
|
@@ -509,6 +552,8 @@ export declare const FSelectTable: {
|
|
|
509
552
|
multipleDisableDelete: boolean;
|
|
510
553
|
tableLoading: boolean;
|
|
511
554
|
loadingTxt: string;
|
|
555
|
+
queryParams: Record<string, any>;
|
|
556
|
+
responseFormatter: Function;
|
|
512
557
|
}, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & VNodeProps & AllowedComponentProps & ComponentCustomProps & (new () => {
|
|
513
558
|
$slots: any;
|
|
514
559
|
});
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { FSelectTableProps } from './type';
|
|
2
2
|
import { DefineComponent, Ref, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
3
|
+
type __VLS_Props = FSelectTableProps;
|
|
3
4
|
export type Emits = {
|
|
4
5
|
(event: "page-change", val: any): void;
|
|
5
6
|
(event: "selectionChange", val: any[], ids: any[]): void;
|
|
@@ -10,9 +11,13 @@ export type Emits = {
|
|
|
10
11
|
(event: "input-clear"): void;
|
|
11
12
|
(event: "input-click"): void;
|
|
12
13
|
};
|
|
14
|
+
type __VLS_PublicProps = {
|
|
15
|
+
'id'?: any;
|
|
16
|
+
'name'?: any;
|
|
17
|
+
} & __VLS_Props;
|
|
13
18
|
declare function __VLS_template(): any;
|
|
14
19
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
15
|
-
declare const __VLS_component: DefineComponent<
|
|
20
|
+
declare const __VLS_component: DefineComponent<__VLS_PublicProps, {
|
|
16
21
|
focus: () => void;
|
|
17
22
|
blur: () => void;
|
|
18
23
|
clear: () => void;
|
|
@@ -72,6 +77,10 @@ declare const __VLS_component: DefineComponent<FSelectTableProps, {
|
|
|
72
77
|
readonly multipleDisableDelete: boolean;
|
|
73
78
|
readonly tableLoading: boolean;
|
|
74
79
|
readonly loadingTxt: string;
|
|
80
|
+
readonly apiService: string | undefined;
|
|
81
|
+
readonly apiAction: string;
|
|
82
|
+
readonly queryParams: Record<string, any>;
|
|
83
|
+
readonly responseFormatter: Function;
|
|
75
84
|
} & {
|
|
76
85
|
readonly value: boolean;
|
|
77
86
|
readonly remote: boolean;
|
|
@@ -108,7 +117,10 @@ declare const __VLS_component: DefineComponent<FSelectTableProps, {
|
|
|
108
117
|
fQueryConditionRef: Ref<any, any>;
|
|
109
118
|
selectRef: Ref<any, any>;
|
|
110
119
|
selectTable: Ref<any, any>;
|
|
111
|
-
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
120
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
121
|
+
"update:id": (value: any) => any;
|
|
122
|
+
"update:name": (value: any) => any;
|
|
123
|
+
} & {
|
|
112
124
|
"page-change": (val: any) => any;
|
|
113
125
|
selectionChange: (val: any[], ids: any[]) => any;
|
|
114
126
|
radioChange: (row: any, value: any) => any;
|
|
@@ -117,8 +129,10 @@ declare const __VLS_component: DefineComponent<FSelectTableProps, {
|
|
|
117
129
|
"input-blur": () => any;
|
|
118
130
|
"input-clear": () => any;
|
|
119
131
|
"input-click": () => any;
|
|
120
|
-
}, string, PublicProps, Readonly<
|
|
132
|
+
}, string, PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
121
133
|
"onPage-change"?: ((val: any) => any) | undefined;
|
|
134
|
+
"onUpdate:id"?: ((value: any) => any) | undefined;
|
|
135
|
+
"onUpdate:name"?: ((value: any) => any) | undefined;
|
|
122
136
|
onSelectionChange?: ((val: any[], ids: any[]) => any) | undefined;
|
|
123
137
|
onRadioChange?: ((row: any, value: any) => any) | undefined;
|
|
124
138
|
"onUpdate:inputValue"?: ((val: string) => any) | undefined;
|
|
@@ -142,6 +156,8 @@ declare const __VLS_component: DefineComponent<FSelectTableProps, {
|
|
|
142
156
|
filterMethod: Function;
|
|
143
157
|
modelValue: any;
|
|
144
158
|
inputWidth: number;
|
|
159
|
+
apiService: string;
|
|
160
|
+
apiAction: string;
|
|
145
161
|
filterable: boolean;
|
|
146
162
|
isShowPagination: boolean;
|
|
147
163
|
useVirtual: boolean;
|
|
@@ -180,6 +196,8 @@ declare const __VLS_component: DefineComponent<FSelectTableProps, {
|
|
|
180
196
|
multipleDisableDelete: boolean;
|
|
181
197
|
tableLoading: boolean;
|
|
182
198
|
loadingTxt: string;
|
|
199
|
+
queryParams: Record<string, any>;
|
|
200
|
+
responseFormatter: Function;
|
|
183
201
|
}, {}, {}, {}, string, ComponentProvideOptions, false, any, any>;
|
|
184
202
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
185
203
|
export default _default;
|
|
@@ -53,4 +53,8 @@ export interface FSelectTableProps {
|
|
|
53
53
|
multipleDisableDelete?: boolean;
|
|
54
54
|
tableLoading?: boolean;
|
|
55
55
|
loadingTxt?: string;
|
|
56
|
+
apiService?: string | undefined;
|
|
57
|
+
apiAction?: string | undefined;
|
|
58
|
+
queryParams?: Record<string, any>;
|
|
59
|
+
responseFormatter?: Function;
|
|
56
60
|
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import { defineComponent, useSlots, ref,
|
|
1
|
+
import { defineComponent, useModel, useSlots, ref, reactive, watch, computed, nextTick, onMounted, onBeforeUnmount, onUpdated, useAttrs, resolveComponent, resolveDirective, openBlock, createBlock, mergeProps, isRef, unref, createSlots, renderList, withCtx, renderSlot, normalizeProps, guardReactiveProps, withDirectives, createElementVNode, normalizeStyle, createElementBlock, createVNode, createTextVNode, toDisplayString, createCommentVNode, withModifiers, Fragment, mergeModels } from 'vue';
|
|
2
2
|
import '../../query-condition/src/index.vue.mjs';
|
|
3
3
|
import './renderCol.vue.mjs';
|
|
4
4
|
import { ElMessage } from 'element-plus';
|
|
5
5
|
import ClickOutside from './ClickOutside.mjs';
|
|
6
6
|
import { useVirtualized } from './useVirtualized.mjs';
|
|
7
|
+
import '../../../api/index.mjs';
|
|
7
8
|
import '../../../hooks/index.mjs';
|
|
8
9
|
import { useLocale } from '../../../hooks/useLocale.mjs';
|
|
10
|
+
import { useBaseApi } from '../../../api/base/index.mjs';
|
|
9
11
|
import _sfc_main$1 from '../../query-condition/src/index2.vue.mjs';
|
|
10
12
|
import _sfc_main$2 from './renderCol2.vue.mjs';
|
|
11
13
|
|
|
@@ -24,7 +26,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
24
26
|
name: "FSelectTable"
|
|
25
27
|
},
|
|
26
28
|
__name: "index",
|
|
27
|
-
props: {
|
|
29
|
+
props: /* @__PURE__ */ mergeModels({
|
|
28
30
|
modelValue: { default: void 0 },
|
|
29
31
|
inputValue: { default: void 0 },
|
|
30
32
|
defaultSelectVal: { default: () => [] },
|
|
@@ -77,9 +79,21 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
77
79
|
isExpanded: { type: Boolean, default: false },
|
|
78
80
|
multipleDisableDelete: { type: Boolean, default: true },
|
|
79
81
|
tableLoading: { type: Boolean, default: false },
|
|
80
|
-
loadingTxt: { default: "" }
|
|
81
|
-
|
|
82
|
-
|
|
82
|
+
loadingTxt: { default: "" },
|
|
83
|
+
apiService: { default: void 0 },
|
|
84
|
+
apiAction: { default: "" },
|
|
85
|
+
queryParams: { default: () => ({}) },
|
|
86
|
+
responseFormatter: { type: Function, default: (res) => ({
|
|
87
|
+
data: res.result.items || [],
|
|
88
|
+
total: res.result.total || 0
|
|
89
|
+
}) }
|
|
90
|
+
}, {
|
|
91
|
+
"id": { default: 0, required: false },
|
|
92
|
+
"idModifiers": {},
|
|
93
|
+
"name": { default: "", required: false },
|
|
94
|
+
"nameModifiers": {}
|
|
95
|
+
}),
|
|
96
|
+
emits: /* @__PURE__ */ mergeModels(["page-change", "selectionChange", "radioChange", "update:inputValue", "input-focus", "input-blur", "input-clear", "input-click"], ["update:id", "update:name"]),
|
|
83
97
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
84
98
|
const { t } = useLocale();
|
|
85
99
|
const {
|
|
@@ -90,6 +104,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
90
104
|
saveDATA,
|
|
91
105
|
getItemHeightFromCache
|
|
92
106
|
} = useVirtualized();
|
|
107
|
+
const modeValueId = useModel(__props, "id");
|
|
108
|
+
const modeValueName = useModel(__props, "name");
|
|
93
109
|
const props = __props;
|
|
94
110
|
const vClickOutside = ClickOutside;
|
|
95
111
|
const emits = __emit;
|
|
@@ -101,8 +117,24 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
101
117
|
const isVisible = ref(false);
|
|
102
118
|
const radioVal = ref("");
|
|
103
119
|
const isShowFirstRadio = ref(props.isShowFirstColumn);
|
|
104
|
-
const selectDefaultLabel = ref(
|
|
120
|
+
const selectDefaultLabel = ref(modeValueName.value);
|
|
105
121
|
const scrollTopNum = ref(0);
|
|
122
|
+
const pagination = reactive({
|
|
123
|
+
currentPage: props.table.currentPage,
|
|
124
|
+
pageSize: props.table.pageSize,
|
|
125
|
+
total: props.table.total
|
|
126
|
+
});
|
|
127
|
+
watch(
|
|
128
|
+
() => props.table,
|
|
129
|
+
(newVal) => {
|
|
130
|
+
if (!props.apiService) {
|
|
131
|
+
pagination.currentPage = newVal.currentPage;
|
|
132
|
+
pagination.pageSize = newVal.pageSize;
|
|
133
|
+
pagination.total = newVal.total;
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
{ deep: true }
|
|
137
|
+
);
|
|
106
138
|
let selectInputVal = computed({
|
|
107
139
|
get() {
|
|
108
140
|
return props.inputValue;
|
|
@@ -193,20 +225,55 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
193
225
|
);
|
|
194
226
|
onMounted(() => {
|
|
195
227
|
var _a;
|
|
196
|
-
if (
|
|
197
|
-
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
228
|
+
if (props.apiService) {
|
|
229
|
+
fetchTableData();
|
|
230
|
+
} else {
|
|
231
|
+
if (state.defaultSelectValue && state.defaultSelectValue.length > 0 && isDefaultSelectVal.value) {
|
|
232
|
+
defaultSelect(state.defaultSelectValue);
|
|
233
|
+
}
|
|
234
|
+
if (props.selfExpanded) {
|
|
235
|
+
selectRef.value.expanded = true;
|
|
236
|
+
}
|
|
237
|
+
if (props.useVirtual) {
|
|
238
|
+
saveDATA.value = props.table.data;
|
|
239
|
+
isShowFirstRadio.value = false;
|
|
240
|
+
getDom(props);
|
|
241
|
+
(_a = scrollContainerEl.value) == null ? void 0 : _a.addEventListener("scroll", handleScroll);
|
|
242
|
+
}
|
|
243
|
+
if (props.radioSelectValLabel) findLabel();
|
|
207
244
|
}
|
|
208
|
-
if (props.radioSelectValLabel) findLabel();
|
|
209
245
|
});
|
|
246
|
+
const internalLoading = ref(false);
|
|
247
|
+
const internalQueryParams = reactive({ ...props.queryParams });
|
|
248
|
+
const fetchTableData = async (isResetPage = false) => {
|
|
249
|
+
if (!props.apiService) return;
|
|
250
|
+
internalLoading.value = true;
|
|
251
|
+
try {
|
|
252
|
+
if (isResetPage) {
|
|
253
|
+
pagination.currentPage = 1;
|
|
254
|
+
}
|
|
255
|
+
const requestParams = {
|
|
256
|
+
currentPage: pagination.currentPage,
|
|
257
|
+
pageSize: pagination.pageSize,
|
|
258
|
+
...internalQueryParams
|
|
259
|
+
};
|
|
260
|
+
const res = await useBaseApi(props.apiService).post(requestParams, props.apiAction);
|
|
261
|
+
const formatted = props.responseFormatter(res);
|
|
262
|
+
pagination.total = formatted.total;
|
|
263
|
+
state.tableData = formatted.data;
|
|
264
|
+
if (props.useVirtual) {
|
|
265
|
+
saveDATA.value = formatted.data;
|
|
266
|
+
updateRenderData(scrollTopNum.value);
|
|
267
|
+
}
|
|
268
|
+
if (state.defaultSelectValue && state.defaultSelectValue.length > 0 && isDefaultSelectVal.value) {
|
|
269
|
+
defaultSelect(state.defaultSelectValue);
|
|
270
|
+
}
|
|
271
|
+
} catch (error) {
|
|
272
|
+
console.error("FSelectTable API request failed:", error);
|
|
273
|
+
} finally {
|
|
274
|
+
internalLoading.value = false;
|
|
275
|
+
}
|
|
276
|
+
};
|
|
210
277
|
const updateRenderData = (scrollTop) => {
|
|
211
278
|
let startIndex = 0;
|
|
212
279
|
let offsetHeight = 0;
|
|
@@ -254,6 +321,11 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
254
321
|
} else {
|
|
255
322
|
if (fQueryConditionRef.value && props.isShowQuery && props.isClearQuery && !selectRef.value.expanded && !props.selfExpanded) {
|
|
256
323
|
(_a = fQueryConditionRef.value) == null ? void 0 : _a.resetData();
|
|
324
|
+
if (props.apiService) {
|
|
325
|
+
Object.keys(internalQueryParams).forEach((key) => delete internalQueryParams[key]);
|
|
326
|
+
Object.assign(internalQueryParams, props.queryParams);
|
|
327
|
+
fetchTableData(true);
|
|
328
|
+
}
|
|
257
329
|
}
|
|
258
330
|
findLabel();
|
|
259
331
|
filterMethodHandle("");
|
|
@@ -331,6 +403,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
331
403
|
});
|
|
332
404
|
};
|
|
333
405
|
const handlesCurrentChange = (val) => {
|
|
406
|
+
if (props.apiService) {
|
|
407
|
+
fetchTableData();
|
|
408
|
+
return;
|
|
409
|
+
}
|
|
334
410
|
if (props.multiple) {
|
|
335
411
|
if (!props.reserveSelection) {
|
|
336
412
|
clear();
|
|
@@ -355,12 +431,15 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
355
431
|
setTimeout(() => {
|
|
356
432
|
var _a, _b;
|
|
357
433
|
state.defaultValue = multipleList.map((item) => item[props.keywords.label]);
|
|
434
|
+
state.ids = multipleList.map((item) => item[props.keywords.value]);
|
|
358
435
|
multipleList.forEach((row) => {
|
|
359
436
|
selectTable.value.toggleRowSelection(row, true);
|
|
360
437
|
});
|
|
361
438
|
(_b = (_a = selectRef.value) == null ? void 0 : _a.selected) == null ? void 0 : _b.forEach((item) => {
|
|
362
439
|
item.currentLabel = item.value;
|
|
363
440
|
});
|
|
441
|
+
modeValueId.value = state.ids;
|
|
442
|
+
modeValueName.value = state.defaultValue;
|
|
364
443
|
}, 0);
|
|
365
444
|
} else {
|
|
366
445
|
setTimeout(() => {
|
|
@@ -369,6 +448,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
369
448
|
radioVal.value = state.tableData.indexOf(row) + 1;
|
|
370
449
|
state.defaultValue = row;
|
|
371
450
|
selectDefaultLabel.value = row[props.keywords.label];
|
|
451
|
+
modeValueId.value = row[props.keywords.value];
|
|
452
|
+
modeValueName.value = row[props.keywords.label];
|
|
372
453
|
if (!props.defaultValIsOpenRadioChange) {
|
|
373
454
|
emits("radioChange", row, row[props.keywords.value]);
|
|
374
455
|
}
|
|
@@ -385,6 +466,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
385
466
|
state.defaultSelectValue = [];
|
|
386
467
|
}
|
|
387
468
|
emits("selectionChange", val, state.ids);
|
|
469
|
+
if (props.multiple) {
|
|
470
|
+
modeValueId.value = state.ids;
|
|
471
|
+
modeValueName.value = state.defaultValue;
|
|
472
|
+
}
|
|
388
473
|
};
|
|
389
474
|
const getRowClassName = ({ row }) => {
|
|
390
475
|
if (!props.multiple && JSON.stringify(row) === JSON.stringify(state.defaultValue)) {
|
|
@@ -509,6 +594,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
509
594
|
radioVal.value = index;
|
|
510
595
|
state.defaultValue = row;
|
|
511
596
|
emits("radioChange", row, row[props.keywords.value]);
|
|
597
|
+
modeValueId.value = row[props.keywords.value];
|
|
598
|
+
modeValueName.value = row[props.keywords.label];
|
|
512
599
|
};
|
|
513
600
|
const rowClick = async (row) => {
|
|
514
601
|
var _a;
|
|
@@ -541,6 +628,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
541
628
|
isDefaultSelectVal.value = true;
|
|
542
629
|
state.defaultSelectValue = [];
|
|
543
630
|
state.defaultValue = props.multiple ? [] : null;
|
|
631
|
+
modeValueId.value = props.multiple ? [] : 0;
|
|
632
|
+
modeValueName.value = props.multiple ? [] : "";
|
|
544
633
|
};
|
|
545
634
|
if (!selectTable.value) {
|
|
546
635
|
console.warn("selectTable.value is not initialized");
|
|
@@ -624,7 +713,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
624
713
|
ref_key: "selectRef",
|
|
625
714
|
ref: selectRef,
|
|
626
715
|
"model-value": __props.multiple ? state.defaultValue : selectDefaultLabel.value,
|
|
627
|
-
"popper-class": "
|
|
716
|
+
"popper-class": "f-select-table",
|
|
628
717
|
style: { width: __props.selectWidth ? `${__props.selectWidth}px` : "100%" },
|
|
629
718
|
"value-key": __props.keywords.value,
|
|
630
719
|
"filter-method": __props.filterMethod || filterMethodHandle,
|
|
@@ -804,18 +893,18 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
804
893
|
}, 16, ["data", "class"]),
|
|
805
894
|
__props.isShowPagination ? (openBlock(), createElementBlock("div", _hoisted_4, [
|
|
806
895
|
createVNode(_component_el_pagination, mergeProps({
|
|
807
|
-
"current-page":
|
|
808
|
-
"onUpdate:currentPage": _cache[6] || (_cache[6] = ($event) =>
|
|
809
|
-
"page-size":
|
|
810
|
-
"onUpdate:pageSize": _cache[7] || (_cache[7] = ($event) =>
|
|
896
|
+
"current-page": pagination.currentPage,
|
|
897
|
+
"onUpdate:currentPage": _cache[6] || (_cache[6] = ($event) => pagination.currentPage = $event),
|
|
898
|
+
"page-size": pagination.pageSize,
|
|
899
|
+
"onUpdate:pageSize": _cache[7] || (_cache[7] = ($event) => pagination.pageSize = $event),
|
|
811
900
|
onCurrentChange: handlesCurrentChange,
|
|
812
901
|
layout: "total, prev, pager, next, jumper",
|
|
813
902
|
"pager-count": __props.table["pager-count"] || 5,
|
|
814
|
-
total:
|
|
903
|
+
total: pagination.total
|
|
815
904
|
}, { background: true, size: __props.paginationSize || "small", ..._ctx.$attrs }), null, 16, ["current-page", "page-size", "pager-count", "total"])
|
|
816
905
|
])) : createCommentVNode("v-if", true)
|
|
817
906
|
], 8, _hoisted_2)), [
|
|
818
|
-
[_directive_loading, __props.tableLoading]
|
|
907
|
+
[_directive_loading, __props.tableLoading || internalLoading.value]
|
|
819
908
|
]),
|
|
820
909
|
renderSlot(_ctx.$slots, "footer")
|
|
821
910
|
],
|