vxe-pc-ui 4.18.23 → 4.19.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.
- package/dist/all.esm.js +1076 -989
- package/dist/style.css +1 -1
- package/dist/style.min.css +1 -1
- package/es/calendar/src/calendar.js +1 -1
- package/es/card/src/card.js +1 -1
- package/es/carousel/src/carousel.js +1 -1
- package/es/countdown/src/countdown.js +1 -1
- package/es/date-picker/src/date-picker.js +3 -3
- package/es/icon/style.css +1 -1
- package/es/icon-picker/src/icon-picker.js +1 -1
- package/es/layout-aside/src/layout-aside.js +31 -6
- package/es/layout-aside/style.css +5 -0
- package/es/layout-aside/style.min.css +1 -1
- package/es/layout-body/src/layout-body.js +29 -6
- package/es/layout-body/style.css +5 -1
- package/es/layout-body/style.min.css +1 -1
- package/es/list/src/list.js +1 -1
- package/es/menu/src/menu.js +20 -5
- package/es/menu/style.css +14 -2
- package/es/menu/style.min.css +1 -1
- package/es/scrollbar/src/scrollbar.js +38 -17
- package/es/scrollbar/style.css +16 -13
- package/es/scrollbar/style.min.css +1 -1
- package/es/select/src/select.js +2 -2
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/tabs/src/tabs.js +1 -1
- package/es/text-ellipsis/style.css +29 -10
- package/es/text-ellipsis/style.min.css +1 -1
- package/es/ui/index.js +8 -2
- package/es/ui/src/log.js +1 -1
- package/es/upload/src/upload.js +1 -1
- package/es/vxe-layout-aside/style.css +5 -0
- package/es/vxe-layout-aside/style.min.css +1 -1
- package/es/vxe-layout-body/style.css +5 -1
- package/es/vxe-layout-body/style.min.css +1 -1
- package/es/vxe-menu/style.css +14 -2
- package/es/vxe-menu/style.min.css +1 -1
- package/es/vxe-scrollbar/style.css +16 -13
- package/es/vxe-scrollbar/style.min.css +1 -1
- package/es/vxe-text-ellipsis/style.css +29 -10
- package/es/vxe-text-ellipsis/style.min.css +1 -1
- package/lib/calendar/src/calendar.js +1 -1
- package/lib/calendar/src/calendar.min.js +1 -1
- package/lib/card/src/card.js +1 -1
- package/lib/card/src/card.min.js +1 -1
- package/lib/carousel/src/carousel.js +1 -1
- package/lib/carousel/src/carousel.min.js +1 -1
- package/lib/countdown/src/countdown.js +1 -1
- package/lib/countdown/src/countdown.min.js +1 -1
- package/lib/date-picker/src/date-picker.js +3 -3
- package/lib/date-picker/src/date-picker.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/icon-picker/src/icon-picker.js +1 -1
- package/lib/icon-picker/src/icon-picker.min.js +1 -1
- package/lib/index.umd.js +1456 -1333
- package/lib/index.umd.min.js +1 -1
- package/lib/layout-aside/src/layout-aside.js +35 -4
- package/lib/layout-aside/src/layout-aside.min.js +1 -1
- package/lib/layout-aside/style/style.css +5 -0
- package/lib/layout-aside/style/style.min.css +1 -1
- package/lib/layout-body/src/layout-body.js +35 -3
- package/lib/layout-body/src/layout-body.min.js +1 -1
- package/lib/layout-body/style/style.css +5 -1
- package/lib/layout-body/style/style.min.css +1 -1
- package/lib/list/src/list.js +1 -1
- package/lib/list/src/list.min.js +1 -1
- package/lib/menu/src/menu.js +25 -3
- package/lib/menu/src/menu.min.js +1 -1
- package/lib/menu/style/style.css +14 -2
- package/lib/menu/style/style.min.css +1 -1
- package/lib/scrollbar/src/scrollbar.js +38 -8
- package/lib/scrollbar/src/scrollbar.min.js +1 -1
- package/lib/scrollbar/style/style.css +16 -13
- package/lib/scrollbar/style/style.min.css +1 -1
- package/lib/select/src/select.js +2 -2
- package/lib/select/src/select.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/tabs/src/tabs.js +1 -1
- package/lib/tabs/src/tabs.min.js +1 -1
- package/lib/text-ellipsis/style/style.css +29 -10
- package/lib/text-ellipsis/style/style.min.css +1 -1
- package/lib/ui/index.js +8 -2
- 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 +1 -1
- package/lib/upload/src/upload.min.js +1 -1
- package/lib/vxe-layout-aside/style/style.css +5 -0
- package/lib/vxe-layout-aside/style/style.min.css +1 -1
- package/lib/vxe-layout-body/style/style.css +5 -1
- package/lib/vxe-layout-body/style/style.min.css +1 -1
- package/lib/vxe-menu/style/style.css +14 -2
- package/lib/vxe-menu/style/style.min.css +1 -1
- package/lib/vxe-scrollbar/style/style.css +16 -13
- package/lib/vxe-scrollbar/style/style.min.css +1 -1
- package/lib/vxe-text-ellipsis/style/style.css +29 -10
- package/lib/vxe-text-ellipsis/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/calendar/src/calendar.ts +1 -1
- package/packages/card/src/card.ts +1 -1
- package/packages/carousel/src/carousel.ts +1 -1
- package/packages/countdown/src/countdown.ts +1 -1
- package/packages/date-picker/src/date-picker.ts +3 -3
- package/packages/icon-picker/src/icon-picker.ts +1 -1
- package/packages/layout-aside/src/layout-aside.ts +32 -6
- package/packages/layout-body/src/layout-body.ts +33 -6
- package/packages/list/src/list.ts +1 -1
- package/packages/menu/src/menu.ts +26 -5
- package/packages/scrollbar/src/scrollbar.ts +41 -14
- package/packages/select/src/select.ts +2 -2
- package/packages/tabs/src/tabs.ts +1 -1
- package/packages/ui/index.ts +8 -3
- package/packages/upload/src/upload.ts +1 -1
- package/styles/components/layout-aside.scss +5 -0
- package/styles/components/layout-body.scss +4 -1
- package/styles/components/menu.scss +15 -2
- package/styles/components/scrollbar.scss +24 -17
- package/styles/components/text-ellipsis.scss +23 -64
- package/styles/theme/base.scss +2 -0
- package/types/components/layout-aside.d.ts +5 -0
- package/types/components/layout-body.d.ts +5 -1
- package/types/components/menu.d.ts +5 -0
- package/types/components/scrollbar.d.ts +15 -0
- /package/es/icon/{iconfont.1791517860186.ttf → iconfont.1791542939851.ttf} +0 -0
- /package/es/icon/{iconfont.1791517860186.woff → iconfont.1791542939851.woff} +0 -0
- /package/es/icon/{iconfont.1791517860186.woff2 → iconfont.1791542939851.woff2} +0 -0
- /package/es/{iconfont.1791517860186.ttf → iconfont.1791542939851.ttf} +0 -0
- /package/es/{iconfont.1791517860186.woff → iconfont.1791542939851.woff} +0 -0
- /package/es/{iconfont.1791517860186.woff2 → iconfont.1791542939851.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1791517860186.ttf → iconfont.1791542939851.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1791517860186.woff → iconfont.1791542939851.woff} +0 -0
- /package/lib/icon/style/{iconfont.1791517860186.woff2 → iconfont.1791542939851.woff2} +0 -0
- /package/lib/{iconfont.1791517860186.ttf → iconfont.1791542939851.ttf} +0 -0
- /package/lib/{iconfont.1791517860186.woff → iconfont.1791542939851.woff} +0 -0
- /package/lib/{iconfont.1791517860186.woff2 → iconfont.1791542939851.woff2} +0 -0
|
@@ -6,7 +6,7 @@ import { getSlotVNs } from '../../ui/src/vn'
|
|
|
6
6
|
import { createComponentLog } from '../../ui/src/log'
|
|
7
7
|
import { initTpImg, getTpImg, getEventTargetNode, toCssUnit } from '../../ui/src/dom'
|
|
8
8
|
import { readLocalFile } from './util'
|
|
9
|
-
import VxeButtonComponent from '../../button
|
|
9
|
+
import VxeButtonComponent from '../../button'
|
|
10
10
|
|
|
11
11
|
import type { VxeUploadDefines, VxeUploadPropTypes, UploadReactData, UploadInternalData, UploadPrivateMethods, UploadMethods, VxeUploadEmits, UploadPrivateRef, VxeUploadPrivateComputed, VxeUploadConstructor, VxeUploadPrivateMethods, VxeFormDefines, VxeFormConstructor, VxeFormPrivateMethods, ValueOf, VxeComponentEventParams } from '../../../types'
|
|
12
12
|
import type { VxeTableConstructor, VxeTablePrivateMethods } from '../../../types/components/table'
|
|
@@ -15,9 +15,14 @@
|
|
|
15
15
|
padding: var(--vxe-ui-layout-padding-default);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
+
|
|
18
19
|
.vxe-layout-aside--inner {
|
|
19
20
|
flex-grow: 1;
|
|
20
21
|
overflow-y: auto;
|
|
21
22
|
overflow-x: hidden;
|
|
22
23
|
outline: 0;
|
|
24
|
+
}
|
|
25
|
+
.vxe-layout-aside--scrollbar {
|
|
26
|
+
flex-grow: 1;
|
|
27
|
+
overflow: hidden;
|
|
23
28
|
}
|
|
@@ -98,11 +98,12 @@
|
|
|
98
98
|
|
|
99
99
|
.vxe-menu--collapse-wrapper {
|
|
100
100
|
display: none;
|
|
101
|
+
flex-direction: column;
|
|
101
102
|
position: absolute;
|
|
102
|
-
overflow:
|
|
103
|
+
overflow: hidden;
|
|
103
104
|
background-color: var(--vxe-ui-layout-background-color);
|
|
104
105
|
&.is--collapsed {
|
|
105
|
-
display:
|
|
106
|
+
display: flex;
|
|
106
107
|
@include baseMixin.createAnimationTransition(all, 0.25s);
|
|
107
108
|
}
|
|
108
109
|
&:not(.is--enter) {
|
|
@@ -117,6 +118,18 @@
|
|
|
117
118
|
width: var(--vxe-ui-layout-aside-default-width);
|
|
118
119
|
box-shadow: var(--vxe-ui-menu-collapse-wrapper-box-shadow);
|
|
119
120
|
}
|
|
121
|
+
& > .vxe-menu--header,
|
|
122
|
+
& > .vxe-menu--footer {
|
|
123
|
+
flex-shrink: 0;
|
|
124
|
+
}
|
|
125
|
+
& > .vxe-menu--scrollbar-body {
|
|
126
|
+
flex-grow: 1;
|
|
127
|
+
overflow: hidden;
|
|
128
|
+
}
|
|
129
|
+
& > .vxe-menu--body {
|
|
130
|
+
flex-grow: 1;
|
|
131
|
+
overflow: auto;
|
|
132
|
+
}
|
|
120
133
|
}
|
|
121
134
|
|
|
122
135
|
.vxe-menu--item-link {
|
|
@@ -7,8 +7,6 @@
|
|
|
7
7
|
& > .vxe-scrollbar--view {
|
|
8
8
|
scrollbar-width: none;
|
|
9
9
|
-ms-overflow-style: none;
|
|
10
|
-
overflow-x: auto;
|
|
11
|
-
overflow-y: auto;
|
|
12
10
|
}
|
|
13
11
|
& > .vxe-scrollbar--view::-webkit-scrollbar {
|
|
14
12
|
display: none;
|
|
@@ -37,20 +35,6 @@
|
|
|
37
35
|
}
|
|
38
36
|
}
|
|
39
37
|
&.is--native {
|
|
40
|
-
& > .vxe-scrollbar--view {
|
|
41
|
-
overflow-x: auto;
|
|
42
|
-
overflow-y: auto;
|
|
43
|
-
}
|
|
44
|
-
&.ov-x--hidden {
|
|
45
|
-
& > .vxe-scrollbar--view {
|
|
46
|
-
overflow-x: hidden;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
&.ov-y--hidden {
|
|
50
|
-
& > .vxe-scrollbar--view {
|
|
51
|
-
overflow-y: hidden;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
38
|
& > .vxe-scrollbar--view::-webkit-scrollbar {
|
|
55
39
|
width: var(--vxe-ui-scrollbar-y-width);
|
|
56
40
|
height: var(--vxe-ui-scrollbar-x-height);
|
|
@@ -66,25 +50,47 @@
|
|
|
66
50
|
background-color: var(--vxe-ui-scrollbar-thumb-active-background-color);
|
|
67
51
|
}
|
|
68
52
|
}
|
|
53
|
+
&.ov-x--hidden {
|
|
54
|
+
& > .vxe-scrollbar--view {
|
|
55
|
+
overflow-x: hidden;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
&.ov-y--hidden {
|
|
59
|
+
& > .vxe-scrollbar--view {
|
|
60
|
+
overflow-y: hidden;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
69
63
|
}
|
|
70
64
|
|
|
71
65
|
.vxe-scrollbar--view {
|
|
72
66
|
height: 100%;
|
|
73
67
|
width: 100%;
|
|
68
|
+
overflow-x: auto;
|
|
69
|
+
overflow-y: auto;
|
|
74
70
|
}
|
|
75
71
|
|
|
76
72
|
.vxe-scrollbar--track-x,
|
|
77
73
|
.vxe-scrollbar--track-y {
|
|
74
|
+
display: none;
|
|
78
75
|
position: absolute;
|
|
79
76
|
background-color: var(--vxe-ui-scrollbar-track-background-color);
|
|
80
77
|
user-select: none;
|
|
81
78
|
}
|
|
79
|
+
.vxe-scrollbar {
|
|
80
|
+
&.overflow-y {
|
|
81
|
+
& > .vxe-scrollbar--track-x,
|
|
82
|
+
& > .vxe-scrollbar--track-y {
|
|
83
|
+
display: block;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
82
87
|
|
|
83
88
|
.vxe-scrollbar--track-x {
|
|
84
89
|
width: 100%;
|
|
85
90
|
bottom: 0;
|
|
86
91
|
left: 0;
|
|
87
92
|
height: var(--vxe-ui-scrollbar-x-height);
|
|
93
|
+
padding: var(--vxe-ui-scrollbar-track-padding) 0;
|
|
88
94
|
}
|
|
89
95
|
|
|
90
96
|
.vxe-scrollbar--track-y {
|
|
@@ -92,6 +98,7 @@
|
|
|
92
98
|
right: 0;
|
|
93
99
|
top: 0;
|
|
94
100
|
width: var(--vxe-ui-scrollbar-y-width);
|
|
101
|
+
padding: 0 var(--vxe-ui-scrollbar-track-padding);
|
|
95
102
|
}
|
|
96
103
|
|
|
97
104
|
.vxe-scrollbar--thumb-y {
|
|
@@ -103,7 +110,7 @@
|
|
|
103
110
|
|
|
104
111
|
.vxe-scrollbar--thumb-x,
|
|
105
112
|
.vxe-scrollbar--thumb-y {
|
|
106
|
-
border-radius: var(--vxe-ui-
|
|
113
|
+
border-radius: var(--vxe-ui-scrollbar-thumb-border-radius);
|
|
107
114
|
background-color: var(--vxe-ui-scrollbar-thumb-background-color);
|
|
108
115
|
&:hover {
|
|
109
116
|
background-color: var(--vxe-ui-scrollbar-thumb-hover-background-color);
|
|
@@ -1,63 +1,34 @@
|
|
|
1
1
|
@use "sass:map";
|
|
2
2
|
@use "sass:list";
|
|
3
|
+
@use '../helpers/themeStatus.scss';
|
|
3
4
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
textColor: var(--vxe-ui-status-info-color),
|
|
24
|
-
btnColor: #fff,
|
|
25
|
-
btnLightenColor: var(--vxe-ui-status-info-lighten-color),
|
|
26
|
-
btnDarkenColor: var(--vxe-ui-status-info-darken-color),
|
|
27
|
-
btnDisabledColor: var(--vxe-ui-status-info-disabled-color)
|
|
28
|
-
),
|
|
29
|
-
(
|
|
30
|
-
name: "warning",
|
|
31
|
-
textColor: var(--vxe-ui-status-warning-color),
|
|
32
|
-
btnColor: #fff,
|
|
33
|
-
btnLightenColor: var(--vxe-ui-status-warning-lighten-color),
|
|
34
|
-
btnDarkenColor: var(--vxe-ui-status-warning-darken-color),
|
|
35
|
-
btnDisabledColor: var(--vxe-ui-status-warning-disabled-color)
|
|
36
|
-
),
|
|
37
|
-
(
|
|
38
|
-
name: "danger",
|
|
39
|
-
textColor: var(--vxe-ui-status-danger-color),
|
|
40
|
-
btnColor: #fff,
|
|
41
|
-
btnLightenColor: var(--vxe-ui-status-danger-lighten-color),
|
|
42
|
-
btnDarkenColor: var(--vxe-ui-status-danger-darken-color),
|
|
43
|
-
btnDisabledColor: var(--vxe-ui-status-danger-disabled-color)
|
|
44
|
-
),
|
|
45
|
-
(
|
|
46
|
-
name: "error",
|
|
47
|
-
textColor: var(--vxe-ui-status-error-color),
|
|
48
|
-
btnColor: #fff,
|
|
49
|
-
btnLightenColor: var(--vxe-ui-status-error-lighten-color),
|
|
50
|
-
btnDarkenColor: var(--vxe-ui-status-error-darken-color),
|
|
51
|
-
btnDisabledColor: var(--vxe-ui-status-error-disabled-color)
|
|
52
|
-
)
|
|
53
|
-
);
|
|
5
|
+
// 局部变量
|
|
6
|
+
.vxe-text-ellipsis {
|
|
7
|
+
--vxe-ui-text-ellipsis-current-font-size: inherit;
|
|
8
|
+
&.size--xlarge {
|
|
9
|
+
--vxe-ui-text-ellipsis-current-font-size: var(--vxe-ui-font-size-xlarge);
|
|
10
|
+
}
|
|
11
|
+
&.size--large {
|
|
12
|
+
--vxe-ui-text-ellipsis-current-font-size: var(--vxe-ui-font-size-large);
|
|
13
|
+
}
|
|
14
|
+
&.size--medium {
|
|
15
|
+
--vxe-ui-text-ellipsis-current-font-size: var(--vxe-ui-font-size-medium);
|
|
16
|
+
}
|
|
17
|
+
&.size--small {
|
|
18
|
+
--vxe-ui-text-ellipsis-current-font-size: var(--vxe-ui-font-size-small);
|
|
19
|
+
}
|
|
20
|
+
&.size--mini {
|
|
21
|
+
--vxe-ui-text-ellipsis-current-font-size: var(--vxe-ui-font-size-mini);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
54
24
|
|
|
55
25
|
.vxe-text-ellipsis {
|
|
56
26
|
display: block;
|
|
57
27
|
overflow: hidden;
|
|
58
28
|
white-space: normal;
|
|
59
|
-
|
|
60
|
-
|
|
29
|
+
font-size: var(--vxe-ui-text-ellipsis-current-font-size);
|
|
30
|
+
@for $index from 0 to list.length(themeStatus.$btnThemeList) {
|
|
31
|
+
$item: list.nth(themeStatus.$btnThemeList, $index + 1);
|
|
61
32
|
&.theme--#{map.get($item, name)} {
|
|
62
33
|
color: map.get($item, textColor);
|
|
63
34
|
& > .vxe-text-ellipsis--link {
|
|
@@ -117,15 +88,3 @@ $btnThemeList: (
|
|
|
117
88
|
text-decoration: none;
|
|
118
89
|
color: inherit;
|
|
119
90
|
}
|
|
120
|
-
|
|
121
|
-
.vxe-text-ellipsis {
|
|
122
|
-
&.size--medium {
|
|
123
|
-
font-size: var(--vxe-ui-font-size-medium);
|
|
124
|
-
}
|
|
125
|
-
&.size--small {
|
|
126
|
-
font-size: var(--vxe-ui-font-size-small);
|
|
127
|
-
}
|
|
128
|
-
&.size--mini {
|
|
129
|
-
font-size: var(--vxe-ui-font-size-mini);
|
|
130
|
-
}
|
|
131
|
-
}
|
package/styles/theme/base.scss
CHANGED
|
@@ -323,4 +323,6 @@
|
|
|
323
323
|
--vxe-ui-scrollbar-y-width: 10px;
|
|
324
324
|
--vxe-ui-scrollbar-x-height: var(--vxe-ui-scrollbar-y-width);
|
|
325
325
|
--vxe-ui-scrollbar-track-background-color: transparent;
|
|
326
|
+
--vxe-ui-scrollbar-track-padding: 0;
|
|
327
|
+
--vxe-ui-scrollbar-thumb-border-radius: var(--vxe-ui-base-border-radius);
|
|
326
328
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { RenderFunction, ComputedRef, SetupContext, Ref } from 'vue'
|
|
2
2
|
import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentBaseOptions, VxeComponentEventParams, ValueOf, VxeComponentSizeType, VxeComponentStyleType } 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
|
|
|
@@ -35,6 +36,8 @@ export namespace VxeLayoutAsidePropTypes {
|
|
|
35
36
|
*/
|
|
36
37
|
animation?: boolean
|
|
37
38
|
}
|
|
39
|
+
export type UseScrollbar = boolean
|
|
40
|
+
export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'native' | 'yConfig' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {}
|
|
38
41
|
}
|
|
39
42
|
|
|
40
43
|
export interface VxeLayoutAsideProps {
|
|
@@ -45,6 +48,8 @@ export interface VxeLayoutAsideProps {
|
|
|
45
48
|
padding?: VxeLayoutAsidePropTypes.Padding
|
|
46
49
|
size?: VxeLayoutAsidePropTypes.Size
|
|
47
50
|
collapseConfig?: VxeLayoutAsidePropTypes.CollapseConfig
|
|
51
|
+
useScrollbar?: VxeLayoutAsidePropTypes.UseScrollbar
|
|
52
|
+
scrollbarConfig?: VxeLayoutAsidePropTypes.ScrollbarConfig
|
|
48
53
|
}
|
|
49
54
|
export interface LayoutAsidePrivateComputed {
|
|
50
55
|
computeSize: ComputedRef<VxeLayoutAsidePropTypes.Size>
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { RenderFunction, SetupContext, Ref } from 'vue'
|
|
2
2
|
import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentBaseOptions, VxeComponentEventParams, ValueOf, VxeComponentSizeType } from '@vxe-ui/core'
|
|
3
3
|
import { VxeBacktopProps, VxeBacktopSlotTypes } from './backtop'
|
|
4
|
+
import { VxeScrollbarProps } from './scrollbar'
|
|
4
5
|
|
|
5
6
|
/* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
|
|
6
7
|
|
|
@@ -30,14 +31,17 @@ export namespace VxeLayoutBodyPropTypes {
|
|
|
30
31
|
export type Padding = boolean
|
|
31
32
|
export type ShowBacktop = boolean
|
|
32
33
|
export interface BacktopConfig extends Omit<VxeBacktopProps, 'target'> {}
|
|
34
|
+
export type UseScrollbar = boolean
|
|
35
|
+
export interface ScrollbarConfig extends Pick<VxeScrollbarProps, 'native' | 'xConfig' | 'yConfig' | 'className' | 'viewAttrs' | 'viewClassName' | 'viewInnerClassName'> {}
|
|
33
36
|
}
|
|
34
|
-
|
|
35
37
|
export interface VxeLayoutBodyProps {
|
|
36
38
|
size?: VxeLayoutBodyPropTypes.Size
|
|
37
39
|
loading?: VxeLayoutBodyPropTypes.Loading
|
|
38
40
|
padding?: VxeLayoutBodyPropTypes.Padding
|
|
39
41
|
showBacktop?: VxeLayoutBodyPropTypes.ShowBacktop
|
|
40
42
|
backtopConfig?: VxeLayoutBodyPropTypes.BacktopConfig
|
|
43
|
+
useScrollbar?: VxeLayoutBodyPropTypes.UseScrollbar
|
|
44
|
+
scrollbarConfig?: VxeLayoutBodyPropTypes.ScrollbarConfig
|
|
41
45
|
}
|
|
42
46
|
|
|
43
47
|
export interface LayoutBodyPrivateComputed {
|
|
@@ -2,6 +2,7 @@ import { RenderFunction, SetupContext, Ref } from 'vue'
|
|
|
2
2
|
import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentSlotType, VxeComponentStyleType, VxeComponentBaseOptions, VxeComponentEventParams, ValueOf, VxeComponentSizeType, VxeComponentPermissionCodeType } from '@vxe-ui/core'
|
|
3
3
|
import { VxeLinkPropTypes } from './link'
|
|
4
4
|
import { VxeContextMenuPropTypes, VxeContextMenuDefines } from './context-menu'
|
|
5
|
+
import { VxeScrollbarProps } from './scrollbar'
|
|
5
6
|
|
|
6
7
|
/* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
|
|
7
8
|
|
|
@@ -85,6 +86,8 @@ export namespace VxeMenuPropTypes {
|
|
|
85
86
|
}): boolean
|
|
86
87
|
}
|
|
87
88
|
export type AppendTo = string | HTMLElement | ((params: {}) => string | HTMLElement)
|
|
89
|
+
export type UseScrollbar = boolean
|
|
90
|
+
export interface ScrollbarConfig extends VxeScrollbarProps {}
|
|
88
91
|
}
|
|
89
92
|
|
|
90
93
|
export interface VxeMenuProps {
|
|
@@ -106,6 +109,8 @@ export interface VxeMenuProps {
|
|
|
106
109
|
expandKeys?: VxeMenuPropTypes.ExpandKeys
|
|
107
110
|
options?: VxeMenuPropTypes.Options
|
|
108
111
|
menuConfig?: VxeMenuPropTypes.MenuConfig
|
|
112
|
+
useScrollbar?: VxeMenuPropTypes.UseScrollbar
|
|
113
|
+
scrollbarConfig?: VxeMenuPropTypes.ScrollbarConfig
|
|
109
114
|
/**
|
|
110
115
|
* 挂载到指定元素下
|
|
111
116
|
*/
|
|
@@ -24,6 +24,7 @@ export interface ScrollbarPrivateRef {
|
|
|
24
24
|
export interface VxeScrollbarPrivateRef extends ScrollbarPrivateRef { }
|
|
25
25
|
|
|
26
26
|
export namespace VxeScrollbarPropTypes {
|
|
27
|
+
export type Id = number | string
|
|
27
28
|
export type Width = number | string
|
|
28
29
|
export type Height = number | string
|
|
29
30
|
export type MinWidth = number | string
|
|
@@ -59,12 +60,18 @@ export namespace VxeScrollbarPropTypes {
|
|
|
59
60
|
threshold?: string | number
|
|
60
61
|
}
|
|
61
62
|
export type ClassName = string
|
|
63
|
+
export type ViewAttrs = Record<string, any>
|
|
62
64
|
export type ViewClassName = string
|
|
65
|
+
export type ViewInnerClassName = string
|
|
63
66
|
export type AutoResize = boolean
|
|
64
67
|
export type SyncResize = boolean
|
|
65
68
|
}
|
|
66
69
|
|
|
67
70
|
export interface VxeScrollbarProps {
|
|
71
|
+
/**
|
|
72
|
+
* ID
|
|
73
|
+
*/
|
|
74
|
+
id?: VxeScrollbarPropTypes.Id
|
|
68
75
|
/**
|
|
69
76
|
* 容器宽度
|
|
70
77
|
*/
|
|
@@ -109,10 +116,18 @@ export interface VxeScrollbarProps {
|
|
|
109
116
|
* 给容器附加 class
|
|
110
117
|
*/
|
|
111
118
|
className?: VxeScrollbarPropTypes.ClassName
|
|
119
|
+
/**
|
|
120
|
+
* 给视图元素附加属性
|
|
121
|
+
*/
|
|
122
|
+
viewAttrs?: VxeScrollbarPropTypes.ViewAttrs
|
|
112
123
|
/**
|
|
113
124
|
* 给视图元素附加 class
|
|
114
125
|
*/
|
|
115
126
|
viewClassName?: VxeScrollbarPropTypes.ViewClassName
|
|
127
|
+
/**
|
|
128
|
+
* 给视图内元素附加 class
|
|
129
|
+
*/
|
|
130
|
+
viewInnerClassName?: VxeScrollbarPropTypes.ViewInnerClassName
|
|
116
131
|
/**
|
|
117
132
|
* 自动监听元素的变化去重新计算样式
|
|
118
133
|
*/
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|