vxe-pc-ui 4.20.0 → 4.20.1

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 (94) hide show
  1. package/dist/all.esm.js +594 -130
  2. package/dist/style.css +1 -1
  3. package/dist/style.min.css +1 -1
  4. package/es/card/src/card.js +17 -3
  5. package/es/icon/style.css +1 -1
  6. package/es/language/fr-FR.js +29 -29
  7. package/es/layout-aside/src/layout-aside.js +8 -5
  8. package/es/layout-body/src/layout-body.js +19 -11
  9. package/es/list/src/list.js +79 -36
  10. package/es/list/style.css +25 -8
  11. package/es/list/style.min.css +1 -1
  12. package/es/scrollbar/src/scrollbar.js +59 -17
  13. package/es/style.css +1 -1
  14. package/es/style.min.css +1 -1
  15. package/es/tabs/src/tabs.js +19 -4
  16. package/es/tree/src/tree.js +393 -55
  17. package/es/tree/style.css +43 -0
  18. package/es/tree/style.min.css +1 -1
  19. package/es/ui/index.js +1 -1
  20. package/es/ui/src/log.js +1 -1
  21. package/es/ui/src/utils.js +3 -0
  22. package/es/vxe-list/style.css +25 -8
  23. package/es/vxe-list/style.min.css +1 -1
  24. package/es/vxe-tree/style.css +43 -0
  25. package/es/vxe-tree/style.min.css +1 -1
  26. package/lib/card/src/card.js +17 -3
  27. package/lib/card/src/card.min.js +1 -1
  28. package/lib/icon/style/style.css +1 -1
  29. package/lib/icon/style/style.min.css +1 -1
  30. package/lib/index.umd.js +610 -140
  31. package/lib/index.umd.min.js +1 -1
  32. package/lib/language/fr-FR.js +29 -29
  33. package/lib/language/fr-FR.min.js +1 -1
  34. package/lib/language/fr-FR.umd.js +29 -29
  35. package/lib/layout-aside/src/layout-aside.js +7 -7
  36. package/lib/layout-aside/src/layout-aside.min.js +1 -1
  37. package/lib/layout-body/src/layout-body.js +27 -21
  38. package/lib/layout-body/src/layout-body.min.js +1 -1
  39. package/lib/list/src/list.js +70 -32
  40. package/lib/list/src/list.min.js +1 -1
  41. package/lib/list/style/style.css +25 -8
  42. package/lib/list/style/style.min.css +1 -1
  43. package/lib/scrollbar/src/scrollbar.js +67 -15
  44. package/lib/scrollbar/src/scrollbar.min.js +1 -1
  45. package/lib/style.css +1 -1
  46. package/lib/style.min.css +1 -1
  47. package/lib/tabs/src/tabs.js +22 -10
  48. package/lib/tabs/src/tabs.min.js +1 -1
  49. package/lib/tree/src/tree.js +397 -53
  50. package/lib/tree/src/tree.min.js +1 -1
  51. package/lib/tree/style/style.css +43 -0
  52. package/lib/tree/style/style.min.css +1 -1
  53. package/lib/ui/index.js +1 -1
  54. package/lib/ui/index.min.js +1 -1
  55. package/lib/ui/src/log.js +1 -1
  56. package/lib/ui/src/log.min.js +1 -1
  57. package/lib/ui/src/utils.js +4 -0
  58. package/lib/ui/src/utils.min.js +1 -1
  59. package/lib/vxe-list/style/style.css +25 -8
  60. package/lib/vxe-list/style/style.min.css +1 -1
  61. package/lib/vxe-tree/style/style.css +43 -0
  62. package/lib/vxe-tree/style/style.min.css +1 -1
  63. package/package.json +1 -1
  64. package/packages/card/src/card.ts +18 -3
  65. package/packages/language/fr-FR.ts +903 -903
  66. package/packages/layout-aside/src/layout-aside.ts +8 -5
  67. package/packages/layout-body/src/layout-body.ts +23 -14
  68. package/packages/list/src/list.ts +87 -42
  69. package/packages/scrollbar/src/scrollbar.ts +63 -16
  70. package/packages/tabs/src/tabs.ts +19 -5
  71. package/packages/tree/src/tree.ts +432 -64
  72. package/packages/ui/src/utils.ts +4 -0
  73. package/styles/components/list.scss +35 -10
  74. package/styles/components/tree.scss +76 -0
  75. package/types/components/card.d.ts +10 -1
  76. package/types/components/layout-aside.d.ts +10 -1
  77. package/types/components/layout-body.d.ts +10 -1
  78. package/types/components/list.d.ts +10 -1
  79. package/types/components/scrollbar.d.ts +17 -2
  80. package/types/components/table.d.ts +47 -4
  81. package/types/components/tabs.d.ts +10 -1
  82. package/types/components/tree.d.ts +33 -2
  83. /package/es/icon/{iconfont.1791880413927.ttf → iconfont.1791950625324.ttf} +0 -0
  84. /package/es/icon/{iconfont.1791880413927.woff → iconfont.1791950625324.woff} +0 -0
  85. /package/es/icon/{iconfont.1791880413927.woff2 → iconfont.1791950625324.woff2} +0 -0
  86. /package/es/{iconfont.1791880413927.ttf → iconfont.1791950625324.ttf} +0 -0
  87. /package/es/{iconfont.1791880413927.woff → iconfont.1791950625324.woff} +0 -0
  88. /package/es/{iconfont.1791880413927.woff2 → iconfont.1791950625324.woff2} +0 -0
  89. /package/lib/icon/style/{iconfont.1791880413927.ttf → iconfont.1791950625324.ttf} +0 -0
  90. /package/lib/icon/style/{iconfont.1791880413927.woff → iconfont.1791950625324.woff} +0 -0
  91. /package/lib/icon/style/{iconfont.1791880413927.woff2 → iconfont.1791950625324.woff2} +0 -0
  92. /package/lib/{iconfont.1791880413927.ttf → iconfont.1791950625324.ttf} +0 -0
  93. /package/lib/{iconfont.1791880413927.woff → iconfont.1791950625324.woff} +0 -0
  94. /package/lib/{iconfont.1791880413927.woff2 → iconfont.1791950625324.woff2} +0 -0
@@ -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
  }
@@ -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 = {
@@ -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> {
@@ -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
  */
@@ -2972,33 +2972,52 @@ export namespace VxeTablePropTypes {
2972
2972
  }
2973
2973
 
2974
2974
  export interface ScrollbarXConfig {
2975
+ /**
2976
+ * 滚动条高度
2977
+ */
2978
+ height?: number
2975
2979
  /**
2976
2980
  * 滚动条显示位置
2977
2981
  */
2978
2982
  position?: 'top' | 'bottom' | ''
2979
2983
  /**
2980
- * 滚动条显示方式
2984
+ * 是否显示
2981
2985
  */
2982
2986
  visible?: 'auto' | 'visible' | 'hidden' | boolean
2987
+ /**
2988
+ * 是否自动隐藏滚动条
2989
+ */
2990
+ autoHide?: boolean
2983
2991
  /**
2984
2992
  * 滚动行为
2993
+ * @deprecated
2985
2994
  */
2986
2995
  overscrollBehavior?: 'contain' | 'none' | ''
2987
2996
  }
2988
2997
  export interface ScrollbarYConfig {
2998
+ /**
2999
+ * 滚动条宽度
3000
+ */
3001
+ width?: number
2989
3002
  /**
2990
3003
  * 滚动条显示位置
2991
3004
  */
2992
3005
  position?: 'left' | 'right' | ''
2993
3006
  /**
2994
- * 滚动条显示方式
3007
+ * 是否显示
2995
3008
  */
2996
3009
  visible?: 'auto' | 'visible' | 'hidden' | boolean
3010
+ /**
3011
+ * 是否自动隐藏滚动条
3012
+ */
3013
+ autoHide?: boolean
2997
3014
  /**
2998
3015
  * 滚动行为
3016
+ * @deprecated
2999
3017
  */
3000
3018
  overscrollBehavior?: 'contain' | 'none' | ''
3001
3019
  }
3020
+ export type UseScrollbar = boolean
3002
3021
  /**
3003
3022
  * 滚动条配置项
3004
3023
  */
@@ -3011,18 +3030,38 @@ export namespace VxeTablePropTypes {
3011
3030
  * 滚动条高度
3012
3031
  */
3013
3032
  height?: number
3033
+ padding?: boolean
3034
+ /**
3035
+ * 是否自动隐藏滚动条
3036
+ */
3037
+ autoHide?: boolean
3038
+ /**
3039
+ * 是否显示
3040
+ */
3041
+ visible?: boolean
3014
3042
  /**
3015
3043
  * 滚动行为
3044
+ * @deprecated
3016
3045
  */
3017
3046
  overscrollBehavior?: 'contain' | 'none' | ''
3018
3047
  /**
3019
- * 横向滚动条
3048
+ * 已废弃,请使用 xConfig
3049
+ * @deprecated
3020
3050
  */
3021
3051
  x?: ScrollbarXConfig
3022
3052
  /**
3023
- * 纵向滚动条
3053
+ * 横向滚动条
3054
+ */
3055
+ xConfig?: ScrollbarXConfig
3056
+ /**
3057
+ * 已废弃,请使用 yConfig
3058
+ * @deprecated
3024
3059
  */
3025
3060
  y?: ScrollbarYConfig
3061
+ /**
3062
+ * 纵向滚动条
3063
+ */
3064
+ yConfig?: ScrollbarYConfig
3026
3065
  }
3027
3066
 
3028
3067
  /**
@@ -3868,6 +3907,10 @@ export interface VxeTableProps<D = any> {
3868
3907
  * 纵向虚拟滚动配置
3869
3908
  */
3870
3909
  virtualYConfig?: VxeTablePropTypes.VirtualYConfig
3910
+ /**
3911
+ * 使用虚拟滚动条
3912
+ */
3913
+ useScrollbar?: VxeTablePropTypes.UseScrollbar
3871
3914
  /**
3872
3915
  * 滚动条配置项
3873
3916
  */
@@ -114,7 +114,16 @@ export namespace VxeTabsPropTypes {
114
114
  }) => boolean
115
115
  }
116
116
  export type UseScrollbar = boolean
117
- export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'native' | 'xConfig' | 'yConfig' | 'padding' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {}
117
+ export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding' | 'autoHide' | 'visible' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {
118
+ /**
119
+ * 滚动条宽度
120
+ */
121
+ width?: number | string
122
+ /**
123
+ * 滚动条高度
124
+ */
125
+ height?: number | string
126
+ }
118
127
  }
119
128
 
120
129
  export type VxeTabsProps = {
@@ -2,6 +2,7 @@ import { RenderFunction, SetupContext, Ref, ComputedRef } from 'vue'
2
2
  import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentBaseOptions, VxeComponentEventParams, VxeComponentSizeType, ValueOf } from '@vxe-ui/core'
3
3
  import { VxeContextMenuPropTypes, VxeContextMenuDefines } from './context-menu'
4
4
  import { VxeTooltipPropTypes } from './tooltip'
5
+ import { VxeScrollbarProps } from './scrollbar'
5
6
 
6
7
  /* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
7
8
 
@@ -331,6 +332,17 @@ export namespace VxeTreePropTypes {
331
332
  */
332
333
  enabled?: boolean
333
334
  }
335
+ export type UseScrollbar = boolean
336
+ export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'xConfig' | 'yConfig' | 'padding' | 'autoHide' | 'visible'> {
337
+ /**
338
+ * 滚动条宽度
339
+ */
340
+ width?: number | string
341
+ /**
342
+ * 滚动条高度
343
+ */
344
+ height?: number | string
345
+ }
334
346
  }
335
347
 
336
348
  export interface VxeTreeProps<D = any> {
@@ -410,6 +422,14 @@ export interface VxeTreeProps<D = any> {
410
422
  iconLoaded?: VxeTreePropTypes.IconLoaded
411
423
  size?: VxeTreePropTypes.Size
412
424
  virtualYConfig?: VxeTreePropTypes.VirtualYConfig
425
+ /**
426
+ * 使用虚拟滚动条
427
+ */
428
+ useScrollbar?: VxeTreePropTypes.UseScrollbar
429
+ /**
430
+ * 滚动条配置项
431
+ */
432
+ scrollbarConfig?: VxeTreePropTypes.ScrollbarConfig
413
433
  }
414
434
 
415
435
  export interface TreePrivateComputed<D = any> {
@@ -438,6 +458,10 @@ export interface TreeReactData {
438
458
  updateExpandedFlag: number
439
459
  updateCheckboxFlag: number
440
460
 
461
+ // 滚动条
462
+ yThumbHeight: number
463
+ xThumbWidth: number
464
+
441
465
  insertNodeFlag: number
442
466
  removeNodeFlag: number
443
467
 
@@ -453,7 +477,6 @@ export interface TreeReactData {
453
477
 
454
478
  export interface TreeInternalData {
455
479
  initialized?: boolean
456
- resizeObserver?: ResizeObserver
457
480
  lastFilterValue?: string
458
481
  afterTreeList: any[]
459
482
  treeFullData: any[]
@@ -463,8 +486,16 @@ export interface TreeInternalData {
463
486
  selectCheckboxMaps: Record<string, any>
464
487
  treeExpandedMaps: Record<string, boolean>
465
488
  treeExpandLazyLoadedMaps: Record<string, boolean>
466
- lastScrollLeft: number
489
+
490
+ // 滚动条
491
+ resizeObserver?: ResizeObserver
492
+ isThumbDrag?: boolean
493
+ thumbDragOffset: number
494
+ yThumbTop: number
495
+ xThumbLeft: number
467
496
  lastScrollTop: number
497
+ lastScrollLeft: number
498
+
468
499
  scrollYStore: {
469
500
  startIndex: number
470
501
  endIndex: number