@alibarbar/components 1.0.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/README.md +181 -0
- package/dist/components/FatForm/FatForm.vue.d.ts +99 -0
- package/dist/components/FatForm/FatForm.vue.d.ts.map +1 -0
- package/dist/components/FatForm/FatFormItem.vue.d.ts +35 -0
- package/dist/components/FatForm/FatFormItem.vue.d.ts.map +1 -0
- package/dist/components/FatForm/index.d.ts +7 -0
- package/dist/components/FatForm/index.d.ts.map +1 -0
- package/dist/components/FatForm/types.d.ts +101 -0
- package/dist/components/FatForm/types.d.ts.map +1 -0
- package/dist/components/FatFormLayout/FatFormLayout.vue.d.ts +47 -0
- package/dist/components/FatFormLayout/FatFormLayout.vue.d.ts.map +1 -0
- package/dist/components/FatFormLayout/index.d.ts +5 -0
- package/dist/components/FatFormLayout/index.d.ts.map +1 -0
- package/dist/components/FatFormLayout/types.d.ts +15 -0
- package/dist/components/FatFormLayout/types.d.ts.map +1 -0
- package/dist/components/FatTable/FatTable.vue.d.ts +42 -0
- package/dist/components/FatTable/FatTable.vue.d.ts.map +1 -0
- package/dist/components/FatTable/index.d.ts +9 -0
- package/dist/components/FatTable/index.d.ts.map +1 -0
- package/dist/components/FatTable/types.d.ts +274 -0
- package/dist/components/FatTable/types.d.ts.map +1 -0
- package/dist/components/FatTableLayout/FatTableLayout.vue.d.ts +47 -0
- package/dist/components/FatTableLayout/FatTableLayout.vue.d.ts.map +1 -0
- package/dist/components/FatTableLayout/index.d.ts +5 -0
- package/dist/components/FatTableLayout/index.d.ts.map +1 -0
- package/dist/components/FatTableLayout/types.d.ts +19 -0
- package/dist/components/FatTableLayout/types.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +4 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/i18n/index.d.ts +61 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/locales/en-US.d.ts +30 -0
- package/dist/i18n/locales/en-US.d.ts.map +1 -0
- package/dist/i18n/locales/zh-CN.d.ts +30 -0
- package/dist/i18n/locales/zh-CN.d.ts.map +1 -0
- package/dist/index.d.ts +485 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +972 -0
- package/dist/index.js.map +1 -0
- package/dist/style.css +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/types.d.ts +5 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/package.json +61 -0
- package/src/style/fat-form-layout.scss +53 -0
- package/src/style/fat-form.scss +132 -0
- package/src/style/fat-table-layout.scss +43 -0
- package/src/style/fat-table.scss +132 -0
- package/src/style/index.scss +14 -0
- package/src/style/variables.scss +23 -0
package/README.md
ADDED
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# @alibarbar/components
|
|
2
|
+
|
|
3
|
+
业务组件库,提供 FatTable、FatForm、FatTableLayout、FatFormLayout 等组件。
|
|
4
|
+
|
|
5
|
+
## 技术栈
|
|
6
|
+
|
|
7
|
+
- Vue 3.x
|
|
8
|
+
- TypeScript
|
|
9
|
+
- Vite
|
|
10
|
+
- Vue I18n
|
|
11
|
+
|
|
12
|
+
## 安装
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
npm install @alibarbar/components
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## 使用
|
|
19
|
+
|
|
20
|
+
### 完整引入
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
import { createApp } from 'vue'
|
|
24
|
+
import AlibarbarComponents from '@alibarbar/components'
|
|
25
|
+
import '@alibarbar/components/style'
|
|
26
|
+
|
|
27
|
+
const app = createApp(App)
|
|
28
|
+
app.use(AlibarbarComponents)
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 按需引入
|
|
32
|
+
|
|
33
|
+
```typescript
|
|
34
|
+
import { FatTable, FatForm } from '@alibarbar/components'
|
|
35
|
+
import '@alibarbar/components/style'
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## 组件
|
|
39
|
+
|
|
40
|
+
### FatTable
|
|
41
|
+
|
|
42
|
+
表格组件,支持排序、分页等功能。
|
|
43
|
+
|
|
44
|
+
```vue
|
|
45
|
+
<template>
|
|
46
|
+
<FatTable
|
|
47
|
+
:columns="columns"
|
|
48
|
+
:data="tableData"
|
|
49
|
+
:pagination="pagination"
|
|
50
|
+
@page-change="handlePageChange"
|
|
51
|
+
/>
|
|
52
|
+
</template>
|
|
53
|
+
|
|
54
|
+
<script setup lang="ts">
|
|
55
|
+
import { FatTable } from '@alibarbar/components'
|
|
56
|
+
import type { FatTableColumn } from '@alibarbar/components'
|
|
57
|
+
|
|
58
|
+
const columns: FatTableColumn[] = [
|
|
59
|
+
{ prop: 'name', label: '姓名', sortable: true },
|
|
60
|
+
{ prop: 'age', label: '年龄' },
|
|
61
|
+
{ prop: 'email', label: '邮箱' }
|
|
62
|
+
]
|
|
63
|
+
|
|
64
|
+
const tableData = ref([])
|
|
65
|
+
const pagination = ref({
|
|
66
|
+
currentPage: 1,
|
|
67
|
+
pageSize: 10,
|
|
68
|
+
total: 0
|
|
69
|
+
})
|
|
70
|
+
</script>
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### FatForm
|
|
74
|
+
|
|
75
|
+
表单组件,支持验证、提交等功能。
|
|
76
|
+
|
|
77
|
+
```vue
|
|
78
|
+
<template>
|
|
79
|
+
<FatForm
|
|
80
|
+
v-model="formData"
|
|
81
|
+
:rules="rules"
|
|
82
|
+
@submit="handleSubmit"
|
|
83
|
+
>
|
|
84
|
+
<FatFormItem prop="name" label="姓名" required>
|
|
85
|
+
<input v-model="formData.name" />
|
|
86
|
+
</FatFormItem>
|
|
87
|
+
<FatFormItem prop="email" label="邮箱" required>
|
|
88
|
+
<input v-model="formData.email" type="email" />
|
|
89
|
+
</FatFormItem>
|
|
90
|
+
</FatForm>
|
|
91
|
+
</template>
|
|
92
|
+
|
|
93
|
+
<script setup lang="ts">
|
|
94
|
+
import { FatForm, FatFormItem } from '@alibarbar/components'
|
|
95
|
+
|
|
96
|
+
const formData = ref({
|
|
97
|
+
name: '',
|
|
98
|
+
email: ''
|
|
99
|
+
})
|
|
100
|
+
|
|
101
|
+
const rules = {
|
|
102
|
+
name: [{ required: true, message: '请输入姓名' }],
|
|
103
|
+
email: [
|
|
104
|
+
{ required: true, message: '请输入邮箱' },
|
|
105
|
+
{ type: 'email', message: '邮箱格式不正确' }
|
|
106
|
+
]
|
|
107
|
+
}
|
|
108
|
+
</script>
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### FatTableLayout
|
|
112
|
+
|
|
113
|
+
表格布局组件,提供统一的表格页面布局。
|
|
114
|
+
|
|
115
|
+
```vue
|
|
116
|
+
<template>
|
|
117
|
+
<FatTableLayout title="用户列表">
|
|
118
|
+
<template #query>
|
|
119
|
+
<!-- 查询表单 -->
|
|
120
|
+
</template>
|
|
121
|
+
<template #toolbar>
|
|
122
|
+
<!-- 工具栏 -->
|
|
123
|
+
</template>
|
|
124
|
+
<template #default>
|
|
125
|
+
<FatTable :columns="columns" :data="data" />
|
|
126
|
+
</template>
|
|
127
|
+
<template #pagination>
|
|
128
|
+
<!-- 分页 -->
|
|
129
|
+
</template>
|
|
130
|
+
</FatTableLayout>
|
|
131
|
+
</template>
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### FatFormLayout
|
|
135
|
+
|
|
136
|
+
表单布局组件,提供统一的表单页面布局。
|
|
137
|
+
|
|
138
|
+
```vue
|
|
139
|
+
<template>
|
|
140
|
+
<FatFormLayout title="编辑用户" :show-back="true" @back="handleBack">
|
|
141
|
+
<template #default>
|
|
142
|
+
<FatForm v-model="formData">
|
|
143
|
+
<!-- 表单项 -->
|
|
144
|
+
</FatForm>
|
|
145
|
+
</template>
|
|
146
|
+
<template #submitter>
|
|
147
|
+
<!-- 提交按钮 -->
|
|
148
|
+
</template>
|
|
149
|
+
</FatFormLayout>
|
|
150
|
+
</template>
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## 国际化
|
|
154
|
+
|
|
155
|
+
组件库内置了中文和英文两种语言,默认使用中文。可以通过 i18n 实例切换语言:
|
|
156
|
+
|
|
157
|
+
```typescript
|
|
158
|
+
import { i18n } from '@alibarbar/components'
|
|
159
|
+
|
|
160
|
+
i18n.global.locale.value = 'en-US'
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## 开发
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
# 安装依赖
|
|
167
|
+
npm install
|
|
168
|
+
|
|
169
|
+
# 开发模式
|
|
170
|
+
npm run dev
|
|
171
|
+
|
|
172
|
+
# 构建
|
|
173
|
+
npm run build
|
|
174
|
+
|
|
175
|
+
# 类型检查
|
|
176
|
+
npm run type-check
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## License
|
|
180
|
+
|
|
181
|
+
MIT
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { FatFormMethods, FatFormMode, FatFormLayout } from './types';
|
|
2
|
+
|
|
3
|
+
interface Props {
|
|
4
|
+
modelValue?: Record<string, any>;
|
|
5
|
+
mode?: FatFormMode;
|
|
6
|
+
layout?: FatFormLayout;
|
|
7
|
+
labelWidth?: string | number;
|
|
8
|
+
labelSuffix?: string;
|
|
9
|
+
size?: 'large' | 'default' | 'small';
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
loading?: boolean;
|
|
12
|
+
initialValue?: Record<string, any>;
|
|
13
|
+
rules?: Record<string, any[]>;
|
|
14
|
+
enableSubmitter?: boolean;
|
|
15
|
+
enableReset?: boolean;
|
|
16
|
+
submitText?: string;
|
|
17
|
+
resetText?: string;
|
|
18
|
+
onSubmit?: (values: Record<string, any>) => Promise<void> | void;
|
|
19
|
+
}
|
|
20
|
+
declare function __VLS_template(): {
|
|
21
|
+
default?(_: {
|
|
22
|
+
form: FatFormMethods<any>;
|
|
23
|
+
}): any;
|
|
24
|
+
submitter?(_: {
|
|
25
|
+
form: FatFormMethods<any>;
|
|
26
|
+
}): any;
|
|
27
|
+
};
|
|
28
|
+
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
|
|
29
|
+
modelValue: () => {};
|
|
30
|
+
mode: string;
|
|
31
|
+
layout: string;
|
|
32
|
+
labelSuffix: string;
|
|
33
|
+
size: string;
|
|
34
|
+
disabled: boolean;
|
|
35
|
+
loading: boolean;
|
|
36
|
+
initialValue: () => {};
|
|
37
|
+
rules: () => {};
|
|
38
|
+
enableSubmitter: boolean;
|
|
39
|
+
enableReset: boolean;
|
|
40
|
+
}>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
41
|
+
"update:modelValue": (value: Record<string, any>) => void;
|
|
42
|
+
submit: (values: Record<string, any>) => void;
|
|
43
|
+
reset: (values: Record<string, any>) => void;
|
|
44
|
+
validate: (prop: string, isValid: boolean, message?: string | undefined) => void;
|
|
45
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
|
|
46
|
+
modelValue: () => {};
|
|
47
|
+
mode: string;
|
|
48
|
+
layout: string;
|
|
49
|
+
labelSuffix: string;
|
|
50
|
+
size: string;
|
|
51
|
+
disabled: boolean;
|
|
52
|
+
loading: boolean;
|
|
53
|
+
initialValue: () => {};
|
|
54
|
+
rules: () => {};
|
|
55
|
+
enableSubmitter: boolean;
|
|
56
|
+
enableReset: boolean;
|
|
57
|
+
}>>> & Readonly<{
|
|
58
|
+
"onUpdate:modelValue"?: ((value: Record<string, any>) => any) | undefined;
|
|
59
|
+
onSubmit?: ((values: Record<string, any>) => any) | undefined;
|
|
60
|
+
onReset?: ((values: Record<string, any>) => any) | undefined;
|
|
61
|
+
onValidate?: ((prop: string, isValid: boolean, message?: string | undefined) => any) | undefined;
|
|
62
|
+
}>, {
|
|
63
|
+
modelValue: Record<string, any>;
|
|
64
|
+
mode: FatFormMode;
|
|
65
|
+
layout: FatFormLayout;
|
|
66
|
+
labelSuffix: string;
|
|
67
|
+
size: "large" | "default" | "small";
|
|
68
|
+
disabled: boolean;
|
|
69
|
+
loading: boolean;
|
|
70
|
+
initialValue: Record<string, any>;
|
|
71
|
+
rules: Record<string, any[]>;
|
|
72
|
+
enableSubmitter: boolean;
|
|
73
|
+
enableReset: boolean;
|
|
74
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
75
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
76
|
+
export default _default;
|
|
77
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
78
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
79
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
80
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
81
|
+
} : {
|
|
82
|
+
type: import('vue').PropType<T[K]>;
|
|
83
|
+
required: true;
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
type __VLS_WithDefaults<P, D> = {
|
|
87
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
|
|
88
|
+
default: D[K];
|
|
89
|
+
}> : P[K];
|
|
90
|
+
};
|
|
91
|
+
type __VLS_Prettify<T> = {
|
|
92
|
+
[K in keyof T]: T[K];
|
|
93
|
+
} & {};
|
|
94
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
95
|
+
new (): {
|
|
96
|
+
$slots: S;
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=FatForm.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FatForm.vue.d.ts","sourceRoot":"","sources":["../../../src/components/FatForm/FatForm.vue"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { FatFormMethods } from './types';
|
|
2
|
+
|
|
3
|
+
interface Props {
|
|
4
|
+
prop: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
required?: boolean;
|
|
7
|
+
hidden?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
labelWidth?: string | number;
|
|
10
|
+
width?: string | number;
|
|
11
|
+
}
|
|
12
|
+
declare function __VLS_template(): {
|
|
13
|
+
default?(_: {
|
|
14
|
+
value: any;
|
|
15
|
+
form: FatFormMethods<any> | undefined;
|
|
16
|
+
}): any;
|
|
17
|
+
};
|
|
18
|
+
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
19
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
20
|
+
export default _default;
|
|
21
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
22
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
23
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
24
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
25
|
+
} : {
|
|
26
|
+
type: import('vue').PropType<T[K]>;
|
|
27
|
+
required: true;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
31
|
+
new (): {
|
|
32
|
+
$slots: S;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=FatFormItem.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FatFormItem.vue.d.ts","sourceRoot":"","sources":["../../../src/components/FatForm/FatFormItem.vue"],"names":[],"mappings":"AAsBA;AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAI7C,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACxB;AAgED,iBAAS,cAAc;;;;QA8GO,GAAG;EAGhC;AAgBD,QAAA,MAAM,eAAe,mZAMnB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAAvG,wBAAwG;AACxG,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/FatForm/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,eAAe,CAAA;AACnC,OAAO,WAAW,MAAM,mBAAmB,CAAA;AAQ3C,eAAe,OAAO,CAAA;AACtB,OAAO,EAAE,WAAW,EAAE,CAAA;AACtB,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
|
|
3
|
+
export type FatFormMode = 'preview' | 'editable';
|
|
4
|
+
export type FatFormLayout = 'horizontal' | 'vertical' | 'inline';
|
|
5
|
+
export interface FatFormItemProps<T = any> {
|
|
6
|
+
/**
|
|
7
|
+
* 字段路径
|
|
8
|
+
*/
|
|
9
|
+
prop: string;
|
|
10
|
+
/**
|
|
11
|
+
* 标签
|
|
12
|
+
*/
|
|
13
|
+
label?: string;
|
|
14
|
+
/**
|
|
15
|
+
* 字段初始值
|
|
16
|
+
*/
|
|
17
|
+
initialValue?: any;
|
|
18
|
+
/**
|
|
19
|
+
* 是否必填
|
|
20
|
+
*/
|
|
21
|
+
required?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* 是否隐藏
|
|
24
|
+
*/
|
|
25
|
+
hidden?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* 是否禁用
|
|
28
|
+
*/
|
|
29
|
+
disabled?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* 验证规则
|
|
32
|
+
*/
|
|
33
|
+
rules?: any[];
|
|
34
|
+
/**
|
|
35
|
+
* 占位符
|
|
36
|
+
*/
|
|
37
|
+
placeholder?: string;
|
|
38
|
+
/**
|
|
39
|
+
* 字段宽度
|
|
40
|
+
*/
|
|
41
|
+
width?: string | number;
|
|
42
|
+
/**
|
|
43
|
+
* 自定义渲染
|
|
44
|
+
*/
|
|
45
|
+
render?: (value: any, form: FatFormMethods<T>) => any;
|
|
46
|
+
}
|
|
47
|
+
export interface FatFormMethods<T = any> {
|
|
48
|
+
/**
|
|
49
|
+
* 表单模式
|
|
50
|
+
*/
|
|
51
|
+
readonly mode: FatFormMode;
|
|
52
|
+
/**
|
|
53
|
+
* 表单布局
|
|
54
|
+
*/
|
|
55
|
+
readonly layout: FatFormLayout;
|
|
56
|
+
/**
|
|
57
|
+
* 是否已禁用
|
|
58
|
+
*/
|
|
59
|
+
readonly disabled?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* 正在加载中
|
|
62
|
+
*/
|
|
63
|
+
readonly loading: Ref<boolean>;
|
|
64
|
+
/**
|
|
65
|
+
* 表单提交中
|
|
66
|
+
*/
|
|
67
|
+
readonly submitting: Ref<boolean>;
|
|
68
|
+
/**
|
|
69
|
+
* 表单值
|
|
70
|
+
*/
|
|
71
|
+
values: Ref<T>;
|
|
72
|
+
/**
|
|
73
|
+
* 表单提交
|
|
74
|
+
*/
|
|
75
|
+
submit(): Promise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* 重置表单
|
|
78
|
+
*/
|
|
79
|
+
reset(): void;
|
|
80
|
+
/**
|
|
81
|
+
* 对整个表单的内容进行验证
|
|
82
|
+
*/
|
|
83
|
+
validate(): Promise<boolean>;
|
|
84
|
+
/**
|
|
85
|
+
* 验证某个字段
|
|
86
|
+
*/
|
|
87
|
+
validateField(prop: string | string[]): Promise<boolean>;
|
|
88
|
+
/**
|
|
89
|
+
* 清除表单验证
|
|
90
|
+
*/
|
|
91
|
+
clearValidate(prop?: string | string[]): void;
|
|
92
|
+
/**
|
|
93
|
+
* 获取指定字段的值
|
|
94
|
+
*/
|
|
95
|
+
getFieldValue(prop: string): any;
|
|
96
|
+
/**
|
|
97
|
+
* 设置指定字段的值
|
|
98
|
+
*/
|
|
99
|
+
setFieldValue(prop: string, value: any): void;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/FatForm/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAE9B,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,CAAA;AAChD,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,CAAA;AAEhE,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,GAAG;IACvC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,YAAY,CAAC,EAAE,GAAG,CAAA;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;OAEG;IACH,KAAK,CAAC,EAAE,GAAG,EAAE,CAAA;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAEvB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,GAAG,CAAA;CACtD;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,GAAG;IACrC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAE1B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAE9B;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAE3B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IAE9B;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IAEjC;;OAEG;IACH,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;IAEd;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEvB;;OAEG;IACH,KAAK,IAAI,IAAI,CAAA;IAEb;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5B;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAExD;;OAEG;IACH,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAA;IAE7C;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;IAEhC;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAA;CAC9C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { FatFormLayoutProps } from './types';
|
|
2
|
+
|
|
3
|
+
declare function __VLS_template(): {
|
|
4
|
+
title?(_: {}): any;
|
|
5
|
+
extra?(_: {}): any;
|
|
6
|
+
default?(_: {}): any;
|
|
7
|
+
submitter?(_: {}): any;
|
|
8
|
+
};
|
|
9
|
+
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<FatFormLayoutProps>, {
|
|
10
|
+
showSubmitter: boolean;
|
|
11
|
+
showBack: boolean;
|
|
12
|
+
}>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
13
|
+
back: () => void;
|
|
14
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<FatFormLayoutProps>, {
|
|
15
|
+
showSubmitter: boolean;
|
|
16
|
+
showBack: boolean;
|
|
17
|
+
}>>> & Readonly<{
|
|
18
|
+
onBack?: (() => any) | undefined;
|
|
19
|
+
}>, {
|
|
20
|
+
showSubmitter: boolean;
|
|
21
|
+
showBack: boolean;
|
|
22
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
23
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
24
|
+
export default _default;
|
|
25
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
26
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
27
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
28
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
29
|
+
} : {
|
|
30
|
+
type: import('vue').PropType<T[K]>;
|
|
31
|
+
required: true;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
type __VLS_WithDefaults<P, D> = {
|
|
35
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
|
|
36
|
+
default: D[K];
|
|
37
|
+
}> : P[K];
|
|
38
|
+
};
|
|
39
|
+
type __VLS_Prettify<T> = {
|
|
40
|
+
[K in keyof T]: T[K];
|
|
41
|
+
} & {};
|
|
42
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
43
|
+
new (): {
|
|
44
|
+
$slots: S;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=FatFormLayout.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FatFormLayout.vue.d.ts","sourceRoot":"","sources":["../../../src/components/FatFormLayout/FatFormLayout.vue"],"names":[],"mappings":"AA6BA;AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AA0BjD,iBAAS,cAAc;mBAoKK,GAAG;mBACH,GAAG;qBACD,GAAG;uBACD,GAAG;EAGlC;AAWD,QAAA,MAAM,eAAe;;;;;;;;;;;;;4EAOnB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAAvG,wBAAwG;AACxG,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC;AACxD,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/FatFormLayout/index.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAO/C,eAAe,aAAa,CAAA;AAC5B,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/FatFormLayout/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { FatTableColumn, FatTableProps, FatTableEmits, FatTableRequestParams } from './types';
|
|
2
|
+
|
|
3
|
+
declare const _default: <T extends Record<string, any> = any, S extends Record<string, any> = Record<string, any>>(__VLS_props: Awaited<typeof __VLS_setup>["props"], __VLS_ctx?: __VLS_Prettify<Pick<Awaited<typeof __VLS_setup>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
4
|
+
props: __VLS_Prettify<__VLS_OmitKeepDiscriminatedUnion<(Partial<{}> & Omit<{
|
|
5
|
+
readonly "onPage-change"?: ((page: number) => any) | undefined;
|
|
6
|
+
readonly "onPage-size-change"?: ((pageSize: number) => any) | undefined;
|
|
7
|
+
readonly "onSort-change"?: ((payload: import('./types').FatTableSortChangeEvent<T, S>) => any) | undefined;
|
|
8
|
+
readonly "onRow-click"?: ((row: T, column: FatTableColumn<T, S>, event: Event) => any) | undefined;
|
|
9
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>) & FatTableProps<T, S>, keyof import('vue').VNodeProps | keyof import('vue').AllowedComponentProps>> & {} & (import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps);
|
|
10
|
+
expose(exposed: import('vue').ShallowUnwrapRef<{
|
|
11
|
+
/**
|
|
12
|
+
* 刷新数据
|
|
13
|
+
*/
|
|
14
|
+
refresh: () => void;
|
|
15
|
+
/**
|
|
16
|
+
* 重置并重新获取数据
|
|
17
|
+
*/
|
|
18
|
+
reset: () => void;
|
|
19
|
+
/**
|
|
20
|
+
* 获取请求参数
|
|
21
|
+
*/
|
|
22
|
+
getRequestParams: () => FatTableRequestParams<T, S>;
|
|
23
|
+
}>): void;
|
|
24
|
+
attrs: any;
|
|
25
|
+
slots: ReturnType<() => Partial<Record<`header-${string}`, (_: {
|
|
26
|
+
column: FatTableColumn<T, S>;
|
|
27
|
+
index: number;
|
|
28
|
+
}) => any>> & Partial<Record<`cell-${string}`, (_: {
|
|
29
|
+
row: T;
|
|
30
|
+
column: FatTableColumn<T, S>;
|
|
31
|
+
value: any;
|
|
32
|
+
index: number;
|
|
33
|
+
}) => any>>>;
|
|
34
|
+
emit: FatTableEmits<T, S>;
|
|
35
|
+
}>) => import('vue').VNode & {
|
|
36
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
37
|
+
};
|
|
38
|
+
export default _default;
|
|
39
|
+
type __VLS_Prettify<T> = {
|
|
40
|
+
[K in keyof T]: T[K];
|
|
41
|
+
} & {};
|
|
42
|
+
//# sourceMappingURL=FatTable.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FatTable.vue.d.ts","sourceRoot":"","sources":["../../../src/components/FatTable/FatTable.vue"],"names":[],"mappings":"AAgJA;AAIA,OAAO,KAAK,EAAE,cAAc,EAAa,aAAa,EAAE,aAAa,EAAE,qBAAqB,EAA2B,MAAM,SAAS,CAAA;yBAGrH,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzG,aAAa,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,OAAO,CAAC,EACjD,YAAY,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EACzF,eAAe,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EACjE;WAw3BO,cAAc,CAAC,gCAAgC,CAAC;;;;;0IAAkE,6EAAkC,CAAC,6GAAwD;oBACpM,OAAO,KAAK,EAAE,gBAAgB;QAlmB5C;;WAEG;;QAMH;;WAEG;;QASH;;WAEG;gCAxJwB,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC;MAquBY,GAAG,IAAI;WACpE,GAAG;WACH,UAAU;;;UA5CqE,GAAG;;;;;UAClB,GAAG,GA2ClC;;EAGpC,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAE;AAn4BzE,wBAm4B2E;AAQ3E,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { default as FatTable } from './FatTable.vue';
|
|
2
|
+
import { App } from 'vue';
|
|
3
|
+
|
|
4
|
+
declare const FatTableWithInstall: typeof FatTable & {
|
|
5
|
+
install: (app: App) => void;
|
|
6
|
+
};
|
|
7
|
+
export default FatTableWithInstall;
|
|
8
|
+
export * from './types';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/FatTable/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAG9B,QAAA,MAAM,mBAAmB,EAAe,OAAO,QAAQ,GAAG;IACxD,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;CAC5B,CAAA;AAMD,eAAe,mBAAmB,CAAA;AAClC,cAAc,SAAS,CAAA"}
|