@oinone/kunlun-vue-ui-antd 6.3.9 → 6.4.0
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/oinone-kunlun-vue-ui-antd.css +1 -1
- package/dist/oinone-kunlun-vue-ui-antd.esm.js +2 -2
- package/dist/oinone-kunlun-vue-ui-antd.scss +1 -1
- package/dist/types/src/component/index.d.ts +1 -0
- package/dist/types/src/component/oio-button/oio-button.vue.d.ts +6 -0
- package/dist/types/src/component/oio-drawer/oio-drawer.vue.d.ts +43 -11
- package/dist/types/src/component/oio-gallery/oio-gallery.vue.d.ts +2 -0
- package/dist/types/src/component/oio-group/index.d.ts +1 -0
- package/dist/types/src/component/oio-group/oio-group.vue.d.ts +6 -0
- package/dist/types/src/component/oio-group/typing.d.ts +10 -0
- package/dist/types/src/component/oio-inner-popup/oio-inner-popup.vue.d.ts +0 -3
- package/dist/types/src/component/oio-input/oio-input-number.vue.d.ts +2 -1
- package/dist/types/src/component/oio-input/oio-input-password.vue.d.ts +6 -0
- package/dist/types/src/component/oio-input/oio-input-search.vue.d.ts +6 -0
- package/dist/types/src/component/oio-input/oio-input.vue.d.ts +12 -1
- package/dist/types/src/component/oio-list/index.d.ts +1 -0
- package/dist/types/src/component/oio-list/oio-list.vue.d.ts +80 -0
- package/dist/types/src/component/oio-modal/oio-modal.vue.d.ts +47 -10
- package/dist/types/src/component/oio-notification/index.d.ts +12 -1
- package/dist/types/src/component/oio-select/oio-select.vue.d.ts +14 -2
- package/dist/types/src/component/oio-tabs/oio-tabs.vue.d.ts +10 -3
- package/dist/types/src/component/oio-tooltip/oio-tooltip-help.vue.d.ts +0 -2
- package/dist/types/src/component/oio-tree/oio-tree.vue.d.ts +1 -1
- package/dist/types/src/index.d.ts +1 -0
- package/package.json +3 -3
- package/src/component/index.ts +1 -0
- package/src/component/oio-button/oio-button.vue +2 -2
- package/src/component/oio-button/style/a-button.scss +102 -13
- package/src/component/oio-checkbox/style/index.scss +21 -1
- package/src/component/oio-collapse/style/index.scss +2 -1
- package/src/component/oio-date-time-picker/style/index.scss +42 -41
- package/src/component/oio-date-time-range-picker/style/index.scss +5 -5
- package/src/component/oio-drawer/oio-drawer.vue +77 -18
- package/src/component/oio-drawer/style/index.scss +129 -10
- package/src/component/oio-drawer/style/parameters.scss +4 -0
- package/src/component/oio-form/style/index.scss +3 -2
- package/src/component/oio-gallery/oio-gallery.vue +2 -4
- package/src/component/oio-group/index.ts +1 -0
- package/src/component/oio-group/oio-group.vue +7 -1
- package/src/component/oio-group/style/index.scss +17 -4
- package/src/component/oio-group/typing.ts +10 -0
- package/src/component/oio-inner-popup/oio-inner-popup.vue +23 -12
- package/src/component/oio-inner-popup/style/index.scss +13 -25
- package/src/component/oio-input/oio-input-group.vue +1 -1
- package/src/component/oio-input/oio-input-number.vue +4 -1
- package/src/component/oio-input/oio-input-search.vue +6 -1
- package/src/component/oio-input/oio-input.vue +20 -7
- package/src/component/oio-list/index.ts +1 -0
- package/src/component/oio-list/oio-list-item.vue +17 -0
- package/src/component/oio-list/oio-list.vue +206 -0
- package/src/component/oio-list/style/index.scss +51 -0
- package/src/component/oio-list/style/parameters.scss +5 -0
- package/src/component/oio-modal/oio-modal.vue +89 -34
- package/src/component/oio-modal/style/index.scss +128 -72
- package/src/component/oio-modal/style/parameters.scss +4 -0
- package/src/component/oio-notification/index.ts +17 -2
- package/src/component/oio-pagination/style/index.scss +12 -11
- package/src/component/oio-radio/style/index.scss +38 -1
- package/src/component/oio-select/oio-select.vue +23 -10
- package/src/component/oio-select/style/a-select.scss +1 -1
- package/src/component/oio-select/style/index.scss +28 -11
- package/src/component/oio-spin/style/index.scss +1 -6
- package/src/component/oio-tabs/oio-tab.vue +1 -1
- package/src/component/oio-tabs/oio-tabs.vue +22 -2
- package/src/component/oio-tabs/style/index.scss +64 -0
- package/src/component/oio-tabs/use-tab-bar.ts +9 -10
- package/src/component/oio-tooltip/oio-tooltip-help.vue +1 -2
- package/src/component/oio-tree/oio-tree.vue +1 -2
- package/src/component/oio-tree/style/index.scss +4 -0
- package/src/index.ts +1 -0
- package/src/style/index.scss +1 -0
|
@@ -4,71 +4,6 @@
|
|
|
4
4
|
|
|
5
5
|
.#{$modalClassPrefix} {
|
|
6
6
|
padding: 0;
|
|
7
|
-
&.#{$modalClassPrefix}-width-small {
|
|
8
|
-
width: var($modalParameterPrefix + -width-small) !important;
|
|
9
|
-
}
|
|
10
|
-
&.#{$modalClassPrefix}-width-medium {
|
|
11
|
-
width: var($modalParameterPrefix + -width-medium) !important;
|
|
12
|
-
}
|
|
13
|
-
&.#{$modalClassPrefix}-width-large {
|
|
14
|
-
width: var($modalParameterPrefix + -width-large) !important;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
&.#{$modalClassPrefix}-width-full {
|
|
18
|
-
width: 100% !important;
|
|
19
|
-
max-width: 100%;
|
|
20
|
-
&.ant-modal {
|
|
21
|
-
margin: 0;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
&.#{$modalClassPrefix}-height-small {
|
|
26
|
-
.ant-modal-content {
|
|
27
|
-
display: flex;
|
|
28
|
-
flex-direction: column;
|
|
29
|
-
overflow: hidden;
|
|
30
|
-
height: var($modalParameterPrefix + -height-small) !important;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
&.#{$modalClassPrefix}-height-medium {
|
|
34
|
-
.ant-modal-content {
|
|
35
|
-
display: flex;
|
|
36
|
-
flex-direction: column;
|
|
37
|
-
overflow: hidden;
|
|
38
|
-
height: var($modalParameterPrefix + -height-medium) !important;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
&.#{$modalClassPrefix}-height-large {
|
|
42
|
-
.ant-modal-content {
|
|
43
|
-
display: flex;
|
|
44
|
-
flex-direction: column;
|
|
45
|
-
overflow: hidden;
|
|
46
|
-
height: var($modalParameterPrefix + -height-large) !important;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
&.#{$modalClassPrefix}-height-custom {
|
|
51
|
-
.ant-modal-content {
|
|
52
|
-
display: flex;
|
|
53
|
-
flex-direction: column;
|
|
54
|
-
overflow: hidden;
|
|
55
|
-
height: var(--oio-modal-custom-height) !important;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
&.#{$modalClassPrefix}-height-full {
|
|
60
|
-
&.ant-modal {
|
|
61
|
-
top: 0;
|
|
62
|
-
padding-bottom: 0;
|
|
63
|
-
margin: 0;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
.ant-modal-content {
|
|
67
|
-
display: flex;
|
|
68
|
-
flex-direction: column;
|
|
69
|
-
height: calc(100vh);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
7
|
|
|
73
8
|
.ant-modal-body {
|
|
74
9
|
flex: 1;
|
|
@@ -95,15 +30,20 @@
|
|
|
95
30
|
}
|
|
96
31
|
|
|
97
32
|
.ant-modal-content {
|
|
98
|
-
background: var($parameterPrefix + -background);
|
|
33
|
+
background-color: var($parameterPrefix + -background);
|
|
99
34
|
border: 1px solid var($parameterPrefix + -border-color);
|
|
100
|
-
box-shadow:
|
|
35
|
+
box-shadow: var(--oio-box-shadow);
|
|
101
36
|
border-radius: var($parameterPrefix + -border-radius);
|
|
102
37
|
}
|
|
103
38
|
|
|
39
|
+
.ant-modal-close {
|
|
40
|
+
margin: 16px;
|
|
41
|
+
}
|
|
42
|
+
|
|
104
43
|
.ant-modal-close-x {
|
|
44
|
+
width: 24px;
|
|
45
|
+
height: 24px;
|
|
105
46
|
color: var($parameterPrefix + -text-color);
|
|
106
|
-
height: 49px;
|
|
107
47
|
display: flex;
|
|
108
48
|
align-items: center;
|
|
109
49
|
justify-content: center;
|
|
@@ -120,6 +60,26 @@
|
|
|
120
60
|
color: var($parameterPrefix + -text-color);
|
|
121
61
|
line-height: 24px;
|
|
122
62
|
font-weight: var($parameterPrefix + -font-weight-bold);
|
|
63
|
+
position: relative;
|
|
64
|
+
|
|
65
|
+
.#{$modalClassPrefix}-title-extend {
|
|
66
|
+
height: 24px;
|
|
67
|
+
flex: 1;
|
|
68
|
+
display: flex;
|
|
69
|
+
align-items: center;
|
|
70
|
+
column-gap: 16px;
|
|
71
|
+
position: absolute;
|
|
72
|
+
top: 0;
|
|
73
|
+
right: 40px;
|
|
74
|
+
|
|
75
|
+
.oio-icon {
|
|
76
|
+
width: 24px;
|
|
77
|
+
height: 24px;
|
|
78
|
+
display: flex;
|
|
79
|
+
align-items: center;
|
|
80
|
+
justify-content: center;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
123
83
|
}
|
|
124
84
|
}
|
|
125
85
|
|
|
@@ -129,9 +89,10 @@
|
|
|
129
89
|
}
|
|
130
90
|
|
|
131
91
|
.ant-modal-body {
|
|
132
|
-
padding: var($parameterPrefix + -margin-md);
|
|
133
92
|
@include oio-scrollbar();
|
|
134
93
|
|
|
94
|
+
padding: var($parameterPrefix + -margin-md);
|
|
95
|
+
|
|
135
96
|
.ant-modal-confirm-body-wrapper {
|
|
136
97
|
.ant-modal-confirm-btns {
|
|
137
98
|
button {
|
|
@@ -142,18 +103,18 @@
|
|
|
142
103
|
}
|
|
143
104
|
|
|
144
105
|
.ant-modal-footer {
|
|
106
|
+
@include oio-scrollbar();
|
|
107
|
+
|
|
145
108
|
padding: var($parameterPrefix + -margin-md);
|
|
146
109
|
border-top: 1px solid var($parameterPrefix + -border-color);
|
|
147
110
|
overflow: auto hidden;
|
|
148
|
-
@include oio-scrollbar();
|
|
149
111
|
|
|
150
112
|
button {
|
|
151
113
|
@import '../../oio-button/style/a-button.scss';
|
|
152
114
|
|
|
153
115
|
&.ant-btn {
|
|
154
116
|
height: var($parameterPrefix + -height);
|
|
155
|
-
margin: var($parameterPrefix + -margin-xxs) 0 var($parameterPrefix + -margin-xxs)
|
|
156
|
-
var($parameterPrefix + -margin-md);
|
|
117
|
+
margin: var($parameterPrefix + -margin-xxs) 0 var($parameterPrefix + -margin-xxs) var($parameterPrefix + -margin-md);
|
|
157
118
|
|
|
158
119
|
& + .ant-btn {
|
|
159
120
|
margin-left: var($parameterPrefix + -margin-md);
|
|
@@ -161,7 +122,102 @@
|
|
|
161
122
|
}
|
|
162
123
|
}
|
|
163
124
|
}
|
|
125
|
+
|
|
164
126
|
.ant-modal-confirm-btns .ant-btn + .ant-btn {
|
|
165
127
|
margin-left: 12px;
|
|
166
128
|
}
|
|
129
|
+
|
|
130
|
+
&.#{$modalClassPrefix}-width-small {
|
|
131
|
+
width: var($modalParameterPrefix + -width-small);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
&.#{$modalClassPrefix}-width-medium {
|
|
135
|
+
width: var($modalParameterPrefix + -width-medium);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
&.#{$modalClassPrefix}-width-large {
|
|
139
|
+
width: var($modalParameterPrefix + -width-large);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
&.#{$modalClassPrefix}-width-full {
|
|
143
|
+
width: 100%;
|
|
144
|
+
max-width: 100%;
|
|
145
|
+
|
|
146
|
+
&.ant-modal {
|
|
147
|
+
margin: 0;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
&.#{$modalClassPrefix}-height-small {
|
|
152
|
+
.ant-modal-content {
|
|
153
|
+
display: flex;
|
|
154
|
+
flex-direction: column;
|
|
155
|
+
height: var($modalParameterPrefix + -height-small);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
&.#{$modalClassPrefix}-height-medium {
|
|
160
|
+
.ant-modal-content {
|
|
161
|
+
display: flex;
|
|
162
|
+
flex-direction: column;
|
|
163
|
+
height: var($modalParameterPrefix + -height-medium);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
&.#{$modalClassPrefix}-height-large {
|
|
168
|
+
.ant-modal-content {
|
|
169
|
+
display: flex;
|
|
170
|
+
flex-direction: column;
|
|
171
|
+
height: var($modalParameterPrefix + -height-large);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
&.#{$modalClassPrefix}-height-full {
|
|
176
|
+
&.ant-modal {
|
|
177
|
+
top: 0;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.ant-modal-content {
|
|
181
|
+
display: flex;
|
|
182
|
+
flex-direction: column;
|
|
183
|
+
height: 100vh;
|
|
184
|
+
border: none;
|
|
185
|
+
border-radius: 0;
|
|
186
|
+
box-shadow: none;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
&.#{$modalClassPrefix}-height-custom {
|
|
191
|
+
.ant-modal-content {
|
|
192
|
+
display: flex;
|
|
193
|
+
flex-direction: column;
|
|
194
|
+
height: var(--oio-modal-custom-height);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
.#{$modalClassPrefix}-wrapper.#{$modalClassPrefix}-drawer-mode {
|
|
200
|
+
display: flex;
|
|
201
|
+
justify-content: flex-end;
|
|
202
|
+
|
|
203
|
+
.#{$modalClassPrefix} {
|
|
204
|
+
&.#{$modalClassPrefix}-width-small {
|
|
205
|
+
width: var($drawerParameterPrefix + -width-small);
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
&.#{$modalClassPrefix}-width-medium {
|
|
209
|
+
width: var($drawerParameterPrefix + -width-medium);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
&.#{$modalClassPrefix}-width-large {
|
|
213
|
+
width: var($drawerParameterPrefix + -width-large);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
&.#{$modalClassPrefix}-height-full {
|
|
217
|
+
&.ant-modal {
|
|
218
|
+
right: 0;
|
|
219
|
+
margin: 0;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
167
223
|
}
|
|
@@ -23,7 +23,12 @@ export enum NotificationType {
|
|
|
23
23
|
/**
|
|
24
24
|
* 错误
|
|
25
25
|
*/
|
|
26
|
-
error = 'error'
|
|
26
|
+
error = 'error',
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* 二次确认
|
|
30
|
+
*/
|
|
31
|
+
confirm = 'confirm'
|
|
27
32
|
}
|
|
28
33
|
|
|
29
34
|
const getIconVNode = (icon: string, color: string, size = '21') =>
|
|
@@ -127,7 +132,7 @@ class Notification {
|
|
|
127
132
|
message: title ? createVNode('div', { class: `${DEFAULT_PREFIX}-notification-message-title` }, title) : '',
|
|
128
133
|
description: message,
|
|
129
134
|
icon: genNotificationIcon(type),
|
|
130
|
-
closeIcon: createVNode(OioCloseIcon, { volume: '
|
|
135
|
+
closeIcon: createVNode(OioCloseIcon, { volume: '18', size: '10' }),
|
|
131
136
|
class: StringHelper.append(
|
|
132
137
|
[`${DEFAULT_PREFIX}-notification ${DEFAULT_PREFIX}-notification-${type}`],
|
|
133
138
|
options?.class
|
|
@@ -174,6 +179,16 @@ class Notification {
|
|
|
174
179
|
public error(title: string, message?: string, options?: OioNotificationOptions) {
|
|
175
180
|
this.open(NotificationType.error, title, message, options);
|
|
176
181
|
}
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* 打开【二次确认】类型的消息通知框 {@link NotificationType.confirm}
|
|
185
|
+
* @param title 消息标题
|
|
186
|
+
* @param content 消息内容
|
|
187
|
+
* @param options 可选项
|
|
188
|
+
*/
|
|
189
|
+
public confirm(title: string, content: string, options?: OioNotificationOptions) {
|
|
190
|
+
this.open(NotificationType.confirm, title, content, options);
|
|
191
|
+
}
|
|
177
192
|
}
|
|
178
193
|
|
|
179
194
|
/**
|
|
@@ -62,30 +62,30 @@
|
|
|
62
62
|
.ant-pagination-next .ant-pagination-item-link,
|
|
63
63
|
.ant-pagination-item {
|
|
64
64
|
border: var($parameterPrefix + -border-width) var($parameterPrefix + -border-style)
|
|
65
|
-
var($
|
|
65
|
+
var($paginationParameterPrefix + -border-color);
|
|
66
66
|
border-radius: var($parameterPrefix + -border-radius);
|
|
67
67
|
|
|
68
68
|
a {
|
|
69
|
-
color: var($
|
|
69
|
+
color: var($paginationParameterPrefix + -text-color);
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
&:hover {
|
|
73
|
-
background-color: var($
|
|
74
|
-
border-color: var($
|
|
75
|
-
color:
|
|
73
|
+
background-color: var($paginationParameterPrefix + -background-hover);
|
|
74
|
+
border-color: var($paginationParameterPrefix + -border-color-hover);
|
|
75
|
+
color: var($paginationParameterPrefix + -text-color-hover);
|
|
76
76
|
|
|
77
77
|
a {
|
|
78
|
-
color:
|
|
78
|
+
color: var($paginationParameterPrefix + -text-color-hover);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
.ant-pagination-item-active {
|
|
84
|
-
background-color: var($
|
|
85
|
-
border-color: var($
|
|
84
|
+
background-color: var($paginationParameterPrefix + -background-active);
|
|
85
|
+
border-color: var($paginationParameterPrefix + -border-color-active);
|
|
86
86
|
|
|
87
87
|
a {
|
|
88
|
-
color:
|
|
88
|
+
color: var($paginationParameterPrefix + -text-color-active);
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
|
|
@@ -162,8 +162,9 @@
|
|
|
162
162
|
}
|
|
163
163
|
|
|
164
164
|
.ant-pagination-item-active {
|
|
165
|
-
background-color: var(
|
|
166
|
-
border
|
|
165
|
+
background-color: var($paginationParameterPrefix + -background-active);
|
|
166
|
+
border: var($parameterPrefix + -border-width) var($parameterPrefix + -border-style)
|
|
167
|
+
var($paginationParameterPrefix + -border-color-active);
|
|
167
168
|
}
|
|
168
169
|
|
|
169
170
|
.ant-pagination-options-quick-jumper {
|
|
@@ -1,5 +1,42 @@
|
|
|
1
1
|
@import './parameters.scss';
|
|
2
2
|
|
|
3
|
+
.#{$radioClassPrefix} {
|
|
4
|
+
.ant-radio-inner {
|
|
5
|
+
background-color: var(--oio-background);
|
|
6
|
+
border: 1px solid var(--oio-border-color);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.ant-radio-inner:after {
|
|
10
|
+
background-color: var(--oio-primary-color, #035dff);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.ant-radio-checked .ant-radio-inner {
|
|
14
|
+
border-color: var(--oio-primary-color, #035dff);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.ant-radio-input:focus + .ant-radio-inner,
|
|
18
|
+
.ant-radio-wrapper:hover .ant-radio,
|
|
19
|
+
.ant-radio:hover .ant-radio-inner {
|
|
20
|
+
border-color: var(--oio-primary-color, #035dff);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.ant-radio-input:focus + .ant-radio-inner {
|
|
24
|
+
box-shadow: 0 0 0 3px var(--oio-primary-color-10, #e6efff);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.#{$radioClassPrefix}-group {
|
|
29
|
+
.ant-radio-button-wrapper {
|
|
30
|
+
background-color: var(--oio-background);
|
|
31
|
+
border-color: var(--oio-border-color);
|
|
32
|
+
color: var(--oio-text-color);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.ant-radio-button-wrapper:not(:first-child):before {
|
|
36
|
+
background-color: var(--oio-border-color);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
3
40
|
.ant-radio {
|
|
4
41
|
.ant-radio-inner {
|
|
5
42
|
background-color: var(--oio-background);
|
|
@@ -7,7 +44,7 @@
|
|
|
7
44
|
}
|
|
8
45
|
|
|
9
46
|
.ant-radio-checked .ant-radio-inner {
|
|
10
|
-
border-color: var(--oio-primary-color, #
|
|
47
|
+
border-color: var(--oio-primary-color, #035dff);
|
|
11
48
|
}
|
|
12
49
|
}
|
|
13
50
|
|
|
@@ -5,8 +5,8 @@ import {
|
|
|
5
5
|
fillSelectItemProperties,
|
|
6
6
|
OioSelectProps,
|
|
7
7
|
PropRecordHelper,
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
SelectItem,
|
|
9
|
+
SelectProperties
|
|
10
10
|
} from '@oinone/kunlun-vue-ui-common';
|
|
11
11
|
import { Select as ASelect } from 'ant-design-vue';
|
|
12
12
|
import { isString } from 'lodash-es';
|
|
@@ -23,8 +23,8 @@ export default defineComponent({
|
|
|
23
23
|
...OioSelectProps
|
|
24
24
|
},
|
|
25
25
|
slots: ['dropdownRender', 'removeIcon', 'clearIcon', 'suffixIcon', 'menuItemSelectedIcon'],
|
|
26
|
-
emits: ['update:value'],
|
|
27
|
-
setup(props) {
|
|
26
|
+
emits: ['update:value', 'update:dropdown-visible'],
|
|
27
|
+
setup(props, { emit }) {
|
|
28
28
|
const internalProperties = computed<SelectProperties>(() => {
|
|
29
29
|
return {
|
|
30
30
|
...defaultSelectProperties,
|
|
@@ -57,18 +57,29 @@ export default defineComponent({
|
|
|
57
57
|
return value;
|
|
58
58
|
});
|
|
59
59
|
|
|
60
|
+
const onUpdateValue = (val: boolean) => {
|
|
61
|
+
emit('update:value', val);
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const onUpdateDropdownVisible = (val: boolean) => {
|
|
65
|
+
emit('update:dropdown-visible', val);
|
|
66
|
+
};
|
|
67
|
+
|
|
60
68
|
return {
|
|
61
69
|
internalProperties,
|
|
62
70
|
internalOptions,
|
|
63
|
-
internalValue
|
|
71
|
+
internalValue,
|
|
72
|
+
onUpdateValue,
|
|
73
|
+
onUpdateDropdownVisible
|
|
64
74
|
};
|
|
65
75
|
},
|
|
66
76
|
render() {
|
|
77
|
+
const { internalOptions, internalValue, onUpdateValue, onUpdateDropdownVisible } = this;
|
|
67
78
|
return createVNode(
|
|
68
79
|
ASelect,
|
|
69
80
|
{
|
|
70
|
-
value:
|
|
71
|
-
options:
|
|
81
|
+
value: internalValue,
|
|
82
|
+
options: internalOptions,
|
|
72
83
|
filterOption: this.filterOption,
|
|
73
84
|
autofocus: this.autofocus,
|
|
74
85
|
placeholder: this.placeholder,
|
|
@@ -80,15 +91,17 @@ export default defineComponent({
|
|
|
80
91
|
showSearch: this.showSearch,
|
|
81
92
|
mode: this.mode,
|
|
82
93
|
...this.$attrs,
|
|
94
|
+
open: this.dropdownVisible,
|
|
83
95
|
optionFilterProp: defaultSelectProperties.filterProp,
|
|
84
96
|
optionLabelProp: defaultSelectProperties.labelProp,
|
|
85
|
-
|
|
86
|
-
class: StringHelper.append([`${DEFAULT_PREFIX}-select`], CastHelper.cast(this.$attrs.class)),
|
|
97
|
+
...PropRecordHelper.collectionBasicProps(this.$attrs, [`${DEFAULT_PREFIX}-select`]),
|
|
87
98
|
dropdownClassName: StringHelper.append(
|
|
88
99
|
[`${DEFAULT_PREFIX}-select-dropdown`],
|
|
89
100
|
CastHelper.cast(this.dropdownClassName)
|
|
90
101
|
).join(' '),
|
|
91
|
-
getPopupContainer: this.getTriggerContainer
|
|
102
|
+
getPopupContainer: this.getTriggerContainer,
|
|
103
|
+
'onUpdate:value': onUpdateValue,
|
|
104
|
+
onDropdownVisibleChange: onUpdateDropdownVisible
|
|
92
105
|
},
|
|
93
106
|
PropRecordHelper.collectionSlots(this.$slots, [
|
|
94
107
|
'default',
|
|
@@ -59,41 +59,58 @@ $tagRemoveLineHeight: $tagHeight - 4px;
|
|
|
59
59
|
background: var(--oio-select-dropdown-background);
|
|
60
60
|
box-shadow: var(--oio-select-dropdown-box-shadow);
|
|
61
61
|
|
|
62
|
+
.oio-input {
|
|
63
|
+
border: 0;
|
|
64
|
+
box-shadow: none;
|
|
65
|
+
border-radius: 0;
|
|
66
|
+
border-bottom: 1px solid var(--oio-border-color);
|
|
67
|
+
|
|
68
|
+
&:hover,
|
|
69
|
+
&:focus,
|
|
70
|
+
&.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):not(.oio-input-readonly) {
|
|
71
|
+
border: 0;
|
|
72
|
+
border-bottom: 1px solid var(--oio-border-color);
|
|
73
|
+
border-color: var(--oio-border-color);
|
|
74
|
+
box-shadow: none;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
62
78
|
.ant-select-item {
|
|
63
|
-
color: var(--oio-select-dropdown-color)
|
|
79
|
+
color: var(--oio-select-dropdown-color);
|
|
64
80
|
|
|
65
81
|
&:hover {
|
|
66
|
-
|
|
67
|
-
color: var(--oio-select-dropdown-
|
|
82
|
+
color: var(--oio-select-dropdown-hover-color);
|
|
83
|
+
background-color: var(--oio-select-dropdown-hover-background);
|
|
68
84
|
}
|
|
69
85
|
|
|
70
86
|
&.ant-select-item-option-selected:not(.ant-select-item-option-disabled) {
|
|
71
|
-
background: var(--oio-select-dropdown-selected)
|
|
87
|
+
background-color: var(--oio-select-dropdown-selected);
|
|
72
88
|
|
|
73
89
|
.ant-select-item-option-content {
|
|
74
|
-
color: var(--oio-select-dropdown-selected-color)
|
|
90
|
+
color: var(--oio-select-dropdown-selected-color);
|
|
75
91
|
}
|
|
76
92
|
}
|
|
77
93
|
|
|
78
94
|
&.ant-select-item-option-disabled,
|
|
79
95
|
&.ant-select-item.ant-select-item-option-selected.ant-select-item-option-disabled {
|
|
80
|
-
color: var(--oio-disabled-color)
|
|
81
|
-
background: transparent
|
|
96
|
+
color: var(--oio-disabled-color);
|
|
97
|
+
background: transparent;
|
|
82
98
|
text-decoration-line: line-through;
|
|
99
|
+
|
|
83
100
|
&:hover {
|
|
84
|
-
background: transparent
|
|
85
|
-
color: var(--oio-disabled-color)
|
|
101
|
+
background: transparent;
|
|
102
|
+
color: var(--oio-disabled-color);
|
|
86
103
|
}
|
|
87
104
|
}
|
|
88
105
|
}
|
|
89
106
|
|
|
90
107
|
.ant-select-item-option-selected:not(.ant-select-item-option-disabled) {
|
|
91
108
|
color: var($parameterPrefix + -primary-color);
|
|
92
|
-
background-color:
|
|
109
|
+
background-color: var(--oio-select-dropdown-selected);
|
|
93
110
|
}
|
|
94
111
|
|
|
95
112
|
.ant-select-item-option-active:not(.ant-select-item-option-disabled) {
|
|
96
|
-
background-color:
|
|
113
|
+
background-color: var(--oio-select-dropdown-selected);
|
|
97
114
|
}
|
|
98
115
|
|
|
99
116
|
.ant-select-item-option-state {
|
|
@@ -6,6 +6,7 @@ $largeSize: 1.6em;
|
|
|
6
6
|
|
|
7
7
|
.#{$spinClassPrefix} {
|
|
8
8
|
background: var(--oio-spin-background);
|
|
9
|
+
|
|
9
10
|
&-small {
|
|
10
11
|
.#{$spinClassPrefix}-loading {
|
|
11
12
|
width: $smallSize;
|
|
@@ -40,9 +41,3 @@ $largeSize: 1.6em;
|
|
|
40
41
|
}
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
|
-
|
|
44
|
-
.ant-spin-nested-loading > div > .ant-spin {
|
|
45
|
-
&.#{$spinClassPrefix} {
|
|
46
|
-
max-height: inherit;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
@@ -86,7 +86,7 @@ export default defineComponent({
|
|
|
86
86
|
createVNode('div', { class: 'oio-tab' }, [
|
|
87
87
|
createVNode(
|
|
88
88
|
'div',
|
|
89
|
-
{ class: ['oio-tab-content', `oio-tab-${this.tabPosition}-content
|
|
89
|
+
{ class: ['oio-tab-content', `oio-tab-${this.tabPosition}-content`, 'oio-scrollbar'] },
|
|
90
90
|
{ default: () => slots.default() }
|
|
91
91
|
)
|
|
92
92
|
])
|
|
@@ -3,7 +3,9 @@ import { BooleanHelper, CSSStyle, uniqueKeyGenerator } from '@oinone/kunlun-shar
|
|
|
3
3
|
import {
|
|
4
4
|
CleanableEvent,
|
|
5
5
|
OioTabPosition,
|
|
6
|
+
OioTabsBizStyle,
|
|
6
7
|
OioTabsProps,
|
|
8
|
+
OioTabsType,
|
|
7
9
|
PropRecordHelper,
|
|
8
10
|
StyleHelper,
|
|
9
11
|
TabHTMLNode,
|
|
@@ -107,6 +109,18 @@ export default defineComponent({
|
|
|
107
109
|
}
|
|
108
110
|
});
|
|
109
111
|
|
|
112
|
+
const currentType = computed(() => {
|
|
113
|
+
if (props.bizStyle && [OioTabsBizStyle.Card, OioTabsBizStyle.AccentCard].includes(props.bizStyle)) {
|
|
114
|
+
if (props.type === OioTabsType['editable-card']) {
|
|
115
|
+
return OioTabsType['editable-card'];
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
return OioTabsType.card;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
return props.type;
|
|
122
|
+
});
|
|
123
|
+
|
|
110
124
|
onUnmounted(() => {
|
|
111
125
|
moreButtonMousemove?.remove();
|
|
112
126
|
});
|
|
@@ -121,6 +135,7 @@ export default defineComponent({
|
|
|
121
135
|
return {
|
|
122
136
|
id,
|
|
123
137
|
origin,
|
|
138
|
+
currentType,
|
|
124
139
|
onUpdateActiveKey
|
|
125
140
|
};
|
|
126
141
|
},
|
|
@@ -135,7 +150,8 @@ export default defineComponent({
|
|
|
135
150
|
tabPosition,
|
|
136
151
|
verticalHeight,
|
|
137
152
|
destroyInactiveTabPane,
|
|
138
|
-
|
|
153
|
+
currentType,
|
|
154
|
+
bizStyle
|
|
139
155
|
} = this;
|
|
140
156
|
|
|
141
157
|
const style = {} as CSSStyle;
|
|
@@ -150,6 +166,10 @@ export default defineComponent({
|
|
|
150
166
|
classNames.push(`${DEFAULT_PREFIX}-tabs-disabled`);
|
|
151
167
|
}
|
|
152
168
|
|
|
169
|
+
if (bizStyle === OioTabsBizStyle.AccentCard) {
|
|
170
|
+
classNames.push(`${DEFAULT_PREFIX}-tabs-accent-card`);
|
|
171
|
+
}
|
|
172
|
+
|
|
153
173
|
return withDirectives(
|
|
154
174
|
createVNode(
|
|
155
175
|
ATabs,
|
|
@@ -163,7 +183,7 @@ export default defineComponent({
|
|
|
163
183
|
tabPosition,
|
|
164
184
|
verticalHeight,
|
|
165
185
|
destroyInactiveTabPane,
|
|
166
|
-
type,
|
|
186
|
+
type: currentType,
|
|
167
187
|
'onUpdate:activeKey': this.onUpdateActiveKey
|
|
168
188
|
},
|
|
169
189
|
PropRecordHelper.collectionSlots(this.$slots, [
|