@ceale/util 1.14.2 → 1.15.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 +4 -1
- package/dist/cjs/index.js +12 -20
- package/dist/esm/index.js +12 -20
- package/dist/types/type.d.ts +37 -3
- package/package.json +3 -1
package/README.md
CHANGED
package/dist/cjs/index.js
CHANGED
|
@@ -37,12 +37,14 @@ __export(exports_src, {
|
|
|
37
37
|
sleepAsync: () => sleepAsync,
|
|
38
38
|
sleep: () => sleep,
|
|
39
39
|
quadraticCurve: () => quadraticCurve,
|
|
40
|
+
expand: () => expand,
|
|
40
41
|
defineEnum: () => defineEnum,
|
|
41
42
|
debounce: () => debounce,
|
|
42
43
|
cubicCurve: () => cubicCurve,
|
|
43
44
|
css: () => css,
|
|
44
45
|
assert: () => assert,
|
|
45
46
|
QuadraticBezier: () => QuadraticBezier,
|
|
47
|
+
Enum: () => Enum,
|
|
46
48
|
CubicBezier: () => CubicBezier
|
|
47
49
|
});
|
|
48
50
|
module.exports = __toCommonJS(exports_src);
|
|
@@ -422,23 +424,13 @@ var tryCatch = (parameter) => {
|
|
|
422
424
|
throw new TypeError("参数类型错误,应为 Promise 或函数");
|
|
423
425
|
};
|
|
424
426
|
// src/type.ts
|
|
425
|
-
var assert = (variable) =>
|
|
426
|
-
var
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
configurable: false
|
|
436
|
-
});
|
|
437
|
-
Object.defineProperty(obj, "includes", {
|
|
438
|
-
value: (key) => keys.includes(key),
|
|
439
|
-
writable: false,
|
|
440
|
-
enumerable: false,
|
|
441
|
-
configurable: false
|
|
442
|
-
});
|
|
443
|
-
return obj;
|
|
444
|
-
};
|
|
427
|
+
var assert = (variable) => variable;
|
|
428
|
+
var expand = (variable) => variable;
|
|
429
|
+
var defineEnum = (...keys) => keys.reduce((acc, key) => {
|
|
430
|
+
acc[key] = key;
|
|
431
|
+
return acc;
|
|
432
|
+
}, {});
|
|
433
|
+
var Enum = (keys) => ({
|
|
434
|
+
keys: () => Object.keys(keys),
|
|
435
|
+
includes: (key) => Object.keys(keys).includes(key)
|
|
436
|
+
});
|
package/dist/esm/index.js
CHANGED
|
@@ -373,26 +373,16 @@ var tryCatch = (parameter) => {
|
|
|
373
373
|
throw new TypeError("参数类型错误,应为 Promise 或函数");
|
|
374
374
|
};
|
|
375
375
|
// src/type.ts
|
|
376
|
-
var assert = (variable) =>
|
|
377
|
-
var
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
configurable: false
|
|
387
|
-
});
|
|
388
|
-
Object.defineProperty(obj, "includes", {
|
|
389
|
-
value: (key) => keys.includes(key),
|
|
390
|
-
writable: false,
|
|
391
|
-
enumerable: false,
|
|
392
|
-
configurable: false
|
|
393
|
-
});
|
|
394
|
-
return obj;
|
|
395
|
-
};
|
|
376
|
+
var assert = (variable) => variable;
|
|
377
|
+
var expand = (variable) => variable;
|
|
378
|
+
var defineEnum = (...keys) => keys.reduce((acc, key) => {
|
|
379
|
+
acc[key] = key;
|
|
380
|
+
return acc;
|
|
381
|
+
}, {});
|
|
382
|
+
var Enum = (keys) => ({
|
|
383
|
+
keys: () => Object.keys(keys),
|
|
384
|
+
includes: (key) => Object.keys(keys).includes(key)
|
|
385
|
+
});
|
|
396
386
|
export {
|
|
397
387
|
waitSync,
|
|
398
388
|
wait,
|
|
@@ -402,11 +392,13 @@ export {
|
|
|
402
392
|
sleepAsync,
|
|
403
393
|
sleep,
|
|
404
394
|
quadraticCurve,
|
|
395
|
+
expand,
|
|
405
396
|
defineEnum,
|
|
406
397
|
debounce,
|
|
407
398
|
cubicCurve,
|
|
408
399
|
css,
|
|
409
400
|
assert,
|
|
410
401
|
QuadraticBezier,
|
|
402
|
+
Enum,
|
|
411
403
|
CubicBezier
|
|
412
404
|
};
|
package/dist/types/type.d.ts
CHANGED
|
@@ -2,8 +2,16 @@
|
|
|
2
2
|
* 就地断言一个变量为指定类型
|
|
3
3
|
* @template Type 断言的类型,默认为`any`
|
|
4
4
|
* @param variable 待断言的变量
|
|
5
|
+
* @returns 传入的变量,且类型已经被断言为指定类型
|
|
5
6
|
*/
|
|
6
7
|
export declare const assert: <Type = any>(variable: any) => asserts variable is Type;
|
|
8
|
+
/**
|
|
9
|
+
* 拓展一个变量的类型
|
|
10
|
+
* @param variable 待拓展的变量
|
|
11
|
+
* @param Type 拓展的类型
|
|
12
|
+
* @returns 传入的变量,且类型被拓展为指定类型
|
|
13
|
+
*/
|
|
14
|
+
export declare const expand: <Type>(variable: any) => asserts variable is (typeof variable & Type);
|
|
7
15
|
/**
|
|
8
16
|
* 定义一个枚举类型。
|
|
9
17
|
* 返回一个枚举对象,其中每个键名与值相同。
|
|
@@ -17,7 +25,33 @@ export declare const assert: <Type = any>(variable: any) => asserts variable is
|
|
|
17
25
|
* C: "C"
|
|
18
26
|
* }
|
|
19
27
|
*/
|
|
20
|
-
export declare const defineEnum: <T extends string>(...keys: T[]) => { [K in T]: K; }
|
|
21
|
-
|
|
22
|
-
|
|
28
|
+
export declare const defineEnum: <T extends string>(...keys: T[]) => { [K in T]: K; };
|
|
29
|
+
/**
|
|
30
|
+
* 枚举工具函数,为枚举对象提供工具方法
|
|
31
|
+
* @param keys 由 defineEnum 创建的枚举对象
|
|
32
|
+
* @returns 返回一个包含`keys`、`includes`方法的对象
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* const 对吗 = defineEnum("对", "不对")
|
|
36
|
+
*
|
|
37
|
+
* // 获取所有枚举键
|
|
38
|
+
* Enum(对吗).keys() // ["对", "不对"]
|
|
39
|
+
*
|
|
40
|
+
* // 检查值是否为有效枚举值
|
|
41
|
+
* Enum(对吗).includes("对") // true
|
|
42
|
+
* Enum(对吗).includes("错") // false
|
|
43
|
+
*/
|
|
44
|
+
export declare const Enum: (keys: Record<string, string>) => {
|
|
45
|
+
keys: () => (keyof typeof keys)[];
|
|
46
|
+
includes: (key: any) => boolean;
|
|
23
47
|
};
|
|
48
|
+
/**
|
|
49
|
+
* 提取枚举的所有键组成联合类型
|
|
50
|
+
* @template E 由 defineEnum 创建的枚举对象
|
|
51
|
+
* @returns 枚举键的联合类型
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* const 对吗 = defineEnum("对", "不对")
|
|
55
|
+
* Enum<typeof 对吗> // "对" | "不对"
|
|
56
|
+
*/
|
|
57
|
+
export type EnumKeys<E> = E[keyof E];
|
package/package.json
CHANGED