vxe-pc-ui 4.6.9 → 4.6.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/es/button/src/button.js +2 -4
  2. package/es/form/render/index.js +2 -4
  3. package/es/form/src/form.js +97 -37
  4. package/es/form-design/src/form-view.js +1 -3
  5. package/es/icon/style.css +1 -1
  6. package/es/list-design/src/layout-preview.js +5 -7
  7. package/es/list-design/src/list-view.js +5 -7
  8. package/es/modal/src/modal.js +2 -4
  9. package/es/pager/src/pager.js +1 -3
  10. package/es/style.css +1 -1
  11. package/es/style.min.css +1 -1
  12. package/es/table-select/src/table-select.js +5 -7
  13. package/es/tabs/src/tabs.js +2 -6
  14. package/es/tree/src/tree.js +238 -173
  15. package/es/ui/index.js +3 -7
  16. package/es/ui/src/log.js +1 -1
  17. package/es/upload/src/upload.js +5 -7
  18. package/lib/button/src/button.js +2 -4
  19. package/lib/button/src/button.min.js +1 -1
  20. package/lib/form/render/index.js +2 -4
  21. package/lib/form/render/index.min.js +1 -1
  22. package/lib/form/src/form.js +95 -36
  23. package/lib/form/src/form.min.js +1 -1
  24. package/lib/form-design/src/form-view.js +1 -3
  25. package/lib/form-design/src/form-view.min.js +1 -1
  26. package/lib/icon/style/style.css +1 -1
  27. package/lib/icon/style/style.min.css +1 -1
  28. package/lib/index.umd.js +422 -275
  29. package/lib/index.umd.min.js +1 -1
  30. package/lib/list-design/src/layout-preview.js +5 -7
  31. package/lib/list-design/src/layout-preview.min.js +1 -1
  32. package/lib/list-design/src/list-view.js +5 -7
  33. package/lib/list-design/src/list-view.min.js +1 -1
  34. package/lib/modal/src/modal.js +2 -4
  35. package/lib/modal/src/modal.min.js +1 -1
  36. package/lib/pager/src/pager.js +1 -3
  37. package/lib/pager/src/pager.min.js +1 -1
  38. package/lib/style.css +1 -1
  39. package/lib/style.min.css +1 -1
  40. package/lib/table-select/src/table-select.js +5 -7
  41. package/lib/table-select/src/table-select.min.js +1 -1
  42. package/lib/tabs/src/tabs.js +2 -6
  43. package/lib/tabs/src/tabs.min.js +1 -1
  44. package/lib/tree/src/tree.js +293 -179
  45. package/lib/tree/src/tree.min.js +1 -1
  46. package/lib/ui/index.js +3 -7
  47. package/lib/ui/index.min.js +1 -1
  48. package/lib/ui/src/log.js +1 -1
  49. package/lib/ui/src/log.min.js +1 -1
  50. package/lib/upload/src/upload.js +5 -7
  51. package/lib/upload/src/upload.min.js +1 -1
  52. package/package.json +2 -2
  53. package/packages/button/src/button.ts +2 -4
  54. package/packages/form/render/index.ts +2 -4
  55. package/packages/form/src/form.ts +98 -35
  56. package/packages/form-design/src/form-view.ts +1 -3
  57. package/packages/list-design/src/layout-preview.ts +5 -7
  58. package/packages/list-design/src/list-view.ts +5 -7
  59. package/packages/modal/src/modal.ts +2 -4
  60. package/packages/pager/src/pager.ts +1 -3
  61. package/packages/table-select/src/table-select.ts +5 -7
  62. package/packages/tabs/src/tabs.ts +2 -6
  63. package/packages/tree/src/tree.ts +235 -172
  64. package/packages/ui/index.ts +2 -6
  65. package/packages/upload/src/upload.ts +5 -7
  66. package/types/components/tree.d.ts +7 -5
  67. /package/es/icon/{iconfont.1747279440023.ttf → iconfont.1747357691240.ttf} +0 -0
  68. /package/es/icon/{iconfont.1747279440023.woff → iconfont.1747357691240.woff} +0 -0
  69. /package/es/icon/{iconfont.1747279440023.woff2 → iconfont.1747357691240.woff2} +0 -0
  70. /package/es/{iconfont.1747279440023.ttf → iconfont.1747357691240.ttf} +0 -0
  71. /package/es/{iconfont.1747279440023.woff → iconfont.1747357691240.woff} +0 -0
  72. /package/es/{iconfont.1747279440023.woff2 → iconfont.1747357691240.woff2} +0 -0
  73. /package/lib/icon/style/{iconfont.1747279440023.ttf → iconfont.1747357691240.ttf} +0 -0
  74. /package/lib/icon/style/{iconfont.1747279440023.woff → iconfont.1747357691240.woff} +0 -0
  75. /package/lib/icon/style/{iconfont.1747279440023.woff2 → iconfont.1747357691240.woff2} +0 -0
  76. /package/lib/{iconfont.1747279440023.ttf → iconfont.1747357691240.ttf} +0 -0
  77. /package/lib/{iconfont.1747279440023.woff → iconfont.1747357691240.woff} +0 -0
  78. /package/lib/{iconfont.1747279440023.woff2 → iconfont.1747357691240.woff2} +0 -0
@@ -133,13 +133,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
133
133
  (0, _vue.onMounted)(() => {
134
134
  updateTableData();
135
135
  });
136
- if (process.env.NODE_ENV === 'development') {
137
- (0, _vue.nextTick)(() => {
138
- if (!VxeTableGridComponent) {
139
- (0, _log.errLog)('vxe.error.reqComp', ['vxe-grid']);
140
- }
141
- });
142
- }
136
+ (0, _vue.nextTick)(() => {
137
+ if (!VxeTableGridComponent) {
138
+ (0, _log.errLog)('vxe.error.reqComp', ['vxe-grid']);
139
+ }
140
+ });
143
141
  return () => {
144
142
  const {
145
143
  searchFormData,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../ui"),_log=require("../../ui/src/log"),_form=_interopRequireDefault(require("../../form/src/form")),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"ListDesignLayoutView",props:{},emits:[],setup(){const s=_ui.VxeUI.getComponent("VxeGrid");var e=(0,_vue.inject)("$xeListDesign",null);if(!e)return()=>[];const r=e["reactData"],u=(0,_vue.ref)(),n=(0,_vue.ref)([]),o=(0,_vue.computed)(()=>{var e=r["searchFormItems"];return e.length?e.concat([{field:"active",title:"",folding:!1,collapseNode:e.some(e=>e.folding),itemRender:{name:"VxeButtonGroup",options:[{content:"查询",icon:"vxe-icon-search",status:"primary",type:"submit"},{content:"重置",icon:"vxe-icon-repeat",type:"reset"}]}}]):e}),a=(0,_vue.computed)(()=>{var{formData:e,listTableColumns:t}=r,{showSeq:e,actionButtonList:i}=e;const l=[];return e&&l.push({type:"seq",field:"_seq",width:70}),t.forEach(e=>{l.push({field:e.field,title:e.title,visible:e.visible,width:e.width})}),i&&i.length&&l.push({field:"_active",title:(0,_ui.getI18n)("vxe.table.actionTitle"),fixed:"right",width:"auto",cellRender:{name:"VxeButtonGroup",options:[]}}),l}),v=({column:t,resizeWidth:e})=>{var i=r["listTableColumns"],i=_xeUtils.default.findTree(i,e=>e.field===t.field,{children:"children"});i&&(i=i["item"],i.width=e)},t=()=>{const e=r["listTableColumns"];var t=[{},{}];t.forEach(t=>{e.forEach(e=>{t[e.field]="-"})}),n.value=t},i=(0,_vue.ref)(0);return(0,_vue.watch)(()=>r.listTableColumns?r.listTableColumns.length:-1,()=>{i.value++}),(0,_vue.watch)(()=>r.listTableColumns,()=>{i.value++}),(0,_vue.watch)(i,()=>{t()}),(0,_vue.onMounted)(()=>{t()}),"development"===process.env.NODE_ENV&&(0,_vue.nextTick)(()=>{s||(0,_log.errLog)("vxe.error.reqComp",["vxe-grid"])}),()=>{var{searchFormData:e,searchFormItems:t}=r,i=o.value,l=a.value;return(0,_vue.h)("div",{class:"vxe-list-design--preview"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-wrapper"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-search"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-title"},(0,_ui.getI18n)("vxe.listDesign.searchTitle")),t.length?(0,_vue.h)(_form.default,{data:e,items:i}):(0,_vue.h)("div",{class:"vxe-list-design--field-configs-empty-data"},[(0,_vue.h)("span",{},(0,_ui.getI18n)("vxe.listDesign.search.emptyText"))])]),(0,_vue.h)("div",{class:"vxe-list-design--preview-table"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-title"},(0,_ui.getI18n)("vxe.listDesign.listTitle")),s?(0,_vue.h)(s,{ref:u,columns:l,data:n.value,showOverflow:!0,border:!0,columnConfig:{minWidth:"auto",resizable:!0},rowConfig:{isHover:!0},scrollX:{enabled:!1},scrollY:{enabled:!1},onResizableChange:v}):(0,_vue.createCommentVNode)()])])])}}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../ui"),_log=require("../../ui/src/log"),_form=_interopRequireDefault(require("../../form/src/form")),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"ListDesignLayoutView",props:{},emits:[],setup(){const s=_ui.VxeUI.getComponent("VxeGrid");var e=(0,_vue.inject)("$xeListDesign",null);if(!e)return()=>[];const r=e["reactData"],u=(0,_vue.ref)(),n=(0,_vue.ref)([]),o=(0,_vue.computed)(()=>{var e=r["searchFormItems"];return e.length?e.concat([{field:"active",title:"",folding:!1,collapseNode:e.some(e=>e.folding),itemRender:{name:"VxeButtonGroup",options:[{content:"查询",icon:"vxe-icon-search",status:"primary",type:"submit"},{content:"重置",icon:"vxe-icon-repeat",type:"reset"}]}}]):e}),a=(0,_vue.computed)(()=>{var{formData:e,listTableColumns:t}=r,{showSeq:e,actionButtonList:i}=e;const l=[];return e&&l.push({type:"seq",field:"_seq",width:70}),t.forEach(e=>{l.push({field:e.field,title:e.title,visible:e.visible,width:e.width})}),i&&i.length&&l.push({field:"_active",title:(0,_ui.getI18n)("vxe.table.actionTitle"),fixed:"right",width:"auto",cellRender:{name:"VxeButtonGroup",options:[]}}),l}),v=({column:t,resizeWidth:e})=>{var i=r["listTableColumns"],i=_xeUtils.default.findTree(i,e=>e.field===t.field,{children:"children"});i&&(i=i["item"],i.width=e)},t=()=>{const e=r["listTableColumns"];var t=[{},{}];t.forEach(t=>{e.forEach(e=>{t[e.field]="-"})}),n.value=t},i=(0,_vue.ref)(0);return(0,_vue.watch)(()=>r.listTableColumns?r.listTableColumns.length:-1,()=>{i.value++}),(0,_vue.watch)(()=>r.listTableColumns,()=>{i.value++}),(0,_vue.watch)(i,()=>{t()}),(0,_vue.onMounted)(()=>{t()}),(0,_vue.nextTick)(()=>{s||(0,_log.errLog)("vxe.error.reqComp",["vxe-grid"])}),()=>{var{searchFormData:e,searchFormItems:t}=r,i=o.value,l=a.value;return(0,_vue.h)("div",{class:"vxe-list-design--preview"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-wrapper"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-search"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-title"},(0,_ui.getI18n)("vxe.listDesign.searchTitle")),t.length?(0,_vue.h)(_form.default,{data:e,items:i}):(0,_vue.h)("div",{class:"vxe-list-design--field-configs-empty-data"},[(0,_vue.h)("span",{},(0,_ui.getI18n)("vxe.listDesign.search.emptyText"))])]),(0,_vue.h)("div",{class:"vxe-list-design--preview-table"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-title"},(0,_ui.getI18n)("vxe.listDesign.listTitle")),s?(0,_vue.h)(s,{ref:u,columns:l,data:n.value,showOverflow:!0,border:!0,columnConfig:{minWidth:"auto",resizable:!0},rowConfig:{isHover:!0},scrollX:{enabled:!1},scrollY:{enabled:!1},onResizableChange:v}):(0,_vue.createCommentVNode)()])])])}}});
@@ -501,13 +501,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
501
501
  loadConfig(props.config);
502
502
  }
503
503
  (0, _vue.provide)('$xeListView', $xeListView);
504
- if (process.env.NODE_ENV === 'development') {
505
- (0, _vue.nextTick)(() => {
506
- if (!VxeTableGridComponent) {
507
- (0, _log.errLog)('vxe.error.reqComp', ['vxe-grid']);
508
- }
509
- });
510
- }
504
+ (0, _vue.nextTick)(() => {
505
+ if (!VxeTableGridComponent) {
506
+ (0, _log.errLog)('vxe.error.reqComp', ['vxe-grid']);
507
+ }
508
+ });
511
509
  $xeListView.renderVN = renderVN;
512
510
  return $xeListView;
513
511
  },
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../ui"),_log=require("../../ui/src/log"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("../render/util"),_loading=_interopRequireDefault(require("../../loading/src/loading")),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeListView",props:{size:{type:String,default:()=>(0,_ui.getConfig)().listView.size||(0,_ui.getConfig)().size},config:Object,height:{type:[String,Number],default:()=>(0,_ui.getConfig)().listView.height},loading:Boolean,formData:Object,actionButtons:Array,gridOptions:Object,gridEvents:Object,viewRender:Object},emits:["cell-action","update:formData","update:actionButtons"],setup(l,e){const s=_ui.VxeUI.getComponent("VxeGrid"),{emit:u,slots:c}=e;var t=_xeUtils.default.uniqueId();const a=(0,_vue.ref)(),d=(0,_vue.ref)(),f=(0,_ui.useSize)(l)["computeSize"],m=(0,_vue.reactive)({formConfig:{},searchFormData:{},searchFormItems:[],listTableColumns:[],tableColumns:[],footerData:[{}]}),g=(0,_vue.computed)(()=>{var e=l["gridOptions"],{formConfig:t,tableColumns:i,searchFormData:o,searchFormItems:n,footerData:r}=m,t=t["showStatistics"],e=e||{},s=Object.assign({minWidth:120},e.columnConfig);let a;return e.proxyConfig&&(a=Object.assign({autoLoad:!1},e.proxyConfig)),Object.assign({},e,{columns:i,columnConfig:s,showFooter:t,footerData:t?r:null,formConfig:{data:o,items:n},proxyConfig:a})}),v=(0,_vue.computed)(()=>{var e=l["gridEvents"];const i={};return _xeUtils.default.each(e,(e,t)=>{i[_xeUtils.default.camelCase("on-"+t)]=e}),i}),i={refElem:a,refGrid:d},o={computeSize:f},p={xID:t,props:l,context:e,reactData:m,getRefMaps:()=>i,getComputeMaps:()=>o},_=[],n=[],h=(_ui.renderer.forEach((e,t)=>{var i,e=e["createListDesignSettingActionButtonConfig"];e&&(i={name:t},("custom"===(t=Object.assign((0,_util.createListDesignActionButton)({code:t}),e(i))).type?n:_).push(t))}),e=>{if(e&&e.length){const i={};var t=e.map(e=>(i[e.field]=null,{field:e.field,title:e.title,folding:e.folding,itemRender:e.itemRender}));return t.push({field:"active",title:"",folding:!1,collapseNode:e.some(e=>e.folding),itemRender:{name:"VxeButtonGroup",options:[{content:"查询",icon:"vxe-icon-search",status:"primary",type:"submit"},{content:"重置",icon:"vxe-icon-repeat",type:"reset"}]}}),{items:t,data:i}}return{items:[],data:{}}}),C=e=>e?e.map(e=>({field:e.field,title:e.title,visible:!!e.visible,width:e.width,cellRender:_xeUtils.default.clone(e.cellRender)})):[];const r=e=>{if(e){var{formConfig:e,searchItems:t,listColumns:i}=e;m.formConfig=e||{};{e=t||[];const{data:o,items:n}=h(e);m.searchFormData=o,m.searchFormItems=n,u("update:formData",o),(0,_vue.nextTick)()}{t=i||[];const r=m["formConfig"],s=t||[],{columns:a,actionButtons:l}=x(s,r);m.listTableColumns=s,m.tableColumns=a,u("update:actionButtons",l),(0,_vue.nextTick)(()=>{const e=g.value;if(e.proxyConfig)b("reload")})}}return(0,_vue.nextTick)()},x=(e,t)=>{const i=Object.assign({},t);var{showSeq:t,actionButtonList:o}=i;const n=[],r={},s=c.cellAction,a=c.footerCell;if(t&&n.push({type:"seq",field:"_seq",fixed:"left",width:70}),C(e||[]).forEach(e=>{e=Object.assign({},e);i.showStatistics&&a&&(e.slots={footer:e=>a(Object.assign({},e))}),e.field&&(r[e.field]=null),n.push(e)}),o&&o.length){t={field:"_active",title:(0,_ui.getI18n)("vxe.table.actionTitle"),fixed:"right",width:"auto"};const l=[];o.forEach(t=>{if("custom"===t.type)return{content:t.name,name:t.code,icon:t.icon};var e,i=_.find(e=>e.code===t.code);let o=t.name,n=t.icon,r=t.status,s=t.permissionCode,a=t.classify;i&&(e=i.name,n=i.icon||"",r=i.status||"",s=i.permissionCode||"",a=i.classify||"",o=_xeUtils.default.toValueString(_xeUtils.default.isFunction(e)?e({name:i.code||""}):e)),a&&"cellButton"!==a||l.push({content:o,name:t.code,icon:n,status:r,permissionCode:s})}),s?t.slots={default(e){return s(Object.assign(Object.assign({},e),{buttons:l}))}}:t.cellRender={name:"VxeButtonGroup",props:{mode:"text"},options:l,events:{click(e,t){var i=t["option"];y("cell-action",Object.assign(Object.assign({},e),{button:i}),t.$event)}}},n.push(t)}return{rowRecord:r,columns:n,actionButtons:o}};const b=(e,...t)=>{var i=d.value;return i?i.commitProxy(e,...t):Promise.resolve()},y=(e,t,i)=>{u(e,(0,_ui.createEvent)(i,{$listView:p},t))};t={dispatchEvent:y,clearConfig:()=>(u("update:formData",{}),Object.assign(m,{formConfig:{},searchFormData:{},searchFormItems:[],listTableColumns:[],tableColumns:[],footerData:[{}]}),(0,_vue.nextTick)()),loadConfig:r,parseConfig:e=>{var{formConfig:e,searchItems:t,listColumns:i}=e||{},{columns:i,rowRecord:e,actionButtons:o}=x(i||[],e||m.formConfig),{data:t,items:n}=(t=t||[],h(t||[]));return{formData:t,formItems:n,tableColumns:i,tableRecord:e,actionButtons:o}},getTableRecord:e=>{var t;return _xeUtils.default.isArray(e)?(t=x(e,m.formConfig)["rowRecord"],t):e?({formConfig:t,listColumns:e}=e,e=x(e||[],t||m.formConfig)["rowRecord"],e):{}},getQueryFilter:()=>{const{searchFormData:o,searchFormItems:e}=m,n=[];var t={items:n,type:"and"};return d.value&&e.forEach(e=>{var t,e=e["field"],i=o[e];i&&((t=[]).push({field:e,value:i,match:"exact",type:_xeUtils.default.isArray(i)?"array":""}),n.push({condition:t,type:"and"}))}),t},commitProxy:b};Object.assign(p,t,{});return(0,_vue.watch)(()=>l.config,e=>{r(e||{})}),l.config&&r(l.config),(0,_vue.provide)("$xeListView",p),"development"===process.env.NODE_ENV&&(0,_vue.nextTick)(()=>{s||(0,_log.errLog)("vxe.error.reqComp",["vxe-grid"])}),p.renderVN=()=>{var{height:e,loading:t}=l,i=f.value,o=c.grid,n=g.value,r=v.value;return(0,_vue.h)("div",{ref:a,class:["vxe-list-view",{["size--"+i]:i,"is--loading":t}],style:e?{height:(0,_dom.toCssUnit)(e)}:null},[(0,_vue.h)("div",{class:"vxe-list-view--body"},[o?(0,_vue.h)("div",{class:"vxe-list-view--grid-wrapper"},(0,_vn.getSlotVNs)(o({$listView:p}))):s?(0,_vue.h)(s,Object.assign({},n,r,{ref:d}),Object.assign({},c,{default:void 0})):(0,_ui.renderEmptyElement)(p)]),(0,_vue.h)(_loading.default,{class:"vxe-list-view--loading",modelValue:t})])},p},render(){return this.renderVN()}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../ui"),_log=require("../../ui/src/log"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("../render/util"),_loading=_interopRequireDefault(require("../../loading/src/loading")),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeListView",props:{size:{type:String,default:()=>(0,_ui.getConfig)().listView.size||(0,_ui.getConfig)().size},config:Object,height:{type:[String,Number],default:()=>(0,_ui.getConfig)().listView.height},loading:Boolean,formData:Object,actionButtons:Array,gridOptions:Object,gridEvents:Object,viewRender:Object},emits:["cell-action","update:formData","update:actionButtons"],setup(l,e){const s=_ui.VxeUI.getComponent("VxeGrid"),{emit:u,slots:c}=e;var t=_xeUtils.default.uniqueId();const a=(0,_vue.ref)(),d=(0,_vue.ref)(),f=(0,_ui.useSize)(l)["computeSize"],m=(0,_vue.reactive)({formConfig:{},searchFormData:{},searchFormItems:[],listTableColumns:[],tableColumns:[],footerData:[{}]}),g=(0,_vue.computed)(()=>{var e=l["gridOptions"],{formConfig:t,tableColumns:i,searchFormData:o,searchFormItems:n,footerData:r}=m,t=t["showStatistics"],e=e||{},s=Object.assign({minWidth:120},e.columnConfig);let a;return e.proxyConfig&&(a=Object.assign({autoLoad:!1},e.proxyConfig)),Object.assign({},e,{columns:i,columnConfig:s,showFooter:t,footerData:t?r:null,formConfig:{data:o,items:n},proxyConfig:a})}),v=(0,_vue.computed)(()=>{var e=l["gridEvents"];const i={};return _xeUtils.default.each(e,(e,t)=>{i[_xeUtils.default.camelCase("on-"+t)]=e}),i}),i={refElem:a,refGrid:d},o={computeSize:f},p={xID:t,props:l,context:e,reactData:m,getRefMaps:()=>i,getComputeMaps:()=>o},_=[],n=[],h=(_ui.renderer.forEach((e,t)=>{var i,e=e["createListDesignSettingActionButtonConfig"];e&&(i={name:t},("custom"===(t=Object.assign((0,_util.createListDesignActionButton)({code:t}),e(i))).type?n:_).push(t))}),e=>{if(e&&e.length){const i={};var t=e.map(e=>(i[e.field]=null,{field:e.field,title:e.title,folding:e.folding,itemRender:e.itemRender}));return t.push({field:"active",title:"",folding:!1,collapseNode:e.some(e=>e.folding),itemRender:{name:"VxeButtonGroup",options:[{content:"查询",icon:"vxe-icon-search",status:"primary",type:"submit"},{content:"重置",icon:"vxe-icon-repeat",type:"reset"}]}}),{items:t,data:i}}return{items:[],data:{}}}),C=e=>e?e.map(e=>({field:e.field,title:e.title,visible:!!e.visible,width:e.width,cellRender:_xeUtils.default.clone(e.cellRender)})):[];const r=e=>{if(e){var{formConfig:e,searchItems:t,listColumns:i}=e;m.formConfig=e||{};{e=t||[];const{data:o,items:n}=h(e);m.searchFormData=o,m.searchFormItems=n,u("update:formData",o),(0,_vue.nextTick)()}{t=i||[];const r=m["formConfig"],s=t||[],{columns:a,actionButtons:l}=x(s,r);m.listTableColumns=s,m.tableColumns=a,u("update:actionButtons",l),(0,_vue.nextTick)(()=>{const e=g.value;if(e.proxyConfig)b("reload")})}}return(0,_vue.nextTick)()},x=(e,t)=>{const i=Object.assign({},t);var{showSeq:t,actionButtonList:o}=i;const n=[],r={},s=c.cellAction,a=c.footerCell;if(t&&n.push({type:"seq",field:"_seq",fixed:"left",width:70}),C(e||[]).forEach(e=>{e=Object.assign({},e);i.showStatistics&&a&&(e.slots={footer:e=>a(Object.assign({},e))}),e.field&&(r[e.field]=null),n.push(e)}),o&&o.length){t={field:"_active",title:(0,_ui.getI18n)("vxe.table.actionTitle"),fixed:"right",width:"auto"};const l=[];o.forEach(t=>{if("custom"===t.type)return{content:t.name,name:t.code,icon:t.icon};var e,i=_.find(e=>e.code===t.code);let o=t.name,n=t.icon,r=t.status,s=t.permissionCode,a=t.classify;i&&(e=i.name,n=i.icon||"",r=i.status||"",s=i.permissionCode||"",a=i.classify||"",o=_xeUtils.default.toValueString(_xeUtils.default.isFunction(e)?e({name:i.code||""}):e)),a&&"cellButton"!==a||l.push({content:o,name:t.code,icon:n,status:r,permissionCode:s})}),s?t.slots={default(e){return s(Object.assign(Object.assign({},e),{buttons:l}))}}:t.cellRender={name:"VxeButtonGroup",props:{mode:"text"},options:l,events:{click(e,t){var i=t["option"];y("cell-action",Object.assign(Object.assign({},e),{button:i}),t.$event)}}},n.push(t)}return{rowRecord:r,columns:n,actionButtons:o}};const b=(e,...t)=>{var i=d.value;return i?i.commitProxy(e,...t):Promise.resolve()},y=(e,t,i)=>{u(e,(0,_ui.createEvent)(i,{$listView:p},t))};t={dispatchEvent:y,clearConfig:()=>(u("update:formData",{}),Object.assign(m,{formConfig:{},searchFormData:{},searchFormItems:[],listTableColumns:[],tableColumns:[],footerData:[{}]}),(0,_vue.nextTick)()),loadConfig:r,parseConfig:e=>{var{formConfig:e,searchItems:t,listColumns:i}=e||{},{columns:i,rowRecord:e,actionButtons:o}=x(i||[],e||m.formConfig),{data:t,items:n}=(t=t||[],h(t||[]));return{formData:t,formItems:n,tableColumns:i,tableRecord:e,actionButtons:o}},getTableRecord:e=>{var t;return _xeUtils.default.isArray(e)?(t=x(e,m.formConfig)["rowRecord"],t):e?({formConfig:t,listColumns:e}=e,e=x(e||[],t||m.formConfig)["rowRecord"],e):{}},getQueryFilter:()=>{const{searchFormData:o,searchFormItems:e}=m,n=[];var t={items:n,type:"and"};return d.value&&e.forEach(e=>{var t,e=e["field"],i=o[e];i&&((t=[]).push({field:e,value:i,match:"exact",type:_xeUtils.default.isArray(i)?"array":""}),n.push({condition:t,type:"and"}))}),t},commitProxy:b};Object.assign(p,t,{});return(0,_vue.watch)(()=>l.config,e=>{r(e||{})}),l.config&&r(l.config),(0,_vue.provide)("$xeListView",p),(0,_vue.nextTick)(()=>{s||(0,_log.errLog)("vxe.error.reqComp",["vxe-grid"])}),p.renderVN=()=>{var{height:e,loading:t}=l,i=f.value,o=c.grid,n=g.value,r=v.value;return(0,_vue.h)("div",{ref:a,class:["vxe-list-view",{["size--"+i]:i,"is--loading":t}],style:e?{height:(0,_dom.toCssUnit)(e)}:null},[(0,_vue.h)("div",{class:"vxe-list-view--body"},[o?(0,_vue.h)("div",{class:"vxe-list-view--grid-wrapper"},(0,_vn.getSlotVNs)(o({$listView:p}))):s?(0,_vue.h)(s,Object.assign({},n,r,{ref:d}),Object.assign({},c,{default:void 0})):(0,_ui.renderEmptyElement)(p)]),(0,_vue.h)(_loading.default,{class:"vxe-list-view--loading",modelValue:t})])},p},render(){return this.renderVN()}});
@@ -1450,10 +1450,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
1450
1450
  }
1451
1451
  });
1452
1452
  (0, _vue.onMounted)(() => {
1453
- if (process.env.NODE_ENV === 'development') {
1454
- if (props.type === 'modal' && props.showFooter && !(props.showConfirmButton || props.showCancelButton || slots.footer)) {
1455
- (0, _log.warnLog)('vxe.modal.footPropErr');
1456
- }
1453
+ if (props.type === 'modal' && props.showFooter && !(props.showConfirmButton || props.showCancelButton || slots.footer)) {
1454
+ (0, _log.warnLog)('vxe.modal.footPropErr');
1457
1455
  }
1458
1456
  (0, _vue.nextTick)(() => {
1459
1457
  if (props.storage && !props.id) {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.allActiveModals=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_ui=require("../../ui"),_button=_interopRequireDefault(require("../../button/src/button")),_index=_interopRequireDefault(require("../../loading/index")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const allActiveModals=exports.allActiveModals=[],msgQueue=[],notifyQueue=[],lockScrollAttrKey="data-vxe-lock-scroll",lockScrollCssWidthKey="--vxe-ui-modal-lock-scroll-view-width";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeModal",props:{modelValue:Boolean,id:String,type:{type:String,default:"modal"},loading:{type:Boolean,default:null},status:String,iconStatus:String,className:String,top:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.top},position:[String,Object],title:String,duration:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.duration},content:[Number,String],showCancelButton:{type:Boolean,default:null},cancelButtonText:{type:String,default:()=>(0,_ui.getConfig)().modal.cancelButtonText},showConfirmButton:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showConfirmButton},confirmButtonText:{type:String,default:()=>(0,_ui.getConfig)().modal.confirmButtonText},lockView:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.lockView},lockScroll:Boolean,mask:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.mask},maskClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.maskClosable},escClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.escClosable},cancelClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.cancelClosable},confirmClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.confirmClosable},resize:Boolean,showHeader:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showHeader},showFooter:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showFooter},showZoom:Boolean,zoomConfig:Object,showMaximize:{type:Boolean,default:()=>(0,_utils.handleBooleanDefaultValue)((0,_ui.getConfig)().modal.showMaximize)},showMinimize:{type:Boolean,default:()=>(0,_utils.handleBooleanDefaultValue)((0,_ui.getConfig)().modal.showMinimize)},showClose:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showClose},dblclickZoom:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.dblclickZoom},width:[Number,String],height:[Number,String],minWidth:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.minWidth},minHeight:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.minHeight},zIndex:Number,marginSize:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.marginSize},fullscreen:Boolean,draggable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.draggable},remember:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.remember},destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.destroyOnClose},showTitleOverflow:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showTitleOverflow},transfer:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.transfer},storage:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.storage},storageKey:{type:String,default:()=>(0,_ui.getConfig)().modal.storageKey},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.padding},size:{type:String,default:()=>(0,_ui.getConfig)().modal.size||(0,_ui.getConfig)().size},beforeHideMethod:Function,slots:Object,message:[Number,String],animat:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.animat}},emits:["update:modelValue","show","hide","before-hide","close","confirm","cancel","zoom","resize","move"],setup(C,e){const{slots:N,emit:s}=e,a=_xeUtils.default.uniqueId(),o=(0,_vue.inject)("$xeModal",null),I=(0,_vue.inject)("$xeDrawer",null),L=(0,_vue.inject)("$xeTable",null),A=(0,_vue.inject)("$xeForm",null),k=(0,_ui.useSize)(C)["computeSize"],B=(0,_vue.reactive)({initialized:!1,visible:!1,contentVisible:!1,modalTop:0,modalZindex:0,prevZoomStatus:"",zoomStatus:"",revertLocat:null,prevLocat:null,firstOpen:!0,resizeFlag:1}),t={msgTimeout:void 0},M=(0,_vue.ref)(),O=(0,_vue.ref)(),T=(0,_vue.ref)(),n=(0,_vue.ref)(),u=(0,_vue.ref)(),$={refElem:M},Z=(0,_vue.computed)(()=>{var e=C["transfer"];if(null===e){var t=(0,_ui.getConfig)().modal.transfer;if(_xeUtils.default.isBoolean(t))return t;if(L||o||I||A)return!0}return e}),E=(0,_vue.computed)(()=>"message"===C.type||"notification"===C.type),U=(0,_vue.computed)(()=>"minimize"===B.zoomStatus),H=(0,_vue.computed)(()=>"maximize"===B.zoomStatus),l=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().modal.zoomConfig,C.zoomConfig)),j={computeSize:k,computeZoomOpts:l},V={xID:a,props:C,context:e,reactData:B,internalData:t,getRefMaps:()=>$,getComputeMaps:()=>j};const z=()=>{return O.value},d=()=>{var{width:e,height:t}=C,o=z();return o&&(o.style.width=e?(0,_dom.toCssUnit)(e):"",o.style.height=t?(0,_dom.toCssUnit)(t):""),(0,_vue.nextTick)()},r=()=>{var e=C["zIndex"],t=B["modalZindex"];e?B.modalZindex=e:t<(0,_utils.getLastZIndex)()&&(B.modalZindex=(0,_utils.nextZIndex)())},c=()=>(0,_vue.nextTick)().then(()=>{var o=C["position"],i=_xeUtils.default.toNumber(C.marginSize),l=z();if(l){var a=document.documentElement.clientWidth||document.body.clientWidth,s=document.documentElement.clientHeight||document.body.clientHeight,n="center"===o,{top:o,left:u}=_xeUtils.default.isString(o)?{top:o,left:o}:Object.assign({},o),r=n||"center"===o;let e="",t="";t=u&&!(n||"center"===u)?isNaN(u)?u:u+"px":Math.max(i,a/2-l.offsetWidth/2)+"px",e=o&&!r?isNaN(o)?o:o+"px":Math.max(i,s/2-l.offsetHeight/2)+"px",l.style.top=e,l.style.left=t}}),v=()=>{(0,_vue.nextTick)(()=>{var e=C["type"],e="notification"===e?notifyQueue:msgQueue;let o=0;e.forEach(e=>{var t=e.getBox();t&&(o+=_xeUtils.default.toNumber(e.props.top),e.reactData.modalTop=o,o+=t.clientHeight)})})},m=()=>{var e=C["type"],e="notification"===e?notifyQueue:msgQueue;-1<e.indexOf(V)&&_xeUtils.default.remove(e,e=>e===V),v()},i=e=>{const t=C["remember"];var o=B["visible"];const i=E.value;var l=C.beforeHideMethod||(0,_ui.getConfig)().modal.beforeHideMethod;const a={type:e};return o&&Promise.resolve(l?l(a):null).then(e=>{_xeUtils.default.isError(e)||(i&&m(),B.contentVisible=!1,t||y(),_xeUtils.default.remove(allActiveModals,e=>e===V),w("before-hide",a,null),setTimeout(()=>{B.visible=!1,s("update:modelValue",!1),w("hide",a,null)},200),h())}).catch(e=>e),(0,_vue.nextTick)()},W=e=>{var t="close";w(t,{type:t},e),i(t)},K=e=>{var t=C["confirmClosable"],o="confirm";w(o,{type:o},e),t&&i(o)},q=e=>{var t=C["cancelClosable"],o="cancel";w(o,{type:o},e),t&&i(o)},f=e=>{var t=(0,_ui.getConfig)().version,e=_xeUtils.default.toStringJSON(localStorage.getItem(e)||"");return e&&e._v===t?e:{_v:t}},S=()=>{var{id:e,storage:t,storageKey:o}=C,{zoomStatus:i,revertLocat:l}=B;i||e&&t&&(i=z())&&((t=f(o))[e]=[i.style.left,i.style.top,i.style.width,i.style.height].concat(l?[l.left,l.top,l.width,l.height]:[]).map(e=>e?_xeUtils.default.toNumber(e):"").join(","),localStorage.setItem(o,_xeUtils.default.toJSONString(t)))},g=()=>{const{minimizeLayout:e,minimizeMaxSize:t,minimizeHorizontalOffset:s,minimizeVerticalOffset:n,minimizeOffsetMethod:u}=l.value,r="horizontal"===e,m=B.zoomStatus,o=[],i=[],d=(allActiveModals.forEach(e=>{e.xID!==V.xID&&"modal"===e.props.type&&"minimize"===e.reactData.zoomStatus&&("horizontal"===e.getComputeMaps().computeZoomOpts.value.minimizeLayout?o:i).push(e)}),r?o:i);return t&&d.length>=t?(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:(0,_ui.getI18n)("vxe.modal.miniMaxSize",[t])}),Promise.resolve({status:!1})):(B.prevZoomStatus=m,B.zoomStatus="minimize",(0,_vue.nextTick)().then(()=>{var e=z();if(!e)return{status:!1};var t=T.value;if(!t)return{status:!1};var o=(0,_dom.getDomNode)()["visibleHeight"],i=(m||(B.revertLocat={top:e.offsetTop,left:e.offsetLeft,width:e.offsetWidth+(e.style.width?0:1),height:e.offsetHeight+(e.style.height?0:1)}),_xeUtils.default[r?"max":"min"](d,e=>{e=e.getBox();return e?_xeUtils.default.toNumber(e.style[r?"left":"top"]):0}));let l=o-t.offsetHeight-16,a=16;if(i){o=i.getBox();if(o){i=_xeUtils.default.toNumber(o.style.left),o=_xeUtils.default.toNumber(o.style.top);let e={};e=r?Object.assign({},s):Object.assign({},n),a=i+_xeUtils.default.toNumber(e.left),l=o+_xeUtils.default.toNumber(e.top),u&&(e=u({$modal:V,left:a,top:l}),a=_xeUtils.default.toNumber(e.left),l=_xeUtils.default.toNumber(e.top))}}return Object.assign(e.style,{top:l+"px",left:a+"px",width:"200px",height:t.offsetHeight+"px"}),S(),{status:!0}}))},p=()=>{const l=B.zoomStatus;return B.prevZoomStatus=l,B.zoomStatus="maximize",(0,_vue.nextTick)().then(()=>{var e,t,o,i=z();return i&&(l||(e=_xeUtils.default.toNumber(C.marginSize),t=document.documentElement.clientWidth||document.body.clientWidth,o=document.documentElement.clientHeight||document.body.clientHeight,B.revertLocat={top:Math.max(e,o/2-i.offsetHeight/2),left:Math.max(e,t/2-i.offsetWidth/2),width:i.offsetWidth+(i.style.width?0:1),height:i.offsetHeight+(i.style.height?0:1)}),Object.assign(i.style,{top:"0",left:"0",width:"100%",height:"100%"})),S(),{status:!0}})},_=()=>{var e=C["duration"];-1!==e&&(t.msgTimeout=setTimeout(()=>i("close"),_xeUtils.default.toNumber(e)))},h=()=>{var e=document.documentElement,t=e.getAttribute(lockScrollAttrKey);t&&((t=t.split(",").filter(e=>e!==a)).length?e.setAttribute(lockScrollAttrKey,t.join(",")):(e.removeAttribute(lockScrollAttrKey),e.style.removeProperty(lockScrollCssWidthKey)))},x=()=>{const{remember:m,showFooter:o}=C;var e,{initialized:t,visible:i}=B,l=E.value;return t||(B.initialized=!0),i||(t=C.lockScroll,i=E.value,t&&!i&&(t=document.documentElement,i=document.body.clientWidth,(e=(e=t.getAttribute(lockScrollAttrKey))?e.split(","):[]).includes(a)||(e.push(a),t.setAttribute(lockScrollAttrKey,e.join(","))),t.style.setProperty(lockScrollCssWidthKey,i+"px")),B.visible=!0,B.contentVisible=!1,r(),allActiveModals.push(V),setTimeout(()=>{B.contentVisible=!0,(0,_vue.nextTick)(()=>{o&&(e=n.value,t=u.value,e=e||t)&&e.focus();var e,t={type:""};s("update:modelValue",!0),w("show",t,null)})},10),l?(-1===(e="notification"===(e=C.type)?notifyQueue:msgQueue).indexOf(V)&&e.push(V),v(),_()):(0,_vue.nextTick)(()=>{var e,t,o,i,l,a,s,n,u=C["fullscreen"],r=B["firstOpen"];r?(B.firstOpen=!1,(()=>{var{id:e,storage:t,storageKey:o}=C;return!!(e&&t&&f(o)[e])})()?({id:r,storage:s,storageKey:n}=C,r&&s&&(s=f(n)[r])&&(n=z(),[r,s,e,t,o,i,l,a]=s.split(","),n&&(r&&(n.style.left=r+"px"),s&&(n.style.top=s+"px"),e&&(n.style.width=e+"px"),t)&&(n.style.height=t+"px"),o)&&i&&(B.revertLocat={left:o,top:i,width:l,height:a})):u?(0,_vue.nextTick)(()=>p()):(d(),c().then(()=>{setTimeout(()=>c(),20)}))):m||(d(),c().then(()=>{setTimeout(()=>c(),20)}))})),(0,_vue.nextTick)()},P=e=>{var t=M.value;C.maskClosable&&e.target===t&&i("mask")},F=()=>{var e=t["msgTimeout"];e&&E.value&&(clearTimeout(e),t.msgTimeout=void 0)},Y=()=>{var e=t["msgTimeout"];e||E.value&&_()},X=e=>{if(_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE)){const t=_xeUtils.default.max(allActiveModals,e=>e.reactData.modalZindex);t&&setTimeout(()=>{t===V&&t.props.escClosable&&(w("close",{type:"exit"},e),i("exit"))},10)}};const y=()=>(B.prevZoomStatus=B.zoomStatus,(B.zoomStatus="",_vue.nextTick)().then(()=>{var e,t=B["revertLocat"];return t?(e=z(),B.revertLocat=null,e&&Object.assign(e.style,{top:t.top+"px",left:t.left+"px",width:t.width+"px",height:t.height+"px"}),S(),(0,_vue.nextTick)().then(()=>({status:!0}))):{status:!1}})),b=t=>{const o=B["zoomStatus"];return new Promise(e=>{if(t)return"maximize"===t?void e(p()):"minimize"===t?void e(g()):void e(y());e((o?y:p)())}).then(()=>B.zoomStatus||"revert")},Q=t=>{var{zoomStatus:e,prevZoomStatus:o}=B;return b("minimize"===e?o||"revert":"minimize").then(e=>{e={type:e};w("zoom",e,t)})},D=t=>b().then(e=>{e={type:e};w("zoom",e,t)});const R=()=>{const t=B["modalZindex"];allActiveModals.some(e=>e.reactData.visible&&e.reactData.modalZindex>t)&&r()},J=e=>{const t=C["storage"];var o=B["zoomStatus"];const n=_xeUtils.default.toNumber(C.marginSize),u=z();if(u&&"maximize"!==o&&0===e.button&&!(0,_dom.getEventTargetNode)(e,u,"trigger--btn").flag){e.preventDefault();const r=e.clientX-u.offsetLeft,m=e.clientY-u.offsetTop,{visibleHeight:d,visibleWidth:c}=(0,_dom.getDomNode)();document.onmousemove=e=>{e.preventDefault();var t=u.offsetWidth,o=u.offsetHeight,i=n,t=c-t-n-1,l=n,o=d-o-n-1;let a=e.clientX-r,s=e.clientY-m;(a=a>t?t:a)<i&&(a=i),(s=s>o?o:s)<l&&(s=l),u.style.left=a+"px",u.style.top=s+"px",u.className=u.className.replace(/\s?is--drag/,"")+" is--drag",w("move",{type:"move"},e),B.resizeFlag++},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null,t&&(0,_vue.nextTick)(()=>{S()}),B.resizeFlag++,setTimeout(()=>{u.className=u.className.replace(/\s?is--drag/,"")},50)}}},G=e=>{e.preventDefault();const a=C["storage"],{visibleHeight:s,visibleWidth:n}=(0,_dom.getDomNode)(),u=_xeUtils.default.toNumber(C.marginSize);const r=e.target.getAttribute("type"),m=_xeUtils.default.toNumber(C.minWidth),d=_xeUtils.default.toNumber(C.minHeight),c=n,v=s,f=z(),g=f.clientWidth,p=f.clientHeight,_=e.clientX,h=e.clientY,x=f.offsetTop,y=f.offsetLeft,b={type:"resize"};document.onmousemove=e=>{e.preventDefault();let t,o,i,l;switch(r){case"wl":t=_-e.clientX,i=t+g,y-t>u&&i>m&&(f.style.width=`${i<c?i:c}px`,f.style.left=y-t+"px");break;case"swst":t=_-e.clientX,o=h-e.clientY,i=t+g,l=o+p,y-t>u&&i>m&&(f.style.width=`${i<c?i:c}px`,f.style.left=y-t+"px"),x-o>u&&l>d&&(f.style.height=`${l<v?l:v}px`,f.style.top=x-o+"px");break;case"swlb":t=_-e.clientX,o=e.clientY-h,i=t+g,l=o+p,y-t>u&&i>m&&(f.style.width=`${i<c?i:c}px`,f.style.left=y-t+"px"),x+l+u<s&&l>d&&(f.style.height=`${l<v?l:v}px`);break;case"st":o=h-e.clientY,l=p+o,x-o>u&&l>d&&(f.style.height=`${l<v?l:v}px`,f.style.top=x-o+"px");break;case"wr":t=e.clientX-_,i=t+g,y+i+u<n&&i>m&&(f.style.width=`${i<c?i:c}px`);break;case"sest":t=e.clientX-_,o=h-e.clientY,i=t+g,l=o+p,y+i+u<n&&i>m&&(f.style.width=`${i<c?i:c}px`),x-o>u&&l>d&&(f.style.height=`${l<v?l:v}px`,f.style.top=x-o+"px");break;case"selb":t=e.clientX-_,o=e.clientY-h,i=t+g,l=o+p,y+i+u<n&&i>m&&(f.style.width=`${i<c?i:c}px`),x+l+u<s&&l>d&&(f.style.height=`${l<v?l:v}px`);break;case"sb":o=e.clientY-h,l=o+p,x+l+u<s&&l>d&&(f.style.height=`${l<v?l:v}px`)}f.className=f.className.replace(/\s?is--drag/,"")+" is--drag",a&&S(),w("resize",b,e)},document.onmouseup=()=>{B.revertLocat=null,document.onmousemove=null,document.onmouseup=null,setTimeout(()=>{f.className=f.className.replace(/\s?is--drag/,"")},50)}},w=(e,t,o)=>{s(e,(0,_ui.createEvent)(o,{$modal:V},t))},ee=(e={dispatchEvent:w,open:x,close(){return i("close")},getBox:z,getPosition:()=>{if(!E.value){var e=z();if(e)return{top:e.offsetTop,left:e.offsetLeft}}return null},setPosition:(e,t)=>{var o;return E.value||(o=z())&&(_xeUtils.default.isNumber(e)&&(o.style.top=e+"px"),_xeUtils.default.isNumber(t))&&(o.style.left=t+"px"),(0,_vue.nextTick)()},isMinimized:()=>"minimize"===B.zoomStatus,isMaximized:()=>"maximize"===B.zoomStatus,zoom(){return b()},minimize(){return B.visible?g():Promise.resolve({status:!1})},maximize(){return B.visible?p():Promise.resolve({status:!1})},revert(){return B.visible?y():Promise.resolve({status:!1})}},Object.assign(V,e),()=>{var{slots:e={},showClose:t,showZoom:o,showMaximize:i,showMinimize:l,title:a}=C,s=B["zoomStatus"],n=N.title||e.title,e=N.corner||e.corner,u=U.value,r=H.value;return[(0,_vue.h)("div",{class:"vxe-modal--header-title"},n?(0,_vn.getSlotVNs)(n({$modal:V,minimized:u,maximized:r})):a?(0,_utils.getFuncText)(a):(0,_ui.getI18n)("vxe.alert.title")),(0,_vue.h)("div",{class:"vxe-modal--header-right"},[e&&!u?(0,_vue.h)("div",{class:"vxe-modal--corner-wrapper"},(0,_vn.getSlotVNs)(e({$modal:V}))):(0,_ui.renderEmptyElement)(V),(_xeUtils.default.isBoolean(l)?l:o)?(0,_vue.h)("div",{class:["vxe-modal--zoom-btn","trigger--btn"],title:(0,_ui.getI18n)("vxe.modal.zoom"+("minimize"===s?"Out":"Min")),onClick:Q},[(0,_vue.h)("i",{class:"minimize"===s?(0,_ui.getIcon)().MODAL_ZOOM_REVERT:(0,_ui.getIcon)().MODAL_ZOOM_MIN})]):(0,_ui.renderEmptyElement)(V),(_xeUtils.default.isBoolean(i)?i:o)&&"minimize"!==s?(0,_vue.h)("div",{class:["vxe-modal--zoom-btn","trigger--btn"],title:(0,_ui.getI18n)("vxe.modal.zoom"+("maximize"===s?"Out":"In")),onClick:D},[(0,_vue.h)("i",{class:"maximize"===s?(0,_ui.getIcon)().MODAL_ZOOM_OUT:(0,_ui.getIcon)().MODAL_ZOOM_IN})]):(0,_ui.renderEmptyElement)(V),t?(0,_vue.h)("div",{class:["vxe-modal--close-btn","trigger--btn"],title:(0,_ui.getI18n)("vxe.modal.close"),onClick:W},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().MODAL_CLOSE})]):(0,_ui.renderEmptyElement)(V)])]}),te=()=>{var{slots:e={},showCancelButton:t,showConfirmButton:o,type:i,loading:l}=C,a=N.leftfoot||e.leftfoot,e=N.rightfoot||e.rightfoot,s=[];return(_xeUtils.default.isBoolean(t)?t:"confirm"===i)&&s.push((0,_vue.h)(_button.default,{key:1,ref:u,content:C.cancelButtonText||(0,_ui.getI18n)("vxe.button.cancel"),onClick:q})),(_xeUtils.default.isBoolean(o)?o:"confirm"===i||"alert"===i)&&s.push((0,_vue.h)(_button.default,{key:2,ref:n,loading:l,status:"primary",content:C.confirmButtonText||(0,_ui.getI18n)("vxe.button.confirm"),onClick:K})),(0,_vue.h)("div",{class:"vxe-modal--footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-modal--footer-left"},a?(0,_vn.getSlotVNs)(a({$modal:V})):[]),(0,_vue.h)("div",{class:"vxe-modal--footer-right"},e?(0,_vn.getSlotVNs)(e({$modal:V})):s)])};return V.renderVN=()=>{var{slots:e={},className:t,type:o,animat:i,draggable:l,iconStatus:a,position:s,loading:n,destroyOnClose:u,status:r,lockScroll:m,padding:d,lockView:c,mask:v,resize:f}=C,{initialized:g,modalTop:p,contentVisible:_,visible:h,zoomStatus:x}=B,e=N.aside||e.aside,y=k.value,b=E.value,z=U.value,S=Z.value,w={};return b&&(w.onMouseover=F,w.onMouseout=Y),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!S||!g},[(0,_vue.h)("div",Object.assign({ref:M,class:["vxe-modal--wrapper","type--"+o,"zoom--"+(x||"revert"),t||"",s?"pos--"+s:"",{["size--"+y]:y,["status--"+r]:r,"is--padding":d,"is--animat":i,"lock--scroll":m,"lock--view":c,"is--draggable":l,"is--resize":f,"is--mask":v,"is--visible":_,"is--active":h,"is--loading":n}],style:{zIndex:B.modalZindex,top:p?p+"px":null},onClick:P},w),[(0,_vue.h)("div",{ref:O,class:"vxe-modal--box",onMousedown:R},[!b&&!e||z?(0,_ui.renderEmptyElement)(V):(0,_vue.h)("div",{class:"vxe-modal--aside"},e?(0,_vn.getSlotVNs)(e({$modal:V})):[r||a?(0,_vue.h)("div",{class:"vxe-modal--status-wrapper"},[(0,_vue.h)("i",{class:["vxe-modal--status-icon",a||(0,_ui.getIcon)()[("MODAL_"+r).toLocaleUpperCase()]]})]):(0,_ui.renderEmptyElement)(V)]),(0,_vue.h)("div",{class:"vxe-modal--container"},!B.initialized||u&&!B.visible?[]:[(()=>{var e,{slots:t={},showZoom:o,showMaximize:i,draggable:l}=C,t=N.header||t.header;return C.showHeader?(e={},l&&(e.onMousedown=J),(_xeUtils.default.isBoolean(i)?i:o)&&C.dblclickZoom&&"modal"===C.type&&(e.onDblclick=D),(0,_vue.h)("div",Object.assign({ref:T,class:["vxe-modal--header",{"is--ellipsis":C.showTitleOverflow}]},e),t?(0,_vn.getSlotVNs)(t({$modal:V})):ee())):(0,_ui.renderEmptyElement)(V)})(),(()=>{var{slots:e={},status:t,message:o,iconStatus:i}=C,o=C.content||o,l=E.value,a=N.default||e.default,s=N.left||e.left,e=N.right||e.right,n=[];return l||!t&&!i||n.push((0,_vue.h)("div",{class:"vxe-modal--status-wrapper"},[(0,_vue.h)("i",{class:["vxe-modal--status-icon",i||(0,_ui.getIcon)()[("MODAL_"+t).toLocaleUpperCase()]]})])),n.push((0,_vue.h)("div",{class:"vxe-modal--content"},a?(0,_vn.getSlotVNs)(a({$modal:V})):(0,_utils.getFuncText)(o))),(0,_vue.h)("div",{class:"vxe-modal--body"},[s?(0,_vue.h)("div",{class:"vxe-modal--body-left"},(0,_vn.getSlotVNs)(s({$modal:V}))):(0,_ui.renderEmptyElement)(V),(0,_vue.h)("div",{class:"vxe-modal--body-default"},n),e?(0,_vue.h)("div",{class:"vxe-modal--body-right"},(0,_vn.getSlotVNs)(e({$modal:V}))):(0,_ui.renderEmptyElement)(V),l?(0,_ui.renderEmptyElement)(V):(0,_vue.h)(_index.default,{class:"vxe-modal--loading",modelValue:C.loading})])})(),(()=>{var{slots:e={}}=C,e=N.footer||e.footer;return C.showFooter?(0,_vue.h)("div",{class:"vxe-modal--footer"},e?(0,_vn.getSlotVNs)(e({$modal:V})):[te()]):(0,_ui.renderEmptyElement)(V)})(),!b&&f?(0,_vue.h)("span",{class:"vxe-modal--resize"},["wl","wr","swst","sest","st","swlb","selb","sb"].map(e=>(0,_vue.h)("span",{class:e+"-resize",type:e,onMousedown:G}))):(0,_ui.renderEmptyElement)(V)])])])])},(0,_vue.watch)(()=>C.width,d),(0,_vue.watch)(()=>C.height,d),(0,_vue.watch)(()=>C.modelValue,e=>{e?x():i("model")}),(0,_vue.onMounted)(()=>{"development"===process.env.NODE_ENV&&"modal"===C.type&&C.showFooter&&!(C.showConfirmButton||C.showCancelButton||N.footer)&&(0,_log.warnLog)("vxe.modal.footPropErr"),(0,_vue.nextTick)(()=>{C.storage&&!C.id&&(0,_log.errLog)("vxe.error.reqProp",["modal.id"]),C.modelValue&&x(),d()}),C.escClosable&&_ui.globalEvents.on(V,"keydown",X)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(V,"keydown"),m(),h()}),(0,_vue.provide)("$xeModal",V),V},render(){return this.renderVN()}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.allActiveModals=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_ui=require("../../ui"),_button=_interopRequireDefault(require("../../button/src/button")),_index=_interopRequireDefault(require("../../loading/index")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const allActiveModals=exports.allActiveModals=[],msgQueue=[],notifyQueue=[],lockScrollAttrKey="data-vxe-lock-scroll",lockScrollCssWidthKey="--vxe-ui-modal-lock-scroll-view-width";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeModal",props:{modelValue:Boolean,id:String,type:{type:String,default:"modal"},loading:{type:Boolean,default:null},status:String,iconStatus:String,className:String,top:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.top},position:[String,Object],title:String,duration:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.duration},content:[Number,String],showCancelButton:{type:Boolean,default:null},cancelButtonText:{type:String,default:()=>(0,_ui.getConfig)().modal.cancelButtonText},showConfirmButton:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showConfirmButton},confirmButtonText:{type:String,default:()=>(0,_ui.getConfig)().modal.confirmButtonText},lockView:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.lockView},lockScroll:Boolean,mask:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.mask},maskClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.maskClosable},escClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.escClosable},cancelClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.cancelClosable},confirmClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.confirmClosable},resize:Boolean,showHeader:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showHeader},showFooter:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showFooter},showZoom:Boolean,zoomConfig:Object,showMaximize:{type:Boolean,default:()=>(0,_utils.handleBooleanDefaultValue)((0,_ui.getConfig)().modal.showMaximize)},showMinimize:{type:Boolean,default:()=>(0,_utils.handleBooleanDefaultValue)((0,_ui.getConfig)().modal.showMinimize)},showClose:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showClose},dblclickZoom:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.dblclickZoom},width:[Number,String],height:[Number,String],minWidth:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.minWidth},minHeight:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.minHeight},zIndex:Number,marginSize:{type:[Number,String],default:()=>(0,_ui.getConfig)().modal.marginSize},fullscreen:Boolean,draggable:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.draggable},remember:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.remember},destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.destroyOnClose},showTitleOverflow:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.showTitleOverflow},transfer:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.transfer},storage:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.storage},storageKey:{type:String,default:()=>(0,_ui.getConfig)().modal.storageKey},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.padding},size:{type:String,default:()=>(0,_ui.getConfig)().modal.size||(0,_ui.getConfig)().size},beforeHideMethod:Function,slots:Object,message:[Number,String],animat:{type:Boolean,default:()=>(0,_ui.getConfig)().modal.animat}},emits:["update:modelValue","show","hide","before-hide","close","confirm","cancel","zoom","resize","move"],setup(C,e){const{slots:k,emit:s}=e,a=_xeUtils.default.uniqueId(),o=(0,_vue.inject)("$xeModal",null),I=(0,_vue.inject)("$xeDrawer",null),L=(0,_vue.inject)("$xeTable",null),A=(0,_vue.inject)("$xeForm",null),N=(0,_ui.useSize)(C)["computeSize"],B=(0,_vue.reactive)({initialized:!1,visible:!1,contentVisible:!1,modalTop:0,modalZindex:0,prevZoomStatus:"",zoomStatus:"",revertLocat:null,prevLocat:null,firstOpen:!0,resizeFlag:1}),t={msgTimeout:void 0},M=(0,_vue.ref)(),T=(0,_vue.ref)(),O=(0,_vue.ref)(),n=(0,_vue.ref)(),u=(0,_vue.ref)(),$={refElem:M},Z=(0,_vue.computed)(()=>{var e=C["transfer"];if(null===e){var t=(0,_ui.getConfig)().modal.transfer;if(_xeUtils.default.isBoolean(t))return t;if(L||o||I||A)return!0}return e}),E=(0,_vue.computed)(()=>"message"===C.type||"notification"===C.type),U=(0,_vue.computed)(()=>"minimize"===B.zoomStatus),H=(0,_vue.computed)(()=>"maximize"===B.zoomStatus),l=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().modal.zoomConfig,C.zoomConfig)),j={computeSize:N,computeZoomOpts:l},V={xID:a,props:C,context:e,reactData:B,internalData:t,getRefMaps:()=>$,getComputeMaps:()=>j};const z=()=>{return T.value},d=()=>{var{width:e,height:t}=C,o=z();return o&&(o.style.width=e?(0,_dom.toCssUnit)(e):"",o.style.height=t?(0,_dom.toCssUnit)(t):""),(0,_vue.nextTick)()},r=()=>{var e=C["zIndex"],t=B["modalZindex"];e?B.modalZindex=e:t<(0,_utils.getLastZIndex)()&&(B.modalZindex=(0,_utils.nextZIndex)())},c=()=>(0,_vue.nextTick)().then(()=>{var o=C["position"],i=_xeUtils.default.toNumber(C.marginSize),l=z();if(l){var a=document.documentElement.clientWidth||document.body.clientWidth,s=document.documentElement.clientHeight||document.body.clientHeight,n="center"===o,{top:o,left:u}=_xeUtils.default.isString(o)?{top:o,left:o}:Object.assign({},o),r=n||"center"===o;let e="",t="";t=u&&!(n||"center"===u)?isNaN(u)?u:u+"px":Math.max(i,a/2-l.offsetWidth/2)+"px",e=o&&!r?isNaN(o)?o:o+"px":Math.max(i,s/2-l.offsetHeight/2)+"px",l.style.top=e,l.style.left=t}}),v=()=>{(0,_vue.nextTick)(()=>{var e=C["type"],e="notification"===e?notifyQueue:msgQueue;let o=0;e.forEach(e=>{var t=e.getBox();t&&(o+=_xeUtils.default.toNumber(e.props.top),e.reactData.modalTop=o,o+=t.clientHeight)})})},m=()=>{var e=C["type"],e="notification"===e?notifyQueue:msgQueue;-1<e.indexOf(V)&&_xeUtils.default.remove(e,e=>e===V),v()},i=e=>{const t=C["remember"];var o=B["visible"];const i=E.value;var l=C.beforeHideMethod||(0,_ui.getConfig)().modal.beforeHideMethod;const a={type:e};return o&&Promise.resolve(l?l(a):null).then(e=>{_xeUtils.default.isError(e)||(i&&m(),B.contentVisible=!1,t||y(),_xeUtils.default.remove(allActiveModals,e=>e===V),w("before-hide",a,null),setTimeout(()=>{B.visible=!1,s("update:modelValue",!1),w("hide",a,null)},200),h())}).catch(e=>e),(0,_vue.nextTick)()},W=e=>{var t="close";w(t,{type:t},e),i(t)},K=e=>{var t=C["confirmClosable"],o="confirm";w(o,{type:o},e),t&&i(o)},q=e=>{var t=C["cancelClosable"],o="cancel";w(o,{type:o},e),t&&i(o)},f=e=>{var t=(0,_ui.getConfig)().version,e=_xeUtils.default.toStringJSON(localStorage.getItem(e)||"");return e&&e._v===t?e:{_v:t}},S=()=>{var{id:e,storage:t,storageKey:o}=C,{zoomStatus:i,revertLocat:l}=B;i||e&&t&&(i=z())&&((t=f(o))[e]=[i.style.left,i.style.top,i.style.width,i.style.height].concat(l?[l.left,l.top,l.width,l.height]:[]).map(e=>e?_xeUtils.default.toNumber(e):"").join(","),localStorage.setItem(o,_xeUtils.default.toJSONString(t)))},g=()=>{const{minimizeLayout:e,minimizeMaxSize:t,minimizeHorizontalOffset:s,minimizeVerticalOffset:n,minimizeOffsetMethod:u}=l.value,r="horizontal"===e,m=B.zoomStatus,o=[],i=[],d=(allActiveModals.forEach(e=>{e.xID!==V.xID&&"modal"===e.props.type&&"minimize"===e.reactData.zoomStatus&&("horizontal"===e.getComputeMaps().computeZoomOpts.value.minimizeLayout?o:i).push(e)}),r?o:i);return t&&d.length>=t?(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:(0,_ui.getI18n)("vxe.modal.miniMaxSize",[t])}),Promise.resolve({status:!1})):(B.prevZoomStatus=m,B.zoomStatus="minimize",(0,_vue.nextTick)().then(()=>{var e=z();if(!e)return{status:!1};var t=O.value;if(!t)return{status:!1};var o=(0,_dom.getDomNode)()["visibleHeight"],i=(m||(B.revertLocat={top:e.offsetTop,left:e.offsetLeft,width:e.offsetWidth+(e.style.width?0:1),height:e.offsetHeight+(e.style.height?0:1)}),_xeUtils.default[r?"max":"min"](d,e=>{e=e.getBox();return e?_xeUtils.default.toNumber(e.style[r?"left":"top"]):0}));let l=o-t.offsetHeight-16,a=16;if(i){o=i.getBox();if(o){i=_xeUtils.default.toNumber(o.style.left),o=_xeUtils.default.toNumber(o.style.top);let e={};e=r?Object.assign({},s):Object.assign({},n),a=i+_xeUtils.default.toNumber(e.left),l=o+_xeUtils.default.toNumber(e.top),u&&(e=u({$modal:V,left:a,top:l}),a=_xeUtils.default.toNumber(e.left),l=_xeUtils.default.toNumber(e.top))}}return Object.assign(e.style,{top:l+"px",left:a+"px",width:"200px",height:t.offsetHeight+"px"}),S(),{status:!0}}))},p=()=>{const l=B.zoomStatus;return B.prevZoomStatus=l,B.zoomStatus="maximize",(0,_vue.nextTick)().then(()=>{var e,t,o,i=z();return i&&(l||(e=_xeUtils.default.toNumber(C.marginSize),t=document.documentElement.clientWidth||document.body.clientWidth,o=document.documentElement.clientHeight||document.body.clientHeight,B.revertLocat={top:Math.max(e,o/2-i.offsetHeight/2),left:Math.max(e,t/2-i.offsetWidth/2),width:i.offsetWidth+(i.style.width?0:1),height:i.offsetHeight+(i.style.height?0:1)}),Object.assign(i.style,{top:"0",left:"0",width:"100%",height:"100%"})),S(),{status:!0}})},_=()=>{var e=C["duration"];-1!==e&&(t.msgTimeout=setTimeout(()=>i("close"),_xeUtils.default.toNumber(e)))},h=()=>{var e=document.documentElement,t=e.getAttribute(lockScrollAttrKey);t&&((t=t.split(",").filter(e=>e!==a)).length?e.setAttribute(lockScrollAttrKey,t.join(",")):(e.removeAttribute(lockScrollAttrKey),e.style.removeProperty(lockScrollCssWidthKey)))},x=()=>{const{remember:m,showFooter:o}=C;var e,{initialized:t,visible:i}=B,l=E.value;return t||(B.initialized=!0),i||(t=C.lockScroll,i=E.value,t&&!i&&(t=document.documentElement,i=document.body.clientWidth,(e=(e=t.getAttribute(lockScrollAttrKey))?e.split(","):[]).includes(a)||(e.push(a),t.setAttribute(lockScrollAttrKey,e.join(","))),t.style.setProperty(lockScrollCssWidthKey,i+"px")),B.visible=!0,B.contentVisible=!1,r(),allActiveModals.push(V),setTimeout(()=>{B.contentVisible=!0,(0,_vue.nextTick)(()=>{o&&(e=n.value,t=u.value,e=e||t)&&e.focus();var e,t={type:""};s("update:modelValue",!0),w("show",t,null)})},10),l?(-1===(e="notification"===(e=C.type)?notifyQueue:msgQueue).indexOf(V)&&e.push(V),v(),_()):(0,_vue.nextTick)(()=>{var e,t,o,i,l,a,s,n,u=C["fullscreen"],r=B["firstOpen"];r?(B.firstOpen=!1,(()=>{var{id:e,storage:t,storageKey:o}=C;return!!(e&&t&&f(o)[e])})()?({id:r,storage:s,storageKey:n}=C,r&&s&&(s=f(n)[r])&&(n=z(),[r,s,e,t,o,i,l,a]=s.split(","),n&&(r&&(n.style.left=r+"px"),s&&(n.style.top=s+"px"),e&&(n.style.width=e+"px"),t)&&(n.style.height=t+"px"),o)&&i&&(B.revertLocat={left:o,top:i,width:l,height:a})):u?(0,_vue.nextTick)(()=>p()):(d(),c().then(()=>{setTimeout(()=>c(),20)}))):m||(d(),c().then(()=>{setTimeout(()=>c(),20)}))})),(0,_vue.nextTick)()},P=e=>{var t=M.value;C.maskClosable&&e.target===t&&i("mask")},F=()=>{var e=t["msgTimeout"];e&&E.value&&(clearTimeout(e),t.msgTimeout=void 0)},Y=()=>{var e=t["msgTimeout"];e||E.value&&_()},X=e=>{if(_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE)){const t=_xeUtils.default.max(allActiveModals,e=>e.reactData.modalZindex);t&&setTimeout(()=>{t===V&&t.props.escClosable&&(w("close",{type:"exit"},e),i("exit"))},10)}};const y=()=>(B.prevZoomStatus=B.zoomStatus,(B.zoomStatus="",_vue.nextTick)().then(()=>{var e,t=B["revertLocat"];return t?(e=z(),B.revertLocat=null,e&&Object.assign(e.style,{top:t.top+"px",left:t.left+"px",width:t.width+"px",height:t.height+"px"}),S(),(0,_vue.nextTick)().then(()=>({status:!0}))):{status:!1}})),b=t=>{const o=B["zoomStatus"];return new Promise(e=>{if(t)return"maximize"===t?void e(p()):"minimize"===t?void e(g()):void e(y());e((o?y:p)())}).then(()=>B.zoomStatus||"revert")},Q=t=>{var{zoomStatus:e,prevZoomStatus:o}=B;return b("minimize"===e?o||"revert":"minimize").then(e=>{e={type:e};w("zoom",e,t)})},D=t=>b().then(e=>{e={type:e};w("zoom",e,t)});const R=()=>{const t=B["modalZindex"];allActiveModals.some(e=>e.reactData.visible&&e.reactData.modalZindex>t)&&r()},J=e=>{const t=C["storage"];var o=B["zoomStatus"];const n=_xeUtils.default.toNumber(C.marginSize),u=z();if(u&&"maximize"!==o&&0===e.button&&!(0,_dom.getEventTargetNode)(e,u,"trigger--btn").flag){e.preventDefault();const r=e.clientX-u.offsetLeft,m=e.clientY-u.offsetTop,{visibleHeight:d,visibleWidth:c}=(0,_dom.getDomNode)();document.onmousemove=e=>{e.preventDefault();var t=u.offsetWidth,o=u.offsetHeight,i=n,t=c-t-n-1,l=n,o=d-o-n-1;let a=e.clientX-r,s=e.clientY-m;(a=a>t?t:a)<i&&(a=i),(s=s>o?o:s)<l&&(s=l),u.style.left=a+"px",u.style.top=s+"px",u.className=u.className.replace(/\s?is--drag/,"")+" is--drag",w("move",{type:"move"},e),B.resizeFlag++},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null,t&&(0,_vue.nextTick)(()=>{S()}),B.resizeFlag++,setTimeout(()=>{u.className=u.className.replace(/\s?is--drag/,"")},50)}}},G=e=>{e.preventDefault();const a=C["storage"],{visibleHeight:s,visibleWidth:n}=(0,_dom.getDomNode)(),u=_xeUtils.default.toNumber(C.marginSize);const r=e.target.getAttribute("type"),m=_xeUtils.default.toNumber(C.minWidth),d=_xeUtils.default.toNumber(C.minHeight),c=n,v=s,f=z(),g=f.clientWidth,p=f.clientHeight,_=e.clientX,h=e.clientY,x=f.offsetTop,y=f.offsetLeft,b={type:"resize"};document.onmousemove=e=>{e.preventDefault();let t,o,i,l;switch(r){case"wl":t=_-e.clientX,i=t+g,y-t>u&&i>m&&(f.style.width=`${i<c?i:c}px`,f.style.left=y-t+"px");break;case"swst":t=_-e.clientX,o=h-e.clientY,i=t+g,l=o+p,y-t>u&&i>m&&(f.style.width=`${i<c?i:c}px`,f.style.left=y-t+"px"),x-o>u&&l>d&&(f.style.height=`${l<v?l:v}px`,f.style.top=x-o+"px");break;case"swlb":t=_-e.clientX,o=e.clientY-h,i=t+g,l=o+p,y-t>u&&i>m&&(f.style.width=`${i<c?i:c}px`,f.style.left=y-t+"px"),x+l+u<s&&l>d&&(f.style.height=`${l<v?l:v}px`);break;case"st":o=h-e.clientY,l=p+o,x-o>u&&l>d&&(f.style.height=`${l<v?l:v}px`,f.style.top=x-o+"px");break;case"wr":t=e.clientX-_,i=t+g,y+i+u<n&&i>m&&(f.style.width=`${i<c?i:c}px`);break;case"sest":t=e.clientX-_,o=h-e.clientY,i=t+g,l=o+p,y+i+u<n&&i>m&&(f.style.width=`${i<c?i:c}px`),x-o>u&&l>d&&(f.style.height=`${l<v?l:v}px`,f.style.top=x-o+"px");break;case"selb":t=e.clientX-_,o=e.clientY-h,i=t+g,l=o+p,y+i+u<n&&i>m&&(f.style.width=`${i<c?i:c}px`),x+l+u<s&&l>d&&(f.style.height=`${l<v?l:v}px`);break;case"sb":o=e.clientY-h,l=o+p,x+l+u<s&&l>d&&(f.style.height=`${l<v?l:v}px`)}f.className=f.className.replace(/\s?is--drag/,"")+" is--drag",a&&S(),w("resize",b,e)},document.onmouseup=()=>{B.revertLocat=null,document.onmousemove=null,document.onmouseup=null,setTimeout(()=>{f.className=f.className.replace(/\s?is--drag/,"")},50)}},w=(e,t,o)=>{s(e,(0,_ui.createEvent)(o,{$modal:V},t))},ee=(e={dispatchEvent:w,open:x,close(){return i("close")},getBox:z,getPosition:()=>{if(!E.value){var e=z();if(e)return{top:e.offsetTop,left:e.offsetLeft}}return null},setPosition:(e,t)=>{var o;return E.value||(o=z())&&(_xeUtils.default.isNumber(e)&&(o.style.top=e+"px"),_xeUtils.default.isNumber(t))&&(o.style.left=t+"px"),(0,_vue.nextTick)()},isMinimized:()=>"minimize"===B.zoomStatus,isMaximized:()=>"maximize"===B.zoomStatus,zoom(){return b()},minimize(){return B.visible?g():Promise.resolve({status:!1})},maximize(){return B.visible?p():Promise.resolve({status:!1})},revert(){return B.visible?y():Promise.resolve({status:!1})}},Object.assign(V,e),()=>{var{slots:e={},showClose:t,showZoom:o,showMaximize:i,showMinimize:l,title:a}=C,s=B["zoomStatus"],n=k.title||e.title,e=k.corner||e.corner,u=U.value,r=H.value;return[(0,_vue.h)("div",{class:"vxe-modal--header-title"},n?(0,_vn.getSlotVNs)(n({$modal:V,minimized:u,maximized:r})):a?(0,_utils.getFuncText)(a):(0,_ui.getI18n)("vxe.alert.title")),(0,_vue.h)("div",{class:"vxe-modal--header-right"},[e&&!u?(0,_vue.h)("div",{class:"vxe-modal--corner-wrapper"},(0,_vn.getSlotVNs)(e({$modal:V}))):(0,_ui.renderEmptyElement)(V),(_xeUtils.default.isBoolean(l)?l:o)?(0,_vue.h)("div",{class:["vxe-modal--zoom-btn","trigger--btn"],title:(0,_ui.getI18n)("vxe.modal.zoom"+("minimize"===s?"Out":"Min")),onClick:Q},[(0,_vue.h)("i",{class:"minimize"===s?(0,_ui.getIcon)().MODAL_ZOOM_REVERT:(0,_ui.getIcon)().MODAL_ZOOM_MIN})]):(0,_ui.renderEmptyElement)(V),(_xeUtils.default.isBoolean(i)?i:o)&&"minimize"!==s?(0,_vue.h)("div",{class:["vxe-modal--zoom-btn","trigger--btn"],title:(0,_ui.getI18n)("vxe.modal.zoom"+("maximize"===s?"Out":"In")),onClick:D},[(0,_vue.h)("i",{class:"maximize"===s?(0,_ui.getIcon)().MODAL_ZOOM_OUT:(0,_ui.getIcon)().MODAL_ZOOM_IN})]):(0,_ui.renderEmptyElement)(V),t?(0,_vue.h)("div",{class:["vxe-modal--close-btn","trigger--btn"],title:(0,_ui.getI18n)("vxe.modal.close"),onClick:W},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().MODAL_CLOSE})]):(0,_ui.renderEmptyElement)(V)])]}),te=()=>{var{slots:e={},showCancelButton:t,showConfirmButton:o,type:i,loading:l}=C,a=k.leftfoot||e.leftfoot,e=k.rightfoot||e.rightfoot,s=[];return(_xeUtils.default.isBoolean(t)?t:"confirm"===i)&&s.push((0,_vue.h)(_button.default,{key:1,ref:u,content:C.cancelButtonText||(0,_ui.getI18n)("vxe.button.cancel"),onClick:q})),(_xeUtils.default.isBoolean(o)?o:"confirm"===i||"alert"===i)&&s.push((0,_vue.h)(_button.default,{key:2,ref:n,loading:l,status:"primary",content:C.confirmButtonText||(0,_ui.getI18n)("vxe.button.confirm"),onClick:K})),(0,_vue.h)("div",{class:"vxe-modal--footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-modal--footer-left"},a?(0,_vn.getSlotVNs)(a({$modal:V})):[]),(0,_vue.h)("div",{class:"vxe-modal--footer-right"},e?(0,_vn.getSlotVNs)(e({$modal:V})):s)])};return V.renderVN=()=>{var{slots:e={},className:t,type:o,animat:i,draggable:l,iconStatus:a,position:s,loading:n,destroyOnClose:u,status:r,lockScroll:m,padding:d,lockView:c,mask:v,resize:f}=C,{initialized:g,modalTop:p,contentVisible:_,visible:h,zoomStatus:x}=B,e=k.aside||e.aside,y=N.value,b=E.value,z=U.value,S=Z.value,w={};return b&&(w.onMouseover=F,w.onMouseout=Y),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!S||!g},[(0,_vue.h)("div",Object.assign({ref:M,class:["vxe-modal--wrapper","type--"+o,"zoom--"+(x||"revert"),t||"",s?"pos--"+s:"",{["size--"+y]:y,["status--"+r]:r,"is--padding":d,"is--animat":i,"lock--scroll":m,"lock--view":c,"is--draggable":l,"is--resize":f,"is--mask":v,"is--visible":_,"is--active":h,"is--loading":n}],style:{zIndex:B.modalZindex,top:p?p+"px":null},onClick:P},w),[(0,_vue.h)("div",{ref:T,class:"vxe-modal--box",onMousedown:R},[!b&&!e||z?(0,_ui.renderEmptyElement)(V):(0,_vue.h)("div",{class:"vxe-modal--aside"},e?(0,_vn.getSlotVNs)(e({$modal:V})):[r||a?(0,_vue.h)("div",{class:"vxe-modal--status-wrapper"},[(0,_vue.h)("i",{class:["vxe-modal--status-icon",a||(0,_ui.getIcon)()[("MODAL_"+r).toLocaleUpperCase()]]})]):(0,_ui.renderEmptyElement)(V)]),(0,_vue.h)("div",{class:"vxe-modal--container"},!B.initialized||u&&!B.visible?[]:[(()=>{var e,{slots:t={},showZoom:o,showMaximize:i,draggable:l}=C,t=k.header||t.header;return C.showHeader?(e={},l&&(e.onMousedown=J),(_xeUtils.default.isBoolean(i)?i:o)&&C.dblclickZoom&&"modal"===C.type&&(e.onDblclick=D),(0,_vue.h)("div",Object.assign({ref:O,class:["vxe-modal--header",{"is--ellipsis":C.showTitleOverflow}]},e),t?(0,_vn.getSlotVNs)(t({$modal:V})):ee())):(0,_ui.renderEmptyElement)(V)})(),(()=>{var{slots:e={},status:t,message:o,iconStatus:i}=C,o=C.content||o,l=E.value,a=k.default||e.default,s=k.left||e.left,e=k.right||e.right,n=[];return l||!t&&!i||n.push((0,_vue.h)("div",{class:"vxe-modal--status-wrapper"},[(0,_vue.h)("i",{class:["vxe-modal--status-icon",i||(0,_ui.getIcon)()[("MODAL_"+t).toLocaleUpperCase()]]})])),n.push((0,_vue.h)("div",{class:"vxe-modal--content"},a?(0,_vn.getSlotVNs)(a({$modal:V})):(0,_utils.getFuncText)(o))),(0,_vue.h)("div",{class:"vxe-modal--body"},[s?(0,_vue.h)("div",{class:"vxe-modal--body-left"},(0,_vn.getSlotVNs)(s({$modal:V}))):(0,_ui.renderEmptyElement)(V),(0,_vue.h)("div",{class:"vxe-modal--body-default"},n),e?(0,_vue.h)("div",{class:"vxe-modal--body-right"},(0,_vn.getSlotVNs)(e({$modal:V}))):(0,_ui.renderEmptyElement)(V),l?(0,_ui.renderEmptyElement)(V):(0,_vue.h)(_index.default,{class:"vxe-modal--loading",modelValue:C.loading})])})(),(()=>{var{slots:e={}}=C,e=k.footer||e.footer;return C.showFooter?(0,_vue.h)("div",{class:"vxe-modal--footer"},e?(0,_vn.getSlotVNs)(e({$modal:V})):[te()]):(0,_ui.renderEmptyElement)(V)})(),!b&&f?(0,_vue.h)("span",{class:"vxe-modal--resize"},["wl","wr","swst","sest","st","swlb","selb","sb"].map(e=>(0,_vue.h)("span",{class:e+"-resize",type:e,onMousedown:G}))):(0,_ui.renderEmptyElement)(V)])])])])},(0,_vue.watch)(()=>C.width,d),(0,_vue.watch)(()=>C.height,d),(0,_vue.watch)(()=>C.modelValue,e=>{e?x():i("model")}),(0,_vue.onMounted)(()=>{"modal"===C.type&&C.showFooter&&!(C.showConfirmButton||C.showCancelButton||k.footer)&&(0,_log.warnLog)("vxe.modal.footPropErr"),(0,_vue.nextTick)(()=>{C.storage&&!C.id&&(0,_log.errLog)("vxe.error.reqProp",["modal.id"]),C.modelValue&&x(),d()}),C.escClosable&&_ui.globalEvents.on(V,"keydown",X)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(V,"keydown"),m(),h()}),(0,_vue.provide)("$xeModal",V),V},render(){return this.renderVN()}});
@@ -751,9 +751,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
751
751
  if (renderFn) {
752
752
  childNodes.push(renderFn());
753
753
  } else {
754
- if (process.env.NODE_ENV === 'development') {
755
- (0, _log.errLog)('vxe.error.notProp', [`layouts -> ${name}`]);
756
- }
754
+ (0, _log.errLog)('vxe.error.notProp', [`layouts -> ${name}`]);
757
755
  }
758
756
  });
759
757
  if (slots.right) {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_log=require("../../ui/src/log"),_select=_interopRequireDefault(require("../../select/src/select")),_input=_interopRequireDefault(require("../../input/src/input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxePager",props:{size:{type:String,default:()=>(0,_ui.getConfig)().pager.size||(0,_ui.getConfig)().size},layouts:{type:Array,default:()=>(0,_ui.getConfig)().pager.layouts||["PrevJump","PrevPage","Jump","PageCount","NextPage","NextJump","Sizes","Total"]},currentPage:{type:Number,default:1},loading:Boolean,pageSize:{type:Number,default:()=>(0,_ui.getConfig)().pager.pageSize||10},total:{type:Number,default:0},pagerCount:{type:Number,default:()=>(0,_ui.getConfig)().pager.pagerCount||7},pageSizes:{type:Array,default:()=>(0,_ui.getConfig)().pager.pageSizes||[10,15,20,50,100]},align:{type:String,default:()=>(0,_ui.getConfig)().pager.align},border:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.border},background:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.background},perfect:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.perfect},autoHidden:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.autoHidden},transfer:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.transfer},className:[String,Function],pageSizePlacement:{type:String,default:()=>(0,_ui.getConfig)().pager.pageSizePlacement},iconPrevPage:String,iconJumpPrev:String,iconJumpNext:String,iconNextPage:String,iconJumpMore:String,iconHomePage:String,iconEndPage:String},emits:["update:pageSize","update:currentPage","page-change"],setup(_,e){const{slots:m,emit:u}=e;var a=_xeUtils.default.uniqueId();const p=(0,_ui.useSize)(_)["computeSize"],g=(0,_vue.inject)("$xeGrid",null),n=(0,_vue.reactive)({inpCurrPage:_.currentPage}),i=(0,_vue.ref)(),t={refElem:i},x=(0,_vue.computed)(()=>s(_.total,_.pageSize)),d=(0,_vue.computed)(()=>{var e=_["pagerCount"],a=e<x.value?e-2:e,t=[];for(let e=0;e<a;e++)t.push(e);return t}),P=(0,_vue.computed)(()=>Math.floor((_.pagerCount-2)/2)),l=(0,_vue.computed)(()=>_.pageSizes.map(e=>_xeUtils.default.isNumber(e)?{value:e,label:""+(0,_ui.getI18n)("vxe.pager.pagesize",[e])}:Object.assign({value:"",label:""},e))),h={xID:a,props:_,context:e,getRefMaps:()=>t};let o={};const s=(e,a)=>Math.max(Math.ceil(e/a),1),b=(e,a)=>{u("update:currentPage",a),e&&a!==_.currentPage&&o.dispatchEvent("page-change",{type:"current",pageSize:_.pageSize,currentPage:a},e)},c=(e,a)=>{u("update:currentPage",e),a&&e!==_.currentPage&&o.dispatchEvent("page-change",{type:"current",pageSize:_.pageSize,currentPage:e},a)},v=e=>{var e=e["$event"],a=e.target,t=_xeUtils.default.toInteger(a.value),r=x.value,r=t<=0?1:r<=t?r:t,t=_xeUtils.default.toValueString(r);a.value=t,n.inpCurrPage=t,c(r,e)},f=e=>{var a=_["currentPage"];1<a&&c(1,e)},C=e=>{var a=_["currentPage"],t=x.value;a<t&&c(t,e)},E=e=>{var a=_["currentPage"],t=x.value;1<a&&c(Math.min(t,Math.max(a-1,1)),e)},y=e=>{var a=_["currentPage"],t=x.value;a<t&&c(Math.min(t,a+1),e)},S=e=>{var a=d.value;c(Math.max(_.currentPage-a.length,1),e)},k=e=>{var a=x.value,t=d.value;c(Math.min(_.currentPage+t.length,a),e)},N=e=>{var a=e["value"],a=_xeUtils.default.toNumber(a),t=s(_.total,a);let r=_.currentPage;r>t&&(r=t,u("update:currentPage",t)),u("update:pageSize",a),o.dispatchEvent("page-change",{type:"size",pageSize:a,currentPage:r},e.$event)},z=e=>{var a=e["$event"];_ui.globalEvents.hasKey(a,_ui.GLOBAL_EVENT_KEYS.ENTER)?v(e):_ui.globalEvents.hasKey(a,_ui.GLOBAL_EVENT_KEYS.ARROW_UP)?(a.preventDefault(),y(a)):_ui.globalEvents.hasKey(a,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN)&&(a.preventDefault(),E(a))},J=()=>{var{currentPage:e,total:a}=_,t=m.home,r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-home-btn"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("button",{class:["vxe-pager--home-btn",{"is--disabled":e<=1}],type:"button",title:(0,_ui.getI18n)("vxe.pager.homePageTitle"),onClick:f},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",_.iconHomePage||(0,_ui.getIcon)().PAGER_HOME]})])},M=()=>{var{currentPage:e,total:a}=_,t=m.prevPage||m["prev-page"],r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-prev-btn"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("button",{class:["vxe-pager--prev-btn",{"is--disabled":e<=1}],type:"button",title:(0,_ui.getI18n)("vxe.pager.prevPageTitle"),onClick:E},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",_.iconPrevPage||(0,_ui.getIcon)().PAGER_PREV_PAGE]})])},I=e=>{var{currentPage:a,total:t}=_,r=m.prevJump||m["prev-jump"],u=x.value;return r?(0,_vue.h)("span",{class:"vxe-pager--custom-jump-prev"},r({$pager:h,total:t,currentPage:a,pageCount:u})):(0,_vue.h)(e||"button",{class:["vxe-pager--jump-prev",{"is--fixed":!e,"is--disabled":a<=1}],type:"button",title:(0,_ui.getI18n)("vxe.pager.prevJumpTitle"),onClick:S},[e?(0,_vue.h)("i",{class:["vxe-pager--jump-more-icon",_.iconJumpMore||(0,_ui.getIcon)().PAGER_JUMP_MORE]}):null,(0,_vue.h)("i",{class:["vxe-pager--jump-icon",_.iconJumpPrev||(0,_ui.getIcon)().PAGER_JUMP_PREV]})])},R=e=>{var{currentPage:a,total:t}=_,r=m.nextJump||m["next-jump"],u=x.value;return r?(0,_vue.h)("span",{class:"vxe-pager--custom-jump-next"},r({$pager:h,total:t,currentPage:a,pageCount:u})):(0,_vue.h)(e||"button",{class:["vxe-pager--jump-next",{"is--fixed":!e,"is--disabled":u<=a}],type:"button",title:(0,_ui.getI18n)("vxe.pager.nextJumpTitle"),onClick:k},[e?(0,_vue.h)("i",{class:["vxe-pager--jump-more-icon",_.iconJumpMore||(0,_ui.getIcon)().PAGER_JUMP_MORE]}):null,(0,_vue.h)("i",{class:["vxe-pager--jump-icon",_.iconJumpNext||(0,_ui.getIcon)().PAGER_JUMP_NEXT]})])},T=()=>{var{currentPage:e,total:a}=_,t=m.nextPage||m["next-page"],r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-next-btn"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("button",{class:["vxe-pager--next-btn",{"is--disabled":r<=e}],type:"button",title:(0,_ui.getI18n)("vxe.pager.nextPageTitle"),onClick:y},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",_.iconNextPage||(0,_ui.getIcon)().PAGER_NEXT_PAGE]})])},j=()=>{var{currentPage:e,total:a}=_,t=m.end,r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-end-btn"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("button",{class:["vxe-pager--end-btn",{"is--disabled":r<=e}],type:"button",title:(0,_ui.getI18n)("vxe.pager.endPageTitle"),onClick:C},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",_.iconEndPage||(0,_ui.getIcon)().PAGER_END]})])},$=e=>{const{currentPage:r,total:a,pagerCount:t}=_;var u=e?m.numberJump||m["number-jump"]:m.number;const n=[],p=x.value;var g=d.value,i=P.value,l=p>t,o=l&&r>i+1,s=l&&r<p-i;const c=[];let v=1;return l&&(v=r>=p-i?Math.max(p-g.length+1,1):Math.max(r-i,1)),e&&o&&(c.push(1),n.push((0,_vue.h)("button",{class:"vxe-pager--num-btn",type:"button",onClick:e=>b(e,1)},"1"),I("span"))),g.forEach((e,a)=>{const t=v+a;t<=p&&(c.push(t),n.push((0,_vue.h)("button",{key:t,class:["vxe-pager--num-btn",{"is--active":r===t}],type:"button",onClick:e=>b(e,t)},""+t)))}),e&&s&&(c.push(p),n.push(R("button"),(0,_vue.h)("button",{class:"vxe-pager--num-btn",type:"button",onClick:e=>b(e,p)},p))),u?(0,_vue.h)("span",{class:"vxe-pager--custom-btn-wrapper"},u({$pager:h,total:a,numList:c,currentPage:r,pageCount:p})):(0,_vue.h)("span",{class:"vxe-pager--btn-wrapper"},n)},G=()=>$(!0),U=()=>{var{total:e,currentPage:a,pageSize:t,pageSizePlacement:r,transfer:u}=_,n=m.sizes,p=l.value,g=x.value;return n?(0,_vue.h)("span",{class:"vxe-pager--custom-sizes"},n({$pager:h,total:e,currentPage:a,pageCount:g,pageSize:t,options:p})):(0,_vue.h)(_select.default,{class:"vxe-pager--sizes",modelValue:t,placement:r,transfer:u,options:p,onChange:N})},A=e=>{var a=_["total"],t=n["inpCurrPage"],r=e?m.fullJump||m["full-jump"]:m.jump,u=x.value;return r?(0,_vue.h)("span",{class:"vxe-pager--custom-jump"},r({$pager:h,total:a,currentPage:t,pageCount:u})):(0,_vue.h)("span",{class:"vxe-pager--jump"},[e?(0,_vue.h)("span",{class:"vxe-pager--goto-text"},(0,_ui.getI18n)("vxe.pager.goto")):null,(0,_vue.h)(_input.default,{class:"vxe-pager--goto",modelValue:n.inpCurrPage,placeholder:(0,_ui.getI18n)("vxe.pager.gotoTitle"),align:"center",type:"integer",max:u,min:1,controls:!1,onKeydown:z,onBlur:v,"onUpdate:modelValue"(e){n.inpCurrPage=e}}),e?(0,_vue.h)("span",{class:"vxe-pager--classifier-text"},(0,_ui.getI18n)("vxe.pager.pageClassifier")):null])},O=()=>A(!0),V=()=>{var{currentPage:e,total:a}=_,t=m.pageCount||m["page-count"],r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-count"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("span",{class:"vxe-pager--count"},[(0,_vue.h)("span",{class:"vxe-pager--separator"}),(0,_vue.h)("span",r)])},q=()=>{var{currentPage:e,total:a}=_,t=m.total,r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-total"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("span",{class:"vxe-pager--total"},(0,_ui.getI18n)("vxe.pager.total",[a]))};o={dispatchEvent:(e,a,t)=>{u(e,(0,_ui.createEvent)(t,{$pager:h},a))},homePage(){return f(),(0,_vue.nextTick)()},endPage(){return C(),(0,_vue.nextTick)()},prevPage(){return E(),(0,_vue.nextTick)()},nextPage(){return y(),(0,_vue.nextTick)()},prevJump(){return S(),(0,_vue.nextTick)()},nextJump(){return k(),(0,_vue.nextTick)()},jumpPage(e){e=_xeUtils.default.toNumber(e)||1;return n.inpCurrPage=e,c(e),(0,_vue.nextTick)()}},a={handlePrevPage:E,handleNextPage:y,handlePrevJump:S,handleNextJump:k},Object.assign(h,o,a),(0,_vue.watch)(()=>_.currentPage,e=>{n.inpCurrPage=e});return h.renderVN=()=>{var{align:e,layouts:a,className:t}=_;const r=[];var u=p.value,n=x.value;return m.left&&r.push((0,_vue.h)("span",{class:"vxe-pager--left-wrapper"},m.left({$grid:g}))),a.forEach(e=>{let a;switch(e){case"Home":a=J;break;case"PrevJump":a=I;break;case"PrevPage":a=M;break;case"Number":a=$;break;case"JumpNumber":a=G;break;case"NextPage":a=T;break;case"NextJump":a=R;break;case"End":a=j;break;case"Sizes":a=U;break;case"FullJump":a=O;break;case"Jump":a=A;break;case"PageCount":a=V;break;case"Total":a=q}a?r.push(a()):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}),m.right&&r.push((0,_vue.h)("span",{class:"vxe-pager--right-wrapper"},m.right({$grid:g}))),(0,_vue.h)("div",{ref:i,class:["vxe-pager",t?_xeUtils.default.isFunction(t)?t({$pager:h}):t:"",{["size--"+u]:u,["align--"+e]:e,"is--border":_.border,"is--background":_.background,"is--perfect":_.perfect,"is--hidden":_.autoHidden&&1===n,"is--loading":_.loading}]},[(0,_vue.h)("div",{class:"vxe-pager--wrapper"},r)])},h},render(){return this.renderVN()}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_log=require("../../ui/src/log"),_select=_interopRequireDefault(require("../../select/src/select")),_input=_interopRequireDefault(require("../../input/src/input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxePager",props:{size:{type:String,default:()=>(0,_ui.getConfig)().pager.size||(0,_ui.getConfig)().size},layouts:{type:Array,default:()=>(0,_ui.getConfig)().pager.layouts||["PrevJump","PrevPage","Jump","PageCount","NextPage","NextJump","Sizes","Total"]},currentPage:{type:Number,default:1},loading:Boolean,pageSize:{type:Number,default:()=>(0,_ui.getConfig)().pager.pageSize||10},total:{type:Number,default:0},pagerCount:{type:Number,default:()=>(0,_ui.getConfig)().pager.pagerCount||7},pageSizes:{type:Array,default:()=>(0,_ui.getConfig)().pager.pageSizes||[10,15,20,50,100]},align:{type:String,default:()=>(0,_ui.getConfig)().pager.align},border:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.border},background:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.background},perfect:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.perfect},autoHidden:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.autoHidden},transfer:{type:Boolean,default:()=>(0,_ui.getConfig)().pager.transfer},className:[String,Function],pageSizePlacement:{type:String,default:()=>(0,_ui.getConfig)().pager.pageSizePlacement},iconPrevPage:String,iconJumpPrev:String,iconJumpNext:String,iconNextPage:String,iconJumpMore:String,iconHomePage:String,iconEndPage:String},emits:["update:pageSize","update:currentPage","page-change"],setup(_,e){const{slots:m,emit:u}=e;var a=_xeUtils.default.uniqueId();const p=(0,_ui.useSize)(_)["computeSize"],g=(0,_vue.inject)("$xeGrid",null),n=(0,_vue.reactive)({inpCurrPage:_.currentPage}),i=(0,_vue.ref)(),t={refElem:i},x=(0,_vue.computed)(()=>s(_.total,_.pageSize)),P=(0,_vue.computed)(()=>{var e=_["pagerCount"],a=e<x.value?e-2:e,t=[];for(let e=0;e<a;e++)t.push(e);return t}),d=(0,_vue.computed)(()=>Math.floor((_.pagerCount-2)/2)),l=(0,_vue.computed)(()=>_.pageSizes.map(e=>_xeUtils.default.isNumber(e)?{value:e,label:""+(0,_ui.getI18n)("vxe.pager.pagesize",[e])}:Object.assign({value:"",label:""},e))),h={xID:a,props:_,context:e,getRefMaps:()=>t};let o={};const s=(e,a)=>Math.max(Math.ceil(e/a),1),b=(e,a)=>{u("update:currentPage",a),e&&a!==_.currentPage&&o.dispatchEvent("page-change",{type:"current",pageSize:_.pageSize,currentPage:a},e)},c=(e,a)=>{u("update:currentPage",e),a&&e!==_.currentPage&&o.dispatchEvent("page-change",{type:"current",pageSize:_.pageSize,currentPage:e},a)},v=e=>{var e=e["$event"],a=e.target,t=_xeUtils.default.toInteger(a.value),r=x.value,r=t<=0?1:r<=t?r:t,t=_xeUtils.default.toValueString(r);a.value=t,n.inpCurrPage=t,c(r,e)},f=e=>{var a=_["currentPage"];1<a&&c(1,e)},C=e=>{var a=_["currentPage"],t=x.value;a<t&&c(t,e)},E=e=>{var a=_["currentPage"],t=x.value;1<a&&c(Math.min(t,Math.max(a-1,1)),e)},y=e=>{var a=_["currentPage"],t=x.value;a<t&&c(Math.min(t,a+1),e)},S=e=>{var a=P.value;c(Math.max(_.currentPage-a.length,1),e)},k=e=>{var a=x.value,t=P.value;c(Math.min(_.currentPage+t.length,a),e)},z=e=>{var a=e["value"],a=_xeUtils.default.toNumber(a),t=s(_.total,a);let r=_.currentPage;r>t&&(r=t,u("update:currentPage",t)),u("update:pageSize",a),o.dispatchEvent("page-change",{type:"size",pageSize:a,currentPage:r},e.$event)},N=e=>{var a=e["$event"];_ui.globalEvents.hasKey(a,_ui.GLOBAL_EVENT_KEYS.ENTER)?v(e):_ui.globalEvents.hasKey(a,_ui.GLOBAL_EVENT_KEYS.ARROW_UP)?(a.preventDefault(),y(a)):_ui.globalEvents.hasKey(a,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN)&&(a.preventDefault(),E(a))},J=()=>{var{currentPage:e,total:a}=_,t=m.home,r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-home-btn"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("button",{class:["vxe-pager--home-btn",{"is--disabled":e<=1}],type:"button",title:(0,_ui.getI18n)("vxe.pager.homePageTitle"),onClick:f},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",_.iconHomePage||(0,_ui.getIcon)().PAGER_HOME]})])},M=()=>{var{currentPage:e,total:a}=_,t=m.prevPage||m["prev-page"],r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-prev-btn"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("button",{class:["vxe-pager--prev-btn",{"is--disabled":e<=1}],type:"button",title:(0,_ui.getI18n)("vxe.pager.prevPageTitle"),onClick:E},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",_.iconPrevPage||(0,_ui.getIcon)().PAGER_PREV_PAGE]})])},I=e=>{var{currentPage:a,total:t}=_,r=m.prevJump||m["prev-jump"],u=x.value;return r?(0,_vue.h)("span",{class:"vxe-pager--custom-jump-prev"},r({$pager:h,total:t,currentPage:a,pageCount:u})):(0,_vue.h)(e||"button",{class:["vxe-pager--jump-prev",{"is--fixed":!e,"is--disabled":a<=1}],type:"button",title:(0,_ui.getI18n)("vxe.pager.prevJumpTitle"),onClick:S},[e?(0,_vue.h)("i",{class:["vxe-pager--jump-more-icon",_.iconJumpMore||(0,_ui.getIcon)().PAGER_JUMP_MORE]}):null,(0,_vue.h)("i",{class:["vxe-pager--jump-icon",_.iconJumpPrev||(0,_ui.getIcon)().PAGER_JUMP_PREV]})])},R=e=>{var{currentPage:a,total:t}=_,r=m.nextJump||m["next-jump"],u=x.value;return r?(0,_vue.h)("span",{class:"vxe-pager--custom-jump-next"},r({$pager:h,total:t,currentPage:a,pageCount:u})):(0,_vue.h)(e||"button",{class:["vxe-pager--jump-next",{"is--fixed":!e,"is--disabled":u<=a}],type:"button",title:(0,_ui.getI18n)("vxe.pager.nextJumpTitle"),onClick:k},[e?(0,_vue.h)("i",{class:["vxe-pager--jump-more-icon",_.iconJumpMore||(0,_ui.getIcon)().PAGER_JUMP_MORE]}):null,(0,_vue.h)("i",{class:["vxe-pager--jump-icon",_.iconJumpNext||(0,_ui.getIcon)().PAGER_JUMP_NEXT]})])},T=()=>{var{currentPage:e,total:a}=_,t=m.nextPage||m["next-page"],r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-next-btn"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("button",{class:["vxe-pager--next-btn",{"is--disabled":r<=e}],type:"button",title:(0,_ui.getI18n)("vxe.pager.nextPageTitle"),onClick:y},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",_.iconNextPage||(0,_ui.getIcon)().PAGER_NEXT_PAGE]})])},j=()=>{var{currentPage:e,total:a}=_,t=m.end,r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-end-btn"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("button",{class:["vxe-pager--end-btn",{"is--disabled":r<=e}],type:"button",title:(0,_ui.getI18n)("vxe.pager.endPageTitle"),onClick:C},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",_.iconEndPage||(0,_ui.getIcon)().PAGER_END]})])},$=e=>{const{currentPage:r,total:a,pagerCount:t}=_;var u=e?m.numberJump||m["number-jump"]:m.number;const n=[],p=x.value;var g=P.value,i=d.value,l=p>t,o=l&&r>i+1,s=l&&r<p-i;const c=[];let v=1;return l&&(v=r>=p-i?Math.max(p-g.length+1,1):Math.max(r-i,1)),e&&o&&(c.push(1),n.push((0,_vue.h)("button",{class:"vxe-pager--num-btn",type:"button",onClick:e=>b(e,1)},"1"),I("span"))),g.forEach((e,a)=>{const t=v+a;t<=p&&(c.push(t),n.push((0,_vue.h)("button",{key:t,class:["vxe-pager--num-btn",{"is--active":r===t}],type:"button",onClick:e=>b(e,t)},""+t)))}),e&&s&&(c.push(p),n.push(R("button"),(0,_vue.h)("button",{class:"vxe-pager--num-btn",type:"button",onClick:e=>b(e,p)},p))),u?(0,_vue.h)("span",{class:"vxe-pager--custom-btn-wrapper"},u({$pager:h,total:a,numList:c,currentPage:r,pageCount:p})):(0,_vue.h)("span",{class:"vxe-pager--btn-wrapper"},n)},G=()=>$(!0),U=()=>{var{total:e,currentPage:a,pageSize:t,pageSizePlacement:r,transfer:u}=_,n=m.sizes,p=l.value,g=x.value;return n?(0,_vue.h)("span",{class:"vxe-pager--custom-sizes"},n({$pager:h,total:e,currentPage:a,pageCount:g,pageSize:t,options:p})):(0,_vue.h)(_select.default,{class:"vxe-pager--sizes",modelValue:t,placement:r,transfer:u,options:p,onChange:z})},A=e=>{var a=_["total"],t=n["inpCurrPage"],r=e?m.fullJump||m["full-jump"]:m.jump,u=x.value;return r?(0,_vue.h)("span",{class:"vxe-pager--custom-jump"},r({$pager:h,total:a,currentPage:t,pageCount:u})):(0,_vue.h)("span",{class:"vxe-pager--jump"},[e?(0,_vue.h)("span",{class:"vxe-pager--goto-text"},(0,_ui.getI18n)("vxe.pager.goto")):null,(0,_vue.h)(_input.default,{class:"vxe-pager--goto",modelValue:n.inpCurrPage,placeholder:(0,_ui.getI18n)("vxe.pager.gotoTitle"),align:"center",type:"integer",max:u,min:1,controls:!1,onKeydown:N,onBlur:v,"onUpdate:modelValue"(e){n.inpCurrPage=e}}),e?(0,_vue.h)("span",{class:"vxe-pager--classifier-text"},(0,_ui.getI18n)("vxe.pager.pageClassifier")):null])},O=()=>A(!0),V=()=>{var{currentPage:e,total:a}=_,t=m.pageCount||m["page-count"],r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-count"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("span",{class:"vxe-pager--count"},[(0,_vue.h)("span",{class:"vxe-pager--separator"}),(0,_vue.h)("span",r)])},q=()=>{var{currentPage:e,total:a}=_,t=m.total,r=x.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-total"},t({$pager:h,total:a,currentPage:e,pageCount:r})):(0,_vue.h)("span",{class:"vxe-pager--total"},(0,_ui.getI18n)("vxe.pager.total",[a]))};o={dispatchEvent:(e,a,t)=>{u(e,(0,_ui.createEvent)(t,{$pager:h},a))},homePage(){return f(),(0,_vue.nextTick)()},endPage(){return C(),(0,_vue.nextTick)()},prevPage(){return E(),(0,_vue.nextTick)()},nextPage(){return y(),(0,_vue.nextTick)()},prevJump(){return S(),(0,_vue.nextTick)()},nextJump(){return k(),(0,_vue.nextTick)()},jumpPage(e){e=_xeUtils.default.toNumber(e)||1;return n.inpCurrPage=e,c(e),(0,_vue.nextTick)()}},a={handlePrevPage:E,handleNextPage:y,handlePrevJump:S,handleNextJump:k},Object.assign(h,o,a),(0,_vue.watch)(()=>_.currentPage,e=>{n.inpCurrPage=e});return h.renderVN=()=>{var{align:e,layouts:a,className:t}=_;const r=[];var u=p.value,n=x.value;return m.left&&r.push((0,_vue.h)("span",{class:"vxe-pager--left-wrapper"},m.left({$grid:g}))),a.forEach(e=>{let a;switch(e){case"Home":a=J;break;case"PrevJump":a=I;break;case"PrevPage":a=M;break;case"Number":a=$;break;case"JumpNumber":a=G;break;case"NextPage":a=T;break;case"NextJump":a=R;break;case"End":a=j;break;case"Sizes":a=U;break;case"FullJump":a=O;break;case"Jump":a=A;break;case"PageCount":a=V;break;case"Total":a=q}a?r.push(a()):(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}),m.right&&r.push((0,_vue.h)("span",{class:"vxe-pager--right-wrapper"},m.right({$grid:g}))),(0,_vue.h)("div",{ref:i,class:["vxe-pager",t?_xeUtils.default.isFunction(t)?t({$pager:h}):t:"",{["size--"+u]:u,["align--"+e]:e,"is--border":_.border,"is--background":_.background,"is--perfect":_.perfect,"is--hidden":_.autoHidden&&1===n,"is--loading":_.loading}]},[(0,_vue.h)("div",{class:"vxe-pager--wrapper"},r)])},h},render(){return this.renderVN()}});