vxe-pc-ui 4.20.0 → 4.20.2

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 (128) hide show
  1. package/dist/all.esm.js +780 -173
  2. package/dist/style.css +1 -1
  3. package/dist/style.min.css +1 -1
  4. package/es/card/src/card.js +19 -4
  5. package/es/drawer/src/drawer.js +59 -15
  6. package/es/drawer/style.css +13 -6
  7. package/es/drawer/style.min.css +1 -1
  8. package/es/icon/style.css +1 -1
  9. package/es/language/fr-FR.js +29 -29
  10. package/es/layout-aside/src/layout-aside.js +10 -6
  11. package/es/layout-body/src/layout-body.js +21 -12
  12. package/es/list/src/list.js +118 -49
  13. package/es/list/style.css +25 -8
  14. package/es/list/style.min.css +1 -1
  15. package/es/menu/src/menu.js +2 -2
  16. package/es/modal/src/modal.js +56 -12
  17. package/es/modal/style.css +15 -4
  18. package/es/modal/style.min.css +1 -1
  19. package/es/scrollbar/src/scrollbar.js +73 -19
  20. package/es/style.css +1 -1
  21. package/es/style.min.css +1 -1
  22. package/es/tabs/src/tabs.js +21 -6
  23. package/es/tree/src/tree.js +410 -53
  24. package/es/tree/style.css +43 -0
  25. package/es/tree/style.min.css +1 -1
  26. package/es/ui/index.js +1 -1
  27. package/es/ui/src/log.js +1 -1
  28. package/es/ui/src/utils.js +3 -0
  29. package/es/vxe-drawer/style.css +13 -6
  30. package/es/vxe-drawer/style.min.css +1 -1
  31. package/es/vxe-list/style.css +25 -8
  32. package/es/vxe-list/style.min.css +1 -1
  33. package/es/vxe-modal/style.css +15 -4
  34. package/es/vxe-modal/style.min.css +1 -1
  35. package/es/vxe-tree/style.css +43 -0
  36. package/es/vxe-tree/style.min.css +1 -1
  37. package/lib/card/src/card.js +19 -4
  38. package/lib/card/src/card.min.js +1 -1
  39. package/lib/drawer/src/drawer.js +64 -11
  40. package/lib/drawer/src/drawer.min.js +1 -1
  41. package/lib/drawer/style/style.css +13 -6
  42. package/lib/drawer/style/style.min.css +1 -1
  43. package/lib/icon/style/style.css +1 -1
  44. package/lib/icon/style/style.min.css +1 -1
  45. package/lib/index.umd.js +887 -183
  46. package/lib/index.umd.min.js +1 -1
  47. package/lib/language/fr-FR.js +29 -29
  48. package/lib/language/fr-FR.min.js +1 -1
  49. package/lib/language/fr-FR.umd.js +29 -29
  50. package/lib/layout-aside/src/layout-aside.js +9 -8
  51. package/lib/layout-aside/src/layout-aside.min.js +1 -1
  52. package/lib/layout-body/src/layout-body.js +29 -22
  53. package/lib/layout-body/src/layout-body.min.js +1 -1
  54. package/lib/list/src/list.js +110 -47
  55. package/lib/list/src/list.min.js +1 -1
  56. package/lib/list/style/style.css +25 -8
  57. package/lib/list/style/style.min.css +1 -1
  58. package/lib/menu/src/menu.js +1 -1
  59. package/lib/menu/src/menu.min.js +1 -1
  60. package/lib/modal/src/modal.js +61 -10
  61. package/lib/modal/src/modal.min.js +1 -1
  62. package/lib/modal/style/style.css +15 -4
  63. package/lib/modal/style/style.min.css +1 -1
  64. package/lib/scrollbar/src/scrollbar.js +81 -17
  65. package/lib/scrollbar/src/scrollbar.min.js +1 -1
  66. package/lib/style.css +1 -1
  67. package/lib/style.min.css +1 -1
  68. package/lib/tabs/src/tabs.js +23 -11
  69. package/lib/tabs/src/tabs.min.js +1 -1
  70. package/lib/tree/src/tree.js +412 -50
  71. package/lib/tree/src/tree.min.js +1 -1
  72. package/lib/tree/style/style.css +43 -0
  73. package/lib/tree/style/style.min.css +1 -1
  74. package/lib/ui/index.js +1 -1
  75. package/lib/ui/index.min.js +1 -1
  76. package/lib/ui/src/log.js +1 -1
  77. package/lib/ui/src/log.min.js +1 -1
  78. package/lib/ui/src/utils.js +4 -0
  79. package/lib/ui/src/utils.min.js +1 -1
  80. package/lib/vxe-drawer/style/style.css +13 -6
  81. package/lib/vxe-drawer/style/style.min.css +1 -1
  82. package/lib/vxe-list/style/style.css +25 -8
  83. package/lib/vxe-list/style/style.min.css +1 -1
  84. package/lib/vxe-modal/style/style.css +15 -4
  85. package/lib/vxe-modal/style/style.min.css +1 -1
  86. package/lib/vxe-tree/style/style.css +43 -0
  87. package/lib/vxe-tree/style/style.min.css +1 -1
  88. package/package.json +2 -2
  89. package/packages/card/src/card.ts +20 -4
  90. package/packages/drawer/src/drawer.ts +73 -16
  91. package/packages/language/fr-FR.ts +903 -903
  92. package/packages/layout-aside/src/layout-aside.ts +10 -6
  93. package/packages/layout-body/src/layout-body.ts +25 -15
  94. package/packages/list/src/list.ts +130 -55
  95. package/packages/menu/src/menu.ts +2 -2
  96. package/packages/modal/src/modal.ts +71 -14
  97. package/packages/scrollbar/src/scrollbar.ts +79 -18
  98. package/packages/tabs/src/tabs.ts +21 -7
  99. package/packages/tree/src/tree.ts +452 -62
  100. package/packages/ui/src/utils.ts +4 -0
  101. package/styles/components/drawer.scss +13 -6
  102. package/styles/components/list.scss +35 -10
  103. package/styles/components/modal.scss +12 -4
  104. package/styles/components/tree.scss +76 -0
  105. package/types/components/card.d.ts +10 -1
  106. package/types/components/drawer.d.ts +20 -0
  107. package/types/components/gantt-module/gantt-view.d.ts +24 -1
  108. package/types/components/gantt.d.ts +2 -0
  109. package/types/components/layout-aside.d.ts +10 -1
  110. package/types/components/layout-body.d.ts +10 -1
  111. package/types/components/list.d.ts +13 -2
  112. package/types/components/modal.d.ts +20 -0
  113. package/types/components/scrollbar.d.ts +17 -2
  114. package/types/components/table.d.ts +80 -6
  115. package/types/components/tabs.d.ts +10 -1
  116. package/types/components/tree.d.ts +35 -2
  117. /package/es/icon/{iconfont.1791880413927.ttf → iconfont.1792034967421.ttf} +0 -0
  118. /package/es/icon/{iconfont.1791880413927.woff → iconfont.1792034967421.woff} +0 -0
  119. /package/es/icon/{iconfont.1791880413927.woff2 → iconfont.1792034967421.woff2} +0 -0
  120. /package/es/{iconfont.1791880413927.ttf → iconfont.1792034967421.ttf} +0 -0
  121. /package/es/{iconfont.1791880413927.woff → iconfont.1792034967421.woff} +0 -0
  122. /package/es/{iconfont.1791880413927.woff2 → iconfont.1792034967421.woff2} +0 -0
  123. /package/lib/icon/style/{iconfont.1791880413927.ttf → iconfont.1792034967421.ttf} +0 -0
  124. /package/lib/icon/style/{iconfont.1791880413927.woff → iconfont.1792034967421.woff} +0 -0
  125. /package/lib/icon/style/{iconfont.1791880413927.woff2 → iconfont.1792034967421.woff2} +0 -0
  126. /package/lib/{iconfont.1791880413927.ttf → iconfont.1792034967421.ttf} +0 -0
  127. /package/lib/{iconfont.1791880413927.woff → iconfont.1792034967421.woff} +0 -0
  128. /package/lib/{iconfont.1791880413927.woff2 → iconfont.1792034967421.woff2} +0 -0
@@ -181,8 +181,8 @@
181
181
  &.is--drag {
182
182
  cursor: move;
183
183
  transition: none;
184
- .vxe-modal--body,
185
- .vxe-modal--footer {
184
+ .vxe-drawer--body,
185
+ .vxe-drawer--footer {
186
186
  &:after {
187
187
  content: "";
188
188
  position: absolute;
@@ -192,9 +192,10 @@
192
192
  height: 100%;
193
193
  }
194
194
  }
195
- .vxe-modal--body {
195
+ .vxe-drawer--body {
196
196
  overflow: hidden;
197
- .vxe-modal--content {
197
+ .vxe-drawer--content,
198
+ .vxe-drawer--scrollbar-content {
198
199
  overflow: hidden;
199
200
  }
200
201
  }
@@ -213,7 +214,8 @@
213
214
  overflow: auto;
214
215
  outline: 0;
215
216
  }
216
- .vxe-drawer--content {
217
+ .vxe-drawer--content,
218
+ .vxe-drawer--scrollbar-content {
217
219
  flex-grow: 1;
218
220
  white-space: pre-line;
219
221
  }
@@ -227,7 +229,8 @@
227
229
  flex-grow: 1;
228
230
  overflow: auto;
229
231
  outline: 0;
230
- .vxe-drawer--content {
232
+ .vxe-drawer--content,
233
+ .vxe-drawer--scrollbar-content {
231
234
  overflow: auto;
232
235
  }
233
236
  }
@@ -349,3 +352,7 @@
349
352
  overflow: hidden;
350
353
  }
351
354
  }
355
+
356
+ .vxe-drawer--scrollbar-content {
357
+ width: 100%;
358
+ }
@@ -290,21 +290,34 @@
290
290
 
291
291
  // 滚动条
292
292
  .vxe-list {
293
- & > .vxe-scrollbar {
294
- position: unset;
293
+ &.ov-padding {
294
+ &.overflow-x {
295
+ &.sx-pos--top {
296
+ padding-top: var(--vxe-ui-scrollbar-x-height);
297
+ }
298
+ &.sx-pos--bottom {
299
+ padding-bottom: var(--vxe-ui-scrollbar-x-height);
300
+ }
301
+ }
302
+ &.overflow-y {
303
+ &.sy-pos--left {
304
+ padding-left: var(--vxe-ui-scrollbar-y-width);
305
+ }
306
+ &.sy-pos--right {
307
+ padding-right: var(--vxe-ui-scrollbar-y-width);
308
+ }
309
+ }
295
310
  }
296
- &.is--virtual-scrollbar {
311
+ &.ov-x--hidden {
297
312
  & > .vxe-list--virtual-wrapper {
298
- scrollbar-width: none;
299
- -ms-overflow-style: none;
313
+ overflow-x: hidden;
300
314
  }
301
- & > .vxe-list--virtual-wrapper::-webkit-scrollbar {
302
- display: none;
315
+ }
316
+ &.ov-y--hidden {
317
+ & > .vxe-list--virtual-wrapper {
318
+ overflow-y: hidden;
303
319
  }
304
320
  }
305
- }
306
-
307
- .vxe-list {
308
321
  &.is--virtual-scrollbar {
309
322
  &.ov-x--auto-hide {
310
323
  &:hover {
@@ -337,4 +350,16 @@
337
350
  }
338
351
  }
339
352
  }
353
+ & > .vxe-scrollbar {
354
+ position: unset;
355
+ }
356
+ &.is--virtual-scrollbar {
357
+ & > .vxe-list--virtual-wrapper {
358
+ scrollbar-width: none;
359
+ -ms-overflow-style: none;
360
+ }
361
+ & > .vxe-list--virtual-wrapper::-webkit-scrollbar {
362
+ display: none;
363
+ }
364
+ }
340
365
  }
@@ -52,7 +52,8 @@ html[data-vxe-lock-scroll] {
52
52
  }
53
53
  .vxe-modal--body {
54
54
  overflow: hidden;
55
- .vxe-modal--content {
55
+ .vxe-modal--content,
56
+ .vxe-modal--scrollbar-content {
56
57
  overflow: hidden;
57
58
  }
58
59
  }
@@ -74,7 +75,8 @@ html[data-vxe-lock-scroll] {
74
75
  align-items: center;
75
76
  font-size: 1.6em;
76
77
  }
77
- .vxe-modal--content {
78
+ .vxe-modal--content,
79
+ .vxe-modal--scrollbar-content {
78
80
  flex-grow: 1;
79
81
  white-space: pre-line;
80
82
  }
@@ -447,7 +449,8 @@ html[data-vxe-lock-scroll] {
447
449
  visibility: hidden;
448
450
  }
449
451
  }
450
- .vxe-modal--content {
452
+ .vxe-modal--content,
453
+ .vxe-modal--scrollbar-content {
451
454
  max-width: 800px;
452
455
  float: left;
453
456
  }
@@ -478,7 +481,8 @@ html[data-vxe-lock-scroll] {
478
481
  }
479
482
  .vxe-modal--body {
480
483
  overflow: auto;
481
- .vxe-modal--content {
484
+ .vxe-modal--content,
485
+ .vxe-modal--scrollbar-content {
482
486
  overflow: auto;
483
487
  }
484
488
  }
@@ -538,3 +542,7 @@ html[data-vxe-lock-scroll] {
538
542
  overflow: hidden;
539
543
  }
540
544
  }
545
+
546
+ .vxe-modal--scrollbar-content {
547
+ width: 100%;
548
+ }
@@ -308,3 +308,79 @@
308
308
  width: 0;
309
309
  float: left;
310
310
  }
311
+
312
+ // 滚动条
313
+ .vxe-tree {
314
+ &.ov-padding {
315
+ &.overflow-x {
316
+ &.sx-pos--top {
317
+ padding-top: var(--vxe-ui-scrollbar-x-height);
318
+ }
319
+ &.sx-pos--bottom {
320
+ padding-bottom: var(--vxe-ui-scrollbar-x-height);
321
+ }
322
+ }
323
+ &.overflow-y {
324
+ &.sy-pos--left {
325
+ padding-left: var(--vxe-ui-scrollbar-y-width);
326
+ }
327
+ &.sy-pos--right {
328
+ padding-right: var(--vxe-ui-scrollbar-y-width);
329
+ }
330
+ }
331
+ }
332
+ &.ov-x--hidden {
333
+ & > .vxe-tree--node-list-wrapper {
334
+ overflow-x: hidden;
335
+ }
336
+ }
337
+ &.ov-y--hidden {
338
+ & > .vxe-tree--node-list-wrapper {
339
+ overflow-y: hidden;
340
+ }
341
+ }
342
+ &.is--virtual-scrollbar {
343
+ &.ov-x--auto-hide {
344
+ &:hover {
345
+ & > .vxe-scrollbar {
346
+ & > .vxe-scrollbar--track-x {
347
+ opacity: 1;
348
+ }
349
+ }
350
+ }
351
+ & > .vxe-scrollbar {
352
+ & > .vxe-scrollbar--track-x {
353
+ opacity: 0;
354
+ @include baseMixin.createAnimationTransition(opacity, 0.8s);
355
+ }
356
+ }
357
+ }
358
+ &.ov-y--auto-hide {
359
+ &:hover {
360
+ & > .vxe-scrollbar {
361
+ & > .vxe-scrollbar--track-y {
362
+ opacity: 1;
363
+ }
364
+ }
365
+ }
366
+ & > .vxe-scrollbar {
367
+ & > .vxe-scrollbar--track-y {
368
+ opacity: 0;
369
+ @include baseMixin.createAnimationTransition(opacity, 0.8s);
370
+ }
371
+ }
372
+ }
373
+ }
374
+ & > .vxe-scrollbar {
375
+ position: unset;
376
+ }
377
+ &.is--virtual-scrollbar {
378
+ & > .vxe-tree--node-list-wrapper {
379
+ scrollbar-width: none;
380
+ -ms-overflow-style: none;
381
+ }
382
+ & > .vxe-tree--node-list-wrapper::-webkit-scrollbar {
383
+ display: none;
384
+ }
385
+ }
386
+ }
@@ -34,7 +34,16 @@ export namespace VxeCardPropTypes {
34
34
  export type Padding = boolean
35
35
  export type Size = VxeComponentSizeType
36
36
  export type UseScrollbar = boolean
37
- export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'native' | 'xConfig' | 'yConfig' | 'padding' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {}
37
+ export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding' | 'autoHide' | 'visible' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {
38
+ /**
39
+ * 滚动条宽度
40
+ */
41
+ width?: number | string
42
+ /**
43
+ * 滚动条高度
44
+ */
45
+ height?: number | string
46
+ }
38
47
  }
39
48
 
40
49
  export type VxeCardProps = {
@@ -1,5 +1,6 @@
1
1
  import { RenderFunction, SetupContext, Ref } from 'vue'
2
2
  import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentBaseOptions, VxeComponentEventParams, VxeComponentSizeType, VxeComponentSlotType, ValueOf } from '@vxe-ui/core'
3
+ import { VxeScrollbarProps } from './scrollbar'
3
4
 
4
5
  /* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
5
6
 
@@ -73,6 +74,17 @@ export namespace VxeDrawerPropTypes {
73
74
  export type Padding = boolean
74
75
  export type BeforeHideMethod = (params: VxeDrawerDefines.DrawerVisibleParams) => Promise<any>
75
76
  export type Slots = VxeDrawerSlots
77
+ export type UseScrollbar = boolean
78
+ export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding' | 'autoHide' | 'visible' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {
79
+ /**
80
+ * 滚动条宽度
81
+ */
82
+ width?: number | string
83
+ /**
84
+ * 滚动条高度
85
+ */
86
+ height?: number | string
87
+ }
76
88
  }
77
89
 
78
90
  export interface VxeDrawerProps {
@@ -125,6 +137,14 @@ export interface VxeDrawerProps {
125
137
  padding?: VxeDrawerPropTypes.Padding
126
138
  beforeHideMethod?: VxeDrawerPropTypes.BeforeHideMethod
127
139
  slots?: VxeDrawerPropTypes.Slots
140
+ /**
141
+ * 使用虚拟滚动条
142
+ */
143
+ useScrollbar?: VxeDrawerPropTypes.UseScrollbar
144
+ /**
145
+ * 滚动条配置项
146
+ */
147
+ scrollbarConfig?: VxeDrawerPropTypes.ScrollbarConfig
128
148
  }
129
149
 
130
150
  export interface DrawerPrivateComputed {
@@ -2,6 +2,7 @@ import { RenderFunction, SetupContext, Ref, ComputedRef } from 'vue'
2
2
  import { VxeComponentBaseOptions, DefineVxeComponentInstance } from '@vxe-ui/core'
3
3
  import { VxeTableConstructor, VxeTableMethods, VxeTablePrivateMethods } from '../table'
4
4
  import { VxeGanttDefines } from '../gantt'
5
+ import { VxeScrollbarPropTypes } from '../scrollbar'
5
6
 
6
7
  /* eslint-disable no-use-before-define */
7
8
 
@@ -37,6 +38,10 @@ export interface GanttViewReactData {
37
38
  lastScrollTime: number
38
39
  lazScrollLoading: boolean
39
40
 
41
+ // 滚动条
42
+ yThumbHeight: number
43
+ xThumbWidth: number
44
+
40
45
  scrollVMLoading: boolean
41
46
  scrollYHeight: number
42
47
  scrollYTop: number
@@ -75,7 +80,13 @@ export interface GanttViewInternalData {
75
80
  startIndex: number
76
81
  endIndex: number
77
82
  }
78
- // 最后滚动位置
83
+
84
+ // 滚动条
85
+ scrollObserver?: ResizeObserver
86
+ isThumbDrag?: boolean
87
+ thumbDragOffset: number
88
+ yThumbTop: number
89
+ xThumbLeft: number
79
90
  lastScrollLeft: number
80
91
  lastScrollTop: number
81
92
 
@@ -111,6 +122,14 @@ export interface GanttViewPrivateRef {
111
122
  }
112
123
 
113
124
  export interface GanttViewPrivateComputed {
125
+ computeScrollXHeight: ComputedRef<number | undefined>
126
+ computeScrollYWidth: ComputedRef<number | undefined>
127
+ computeScrollXVisible: ComputedRef<'auto' | 'visible' | 'hidden' | boolean | undefined>
128
+ computeScrollYVisible: ComputedRef<'auto' | 'visible' | 'hidden' | boolean | undefined>
129
+ computeScrollXAutoHide: ComputedRef<VxeScrollbarPropTypes.AutoHide | undefined>
130
+ computeScrollYAutoHide: ComputedRef<VxeScrollbarPropTypes.AutoHide | undefined>
131
+ computeScrollbarXToTop: ComputedRef<boolean>
132
+ computeScrollbarYToLeft: ComputedRef<boolean>
114
133
  computeScaleDateList: ComputedRef<Date[]>
115
134
  computeNowLineLeft: ComputedRef<number>
116
135
  }
@@ -164,6 +183,10 @@ export interface VxeGanttViewPrivateMethods {
164
183
  * @private
165
184
  */
166
185
  handleUpdateSYStatus(scrollYLoad: boolean): void
186
+ /**
187
+ * @private
188
+ */
189
+ updateScrollbar(): void
167
190
  }
168
191
 
169
192
  export interface VxeGanttViewMethods {
@@ -731,6 +731,8 @@ export interface GanttPrivateComputed<D = any> extends GridPrivateComputed<D> {
731
731
  computeTypeField: ComputedRef<string>
732
732
  computeProgressField: ComputedRef<string>
733
733
  computeScrollbarOpts: ComputedRef<VxeTablePropTypes.ScrollbarConfig>
734
+ computeScrollbarXOpts: ComputedRef<VxeTablePropTypes.ScrollbarXConfig>
735
+ computeScrollbarYOpts: ComputedRef<VxeTablePropTypes.ScrollbarYConfig>
734
736
  computeScrollbarXToTop: ComputedRef<boolean>
735
737
  computeScrollbarYToLeft: ComputedRef<boolean>
736
738
  }
@@ -37,7 +37,16 @@ export namespace VxeLayoutAsidePropTypes {
37
37
  animation?: boolean
38
38
  }
39
39
  export type UseScrollbar = boolean
40
- export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'native' | 'yConfig' | 'padding' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {}
40
+ export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding' | 'autoHide' | 'visible' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {
41
+ /**
42
+ * 滚动条宽度
43
+ */
44
+ width?: number | string
45
+ /**
46
+ * 滚动条高度
47
+ */
48
+ height?: number | string
49
+ }
41
50
  }
42
51
 
43
52
  export interface VxeLayoutAsideProps {
@@ -32,7 +32,16 @@ export namespace VxeLayoutBodyPropTypes {
32
32
  export type ShowBacktop = boolean
33
33
  export interface BacktopConfig extends Omit<VxeBacktopProps, 'target'> {}
34
34
  export type UseScrollbar = boolean
35
- export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'native' | 'xConfig' | 'yConfig' | 'padding' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {}
35
+ export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding' | 'autoHide' | 'visible' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {
36
+ /**
37
+ * 滚动条宽度
38
+ */
39
+ width?: number | string
40
+ /**
41
+ * 滚动条高度
42
+ */
43
+ height?: number | string
44
+ }
36
45
  }
37
46
  export interface VxeLayoutBodyProps {
38
47
  size?: VxeLayoutBodyPropTypes.Size
@@ -228,7 +228,16 @@ export namespace VxeListPropTypes {
228
228
  enabled?: boolean
229
229
  }
230
230
  export type UseScrollbar = boolean
231
- export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding'> {}
231
+ export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding' | 'autoHide' | 'visible'> {
232
+ /**
233
+ * 滚动条宽度
234
+ */
235
+ width?: number | string
236
+ /**
237
+ * 滚动条高度
238
+ */
239
+ height?: number | string
240
+ }
232
241
  }
233
242
 
234
243
  export interface VxeListProps<D = any> {
@@ -305,8 +314,10 @@ export interface ListInternalData {
305
314
  fullKeyMaps: Record<string, any>
306
315
  rowMaps: Record<string, VxeListDefines.RowCacheItem>
307
316
 
308
- // 滚动条
309
317
  resizeObserver?: ResizeObserver
318
+
319
+ // 滚动条
320
+ scrollObserver?: ResizeObserver
310
321
  isThumbDrag?: boolean
311
322
  thumbDragOffset: number
312
323
  yThumbTop: number
@@ -1,5 +1,6 @@
1
1
  import { RenderFunction, SetupContext, Ref, ComputedRef } from 'vue'
2
2
  import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentSizeType, VxeComponentBaseOptions, VxeComponentEventParams, ValueOf, VxeComponentSlotType } from '@vxe-ui/core'
3
+ import { VxeScrollbarProps } from './scrollbar'
3
4
 
4
5
  /* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
5
6
 
@@ -126,6 +127,17 @@ export namespace VxeModalPropTypes {
126
127
  type: ModalEventTypes
127
128
  }) => Promise<any>
128
129
  export type Slots = VxeModalSlots
130
+ export type UseScrollbar = boolean
131
+ export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding' | 'autoHide' | 'visible' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {
132
+ /**
133
+ * 滚动条宽度
134
+ */
135
+ width?: number | string
136
+ /**
137
+ * 滚动条高度
138
+ */
139
+ height?: number | string
140
+ }
129
141
  }
130
142
 
131
143
  export interface VxeModalProps {
@@ -194,6 +206,14 @@ export interface VxeModalProps {
194
206
  animat?: VxeModalPropTypes.Animat
195
207
  padding?: VxeModalPropTypes.Padding
196
208
  beforeHideMethod?: VxeModalPropTypes.BeforeHideMethod
209
+ /**
210
+ * 使用虚拟滚动条
211
+ */
212
+ useScrollbar?: VxeModalPropTypes.UseScrollbar
213
+ /**
214
+ * 滚动条配置项
215
+ */
216
+ scrollbarConfig?: VxeModalPropTypes.ScrollbarConfig
197
217
  slots?: VxeModalPropTypes.Slots
198
218
  /**
199
219
  * @deprecated 已废弃,请使用 content
@@ -25,6 +25,7 @@ export interface VxeScrollbarPrivateRef extends ScrollbarPrivateRef { }
25
25
 
26
26
  export namespace VxeScrollbarPropTypes {
27
27
  export type Id = number | string
28
+ export type ViewId = number | string
28
29
  export type Width = number | string
29
30
  export type Height = number | string
30
31
  export type MinWidth = number | string
@@ -34,6 +35,8 @@ export namespace VxeScrollbarPropTypes {
34
35
  export type Loading = boolean
35
36
  export type Native = boolean
36
37
  export type Padding = boolean
38
+ export type AutoHide = boolean
39
+ export type Visible = boolean
37
40
  export interface XConfig {
38
41
  height?: number | string
39
42
  // showArrows?: boolean
@@ -45,7 +48,7 @@ export namespace VxeScrollbarPropTypes {
45
48
  * 滚动条显示位置
46
49
  */
47
50
  position?: 'top' | 'bottom' | ''
48
- visible?: 'auto' | 'hidden' | 'visible' | ''
51
+ visible?: boolean
49
52
  /**
50
53
  * 滚动到边界触发的阈值会触发 scroll-boundary 事件
51
54
  */
@@ -62,7 +65,7 @@ export namespace VxeScrollbarPropTypes {
62
65
  * 滚动条显示位置
63
66
  */
64
67
  position?: 'left' | 'right' | ''
65
- visible?: 'auto' | 'hidden' | 'visible' | ''
68
+ visible?: boolean
66
69
  /**
67
70
  * 滚动到边界触发的阈值会触发 scroll-boundary 事件
68
71
  */
@@ -81,6 +84,10 @@ export interface VxeScrollbarProps {
81
84
  * ID
82
85
  */
83
86
  id?: VxeScrollbarPropTypes.Id
87
+ /**
88
+ * View ID
89
+ */
90
+ viewId?: VxeScrollbarPropTypes.ViewId
84
91
  /**
85
92
  * 容器宽度
86
93
  */
@@ -109,6 +116,14 @@ export interface VxeScrollbarProps {
109
116
  * 是否加载中
110
117
  */
111
118
  loading?: VxeScrollbarPropTypes.Loading
119
+ /**
120
+ * 是否自动隐藏
121
+ */
122
+ autoHide?: VxeScrollbarPropTypes.AutoHide
123
+ /**
124
+ * 是否显示
125
+ */
126
+ visible?: VxeScrollbarPropTypes.Visible
112
127
  /**
113
128
  * 是否使用原生滚动条
114
129
  */