@aplus-frontend/ui 0.4.34 → 0.5.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/index.mjs +14 -12
- package/es/src/ap-grid/constants.d.ts +9 -0
- package/es/src/ap-grid/constants.mjs +12 -0
- package/es/src/ap-grid/hooks/use-inner-params.d.ts +10 -0
- package/es/src/ap-grid/hooks/use-inner-params.mjs +41 -0
- package/es/src/ap-grid/hooks/use-render-columns.d.ts +6 -0
- package/es/src/ap-grid/hooks/use-render-columns.mjs +29 -0
- package/es/src/ap-grid/index.d.ts +3 -0
- package/es/src/ap-grid/index.mjs +2 -0
- package/es/src/ap-grid/index.vue.d.ts +44 -0
- package/es/src/ap-grid/index.vue.mjs +356 -0
- package/es/src/ap-grid/index.vue2.mjs +4 -0
- package/es/src/ap-grid/interface.d.ts +264 -0
- package/es/src/ap-grid/interface.mjs +1 -0
- package/es/src/ap-grid/style/css.d.ts +0 -0
- package/es/src/ap-grid/style/css.js +1 -0
- package/es/src/ap-grid/style/index.d.ts +0 -0
- package/es/src/ap-grid/style/index.js +1 -0
- package/es/src/ap-grid/utils/col.d.ts +20 -0
- package/es/src/ap-grid/utils/col.mjs +106 -0
- package/es/src/ap-grid/utils/renderer.d.ts +3 -0
- package/es/src/ap-grid/utils/renderer.mjs +21 -0
- package/es/src/ap-grid/utils/table.d.ts +13 -0
- package/es/src/ap-grid/utils/table.mjs +64 -0
- package/es/src/ap-table/ap-table.vue.d.ts +2 -0
- package/es/src/ap-table/components/setting/select-group/index.vue2.mjs +38 -38
- package/es/src/ap-table/components/setting/sortable/item.vue2.mjs +9 -9
- package/es/src/ap-table/components/setting/tree-select/index.vue2.mjs +21 -21
- package/es/src/ap-table/components/setting/utils.d.ts +15 -3
- package/es/src/ap-table/components/setting/utils.mjs +49 -38
- package/es/src/ap-table/context.d.ts +2 -1
- package/es/src/ap-table/context.mjs +8 -7
- package/es/src/ap-table/hooks/use-table-column-state.mjs +79 -70
- package/es/src/ap-table/hooks/use-table-paging-ng.d.ts +8 -2
- package/es/src/ap-table/hooks/use-table-paging-ng.mjs +43 -40
- package/es/src/ap-table/hooks/use-table-row-selection.d.ts +12 -0
- package/es/src/ap-table/hooks/use-table-row-selection.mjs +41 -27
- package/es/src/ap-table/interface.d.ts +4 -0
- package/es/src/ap-table/utils.d.ts +1 -1
- package/es/src/business/ap-table-modal/hooks/use-create-table-modal.d.ts +2 -0
- package/es/src/business/ap-table-modal/hooks/use-table-modal.d.ts +2 -0
- package/es/src/business/ap-table-modal/hooks/use-table-select-modal.d.ts +2 -0
- package/es/src/business/ap-table-modal/index.d.ts +8 -0
- package/es/src/business/ap-table-modal/table-modal.vue.d.ts +4 -0
- package/es/src/business/hooks/usePageListApTable.d.ts +2 -0
- package/es/src/index.d.ts +1 -0
- package/es/src/index.mjs +244 -241
- package/es/src/path-map.mjs +2 -1
- package/lib/index.js +1 -1
- package/lib/src/ap-grid/constants.d.ts +9 -0
- package/lib/src/ap-grid/constants.js +1 -0
- package/lib/src/ap-grid/hooks/use-inner-params.d.ts +10 -0
- package/lib/src/ap-grid/hooks/use-inner-params.js +1 -0
- package/lib/src/ap-grid/hooks/use-render-columns.d.ts +6 -0
- package/lib/src/ap-grid/hooks/use-render-columns.js +1 -0
- package/lib/src/ap-grid/index.d.ts +3 -0
- package/lib/src/ap-grid/index.js +1 -0
- package/lib/src/ap-grid/index.vue.d.ts +44 -0
- package/lib/src/ap-grid/index.vue.js +1 -0
- package/lib/src/ap-grid/index.vue2.js +1 -0
- package/lib/src/ap-grid/interface.d.ts +264 -0
- package/lib/src/ap-grid/interface.js +1 -0
- package/lib/src/ap-grid/style/css.cjs +1 -0
- package/lib/src/ap-grid/style/css.d.ts +0 -0
- package/lib/src/ap-grid/style/index.cjs +1 -0
- package/lib/src/ap-grid/style/index.d.ts +0 -0
- package/lib/src/ap-grid/utils/col.d.ts +20 -0
- package/lib/src/ap-grid/utils/col.js +1 -0
- package/lib/src/ap-grid/utils/renderer.d.ts +3 -0
- package/lib/src/ap-grid/utils/renderer.js +1 -0
- package/lib/src/ap-grid/utils/table.d.ts +13 -0
- package/lib/src/ap-grid/utils/table.js +1 -0
- package/lib/src/ap-table/ap-table.vue.d.ts +2 -0
- package/lib/src/ap-table/components/setting/select-group/index.vue2.js +1 -1
- package/lib/src/ap-table/components/setting/sortable/item.vue2.js +1 -1
- package/lib/src/ap-table/components/setting/tree-select/index.vue2.js +1 -1
- package/lib/src/ap-table/components/setting/utils.d.ts +15 -3
- package/lib/src/ap-table/components/setting/utils.js +1 -1
- package/lib/src/ap-table/context.d.ts +2 -1
- package/lib/src/ap-table/context.js +1 -1
- package/lib/src/ap-table/hooks/use-table-column-state.js +1 -1
- package/lib/src/ap-table/hooks/use-table-paging-ng.d.ts +8 -2
- package/lib/src/ap-table/hooks/use-table-paging-ng.js +1 -1
- package/lib/src/ap-table/hooks/use-table-row-selection.d.ts +12 -0
- package/lib/src/ap-table/hooks/use-table-row-selection.js +1 -1
- package/lib/src/ap-table/interface.d.ts +4 -0
- package/lib/src/ap-table/utils.d.ts +1 -1
- package/lib/src/business/ap-table-modal/hooks/use-create-table-modal.d.ts +2 -0
- package/lib/src/business/ap-table-modal/hooks/use-table-modal.d.ts +2 -0
- package/lib/src/business/ap-table-modal/hooks/use-table-select-modal.d.ts +2 -0
- package/lib/src/business/ap-table-modal/index.d.ts +8 -0
- package/lib/src/business/ap-table-modal/table-modal.vue.d.ts +4 -0
- package/lib/src/business/hooks/usePageListApTable.d.ts +2 -0
- package/lib/src/index.d.ts +1 -0
- package/lib/src/index.js +1 -1
- package/lib/src/path-map.js +1 -1
- package/package.json +3 -1
- package/theme/ap-grid/index.css +302 -0
- package/theme/ap-grid/index.less +65 -0
- package/theme/index.css +51 -0
- package/theme/index.less +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../ap-table/hooks/use-table-paging-ng.js"),g={asc:"ascend",desc:"descend"},u=o=>{const t={};let c={};const s={current:a.DEFAULT_CURRENT,pageSize:a.DEFAULT_PAGE_SIZE};function i(e){o==null||o(s,c,t,{currentDataSource:[],action:e})}return{sortChangeEvent:({field:e,order:n,column:r})=>{t.column=r,t.order=n?g[n]:null,t.field=e,i("sort")},filterChangeEvent:({filterList:e})=>{const n={};for(const r of e)n[r.field]=r.values;c=n,i("filter")},paginationChangeEvent:(e,n)=>{s.current=e,s.pageSize=n,i("paginate")}}};exports.useInnerParams=u;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Ref, ComputedRef } from 'vue';
|
|
2
|
+
import { ApGridColumnType } from '../interface';
|
|
3
|
+
export declare const useRenderColumns: <RecordType>(columns: Ref<ApGridColumnType<RecordType>[]>) => {
|
|
4
|
+
renderConfig: ComputedRef<import("vue/jsx-runtime").JSX.Element[]>;
|
|
5
|
+
updateSignal: Ref<number, number>;
|
|
6
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),a=require("@aplus-frontend/antdv/es/theme/internal");require("../../config-provider/index.js");const s=require("../utils/renderer.js"),l=require("../../config-provider/hooks/use-namespace.js"),i=require("../../config-provider/hooks/use-global-config.js"),c=r=>{const[,t]=a.useToken(),{be:u}=l.useNamespace("ap-grid"),o=i.useGlobalConfig("valueTypeMap"),n=e.ref(Date.now());return e.watch(()=>r.value,()=>{n.value=Date.now()},{deep:!0}),{renderConfig:e.computed(()=>s.renderWithColumns(r.value,t.value.colorPrimary,u("table-header","title"),e.unref(o))),updateSignal:n}};exports.useRenderColumns=c;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";require("./index.vue2.js");require("./interface.js");
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { VxeTableSlots } from 'vxe-table';
|
|
2
|
+
import { ApGridColumnType, ApGridExpose, ApGridProps } from './interface';
|
|
3
|
+
import { VNodeProps, AllowedComponentProps, ComponentCustomProps, PublicProps, ShallowUnwrapRef, VNode } from 'vue';
|
|
4
|
+
declare const _default: <RecordType>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
5
|
+
props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>, never> & ApGridProps<RecordType> & Partial<{}>> & PublicProps;
|
|
6
|
+
expose(exposed: ShallowUnwrapRef<ApGridExpose>): void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: Readonly<VxeTableSlots<RecordType> & {
|
|
9
|
+
/**
|
|
10
|
+
* 自定义查询表单额外的区域
|
|
11
|
+
*/
|
|
12
|
+
searchFormExtra?: any;
|
|
13
|
+
/**
|
|
14
|
+
* 自定义表格上部查询表单下部分区域的渲染
|
|
15
|
+
*/
|
|
16
|
+
title?: (params: {
|
|
17
|
+
selectedRows: RecordType[];
|
|
18
|
+
selectedRowKeys: (string | number)[];
|
|
19
|
+
shownColumns: ApGridColumnType<RecordType>[];
|
|
20
|
+
clearAll: () => void;
|
|
21
|
+
}) => any;
|
|
22
|
+
}> & VxeTableSlots<RecordType> & {
|
|
23
|
+
/**
|
|
24
|
+
* 自定义查询表单额外的区域
|
|
25
|
+
*/
|
|
26
|
+
searchFormExtra?: any;
|
|
27
|
+
/**
|
|
28
|
+
* 自定义表格上部查询表单下部分区域的渲染
|
|
29
|
+
*/
|
|
30
|
+
title?: (params: {
|
|
31
|
+
selectedRows: RecordType[];
|
|
32
|
+
selectedRowKeys: (string | number)[];
|
|
33
|
+
shownColumns: ApGridColumnType<RecordType>[];
|
|
34
|
+
clearAll: () => void;
|
|
35
|
+
}) => any;
|
|
36
|
+
};
|
|
37
|
+
emit: {};
|
|
38
|
+
}>) => VNode & {
|
|
39
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
40
|
+
};
|
|
41
|
+
export default _default;
|
|
42
|
+
type __VLS_PrettifyLocal<T> = {
|
|
43
|
+
[K in keyof T]: T[K];
|
|
44
|
+
} & {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),w=require("vxe-table"),re=require("vxe-pc-ui");require("vxe-table/lib/style.css");require("vxe-pc-ui/lib/style.css");const c=require("lodash-unified"),ae=require("../ap-form/index.js");require("../config-provider/index.js");const te=require("../ap-table/constants.js"),u=require("../ap-table/utils.js"),ne=require("../ap-table/hooks/use-table-paging-ng.js"),le=require("@aplus-frontend/antdv"),se=require("./hooks/use-inner-params.js"),b=require("./utils/table.js"),ue=require("../ap-table/hooks/use-table-row-selection.js"),de=require("../ap-table/context.js"),V=require("./constants.js"),ce=require("./hooks/use-render-columns.js"),ie=require("@aplus-frontend/antdv/es/theme/internal"),fe=require("../config-provider/hooks/use-namespace.js"),pe=require("../config-provider/hooks/use-global-config.js"),me=e.defineComponent({name:"ApGrid",__name:"index",props:{dropdownPrefixCls:{},loading:{type:[Boolean,Object],default:void 0},bordered:{type:Boolean,default:!1},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{default:()=>["ascend","descend"]},showSorterTooltip:{type:[Boolean,Object],default:!1},prefixCls:{},tableLayout:{},title:{},id:{},showHeader:{type:Boolean,default:!0},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean],default:!1},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean,default:!1},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean,default:!1},indentSize:{default:15},expandIconColumnIndex:{},showExpandColumn:{type:Boolean,default:!0},expandedRowClassName:{},childrenColumnName:{default:"children"},rowExpandable:{},sticky:{type:[Boolean,Object]},transformCellText:{},rowClassName:{},stripe:{type:Boolean},headerRowClassName:{},footerRowClassName:{},cellClassName:{},headerCellClassName:{},footerCellClassName:{},rowStyle:{},headerRowStyle:{},footerRowStyle:{},cellStyle:{},headerCellStyle:{},footerCellStyle:{},height:{},minHeight:{},maxHeight:{},mergeCells:{},mergeFooterItems:{},cellConfig:{},columns:{},rowSelection:{type:Boolean},card:{type:Boolean,default:!1},params:{},request:{},defaultData:{},dataSource:{},onLoadingChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},manual:{type:Boolean,default:!1},size:{default:"medium"},adaptive:{type:Boolean,default:!1},columnResizable:{type:[Boolean,Object],default:!1},rowKey:{default:"key"},footer:{},virtual:{type:[Boolean,Object],default:void 0},expandable:{}},setup(T,{expose:_}){var z;const i=(z=e.getCurrentInstance())==null?void 0:z.appContext.app;i&&!i.__VXE_PC_UI_INSTALLED__&&(i.use(re),i.__VXE_PC_UI_INSTALLED__=!0);const x=e.useSlots(),r=T,{e:h,b:f,be:A}=fe.useNamespace("ap-grid"),O=pe.useGlobalConfig("valueTypeMap"),l=e.ref([]),k=e.ref([]),p=e.ref(),S=e.ref(r.size),[,L]=ie.useToken(),{renderConfig:D,updateSignal:K}=ce.useRenderColumns(l);let R=0;const B=e.computed(()=>{var o,n,t;return R++,((t=(n=(o=r.columns)==null?void 0:o.filter(a=>!a.hideInSearch&&a.dataIndex&&(a.valueType||a.customRenderFormItem)&&!te.noRenderAsFormItemValueList.includes(a.valueType)))==null?void 0:n.sort((a,s)=>{let d=u.getColumnOrder(a.order);return u.getColumnOrder(s.order)-d}))==null?void 0:t.map(a=>{const s=u.updateFormProps(a,u.getFieldProps(a.fieldProps,{})),d={...a,fieldProps:{label:a.title,name:a.dataIndex,...s||{},_signal:R},renderNode:void 0};return d.renderNode=u.getSearchFormItemRenderNode(d,e.unref(O)),d}))||[]}),j=e.computed(()=>[f(),r.card?null:f("wrapper")].filter(Boolean)),F=e.computed(()=>u.recursionApColumns(e.unref(l),o=>{if(o.sorter===!0)return o.key||o.dataIndex}).filter(Boolean)),P=e.computed(()=>u.recursionApColumns(e.unref(l),o=>{if(o.filters&&!o.onFilter)return o.key||o.dataIndex}).filter(Boolean)),{formRef:y,submit:N,reset:E,refresh:U,data:m,tableProps:$,setDataSource:W,handleTableChange:H}=ne.useTablePaging({async request(o){var t;if(!C.value.preserveSelectedRowKeys&&c.isUndefined(r.dataSource)&&v(),!c.isUndefined(r.dataSource)){const a=o.pageSize*(o.current-1);return{data:(r.pagination===!1?r.dataSource:r.dataSource.slice(a,a+o.pageSize))||[],total:r.dataSource.length||0}}const n=await((t=r.request)==null?void 0:t.call(r,o));return{data:(n==null?void 0:n.data)||[],total:(n==null?void 0:n.total)||0}},namespace:"ap-grid",filterFields:P,sortFields:F,defaultParams:r.params,defaultData:r.defaultData,manual:r.manual,formatParams:r.beforeSearchSubmit,pagination:r.pagination}),{sortChangeEvent:M,filterChangeEvent:G,paginationChangeEvent:X}=se.useInnerParams(H);de.useProvideApTable({columns:e.computed(()=>l.value),columnsBackup:e.computed(()=>k.value),size:e.computed(()=>V.sizeMap[S.value]),updateColumns(o){l.value=o},updateSize(o){S.value=V.sizeReverseMap[o]},renderConfig:e.computed(()=>({className:A("table-header","title"),color:L.value.colorPrimary}))});const I=e.computed(()=>l.value.some(o=>o.fixed==="left"||o.fixed===!0)?"left":void 0),J=e.computed(()=>c.isUndefined(r.dataSource)?m.records:r.dataSource),{selectedRows:g,rowSelection:C,...Q}=ue.default({...r.rowSelection===!0?{}:r.rowSelection,dataSource:J,rowKey:r.rowKey}),q=()=>{const o=p.value;o&&(g.value=[...o.getCheckboxReserveRecords(),...o.getCheckboxRecords()])},Y=()=>{const o=p.value;o&&(g.value=[o.getRadioRecord()])};function Z(){var o;return((o=r.columns)==null?void 0:o.filter(n=>!n.hideInTable))||[]}function ee(o){var n,t,a;(a=(t=(n=y.value)==null?void 0:n.apForm)==null?void 0:t.setFieldsValue)==null||a.call(t,o)}function oe(o=!1){var t,a,s;const n=o?"getFieldsValueTransformed":"getFieldsValue";return(s=(a=(t=y.value)==null?void 0:t.apForm)==null?void 0:a[n])==null?void 0:s.call(a,!0)}function v(){Q.clearAll();const o=p.value;o&&(C.value.type==="radio"?(o.clearRadioRow(),o.clearRadioReserve()):(o.clearCheckboxRow(),o.clearCheckboxReserve()))}return e.watchEffect(()=>{const o=Z();l.value=o,k.value=o}),e.watch(()=>r.dataSource,o=>{W(o)},{immediate:!0}),e.watch(()=>e.unref(m).loading,o=>{var n;(n=r.onLoadingChange)==null||n.call(r,o)}),_({submit:N,reset:E,refresh:U,setSearchFormValues:ee,getSearchFormValues:oe,getShowColumns:()=>e.unref(l),rowSelection:{selectedRows:e.computed(()=>g.value),clearAll:v}}),(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(j.value)},[e.unref(c.isUndefined)(o.dataSource)&&o.searchForm!==!1&&B.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.card?e.unref(h)("search-wrapper"):null),style:e.normalizeStyle(o.searchFormWrapperStyle)},[e.createVNode(e.unref(ae.ApForm).SearchForm,e.mergeProps(o.searchForm||{},{ref_key:"formRef",ref:y,"custom-reset":"","submit-loading":!1,onSubmit:e.unref(N),onReset:e.unref(E)}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,t=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.renderNode.Comp),e.mergeProps({key:t.dataIndex,item:t,ref_for:!0},t.fieldProps||{},{span:t.span,"custom-render":t.renderNode.render}),null,16,["item","span","custom-render"]))),128))]),_:2},[x.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["onSubmit","onReset"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass([e.unref(h)("table-wrapper"),o.card?e.unref(h)("table-wrapper-card"):null]),style:e.normalizeStyle(o.tableWrapperStyle)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(f)("header-wrapper"))},[e.renderSlot(o.$slots,"title",{selectedRows:e.unref(g),selectedRowKeys:e.unref(C).selectedRowKeys,shownColumns:l.value,clearAll:v})],2),(e.openBlock(),e.createBlock(e.unref(w.VxeTable),e.mergeProps(e.unref(b.toVxeProps)(r),{ref_key:"tableRef",ref:p,key:e.unref(K),data:e.unref(m).records,"sort-config":{remote:F.value.length>0},"filter-config":{remote:P.value.length>0},loading:e.unref(m).loading,"row-config":{isHover:!0,keyField:r.rowKey},size:S.value,onSortChange:e.unref(M),onFilterChange:e.unref(G),onCheckboxChange:q,onCheckboxAll:q,onRadioChange:Y}),e.createSlots({default:e.withCtx(()=>[r.expandable?(e.openBlock(),e.createBlock(e.unref(w.VxeColumn),e.mergeProps({key:0},e.unref(b.getRowExpandProps)(o.expandable),{fixed:I.value}),{content:e.withCtx(t=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.expandable.renderContent(t))))]),_:1},16,["fixed"])):e.createCommentVNode("",!0),r.rowSelection?(e.openBlock(),e.createBlock(e.unref(w.VxeColumn),e.mergeProps({key:1},e.unref(b.getRowSelectionProps)(e.unref(C)),{fixed:I.value}),null,16,["fixed"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(D),t=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t),{key:t.props.colId}))),128))]),_:2},[e.renderList(e.unref(c.omit)(x,["searchFormExtra"]),(t,a)=>({name:a,fn:e.withCtx(s=>[e.renderSlot(o.$slots,a,e.normalizeProps(e.guardReactiveProps(s||{})))])}))]),1040,["data","sort-config","filter-config","loading","row-config","size","onSortChange","onFilterChange"])),o.pagination!==!1?(e.openBlock(),e.createBlock(e.unref(le.Pagination),e.mergeProps({key:0,class:e.unref(f)("pagination")},e.unref($).pagination,{onChange:e.unref(X)}),null,16,["class","onChange"])):e.createCommentVNode("",!0)],6)],2))}});exports.default=me;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./index.vue.js");exports.default=e.default;
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import { ApFormSearchFormProps } from '../ap-form/interface';
|
|
2
|
+
import { ApTablePaginationConfig, ApTableValueFields, ApTableValueTypes, CommonFieldReturnType, ExtraProColumnType, FieldPropsType, RequestData, ValueEnum } from '../ap-table/interface';
|
|
3
|
+
import { Recordable } from '../type';
|
|
4
|
+
import { TableProps } from '@aplus-frontend/antdv';
|
|
5
|
+
import { ColumnFilterItem, SortOrder, TableRowSelection } from '@aplus-frontend/antdv/es/table/interface';
|
|
6
|
+
import { ComputedRef, CSSProperties, Ref, VNode } from 'vue';
|
|
7
|
+
import { VxeTablePropTypes, VxeColumnPropTypes, VxeTableProps, VxeTableDefines, VxeColumnSlots } from 'vxe-table';
|
|
8
|
+
export type ColConfigType = VxeTableDefines.ColumnOptions;
|
|
9
|
+
export type ApGridColumnType<RecordType = any, ExtraValueType = 'text', ValueType extends ApTableValueTypes = ApTableValueTypes, MergedValueType extends ExtraValueType | ValueType = ExtraValueType | ValueType> = MergedValueType extends ExtraValueType | ValueType ? Omit<ExtraProColumnType<RecordType>, 'sorter' | 'rowSpan' | 'customCell' | 'customHeaderCell' | 'minWidth'> & {
|
|
10
|
+
children?: ApGridColumnType<RecordType, ExtraValueType, ValueType, MergedValueType>[];
|
|
11
|
+
/**
|
|
12
|
+
* 表单项所占据的格子数(1-24格)
|
|
13
|
+
*/
|
|
14
|
+
span?: number;
|
|
15
|
+
/**
|
|
16
|
+
* 列的最小宽度
|
|
17
|
+
*/
|
|
18
|
+
minWidth?: string | number;
|
|
19
|
+
/**
|
|
20
|
+
* 在title之后展示一个icon并触发tooltip
|
|
21
|
+
*/
|
|
22
|
+
tooltip?: string;
|
|
23
|
+
/**
|
|
24
|
+
* 是否可以复制
|
|
25
|
+
* @deprecated 暂未实现
|
|
26
|
+
*/
|
|
27
|
+
copyable?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* 配置溢出隐藏的方式
|
|
30
|
+
*/
|
|
31
|
+
ellipsis?: VxeTablePropTypes.ShowOverflow;
|
|
32
|
+
/**
|
|
33
|
+
* 是否搜索表单中隐藏
|
|
34
|
+
*/
|
|
35
|
+
hideInSearch?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* 是否在表格中隐藏
|
|
38
|
+
*/
|
|
39
|
+
hideInTable?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* 值的枚举,会自动转化把值当成 key 来取出要显示的内容(也会作为select等组件的选项)
|
|
42
|
+
*/
|
|
43
|
+
valueEnum?: ValueEnum;
|
|
44
|
+
/**
|
|
45
|
+
* 自定义查询表单渲染
|
|
46
|
+
*/
|
|
47
|
+
customRenderFormItem?: (config: ApGridColumnType<RecordType>) => any;
|
|
48
|
+
/**
|
|
49
|
+
* 自定义渲染文本,和customRender相比,其必须返回字符串,并且后续的渲染(例如copy/ellipsis)都将使用这个值
|
|
50
|
+
*/
|
|
51
|
+
renderText?: (option: {
|
|
52
|
+
value: any;
|
|
53
|
+
text: any;
|
|
54
|
+
record: RecordType;
|
|
55
|
+
index: number;
|
|
56
|
+
renderIndex: number;
|
|
57
|
+
column: ApGridColumnType<RecordType>;
|
|
58
|
+
}) => string;
|
|
59
|
+
/**
|
|
60
|
+
* 指定值类型(将会用于默认渲染和查询表单生成)
|
|
61
|
+
*/
|
|
62
|
+
valueType?: MergedValueType;
|
|
63
|
+
/**
|
|
64
|
+
* 值类型额外配置的参数(用于查询表单渲染)
|
|
65
|
+
*/
|
|
66
|
+
fieldProps?: FieldPropsType<Extract<MergedValueType, ValueType> extends never ? CommonFieldReturnType : ApTableValueFields[Extract<MergedValueType, ValueType>], RecordType, ExtraValueType, ValueType, MergedValueType>;
|
|
67
|
+
/**
|
|
68
|
+
* 用于表单项排序的字段
|
|
69
|
+
* @description 值越大,越排在前面,请设置正整数,设置为0或负数将会无效
|
|
70
|
+
*/
|
|
71
|
+
order?: number;
|
|
72
|
+
/**
|
|
73
|
+
* 用于指定列排序,设置为true表示后端排序,否则为前端排序
|
|
74
|
+
* Table同时只能设置一种排序类型,当至少有一个后端排序列时,显式设置为前端排序的列将不会生效
|
|
75
|
+
*/
|
|
76
|
+
sorter?: true | {
|
|
77
|
+
type?: VxeColumnPropTypes.SortType;
|
|
78
|
+
by?: VxeColumnPropTypes.SortBy;
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* 表头的菜单筛选项,设置为true后会尝试使用valueEnum生成filters
|
|
82
|
+
*/
|
|
83
|
+
filters?: Omit<ColumnFilterItem, 'children'>[] | true;
|
|
84
|
+
/**
|
|
85
|
+
* 自定义渲染,添加了`originalNode、originalText`
|
|
86
|
+
* @param opt
|
|
87
|
+
* @returns
|
|
88
|
+
*/
|
|
89
|
+
customRender?: (opt: {
|
|
90
|
+
value: any;
|
|
91
|
+
text: any;
|
|
92
|
+
record: RecordType;
|
|
93
|
+
index: number;
|
|
94
|
+
renderIndex: number;
|
|
95
|
+
column: ApGridColumnType<RecordType>;
|
|
96
|
+
originalNode?: VNode;
|
|
97
|
+
originalText?: any;
|
|
98
|
+
}) => any;
|
|
99
|
+
} : never;
|
|
100
|
+
export type ApGridRowSelection<RecordType> = Pick<TableRowSelection<RecordType>, 'defaultSelectedRowKeys' | 'type' | 'preserveSelectedRowKeys' | 'onChange' | 'fixed' | 'columnWidth' | 'columnTitle'> & {
|
|
101
|
+
/**
|
|
102
|
+
* 设置禁用的列
|
|
103
|
+
* @param row
|
|
104
|
+
* @returns
|
|
105
|
+
*/
|
|
106
|
+
disabled?: (row: RecordType) => boolean;
|
|
107
|
+
};
|
|
108
|
+
export type ApGridProps<RecordType = any, ParamsType = any> = Omit<TableProps<RecordType>, 'columns' | 'pagination' | 'dataSource' | 'size' | 'rowSelection' | 'rowKey' | 'rowClassName' | 'footer'> & Pick<VxeTableProps<RecordType>, 'rowClassName' | 'stripe' | 'headerRowClassName' | 'footerRowClassName' | 'cellClassName' | 'headerCellClassName' | 'footerCellClassName' | 'rowStyle' | 'headerRowStyle' | 'footerRowStyle' | 'cellStyle' | 'headerCellStyle' | 'footerCellStyle' | 'height' | 'minHeight' | 'maxHeight' | 'mergeCells' | 'mergeFooterItems' | 'cellConfig'> & {
|
|
109
|
+
/**
|
|
110
|
+
* 列配置
|
|
111
|
+
*/
|
|
112
|
+
columns?: ApGridColumnType<RecordType, any>[];
|
|
113
|
+
/**
|
|
114
|
+
* 行选中配置
|
|
115
|
+
*/
|
|
116
|
+
rowSelection?: true | ApGridRowSelection<RecordType>;
|
|
117
|
+
/**
|
|
118
|
+
* 是否启用卡片样式
|
|
119
|
+
*/
|
|
120
|
+
card?: boolean;
|
|
121
|
+
/**
|
|
122
|
+
* request额外请求的参数
|
|
123
|
+
* 如果传入响应式数据,将会在变更后重新执行
|
|
124
|
+
*/
|
|
125
|
+
params?: ParamsType | Ref<ParamsType>;
|
|
126
|
+
/**
|
|
127
|
+
* 请求获取dataSource
|
|
128
|
+
* @param params
|
|
129
|
+
* @returns
|
|
130
|
+
*/
|
|
131
|
+
request?: (params: Partial<ParamsType> & {
|
|
132
|
+
pageSize: number;
|
|
133
|
+
current: number;
|
|
134
|
+
sort?: Record<string, SortOrder>;
|
|
135
|
+
filter?: Recordable<any>;
|
|
136
|
+
}) => Promise<Partial<RequestData<RecordType>>>;
|
|
137
|
+
/**
|
|
138
|
+
* 表格的默认数据源,这些数据源将会在第一次请求后被替换
|
|
139
|
+
*/
|
|
140
|
+
defaultData?: RecordType[];
|
|
141
|
+
/**
|
|
142
|
+
* 表格的最终数据源(设置后request和defaultData都不会生效),离线表格的效果
|
|
143
|
+
*/
|
|
144
|
+
dataSource?: RecordType[];
|
|
145
|
+
/**
|
|
146
|
+
* 表格loading状态变更后触发
|
|
147
|
+
* @param loading
|
|
148
|
+
* @returns
|
|
149
|
+
*/
|
|
150
|
+
onLoadingChange?: (loading: boolean) => void;
|
|
151
|
+
/**
|
|
152
|
+
* 查询表单配置,设置为false表示不渲染查询表单
|
|
153
|
+
*/
|
|
154
|
+
searchForm?: false | ApFormSearchFormProps;
|
|
155
|
+
/**
|
|
156
|
+
* 查询表单提交之前,一般用于自定义对查询数据进行变更
|
|
157
|
+
* @param params
|
|
158
|
+
* @returns
|
|
159
|
+
*/
|
|
160
|
+
beforeSearchSubmit?: (params: Partial<ParamsType>) => any;
|
|
161
|
+
/**
|
|
162
|
+
* 是否显示分页器(特定的分页器)或者指定默认的当前页和pageSize
|
|
163
|
+
*/
|
|
164
|
+
pagination?: false | ApTablePaginationConfig;
|
|
165
|
+
/**
|
|
166
|
+
* 自定义查询表单容器样式
|
|
167
|
+
*/
|
|
168
|
+
searchFormWrapperStyle?: CSSProperties;
|
|
169
|
+
/**
|
|
170
|
+
* 自定义表格样式
|
|
171
|
+
*/
|
|
172
|
+
tableWrapperStyle?: CSSProperties;
|
|
173
|
+
/**
|
|
174
|
+
* 是否手动发起第一次网络请求
|
|
175
|
+
*/
|
|
176
|
+
manual?: boolean;
|
|
177
|
+
/**
|
|
178
|
+
* 表格尺寸(只支持中等大小和小尺寸)
|
|
179
|
+
*/
|
|
180
|
+
size?: 'medium' | 'small' | 'mini';
|
|
181
|
+
/**
|
|
182
|
+
* 表格是否自适应高度
|
|
183
|
+
* @deprecated 暂未实现
|
|
184
|
+
*/
|
|
185
|
+
adaptive?: boolean;
|
|
186
|
+
/**
|
|
187
|
+
* 设置表格列是否可以resize,还可以进行更多可变尺寸配置
|
|
188
|
+
*/
|
|
189
|
+
columnResizable?: boolean | VxeTablePropTypes.ResizableConfig;
|
|
190
|
+
rowKey?: string;
|
|
191
|
+
/**
|
|
192
|
+
* 指定用于渲染footer的数据,支持函数
|
|
193
|
+
*/
|
|
194
|
+
footer?: VxeTablePropTypes.FooterData | VxeTablePropTypes.FooterMethod<RecordType>;
|
|
195
|
+
/**
|
|
196
|
+
* 设置虚拟滚动
|
|
197
|
+
*/
|
|
198
|
+
virtual?: false | ApGridVirtualConfig;
|
|
199
|
+
/**
|
|
200
|
+
* 设置可展开及其配置
|
|
201
|
+
*/
|
|
202
|
+
expandable?: VxeTablePropTypes.ExpandConfig<RecordType> & {
|
|
203
|
+
/**
|
|
204
|
+
* 自定义渲染内容
|
|
205
|
+
*/
|
|
206
|
+
renderContent: VxeColumnSlots<RecordType>['content'];
|
|
207
|
+
/**
|
|
208
|
+
* 展开列占据的宽度,默认为auto
|
|
209
|
+
*/
|
|
210
|
+
width?: string | number;
|
|
211
|
+
/**
|
|
212
|
+
* 展开列的title
|
|
213
|
+
*/
|
|
214
|
+
title?: string;
|
|
215
|
+
};
|
|
216
|
+
};
|
|
217
|
+
export type ApGridVirtualConfig = {
|
|
218
|
+
x?: false | number;
|
|
219
|
+
y?: false | number;
|
|
220
|
+
};
|
|
221
|
+
export type ApGridColumnProps<RecordType> = {
|
|
222
|
+
column: ApGridColumnType<RecordType>;
|
|
223
|
+
};
|
|
224
|
+
export type ApGridExpose<SearchParamsType = Recordable, RecordType = any> = {
|
|
225
|
+
/**
|
|
226
|
+
* 表格查询提交(重制页码但查询参数不会重置)
|
|
227
|
+
* @returns
|
|
228
|
+
*/
|
|
229
|
+
submit: () => void;
|
|
230
|
+
/**
|
|
231
|
+
* 表格查询重置(重置页码和查询参数)
|
|
232
|
+
* @returns
|
|
233
|
+
*/
|
|
234
|
+
reset: () => void;
|
|
235
|
+
/**
|
|
236
|
+
* 表格刷新当页数据
|
|
237
|
+
* @returns
|
|
238
|
+
*/
|
|
239
|
+
refresh: () => void;
|
|
240
|
+
/**
|
|
241
|
+
* 设置查询表单数据
|
|
242
|
+
* @param values
|
|
243
|
+
* @returns
|
|
244
|
+
*/
|
|
245
|
+
setSearchFormValues: (values: Partial<SearchParamsType>) => void;
|
|
246
|
+
/**
|
|
247
|
+
* 获取查询表单数据
|
|
248
|
+
* @param transform 是否获取转换后的数据 默认为`false`
|
|
249
|
+
* @returns
|
|
250
|
+
*/
|
|
251
|
+
getSearchFormValues: (transform?: boolean) => (Partial<SearchParamsType> & Recordable<any>) | undefined;
|
|
252
|
+
/**
|
|
253
|
+
* 获取最终现实的列配置
|
|
254
|
+
* @returns
|
|
255
|
+
*/
|
|
256
|
+
getShowColumns: () => ApGridColumnType<RecordType>[];
|
|
257
|
+
/**
|
|
258
|
+
* 行选中相关
|
|
259
|
+
*/
|
|
260
|
+
rowSelection: {
|
|
261
|
+
selectedRows: ComputedRef<RecordType[]>;
|
|
262
|
+
clearAll: () => void;
|
|
263
|
+
};
|
|
264
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@aplus-frontend/ui/theme/ap-grid/index.css';
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@aplus-frontend/ui/theme/ap-grid/index.less';
|
|
File without changes
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ApGridColumnType, ColConfigType } from '../interface';
|
|
2
|
+
import { ValueTypeRenderConfig } from '../../config-provider';
|
|
3
|
+
/**
|
|
4
|
+
* 转换分组页
|
|
5
|
+
* @param columnConfig
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
export declare function transformToColGroup<RecordType>(columnConfig: ApGridColumnType<RecordType>, color: string, className: string): ColConfigType;
|
|
9
|
+
/**
|
|
10
|
+
* 转换渲染列
|
|
11
|
+
* @param columnConfig
|
|
12
|
+
* @returns
|
|
13
|
+
*/
|
|
14
|
+
export declare function transformToColumn<RecordType>(columnConfig: ApGridColumnType<RecordType>, color: string, className: string, extraValueType?: Record<string, ValueTypeRenderConfig>): ColConfigType;
|
|
15
|
+
/**
|
|
16
|
+
* 将ApColumn风格的列配置转换成适合VxeTable渲染的数据结构
|
|
17
|
+
* @param rawColumn
|
|
18
|
+
* @returns
|
|
19
|
+
*/
|
|
20
|
+
export declare function transformCol<RecordType>(rawColumn: ApGridColumnType<RecordType>, color: string, className: string, extraValueType?: Record<string, ValueTypeRenderConfig>): ColConfigType;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("vue"),l=require("lodash-unified"),h=require("../../ap-table/utils.js");function S(e){if(!l.isUndefined(e))return l.isArray(e)?e.reduce((r,i)=>l.isString(i)?`${r}.${i}`:`${r}[${i}]`,""):String(e)}function w(e){if(e)return e===!0?"left":e}function R(e){return l.isBoolean(e)?{sortable:e}:e?{sortable:!0,sortType:e==null?void 0:e.type,sortBy:e==null?void 0:e.by}:{sortable:!1}}function M(e){let r;return l.isBoolean(e.filters)&&e.valueEnum?r=h.valueEnumToArray(e.valueEnum):r=e.filters,r==null?void 0:r.map(i=>({label:l.isString(i.text)?i.text:"",value:i.value}))}function $(e){if(e)return r=>e(r.value,r.row)}function x(e,r,i){const d=l.pick(e,["width","minWidth","align"]);return d.field=S(e.dataIndex),d.fixed=w(e.fixed),d.title=e.title,d.slots={header:()=>h.getTableTitle(e,i,void 0,r)},d.headerAlign=e.align,d.showOverflow=e.ellipsis,d.showHeaderOverflow=e.ellipsis,d}function y(e,r,i,d){const t=l.pick(e,["width","minWidth","align","resizable"]);t.field=S(e.dataIndex),t.fixed=w(e.fixed),t.headerAlign=e.align,t.footerAlign=e.align,t.showOverflow=e.ellipsis,t.showFooterOverflow=e.ellipsis,Object.assign(t,R(e.sorter)),t.filters=M(e),t.filterMultiple=e.filterMultiple,t.filterMethod=$(e.onFilter),t.title=e.title;const T=({value:s,...n})=>{var v,F;const a=h.getTableRenderType(e),f=h.getTableRenderProps({...e,valueType:a},{value:s,...n}),u=h.getTableCellRenderNode(a,f,n.record,d),A=((v=e.renderText)==null?void 0:v.call(e,{value:s,...n}))||s;let p=e.renderText?O.createVNode(O.Fragment,null,[(F=e.renderText)==null?void 0:F.call(e,{value:s,...n})]):u;return e.customRender&&(p=e.customRender({value:s,...n,column:e,originalNode:p,originalText:A})),p};return t.slots={header:()=>h.getTableTitle(e,i,void 0,r),default:({row:s,rowIndex:n})=>T({value:s[t.field],text:s[t.field],record:s,index:n,renderIndex:n,column:e})},t}function q(e,r,i,d){var s;if(!((s=e.children)!=null&&s.length))return y(e,r,i,d);function t(n){return n.map(a=>{var f;if((f=a.children)!=null&&f.length){const u=x(a,r,i);return u.children=t(a.children),u}return y(a,r,i,d)})}const T=x(e,r,i);return T.children=t(e.children),T}exports.transformCol=q;exports.transformToColGroup=x;exports.transformToColumn=y;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ApGridColumnType } from '../interface';
|
|
2
|
+
import { ValueTypeRenderConfig } from '../../config-provider';
|
|
3
|
+
export declare function renderWithColumns<RecordType>(columns: ApGridColumnType<RecordType>[], color: string, className: string, extraValueType?: Record<string, ValueTypeRenderConfig>): import("vue/jsx-runtime").JSX.Element[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),u=require("vxe-table"),d=require("./col.js");function l(e){var r;return(r=e.children)!=null&&r.length?o.createVNode(u.VxeColgroup,e,{...e.slots||{},default:()=>{var t;return(t=e.children)==null?void 0:t.map(n=>l(n))}}):o.createVNode(u.VxeColumn,e,{...e.slots||{}})}function a(e,r,t,n){return e.map(s=>l(d.transformCol(s,r,t,n)))}exports.renderWithColumns=a;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { VxeTableEventProps, VxeTableProps } from 'vxe-table';
|
|
2
|
+
import { ApGridProps, ApGridRowSelection } from '../interface';
|
|
3
|
+
import { RowSelectionType } from '@aplus-frontend/antdv/es/table/interface';
|
|
4
|
+
export declare function toVxeProps<RecordType>(props: any): VxeTableProps<RecordType> & VxeTableEventProps<RecordType>;
|
|
5
|
+
export declare function getRowSelectionProps(rowSelection: ApGridRowSelection<any> | true): {
|
|
6
|
+
type: RowSelectionType;
|
|
7
|
+
width: string | number;
|
|
8
|
+
};
|
|
9
|
+
export declare function getRowExpandProps(config: ApGridProps['expandable']): {
|
|
10
|
+
readonly type: "expand";
|
|
11
|
+
readonly title: string | undefined;
|
|
12
|
+
readonly width: string | number;
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("lodash-unified"),a=30,c=50;function f(e){var i,n,d;const t={...e};if(e.columnResizable&&(t.columnConfig?t.columnConfig.resizable=!0:t.columnConfig={resizable:!0}),e.rowSelection){const o=e.rowSelection===!0?{}:e.rowSelection;o.type==="radio"?t.radioConfig={highlight:!0,checkMethod({row:r}){return o.disabled?!o.disabled(r):!0},checkRowKey:(i=o.defaultSelectedRowKeys)==null?void 0:i[0],reserve:l.isUndefined(o.preserveSelectedRowKeys)?!0:o.preserveSelectedRowKeys}:t.checkboxConfig={highlight:!0,checkMethod({row:r}){return o.disabled?!o.disabled(r):!0},checkRowKeys:o.defaultSelectedRowKeys,reserve:l.isUndefined(o.preserveSelectedRowKeys)?!0:o.preserveSelectedRowKeys}}return t.border=e.bordered,e.expandable&&(t.expandConfig=l.omit(e.expandable,["renderContent","width","title"])),e.footer&&(t.showFooter=!0,l.isFunction(e.footer)?t.footerMethod=e.footer:t.footerData=e.footer),e.virtual===!1?(t.virtualXConfig={enabled:!1},t.virtualYConfig={enabled:!1}):(s(t,"X",(n=e.virtual)==null?void 0:n.x),s(t,"Y",(d=e.virtual)==null?void 0:d.y)),t}function s(e,t,i){const n=t==="X",d=n?"virtualXConfig":"virtualYConfig",o=i!==!1,r=n?a:c,u=l.isNumber(i)&&i>=0?i:r;e[d]={enabled:o,gt:u}}function h(e){const t=e===!0||!e.type?"checkbox":e.type,i=e===!0?60:e.columnWidth||60;return{type:t,width:i}}function b(e){const t=(e==null?void 0:e.width)||"auto";return{type:"expand",title:e==null?void 0:e.title,width:t}}exports.getRowExpandProps=b;exports.getRowSelectionProps=h;exports.toVxeProps=f;
|
|
@@ -20,6 +20,8 @@ declare const _default: <RecordType>(__VLS_props: NonNullable<Awaited<typeof __V
|
|
|
20
20
|
unSelectAll: () => void;
|
|
21
21
|
clearAll: () => void;
|
|
22
22
|
toggleSelect: (item: RecordType) => void;
|
|
23
|
+
selectMulti: (items: RecordType[]) => void;
|
|
24
|
+
unSelectMulti: (items: RecordType[]) => void;
|
|
23
25
|
selectedRows: ComputedRef<RecordType[]>;
|
|
24
26
|
};
|
|
25
27
|
scrollBar: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),u=require("@aplus-frontend/antdv");require("../../../../config-provider/index.js");const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),u=require("@aplus-frontend/antdv");require("../../../../config-provider/index.js");const y=require("../../../context.js"),h=require("../utils.js"),_=require("../../../../config-provider/hooks/use-namespace.js"),B=e.defineComponent({__name:"index",props:{value:{}},setup(f){const l=f,{b:m}=_.useNamespace("select-group"),a=e.ref(!1),{columnsBackup:k,renderConfig:d}=y.useInjectApTable(),i=e.computed(()=>{var n;return(n=e.unref(k))==null?void 0:n.find(t=>{var r;return t.key===((r=l.value)==null?void 0:r.key)})});function v(o){const n=l.value.children.find(t=>t.key===o.key);return{checked:n==null?void 0:n.show,disabled:l.value.disabled||(n==null?void 0:n.disabled)}}function p(o){const n=l.value;n.children.forEach(t=>t.show=o),n.show=o,a.value=!1}function w(o,n){const t=l.value,r=t.children.find(c=>c.key===o);if(!r)return;r.show=n;const s=t.children.every(c=>c.show),b=t.children.some(c=>c.show);t.show=s,a.value=b&&!s}const C=e.computed(()=>l.value.disabled||l.value.children.every(o=>o.disabled));return e.watch(()=>l.value,o=>{const n=o.children.every(r=>r.show),t=o.children.some(r=>r.show);a.value=t&&!n,o.show!==n&&(o.show=n)},{deep:!0,immediate:!0}),(o,n)=>{var t;return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{class:e.normalizeClass(e.unref(m)("header"))},[e.createVNode(e.unref(u.Checkbox),{indeterminate:a.value,checked:(t=o.value)==null?void 0:t.show,disabled:C.value,"onUpdate:checked":p},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(h.getLabelNode)(i.value,e.unref(d)))))]),_:1},8,["indeterminate","checked","disabled"])],2),e.createElementVNode("div",null,[e.createVNode(e.unref(u.Row),{align:"middle"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value.children,r=>(e.openBlock(),e.createBlock(e.unref(u.Col),{key:r.key,span:8},{default:e.withCtx(()=>[e.createVNode(e.unref(u.Checkbox),e.mergeProps({ref_for:!0},v(r),{"onUpdate:checked":s=>w(r.key,s)}),{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(h.getLabelNode)(r,e.unref(d)))))]),_:2},1040,["onUpdate:checked"])]),_:2},1024))),128))]),_:1})])])}}});exports.default=B;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),r=require("@aplus-frontend/antdv"),i=require("@ant-design/icons-vue");require("../../../../config-provider/index.js");const b=require("../sorter/context.js"),B=require("../images/icon_carst_down.svg.js"),w=require("../images/icon_fill_right.svg.js"),_=require("../utils.js"),z=require("../../../../config-provider/hooks/use-namespace.js"),q=require("../../../../config-provider/hooks/use-locale.js"),y=["src"],E=e.defineComponent({__name:"item",props:{value:{},"onUpdate:value":{type:Function},level:{},open:{type:Boolean}},emits:["update:open","update:value"],setup(d,{emit:f}){const t=d,p=f,{b:n,be:s,is:m}=z.useNamespace("sortable-item-meta"),{fixedToLeft:h,fixedToRight:C,unFixed:k}=b.useInjectSorterMethods(),{t:c}=q.useLocale();function u(l){var a;const o=t.value;return o.fixed=l,(a=o.children)==null||a.forEach(T=>T.fixed=l),o}function v(){const l=u("left");h(l)}function V(){const l=u("right");C(l)}function
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),r=require("@aplus-frontend/antdv"),i=require("@ant-design/icons-vue");require("../../../../config-provider/index.js");const b=require("../sorter/context.js"),B=require("../images/icon_carst_down.svg.js"),w=require("../images/icon_fill_right.svg.js"),_=require("../utils.js"),z=require("../../../../config-provider/hooks/use-namespace.js"),q=require("../../../../config-provider/hooks/use-locale.js"),y=["src"],E=e.defineComponent({__name:"item",props:{value:{},"onUpdate:value":{type:Function},level:{},open:{type:Boolean}},emits:["update:open","update:value"],setup(d,{emit:f}){const t=d,p=f,{b:n,be:s,is:m}=z.useNamespace("sortable-item-meta"),{fixedToLeft:h,fixedToRight:C,unFixed:k}=b.useInjectSorterMethods(),{t:c}=q.useLocale();function u(l){var a;const o=t.value;return o.fixed=l,(a=o.children)==null||a.forEach(T=>T.fixed=l),o}function v(){const l=u("left");h(l)}function V(){const l=u("right");C(l)}function g(){const l=u(void 0);k(l)}function N(){p("update:open",!t.open)}function x(){var o;const l=t.value;l.show=!1,(o=l.children)==null||o.forEach(a=>a.show=!1)}return(l,o)=>{var a;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(n)())},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n)("left"))},[e.createVNode(e.unref(i.HolderOutlined),{class:e.normalizeClass(e.unref(s)("left","holder")),style:{"font-size":"16px",color:"#abb7cc"}},null,8,["class"]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(s)("left","indicator")),onClick:N},[(a=l.value.children)!=null&&a.length?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.open?e.unref(w.default):e.unref(B.default)},null,8,y)):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass([e.unref(s)("left","label-wrapper"),e.unref(m)("level2",t.level===2)])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(_.getLabelRenderNode)(l.value.label))))],2)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(n)("right"))},[e.createVNode(e.unref(r.Space),null,{default:e.withCtx(()=>[t.level!==2&&l.value.fixed!=="left"?(e.openBlock(),e.createBlock(e.unref(r.Tooltip),{key:0,title:e.unref(c)("ap.apTable.setting.fixToLeft")},{default:e.withCtx(()=>[e.createVNode(e.unref(i.VerticalAlignTopOutlined),{rotate:270,class:e.normalizeClass(e.unref(n)("action-icon")),onClick:v},null,8,["class"])]),_:1},8,["title"])):e.createCommentVNode("",!0),t.level!==2&&l.value.fixed?(e.openBlock(),e.createBlock(e.unref(r.Tooltip),{key:1,title:e.unref(c)("ap.apTable.setting.unFixed")},{default:e.withCtx(()=>[e.createVNode(e.unref(i.VerticalAlignMiddleOutlined),{class:e.normalizeClass(e.unref(n)("action-icon")),onClick:g},null,8,["class"])]),_:1},8,["title"])):e.createCommentVNode("",!0),t.level!==2&&l.value.fixed!=="right"?(e.openBlock(),e.createBlock(e.unref(r.Tooltip),{key:2,title:e.unref(c)("ap.apTable.setting.fixToRight")},{default:e.withCtx(()=>[e.createVNode(e.unref(i.VerticalAlignTopOutlined),{rotate:90,class:e.normalizeClass(e.unref(n)("action-icon")),onClick:V},null,8,["class"])]),_:1},8,["title"])):e.createCommentVNode("",!0),l.value.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(r.Tooltip),{key:3,title:e.unref(c)("ap.apTable.setting.delete")},{default:e.withCtx(()=>[e.createVNode(e.unref(i.DeleteOutlined),{class:e.normalizeClass(e.unref(n)("action-icon")),onClick:x},null,8,["class"])]),_:1},8,["title"]))]),_:1})],2)],2)}}});exports.default=E;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),l=require("@aplus-frontend/antdv");require("../select-group/index.vue.js");const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),l=require("@aplus-frontend/antdv");require("../select-group/index.vue.js");const g=require("../../../context.js"),v=require("../utils.js"),B=require("../select-group/index.vue2.js"),C=e.defineComponent({__name:"index",props:{value:{}},setup(a){const u=a,{columnsBackup:f,renderConfig:k}=g.useInjectApTable(),p=e.computed(()=>[...e.unref(f)||[]].sort((t,n)=>{var r,c,i,s;return(r=t.children)!=null&&r.length&&!((c=n.children)!=null&&c.length)?1:!((i=t.children)!=null&&i.length)&&((s=n.children)!=null&&s.length)?-1:0}));function d(o){return u.value.find(t=>t.key===o.key)}function h(o){const t=d(o);return{checked:t==null?void 0:t.show,disabled:t==null?void 0:t.disabled}}function _(o,t){const n=u.value,r=n==null?void 0:n.find(c=>c.key===o);r&&(r.show=t)}return(o,t)=>(e.openBlock(),e.createElementBlock("div",null,[e.createVNode(e.unref(l.Row),{gutter:[24,16],align:"middle"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,n=>{var r;return e.openBlock(),e.createElementBlock(e.Fragment,{key:n.key},[(r=n.children)!=null&&r.length?(e.openBlock(),e.createBlock(e.unref(l.Col),{key:1,span:24},{default:e.withCtx(()=>[e.createVNode(B.default,{value:d(n)},null,8,["value"])]),_:2},1024)):(e.openBlock(),e.createBlock(e.unref(l.Col),{key:0,span:8},{default:e.withCtx(()=>[e.createVNode(e.unref(l.Checkbox),e.mergeProps({ref_for:!0},h(n),{"onUpdate:checked":c=>_(n.key,c)}),{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(v.getLabelNode)(n,e.unref(k)))))]),_:2},1040,["onUpdate:checked"])]),_:2},1024))],64)}),128))]),_:1})]))}});exports.default=C;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { ColumnsType } from '@aplus-frontend/antdv/es/table';
|
|
2
|
-
import { ApColumnState, ApTableSettingDefaultValueType } from '../../interface';
|
|
2
|
+
import { ApColumnState, ApTableContextRenderConfig, ApTableSettingDefaultValueType } from '../../interface';
|
|
3
|
+
import { VNode, RendererNode, RendererElement, VNodeArrayChildren } from 'vue';
|
|
4
|
+
import { ColumnTitleProps } from '@aplus-frontend/antdv/es/table/interface';
|
|
5
|
+
import { VueNode } from '@aplus-frontend/antdv/es/_util/type';
|
|
3
6
|
/**
|
|
4
7
|
* 根据列状态重新生成表格列配置
|
|
5
8
|
* @param columns 表格列数组
|
|
@@ -9,12 +12,21 @@ import { ApColumnState, ApTableSettingDefaultValueType } from '../../interface';
|
|
|
9
12
|
export default function generateColumnsByColumnState(columns: ColumnsType, columnStateList: ApColumnState[]): ColumnsType;
|
|
10
13
|
export declare function customCloneColumnStates<T extends ApColumnState | ApColumnState[]>(columnStates: T): T;
|
|
11
14
|
/**
|
|
12
|
-
*
|
|
15
|
+
* 获取基于title设置的label节点
|
|
13
16
|
* @param node
|
|
14
17
|
* @param overrideProps
|
|
15
18
|
* @returns
|
|
16
19
|
*/
|
|
17
|
-
export declare function
|
|
20
|
+
export declare function getLabelNode(column: any, renderConfig?: ApTableContextRenderConfig): number | boolean | void | VNode<RendererNode, RendererElement, {
|
|
21
|
+
[key: string]: any;
|
|
22
|
+
}> | VNodeArrayChildren | ((props: ColumnTitleProps<any>) => VNodeArrayChildren | VueNode) | null;
|
|
23
|
+
/**
|
|
24
|
+
* 获取最终用于渲染的节点
|
|
25
|
+
* @param node
|
|
26
|
+
* @param overrideProps
|
|
27
|
+
* @returns
|
|
28
|
+
*/
|
|
29
|
+
export declare function getLabelRenderNode(node: any): any;
|
|
18
30
|
/**
|
|
19
31
|
* 生成可用于缓存的列状态对象
|
|
20
32
|
* @param columnStates
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("lodash-unified"),s=require("vue"),a=require("../../utils.js");function c(e,t){var n;const i=[];for(const l of t){const u=e.find(r=>r.key===l.key);if((n=l.children)!=null&&n.length){const r=c(u.children,l.children);r.length&&i.push({...u,fixed:l.fixed,children:r})}else{if(!l.show)continue;i.push({...u,fixed:l.fixed})}}return i}function d(e){return o.cloneDeepWith(e,(t,i)=>{if(i==="label")return t})}function h(e,t){const i=e.title,n=o.isArray(i)?i[0]:i;return s.isVNode(n)?n:a.getTableTitle(e,(t==null?void 0:t.className)||"",void 0,t==null?void 0:t.color)}function f(e){return s.isVNode(e)?e:o.isArray(e)?e[0]:e}function m(e){function t(i){const n={};return i.forEach((l,u)=>{var r;n[l.key]={...o.omit(l,["label","key","children"]),order:u,children:(r=l.children)!=null&&r.length?t(l.children):void 0}}),n}return t(e)}exports.customCloneColumnStates=d;exports.default=c;exports.getColumnStateString=m;exports.getLabelNode=h;exports.getLabelRenderNode=f;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ColumnType } from '@aplus-frontend/antdv/es/table';
|
|
2
2
|
import { ComputedRef, InjectionKey } from 'vue';
|
|
3
|
-
import { ApTableProps } from './interface';
|
|
3
|
+
import { ApTableContextRenderConfig, ApTableProps } from './interface';
|
|
4
4
|
type TableSize = ApTableProps['size'];
|
|
5
5
|
type ApTableContextProps<RecordType> = {
|
|
6
6
|
/**
|
|
@@ -25,6 +25,7 @@ type ApTableContextProps<RecordType> = {
|
|
|
25
25
|
size?: ComputedRef<TableSize>;
|
|
26
26
|
updateSize?: (nextSize: TableSize) => void;
|
|
27
27
|
dataSource?: ComputedRef<RecordType[]>;
|
|
28
|
+
renderConfig?: ComputedRef<ApTableContextRenderConfig>;
|
|
28
29
|
};
|
|
29
30
|
export declare const ApTableContextKey: InjectionKey<ApTableContextProps<any>>;
|
|
30
31
|
export declare function useProvideApTable<ModelType>(state: ApTableContextProps<ModelType>): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),t=Symbol("apTableContextKey");function
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),t=Symbol("apTableContextKey");function n(o){e.provide(t,o)}function u(){return e.inject(t,{columns:e.computed(()=>[]),updateColumns:()=>{},size:e.computed(()=>"middle"),updateSize:()=>{},dataSource:void 0,renderConfig:void 0})}exports.ApTableContextKey=t;exports.useInjectApTable=u;exports.useProvideApTable=n;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("vue"),R=require("../../utils/index.js"),d=require("../components/setting/utils.js"),W=require("../context.js"),f=require("lodash-unified");require("../../config-provider/index.js");const z=require("@aplus-frontend/antdv/es/theme/internal"),D=require("../utils.js"),G=require("../../config-provider/hooks/use-namespace.js");function h(r,n){r.forEach(o=>{var l;n(o),(l=o.children)!=null&&l.length&&h(o.children,n)})}function U(r,n){if(!n)return{};const o=r.getItem(n);return o?JSON.parse(o):{}}function O(r,n){if(f.isObject(r)&&f.isObject(n))return f.mergeWith({},r,n,O)}const A=Number.MAX_SAFE_INTEGER;function X(r,n,o,l){return l?l.fixed:n?n.fixed:o&&"fixed"in o?o.fixed:f.isBoolean(r.fixed)?r.fixed?"left":void 0:r.fixed}const $=(r,n,o)=>{const{be:l}=G.useNamespace("ap-table"),[H,B]=z.useToken(),a=i.ref(o),g=i.shallowRef(d.customCloneColumnStates(o)),{columnsBackup:b,updateColumns:S}=W.useInjectApTable(),E=r.persistenceType||"localStorage",v=window[E];function F(){const e=U(v,i.unref(n)),t=f.mergeWith({},r.defaultValue||{},e,O),u=i.unref(b);function c(J,x,P){return J.map(s=>{var q,N;const T=(x==null?void 0:x[s.key])||{},C={key:s.key,label:f.isString(s.title)?D.getTableTitle(s,l("table-header","title"),void 0,B.value.colorPrimary):s.title,show:!0,fixed:X(s,e[s.key],(q=r.defaultValue)==null?void 0:q[s.key],P),disabled:!1,...f.omit(T,["children","fixed"])};return C.children=(N=s.children)!=null&&N.length?c(s.children,T.children,C):void 0,C}).sort(I)}return c(u||[],t)}function I(e,t){const u=f.isNumber(e.order)?e.order:A;let c=f.isNumber(t.order)?t.order:A;return e.fixed==="right"&&t.fixed!=="right"&&(c=u-1),t.fixed==="left"&&e.fixed!=="left"&&(c=u-1),u-c}const w=i.computed(()=>i.unref(a).every(e=>e.show));function k(){const e=i.unref(a);h(e,t=>{!t.disabled&&(t.show=!0)})}function m(){const e=i.unref(a);h(e,t=>{!t.disabled&&(t.show=!1)})}function j(){i.unref(w)?m():k()}function M(e,t){h(i.unref(a),u=>{u.key===e&&(u.show=R.isDef(t)?t:!u.show)})}function p(e){a.value=e}function _(e){g.value=e}function y(e){if(i.unref(n)){const t=d.getColumnStateString(e);v.setItem(i.unref(n),JSON.stringify(t))}}return i.watchEffect(()=>{var t;const e=F();p(e),(t=r.onChange)==null||t.call(r,e),S==null||S(d.default(i.unref(b),i.unref(e))),g.value=d.customCloneColumnStates(e),y(e)}),{columnState:a,selectAll:k,unSelectAll:m,toggleSelect:M,setColumnState:p,isAllSelected:w,toggleSelectAll:j,columnStateBackup:g,setColumnStateBackup:_,cacheColumnStateIfNeeded:y}};exports.useTableColumnState=$;
|
|
@@ -49,13 +49,19 @@ export type UseTablePagingParams<DataType, ParamsType> = {
|
|
|
49
49
|
* 分页相关
|
|
50
50
|
*/
|
|
51
51
|
pagination?: boolean | ApTablePaginationConfig;
|
|
52
|
+
/**
|
|
53
|
+
* 样式命名空间
|
|
54
|
+
*/
|
|
55
|
+
namespace?: 'ap-table' | 'ap-grid';
|
|
52
56
|
};
|
|
53
57
|
type InternalDataType<DataType = Recordable> = {
|
|
54
58
|
total: number;
|
|
55
59
|
records: DataType[];
|
|
56
60
|
loading: boolean;
|
|
57
61
|
};
|
|
58
|
-
export declare const
|
|
62
|
+
export declare const DEFAULT_CURRENT = 1;
|
|
63
|
+
export declare const DEFAULT_PAGE_SIZE = 10;
|
|
64
|
+
export declare const useTablePaging: <DataType = any, ParamsType = Record<string, any>>({ manual, request, defaultParams, defaultData, formatParams, paramsValueTypeMap, resetFieldsIgnores, filterFields, sortFields, namespace, pagination }: UseTablePagingParams<DataType, ParamsType>) => {
|
|
59
65
|
formRef: Ref<ApFormSearchFormExpose | undefined, ApFormSearchFormExpose | undefined>;
|
|
60
66
|
submit: () => void;
|
|
61
67
|
reset: () => void;
|
|
@@ -74,7 +80,7 @@ export declare const useTablePaging: <DataType = any, ParamsType = Record<string
|
|
|
74
80
|
showSizeChanger: boolean;
|
|
75
81
|
showQuickJumper: boolean;
|
|
76
82
|
showLessItems: boolean | undefined;
|
|
77
|
-
size:
|
|
83
|
+
size: "default" | "small";
|
|
78
84
|
showTotal: ((total: number) => import("vue/jsx-runtime").JSX.Element) | undefined;
|
|
79
85
|
};
|
|
80
86
|
onChange: (pagination: TablePaginationConfig, filters: Record<string, FilterValue | null>, sorter: SorterResult<any> | SorterResult<any>[], extra: TableCurrentDataSource<any>) => void;
|