cnhis-design-vue 3.1.30-beta.7 → 3.1.31-beta.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.
- package/es/components/button-print/index.d.ts +1268 -0
- package/es/components/button-print/index.js +1 -0
- package/es/components/button-print/src/ButtonPrint.vue.d.ts +1269 -3
- package/es/components/button-print/src/ButtonPrint.vue_vue_type_script_setup_true_lang.js +86 -44
- package/es/components/button-print/src/components/IdentityVerification.js +42 -11
- package/es/components/button-print/src/components/IdentityVerification.vue.d.ts +1253 -0
- package/es/components/button-print/src/components/edit.js +142 -0
- package/es/components/button-print/src/components/edit.vue.d.ts +1237 -0
- package/es/components/button-print/src/utils/browserPrint.d.ts +1 -0
- package/es/components/button-print/src/utils/browserPrint.js +40 -0
- package/es/components/button-print/src/utils/index.d.ts +1 -0
- package/es/components/button-print/src/utils/index.js +1 -0
- package/es/components/button-print/style/index.css +1 -1
- package/es/components/form-render/src/hooks/useBusinessBinding.d.ts +1 -1
- package/es/components/form-render/src/hooks/useBusinessBinding.js +16 -9
- package/es/components/form-render/src/utils/business.js +1 -1
- package/es/components/iho-table/index.d.ts +45 -39
- package/es/components/iho-table/index.js +1 -0
- package/es/components/iho-table/src/IhoTable.js +9 -4
- package/es/components/iho-table/src/IhoTable.vue.d.ts +45 -39
- package/es/components/iho-table/src/components/IhoTableColumn.js +8 -5
- package/es/components/iho-table/src/constants/index.d.ts +1 -1
- package/es/components/iho-table/src/constants/index.js +2 -0
- package/es/components/iho-table/src/hooks/tapHooks/useConfigHooks.d.ts +3 -1
- package/es/components/iho-table/src/hooks/tapHooks/useEventHooks.d.ts +1 -1
- package/es/components/iho-table/src/hooks/useTableContext.d.ts +1 -1
- package/es/components/iho-table/src/plugins/filterPlugin/filter.js +189 -0
- package/es/components/iho-table/src/plugins/filterPlugin/filter.vue.d.ts +126 -0
- package/es/components/iho-table/src/plugins/filterPlugin/index.d.ts +1 -0
- package/es/components/iho-table/src/plugins/filterPlugin/index.js +74 -0
- package/es/components/iho-table/src/plugins/filterPlugin/types.d.ts +11 -0
- package/es/components/iho-table/src/plugins/filterPlugin/types.js +8 -0
- package/es/components/iho-table/src/plugins/index.js +14 -12
- package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin/index.js +4 -3
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.d.ts +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/index.js +14 -3
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/inputRendererPlugin.js +12 -7
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/numberRendererPlugin.js +5 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +14 -3
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/editSeparate.vue.d.ts +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +17 -5
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/separateUtils.d.ts +2 -4
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/separateUtils.js +2 -17
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin.js +12 -7
- package/es/components/iho-table/src/plugins/rendererPlugins/widgets/seqRendererPlugin.js +8 -2
- package/es/components/iho-table/src/types/index.d.ts +36 -10
- package/es/components/iho-table/src/utils/index.d.ts +12 -1
- package/es/components/iho-table/src/utils/index.js +36 -2
- package/es/components/iho-table/style/index.css +1 -1
- package/es/components/index.css +1 -1
- package/es/components/index.js +1 -0
- package/es/shared/types/index.d.ts +2 -2
- package/package.json +2 -2
|
@@ -97,8 +97,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
97
97
|
onActiveCellChangeStart?: ((...args: any[]) => any) | undefined;
|
|
98
98
|
onActiveCellChangeEnd?: ((...args: any[]) => any) | undefined;
|
|
99
99
|
onSettingClick?: ((...args: any[]) => any) | undefined;
|
|
100
|
+
onFormClick?: ((...args: any[]) => any) | undefined;
|
|
101
|
+
onFilter?: ((...args: any[]) => any) | undefined;
|
|
100
102
|
}>>;
|
|
101
|
-
emits: (event: "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", ...args: any[]) => void;
|
|
103
|
+
emits: (event: "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "filter" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", ...args: any[]) => void;
|
|
102
104
|
uuid: string;
|
|
103
105
|
$table: import("vue").Ref<VxeTableInstance | undefined>;
|
|
104
106
|
hooks: Readonly<{
|
|
@@ -271,7 +273,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
271
273
|
} | undefined;
|
|
272
274
|
autofocus?: string | undefined;
|
|
273
275
|
autoselect?: boolean | undefined;
|
|
274
|
-
defaultValue?: string | number | object | any[] | {
|
|
276
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
277
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
278
|
+
}) => any) | {
|
|
275
279
|
exec: (string: string) => RegExpExecArray | null;
|
|
276
280
|
test: (string: string) => boolean;
|
|
277
281
|
readonly source: string;
|
|
@@ -292,9 +296,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
292
296
|
[Symbol.search]: (string: string) => number;
|
|
293
297
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
294
298
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
295
|
-
} |
|
|
296
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
297
|
-
}) => any) | {
|
|
299
|
+
} | {
|
|
298
300
|
toString: () => string;
|
|
299
301
|
toDateString: () => string;
|
|
300
302
|
toTimeString: () => string;
|
|
@@ -574,7 +576,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
574
576
|
} | undefined;
|
|
575
577
|
autofocus?: string | undefined;
|
|
576
578
|
autoselect?: boolean | undefined;
|
|
577
|
-
defaultValue?: string | number | object | any[] | {
|
|
579
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
580
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
581
|
+
}) => any) | {
|
|
578
582
|
exec: (string: string) => RegExpExecArray | null;
|
|
579
583
|
test: (string: string) => boolean;
|
|
580
584
|
readonly source: string;
|
|
@@ -595,9 +599,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
595
599
|
[Symbol.search]: (string: string) => number;
|
|
596
600
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
597
601
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
598
|
-
} |
|
|
599
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
600
|
-
}) => any) | {
|
|
602
|
+
} | {
|
|
601
603
|
toString: () => string;
|
|
602
604
|
toDateString: () => string;
|
|
603
605
|
toTimeString: () => string;
|
|
@@ -768,6 +770,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
768
770
|
resizable?: boolean | undefined;
|
|
769
771
|
width?: import("vxe-table").VxeColumnPropTypes.Width | undefined;
|
|
770
772
|
minWidth?: import("vxe-table").VxeColumnPropTypes.MinWidth | undefined;
|
|
773
|
+
seqSlotFn: string | ((params: import("vxe-table").VxeColumnPropTypes.DefaultSlotParams) => import("vxe-table").SlotVNodeType | import("vxe-table").SlotVNodeType[]) | null | undefined;
|
|
771
774
|
} | undefined;
|
|
772
775
|
rowConfig?: {
|
|
773
776
|
useKey?: boolean | undefined;
|
|
@@ -1036,7 +1039,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1036
1039
|
} | undefined;
|
|
1037
1040
|
autofocus?: string | undefined;
|
|
1038
1041
|
autoselect?: boolean | undefined;
|
|
1039
|
-
defaultValue?: string | number | object | any[] | {
|
|
1042
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
1043
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
1044
|
+
}) => any) | {
|
|
1040
1045
|
exec: (string: string) => RegExpExecArray | null;
|
|
1041
1046
|
test: (string: string) => boolean;
|
|
1042
1047
|
readonly source: string;
|
|
@@ -1057,9 +1062,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1057
1062
|
[Symbol.search]: (string: string) => number;
|
|
1058
1063
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
1059
1064
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
1060
|
-
} |
|
|
1061
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
1062
|
-
}) => any) | {
|
|
1065
|
+
} | {
|
|
1063
1066
|
toString: () => string;
|
|
1064
1067
|
toDateString: () => string;
|
|
1065
1068
|
toTimeString: () => string;
|
|
@@ -1395,7 +1398,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1395
1398
|
} | undefined;
|
|
1396
1399
|
autofocus?: string | undefined;
|
|
1397
1400
|
autoselect?: boolean | undefined;
|
|
1398
|
-
defaultValue?: string | number | object | any[] | {
|
|
1401
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
1402
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
1403
|
+
}) => any) | {
|
|
1399
1404
|
exec: (string: string) => RegExpExecArray | null;
|
|
1400
1405
|
test: (string: string) => boolean;
|
|
1401
1406
|
readonly source: string;
|
|
@@ -1416,9 +1421,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1416
1421
|
[Symbol.search]: (string: string) => number;
|
|
1417
1422
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
1418
1423
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
1419
|
-
} |
|
|
1420
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
1421
|
-
}) => any) | {
|
|
1424
|
+
} | {
|
|
1422
1425
|
toString: () => string;
|
|
1423
1426
|
toDateString: () => string;
|
|
1424
1427
|
toTimeString: () => string;
|
|
@@ -2036,7 +2039,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2036
2039
|
onFooterCellClick?: ((params: import("vxe-table").VxeTableDefines.FooterCellClickEventParams) => void) | undefined;
|
|
2037
2040
|
onFooterCellDblclick?: ((params: import("vxe-table").VxeTableDefines.FooterCellDblclickEventParams) => void) | undefined;
|
|
2038
2041
|
onFooterCellMenu?: ((params: import("vxe-table").VxeTableDefines.FooterCellMenuEventParams) => void) | undefined;
|
|
2039
|
-
onSortChange?: ((
|
|
2042
|
+
onSortChange?: ((payload_0: import("../../../../es/components/iho-table/src/types").IhoTableFilterPayload) => void) | undefined;
|
|
2040
2043
|
onFilterChange?: ((params: import("vxe-table").VxeTableDefines.FilterChangeEventParams) => void) | undefined;
|
|
2041
2044
|
onFilterVisible?: ((params: import("vxe-table").VxeTableDefines.FilterVisibleEventParams) => void) | undefined;
|
|
2042
2045
|
onResizableChange?: ((params: import("vxe-table").VxeTableDefines.ResizableChangeEventParams) => void) | undefined;
|
|
@@ -2255,7 +2258,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2255
2258
|
} | undefined;
|
|
2256
2259
|
autofocus?: string | undefined;
|
|
2257
2260
|
autoselect?: boolean | undefined;
|
|
2258
|
-
defaultValue?: string | number | object | any[] | {
|
|
2261
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
2262
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
2263
|
+
}) => any) | {
|
|
2259
2264
|
exec: (string: string) => RegExpExecArray | null;
|
|
2260
2265
|
test: (string: string) => boolean;
|
|
2261
2266
|
readonly source: string;
|
|
@@ -2276,9 +2281,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2276
2281
|
[Symbol.search]: (string: string) => number;
|
|
2277
2282
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
2278
2283
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
2279
|
-
} |
|
|
2280
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
2281
|
-
}) => any) | {
|
|
2284
|
+
} | {
|
|
2282
2285
|
toString: () => string;
|
|
2283
2286
|
toDateString: () => string;
|
|
2284
2287
|
toTimeString: () => string;
|
|
@@ -2658,7 +2661,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2658
2661
|
} | undefined;
|
|
2659
2662
|
autofocus?: string | undefined;
|
|
2660
2663
|
autoselect?: boolean | undefined;
|
|
2661
|
-
defaultValue?: string | number | object | any[] | {
|
|
2664
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
2665
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
2666
|
+
}) => any) | {
|
|
2662
2667
|
exec: (string: string) => RegExpExecArray | null;
|
|
2663
2668
|
test: (string: string) => boolean;
|
|
2664
2669
|
readonly source: string;
|
|
@@ -2679,9 +2684,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2679
2684
|
[Symbol.search]: (string: string) => number;
|
|
2680
2685
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
2681
2686
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
2682
|
-
} |
|
|
2683
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
2684
|
-
}) => any) | {
|
|
2687
|
+
} | {
|
|
2685
2688
|
toString: () => string;
|
|
2686
2689
|
toDateString: () => string;
|
|
2687
2690
|
toTimeString: () => string;
|
|
@@ -2961,7 +2964,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2961
2964
|
} | undefined;
|
|
2962
2965
|
autofocus?: string | undefined;
|
|
2963
2966
|
autoselect?: boolean | undefined;
|
|
2964
|
-
defaultValue?: string | number | object | any[] | {
|
|
2967
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
2968
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
2969
|
+
}) => any) | {
|
|
2965
2970
|
exec: (string: string) => RegExpExecArray | null;
|
|
2966
2971
|
test: (string: string) => boolean;
|
|
2967
2972
|
readonly source: string;
|
|
@@ -2982,9 +2987,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2982
2987
|
[Symbol.search]: (string: string) => number;
|
|
2983
2988
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
2984
2989
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
2985
|
-
} |
|
|
2986
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
2987
|
-
}) => any) | {
|
|
2990
|
+
} | {
|
|
2988
2991
|
toString: () => string;
|
|
2989
2992
|
toDateString: () => string;
|
|
2990
2993
|
toTimeString: () => string;
|
|
@@ -3155,6 +3158,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
3155
3158
|
resizable?: boolean | undefined;
|
|
3156
3159
|
width?: import("vxe-table").VxeColumnPropTypes.Width | undefined;
|
|
3157
3160
|
minWidth?: import("vxe-table").VxeColumnPropTypes.MinWidth | undefined;
|
|
3161
|
+
seqSlotFn: string | ((params: import("vxe-table").VxeColumnPropTypes.DefaultSlotParams) => import("vxe-table").SlotVNodeType | import("vxe-table").SlotVNodeType[]) | null | undefined;
|
|
3158
3162
|
} | undefined;
|
|
3159
3163
|
rowConfig?: {
|
|
3160
3164
|
useKey?: boolean | undefined;
|
|
@@ -3423,7 +3427,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
3423
3427
|
} | undefined;
|
|
3424
3428
|
autofocus?: string | undefined;
|
|
3425
3429
|
autoselect?: boolean | undefined;
|
|
3426
|
-
defaultValue?: string | number | object | any[] | {
|
|
3430
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
3431
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
3432
|
+
}) => any) | {
|
|
3427
3433
|
exec: (string: string) => RegExpExecArray | null;
|
|
3428
3434
|
test: (string: string) => boolean;
|
|
3429
3435
|
readonly source: string;
|
|
@@ -3444,9 +3450,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
3444
3450
|
[Symbol.search]: (string: string) => number;
|
|
3445
3451
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
3446
3452
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
3447
|
-
} |
|
|
3448
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
3449
|
-
}) => any) | {
|
|
3453
|
+
} | {
|
|
3450
3454
|
toString: () => string;
|
|
3451
3455
|
toDateString: () => string;
|
|
3452
3456
|
toTimeString: () => string;
|
|
@@ -3782,7 +3786,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
3782
3786
|
} | undefined;
|
|
3783
3787
|
autofocus?: string | undefined;
|
|
3784
3788
|
autoselect?: boolean | undefined;
|
|
3785
|
-
defaultValue?: string | number | object | any[] | {
|
|
3789
|
+
defaultValue?: string | number | object | any[] | ((params: {
|
|
3790
|
+
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
3791
|
+
}) => any) | {
|
|
3786
3792
|
exec: (string: string) => RegExpExecArray | null;
|
|
3787
3793
|
test: (string: string) => boolean;
|
|
3788
3794
|
readonly source: string;
|
|
@@ -3803,9 +3809,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
3803
3809
|
[Symbol.search]: (string: string) => number;
|
|
3804
3810
|
[Symbol.split]: (string: string, limit?: number | undefined) => string[];
|
|
3805
3811
|
[Symbol.matchAll]: (str: string) => IterableIterator<RegExpMatchArray>;
|
|
3806
|
-
} |
|
|
3807
|
-
column: import("vxe-table").VxeTableDefines.ColumnInfo;
|
|
3808
|
-
}) => any) | {
|
|
3812
|
+
} | {
|
|
3809
3813
|
toString: () => string;
|
|
3810
3814
|
toDateString: () => string;
|
|
3811
3815
|
toTimeString: () => string;
|
|
@@ -4474,7 +4478,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
4474
4478
|
type: PropType<AnyObject>;
|
|
4475
4479
|
};
|
|
4476
4480
|
}>>, {}>;
|
|
4477
|
-
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd")[], "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
4481
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "filter" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd")[], "filter" | "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
4478
4482
|
tableConfig: {
|
|
4479
4483
|
type: PropType<IhoTableConfig>;
|
|
4480
4484
|
default: () => {};
|
|
@@ -4552,6 +4556,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
4552
4556
|
onActiveCellChangeStart?: ((...args: any[]) => any) | undefined;
|
|
4553
4557
|
onActiveCellChangeEnd?: ((...args: any[]) => any) | undefined;
|
|
4554
4558
|
onSettingClick?: ((...args: any[]) => any) | undefined;
|
|
4559
|
+
onFormClick?: ((...args: any[]) => any) | undefined;
|
|
4560
|
+
onFilter?: ((...args: any[]) => any) | undefined;
|
|
4555
4561
|
}, {
|
|
4556
4562
|
fieldList: LowCodeTableFieldItem[];
|
|
4557
4563
|
tableConfig: IhoTableConfig;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, resolveComponent, createVNode } from 'vue';
|
|
2
|
-
import { widthAppend, arrayed } from '../../../../shared/utils/index.js';
|
|
2
|
+
import { widthAppend, arrayed, vIf } from '../../../../shared/utils/index.js';
|
|
3
3
|
import { isEmpty, omit, isObject, isString, isFunction } from 'lodash-es';
|
|
4
4
|
import Annotation from '../../../annotation-edit/index.js';
|
|
5
5
|
import { NEllipsis } from 'naive-ui';
|
|
@@ -20,20 +20,23 @@ const ColumnComponent = defineComponent({
|
|
|
20
20
|
const VxeColumnGroup = resolveComponent("vxe-colgroup");
|
|
21
21
|
function renderHeader(payload, headerSlot) {
|
|
22
22
|
const hasAnnotation = isObject(props.annotation) && props.field.annotation !== false;
|
|
23
|
-
const maxWidth = widthAppend(payload.column.renderWidth - (hasAnnotation ? 36 : 20));
|
|
24
23
|
const customHeader = isString(headerSlot) ? headerSlot : isFunction(headerSlot) ? headerSlot(payload) : null;
|
|
25
24
|
return createVNode("section", {
|
|
26
25
|
"class": "iho-table__headerWrapper"
|
|
26
|
+
}, [createVNode("section", {
|
|
27
|
+
"style": {
|
|
28
|
+
width: widthAppend(payload.column.renderWidth - (hasAnnotation ? 36 : 20))
|
|
29
|
+
}
|
|
27
30
|
}, [[...arrayed(customHeader != null ? customHeader : createVNode(NEllipsis, {
|
|
28
31
|
"style": {
|
|
29
|
-
maxWidth
|
|
32
|
+
maxWidth: "100%"
|
|
30
33
|
}
|
|
31
34
|
}, {
|
|
32
35
|
default: () => props.field.title
|
|
33
|
-
}))], hasAnnotation
|
|
36
|
+
}))]]), vIf(hasAnnotation, createVNode(Annotation, {
|
|
34
37
|
"modelValue": props.annotation[props.field.field],
|
|
35
38
|
"onUpdate:modelValue": ($event) => props.annotation[props.field.field] = $event
|
|
36
|
-
}, null)
|
|
39
|
+
}, null))]);
|
|
37
40
|
}
|
|
38
41
|
function columnSlot({
|
|
39
42
|
slots,
|
|
@@ -56,7 +56,7 @@ export declare enum IHO_TABLE_STRING_STATUS {
|
|
|
56
56
|
NEGATIVE = "0",
|
|
57
57
|
POSITIVE = "1"
|
|
58
58
|
}
|
|
59
|
-
export declare const IhoTableEventNameTuple: readonly ["formChange", "settingClick", ...("toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd")[]];
|
|
59
|
+
export declare const IhoTableEventNameTuple: readonly ["formChange", "settingClick", "formClick", "sortChange", ...("toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd")[]];
|
|
60
60
|
export declare const InjectionIhoTableConfig: InjectionKey<Ref<IhoTableConfig>>;
|
|
61
61
|
export declare const InjectionIhoTableFieldList: InjectionKey<Ref<IhoTableFieldItem[]>>;
|
|
62
62
|
export declare const InjectionIhoTableEmits: InjectionKey<(<T extends typeof IhoTableEventNameTuple[number]>(event: T, ...args: IhoTableEmitPayload<T>) => void)>;
|
|
@@ -130,6 +130,8 @@ var IHO_TABLE_STRING_STATUS = /* @__PURE__ */ ((IHO_TABLE_STRING_STATUS2) => {
|
|
|
130
130
|
const IhoTableEventNameTuple = [
|
|
131
131
|
"formChange",
|
|
132
132
|
"settingClick",
|
|
133
|
+
"formClick",
|
|
134
|
+
"sortChange",
|
|
133
135
|
...VxeEventListenerNameList.map(getEventName)
|
|
134
136
|
];
|
|
135
137
|
const InjectionIhoTableConfig = Symbol("injectionIhoTableConfig");
|
|
@@ -5,7 +5,9 @@ declare class ConfigHooks extends AbstractConfigHooks {
|
|
|
5
5
|
readonly config: SyncWaterfallHook<IhoTableConfig, import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
|
|
6
6
|
readonly rowConfig: SyncWaterfallHook<[undefined, IhoTableConfig] | [import("vxe-table").VxeTablePropTypes.RowConfig, IhoTableConfig], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
|
|
7
7
|
readonly editConfig: SyncWaterfallHook<[undefined, IhoTableConfig] | [import("vxe-table").VxeTablePropTypes.EditConfig, IhoTableConfig], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
|
|
8
|
-
readonly columnConfig: SyncWaterfallHook<[undefined, IhoTableConfig] | [import("vxe-table").VxeTablePropTypes.ColumnConfig
|
|
8
|
+
readonly columnConfig: SyncWaterfallHook<[undefined, IhoTableConfig] | [import("vxe-table").VxeTablePropTypes.ColumnConfig & {
|
|
9
|
+
seqSlotFn: string | ((params: import("vxe-table").VxeColumnPropTypes.DefaultSlotParams) => import("vxe-table").SlotVNodeType | import("vxe-table").SlotVNodeType[]) | null | undefined;
|
|
10
|
+
}, IhoTableConfig], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
|
|
9
11
|
readonly resizableConfig: SyncWaterfallHook<[undefined, IhoTableConfig] | [import("vxe-table").VxeTablePropTypes.ResizableConfig, IhoTableConfig], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
|
|
10
12
|
readonly seqConfig: SyncWaterfallHook<[undefined, IhoTableConfig] | [import("vxe-table").VxeTablePropTypes.SeqConfig, IhoTableConfig], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
|
|
11
13
|
readonly sortConfig: SyncWaterfallHook<[undefined, IhoTableConfig] | [import("vxe-table").VxeTablePropTypes.SortConfig, IhoTableConfig], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
|
|
@@ -184,7 +184,7 @@ export declare function useEventHooks(): {
|
|
|
184
184
|
create: () => EventHooks;
|
|
185
185
|
};
|
|
186
186
|
export declare class IhoTableEventListener {
|
|
187
|
-
eventMap: Map<"toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", Set<Func<any[], any>>>;
|
|
187
|
+
eventMap: Map<"toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", Set<Func<any[], any>>>;
|
|
188
188
|
addEventListener<T extends IhoTableEventNameUnion>(key: T, handler: (...payload: IhoTableEmitPayload<T>) => void): void;
|
|
189
189
|
trigger<T extends IhoTableEventNameUnion>(key: T, payload: IhoTableEmitPayload<T>): void;
|
|
190
190
|
}
|
|
@@ -2,7 +2,7 @@ export declare function useTableContext(): {
|
|
|
2
2
|
configRef: import("vue").Ref<import("../types").IhoTableConfig>;
|
|
3
3
|
fieldListRef: import("vue").Ref<import("../types").IhoTableFieldItem[]>;
|
|
4
4
|
tableHandler: import("../types").IhoTableHandler;
|
|
5
|
-
tableEmit: <T extends "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd">(event: T, ...args: import("../types").IhoTableEmitPayload<T>) => void;
|
|
5
|
+
tableEmit: <T extends "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd">(event: T, ...args: import("../types").IhoTableEmitPayload<T>) => void;
|
|
6
6
|
eventListener: import("./tapHooks/useEventHooks").IhoTableEventListener;
|
|
7
7
|
$table: import("vue").Ref<import("../../../../shared/types").UndefinedAble<import("vxe-table").VxeTableInstance>>;
|
|
8
8
|
uuid: string;
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { defineComponent, inject, toRefs, ref, onDeactivated, computed, openBlock, createElementBlock, createVNode, unref, withCtx, createTextVNode, toDisplayString, createElementVNode, Fragment, renderList, normalizeClass, isRef, normalizeStyle } from 'vue';
|
|
2
|
+
import { widthAppend } from '../../../../../shared/utils/index.js';
|
|
3
|
+
import { FilterOutline } from '@vicons/ionicons5';
|
|
4
|
+
import { useVirtualList } from '@vueuse/core';
|
|
5
|
+
import { InjectionIhoTableUUID, InjectionIhoTableEmits } from '../../constants/index.js';
|
|
6
|
+
import { IHO_TABLE_FILTER_STATUS } from './types.js';
|
|
7
|
+
import { NEllipsis, NPopover, NIcon, NInput, NCheckboxGroup, NCheckbox, NButtonGroup, NButton } from 'naive-ui';
|
|
8
|
+
import _export_sfc from '../../../../../_virtual/plugin-vue_export-helper.js';
|
|
9
|
+
|
|
10
|
+
const _hoisted_1 = { class: "iho-table__filterWrapper" };
|
|
11
|
+
const _hoisted_2 = ["onClick"];
|
|
12
|
+
const _hoisted_3 = { class: "iho-table__filterFooter" };
|
|
13
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
14
|
+
__name: "filter",
|
|
15
|
+
props: {
|
|
16
|
+
payload: {
|
|
17
|
+
type: Object,
|
|
18
|
+
required: true
|
|
19
|
+
},
|
|
20
|
+
filterState: {
|
|
21
|
+
type: Object,
|
|
22
|
+
required: true
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
setup(__props) {
|
|
26
|
+
const props = __props;
|
|
27
|
+
const uuid = inject(InjectionIhoTableUUID);
|
|
28
|
+
const globEmit = inject(InjectionIhoTableEmits);
|
|
29
|
+
const { options, checked, sortStatus } = toRefs(props.filterState);
|
|
30
|
+
const filterVisible = ref(false);
|
|
31
|
+
const searchFilterText = ref("");
|
|
32
|
+
function close() {
|
|
33
|
+
filterVisible.value = false;
|
|
34
|
+
searchFilterText.value = "";
|
|
35
|
+
}
|
|
36
|
+
onDeactivated(close);
|
|
37
|
+
const OPTION_ITEM_HEIGHT = 32;
|
|
38
|
+
const VIEW_CAPACITY = 10;
|
|
39
|
+
let checkedCache = [];
|
|
40
|
+
const { list, containerProps, wrapperProps } = useVirtualList(
|
|
41
|
+
computed(() => {
|
|
42
|
+
return searchFilterText.value ? options.value.filter((option) => option.key.includes(searchFilterText.value)) : options.value;
|
|
43
|
+
}),
|
|
44
|
+
{
|
|
45
|
+
itemHeight: OPTION_ITEM_HEIGHT,
|
|
46
|
+
overscan: 3
|
|
47
|
+
}
|
|
48
|
+
);
|
|
49
|
+
const containerStyleWithHeight = computed(() => {
|
|
50
|
+
return {
|
|
51
|
+
...containerProps.style,
|
|
52
|
+
height: widthAppend(OPTION_ITEM_HEIGHT * VIEW_CAPACITY)
|
|
53
|
+
};
|
|
54
|
+
});
|
|
55
|
+
function confirmSort() {
|
|
56
|
+
sortStatus.value = IHO_TABLE_FILTER_STATUS.DEFAULT;
|
|
57
|
+
close();
|
|
58
|
+
globEmit("sortChange", { type: "filter", value: [...checked.value] });
|
|
59
|
+
}
|
|
60
|
+
function cancelSort() {
|
|
61
|
+
checked.value = checkedCache;
|
|
62
|
+
close();
|
|
63
|
+
}
|
|
64
|
+
const sortStatusList = [
|
|
65
|
+
{ status: IHO_TABLE_FILTER_STATUS.ASCENDING, text: "\u5347\u5E8F A to Z" },
|
|
66
|
+
{ status: IHO_TABLE_FILTER_STATUS.DESCENDING, text: "\u964D\u5E8F Z to A" }
|
|
67
|
+
];
|
|
68
|
+
function setSortStatus(value) {
|
|
69
|
+
if (value === sortStatus.value) {
|
|
70
|
+
sortStatus.value = IHO_TABLE_FILTER_STATUS.DEFAULT;
|
|
71
|
+
} else {
|
|
72
|
+
sortStatus.value = value;
|
|
73
|
+
}
|
|
74
|
+
close();
|
|
75
|
+
globEmit("sortChange", { type: "sort", value: sortStatus.value });
|
|
76
|
+
}
|
|
77
|
+
function toggleFilter() {
|
|
78
|
+
filterVisible.value = !filterVisible.value;
|
|
79
|
+
if (filterVisible.value) {
|
|
80
|
+
checkedCache = [...checked.value];
|
|
81
|
+
} else {
|
|
82
|
+
searchFilterText.value = "";
|
|
83
|
+
checkedCache = [];
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return (_ctx, _cache) => {
|
|
87
|
+
return openBlock(), createElementBlock("section", null, [
|
|
88
|
+
createVNode(unref(NEllipsis), { style: { "max-width": "calc(100% - 22px)" } }, {
|
|
89
|
+
default: withCtx(() => [
|
|
90
|
+
createTextVNode(toDisplayString(__props.payload.column.title), 1)
|
|
91
|
+
]),
|
|
92
|
+
_: 1
|
|
93
|
+
}),
|
|
94
|
+
createVNode(unref(NPopover), {
|
|
95
|
+
to: `#${unref(uuid)}`,
|
|
96
|
+
show: filterVisible.value
|
|
97
|
+
}, {
|
|
98
|
+
trigger: withCtx(() => [
|
|
99
|
+
createVNode(unref(NIcon), {
|
|
100
|
+
class: "iho-table__filterIcon",
|
|
101
|
+
component: unref(FilterOutline),
|
|
102
|
+
onClick: toggleFilter
|
|
103
|
+
}, null, 8, ["component"])
|
|
104
|
+
]),
|
|
105
|
+
default: withCtx(() => [
|
|
106
|
+
createElementVNode("section", _hoisted_1, [
|
|
107
|
+
(openBlock(), createElementBlock(Fragment, null, renderList(sortStatusList, (item) => {
|
|
108
|
+
return createElementVNode("div", {
|
|
109
|
+
key: item.status,
|
|
110
|
+
class: normalizeClass(["iho-table__filterButton", { "iho-table__filterButton--active": unref(sortStatus) === item.status }]),
|
|
111
|
+
onClick: ($event) => setSortStatus(item.status)
|
|
112
|
+
}, toDisplayString(item.text), 11, _hoisted_2);
|
|
113
|
+
}), 64)),
|
|
114
|
+
createVNode(unref(NInput), {
|
|
115
|
+
value: searchFilterText.value,
|
|
116
|
+
"onUpdate:value": _cache[0] || (_cache[0] = ($event) => searchFilterText.value = $event)
|
|
117
|
+
}, null, 8, ["value"]),
|
|
118
|
+
createVNode(unref(NCheckboxGroup), {
|
|
119
|
+
value: unref(checked),
|
|
120
|
+
"onUpdate:value": _cache[2] || (_cache[2] = ($event) => isRef(checked) ? checked.value = $event : null)
|
|
121
|
+
}, {
|
|
122
|
+
default: withCtx(() => [
|
|
123
|
+
createElementVNode("section", {
|
|
124
|
+
ref: unref(containerProps).ref,
|
|
125
|
+
style: normalizeStyle(unref(containerStyleWithHeight)),
|
|
126
|
+
onScroll: _cache[1] || (_cache[1] = (...args) => unref(containerProps).onScroll && unref(containerProps).onScroll(...args)),
|
|
127
|
+
class: "iho-table__filterListWrapper"
|
|
128
|
+
}, [
|
|
129
|
+
createElementVNode("section", {
|
|
130
|
+
style: normalizeStyle(unref(wrapperProps).style)
|
|
131
|
+
}, [
|
|
132
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(list), (option) => {
|
|
133
|
+
return openBlock(), createElementBlock("div", {
|
|
134
|
+
class: "iho-table__filterListItem",
|
|
135
|
+
key: option.data.value
|
|
136
|
+
}, [
|
|
137
|
+
createVNode(unref(NCheckbox), {
|
|
138
|
+
value: option.data.value,
|
|
139
|
+
label: option.data.key
|
|
140
|
+
}, null, 8, ["value", "label"])
|
|
141
|
+
]);
|
|
142
|
+
}), 128))
|
|
143
|
+
], 4)
|
|
144
|
+
], 36)
|
|
145
|
+
]),
|
|
146
|
+
_: 1
|
|
147
|
+
}, 8, ["value"]),
|
|
148
|
+
createElementVNode("footer", _hoisted_3, [
|
|
149
|
+
createElementVNode("section", null, toDisplayString(`\u5DF2\u9009\u62E9${unref(checked).length}\u9879`), 1),
|
|
150
|
+
createVNode(unref(NButtonGroup), { size: "tiny" }, {
|
|
151
|
+
default: withCtx(() => [
|
|
152
|
+
createVNode(unref(NButton), {
|
|
153
|
+
onClick: _cache[3] || (_cache[3] = ($event) => checked.value = [])
|
|
154
|
+
}, {
|
|
155
|
+
default: withCtx(() => [
|
|
156
|
+
createTextVNode("\u6E05\u7A7A")
|
|
157
|
+
]),
|
|
158
|
+
_: 1
|
|
159
|
+
}),
|
|
160
|
+
createVNode(unref(NButton), { onClick: cancelSort }, {
|
|
161
|
+
default: withCtx(() => [
|
|
162
|
+
createTextVNode("\u53D6\u6D88")
|
|
163
|
+
]),
|
|
164
|
+
_: 1
|
|
165
|
+
}),
|
|
166
|
+
createVNode(unref(NButton), {
|
|
167
|
+
type: "primary",
|
|
168
|
+
onClick: confirmSort
|
|
169
|
+
}, {
|
|
170
|
+
default: withCtx(() => [
|
|
171
|
+
createTextVNode("\u786E\u5B9A")
|
|
172
|
+
]),
|
|
173
|
+
_: 1
|
|
174
|
+
})
|
|
175
|
+
]),
|
|
176
|
+
_: 1
|
|
177
|
+
})
|
|
178
|
+
])
|
|
179
|
+
])
|
|
180
|
+
]),
|
|
181
|
+
_: 1
|
|
182
|
+
}, 8, ["to", "show"])
|
|
183
|
+
]);
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
});
|
|
187
|
+
var FilterComponent = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "filter.vue"]]);
|
|
188
|
+
|
|
189
|
+
export { FilterComponent as default };
|