@whitesev/utils 2.3.6 → 2.3.7

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.
@@ -963,7 +963,7 @@ declare class Utils {
963
963
  * Utils.parseObjectToArray({"工具类":"jsonToArray","return","Array"});
964
964
  * > ['jsonToArray', 'Array']
965
965
  **/
966
- parseObjectToArray(target: any): any;
966
+ parseObjectToArray<T extends any>(target: T): T[keyof T][];
967
967
  /**
968
968
  * 自动锁对象,用于循环判断运行的函数,在循环外new后使用,注意,如果函数内部存在异步操作,需要使用await
969
969
  * @example
@@ -1014,7 +1014,7 @@ declare class Utils {
1014
1014
  * Utils.mergeArrayToString([{"name":"数组内数据部分字段合并成字符串->"},{"name":"mergeToString"}],(item)=>{return item["name"]});
1015
1015
  * > '数组内数据部分字段合并成字符串->mergeToString'
1016
1016
  **/
1017
- mergeArrayToString(data: any[], handleFunc?: (val: any) => any): string;
1017
+ mergeArrayToString<T extends any>(data: T[], handleFunc?: ((val: T) => T) | keyof T): string;
1018
1018
  /**
1019
1019
  * 监听页面元素改变并处理
1020
1020
  * @param target 需要监听的元素,如果不存在,可以等待它出现
@@ -1142,7 +1142,7 @@ declare class Utils {
1142
1142
  * Utils.parseInt(["aaaaaaa"],"aa");
1143
1143
  * > NaN
1144
1144
  **/
1145
- parseInt(matchList?: any[], defaultValue?: number): number;
1145
+ parseInt(matchList?: any[] | null | undefined | RegExpMatchArray, defaultValue?: number): number;
1146
1146
  /**
1147
1147
  * blob转File对象
1148
1148
  * @param blobUrl 需要转换的blob的链接
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whitesev/utils",
3
- "version": "2.3.6",
3
+ "version": "2.3.7",
4
4
  "description": "一个常用的工具库",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.esm.js",
package/src/Utils.ts CHANGED
@@ -53,7 +53,7 @@ class Utils {
53
53
  this.windowApi = new WindowApi(option);
54
54
  }
55
55
  /** 版本号 */
56
- version = "2024.10.13";
56
+ version = "2024.10.19";
57
57
 
58
58
  /**
59
59
  * 在页面中增加style元素,如果html节点存在子节点,添加子节点第一个,反之,添加到html节点的子节点最后一个
@@ -2378,16 +2378,16 @@ class Utils {
2378
2378
  * Utils.parseObjectToArray({"工具类":"jsonToArray","return","Array"});
2379
2379
  * > ['jsonToArray', 'Array']
2380
2380
  **/
2381
- parseObjectToArray(target: any): any;
2382
- parseObjectToArray(target: any): any {
2381
+ parseObjectToArray<T extends any>(target: T): T[keyof T][];
2382
+ parseObjectToArray<T extends any>(target: T) {
2383
2383
  if (typeof target !== "object") {
2384
2384
  throw new Error(
2385
2385
  "Utils.parseObjectToArray 参数 target 必须为 object 类型"
2386
2386
  );
2387
2387
  }
2388
- let result: any[] = [];
2389
- Object.keys(target).forEach(function (keyName) {
2390
- result = result.concat(target[keyName]);
2388
+ let result: T[keyof T][] = [];
2389
+ Object.keys(target!).forEach(function (keyName) {
2390
+ result = result.concat(target![keyName as any as keyof T]);
2391
2391
  });
2392
2392
  return result;
2393
2393
  }
@@ -2441,8 +2441,14 @@ class Utils {
2441
2441
  * Utils.mergeArrayToString([{"name":"数组内数据部分字段合并成字符串->"},{"name":"mergeToString"}],(item)=>{return item["name"]});
2442
2442
  * > '数组内数据部分字段合并成字符串->mergeToString'
2443
2443
  **/
2444
- mergeArrayToString(data: any[], handleFunc?: (val: any) => any): string;
2445
- mergeArrayToString(data: any[], handleFunc?: (val: any) => any): string {
2444
+ mergeArrayToString<T extends any>(
2445
+ data: T[],
2446
+ handleFunc?: ((val: T) => T) | keyof T
2447
+ ): string;
2448
+ mergeArrayToString<T extends any>(
2449
+ data: T[],
2450
+ handleFunc?: ((val: T) => T) | keyof T
2451
+ ): string {
2446
2452
  if (!(data instanceof Array)) {
2447
2453
  throw new Error("Utils.mergeArrayToString 参数 data 必须为 Array 类型");
2448
2454
  }
@@ -2457,7 +2463,7 @@ class Utils {
2457
2463
  });
2458
2464
  } else {
2459
2465
  data.forEach((item) => {
2460
- Object.values(item)
2466
+ Object.values(item as any)
2461
2467
  .filter((item2) => typeof item2 === "string")
2462
2468
  .forEach((item3) => {
2463
2469
  content += item3;
@@ -2914,7 +2920,10 @@ class Utils {
2914
2920
  * Utils.parseInt(["aaaaaaa"],"aa");
2915
2921
  * > NaN
2916
2922
  **/
2917
- parseInt(matchList?: any[], defaultValue?: number): number;
2923
+ parseInt(
2924
+ matchList?: any[] | null | undefined | RegExpMatchArray,
2925
+ defaultValue?: number
2926
+ ): number;
2918
2927
  parseInt(matchList: any[] = [], defaultValue = 0): number {
2919
2928
  if (matchList == null) {
2920
2929
  return parseInt(defaultValue.toString());