easy-ep-ui 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +172 -0
- package/README.md +29 -14
- package/dist/easy-ep-ui.js +1 -1
- package/dist/style.css +1 -1
- package/es/charts/BaseBar/index.d.ts +2 -0
- package/es/charts/BaseBar/src/index.vue.d.ts +45 -0
- package/es/charts/BaseLine/index.d.ts +2 -0
- package/es/charts/BaseLine/src/index.vue.d.ts +47 -0
- package/es/charts/BasePie/index.d.ts +2 -0
- package/es/charts/BasePie/src/index.vue.d.ts +41 -0
- package/es/charts/BaseRadar/index.d.ts +2 -0
- package/es/charts/BaseRadar/src/index.vue.d.ts +47 -0
- package/es/charts/config.d.ts +32 -0
- package/es/charts/index.d.ts +8 -0
- package/es/charts/useChart.d.ts +21 -0
- package/es/components/ee-dept-cascader/index.d.ts +2 -0
- package/es/components/ee-dept-cascader/src/index.vue.d.ts +26 -0
- package/es/components/ee-dept-cascader/type.d.ts +39 -0
- package/es/components/ee-dict-select/src/index.vue.d.ts +20 -17
- package/es/components/ee-dict-select/type.d.ts +54 -0
- package/es/components/ee-form-dialog/src/index.vue.d.ts +110 -8
- package/es/components/ee-form-table/src/components/FormAuto.vue.d.ts +115 -0
- package/es/components/ee-form-table/src/components/FormDrawer.vue.d.ts +311 -0
- package/es/components/ee-form-table/src/components/SearchArea.vue.d.ts +39 -0
- package/es/components/ee-form-table/src/components/TableToolbar.vue.d.ts +43 -0
- package/es/components/ee-form-table/src/constants.d.ts +31 -0
- package/es/components/ee-form-table/src/hooks/useAuth.d.ts +14 -0
- package/es/components/ee-form-table/src/hooks/useCrud.d.ts +41 -0
- package/es/components/ee-form-table/src/hooks/useDict.d.ts +12 -0
- package/es/components/ee-form-table/src/hooks/useExport.d.ts +34 -0
- package/es/components/ee-form-table/src/hooks/useForm.d.ts +33 -0
- package/es/components/ee-form-table/src/hooks/usePagination.d.ts +22 -0
- package/es/components/ee-form-table/src/hooks/useSearch.d.ts +39 -0
- package/es/components/ee-form-table/src/hooks/useTable.d.ts +49 -0
- package/es/components/ee-form-table/src/index.vue.d.ts +1090 -533
- package/es/components/ee-form-table/types.d.ts +238 -0
- package/es/components/ee-remote-select/index.d.ts +2 -0
- package/es/components/ee-remote-select/src/index.vue.d.ts +30 -0
- package/es/components/ee-remote-select/type.d.ts +53 -0
- package/es/components/ee-role-select/index.d.ts +2 -0
- package/es/components/ee-role-select/src/index.vue.d.ts +29 -0
- package/es/components/ee-role-select/type.d.ts +44 -0
- package/es/components/ee-search-bar/src/index.vue.d.ts +82 -10
- package/es/components/ee-status-tag/src/index.vue.d.ts +1 -1
- package/es/components/ee-user-select/index.d.ts +2 -0
- package/es/components/ee-user-select/src/index.vue.d.ts +29 -0
- package/es/components/ee-user-select/type.d.ts +46 -0
- package/es/hooks/index.d.ts +4 -0
- package/es/hooks/useRemoteSelectPagination.d.ts +68 -0
- package/es/hooks/useSelectEcho.d.ts +27 -0
- package/es/index.d.ts +51 -2
- package/es/index.mjs +3135 -345
- package/es/locale/en.d.ts +3 -0
- package/es/locale/index.d.ts +86 -0
- package/es/locale/useLocale.d.ts +13 -0
- package/es/locale/zh-cn.d.ts +3 -0
- package/es/style.css +1 -1
- package/es/utils/types.d.ts +39 -0
- package/lib/charts/BaseBar/index.d.ts +2 -0
- package/lib/charts/BaseBar/src/index.vue.d.ts +45 -0
- package/lib/charts/BaseLine/index.d.ts +2 -0
- package/lib/charts/BaseLine/src/index.vue.d.ts +47 -0
- package/lib/charts/BasePie/index.d.ts +2 -0
- package/lib/charts/BasePie/src/index.vue.d.ts +41 -0
- package/lib/charts/BaseRadar/index.d.ts +2 -0
- package/lib/charts/BaseRadar/src/index.vue.d.ts +47 -0
- package/lib/charts/config.d.ts +32 -0
- package/lib/charts/index.d.ts +8 -0
- package/lib/charts/useChart.d.ts +21 -0
- package/lib/components/ee-dept-cascader/index.d.ts +2 -0
- package/lib/components/ee-dept-cascader/src/index.vue.d.ts +26 -0
- package/lib/components/ee-dept-cascader/type.d.ts +39 -0
- package/lib/components/ee-dict-select/src/index.vue.d.ts +20 -17
- package/lib/components/ee-dict-select/type.d.ts +54 -0
- package/lib/components/ee-form-dialog/src/index.vue.d.ts +110 -8
- package/lib/components/ee-form-table/src/components/FormAuto.vue.d.ts +115 -0
- package/lib/components/ee-form-table/src/components/FormDrawer.vue.d.ts +311 -0
- package/lib/components/ee-form-table/src/components/SearchArea.vue.d.ts +39 -0
- package/lib/components/ee-form-table/src/components/TableToolbar.vue.d.ts +43 -0
- package/lib/components/ee-form-table/src/constants.d.ts +31 -0
- package/lib/components/ee-form-table/src/hooks/useAuth.d.ts +14 -0
- package/lib/components/ee-form-table/src/hooks/useCrud.d.ts +41 -0
- package/lib/components/ee-form-table/src/hooks/useDict.d.ts +12 -0
- package/lib/components/ee-form-table/src/hooks/useExport.d.ts +34 -0
- package/lib/components/ee-form-table/src/hooks/useForm.d.ts +33 -0
- package/lib/components/ee-form-table/src/hooks/usePagination.d.ts +22 -0
- package/lib/components/ee-form-table/src/hooks/useSearch.d.ts +39 -0
- package/lib/components/ee-form-table/src/hooks/useTable.d.ts +49 -0
- package/lib/components/ee-form-table/src/index.vue.d.ts +1090 -533
- package/lib/components/ee-form-table/types.d.ts +238 -0
- package/lib/components/ee-remote-select/index.d.ts +2 -0
- package/lib/components/ee-remote-select/src/index.vue.d.ts +30 -0
- package/lib/components/ee-remote-select/type.d.ts +53 -0
- package/lib/components/ee-role-select/index.d.ts +2 -0
- package/lib/components/ee-role-select/src/index.vue.d.ts +29 -0
- package/lib/components/ee-role-select/type.d.ts +44 -0
- package/lib/components/ee-search-bar/src/index.vue.d.ts +82 -10
- package/lib/components/ee-status-tag/src/index.vue.d.ts +1 -1
- package/lib/components/ee-user-select/index.d.ts +2 -0
- package/lib/components/ee-user-select/src/index.vue.d.ts +29 -0
- package/lib/components/ee-user-select/type.d.ts +46 -0
- package/lib/hooks/index.d.ts +4 -0
- package/lib/hooks/useRemoteSelectPagination.d.ts +68 -0
- package/lib/hooks/useSelectEcho.d.ts +27 -0
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +51 -2
- package/lib/locale/en.d.ts +3 -0
- package/lib/locale/index.d.ts +86 -0
- package/lib/locale/useLocale.d.ts +13 -0
- package/lib/locale/zh-cn.d.ts +3 -0
- package/lib/style.css +1 -1
- package/lib/utils/types.d.ts +39 -0
- package/package.json +9 -5
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ee-form-table 类型定义
|
|
3
|
+
*
|
|
4
|
+
* 包含组件所需的所有 TypeScript 接口与类型别名。
|
|
5
|
+
* 公共类型(DictOption、TableColumn、Pagination 等)从 packages/utils/types.ts 导入,
|
|
6
|
+
* 私有类型仅在 ee-form-table 内部使用。
|
|
7
|
+
*/
|
|
8
|
+
/** 组件尺寸 */
|
|
9
|
+
export type ComponentSize = 'large' | 'default' | 'small';
|
|
10
|
+
/** 权限模式 */
|
|
11
|
+
export type AuthMode = 'hide' | 'disabled';
|
|
12
|
+
/** 对齐方式 */
|
|
13
|
+
export type AlignType = 'left' | 'center' | 'right';
|
|
14
|
+
/** 固定列方向 */
|
|
15
|
+
export type FixedType = 'left' | 'right';
|
|
16
|
+
/** 选择模式 */
|
|
17
|
+
export type SelectionType = 'multiple' | 'single';
|
|
18
|
+
/** 表单展示模式 */
|
|
19
|
+
export type DrawerMode = 'drawer' | 'dialog';
|
|
20
|
+
/** 导出模式 */
|
|
21
|
+
export type ExportMode = 'current' | 'all';
|
|
22
|
+
/** 搜索字段控件类型 */
|
|
23
|
+
export type SearchFieldType = 'input' | 'number' | 'select' | 'radio' | 'checkbox' | 'date' | 'date-range' | 'textarea';
|
|
24
|
+
/** Element Plus 按钮类型 */
|
|
25
|
+
export type ButtonType = 'primary' | 'success' | 'warning' | 'danger' | 'info' | 'default';
|
|
26
|
+
/** 表单字段控件类型 */
|
|
27
|
+
export type FormFieldType = 'input' | 'number' | 'select' | 'radio' | 'checkbox' | 'date' | 'date-range' | 'textarea' | 'switch';
|
|
28
|
+
export interface DictOption {
|
|
29
|
+
value: string | number;
|
|
30
|
+
label: string;
|
|
31
|
+
disabled?: boolean;
|
|
32
|
+
[key: string]: unknown;
|
|
33
|
+
}
|
|
34
|
+
export interface ColumnSearchItem {
|
|
35
|
+
enable: boolean;
|
|
36
|
+
type?: SearchFieldType;
|
|
37
|
+
placeholder?: string;
|
|
38
|
+
defaultValue?: unknown;
|
|
39
|
+
props?: Record<string, unknown>;
|
|
40
|
+
field?: string;
|
|
41
|
+
}
|
|
42
|
+
export interface ColumnFormItem {
|
|
43
|
+
/** 是否在新增表单中展示(默认 true) */
|
|
44
|
+
add?: boolean;
|
|
45
|
+
/** 是否在编辑表单中展示(默认同 add) */
|
|
46
|
+
edit?: boolean;
|
|
47
|
+
/** 表单控件类型,默认 'input' */
|
|
48
|
+
type?: FormFieldType;
|
|
49
|
+
/** 占位符 */
|
|
50
|
+
placeholder?: string;
|
|
51
|
+
/** 静态选项(select/radio/checkbox) */
|
|
52
|
+
options?: {
|
|
53
|
+
value: any;
|
|
54
|
+
label: string;
|
|
55
|
+
}[];
|
|
56
|
+
/** 字典 key(优先于 options) */
|
|
57
|
+
dictKey?: string;
|
|
58
|
+
/** 透传给控件的 props */
|
|
59
|
+
props?: Record<string, unknown>;
|
|
60
|
+
/** Element Plus 校验规则 */
|
|
61
|
+
rules?: Record<string, unknown>[];
|
|
62
|
+
/** 栅格跨列数(默认 1) */
|
|
63
|
+
colSpan?: number;
|
|
64
|
+
/** 必填标记(自动加 required 校验) */
|
|
65
|
+
required?: boolean;
|
|
66
|
+
/** 编辑时只读 */
|
|
67
|
+
readonly?: boolean;
|
|
68
|
+
/** 新增时的默认值 */
|
|
69
|
+
defaultValue?: unknown;
|
|
70
|
+
/** 强制隐藏 */
|
|
71
|
+
hide?: boolean;
|
|
72
|
+
}
|
|
73
|
+
export interface TableColumn {
|
|
74
|
+
prop: string;
|
|
75
|
+
label: string;
|
|
76
|
+
width?: string | number;
|
|
77
|
+
minWidth?: string | number;
|
|
78
|
+
align?: AlignType;
|
|
79
|
+
fixed?: FixedType;
|
|
80
|
+
sortable?: boolean;
|
|
81
|
+
show?: boolean;
|
|
82
|
+
formatter?: (row: Record<string, unknown>, column: TableColumn, cellValue: unknown, index: number) => unknown;
|
|
83
|
+
dictKey?: string;
|
|
84
|
+
slotName?: string;
|
|
85
|
+
search?: ColumnSearchItem;
|
|
86
|
+
form?: ColumnFormItem;
|
|
87
|
+
auth?: string;
|
|
88
|
+
children?: TableColumn[];
|
|
89
|
+
[key: string]: unknown;
|
|
90
|
+
}
|
|
91
|
+
export interface SearchConfig {
|
|
92
|
+
show?: boolean;
|
|
93
|
+
cols?: number;
|
|
94
|
+
maxRow?: number;
|
|
95
|
+
foldable?: boolean;
|
|
96
|
+
foldDefault?: boolean;
|
|
97
|
+
}
|
|
98
|
+
export interface PaginationConfig {
|
|
99
|
+
show?: boolean;
|
|
100
|
+
pageSize?: number;
|
|
101
|
+
pageSizes?: number[];
|
|
102
|
+
total?: number;
|
|
103
|
+
showTotal?: boolean;
|
|
104
|
+
layout?: string;
|
|
105
|
+
background?: boolean;
|
|
106
|
+
}
|
|
107
|
+
export interface ActionButton {
|
|
108
|
+
text: string;
|
|
109
|
+
icon?: string;
|
|
110
|
+
type?: ButtonType;
|
|
111
|
+
code?: string;
|
|
112
|
+
auth?: string;
|
|
113
|
+
show?: (row: Record<string, unknown>) => boolean;
|
|
114
|
+
handler: (row: Record<string, unknown>) => void;
|
|
115
|
+
}
|
|
116
|
+
export interface ActionConfig {
|
|
117
|
+
show?: boolean;
|
|
118
|
+
label?: string;
|
|
119
|
+
width?: string | number;
|
|
120
|
+
align?: AlignType;
|
|
121
|
+
showView?: boolean;
|
|
122
|
+
showEdit?: boolean;
|
|
123
|
+
showDelete?: boolean;
|
|
124
|
+
viewText?: string;
|
|
125
|
+
editText?: string;
|
|
126
|
+
deleteText?: string;
|
|
127
|
+
viewAuth?: string;
|
|
128
|
+
editAuth?: string;
|
|
129
|
+
deleteAuth?: string;
|
|
130
|
+
fixed?: FixedType;
|
|
131
|
+
confirmDelete?: boolean;
|
|
132
|
+
deleteConfirmTitle?: string;
|
|
133
|
+
deleteConfirmMessage?: string;
|
|
134
|
+
customButtons?: ActionButton[];
|
|
135
|
+
}
|
|
136
|
+
export interface ToolbarButton {
|
|
137
|
+
text: string;
|
|
138
|
+
icon?: string;
|
|
139
|
+
type?: string;
|
|
140
|
+
code?: string;
|
|
141
|
+
auth?: string;
|
|
142
|
+
handler: () => void;
|
|
143
|
+
}
|
|
144
|
+
export interface ToolbarConfig {
|
|
145
|
+
show?: boolean;
|
|
146
|
+
showAdd?: boolean;
|
|
147
|
+
showImport?: boolean;
|
|
148
|
+
showExport?: boolean;
|
|
149
|
+
showBatchDelete?: boolean;
|
|
150
|
+
addText?: string;
|
|
151
|
+
importText?: string;
|
|
152
|
+
exportText?: string;
|
|
153
|
+
batchDeleteText?: string;
|
|
154
|
+
addAuth?: string;
|
|
155
|
+
importAuth?: string;
|
|
156
|
+
exportAuth?: string;
|
|
157
|
+
batchDeleteAuth?: string;
|
|
158
|
+
customButtons?: ToolbarButton[];
|
|
159
|
+
}
|
|
160
|
+
export interface CrudApi {
|
|
161
|
+
list: (params: Record<string, unknown>) => Promise<{
|
|
162
|
+
data: Record<string, unknown>[];
|
|
163
|
+
total: number;
|
|
164
|
+
}>;
|
|
165
|
+
add?: (data: Record<string, unknown>) => Promise<unknown>;
|
|
166
|
+
edit?: (data: Record<string, unknown>) => Promise<unknown>;
|
|
167
|
+
delete?: (id: string | number) => Promise<unknown>;
|
|
168
|
+
batchDelete?: (ids: (string | number)[]) => Promise<unknown>;
|
|
169
|
+
}
|
|
170
|
+
export interface CrudConfig {
|
|
171
|
+
api: CrudApi;
|
|
172
|
+
baseParams?: Record<string, unknown>;
|
|
173
|
+
requestMethod?: 'GET' | 'POST';
|
|
174
|
+
requestInstance?: unknown;
|
|
175
|
+
}
|
|
176
|
+
export interface SelectionConfig {
|
|
177
|
+
show?: boolean;
|
|
178
|
+
type?: SelectionType;
|
|
179
|
+
disabledRow?: (row: Record<string, unknown>) => boolean;
|
|
180
|
+
reserveSelection?: boolean;
|
|
181
|
+
}
|
|
182
|
+
export interface ExportConfig {
|
|
183
|
+
mode?: ExportMode;
|
|
184
|
+
fileName?: string;
|
|
185
|
+
ignoreColumn?: string[];
|
|
186
|
+
}
|
|
187
|
+
export interface DrawerConfig {
|
|
188
|
+
mode?: DrawerMode;
|
|
189
|
+
width?: string | number;
|
|
190
|
+
fullscreen?: boolean;
|
|
191
|
+
draggable?: boolean;
|
|
192
|
+
closeOnReset?: boolean;
|
|
193
|
+
addTitle?: string;
|
|
194
|
+
editTitle?: string;
|
|
195
|
+
viewTitle?: string;
|
|
196
|
+
/** 表单每行展示列数(默认 2) */
|
|
197
|
+
formCols?: number;
|
|
198
|
+
/** 表单标签宽度(默认 '80px') */
|
|
199
|
+
formLabelWidth?: string;
|
|
200
|
+
/** 表单组件尺寸 */
|
|
201
|
+
formSize?: ComponentSize;
|
|
202
|
+
}
|
|
203
|
+
export interface ColumnSettingConfig {
|
|
204
|
+
show?: boolean;
|
|
205
|
+
storageKey?: string;
|
|
206
|
+
}
|
|
207
|
+
export interface AutoHeightConfig {
|
|
208
|
+
offset?: number;
|
|
209
|
+
}
|
|
210
|
+
export interface EeFormTableProps {
|
|
211
|
+
columns: TableColumn[];
|
|
212
|
+
data?: Record<string, unknown>[];
|
|
213
|
+
loading?: boolean;
|
|
214
|
+
searchConfig?: SearchConfig | boolean;
|
|
215
|
+
pagination?: PaginationConfig | boolean;
|
|
216
|
+
actionConfig?: ActionConfig | boolean;
|
|
217
|
+
toolbarConfig?: ToolbarConfig | boolean;
|
|
218
|
+
crudConfig?: CrudConfig;
|
|
219
|
+
selectionConfig?: SelectionConfig;
|
|
220
|
+
exportConfig?: ExportConfig;
|
|
221
|
+
drawerConfig?: DrawerConfig;
|
|
222
|
+
columnSetting?: ColumnSettingConfig;
|
|
223
|
+
autoHeight?: AutoHeightConfig | boolean;
|
|
224
|
+
dictMap?: Record<string, DictOption[]>;
|
|
225
|
+
authChecker?: (auth: string) => boolean;
|
|
226
|
+
authMode?: AuthMode;
|
|
227
|
+
emptyText?: string;
|
|
228
|
+
tableHeight?: string | number;
|
|
229
|
+
tableMaxHeight?: string | number;
|
|
230
|
+
size?: ComponentSize;
|
|
231
|
+
stripe?: boolean;
|
|
232
|
+
border?: boolean;
|
|
233
|
+
highlightCurrentRow?: boolean;
|
|
234
|
+
rowKey?: string;
|
|
235
|
+
}
|
|
236
|
+
export interface SearchParams {
|
|
237
|
+
[key: string]: unknown;
|
|
238
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { EeRemoteSelectProps } from '../type';
|
|
2
|
+
declare const _default: import('vue').DefineComponent<EeRemoteSelectProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
3
|
+
search: (keyword: string) => any;
|
|
4
|
+
clear: () => any;
|
|
5
|
+
"update:modelValue": (val: string | number | (string | number)[]) => any;
|
|
6
|
+
change: (val: string | number | (string | number)[]) => any;
|
|
7
|
+
blur: (evt: FocusEvent) => any;
|
|
8
|
+
focus: (evt: FocusEvent) => any;
|
|
9
|
+
"load-success": (options: any[]) => any;
|
|
10
|
+
}, string, import('vue').PublicProps, Readonly<EeRemoteSelectProps> & Readonly<{
|
|
11
|
+
onSearch?: ((keyword: string) => any) | undefined;
|
|
12
|
+
onClear?: (() => any) | undefined;
|
|
13
|
+
"onUpdate:modelValue"?: ((val: string | number | (string | number)[]) => any) | undefined;
|
|
14
|
+
onChange?: ((val: string | number | (string | number)[]) => any) | undefined;
|
|
15
|
+
onBlur?: ((evt: FocusEvent) => any) | undefined;
|
|
16
|
+
onFocus?: ((evt: FocusEvent) => any) | undefined;
|
|
17
|
+
"onLoad-success"?: ((options: any[]) => any) | undefined;
|
|
18
|
+
}>, {
|
|
19
|
+
pageNumKey: string;
|
|
20
|
+
pageSizeKey: string;
|
|
21
|
+
pageSize: number;
|
|
22
|
+
searchKey: string;
|
|
23
|
+
labelField: string;
|
|
24
|
+
valueField: string;
|
|
25
|
+
size: "large" | "default" | "small";
|
|
26
|
+
mode: "single" | "multiple";
|
|
27
|
+
clearable: boolean;
|
|
28
|
+
filterable: boolean;
|
|
29
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
30
|
+
export default _default;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { AxiosInstance } from 'axios';
|
|
2
|
+
import { DictOption } from '../../utils/types';
|
|
3
|
+
/** EeRemoteSelect 组件属性 */
|
|
4
|
+
export interface EeRemoteSelectProps {
|
|
5
|
+
/** 双向绑定值 */
|
|
6
|
+
modelValue?: string | number | (string | number)[];
|
|
7
|
+
/** 远程列表查询接口地址(必填) */
|
|
8
|
+
apiUrl: string;
|
|
9
|
+
/** ID 回显详情查询接口地址(必填) */
|
|
10
|
+
detailEchoUrl: string;
|
|
11
|
+
/** 选择模式,默认 single */
|
|
12
|
+
mode?: 'single' | 'multiple';
|
|
13
|
+
/** 选项 label 字段名,默认 label */
|
|
14
|
+
labelField?: string;
|
|
15
|
+
/** 选项 value 字段名,默认 value */
|
|
16
|
+
valueField?: string;
|
|
17
|
+
/** 搜索关键词参数字段名,默认 keyword */
|
|
18
|
+
searchKey?: string;
|
|
19
|
+
/** 分页页码字段名,默认 pageNum */
|
|
20
|
+
pageNumKey?: string;
|
|
21
|
+
/** 分页条数字段名,默认 pageSize */
|
|
22
|
+
pageSizeKey?: string;
|
|
23
|
+
/** 每页条数,默认 20 */
|
|
24
|
+
pageSize?: number;
|
|
25
|
+
/** 固定附加请求参数 */
|
|
26
|
+
extraParams?: Record<string, any>;
|
|
27
|
+
/** 外部 axios 请求实例,不传则从全局配置获取 */
|
|
28
|
+
requestInstance?: AxiosInstance;
|
|
29
|
+
/** 占位符文本 */
|
|
30
|
+
placeholder?: string;
|
|
31
|
+
/** 是否可清空,默认 true */
|
|
32
|
+
clearable?: boolean;
|
|
33
|
+
/** 是否禁用 */
|
|
34
|
+
disabled?: boolean;
|
|
35
|
+
/** 是否只读 */
|
|
36
|
+
readonly?: boolean;
|
|
37
|
+
/** 是否可搜索过滤,默认 true */
|
|
38
|
+
filterable?: boolean;
|
|
39
|
+
/** 组件尺寸 */
|
|
40
|
+
size?: 'large' | 'default' | 'small';
|
|
41
|
+
/** 静态选项数据,优先级最高,传入后不走接口 */
|
|
42
|
+
options?: DictOption[];
|
|
43
|
+
}
|
|
44
|
+
/** EeRemoteSelect 组件事件 */
|
|
45
|
+
export interface EeRemoteSelectEmits {
|
|
46
|
+
(e: 'update:modelValue', val: string | number | (string | number)[]): void;
|
|
47
|
+
(e: 'change', val: string | number | (string | number)[]): void;
|
|
48
|
+
(e: 'clear'): void;
|
|
49
|
+
(e: 'blur', evt: FocusEvent): void;
|
|
50
|
+
(e: 'focus', evt: FocusEvent): void;
|
|
51
|
+
(e: 'search', keyword: string): void;
|
|
52
|
+
(e: 'load-success', options: any[]): void;
|
|
53
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { EeRoleSelectProps } from '../type';
|
|
2
|
+
declare const _default: import('vue').DefineComponent<EeRoleSelectProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
3
|
+
search: (keyword: string) => any;
|
|
4
|
+
clear: () => any;
|
|
5
|
+
"update:modelValue": (val: string | number | (string | number)[]) => any;
|
|
6
|
+
change: (val: string | number | (string | number)[]) => any;
|
|
7
|
+
blur: (evt: FocusEvent) => any;
|
|
8
|
+
focus: (evt: FocusEvent) => any;
|
|
9
|
+
"load-success": (options: any[]) => any;
|
|
10
|
+
}, string, import('vue').PublicProps, Readonly<EeRoleSelectProps> & Readonly<{
|
|
11
|
+
onSearch?: ((keyword: string) => any) | undefined;
|
|
12
|
+
onClear?: (() => any) | undefined;
|
|
13
|
+
"onUpdate:modelValue"?: ((val: string | number | (string | number)[]) => any) | undefined;
|
|
14
|
+
onChange?: ((val: string | number | (string | number)[]) => any) | undefined;
|
|
15
|
+
onBlur?: ((evt: FocusEvent) => any) | undefined;
|
|
16
|
+
onFocus?: ((evt: FocusEvent) => any) | undefined;
|
|
17
|
+
"onLoad-success"?: ((options: any[]) => any) | undefined;
|
|
18
|
+
}>, {
|
|
19
|
+
apiUrl: string;
|
|
20
|
+
searchKey: string;
|
|
21
|
+
labelField: string;
|
|
22
|
+
valueField: string;
|
|
23
|
+
size: "large" | "default" | "small";
|
|
24
|
+
detailEchoUrl: string;
|
|
25
|
+
mode: "single" | "multiple";
|
|
26
|
+
clearable: boolean;
|
|
27
|
+
filterable: boolean;
|
|
28
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
29
|
+
export default _default;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { AxiosInstance } from 'axios';
|
|
2
|
+
/** EeRoleSelect 组件属性 */
|
|
3
|
+
export interface EeRoleSelectProps {
|
|
4
|
+
/** 双向绑定值 */
|
|
5
|
+
modelValue?: string | number | (string | number)[];
|
|
6
|
+
/** 自定义角色列表接口地址,覆盖默认接口 */
|
|
7
|
+
apiUrl?: string;
|
|
8
|
+
/** 自定义角色详情回显接口地址 */
|
|
9
|
+
detailEchoUrl?: string;
|
|
10
|
+
/** 选择模式,默认 single */
|
|
11
|
+
mode?: 'single' | 'multiple';
|
|
12
|
+
/** 选项 label 字段名,默认 label */
|
|
13
|
+
labelField?: string;
|
|
14
|
+
/** 选项 value 字段名,默认 value */
|
|
15
|
+
valueField?: string;
|
|
16
|
+
/** 搜索关键词参数字段名,默认 keyword */
|
|
17
|
+
searchKey?: string;
|
|
18
|
+
/** 固定附加请求参数 */
|
|
19
|
+
extraParams?: Record<string, any>;
|
|
20
|
+
/** 外部 axios 请求实例,不传则从全局配置获取 */
|
|
21
|
+
requestInstance?: AxiosInstance;
|
|
22
|
+
/** 占位符文本 */
|
|
23
|
+
placeholder?: string;
|
|
24
|
+
/** 是否可清空,默认 true */
|
|
25
|
+
clearable?: boolean;
|
|
26
|
+
/** 是否禁用 */
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
/** 是否只读 */
|
|
29
|
+
readonly?: boolean;
|
|
30
|
+
/** 是否可搜索过滤,默认 true */
|
|
31
|
+
filterable?: boolean;
|
|
32
|
+
/** 组件尺寸 */
|
|
33
|
+
size?: 'large' | 'default' | 'small';
|
|
34
|
+
}
|
|
35
|
+
/** EeRoleSelect 组件事件 */
|
|
36
|
+
export interface EeRoleSelectEmits {
|
|
37
|
+
(e: 'update:modelValue', val: string | number | (string | number)[]): void;
|
|
38
|
+
(e: 'change', val: string | number | (string | number)[]): void;
|
|
39
|
+
(e: 'clear'): void;
|
|
40
|
+
(e: 'blur', evt: FocusEvent): void;
|
|
41
|
+
(e: 'focus', evt: FocusEvent): void;
|
|
42
|
+
(e: 'search', keyword: string): void;
|
|
43
|
+
(e: 'load-success', options: any[]): void;
|
|
44
|
+
}
|
|
@@ -6,16 +6,18 @@ type __VLS_Props = {
|
|
|
6
6
|
labelWidth?: string | number;
|
|
7
7
|
collapsible?: boolean;
|
|
8
8
|
collapsedCount?: number;
|
|
9
|
+
size?: 'large' | 'default' | 'small';
|
|
9
10
|
};
|
|
10
11
|
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
11
|
-
"update:modelValue": (val: Record<string, any>) => any;
|
|
12
12
|
search: (val: Record<string, any>) => any;
|
|
13
|
+
"update:modelValue": (val: Record<string, any>) => any;
|
|
13
14
|
reset: () => any;
|
|
14
15
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
15
|
-
"onUpdate:modelValue"?: ((val: Record<string, any>) => any) | undefined;
|
|
16
16
|
onSearch?: ((val: Record<string, any>) => any) | undefined;
|
|
17
|
+
"onUpdate:modelValue"?: ((val: Record<string, any>) => any) | undefined;
|
|
17
18
|
onReset?: (() => any) | undefined;
|
|
18
19
|
}>, {
|
|
20
|
+
size: "large" | "default" | "small";
|
|
19
21
|
inline: boolean;
|
|
20
22
|
labelWidth: string | number;
|
|
21
23
|
collapsible: boolean;
|
|
@@ -58,10 +60,45 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
58
60
|
$options: import('vue').ComponentOptionsBase<Readonly<import('element-plus').FormProps> & Readonly<{
|
|
59
61
|
onValidate?: ((prop: import('element-plus').FormItemProp, isValid: boolean, message: string) => any) | undefined;
|
|
60
62
|
}>, {
|
|
61
|
-
validate: (callback
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
63
|
+
validate: (callback
|
|
64
|
+
/**
|
|
65
|
+
* EeSearchBar 搜索栏组件
|
|
66
|
+
*
|
|
67
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
68
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
69
|
+
*/
|
|
70
|
+
?: import('element-plus').FormValidateCallback) => import('element-plus').FormValidationResult;
|
|
71
|
+
validateField: (props
|
|
72
|
+
/**
|
|
73
|
+
* EeSearchBar 搜索栏组件
|
|
74
|
+
*
|
|
75
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
76
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
77
|
+
*/
|
|
78
|
+
?: import('element-plus/es/utils/typescript.mjs').Arrayable<import('element-plus').FormItemProp>, callback
|
|
79
|
+
/**
|
|
80
|
+
* EeSearchBar 搜索栏组件
|
|
81
|
+
*
|
|
82
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
83
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
84
|
+
*/
|
|
85
|
+
?: import('element-plus').FormValidateCallback) => import('element-plus').FormValidationResult;
|
|
86
|
+
resetFields: (props
|
|
87
|
+
/**
|
|
88
|
+
* EeSearchBar 搜索栏组件
|
|
89
|
+
*
|
|
90
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
91
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
92
|
+
*/
|
|
93
|
+
?: import('element-plus/es/utils/typescript.mjs').Arrayable<import('element-plus').FormItemProp>) => void;
|
|
94
|
+
clearValidate: (props
|
|
95
|
+
/**
|
|
96
|
+
* EeSearchBar 搜索栏组件
|
|
97
|
+
*
|
|
98
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
99
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
100
|
+
*/
|
|
101
|
+
?: import('element-plus/es/utils/typescript.mjs').Arrayable<import('element-plus').FormItemProp>) => void;
|
|
65
102
|
scrollToField: (prop: import('element-plus').FormItemProp) => void;
|
|
66
103
|
getField: (prop: import('element-plus').FormItemProp) => import('element-plus').FormItemContext | undefined;
|
|
67
104
|
fields: import('vue').Reactive<import('element-plus').FormItemContext[]>;
|
|
@@ -107,10 +144,45 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
107
144
|
}> & Omit<Readonly<import('element-plus').FormProps> & Readonly<{
|
|
108
145
|
onValidate?: ((prop: import('element-plus').FormItemProp, isValid: boolean, message: string) => any) | undefined;
|
|
109
146
|
}>, "fields" | "labelWidth" | "labelPosition" | "requireAsteriskPosition" | "labelSuffix" | "showMessage" | "validateOnRuleChange" | "scrollIntoViewOptions" | "validate" | "validateField" | "resetFields" | "clearValidate" | "scrollToField" | "getField" | "setInitialValues"> & {
|
|
110
|
-
validate: (callback
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
147
|
+
validate: (callback
|
|
148
|
+
/**
|
|
149
|
+
* EeSearchBar 搜索栏组件
|
|
150
|
+
*
|
|
151
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
152
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
153
|
+
*/
|
|
154
|
+
?: import('element-plus').FormValidateCallback) => import('element-plus').FormValidationResult;
|
|
155
|
+
validateField: (props
|
|
156
|
+
/**
|
|
157
|
+
* EeSearchBar 搜索栏组件
|
|
158
|
+
*
|
|
159
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
160
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
161
|
+
*/
|
|
162
|
+
?: import('element-plus/es/utils/typescript.mjs').Arrayable<import('element-plus').FormItemProp>, callback
|
|
163
|
+
/**
|
|
164
|
+
* EeSearchBar 搜索栏组件
|
|
165
|
+
*
|
|
166
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
167
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
168
|
+
*/
|
|
169
|
+
?: import('element-plus').FormValidateCallback) => import('element-plus').FormValidationResult;
|
|
170
|
+
resetFields: (props
|
|
171
|
+
/**
|
|
172
|
+
* EeSearchBar 搜索栏组件
|
|
173
|
+
*
|
|
174
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
175
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
176
|
+
*/
|
|
177
|
+
?: import('element-plus/es/utils/typescript.mjs').Arrayable<import('element-plus').FormItemProp>) => void;
|
|
178
|
+
clearValidate: (props
|
|
179
|
+
/**
|
|
180
|
+
* EeSearchBar 搜索栏组件
|
|
181
|
+
*
|
|
182
|
+
* 基于 el-form 封装的搜索栏,支持多字段类型(input/select/datepicker)、
|
|
183
|
+
* 搜索/重置按钮、字段显隐控制。
|
|
184
|
+
*/
|
|
185
|
+
?: import('element-plus/es/utils/typescript.mjs').Arrayable<import('element-plus').FormItemProp>) => void;
|
|
114
186
|
scrollToField: (prop: import('element-plus').FormItemProp) => void;
|
|
115
187
|
getField: (prop: import('element-plus').FormItemProp) => import('element-plus').FormItemContext | undefined;
|
|
116
188
|
fields: import('vue').Reactive<import('element-plus').FormItemContext[]>;
|
|
@@ -8,6 +8,6 @@ type __VLS_Props = {
|
|
|
8
8
|
};
|
|
9
9
|
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
10
|
defaultType: "primary" | "success" | "warning" | "danger" | "info";
|
|
11
|
-
defaultEffect: "
|
|
11
|
+
defaultEffect: "plain" | "light" | "dark";
|
|
12
12
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
export default _default;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { EeUserSelectProps } from '../type';
|
|
2
|
+
declare const _default: import('vue').DefineComponent<EeUserSelectProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
3
|
+
search: (keyword: string) => any;
|
|
4
|
+
clear: () => any;
|
|
5
|
+
"update:modelValue": (val: string | number | (string | number)[]) => any;
|
|
6
|
+
change: (val: string | number | (string | number)[]) => any;
|
|
7
|
+
blur: (evt: FocusEvent) => any;
|
|
8
|
+
focus: (evt: FocusEvent) => any;
|
|
9
|
+
"load-success": (options: any[]) => any;
|
|
10
|
+
}, string, import('vue').PublicProps, Readonly<EeUserSelectProps> & Readonly<{
|
|
11
|
+
onSearch?: ((keyword: string) => any) | undefined;
|
|
12
|
+
onClear?: (() => any) | undefined;
|
|
13
|
+
"onUpdate:modelValue"?: ((val: string | number | (string | number)[]) => any) | undefined;
|
|
14
|
+
onChange?: ((val: string | number | (string | number)[]) => any) | undefined;
|
|
15
|
+
onBlur?: ((evt: FocusEvent) => any) | undefined;
|
|
16
|
+
onFocus?: ((evt: FocusEvent) => any) | undefined;
|
|
17
|
+
"onLoad-success"?: ((options: any[]) => any) | undefined;
|
|
18
|
+
}>, {
|
|
19
|
+
apiUrl: string;
|
|
20
|
+
searchKey: string;
|
|
21
|
+
labelField: string;
|
|
22
|
+
valueField: string;
|
|
23
|
+
size: "large" | "default" | "small";
|
|
24
|
+
detailEchoUrl: string;
|
|
25
|
+
mode: "single" | "multiple";
|
|
26
|
+
clearable: boolean;
|
|
27
|
+
filterable: boolean;
|
|
28
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
29
|
+
export default _default;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { AxiosInstance } from 'axios';
|
|
2
|
+
/** EeUserSelect 组件属性 */
|
|
3
|
+
export interface EeUserSelectProps {
|
|
4
|
+
/** 双向绑定值 */
|
|
5
|
+
modelValue?: string | number | (string | number)[];
|
|
6
|
+
/** 自定义人员列表接口地址,覆盖默认接口 */
|
|
7
|
+
apiUrl?: string;
|
|
8
|
+
/** 自定义人员详情回显接口地址 */
|
|
9
|
+
detailEchoUrl?: string;
|
|
10
|
+
/** 选择模式,默认 single */
|
|
11
|
+
mode?: 'single' | 'multiple';
|
|
12
|
+
/** 筛选指定部门下人员 */
|
|
13
|
+
deptId?: string | number;
|
|
14
|
+
/** 选项 label 字段名,默认 label */
|
|
15
|
+
labelField?: string;
|
|
16
|
+
/** 选项 value 字段名,默认 value */
|
|
17
|
+
valueField?: string;
|
|
18
|
+
/** 搜索关键词参数字段名,默认 keyword */
|
|
19
|
+
searchKey?: string;
|
|
20
|
+
/** 固定附加请求参数 */
|
|
21
|
+
extraParams?: Record<string, any>;
|
|
22
|
+
/** 外部 axios 请求实例,不传则从全局配置获取 */
|
|
23
|
+
requestInstance?: AxiosInstance;
|
|
24
|
+
/** 占位符文本 */
|
|
25
|
+
placeholder?: string;
|
|
26
|
+
/** 是否可清空,默认 true */
|
|
27
|
+
clearable?: boolean;
|
|
28
|
+
/** 是否禁用 */
|
|
29
|
+
disabled?: boolean;
|
|
30
|
+
/** 是否只读 */
|
|
31
|
+
readonly?: boolean;
|
|
32
|
+
/** 是否可搜索过滤,默认 true */
|
|
33
|
+
filterable?: boolean;
|
|
34
|
+
/** 组件尺寸 */
|
|
35
|
+
size?: 'large' | 'default' | 'small';
|
|
36
|
+
}
|
|
37
|
+
/** EeUserSelect 组件事件 */
|
|
38
|
+
export interface EeUserSelectEmits {
|
|
39
|
+
(e: 'update:modelValue', val: string | number | (string | number)[]): void;
|
|
40
|
+
(e: 'change', val: string | number | (string | number)[]): void;
|
|
41
|
+
(e: 'clear'): void;
|
|
42
|
+
(e: 'blur', evt: FocusEvent): void;
|
|
43
|
+
(e: 'focus', evt: FocusEvent): void;
|
|
44
|
+
(e: 'search', keyword: string): void;
|
|
45
|
+
(e: 'load-success', options: any[]): void;
|
|
46
|
+
}
|