x-next 0.0.0-alpha.69 → 0.0.0-alpha.70
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/_utils/number.d.ts +193 -0
- package/dist/_utils/use-prop-or-slot.d.ts +7 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/components/link/Link.vue.d.ts +223 -0
- package/dist/components/link/index.d.ts +323 -0
- package/dist/index.es.js +2981 -2873
- package/dist/index.umd.js +2 -2
- package/dist/style.css +1 -1
- package/dist/types.d.ts +1 -0
- package/package.json +1 -1
- package/volar.d.ts +72 -71
package/dist/_utils/number.d.ts
CHANGED
@@ -0,0 +1,193 @@
|
|
1
|
+
/**
|
2
|
+
* 将给定的常量字符串类型拓展为不区分大小写的任意组合
|
3
|
+
*/
|
4
|
+
export type AnyCase<S> = string extends S ? string : S extends `${infer F1}${infer F2}${infer R}` ? `${Uppercase<F1> | Lowercase<F1>}${Uppercase<F2> | Lowercase<F2>}${AnyCase<R>}` : S extends `${infer F}${infer R}` ? `${Uppercase<F> | Lowercase<F>}${AnyCase<R>}` : '';
|
5
|
+
export declare const numberRE: RegExp;
|
6
|
+
/**
|
7
|
+
* 检测给定的值是否可以通过 parseFlat 或 Number 方法转为数字
|
8
|
+
*
|
9
|
+
* 开启严格模式则通过正则以更严格的方法判断
|
10
|
+
*
|
11
|
+
* @param value 需要检测的值
|
12
|
+
* @param strict 是否为严格模式
|
13
|
+
*
|
14
|
+
* @returns 值是否可以转为数字
|
15
|
+
*/
|
16
|
+
export declare function isValidNumber(value: unknown, strict?: boolean): boolean;
|
17
|
+
/**
|
18
|
+
* 将给定的值转成数字,NaN 的情况将会处理成 0
|
19
|
+
*
|
20
|
+
* @param value 需要转换的值
|
21
|
+
*
|
22
|
+
* @returns 转换后的数字
|
23
|
+
*/
|
24
|
+
export declare function toNumber(value: unknown): number;
|
25
|
+
/**
|
26
|
+
* 为给定的整数开头填充 0,直至满足指定的长度
|
27
|
+
*
|
28
|
+
* @param number 需要处理的整数
|
29
|
+
* @param length 填充至的长度
|
30
|
+
*
|
31
|
+
* @returns 填充后的字面值
|
32
|
+
*/
|
33
|
+
export declare function padStartZeros(number: number, length: number): string;
|
34
|
+
/**
|
35
|
+
* 将小于 10 整数 N 变成 `0N` 的字符串,方法不会对入参校验
|
36
|
+
*
|
37
|
+
* @param number 需要处理的整数
|
38
|
+
*
|
39
|
+
* @returns 填充后的字面值
|
40
|
+
*/
|
41
|
+
export declare function doubleDigits(number: number): string;
|
42
|
+
/**
|
43
|
+
* 返回数字的小数位数
|
44
|
+
*
|
45
|
+
* @param number 指定的数字
|
46
|
+
*
|
47
|
+
* @returns 数字的小数位数
|
48
|
+
*/
|
49
|
+
export declare function decimalLength(number: number | string): number;
|
50
|
+
/**
|
51
|
+
* Return decimal length of a number
|
52
|
+
*
|
53
|
+
* @param number The input number
|
54
|
+
* @deprecated Using `decimalLength` to replace it
|
55
|
+
*/
|
56
|
+
export declare function digitLength(number: number | string): number;
|
57
|
+
/**
|
58
|
+
* 将给定的数字格式化为指定的位阶
|
59
|
+
*
|
60
|
+
* @param number 需要格式化的数字
|
61
|
+
* @param segment 分隔的位数,默认为 3
|
62
|
+
* @param separator 分隔的符号,默认为 ','
|
63
|
+
*
|
64
|
+
* @returns 格式化后的字面值
|
65
|
+
*/
|
66
|
+
export declare function segmentNumber(number: number | string, segment?: number, separator?: string): string;
|
67
|
+
/**
|
68
|
+
* 将给定的实数保留一定的小数
|
69
|
+
*
|
70
|
+
* @param number 需要处理的实数
|
71
|
+
* @param decimal 需要保留的小数
|
72
|
+
*
|
73
|
+
* @returns 保留小数后的值
|
74
|
+
*/
|
75
|
+
export declare function toFixed(number: number, decimal: number): number;
|
76
|
+
/**
|
77
|
+
* 将给定的实数扩大一定的倍数并保留一定的小数
|
78
|
+
*
|
79
|
+
* @param number 要处理的实数
|
80
|
+
* @param multiple 要扩大的倍数
|
81
|
+
* @param decimal 要保留的小数
|
82
|
+
*
|
83
|
+
* @returns 扩大并保留小数后的值
|
84
|
+
*/
|
85
|
+
export declare function multipleFixed(number: number, multiple: number, decimal: number): number;
|
86
|
+
/**
|
87
|
+
* 根据临界值对给定的数字进行舍入
|
88
|
+
*
|
89
|
+
* @param number 需要舍入的数
|
90
|
+
* @param criticalValue 舍入的临界值 (0 ~ 1),达到临界值进位反之舍弃
|
91
|
+
*
|
92
|
+
* @returns 舍入后的值
|
93
|
+
*/
|
94
|
+
export declare function round(number: number, criticalValue: number): number;
|
95
|
+
/**
|
96
|
+
* 将给定的数字限定在指定的范围内
|
97
|
+
*
|
98
|
+
* @param number 需要限定范围的数
|
99
|
+
* @param min 边界最小值,包含该值
|
100
|
+
* @param max 边界最大值,包含该值
|
101
|
+
*
|
102
|
+
* @returns 限定在范围内的值
|
103
|
+
*/
|
104
|
+
export declare function boundRange(number: number | string, min: number, max: number): number;
|
105
|
+
/**
|
106
|
+
* 将给定的被除数和除数,不断的取余直至达到次数限制或余数小于除数,返回系列余数
|
107
|
+
*
|
108
|
+
* @param number 被除数,需大于 0
|
109
|
+
* @param divideBy 除数,需大于 1
|
110
|
+
* @param limit 次数限制,默认为 0,小于 1 则不作限制
|
111
|
+
*
|
112
|
+
* @returns 相除过程的系列余数
|
113
|
+
*/
|
114
|
+
export declare function leaveNumber(number: number, divideBy: number, limit?: number): number[];
|
115
|
+
/**
|
116
|
+
* 将给定的数字转换为序数词
|
117
|
+
*
|
118
|
+
* @param number 需要转换的数字
|
119
|
+
*
|
120
|
+
* @returns 转换后的序数词
|
121
|
+
*/
|
122
|
+
export declare function ordinalNumber(number: number): string;
|
123
|
+
export type SizeUnitWithAuto = AnyCase<'B' | 'KB' | 'MB' | 'GB' | 'TB' | 'AUTO'>;
|
124
|
+
export type SizeUnit = Exclude<SizeUnitWithAuto, AnyCase<'AUTO'>>;
|
125
|
+
/**
|
126
|
+
* 根据给定的 Byte 数值,将其格式化成指定单位的大小
|
127
|
+
*
|
128
|
+
* @param byte 需要计算的 Byte 数值
|
129
|
+
* @param unit 格式化的单位
|
130
|
+
* @param precision 结果的精度
|
131
|
+
* @param joinUtil 是否加入单位
|
132
|
+
*
|
133
|
+
* @returns 格式化后的值
|
134
|
+
*/
|
135
|
+
export declare function formatByteSize(byte: number, unit?: SizeUnitWithAuto): number;
|
136
|
+
export declare function formatByteSize(byte: number, unit?: SizeUnitWithAuto, precision?: number): number;
|
137
|
+
export declare function formatByteSize(byte: number, unit?: SizeUnitWithAuto, joinUtil?: true): number;
|
138
|
+
export declare function formatByteSize(byte: number, unit?: SizeUnitWithAuto, joinUtil?: true, precision?: number): number;
|
139
|
+
/**
|
140
|
+
* 在给定的范围内随机一个数
|
141
|
+
*
|
142
|
+
* @param max 最大值
|
143
|
+
* @param min 最小值,默认为 0
|
144
|
+
*
|
145
|
+
* @returns 生成的随机数
|
146
|
+
*/
|
147
|
+
export declare function random(max: number, min?: number): number;
|
148
|
+
/**
|
149
|
+
* 将数字处理为的指定的有效位数
|
150
|
+
*
|
151
|
+
* @param number 需要处理的数字
|
152
|
+
* @param precision 数字的有效位数
|
153
|
+
*
|
154
|
+
* @returns 处理后的数字
|
155
|
+
*
|
156
|
+
* @example
|
157
|
+
* ```ts
|
158
|
+
* toPrecision(0.09999999999999998) === 0.1 // true
|
159
|
+
* ```
|
160
|
+
*/
|
161
|
+
export declare function toPrecision(number: number | string, precision?: number): number;
|
162
|
+
/**
|
163
|
+
* 精确的乘法
|
164
|
+
*
|
165
|
+
* @param numbers 需要依次相乘的数字
|
166
|
+
*
|
167
|
+
* @returns 乘积
|
168
|
+
*/
|
169
|
+
export declare const times: (...numbers: (number | string)[]) => number;
|
170
|
+
/**
|
171
|
+
* 精确的加法
|
172
|
+
*
|
173
|
+
* @param numbers 需要依次相加的数字
|
174
|
+
*
|
175
|
+
* @returns 和
|
176
|
+
*/
|
177
|
+
export declare const plus: (...numbers: (number | string)[]) => number;
|
178
|
+
/**
|
179
|
+
* 精确的减法
|
180
|
+
*
|
181
|
+
* @param numbers 需要依次相减的数字
|
182
|
+
*
|
183
|
+
* @returns 差值
|
184
|
+
*/
|
185
|
+
export declare const minus: (...numbers: (number | string)[]) => number;
|
186
|
+
/**
|
187
|
+
* 精确的除法
|
188
|
+
*
|
189
|
+
* @param numbers 需要依次相除的数字
|
190
|
+
*
|
191
|
+
* @returns 商
|
192
|
+
*/
|
193
|
+
export declare const divide: (...numbers: (number | string)[]) => number;
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { Slots } from 'vue';
|
2
|
+
export default function usePropOrSlot<T = {
|
3
|
+
[key: string]: any;
|
4
|
+
}>(props: T, slots: Slots, propName: string): import('vue').ComputedRef<any>;
|
5
|
+
export declare function hasPropOrSlot<T = {
|
6
|
+
[key: string]: any;
|
7
|
+
}>(props: T, slots: Slots, propName: string): import('vue').ComputedRef<boolean>;
|
@@ -0,0 +1,223 @@
|
|
1
|
+
import { PropType } from 'vue';
|
2
|
+
import { Status } from '../../_utils/constant';
|
3
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
4
|
+
/**
|
5
|
+
* @zh 链接地址
|
6
|
+
* @en Link address
|
7
|
+
*/
|
8
|
+
href: StringConstructor;
|
9
|
+
/**
|
10
|
+
* @zh 链接的状态
|
11
|
+
* @en Link status
|
12
|
+
* @values 'normal','warning','success','danger'
|
13
|
+
*/
|
14
|
+
status: {
|
15
|
+
type: PropType<Status>;
|
16
|
+
default: string;
|
17
|
+
};
|
18
|
+
/**
|
19
|
+
* @zh 鼠标悬浮时存在底色
|
20
|
+
* @en Whether to hide background when hover
|
21
|
+
* @defaultValue true
|
22
|
+
* @version 2.7.0
|
23
|
+
*/
|
24
|
+
hoverable: {
|
25
|
+
type: BooleanConstructor;
|
26
|
+
default: boolean;
|
27
|
+
};
|
28
|
+
/**
|
29
|
+
* @zh 图标
|
30
|
+
* @en icon
|
31
|
+
* @version 2.7.0
|
32
|
+
*/
|
33
|
+
icon: BooleanConstructor;
|
34
|
+
/**
|
35
|
+
* @zh 链接是否为加载中状态
|
36
|
+
* @en Whether the link is in the loading state
|
37
|
+
* @version 2.37.0
|
38
|
+
*/
|
39
|
+
loading: BooleanConstructor;
|
40
|
+
/**
|
41
|
+
* @zh 链接是否禁用
|
42
|
+
* @en Whether the link is disabled
|
43
|
+
*/
|
44
|
+
disabled: BooleanConstructor;
|
45
|
+
/**
|
46
|
+
* @zh 链接是否加粗
|
47
|
+
*/
|
48
|
+
strong: BooleanConstructor;
|
49
|
+
}>, {
|
50
|
+
cls: import('vue').ComputedRef<(string | {
|
51
|
+
[x: string]: boolean;
|
52
|
+
})[]>;
|
53
|
+
className: {
|
54
|
+
block: string;
|
55
|
+
element: (className: string) => string;
|
56
|
+
modifier: (className: string) => string;
|
57
|
+
is: (className: string) => string;
|
58
|
+
};
|
59
|
+
showIcon: import('vue').ComputedRef<boolean>;
|
60
|
+
handleClick: (ev: MouseEvent) => void;
|
61
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
62
|
+
/**
|
63
|
+
* @zh 点击时触发
|
64
|
+
* @en Emitted when the link is clicked
|
65
|
+
* @property {MouseEvent} ev
|
66
|
+
*/
|
67
|
+
click: (ev: MouseEvent) => true;
|
68
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
69
|
+
/**
|
70
|
+
* @zh 链接地址
|
71
|
+
* @en Link address
|
72
|
+
*/
|
73
|
+
href: StringConstructor;
|
74
|
+
/**
|
75
|
+
* @zh 链接的状态
|
76
|
+
* @en Link status
|
77
|
+
* @values 'normal','warning','success','danger'
|
78
|
+
*/
|
79
|
+
status: {
|
80
|
+
type: PropType<Status>;
|
81
|
+
default: string;
|
82
|
+
};
|
83
|
+
/**
|
84
|
+
* @zh 鼠标悬浮时存在底色
|
85
|
+
* @en Whether to hide background when hover
|
86
|
+
* @defaultValue true
|
87
|
+
* @version 2.7.0
|
88
|
+
*/
|
89
|
+
hoverable: {
|
90
|
+
type: BooleanConstructor;
|
91
|
+
default: boolean;
|
92
|
+
};
|
93
|
+
/**
|
94
|
+
* @zh 图标
|
95
|
+
* @en icon
|
96
|
+
* @version 2.7.0
|
97
|
+
*/
|
98
|
+
icon: BooleanConstructor;
|
99
|
+
/**
|
100
|
+
* @zh 链接是否为加载中状态
|
101
|
+
* @en Whether the link is in the loading state
|
102
|
+
* @version 2.37.0
|
103
|
+
*/
|
104
|
+
loading: BooleanConstructor;
|
105
|
+
/**
|
106
|
+
* @zh 链接是否禁用
|
107
|
+
* @en Whether the link is disabled
|
108
|
+
*/
|
109
|
+
disabled: BooleanConstructor;
|
110
|
+
/**
|
111
|
+
* @zh 链接是否加粗
|
112
|
+
*/
|
113
|
+
strong: BooleanConstructor;
|
114
|
+
}>> & Readonly<{
|
115
|
+
onClick?: ((ev: MouseEvent) => any) | undefined;
|
116
|
+
}>, {
|
117
|
+
disabled: boolean;
|
118
|
+
strong: boolean;
|
119
|
+
icon: boolean;
|
120
|
+
loading: boolean;
|
121
|
+
status: "normal" | "success" | "warning" | "danger";
|
122
|
+
hoverable: boolean;
|
123
|
+
}, {}, {
|
124
|
+
IconLink: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
125
|
+
size: {
|
126
|
+
type: (StringConstructor | NumberConstructor)[];
|
127
|
+
default: undefined;
|
128
|
+
};
|
129
|
+
rotate: {
|
130
|
+
type: NumberConstructor;
|
131
|
+
default: undefined;
|
132
|
+
};
|
133
|
+
spin: {
|
134
|
+
type: BooleanConstructor;
|
135
|
+
default: boolean;
|
136
|
+
};
|
137
|
+
color: {
|
138
|
+
type: StringConstructor;
|
139
|
+
default: undefined;
|
140
|
+
};
|
141
|
+
fillColor: {
|
142
|
+
type: ArrayConstructor;
|
143
|
+
default: undefined;
|
144
|
+
};
|
145
|
+
}>, () => VNode, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
146
|
+
size: {
|
147
|
+
type: (StringConstructor | NumberConstructor)[];
|
148
|
+
default: undefined;
|
149
|
+
};
|
150
|
+
rotate: {
|
151
|
+
type: NumberConstructor;
|
152
|
+
default: undefined;
|
153
|
+
};
|
154
|
+
spin: {
|
155
|
+
type: BooleanConstructor;
|
156
|
+
default: boolean;
|
157
|
+
};
|
158
|
+
color: {
|
159
|
+
type: StringConstructor;
|
160
|
+
default: undefined;
|
161
|
+
};
|
162
|
+
fillColor: {
|
163
|
+
type: ArrayConstructor;
|
164
|
+
default: undefined;
|
165
|
+
};
|
166
|
+
}>> & Readonly<{}>, {
|
167
|
+
size: string | number;
|
168
|
+
rotate: number;
|
169
|
+
spin: boolean;
|
170
|
+
color: string;
|
171
|
+
fillColor: unknown[];
|
172
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
173
|
+
IconLoading: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
174
|
+
size: {
|
175
|
+
type: (StringConstructor | NumberConstructor)[];
|
176
|
+
default: undefined;
|
177
|
+
};
|
178
|
+
rotate: {
|
179
|
+
type: NumberConstructor;
|
180
|
+
default: undefined;
|
181
|
+
};
|
182
|
+
spin: {
|
183
|
+
type: BooleanConstructor;
|
184
|
+
default: boolean;
|
185
|
+
};
|
186
|
+
color: {
|
187
|
+
type: StringConstructor;
|
188
|
+
default: undefined;
|
189
|
+
};
|
190
|
+
fillColor: {
|
191
|
+
type: ArrayConstructor;
|
192
|
+
default: undefined;
|
193
|
+
};
|
194
|
+
}>, () => VNode, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
195
|
+
size: {
|
196
|
+
type: (StringConstructor | NumberConstructor)[];
|
197
|
+
default: undefined;
|
198
|
+
};
|
199
|
+
rotate: {
|
200
|
+
type: NumberConstructor;
|
201
|
+
default: undefined;
|
202
|
+
};
|
203
|
+
spin: {
|
204
|
+
type: BooleanConstructor;
|
205
|
+
default: boolean;
|
206
|
+
};
|
207
|
+
color: {
|
208
|
+
type: StringConstructor;
|
209
|
+
default: undefined;
|
210
|
+
};
|
211
|
+
fillColor: {
|
212
|
+
type: ArrayConstructor;
|
213
|
+
default: undefined;
|
214
|
+
};
|
215
|
+
}>> & Readonly<{}>, {
|
216
|
+
size: string | number;
|
217
|
+
rotate: number;
|
218
|
+
spin: boolean;
|
219
|
+
color: string;
|
220
|
+
fillColor: unknown[];
|
221
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
222
|
+
}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
223
|
+
export default _default;
|