@aplus-frontend/ui 6.26.4 → 6.26.5
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/src/ag-grid/hooks/use-virtual-config.d.ts +5 -0
- package/es/src/ag-grid/hooks/use-virtual-config.mjs +25 -0
- package/es/src/ag-grid/index.vue.mjs +225 -206
- package/es/src/ag-grid/interface.d.ts +22 -1
- package/es/src/ap-field/select/index.vue.d.ts +51 -21
- package/es/src/ap-field/select/index.vue.mjs +51 -49
- package/es/src/ap-field/select/read.vue2.mjs +4 -1
- package/es/src/ap-field/tree-select/index.vue.d.ts +29 -21
- package/es/src/ap-field/tree-select/index.vue.mjs +11 -9
- package/es/src/ap-field/tree-select/read.vue2.mjs +7 -5
- package/es/src/ap-form/ap-form.vue.d.ts +28 -2
- package/es/src/ap-form/ap-form.vue2.mjs +8 -7
- package/es/src/ap-form/drawer-form/index.vue.d.ts +22 -0
- package/es/src/ap-form/drawer-form/index.vue.mjs +1 -0
- package/es/src/ap-form/items/select/index.vue.d.ts +64 -28
- package/es/src/ap-form/items/tree-select/index.vue.d.ts +40 -28
- package/es/src/ap-form/modal-form/index.vue.d.ts +22 -0
- package/es/src/ap-form/modal-form/index.vue.mjs +31 -30
- package/es/src/ap-form/search-form/index.vue.d.ts +24 -2
- package/es/src/ap-form/search-form/index.vue.mjs +72 -68
- package/es/src/ap-table/constants.d.ts +52 -28
- package/es/src/business/ap-view/components/main-button-content.vue.d.ts +11 -0
- package/es/src/business/ap-view/components/menu-list-content.vue.d.ts +11 -0
- package/es/src/config-provider/config-provider-props.d.ts +14 -1
- package/es/src/config-provider/config-provider.d.ts +31 -1
- package/es/src/config-provider/hooks/use-global-config.d.ts +14 -1
- package/es/src/config-provider/index.d.ts +52 -1
- package/es/src/utils/config-provider-preset.d.ts +11 -1
- package/es/src/version.d.ts +1 -1
- package/es/src/version.mjs +1 -1
- package/es/src/work-order-modal/work-order-modal.vue.d.ts +11 -0
- package/lib/src/ag-grid/hooks/use-virtual-config.d.ts +5 -0
- package/lib/src/ag-grid/hooks/use-virtual-config.js +1 -0
- package/lib/src/ag-grid/index.vue.js +1 -1
- package/lib/src/ag-grid/interface.d.ts +22 -1
- package/lib/src/ap-field/select/index.vue.d.ts +51 -21
- package/lib/src/ap-field/select/index.vue.js +1 -1
- package/lib/src/ap-field/select/read.vue2.js +1 -1
- package/lib/src/ap-field/tree-select/index.vue.d.ts +29 -21
- package/lib/src/ap-field/tree-select/index.vue.js +1 -1
- package/lib/src/ap-field/tree-select/read.vue2.js +1 -1
- package/lib/src/ap-form/ap-form.vue.d.ts +28 -2
- package/lib/src/ap-form/ap-form.vue2.js +1 -1
- package/lib/src/ap-form/drawer-form/index.vue.d.ts +22 -0
- package/lib/src/ap-form/drawer-form/index.vue.js +1 -1
- package/lib/src/ap-form/items/select/index.vue.d.ts +64 -28
- package/lib/src/ap-form/items/tree-select/index.vue.d.ts +40 -28
- package/lib/src/ap-form/modal-form/index.vue.d.ts +22 -0
- package/lib/src/ap-form/modal-form/index.vue.js +1 -1
- package/lib/src/ap-form/search-form/index.vue.d.ts +24 -2
- package/lib/src/ap-form/search-form/index.vue.js +1 -1
- package/lib/src/ap-table/constants.d.ts +52 -28
- package/lib/src/business/ap-view/components/main-button-content.vue.d.ts +11 -0
- package/lib/src/business/ap-view/components/menu-list-content.vue.d.ts +11 -0
- package/lib/src/config-provider/config-provider-props.d.ts +14 -1
- package/lib/src/config-provider/config-provider.d.ts +31 -1
- package/lib/src/config-provider/hooks/use-global-config.d.ts +14 -1
- package/lib/src/config-provider/index.d.ts +52 -1
- package/lib/src/utils/config-provider-preset.d.ts +11 -1
- package/lib/src/version.d.ts +1 -1
- package/lib/src/version.js +1 -1
- package/lib/src/work-order-modal/work-order-modal.vue.d.ts +11 -0
- package/package.json +3 -3
- package/theme/ap-pro-card/index.css +5 -5
- package/theme/ap-pro-card/index.less +5 -5
- package/theme/index.css +5 -5
|
@@ -5,7 +5,7 @@ import { CSPConfig, SizeType } from '@aplus-frontend/antdv/es/config-provider';
|
|
|
5
5
|
import { Locale } from '@aplus-frontend/antdv/es/locale';
|
|
6
6
|
import { ValidateMessages } from '@aplus-frontend/antdv/es/form/interface';
|
|
7
7
|
import { RequiredMark } from '@aplus-frontend/antdv/es/form/Form';
|
|
8
|
-
import { ThemeConfig } from '@aplus-frontend/antdv/es/config-provider/context';
|
|
8
|
+
import { ThemeConfig, Variant } from '@aplus-frontend/antdv/es/config-provider/context';
|
|
9
9
|
import { LocaleType } from '../locale';
|
|
10
10
|
import { ApiType, ApUploadConfig, ApDescriptionsConfig, ValueTypeRenderConfig, downloadCenterTriggerConfig, ExportField, SearchFormGlobalConfig } from './constants';
|
|
11
11
|
import { ViewCacheOption } from '..';
|
|
@@ -85,6 +85,9 @@ export declare const APConfigProvider: {
|
|
|
85
85
|
type: BooleanConstructor;
|
|
86
86
|
default: any;
|
|
87
87
|
};
|
|
88
|
+
variant: {
|
|
89
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
90
|
+
};
|
|
88
91
|
dropdownMatchSelectWidth: {
|
|
89
92
|
type: (BooleanConstructor | NumberConstructor)[];
|
|
90
93
|
default: boolean;
|
|
@@ -115,12 +118,22 @@ export declare const APConfigProvider: {
|
|
|
115
118
|
};
|
|
116
119
|
select: {
|
|
117
120
|
type: PropType<{
|
|
121
|
+
variant?: Variant;
|
|
118
122
|
showSearch?: boolean;
|
|
119
123
|
}>;
|
|
120
124
|
default: {
|
|
125
|
+
variant?: Variant;
|
|
121
126
|
showSearch?: boolean;
|
|
122
127
|
};
|
|
123
128
|
};
|
|
129
|
+
cascader: {
|
|
130
|
+
type: PropType<{
|
|
131
|
+
variant?: Variant;
|
|
132
|
+
}>;
|
|
133
|
+
default: {
|
|
134
|
+
variant?: Variant;
|
|
135
|
+
};
|
|
136
|
+
};
|
|
124
137
|
wave: {
|
|
125
138
|
type: PropType<{
|
|
126
139
|
disabled?: boolean;
|
|
@@ -178,6 +191,7 @@ export declare const APConfigProvider: {
|
|
|
178
191
|
autocomplete?: string;
|
|
179
192
|
};
|
|
180
193
|
select: {
|
|
194
|
+
variant?: Variant;
|
|
181
195
|
showSearch?: boolean;
|
|
182
196
|
};
|
|
183
197
|
form: {
|
|
@@ -203,6 +217,9 @@ export declare const APConfigProvider: {
|
|
|
203
217
|
showSizeChanger?: boolean;
|
|
204
218
|
};
|
|
205
219
|
theme: ThemeConfig;
|
|
220
|
+
cascader: {
|
|
221
|
+
variant?: Variant;
|
|
222
|
+
};
|
|
206
223
|
wave: {
|
|
207
224
|
disabled?: boolean;
|
|
208
225
|
};
|
|
@@ -289,6 +306,9 @@ export declare const APConfigProvider: {
|
|
|
289
306
|
type: BooleanConstructor;
|
|
290
307
|
default: any;
|
|
291
308
|
};
|
|
309
|
+
variant: {
|
|
310
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
311
|
+
};
|
|
292
312
|
dropdownMatchSelectWidth: {
|
|
293
313
|
type: (BooleanConstructor | NumberConstructor)[];
|
|
294
314
|
default: boolean;
|
|
@@ -319,12 +339,22 @@ export declare const APConfigProvider: {
|
|
|
319
339
|
};
|
|
320
340
|
select: {
|
|
321
341
|
type: PropType<{
|
|
342
|
+
variant?: Variant;
|
|
322
343
|
showSearch?: boolean;
|
|
323
344
|
}>;
|
|
324
345
|
default: {
|
|
346
|
+
variant?: Variant;
|
|
325
347
|
showSearch?: boolean;
|
|
326
348
|
};
|
|
327
349
|
};
|
|
350
|
+
cascader: {
|
|
351
|
+
type: PropType<{
|
|
352
|
+
variant?: Variant;
|
|
353
|
+
}>;
|
|
354
|
+
default: {
|
|
355
|
+
variant?: Variant;
|
|
356
|
+
};
|
|
357
|
+
};
|
|
328
358
|
wave: {
|
|
329
359
|
type: PropType<{
|
|
330
360
|
disabled?: boolean;
|
|
@@ -382,6 +412,7 @@ export declare const APConfigProvider: {
|
|
|
382
412
|
autocomplete?: string;
|
|
383
413
|
};
|
|
384
414
|
select: {
|
|
415
|
+
variant?: Variant;
|
|
385
416
|
showSearch?: boolean;
|
|
386
417
|
};
|
|
387
418
|
form: {
|
|
@@ -407,6 +438,9 @@ export declare const APConfigProvider: {
|
|
|
407
438
|
showSizeChanger?: boolean;
|
|
408
439
|
};
|
|
409
440
|
theme: ThemeConfig;
|
|
441
|
+
cascader: {
|
|
442
|
+
variant?: Variant;
|
|
443
|
+
};
|
|
410
444
|
wave: {
|
|
411
445
|
disabled?: boolean;
|
|
412
446
|
};
|
|
@@ -490,6 +524,9 @@ export declare const APConfigProvider: {
|
|
|
490
524
|
type: BooleanConstructor;
|
|
491
525
|
default: any;
|
|
492
526
|
};
|
|
527
|
+
variant: {
|
|
528
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
529
|
+
};
|
|
493
530
|
dropdownMatchSelectWidth: {
|
|
494
531
|
type: (BooleanConstructor | NumberConstructor)[];
|
|
495
532
|
default: boolean;
|
|
@@ -520,12 +557,22 @@ export declare const APConfigProvider: {
|
|
|
520
557
|
};
|
|
521
558
|
select: {
|
|
522
559
|
type: PropType<{
|
|
560
|
+
variant?: Variant;
|
|
523
561
|
showSearch?: boolean;
|
|
524
562
|
}>;
|
|
525
563
|
default: {
|
|
564
|
+
variant?: Variant;
|
|
526
565
|
showSearch?: boolean;
|
|
527
566
|
};
|
|
528
567
|
};
|
|
568
|
+
cascader: {
|
|
569
|
+
type: PropType<{
|
|
570
|
+
variant?: Variant;
|
|
571
|
+
}>;
|
|
572
|
+
default: {
|
|
573
|
+
variant?: Variant;
|
|
574
|
+
};
|
|
575
|
+
};
|
|
529
576
|
wave: {
|
|
530
577
|
type: PropType<{
|
|
531
578
|
disabled?: boolean;
|
|
@@ -583,6 +630,7 @@ export declare const APConfigProvider: {
|
|
|
583
630
|
autocomplete?: string;
|
|
584
631
|
};
|
|
585
632
|
select: {
|
|
633
|
+
variant?: Variant;
|
|
586
634
|
showSearch?: boolean;
|
|
587
635
|
};
|
|
588
636
|
form: {
|
|
@@ -608,6 +656,9 @@ export declare const APConfigProvider: {
|
|
|
608
656
|
showSizeChanger?: boolean;
|
|
609
657
|
};
|
|
610
658
|
theme: ThemeConfig;
|
|
659
|
+
cascader: {
|
|
660
|
+
variant?: Variant;
|
|
661
|
+
};
|
|
611
662
|
wave: {
|
|
612
663
|
disabled?: boolean;
|
|
613
664
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { TransformCellTextProps } from '@aplus-frontend/antdv/lib/table/interface';
|
|
2
2
|
import { ConfigProviderProps } from '@aplus-frontend/antdv';
|
|
3
|
+
import { Variant, ThemeConfig } from '@aplus-frontend/antdv/es/config-provider/context';
|
|
3
4
|
import { ValidateMessages } from '@aplus-frontend/antdv/es/form/interface';
|
|
4
5
|
import { RequiredMark } from '@aplus-frontend/antdv/es/form/Form';
|
|
5
6
|
import { SizeType, CSPConfig } from '@aplus-frontend/antdv/es/config-provider';
|
|
6
7
|
import { Locale } from '@aplus-frontend/antdv/es/locale';
|
|
7
|
-
import { ThemeConfig } from '@aplus-frontend/antdv/es/config-provider/context';
|
|
8
8
|
import { default as __DTS_DEFAULT_0__ } from '@aplus-frontend/antdv/es/config-provider/renderEmpty';
|
|
9
9
|
import { TransformCellTextProps } from '@aplus-frontend/antdv/es/table/interface';
|
|
10
10
|
/**
|
|
@@ -39,6 +39,7 @@ export declare function mergeAntdProvideConfig(config: ConfigProviderProps): {
|
|
|
39
39
|
autocomplete?: string;
|
|
40
40
|
} | undefined;
|
|
41
41
|
select?: {
|
|
42
|
+
variant?: Variant;
|
|
42
43
|
showSearch?: boolean;
|
|
43
44
|
} | undefined;
|
|
44
45
|
form?: {
|
|
@@ -60,10 +61,14 @@ export declare function mergeAntdProvideConfig(config: ConfigProviderProps): {
|
|
|
60
61
|
showSizeChanger?: boolean;
|
|
61
62
|
} | undefined;
|
|
62
63
|
theme?: ThemeConfig | undefined;
|
|
64
|
+
cascader?: {
|
|
65
|
+
variant?: Variant;
|
|
66
|
+
} | undefined;
|
|
63
67
|
wave?: {
|
|
64
68
|
disabled?: boolean;
|
|
65
69
|
} | undefined;
|
|
66
70
|
prefixCls?: string | undefined;
|
|
71
|
+
variant?: "filled" | "outlined" | "borderless" | "underlined" | undefined;
|
|
67
72
|
getPopupContainer?: ((triggerNode?: HTMLElement) => HTMLElement) | undefined;
|
|
68
73
|
iconPrefixCls?: string | undefined;
|
|
69
74
|
getTargetContainer?: (() => HTMLElement | Window) | undefined;
|
|
@@ -80,6 +85,7 @@ export declare function mergeAntdProviderConfigWithCache(newConfig: ConfigProvid
|
|
|
80
85
|
autocomplete?: string;
|
|
81
86
|
} | undefined;
|
|
82
87
|
select?: {
|
|
88
|
+
variant?: Variant;
|
|
83
89
|
showSearch?: boolean;
|
|
84
90
|
} | undefined;
|
|
85
91
|
form?: {
|
|
@@ -101,10 +107,14 @@ export declare function mergeAntdProviderConfigWithCache(newConfig: ConfigProvid
|
|
|
101
107
|
showSizeChanger?: boolean;
|
|
102
108
|
} | undefined;
|
|
103
109
|
theme?: ThemeConfig | undefined;
|
|
110
|
+
cascader?: {
|
|
111
|
+
variant?: Variant;
|
|
112
|
+
} | undefined;
|
|
104
113
|
wave?: {
|
|
105
114
|
disabled?: boolean;
|
|
106
115
|
} | undefined;
|
|
107
116
|
prefixCls?: string | undefined;
|
|
117
|
+
variant?: "filled" | "outlined" | "borderless" | "underlined" | undefined;
|
|
108
118
|
getPopupContainer?: ((triggerNode?: HTMLElement) => HTMLElement) | undefined;
|
|
109
119
|
iconPrefixCls?: string | undefined;
|
|
110
120
|
getTargetContainer?: (() => HTMLElement | Window) | undefined;
|
package/es/src/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: "6.26.
|
|
1
|
+
declare const _default: "6.26.5";
|
|
2
2
|
export default _default;
|
package/es/src/version.mjs
CHANGED
|
@@ -110,6 +110,7 @@ declare const _default: DefineComponent<WorkOrderModalProps, {}, {}, {}, {}, Com
|
|
|
110
110
|
readonly onFinish?: ((values: any) => void) | undefined;
|
|
111
111
|
readonly onFinishFailed?: ((errorInfo: ValidateErrorEntity<any>) => void) | undefined;
|
|
112
112
|
readonly onValidate?: ((name: string | number | string[] | number[], status: boolean, errors: string[]) => void) | undefined;
|
|
113
|
+
readonly variant?: "filled" | "outlined" | "borderless" | "underlined" | undefined;
|
|
113
114
|
readonly initialValues?: Recordable | undefined;
|
|
114
115
|
readonly onValuesChange?: ((changedValues: Recordable, allValues: Recordable, fieldName: NamePath) => void) | undefined;
|
|
115
116
|
readonly syncToUrl?: boolean | ((values: Recordable, type: "get" | "set") => Recordable) | undefined;
|
|
@@ -344,11 +345,16 @@ declare const _default: DefineComponent<WorkOrderModalProps, {}, {}, {}, {}, Com
|
|
|
344
345
|
type: PropType<(name: string | number | string[] | number[], status: boolean, errors: string[]) => void>;
|
|
345
346
|
default: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
|
|
346
347
|
};
|
|
348
|
+
variant: {
|
|
349
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
350
|
+
default: "filled" | "outlined" | "borderless" | "underlined";
|
|
351
|
+
};
|
|
347
352
|
}>> & Readonly<{}>, () => VueNode, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {
|
|
348
353
|
size: ButtonSize;
|
|
349
354
|
onSubmit: (e: Event) => void;
|
|
350
355
|
disabled: boolean;
|
|
351
356
|
validateTrigger: string | string[];
|
|
357
|
+
variant: "filled" | "outlined" | "borderless" | "underlined";
|
|
352
358
|
onFinish: (values: any) => void;
|
|
353
359
|
validateMessages: ValidateMessages;
|
|
354
360
|
requiredMark: "" | RequiredMark;
|
|
@@ -664,11 +670,16 @@ declare const _default: DefineComponent<WorkOrderModalProps, {}, {}, {}, {}, Com
|
|
|
664
670
|
type: PropType<(name: string | number | string[] | number[], status: boolean, errors: string[]) => void>;
|
|
665
671
|
default: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
|
|
666
672
|
};
|
|
673
|
+
variant: {
|
|
674
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
675
|
+
default: "filled" | "outlined" | "borderless" | "underlined";
|
|
676
|
+
};
|
|
667
677
|
}>> & Readonly<{}>, () => VueNode, {}, {}, {}, {
|
|
668
678
|
size: ButtonSize;
|
|
669
679
|
onSubmit: (e: Event) => void;
|
|
670
680
|
disabled: boolean;
|
|
671
681
|
validateTrigger: string | string[];
|
|
682
|
+
variant: "filled" | "outlined" | "borderless" | "underlined";
|
|
672
683
|
onFinish: (values: any) => void;
|
|
673
684
|
validateMessages: ValidateMessages;
|
|
674
685
|
requiredMark: "" | RequiredMark;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Ref, ComputedRef } from 'vue';
|
|
2
|
+
import { AgGridProps } from '../interface';
|
|
3
|
+
import { GridOptions } from 'ag-grid-community';
|
|
4
|
+
declare const useVirtualConfig: (config: Ref<AgGridProps["virtual"]>) => ComputedRef<GridOptions<any>>;
|
|
5
|
+
export default useVirtualConfig;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("vue"),i=require("lodash-unified"),n={row:!0,col:!0},l=u=>r.computed(()=>{const e=r.unref(u);if(e===!1)return{suppressRowVirtualisation:!0,suppressColumnVirtualisation:!0};const{row:t,col:s,rowBuffer:o}=i.merge(n,e||{});return{suppressRowVirtualisation:!t,suppressColumnVirtualisation:!s,rowBuffer:o}});exports.default=l;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),he=require("ag-grid-vue3"),E=require("ag-grid-community"),K=require("@aplus-frontend/antdv"),c=require("lodash-unified");require("../config-provider/index.js");const ve=require("../ap-form/index.js"),Ce=require("../ap-table/utils.js"),be=require("../ap-table/hooks/use-table-paging-ng.js"),Re=require("./hooks/use-row-selection.js"),Be=require("./context.js"),xe=require("../ap-table/context.js"),P=require("../ap-grid/constants.js"),Fe=require("@aplus-frontend/antdv/es/theme/internal"),ke=require("./theme.js"),qe=require("./hooks/use-columns.js"),ze=require("./hooks/use-columns-def.js"),Ne=require("../utils/index.js"),Te=require("../utils/slot.js"),Ve=require("./hooks/use-search-form.js");require("./components/empty/index.vue.js");const De=require("../config-provider/hooks/use-namespace.js"),Ee=require("./components/empty/index.vue2.js"),Ke=e.defineComponent({name:"AgGrid",__name:"index",props:{dropdownPrefixCls:{},bordered:{type:Boolean},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{},showSorterTooltip:{type:[Boolean,Object]},prefixCls:{},rowKey:{type:[String,Function],default:"key"},tableLayout:{},title:{},id:{},showHeader:{type:Boolean},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean]},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean},indentSize:{},expandIconColumnIndex:{},showExpandColumn:{type:Boolean},expandedRowClassName:{},childrenColumnName:{},rowExpandable:{},transformCellText:{},columns:{},rowSelection:{type:Boolean},card:{type:Boolean},params:{},request:{},defaultData:{},dataSource:{},onLoadingChange:{},onShownColumnsChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},wrapperStyle:{},tableStyle:{},manual:{type:Boolean,default:void 0},size:{default:"mini"},adaptive:{type:Boolean},columnResizable:{type:Boolean,default:!1},loading:{type:Boolean,default:void 0},summary:{},rowHeight:{},advanceRenderer:{type:Boolean},browserTooltips:{type:Boolean}},setup(A,{expose:I}){E.ModuleRegistry.registerModules([E.AllCommunityModule]);const t=A,C=e.useSlots(),{e:f,b:a,be:M}=De.useNamespace("ag-grid"),d=e.ref(t.size),U=ke.useTheme(d,e.toRef(t,"rowHeight")),m=e.ref(),[,W]=Fe.useToken();let s=!!t.dataSource;const b=Ve.useSearchForm(t),{shownColumns:l,shownColumnsBackup:L}=qe.useColumns(t),{defaultColDef:O,columnDefs:$}=ze.useColumnsDef(l,t),R=e.ref({});Be.useProvideSorter({sorter:R,setSorter(o){R.value=o}});const G={asc:"ascend",desc:"descend"};function j(){const o=m.value.getColumns()?.filter(v=>v.getSort()!==void 0);if(!o?.length)return;const r=o[0],n=r.getColDef(),p=r.getSort();x(void 0,void 0,{column:n,field:n.field,order:p?G[p]:null})}const H=e.computed(()=>Ce.recursionApColumns(e.unref(l),o=>{if(o.sorter===!0)return o.key||o.dataIndex}).filter(Boolean)),_=e.computed(()=>Ne.isDef(t.manual)?t.manual:Te.getValidVNodeList(C.searchFormExtra?.()||[]).some(r=>r.type?.name==="ApView")),{formRef:i,submit:S,reset:g,data:u,tableProps:B,handleTableChangeOptional:x,submitWith:F,refresh:k,getPaging:J,setPaging:Q,setDataSource:X}=be.useTablePaging({async request(o){if(s=!1,!Z.value&&c.isUndefined(t.dataSource)&&h(),!c.isUndefined(t.dataSource)){const n=o.pageSize*(o.current-1);return{data:(t.pagination===!1?t.dataSource:t.dataSource.slice(n,n+o.pageSize))||[],total:t.dataSource.length||0}}const r=await t.request?.(o);return{data:r?.data||[],total:r?.total||0}},namespace:"ap-grid",filterFields:e.ref([]),params:e.toRef(t,"params"),defaultData:t.defaultData,manual:e.unref(_),formatParams:t.beforeSearchSubmit,pagination:t.pagination,sortFields:H}),Y=e.computed(()=>c.isUndefined(t.dataSource)?u.records:t.dataSource),Z=e.computed(()=>{const o=t.rowSelection===!0?{}:t.rowSelection;return o?o.preserveSelectedRowKeys!==!1:!1}),{select:ee,unSelect:oe,selectedRows:w,selectedRowKeys:te,clearAll:re,selectMultiByKeys:ne}=Re.default({...t.rowSelection===!0?{}:t.rowSelection,dataSource:Y,rowKey:t.rowKey}),ae={checkbox:"multiRow",radio:"singleRow"},le=e.computed(()=>{if(!t.rowSelection)return;const{type:o="checkbox",disabled:r}=t.rowSelection===!0?{}:t.rowSelection;return{mode:ae[o],isRowSelectable:n=>r?!r(n.data):!0}}),se=e.computed(()=>{if(!t.rowSelection)return;const o=t.rowSelection===!0?{}:t.rowSelection;let r=o.fixed;return r===void 0&&(r=l.value.some(n=>n.fixed==="left"||n.fixed===!0)?"left":void 0),{sortable:!1,resizable:!1,width:o.columnWidth||60,pinned:r}});function y(o){return c.isFunction(t.rowKey)?t.rowKey(o):o[t.rowKey]}const q=({api:o=m.value})=>{if(!t.rowSelection)return;const r=w.value;if(!r.length){setTimeout(()=>{s=!0},0);return}s=!1;const n=[];o.forEachNode(p=>{const v=p.data,we=y(v);r.find(ye=>y(ye)===we)&&n.push(p)}),o.setNodesSelected({nodes:n,newValue:!0}),setTimeout(()=>{s=!0},0)},ie=o=>{s&&(o.node.isSelected()?ee(o.data):oe(o.data))},ue=()=>{s=!0},h=()=>{re(),m.value?.deselectAll()};function ce(o){ne(o),e.nextTick(()=>{q({})})}function z(o=!1){const r=o?"getFieldsValueTransformed":"getFieldsValue";return i.value?.apForm?.[r]?.(!0)}function N(o){i.value?.apForm?.setFieldsValue?.(o)}function T(){return i.value?.getSorterItems()||[]}function V(o){i.value?.setSorterItems(o)}function D(){i.value?.resetSorterItems()}xe.useProvideApTable({columns:e.computed(()=>l.value),columnsBackup:e.computed(()=>L.value),size:e.computed(()=>P.sizeMap[d.value]),updateColumns(o){l.value=o,t.onShownColumnsChange?.(o)},updateSize(o){d.value=P.sizeReverseMap[o]},renderConfig:e.computed(()=>({className:M("table-header","title"),color:W.value.colorTextTertiary})),dataSource:e.computed(()=>e.unref(u).records),getSearchFormValues:z,setSearchFormValues:N,submit:S,submitWith:F,reset:g,refresh:k,getSearchFormSorterItems:T,setSearchFormSorterItems:V,resetSearchFormSorterItems:D});const de=e.computed(()=>c.isUndefined(t.loading)?u.loading:t.loading),me=e.computed(()=>[a(),t.card?null:a("wrapper"),a("adaptive"),a(`size-${d.value}`)].filter(Boolean)),pe=e.computed(()=>({height:"100%",...t.tableStyle||{}})),fe=(o,r)=>{x({current:o,pageSize:r})};function Se(o){const r=o.data;return y(r)}function ge(o,r){m.value?.ensureIndexVisible(o,r)}return e.watch(()=>t.dataSource,o=>{X(o)},{immediate:!0,deep:!0}),e.watch(()=>t.size,o=>{d.value=o}),e.watch(()=>e.unref(u).loading,o=>{t.onLoadingChange?.(o)}),I({submit:S,reset:g,refresh:k,submitWith:F,setSearchFormValues:N,getSearchFormValues:z,getShowColumns:()=>e.unref(l),rowSelection:{selectedRows:e.computed(()=>w.value),setSelectedRowKeys:ce,clearAll:h},scrollToRow:ge,getDataSource:()=>e.unref(u.records),getPaging:J,setPaging:Q,getSearchFormSorterItems:T,setSearchFormSorterItems:V,resetSearchFormSorterItems:D}),(o,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(me.value),style:e.normalizeStyle(o.wrapperStyle)},[e.unref(c.isUndefined)(o.dataSource)&&o.searchForm!==!1&&e.unref(b).length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.card?e.unref(f)("search-wrapper"):null),style:e.normalizeStyle(o.searchFormWrapperStyle)},[e.createVNode(e.unref(ve.ApForm).SearchForm,e.mergeProps(o.searchForm||{},{ref_key:"formRef",ref:i,"custom-reset":"","submit-loading":e.unref(B).loading,onSubmit:e.unref(S),onReset:e.unref(g)}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),n=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.renderNode),{key:n.dataIndex}))),128))]),_:2},[C.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["submit-loading","onSubmit","onReset"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass([e.unref(f)("table-wrapper"),o.card?e.unref(f)("table-wrapper-card"):null]),style:e.normalizeStyle(o.tableWrapperStyle)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(a)("header-wrapper"))},[e.renderSlot(o.$slots,"title",{selectedRows:e.unref(w),selectedRowKeys:e.unref(te),shownColumns:e.unref(l),clearAll:h})],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(a)("grid-wrapper"))},[e.createVNode(e.unref(he.AgGridVue),{style:e.normalizeStyle(pe.value),"row-data":e.unref(u).records,"column-defs":e.unref($),"default-col-def":e.unref(O),"suppress-loading-overlay":"","row-selection":le.value,"selection-column-def":se.value,"get-row-id":Se,"pinned-top-row-data":o.summary?.top,"pinned-bottom-row-data":o.summary?.bottom,theme:e.unref(U),"tooltip-show-delay":500,"enable-browser-tooltips":o.browserTooltips,"tooltip-interaction":"","no-rows-overlay-component":Ee.default,onSortChanged:j,onGridReady:r[0]||(r[0]=n=>m.value=n.api),onRowDataUpdated:q,onRowSelected:ie,onFirstDataRendered:ue},null,8,["style","row-data","column-defs","default-col-def","row-selection","selection-column-def","pinned-top-row-data","pinned-bottom-row-data","theme","enable-browser-tooltips"]),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(e.unref(f)("table-loading-wrapper"))},[e.createVNode(e.unref(K.Spin),{delay:300})],2),[[e.vShow,de.value]])],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(a)("pagination-wrapper"))},[o.pagination!==!1?(e.openBlock(),e.createBlock(e.unref(K.Pagination),e.mergeProps({key:0,class:e.unref(a)("pagination")},e.unref(B).pagination,{onChange:fe}),null,16,["class"])):e.createCommentVNode("",!0)],2)],6)],6))}});exports.default=Ke;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),Re=require("ag-grid-vue3"),I=require("ag-grid-community"),M=require("@aplus-frontend/antdv"),p=require("lodash-unified");require("../config-provider/index.js");const Be=require("../ap-form/index.js"),ke=require("../ap-table/utils.js"),xe=require("../ap-table/hooks/use-table-paging-ng.js"),Fe=require("./hooks/use-row-selection.js"),qe=require("./context.js"),ze=require("../ap-table/context.js"),U=require("../ap-grid/constants.js"),Ne=require("@aplus-frontend/antdv/es/theme/internal"),Te=require("./theme.js"),Ve=require("./hooks/use-columns.js"),Ee=require("./hooks/use-columns-def.js"),De=require("../utils/index.js"),Ke=require("../utils/slot.js"),Pe=require("./hooks/use-search-form.js");require("./components/empty/index.vue.js");const Ae=require("./hooks/use-virtual-config.js"),Ie=require("../config-provider/hooks/use-namespace.js"),Me=require("./components/empty/index.vue2.js"),Ue=e.defineComponent({name:"AgGrid",__name:"index",props:{dropdownPrefixCls:{},bordered:{type:Boolean},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{},showSorterTooltip:{type:[Boolean,Object]},prefixCls:{},rowKey:{type:[String,Function],default:"key"},tableLayout:{},title:{},id:{},showHeader:{type:Boolean},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean]},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean},indentSize:{},expandIconColumnIndex:{},showExpandColumn:{type:Boolean},expandedRowClassName:{},childrenColumnName:{},rowExpandable:{},transformCellText:{},columns:{},rowSelection:{type:Boolean},card:{type:Boolean},params:{},request:{},defaultData:{},dataSource:{},onLoadingChange:{},onShownColumnsChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},wrapperStyle:{},tableStyle:{},manual:{type:Boolean,default:void 0},size:{default:"mini"},adaptive:{type:Boolean},columnResizable:{type:Boolean,default:!1},loading:{type:Boolean,default:void 0},summary:{},rowHeight:{},advanceRenderer:{type:Boolean},browserTooltips:{type:Boolean},virtual:{type:[Boolean,Object],default:void 0},onRowClicked:{},onScrollEnd:{}},setup(O,{expose:W}){I.ModuleRegistry.registerModules([I.AllCommunityModule]);const t=O,B=e.useSlots(),{e:g,b:a,be:j}=Ie.useNamespace("ag-grid"),m=e.ref(t.size),L=Te.useTheme(m,e.toRef(t,"rowHeight")),k=Ae.default(e.toRef(t,"virtual")),s=e.ref(),[,$]=Ne.useToken();let i=!!t.dataSource;const x=Pe.useSearchForm(t),{shownColumns:l,shownColumnsBackup:G}=Ve.useColumns(t),{defaultColDef:H,columnDefs:_}=Ee.useColumnsDef(l,t),y=e.ref({});qe.useProvideSorter({sorter:y,setSorter(o){y.value=o}});const J={asc:"ascend",desc:"descend"};function Q(){const o=s.value.getColumns()?.filter(d=>d.getSort()!==void 0),r=e.unref(y)||{};let n=o?.[0];const f=Object.keys(r);if(f.length&&f.every(d=>r[d]===null)){const d=Object.keys(r)[0];d&&(n=s.value?.getColumn(d))}if(!n)return;const S=n.getColDef(),w=n.getSort();q(void 0,void 0,{column:S,field:S.field,order:w?J[w]:null})}const X=e.computed(()=>ke.recursionApColumns(e.unref(l),o=>{if(o.sorter===!0)return o.key||o.dataIndex}).filter(Boolean)),Y=e.computed(()=>De.isDef(t.manual)?t.manual:Ke.getValidVNodeList(B.searchFormExtra?.()||[]).some(r=>r.type?.name==="ApView")),{formRef:u,submit:h,reset:v,data:c,tableProps:F,handleTableChangeOptional:q,submitWith:z,refresh:N,getPaging:Z,setPaging:ee,setDataSource:oe}=xe.useTablePaging({async request(o){if(i=!1,!re.value&&p.isUndefined(t.dataSource)&&R(),!p.isUndefined(t.dataSource)){const n=o.pageSize*(o.current-1);return{data:(t.pagination===!1?t.dataSource:t.dataSource.slice(n,n+o.pageSize))||[],total:t.dataSource.length||0}}const r=await t.request?.(o);return{data:r?.data||[],total:r?.total||0}},namespace:"ap-grid",filterFields:e.ref([]),params:e.toRef(t,"params"),defaultData:t.defaultData,manual:e.unref(Y),formatParams:t.beforeSearchSubmit,pagination:t.pagination,sortFields:X}),te=e.computed(()=>p.isUndefined(t.dataSource)?c.records:t.dataSource),re=e.computed(()=>{const o=t.rowSelection===!0?{}:t.rowSelection;return o?o.preserveSelectedRowKeys!==!1:!1}),{select:ne,unSelect:ae,selectedRows:C,selectedRowKeys:le,clearAll:se,selectMultiByKeys:ie}=Fe.default({...t.rowSelection===!0?{}:t.rowSelection,dataSource:te,rowKey:t.rowKey}),ue={checkbox:"multiRow",radio:"singleRow"},ce=e.computed(()=>{if(!t.rowSelection)return;const{type:o="checkbox",disabled:r}=t.rowSelection===!0?{}:t.rowSelection;return{mode:ue[o],isRowSelectable:n=>r?!r(n.data):!0}}),de=e.computed(()=>{if(!t.rowSelection)return;const o=t.rowSelection===!0?{}:t.rowSelection;let r=o.fixed;return r===void 0&&(r=l.value.some(n=>n.fixed==="left"||n.fixed===!0)?"left":void 0),{sortable:!1,resizable:!1,width:o.columnWidth||60,pinned:r}});function b(o){return p.isFunction(t.rowKey)?t.rowKey(o):o[t.rowKey]}const T=({api:o=s.value})=>{if(!t.rowSelection)return;const r=C.value;if(!r.length){setTimeout(()=>{i=!0},0);return}i=!1;const n=[];o.forEachNode(f=>{const A=f.data,S=b(A);r.find(w=>b(w)===S)&&n.push(f)}),o.setNodesSelected({nodes:n,newValue:!0}),setTimeout(()=>{i=!0},0)},pe=o=>{i&&(o.node.isSelected()?ne(o.data):ae(o.data))},me=()=>{i=!0},R=()=>{se(),s.value?.deselectAll()};function fe(o){ie(o),e.nextTick(()=>{T({})})}function V(o=!1){const r=o?"getFieldsValueTransformed":"getFieldsValue";return u.value?.apForm?.[r]?.(!0)}function E(o){u.value?.apForm?.setFieldsValue?.(o)}function D(){return u.value?.getSorterItems()||[]}function K(o){u.value?.setSorterItems(o)}function P(){u.value?.resetSorterItems()}ze.useProvideApTable({columns:e.computed(()=>l.value),columnsBackup:e.computed(()=>G.value),size:e.computed(()=>U.sizeMap[m.value]),updateColumns(o){l.value=o,t.onShownColumnsChange?.(o)},updateSize(o){m.value=U.sizeReverseMap[o]},renderConfig:e.computed(()=>({className:j("table-header","title"),color:$.value.colorTextTertiary})),dataSource:e.computed(()=>e.unref(c).records),getSearchFormValues:V,setSearchFormValues:E,submit:h,submitWith:z,reset:v,refresh:N,getSearchFormSorterItems:D,setSearchFormSorterItems:K,resetSearchFormSorterItems:P});const ge=e.computed(()=>p.isUndefined(t.loading)?c.loading:t.loading),Se=e.computed(()=>[a(),t.card?null:a("wrapper"),a("adaptive"),a(`size-${m.value}`)].filter(Boolean)),we=e.computed(()=>({height:"100%",...t.tableStyle||{}})),ye=(o,r)=>{q({current:o,pageSize:r})};function he(o){const r=o.data;return b(r)}function ve(o,r){s.value?.ensureIndexVisible(o,r)}function Ce(o){t.onRowClicked?.(o.data)}function be(o){t.onScrollEnd?.(o.direction)}return e.watch(()=>t.dataSource,o=>{oe(o)},{immediate:!0,deep:!0}),e.watch(()=>t.size,o=>{m.value=o}),e.watch(()=>e.unref(c).loading,o=>{t.onLoadingChange?.(o)}),W({submit:h,reset:v,refresh:N,submitWith:z,setSearchFormValues:E,getSearchFormValues:V,getShowColumns:()=>e.unref(l),rowSelection:{selectedRows:e.computed(()=>C.value),setSelectedRowKeys:fe,clearAll:R},scrollToRow:ve,getDataSource:()=>e.unref(c.records),getPaging:Z,setPaging:ee,getSearchFormSorterItems:D,setSearchFormSorterItems:K,resetSearchFormSorterItems:P}),(o,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(Se.value),style:e.normalizeStyle(o.wrapperStyle)},[e.unref(p.isUndefined)(o.dataSource)&&o.searchForm!==!1&&e.unref(x).length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.card?e.unref(g)("search-wrapper"):null),style:e.normalizeStyle(o.searchFormWrapperStyle)},[e.createVNode(e.unref(Be.ApForm).SearchForm,e.mergeProps(o.searchForm||{},{ref_key:"formRef",ref:u,"custom-reset":"","submit-loading":e.unref(F).loading,onSubmit:e.unref(h),onReset:e.unref(v)}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(x),n=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.renderNode),{key:n.dataIndex}))),128))]),_:2},[B.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["submit-loading","onSubmit","onReset"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass([e.unref(g)("table-wrapper"),o.card?e.unref(g)("table-wrapper-card"):null]),style:e.normalizeStyle(o.tableWrapperStyle)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(a)("header-wrapper"))},[e.renderSlot(o.$slots,"title",{selectedRows:e.unref(C),selectedRowKeys:e.unref(le),shownColumns:e.unref(l),clearAll:R})],2),e.createTextVNode(" "+e.toDisplayString(console.log(e.unref(k)))+" ",1),e.createElementVNode("div",{class:e.normalizeClass(e.unref(a)("grid-wrapper"))},[e.createVNode(e.unref(Re.AgGridVue),e.mergeProps(e.unref(k),{style:we.value,"row-data":e.unref(c).records,"column-defs":e.unref(_),"default-col-def":e.unref(H),"suppress-loading-overlay":"","row-selection":ce.value,"selection-column-def":de.value,"get-row-id":he,"pinned-top-row-data":o.summary?.top,"pinned-bottom-row-data":o.summary?.bottom,theme:e.unref(L),"tooltip-show-delay":500,"enable-browser-tooltips":o.browserTooltips,"tooltip-interaction":"","no-rows-overlay-component":Me.default,onSortChanged:Q,onGridReady:r[0]||(r[0]=n=>s.value=n.api),onRowDataUpdated:T,onRowSelected:pe,onFirstDataRendered:me,onRowClicked:Ce,onBodyScrollEnd:be}),null,16,["style","row-data","column-defs","default-col-def","row-selection","selection-column-def","pinned-top-row-data","pinned-bottom-row-data","theme","enable-browser-tooltips"]),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(e.unref(g)("table-loading-wrapper"))},[e.createVNode(e.unref(M.Spin),{delay:300})],2),[[e.vShow,ge.value]])],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(a)("pagination-wrapper"))},[o.pagination!==!1?(e.openBlock(),e.createBlock(e.unref(M.Pagination),e.mergeProps({key:0,class:e.unref(a)("pagination")},e.unref(F).pagination,{onChange:ye}),null,16,["class"])):e.createCommentVNode("",!0)],2)],6)],6))}});exports.default=Ue;
|
|
@@ -4,7 +4,7 @@ import { TableProps } from '@aplus-frontend/antdv';
|
|
|
4
4
|
import { ApFormSearchFormPopoverSorterItem, ApFormSearchFormProps } from '../ap-form/interface';
|
|
5
5
|
import { Recordable } from '../type';
|
|
6
6
|
import { SortOrder, TableRowSelection } from '@aplus-frontend/antdv/es/table/interface';
|
|
7
|
-
import { ColDef, IRowNode } from 'ag-grid-community';
|
|
7
|
+
import { ColDef, IRowNode, ScrollDirection } from 'ag-grid-community';
|
|
8
8
|
import { InternalPagingType } from '../ap-table/hooks/use-table-paging-ng';
|
|
9
9
|
export type AgGridColumnType<RecordType = any, ExtraValueType = 'text', ValueType extends ApTableValueTypes = ApTableValueTypes, MergedValueType extends ExtraValueType | ValueType = ExtraValueType | ValueType> = MergedValueType extends ExtraValueType | ValueType ? Omit<ExtraProColumnType<RecordType>, 'sorter' | 'rowSpan' | 'customCell' | 'customHeaderCell' | 'minWidth' | 'width' | 'maxWidth' | 'className' | 'class' | 'colSpan'> & {
|
|
10
10
|
children?: AgGridColumnType<RecordType, ExtraValueType, ValueType, MergedValueType>[];
|
|
@@ -106,6 +106,11 @@ export type AgGridRowSelection<RecordType> = Pick<TableRowSelection<RecordType>,
|
|
|
106
106
|
*/
|
|
107
107
|
preserveSelectedRowKeys?: boolean;
|
|
108
108
|
};
|
|
109
|
+
export type AgGridVirtualConfig = {
|
|
110
|
+
row?: boolean;
|
|
111
|
+
col?: boolean;
|
|
112
|
+
rowBuffer?: number;
|
|
113
|
+
};
|
|
109
114
|
export type AgGridProps<RecordType = any, ParamsType = any> = Omit<TableProps<RecordType>, 'columns' | 'pagination' | 'dataSource' | 'size' | 'rowSelection' | 'rowClassName' | 'footer' | 'loading' | 'sticky'> & {
|
|
110
115
|
/**
|
|
111
116
|
* 列配置
|
|
@@ -221,6 +226,22 @@ export type AgGridProps<RecordType = any, ParamsType = any> = Omit<TableProps<Re
|
|
|
221
226
|
* 单元格tooltip使用原生实现 默认为 `false`
|
|
222
227
|
*/
|
|
223
228
|
browserTooltips?: boolean;
|
|
229
|
+
/**
|
|
230
|
+
* 虚拟列表配置项
|
|
231
|
+
*/
|
|
232
|
+
virtual?: false | AgGridVirtualConfig;
|
|
233
|
+
/**
|
|
234
|
+
* 行点击事件
|
|
235
|
+
* @param record 行数据
|
|
236
|
+
* @returns
|
|
237
|
+
*/
|
|
238
|
+
onRowClicked?: (record: RecordType) => void;
|
|
239
|
+
/**
|
|
240
|
+
* 表格滚动结束后的事件
|
|
241
|
+
* @param direction
|
|
242
|
+
* @returns
|
|
243
|
+
*/
|
|
244
|
+
onScrollEnd?: (direction: ScrollDirection) => void;
|
|
224
245
|
};
|
|
225
246
|
export type AgGridExpose<SearchParamsType = Recordable, RecordType = any> = {
|
|
226
247
|
/**
|
|
@@ -50,6 +50,15 @@ declare function __VLS_template(): {
|
|
|
50
50
|
type: BooleanConstructor;
|
|
51
51
|
default: boolean;
|
|
52
52
|
};
|
|
53
|
+
showArrow: {
|
|
54
|
+
type: BooleanConstructor;
|
|
55
|
+
default: boolean;
|
|
56
|
+
};
|
|
57
|
+
variant: {
|
|
58
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
59
|
+
default: "filled" | "outlined" | "borderless" | "underlined";
|
|
60
|
+
};
|
|
61
|
+
maxCount: NumberConstructor;
|
|
53
62
|
transitionName: StringConstructor;
|
|
54
63
|
choiceTransitionName: {
|
|
55
64
|
type: PropType<"">;
|
|
@@ -132,6 +141,7 @@ declare function __VLS_template(): {
|
|
|
132
141
|
clearIcon: VueTypeValidableDef<any>;
|
|
133
142
|
options: PropType<DefaultOptionType[]>;
|
|
134
143
|
onDeselect: PropType<SelectHandler<(string | number) | LabeledValue, DefaultOptionType>>;
|
|
144
|
+
prefix: VueTypeValidableDef<any>;
|
|
135
145
|
onSearch: PropType<(value: string) => void>;
|
|
136
146
|
fieldNames: PropType<FieldNames>;
|
|
137
147
|
dropdownStyle: {
|
|
@@ -165,10 +175,6 @@ declare function __VLS_template(): {
|
|
|
165
175
|
onDropdownVisibleChange: {
|
|
166
176
|
type: PropType<(open: boolean) => void>;
|
|
167
177
|
};
|
|
168
|
-
showArrow: {
|
|
169
|
-
type: BooleanConstructor;
|
|
170
|
-
default: any;
|
|
171
|
-
};
|
|
172
178
|
onPopupScroll: PropType<(e: UIEvent) => void>;
|
|
173
179
|
menuItemSelectedIcon: VueTypeValidableDef<any>;
|
|
174
180
|
listItemHeight: NumberConstructor;
|
|
@@ -202,6 +208,7 @@ declare function __VLS_template(): {
|
|
|
202
208
|
virtual: boolean;
|
|
203
209
|
dropdownMatchSelectWidth: number | boolean;
|
|
204
210
|
loading: boolean;
|
|
211
|
+
variant: "filled" | "outlined" | "borderless" | "underlined";
|
|
205
212
|
bordered: boolean;
|
|
206
213
|
defaultValue: SelectValue;
|
|
207
214
|
status: "" | "error" | "warning";
|
|
@@ -212,11 +219,11 @@ declare function __VLS_template(): {
|
|
|
212
219
|
placement: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
|
|
213
220
|
showSearch: boolean;
|
|
214
221
|
choiceTransitionName: "";
|
|
215
|
-
showArrow: boolean;
|
|
216
222
|
autoClearSearchValue: boolean;
|
|
217
223
|
filterOption: boolean | FilterFunc<DefaultOptionType>;
|
|
218
224
|
defaultActiveFirstOption: boolean;
|
|
219
225
|
labelInValue: boolean;
|
|
226
|
+
showArrow: boolean;
|
|
220
227
|
}, true, {}, CustomSlotsType<{
|
|
221
228
|
notFoundContent: any;
|
|
222
229
|
suffixIcon: any;
|
|
@@ -230,6 +237,7 @@ declare function __VLS_template(): {
|
|
|
230
237
|
maxTagPlaceholder: any;
|
|
231
238
|
optionLabel: any;
|
|
232
239
|
default: any;
|
|
240
|
+
prefix: any;
|
|
233
241
|
}>, GlobalComponents, GlobalDirectives, string, {}, any, ComponentProvideOptions, {
|
|
234
242
|
P: {};
|
|
235
243
|
B: {};
|
|
@@ -261,6 +269,15 @@ declare function __VLS_template(): {
|
|
|
261
269
|
type: BooleanConstructor;
|
|
262
270
|
default: boolean;
|
|
263
271
|
};
|
|
272
|
+
showArrow: {
|
|
273
|
+
type: BooleanConstructor;
|
|
274
|
+
default: boolean;
|
|
275
|
+
};
|
|
276
|
+
variant: {
|
|
277
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
278
|
+
default: "filled" | "outlined" | "borderless" | "underlined";
|
|
279
|
+
};
|
|
280
|
+
maxCount: NumberConstructor;
|
|
264
281
|
transitionName: StringConstructor;
|
|
265
282
|
choiceTransitionName: {
|
|
266
283
|
type: PropType<"">;
|
|
@@ -343,6 +360,7 @@ declare function __VLS_template(): {
|
|
|
343
360
|
clearIcon: VueTypeValidableDef<any>;
|
|
344
361
|
options: PropType<DefaultOptionType[]>;
|
|
345
362
|
onDeselect: PropType<SelectHandler<(string | number) | LabeledValue, DefaultOptionType>>;
|
|
363
|
+
prefix: VueTypeValidableDef<any>;
|
|
346
364
|
onSearch: PropType<(value: string) => void>;
|
|
347
365
|
fieldNames: PropType<FieldNames>;
|
|
348
366
|
dropdownStyle: {
|
|
@@ -376,10 +394,6 @@ declare function __VLS_template(): {
|
|
|
376
394
|
onDropdownVisibleChange: {
|
|
377
395
|
type: PropType<(open: boolean) => void>;
|
|
378
396
|
};
|
|
379
|
-
showArrow: {
|
|
380
|
-
type: BooleanConstructor;
|
|
381
|
-
default: any;
|
|
382
|
-
};
|
|
383
397
|
onPopupScroll: PropType<(e: UIEvent) => void>;
|
|
384
398
|
menuItemSelectedIcon: VueTypeValidableDef<any>;
|
|
385
399
|
listItemHeight: NumberConstructor;
|
|
@@ -413,6 +427,7 @@ declare function __VLS_template(): {
|
|
|
413
427
|
virtual: boolean;
|
|
414
428
|
dropdownMatchSelectWidth: number | boolean;
|
|
415
429
|
loading: boolean;
|
|
430
|
+
variant: "filled" | "outlined" | "borderless" | "underlined";
|
|
416
431
|
bordered: boolean;
|
|
417
432
|
defaultValue: SelectValue;
|
|
418
433
|
status: "" | "error" | "warning";
|
|
@@ -423,11 +438,11 @@ declare function __VLS_template(): {
|
|
|
423
438
|
placement: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
|
|
424
439
|
showSearch: boolean;
|
|
425
440
|
choiceTransitionName: "";
|
|
426
|
-
showArrow: boolean;
|
|
427
441
|
autoClearSearchValue: boolean;
|
|
428
442
|
filterOption: boolean | FilterFunc<DefaultOptionType>;
|
|
429
443
|
defaultActiveFirstOption: boolean;
|
|
430
444
|
labelInValue: boolean;
|
|
445
|
+
showArrow: boolean;
|
|
431
446
|
}> | null;
|
|
432
447
|
};
|
|
433
448
|
rootEl: any;
|
|
@@ -453,8 +468,8 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
453
468
|
lazy: boolean;
|
|
454
469
|
allowClear: boolean;
|
|
455
470
|
defaultOpen: boolean;
|
|
456
|
-
showSearch: boolean;
|
|
457
471
|
showArrow: boolean;
|
|
472
|
+
showSearch: boolean;
|
|
458
473
|
autoClearSearchValue: boolean;
|
|
459
474
|
defaultActiveFirstOption: boolean;
|
|
460
475
|
labelInValue: boolean;
|
|
@@ -487,6 +502,15 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
487
502
|
type: BooleanConstructor;
|
|
488
503
|
default: boolean;
|
|
489
504
|
};
|
|
505
|
+
showArrow: {
|
|
506
|
+
type: BooleanConstructor;
|
|
507
|
+
default: boolean;
|
|
508
|
+
};
|
|
509
|
+
variant: {
|
|
510
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
511
|
+
default: "filled" | "outlined" | "borderless" | "underlined";
|
|
512
|
+
};
|
|
513
|
+
maxCount: NumberConstructor;
|
|
490
514
|
transitionName: StringConstructor;
|
|
491
515
|
choiceTransitionName: {
|
|
492
516
|
type: PropType<"">;
|
|
@@ -569,6 +593,7 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
569
593
|
clearIcon: VueTypeValidableDef<any>;
|
|
570
594
|
options: PropType<DefaultOptionType[]>;
|
|
571
595
|
onDeselect: PropType<SelectHandler<(string | number) | LabeledValue, DefaultOptionType>>;
|
|
596
|
+
prefix: VueTypeValidableDef<any>;
|
|
572
597
|
onSearch: PropType<(value: string) => void>;
|
|
573
598
|
fieldNames: PropType<FieldNames>;
|
|
574
599
|
dropdownStyle: {
|
|
@@ -602,10 +627,6 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
602
627
|
onDropdownVisibleChange: {
|
|
603
628
|
type: PropType<(open: boolean) => void>;
|
|
604
629
|
};
|
|
605
|
-
showArrow: {
|
|
606
|
-
type: BooleanConstructor;
|
|
607
|
-
default: any;
|
|
608
|
-
};
|
|
609
630
|
onPopupScroll: PropType<(e: UIEvent) => void>;
|
|
610
631
|
menuItemSelectedIcon: VueTypeValidableDef<any>;
|
|
611
632
|
listItemHeight: NumberConstructor;
|
|
@@ -639,6 +660,7 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
639
660
|
virtual: boolean;
|
|
640
661
|
dropdownMatchSelectWidth: number | boolean;
|
|
641
662
|
loading: boolean;
|
|
663
|
+
variant: "filled" | "outlined" | "borderless" | "underlined";
|
|
642
664
|
bordered: boolean;
|
|
643
665
|
defaultValue: SelectValue;
|
|
644
666
|
status: "" | "error" | "warning";
|
|
@@ -649,11 +671,11 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
649
671
|
placement: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
|
|
650
672
|
showSearch: boolean;
|
|
651
673
|
choiceTransitionName: "";
|
|
652
|
-
showArrow: boolean;
|
|
653
674
|
autoClearSearchValue: boolean;
|
|
654
675
|
filterOption: boolean | FilterFunc<DefaultOptionType>;
|
|
655
676
|
defaultActiveFirstOption: boolean;
|
|
656
677
|
labelInValue: boolean;
|
|
678
|
+
showArrow: boolean;
|
|
657
679
|
}, true, {}, CustomSlotsType<{
|
|
658
680
|
notFoundContent: any;
|
|
659
681
|
suffixIcon: any;
|
|
@@ -667,6 +689,7 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
667
689
|
maxTagPlaceholder: any;
|
|
668
690
|
optionLabel: any;
|
|
669
691
|
default: any;
|
|
692
|
+
prefix: any;
|
|
670
693
|
}>, GlobalComponents, GlobalDirectives, string, {}, any, ComponentProvideOptions, {
|
|
671
694
|
P: {};
|
|
672
695
|
B: {};
|
|
@@ -698,6 +721,15 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
698
721
|
type: BooleanConstructor;
|
|
699
722
|
default: boolean;
|
|
700
723
|
};
|
|
724
|
+
showArrow: {
|
|
725
|
+
type: BooleanConstructor;
|
|
726
|
+
default: boolean;
|
|
727
|
+
};
|
|
728
|
+
variant: {
|
|
729
|
+
type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
|
|
730
|
+
default: "filled" | "outlined" | "borderless" | "underlined";
|
|
731
|
+
};
|
|
732
|
+
maxCount: NumberConstructor;
|
|
701
733
|
transitionName: StringConstructor;
|
|
702
734
|
choiceTransitionName: {
|
|
703
735
|
type: PropType<"">;
|
|
@@ -780,6 +812,7 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
780
812
|
clearIcon: VueTypeValidableDef<any>;
|
|
781
813
|
options: PropType<DefaultOptionType[]>;
|
|
782
814
|
onDeselect: PropType<SelectHandler<(string | number) | LabeledValue, DefaultOptionType>>;
|
|
815
|
+
prefix: VueTypeValidableDef<any>;
|
|
783
816
|
onSearch: PropType<(value: string) => void>;
|
|
784
817
|
fieldNames: PropType<FieldNames>;
|
|
785
818
|
dropdownStyle: {
|
|
@@ -813,10 +846,6 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
813
846
|
onDropdownVisibleChange: {
|
|
814
847
|
type: PropType<(open: boolean) => void>;
|
|
815
848
|
};
|
|
816
|
-
showArrow: {
|
|
817
|
-
type: BooleanConstructor;
|
|
818
|
-
default: any;
|
|
819
|
-
};
|
|
820
849
|
onPopupScroll: PropType<(e: UIEvent) => void>;
|
|
821
850
|
menuItemSelectedIcon: VueTypeValidableDef<any>;
|
|
822
851
|
listItemHeight: NumberConstructor;
|
|
@@ -850,6 +879,7 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
850
879
|
virtual: boolean;
|
|
851
880
|
dropdownMatchSelectWidth: number | boolean;
|
|
852
881
|
loading: boolean;
|
|
882
|
+
variant: "filled" | "outlined" | "borderless" | "underlined";
|
|
853
883
|
bordered: boolean;
|
|
854
884
|
defaultValue: SelectValue;
|
|
855
885
|
status: "" | "error" | "warning";
|
|
@@ -860,11 +890,11 @@ declare const __VLS_component: DefineComponent<ApFieldSelectProps, {
|
|
|
860
890
|
placement: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
|
|
861
891
|
showSearch: boolean;
|
|
862
892
|
choiceTransitionName: "";
|
|
863
|
-
showArrow: boolean;
|
|
864
893
|
autoClearSearchValue: boolean;
|
|
865
894
|
filterOption: boolean | FilterFunc<DefaultOptionType>;
|
|
866
895
|
defaultActiveFirstOption: boolean;
|
|
867
896
|
labelInValue: boolean;
|
|
897
|
+
showArrow: boolean;
|
|
868
898
|
}> | null;
|
|
869
899
|
}, any>;
|
|
870
900
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),u=require("lodash-unified"),S=require("@aplus-frontend/antdv");require("../../hooks/index.js");const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),u=require("lodash-unified"),S=require("@aplus-frontend/antdv");require("../../hooks/index.js");const I=require("../hooks/use-default-placeholder.js"),d=require("./use-select-options.js"),T=require("../../hooks/useControllableValue.js"),P={key:0},k=e.defineComponent({name:"ApFieldSelect",__name:"index",props:{mode:{default:"edit"},class:{},style:{},defaultValue:{},notFoundContent:{},suffixIcon:{},itemIcon:{},size:{},bordered:{type:Boolean,default:void 0},showArrow:{type:Boolean,default:void 0},variant:{},maxCount:{},transitionName:{},choiceTransitionName:{},popupClassName:{},dropdownClassName:{},placement:{},status:{},children:{},listHeight:{},onMouseenter:{},onMouseleave:{},tabindex:{},onClick:{},onFocus:{},onBlur:{},onChange:{},onKeydown:{},onKeyup:{},onMousedown:{},onSelect:{},open:{type:Boolean,default:void 0},animation:{},direction:{},disabled:{type:Boolean,default:void 0},prefixCls:{},getPopupContainer:{},virtual:{type:Boolean,default:void 0},dropdownMatchSelectWidth:{},loading:{type:Boolean,default:void 0},showAction:{},dropdownAlign:{},placeholder:{},allowClear:{type:Boolean,default:!0},autofocus:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:void 0},id:{},clearIcon:{},options:{},onDeselect:{},prefix:{},fieldNames:{},dropdownStyle:{},dropdownRender:{},showSearch:{type:Boolean,default:void 0},searchValue:{},onInputKeyDown:{},removeIcon:{},maxTagCount:{},maxTagTextLength:{},maxTagPlaceholder:{},tokenSeparators:{},tagRender:{},optionLabelRender:{},onClear:{},onDropdownVisibleChange:{},onPopupScroll:{},menuItemSelectedIcon:{},listItemHeight:{},inputValue:{},autoClearSearchValue:{type:Boolean,default:void 0},filterOption:{},filterSort:{},optionFilterProp:{},optionLabelProp:{},defaultActiveFirstOption:{type:Boolean,default:void 0},onClickOption:{},labelInValue:{type:Boolean,default:void 0},emptyText:{default:"--"},request:{},multiple:{type:Boolean,default:void 0},value:{},"onUpdate:value":{},searchMode:{default:"filter"},refetchOnFocus:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},addAll:{type:[Boolean,Number]},params:{},searchDelay:{default:300}},emits:["update:value"],setup(g,{expose:C,emit:B}){let r=0;const o=g,_=u.debounce(t=>{if(!u.isFunction(o.request))return;r+=1;const n=r;c([]),a.value=!0,o.request(t).then(l=>{r===n&&(c(l),a.value=!1)})},o.searchDelay),L=(t,n)=>{const l=o.fieldNames?.label||"label";return typeof n?.[l]=="string"&&n[l].toLowerCase().indexOf(t.toLowerCase())>-1},{options:i,updateOptions:c}=d.useSelectOptions(o),m=e.ref(),a=e.ref(o?.loading||!1),b=B;async function f(t=!0){if(!u.isFunction(o.request))return;a.value=!0,r+=1;const n=r;try{t&&c([]);const l=await o.request(void 0,o.params);if(n!==r)return;c(l)}finally{a.value=!1}}function w(t){o.onFocus?.(t),o.refetchOnFocus&&r>0&&!a.value&&f(!0)}e.onMounted(()=>{o.lazy||f()}),e.watch(()=>o.params,()=>{f()},{deep:!0});const{value:p,updateValue:v}=T.useControllableValue(o,b),F=I.useDefaultPlaceholder("Select",o),O=e.computed(()=>{const t=e.unref(p);if(!t)return o.emptyText;const n=o.fieldNames?.label||"label",l=o.fieldNames?.value||"value";return u.isArray(t)?t.map(s=>e.unref(i).find(x=>x[l]===s)?.[n]).filter(Boolean).join("、")||o.emptyText:e.unref(i).find(s=>s[l]===t)?.[n]||o.emptyText}),A=e.computed(()=>{const t=!!o?.showSearch,n=o.searchMode;let l={};return t&&(l=n==="request"?{defaultActiveFirstOption:!1,onSearch:_,notFoundContent:a.value?void 0:null,filterOption:!1,suffixIcon:null}:{filterOption:u.isNil(o?.filterOption)?L:o?.filterOption}),{...u.omit(o,["mode","value","onUpdate:value","onSearch","request","searchMode","onFocus","onBeforeSelect"]),placeholder:e.unref(F),...l}}),y=e.computed(()=>i.value.map(t=>t[o.fieldNames?.value||"value"]).filter(t=>t!==d.SELECT_ALL_VALUE_KEY)),V=e.computed(()=>{if(!o.multiple||!o.addAll)return e.unref(p);if(i.value.some(t=>t[o.fieldNames?.value||"value"]===d.SELECT_ALL_VALUE_KEY)){const t=e.unref(y),n=e.unref(p)||[];if(t.length&&t.every(l=>n?.includes(l)))return[d.SELECT_ALL_VALUE_KEY]}return e.unref(p)});function E(t){return o.multiple&&t.includes(d.SELECT_ALL_VALUE_KEY)?v(e.unref(y)):v(t)}function N(){m.value?.focus()}function q(){m.value?.blur()}return C({focus:N,blur:q,request:f}),(t,n)=>t.mode==="read"?(e.openBlock(),e.createElementBlock("span",P,e.toDisplayString(O.value),1)):(e.openBlock(),e.createBlock(e.unref(S.Select),e.mergeProps({key:1,ref_key:"selectRef",ref:m,"allow-clear":""},A.value,{mode:t.multiple?"multiple":void 0,value:V.value,options:e.unref(i),loading:a.value,"onUpdate:value":E,onFocus:w}),e.createSlots({_:2},[e.renderList(t.$slots,(l,h)=>({name:h,fn:e.withCtx(s=>[e.renderSlot(t.$slots,h,e.normalizeProps(e.guardReactiveProps(s||{})))])})),a.value?{name:"notFoundContent",fn:e.withCtx(()=>[e.createVNode(e.unref(S.Spin),{size:"small"})]),key:"0"}:void 0]),1040,["mode","value","options","loading"]))}});exports.default=k;
|