@uzum-tech/ui 1.5.4 → 1.6.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/index.js +106 -39
- package/dist/index.prod.js +3 -3
- package/es/_internal/radio/src/use-radio.d.ts +1 -0
- package/es/_internal/radio/src/use-radio.js +2 -1
- package/es/_utils/css/index.d.ts +1 -0
- package/es/_utils/css/index.js +1 -0
- package/es/_utils/css/normalize-size.d.ts +1 -0
- package/es/_utils/css/normalize-size.js +6 -0
- package/es/_utils/index.d.ts +1 -1
- package/es/_utils/index.js +1 -1
- package/es/avatar/src/Avatar.js +1 -7
- package/es/badge/src/Badge.d.ts +13 -0
- package/es/badge/src/Badge.js +5 -4
- package/es/badge/src/styles/index.cssr.js +5 -6
- package/es/badge/styles/light.d.ts +1 -0
- package/es/badge/styles/light.js +2 -1
- package/es/checkbox/src/styles/index.cssr.js +22 -0
- package/es/data-table/src/TableParts/Body.js +6 -3
- package/es/data-table/src/TableParts/BodyRadio.d.ts +6 -0
- package/es/data-table/src/TableParts/BodyRadio.js +4 -1
- package/es/date-picker/src/DatePicker.d.ts +3 -0
- package/es/date-picker/src/DatePicker.js +2 -2
- package/es/date-picker/src/interface.d.ts +1 -0
- package/es/date-picker/src/panel/use-calendar.js +5 -2
- package/es/date-picker/src/panel/use-dual-calendar.js +6 -3
- package/es/date-picker/src/utils.d.ts +1 -1
- package/es/date-picker/src/utils.js +3 -2
- package/es/list/src/List.d.ts +1 -1
- package/es/list/src/ListItem.js +9 -2
- package/es/pagination/src/Pagination.js +11 -5
- package/es/pagination/src/styles/index.cssr.js +10 -5
- package/es/pagination/styles/light.js +5 -5
- package/es/radio/src/Radio.d.ts +3 -0
- package/es/radio/src/Radio.js +1 -1
- package/es/radio/src/RadioButton.d.ts +3 -0
- package/es/version.d.ts +1 -1
- package/es/version.js +1 -1
- package/lib/_internal/radio/src/use-radio.d.ts +1 -0
- package/lib/_internal/radio/src/use-radio.js +2 -1
- package/lib/_utils/css/index.d.ts +1 -0
- package/lib/_utils/css/index.js +3 -1
- package/lib/_utils/css/normalize-size.d.ts +1 -0
- package/lib/_utils/css/normalize-size.js +10 -0
- package/lib/_utils/index.d.ts +1 -1
- package/lib/_utils/index.js +2 -1
- package/lib/avatar/src/Avatar.js +1 -7
- package/lib/badge/src/Badge.d.ts +13 -0
- package/lib/badge/src/Badge.js +4 -3
- package/lib/badge/src/styles/index.cssr.js +5 -6
- package/lib/badge/styles/light.d.ts +1 -0
- package/lib/badge/styles/light.js +2 -1
- package/lib/checkbox/src/styles/index.cssr.js +22 -0
- package/lib/data-table/src/TableParts/Body.js +6 -3
- package/lib/data-table/src/TableParts/BodyRadio.d.ts +6 -0
- package/lib/data-table/src/TableParts/BodyRadio.js +4 -1
- package/lib/date-picker/src/DatePicker.d.ts +3 -0
- package/lib/date-picker/src/DatePicker.js +2 -2
- package/lib/date-picker/src/interface.d.ts +1 -0
- package/lib/date-picker/src/panel/use-calendar.js +5 -2
- package/lib/date-picker/src/panel/use-dual-calendar.js +6 -3
- package/lib/date-picker/src/utils.d.ts +1 -1
- package/lib/date-picker/src/utils.js +3 -2
- package/lib/list/src/List.d.ts +1 -1
- package/lib/list/src/ListItem.js +7 -0
- package/lib/pagination/src/Pagination.js +11 -5
- package/lib/pagination/src/styles/index.cssr.js +9 -4
- package/lib/pagination/styles/light.js +5 -5
- package/lib/radio/src/Radio.d.ts +3 -0
- package/lib/radio/src/Radio.js +1 -1
- package/lib/radio/src/RadioButton.d.ts +3 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +1 -1
- package/web-types.json +21 -3
|
@@ -25,6 +25,7 @@ export declare const radioBaseProps: {
|
|
|
25
25
|
readonly default: undefined;
|
|
26
26
|
};
|
|
27
27
|
readonly onChange: PropType<OnChangeImpl>;
|
|
28
|
+
readonly onClick: PropType<(event: MouseEvent) => void>;
|
|
28
29
|
};
|
|
29
30
|
export declare const radioGroupInjectionKey: import("vue").InjectionKey<RadioGroupInjection>;
|
|
30
31
|
export interface UseRadio {
|
|
@@ -26,7 +26,8 @@ export const radioBaseProps = {
|
|
|
26
26
|
type: Boolean,
|
|
27
27
|
default: undefined
|
|
28
28
|
},
|
|
29
|
-
onChange: [Function, Array]
|
|
29
|
+
onChange: [Function, Array],
|
|
30
|
+
onClick: [Function, Array]
|
|
30
31
|
};
|
|
31
32
|
export const radioGroupInjectionKey = createInjectionKey('u-radio-group');
|
|
32
33
|
function useRadio(props) {
|
package/es/_utils/css/index.d.ts
CHANGED
package/es/_utils/css/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const resolveSize: (value: string | number | undefined, fallback: string) => string;
|
package/es/_utils/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { call, keep, omit, flatten, getSlot, getVNodeChildren, keysOf, render, g
|
|
|
2
2
|
export type { MaybeArray } from './vue';
|
|
3
3
|
export { warn, warnOnce, throwError, smallerSize, largerSize, getTitleAttribute, isArrayShallowEqual } from './uzum';
|
|
4
4
|
export type { ExtractPublicPropTypes, ExtractInternalPropTypes, Mutable } from './uzum';
|
|
5
|
-
export { formatLength, color2Class } from './css';
|
|
5
|
+
export { formatLength, color2Class, resolveSize } from './css';
|
|
6
6
|
export { createKey } from './cssr';
|
|
7
7
|
export { isJsdom } from './env/is-jsdom';
|
|
8
8
|
export { isBrowser } from './env/is-browser';
|
package/es/_utils/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { call, keep, omit, flatten, getSlot, getVNodeChildren, keysOf, render, getFirstSlotVNode, createDataKey, createRefSetter, createInjectionKey, resolveSlot, resolveSlotWithProps, resolveWrappedSlot, isSlotEmpty, mergeEventHandlers, isNodeVShowFalse, resolveWrappedSlotWithProps, Wrapper } from './vue';
|
|
2
2
|
export { warn, warnOnce, throwError, smallerSize, largerSize, getTitleAttribute, isArrayShallowEqual } from './uzum';
|
|
3
|
-
export { formatLength, color2Class } from './css';
|
|
3
|
+
export { formatLength, color2Class, resolveSize } from './css';
|
|
4
4
|
export { createKey } from './cssr';
|
|
5
5
|
export { isJsdom } from './env/is-jsdom';
|
|
6
6
|
export { isBrowser } from './env/is-browser';
|
package/es/avatar/src/Avatar.js
CHANGED
|
@@ -4,7 +4,7 @@ import { isImageSupportNativeLazy } from '../../_utils/env/is-native-lazy-load';
|
|
|
4
4
|
import { observeIntersection } from '../../image/src/utils';
|
|
5
5
|
import { tagInjectionKey } from '../../tag/src/Tag';
|
|
6
6
|
import { useConfig, useTheme, useThemeClass } from '../../_mixins';
|
|
7
|
-
import { createKey, resolveWrappedSlot, resolveSlot } from '../../_utils';
|
|
7
|
+
import { createKey, resolveWrappedSlot, resolveSlot, resolveSize } from '../../_utils';
|
|
8
8
|
import { avatarLight } from '../styles';
|
|
9
9
|
import { avatarGroupInjectionKey } from './context';
|
|
10
10
|
import { USkeleton } from '../../skeleton';
|
|
@@ -103,12 +103,6 @@ export default defineComponent({
|
|
|
103
103
|
const getBackgroundColor = (color) => {
|
|
104
104
|
return props.disabled || size === 'small' ? 'rgba(0,0,0,0)' : color;
|
|
105
105
|
};
|
|
106
|
-
const resolveSize = (value, fallback) => {
|
|
107
|
-
if (value === undefined)
|
|
108
|
-
return fallback;
|
|
109
|
-
value = String(value);
|
|
110
|
-
return /^\d+$/.test(value) ? `${value}px` : value;
|
|
111
|
-
};
|
|
112
106
|
return {
|
|
113
107
|
'--u-font-size': fontSize,
|
|
114
108
|
'--u-font-weight': fontWeight,
|
package/es/badge/src/Badge.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export declare const badgeProps: {
|
|
|
16
16
|
readonly processing: BooleanConstructor;
|
|
17
17
|
readonly color: StringConstructor;
|
|
18
18
|
readonly textColor: StringConstructor;
|
|
19
|
+
readonly dotSize: PropType<string | number>;
|
|
19
20
|
readonly offset: PropType<readonly [number | string, number | string]>;
|
|
20
21
|
readonly theme: PropType<import("../../_mixins").Theme<"Badge", {
|
|
21
22
|
color: string;
|
|
@@ -32,6 +33,7 @@ export declare const badgeProps: {
|
|
|
32
33
|
textColorError: string;
|
|
33
34
|
textColorWarning: string;
|
|
34
35
|
borderColor: string;
|
|
36
|
+
dotSize: string;
|
|
35
37
|
}, any>>;
|
|
36
38
|
readonly themeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Badge", {
|
|
37
39
|
color: string;
|
|
@@ -48,6 +50,7 @@ export declare const badgeProps: {
|
|
|
48
50
|
textColorError: string;
|
|
49
51
|
textColorWarning: string;
|
|
50
52
|
borderColor: string;
|
|
53
|
+
dotSize: string;
|
|
51
54
|
}, any>>>;
|
|
52
55
|
readonly builtinThemeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Badge", {
|
|
53
56
|
color: string;
|
|
@@ -64,6 +67,7 @@ export declare const badgeProps: {
|
|
|
64
67
|
textColorError: string;
|
|
65
68
|
textColorWarning: string;
|
|
66
69
|
borderColor: string;
|
|
70
|
+
dotSize: string;
|
|
67
71
|
}, any>>>;
|
|
68
72
|
};
|
|
69
73
|
export type BadgeProps = ExtractPublicPropTypes<typeof badgeProps>;
|
|
@@ -83,6 +87,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
83
87
|
readonly processing: BooleanConstructor;
|
|
84
88
|
readonly color: StringConstructor;
|
|
85
89
|
readonly textColor: StringConstructor;
|
|
90
|
+
readonly dotSize: PropType<string | number>;
|
|
86
91
|
readonly offset: PropType<readonly [number | string, number | string]>;
|
|
87
92
|
readonly theme: PropType<import("../../_mixins").Theme<"Badge", {
|
|
88
93
|
color: string;
|
|
@@ -99,6 +104,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
99
104
|
textColorError: string;
|
|
100
105
|
textColorWarning: string;
|
|
101
106
|
borderColor: string;
|
|
107
|
+
dotSize: string;
|
|
102
108
|
}, any>>;
|
|
103
109
|
readonly themeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Badge", {
|
|
104
110
|
color: string;
|
|
@@ -115,6 +121,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
115
121
|
textColorError: string;
|
|
116
122
|
textColorWarning: string;
|
|
117
123
|
borderColor: string;
|
|
124
|
+
dotSize: string;
|
|
118
125
|
}, any>>>;
|
|
119
126
|
readonly builtinThemeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Badge", {
|
|
120
127
|
color: string;
|
|
@@ -131,6 +138,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
131
138
|
textColorError: string;
|
|
132
139
|
textColorWarning: string;
|
|
133
140
|
borderColor: string;
|
|
141
|
+
dotSize: string;
|
|
134
142
|
}, any>>>;
|
|
135
143
|
}, {
|
|
136
144
|
rtlEnabled: import("vue").Ref<import("../../config-provider/src/internal-interface").RtlItem | undefined> | undefined;
|
|
@@ -147,6 +155,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
147
155
|
'--u-ripple-bezier': string;
|
|
148
156
|
'--u-text-color': string;
|
|
149
157
|
'--u-border-color': string;
|
|
158
|
+
'--u-dot-size': string;
|
|
150
159
|
}> | undefined;
|
|
151
160
|
themeClass: import("vue").Ref<string> | undefined;
|
|
152
161
|
onRender: (() => void) | undefined;
|
|
@@ -169,6 +178,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
169
178
|
readonly processing: BooleanConstructor;
|
|
170
179
|
readonly color: StringConstructor;
|
|
171
180
|
readonly textColor: StringConstructor;
|
|
181
|
+
readonly dotSize: PropType<string | number>;
|
|
172
182
|
readonly offset: PropType<readonly [number | string, number | string]>;
|
|
173
183
|
readonly theme: PropType<import("../../_mixins").Theme<"Badge", {
|
|
174
184
|
color: string;
|
|
@@ -185,6 +195,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
185
195
|
textColorError: string;
|
|
186
196
|
textColorWarning: string;
|
|
187
197
|
borderColor: string;
|
|
198
|
+
dotSize: string;
|
|
188
199
|
}, any>>;
|
|
189
200
|
readonly themeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Badge", {
|
|
190
201
|
color: string;
|
|
@@ -201,6 +212,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
201
212
|
textColorError: string;
|
|
202
213
|
textColorWarning: string;
|
|
203
214
|
borderColor: string;
|
|
215
|
+
dotSize: string;
|
|
204
216
|
}, any>>>;
|
|
205
217
|
readonly builtinThemeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Badge", {
|
|
206
218
|
color: string;
|
|
@@ -217,6 +229,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
217
229
|
textColorError: string;
|
|
218
230
|
textColorWarning: string;
|
|
219
231
|
borderColor: string;
|
|
232
|
+
dotSize: string;
|
|
220
233
|
}, any>>>;
|
|
221
234
|
}>>, {
|
|
222
235
|
readonly type: "default" | "info" | "success" | "warning" | "error" | "prime";
|
package/es/badge/src/Badge.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h, computed, onMounted, ref, defineComponent, Transition } from 'vue';
|
|
2
2
|
import { useConfig, useTheme, useThemeClass } from '../../_mixins';
|
|
3
3
|
import { UBaseSlotMachine, UBaseWave } from '../../_internal';
|
|
4
|
-
import { color2Class, createKey, getTitleAttribute, isSlotEmpty, resolveSlot } from '../../_utils';
|
|
4
|
+
import { color2Class, createKey, getTitleAttribute, isSlotEmpty, resolveSize, resolveSlot } from '../../_utils';
|
|
5
5
|
import { badgeLight } from '../styles';
|
|
6
6
|
import style from './styles/index.cssr';
|
|
7
7
|
import { useRtl } from '../../_mixins/use-rtl';
|
|
@@ -11,7 +11,7 @@ export const badgeProps = Object.assign(Object.assign({}, useTheme.props), { val
|
|
|
11
11
|
}, show: {
|
|
12
12
|
type: Boolean,
|
|
13
13
|
default: true
|
|
14
|
-
}, showZero: Boolean, processing: Boolean, color: String, textColor: String, offset: Array });
|
|
14
|
+
}, showZero: Boolean, processing: Boolean, color: String, textColor: String, dotSize: [String, Number], offset: Array });
|
|
15
15
|
export default defineComponent({
|
|
16
16
|
name: 'Badge',
|
|
17
17
|
props: badgeProps,
|
|
@@ -39,7 +39,7 @@ export default defineComponent({
|
|
|
39
39
|
const rtlEnabledRef = useRtl('Badge', mergedRtlRef, mergedClsPrefixRef);
|
|
40
40
|
const cssVarsRef = computed(() => {
|
|
41
41
|
const { type, color: propColor, textColor: propTextColor } = props;
|
|
42
|
-
const { common: { cubicBezierEaseInOut, cubicBezierEaseOut }, self: { [createKey('color', type)]: color, [createKey('textColor', type)]: textColor, fontSize, borderColor } } = themeRef.value;
|
|
42
|
+
const { common: { cubicBezierEaseInOut, cubicBezierEaseOut }, self: { [createKey('color', type)]: color, [createKey('textColor', type)]: textColor, fontSize, borderColor, dotSize } } = themeRef.value;
|
|
43
43
|
return {
|
|
44
44
|
'--u-font-size': fontSize,
|
|
45
45
|
'--u-color': propColor || color,
|
|
@@ -47,7 +47,8 @@ export default defineComponent({
|
|
|
47
47
|
'--u-bezier': cubicBezierEaseInOut,
|
|
48
48
|
'--u-ripple-bezier': cubicBezierEaseOut,
|
|
49
49
|
'--u-text-color': propTextColor || textColor,
|
|
50
|
-
'--u-border-color': borderColor
|
|
50
|
+
'--u-border-color': borderColor,
|
|
51
|
+
'--u-dot-size': resolveSize(props.dotSize, dotSize)
|
|
51
52
|
};
|
|
52
53
|
});
|
|
53
54
|
const themeClassHandle = inlineThemeDisabled
|
|
@@ -29,13 +29,14 @@ export default c([c('@keyframes badge-wave-spread', {
|
|
|
29
29
|
transformOrigin: 'left bottom',
|
|
30
30
|
originalTransform: 'translateX(0)'
|
|
31
31
|
})])]), cM('dot', [cB('badge-sup', `
|
|
32
|
-
height:
|
|
33
|
-
width:
|
|
32
|
+
height: var(--u-dot-size);
|
|
33
|
+
width: var(--u-dot-size);
|
|
34
|
+
justify-content: center;
|
|
35
|
+
overflow: hidden;
|
|
34
36
|
padding: 0;
|
|
35
|
-
min-width: 8px;
|
|
36
37
|
left: 100%;
|
|
37
38
|
bottom: calc(100% - 4px);
|
|
38
|
-
`, [c('::before', 'border-radius: 4px;')])]), cB('badge-sup', `
|
|
39
|
+
`, [c('::before', 'border-radius: 4px;'), c('img', 'width: 100%')])]), cB('badge-sup', `
|
|
39
40
|
background: var(--u-color);
|
|
40
41
|
transition:
|
|
41
42
|
background-color .3s var(--u-bezier),
|
|
@@ -86,8 +87,6 @@ export default c([c('@keyframes badge-wave-spread', {
|
|
|
86
87
|
border-radius: 100px;
|
|
87
88
|
`), cM('dot', [cB('badge-sup', `
|
|
88
89
|
transform: none;
|
|
89
|
-
width: 12px;
|
|
90
|
-
height: 12px;
|
|
91
90
|
transform: none;
|
|
92
91
|
left: auto;
|
|
93
92
|
right: 0;
|
|
@@ -15,6 +15,7 @@ export declare const self: (vars: ThemeCommonVars) => {
|
|
|
15
15
|
textColorError: string;
|
|
16
16
|
textColorWarning: string;
|
|
17
17
|
borderColor: string;
|
|
18
|
+
dotSize: string;
|
|
18
19
|
};
|
|
19
20
|
export type BadgeThemeVars = ReturnType<typeof self>;
|
|
20
21
|
declare const badgeLight: Theme<'Badge', BadgeThemeVars>;
|
package/es/badge/styles/light.js
CHANGED
|
@@ -107,6 +107,28 @@ cE('ripple', `
|
|
|
107
107
|
--u-merged-border: var(--u-border-disabled-checked);
|
|
108
108
|
--u-merged-shadow: transparent;
|
|
109
109
|
--u-merged-icon: var(--u-check-mark-color-disabled-checked);
|
|
110
|
+
`)]), cM('indeterminate', `
|
|
111
|
+
--u-merged-color: var(--u-color-checked);
|
|
112
|
+
--u-merged-border: var(--u-border-checked);
|
|
113
|
+
--u-merged-shadow: var(--u-box-shadow-hover-checked);
|
|
114
|
+
--u-merged-icon: var(--u-check-mark-color);
|
|
115
|
+
`, [c('&:hover', `
|
|
116
|
+
--u-merged-color: var(--u-color-hover-checked);
|
|
117
|
+
--u-merged-border: var(--u-border-hover-checked);
|
|
118
|
+
--u-merged-shadow: var(--u-box-shadow-hover-checked);
|
|
119
|
+
`), c('&:focus', `
|
|
120
|
+
--u-merged-color: var(--u-color-focus-checked);
|
|
121
|
+
--u-merged-border: var(--u-border-focus-checked);
|
|
122
|
+
--u-merged-shadow: var(--u-box-shadow-focus-checked);
|
|
123
|
+
`), c('&:active', `
|
|
124
|
+
--u-merged-color: var(--u-color-active-checked);
|
|
125
|
+
--u-merged-border: var(--u-border-active-checked);
|
|
126
|
+
--u-merged-shadow: var(--u-box-shadow-active-checked);
|
|
127
|
+
`), cM('disabled', `
|
|
128
|
+
--u-merged-color: var(--u-color-disabled-checked);
|
|
129
|
+
--u-merged-border: var(--u-border-disabled-checked);
|
|
130
|
+
--u-merged-shadow: transparent;
|
|
131
|
+
--u-merged-icon: var(--u-check-mark-color-disabled-checked);
|
|
110
132
|
`)])]), cB('checkbox-box', `
|
|
111
133
|
position: relative;
|
|
112
134
|
flex-shrink: 0;
|
|
@@ -574,10 +574,13 @@ export default defineComponent({
|
|
|
574
574
|
} }))
|
|
575
575
|
]
|
|
576
576
|
: null,
|
|
577
|
-
column.type === 'selection' ? (!isSummary ? (column.multiple === false ? (h(RenderSafeRadio, { key: currentPage, rowKey: rowKey, disabled: rowInfo.tmNode.disabled,
|
|
577
|
+
column.type === 'selection' ? (!isSummary ? (column.multiple === false ? (h(RenderSafeRadio, { key: currentPage, rowKey: rowKey, disabled: rowInfo.tmNode.disabled, onClick: (event) => {
|
|
578
|
+
event.stopPropagation();
|
|
579
|
+
}, onUpdateChecked: () => {
|
|
578
580
|
handleRadioUpdateChecked(rowInfo.tmNode);
|
|
579
|
-
} })) : (h(RenderSafeCheckbox, { key: currentPage, rowKey: rowKey, disabled: rowInfo.tmNode.disabled, onUpdateChecked: (checked,
|
|
580
|
-
|
|
581
|
+
} })) : (h(RenderSafeCheckbox, { key: currentPage, rowKey: rowKey, disabled: rowInfo.tmNode.disabled, onUpdateChecked: (checked, event) => {
|
|
582
|
+
event.stopPropagation();
|
|
583
|
+
handleCheckboxUpdateChecked(rowInfo.tmNode, checked, event.shiftKey);
|
|
581
584
|
} }))) : null) : column.type === 'expand' ? (!isSummary ? (!column.expandable ||
|
|
582
585
|
((_e = column.expandable) === null || _e === void 0 ? void 0 : _e.call(column, rowData)) ? (h(ExpandTrigger, { clsPrefix: mergedClsPrefix, expanded: expanded, renderExpandIcon: this.renderExpandIcon, onClick: () => {
|
|
583
586
|
handleUpdateExpanded(rowKey, null);
|
|
@@ -13,6 +13,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
13
13
|
type: PropType<(checked: boolean) => void>;
|
|
14
14
|
required: true;
|
|
15
15
|
};
|
|
16
|
+
onClick: {
|
|
17
|
+
type: PropType<(event: MouseEvent) => void>;
|
|
18
|
+
};
|
|
16
19
|
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
17
20
|
rowKey: {
|
|
18
21
|
type: PropType<RowKey>;
|
|
@@ -26,5 +29,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
26
29
|
type: PropType<(checked: boolean) => void>;
|
|
27
30
|
required: true;
|
|
28
31
|
};
|
|
32
|
+
onClick: {
|
|
33
|
+
type: PropType<(event: MouseEvent) => void>;
|
|
34
|
+
};
|
|
29
35
|
}>>, {}, {}>;
|
|
30
36
|
export default _default;
|
|
@@ -16,6 +16,9 @@ export default defineComponent({
|
|
|
16
16
|
onUpdateChecked: {
|
|
17
17
|
type: Function,
|
|
18
18
|
required: true
|
|
19
|
+
},
|
|
20
|
+
onClick: {
|
|
21
|
+
type: Function
|
|
19
22
|
}
|
|
20
23
|
},
|
|
21
24
|
setup(props) {
|
|
@@ -24,7 +27,7 @@ export default defineComponent({
|
|
|
24
27
|
} = inject(dataTableInjectionKey);
|
|
25
28
|
return () => {
|
|
26
29
|
const { rowKey } = props;
|
|
27
|
-
return (h(URadio, { name: componentId, disabled: props.disabled, checked: mergedCheckedRowKeySetRef.value.has(rowKey), onUpdateChecked: props.onUpdateChecked, size: sizeRef.value }));
|
|
30
|
+
return (h(URadio, { name: componentId, disabled: props.disabled, checked: mergedCheckedRowKeySetRef.value.has(rowKey), onUpdateChecked: props.onUpdateChecked, onClick: props.onClick, size: sizeRef.value }));
|
|
28
31
|
};
|
|
29
32
|
}
|
|
30
33
|
});
|
|
@@ -47,6 +47,7 @@ export declare const datePickerProps: {
|
|
|
47
47
|
readonly shortcuts: PropType<Shortcuts>;
|
|
48
48
|
readonly defaultShortcuts: BooleanConstructor;
|
|
49
49
|
readonly isDateDisabled: PropType<IsDateDisabled>;
|
|
50
|
+
readonly maxDate: PropType<number | undefined>;
|
|
50
51
|
readonly isTimeDisabled: PropType<IsTimeDisabled>;
|
|
51
52
|
readonly show: {
|
|
52
53
|
readonly type: PropType<boolean | undefined>;
|
|
@@ -2148,6 +2149,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2148
2149
|
readonly shortcuts: PropType<Shortcuts>;
|
|
2149
2150
|
readonly defaultShortcuts: BooleanConstructor;
|
|
2150
2151
|
readonly isDateDisabled: PropType<IsDateDisabled>;
|
|
2152
|
+
readonly maxDate: PropType<number | undefined>;
|
|
2151
2153
|
readonly isTimeDisabled: PropType<IsTimeDisabled>;
|
|
2152
2154
|
readonly show: {
|
|
2153
2155
|
readonly type: PropType<boolean | undefined>;
|
|
@@ -5448,6 +5450,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
5448
5450
|
readonly shortcuts: PropType<Shortcuts>;
|
|
5449
5451
|
readonly defaultShortcuts: BooleanConstructor;
|
|
5450
5452
|
readonly isDateDisabled: PropType<IsDateDisabled>;
|
|
5453
|
+
readonly maxDate: PropType<number | undefined>;
|
|
5451
5454
|
readonly isTimeDisabled: PropType<IsTimeDisabled>;
|
|
5452
5455
|
readonly show: {
|
|
5453
5456
|
readonly type: PropType<boolean | undefined>;
|
|
@@ -30,7 +30,7 @@ export const datePickerProps = Object.assign(Object.assign({}, useTheme.props),
|
|
|
30
30
|
}, value: [Number, Array], formattedValue: [String, Array], size: String, type: {
|
|
31
31
|
type: String,
|
|
32
32
|
default: 'date'
|
|
33
|
-
}, valueFormat: String, separator: String, placeholder: String, startPlaceholder: String, endPlaceholder: String, format: String, dateFormat: String, timeFormat: String, actions: Array, shortcuts: Object, defaultShortcuts: Boolean, isDateDisabled: Function, isTimeDisabled: Function, show: {
|
|
33
|
+
}, valueFormat: String, separator: String, placeholder: String, startPlaceholder: String, endPlaceholder: String, format: String, dateFormat: String, timeFormat: String, actions: Array, shortcuts: Object, defaultShortcuts: Boolean, isDateDisabled: Function, maxDate: Number, isTimeDisabled: Function, show: {
|
|
34
34
|
type: Boolean,
|
|
35
35
|
default: undefined
|
|
36
36
|
}, panel: Boolean, ranges: Object, firstDayOfWeek: Number, inputReadonly: Boolean, closeOnSelect: Boolean, status: String, timePickerProps: [Object, Array], onClear: Function, onConfirm: Function, defaultCalendarStartTime: Number, defaultCalendarEndTime: Number, bindCalendarMonths: Boolean, 'onUpdate:show': [Function, Array], onUpdateShow: [Function, Array], 'onUpdate:formattedValue': [Function, Array], onUpdateFormattedValue: [Function, Array], 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array], onFocus: [Function, Array], onBlur: [Function, Array],
|
|
@@ -564,7 +564,7 @@ export default defineComponent({
|
|
|
564
564
|
const dualValidation = dualCalendarValidation(props, pendingValueRef);
|
|
565
565
|
provide(datePickerInjectionKey, Object.assign(Object.assign(Object.assign({ mergedClsPrefixRef, mergedThemeRef: themeRef, timePickerSizeRef,
|
|
566
566
|
localeRef,
|
|
567
|
-
dateLocaleRef, firstDayOfWeekRef: toRef(props, 'firstDayOfWeek'), isDateDisabledRef: toRef(props, 'isDateDisabled'), rangesRef: toRef(props, 'ranges'), timePickerPropsRef: toRef(props, 'timePickerProps'), closeOnSelectRef: toRef(props, 'closeOnSelect'), updateValueOnCloseRef: toRef(props, 'updateValueOnClose') }, uniVaidation), dualValidation), { datePickerSlots: slots }));
|
|
567
|
+
dateLocaleRef, firstDayOfWeekRef: toRef(props, 'firstDayOfWeek'), isDateDisabledRef: toRef(props, 'isDateDisabled'), maxDateRef: toRef(props, 'maxDate'), rangesRef: toRef(props, 'ranges'), timePickerPropsRef: toRef(props, 'timePickerProps'), closeOnSelectRef: toRef(props, 'closeOnSelect'), updateValueOnCloseRef: toRef(props, 'updateValueOnClose') }, uniVaidation), dualValidation), { datePickerSlots: slots }));
|
|
568
568
|
const exposedMethods = {
|
|
569
569
|
focus: () => {
|
|
570
570
|
var _a;
|
|
@@ -61,6 +61,7 @@ export type DatePickerInjection = {
|
|
|
61
61
|
localeRef: Ref<ULocale['DatePicker']>;
|
|
62
62
|
dateLocaleRef: Ref<UDateLocale>;
|
|
63
63
|
isDateDisabledRef: Ref<IsDateDisabled | undefined>;
|
|
64
|
+
maxDateRef: Ref<number | undefined>;
|
|
64
65
|
rangesRef: Ref<Record<string, [number, number]> | undefined>;
|
|
65
66
|
closeOnSelectRef: Ref<boolean>;
|
|
66
67
|
updateValueOnCloseRef: Ref<boolean>;
|
|
@@ -11,7 +11,7 @@ const useCalendarProps = Object.assign(Object.assign({}, usePanelCommonProps), {
|
|
|
11
11
|
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
12
12
|
function useCalendar(props, type) {
|
|
13
13
|
const panelCommon = usePanelCommon(props);
|
|
14
|
-
const { isValueInvalidRef, isDateDisabledRef, isDateInvalidRef, isTimeInvalidRef, isDateTimeInvalidRef, isHourDisabledRef, isMinuteDisabledRef, isSecondDisabledRef, localeRef, firstDayOfWeekRef, datePickerSlots
|
|
14
|
+
const { isValueInvalidRef, isDateDisabledRef, maxDateRef, isDateInvalidRef, isTimeInvalidRef, isDateTimeInvalidRef, isHourDisabledRef, isMinuteDisabledRef, isSecondDisabledRef, localeRef, firstDayOfWeekRef, datePickerSlots
|
|
15
15
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
16
16
|
} = inject(datePickerInjectionKey);
|
|
17
17
|
const validation = {
|
|
@@ -44,7 +44,7 @@ function useCalendar(props, type) {
|
|
|
44
44
|
});
|
|
45
45
|
const yearArrayRef = computed(() => {
|
|
46
46
|
const { value } = props;
|
|
47
|
-
return yearArray(Array.isArray(value) ? null : value, nowRef.value);
|
|
47
|
+
return yearArray(Array.isArray(value) ? null : value, nowRef.value, maxDateRef.value);
|
|
48
48
|
});
|
|
49
49
|
const quarterArrayRef = computed(() => {
|
|
50
50
|
const { value } = props;
|
|
@@ -90,6 +90,9 @@ function useCalendar(props, type) {
|
|
|
90
90
|
return getTime(startOfDay(value));
|
|
91
91
|
}
|
|
92
92
|
function mergedIsDateDisabled(ts) {
|
|
93
|
+
if (maxDateRef.value && ts > maxDateRef.value) {
|
|
94
|
+
return true;
|
|
95
|
+
}
|
|
93
96
|
const { isDateDisabled: { value: isDateDisabled } } = validation;
|
|
94
97
|
if (!isDateDisabled)
|
|
95
98
|
return false;
|
|
@@ -11,7 +11,7 @@ const useDualCalendarProps = Object.assign(Object.assign({}, usePanelCommonProps
|
|
|
11
11
|
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
12
12
|
function useDualCalendar(props, type) {
|
|
13
13
|
var _a, _b;
|
|
14
|
-
const { isDateDisabledRef, isStartHourDisabledRef, isEndHourDisabledRef, isStartMinuteDisabledRef, isEndMinuteDisabledRef, isStartSecondDisabledRef, isEndSecondDisabledRef, isStartDateInvalidRef, isEndDateInvalidRef, isStartTimeInvalidRef, isEndTimeInvalidRef, isStartValueInvalidRef, isEndValueInvalidRef, isRangeInvalidRef, localeRef, rangesRef, closeOnSelectRef, updateValueOnCloseRef, firstDayOfWeekRef, datePickerSlots
|
|
14
|
+
const { isDateDisabledRef, maxDateRef, isStartHourDisabledRef, isEndHourDisabledRef, isStartMinuteDisabledRef, isEndMinuteDisabledRef, isStartSecondDisabledRef, isEndSecondDisabledRef, isStartDateInvalidRef, isEndDateInvalidRef, isStartTimeInvalidRef, isEndTimeInvalidRef, isStartValueInvalidRef, isEndValueInvalidRef, isRangeInvalidRef, localeRef, rangesRef, closeOnSelectRef, updateValueOnCloseRef, firstDayOfWeekRef, datePickerSlots
|
|
15
15
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
16
16
|
} = inject(datePickerInjectionKey);
|
|
17
17
|
const validation = {
|
|
@@ -108,10 +108,10 @@ function useDualCalendar(props, type) {
|
|
|
108
108
|
return shortcuts || rangesRef.value;
|
|
109
109
|
});
|
|
110
110
|
const startYearArrayRef = computed(() => {
|
|
111
|
-
return yearArray(pluckValueFromRange(props.value, 'start'), nowRef.value);
|
|
111
|
+
return yearArray(pluckValueFromRange(props.value, 'start'), nowRef.value, maxDateRef.value);
|
|
112
112
|
});
|
|
113
113
|
const endYearArrayRef = computed(() => {
|
|
114
|
-
return yearArray(pluckValueFromRange(props.value, 'end'), nowRef.value);
|
|
114
|
+
return yearArray(pluckValueFromRange(props.value, 'end'), nowRef.value, maxDateRef.value);
|
|
115
115
|
});
|
|
116
116
|
const startQuarterArrayRef = computed(() => {
|
|
117
117
|
const startValue = pluckValueFromRange(props.value, 'start');
|
|
@@ -208,6 +208,9 @@ function useDualCalendar(props, type) {
|
|
|
208
208
|
}
|
|
209
209
|
// The function is used on date panel, not the date-picker value validation
|
|
210
210
|
function mergedIsDateDisabled(ts) {
|
|
211
|
+
if (maxDateRef.value && ts > maxDateRef.value) {
|
|
212
|
+
return true;
|
|
213
|
+
}
|
|
211
214
|
const isDateDisabled = isDateDisabledRef.value;
|
|
212
215
|
if (!isDateDisabled)
|
|
213
216
|
return false;
|
|
@@ -53,7 +53,7 @@ export type DateCommonItem = DateItem | MonthItem | YearItem | QuarterItem;
|
|
|
53
53
|
declare function dateArray(monthTs: number, valueTs: number | [number, number] | null, currentTs: number, startDay: 0 | 1 | 2 | 3 | 4 | 5 | 6, strip?: boolean): DateItem[];
|
|
54
54
|
declare function monthArray(yearAnchorTs: number, valueTs: number | null, currentTs: number): MonthItem[];
|
|
55
55
|
declare function quarterArray(yearAnchorTs: number, valueTs: number | null, currentTs: number): QuarterItem[];
|
|
56
|
-
declare function yearArray(valueTs: number | null, currentTs: number): YearItem[];
|
|
56
|
+
declare function yearArray(valueTs: number | null, currentTs: number, maxDate?: number): YearItem[];
|
|
57
57
|
declare function strictParse(string: string, pattern: string, backup: Date, option: {
|
|
58
58
|
locale: UDateLocale['locale'];
|
|
59
59
|
}): Date;
|
|
@@ -153,10 +153,11 @@ function quarterArray(yearAnchorTs, valueTs, currentTs) {
|
|
|
153
153
|
}
|
|
154
154
|
return calendarQuarters;
|
|
155
155
|
}
|
|
156
|
-
function yearArray(valueTs, currentTs) {
|
|
156
|
+
function yearArray(valueTs, currentTs, maxDate) {
|
|
157
157
|
const calendarYears = [];
|
|
158
158
|
const time1900 = new Date(START_YEAR, 0, 1);
|
|
159
|
-
|
|
159
|
+
const endYear = maxDate ? new Date(maxDate).getFullYear() : END_YEAR;
|
|
160
|
+
let count = endYear - START_YEAR + 1;
|
|
160
161
|
while (count--) {
|
|
161
162
|
calendarYears.push(yearItem(getTime(addYears(time1900, count)), valueTs, currentTs));
|
|
162
163
|
}
|
package/es/list/src/List.d.ts
CHANGED
|
@@ -306,8 +306,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
306
306
|
size: import("./interface").Size;
|
|
307
307
|
header: import("./interface").RenderableType;
|
|
308
308
|
loadingSkeleton: boolean;
|
|
309
|
-
rounded: boolean;
|
|
310
309
|
clickable: boolean;
|
|
310
|
+
rounded: boolean;
|
|
311
311
|
hoverable: boolean;
|
|
312
312
|
showDivider: boolean;
|
|
313
313
|
descriptionFirst: boolean;
|
package/es/list/src/ListItem.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { h, defineComponent, inject, computed, ref } from 'vue';
|
|
2
|
-
import { call, createRefFromPropsAndInjection, throwError } from '../../_utils';
|
|
1
|
+
import { h, defineComponent, inject, computed, ref, watchEffect } from 'vue';
|
|
2
|
+
import { call, createRefFromPropsAndInjection, throwError, warnOnce } from '../../_utils';
|
|
3
3
|
import { listInjectionKey, listItemProps } from './props';
|
|
4
4
|
import { ChevronRightIcon } from '../../_internal/icons';
|
|
5
5
|
import { UBaseIcon, UBaseSkeleton, InternalUText } from '../../_internal';
|
|
@@ -10,6 +10,13 @@ export default defineComponent({
|
|
|
10
10
|
name: 'ListItem',
|
|
11
11
|
props: Object.assign({}, listItemProps),
|
|
12
12
|
setup(props, { slots }) {
|
|
13
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
14
|
+
watchEffect(() => {
|
|
15
|
+
if (slots.avatar !== undefined) {
|
|
16
|
+
warnOnce('list-item', '`avatar` is deprecated, please use `prefix` instead.');
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
}
|
|
13
20
|
const listInjection = inject(listInjectionKey, null);
|
|
14
21
|
if (!listInjection) {
|
|
15
22
|
throwError('list-item', '`u-list-item` must be placed in `u-list`.');
|
|
@@ -146,7 +146,13 @@ export default defineComponent({
|
|
|
146
146
|
});
|
|
147
147
|
const selectSizeRef = computed(() => {
|
|
148
148
|
var _a, _b;
|
|
149
|
-
|
|
149
|
+
const selectSizes = {
|
|
150
|
+
small: 'small',
|
|
151
|
+
medium: 'small',
|
|
152
|
+
large: 'medium'
|
|
153
|
+
};
|
|
154
|
+
return (((_b = (_a = mergedComponentPropsRef === null || mergedComponentPropsRef === void 0 ? void 0 : mergedComponentPropsRef.value) === null || _a === void 0 ? void 0 : _a.Pagination) === null || _b === void 0 ? void 0 : _b.selectSize) ||
|
|
155
|
+
selectSizes[props.size]);
|
|
150
156
|
});
|
|
151
157
|
const startIndexRef = computed(() => {
|
|
152
158
|
return (mergedPageRef.value - 1) * mergedPageSizeRef.value;
|
|
@@ -446,7 +452,7 @@ export default defineComponent({
|
|
|
446
452
|
// eslint-disable-next-line no-case-declarations
|
|
447
453
|
const fastForwardNode = this.fastForwardActive ? (h(UBaseIcon, { clsPrefix: mergedClsPrefix }, {
|
|
448
454
|
default: () => this.rtlEnabled ? (h(FastBackwardIcon, null)) : (h(FastForwardIcon, null))
|
|
449
|
-
})) : (h(UBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(MoreIcon,
|
|
455
|
+
})) : (h(UBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(MoreIcon, { class: "more-icon" }) }));
|
|
450
456
|
if (renderLabel) {
|
|
451
457
|
contentNode = renderLabel({
|
|
452
458
|
type: 'fast-forward',
|
|
@@ -465,7 +471,7 @@ export default defineComponent({
|
|
|
465
471
|
// eslint-disable-next-line no-case-declarations
|
|
466
472
|
const fastBackwardNode = this.fastBackwardActive ? (h(UBaseIcon, { clsPrefix: mergedClsPrefix }, {
|
|
467
473
|
default: () => this.rtlEnabled ? (h(FastForwardIcon, null)) : (h(FastBackwardIcon, null))
|
|
468
|
-
})) : (h(UBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(MoreIcon,
|
|
474
|
+
})) : (h(UBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(MoreIcon, { class: "more-icon" }) }));
|
|
469
475
|
if (renderLabel) {
|
|
470
476
|
contentNode = renderLabel({
|
|
471
477
|
type: 'fast-backward',
|
|
@@ -509,7 +515,7 @@ export default defineComponent({
|
|
|
509
515
|
? 'fast-backward'
|
|
510
516
|
: 'fast-forward'
|
|
511
517
|
: pageItem.type;
|
|
512
|
-
return (h(UPopselect, { to: this.to, key: key, disabled: disabled, trigger: "hover", virtualScroll: true, style: {
|
|
518
|
+
return (h(UPopselect, { to: this.to, key: key, disabled: disabled, trigger: "hover", virtualScroll: true, style: { minWidth: '70px', textAlign: 'center' }, theme: mergedTheme.peers.Popselect, themeOverrides: mergedTheme.peerOverrides.Popselect, builtinThemeOverrides: {
|
|
513
519
|
peers: {
|
|
514
520
|
InternalSelectMenu: {
|
|
515
521
|
height: 'calc(var(--u-option-height) * 4.6)'
|
|
@@ -563,7 +569,7 @@ export default defineComponent({
|
|
|
563
569
|
case 'size-picker': {
|
|
564
570
|
return !simple && showSizePicker ? (h("div", { class: `${mergedClsPrefix}-pagination-size-picker` },
|
|
565
571
|
h(USelect, Object.assign({ consistentMenuWidth: false, placeholder: "", showCheckmark: false, to: this.to }, this.selectProps, { size: selectSize, options: pageSizeOptions, value: mergedPageSize, disabled: disabled, theme: mergedTheme.peers.Select, themeOverrides: mergedTheme.peerOverrides.Select, onUpdateValue: handleSizePickerChange })),
|
|
566
|
-
h("span", { class: `${mergedClsPrefix}-label` },
|
|
572
|
+
h("span", { class: `${mergedClsPrefix}-label` }, sizePickerLabel || ''))) : null;
|
|
567
573
|
}
|
|
568
574
|
case 'quick-jumper':
|
|
569
575
|
return !simple && showQuickJumper ? (h("div", { class: `${mergedClsPrefix}-pagination-quick-jumper` },
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cB, c, cM, cNotM } from '../../../_utils/cssr';
|
|
1
|
+
import { cB, c, cM, cNotM, cE } from '../../../_utils/cssr';
|
|
2
2
|
const hoverStyleProps = `
|
|
3
3
|
background: var(--u-item-color-hover);
|
|
4
4
|
color: var(--u-item-text-color-hover);
|
|
@@ -87,9 +87,9 @@ export default cB('pagination', `
|
|
|
87
87
|
line-height: 20px;
|
|
88
88
|
`), cB('base-selection-label', `
|
|
89
89
|
background-color: var(--u-pagination-size-picker-background);
|
|
90
|
-
`), cB('base-
|
|
90
|
+
`), cB('base-selection', [cE('border', `
|
|
91
91
|
border-color: var(--u-pagination-size-picker-border);
|
|
92
|
-
`)]), cB('pagination-quick-jumper', `
|
|
92
|
+
`)])]), cB('pagination-quick-jumper', `
|
|
93
93
|
white-space: nowrap;
|
|
94
94
|
display: flex;
|
|
95
95
|
color: var(--u-jumper-text-color);
|
|
@@ -123,14 +123,19 @@ export default cB('pagination', `
|
|
|
123
123
|
border-color .3s var(--u-bezier),
|
|
124
124
|
background-color .3s var(--u-bezier),
|
|
125
125
|
fill .3s var(--u-bezier);
|
|
126
|
-
`, [
|
|
126
|
+
`, [c('&:has(.more-icon)', `
|
|
127
|
+
font-size: 24px;
|
|
128
|
+
`), cM('button', `
|
|
127
129
|
background: var(--u-button-color);
|
|
128
130
|
color: var(--u-button-icon-color);
|
|
129
131
|
border: var(--u-button-border);
|
|
130
132
|
padding: 0;
|
|
131
133
|
`, [cB('base-icon', `
|
|
132
134
|
font-size: var(--u-button-icon-size);
|
|
133
|
-
`)]), cNotM('disabled', [
|
|
135
|
+
`)]), cNotM('disabled', [cNotM('clickable', `
|
|
136
|
+
width: 45px;
|
|
137
|
+
padding: 0;
|
|
138
|
+
`), cM('hover', hoverStyleProps, hoverStyleChildren), c('&:hover', hoverStyleProps, hoverStyleChildren), c('&:active', `
|
|
134
139
|
font-weight: 700;
|
|
135
140
|
background: var(--u-item-color-pressed);
|
|
136
141
|
color: var(--u-item-text-color-pressed);
|