vft 0.0.439 → 0.0.441

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.
Files changed (41) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/es/components/pagination/index.d.ts +3 -1
  4. package/es/components/pagination/pagination.vue.d.ts +3 -1
  5. package/es/components/pagination/pagination.vue2.js +47 -44
  6. package/es/components/table/constants.d.ts +2 -1
  7. package/es/components/table/constants.js +2 -2
  8. package/es/components/table/field.d.ts +60 -0
  9. package/es/components/table/index.d.ts +1271 -544
  10. package/es/components/table/table.vue.d.ts +291 -124
  11. package/es/components/table/table.vue2.js +143 -132
  12. package/es/components/table/types.d.ts +48 -43
  13. package/es/components/table/use/use-data-source.js +69 -69
  14. package/es/components/table/use/use-pagination.d.ts +11 -7
  15. package/es/components/table/use/use-pagination.js +36 -46
  16. package/es/components/table/utils.d.ts +24 -4
  17. package/es/index.js +2 -2
  18. package/es/package.json.d.ts +4 -3
  19. package/es/package.json.js +1 -1
  20. package/lib/components/pagination/index.d.ts +3 -1
  21. package/lib/components/pagination/pagination.vue.d.ts +3 -1
  22. package/lib/components/pagination/pagination.vue2.cjs +1 -1
  23. package/lib/components/table/constants.cjs +1 -1
  24. package/lib/components/table/constants.d.ts +2 -1
  25. package/lib/components/table/field.d.ts +60 -0
  26. package/lib/components/table/index.d.ts +1271 -544
  27. package/lib/components/table/table.vue.d.ts +291 -124
  28. package/lib/components/table/table.vue2.cjs +1 -1
  29. package/lib/components/table/types.d.ts +48 -43
  30. package/lib/components/table/use/use-data-source.cjs +1 -1
  31. package/lib/components/table/use/use-pagination.cjs +1 -1
  32. package/lib/components/table/use/use-pagination.d.ts +11 -7
  33. package/lib/components/table/utils.d.ts +24 -4
  34. package/lib/package.json.cjs +1 -1
  35. package/lib/package.json.d.ts +4 -3
  36. package/package.json +6 -5
  37. package/tags.json +1 -1
  38. package/theme-style/index.css +1 -1
  39. package/theme-style/src/table.scss +6 -1
  40. package/theme-style/vft-table.css +1 -1
  41. package/web-types.json +1 -1
@@ -1,3 +1,4 @@
1
+ import type { EmptyProps } from 'vft/es/components/empty';
1
2
  import { type PaginationProps } from 'vft/es/components/pagination';
2
3
  import type { VxeGridInstance, VxeGridProps, VxeTableDefines } from 'vxe-table';
3
4
  import { type SuperFormProps } from '../super-form';
@@ -6,101 +7,105 @@ import type { Recordable } from '../types';
6
7
  export type TableInstance = VxeGridInstance;
7
8
  /** 粘性定位选项接口 */
8
9
  export interface StickyOption {
9
- /** 距离顶部的偏移量 */
10
+ /** 距离顶部的偏移量,单位为像素 */
10
11
  offsetTop: number;
11
- /** 获取容器元素 */
12
+ /** 获取容器元素,用于指定粘性定位的容器 */
12
13
  getContainer?: HTMLElement;
13
14
  }
14
15
  /** 数据获取设置接口 */
15
16
  export interface FetchSetting {
16
- /** 请求接口当前页数字段名 */
17
+ /** 请求接口当前页数字段名,默认为 'page' */
17
18
  pageField: string;
18
- /** 每页显示条数字段名 */
19
+ /** 每页显示条数字段名,默认为 'pageSize' */
19
20
  sizeField: string;
20
- /** 请求结果列表字段名,支持 a.b.c 格式 */
21
+ /** 请求结果列表字段名,支持 a.b.c 格式,默认为 'data.items' */
21
22
  listField: string;
22
- /** 请求结果总数字段名,支持 a.b.c 格式 */
23
+ /** 请求结果总数字段名,支持 a.b.c 格式,默认为 'data.total' */
23
24
  totalField: string;
24
25
  }
25
26
  /** 表格属性接口 */
26
27
  export interface TableProps extends VxeGridProps {
27
- /** 是否启用粘性定位 */
28
+ /** 是否启用粘性定位,可以是布尔值或配置对象 */
28
29
  sticky?: boolean | StickyOption;
29
- /** 数据获取接口 */
30
+ /** 数据获取接口函数,用于远程获取表格数据 */
30
31
  api?: (params?: any) => Promise<any>;
31
- /** 每页显示条数 */
32
+ /** 每页显示条数,默认为 15 */
32
33
  pageSize?: number;
33
- /** 总条数 */
34
+ /** 数据总条数 */
34
35
  total?: number;
35
- /** 行键字段名 */
36
+ /** 行键字段名,用于唯一标识每一行数据 */
36
37
  rowkey?: string;
37
- /** 是否立即加载数据 */
38
+ /** 是否在组件挂载后立即加载数据,默认为 true */
38
39
  immediate?: boolean;
39
- /** 数据获取配置 */
40
+ /** 数据获取配置,用于自定义请求参数和响应数据的字段映射 */
40
41
  fetchSetting?: Partial<FetchSetting>;
41
- /** 是否监听接口变化 */
42
+ /** 是否监听接口变化,当 api 属性变化时自动重新请求数据 */
42
43
  watchApiFetch?: boolean;
43
- /** 数据获取前处理 */
44
+ /** 数据获取前的处理函数,可以对请求参数进行修改 */
44
45
  beforeFetch?: (params?: any) => any;
45
- /** 是否删除空参数 */
46
+ /** 是否删除空参数,true 表示删除空字符串和 null,'strict' 表示删除空字符串、null 和 undefined */
46
47
  delEmptyParams?: boolean | 'strict';
47
- /** 数据获取后处理 */
48
+ /** 数据获取后的处理函数,可以对响应数据进行转换 */
48
49
  afterFetch?: (params: any) => Recordable[];
49
- /** 是否转换参数 */
50
+ /** 是否转换参数,将分页参数转换为标准格式,默认为 true */
50
51
  transformParams?: boolean;
51
- /** 额外参数 */
52
+ /** 额外的请求参数,会合并到请求参数中 */
52
53
  extraParams?: any;
53
- /** 额外系统高度 */
54
+ /** 额外的系统高度,用于计算表格高度时需要减去的额外高度 */
54
55
  extraSysHeight?: number;
55
- /** 分页器高度 */
56
+ /** 分页器高度,默认为 40 像素 */
56
57
  pageHeight?: number;
57
- /** 是否显示分页器 */
58
+ /** 是否显示分页器,默认为 true */
58
59
  showPager?: boolean;
59
- /** 分页器配置 */
60
+ /** 分页器配置选项 */
60
61
  pagination?: Partial<PaginationProps> & {
61
- /** 分页器位置 */
62
+ /** 分页器位置,可选值:'bottom-left'、'bottom-right'、'top-left'、'top-right' */
62
63
  pagePlacement?: 'bottom-left' | 'bottom-right' | 'top-left' | 'top-right';
63
- /** 页码是否从0开始 */
64
+ /** 页码是否从 0 开始,默认从 1 开始 */
64
65
  pageIsZero?: boolean;
65
66
  };
66
- /** 表单配置选项 */
67
+ /** 表单配置选项,用于配置表格顶部的搜索表单 */
67
68
  formOptions?: SuperFormProps & {
68
- /** 是否显示操作表单 */
69
+ /** 是否显示操作表单,默认为 false */
69
70
  showActionForm?: boolean;
70
- /** 是否添加搜索全部配置 */
71
+ /** 是否添加搜索全部配置,默认为 false */
71
72
  addSearchAllSchema?: boolean;
72
73
  };
74
+ /** 表格数据变化时的回调函数 */
75
+ onChange?: (...args: any[]) => void;
76
+ /** 空状态配置,用于自定义空数据时的显示内容 */
77
+ emptyCfg?: EmptyProps;
73
78
  }
74
- /** 列项属性类型 */
79
+ /** 列项属性类型,继承自 VXE Table 的列选项 */
75
80
  export type ColumnItemProps = VxeTableDefines.ColumnOptions;
76
- /** 列属性类型 */
81
+ /** 列属性类型,表示列配置数组 */
77
82
  export type ColumnProps = ColumnItemProps[];
78
83
  /** 表格操作方法接口 */
79
84
  export interface TableActionType {
80
- /** 重新加载数据 */
85
+ /** 重新加载表格数据,可传入可选参数 */
81
86
  reload: (opt?: any) => Promise<any>;
82
- /** 设置表格属性 */
87
+ /** 设置表格属性,用于动态更新表格配置 */
83
88
  setProps: (props: Partial<TableProps>) => void;
84
- /** 获取数据源 */
89
+ /** 获取当前表格的数据源 */
85
90
  getDataSource: () => Recordable<any>[];
86
- /** 获取原始数据源 */
91
+ /** 获取原始数据源,未经过滤或处理的完整数据 */
87
92
  getRawDataSource: () => Recordable<any>[];
88
- /** 表格搜索 */
93
+ /** 表格搜索功能,根据关键字过滤数据 */
89
94
  tableSearch: (value: string | number) => void;
90
- /** 获取列配置 */
95
+ /** 获取当前的列配置 */
91
96
  getColumns: () => ColumnProps;
92
- /** 设置列配置 */
97
+ /** 设置列配置,用于动态更新表格列 */
93
98
  setColumns: (columns: ColumnProps) => void;
94
- /** 设置表格数据 */
99
+ /** 设置表格数据,替换当前所有数据 */
95
100
  setTableData: <T = Recordable>(values: T[]) => void;
96
- /** 设置分页信息 */
101
+ /** 设置分页信息,如当前页、每页条数等 */
97
102
  setPagination: (info: Partial<PaginationProps>) => void;
98
- /** 更新表格数据记录 */
103
+ /** 更新指定行的数据记录 */
99
104
  updateTableDataRecord: (rowKey: string | number, record: Recordable) => Recordable | void;
100
- /** 删除表格数据记录 */
105
+ /** 删除指定的数据记录,支持单个或多个 rowKey */
101
106
  deleteTableDataRecord: (row: Recordable, rowKey?: string | number | string[] | number[]) => void;
102
- /** 插入表格数据记录 */
107
+ /** 插入新的数据记录,可指定插入位置 */
103
108
  insertTableDataRecord: (record: Recordable | Recordable[], index?: number) => Recordable[] | void;
104
- /** 查找表格数据记录 */
109
+ /** 根据 rowKey 查找指定的数据记录 */
105
110
  findTableDataRecord: (rowKey: string | number) => Recordable | void;
106
111
  }
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../pagination/index.cjs");const i=require("@vft/utils"),J=require("@vueuse/core"),O=require("lodash-es"),t=require("vue"),K=require("../constants.cjs");function Q(s,{tableData:p,setLoading:j,getPaginationInfo:y,setPagination:o},q){const a=t.ref([]),E=t.ref({});t.watchEffect(()=>{p.value=t.unref(a)}),t.watch(()=>t.unref(s).data,()=>{const{data:e,api:r}=t.unref(s);!r&&e&&(a.value=e)},{immediate:!0});function z(e){o(e),h({})}const A=t.computed(()=>{const e=t.unref(a);return!e||e.length===0,t.unref(a)});async function h(e){const{api:r,fetchSetting:n={},beforeFetch:u,afterFetch:l,pagination:g,delEmptyParams:f,transformParams:G,extraParams:v}=t.unref(s);if(!(!r||!i.isFunction(r)))try{j(!0);const{pageField:w,sizeField:L,listField:V,totalField:H}=Object.assign({},{pageField:"page",sizeField:"pageSize",listField:"items",totalField:"total"},n);let S={},c=e;const{currentPage:_=1,pageSize:N=K.PAGE_SIZE}=t.unref(y);if(G){if(i.isBoolean(g)&&!g||i.isBoolean(y))S={};else{const m=e&&e.page||_;S[w]=g?.pageIsZero?m-1:m,S[L]=N}if(c=O.merge(e,S),u&&i.isFunction(u)){const m=await u(c);c={...c,...m}}f&&i.delObjAttrNotExist(c,i.isString(f)?f==="strict":!1)}c&&!i.isEmptyObject(c)&&!i.isNullOrUndefined(v)?i.isObject(c)&&i.isObject(v)&&(c=Object.assign({},c,v)):i.isNullOrUndefined(v)||(c=v);const b=await r(c),P=Array.isArray(b);let d=P?b:O.get(b,V);const F=P?b.length:O.get(b,H);if(Number(F)){const m=Math.ceil(F/N);if(_>m)return o({currentPage:m}),await h(e)}return l&&i.isFunction(l)&&(d=await l(d)||d),a.value=d,E.value=d,o({total:F||0}),e&&e.page&&o({currentPage:e.page||1}),q("fetch-success",{items:t.unref(d),total:F}),d}catch(w){console.log(w),q("fetch-error",w),a.value=[],o({total:0})}finally{j(!1)}}function D(){return E.value}async function C(e){return o({currentPage:e?.page||1}),await h(e)}function M(e){if(!a.value||a.value.length===0)return;const{rowkey:r}=t.unref(s);return(u=>{let l;return u.some(function(f){if(Reflect.has(f,r)&&f[r]===e)return l=f,!0}),l})(a.value)}async function k(e,r,n){return a.value[e]&&(a.value[e][r]=n),a.value[e]}function x(e,r){const n=M(e);if(n){for(const u in n)Reflect.has(r,u)&&(n[u]=r[u]);return n}}function B(e,r=0){const n=i.isPlainObject(e)?[e]:e;return a.value.splice(r,0,...n),t.unref(a)}function I(e,r){if(!a.value||a.value.length===0)return;const{rowkey:n}=t.unref(s),u=a.value.findIndex(g=>g[r||n]===e[r||n]);a.value.splice(u,1);const{total:l}=t.unref(y);i.isNumber(l)&&o({total:l-1})}function T(e){a.value=e}function U(){return A.value}function Z(e){const r=String(e).trim().toLowerCase();if(r){const n=D?.()?.filter(u=>{for(const l in u)if(String(u[l]).trim().toLowerCase()?.includes(r))return!0});T(n)}else T(D())}const R=t.ref(!0);return t.onMounted(()=>{J.useTimeoutFn(()=>{t.unref(s).immediate&&h(),R.value=!1},16)}),t.watch(()=>t.unref(s).api,()=>{t.unref(s).watchApiFetch&&!R.value&&t.unref(s).immediate&&h()}),{setTableData:T,updateTableData:k,updateTableDataRecord:x,insertTableDataRecord:B,deleteTableDataRecord:I,reload:C,handleTableChange:z,getDataSourceRef:A,getDataSource:U,getRawDataSource:D,tableSearch:Z}}exports.useDataSource=Q;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../pagination/index.cjs");const i=require("@vft/utils"),J=require("@vueuse/core"),T=require("lodash-es"),t=require("vue"),K=require("../constants.cjs");function Q(s,{tableData:_,setLoading:O,getPaginationInfo:j,setPagination:o},q){const a=t.ref([]),P=t.ref({});t.watchEffect(()=>{_.value=t.unref(a)}),t.watch(()=>t.unref(s).data,()=>{const{data:e,api:r}=t.unref(s);!r&&e&&(a.value=e)},{immediate:!0});function p(e){o(e),h({})}const R=t.computed(()=>{const e=t.unref(a);return!e||e.length===0,t.unref(a)});async function h(e){const{api:r,fetchSetting:n={},beforeFetch:u,afterFetch:l,pagination:m,delEmptyParams:f,transformParams:V,extraParams:v}=t.unref(s);if(!(!r||!i.isFunction(r)))try{O(!0);const{pageField:w,sizeField:Z,listField:G,totalField:H}=Object.assign({},{pageField:"page",sizeField:"pageSize",listField:"items",totalField:"total"},n);let S={},c=e;const{currentPage:A=1,pageSize:E=K.PageSize}=t.unref(j);if(V){if(i.isBoolean(m)&&!m)S={};else{const g=e&&e.page||A;S[w]=m?.pageIsZero?g-1:g,S[Z]=E}if(c=T.merge(e,S),u&&i.isFunction(u)){const g=await u(c);c={...c,...g}}f&&i.delObjAttrNotExist(c,i.isString(f)?f==="strict":!1)}c&&!i.isEmptyObject(c)&&!i.isNullOrUndefined(v)?i.isObject(c)&&i.isObject(v)&&(c=Object.assign({},c,v)):i.isNullOrUndefined(v)||(c=v);const b=await r(c),N=Array.isArray(b);let d=N?b:T.get(b,G);const F=N?b.length:T.get(b,H);if(Number(F)){const g=Math.ceil(F/E);if(A>g)return o({currentPage:g}),await h(e)}return l&&i.isFunction(l)&&(d=await l(d)||d),a.value=d,P.value=d,o({total:F||0}),e&&e.page&&o({currentPage:e.page||1}),q("fetch-success",{items:t.unref(d),total:F}),d}catch(w){console.log(w),q("fetch-error",w),a.value=[],o({total:0})}finally{O(!1)}}function y(){return P.value}async function C(e){return o({currentPage:e?.page||1}),await h(e)}function M(e){if(!a.value||a.value.length===0)return;const{rowkey:r}=t.unref(s);return(u=>{let l;return u.some(function(f){if(Reflect.has(f,r)&&f[r]===e)return l=f,!0}),l})(a.value)}async function k(e,r,n){return a.value[e]&&(a.value[e][r]=n),a.value[e]}function x(e,r){const n=M(e);if(n){for(const u in n)Reflect.has(r,u)&&(n[u]=r[u]);return n}}function I(e,r=0){const n=i.isPlainObject(e)?[e]:e;return a.value.splice(r,0,...n),t.unref(a)}function U(e,r){if(!a.value||a.value.length===0)return;const{rowkey:n}=t.unref(s),u=a.value.findIndex(m=>m[r||n]===e[r||n]);a.value.splice(u,1);const{total:l}=t.unref(j);i.isNumber(l)&&o({total:l-1})}function D(e){a.value=e}function B(){return R.value}function L(e){const r=String(e).trim().toLowerCase();if(r){const n=y?.()?.filter(u=>{for(const l in u)if(String(u[l]).trim().toLowerCase()?.includes(r))return!0});D(n)}else D(y())}const z=t.ref(!0);return t.onMounted(()=>{J.useTimeoutFn(()=>{t.unref(s).immediate&&h(),z.value=!1},16)}),t.watch(()=>t.unref(s).api,()=>{t.unref(s).watchApiFetch&&!z.value&&t.unref(s).immediate&&h()}),{setTableData:D,updateTableData:k,updateTableDataRecord:x,insertTableDataRecord:I,deleteTableDataRecord:U,reload:C,handleTableChange:p,getDataSourceRef:R,getDataSource:B,getRawDataSource:y,tableSearch:L}}exports.useDataSource=Q;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@vft/utils"),e=require("vue"),S=require("../constants.cjs");function h(i){const o=e.ref({}),a=e.ref(!0);e.watch(()=>e.unref(i).pagination,n=>{!u.isBoolean(n)&&n&&(o.value={...e.unref(o),...n??{}})});const t=e.computed(()=>{const{pagination:n,total:r,pageSize:p}=e.unref(i);return!e.unref(a)||u.isBoolean(n)&&!n?!1:{currentPage:1,pageSize:p,total:r,defaultPageSize:S.PAGE_SIZE,layout:"total, prev, pager, next, jumper",pagePlacement:"bottom-right","hide-on-single-page":!0,...u.isBoolean(n)?{}:n,...e.unref(o)}});function g(n){const r=e.unref(t);o.value={...u.isBoolean(r)?{}:r,...n}}function f(){return e.unref(t)}function c(){return e.unref(t).currentPage}function s(){return e.unref(t).pageSize}function l(){return e.unref(a)}async function P(n){a.value=n}return{getPagination:f,getCurrentPage:c,getPageSize:s,getPaginationInfo:t,setShowPagination:P,getShowPagination:l,setPagination:g}}exports.usePagination=h;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("@vft/utils"),e=require("vue"),P=require("../constants.cjs");function l(u){const r=e.ref({});e.watch(()=>e.unref(u).pagination,n=>{n&&(r.value={...e.unref(r),...n??{}})});const t=e.computed(()=>{const{pagination:n,total:a,pageSize:f}=e.unref(u);return u.value.showPager?{currentPage:1,pageSize:f,total:a,defaultPageSize:P.PageSize,layout:"total, prev, pager, next, jumper",pagePlacement:"bottom-right",hideOnSinglePage:!0,...s.isBoolean(n)?{}:n,...e.unref(r)}:{}});function i(n){const a=e.unref(t);r.value={...a,...n}}function o(){return e.unref(t)}function g(){return e.unref(t).currentPage}function c(){return e.unref(t).pageSize}return{getPagination:o,getCurrentPage:g,getPageSize:c,getPaginationInfo:t,setPagination:i}}exports.usePagination=l;
@@ -1,12 +1,16 @@
1
1
  import type { PaginationProps } from 'vft/es/components/pagination';
2
2
  import { type ComputedRef } from 'vue';
3
3
  import type { TableProps } from '../types';
4
- export declare function usePagination(refProps: ComputedRef<TableProps>): {
5
- getPagination: () => boolean | PaginationProps;
6
- getCurrentPage: () => any;
7
- getPageSize: () => any;
8
- getPaginationInfo: ComputedRef<boolean | PaginationProps>;
9
- setShowPagination: (flag: boolean) => Promise<void>;
10
- getShowPagination: () => boolean;
4
+ export declare function usePagination(tableRefProps: ComputedRef<TableProps>): {
5
+ getPagination: () => (Partial<PaginationProps> & {
6
+ pagePlacement?: "bottom-left" | "bottom-right" | "top-left" | "top-right";
7
+ pageIsZero?: boolean;
8
+ }) | undefined;
9
+ getCurrentPage: () => number | undefined;
10
+ getPageSize: () => number | undefined;
11
+ getPaginationInfo: ComputedRef<(Partial<PaginationProps> & {
12
+ pagePlacement?: "bottom-left" | "bottom-right" | "top-left" | "top-right";
13
+ pageIsZero?: boolean;
14
+ }) | undefined>;
11
15
  setPagination: (info: Partial<PaginationProps>) => void;
12
16
  };
@@ -1,9 +1,29 @@
1
- export declare const addRequire: (obj: any) => any;
2
- export declare const removeRequire: (obj: any) => any;
3
- export declare const selectMapping: (list: any) => {
1
+ /**
2
+ * 添加必填标记
3
+ * @param obj - 需要添加必填标记的对象
4
+ * @returns 添加了 required 属性的新对象
5
+ */
6
+ export declare const addRequire: <T extends Record<string, any>>(obj: T) => T & {
7
+ required: boolean;
8
+ };
9
+ /**
10
+ * 移除必填标记
11
+ * @param obj - 需要移除必填标记的对象
12
+ * @returns 移除了 required 属性的新对象
13
+ */
14
+ export declare const removeRequire: <T extends Record<string, any>>(obj: T) => Omit<T, "required">;
15
+ /**
16
+ * 选择器映射函数,用于将值映射为标签显示
17
+ * @param list - 选项列表,包含 value 和 label 属性
18
+ * @returns 格式化配置对象
19
+ */
20
+ export declare const selectMapping: (list?: Array<{
21
+ value: any;
22
+ label: string;
23
+ }>) => {
4
24
  formatter: ({ cellValue }: {
5
25
  cellValue: any;
6
- }) => any;
26
+ }) => string;
7
27
  } | {
8
28
  formatter?: undefined;
9
29
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.439";exports.version=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.441";exports.version=e;
@@ -1,6 +1,6 @@
1
1
  declare const _default: {
2
2
  "name": "vft",
3
- "version": "0.0.439",
3
+ "version": "0.0.441",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -43,8 +43,9 @@ declare const _default: {
43
43
  "vue-router": ">=4.0.16"
44
44
  },
45
45
  "dependencies": {
46
- "vxe-table": "4.15.0",
47
- "xe-utils": "3.7.8",
46
+ "vxe-table": "4.16.21",
47
+ "vxe-pc-ui": "4.9.44",
48
+ "xe-utils": "3.7.9",
48
49
  "@vft/constants": "workspace:*",
49
50
  "@vft/router": "workspace:*",
50
51
  "@vft/store": "workspace:*",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vft",
3
- "version": "0.0.439",
3
+ "version": "0.0.441",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -37,8 +37,9 @@
37
37
  "vue-router": ">=4.0.16"
38
38
  },
39
39
  "dependencies": {
40
- "vxe-table": "4.15.0",
41
- "xe-utils": "3.7.8",
40
+ "vxe-table": "4.16.21",
41
+ "vxe-pc-ui": "4.9.44",
42
+ "xe-utils": "3.7.9",
42
43
  "@ctrl/tinycolor": "4.0.2",
43
44
  "@floating-ui/dom": "1.5.3",
44
45
  "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7",
@@ -56,10 +57,10 @@
56
57
  "sortablejs": "1.15.0",
57
58
  "photoswipe": "5.4.4",
58
59
  "@vft/router": "0.0.67",
59
- "@vft/use": "0.0.90",
60
- "@vft/directives": "0.0.36",
61
60
  "@vft/constants": "0.0.75",
62
61
  "@vft/store": "0.0.57",
62
+ "@vft/use": "0.0.90",
63
+ "@vft/directives": "0.0.36",
63
64
  "@vft/utils": "0.0.145"
64
65
  },
65
66
  "vetur": {
package/tags.json CHANGED
@@ -1 +1 @@
1
- {"vft-alert":{"attributes":["title","type","description","closable","center","close-text","show-icon","effect"],"description":"提示 用于页面中展示重要的提示信息。\n\n[Docs](https://wflynn.cn/pages/alert#alert)"},"vft-auto-complete":{"attributes":["model-value / v-model","placeholder","clearable","disabled","value-key","debounce","placement","fetch-suggestions","trigger-on-focus","select-when-unmatched","name","label","hide-loading","popper-class","popper-append-to-body ^(deprecated)","teleported","highlight-first-item","fit-input-width","select","change"],"description":"自动补全输入框 根据输入内容提供对应的输入建议。\n\n[Docs](https://wflynn.cn/pages/autocomplete#autocomplete)"},"vft-avatar":{"attributes":["icon","size","shape","src","src-set","alt","fit"],"description":"Avatar 组件可以用来代表人物或对象, 支持使用图片、图标或者文字作为 Avatar。\n\n[Docs](https://wflynn.cn/pages/avatar#avatar)"},"vft-backtop":{"attributes":["target","visibility-height","right","bottom"],"description":"返回页面顶部的操作按钮。\n\n[Docs](https://wflynn.cn/pages/backtop#backtop)"},"vft-button":{"attributes":["size","type","plain","text","bg","link<VersionTag version=\"2.2.1\" />","round","circle","loading","loading-icon","disabled","icon","autofocus","native-type","auto-insert-space","color","dark"],"description":"常用的操作按钮。\n\n[Docs](https://wflynn.cn/pages/button#button)"},"vft-button-group":{"description":"[Docs](https://wflynn.cn/pages/button#buttongroup)"},"vft-card":{"attributes":["header","body-style","shadow"],"description":"将信息聚合在卡片容器中展示。\n\n[Docs](https://wflynn.cn/pages/card#card)"},"vft-carousel":{"attributes":["height","initial-index","trigger","autoplay","interval","indicator-position","arrow","type","loop","direction","pause-on-hover","change"],"description":"在有限空间内,循环播放同一类型的图片、文字等内容\n\n[Docs](https://wflynn.cn/pages/carousel#carousel)"},"vft-carousel-item":{"attributes":["name","label"],"description":"[Docs](https://wflynn.cn/pages/carousel#carousel-item)"},"vft-checkbox":{"attributes":["model-value / v-model","label","true-label","false-label","disabled","border","size","name","checked","indeterminate","validate-event","tabindex","id","controls ^(a11y)","change"],"description":"在一组备选项中进行多选。\n\n[Docs](https://wflynn.cn/pages/checkbox#checkbox)"},"vft-checkbox-group":{"attributes":["model-value / v-model","size","disabled","min","max","label","text-color","fill","tag","validate-event","change"],"description":"[Docs](https://wflynn.cn/pages/checkbox#checkboxgroup)"},"vft-checkbox-button":{"attributes":["label","true-label","false-label","disabled","name","checked"],"description":"[Docs](https://wflynn.cn/pages/checkbox#checkboxbutton)"},"vft-clamp":{"attributes":["text","maxHeight","maxLines","expanded","ellipsis","autoResize","location"],"description":"文字...省略\n\n[Docs](https://wflynn.cn/pages/clamp#clamp)"},"vft-color-picker":{"attributes":["model-value / v-model","disabled","size","show-alpha","color-format","popper-class","predefine","validate-event","tabindex","label<A11yTag/>","id","change","active-change"],"description":"用于颜色选择,支持多种格式。\n\n[Docs](https://wflynn.cn/pages/color-picker#colorpicker)"},"vft-config-provider":{"attributes":["locale","size","zIndex","namespace","button","message","experimental-features"],"description":"Config Provider 被用来提供全局的配置选项,让你的配置能够在全局都能够被访问到。\n\n[Docs](https://wflynn.cn/pages/config-provider#config-provider)"},"vft-container":{"attributes":["direction"],"description":"[Docs](https://wflynn.cn/pages/container#container)"},"vft-header":{"attributes":["height"],"description":"[Docs](https://wflynn.cn/pages/container#header)"},"vft-aside":{"attributes":["width"],"description":"[Docs](https://wflynn.cn/pages/container#aside)"},"vft-main":{"description":"[Docs](https://wflynn.cn/pages/container#main)"},"vft-footer":{"attributes":["height"],"description":"[Docs](https://wflynn.cn/pages/container#footer)"},"vft-date-picker":{"attributes":["model-value / v-model","readonly","disabled","size","editable","clearable","placeholder","start-placeholder","end-placeholder","type","format","popper-class","popper-options","range-separator","default-value","default-time","value-format","id","name","unlink-panels","prefix-icon","clear-icon","validate-event","disabled-date","shortcuts","cell-class-name","teleported","change","blur","focus","calendar-change","panel-change","visible-change"],"description":"用于选择或输入日期\n\n[Docs](https://wflynn.cn/pages/date-picker#datepicker)"},"vft-date-time-picker":{"attributes":["model-value / v-model","readonly","disabled","editable","clearable","size","placeholder","start-placeholder","end-placeholder","time-arrow-control","type","format","popper-class","range-separator","default-value","default-time","value-format","id","name","unlink-panels","prefix-icon","clear-icon","shortcuts","disabled-date","cell-class-name","teleported","change","blur","focus","calendar-change","visible-change"],"description":"在同一个选择器里选择日期和时间\n\n[Docs](https://wflynn.cn/pages/datetime-picker#datetimepicker)"},"vft-descriptions":{"attributes":["border","column","direction","size","title","extra"],"description":"列表形式展示多个字段。\n\n[Docs](https://wflynn.cn/pages/descriptions#descriptions)"},"vft-descriptions-item":{"attributes":["label","span","width","min-width","align","label-align","class-name","label-class-name"],"description":"[Docs](https://wflynn.cn/pages/descriptions#descriptions-item)"},"vft-dialog":{"attributes":["model-value / v-model","title","width","fullscreen","top","modal","modal-penetrable","modal-class","header-class","body-class","footer-class","append-to-body","append-to","lock-scroll","open-delay","close-delay","close-on-click-modal","close-on-press-escape","show-close","before-close","draggable","overflow","center","align-center","destroy-on-close","close-icon","z-index","header-aria-level","transition","custom-class","open","opened","close","closed","open-auto-focus","close-auto-focus"],"description":"在保留当前页面状态的情况下,告知用户并承载相关操作。\n\n[Docs](https://wflynn.cn/pages/dialog#dialog)"},"vft-divider":{"attributes":["direction","border-style","content-position"],"description":"区隔内容的分割线。\n\n[Docs](https://wflynn.cn/pages/divider#divider)"},"vft-drawer":{"attributes":["model-value / v-model","append-to-body","lock-scroll","before-close","close-on-click-modal","close-on-press-escape","open-delay","close-delay","custom-class ^(deprecated)","destroy-on-close","modal","direction","show-close","size","title","with-header","modal-class","z-index","open","opened","close","closed"],"description":"有些时候, `Dialog` 组件并不满足我们的需求, 比如你的表单很长, 亦或是你需要临时展示一些文档, `Drawer`\n\n[Docs](https://wflynn.cn/pages/drawer#drawer)"},"vft-dropdown":{"attributes":["type","size","max-height","split-button","disabled","placement","trigger","hide-on-click","show-timeout","hide-timeout","role","tabindex","popper-class","popper-options","teleported","click","command","visible-change"],"description":"将动作或菜单折叠到下拉菜单中。\n\n[Docs](https://wflynn.cn/pages/dropdown#dropdown)"},"vft-dropdown-menu":{"description":"[Docs](https://wflynn.cn/pages/dropdown#dropdown-menu)"},"vft-dropdown-item":{"attributes":["command","disabled","divided","icon"],"description":"[Docs](https://wflynn.cn/pages/dropdown#dropdown-item)"},"vft-empty":{"attributes":["image","image-size","description"],"description":"空状态时的占位提示。\n\n[Docs](https://wflynn.cn/pages/empty#empty)"},"vft-form":{"attributes":["model","rules","inline","label-position","label-width","label-suffix","hide-required-asterisk","require-asterisk-position","show-message","inline-message","status-icon","validate-on-rule-change","size","disabled","scroll-to-error","scroll-into-view-options","validate"],"description":"表单包含 `输入框`, `单选框`, `下拉选择`, `多选框` 等用户输入的组件。 使用表单,您可以收集、验证和提交数据。\n\n[Docs](https://wflynn.cn/pages/form#form)"},"vft-form-item":{"attributes":["prop","label","label-width","required","rules","error","show-message","inline-message","size","for","validate-status"],"description":"[Docs](https://wflynn.cn/pages/form#formitem)"},"vft-icon":{"attributes":["icon","size","color","hoverColor","rotate","rotateSpeed","pointer"],"description":"图标 [图标资源地址]\n\n[Docs](https://wflynn.cn/pages/icon#icon)"},"vft-image":{"attributes":["src","fit","hide-on-click-modal","`loading` ^(2.2.3)","lazy","scroll-container","alt","referrerpolicy","preview-src-list","z-index","initial-index","close-on-press-escape","preview-teleported","load","error","switch","close"],"description":"图片容器,在保留所有原生 img 的特性下,支持懒加载,自定义占位、加载失败等\n\n[Docs](https://wflynn.cn/pages/image#image)"},"vft-image-viewer":{"attributes":["url-list","z-index","initial-index","infinite","hide-on-click-modal","teleported","zoom-rate","close","switch"],"description":"[Docs](https://wflynn.cn/pages/image#image-viewer)"},"vft-input-number":{"attributes":["model-value / v-model","min","max","step","step-strictly","precision","size","readonly","disabled","controls","controls-position","name","label","placeholder","id","value-on-clear ^(2.2.0)","validate-event","change","blur","focus"],"description":"仅允许输入标准的数字值,可定义范围\n\n[Docs](https://wflynn.cn/pages/input-number#input-number)"},"vft-input":{"attributes":["type","model-value / v-model","maxlength","minlength","show-word-limit","placeholder","clearable","formatter","parser","show-password","disabled","size","prefix-icon","suffix-icon","rows","autosize","autocomplete","name","readonly","max","min","step","resize","autofocus","form","label ^(a11y)","tabindex","validate-event","input-style","blur","focus","change","input","clear"],"description":"通过鼠标或键盘输入字符\n\n[Docs](https://wflynn.cn/pages/input#input)"},"vft-row":{"attributes":["gutter","justify","align","tag"],"description":"[Docs](https://wflynn.cn/pages/layout#row)"},"vft-col":{"attributes":["span","offset","push","pull","xs","sm","md","lg","xl","tag"],"description":"[Docs](https://wflynn.cn/pages/layout#col)"},"vft-link":{"attributes":["type","underline","disabled","href","icon"],"description":"文字超链接\n\n[Docs](https://wflynn.cn/pages/link#link)"},"vft-list-cell":{"attributes":["list","cellHeight","leftTextDistance","activeIndex","item-click"],"description":"菜单列表\n\n[Docs](https://wflynn.cn/pages/list-cell#listcell)"},"vft-logo":{"attributes":["title","logo","jump-path","click"],"description":"用于展示品牌 `logo` 和标题的组件,支持点击跳转功能。\n\n[Docs](https://wflynn.cn/pages/logo#logo)"},"vft-menu":{"attributes":["mode","collapse","ellipsis","default-active","default-openeds","unique-opened","menu-trigger","router","collapse-transition","popper-effect","select","open","close"],"description":"为网站提供导航功能的菜单。\n\n[Docs](https://wflynn.cn/pages/menu#menu)"},"vft-sub-menu":{"attributes":["index","popper-class","show-timeout","hide-timeout","disabled","popper-append-to-body(已废弃)","teleported","popper-offset","expand-close-icon","expand-open-icon","collapse-close-icon","collapse-open-icon"],"description":"[Docs](https://wflynn.cn/pages/menu#submenu)"},"vft-menu-item":{"attributes":["index","route","disabled","click"],"description":"[Docs](https://wflynn.cn/pages/menu#menu-item)"},"vft-menu-item-group":{"attributes":["title"],"description":"[Docs](https://wflynn.cn/pages/menu#menu-item-group)"},"vft-modal":{"attributes":["model-value / v-model","title","width","fullscreen","top","modal","append-to-body","lock-scroll","open-delay","close-delay","close-on-click-modal","close-on-press-escape","show-close","before-close","draggable","center","align-center","destroy-on-close","showActionButtonGroup","showSubmitButton","showCancelButton","submitButtonOptions","cancelButtonOptions","actionRowOptions","open","opened","close","closed","open-auto-focus","close-auto-focus"],"description":"在保留当前页面状态的情况下,告知用户并承载相关操作。\n\n[Docs](https://wflynn.cn/pages/modal#modal)"},"vft-page-wrapper":{"attributes":["title"],"description":"页面 demo 容器\n\n[Docs](https://wflynn.cn/pages/page-wrapper#pagewrapper)"},"vft-pagination":{"attributes":["small","background","page-size / v-model:page-size","default-page-size","total","page-count","pager-count","current-page / v-model:current-page","default-current-page","layout","page-sizes","popper-class","prev-text","prev-icon","next-text","next-icon","disabled","hide-on-single-page","size-change","current-change","prev-click","next-click"],"description":"当数据量过多时,使用分页分解数据。\n\n[Docs](https://wflynn.cn/pages/pagination#pagination)"},"vft-popconfirm":{"attributes":["title","confirm-button-text","cancel-button-text","confirm-button-type","cancel-button-type","icon","icon-color","hide-icon","hide-after","teleported","persistent","width"],"description":"点击某个元素弹出一个简单的气泡确认框\n\n[Docs](https://wflynn.cn/pages/popconfirm#popconfirm)"},"vft-popover":{"attributes":["trigger","trigger-keys","title","effect","content","width","placement","disabled","visible / v-model:visible","offset","transition","show-arrow","popper-options","popper-class","popper-style","show-after","hide-after","auto-close","tabindex","teleported","append-to","persistent","virtual-triggering","virtual-ref","show","before-enter","after-enter","hide","before-leave","after-leave"],"description":"<!-- more -->\n\n[Docs](https://wflynn.cn/pages/popover#popover)"},"vft-progress":{"attributes":["percentage","type","stroke-width","text-inside","status","indeterminate","duration","color","width","show-text","stroke-linecap","format","striped","striped-flow"],"description":"用于展示操作进度,告知用户当前状态和预期。\n\n[Docs](https://wflynn.cn/pages/progress#progress)"},"vft-radio":{"attributes":["model-value / v-model","label","disabled","border","size","name","change"],"description":"在一组备选项中进行单选\n\n[Docs](https://wflynn.cn/pages/radio#radio)"},"vft-radio-group":{"attributes":["model-value / v-model","size","disabled","text-color","fill","validate-event","label ^(a11y)","name","id","change"],"description":"[Docs](https://wflynn.cn/pages/radio#radiogroup)"},"vft-radio-button":{"attributes":["label","disabled","name"],"description":"[Docs](https://wflynn.cn/pages/radio#radiobutton)"},"vft-result":{"attributes":["title","sub-title","icon"],"description":"用于对用户的操作结果或者异常状态做反馈。\n\n[Docs](https://wflynn.cn/pages/result#result)"},"vft-scrollbar":{"attributes":["height","max-height","native","wrap-style","wrap-class","view-style","view-class","noresize","tag","always","min-size","scroll"],"description":"用于替换浏览器原生滚动条。\n\n[Docs](https://wflynn.cn/pages/scrollbar#scrollbar)"},"vft-select":{"attributes":["model-value / v-model","options","multiple","disabled","value-key","size","clearable","clear-icon","collapse-tags","multiple-limit","name","effect","autocomplete","placeholder","filterable","allow-create","reserve-keyword","no-data-text","popper-class","popper-append-to-body ^(deprecated)","teleported","persistent","popper-options","automatic-dropdown","height","scrollbar-always-on","remote","remote-method","validate-event","placement","collapse-tags-tooltip","change","visible-change","remove-tag","clear","blur","focus"],"description":"在某些使用情况下,单个选择器可能最终加载数万行数据。 将这么多的数据渲染至 DOM 中可能会给浏览器带来负担,从而造成性能问题。\n\n[Docs](https://wflynn.cn/pages/select#select)"},"vft-side-menu-侧边菜单":{"attributes":["menus","width","height","collapse","collapse-width","is-fixed-left","show-collapse","default-active","default-openeds","default-openeds-level","unique-opened","attr-mapping","menu-top-bottom-height","drag-option","drag-width-cfg","use-router-jump","open-disabled","disabled-judge-turn-over","auto-scroll-active-dom","open-menu-collapse","disable-sub-menu-action","select","update:collapse","update:width","drag-end","drag-width-end","sub-menu-click","sub-menu-open-click","menu-item-mouseenter","menu-item-mouseleave"],"description":"侧边导航菜单组件,提供丰富的功能配置,支持折叠、拖拽宽度、自定义属性映射等特性。\n\n[Docs](https://wflynn.cn/pages/side-menu#sidemenu-侧边菜单)"},"vft-skeleton-item":{"attributes":["variant"],"description":"[Docs](https://wflynn.cn/pages/skeleton#skeletonitem)"},"vft-space":{"attributes":["alignment","class","direction","prefix-cls","style","spacer","size","wrap","fill","fill-ratio"],"description":"虽然我们拥有 [Divider 组件]\n\n[Docs](https://wflynn.cn/pages/space#space)"},"vft-switch":{"attributes":["model-value / v-model","disabled","loading","size","width","inline-prompt","active-icon","inactive-icon","active-text","inactive-text","active-value","inactive-value","active-color","inactive-color","border-color","name","validate-event","before-change","change"],"description":"表示两种相互对立的状态间的切换,多用于触发「开/关」。\n\n[Docs](https://wflynn.cn/pages/switch#switch)"},"vft-table":{"attributes":["maxHeight","columns","data","loading","height","pageSize","pageNum","total","defaultSort","tableConfig","sticky","pagePlacement","pageOptions"],"description":"<!-- more -->\n\n[Docs](https://wflynn.cn/pages/table#table)"},"vft-tabs":{"attributes":["model-value / v-model","type","closable","addable","editable","tab-position","stretch","before-leave","tab-click","tab-change","tab-remove","tab-add","edit"],"description":"分隔内容上有关联但属于不同类别的数据集合。\n\n[Docs](https://wflynn.cn/pages/tabs#tabs)"},"vft-tab-pane":{"attributes":["label","disabled","name","closable","lazy"],"description":"[Docs](https://wflynn.cn/pages/tabs#tab-pane)"},"vft-check-tag":{"attributes":["checked","change"],"description":"[Docs](https://wflynn.cn/pages/tag#checktag)"},"vft-tag":{"attributes":["type","closable","disable-transitions","hit","color","size","effect","round","click","close"],"description":"用于标记和选择。\n\n[Docs](https://wflynn.cn/pages/tag#tag)"},"vft-time-picker":{"attributes":["model-value / v-model","readonly","disabled","editable","clearable","size","placeholder","start-placeholder","end-placeholder","is-range","arrow-control","popper-class","range-separator","format","default-value","id","name","label ^(a11y)","prefix-icon","clear-icon","disabled-hours","disabled-minutes","disabled-seconds","teleported","tabindex","change","blur","focus","visible-change"],"description":"用于选择或输入日期\n\n[Docs](https://wflynn.cn/pages/time-picker#timepicker)"},"vft-tooltip":{"attributes":["role","show-arrow","arrow-offset","virtual-ref","virtual-triggering","id","open","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","strategy","style","className","effect","visible / v-model:visible","enterable","pure","focus-on-show","trapping","popper-class","popper-style","reference-el","trigger-target-el","stop-popper-mouse-event","aria-label ^(a11y)","before-show","before-hide","show","hide","open","close"],"description":"常用于展示鼠标 hover 时的提示信息。\n\n[Docs](https://wflynn.cn/pages/tooltip#tooltip)"},"vft-tree":{"attributes":["data","empty-text","node-key","props","render-after-expand","load","render-content","highlight-current","default-expand-all","expand-on-click-node","check-on-click-node","auto-expand-parent","default-expanded-keys","show-checkbox","check-strictly","default-checked-keys","current-node-key","filter-node-method","accordion","indent","icon","lazy","draggable","allow-drag","allow-drop","node-click","node-contextmenu","check-change","check","current-change","node-expand","node-collapse","node-drag-start","node-drag-enter","node-drag-leave","node-drag-over","node-drag-end","node-drop"],"description":"用清晰的层级结构展示信息,可展开或折叠。\n\n[Docs](https://wflynn.cn/pages/tree#tree)"},"vft-upload":{"attributes":["action","headers","method","multiple","data","name","with-credentials","show-file-list","drag","accept","on-preview","on-remove","on-success","on-error","on-progress","on-change","on-exceed","before-upload","before-remove","file-list` / `v-model:file-list","list-type","auto-upload","http-request","disabled","limit"],"description":"通过点击或者拖拽上传文件。\n\n[Docs](https://wflynn.cn/pages/upload#upload)"},"vft-date-time-select":{"attributes":["dateList","defaultFormat","placement","change"],"description":"自定义时间选择器\n\n[Docs](https://wflynn.cn/pages/date-time-select#datetimeselect)"},"vft-horizontal-menu":{"attributes":["menus","defaultActive","defaultOpeneds","attrMapping","useRouterJump","openDisabled","disabledJudgeTurnOver","subMenuCfg","maxRowLength","open","close"],"description":"自定义时间选择器\n\n[Docs](https://wflynn.cn/pages/horizontal-menu#horizontalmenu)"},"vft-icon-text":{"attributes":["text","icon","color","hoverColor","distance","reverse","size","direction","pointer"],"description":"文字与图标组合\n\n[Docs](https://wflynn.cn/pages/icon-text#icontext)"},"vft-search":{"attributes":["modelValue","placeholder","prefixIcon","suffixIcon","clearable","clearIcon","width","activeWidth","usePopover","popoverCfg","update:modelValue","blur","focus","clear","enter","prefixClick","suffixClick","mouseenter","mouseleave","keydown","change"],"description":"搜索,以及搜索框\n\n[Docs](https://wflynn.cn/pages/search#search)"},"vft-side-menu":{"attributes":["menus","uniqueOpened","isFixedLeft","autoScrollActiveDom","collapse","defaultActive","defaultOpeneds","width","collapseWidth","height","attrMapping","extraHeight","menuTopBottomHeight","showCollapse","dragOption","dragWidthCfg","useRouterJump","openDisabled","update:collapse","update:width","dragEnd","dragWidthEnd","select","menuItemMouseenter","menuItemMouseleave"],"description":"自定义时间选择器\n\n[Docs](https://wflynn.cn/pages/side-menu#sidemenu)"},"vft-super-form":{"attributes":["register","submit"],"description":"自定义时间选择器\n\n[Docs](https://wflynn.cn/pages/super-form#superform)"}}
1
+ {"vft-alert":{"attributes":["title","type","description","closable","center","close-text","show-icon","effect"],"description":"提示 用于页面中展示重要的提示信息。\n\n[Docs](https://wflynn.cn/pages/alert#alert)"},"vft-auto-complete":{"attributes":["model-value / v-model","placeholder","clearable","disabled","value-key","debounce","placement","fetch-suggestions","trigger-on-focus","select-when-unmatched","name","label","hide-loading","popper-class","popper-append-to-body ^(deprecated)","teleported","highlight-first-item","fit-input-width","select","change"],"description":"自动补全输入框 根据输入内容提供对应的输入建议。\n\n[Docs](https://wflynn.cn/pages/autocomplete#autocomplete)"},"vft-avatar":{"attributes":["icon","size","shape","src","src-set","alt","fit"],"description":"Avatar 组件可以用来代表人物或对象, 支持使用图片、图标或者文字作为 Avatar。\n\n[Docs](https://wflynn.cn/pages/avatar#avatar)"},"vft-backtop":{"attributes":["target","visibility-height","right","bottom"],"description":"返回页面顶部的操作按钮。\n\n[Docs](https://wflynn.cn/pages/backtop#backtop)"},"vft-button":{"attributes":["size","type","plain","text","bg","link<VersionTag version=\"2.2.1\" />","round","circle","loading","loading-icon","disabled","icon","autofocus","native-type","auto-insert-space","color","dark"],"description":"常用的操作按钮。\n\n[Docs](https://wflynn.cn/pages/button#button)"},"vft-button-group":{"description":"[Docs](https://wflynn.cn/pages/button#buttongroup)"},"vft-card":{"attributes":["header","body-style","shadow"],"description":"将信息聚合在卡片容器中展示。\n\n[Docs](https://wflynn.cn/pages/card#card)"},"vft-carousel":{"attributes":["height","initial-index","trigger","autoplay","interval","indicator-position","arrow","type","loop","direction","pause-on-hover","change"],"description":"在有限空间内,循环播放同一类型的图片、文字等内容\n\n[Docs](https://wflynn.cn/pages/carousel#carousel)"},"vft-carousel-item":{"attributes":["name","label"],"description":"[Docs](https://wflynn.cn/pages/carousel#carousel-item)"},"vft-checkbox":{"attributes":["model-value / v-model","label","true-label","false-label","disabled","border","size","name","checked","indeterminate","validate-event","tabindex","id","controls ^(a11y)","change"],"description":"在一组备选项中进行多选。\n\n[Docs](https://wflynn.cn/pages/checkbox#checkbox)"},"vft-checkbox-group":{"attributes":["model-value / v-model","size","disabled","min","max","label","text-color","fill","tag","validate-event","change"],"description":"[Docs](https://wflynn.cn/pages/checkbox#checkboxgroup)"},"vft-checkbox-button":{"attributes":["label","true-label","false-label","disabled","name","checked"],"description":"[Docs](https://wflynn.cn/pages/checkbox#checkboxbutton)"},"vft-clamp":{"attributes":["text","maxHeight","maxLines","expanded","ellipsis","autoResize","location"],"description":"文字...省略\n\n[Docs](https://wflynn.cn/pages/clamp#clamp)"},"vft-color-picker":{"attributes":["model-value / v-model","disabled","size","show-alpha","color-format","popper-class","predefine","validate-event","tabindex","label<A11yTag/>","id","change","active-change"],"description":"用于颜色选择,支持多种格式。\n\n[Docs](https://wflynn.cn/pages/color-picker#colorpicker)"},"vft-config-provider":{"attributes":["locale","size","zIndex","namespace","button","message","experimental-features"],"description":"Config Provider 被用来提供全局的配置选项,让你的配置能够在全局都能够被访问到。\n\n[Docs](https://wflynn.cn/pages/config-provider#config-provider)"},"vft-container":{"attributes":["direction"],"description":"[Docs](https://wflynn.cn/pages/container#container)"},"vft-header":{"attributes":["height"],"description":"[Docs](https://wflynn.cn/pages/container#header)"},"vft-aside":{"attributes":["width"],"description":"[Docs](https://wflynn.cn/pages/container#aside)"},"vft-main":{"description":"[Docs](https://wflynn.cn/pages/container#main)"},"vft-footer":{"attributes":["height"],"description":"[Docs](https://wflynn.cn/pages/container#footer)"},"vft-date-picker":{"attributes":["model-value / v-model","readonly","disabled","size","editable","clearable","placeholder","start-placeholder","end-placeholder","type","format","popper-class","popper-options","range-separator","default-value","default-time","value-format","id","name","unlink-panels","prefix-icon","clear-icon","validate-event","disabled-date","shortcuts","cell-class-name","teleported","change","blur","focus","calendar-change","panel-change","visible-change"],"description":"用于选择或输入日期\n\n[Docs](https://wflynn.cn/pages/date-picker#datepicker)"},"vft-date-time-picker":{"attributes":["model-value / v-model","readonly","disabled","editable","clearable","size","placeholder","start-placeholder","end-placeholder","time-arrow-control","type","format","popper-class","range-separator","default-value","default-time","value-format","id","name","unlink-panels","prefix-icon","clear-icon","shortcuts","disabled-date","cell-class-name","teleported","change","blur","focus","calendar-change","visible-change"],"description":"在同一个选择器里选择日期和时间\n\n[Docs](https://wflynn.cn/pages/datetime-picker#datetimepicker)"},"vft-descriptions":{"attributes":["border","column","direction","size","title","extra"],"description":"列表形式展示多个字段。\n\n[Docs](https://wflynn.cn/pages/descriptions#descriptions)"},"vft-descriptions-item":{"attributes":["label","span","width","min-width","align","label-align","class-name","label-class-name"],"description":"[Docs](https://wflynn.cn/pages/descriptions#descriptions-item)"},"vft-dialog":{"attributes":["model-value / v-model","title","width","fullscreen","top","modal","modal-penetrable","modal-class","header-class","body-class","footer-class","append-to-body","append-to","lock-scroll","open-delay","close-delay","close-on-click-modal","close-on-press-escape","show-close","before-close","draggable","overflow","center","align-center","destroy-on-close","close-icon","z-index","header-aria-level","transition","custom-class","open","opened","close","closed","open-auto-focus","close-auto-focus"],"description":"在保留当前页面状态的情况下,告知用户并承载相关操作。\n\n[Docs](https://wflynn.cn/pages/dialog#dialog)"},"vft-divider":{"attributes":["direction","border-style","content-position"],"description":"区隔内容的分割线。\n\n[Docs](https://wflynn.cn/pages/divider#divider)"},"vft-drawer":{"attributes":["model-value / v-model","append-to-body","lock-scroll","before-close","close-on-click-modal","close-on-press-escape","open-delay","close-delay","custom-class ^(deprecated)","destroy-on-close","modal","direction","show-close","size","title","with-header","modal-class","z-index","open","opened","close","closed"],"description":"有些时候, `Dialog` 组件并不满足我们的需求, 比如你的表单很长, 亦或是你需要临时展示一些文档, `Drawer`\n\n[Docs](https://wflynn.cn/pages/drawer#drawer)"},"vft-dropdown":{"attributes":["type","size","max-height","split-button","disabled","placement","trigger","hide-on-click","show-timeout","hide-timeout","role","tabindex","popper-class","popper-options","teleported","click","command","visible-change"],"description":"将动作或菜单折叠到下拉菜单中。\n\n[Docs](https://wflynn.cn/pages/dropdown#dropdown)"},"vft-dropdown-menu":{"description":"[Docs](https://wflynn.cn/pages/dropdown#dropdown-menu)"},"vft-dropdown-item":{"attributes":["command","disabled","divided","icon"],"description":"[Docs](https://wflynn.cn/pages/dropdown#dropdown-item)"},"vft-empty":{"attributes":["image","image-size","description"],"description":"空状态时的占位提示。\n\n[Docs](https://wflynn.cn/pages/empty#empty)"},"vft-form":{"attributes":["model","rules","inline","label-position","label-width","label-suffix","hide-required-asterisk","require-asterisk-position","show-message","inline-message","status-icon","validate-on-rule-change","size","disabled","scroll-to-error","scroll-into-view-options","validate"],"description":"表单包含 `输入框`, `单选框`, `下拉选择`, `多选框` 等用户输入的组件。 使用表单,您可以收集、验证和提交数据。\n\n[Docs](https://wflynn.cn/pages/form#form)"},"vft-form-item":{"attributes":["prop","label","label-width","required","rules","error","show-message","inline-message","size","for","validate-status"],"description":"[Docs](https://wflynn.cn/pages/form#formitem)"},"vft-icon":{"attributes":["icon","size","color","hoverColor","rotate","rotateSpeed","pointer"],"description":"图标 [图标资源地址]\n\n[Docs](https://wflynn.cn/pages/icon#icon)"},"vft-image":{"attributes":["src","fit","hide-on-click-modal","`loading` ^(2.2.3)","lazy","scroll-container","alt","referrerpolicy","preview-src-list","z-index","initial-index","close-on-press-escape","preview-teleported","load","error","switch","close"],"description":"图片容器,在保留所有原生 img 的特性下,支持懒加载,自定义占位、加载失败等\n\n[Docs](https://wflynn.cn/pages/image#image)"},"vft-image-viewer":{"attributes":["url-list","z-index","initial-index","infinite","hide-on-click-modal","teleported","zoom-rate","close","switch"],"description":"[Docs](https://wflynn.cn/pages/image#image-viewer)"},"vft-input-number":{"attributes":["model-value / v-model","min","max","step","step-strictly","precision","size","readonly","disabled","controls","controls-position","name","label","placeholder","id","value-on-clear ^(2.2.0)","validate-event","change","blur","focus"],"description":"仅允许输入标准的数字值,可定义范围\n\n[Docs](https://wflynn.cn/pages/input-number#input-number)"},"vft-input":{"attributes":["type","model-value / v-model","maxlength","minlength","show-word-limit","placeholder","clearable","formatter","parser","show-password","disabled","size","prefix-icon","suffix-icon","rows","autosize","autocomplete","name","readonly","max","min","step","resize","autofocus","form","label ^(a11y)","tabindex","validate-event","input-style","blur","focus","change","input","clear"],"description":"通过鼠标或键盘输入字符\n\n[Docs](https://wflynn.cn/pages/input#input)"},"vft-row":{"attributes":["gutter","justify","align","tag"],"description":"[Docs](https://wflynn.cn/pages/layout#row)"},"vft-col":{"attributes":["span","offset","push","pull","xs","sm","md","lg","xl","tag"],"description":"[Docs](https://wflynn.cn/pages/layout#col)"},"vft-link":{"attributes":["type","underline","disabled","href","icon"],"description":"文字超链接\n\n[Docs](https://wflynn.cn/pages/link#link)"},"vft-list-cell":{"attributes":["list","cellHeight","leftTextDistance","activeIndex","item-click"],"description":"菜单列表\n\n[Docs](https://wflynn.cn/pages/list-cell#listcell)"},"vft-logo":{"attributes":["title","logo","jump-path","click"],"description":"用于展示品牌 `logo` 和标题的组件,支持点击跳转功能。\n\n[Docs](https://wflynn.cn/pages/logo#logo)"},"vft-menu":{"attributes":["mode","collapse","ellipsis","default-active","default-openeds","unique-opened","menu-trigger","router","collapse-transition","popper-effect","select","open","close"],"description":"为网站提供导航功能的菜单。\n\n[Docs](https://wflynn.cn/pages/menu#menu)"},"vft-sub-menu":{"attributes":["index","popper-class","show-timeout","hide-timeout","disabled","popper-append-to-body(已废弃)","teleported","popper-offset","expand-close-icon","expand-open-icon","collapse-close-icon","collapse-open-icon"],"description":"[Docs](https://wflynn.cn/pages/menu#submenu)"},"vft-menu-item":{"attributes":["index","route","disabled","click"],"description":"[Docs](https://wflynn.cn/pages/menu#menu-item)"},"vft-menu-item-group":{"attributes":["title"],"description":"[Docs](https://wflynn.cn/pages/menu#menu-item-group)"},"vft-modal":{"attributes":["model-value / v-model","title","width","fullscreen","top","modal","append-to-body","lock-scroll","open-delay","close-delay","close-on-click-modal","close-on-press-escape","show-close","before-close","draggable","center","align-center","destroy-on-close","showActionButtonGroup","showSubmitButton","showCancelButton","submitButtonOptions","cancelButtonOptions","actionRowOptions","open","opened","close","closed","open-auto-focus","close-auto-focus"],"description":"在保留当前页面状态的情况下,告知用户并承载相关操作。\n\n[Docs](https://wflynn.cn/pages/modal#modal)"},"vft-page-wrapper":{"attributes":["title"],"description":"页面 demo 容器\n\n[Docs](https://wflynn.cn/pages/page-wrapper#pagewrapper)"},"vft-pagination":{"attributes":["small","background","page-size / v-model:page-size","default-page-size","total","page-count","pager-count","current-page / v-model:current-page","default-current-page","layout","page-sizes","popper-class","prev-text","prev-icon","next-text","next-icon","disabled","hide-on-single-page","size-change","current-change","prev-click","next-click"],"description":"当数据量过多时,使用分页分解数据。\n\n[Docs](https://wflynn.cn/pages/pagination#pagination)"},"vft-popconfirm":{"attributes":["title","confirm-button-text","cancel-button-text","confirm-button-type","cancel-button-type","icon","icon-color","hide-icon","hide-after","teleported","persistent","width"],"description":"点击某个元素弹出一个简单的气泡确认框\n\n[Docs](https://wflynn.cn/pages/popconfirm#popconfirm)"},"vft-popover":{"attributes":["trigger","trigger-keys","title","effect","content","width","placement","disabled","visible / v-model:visible","offset","transition","show-arrow","popper-options","popper-class","popper-style","show-after","hide-after","auto-close","tabindex","teleported","append-to","persistent","virtual-triggering","virtual-ref","show","before-enter","after-enter","hide","before-leave","after-leave"],"description":"<!-- more -->\n\n[Docs](https://wflynn.cn/pages/popover#popover)"},"vft-progress":{"attributes":["percentage","type","stroke-width","text-inside","status","indeterminate","duration","color","width","show-text","stroke-linecap","format","striped","striped-flow"],"description":"用于展示操作进度,告知用户当前状态和预期。\n\n[Docs](https://wflynn.cn/pages/progress#progress)"},"vft-radio":{"attributes":["model-value / v-model","label","disabled","border","size","name","change"],"description":"在一组备选项中进行单选\n\n[Docs](https://wflynn.cn/pages/radio#radio)"},"vft-radio-group":{"attributes":["model-value / v-model","size","disabled","text-color","fill","validate-event","label ^(a11y)","name","id","change"],"description":"[Docs](https://wflynn.cn/pages/radio#radiogroup)"},"vft-radio-button":{"attributes":["label","disabled","name"],"description":"[Docs](https://wflynn.cn/pages/radio#radiobutton)"},"vft-result":{"attributes":["title","sub-title","icon"],"description":"用于对用户的操作结果或者异常状态做反馈。\n\n[Docs](https://wflynn.cn/pages/result#result)"},"vft-scrollbar":{"attributes":["height","max-height","native","wrap-style","wrap-class","view-style","view-class","noresize","tag","always","min-size","scroll"],"description":"用于替换浏览器原生滚动条。\n\n[Docs](https://wflynn.cn/pages/scrollbar#scrollbar)"},"vft-select":{"attributes":["model-value / v-model","options","multiple","disabled","value-key","size","clearable","clear-icon","collapse-tags","multiple-limit","name","effect","autocomplete","placeholder","filterable","allow-create","reserve-keyword","no-data-text","popper-class","popper-append-to-body ^(deprecated)","teleported","persistent","popper-options","automatic-dropdown","height","scrollbar-always-on","remote","remote-method","validate-event","placement","collapse-tags-tooltip","change","visible-change","remove-tag","clear","blur","focus"],"description":"在某些使用情况下,单个选择器可能最终加载数万行数据。 将这么多的数据渲染至 DOM 中可能会给浏览器带来负担,从而造成性能问题。\n\n[Docs](https://wflynn.cn/pages/select#select)"},"vft-side-menu-侧边菜单":{"attributes":["menus","width","height","collapse","collapse-width","is-fixed-left","show-collapse","default-active","default-openeds","default-openeds-level","unique-opened","attr-mapping","menu-top-bottom-height","drag-option","drag-width-cfg","use-router-jump","open-disabled","disabled-judge-turn-over","auto-scroll-active-dom","open-menu-collapse","disable-sub-menu-action","select","update:collapse","update:width","drag-end","drag-width-end","sub-menu-click","sub-menu-open-click","menu-item-mouseenter","menu-item-mouseleave"],"description":"侧边导航菜单组件,提供丰富的功能配置,支持折叠、拖拽宽度、自定义属性映射等特性。\n\n[Docs](https://wflynn.cn/pages/side-menu#sidemenu-侧边菜单)"},"vft-skeleton-item":{"attributes":["variant"],"description":"[Docs](https://wflynn.cn/pages/skeleton#skeletonitem)"},"vft-space":{"attributes":["alignment","class","direction","prefix-cls","style","spacer","size","wrap","fill","fill-ratio"],"description":"虽然我们拥有 [Divider 组件]\n\n[Docs](https://wflynn.cn/pages/space#space)"},"vft-switch":{"attributes":["model-value / v-model","disabled","loading","size","width","inline-prompt","active-icon","inactive-icon","active-text","inactive-text","active-value","inactive-value","active-color","inactive-color","border-color","name","validate-event","before-change","change"],"description":"表示两种相互对立的状态间的切换,多用于触发「开/关」。\n\n[Docs](https://wflynn.cn/pages/switch#switch)"},"vft-table-表格":{"attributes":["api","columns","data","loading","stripe","border","align","headerAlign","showHeader","showOverflow","height","maxHeight","minHeight","fit","rowkey","pageSize","total","immediate","showPager","sticky","fetchSetting","watchApiFetch","beforeFetch","afterFetch","delEmptyParams","transformParams","extraParams","extraSysHeight","pageHeight","pagination","formOptions","emptyCfg","columnConfig","rowConfig","toolbarConfig","change","page-change","current-row-change","cell-click","cell-dblclick","sort-change","filter-change","fetch-success"],"description":"用于展示多条结构类似的数据,可对数据进行排序、筛选、对比或其他自定义操作。基于 `VXE Table` 进行封装,提供了更便捷的数据获取和分页功能。\n\n[Docs](https://wflynn.cn/pages/table#table-表格)"},"vft-tabs":{"attributes":["model-value / v-model","type","closable","addable","editable","tab-position","stretch","before-leave","tab-click","tab-change","tab-remove","tab-add","edit"],"description":"分隔内容上有关联但属于不同类别的数据集合。\n\n[Docs](https://wflynn.cn/pages/tabs#tabs)"},"vft-tab-pane":{"attributes":["label","disabled","name","closable","lazy"],"description":"[Docs](https://wflynn.cn/pages/tabs#tab-pane)"},"vft-check-tag":{"attributes":["checked","change"],"description":"[Docs](https://wflynn.cn/pages/tag#checktag)"},"vft-tag":{"attributes":["type","closable","disable-transitions","hit","color","size","effect","round","click","close"],"description":"用于标记和选择。\n\n[Docs](https://wflynn.cn/pages/tag#tag)"},"vft-time-picker":{"attributes":["model-value / v-model","readonly","disabled","editable","clearable","size","placeholder","start-placeholder","end-placeholder","is-range","arrow-control","popper-class","range-separator","format","default-value","id","name","label ^(a11y)","prefix-icon","clear-icon","disabled-hours","disabled-minutes","disabled-seconds","teleported","tabindex","change","blur","focus","visible-change"],"description":"用于选择或输入日期\n\n[Docs](https://wflynn.cn/pages/time-picker#timepicker)"},"vft-tooltip":{"attributes":["role","show-arrow","arrow-offset","virtual-ref","virtual-triggering","id","open","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","strategy","style","className","effect","visible / v-model:visible","enterable","pure","focus-on-show","trapping","popper-class","popper-style","reference-el","trigger-target-el","stop-popper-mouse-event","aria-label ^(a11y)","before-show","before-hide","show","hide","open","close"],"description":"常用于展示鼠标 hover 时的提示信息。\n\n[Docs](https://wflynn.cn/pages/tooltip#tooltip)"},"vft-tree":{"attributes":["data","empty-text","node-key","props","render-after-expand","load","render-content","highlight-current","default-expand-all","expand-on-click-node","check-on-click-node","auto-expand-parent","default-expanded-keys","show-checkbox","check-strictly","default-checked-keys","current-node-key","filter-node-method","accordion","indent","icon","lazy","draggable","allow-drag","allow-drop","node-click","node-contextmenu","check-change","check","current-change","node-expand","node-collapse","node-drag-start","node-drag-enter","node-drag-leave","node-drag-over","node-drag-end","node-drop"],"description":"用清晰的层级结构展示信息,可展开或折叠。\n\n[Docs](https://wflynn.cn/pages/tree#tree)"},"vft-upload":{"attributes":["action","headers","method","multiple","data","name","with-credentials","show-file-list","drag","accept","on-preview","on-remove","on-success","on-error","on-progress","on-change","on-exceed","before-upload","before-remove","file-list` / `v-model:file-list","list-type","auto-upload","http-request","disabled","limit"],"description":"通过点击或者拖拽上传文件。\n\n[Docs](https://wflynn.cn/pages/upload#upload)"},"vft-date-time-select":{"attributes":["dateList","defaultFormat","placement","change"],"description":"自定义时间选择器\n\n[Docs](https://wflynn.cn/pages/date-time-select#datetimeselect)"},"vft-horizontal-menu":{"attributes":["menus","defaultActive","defaultOpeneds","attrMapping","useRouterJump","openDisabled","disabledJudgeTurnOver","subMenuCfg","maxRowLength","open","close"],"description":"自定义时间选择器\n\n[Docs](https://wflynn.cn/pages/horizontal-menu#horizontalmenu)"},"vft-icon-text":{"attributes":["text","icon","color","hoverColor","distance","reverse","size","direction","pointer"],"description":"文字与图标组合\n\n[Docs](https://wflynn.cn/pages/icon-text#icontext)"},"vft-search":{"attributes":["modelValue","placeholder","prefixIcon","suffixIcon","clearable","clearIcon","width","activeWidth","usePopover","popoverCfg","update:modelValue","blur","focus","clear","enter","prefixClick","suffixClick","mouseenter","mouseleave","keydown","change"],"description":"搜索,以及搜索框\n\n[Docs](https://wflynn.cn/pages/search#search)"},"vft-side-menu":{"attributes":["menus","uniqueOpened","isFixedLeft","autoScrollActiveDom","collapse","defaultActive","defaultOpeneds","width","collapseWidth","height","attrMapping","extraHeight","menuTopBottomHeight","showCollapse","dragOption","dragWidthCfg","useRouterJump","openDisabled","update:collapse","update:width","dragEnd","dragWidthEnd","select","menuItemMouseenter","menuItemMouseleave"],"description":"自定义时间选择器\n\n[Docs](https://wflynn.cn/pages/side-menu#sidemenu)"},"vft-super-form":{"attributes":["register","submit"],"description":"自定义时间选择器\n\n[Docs](https://wflynn.cn/pages/super-form#superform)"}}