sculp-js 1.13.1 → 1.13.3-beta.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 +10 -11
- package/dist/cjs/_virtual/_commonjsHelpers.js +13 -0
- package/{lib → dist}/cjs/array.js +1 -1
- package/{lib → dist}/cjs/async.js +1 -1
- package/{lib/cjs/we-decode.js → dist/cjs/base64.js} +53 -44
- package/{lib → dist}/cjs/clipboard.js +4 -2
- package/{lib → dist}/cjs/cloneDeep.js +1 -1
- package/{lib → dist}/cjs/cookie.js +1 -1
- package/{lib → dist}/cjs/date.js +1 -1
- package/{lib → dist}/cjs/dom.js +1 -1
- package/{lib → dist}/cjs/download.js +4 -2
- package/dist/cjs/easing.js +75 -0
- package/{lib → dist}/cjs/file.js +7 -3
- package/{lib → dist}/cjs/func.js +1 -1
- package/{lib → dist}/cjs/index.js +11 -8
- package/{lib → dist}/cjs/math.js +1 -1
- package/dist/cjs/node_modules/bezier-easing/src/index.js +123 -0
- package/{lib → dist}/cjs/number.js +1 -1
- package/{lib → dist}/cjs/object.js +1 -1
- package/{lib → dist}/cjs/path.js +1 -1
- package/{lib → dist}/cjs/qs.js +1 -1
- package/{lib → dist}/cjs/random.js +1 -1
- package/{lib → dist}/cjs/string.js +1 -1
- package/{lib → dist}/cjs/tooltip.js +5 -2
- package/{lib → dist}/cjs/tree.js +9 -23
- package/{lib → dist}/cjs/type.js +8 -1
- package/{lib → dist}/cjs/unique.js +1 -1
- package/{lib → dist}/cjs/url.js +1 -1
- package/{lib → dist}/cjs/validator.js +1 -1
- package/{lib → dist}/cjs/variable.js +1 -1
- package/{lib → dist}/cjs/watermark.js +4 -2
- package/{lib/es → dist/esm}/array.js +1 -1
- package/{lib/es → dist/esm}/async.js +1 -1
- package/{lib/es/we-decode.js → dist/esm/base64.js} +52 -45
- package/{lib/es → dist/esm}/clipboard.js +4 -2
- package/{lib/es → dist/esm}/cloneDeep.js +1 -1
- package/{lib/es → dist/esm}/cookie.js +1 -1
- package/{lib/es → dist/esm}/date.js +1 -1
- package/{lib/es → dist/esm}/dom.js +1 -1
- package/{lib/es → dist/esm}/download.js +4 -2
- package/{lib/es → dist/esm}/easing.js +34 -2
- package/{lib/es → dist/esm}/file.js +7 -3
- package/{lib/es → dist/esm}/func.js +1 -1
- package/{lib/es → dist/esm}/index.js +4 -5
- package/{lib/es → dist/esm}/math.js +1 -1
- package/{lib/es → dist/esm}/number.js +1 -1
- package/{lib/es → dist/esm}/object.js +1 -1
- package/{lib/es → dist/esm}/path.js +1 -1
- package/{lib/es → dist/esm}/qs.js +1 -1
- package/{lib/es → dist/esm}/random.js +1 -1
- package/{lib/es → dist/esm}/string.js +1 -1
- package/{lib/es → dist/esm}/tooltip.js +5 -2
- package/{lib/es → dist/esm}/tree.js +10 -24
- package/{lib/es → dist/esm}/type.js +8 -2
- package/{lib/es → dist/esm}/unique.js +1 -1
- package/{lib/es → dist/esm}/url.js +1 -1
- package/{lib/es → dist/esm}/validator.js +1 -1
- package/{lib/es → dist/esm}/variable.js +1 -1
- package/{lib/es → dist/esm}/watermark.js +4 -2
- package/dist/types/array.d.ts +50 -0
- package/dist/types/array.d.ts.map +1 -0
- package/dist/types/async.d.ts +37 -0
- package/dist/types/async.d.ts.map +1 -0
- package/dist/types/base64.d.ts +25 -0
- package/dist/types/base64.d.ts.map +1 -0
- package/dist/types/clipboard.d.ts +20 -0
- package/dist/types/clipboard.d.ts.map +1 -0
- package/dist/types/cloneDeep.d.ts +12 -0
- package/dist/types/cloneDeep.d.ts.map +1 -0
- package/dist/types/cookie.d.ts +19 -0
- package/dist/types/cookie.d.ts.map +1 -0
- package/dist/types/core-index.d.ts +17 -0
- package/dist/types/core-index.d.ts.map +1 -0
- package/dist/types/date.d.ts +74 -0
- package/dist/types/date.d.ts.map +1 -0
- package/dist/types/dom.d.ts +74 -0
- package/dist/types/dom.d.ts.map +1 -0
- package/dist/types/download.d.ts +47 -0
- package/dist/types/download.d.ts.map +1 -0
- package/dist/types/easing.d.ts +32 -0
- package/dist/types/easing.d.ts.map +1 -0
- package/dist/types/file.d.ts +44 -0
- package/dist/types/file.d.ts.map +1 -0
- package/dist/types/func.d.ts +50 -0
- package/dist/types/func.d.ts.map +1 -0
- package/dist/types/index.d.ts +28 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3278 -0
- package/dist/types/math.d.ts +36 -0
- package/dist/types/math.d.ts.map +1 -0
- package/dist/types/number.d.ts +49 -0
- package/dist/types/number.d.ts.map +1 -0
- package/dist/types/object.d.ts +70 -0
- package/dist/types/object.d.ts.map +1 -0
- package/dist/types/path.d.ts +14 -0
- package/dist/types/path.d.ts.map +1 -0
- package/dist/types/qs.d.ts +22 -0
- package/dist/types/qs.d.ts.map +1 -0
- package/dist/types/random.d.ts +27 -0
- package/dist/types/random.d.ts.map +1 -0
- package/dist/types/string.d.ts +67 -0
- package/dist/types/string.d.ts.map +1 -0
- package/dist/types/tooltip.d.ts +36 -0
- package/dist/types/tooltip.d.ts.map +1 -0
- package/dist/types/tree.d.ts +99 -0
- package/dist/types/tree.d.ts.map +1 -0
- package/dist/types/type.d.ts +128 -0
- package/dist/types/type.d.ts.map +1 -0
- package/dist/types/unique.d.ts +21 -0
- package/dist/types/unique.d.ts.map +1 -0
- package/dist/types/url.d.ts +46 -0
- package/dist/types/url.d.ts.map +1 -0
- package/dist/types/validator.d.ts +67 -0
- package/dist/types/validator.d.ts.map +1 -0
- package/dist/types/variable.d.ts +71 -0
- package/dist/types/variable.d.ts.map +1 -0
- package/dist/types/watermark.d.ts +19 -0
- package/dist/types/watermark.d.ts.map +1 -0
- package/dist/umd/index.min.js +6 -0
- package/package.json +234 -17
- package/lib/cjs/base64.js +0 -62
- package/lib/cjs/easing.js +0 -40
- package/lib/cjs/isEqual.js +0 -133
- package/lib/es/base64.js +0 -59
- package/lib/es/isEqual.js +0 -131
- package/lib/index.d.ts +0 -1214
- package/lib/umd/index.js +0 -6
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* sculp-js v1.13.
|
|
2
|
+
* sculp-js v1.13.3-beta.0
|
|
3
3
|
* (c) 2023-present chandq
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import { objectOmit } from './object.js';
|
|
8
|
-
import { isObject, objectHas, isEmpty } from './type.js';
|
|
8
|
+
import { isObject, objectHas, isEmpty, isNodeList } from './type.js';
|
|
9
9
|
|
|
10
10
|
const defaultFieldOptions = { keyField: 'key', childField: 'children', pidField: 'pid' };
|
|
11
11
|
const defaultSearchTreeOptions = {
|
|
@@ -15,7 +15,7 @@ const defaultSearchTreeOptions = {
|
|
|
15
15
|
ignoreCase: true
|
|
16
16
|
};
|
|
17
17
|
/**
|
|
18
|
-
* 树遍历函数(支持continue和break操作),
|
|
18
|
+
* 树遍历函数(支持continue和break操作), 可用于遍历Array和NodeList类型的数据
|
|
19
19
|
* @param {ArrayLike<V>} tree 树形数据
|
|
20
20
|
* @param {Function} iterator 迭代函数, 返回值为true时continue, 返回值为false时break
|
|
21
21
|
* @param {options} options 支持定制子元素名称、反向遍历、广度优先遍历,默认{
|
|
@@ -28,9 +28,10 @@ const defaultSearchTreeOptions = {
|
|
|
28
28
|
function forEachDeep(tree, iterator, options = {
|
|
29
29
|
childField: 'children',
|
|
30
30
|
reverse: false,
|
|
31
|
-
breadthFirst: false
|
|
31
|
+
breadthFirst: false,
|
|
32
|
+
isDomNode: false
|
|
32
33
|
}) {
|
|
33
|
-
const { childField = 'children', reverse = false, breadthFirst = false } = isObject(options) ? options : {};
|
|
34
|
+
const { childField = 'children', reverse = false, breadthFirst = false, isDomNode = false } = isObject(options) ? options : {};
|
|
34
35
|
let isBreak = false;
|
|
35
36
|
const queue = [];
|
|
36
37
|
const walk = (arr, parent, level = 0) => {
|
|
@@ -53,9 +54,7 @@ function forEachDeep(tree, iterator, options = {
|
|
|
53
54
|
else if (re === true) {
|
|
54
55
|
continue;
|
|
55
56
|
}
|
|
56
|
-
|
|
57
|
-
if (item && Array.isArray(item[childField])) {
|
|
58
|
-
// @ts-ignore
|
|
57
|
+
if (item && (isDomNode ? isNodeList(item[childField]) : Array.isArray(item[childField]))) {
|
|
59
58
|
walk(item[childField], item, level + 1);
|
|
60
59
|
}
|
|
61
60
|
}
|
|
@@ -64,8 +63,6 @@ function forEachDeep(tree, iterator, options = {
|
|
|
64
63
|
// Process queue
|
|
65
64
|
while (queue.length > 0 && !isBreak) {
|
|
66
65
|
const current = queue.shift();
|
|
67
|
-
// iterate(info);
|
|
68
|
-
// @ts-ignore
|
|
69
66
|
const { item, index, array, tree, parent, level } = current;
|
|
70
67
|
const re = iterator(item, index, array, tree, parent, level);
|
|
71
68
|
if (re === false) {
|
|
@@ -75,9 +72,7 @@ function forEachDeep(tree, iterator, options = {
|
|
|
75
72
|
else if (re === true) {
|
|
76
73
|
continue;
|
|
77
74
|
}
|
|
78
|
-
|
|
79
|
-
if (item && Array.isArray(item[childField])) {
|
|
80
|
-
// @ts-ignore
|
|
75
|
+
if (item && (isDomNode ? isNodeList(item[childField]) : Array.isArray(item[childField]))) {
|
|
81
76
|
walk(item[childField], item, level + 1);
|
|
82
77
|
}
|
|
83
78
|
}
|
|
@@ -103,9 +98,7 @@ function forEachDeep(tree, iterator, options = {
|
|
|
103
98
|
else if (re === true) {
|
|
104
99
|
continue;
|
|
105
100
|
}
|
|
106
|
-
|
|
107
|
-
if (item && Array.isArray(item[childField])) {
|
|
108
|
-
// @ts-ignore
|
|
101
|
+
if (item && (isDomNode ? isNodeList(item[childField]) : Array.isArray(item[childField]))) {
|
|
109
102
|
walk(item[childField], item, level + 1);
|
|
110
103
|
}
|
|
111
104
|
}
|
|
@@ -115,7 +108,6 @@ function forEachDeep(tree, iterator, options = {
|
|
|
115
108
|
const current = queue.shift();
|
|
116
109
|
if (!current)
|
|
117
110
|
break;
|
|
118
|
-
// @ts-ignore
|
|
119
111
|
const { item, index, array, tree, parent, level } = current;
|
|
120
112
|
const re = iterator(item, index, array, tree, parent, level);
|
|
121
113
|
if (re === false) {
|
|
@@ -125,9 +117,7 @@ function forEachDeep(tree, iterator, options = {
|
|
|
125
117
|
else if (re === true) {
|
|
126
118
|
continue;
|
|
127
119
|
}
|
|
128
|
-
|
|
129
|
-
if (item && Array.isArray(item[childField])) {
|
|
130
|
-
// @ts-ignore
|
|
120
|
+
if (item && (isDomNode ? isNodeList(item[childField]) : Array.isArray(item[childField]))) {
|
|
131
121
|
walk(item[childField], item, level + 1);
|
|
132
122
|
}
|
|
133
123
|
}
|
|
@@ -173,10 +163,8 @@ function mapDeep(tree, iterator, options = {
|
|
|
173
163
|
continue;
|
|
174
164
|
}
|
|
175
165
|
newTree.push(objectOmit(re, [childField]));
|
|
176
|
-
// @ts-ignore
|
|
177
166
|
if (item && Array.isArray(item[childField])) {
|
|
178
167
|
newTree[newTree.length - 1][childField] = [];
|
|
179
|
-
// @ts-ignore
|
|
180
168
|
walk(item[childField], item, newTree[newTree.length - 1][childField], level + 1);
|
|
181
169
|
}
|
|
182
170
|
else {
|
|
@@ -200,10 +188,8 @@ function mapDeep(tree, iterator, options = {
|
|
|
200
188
|
continue;
|
|
201
189
|
}
|
|
202
190
|
newTree.push(objectOmit(re, [childField]));
|
|
203
|
-
// @ts-ignore
|
|
204
191
|
if (item && Array.isArray(item[childField])) {
|
|
205
192
|
newTree[newTree.length - 1][childField] = [];
|
|
206
|
-
// @ts-ignore
|
|
207
193
|
walk(item[childField], item, newTree[newTree.length - 1][childField], level + 1);
|
|
208
194
|
}
|
|
209
195
|
else {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* sculp-js v1.13.
|
|
2
|
+
* sculp-js v1.13.3-beta.0
|
|
3
3
|
* (c) 2023-present chandq
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -124,5 +124,11 @@ function isEmpty(value) {
|
|
|
124
124
|
}
|
|
125
125
|
return !Object.keys(value).length;
|
|
126
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* Checks if `value` is an NodeList object
|
|
129
|
+
*/
|
|
130
|
+
function isNodeList(value) {
|
|
131
|
+
return isUndefined(NodeList) ? false : NodeList.prototype.isPrototypeOf(value);
|
|
132
|
+
}
|
|
127
133
|
|
|
128
|
-
export { arrayLike, typeIs as default, isArray, isBigInt, isBoolean, isDate, isEmpty, isError, isFunction, isJsonString, isNaN, isNull, isNullOrUnDef, isNullOrUnDef as isNullish, isNumber, isObject, isPrimitive, isRegExp, isString, isSymbol, isUndefined, objectHas, typeIs };
|
|
134
|
+
export { arrayLike, typeIs as default, isArray, isBigInt, isBoolean, isDate, isEmpty, isError, isFunction, isJsonString, isNaN, isNodeList, isNull, isNullOrUnDef, isNullOrUnDef as isNullish, isNumber, isObject, isPrimitive, isRegExp, isString, isSymbol, isUndefined, objectHas, typeIs };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* sculp-js v1.13.
|
|
2
|
+
* sculp-js v1.13.3-beta.0
|
|
3
3
|
* (c) 2023-present chandq
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -60,7 +60,7 @@ function genCanvasWM(content = '请勿外传', canvasWM) {
|
|
|
60
60
|
const MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
|
|
61
61
|
if (MutationObserver) {
|
|
62
62
|
let mo = new MutationObserver(function () {
|
|
63
|
-
|
|
63
|
+
let __wm = document.querySelector(`#${watermarkId}`); // 只在__wm元素变动才重新调用 __canvasWM
|
|
64
64
|
if (!__wm) {
|
|
65
65
|
// 避免一直触发
|
|
66
66
|
// console.log('regenerate watermark by delete::')
|
|
@@ -78,6 +78,8 @@ function genCanvasWM(content = '请勿外传', canvasWM) {
|
|
|
78
78
|
mo.disconnect();
|
|
79
79
|
mo = null;
|
|
80
80
|
container.removeChild(__wm);
|
|
81
|
+
// @ts-ignore
|
|
82
|
+
__wm = null;
|
|
81
83
|
genCanvasWM(content, canvasWM);
|
|
82
84
|
}
|
|
83
85
|
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { AnyArray } from './type';
|
|
2
|
+
/**
|
|
3
|
+
* 遍历数组,返回 false 中断遍历(支持continue和break操作)
|
|
4
|
+
*
|
|
5
|
+
* @param {ArrayLike<V>} array
|
|
6
|
+
* @param {(val: V, idx: number) => any} iterator 迭代函数, 返回值为true时continue, 返回值为false时break
|
|
7
|
+
* @param {boolean} reverse 是否倒序
|
|
8
|
+
* @returns {*}
|
|
9
|
+
*/
|
|
10
|
+
export declare function arrayEach<V>(array: ArrayLike<V>, iterator: (val: V, idx: number, arr: ArrayLike<V>) => boolean | void, reverse?: boolean): void;
|
|
11
|
+
/**
|
|
12
|
+
* 异步遍历数组,返回 false 中断遍历
|
|
13
|
+
* @param {ArrayLike<V>} array 数组
|
|
14
|
+
* @param {(val: V, idx: number) => Promise<any>} iterator 支持Promise类型的回调函数
|
|
15
|
+
* @param {boolean} reverse 是否反向遍历
|
|
16
|
+
* @example
|
|
17
|
+
* 使用范例如下:
|
|
18
|
+
* const start = async () => {
|
|
19
|
+
* await arrayEachAsync(result, async (item) => {
|
|
20
|
+
* await request(item);
|
|
21
|
+
* count++;
|
|
22
|
+
* })
|
|
23
|
+
* console.log('发送次数', count);
|
|
24
|
+
* }
|
|
25
|
+
|
|
26
|
+
* for await...of 使用范例如下
|
|
27
|
+
* const loadImages = async (images) => {
|
|
28
|
+
* for await (const item of images) {
|
|
29
|
+
* await request(item);
|
|
30
|
+
* count++;
|
|
31
|
+
* }
|
|
32
|
+
* }
|
|
33
|
+
*/
|
|
34
|
+
export declare function arrayEachAsync<V>(array: ArrayLike<V>, iterator: (val: V, idx: number) => Promise<any> | any, reverse?: boolean): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* 插入到目标位置之前
|
|
37
|
+
* @param {AnyArray} array
|
|
38
|
+
* @param {number} start
|
|
39
|
+
* @param {number} to
|
|
40
|
+
* @returns {*}
|
|
41
|
+
*/
|
|
42
|
+
export declare function arrayInsertBefore(array: AnyArray, start: number, to: number): void;
|
|
43
|
+
/**
|
|
44
|
+
* 数组删除指定项目
|
|
45
|
+
* @param {V[]} array
|
|
46
|
+
* @param {(val: V, idx: number) => boolean} expect
|
|
47
|
+
* @returns {V[]}
|
|
48
|
+
*/
|
|
49
|
+
export declare function arrayRemove<V>(array: V[], expect: (val: V, idx: number) => boolean): V[];
|
|
50
|
+
//# sourceMappingURL=array.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../src/array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAqB,MAAM,QAAQ,CAAC;AAErD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,EACnB,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,IAAI,EACpE,OAAO,UAAQ,GACd,IAAI,CAgBN;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,EACnB,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,EACrD,OAAO,UAAQ,GACd,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAOlF;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,CAAC,EAAE,CAexF"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 等待一段时间
|
|
3
|
+
* @param {number} timeout 等待时间,单位毫秒
|
|
4
|
+
* @returns {Promise<void>}
|
|
5
|
+
*/
|
|
6
|
+
export declare function wait(timeout?: number): Promise<void>;
|
|
7
|
+
/**
|
|
8
|
+
* 异步遍历
|
|
9
|
+
* @ref https://github.com/Kevnz/async-tools/blob/master/src/mapper.js
|
|
10
|
+
* @ref https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/@@iterator
|
|
11
|
+
* @param {Array<T>} list
|
|
12
|
+
* @param {(val: T, idx: number, list: ArrayLike<T>) => Promise<R>} mapper
|
|
13
|
+
* @param {number} concurrency 并发数量,默认无限
|
|
14
|
+
* @returns {Promise<R[]>}
|
|
15
|
+
*/
|
|
16
|
+
export declare function asyncMap<T, R>(list: Array<T>, mapper: (val: T, idx: number, list: Array<T>) => Promise<R>, concurrency?: number): Promise<R[]>;
|
|
17
|
+
/**
|
|
18
|
+
* Execute a promise safely
|
|
19
|
+
*
|
|
20
|
+
* @param { Promise } promise
|
|
21
|
+
* @param { Object= } errorExt - Additional Information you can pass safeAwait the err object
|
|
22
|
+
* @return { Promise }
|
|
23
|
+
* @example
|
|
24
|
+
* async function asyncTaskWithCb(cb) {
|
|
25
|
+
let err, user, savedTask, notification;
|
|
26
|
+
|
|
27
|
+
[ err, user ] = await safeAwait(UserModel.findById(1));
|
|
28
|
+
if(!user) return cb('No user found');
|
|
29
|
+
|
|
30
|
+
[ err, savedTask ] = await safeAwait(TaskModel({userId: user.id, name: 'Demo Task'}));
|
|
31
|
+
if(err) return cb('Error occurred while saving task')
|
|
32
|
+
|
|
33
|
+
cb(null, savedTask);
|
|
34
|
+
}
|
|
35
|
+
*/
|
|
36
|
+
export declare function safeAwait<T, U = Error>(promise: Promise<T>, errorExt?: object): Promise<[U, undefined] | [null, T]>;
|
|
37
|
+
//# sourceMappingURL=async.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../src/async.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,OAAO,SAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAC3B,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EACd,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAC3D,WAAW,SAAW,GACrB,OAAO,CAAC,CAAC,EAAE,CAAC,CAsCd;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAWnH"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 字符串编码成Base64, 平替浏览器的btoa, 不包含中文的处理 (适用于任何环境,包括小程序)
|
|
3
|
+
* @param {string} string
|
|
4
|
+
* @returns {string}
|
|
5
|
+
*/
|
|
6
|
+
export declare function weBtoa(string: string): string;
|
|
7
|
+
/**
|
|
8
|
+
* Base64解码为原始字符串,平替浏览器的atob, 不包含中文的处理(适用于任何环境,包括小程序)
|
|
9
|
+
* @param {string} string
|
|
10
|
+
* @returns {string}
|
|
11
|
+
*/
|
|
12
|
+
export declare function weAtob(string: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* 将base64编码的字符串转换为原始字符串,包括对中文内容的处理(高性能,且支持Web、Node、小程序等任意平台)
|
|
15
|
+
* @param base64 base64编码的字符串
|
|
16
|
+
* @returns 原始字符串,包括中文内容
|
|
17
|
+
*/
|
|
18
|
+
export declare function b64decode(base64: string): string;
|
|
19
|
+
/**
|
|
20
|
+
* 将原始字符串,包括中文内容,转换为base64编码的字符串(高性能,且支持Web、Node、小程序等任意平台)
|
|
21
|
+
* @param rawStr 原始字符串,包括中文内容
|
|
22
|
+
* @returns base64编码的字符串
|
|
23
|
+
*/
|
|
24
|
+
export declare function b64encode(rawStr: string): string;
|
|
25
|
+
//# sourceMappingURL=base64.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base64.d.ts","sourceRoot":"","sources":["../../src/base64.ts"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAwB7C;AACD;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAyB7C;AAcD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAYhD;AACD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAahD"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AsyncCallback } from './type';
|
|
2
|
+
type CopyTextOptions = AsyncCallback & {
|
|
3
|
+
container?: HTMLElement;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* 复制文本,优先使用navigator.clipboard,仅在安全上下文(HTTPS/localhost)下生效,若不支持则回退使用execCommand方式
|
|
7
|
+
* @param {string} text
|
|
8
|
+
* @param {CopyTextOptions} options 可选参数:成功回调successCallback、失败回调failCallback、容器元素container
|
|
9
|
+
* (默认document.body, 当不支持clipboard时必须传复制按钮元素,包裹模拟选择操作的临时元素,
|
|
10
|
+
* 解决脱离文档流的元素无法复制的问题,如Modal内复制操作)
|
|
11
|
+
*/
|
|
12
|
+
export declare function copyText(text: string, options?: CopyTextOptions): void;
|
|
13
|
+
/**
|
|
14
|
+
* 使用execCommand方式复制文本
|
|
15
|
+
* @param text
|
|
16
|
+
* @param options
|
|
17
|
+
*/
|
|
18
|
+
export declare function fallbackCopyText(text: string, options?: CopyTextOptions): void;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=clipboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clipboard.d.ts","sourceRoot":"","sources":["../../src/clipboard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAyB,MAAM,QAAQ,CAAC;AAE9D,KAAK,eAAe,GAAG,aAAa,GAAG;IAAE,SAAS,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC;AAEnE;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAiBtE;AACD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CA2B9E"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 深拷贝堪称完全体 即:任何类型的数据都会被深拷贝
|
|
3
|
+
*
|
|
4
|
+
* 包含对null、原始值、对象循环引用的处理
|
|
5
|
+
*
|
|
6
|
+
* 对Map、Set、ArrayBuffer、Date、RegExp、Array、Object及原型链属性方法执行深拷贝
|
|
7
|
+
* @param {T} source
|
|
8
|
+
* @param {WeakMap} map
|
|
9
|
+
* @returns {T}
|
|
10
|
+
*/
|
|
11
|
+
export declare function cloneDeep<T>(source: T, map?: WeakMap<any, any>): T;
|
|
12
|
+
//# sourceMappingURL=cloneDeep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloneDeep.d.ts","sourceRoot":"","sources":["../../src/cloneDeep.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,oBAA0B,GAAG,CAAC,CA+GxE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 获取cookie
|
|
3
|
+
* @param {string} name
|
|
4
|
+
* @returns {string}
|
|
5
|
+
*/
|
|
6
|
+
export declare function cookieGet(name: string): string;
|
|
7
|
+
/**
|
|
8
|
+
* 设置 cookie
|
|
9
|
+
* @param {string} name
|
|
10
|
+
* @param {string} value
|
|
11
|
+
* @param {number | Date} [maxAge]
|
|
12
|
+
*/
|
|
13
|
+
export declare function cookieSet(name: string, value: string, maxAge?: number | Date): void;
|
|
14
|
+
/**
|
|
15
|
+
* 删除单个 cookie
|
|
16
|
+
* @param name cookie 名称
|
|
17
|
+
*/
|
|
18
|
+
export declare const cookieDel: (name: string) => void;
|
|
19
|
+
//# sourceMappingURL=cookie.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookie.d.ts","sourceRoot":"","sources":["../../src/cookie.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAe9C;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAsBnF;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,SAAU,MAAM,KAAG,IAA+B,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export * from './array';
|
|
2
|
+
export * from './date';
|
|
3
|
+
export * from './object';
|
|
4
|
+
export * from './path';
|
|
5
|
+
export * from './string';
|
|
6
|
+
export * from './type';
|
|
7
|
+
export * from './async';
|
|
8
|
+
export * from './func';
|
|
9
|
+
export * from './random';
|
|
10
|
+
export * from './number';
|
|
11
|
+
export * from './unique';
|
|
12
|
+
export * from './tree';
|
|
13
|
+
export * from './math';
|
|
14
|
+
export * from './base64';
|
|
15
|
+
export * from './validator';
|
|
16
|
+
export * from './variable';
|
|
17
|
+
//# sourceMappingURL=core-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core-index.d.ts","sourceRoot":"","sources":["../../src/core-index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
export declare const isValidDate: (any: unknown) => any is Date;
|
|
2
|
+
export interface DateObj {
|
|
3
|
+
[propName: string]: string;
|
|
4
|
+
}
|
|
5
|
+
export type DateValue = number | string | Date;
|
|
6
|
+
/**
|
|
7
|
+
* 解析为Date对象
|
|
8
|
+
* @param {DateValue} value - 可以是数值、字符串或 Date 对象
|
|
9
|
+
* @returns {Date} - 转换后的目标Date
|
|
10
|
+
*/
|
|
11
|
+
export declare function dateParse(value: DateValue): Date;
|
|
12
|
+
/**
|
|
13
|
+
* 格式化为日期对象(带自定义格式化模板)
|
|
14
|
+
* @param {DateValue} value 可以是数值、字符串或 Date 对象
|
|
15
|
+
* @param {string} [format] 模板,默认是 YYYY-MM-DD HH:mm:ss,模板字符:
|
|
16
|
+
* - YYYY:年
|
|
17
|
+
* - yyyy: 年
|
|
18
|
+
* - MM:月
|
|
19
|
+
* - DD:日
|
|
20
|
+
* - dd: 日
|
|
21
|
+
* - HH:时(24 小时制)
|
|
22
|
+
* - hh:时(12 小时制)
|
|
23
|
+
* - mm:分
|
|
24
|
+
* - ss:秒
|
|
25
|
+
* - SSS:毫秒
|
|
26
|
+
* @returns {string}
|
|
27
|
+
*/
|
|
28
|
+
/**
|
|
29
|
+
* 将日期转换为一天的开始时间,即0点0分0秒0毫秒
|
|
30
|
+
* @param {DateValue} value
|
|
31
|
+
* @returns {Date}
|
|
32
|
+
*/
|
|
33
|
+
export declare function dateToStart(value: DateValue): Date;
|
|
34
|
+
/**
|
|
35
|
+
* 将日期转换为一天的结束时间,即23点59分59秒999毫秒
|
|
36
|
+
* @param {DateValue} value
|
|
37
|
+
* @returns {Date}
|
|
38
|
+
*/
|
|
39
|
+
export declare function dateToEnd(value: DateValue): Date;
|
|
40
|
+
/**
|
|
41
|
+
* 格式化为日期对象(带自定义格式化模板)
|
|
42
|
+
* @param {Date} value - 可以是数值、字符串或 Date 对象
|
|
43
|
+
* @param {string} [format] - 模板,默认是 YYYY-MM-DD HH:mm:ss,模板字符:
|
|
44
|
+
* - YYYY:年
|
|
45
|
+
* - yyyy: 年
|
|
46
|
+
* - MM:月
|
|
47
|
+
* - DD:日
|
|
48
|
+
* - dd: 日
|
|
49
|
+
* - HH:时(24 小时制)
|
|
50
|
+
* - mm:分
|
|
51
|
+
* - ss:秒
|
|
52
|
+
* - SSS:毫秒
|
|
53
|
+
* - ww: 周
|
|
54
|
+
* @returns {string} 格式化后的日期字符串
|
|
55
|
+
*/
|
|
56
|
+
export declare function formatDate(value: DateValue, format?: string): string;
|
|
57
|
+
/**
|
|
58
|
+
* 计算向前或向后N天的具体日期
|
|
59
|
+
* @param {DateValue} originDate - 参考日期
|
|
60
|
+
* @param {number} n - 正数:向后推算;负数:向前推算
|
|
61
|
+
* @param {string} sep - 日期格式的分隔符
|
|
62
|
+
* @returns {string} 计算后的目标日期
|
|
63
|
+
*/
|
|
64
|
+
export declare function calculateDate(originDate: DateValue, n: number, sep?: string): string;
|
|
65
|
+
/**
|
|
66
|
+
* 计算向前或向后N天的具体日期时间
|
|
67
|
+
* @param {DateValue} originDateTime - 参考日期时间
|
|
68
|
+
* @param {number} n - 正数:向后推算;负数:向前推算
|
|
69
|
+
* @param {string} dateSep - 日期分隔符
|
|
70
|
+
* @param {string} timeSep - 时间分隔符
|
|
71
|
+
* @returns {string} 转换后的目标日期时间
|
|
72
|
+
*/
|
|
73
|
+
export declare function calculateDateTime(originDateTime: DateValue, n: number, dateSep?: string, timeSep?: string): string;
|
|
74
|
+
//# sourceMappingURL=date.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../src/date.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,QAAS,OAAO,gBAAsD,CAAC;AAE/F,MAAM,WAAW,OAAO;IACtB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAqC/C;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAmBhD;AAED;;;;;;;;;;;;;;;GAeG;AA2BH;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAGlD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAIhD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,SAAwB,GAAG,MAAM,CA0BnF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,GAAE,MAAY,GAAG,MAAM,CAazF;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,SAAS,EACzB,CAAC,EAAE,MAAM,EACT,OAAO,GAAE,MAAY,EACrB,OAAO,GAAE,MAAY,GACpB,MAAM,CA2BR"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { EasingName } from './easing';
|
|
2
|
+
export interface Style {
|
|
3
|
+
[propName: string]: string | number;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* 判断元素是否包含某个样式名
|
|
7
|
+
* @param {HTMLElement} el
|
|
8
|
+
* @param {string} className
|
|
9
|
+
* @returns {boolean}
|
|
10
|
+
*/
|
|
11
|
+
export declare function hasClass(el: HTMLElement, className: string): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* 给元素增加样式名
|
|
14
|
+
* @param {HTMLElement} el
|
|
15
|
+
* @param {string} classNames
|
|
16
|
+
*/
|
|
17
|
+
export declare function addClass(el: HTMLElement, classNames: string): void;
|
|
18
|
+
/**
|
|
19
|
+
* 给元素移除样式名
|
|
20
|
+
* @param {HTMLElement} el
|
|
21
|
+
* @param {string} classNames
|
|
22
|
+
*/
|
|
23
|
+
export declare function removeClass(el: HTMLElement, classNames: string): void;
|
|
24
|
+
export interface SetStyle {
|
|
25
|
+
(el: HTMLElement, key: string, val: string): void;
|
|
26
|
+
(el: HTMLElement, style: Style): void;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* 设置元素样式
|
|
30
|
+
* @param {HTMLElement} el
|
|
31
|
+
* @param {string | Style} key
|
|
32
|
+
* @param {string} val
|
|
33
|
+
*/
|
|
34
|
+
export declare const setStyle: SetStyle;
|
|
35
|
+
/**
|
|
36
|
+
* 获取元素样式
|
|
37
|
+
* @param {HTMLElement} el 元素
|
|
38
|
+
* @param {string} key
|
|
39
|
+
* @returns {string}
|
|
40
|
+
*/
|
|
41
|
+
export declare function getStyle(el: HTMLElement, key: string): string;
|
|
42
|
+
type ScrollElement = HTMLElement | Document | Window;
|
|
43
|
+
export interface SmoothScrollOptions {
|
|
44
|
+
el: ScrollElement;
|
|
45
|
+
to: number;
|
|
46
|
+
duration: number;
|
|
47
|
+
easing: EasingName;
|
|
48
|
+
}
|
|
49
|
+
export declare function smoothScroll(options?: Partial<SmoothScrollOptions>): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* 获取元素样式属性的计算值
|
|
52
|
+
* @param {HTMLElement} el
|
|
53
|
+
* @param {string} property
|
|
54
|
+
* @param {boolean} reNumber
|
|
55
|
+
* @returns {string|number}
|
|
56
|
+
*/
|
|
57
|
+
export declare function getComputedCssVal(el: HTMLElement, property: string, reNumber?: boolean): string | number;
|
|
58
|
+
/**
|
|
59
|
+
* 字符串的像素宽度
|
|
60
|
+
* @param {string} str 目标字符串
|
|
61
|
+
* @param {number} fontSize 字符串字体大小
|
|
62
|
+
* @param {boolean} isRemove 计算后是否移除创建的dom元素
|
|
63
|
+
* @returns {*}
|
|
64
|
+
*/
|
|
65
|
+
export declare function getStrWidthPx(str: string, fontSize?: number, isRemove?: boolean): number;
|
|
66
|
+
/**
|
|
67
|
+
* Programmatically select the text of a HTML element
|
|
68
|
+
*
|
|
69
|
+
* @param {HTMLElement} element The element whose text you wish to select
|
|
70
|
+
* @returns
|
|
71
|
+
*/
|
|
72
|
+
export declare function select(element: HTMLElement): any;
|
|
73
|
+
export {};
|
|
74
|
+
//# sourceMappingURL=dom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/dom.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,UAAU,EAAE,MAAM,UAAU,CAAC;AAKxD,MAAM,WAAW,KAAK;IACpB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;CACrC;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAGpE;AAQD;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAElE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAErE;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACvC;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,EAAE,QAQtB,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,KAAK,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AACrD,MAAM,WAAW,mBAAmB;IAElC,EAAE,EAAE,aAAa,CAAC;IAElB,EAAE,EAAE,MAAM,CAAC;IAEX,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDlF;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAc,GAAG,MAAM,GAAG,MAAM,CAG9G;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAW,EAAE,QAAQ,GAAE,OAAc,GAAG,MAAM,CA2BlG;AACD;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,WAAW,OAyC1C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { LooseParams } from './qs';
|
|
2
|
+
import { AnyObject, AsyncCallback } from './type';
|
|
3
|
+
/**
|
|
4
|
+
* 通过打开新窗口的方式下载
|
|
5
|
+
* @param {string} url
|
|
6
|
+
* @param {LooseParams} params
|
|
7
|
+
*/
|
|
8
|
+
export declare function downloadURL(url: string, params?: LooseParams): void;
|
|
9
|
+
/**
|
|
10
|
+
* 通过 A 链接的方式下载
|
|
11
|
+
* @param {string} href
|
|
12
|
+
* @param {string} filename
|
|
13
|
+
* @param {Function} callback
|
|
14
|
+
*/
|
|
15
|
+
export declare function downloadHref(href: string, filename: string, callback?: Function): void;
|
|
16
|
+
/**
|
|
17
|
+
* 将大文件对象通过 A 链接的方式下载
|
|
18
|
+
* @param {Blob} blob
|
|
19
|
+
* @param {string} filename
|
|
20
|
+
* @param {Function} callback
|
|
21
|
+
*/
|
|
22
|
+
export declare function downloadBlob(blob: Blob, filename: string, callback?: Function): void;
|
|
23
|
+
type CrossOriginDownloadParams = AsyncCallback & {
|
|
24
|
+
successCode?: number;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* 根据URL下载文件(解决跨域a.download不生效问题)
|
|
28
|
+
*
|
|
29
|
+
* 可定制下载成功的状态码status(浏览器原生状态码)
|
|
30
|
+
*
|
|
31
|
+
* 支持下载操作成功、失败后的回调
|
|
32
|
+
* @param {string} url
|
|
33
|
+
* @param {string} filename
|
|
34
|
+
* @param {CrossOriginDownloadParams} options
|
|
35
|
+
*/
|
|
36
|
+
export declare function crossOriginDownload(url: string, filename: string, options?: CrossOriginDownloadParams): void;
|
|
37
|
+
export type FileType = 'json' | 'csv' | 'xls' | 'xlsx';
|
|
38
|
+
/**
|
|
39
|
+
* 将指定数据格式通过 A 链接的方式下载
|
|
40
|
+
* @param {AnyObject | AnyObject[]} data
|
|
41
|
+
* @param {FileType} fileType 支持 json/csv/xls/xlsx 四种格式
|
|
42
|
+
* @param {string} filename
|
|
43
|
+
* @param {string[]} [headers]
|
|
44
|
+
*/
|
|
45
|
+
export declare function downloadData(data: AnyObject | AnyObject[], fileType: FileType, filename: string, headers?: string[]): void;
|
|
46
|
+
export {};
|
|
47
|
+
//# sourceMappingURL=download.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../src/download.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAmC,MAAM,QAAQ,CAAC;AAGnF;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAEnE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAetF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAUpF;AACD,KAAK,yBAAyB,GAAG,aAAa,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAC1E;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,yBAAyB,GAAG,IAAI,CA+B5G;AAED,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;AAEvD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,EAC7B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,IAAI,CA8BN"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { EasingFunction } from 'bezier-easing';
|
|
2
|
+
export type EasingDefine = [number, number, number, number];
|
|
3
|
+
export type EasingName = 'ease' | 'linear' | 'ease-in' | 'ease-out' | 'ease-in-out' | string;
|
|
4
|
+
export { EasingFunction };
|
|
5
|
+
type EasingDefines = Record<string, EasingDefine>;
|
|
6
|
+
type EasingNameOrDefine = EasingName | EasingDefine;
|
|
7
|
+
/**
|
|
8
|
+
* 设置缓存定义
|
|
9
|
+
* @param {string} name
|
|
10
|
+
* @param {EasingDefine} define
|
|
11
|
+
*/
|
|
12
|
+
export declare function setEasing(name: string, define: EasingDefine): void;
|
|
13
|
+
/**
|
|
14
|
+
* 获取缓存定义
|
|
15
|
+
* @param {string} name
|
|
16
|
+
* @returns {EasingDefine | void}
|
|
17
|
+
*/
|
|
18
|
+
export declare function getEasing(name: string): EasingDefine | void;
|
|
19
|
+
export declare function getEasing(): EasingDefines;
|
|
20
|
+
/**
|
|
21
|
+
* 缓冲函数化,用于 js 计算缓冲进度
|
|
22
|
+
* @param {EasingNameOrDefine} [name=linear]
|
|
23
|
+
* @returns {EasingFunction}
|
|
24
|
+
*/
|
|
25
|
+
export declare function easingFunctional(name: EasingNameOrDefine): EasingFunction;
|
|
26
|
+
/**
|
|
27
|
+
* 缓冲字符化,用于 css 设置缓冲属性
|
|
28
|
+
* @param {EasingNameOrDefine} name
|
|
29
|
+
* @returns {string}
|
|
30
|
+
*/
|
|
31
|
+
export declare function easingStringify(name: EasingNameOrDefine): string;
|
|
32
|
+
//# sourceMappingURL=easing.d.ts.map
|