vxe-pc-ui 4.3.95 → 4.3.97

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 (70) 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 +92 -12
  8. package/es/pager/style.css +40 -2
  9. package/es/pager/style.min.css +1 -1
  10. package/es/row/src/col.js +3 -2
  11. package/es/style.css +1 -1
  12. package/es/style.min.css +1 -1
  13. package/es/ui/index.js +1 -1
  14. package/es/ui/src/log.js +1 -1
  15. package/es/vxe-col/style.css +4 -0
  16. package/es/vxe-col/style.min.css +1 -1
  17. package/es/vxe-date-picker/style.css +1 -1
  18. package/es/vxe-date-picker/style.min.css +1 -1
  19. package/es/vxe-pager/style.css +40 -2
  20. package/es/vxe-pager/style.min.css +1 -1
  21. package/lib/col/style/style.css +4 -0
  22. package/lib/col/style/style.min.css +1 -1
  23. package/lib/date-picker/style/style.css +1 -1
  24. package/lib/date-picker/style/style.min.css +1 -1
  25. package/lib/icon/style/style.css +1 -1
  26. package/lib/icon/style/style.min.css +1 -1
  27. package/lib/index.umd.js +149 -15
  28. package/lib/index.umd.min.js +1 -1
  29. package/lib/language/ja-JP.js +2 -2
  30. package/lib/language/ja-JP.min.js +1 -1
  31. package/lib/language/ja-JP.umd.js +2 -2
  32. package/lib/pager/src/pager.js +144 -12
  33. package/lib/pager/src/pager.min.js +1 -1
  34. package/lib/pager/style/style.css +40 -2
  35. package/lib/pager/style/style.min.css +1 -1
  36. package/lib/row/src/col.js +3 -1
  37. package/lib/row/src/col.min.js +1 -1
  38. package/lib/style.css +1 -1
  39. package/lib/style.min.css +1 -1
  40. package/lib/ui/index.js +1 -1
  41. package/lib/ui/index.min.js +1 -1
  42. package/lib/ui/src/log.js +1 -1
  43. package/lib/ui/src/log.min.js +1 -1
  44. package/lib/vxe-col/style/style.css +4 -0
  45. package/lib/vxe-col/style/style.min.css +1 -1
  46. package/lib/vxe-date-picker/style/style.css +1 -1
  47. package/lib/vxe-date-picker/style/style.min.css +1 -1
  48. package/lib/vxe-pager/style/style.css +40 -2
  49. package/lib/vxe-pager/style/style.min.css +1 -1
  50. package/package.json +1 -1
  51. package/packages/language/ja-JP.ts +2 -2
  52. package/packages/pager/src/pager.ts +94 -12
  53. package/packages/row/src/col.ts +3 -2
  54. package/styles/components/col.scss +23 -1
  55. package/styles/components/date-picker.scss +1 -1
  56. package/styles/components/pager.scss +16 -0
  57. package/types/components/pager.d.ts +74 -0
  58. package/types/components/table.d.ts +7 -0
  59. /package/es/icon/{iconfont.1740188871481.ttf → iconfont.1740558176929.ttf} +0 -0
  60. /package/es/icon/{iconfont.1740188871481.woff → iconfont.1740558176929.woff} +0 -0
  61. /package/es/icon/{iconfont.1740188871481.woff2 → iconfont.1740558176929.woff2} +0 -0
  62. /package/es/{iconfont.1740188871481.ttf → iconfont.1740558176929.ttf} +0 -0
  63. /package/es/{iconfont.1740188871481.woff → iconfont.1740558176929.woff} +0 -0
  64. /package/es/{iconfont.1740188871481.woff2 → iconfont.1740558176929.woff2} +0 -0
  65. /package/lib/icon/style/{iconfont.1740188871481.ttf → iconfont.1740558176929.ttf} +0 -0
  66. /package/lib/icon/style/{iconfont.1740188871481.woff → iconfont.1740558176929.woff} +0 -0
  67. /package/lib/icon/style/{iconfont.1740188871481.woff2 → iconfont.1740558176929.woff2} +0 -0
  68. /package/lib/{iconfont.1740188871481.ttf → iconfont.1740558176929.ttf} +0 -0
  69. /package/lib/{iconfont.1740188871481.woff → iconfont.1740558176929.woff} +0 -0
  70. /package/lib/{iconfont.1740188871481.woff2 → iconfont.1740558176929.woff2} +0 -0
@@ -252,9 +252,16 @@ export default defineComponent({
252
252
 
253
253
  // 第一页
254
254
  const renderHomePage = () => {
255
+ const { currentPage } = props
256
+ const homeSlot = slots.home
257
+ if (homeSlot) {
258
+ return h('span', {
259
+ class: 'vxe-pager--custom-home-btn'
260
+ }, homeSlot({ currentPage }))
261
+ }
255
262
  return h('button', {
256
- class: ['vxe-pager--prev-btn', {
257
- 'is--disabled': props.currentPage <= 1
263
+ class: ['vxe-pager--home-btn', {
264
+ 'is--disabled': currentPage <= 1
258
265
  }],
259
266
  type: 'button',
260
267
  title: getI18n('vxe.pager.homePageTitle'),
@@ -268,9 +275,16 @@ export default defineComponent({
268
275
 
269
276
  // 上一页
270
277
  const renderPrevPage = () => {
278
+ const { currentPage } = props
279
+ const prevPageSlot = slots.prevPage || slots['prev-page']
280
+ if (prevPageSlot) {
281
+ return h('span', {
282
+ class: 'vxe-pager--custom-prev-btn'
283
+ }, prevPageSlot({ currentPage }))
284
+ }
271
285
  return h('button', {
272
286
  class: ['vxe-pager--prev-btn', {
273
- 'is--disabled': props.currentPage <= 1
287
+ 'is--disabled': currentPage <= 1
274
288
  }],
275
289
  type: 'button',
276
290
  title: getI18n('vxe.pager.prevPageTitle'),
@@ -284,10 +298,17 @@ export default defineComponent({
284
298
 
285
299
  // 向上翻页
286
300
  const renderPrevJump = (tagName?: string) => {
301
+ const { currentPage } = props
302
+ const prevJumpSlot = slots.prevJump || slots['prev-jump']
303
+ if (prevJumpSlot) {
304
+ return h('span', {
305
+ class: 'vxe-pager--custom-jump-prev'
306
+ }, prevJumpSlot({ currentPage }))
307
+ }
287
308
  return h(tagName || 'button', {
288
309
  class: ['vxe-pager--jump-prev', {
289
310
  'is--fixed': !tagName,
290
- 'is--disabled': props.currentPage <= 1
311
+ 'is--disabled': currentPage <= 1
291
312
  }],
292
313
  type: 'button',
293
314
  title: getI18n('vxe.pager.prevJumpTitle'),
@@ -306,11 +327,18 @@ export default defineComponent({
306
327
 
307
328
  // 向下翻页
308
329
  const renderNextJump = (tagName?: string) => {
330
+ const { currentPage } = props
331
+ const nextJumpSlot = slots.nextJump || slots['next-jump']
309
332
  const pageCount = computePageCount.value
333
+ if (nextJumpSlot) {
334
+ return h('span', {
335
+ class: 'vxe-pager--custom-jump-next'
336
+ }, nextJumpSlot({ currentPage }))
337
+ }
310
338
  return h(tagName || 'button', {
311
339
  class: ['vxe-pager--jump-next', {
312
340
  'is--fixed': !tagName,
313
- 'is--disabled': props.currentPage >= pageCount
341
+ 'is--disabled': currentPage >= pageCount
314
342
  }],
315
343
  type: 'button',
316
344
  title: getI18n('vxe.pager.nextJumpTitle'),
@@ -329,10 +357,17 @@ export default defineComponent({
329
357
 
330
358
  // 下一页
331
359
  const renderNextPage = () => {
360
+ const { currentPage } = props
361
+ const nextPageSlot = slots.nextPage || slots['next-page']
332
362
  const pageCount = computePageCount.value
363
+ if (nextPageSlot) {
364
+ return h('span', {
365
+ class: 'vxe-pager--custom-next-btn'
366
+ }, nextPageSlot({ currentPage }))
367
+ }
333
368
  return h('button', {
334
369
  class: ['vxe-pager--next-btn', {
335
- 'is--disabled': props.currentPage >= pageCount
370
+ 'is--disabled': currentPage >= pageCount
336
371
  }],
337
372
  type: 'button',
338
373
  title: getI18n('vxe.pager.nextPageTitle'),
@@ -346,10 +381,17 @@ export default defineComponent({
346
381
 
347
382
  // 最后一页
348
383
  const renderEndPage = () => {
384
+ const { currentPage } = props
385
+ const endSlot = slots.end
349
386
  const pageCount = computePageCount.value
387
+ if (endSlot) {
388
+ return h('span', {
389
+ class: 'vxe-pager--custom-end-btn'
390
+ }, endSlot({ currentPage, pageCount }))
391
+ }
350
392
  return h('button', {
351
- class: ['vxe-pager--prev-btn', {
352
- 'is--disabled': props.currentPage >= pageCount
393
+ class: ['vxe-pager--end-btn', {
394
+ 'is--disabled': currentPage >= pageCount
353
395
  }],
354
396
  type: 'button',
355
397
  title: getI18n('vxe.pager.endPageTitle'),
@@ -364,6 +406,7 @@ export default defineComponent({
364
406
  // 页数
365
407
  const renderNumber = (showJump?: boolean) => {
366
408
  const { currentPage, pagerCount } = props
409
+ const numberSlot = showJump ? (slots.numberJump || slots['number-jump']) : slots.number
367
410
  const nums = []
368
411
  const pageCount = computePageCount.value
369
412
  const numList = computeNumList.value
@@ -371,7 +414,9 @@ export default defineComponent({
371
414
  const isOv = pageCount > pagerCount
372
415
  const isLt = isOv && currentPage > offsetNumber + 1
373
416
  const isGt = isOv && currentPage < pageCount - offsetNumber
417
+ const restList: number[] = []
374
418
  let startNumber = 1
419
+
375
420
  if (isOv) {
376
421
  if (currentPage >= pageCount - offsetNumber) {
377
422
  startNumber = Math.max(pageCount - numList.length + 1, 1)
@@ -379,7 +424,9 @@ export default defineComponent({
379
424
  startNumber = Math.max(currentPage - offsetNumber, 1)
380
425
  }
381
426
  }
427
+
382
428
  if (showJump && isLt) {
429
+ restList.push(1)
383
430
  nums.push(
384
431
  h('button', {
385
432
  class: 'vxe-pager--num-btn',
@@ -392,6 +439,7 @@ export default defineComponent({
392
439
  numList.forEach((item, index) => {
393
440
  const number = startNumber + index
394
441
  if (number <= pageCount) {
442
+ restList.push(number)
395
443
  nums.push(
396
444
  h('button', {
397
445
  key: number,
@@ -405,6 +453,7 @@ export default defineComponent({
405
453
  }
406
454
  })
407
455
  if (showJump && isGt) {
456
+ restList.push(pageCount)
408
457
  nums.push(
409
458
  renderNextJump('button'),
410
459
  h('button', {
@@ -414,6 +463,11 @@ export default defineComponent({
414
463
  }, pageCount)
415
464
  )
416
465
  }
466
+ if (numberSlot) {
467
+ return h('span', {
468
+ class: 'vxe-pager--custom-btn-wrapper'
469
+ }, numberSlot({ numList: restList, currentPage, pageCount }))
470
+ }
417
471
  return h('span', {
418
472
  class: 'vxe-pager--btn-wrapper'
419
473
  }, nums)
@@ -426,12 +480,19 @@ export default defineComponent({
426
480
 
427
481
  // sizes
428
482
  const renderSizes = () => {
483
+ const { pageSize, pageSizePlacement, transfer } = props
484
+ const sizesSlot = slots.sizes
429
485
  const sizeList = computeSizeList.value
486
+ if (sizesSlot) {
487
+ return h('span', {
488
+ class: 'vxe-pager--custom-sizes'
489
+ }, sizesSlot({ pageSize, options: sizeList }))
490
+ }
430
491
  return h(VxeSelectComponent, {
431
492
  class: 'vxe-pager--sizes',
432
- modelValue: props.pageSize,
433
- placement: props.pageSizePlacement,
434
- transfer: props.transfer,
493
+ modelValue: pageSize,
494
+ placement: pageSizePlacement,
495
+ transfer: transfer,
435
496
  options: sizeList,
436
497
  onChange: pageSizeEvent
437
498
  })
@@ -439,7 +500,14 @@ export default defineComponent({
439
500
 
440
501
  // Jump
441
502
  const renderJump = (isFull?: boolean) => {
503
+ const { inpCurrPage } = reactData
504
+ const jumpSlot = isFull ? (slots.fullJump || slots['full-jump']) : slots.jump
442
505
  const pageCount = computePageCount.value
506
+ if (jumpSlot) {
507
+ return h('span', {
508
+ class: 'vxe-pager--custom-jump'
509
+ }, jumpSlot({ currentPage: inpCurrPage, pageCount }))
510
+ }
443
511
  return h('span', {
444
512
  class: 'vxe-pager--jump'
445
513
  }, [
@@ -478,7 +546,14 @@ export default defineComponent({
478
546
 
479
547
  // PageCount
480
548
  const renderPageCount = () => {
549
+ const { currentPage } = props
550
+ const pageCountSlot = slots.pageCount || slots['page-count']
481
551
  const pageCount = computePageCount.value
552
+ if (pageCountSlot) {
553
+ return h('span', {
554
+ class: 'vxe-pager--custom-count'
555
+ }, pageCountSlot({ currentPage, pageCount }))
556
+ }
482
557
  return h('span', {
483
558
  class: 'vxe-pager--count'
484
559
  }, [
@@ -491,9 +566,16 @@ export default defineComponent({
491
566
 
492
567
  // total
493
568
  const renderTotal = () => {
569
+ const { currentPage, total } = props
570
+ const totalSlot = slots.total
571
+ if (totalSlot) {
572
+ return h('span', {
573
+ class: 'vxe-pager--custom-total'
574
+ }, totalSlot({ total, currentPage }))
575
+ }
494
576
  return h('span', {
495
577
  class: 'vxe-pager--total'
496
- }, getI18n('vxe.pager.total', [props.total]))
578
+ }, getI18n('vxe.pager.total', [total]))
497
579
  }
498
580
 
499
581
  const dispatchEvent = (type: ValueOf<VxePagerEmits>, params: Record<string, any>, evnt: Event | null) => {
@@ -106,13 +106,14 @@ export default defineComponent({
106
106
  Object.assign($xeCol, colMethods, colPrivateMethods)
107
107
 
108
108
  const renderVN = () => {
109
- const { span, fill, align, ellipsis } = props
109
+ const { span, fill, align, width, ellipsis } = props
110
110
  const colStyle = computeColStyle.value
111
111
  const defaultSlot = slots.default
112
112
  return h('div', {
113
113
  ref: refElem,
114
114
  class: ['vxe-col', span ? `span${span}` : '', align ? `align--${align}` : '', {
115
- 'is--span': span,
115
+ 'is--span': !!span,
116
+ 'is--width': !!width,
116
117
  'is--fill': fill,
117
118
  'is--ellipsis': ellipsis
118
119
  }],
@@ -32,8 +32,30 @@ $colSpanList: 4.16667%, 8.33333%, 12.5%, 16.66667%, 20.83333%, 25%, 29.16667%, 3
32
32
  }
33
33
  }
34
34
  }
35
+
35
36
  .vxe-col--inner {
36
37
  display: flex;
37
38
  flex-direction: column;
38
39
  width: 100%;
39
- }
40
+ }
41
+
42
+ .vxe-col {
43
+ &.is--span,
44
+ &.is--width {
45
+ & > .vxe-col--inner {
46
+ & > .vxe-default-textarea,
47
+ & > .vxe-default-select,
48
+ & > .vxe-input,
49
+ & > .vxe-number-input,
50
+ & > .vxe-password-input,
51
+ & > .vxe-date-picker,
52
+ & > .vxe-textarea,
53
+ & > .vxe-select,
54
+ & > .vxe-tree-select,
55
+ & > .vxe-table-select,
56
+ & > .vxe-ico-picker {
57
+ width: 100%;
58
+ }
59
+ }
60
+ }
61
+ }
@@ -164,7 +164,7 @@
164
164
  }
165
165
 
166
166
  .vxe-date-picker--panel-layout-wrapper {
167
- display: flex;
167
+ display: inline-flex;
168
168
  flex-direction: column;
169
169
  pointer-events: auto;
170
170
  background-color: var(--vxe-ui-layout-background-color);
@@ -29,6 +29,8 @@
29
29
  background-color: var(--vxe-ui-loading-background-color);
30
30
  }
31
31
  }
32
+ .vxe-pager--home-btn,
33
+ .vxe-pager--end-btn,
32
34
  .vxe-pager--prev-btn,
33
35
  .vxe-pager--next-btn,
34
36
  .vxe-pager--num-btn,
@@ -54,6 +56,8 @@
54
56
  &.is--border,
55
57
  &.is--perfect {
56
58
  &:not(.is--background) {
59
+ .vxe-pager--home-btn,
60
+ .vxe-pager--end-btn,
57
61
  .vxe-pager--prev-btn,
58
62
  .vxe-pager--next-btn,
59
63
  .vxe-pager--num-btn,
@@ -65,6 +69,8 @@
65
69
  }
66
70
  &.is--background,
67
71
  &.is--perfect {
72
+ .vxe-pager--home-btn,
73
+ .vxe-pager--end-btn,
68
74
  .vxe-pager--prev-btn,
69
75
  .vxe-pager--next-btn,
70
76
  .vxe-pager--jump-prev,
@@ -118,6 +124,8 @@
118
124
  .vxe-pager--left-wrapper,
119
125
  .vxe-pager--right-wrapper,
120
126
  .vxe-pager--total,
127
+ .vxe-pager--home-btn,
128
+ .vxe-pager--end-btn,
121
129
  .vxe-pager--prev-btn,
122
130
  .vxe-pager--next-btn,
123
131
  .vxe-pager--jump,
@@ -129,6 +137,8 @@
129
137
  vertical-align: middle;
130
138
  display: inline-block;
131
139
  }
140
+ .vxe-pager--home-btn,
141
+ .vxe-pager--end-btn,
132
142
  .vxe-pager--prev-btn,
133
143
  .vxe-pager--jump-prev,
134
144
  .vxe-pager--num-btn,
@@ -140,6 +150,8 @@
140
150
  .vxe-pager--left-wrapper,
141
151
  .vxe-pager--right-wrapper,
142
152
  .vxe-pager--count,
153
+ .vxe-pager--home-btn,
154
+ .vxe-pager--end-btn,
143
155
  .vxe-pager--prev-btn,
144
156
  .vxe-pager--next-btn,
145
157
  .vxe-pager--jump-prev,
@@ -153,6 +165,8 @@
153
165
  text-align: center;
154
166
  }
155
167
  .vxe-pager--jump-prev,
168
+ .vxe-pager--home-btn,
169
+ .vxe-pager--end-btn,
156
170
  .vxe-pager--prev-btn,
157
171
  .vxe-pager--next-btn,
158
172
  .vxe-pager--jump-next,
@@ -181,6 +195,8 @@
181
195
  }
182
196
  }
183
197
  .vxe-pager--jump-prev,
198
+ .vxe-pager--home-btn,
199
+ .vxe-pager--end-btn,
184
200
  .vxe-pager--prev-btn,
185
201
  .vxe-pager--next-btn,
186
202
  .vxe-pager--jump-next,
@@ -201,11 +201,85 @@ export namespace VxePagerSlotTypes {
201
201
  export interface DefaultSlotParams {
202
202
  [key: string]: any
203
203
  }
204
+ export interface HomeSlotParams {
205
+ currentPage: number
206
+ }
207
+ export interface PrevPageSlotParams {
208
+ currentPage: number
209
+ }
210
+ export interface PrevJumpSlotParams {
211
+ currentPage: number
212
+ }
213
+ export interface NextJumpSlotParams {
214
+ currentPage: number
215
+ }
216
+ export interface NextPageSlotParams {
217
+ currentPage: number
218
+ }
219
+ export interface EndSlotParams {
220
+ currentPage: number
221
+ }
222
+ export interface NumberJumpSlotParams {
223
+ numList: number[]
224
+ currentPage: number
225
+ pageCount: number
226
+ }
227
+ export interface SizesSlotParams {
228
+ currentPage: number
229
+ options: {
230
+ label: number | string
231
+ value: number | string
232
+ }[]
233
+ }
234
+ export interface FullJumpSlotParams {
235
+ currentPage: number
236
+ pageCount: number
237
+ }
238
+ export interface PageCountSlotParams {
239
+ currentPage: number
240
+ pageCount: number
241
+ }
242
+ export interface TotalSlotParams {
243
+ currentPage: number
244
+ total: number
245
+ }
204
246
  }
205
247
 
206
248
  export interface VxePagerSlots {
207
249
  left?: (params: VxePagerSlotTypes.DefaultSlotParams) => any
250
+
208
251
  right?: (params: VxePagerSlotTypes.DefaultSlotParams) => any
252
+
253
+ home?: (params: VxePagerSlotTypes.HomeSlotParams) => any
254
+
255
+ prevPage?: (params: VxePagerSlotTypes.PrevPageSlotParams) => any
256
+ 'prev-page'?: (params: VxePagerSlotTypes.PrevPageSlotParams) => any
257
+
258
+ prevJump?: (params: VxePagerSlotTypes.PrevJumpSlotParams) => any
259
+ 'prev-jump'?: (params: VxePagerSlotTypes.PrevJumpSlotParams) => any
260
+
261
+ nextJump?: (params: VxePagerSlotTypes.NextJumpSlotParams) => any
262
+ 'next-jump'?: (params: VxePagerSlotTypes.NextJumpSlotParams) => any
263
+
264
+ nextPage?: (params: VxePagerSlotTypes.NextPageSlotParams) => any
265
+ 'next-page'?: (params: VxePagerSlotTypes.NextPageSlotParams) => any
266
+
267
+ end?: (params: VxePagerSlotTypes.EndSlotParams) => any
268
+
269
+ number?: (params: VxePagerSlotTypes.NumberJumpSlotParams) => any
270
+ numberJump?: (params: VxePagerSlotTypes.NumberJumpSlotParams) => any
271
+ 'number-jump'?: (params: VxePagerSlotTypes.NumberJumpSlotParams) => any
272
+
273
+ sizes?: (params: VxePagerSlotTypes.SizesSlotParams) => any
274
+
275
+ fullJump?: (params: VxePagerSlotTypes.FullJumpSlotParams) => any
276
+ 'full-jump'?: (params: VxePagerSlotTypes.FullJumpSlotParams) => any
277
+ jump?: (params: VxePagerSlotTypes.FullJumpSlotParams) => any
278
+
279
+ pageCount?: (params: VxePagerSlotTypes.PageCountSlotParams) => any
280
+ 'page-count'?: (params: VxePagerSlotTypes.PageCountSlotParams) => any
281
+
282
+ total?: (params: VxePagerSlotTypes.TotalSlotParams) => any
209
283
  }
210
284
 
211
285
  export const Pager: typeof VxePager
@@ -3115,6 +3115,12 @@ export interface TableReactData<D = any> {
3115
3115
  }
3116
3116
 
3117
3117
  scrollVMLoading: boolean
3118
+ scrollYHeight: number
3119
+ scrollYTop: number
3120
+ isScrollYBig: boolean
3121
+ scrollXLeft: number
3122
+ scrollXWidth: number
3123
+ isScrollXBig: boolean
3118
3124
 
3119
3125
  rowExpandHeightFlag: number
3120
3126
  calcCellHeightFlag: number
@@ -4329,6 +4335,7 @@ export namespace VxeTableDefines {
4329
4335
  items: VxeTableDefines.ColumnInfo<D>[]
4330
4336
  parent: VxeTableDefines.ColumnInfo<D> | null
4331
4337
  width: number
4338
+ oLeft: number
4332
4339
  }
4333
4340
 
4334
4341
  /**