vxe-pc-ui 4.3.95 → 4.3.96

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 (61) hide show
  1. package/es/col/style.css +4 -0
  2. package/es/col/style.min.css +1 -1
  3. package/es/date-picker/style.css +1 -1
  4. package/es/date-picker/style.min.css +1 -1
  5. package/es/icon/style.css +1 -1
  6. package/es/language/ja-JP.js +2 -2
  7. package/es/pager/src/pager.js +128 -81
  8. package/es/row/src/col.js +3 -2
  9. package/es/style.css +1 -1
  10. package/es/style.min.css +1 -1
  11. package/es/ui/index.js +1 -1
  12. package/es/ui/src/log.js +1 -1
  13. package/es/vxe-col/style.css +4 -0
  14. package/es/vxe-col/style.min.css +1 -1
  15. package/es/vxe-date-picker/style.css +1 -1
  16. package/es/vxe-date-picker/style.min.css +1 -1
  17. package/lib/col/style/style.css +4 -0
  18. package/lib/col/style/style.min.css +1 -1
  19. package/lib/date-picker/style/style.css +1 -1
  20. package/lib/date-picker/style/style.min.css +1 -1
  21. package/lib/icon/style/style.css +1 -1
  22. package/lib/icon/style/style.min.css +1 -1
  23. package/lib/index.umd.js +106 -21
  24. package/lib/index.umd.min.js +1 -1
  25. package/lib/language/ja-JP.js +2 -2
  26. package/lib/language/ja-JP.min.js +1 -1
  27. package/lib/language/ja-JP.umd.js +2 -2
  28. package/lib/pager/src/pager.js +101 -18
  29. package/lib/pager/src/pager.min.js +1 -1
  30. package/lib/row/src/col.js +3 -1
  31. package/lib/row/src/col.min.js +1 -1
  32. package/lib/style.css +1 -1
  33. package/lib/style.min.css +1 -1
  34. package/lib/ui/index.js +1 -1
  35. package/lib/ui/index.min.js +1 -1
  36. package/lib/ui/src/log.js +1 -1
  37. package/lib/ui/src/log.min.js +1 -1
  38. package/lib/vxe-col/style/style.css +4 -0
  39. package/lib/vxe-col/style/style.min.css +1 -1
  40. package/lib/vxe-date-picker/style/style.css +1 -1
  41. package/lib/vxe-date-picker/style/style.min.css +1 -1
  42. package/package.json +1 -1
  43. package/packages/language/ja-JP.ts +2 -2
  44. package/packages/pager/src/pager.ts +133 -83
  45. package/packages/row/src/col.ts +3 -2
  46. package/styles/components/col.scss +23 -1
  47. package/styles/components/date-picker.scss +1 -1
  48. package/types/components/pager.d.ts +76 -0
  49. package/types/components/table.d.ts +7 -0
  50. /package/es/icon/{iconfont.1740188871481.ttf → iconfont.1740550757682.ttf} +0 -0
  51. /package/es/icon/{iconfont.1740188871481.woff → iconfont.1740550757682.woff} +0 -0
  52. /package/es/icon/{iconfont.1740188871481.woff2 → iconfont.1740550757682.woff2} +0 -0
  53. /package/es/{iconfont.1740188871481.ttf → iconfont.1740550757682.ttf} +0 -0
  54. /package/es/{iconfont.1740188871481.woff → iconfont.1740550757682.woff} +0 -0
  55. /package/es/{iconfont.1740188871481.woff2 → iconfont.1740550757682.woff2} +0 -0
  56. /package/lib/icon/style/{iconfont.1740188871481.ttf → iconfont.1740550757682.ttf} +0 -0
  57. /package/lib/icon/style/{iconfont.1740188871481.woff → iconfont.1740550757682.woff} +0 -0
  58. /package/lib/icon/style/{iconfont.1740188871481.woff2 → iconfont.1740550757682.woff2} +0 -0
  59. /package/lib/{iconfont.1740188871481.ttf → iconfont.1740550757682.ttf} +0 -0
  60. /package/lib/{iconfont.1740188871481.woff → iconfont.1740550757682.woff} +0 -0
  61. /package/lib/{iconfont.1740188871481.woff2 → iconfont.1740550757682.woff2} +0 -0
@@ -225,112 +225,137 @@ export default defineComponent({
225
225
  };
226
226
  // 第一页
227
227
  const renderHomePage = () => {
228
+ const { currentPage } = props;
229
+ const homePageSlot = slots.homePage || slots['home-page'];
228
230
  return h('button', {
229
231
  class: ['vxe-pager--prev-btn', {
230
- 'is--disabled': props.currentPage <= 1
232
+ 'is--disabled': currentPage <= 1
231
233
  }],
232
234
  type: 'button',
233
235
  title: getI18n('vxe.pager.homePageTitle'),
234
236
  onClick: handleHomePage
235
- }, [
236
- h('i', {
237
- class: ['vxe-pager--btn-icon', props.iconHomePage || getIcon().PAGER_HOME]
238
- })
239
- ]);
237
+ }, homePageSlot
238
+ ? homePageSlot({ currentPage })
239
+ : [
240
+ h('i', {
241
+ class: ['vxe-pager--btn-icon', props.iconHomePage || getIcon().PAGER_HOME]
242
+ })
243
+ ]);
240
244
  };
241
245
  // 上一页
242
246
  const renderPrevPage = () => {
247
+ const { currentPage } = props;
248
+ const prevPageSlot = slots.prevPage || slots['prev-page'];
243
249
  return h('button', {
244
250
  class: ['vxe-pager--prev-btn', {
245
- 'is--disabled': props.currentPage <= 1
251
+ 'is--disabled': currentPage <= 1
246
252
  }],
247
253
  type: 'button',
248
254
  title: getI18n('vxe.pager.prevPageTitle'),
249
255
  onClick: handlePrevPage
250
- }, [
251
- h('i', {
252
- class: ['vxe-pager--btn-icon', props.iconPrevPage || getIcon().PAGER_PREV_PAGE]
253
- })
254
- ]);
256
+ }, prevPageSlot
257
+ ? prevPageSlot({ currentPage })
258
+ : [
259
+ h('i', {
260
+ class: ['vxe-pager--btn-icon', props.iconPrevPage || getIcon().PAGER_PREV_PAGE]
261
+ })
262
+ ]);
255
263
  };
256
264
  // 向上翻页
257
265
  const renderPrevJump = (tagName) => {
266
+ const { currentPage } = props;
267
+ const jumpPrevSlot = slots.jumpPrev || slots['jump-prev'];
258
268
  return h(tagName || 'button', {
259
269
  class: ['vxe-pager--jump-prev', {
260
270
  'is--fixed': !tagName,
261
- 'is--disabled': props.currentPage <= 1
271
+ 'is--disabled': currentPage <= 1
262
272
  }],
263
273
  type: 'button',
264
274
  title: getI18n('vxe.pager.prevJumpTitle'),
265
275
  onClick: handlePrevJump
266
- }, [
267
- tagName
268
- ? h('i', {
269
- class: ['vxe-pager--jump-more-icon', props.iconJumpMore || getIcon().PAGER_JUMP_MORE]
276
+ }, jumpPrevSlot
277
+ ? jumpPrevSlot({ currentPage })
278
+ : [
279
+ tagName
280
+ ? h('i', {
281
+ class: ['vxe-pager--jump-more-icon', props.iconJumpMore || getIcon().PAGER_JUMP_MORE]
282
+ })
283
+ : null,
284
+ h('i', {
285
+ class: ['vxe-pager--jump-icon', props.iconJumpPrev || getIcon().PAGER_JUMP_PREV]
270
286
  })
271
- : null,
272
- h('i', {
273
- class: ['vxe-pager--jump-icon', props.iconJumpPrev || getIcon().PAGER_JUMP_PREV]
274
- })
275
- ]);
287
+ ]);
276
288
  };
277
289
  // 向下翻页
278
290
  const renderNextJump = (tagName) => {
291
+ const { currentPage } = props;
292
+ const jumpNextSlot = slots.jumpNext || slots['jump-next'];
279
293
  const pageCount = computePageCount.value;
280
294
  return h(tagName || 'button', {
281
295
  class: ['vxe-pager--jump-next', {
282
296
  'is--fixed': !tagName,
283
- 'is--disabled': props.currentPage >= pageCount
297
+ 'is--disabled': currentPage >= pageCount
284
298
  }],
285
299
  type: 'button',
286
300
  title: getI18n('vxe.pager.nextJumpTitle'),
287
301
  onClick: handleNextJump
288
- }, [
289
- tagName
290
- ? h('i', {
291
- class: ['vxe-pager--jump-more-icon', props.iconJumpMore || getIcon().PAGER_JUMP_MORE]
302
+ }, jumpNextSlot
303
+ ? jumpNextSlot({ currentPage })
304
+ : [
305
+ tagName
306
+ ? h('i', {
307
+ class: ['vxe-pager--jump-more-icon', props.iconJumpMore || getIcon().PAGER_JUMP_MORE]
308
+ })
309
+ : null,
310
+ h('i', {
311
+ class: ['vxe-pager--jump-icon', props.iconJumpNext || getIcon().PAGER_JUMP_NEXT]
292
312
  })
293
- : null,
294
- h('i', {
295
- class: ['vxe-pager--jump-icon', props.iconJumpNext || getIcon().PAGER_JUMP_NEXT]
296
- })
297
- ]);
313
+ ]);
298
314
  };
299
315
  // 下一页
300
316
  const renderNextPage = () => {
317
+ const { currentPage } = props;
318
+ const nextPageSlot = slots.nextPage || slots['next-page'];
301
319
  const pageCount = computePageCount.value;
302
320
  return h('button', {
303
321
  class: ['vxe-pager--next-btn', {
304
- 'is--disabled': props.currentPage >= pageCount
322
+ 'is--disabled': currentPage >= pageCount
305
323
  }],
306
324
  type: 'button',
307
325
  title: getI18n('vxe.pager.nextPageTitle'),
308
326
  onClick: handleNextPage
309
- }, [
310
- h('i', {
311
- class: ['vxe-pager--btn-icon', props.iconNextPage || getIcon().PAGER_NEXT_PAGE]
312
- })
313
- ]);
327
+ }, nextPageSlot
328
+ ? nextPageSlot({ currentPage })
329
+ : [
330
+ h('i', {
331
+ class: ['vxe-pager--btn-icon', props.iconNextPage || getIcon().PAGER_NEXT_PAGE]
332
+ })
333
+ ]);
314
334
  };
315
335
  // 最后一页
316
336
  const renderEndPage = () => {
337
+ const { currentPage } = props;
338
+ const endPageSlot = slots.endPage || slots['end-page'];
317
339
  const pageCount = computePageCount.value;
318
340
  return h('button', {
319
341
  class: ['vxe-pager--prev-btn', {
320
- 'is--disabled': props.currentPage >= pageCount
342
+ 'is--disabled': currentPage >= pageCount
321
343
  }],
322
344
  type: 'button',
323
345
  title: getI18n('vxe.pager.endPageTitle'),
324
346
  onClick: handleEndPage
325
- }, [
326
- h('i', {
327
- class: ['vxe-pager--btn-icon', props.iconEndPage || getIcon().PAGER_END]
328
- })
329
- ]);
347
+ }, endPageSlot
348
+ ? endPageSlot({ currentPage })
349
+ : [
350
+ h('i', {
351
+ class: ['vxe-pager--btn-icon', props.iconEndPage || getIcon().PAGER_END]
352
+ })
353
+ ]);
330
354
  };
331
355
  // 页数
332
356
  const renderNumber = (showJump) => {
333
357
  const { currentPage, pagerCount } = props;
358
+ const numberSlot = showJump ? (slots.jumpNumber || slots['jump-number']) : slots.number;
334
359
  const nums = [];
335
360
  const pageCount = computePageCount.value;
336
361
  const numList = computeNumList.value;
@@ -347,6 +372,11 @@ export default defineComponent({
347
372
  startNumber = Math.max(currentPage - offsetNumber, 1);
348
373
  }
349
374
  }
375
+ if (numberSlot) {
376
+ return h('span', {
377
+ class: 'vxe-pager--btn-wrapper'
378
+ }, numberSlot({ numList, currentPage, pageCount, startNumber }));
379
+ }
350
380
  if (showJump && isLt) {
351
381
  nums.push(h('button', {
352
382
  class: 'vxe-pager--num-btn',
@@ -384,48 +414,59 @@ export default defineComponent({
384
414
  };
385
415
  // sizes
386
416
  const renderSizes = () => {
417
+ const { pageSize, pageSizePlacement, transfer } = props;
418
+ const sizesSlot = slots.sizes;
387
419
  const sizeList = computeSizeList.value;
420
+ if (sizesSlot) {
421
+ return h('span', {
422
+ class: 'vxe-pager--sizes'
423
+ }, sizesSlot({ pageSize, options: sizeList }));
424
+ }
388
425
  return h(VxeSelectComponent, {
389
426
  class: 'vxe-pager--sizes',
390
- modelValue: props.pageSize,
391
- placement: props.pageSizePlacement,
392
- transfer: props.transfer,
427
+ modelValue: pageSize,
428
+ placement: pageSizePlacement,
429
+ transfer: transfer,
393
430
  options: sizeList,
394
431
  onChange: pageSizeEvent
395
432
  });
396
433
  };
397
434
  // Jump
398
435
  const renderJump = (isFull) => {
436
+ const { inpCurrPage } = reactData;
437
+ const jumpSlot = isFull ? (slots.fullJump || slots['full-jump']) : slots.jump;
399
438
  const pageCount = computePageCount.value;
400
439
  return h('span', {
401
440
  class: 'vxe-pager--jump'
402
- }, [
403
- isFull
404
- ? h('span', {
405
- class: 'vxe-pager--goto-text'
406
- }, getI18n('vxe.pager.goto'))
407
- : null,
408
- h(VxeInputComponent, {
409
- class: 'vxe-pager--goto',
410
- modelValue: reactData.inpCurrPage,
411
- placeholder: getI18n('vxe.pager.gotoTitle'),
412
- align: 'center',
413
- type: 'integer',
414
- max: pageCount,
415
- min: 1,
416
- controls: false,
417
- onKeydown: jumpKeydownEvent,
418
- onBlur: triggerJumpEvent,
419
- 'onUpdate:modelValue'(val) {
420
- reactData.inpCurrPage = val;
421
- }
422
- }),
423
- isFull
424
- ? h('span', {
425
- class: 'vxe-pager--classifier-text'
426
- }, getI18n('vxe.pager.pageClassifier'))
427
- : null
428
- ]);
441
+ }, jumpSlot
442
+ ? jumpSlot({ currentPage: inpCurrPage, pageCount })
443
+ : [
444
+ isFull
445
+ ? h('span', {
446
+ class: 'vxe-pager--goto-text'
447
+ }, getI18n('vxe.pager.goto'))
448
+ : null,
449
+ h(VxeInputComponent, {
450
+ class: 'vxe-pager--goto',
451
+ modelValue: reactData.inpCurrPage,
452
+ placeholder: getI18n('vxe.pager.gotoTitle'),
453
+ align: 'center',
454
+ type: 'integer',
455
+ max: pageCount,
456
+ min: 1,
457
+ controls: false,
458
+ onKeydown: jumpKeydownEvent,
459
+ onBlur: triggerJumpEvent,
460
+ 'onUpdate:modelValue'(val) {
461
+ reactData.inpCurrPage = val;
462
+ }
463
+ }),
464
+ isFull
465
+ ? h('span', {
466
+ class: 'vxe-pager--classifier-text'
467
+ }, getI18n('vxe.pager.pageClassifier'))
468
+ : null
469
+ ]);
429
470
  };
430
471
  // FullJump
431
472
  const renderFullJump = () => {
@@ -433,21 +474,27 @@ export default defineComponent({
433
474
  };
434
475
  // PageCount
435
476
  const renderPageCount = () => {
477
+ const { currentPage } = props;
478
+ const pageCountSlot = slots.pageCount || slots['page-count'];
436
479
  const pageCount = computePageCount.value;
437
480
  return h('span', {
438
481
  class: 'vxe-pager--count'
439
- }, [
440
- h('span', {
441
- class: 'vxe-pager--separator'
442
- }),
443
- h('span', pageCount)
444
- ]);
482
+ }, pageCountSlot
483
+ ? pageCountSlot({ currentPage, pageCount })
484
+ : [
485
+ h('span', {
486
+ class: 'vxe-pager--separator'
487
+ }),
488
+ h('span', pageCount)
489
+ ]);
445
490
  };
446
491
  // total
447
492
  const renderTotal = () => {
493
+ const { currentPage, total } = props;
494
+ const totalSlot = slots.total;
448
495
  return h('span', {
449
496
  class: 'vxe-pager--total'
450
- }, getI18n('vxe.pager.total', [props.total]));
497
+ }, totalSlot ? totalSlot({ total, currentPage }) : getI18n('vxe.pager.total', [total]));
451
498
  };
452
499
  const dispatchEvent = (type, params, evnt) => {
453
500
  emit(type, createEvent(evnt, { $pager: $xePager }, params));
package/es/row/src/col.js CHANGED
@@ -83,13 +83,14 @@ export default defineComponent({
83
83
  const colPrivateMethods = {};
84
84
  Object.assign($xeCol, colMethods, colPrivateMethods);
85
85
  const renderVN = () => {
86
- const { span, fill, align, ellipsis } = props;
86
+ const { span, fill, align, width, ellipsis } = props;
87
87
  const colStyle = computeColStyle.value;
88
88
  const defaultSlot = slots.default;
89
89
  return h('div', {
90
90
  ref: refElem,
91
91
  class: ['vxe-col', span ? `span${span}` : '', align ? `align--${align}` : '', {
92
- 'is--span': span,
92
+ 'is--span': !!span,
93
+ 'is--width': !!width,
93
94
  'is--fill': fill,
94
95
  'is--ellipsis': ellipsis
95
96
  }],