@base-web-kits/base-tools-ts 0.8.16 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/dist/array/index.d.ts +0 -9
- package/dist/array/index.d.ts.map +0 -1
- package/dist/async/index.d.ts +0 -14
- package/dist/async/index.d.ts.map +0 -1
- package/dist/bean/EventBus.d.ts +0 -36
- package/dist/bean/EventBus.d.ts.map +0 -1
- package/dist/bean/index.d.ts +0 -2
- package/dist/bean/index.d.ts.map +0 -1
- package/dist/day/index.d.ts +0 -100
- package/dist/day/index.d.ts.map +0 -1
- package/dist/index.d.ts +0 -15
- package/dist/index.d.ts.map +0 -1
- package/dist/lodash/index.d.ts +0 -8
- package/dist/lodash/index.d.ts.map +0 -1
- package/dist/number/big.d.ts +0 -137
- package/dist/number/big.d.ts.map +0 -1
- package/dist/number/format.d.ts +0 -88
- package/dist/number/format.d.ts.map +0 -1
- package/dist/number/index.d.ts +0 -4
- package/dist/number/index.d.ts.map +0 -1
- package/dist/number/random.d.ts +0 -33
- package/dist/number/random.d.ts.map +0 -1
- package/dist/object/index.d.ts +0 -11
- package/dist/object/index.d.ts.map +0 -1
- package/dist/string/format.d.ts +0 -33
- package/dist/string/format.d.ts.map +0 -1
- package/dist/string/index.d.ts +0 -4
- package/dist/string/index.d.ts.map +0 -1
- package/dist/string/other.d.ts +0 -15
- package/dist/string/other.d.ts.map +0 -1
- package/dist/string/random.d.ts +0 -27
- package/dist/string/random.d.ts.map +0 -1
- package/dist/typing/index.d.ts +0 -134
- package/dist/typing/index.d.ts.map +0 -1
- package/dist/url/file/index.d.ts +0 -22
- package/dist/url/file/index.d.ts.map +0 -1
- package/dist/url/index.d.ts +0 -5
- package/dist/url/index.d.ts.map +0 -1
- package/dist/url/oss/index.d.ts +0 -77
- package/dist/url/oss/index.d.ts.map +0 -1
- package/dist/url/param/index.d.ts +0 -49
- package/dist/url/param/index.d.ts.map +0 -1
- package/dist/url/qn/index.d.ts +0 -58
- package/dist/url/qn/index.d.ts.map +0 -1
- package/dist/validator/index.d.ts +0 -296
- package/dist/validator/index.d.ts.map +0 -1
package/dist/typing/index.d.ts
DELETED
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 将指定属性设为必填(不改变其他属性)。
|
|
3
|
-
* - 所有属性必填请使用内置的Required<T>
|
|
4
|
-
* @example
|
|
5
|
-
* type User = { id?: number; name?: string; age?: number };
|
|
6
|
-
* type U1 = SetRequired<User, 'id' | 'name'>; // { id: number; name: string; age?: number }
|
|
7
|
-
*/
|
|
8
|
-
export type SetRequired<T, K extends keyof T> = {
|
|
9
|
-
[P in K]-?: T[P];
|
|
10
|
-
} & Omit<T, K>;
|
|
11
|
-
/**
|
|
12
|
-
* 将指定属性设为可选(不改变其他属性)。
|
|
13
|
-
* - 所有属性可选请使用内置的Partial<T>
|
|
14
|
-
* @example
|
|
15
|
-
* type User = { id: number; name: string; age: number };
|
|
16
|
-
* type U2 = SetOptional<User, 'age'>; // { id: number; name: string; age?: number }
|
|
17
|
-
*/
|
|
18
|
-
export type SetOptional<T, K extends keyof T> = {
|
|
19
|
-
[P in K]+?: T[P];
|
|
20
|
-
} & Omit<T, K>;
|
|
21
|
-
/**
|
|
22
|
-
* 深度可选(递归将所有属性设为可选)。
|
|
23
|
-
* @example
|
|
24
|
-
* type T = { a: { b: number }; list: Array<{ id: string }> };
|
|
25
|
-
* type R = DeepPartial<T>;
|
|
26
|
-
*/
|
|
27
|
-
export type DeepPartial<T> = T extends (infer U)[] ? DeepPartial<U>[] : T extends (...args: unknown[]) => unknown ? T : T extends object ? {
|
|
28
|
-
[K in keyof T]?: DeepPartial<T[K]>;
|
|
29
|
-
} : T;
|
|
30
|
-
/**
|
|
31
|
-
* 深度必填(递归移除所有可选标记)。
|
|
32
|
-
* @example
|
|
33
|
-
* type T = { a?: { b?: number } };
|
|
34
|
-
* type R = DeepRequired<T>; // { a: { b: number } }
|
|
35
|
-
*/
|
|
36
|
-
export type DeepRequired<T> = T extends (infer U)[] ? DeepRequired<U>[] : T extends (...args: unknown[]) => unknown ? T : T extends object ? {
|
|
37
|
-
[K in keyof T]-?: DeepRequired<T[K]>;
|
|
38
|
-
} : T;
|
|
39
|
-
/**
|
|
40
|
-
* 取消只读(顶层移除 `readonly`)。
|
|
41
|
-
* @example
|
|
42
|
-
* type R = Mutable<Readonly<{ a: number }>>; // { a: number }
|
|
43
|
-
*/
|
|
44
|
-
export type Mutable<T> = {
|
|
45
|
-
-readonly [K in keyof T]: T[K];
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* 深度只读(递归添加 `readonly`)。
|
|
49
|
-
* @example
|
|
50
|
-
* type R = ReadonlyDeep<{ a: { b: number }; list: { id: string }[] }>;
|
|
51
|
-
*/
|
|
52
|
-
export type ReadonlyDeep<T> = T extends (infer U)[] ? ReadonlyArray<ReadonlyDeep<U>> : T extends (...args: unknown[]) => unknown ? T : T extends object ? {
|
|
53
|
-
readonly [K in keyof T]: ReadonlyDeep<T[K]>;
|
|
54
|
-
} : T;
|
|
55
|
-
/**
|
|
56
|
-
* 对象值联合类型。
|
|
57
|
-
* @example
|
|
58
|
-
* type V = ValueOf<{ a: 1; b: 'x' }>; // 1 | 'x'
|
|
59
|
-
*/
|
|
60
|
-
export type ValueOf<T> = T[keyof T];
|
|
61
|
-
/**
|
|
62
|
-
* 根据值类型获取键名联合。
|
|
63
|
-
* @example
|
|
64
|
-
* type Keys = KeysOfType<{ a: string; b: number; c: string }, string>; // 'a' | 'c'
|
|
65
|
-
*/
|
|
66
|
-
export type KeysOfType<T, V> = {
|
|
67
|
-
[K in keyof T]-?: T[K] extends V ? K : never;
|
|
68
|
-
}[keyof T];
|
|
69
|
-
/**
|
|
70
|
-
* 按值类型挑选属性。
|
|
71
|
-
* @example
|
|
72
|
-
* type R = PickByType<{ a: string; b: number; c: string }, string>; // { a: string; c: string }
|
|
73
|
-
*/
|
|
74
|
-
export type PickByType<T, V> = Pick<T, KeysOfType<T, V>>;
|
|
75
|
-
/**
|
|
76
|
-
* 可选键名联合。
|
|
77
|
-
* @example
|
|
78
|
-
* type K = OptionalKeys<{ a?: number; b: string }>; // 'a'
|
|
79
|
-
*/
|
|
80
|
-
export type OptionalKeys<T> = {
|
|
81
|
-
[K in keyof T]-?: Pick<T, K> extends Required<Pick<T, K>> ? never : K;
|
|
82
|
-
}[keyof T];
|
|
83
|
-
/**
|
|
84
|
-
* 必填键名联合。
|
|
85
|
-
* @example
|
|
86
|
-
* type K = RequiredKeys<{ a?: number; b: string }>; // 'b'
|
|
87
|
-
*/
|
|
88
|
-
export type RequiredKeys<T> = {
|
|
89
|
-
[K in keyof T]-?: Pick<T, K> extends Required<Pick<T, K>> ? K : never;
|
|
90
|
-
}[keyof T];
|
|
91
|
-
/**
|
|
92
|
-
* 联合类型转交叉类型。
|
|
93
|
-
* @example
|
|
94
|
-
* type I = UnionToIntersection<{ a: 1 } | { b: 2 }>; // { a: 1 } & { b: 2 }
|
|
95
|
-
*/
|
|
96
|
-
export type UnionToIntersection<U> = (U extends unknown ? (x: U) => unknown : never) extends (x: infer I) => unknown ? I : never;
|
|
97
|
-
/**
|
|
98
|
-
* 合并属性(以 `U` 覆盖 `T` 的同名属性)。
|
|
99
|
-
* @example
|
|
100
|
-
* type R = Merge<{ a: 1; b: 2 }, { b: 3; c: 4 }>; // { a: 1; b: 3; c: 4 }
|
|
101
|
-
*/
|
|
102
|
-
export type Merge<T, U> = Omit<T, keyof U> & U;
|
|
103
|
-
/**
|
|
104
|
-
* 名义类型(品牌化)。
|
|
105
|
-
* @example
|
|
106
|
-
* type UserId = Brand<number, 'UserId'>;
|
|
107
|
-
*/
|
|
108
|
-
export type Brand<T, B extends string> = T & {
|
|
109
|
-
readonly __brand: B;
|
|
110
|
-
};
|
|
111
|
-
/**
|
|
112
|
-
* 可空(包含 `null | undefined`)。
|
|
113
|
-
* @example
|
|
114
|
-
* type R = Nullable<string>; // string | null | undefined
|
|
115
|
-
*/
|
|
116
|
-
export type Nullable<T> = T | null | undefined;
|
|
117
|
-
/**
|
|
118
|
-
* 可序列化为 JSON 的值类型。
|
|
119
|
-
*/
|
|
120
|
-
export type JsonPrimitive = string | number | boolean | null;
|
|
121
|
-
export type JsonObject = {
|
|
122
|
-
[k: string]: JsonValue;
|
|
123
|
-
};
|
|
124
|
-
export type JsonArray = Array<JsonValue>;
|
|
125
|
-
export type JsonValue = JsonPrimitive | JsonObject | JsonArray;
|
|
126
|
-
/**
|
|
127
|
-
* 精确匹配形状(不允许多余属性)。
|
|
128
|
-
* @example
|
|
129
|
-
* type Shape = { a: number };
|
|
130
|
-
* type OK = Exact<{ a: number }, Shape>; // { a: number }
|
|
131
|
-
* type NG = Exact<{ a: number; b: 1 }, Shape>; // never
|
|
132
|
-
*/
|
|
133
|
-
export type Exact<T, Shape> = T extends Shape ? Exclude<keyof T, keyof Shape> extends never ? T : never : never;
|
|
134
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ts/typing/index.ts"],"names":[],"mappings":"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"}
|
package/dist/url/file/index.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 获取文件后缀(不含点,返回小写)。
|
|
3
|
-
* 当文件名不包含点('.')时,返回空字符串。
|
|
4
|
-
* @param fileName 文件名,例如 `avatar.PNG`
|
|
5
|
-
* @returns 后缀字符串,例如 `png`
|
|
6
|
-
* @example getFileSuffix('avatar.PNG') // 'png'
|
|
7
|
-
* @example getFileSuffix('a.tar.gz') // 'gz'
|
|
8
|
-
* @example getFileSuffix('.ignore') // ''
|
|
9
|
-
* @example getFileSuffix('abc') // ''
|
|
10
|
-
*/
|
|
11
|
-
export declare function getFileSuffix(fileName: string): string;
|
|
12
|
-
/**
|
|
13
|
-
* 根据文件后缀判断文件类型。
|
|
14
|
-
* 会将后缀转换为小写后与 `FILE_TYPE` 映射匹配;若未匹配到则返回 `'unknown'`。
|
|
15
|
-
* @param fileName 文件名
|
|
16
|
-
* @returns 文件类型字符串(如 'img' | 'video' | 'voice' | 'excel' | 'word' | 'zip' | 'ppt' | 'app' | 'unknown')
|
|
17
|
-
* @example getFileType('avatar.PNG') // 'img'
|
|
18
|
-
* @example getFileType('archive.tar') // 'zip'
|
|
19
|
-
* @example getFileType('abc') // 'unknown'
|
|
20
|
-
*/
|
|
21
|
-
export declare function getFileType(fileName: string): "img" | "video" | "zip" | "ppt" | "unknown" | "voice" | "excel" | "word" | "app";
|
|
22
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ts/url/file/index.ts"],"names":[],"mappings":"AAkBA;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,UAK7C;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,oFAY3C"}
|
package/dist/url/index.d.ts
DELETED
package/dist/url/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ts/url/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,MAAM,CAAC"}
|
package/dist/url/oss/index.d.ts
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import type { OSSOption, OSSAudioOption, OSSHlsOption, OSSImgOption, OSSVideoOption } from './index.d';
|
|
2
|
-
export * from './index.d';
|
|
3
|
-
/**
|
|
4
|
-
* oss图片处理
|
|
5
|
-
* 参考官方文档: https://help.aliyun.com/zh/oss/user-guide/img-parameters/?spm=a2c4g.11186623.help-menu-31815.d_0_11_2_1.572824a1a1W5Pf&scm=20140722.H_144582._.OR_help-T_cn~zh-V_1
|
|
6
|
-
* @param src 原始图片URL
|
|
7
|
-
* @param option 图片处理选项
|
|
8
|
-
* @returns 处理后的图片URL(格式: `{src}?x-oss-process=image/xx`)
|
|
9
|
-
* @example
|
|
10
|
-
* 缩放: getOSSImg('xx.jpg', { resize: { w: 100, h: 100 } })
|
|
11
|
-
* 水印: getOSSImg('xx.jpg', { watermark: { text: '水印' } });
|
|
12
|
-
* 翻转: getOSSImg('xx.jpg', { flip: 1 });
|
|
13
|
-
* 裁剪: getOSSImg('xx.jpg', { crop: { w: 100, h: 100 } });
|
|
14
|
-
* 质量: getOSSImg('xx.jpg', { quality: { q: 80 } });
|
|
15
|
-
* 格式转换: getOSSImg('xx.jpg', { format: 'jpg' });
|
|
16
|
-
* 获取信息: getOSSImg('xx.jpg', { info: true });
|
|
17
|
-
* 自适应方向: getOSSImg('xx.jpg', { 'auto-orient': 1 });
|
|
18
|
-
* 内切圆: getOSSImg('xx.jpg', { circle: { r: 100 } });
|
|
19
|
-
* 索引切割: getOSSImg('xx.jpg', { indexcrop: { x: 100 } });
|
|
20
|
-
* 圆角: getOSSImg('xx.jpg', { 'rounded-corners': { r: 10 } });
|
|
21
|
-
* 模糊: getOSSImg('xx.jpg', { blur: { r: 10, s: 10 } });
|
|
22
|
-
* 旋转: getOSSImg('xx.jpg', { rotate: 90 });
|
|
23
|
-
* 渐进显示: getOSSImg('xx.jpg', { interlace: 1 });
|
|
24
|
-
* 主色调: getOSSImg('xx.jpg', { 'average-hue': true });
|
|
25
|
-
* 亮度: getOSSImg('xx.jpg', { bright: 10 });
|
|
26
|
-
* 锐化: getOSSImg('xx.jpg', { sharpen: 100 });
|
|
27
|
-
* 对比度: getOSSImg('xx.jpg', { contrast: 100 });
|
|
28
|
-
*/
|
|
29
|
-
export declare function getOSSImg(src: string, option: OSSImgOption): string;
|
|
30
|
-
/**
|
|
31
|
-
* oss视频处理
|
|
32
|
-
* 参考官方文档: https://help.aliyun.com/zh/oss/user-guide/audio-and-video-processing/
|
|
33
|
-
* @param src 原始视频URL
|
|
34
|
-
* @param option 视频处理选项
|
|
35
|
-
* @returns 处理后的URL(格式: `{src}?x-oss-process=video/xx`)
|
|
36
|
-
* @example
|
|
37
|
-
* 视频转码: getOSSVideo('xx.mp4', { convert: { format: 'mp4' } })
|
|
38
|
-
* 转为动图: getOSSVideo('xx.mp4', { animation: { format: 'gif' } })
|
|
39
|
-
* 雪碧图: getOSSVideo('xx.mp4', { sprite: { format: 'png' } })
|
|
40
|
-
* 多帧截取: getOSSVideo('xx.mp4', { snapshots: { count: 3 } })
|
|
41
|
-
* 视频拼接: getOSSVideo('xx.mp4', { concat: { list: 'a.mp4,b.mp4' } })
|
|
42
|
-
* 信息查询: getOSSVideo('xx.mp4', { info: true })
|
|
43
|
-
* 组合操作: getOSSVideo('xx.mp4', { convert: { format: 'mp4' }, snapshots: { count: 3 } })
|
|
44
|
-
*/
|
|
45
|
-
export declare function getOSSVideo(src: string, option: OSSVideoOption): string;
|
|
46
|
-
/**
|
|
47
|
-
* oss音频处理
|
|
48
|
-
* 参考官方文档: https://help.aliyun.com/zh/oss/user-guide/audio-and-video-processing/
|
|
49
|
-
* @param src 原始音频URL
|
|
50
|
-
* @param option 音频处理选项
|
|
51
|
-
* @returns 处理后的URL(格式: `{src}?x-oss-process=audio/xx`)
|
|
52
|
-
* @example
|
|
53
|
-
* 音频转码: getOSSAudio('xx.mp3', { 'convert': { format: 'mp3' } })
|
|
54
|
-
* 音频拼接: getOSSAudio('xx.mp3', { 'concat': { list: 'a.mp3,b.mp3' } })
|
|
55
|
-
* 信息查询: getOSSAudio('xx.mp3', { 'info': true })
|
|
56
|
-
*/
|
|
57
|
-
export declare function getOSSAudio(src: string, option: OSSAudioOption): string;
|
|
58
|
-
/**
|
|
59
|
-
* oss直播处理(边转边播 HLS)
|
|
60
|
-
* 参考官方文档: https://help.aliyun.com/zh/oss/user-guide/audio-and-video-processing/
|
|
61
|
-
* @param src 原始视频URL
|
|
62
|
-
* @param option HLS 选项(或布尔)
|
|
63
|
-
* @returns 处理后的URL(格式: `{src}?x-oss-process=hls/xx`)
|
|
64
|
-
* @example
|
|
65
|
-
* 生成播放列表: getOSSHls('xx.mp4', { 'm3u8': true })
|
|
66
|
-
* 配置参数: getOSSHls('xx.mp4', { 'm3u8': { playlist: 1, segtime: 6 } })
|
|
67
|
-
*/
|
|
68
|
-
export declare function getOSSHls(src: string, option: OSSHlsOption): string;
|
|
69
|
-
/**
|
|
70
|
-
* 构造oss处理地址
|
|
71
|
-
* @param src 原始地址
|
|
72
|
-
* @param type oss处理类型,如`image`, `audio`, `video`, `hls`
|
|
73
|
-
* @param option oss处理选项
|
|
74
|
-
* @returns 处理后的URL(格式: `{src}?x-oss-process={type}/{segs.join('/')}`)
|
|
75
|
-
*/
|
|
76
|
-
export declare function buildOSSUrl(src: string, type: string, option: OSSOption): string;
|
|
77
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ts/url/oss/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,cAAc,EAEf,MAAM,WAAW,CAAC;AAEnB,cAAc,WAAW,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,UAE1D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,UAE9D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,UAE9D;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,UAE1D;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,UAkBvE"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 获取url的查询参数值
|
|
3
|
-
* - 采用纯JS解析,因为小程序不支持URLSearchParams
|
|
4
|
-
* @param key 参数名
|
|
5
|
-
* @param url 完整 URL 或仅查询串(如 "a=1&b=2")
|
|
6
|
-
* @returns 解码后的参数值 (若不存在|"null"|"undefined",则返回 null)
|
|
7
|
-
* @example
|
|
8
|
-
* const q = getUrlParam('q', 'https://a.com/?q=%E6%B5%8B%E8%AF%95'); // "测试"
|
|
9
|
-
* const a = getUrlParam('a', 'a=1'); // "1"
|
|
10
|
-
* const list = getUrlParam('list', 'list=[1,2]'); // "[1,2]"
|
|
11
|
-
* const list = getUrlParam('list', 'list=null'); // null
|
|
12
|
-
* const list = getUrlParam('list', 'list=undefined'); // null
|
|
13
|
-
*/
|
|
14
|
-
export declare function getUrlParam(key: string, url: string): string | null;
|
|
15
|
-
/**
|
|
16
|
-
* 获取url的查询参数值,并转为number类型
|
|
17
|
-
* @param key 参数名
|
|
18
|
-
* @param url 完整 URL 或仅查询串(如 "a=1&b=2")
|
|
19
|
-
* @returns 解码后的参数值 (若不存在|"非数字字符串",则返回 null)
|
|
20
|
-
* @example
|
|
21
|
-
* const a = getUrlNumber('a', 'https://a.com/?a=1'); // 1
|
|
22
|
-
* const a = getUrlNumber('a', 'a=1'); // 1
|
|
23
|
-
* const a = getUrlNumber('a', 'a=1.2'); // 1.2
|
|
24
|
-
* const a = getUrlNumber('a', 'a=abc'); // null
|
|
25
|
-
*/
|
|
26
|
-
export declare function getUrlNumber(key: string, url: string): number | null;
|
|
27
|
-
/**
|
|
28
|
-
* 获取url的所有查询参数值
|
|
29
|
-
* - 采用纯JS解析,因为小程序不支持URLSearchParams
|
|
30
|
-
* @param url 完整 URL 或仅查询串(如 "a=1&b=2")
|
|
31
|
-
* @returns 解码后的键值对象(无参数返回空对象; "null"|"undefined"的参数会被忽略)
|
|
32
|
-
* @example
|
|
33
|
-
* const params = getUrlParamAll('a=1&b=2'); // { a: "1", b: "2" }
|
|
34
|
-
* const params = getUrlParamAll('https://a.com/?a=1&b=2'); // { a: "1", b: "2" }
|
|
35
|
-
* const params = getUrlParamAll('a=1&b=null'); // { a: "1" }
|
|
36
|
-
* const params = getUrlParamAll('a=1&b=undefined'); // { a: "1" }
|
|
37
|
-
*/
|
|
38
|
-
export declare function getUrlParamAll(url: string): Record<string, string>;
|
|
39
|
-
/**
|
|
40
|
-
* 将对象参数拼接到 URL
|
|
41
|
-
* - 采用纯JS拼接,因为小程序不支持URLSearchParams
|
|
42
|
-
* @param url 基础地址
|
|
43
|
-
* @param param 将要追加的参数对象;`null/undefined` 值会被忽略,Object 会使用 `JSON.stringify`
|
|
44
|
-
* @returns 拼接后的完整 URL(保留原有哈希片段)
|
|
45
|
-
* @example
|
|
46
|
-
* const url = appendUrlParam('https://a.com', { q: '测试', list: [1, 2], a: null, b: undefined }); // 'https://a.com/?q=%E6%B5%8B%E8%AF%95&list=[1,2]'
|
|
47
|
-
*/
|
|
48
|
-
export declare function appendUrlParam(url: string, param: Record<string, unknown>): string;
|
|
49
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ts/url/param/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,iBAqBnD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,iBAMpD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,0BAuBzC;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAkBzE"}
|
package/dist/url/qn/index.d.ts
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import type { QnImgOption } from './index.d';
|
|
2
|
-
export * from './index.d';
|
|
3
|
-
/**
|
|
4
|
-
* qn图片处理
|
|
5
|
-
* 参考官方文档: https://developer.qiniu.com/kodo/8623/dev-the-picture-style
|
|
6
|
-
* @param src 原始图片URL
|
|
7
|
-
* @param option 图片处理选项
|
|
8
|
-
* @returns 处理后的图片URL(格式: `{src}?imageView2/...|imageMogr2/...|watermark/...|imageslim|imageInfo`)
|
|
9
|
-
* @example
|
|
10
|
-
* 缩略: getQnImg('xx.jpg', { imageView2: { mode: 2, w: 100, h: 100 } })
|
|
11
|
-
* 高级缩放: getQnImg('xx.jpg', { thumbnail: '!50p' })
|
|
12
|
-
* 裁剪: getQnImg('xx.jpg', { crop: '100x100' })
|
|
13
|
-
* 旋转: getQnImg('xx.jpg', { rotate: 90 })
|
|
14
|
-
* 自适应方向: getQnImg('xx.jpg', { 'auto-orient': true })
|
|
15
|
-
* 格式转换: getQnImg('xx.jpg', { format: 'webp' })
|
|
16
|
-
* 质量: getQnImg('xx.jpg', { q: 80 })
|
|
17
|
-
* 渐进显示: getQnImg('xx.jpg', { interlace: 1 })
|
|
18
|
-
* 背景色填充: getQnImg('xx.jpg', { background: 'white' })
|
|
19
|
-
* 模糊: getQnImg('xx.jpg', { blur: { r: 10, s: 10 } })
|
|
20
|
-
* GIF颜色控制: getQnImg('xx.jpg', { colors: 64 })
|
|
21
|
-
* 图片瘦身: getQnImg('xx.jpg', { imageslim: true })
|
|
22
|
-
* 图片信息: getQnImg('xx.jpg', { imageInfo: true })
|
|
23
|
-
* 图片水印: getQnImg('xx.jpg', { watermark: { type: 'image', image: 'http://example.com/logo.png' } })
|
|
24
|
-
* 文字水印: getQnImg('xx.jpg', { watermark: { type: 'text', text: '水印', fontsize: 18 } })
|
|
25
|
-
*/
|
|
26
|
-
export declare function getQnImg(src: string, option: QnImgOption): string;
|
|
27
|
-
/**
|
|
28
|
-
* qn视频处理
|
|
29
|
-
* 参考官方文档: https://developer.qiniu.com/kodo/12654/video-process
|
|
30
|
-
* @param src 原始视频URL
|
|
31
|
-
* @param option 视频处理选项(支持 avthumb、vframe)
|
|
32
|
-
* @returns 处理后的URL(格式: `{src}?avthumb/...|vframe/...`)
|
|
33
|
-
* @example
|
|
34
|
-
* 视频转码: getQnVideo('xx.mp4', { avthumb: { format: 'mp4', s: '1280x720', vcodec: 'libx264', vb: '1.25m' } })
|
|
35
|
-
* 截帧: getQnVideo('xx.mp4', { vframe: { format: 'jpg', offset: 3, w: 480, h: 360 } })
|
|
36
|
-
*/
|
|
37
|
-
export declare function getQnVideo(src: string, option: import('.').QnVideoOption): string;
|
|
38
|
-
/**
|
|
39
|
-
* qn音频处理
|
|
40
|
-
* 参考官方文档: https://developer.qiniu.com/kodo/12654/video-process
|
|
41
|
-
* @param src 原始音频URL
|
|
42
|
-
* @param option 音频处理选项(通过 avthumb 转码)
|
|
43
|
-
* @returns 处理后的URL(格式: `{src}?avthumb/...`)
|
|
44
|
-
* @example
|
|
45
|
-
* 音频转码: getQnAudio('xx.aac', { avthumb: { format: 'mp3', ab: '128k', ar: 44100, acodec: 'libmp3lame' } })
|
|
46
|
-
*/
|
|
47
|
-
export declare function getQnAudio(src: string, option: import('.').QnAudioOption): string;
|
|
48
|
-
/**
|
|
49
|
-
* qn实时转码(HLS 边转边播)
|
|
50
|
-
* 参考官方文档: https://developer.qiniu.com/kodo/12654/video-process、实时转码
|
|
51
|
-
* @param src 原始视频URL
|
|
52
|
-
* @param option HLS 选项
|
|
53
|
-
* @returns 处理后的URL(格式: `{src}?avcvt/{level}/format/m3u8/...`)
|
|
54
|
-
* @example
|
|
55
|
-
* 720P HLS: getQnHls('xx.mp4', { level: 3, format: 'm3u8', segtime: 6 })
|
|
56
|
-
*/
|
|
57
|
-
export declare function getQnHls(src: string, option: import('.').QnHlsOption): string;
|
|
58
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ts/url/qn/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAwD,MAAM,WAAW,CAAC;AAEnG,cAAc,WAAW,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,UAsBxD;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,aAAa,UAUxE;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,aAAa,UAQxE;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,WAAW,UAOpE"}
|