@aplus-frontend/ui 6.38.0 → 6.39.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 +110 -104
- package/es/src/ag-grid/hooks/use-columns-def.mjs +73 -71
- package/es/src/ag-grid/index.vue.mjs +201 -200
- package/es/src/ag-grid/interface.d.ts +14 -0
- package/es/src/ap-form/drawer-form/index.vue.d.ts +4 -0
- package/es/src/ap-form/modal-form/index.vue.d.ts +9 -1
- package/es/src/ap-modal/utils/createModal.mjs +34 -36
- package/es/src/ap-table/components/setting/modal/index.vue2.mjs +72 -71
- package/es/src/ap-table/interface.d.ts +6 -0
- package/es/src/business/ag-grid-modal/constants.d.ts +4 -0
- package/es/src/business/ag-grid-modal/constants.mjs +6 -0
- package/es/src/business/ag-grid-modal/hooks/use-ag-grid-instance.d.ts +33 -0
- package/es/src/business/ag-grid-modal/hooks/use-ag-grid-instance.mjs +50 -0
- package/es/src/business/ag-grid-modal/hooks/use-ag-grid-modal.d.ts +3 -0
- package/es/src/business/ag-grid-modal/hooks/use-ag-grid-modal.mjs +95 -0
- package/es/src/business/ag-grid-modal/hooks/use-ag-grid-select-modal.d.ts +2 -0
- package/es/src/business/ag-grid-modal/hooks/use-ag-grid-select-modal.mjs +165 -0
- package/es/src/business/ag-grid-modal/hooks/use-modal-title.d.ts +24 -0
- package/es/src/business/ag-grid-modal/hooks/use-modal-title.mjs +49 -0
- package/es/src/business/ag-grid-modal/index.d.ts +3 -0
- package/es/src/business/ag-grid-modal/index.mjs +8 -0
- package/es/src/business/ag-grid-modal/interface.d.ts +141 -0
- package/es/src/business/ag-grid-modal/modal-layout/index.vue.d.ts +44 -0
- package/es/src/business/ag-grid-modal/modal-layout/index.vue.mjs +4 -0
- package/es/src/business/ag-grid-modal/modal-layout/index.vue2.mjs +106 -0
- package/es/src/business/ag-grid-modal/selected-items/default.vue.d.ts +25 -0
- package/es/src/business/ag-grid-modal/selected-items/default.vue.mjs +4 -0
- package/es/src/business/ag-grid-modal/selected-items/default.vue2.mjs +33 -0
- package/es/src/business/ag-grid-modal/selected-items/index.d.ts +36 -0
- package/es/src/business/ag-grid-modal/selected-items/index.mjs +8 -0
- package/es/src/business/ag-grid-modal/selected-items/style/css.d.ts +0 -0
- package/es/src/business/ag-grid-modal/selected-items/style/css.js +1 -0
- package/es/src/business/ag-grid-modal/selected-items/style/index.d.ts +0 -0
- package/es/src/business/ag-grid-modal/selected-items/style/index.js +1 -0
- package/es/src/business/ag-grid-modal/style/css.d.ts +0 -0
- package/es/src/business/ag-grid-modal/style/css.js +1 -0
- package/es/src/business/ag-grid-modal/style/index.d.ts +0 -0
- package/es/src/business/ag-grid-modal/style/index.js +1 -0
- package/es/src/business/ag-grid-modal/utils.d.ts +54 -0
- package/es/src/business/ag-grid-modal/utils.mjs +72 -0
- package/es/src/business/ag-grid-modal/wrapper/index.vue.d.ts +23 -0
- package/es/src/business/ag-grid-modal/wrapper/index.vue.mjs +4 -0
- package/es/src/business/ag-grid-modal/wrapper/index.vue2.mjs +25 -0
- package/es/src/business/ap-table-modal/hooks/use-create-table-modal.d.ts +1 -0
- package/es/src/business/ap-table-modal/hooks/use-table-modal.d.ts +1 -0
- package/es/src/business/ap-table-modal/hooks/use-table-select-modal.d.ts +1 -0
- package/es/src/business/ap-table-modal/index.d.ts +3 -0
- package/es/src/business/ap-table-modal/table-modal.vue.d.ts +1 -0
- package/es/src/business/ap-table-modal/table-modal.vue2.mjs +23 -23
- package/es/src/business/hooks/usePageListApTable.d.ts +1 -0
- package/es/src/business/index.d.ts +1 -0
- package/es/src/business/index.mjs +55 -54
- package/es/src/index.mjs +95 -89
- package/es/src/path-map.mjs +4 -1
- package/es/src/version.d.ts +1 -1
- package/es/src/version.mjs +1 -1
- package/lib/index.js +1 -1
- package/lib/src/ag-grid/hooks/use-columns-def.js +1 -1
- package/lib/src/ag-grid/index.vue.js +1 -1
- package/lib/src/ag-grid/interface.d.ts +14 -0
- package/lib/src/ap-form/drawer-form/index.vue.d.ts +4 -0
- package/lib/src/ap-form/modal-form/index.vue.d.ts +9 -1
- package/lib/src/ap-modal/utils/createModal.js +1 -1
- package/lib/src/ap-table/components/setting/modal/index.vue2.js +1 -1
- package/lib/src/ap-table/interface.d.ts +6 -0
- package/lib/src/business/ag-grid-modal/constants.d.ts +4 -0
- package/lib/src/business/ag-grid-modal/constants.js +1 -0
- package/lib/src/business/ag-grid-modal/hooks/use-ag-grid-instance.d.ts +33 -0
- package/lib/src/business/ag-grid-modal/hooks/use-ag-grid-instance.js +1 -0
- package/lib/src/business/ag-grid-modal/hooks/use-ag-grid-modal.d.ts +3 -0
- package/lib/src/business/ag-grid-modal/hooks/use-ag-grid-modal.js +1 -0
- package/lib/src/business/ag-grid-modal/hooks/use-ag-grid-select-modal.d.ts +2 -0
- package/lib/src/business/ag-grid-modal/hooks/use-ag-grid-select-modal.js +1 -0
- package/lib/src/business/ag-grid-modal/hooks/use-modal-title.d.ts +24 -0
- package/lib/src/business/ag-grid-modal/hooks/use-modal-title.js +1 -0
- package/lib/src/business/ag-grid-modal/index.d.ts +3 -0
- package/lib/src/business/ag-grid-modal/index.js +1 -0
- package/lib/src/business/ag-grid-modal/interface.d.ts +141 -0
- package/lib/src/business/ag-grid-modal/modal-layout/index.vue.d.ts +44 -0
- package/lib/src/business/ag-grid-modal/modal-layout/index.vue.js +1 -0
- package/lib/src/business/ag-grid-modal/modal-layout/index.vue2.js +1 -0
- package/lib/src/business/ag-grid-modal/selected-items/default.vue.d.ts +25 -0
- package/lib/src/business/ag-grid-modal/selected-items/default.vue.js +1 -0
- package/lib/src/business/ag-grid-modal/selected-items/default.vue2.js +1 -0
- package/lib/src/business/ag-grid-modal/selected-items/index.d.ts +36 -0
- package/lib/src/business/ag-grid-modal/selected-items/index.js +1 -0
- package/lib/src/business/ag-grid-modal/selected-items/style/css.cjs +1 -0
- package/lib/src/business/ag-grid-modal/selected-items/style/css.d.ts +0 -0
- package/lib/src/business/ag-grid-modal/selected-items/style/index.cjs +1 -0
- package/lib/src/business/ag-grid-modal/selected-items/style/index.d.ts +0 -0
- package/lib/src/business/ag-grid-modal/style/css.cjs +1 -0
- package/lib/src/business/ag-grid-modal/style/css.d.ts +0 -0
- package/lib/src/business/ag-grid-modal/style/index.cjs +1 -0
- package/lib/src/business/ag-grid-modal/style/index.d.ts +0 -0
- package/lib/src/business/ag-grid-modal/utils.d.ts +54 -0
- package/lib/src/business/ag-grid-modal/utils.js +1 -0
- package/lib/src/business/ag-grid-modal/wrapper/index.vue.d.ts +23 -0
- package/lib/src/business/ag-grid-modal/wrapper/index.vue.js +1 -0
- package/lib/src/business/ag-grid-modal/wrapper/index.vue2.js +1 -0
- package/lib/src/business/ap-table-modal/hooks/use-create-table-modal.d.ts +1 -0
- package/lib/src/business/ap-table-modal/hooks/use-table-modal.d.ts +1 -0
- package/lib/src/business/ap-table-modal/hooks/use-table-select-modal.d.ts +1 -0
- package/lib/src/business/ap-table-modal/index.d.ts +3 -0
- package/lib/src/business/ap-table-modal/table-modal.vue.d.ts +1 -0
- package/lib/src/business/ap-table-modal/table-modal.vue2.js +1 -1
- package/lib/src/business/hooks/usePageListApTable.d.ts +1 -0
- package/lib/src/business/index.d.ts +1 -0
- package/lib/src/business/index.js +1 -1
- package/lib/src/index.js +1 -1
- package/lib/src/path-map.js +1 -1
- package/lib/src/version.d.ts +1 -1
- package/lib/src/version.js +1 -1
- package/package.json +3 -3
- package/theme/ag-grid/index.css +3 -0
- package/theme/ag-grid-modal/index.css +789 -0
- package/theme/ag-grid-modal/index.less +73 -0
- package/theme/ag-grid-modal/selected-items.css +72 -0
- package/theme/ag-grid-modal/selected-items.less +34 -0
- package/theme/ap-form/ap-form-item.css +3 -0
- package/theme/ap-form/ap-form-item.less +3 -0
- package/theme/ap-form/index.css +3 -0
- package/theme/ap-form/search-form.css +3 -0
- package/theme/ap-grid/index.css +3 -0
- package/theme/ap-table/ap-table.css +3 -0
- package/theme/ap-table-modal/index.css +3 -0
- package/theme/ap-upload/index.css +5 -0
- package/theme/ap-upload/multiple-file.css +5 -0
- package/theme/ap-upload/multiple-file.less +6 -0
- package/theme/editable-table/index.css +3 -0
- package/theme/index.css +96 -0
- package/theme/index.less +2 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),y=require("@aplus-frontend/antdv"),u=require("../../config-provider/config-provider.js"),O=require("lodash-unified"),q=require("@aplus-frontend/utils");require("../../config-provider/index.js");const f=require("./util.js"),P=require("../../utils/index.js"),N=require("../../config-provider/hooks/use-namespace.js"),k=s=>{let o,t;const{destroyOnClose:i=!0,wrapperOffset:r=!1}=s,{b:c}=N.useNamespace("ap-modal");function p(){o&&o(!1),setTimeout(()=>{n.render(null,a),a.parentElement?.removeChild(a)},500)}function C(){o&&o(!0)}function d(){o&&o(!1)}function h(e){t&&t(e)}const m=n.defineComponent({data(){return{open:i,props:s}},created(){o=e=>{this.open=e},t=e=>{this.props={...this.props,...e}}},methods:{async handleCancel(){if(this.props?.onCancel){const e=this.props?.content?.component?.exposed??void 0;await this.props?.onCancel(e)}i?p():d()},async handleOk(){try{if(t({confirmLoading:!0}),this.props?.onOk){const e=this.props?.content?.component?.exposed??void 0;await this.props.onOk(e)}t({confirmLoading:!1}),i?p():d()}catch{t({confirmLoading:!1})}}},render(){const e=O.omit(this.props,["onCancel","onOk","open","onUpdate:open","getContainer","icon"]);return n.createVNode(u.ConfigProvider,u.globalConfigCached.value,{default:()=>[n.createVNode(y.Modal,n.mergeProps({class:{[c()]:!0,[c("wrapper")]:r},centered:!0},e,{open:this.open,onCancel:this.handleCancel,onOk:this.handleOk}),{default:()=>[n.createVNode("div",{class:{[c("body-wrapper")]:r},style:r===!1?{}:{maxHeight:`calc(100vh - ${(r===!0?100:q.isNumeric(r)?Number(r):100)*2}px)`}},[this.props?.content])]})]})}}),g=f.getContainerDom(u.globalConfigCached?.value?.getPopupContainer),v=f.getContainerDom(s.getContainer),x=g||v||P.getTopWindow().document.body,a=document.createElement("div");x.appendChild(a);const l=n.h(m),b=f.getModalGlobalAppContext();return l.appContext=s.appContext||b||l.appContext,n.render(l,a),{destroy:p,update:h,open:C,close:d}};exports.createModal=k;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),t=require("@aplus-frontend/antdv"),A=require("../../../../utils/slot.js"),
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),t=require("@aplus-frontend/antdv"),A=require("../../../../utils/slot.js"),E=require("../../../context.js");require("../tree-select/index.vue.js");const R=require("../../../hooks/use-table-column-state.js");require("../../../../config-provider/index.js");require("../sorter/index.vue.js");const p=require("../utils.js"),O=require("@ant-design/icons-vue"),I=require("../../../../config-provider/hooks/use-locale.js"),v=require("../../../../config-provider/hooks/use-namespace.js"),M=require("../tree-select/index.vue2.js"),U=require("../sorter/index.vue2.js"),j=e.defineComponent({name:"ApTableSetting",__name:"index",props:{config:{default:()=>({})}},setup(C){const s=C,{columnsBackup:N,size:S,updateSize:V,updateColumns:_}=E.useInjectApTable(),i=e.ref(e.unref(S)),b=e.computed(()=>s.config.persistenceKey),{columnState:l,setColumnState:x,isAllSelected:h,toggleSelectAll:y,columnStateBackup:k,setColumnStateBackup:T,cacheColumnStateIfNeeded:q}=R.useTableColumnState(s.config,b,[]),{t:a}=I.useLocale(),{b:c,be:d}=v.useNamespace("ap-column-setting"),{b:z}=v.useNamespace("ap-table"),u=e.ref(!1),f=e.ref(!1),B=e.useSlots(),m=A.getSingleVNode(B.trigger)||e.createVNode(t.Button,{icon:e.createVNode(O.SettingOutlined,null,null),class:z("setting-trigger-button")},null),g=m?e.cloneVNode(m,{onClick:()=>{u.value=!0}}):null;function w(){x(p.customCloneColumnStates(e.unref(k)))}function D(){_?.(p.default(e.unref(N),e.unref(l))),V?.(e.unref(i)),u.value=!1;const r=p.customCloneColumnStates(l.value);T(r),q(r),s.config?.onChange?.(r)}return(r,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(g)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(g)),{key:0})):e.createCommentVNode("",!0),e.createVNode(e.unref(t.Modal),{open:u.value,"onUpdate:open":o[2]||(o[2]=n=>u.value=n),title:e.unref(a)("ap.apTable.setting.title"),width:900,centered:!0,"body-style":{padding:"0px !important",height:"450px"},"after-open-change":n=>f.value=n,onOk:D},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(e.unref(c)("wrapper"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(c)("left"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(d)("left","header"))},[e.createElementVNode("div",null,[e.createElementVNode("span",{class:e.normalizeClass(e.unref(d)("left","header-tips"))},e.toDisplayString(e.unref(a)("ap.apTable.setting.selectAllTip")),3),e.createVNode(e.unref(t.Button),{type:"link",size:"small",onClick:e.unref(y)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h)?e.unref(a)("ap.apTable.setting.unSelectAll"):e.unref(a)("ap.apTable.setting.selectAll")),1)]),_:1},8,["onClick"])]),e.createVNode(e.unref(t.RadioGroup),{value:i.value,"onUpdate:value":o[0]||(o[0]=n=>i.value=n)},{default:e.withCtx(()=>[e.createVNode(e.unref(t.RadioButton),{value:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("ap.apTable.setting.sizeSmall")),1)]),_:1}),e.createVNode(e.unref(t.RadioButton),{value:"middle"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("ap.apTable.setting.sizeNormal")),1)]),_:1})]),_:1},8,["value"])],2),e.createVNode(e.unref(t.Divider),{dashed:"",style:{margin:"0px"}}),e.createVNode(M.default,{class:e.normalizeClass(e.unref(d)("left","content")),value:e.unref(l)},null,8,["class","value"])],2),e.createVNode(e.unref(t.Divider),{type:"vertical",style:{height:"100%",margin:"0px"}}),e.createElementVNode("div",{class:e.normalizeClass(e.unref(c)("right"))},[e.createVNode(U.default,{value:e.unref(l),"onUpdate:value":o[1]||(o[1]=n=>e.isRef(l)?l.value=n:null),onReset:w},null,8,["value"])],2)],2),[[e.vShow,f.value]])]),_:1},8,["open","title","after-open-change"])],64))}});exports.default=j;
|
|
@@ -352,6 +352,12 @@ export type ApTableExpose<SearchParamsType = Recordable, RecordType = any> = {
|
|
|
352
352
|
* 查询表单提交
|
|
353
353
|
*/
|
|
354
354
|
submit: () => void;
|
|
355
|
+
/**
|
|
356
|
+
* 表格查询提交(重制页码但查询参数不会重置)
|
|
357
|
+
* @param resetCurrent 是否重置当前页码,默认为`false`
|
|
358
|
+
* @returns
|
|
359
|
+
*/
|
|
360
|
+
submitWith: (resetCurrent?: boolean) => void;
|
|
355
361
|
/**
|
|
356
362
|
* 查询表单重置
|
|
357
363
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o="__ag-grid-modal-row-key",t="480px",e="calc(100vh - 200px)";exports.LARGER_HEIGHT=e;exports.ROW_KEY=o;exports.SMALL_HEIGHT=t;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ComputedRef } from 'vue';
|
|
2
|
+
import { AgGridExpose } from '../../../ag-grid';
|
|
3
|
+
import { RefreshType } from '../interface';
|
|
4
|
+
interface Options {
|
|
5
|
+
onMounted?: () => void;
|
|
6
|
+
onSelectedRows?: (rows?: any[]) => void;
|
|
7
|
+
}
|
|
8
|
+
export interface GridApi {
|
|
9
|
+
/** 设置 AgGrid 实例 */
|
|
10
|
+
setInstance: (node: any) => void;
|
|
11
|
+
/** 刷新表格 */
|
|
12
|
+
refresh: (type?: RefreshType) => void;
|
|
13
|
+
/** 获取 AgGrid 实例 */
|
|
14
|
+
getInstance: () => AgGridExpose | undefined;
|
|
15
|
+
/** 设置 AgGrid 选中行 */
|
|
16
|
+
setSelectedRowKeys: (keys: (string | number)[]) => void;
|
|
17
|
+
/** 获取 AgGrid 选中行 */
|
|
18
|
+
getSelectedRows: () => any[] | undefined;
|
|
19
|
+
/** 清空所有选中行 */
|
|
20
|
+
clearAllSelected: () => void;
|
|
21
|
+
/** 清除某一行数据 */
|
|
22
|
+
removeSelected: (record: any) => void;
|
|
23
|
+
/** 设置表格数据length */
|
|
24
|
+
setDataSourceLength: (len: number) => void;
|
|
25
|
+
}
|
|
26
|
+
interface GridApiProvider extends GridApi {
|
|
27
|
+
selectedRows?: ComputedRef<any[]>;
|
|
28
|
+
dataSourceLength?: ComputedRef<number>;
|
|
29
|
+
}
|
|
30
|
+
export declare function useAgGridInstance(options?: Options): [GridApi, any];
|
|
31
|
+
/** 获取上下文中grid的api */
|
|
32
|
+
export declare function useAgGridModalInject(): GridApiProvider | undefined;
|
|
33
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),A=require("lodash-unified"),r=Symbol("ag-grid-provider-key");function h(n){const t=o.ref(),c=o.ref(),s=o.ref(0),a=e=>{t.value=e},u=e=>{s.value=e},d=()=>t.value,i=(e="reset")=>{t.value&&e in t.value&&t.value[e]()},v=e=>{t.value?.rowSelection.setSelectedRowKeys(e)},S=()=>A.cloneDeep(t.value?.rowSelection.selectedRows.value),g=()=>t.value?.rowSelection.clearAll(),w=e=>t.value?.rowSelection.unSelectRows([e]);o.watch(t,e=>{e&&n?.onMounted?.()}),o.watch(()=>t.value?.rowSelection.selectedRows.value,e=>{c.value=e,n?.onSelectedRows?.(e)});const l={setInstance:a,refresh:i,getInstance:d,setSelectedRowKeys:v,getSelectedRows:S,clearAllSelected:g,removeSelected:w,setDataSourceLength:u},f=o.defineComponent({setup(e,{slots:R}){return o.provide(r,{...l,selectedRows:o.toRef(()=>c.value),dataSourceLength:o.toRef(()=>s.value)}),R.default}});return[l,f]}function I(){return o.inject(r)}exports.useAgGridInstance=h;exports.useAgGridModalInject=I;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),h=require("../../../ap-modal/index.js");require("../../../ag-grid/index.js");const q=require("../utils.js"),y=require("./use-ag-grid-instance.js"),a=require("lodash-unified");require("../wrapper/index.vue.js");const C=require("../wrapper/index.vue2.js"),P=require("../../../ag-grid/index.vue.js");function w(r){let s=null,i=null;const[n,f]=y.useAgGridInstance(),l=q.genRequest(r.api,r.getRowKey,n.setDataSourceLength),d=t=>{const{title:e,width:u,modalProps:_,...c}=a.isFunction(t)?t(r):t;a.isEmpty(c)||i?.(c);const g=a.omitBy({title:e,width:u,modalProps:_},a.isUndefined);a.isEmpty(g)||s?.update(g)},m=o.defineComponent({name:"AgGridModalPreviewContent",props:{modalConfig:{type:Object,required:!0}},setup(t){const e=o.ref(t.modalConfig);return i=u=>{e.value={...e.value,...u}},()=>o.createVNode(f,null,{default:()=>[o.createVNode(C.default,{rowHeight:e.value.rowHeight},{default:()=>[e.value.renderHeader?.(a.omit(n,"setInstance"),{updateProps:d}),o.createVNode(P.default,{ref:n.setInstance,searchForm:{sortable:!1,resize:{target:"form"}},rowKey:e.value.getRowKey,request:l.request,style:{padding:"0px"},rowHeight:e.value.rowHeight,columns:e.value.columns},e.value.gridSlots)]})]})}});function p(){s=h.ApModal.createModal({title:r.title,width:r.width,destroyOnClose:!0,maskClosable:!1,footer:null,afterOpenChange(t){t===!1&&(n.setInstance(void 0),n.setDataSourceLength(0),s=null)},content:o.createVNode(m,{modalConfig:r},null),...r.modalProps||{}})}function v(t){l.setExtraParams(t?.extraParams),p()}return{open:v,refresh:n.refresh,getAgGridInstance:n.getInstance,updateProps:d}}exports.useAgGridModal=w;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue"),O=require("../../../ap-modal/index.js");require("../../../ag-grid/index.js");const d=require("../utils.js"),P=require("./use-ag-grid-instance.js"),s=require("lodash-unified"),p=require("../constants.js"),L=require("./use-modal-title.js"),j=require("@aplus-frontend/antdv");require("../../../config-provider/index.js");require("../modal-layout/index.vue.js");require("../wrapper/index.vue.js");const F=require("../../../config-provider/hooks/use-locale.js"),G=require("../wrapper/index.vue2.js"),T=require("../modal-layout/index.vue2.js"),N=require("../../../ag-grid/index.vue.js");function V(n){let u,m=null,y=null;const g=new d.AsyncCallback,[b,q]=L.useModalTitle(),{t:x}=F.useLocale(),[a,S]=P.useAgGridInstance({onSelectedRows(e){q.setCount(e?.length||0)}}),w=d.genRequest(n.api,n.getRowKey,a.setDataSourceLength),C=e=>{const{title:t,width:o,modalProps:r,...c}=s.isFunction(e)?e(n):e;s.isEmpty(c)||y?.(c);const i=s.omitBy({title:t,width:o,modalProps:r},s.isUndefined);s.isEmpty(i)||m?.update(i)},f=s.isFunction(n.getRowKey)?n.getRowKey:e=>e[n.getRowKey],K=()=>{const e=n.mergeRule||"old",t=a.getSelectedRows()||[];return{keys:A(t),rows:t.map(c=>{const i=f(c);return e==="old"&&u?.[i]?u[i]:d.delRowKeyField(c)})}},R=async()=>{const e=K(),t=n.maxCount||1/0;return e.keys.length>t?(j.message.warning(x("ap.apTableModal.messageMaxCount",{maxCount:t})),Promise.reject()):(await n.beforeOk?.(e),n.finishCallback?.(e),g.resolve(e),e)},k=()=>{g.reject("modal is closed!")},M=l.defineComponent({name:"AgGridModalSelectContent",props:{modalConfig:{type:Object,required:!0},selectedRows:{type:Array,default:()=>[]}},setup(e){const t=l.reactive(e.modalConfig);return y=o=>{Object.assign(t,o)},()=>{const o=e.selectedRows?.map(r=>d.addRowKeyField(r,t.getRowKey));return l.createVNode(S,null,{default:()=>[l.createVNode(G.default,{rowHeight:t.rowHeight},{default:()=>[n.renderHeader?.(s.omit(a,"setInstance"),{updateProps:C}),l.createVNode(T.default,d.getModalLayoutConfig(t.modalLayout).props,{default:()=>[l.createVNode(N.default,{ref:a.setInstance,searchForm:{sortable:!1,resize:{target:"form"}},rowKey:s.isFunction(t.getRowKey)?p.ROW_KEY:t.getRowKey,request:w.request,style:{padding:"0px"},rowHeight:t.rowHeight,columns:t.columns,rowSelection:{defaultSelectedRows:o,preserveSelectedRowKeys:!0,type:t.mode||"checkbox",fixed:"left",columnWidth:38,disabled(r){return s.isFunction(t.disabledCheckbox)?t.disabledCheckbox(r,s.omit(a,"setInstance")):t.disabledCheckbox??!1}}},t.gridSlots)],...d.getModalLayoutConfig(t.modalLayout).slots})]})]})}}});function h(e){return l.createVNode(M,{modalConfig:n,selectedRows:e},null)}function v(){const e=Object.values(u||{}),t=h(e);m=O.ApModal.createModal({title:l.createVNode(b,{title:n.title,maxCount:n.maxCount||1/0},n.modalTitleSlots),width:n.width,destroyOnClose:!0,maskClosable:!1,onOk:R,onCancel:k,afterOpenChange(o){o===!1&&(a.setInstance(void 0),a.setDataSourceLength(0))},content:t,...n.modalProps||{}})}function A(e){return e?.map(f)||[]}function _(e,t,o=!1){if(u=e?.reduce((r,c)=>{const i=f(c);return r[i]=c,r},{}),w.setExtraParams(t?.extraParams),v(),o)return g.buildPromise()}function I(e,t){return _(e,t,!0)}return l.onUnmounted(()=>{g.reject("component is Unmounted!")}),{open:_,asyncOpen:I,refresh:a.refresh,getAgGridInstance:a.getInstance,genContent:h,validate:R,updateProps:C}}exports.useAgGridSelectModal=V;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { DefineComponent, ExtractPropTypes, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
2
|
+
export declare function useModalTitle(): readonly [ DefineComponent<ExtractPropTypes<{
|
|
3
|
+
title: {
|
|
4
|
+
type: any;
|
|
5
|
+
default: null;
|
|
6
|
+
};
|
|
7
|
+
maxCount: {
|
|
8
|
+
type: NumberConstructor;
|
|
9
|
+
required: true;
|
|
10
|
+
};
|
|
11
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
|
|
12
|
+
title: {
|
|
13
|
+
type: any;
|
|
14
|
+
default: null;
|
|
15
|
+
};
|
|
16
|
+
maxCount: {
|
|
17
|
+
type: NumberConstructor;
|
|
18
|
+
required: true;
|
|
19
|
+
};
|
|
20
|
+
}>> & Readonly<{}>, {
|
|
21
|
+
title: any;
|
|
22
|
+
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, {
|
|
23
|
+
readonly setCount: (data: number) => void;
|
|
24
|
+
}];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue");require("../../../config-provider/index.js");const n=require("../../../config-provider/hooks/use-locale.js");function r(){const a=t.ref(0),u=e=>{a.value=e};return[t.defineComponent({props:{title:{type:null,default:null},maxCount:{type:Number,required:!0}},setup(e,{slots:l}){const{t:o}=n.useLocale();return()=>t.createVNode("div",null,[e.title,l.default?l.default({maxCount:e.maxCount,count:a.value}):t.createVNode("span",{style:{color:"var(--ap-text-color-3)",fontSize:"12px",fontWeight:"normal",marginLeft:"12px"}},[isFinite(e.maxCount)?o("ap.apTableModal.titleSuffixOne",{maxCount:e.maxCount}):"",o("ap.apTableModal.titleSuffixTwo"),t.createVNode("span",{style:{color:"var(--ap-color-primary)"}},[a.value]),o("ap.apTableModal.titleSuffixThree")])])}}),{setCount:u}]}exports.useModalTitle=r;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./hooks/use-ag-grid-modal.js"),d=require("./hooks/use-ag-grid-select-modal.js"),r=require("./selected-items/index.js");exports.useAgGridModal=e.useAgGridModal;exports.useAgGridSelectModal=d.useAgGridSelectModal;exports.ApSelectedItems=r.ApSelectedItems;
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { StyleValue, VNodeChild } from 'vue';
|
|
2
|
+
import { AgGridColumnType, AgGridExpose, AgGridProps, AgGridSlots } from '../../ag-grid';
|
|
3
|
+
import { CreateModalFuncProps } from '../../ap-modal';
|
|
4
|
+
import { Recordable } from '../../type';
|
|
5
|
+
import { GridApi } from './hooks/use-ag-grid-instance';
|
|
6
|
+
export type GetRowKey<TableRowType> = ((record: TableRowType) => string | number) | string;
|
|
7
|
+
export type UpdatePropsFn<T> = (props: Partial<AgGridPreviewModalProps<T>> | ((props: AgGridPreviewModalProps<T>) => Partial<AgGridPreviewModalProps<T>>)) => void;
|
|
8
|
+
export type UpdateSelectPropsFn<T> = (props: Partial<AgGridSelectModalProps<T>> | ((props: AgGridSelectModalProps<T>) => Partial<AgGridSelectModalProps<T>>)) => void;
|
|
9
|
+
/** AgGridModal 基础类型 */
|
|
10
|
+
export interface AgGridModalBasicProps<TableRowType = any> {
|
|
11
|
+
title?: VNodeChild;
|
|
12
|
+
width?: string | number;
|
|
13
|
+
modalProps?: Omit<CreateModalFuncProps, 'content'>;
|
|
14
|
+
columns: AgGridColumnType<TableRowType, any>[];
|
|
15
|
+
getRowKey: GetRowKey<TableRowType>;
|
|
16
|
+
api?: (params: any) => Promise<RequestReturn<TableRowType>>;
|
|
17
|
+
/** 渲染头部信息 */
|
|
18
|
+
renderHeader?: (gridApi: Omit<GridApi, 'setInstance'>, modalApi: {
|
|
19
|
+
updateProps: UpdatePropsFn<TableRowType>;
|
|
20
|
+
}) => VNodeChild;
|
|
21
|
+
rowHeight?: number;
|
|
22
|
+
}
|
|
23
|
+
/** 刷新方式 */
|
|
24
|
+
export type RefreshType = 'reset' | 'submit' | 'submitWith';
|
|
25
|
+
/** 只读模式 */
|
|
26
|
+
export interface AgGridPreviewModalProps<RowType = any> extends AgGridModalBasicProps<RowType> {
|
|
27
|
+
/** ag-grid 插槽 */
|
|
28
|
+
gridSlots?: AgGridSlots<RowType>;
|
|
29
|
+
}
|
|
30
|
+
/** 只读模式返回值 */
|
|
31
|
+
export interface PreviewModalReturnType<RowType = any> {
|
|
32
|
+
/** 打开弹框 */
|
|
33
|
+
open(opt?: OpenOptions): void;
|
|
34
|
+
/** 刷新表格数据 */
|
|
35
|
+
refresh: (type: RefreshType) => void;
|
|
36
|
+
/** 获取ag-grid实例 */
|
|
37
|
+
getAgGridInstance: () => AgGridExpose | undefined;
|
|
38
|
+
/** 修改hook的props */
|
|
39
|
+
updateProps: UpdatePropsFn<RowType>;
|
|
40
|
+
}
|
|
41
|
+
export interface OpenOptions {
|
|
42
|
+
/** 发起网络请求携带的额外参数 */
|
|
43
|
+
extraParams?: Recordable;
|
|
44
|
+
}
|
|
45
|
+
/** 可选模式 */
|
|
46
|
+
export interface AgGridSelectModalProps<RowType = any> extends AgGridModalBasicProps<RowType> {
|
|
47
|
+
/** ag-grid 插槽 */
|
|
48
|
+
gridSlots?: AgGridSlots<RowType>;
|
|
49
|
+
/**
|
|
50
|
+
* 选择模式
|
|
51
|
+
* - radio: 单选模式
|
|
52
|
+
* - checkbox: 多选模式
|
|
53
|
+
* @default 'checkbox'
|
|
54
|
+
*/
|
|
55
|
+
mode?: 'radio' | 'checkbox';
|
|
56
|
+
/**
|
|
57
|
+
* 合并规则
|
|
58
|
+
* - old 老数据优先
|
|
59
|
+
* - new 新数据优先
|
|
60
|
+
* @default 'old'
|
|
61
|
+
*/
|
|
62
|
+
mergeRule?: 'old' | 'new';
|
|
63
|
+
/** 点击确认后执行的回调 */
|
|
64
|
+
finishCallback?: (data: OpenReturnType<RowType>) => void;
|
|
65
|
+
/** 最多选择多少条 */
|
|
66
|
+
maxCount?: number;
|
|
67
|
+
/** 禁用选项 */
|
|
68
|
+
disabledCheckbox?: boolean | ((record: RowType, actions: Omit<GridApi, 'setInstance'>) => boolean);
|
|
69
|
+
/** 额外的rowSelection配置 */
|
|
70
|
+
rowSelection?: Omit<AgGridProps['rowSelection'], 'disabled'>;
|
|
71
|
+
/** modal标题插槽 */
|
|
72
|
+
modalTitleSlots?: ModalTitleSlots;
|
|
73
|
+
/** 在finishCallback执行前执行,返回reject终止后续执行 */
|
|
74
|
+
beforeOk?: (data: OpenReturnType<RowType>) => Promise<any> | void;
|
|
75
|
+
/** 设置是否是复杂布局 */
|
|
76
|
+
modalLayout?: ModalLayoutConfig<RowType>;
|
|
77
|
+
}
|
|
78
|
+
export interface SelectModalReturnType<T = any> {
|
|
79
|
+
/** 打开弹框 */
|
|
80
|
+
open: (selectRows?: T[], options?: OpenOptions, isAsync?: boolean) => Promise<OpenReturnType<T>> | undefined;
|
|
81
|
+
/** 异步打开弹框 */
|
|
82
|
+
asyncOpen: (selectRows?: T[], options?: OpenOptions) => Promise<OpenReturnType<T>>;
|
|
83
|
+
/** 刷新表格数据 */
|
|
84
|
+
refresh: (type?: RefreshType) => void;
|
|
85
|
+
/** 获取表格实例 */
|
|
86
|
+
getAgGridInstance: () => AgGridExpose | undefined;
|
|
87
|
+
/** 获取原子化内容 */
|
|
88
|
+
genContent: (selectedRows?: T[]) => VNodeChild;
|
|
89
|
+
/** 获取数据并校验 */
|
|
90
|
+
validate: () => Promise<OpenReturnType<T>>;
|
|
91
|
+
/** 修改hook的props */
|
|
92
|
+
updateProps: UpdateSelectPropsFn<T>;
|
|
93
|
+
}
|
|
94
|
+
export interface RequestReturn<T = any> {
|
|
95
|
+
records: T[];
|
|
96
|
+
total: number;
|
|
97
|
+
}
|
|
98
|
+
/** open打开方法返回的值的类型 */
|
|
99
|
+
export interface OpenReturnType<RowType> {
|
|
100
|
+
keys: (string | number)[];
|
|
101
|
+
rows: RowType[];
|
|
102
|
+
}
|
|
103
|
+
/** modal-title slots */
|
|
104
|
+
export interface ModalTitleSlots {
|
|
105
|
+
/** 标题 suffix 插槽 */
|
|
106
|
+
default: (props: {
|
|
107
|
+
maxCount: number;
|
|
108
|
+
count: number;
|
|
109
|
+
}) => VNodeChild;
|
|
110
|
+
}
|
|
111
|
+
/** 弹框布局props */
|
|
112
|
+
export interface ModalLayoutProps {
|
|
113
|
+
/** 左侧标题 */
|
|
114
|
+
leftTitle?: string | VNodeChild;
|
|
115
|
+
/** 右侧内容样式 */
|
|
116
|
+
rightContentStyle?: StyleValue;
|
|
117
|
+
/** 中间分割线向上偏移量 */
|
|
118
|
+
dividerOffset?: number;
|
|
119
|
+
/** 是否有边框 */
|
|
120
|
+
bordered?: boolean;
|
|
121
|
+
}
|
|
122
|
+
/** modal-layout配置 */
|
|
123
|
+
export interface ModalLayoutConfig<T = any> extends ModalLayoutProps {
|
|
124
|
+
/** 右侧标题插槽 */
|
|
125
|
+
rightTitle?: (selectedCount: number) => any;
|
|
126
|
+
/** 右侧底部插槽 */
|
|
127
|
+
rightBottom?: (props: {
|
|
128
|
+
records: T[];
|
|
129
|
+
actions: {
|
|
130
|
+
deleteItem: (record: T) => void;
|
|
131
|
+
};
|
|
132
|
+
}) => any;
|
|
133
|
+
/** 已经选择item渲染, 选择项渲染插槽 */
|
|
134
|
+
renderSelectedItem: (props: {
|
|
135
|
+
record: T;
|
|
136
|
+
actions: {
|
|
137
|
+
deleteItem: (record: T) => void;
|
|
138
|
+
deleteCurrent: () => void;
|
|
139
|
+
};
|
|
140
|
+
}) => any;
|
|
141
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ModalLayoutProps } from '../interface';
|
|
2
|
+
import { DefineComponent, ComponentOptionsMixin, PublicProps, VNodeArrayChildren, VNode, RendererNode, RendererElement, ComponentProvideOptions } from 'vue';
|
|
3
|
+
type __VLS_Props = ModalLayoutProps & {
|
|
4
|
+
layoutType?: 'two-column';
|
|
5
|
+
};
|
|
6
|
+
declare function __VLS_template(): {
|
|
7
|
+
attrs: Partial<{}>;
|
|
8
|
+
slots: {
|
|
9
|
+
default?(_: {}): any;
|
|
10
|
+
default?(_: {}): any;
|
|
11
|
+
rightTitle?(_: {
|
|
12
|
+
count: number;
|
|
13
|
+
}): any;
|
|
14
|
+
renderSelectedItem?(_: {
|
|
15
|
+
record: any;
|
|
16
|
+
actions: {
|
|
17
|
+
deleteItem: (record: any) => void;
|
|
18
|
+
deleteCurrent: () => void;
|
|
19
|
+
};
|
|
20
|
+
}): any;
|
|
21
|
+
rightBottom?(_: {
|
|
22
|
+
records: any[];
|
|
23
|
+
actions: {
|
|
24
|
+
deleteItem: (record: any) => void;
|
|
25
|
+
};
|
|
26
|
+
}): any;
|
|
27
|
+
};
|
|
28
|
+
refs: {};
|
|
29
|
+
rootEl: any;
|
|
30
|
+
};
|
|
31
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
32
|
+
declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
33
|
+
leftTitle: string | number | boolean | void | VNodeArrayChildren | VNode<RendererNode, RendererElement, {
|
|
34
|
+
[key: string]: any;
|
|
35
|
+
}> | null;
|
|
36
|
+
layoutType: "two-column";
|
|
37
|
+
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
38
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
39
|
+
export default _default;
|
|
40
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
41
|
+
new (): {
|
|
42
|
+
$slots: S;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./index.vue2.js");exports.default=e.default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../../../config-provider/index.js");const u=require("../../ap-title/index.js"),s=require("@aplus-frontend/antdv"),y=require("../hooks/use-ag-grid-instance.js"),g=require("../../../config-provider/hooks/use-locale.js"),v=require("../../../config-provider/hooks/use-namespace.js"),S=e.defineComponent({__name:"index",props:{leftTitle:{type:[String,Object,Number,Boolean,null,Array],default:""},rightContentStyle:{type:[Boolean,null,String,Object,Array]},dividerOffset:{},bordered:{type:Boolean},layoutType:{default:void 0}},setup(c){const{t:i}=g.useLocale(),o=y.useAgGridModalInject(),r=e.computed(()=>o?.selectedRows?.value||[]),d=c,m=()=>{if(d.dividerOffset!=null)return{"--ag-grid-modal-layout-divider-offset":`${d.dividerOffset}px`}},p=()=>{o?.clearAllSelected()},n=t=>{o?.removeSelected(t)},{e:f,m:l}=v.useNamespace("ag-grid-modal");return(t,h)=>t.layoutType==="two-column"?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([e.unref(l)("table-layout"),t.bordered?e.unref(l)("bordered"):""]),style:e.normalizeStyle(m())},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(l)("table-layout-left"))},[t.leftTitle?(e.openBlock(),e.createBlock(e.unref(u.ApTitle),{key:0,style:{"margin-bottom":"16px"}},{prefix:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.h(e.Fragment,[t.leftTitle]))))]),_:1})):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(l)("table-layout-left-content"))},[e.renderSlot(t.$slots,"default")],2)],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(l)("table-layout-right")),style:e.normalizeStyle(t.rightContentStyle)},[e.createVNode(e.unref(u.ApTitle),null,{prefix:e.withCtx(()=>[e.renderSlot(t.$slots,"rightTitle",{count:r.value.length},()=>[e.createTextVNode(e.toDisplayString(`${e.unref(i)("ap.apTableModal.selected")} (${r.value.length})`),1)])]),suffix:e.withCtx(()=>[e.createVNode(e.unref(s.Button),{type:"link",style:{padding:"0px",height:"22px","border-width":"0px"},onClick:p},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("ap.apTableModal.clear")),1)]),_:1})]),_:3}),e.createElementVNode("div",{class:e.normalizeClass(e.unref(l)("table-layout-right-content"))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,a=>e.renderSlot(t.$slots,"renderSelectedItem",{key:a,record:a,actions:{deleteItem:n,deleteCurrent:()=>n(a)}})),128)),r.value.length===0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(f)("empty"))},[e.createVNode(e.unref(s.Empty),{image:e.unref(s.Empty).PRESENTED_IMAGE_SIMPLE},null,8,["image"])],2)):e.createCommentVNode("",!0)],2),e.createElementVNode("div",null,[e.renderSlot(t.$slots,"rightBottom",{records:r.value,actions:{deleteItem:n}})])],6)],6)):e.renderSlot(t.$slots,"default",{key:1})}});exports.default=S;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { StyleValue, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
style?: StyleValue;
|
|
4
|
+
};
|
|
5
|
+
declare function __VLS_template(): {
|
|
6
|
+
attrs: Partial<{}>;
|
|
7
|
+
slots: {
|
|
8
|
+
default?(_: {}): any;
|
|
9
|
+
};
|
|
10
|
+
refs: {};
|
|
11
|
+
rootEl: HTMLDivElement;
|
|
12
|
+
};
|
|
13
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
14
|
+
declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
15
|
+
clickDel: (...args: any[]) => void;
|
|
16
|
+
}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
17
|
+
onClickDel?: ((...args: any[]) => any) | undefined;
|
|
18
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
19
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
20
|
+
export default _default;
|
|
21
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
22
|
+
new (): {
|
|
23
|
+
$slots: S;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./default.vue2.js");exports.default=e.default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),o=require("@aplus-frontend/icon");require("../../../config-provider/index.js");const a=require("../../../config-provider/hooks/use-namespace.js"),c=e.defineComponent({__name:"default",props:{style:{type:[Boolean,null,String,Object,Array]}},emits:["clickDel"],setup(i,{emit:n}){const{e:t}=a.useNamespace("ap-selected-items"),s=n,r=()=>s("clickDel");return(l,u)=>(e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle(l.style),class:e.normalizeClass(e.unref(t)("default"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(t)("default-content"))},[e.renderSlot(l.$slots,"default")],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(t)("del-icon")),onClick:r},[e.createVNode(e.unref(o.IconApAdLineCloseDrawer))],2)],6))}});exports.default=c;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { CreateComponentPublicInstanceWithMixins, StyleValue, ComponentOptionsMixin, PublicProps, GlobalComponents, GlobalDirectives, ComponentProvideOptions, ComponentOptionsBase, VNodeProps, AllowedComponentProps, ComponentCustomProps } from 'vue';
|
|
2
|
+
export declare const ApSelectedItems: {
|
|
3
|
+
Default: {
|
|
4
|
+
new (...args: any[]): CreateComponentPublicInstanceWithMixins<Readonly<{
|
|
5
|
+
style?: StyleValue;
|
|
6
|
+
}> & Readonly<{
|
|
7
|
+
onClickDel?: ((...args: any[]) => any) | undefined;
|
|
8
|
+
}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
9
|
+
clickDel: (...args: any[]) => void;
|
|
10
|
+
}, PublicProps, {}, false, {}, {}, GlobalComponents, GlobalDirectives, string, {}, HTMLDivElement, ComponentProvideOptions, {
|
|
11
|
+
P: {};
|
|
12
|
+
B: {};
|
|
13
|
+
D: {};
|
|
14
|
+
C: {};
|
|
15
|
+
M: {};
|
|
16
|
+
Defaults: {};
|
|
17
|
+
}, Readonly<{
|
|
18
|
+
style?: StyleValue;
|
|
19
|
+
}> & Readonly<{
|
|
20
|
+
onClickDel?: ((...args: any[]) => any) | undefined;
|
|
21
|
+
}>, {}, {}, {}, {}, {}>;
|
|
22
|
+
__isFragment?: never;
|
|
23
|
+
__isTeleport?: never;
|
|
24
|
+
__isSuspense?: never;
|
|
25
|
+
} & ComponentOptionsBase<Readonly<{
|
|
26
|
+
style?: StyleValue;
|
|
27
|
+
}> & Readonly<{
|
|
28
|
+
onClickDel?: ((...args: any[]) => any) | undefined;
|
|
29
|
+
}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
30
|
+
clickDel: (...args: any[]) => void;
|
|
31
|
+
}, string, {}, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & VNodeProps & AllowedComponentProps & ComponentCustomProps & (new () => {
|
|
32
|
+
$slots: {
|
|
33
|
+
default?(_: {}): any;
|
|
34
|
+
};
|
|
35
|
+
});
|
|
36
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./default.vue.js");const e=require("./default.vue2.js"),t={Default:e.default};exports.ApSelectedItems=t;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@aplus-frontend/ui/theme/ag-grid-modal/selected-items.css';
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@aplus-frontend/ui/theme/ag-grid-modal/selected-items.less';
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@aplus-frontend/ui/theme/ag-grid-modal/index.css';
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@aplus-frontend/ui/theme/ag-grid-modal/index.less';
|
|
File without changes
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Recordable } from '../../type';
|
|
2
|
+
import { GetRowKey, ModalLayoutConfig, RequestReturn } from './interface';
|
|
3
|
+
import { VNodeChild, StyleValue } from 'vue';
|
|
4
|
+
export declare function genRequest(api: ((params: any) => Promise<RequestReturn<any>>) | undefined, gerRowKey: GetRowKey<any>, callback?: (length: number) => void): {
|
|
5
|
+
request: (params: any) => Promise<{
|
|
6
|
+
data: any[];
|
|
7
|
+
total: number;
|
|
8
|
+
}>;
|
|
9
|
+
setExtraParams: (params?: Recordable) => void;
|
|
10
|
+
};
|
|
11
|
+
export declare function addRowKeyField(row: any, gerRowKey: GetRowKey<any>): any;
|
|
12
|
+
export declare function delRowKeyField(row: any): any;
|
|
13
|
+
/** 解析props */
|
|
14
|
+
export declare function getModalLayoutConfig(props?: ModalLayoutConfig): {
|
|
15
|
+
props: {
|
|
16
|
+
readonly layoutType: "two-column" | undefined;
|
|
17
|
+
readonly leftTitle?: string | VNodeChild;
|
|
18
|
+
readonly rightContentStyle?: StyleValue;
|
|
19
|
+
readonly dividerOffset?: number;
|
|
20
|
+
readonly bordered?: boolean;
|
|
21
|
+
};
|
|
22
|
+
slots: {
|
|
23
|
+
renderSelectedItem: ((props: {
|
|
24
|
+
record: any;
|
|
25
|
+
actions: {
|
|
26
|
+
deleteItem: (record: any) => void;
|
|
27
|
+
deleteCurrent: () => void;
|
|
28
|
+
};
|
|
29
|
+
}) => any) | undefined;
|
|
30
|
+
rightTitle: ((selectedCount: number) => any) | undefined;
|
|
31
|
+
rightBottom: ((props: {
|
|
32
|
+
records: any[];
|
|
33
|
+
actions: {
|
|
34
|
+
deleteItem: (record: any) => void;
|
|
35
|
+
};
|
|
36
|
+
}) => any) | undefined;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* 异步回调
|
|
41
|
+
* buildPromise 构建异步回调
|
|
42
|
+
* resolve reject 兑现或拒绝回调
|
|
43
|
+
*/
|
|
44
|
+
export declare class AsyncCallback<T = any> {
|
|
45
|
+
private p;
|
|
46
|
+
private operateFn;
|
|
47
|
+
constructor();
|
|
48
|
+
buildPromise(): Promise<T>;
|
|
49
|
+
clear(): void;
|
|
50
|
+
/** 兑现回调 */
|
|
51
|
+
resolve(data: T): void;
|
|
52
|
+
/** 拒绝回调 */
|
|
53
|
+
reject(error?: string): void;
|
|
54
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./constants.js"),h=require("lodash-unified");function p(e,t,r){let n=null;return{request:async s=>{const i=e;if(!i)return r?.(0),{data:[],total:0};n&&(s=Object.assign(s,n));const{records:l,total:c}=await i(Object.assign({},s));return r?.(l.length||0),{data:l.map(d=>u(d,t)),total:c}},setExtraParams:s=>{n=s||null}}}function u(e,t){return h.isFunction(t)?{...e,[a.ROW_KEY]:t(e)}:e}function f(e){return Reflect.deleteProperty(e,a.ROW_KEY),e}function F(e){const{renderSelectedItem:t,rightTitle:r,rightBottom:n,...o}=e||{};return{props:{...o,layoutType:e&&"two-column"},slots:{renderSelectedItem:t,rightTitle:r,rightBottom:n}}}class y{constructor(){this.p=null,this.operateFn=null}buildPromise(){return this.operateFn&&this.operateFn.reject("reuse"),this.p=new Promise((t,r)=>{this.operateFn={reject:r,resolve:t}}),this.p}clear(){this.p=null,this.operateFn=null}resolve(t){this.operateFn&&(this.operateFn.resolve(t),this.clear())}reject(t){this.operateFn&&(this.operateFn.reject(t),this.clear())}}exports.AsyncCallback=y;exports.addRowKeyField=u;exports.delRowKeyField=f;exports.genRequest=p;exports.getModalLayoutConfig=F;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
rowHeight?: number;
|
|
4
|
+
};
|
|
5
|
+
declare function __VLS_template(): {
|
|
6
|
+
attrs: Partial<{}>;
|
|
7
|
+
slots: {
|
|
8
|
+
default?(_: {}): any;
|
|
9
|
+
};
|
|
10
|
+
refs: {};
|
|
11
|
+
rootEl: HTMLDivElement;
|
|
12
|
+
};
|
|
13
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
14
|
+
declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
15
|
+
rowHeight: number;
|
|
16
|
+
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
17
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
18
|
+
export default _default;
|
|
19
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
20
|
+
new (): {
|
|
21
|
+
$slots: S;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./index.vue2.js");exports.default=e.default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),t=require("../constants.js"),l=require("../hooks/use-ag-grid-instance.js"),s=e.defineComponent({__name:"index",props:{rowHeight:{default:40}},setup(n){const r=n,u=l.useAgGridModalInject(),i=e.computed(()=>u?.dataSourceLength?.value||0),c=e.computed(()=>i.value*r.rowHeight>400?t.LARGER_HEIGHT:t.SMALL_HEIGHT);return(o,a)=>(e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle({minHeight:e.unref(t.SMALL_HEIGHT),height:c.value,display:"flex",flexDirection:"column"})},[e.renderSlot(o.$slots,"default")],4))}});exports.default=s;
|
|
@@ -11,6 +11,7 @@ export declare function useCreateTableModal(props: UseCreateTableModalProps): {
|
|
|
11
11
|
readonly resetApTableData: () => void;
|
|
12
12
|
readonly getApTableInstance: () => {
|
|
13
13
|
submit: () => void;
|
|
14
|
+
submitWith: (resetCurrent?: boolean) => void;
|
|
14
15
|
reset: () => void;
|
|
15
16
|
refresh: () => void;
|
|
16
17
|
setSearchFormValues: (fields: Partial< Recordable>) => void;
|
|
@@ -9,6 +9,7 @@ export declare function useTableModal<TableRowType = Record<string, any>>(props:
|
|
|
9
9
|
resetApTableData: () => void;
|
|
10
10
|
getApTableInstance: () => {
|
|
11
11
|
submit: () => void;
|
|
12
|
+
submitWith: (resetCurrent?: boolean) => void;
|
|
12
13
|
reset: () => void;
|
|
13
14
|
refresh: () => void;
|
|
14
15
|
setSearchFormValues: (fields: Partial< Recordable>) => void;
|
|
@@ -8,6 +8,7 @@ export declare function useTableSelectModal<TableRowType = Record<string, any>>(
|
|
|
8
8
|
resetApTableData: () => void;
|
|
9
9
|
getApTableInstance: () => {
|
|
10
10
|
submit: () => void;
|
|
11
|
+
submitWith: (resetCurrent?: boolean) => void;
|
|
11
12
|
reset: () => void;
|
|
12
13
|
refresh: () => void;
|
|
13
14
|
setSearchFormValues: (fields: Partial< Recordable>) => void;
|
|
@@ -17,6 +17,7 @@ declare const ApTableModal: {
|
|
|
17
17
|
close: () => void;
|
|
18
18
|
getApTableInstance: () => {
|
|
19
19
|
submit: () => void;
|
|
20
|
+
submitWith: (resetCurrent?: boolean) => void;
|
|
20
21
|
reset: () => void;
|
|
21
22
|
refresh: () => void;
|
|
22
23
|
setSearchFormValues: (fields: Partial< Recordable>) => void;
|
|
@@ -128,6 +129,7 @@ declare const ApTableModal: {
|
|
|
128
129
|
close: () => void;
|
|
129
130
|
getApTableInstance: () => {
|
|
130
131
|
submit: () => void;
|
|
132
|
+
submitWith: (resetCurrent?: boolean) => void;
|
|
131
133
|
reset: () => void;
|
|
132
134
|
refresh: () => void;
|
|
133
135
|
setSearchFormValues: (fields: Partial< Recordable>) => void;
|
|
@@ -193,6 +195,7 @@ declare const ApTableModal: {
|
|
|
193
195
|
close: () => void;
|
|
194
196
|
getApTableInstance: () => {
|
|
195
197
|
submit: () => void;
|
|
198
|
+
submitWith: (resetCurrent?: boolean) => void;
|
|
196
199
|
reset: () => void;
|
|
197
200
|
refresh: () => void;
|
|
198
201
|
setSearchFormValues: (fields: Partial< Recordable>) => void;
|
|
@@ -10,6 +10,7 @@ declare const _default: DefineComponent<__VLS_Props, {
|
|
|
10
10
|
close: () => void;
|
|
11
11
|
getApTableInstance: () => {
|
|
12
12
|
submit: () => void;
|
|
13
|
+
submitWith: (resetCurrent?: boolean) => void;
|
|
13
14
|
reset: () => void;
|
|
14
15
|
refresh: () => void;
|
|
15
16
|
setSearchFormValues: (fields: Partial< Recordable>) => void;
|