vxe-pc-ui 4.4.9 → 4.4.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.
- package/es/icon/style.css +1 -1
- package/es/pager/src/pager.js +32 -20
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/upload/src/upload.js +82 -70
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +76 -19
- package/lib/index.umd.min.js +1 -1
- package/lib/pager/src/pager.js +66 -13
- package/lib/pager/src/pager.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/upload/src/upload.js +8 -4
- package/lib/upload/src/upload.min.js +1 -1
- package/package.json +1 -1
- package/packages/pager/src/pager.ts +32 -20
- package/packages/upload/src/upload.ts +91 -79
- package/types/components/pager.d.ts +23 -0
- /package/es/icon/{iconfont.1741664470632.ttf → iconfont.1741830156438.ttf} +0 -0
- /package/es/icon/{iconfont.1741664470632.woff → iconfont.1741830156438.woff} +0 -0
- /package/es/icon/{iconfont.1741664470632.woff2 → iconfont.1741830156438.woff2} +0 -0
- /package/es/{iconfont.1741664470632.ttf → iconfont.1741830156438.ttf} +0 -0
- /package/es/{iconfont.1741664470632.woff → iconfont.1741830156438.woff} +0 -0
- /package/es/{iconfont.1741664470632.woff2 → iconfont.1741830156438.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1741664470632.ttf → iconfont.1741830156438.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1741664470632.woff → iconfont.1741830156438.woff} +0 -0
- /package/lib/icon/style/{iconfont.1741664470632.woff2 → iconfont.1741830156438.woff2} +0 -0
- /package/lib/{iconfont.1741664470632.ttf → iconfont.1741830156438.ttf} +0 -0
- /package/lib/{iconfont.1741664470632.woff → iconfont.1741830156438.woff} +0 -0
- /package/lib/{iconfont.1741664470632.woff2 → iconfont.1741830156438.woff2} +0 -0
package/lib/pager/src/pager.js
CHANGED
|
@@ -266,14 +266,19 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
266
266
|
// 第一页
|
|
267
267
|
const renderHomePage = () => {
|
|
268
268
|
const {
|
|
269
|
-
currentPage
|
|
269
|
+
currentPage,
|
|
270
|
+
total
|
|
270
271
|
} = props;
|
|
271
272
|
const homeSlot = slots.home;
|
|
273
|
+
const pageCount = computePageCount.value;
|
|
272
274
|
if (homeSlot) {
|
|
273
275
|
return (0, _vue.h)('span', {
|
|
274
276
|
class: 'vxe-pager--custom-home-btn'
|
|
275
277
|
}, homeSlot({
|
|
276
|
-
|
|
278
|
+
$pager: $xePager,
|
|
279
|
+
total,
|
|
280
|
+
currentPage,
|
|
281
|
+
pageCount
|
|
277
282
|
}));
|
|
278
283
|
}
|
|
279
284
|
return (0, _vue.h)('button', {
|
|
@@ -290,14 +295,19 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
290
295
|
// 上一页
|
|
291
296
|
const renderPrevPage = () => {
|
|
292
297
|
const {
|
|
293
|
-
currentPage
|
|
298
|
+
currentPage,
|
|
299
|
+
total
|
|
294
300
|
} = props;
|
|
295
301
|
const prevPageSlot = slots.prevPage || slots['prev-page'];
|
|
302
|
+
const pageCount = computePageCount.value;
|
|
296
303
|
if (prevPageSlot) {
|
|
297
304
|
return (0, _vue.h)('span', {
|
|
298
305
|
class: 'vxe-pager--custom-prev-btn'
|
|
299
306
|
}, prevPageSlot({
|
|
300
|
-
|
|
307
|
+
$pager: $xePager,
|
|
308
|
+
total,
|
|
309
|
+
currentPage,
|
|
310
|
+
pageCount
|
|
301
311
|
}));
|
|
302
312
|
}
|
|
303
313
|
return (0, _vue.h)('button', {
|
|
@@ -314,14 +324,19 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
314
324
|
// 向上翻页
|
|
315
325
|
const renderPrevJump = tagName => {
|
|
316
326
|
const {
|
|
317
|
-
currentPage
|
|
327
|
+
currentPage,
|
|
328
|
+
total
|
|
318
329
|
} = props;
|
|
319
330
|
const prevJumpSlot = slots.prevJump || slots['prev-jump'];
|
|
331
|
+
const pageCount = computePageCount.value;
|
|
320
332
|
if (prevJumpSlot) {
|
|
321
333
|
return (0, _vue.h)('span', {
|
|
322
334
|
class: 'vxe-pager--custom-jump-prev'
|
|
323
335
|
}, prevJumpSlot({
|
|
324
|
-
|
|
336
|
+
$pager: $xePager,
|
|
337
|
+
total,
|
|
338
|
+
currentPage,
|
|
339
|
+
pageCount
|
|
325
340
|
}));
|
|
326
341
|
}
|
|
327
342
|
return (0, _vue.h)(tagName || 'button', {
|
|
@@ -341,7 +356,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
341
356
|
// 向下翻页
|
|
342
357
|
const renderNextJump = tagName => {
|
|
343
358
|
const {
|
|
344
|
-
currentPage
|
|
359
|
+
currentPage,
|
|
360
|
+
total
|
|
345
361
|
} = props;
|
|
346
362
|
const nextJumpSlot = slots.nextJump || slots['next-jump'];
|
|
347
363
|
const pageCount = computePageCount.value;
|
|
@@ -349,7 +365,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
349
365
|
return (0, _vue.h)('span', {
|
|
350
366
|
class: 'vxe-pager--custom-jump-next'
|
|
351
367
|
}, nextJumpSlot({
|
|
352
|
-
|
|
368
|
+
$pager: $xePager,
|
|
369
|
+
total,
|
|
370
|
+
currentPage,
|
|
371
|
+
pageCount
|
|
353
372
|
}));
|
|
354
373
|
}
|
|
355
374
|
return (0, _vue.h)(tagName || 'button', {
|
|
@@ -369,7 +388,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
369
388
|
// 下一页
|
|
370
389
|
const renderNextPage = () => {
|
|
371
390
|
const {
|
|
372
|
-
currentPage
|
|
391
|
+
currentPage,
|
|
392
|
+
total
|
|
373
393
|
} = props;
|
|
374
394
|
const nextPageSlot = slots.nextPage || slots['next-page'];
|
|
375
395
|
const pageCount = computePageCount.value;
|
|
@@ -377,7 +397,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
377
397
|
return (0, _vue.h)('span', {
|
|
378
398
|
class: 'vxe-pager--custom-next-btn'
|
|
379
399
|
}, nextPageSlot({
|
|
380
|
-
|
|
400
|
+
$pager: $xePager,
|
|
401
|
+
total,
|
|
402
|
+
currentPage,
|
|
403
|
+
pageCount
|
|
381
404
|
}));
|
|
382
405
|
}
|
|
383
406
|
return (0, _vue.h)('button', {
|
|
@@ -394,7 +417,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
394
417
|
// 最后一页
|
|
395
418
|
const renderEndPage = () => {
|
|
396
419
|
const {
|
|
397
|
-
currentPage
|
|
420
|
+
currentPage,
|
|
421
|
+
total
|
|
398
422
|
} = props;
|
|
399
423
|
const endSlot = slots.end;
|
|
400
424
|
const pageCount = computePageCount.value;
|
|
@@ -402,6 +426,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
402
426
|
return (0, _vue.h)('span', {
|
|
403
427
|
class: 'vxe-pager--custom-end-btn'
|
|
404
428
|
}, endSlot({
|
|
429
|
+
$pager: $xePager,
|
|
430
|
+
total,
|
|
405
431
|
currentPage,
|
|
406
432
|
pageCount
|
|
407
433
|
}));
|
|
@@ -421,6 +447,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
421
447
|
const renderNumber = showJump => {
|
|
422
448
|
const {
|
|
423
449
|
currentPage,
|
|
450
|
+
total,
|
|
424
451
|
pagerCount
|
|
425
452
|
} = props;
|
|
426
453
|
const numberSlot = showJump ? slots.numberJump || slots['number-jump'] : slots.number;
|
|
@@ -474,6 +501,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
474
501
|
return (0, _vue.h)('span', {
|
|
475
502
|
class: 'vxe-pager--custom-btn-wrapper'
|
|
476
503
|
}, numberSlot({
|
|
504
|
+
$pager: $xePager,
|
|
505
|
+
total,
|
|
477
506
|
numList: restList,
|
|
478
507
|
currentPage,
|
|
479
508
|
pageCount
|
|
@@ -490,16 +519,23 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
490
519
|
// sizes
|
|
491
520
|
const renderSizes = () => {
|
|
492
521
|
const {
|
|
522
|
+
total,
|
|
523
|
+
currentPage,
|
|
493
524
|
pageSize,
|
|
494
525
|
pageSizePlacement,
|
|
495
526
|
transfer
|
|
496
527
|
} = props;
|
|
497
528
|
const sizesSlot = slots.sizes;
|
|
498
529
|
const sizeList = computeSizeList.value;
|
|
530
|
+
const pageCount = computePageCount.value;
|
|
499
531
|
if (sizesSlot) {
|
|
500
532
|
return (0, _vue.h)('span', {
|
|
501
533
|
class: 'vxe-pager--custom-sizes'
|
|
502
534
|
}, sizesSlot({
|
|
535
|
+
$pager: $xePager,
|
|
536
|
+
total,
|
|
537
|
+
currentPage,
|
|
538
|
+
pageCount,
|
|
503
539
|
pageSize,
|
|
504
540
|
options: sizeList
|
|
505
541
|
}));
|
|
@@ -515,6 +551,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
515
551
|
};
|
|
516
552
|
// Jump
|
|
517
553
|
const renderJump = isFull => {
|
|
554
|
+
const {
|
|
555
|
+
total
|
|
556
|
+
} = props;
|
|
518
557
|
const {
|
|
519
558
|
inpCurrPage
|
|
520
559
|
} = reactData;
|
|
@@ -524,6 +563,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
524
563
|
return (0, _vue.h)('span', {
|
|
525
564
|
class: 'vxe-pager--custom-jump'
|
|
526
565
|
}, jumpSlot({
|
|
566
|
+
$pager: $xePager,
|
|
567
|
+
total,
|
|
527
568
|
currentPage: inpCurrPage,
|
|
528
569
|
pageCount
|
|
529
570
|
}));
|
|
@@ -557,7 +598,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
557
598
|
// PageCount
|
|
558
599
|
const renderPageCount = () => {
|
|
559
600
|
const {
|
|
560
|
-
currentPage
|
|
601
|
+
currentPage,
|
|
602
|
+
total
|
|
561
603
|
} = props;
|
|
562
604
|
const pageCountSlot = slots.pageCount || slots['page-count'];
|
|
563
605
|
const pageCount = computePageCount.value;
|
|
@@ -565,6 +607,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
565
607
|
return (0, _vue.h)('span', {
|
|
566
608
|
class: 'vxe-pager--custom-count'
|
|
567
609
|
}, pageCountSlot({
|
|
610
|
+
$pager: $xePager,
|
|
611
|
+
total,
|
|
568
612
|
currentPage,
|
|
569
613
|
pageCount
|
|
570
614
|
}));
|
|
@@ -582,12 +626,15 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
582
626
|
total
|
|
583
627
|
} = props;
|
|
584
628
|
const totalSlot = slots.total;
|
|
629
|
+
const pageCount = computePageCount.value;
|
|
585
630
|
if (totalSlot) {
|
|
586
631
|
return (0, _vue.h)('span', {
|
|
587
632
|
class: 'vxe-pager--custom-total'
|
|
588
633
|
}, totalSlot({
|
|
634
|
+
$pager: $xePager,
|
|
589
635
|
total,
|
|
590
|
-
currentPage
|
|
636
|
+
currentPage,
|
|
637
|
+
pageCount
|
|
591
638
|
}));
|
|
592
639
|
}
|
|
593
640
|
return (0, _vue.h)('span', {
|
|
@@ -624,6 +671,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
624
671
|
nextJump() {
|
|
625
672
|
handleNextJump();
|
|
626
673
|
return (0, _vue.nextTick)();
|
|
674
|
+
},
|
|
675
|
+
jumpPage(currentPage) {
|
|
676
|
+
const current = _xeUtils.default.toNumber(currentPage) || 1;
|
|
677
|
+
reactData.inpCurrPage = current;
|
|
678
|
+
changeCurrentPage(current);
|
|
679
|
+
return (0, _vue.nextTick)();
|
|
627
680
|
}
|
|
628
681
|
};
|
|
629
682
|
pagerPrivateMethods = {
|
|
@@ -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(v,e){const{slots:_,emit:u}=e;var a=_xeUtils.default.uniqueId();const p=(0,_ui.useSize)(v)["computeSize"],g=(0,_vue.inject)("$xeGrid",null),n=(0,_vue.reactive)({inpCurrPage:v.currentPage}),i=(0,_vue.ref)(),t={refElem:i},m=(0,_vue.computed)(()=>c(v.total,v.pageSize)),d=(0,_vue.computed)(()=>{var e=v["pagerCount"],a=e<m.value?e-2:e,t=[];for(let e=0;e<a;e++)t.push(e);return t}),x=(0,_vue.computed)(()=>Math.floor((v.pagerCount-2)/2)),s=(0,_vue.computed)(()=>v.pageSizes.map(e=>_xeUtils.default.isNumber(e)?{value:e,label:""+(0,_ui.getI18n)("vxe.pager.pagesize",[e])}:Object.assign({value:"",label:""},e))),l={xID:a,props:v,context:e,getRefMaps:()=>t};let o={};const c=(e,a)=>Math.max(Math.ceil(e/a),1),P=(e,a)=>{u("update:currentPage",a),e&&a!==v.currentPage&&o.dispatchEvent("page-change",{type:"current",pageSize:v.pageSize,currentPage:a},e)},h=(e,a)=>{u("update:currentPage",e),a&&e!==v.currentPage&&o.dispatchEvent("page-change",{type:"current",pageSize:v.pageSize,currentPage:e},a)},b=e=>{var e=e["$event"],a=e.target,t=_xeUtils.default.toInteger(a.value),r=m.value,r=t<=0?1:r<=t?r:t,t=_xeUtils.default.toValueString(r);a.value=t,n.inpCurrPage=t,h(r,e)},r=e=>{var a=v["currentPage"];1<a&&h(1,e)},f=e=>{var a=v["currentPage"],t=m.value;a<t&&h(t,e)},E=e=>{var a=v["currentPage"],t=m.value;1<a&&h(Math.min(t,Math.max(a-1,1)),e)},C=e=>{var a=v["currentPage"],t=m.value;a<t&&h(Math.min(t,a+1),e)},y=e=>{var a=d.value;h(Math.max(v.currentPage-a.length,1),e)},S=e=>{var a=m.value,t=d.value;h(Math.min(v.currentPage+t.length,a),e)},k=e=>{var a=e["value"],a=_xeUtils.default.toNumber(a),t=c(v.total,a);let r=v.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)?b(e):_ui.globalEvents.hasKey(a,_ui.GLOBAL_EVENT_KEYS.ARROW_UP)?(a.preventDefault(),C(a)):_ui.globalEvents.hasKey(a,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN)&&(a.preventDefault(),E(a))},z=()=>{var e=v["currentPage"],a=_.home;return a?(0,_vue.h)("span",{class:"vxe-pager--custom-home-btn"},a({currentPage:e})):(0,_vue.h)("button",{class:["vxe-pager--home-btn",{"is--disabled":e<=1}],type:"button",title:(0,_ui.getI18n)("vxe.pager.homePageTitle"),onClick:r},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",v.iconHomePage||(0,_ui.getIcon)().PAGER_HOME]})])},J=()=>{var e=v["currentPage"],a=_.prevPage||_["prev-page"];return a?(0,_vue.h)("span",{class:"vxe-pager--custom-prev-btn"},a({currentPage:e})):(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",v.iconPrevPage||(0,_ui.getIcon)().PAGER_PREV_PAGE]})])},M=e=>{var a=v["currentPage"],t=_.prevJump||_["prev-jump"];return t?(0,_vue.h)("span",{class:"vxe-pager--custom-jump-prev"},t({currentPage:a})):(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:y},[e?(0,_vue.h)("i",{class:["vxe-pager--jump-more-icon",v.iconJumpMore||(0,_ui.getIcon)().PAGER_JUMP_MORE]}):null,(0,_vue.h)("i",{class:["vxe-pager--jump-icon",v.iconJumpPrev||(0,_ui.getIcon)().PAGER_JUMP_PREV]})])},I=e=>{var a=v["currentPage"],t=_.nextJump||_["next-jump"],r=m.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-jump-next"},t({currentPage:a})):(0,_vue.h)(e||"button",{class:["vxe-pager--jump-next",{"is--fixed":!e,"is--disabled":r<=a}],type:"button",title:(0,_ui.getI18n)("vxe.pager.nextJumpTitle"),onClick:S},[e?(0,_vue.h)("i",{class:["vxe-pager--jump-more-icon",v.iconJumpMore||(0,_ui.getIcon)().PAGER_JUMP_MORE]}):null,(0,_vue.h)("i",{class:["vxe-pager--jump-icon",v.iconJumpNext||(0,_ui.getIcon)().PAGER_JUMP_NEXT]})])},R=()=>{var e=v["currentPage"],a=_.nextPage||_["next-page"],t=m.value;return a?(0,_vue.h)("span",{class:"vxe-pager--custom-next-btn"},a({currentPage:e})):(0,_vue.h)("button",{class:["vxe-pager--next-btn",{"is--disabled":t<=e}],type:"button",title:(0,_ui.getI18n)("vxe.pager.nextPageTitle"),onClick:C},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",v.iconNextPage||(0,_ui.getIcon)().PAGER_NEXT_PAGE]})])},T=()=>{var e=v["currentPage"],a=_.end,t=m.value;return a?(0,_vue.h)("span",{class:"vxe-pager--custom-end-btn"},a({currentPage:e,pageCount:t})):(0,_vue.h)("button",{class:["vxe-pager--end-btn",{"is--disabled":t<=e}],type:"button",title:(0,_ui.getI18n)("vxe.pager.endPageTitle"),onClick:f},[(0,_vue.h)("i",{class:["vxe-pager--btn-icon",v.iconEndPage||(0,_ui.getIcon)().PAGER_END]})])},j=e=>{const{currentPage:r,pagerCount:a}=v;var t=e?_.numberJump||_["number-jump"]:_.number;const u=[],n=m.value;var p=d.value,g=x.value,i=n>a,s=i&&r>g+1,l=i&&r<n-g;const o=[];let c=1;return i&&(c=r>=n-g?Math.max(n-p.length+1,1):Math.max(r-g,1)),e&&s&&(o.push(1),u.push((0,_vue.h)("button",{class:"vxe-pager--num-btn",type:"button",onClick:e=>P(e,1)},"1"),M("span"))),p.forEach((e,a)=>{const t=c+a;t<=n&&(o.push(t),u.push((0,_vue.h)("button",{key:t,class:["vxe-pager--num-btn",{"is--active":r===t}],type:"button",onClick:e=>P(e,t)},""+t)))}),e&&l&&(o.push(n),u.push(I("button"),(0,_vue.h)("button",{class:"vxe-pager--num-btn",type:"button",onClick:e=>P(e,n)},n))),t?(0,_vue.h)("span",{class:"vxe-pager--custom-btn-wrapper"},t({numList:o,currentPage:r,pageCount:n})):(0,_vue.h)("span",{class:"vxe-pager--btn-wrapper"},u)},G=()=>j(!0),O=()=>{var{pageSize:e,pageSizePlacement:a,transfer:t}=v,r=_.sizes,u=s.value;return r?(0,_vue.h)("span",{class:"vxe-pager--custom-sizes"},r({pageSize:e,options:u})):(0,_vue.h)(_select.default,{class:"vxe-pager--sizes",modelValue:e,placement:a,transfer:t,options:u,onChange:k})},A=e=>{var a=n["inpCurrPage"],t=e?_.fullJump||_["full-jump"]:_.jump,r=m.value;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-jump"},t({currentPage:a,pageCount:r})):(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:r,min:1,controls:!1,onKeydown:N,onBlur:b,"onUpdate:modelValue"(e){n.inpCurrPage=e}}),e?(0,_vue.h)("span",{class:"vxe-pager--classifier-text"},(0,_ui.getI18n)("vxe.pager.pageClassifier")):null])},U=()=>A(!0),V=()=>{var e=v["currentPage"],a=_.pageCount||_["page-count"],t=m.value;return a?(0,_vue.h)("span",{class:"vxe-pager--custom-count"},a({currentPage:e,pageCount:t})):(0,_vue.h)("span",{class:"vxe-pager--count"},[(0,_vue.h)("span",{class:"vxe-pager--separator"}),(0,_vue.h)("span",t)])},q=()=>{var{currentPage:e,total:a}=v,t=_.total;return t?(0,_vue.h)("span",{class:"vxe-pager--custom-total"},t({total:a,currentPage:e})):(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:l},a))},homePage(){return r(),(0,_vue.nextTick)()},endPage(){return f(),(0,_vue.nextTick)()},prevPage(){return E(),(0,_vue.nextTick)()},nextPage(){return C(),(0,_vue.nextTick)()},prevJump(){return y(),(0,_vue.nextTick)()},nextJump(){return S(),(0,_vue.nextTick)()}},a={handlePrevPage:E,handleNextPage:C,handlePrevJump:y,handleNextJump:S},Object.assign(l,o,a),(0,_vue.watch)(()=>v.currentPage,e=>{n.inpCurrPage=e});return l.renderVN=()=>{var{align:e,layouts:a,className:t}=v;const r=[];var u=p.value,n=m.value;return _.left&&r.push((0,_vue.h)("span",{class:"vxe-pager--left-wrapper"},_.left({$grid:g}))),a.forEach(e=>{let a;switch(e){case"Home":a=z;break;case"PrevJump":a=M;break;case"PrevPage":a=J;break;case"Number":a=j;break;case"JumpNumber":a=G;break;case"NextPage":a=R;break;case"NextJump":a=I;break;case"End":a=T;break;case"Sizes":a=O;break;case"FullJump":a=U;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])}),_.right&&r.push((0,_vue.h)("span",{class:"vxe-pager--right-wrapper"},_.right({$grid:g}))),(0,_vue.h)("div",{ref:i,class:["vxe-pager",t?_xeUtils.default.isFunction(t)?t({$pager:l}):t:"",{["size--"+u]:u,["align--"+e]:e,"is--border":v.border,"is--background":v.background,"is--perfect":v.perfect,"is--hidden":v.autoHidden&&1===n,"is--loading":v.loading}]},[(0,_vue.h)("div",{class:"vxe-pager--wrapper"},r)])},l},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)),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()}});
|