@ivujs/i-utils 2.0.0 → 2.1.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/README.md +40 -42
- package/dist/cjs/ID-card/index.cjs +21 -13
- package/dist/cjs/array/index.cjs +40 -34
- package/dist/cjs/clipboard/index.cjs +14 -10
- package/dist/cjs/color/index.cjs +73 -59
- package/dist/cjs/cookie/index.cjs +16 -13
- package/dist/cjs/crypto/base64/base64.cjs +398 -206
- package/dist/cjs/crypto/base64/index.cjs +58 -35
- package/dist/cjs/crypto/md5/index.cjs +33 -8
- package/dist/cjs/crypto/md5/md5.cjs +298 -844
- package/dist/cjs/crypto/sha256/index.cjs +95 -0
- package/dist/cjs/crypto/sha256/sha256.cjs +557 -0
- package/dist/cjs/crypto/sm3/index.cjs +27 -0
- package/dist/cjs/crypto/sm3/sm3.cjs +200 -0
- package/dist/cjs/crypto/sm4/index.cjs +101 -0
- package/dist/cjs/crypto/sm4/sm4.cjs +498 -0
- package/dist/cjs/date/index.cjs +379 -335
- package/dist/cjs/desensitized/index.cjs +21 -18
- package/dist/cjs/device/index.cjs +33 -30
- package/dist/cjs/dom/index.cjs +26 -23
- package/dist/cjs/file/index.cjs +51 -41
- package/dist/cjs/function/index.cjs +22 -19
- package/dist/cjs/id/index.cjs +6 -2
- package/dist/cjs/index.cjs +108 -127
- package/dist/cjs/keycode/index.cjs +9 -12
- package/dist/cjs/math/index.cjs +113 -81
- package/dist/cjs/number/index.cjs +10 -7
- package/dist/cjs/object/index.cjs +77 -30
- package/dist/cjs/pagination/index.cjs +25 -10
- package/dist/cjs/random/index.cjs +8 -5
- package/dist/cjs/regexp/index.cjs +23 -20
- package/dist/cjs/storage/index.cjs +4 -1
- package/dist/cjs/storage/localStorage.cjs +5 -5
- package/dist/cjs/storage/sessionStorage.cjs +6 -6
- package/dist/cjs/string/index.cjs +66 -63
- package/dist/cjs/url/index.cjs +83 -80
- package/dist/cjs/validate/index.cjs +122 -106
- package/dist/es/ID-card/index.d.ts +19 -14
- package/dist/es/ID-card/index.mjs +22 -14
- package/dist/es/array/index.d.ts +56 -50
- package/dist/es/array/index.mjs +40 -34
- package/dist/es/clipboard/index.d.ts +10 -7
- package/dist/es/clipboard/index.mjs +14 -10
- package/dist/es/color/index.d.ts +28 -25
- package/dist/es/color/index.mjs +73 -59
- package/dist/es/constants/date.d.ts +4 -174
- package/dist/es/constants/id-card.d.ts +4 -43
- package/dist/es/constants/index.d.ts +11 -7
- package/dist/es/constants/keycode.d.ts +1 -103
- package/dist/es/constants/lang.d.ts +4 -4
- package/dist/es/constants/math.d.ts +4 -4
- package/dist/es/constants/regexp.d.ts +4 -24
- package/dist/es/constants/sort.d.ts +4 -5
- package/dist/es/cookie/index.d.ts +13 -13
- package/dist/es/cookie/index.mjs +16 -13
- package/dist/es/crypto/base64/base64.d.ts +8 -5
- package/dist/es/crypto/base64/base64.mjs +393 -204
- package/dist/es/crypto/base64/index.d.ts +41 -24
- package/dist/es/crypto/base64/index.mjs +53 -32
- package/dist/es/crypto/index.d.ts +8 -8
- package/dist/es/crypto/md5/index.d.ts +20 -7
- package/dist/es/crypto/md5/index.mjs +32 -9
- package/dist/es/crypto/md5/md5.d.ts +9 -142
- package/dist/es/crypto/md5/md5.mjs +299 -844
- package/dist/es/crypto/sha256/index.d.ts +52 -0
- package/dist/es/crypto/sha256/index.mjs +86 -0
- package/dist/es/crypto/sha256/sha256.d.ts +82 -0
- package/dist/es/crypto/sha256/sha256.mjs +548 -0
- package/dist/es/crypto/sm3/index.d.ts +13 -0
- package/dist/es/crypto/sm3/index.mjs +24 -0
- package/dist/es/crypto/sm3/sm3.d.ts +3 -0
- package/dist/es/crypto/sm3/sm3.mjs +197 -0
- package/dist/es/crypto/sm4/index.d.ts +56 -0
- package/dist/es/crypto/sm4/index.mjs +95 -0
- package/dist/es/crypto/sm4/sm4.d.ts +48 -0
- package/dist/es/crypto/sm4/sm4.mjs +490 -0
- package/dist/es/date/index.d.ts +236 -175
- package/dist/es/date/index.mjs +378 -335
- package/dist/es/desensitized/index.d.ts +26 -23
- package/dist/es/desensitized/index.mjs +21 -18
- package/dist/es/device/index.d.ts +31 -25
- package/dist/es/device/index.mjs +33 -30
- package/dist/es/dom/index.d.ts +32 -29
- package/dist/es/dom/index.mjs +26 -23
- package/dist/es/file/index.d.ts +30 -30
- package/dist/es/file/index.mjs +51 -41
- package/dist/es/function/index.d.ts +10 -7
- package/dist/es/function/index.mjs +22 -19
- package/dist/es/id/index.d.ts +3 -0
- package/dist/es/id/index.mjs +6 -2
- package/dist/es/index.d.ts +24 -25
- package/dist/es/index.mjs +6 -23
- package/dist/es/keycode/index.d.ts +6 -6
- package/dist/es/keycode/index.mjs +9 -12
- package/dist/es/math/index.d.ts +37 -37
- package/dist/es/math/index.mjs +113 -81
- package/dist/es/number/index.d.ts +7 -7
- package/dist/es/number/index.mjs +10 -7
- package/dist/es/object/index.d.ts +20 -19
- package/dist/es/object/index.mjs +77 -30
- package/dist/es/pagination/index.d.ts +39 -6
- package/dist/es/pagination/index.mjs +25 -10
- package/dist/es/random/index.d.ts +10 -7
- package/dist/es/random/index.mjs +8 -5
- package/dist/es/regexp/index.d.ts +30 -30
- package/dist/es/regexp/index.mjs +23 -20
- package/dist/es/storage/index.d.ts +10 -4
- package/dist/es/storage/index.mjs +4 -1
- package/dist/es/storage/localStorage.d.ts +9 -9
- package/dist/es/storage/localStorage.mjs +5 -5
- package/dist/es/storage/sessionStorage.d.ts +9 -9
- package/dist/es/storage/sessionStorage.mjs +6 -6
- package/dist/es/string/index.d.ts +62 -59
- package/dist/es/string/index.mjs +66 -63
- package/dist/es/url/index.d.ts +65 -65
- package/dist/es/url/index.mjs +83 -80
- package/dist/es/validate/index.d.ts +83 -80
- package/dist/es/validate/index.mjs +122 -106
- package/dist/index.d.ts +2355 -2803
- package/dist/lib/index.full.umd.js +3297 -9474
- package/dist/lib/index.full.umd.min.js +2 -64
- package/dist/lib/index.full.umd.min.js.map +1 -1
- package/dist/resolver/auto-imports.cjs +38 -31
- package/dist/resolver/auto-imports.mjs +38 -31
- package/dist/resolver/index.cjs +1 -2
- package/dist/resolver/index.d.ts +1 -1
- package/dist/resolver/index.mjs +1 -2
- package/package.json +96 -90
- package/dist/cjs/crypto/aes/aes.cjs +0 -480
- package/dist/cjs/crypto/aes/index.cjs +0 -27
- package/dist/cjs/crypto/base32/base32.cjs +0 -357
- package/dist/cjs/crypto/base32/index.cjs +0 -41
- package/dist/cjs/crypto/des/des.cjs +0 -257
- package/dist/cjs/crypto/des/index.cjs +0 -28
- package/dist/cjs/crypto/sha/sha1/index.cjs +0 -24
- package/dist/cjs/crypto/sha/sha1/sha1.cjs +0 -529
- package/dist/cjs/crypto/sha/sha256/index.cjs +0 -43
- package/dist/cjs/crypto/sha/sha256/sha256.cjs +0 -595
- package/dist/cjs/crypto/sha/sha3/index.cjs +0 -41
- package/dist/cjs/crypto/sha/sha3/sha3.cjs +0 -624
- package/dist/cjs/crypto/sha/sha512/index.cjs +0 -81
- package/dist/cjs/crypto/sha/sha512/sha512.cjs +0 -950
- package/dist/cjs/crypto/sm/lib/asn1.cjs +0 -149
- package/dist/cjs/crypto/sm/lib/ec.cjs +0 -315
- package/dist/cjs/crypto/sm/lib/jsbn.cjs +0 -1608
- package/dist/cjs/crypto/sm/lib/sm3.cjs +0 -158
- package/dist/cjs/crypto/sm/lib/utils.cjs +0 -170
- package/dist/cjs/crypto/sm/sm2/index.cjs +0 -112
- package/dist/cjs/crypto/sm/sm2/sm2.cjs +0 -231
- package/dist/cjs/crypto/sm/sm3/index.cjs +0 -15
- package/dist/cjs/crypto/sm/sm3/sm3.cjs +0 -93
- package/dist/cjs/crypto/sm/sm4/index.cjs +0 -27
- package/dist/cjs/crypto/sm/sm4/sm4.cjs +0 -327
- package/dist/cjs/crypto/tea/index.cjs +0 -25
- package/dist/cjs/crypto/tea/tea.cjs +0 -187
- package/dist/cjs/weapp/index.cjs +0 -142
- package/dist/es/crypto/aes/aes.d.ts +0 -156
- package/dist/es/crypto/aes/aes.mjs +0 -478
- package/dist/es/crypto/aes/index.d.ts +0 -16
- package/dist/es/crypto/aes/index.mjs +0 -24
- package/dist/es/crypto/base32/base32.d.ts +0 -3
- package/dist/es/crypto/base32/base32.mjs +0 -353
- package/dist/es/crypto/base32/index.d.ts +0 -24
- package/dist/es/crypto/base32/index.mjs +0 -36
- package/dist/es/crypto/des/des.d.ts +0 -52
- package/dist/es/crypto/des/des.mjs +0 -255
- package/dist/es/crypto/des/index.d.ts +0 -14
- package/dist/es/crypto/des/index.mjs +0 -25
- package/dist/es/crypto/sha/index.d.ts +0 -4
- package/dist/es/crypto/sha/sha1/index.d.ts +0 -13
- package/dist/es/crypto/sha/sha1/index.mjs +0 -21
- package/dist/es/crypto/sha/sha1/sha1.d.ts +0 -2
- package/dist/es/crypto/sha/sha1/sha1.mjs +0 -526
- package/dist/es/crypto/sha/sha256/index.d.ts +0 -26
- package/dist/es/crypto/sha/sha256/index.mjs +0 -38
- package/dist/es/crypto/sha/sha256/sha256.d.ts +0 -4
- package/dist/es/crypto/sha/sha256/sha256.mjs +0 -590
- package/dist/es/crypto/sha/sha3/index.d.ts +0 -24
- package/dist/es/crypto/sha/sha3/index.mjs +0 -36
- package/dist/es/crypto/sha/sha3/sha3.d.ts +0 -4
- package/dist/es/crypto/sha/sha3/sha3.mjs +0 -619
- package/dist/es/crypto/sha/sha512/index.d.ts +0 -52
- package/dist/es/crypto/sha/sha512/index.mjs +0 -72
- package/dist/es/crypto/sha/sha512/sha512.d.ts +0 -8
- package/dist/es/crypto/sha/sha512/sha512.mjs +0 -941
- package/dist/es/crypto/sm/index.d.ts +0 -3
- package/dist/es/crypto/sm/lib/asn1.d.ts +0 -12
- package/dist/es/crypto/sm/lib/asn1.mjs +0 -146
- package/dist/es/crypto/sm/lib/ec.d.ts +0 -126
- package/dist/es/crypto/sm/lib/ec.mjs +0 -312
- package/dist/es/crypto/sm/lib/jsbn.d.ts +0 -198
- package/dist/es/crypto/sm/lib/jsbn.mjs +0 -1605
- package/dist/es/crypto/sm/lib/sm3.d.ts +0 -5
- package/dist/es/crypto/sm/lib/sm3.mjs +0 -155
- package/dist/es/crypto/sm/lib/utils.d.ts +0 -53
- package/dist/es/crypto/sm/lib/utils.mjs +0 -158
- package/dist/es/crypto/sm/sm2/index.d.ts +0 -71
- package/dist/es/crypto/sm/sm2/index.mjs +0 -101
- package/dist/es/crypto/sm/sm2/sm2.d.ts +0 -34
- package/dist/es/crypto/sm/sm2/sm2.mjs +0 -220
- package/dist/es/crypto/sm/sm3/index.d.ts +0 -7
- package/dist/es/crypto/sm/sm3/index.mjs +0 -13
- package/dist/es/crypto/sm/sm3/sm3.d.ts +0 -1
- package/dist/es/crypto/sm/sm3/sm3.mjs +0 -91
- package/dist/es/crypto/sm/sm4/index.d.ts +0 -16
- package/dist/es/crypto/sm/sm4/index.mjs +0 -24
- package/dist/es/crypto/sm/sm4/sm4.d.ts +0 -2
- package/dist/es/crypto/sm/sm4/sm4.mjs +0 -324
- package/dist/es/crypto/tea/index.d.ts +0 -14
- package/dist/es/crypto/tea/index.mjs +0 -22
- package/dist/es/crypto/tea/tea.d.ts +0 -69
- package/dist/es/crypto/tea/tea.mjs +0 -185
- package/dist/es/weapp/index.d.ts +0 -57
- package/dist/es/weapp/index.mjs +0 -131
|
@@ -1,38 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module 脱敏
|
|
3
|
+
*/
|
|
1
4
|
/**
|
|
2
5
|
* 指定位置的字符串转为星号
|
|
3
|
-
* @param {
|
|
4
|
-
* @param {
|
|
5
|
-
* @param {
|
|
6
|
-
* @returns {
|
|
6
|
+
* @param {string|number} value 字符串参数
|
|
7
|
+
* @param {number} start 转换开始位置
|
|
8
|
+
* @param {number} len 显示星号的长度
|
|
9
|
+
* @returns {string} 返回转化后字符串
|
|
7
10
|
*/
|
|
8
|
-
export function formatStartOf(value: string
|
|
11
|
+
export declare function formatStartOf(value: string, start: number, len: number): string;
|
|
9
12
|
/**
|
|
10
13
|
* 姓名中间转为星号
|
|
11
|
-
* @param {
|
|
12
|
-
* @returns {
|
|
14
|
+
* @param {string} value 姓名
|
|
15
|
+
* @returns {string} 返回转化后字符串
|
|
13
16
|
*/
|
|
14
|
-
export function formatStartOfName(value: string): string;
|
|
17
|
+
export declare function formatStartOfName(value: string): string;
|
|
15
18
|
/**
|
|
16
19
|
* 手机号码固定位数转为星号
|
|
17
|
-
* @param {
|
|
18
|
-
* @param {
|
|
19
|
-
* @param {
|
|
20
|
-
* @returns {
|
|
20
|
+
* @param {string} value 手机号码
|
|
21
|
+
* @param {number} start 前缀长度,默认3位
|
|
22
|
+
* @param {number} len 显示星号的长度,默认4位
|
|
23
|
+
* @returns {string} 返回转化后字符串
|
|
21
24
|
*/
|
|
22
|
-
export function formatStartOfMobile(value: string, start?: number, len?: number): string;
|
|
25
|
+
export declare function formatStartOfMobile(value: string, start?: number, len?: number): string;
|
|
23
26
|
/**
|
|
24
27
|
* 身份证号码固定位数转为星号
|
|
25
|
-
* @param {
|
|
26
|
-
* @param {
|
|
27
|
-
* @param {
|
|
28
|
-
* @returns {
|
|
28
|
+
* @param {string} value 身份证号码
|
|
29
|
+
* @param {number} start 前缀长度,默认4位
|
|
30
|
+
* @param {number} len 显示星号的长度,默认8位
|
|
31
|
+
* @returns {string} 返回转化后字符串
|
|
29
32
|
*/
|
|
30
|
-
export function formatStartOfIDCard(value: string, start?: number, len?: number): string;
|
|
33
|
+
export declare function formatStartOfIDCard(value: string, start?: number, len?: number): string;
|
|
31
34
|
/**
|
|
32
35
|
* 银行卡号固定位数转为星号
|
|
33
|
-
* @param {
|
|
34
|
-
* @param {
|
|
35
|
-
* @param {
|
|
36
|
-
* @returns {
|
|
36
|
+
* @param {string} value 银行卡号
|
|
37
|
+
* @param {number} start 前缀长度,默认4位
|
|
38
|
+
* @param {number} len 显示星号的长度,默认10位
|
|
39
|
+
* @returns {string} 返回转化后字符串
|
|
37
40
|
*/
|
|
38
|
-
export function formatStartOfBankCard(value: string, start?: number, len?: number): string;
|
|
41
|
+
export declare function formatStartOfBankCard(value: string, start?: number, len?: number): string;
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module 脱敏
|
|
3
|
+
*/
|
|
1
4
|
/**
|
|
2
5
|
* 指定位置的字符串转为星号
|
|
3
|
-
* @param {
|
|
4
|
-
* @param {
|
|
5
|
-
* @param {
|
|
6
|
-
* @returns {
|
|
6
|
+
* @param {string|number} value 字符串参数
|
|
7
|
+
* @param {number} start 转换开始位置
|
|
8
|
+
* @param {number} len 显示星号的长度
|
|
9
|
+
* @returns {string} 返回转化后字符串
|
|
7
10
|
*/
|
|
8
11
|
function formatStartOf(value, start, len) {
|
|
9
12
|
value = String(value);
|
|
@@ -21,8 +24,8 @@ function formatStartOf(value, start, len) {
|
|
|
21
24
|
}
|
|
22
25
|
/**
|
|
23
26
|
* 姓名中间转为星号
|
|
24
|
-
* @param {
|
|
25
|
-
* @returns {
|
|
27
|
+
* @param {string} value 姓名
|
|
28
|
+
* @returns {string} 返回转化后字符串
|
|
26
29
|
*/
|
|
27
30
|
function formatStartOfName(value) {
|
|
28
31
|
if (value.length === 2) {
|
|
@@ -37,30 +40,30 @@ function formatStartOfName(value) {
|
|
|
37
40
|
}
|
|
38
41
|
/**
|
|
39
42
|
* 手机号码固定位数转为星号
|
|
40
|
-
* @param {
|
|
41
|
-
* @param {
|
|
42
|
-
* @param {
|
|
43
|
-
* @returns {
|
|
43
|
+
* @param {string} value 手机号码
|
|
44
|
+
* @param {number} start 前缀长度,默认3位
|
|
45
|
+
* @param {number} len 显示星号的长度,默认4位
|
|
46
|
+
* @returns {string} 返回转化后字符串
|
|
44
47
|
*/
|
|
45
48
|
function formatStartOfMobile(value, start = 3, len = 4) {
|
|
46
49
|
return formatStartOf(value, start, len);
|
|
47
50
|
}
|
|
48
51
|
/**
|
|
49
52
|
* 身份证号码固定位数转为星号
|
|
50
|
-
* @param {
|
|
51
|
-
* @param {
|
|
52
|
-
* @param {
|
|
53
|
-
* @returns {
|
|
53
|
+
* @param {string} value 身份证号码
|
|
54
|
+
* @param {number} start 前缀长度,默认4位
|
|
55
|
+
* @param {number} len 显示星号的长度,默认8位
|
|
56
|
+
* @returns {string} 返回转化后字符串
|
|
54
57
|
*/
|
|
55
58
|
function formatStartOfIDCard(value, start = 4, len = 8) {
|
|
56
59
|
return formatStartOf(value, start, len);
|
|
57
60
|
}
|
|
58
61
|
/**
|
|
59
62
|
* 银行卡号固定位数转为星号
|
|
60
|
-
* @param {
|
|
61
|
-
* @param {
|
|
62
|
-
* @param {
|
|
63
|
-
* @returns {
|
|
63
|
+
* @param {string} value 银行卡号
|
|
64
|
+
* @param {number} start 前缀长度,默认4位
|
|
65
|
+
* @param {number} len 显示星号的长度,默认10位
|
|
66
|
+
* @returns {string} 返回转化后字符串
|
|
64
67
|
*/
|
|
65
68
|
function formatStartOfBankCard(value, start = 4, len = 11) {
|
|
66
69
|
return formatStartOf(value, start, len);
|
|
@@ -1,67 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module 浏览器Device
|
|
3
|
+
*/
|
|
1
4
|
/**
|
|
2
5
|
* 获取浏览器信息
|
|
3
6
|
* @description 会获取到浏览器对应的名称以及版本
|
|
4
7
|
* @returns {Object} 返回浏览器信息
|
|
5
8
|
*/
|
|
6
|
-
export function getBrowserInfo():
|
|
9
|
+
export declare function getBrowserInfo(): "unknown" | {
|
|
10
|
+
name: string;
|
|
11
|
+
version: string;
|
|
12
|
+
};
|
|
7
13
|
/**
|
|
8
14
|
* 判断是pc端
|
|
9
|
-
* @returns {
|
|
15
|
+
* @returns {boolean} 返回true和false
|
|
10
16
|
*/
|
|
11
|
-
export function isPc(): boolean;
|
|
17
|
+
export declare function isPc(): boolean;
|
|
12
18
|
/**
|
|
13
19
|
* 判断是手机端
|
|
14
20
|
* @description 包含 android、iphone、黑莓手机、微软手机 等多种操作系统机型
|
|
15
|
-
* @returns {
|
|
21
|
+
* @returns {boolean} 返回true和false
|
|
16
22
|
*/
|
|
17
|
-
export function isPhone(): boolean;
|
|
23
|
+
export declare function isPhone(): boolean;
|
|
18
24
|
/**
|
|
19
25
|
* 判断是 android
|
|
20
|
-
* @returns {
|
|
26
|
+
* @returns {boolean} 返回true和false
|
|
21
27
|
*/
|
|
22
|
-
export function isAndroid(): boolean;
|
|
28
|
+
export declare function isAndroid(): boolean;
|
|
23
29
|
/**
|
|
24
30
|
* 判断是 ios
|
|
25
|
-
* @returns {
|
|
31
|
+
* @returns {boolean} 返回true和false
|
|
26
32
|
*/
|
|
27
|
-
export function isIos(): boolean;
|
|
33
|
+
export declare function isIos(): boolean;
|
|
28
34
|
/**
|
|
29
35
|
* 判断是 windows phone
|
|
30
|
-
* @returns {
|
|
36
|
+
* @returns {boolean} 返回true和false
|
|
31
37
|
*/
|
|
32
|
-
export function isWindowsPhone(): boolean;
|
|
38
|
+
export declare function isWindowsPhone(): boolean;
|
|
33
39
|
/**
|
|
34
40
|
* 判断是 windows
|
|
35
|
-
* @returns {
|
|
41
|
+
* @returns {boolean} 返回true和false
|
|
36
42
|
*/
|
|
37
|
-
export function isWindows(): boolean;
|
|
43
|
+
export declare function isWindows(): boolean;
|
|
38
44
|
/**
|
|
39
45
|
* 判断是 linux
|
|
40
|
-
* @returns {
|
|
46
|
+
* @returns {boolean} 返回true和false
|
|
41
47
|
*/
|
|
42
|
-
export function isLinux(): boolean;
|
|
48
|
+
export declare function isLinux(): boolean;
|
|
43
49
|
/**
|
|
44
50
|
* 判断是 Mac
|
|
45
|
-
* @returns {
|
|
51
|
+
* @returns {boolean} 返回true和false
|
|
46
52
|
*/
|
|
47
|
-
export function isMac(): boolean;
|
|
53
|
+
export declare function isMac(): boolean;
|
|
48
54
|
/**
|
|
49
55
|
* 判断是iphone
|
|
50
|
-
*@returns {
|
|
56
|
+
*@returns {boolean} 返回true和false
|
|
51
57
|
*/
|
|
52
|
-
export function isIphone(): boolean;
|
|
58
|
+
export declare function isIphone(): boolean;
|
|
53
59
|
/**
|
|
54
60
|
* 判断是ipad
|
|
55
|
-
*@return {
|
|
61
|
+
*@return {boolean} 返回true和false
|
|
56
62
|
*/
|
|
57
|
-
export function isIpad(): boolean;
|
|
63
|
+
export declare function isIpad(): boolean;
|
|
58
64
|
/**
|
|
59
65
|
* 判断是微信内置浏览器
|
|
60
|
-
* @returns {
|
|
66
|
+
* @returns {boolean} 返回true和false
|
|
61
67
|
*/
|
|
62
|
-
export function isWeixin(): boolean;
|
|
68
|
+
export declare function isWeixin(): boolean;
|
|
63
69
|
/**
|
|
64
70
|
* 判断是QQ内置浏览器
|
|
65
|
-
* @returns {
|
|
71
|
+
* @returns {boolean} 返回true和false
|
|
66
72
|
*/
|
|
67
|
-
export function isQQ(): boolean;
|
|
73
|
+
export declare function isQQ(): boolean;
|
package/dist/es/device/index.mjs
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module 浏览器Device
|
|
3
|
+
*/
|
|
1
4
|
/* 浏览器信息 */
|
|
2
5
|
/**
|
|
3
6
|
* 获取浏览器信息
|
|
@@ -5,19 +8,19 @@
|
|
|
5
8
|
* @returns {Object} 返回浏览器信息
|
|
6
9
|
*/
|
|
7
10
|
function getBrowserInfo() {
|
|
8
|
-
|
|
11
|
+
const ua = window.navigator.userAgent.toLowerCase();
|
|
9
12
|
// ie
|
|
10
|
-
|
|
13
|
+
const ie = ua.match(/rv:([\d.]+)\) like gecko/) || ua.match(/msie ([\d\.]+)/);
|
|
11
14
|
// edge
|
|
12
|
-
|
|
15
|
+
const edge = ua.match(/edg\/([\d\.]+)/);
|
|
13
16
|
// firefox
|
|
14
|
-
|
|
17
|
+
const firefox = ua.match(/firefox\/([\d\.]+)/);
|
|
15
18
|
// opera
|
|
16
|
-
|
|
19
|
+
const opera = ua.match(/(?:opera|opr).([\d\.]+)/);
|
|
17
20
|
// chrome
|
|
18
|
-
|
|
21
|
+
const chrome = ua.match(/chrome\/([\d\.]+)/);
|
|
19
22
|
// safari
|
|
20
|
-
|
|
23
|
+
const safari = ua.match(/version\/([\d\.]+).*safari/);
|
|
21
24
|
// 判断类型
|
|
22
25
|
if (ie)
|
|
23
26
|
return { name: "ie", version: ie[1] };
|
|
@@ -36,7 +39,7 @@ function getBrowserInfo() {
|
|
|
36
39
|
/* 设备类型 */
|
|
37
40
|
/**
|
|
38
41
|
* 判断是pc端
|
|
39
|
-
* @returns {
|
|
42
|
+
* @returns {boolean} 返回true和false
|
|
40
43
|
*/
|
|
41
44
|
function isPc() {
|
|
42
45
|
return !isPhone();
|
|
@@ -44,93 +47,93 @@ function isPc() {
|
|
|
44
47
|
/**
|
|
45
48
|
* 判断是手机端
|
|
46
49
|
* @description 包含 android、iphone、黑莓手机、微软手机 等多种操作系统机型
|
|
47
|
-
* @returns {
|
|
50
|
+
* @returns {boolean} 返回true和false
|
|
48
51
|
*/
|
|
49
52
|
function isPhone() {
|
|
50
|
-
|
|
53
|
+
const ua = window.navigator.userAgent;
|
|
51
54
|
return /Android|webOS|iPhone|iPod|BlackBerry|Windows Phone|IEMobile/i.test(ua);
|
|
52
55
|
}
|
|
53
56
|
/* 操作系统类型 */
|
|
54
57
|
/**
|
|
55
58
|
* 判断是 android
|
|
56
|
-
* @returns {
|
|
59
|
+
* @returns {boolean} 返回true和false
|
|
57
60
|
*/
|
|
58
61
|
function isAndroid() {
|
|
59
|
-
|
|
62
|
+
const ua = window.navigator.userAgent;
|
|
60
63
|
return /Android|BlackBerry/i.test(ua);
|
|
61
64
|
}
|
|
62
65
|
/**
|
|
63
66
|
* 判断是 ios
|
|
64
|
-
* @returns {
|
|
67
|
+
* @returns {boolean} 返回true和false
|
|
65
68
|
*/
|
|
66
69
|
function isIos() {
|
|
67
|
-
|
|
70
|
+
const ua = window.navigator.userAgent;
|
|
68
71
|
return /iPhone|iPad|iPod|iOS/i.test(ua);
|
|
69
72
|
}
|
|
70
73
|
/**
|
|
71
74
|
* 判断是 windows phone
|
|
72
|
-
* @returns {
|
|
75
|
+
* @returns {boolean} 返回true和false
|
|
73
76
|
*/
|
|
74
77
|
function isWindowsPhone() {
|
|
75
|
-
|
|
78
|
+
const ua = window.navigator.userAgent;
|
|
76
79
|
return /Windows Phone/i.test(ua);
|
|
77
80
|
}
|
|
78
81
|
/**
|
|
79
82
|
* 判断是 windows
|
|
80
|
-
* @returns {
|
|
83
|
+
* @returns {boolean} 返回true和false
|
|
81
84
|
*/
|
|
82
85
|
function isWindows() {
|
|
83
|
-
|
|
86
|
+
const ua = window.navigator.userAgent;
|
|
84
87
|
return /win/i.test(ua);
|
|
85
88
|
}
|
|
86
89
|
/**
|
|
87
90
|
* 判断是 linux
|
|
88
|
-
* @returns {
|
|
91
|
+
* @returns {boolean} 返回true和false
|
|
89
92
|
*/
|
|
90
93
|
function isLinux() {
|
|
91
|
-
|
|
94
|
+
const ua = window.navigator.userAgent;
|
|
92
95
|
return /linux/i.test(ua);
|
|
93
96
|
}
|
|
94
97
|
/**
|
|
95
98
|
* 判断是 Mac
|
|
96
|
-
* @returns {
|
|
99
|
+
* @returns {boolean} 返回true和false
|
|
97
100
|
*/
|
|
98
101
|
function isMac() {
|
|
99
|
-
|
|
102
|
+
const ua = window.navigator.userAgent;
|
|
100
103
|
return /mac/i.test(ua);
|
|
101
104
|
}
|
|
102
105
|
/* 苹果设备类型 */
|
|
103
106
|
/**
|
|
104
107
|
* 判断是iphone
|
|
105
|
-
*@returns {
|
|
108
|
+
*@returns {boolean} 返回true和false
|
|
106
109
|
*/
|
|
107
110
|
function isIphone() {
|
|
108
|
-
|
|
111
|
+
const ua = window.navigator.userAgent;
|
|
109
112
|
return /iPhone/i.test(ua);
|
|
110
113
|
}
|
|
111
114
|
/**
|
|
112
115
|
* 判断是ipad
|
|
113
|
-
*@return {
|
|
116
|
+
*@return {boolean} 返回true和false
|
|
114
117
|
*/
|
|
115
118
|
function isIpad() {
|
|
116
|
-
|
|
119
|
+
const ua = window.navigator.userAgent;
|
|
117
120
|
return /iPod/i.test(ua);
|
|
118
121
|
}
|
|
119
122
|
/* 手机浏览器类型 */
|
|
120
123
|
/**
|
|
121
124
|
* 判断是微信内置浏览器
|
|
122
|
-
* @returns {
|
|
125
|
+
* @returns {boolean} 返回true和false
|
|
123
126
|
*/
|
|
124
127
|
function isWeixin() {
|
|
125
|
-
|
|
128
|
+
const ua = window.navigator.userAgent;
|
|
126
129
|
return /MicroMessenger/i.test(ua);
|
|
127
130
|
}
|
|
128
131
|
/**
|
|
129
132
|
* 判断是QQ内置浏览器
|
|
130
|
-
* @returns {
|
|
133
|
+
* @returns {boolean} 返回true和false
|
|
131
134
|
*/
|
|
132
135
|
function isQQ() {
|
|
133
|
-
|
|
136
|
+
const ua = window.navigator.userAgent;
|
|
134
137
|
return /QQ/i.test(ua);
|
|
135
138
|
}
|
|
136
139
|
|
package/dist/es/dom/index.d.ts
CHANGED
|
@@ -1,57 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module 浏览器Dom
|
|
3
|
+
*/
|
|
1
4
|
/**
|
|
2
5
|
* 判断元素包含某个类名
|
|
3
|
-
* @param {
|
|
4
|
-
* @param {
|
|
5
|
-
* @return {
|
|
6
|
+
* @param {HTMLElement} elem 元素
|
|
7
|
+
* @param {string} className 类名
|
|
8
|
+
* @return {boolean} 返回true和false
|
|
6
9
|
*/
|
|
7
|
-
export function hasClass(elem:
|
|
10
|
+
export declare function hasClass(elem: HTMLElement, className: string): boolean;
|
|
8
11
|
/**
|
|
9
12
|
* 元素添加类名
|
|
10
|
-
* @param {
|
|
11
|
-
* @param {
|
|
13
|
+
* @param {HTMLElement} elem 元素
|
|
14
|
+
* @param {string} className 类名
|
|
12
15
|
*/
|
|
13
|
-
export function addClass(elem:
|
|
16
|
+
export declare function addClass(elem: HTMLElement, className: string): void;
|
|
14
17
|
/**
|
|
15
18
|
* 元素删除类名
|
|
16
|
-
* @param {
|
|
17
|
-
* @param {
|
|
19
|
+
* @param {HTMLElement} elem 元素
|
|
20
|
+
* @param {string} className 类名
|
|
18
21
|
*/
|
|
19
|
-
export function removeClass(elem:
|
|
22
|
+
export declare function removeClass(elem: HTMLElement, className: string): void;
|
|
20
23
|
/**
|
|
21
24
|
* 元素替换类名
|
|
22
|
-
* @param {
|
|
23
|
-
* @param {
|
|
24
|
-
* @param {
|
|
25
|
+
* @param {HTMLElement} elem 元素
|
|
26
|
+
* @param {string} newClassName 新的类名
|
|
27
|
+
* @param {string} oldClassName 被替换掉的旧类名
|
|
25
28
|
*/
|
|
26
|
-
export function replaceClass(elem:
|
|
29
|
+
export declare function replaceClass(elem: HTMLElement, newClassName: string, oldClassName: string): void;
|
|
27
30
|
/**
|
|
28
31
|
* 添加元素的style样式
|
|
29
|
-
* @param {
|
|
32
|
+
* @param {HTMLElement} elem 元素
|
|
30
33
|
* @param {Object} styles 样式属性集合
|
|
31
34
|
*/
|
|
32
|
-
export function addStyle(elem:
|
|
35
|
+
export declare function addStyle(elem: HTMLElement, styles?: Record<string, string>): void;
|
|
33
36
|
/**
|
|
34
37
|
* 获取元素的style样式
|
|
35
|
-
* @param {
|
|
36
|
-
* @param {
|
|
37
|
-
* @returns {
|
|
38
|
+
* @param {HTMLElement} elem 元素
|
|
39
|
+
* @param {string} name 属性
|
|
40
|
+
* @returns {string|undefined} 返回样式的值
|
|
38
41
|
*/
|
|
39
|
-
export function getStyle(elem:
|
|
42
|
+
export declare function getStyle(elem: HTMLElement, name: string): string | undefined;
|
|
40
43
|
/**
|
|
41
44
|
* 删除元素的style样式
|
|
42
|
-
* @param {
|
|
43
|
-
* @param {
|
|
45
|
+
* @param {HTMLElement} elem 元素
|
|
46
|
+
* @param {string} name 属性
|
|
44
47
|
*/
|
|
45
|
-
export function removeStyle(elem:
|
|
48
|
+
export declare function removeStyle(elem: HTMLElement, name: string): void;
|
|
46
49
|
/**
|
|
47
50
|
* html标签转义
|
|
48
|
-
* @param {
|
|
49
|
-
* @returns {
|
|
51
|
+
* @param {string} htmlStr html字符串
|
|
52
|
+
* @returns {string} 返回转义后的字符串
|
|
50
53
|
*/
|
|
51
|
-
export function htmlEncode(htmlStr: string): string;
|
|
54
|
+
export declare function htmlEncode(htmlStr: string): string;
|
|
52
55
|
/**
|
|
53
56
|
* html标签解码
|
|
54
|
-
* @param {
|
|
55
|
-
* @returns {
|
|
57
|
+
* @param {string} htmlStr html字符串
|
|
58
|
+
* @returns {string} 返回解析后的字符串
|
|
56
59
|
*/
|
|
57
|
-
export function htmlDecode(htmlStr: string): string;
|
|
60
|
+
export declare function htmlDecode(htmlStr: string): string;
|
package/dist/es/dom/index.mjs
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module 浏览器Dom
|
|
3
|
+
*/
|
|
1
4
|
/* Class操作 */
|
|
2
5
|
/**
|
|
3
6
|
* 判断元素包含某个类名
|
|
4
|
-
* @param {
|
|
5
|
-
* @param {
|
|
6
|
-
* @return {
|
|
7
|
+
* @param {HTMLElement} elem 元素
|
|
8
|
+
* @param {string} className 类名
|
|
9
|
+
* @return {boolean} 返回true和false
|
|
7
10
|
*/
|
|
8
11
|
function hasClass(elem, className) {
|
|
9
12
|
return elem.className.indexOf(className) > 0;
|
|
10
13
|
}
|
|
11
14
|
/**
|
|
12
15
|
* 元素添加类名
|
|
13
|
-
* @param {
|
|
14
|
-
* @param {
|
|
16
|
+
* @param {HTMLElement} elem 元素
|
|
17
|
+
* @param {string} className 类名
|
|
15
18
|
*/
|
|
16
19
|
function addClass(elem, className) {
|
|
17
20
|
if (!hasClass(elem, className)) {
|
|
@@ -20,8 +23,8 @@ function addClass(elem, className) {
|
|
|
20
23
|
}
|
|
21
24
|
/**
|
|
22
25
|
* 元素删除类名
|
|
23
|
-
* @param {
|
|
24
|
-
* @param {
|
|
26
|
+
* @param {HTMLElement} elem 元素
|
|
27
|
+
* @param {string} className 类名
|
|
25
28
|
*/
|
|
26
29
|
function removeClass(elem, className) {
|
|
27
30
|
if (hasClass(elem, className)) {
|
|
@@ -30,9 +33,9 @@ function removeClass(elem, className) {
|
|
|
30
33
|
}
|
|
31
34
|
/**
|
|
32
35
|
* 元素替换类名
|
|
33
|
-
* @param {
|
|
34
|
-
* @param {
|
|
35
|
-
* @param {
|
|
36
|
+
* @param {HTMLElement} elem 元素
|
|
37
|
+
* @param {string} newClassName 新的类名
|
|
38
|
+
* @param {string} oldClassName 被替换掉的旧类名
|
|
36
39
|
*/
|
|
37
40
|
function replaceClass(elem, newClassName, oldClassName) {
|
|
38
41
|
removeClass(elem, oldClassName);
|
|
@@ -41,31 +44,31 @@ function replaceClass(elem, newClassName, oldClassName) {
|
|
|
41
44
|
/* Style操作 */
|
|
42
45
|
/**
|
|
43
46
|
* 添加元素的style样式
|
|
44
|
-
* @param {
|
|
47
|
+
* @param {HTMLElement} elem 元素
|
|
45
48
|
* @param {Object} styles 样式属性集合
|
|
46
49
|
*/
|
|
47
50
|
function addStyle(elem, styles = {}) {
|
|
48
51
|
if (!elem)
|
|
49
52
|
return;
|
|
50
|
-
for (
|
|
51
|
-
elem.style
|
|
53
|
+
for (const [key, value] of Object.entries(styles)) {
|
|
54
|
+
elem.style.setProperty(key, value);
|
|
52
55
|
}
|
|
53
56
|
}
|
|
54
57
|
/**
|
|
55
58
|
* 获取元素的style样式
|
|
56
|
-
* @param {
|
|
57
|
-
* @param {
|
|
58
|
-
* @returns {
|
|
59
|
+
* @param {HTMLElement} elem 元素
|
|
60
|
+
* @param {string} name 属性
|
|
61
|
+
* @returns {string|undefined} 返回样式的值
|
|
59
62
|
*/
|
|
60
63
|
function getStyle(elem, name) {
|
|
61
64
|
if (!elem)
|
|
62
65
|
return;
|
|
63
|
-
return elem.style
|
|
66
|
+
return elem.style.getPropertyValue(name);
|
|
64
67
|
}
|
|
65
68
|
/**
|
|
66
69
|
* 删除元素的style样式
|
|
67
|
-
* @param {
|
|
68
|
-
* @param {
|
|
70
|
+
* @param {HTMLElement} elem 元素
|
|
71
|
+
* @param {string} name 属性
|
|
69
72
|
*/
|
|
70
73
|
function removeStyle(elem, name) {
|
|
71
74
|
if (!elem)
|
|
@@ -75,8 +78,8 @@ function removeStyle(elem, name) {
|
|
|
75
78
|
/* Html转码 */
|
|
76
79
|
/**
|
|
77
80
|
* html标签转义
|
|
78
|
-
* @param {
|
|
79
|
-
* @returns {
|
|
81
|
+
* @param {string} htmlStr html字符串
|
|
82
|
+
* @returns {string} 返回转义后的字符串
|
|
80
83
|
*/
|
|
81
84
|
function htmlEncode(htmlStr) {
|
|
82
85
|
const temp = {
|
|
@@ -96,8 +99,8 @@ function htmlEncode(htmlStr) {
|
|
|
96
99
|
}
|
|
97
100
|
/**
|
|
98
101
|
* html标签解码
|
|
99
|
-
* @param {
|
|
100
|
-
* @returns {
|
|
102
|
+
* @param {string} htmlStr html字符串
|
|
103
|
+
* @returns {string} 返回解析后的字符串
|
|
101
104
|
*/
|
|
102
105
|
function htmlDecode(htmlStr) {
|
|
103
106
|
const temp = {
|