@whitesev/utils 2.2.9 → 2.3.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/dist/index.amd.js +244 -4
- package/dist/index.amd.js.map +1 -1
- package/dist/index.cjs.js +244 -4
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +244 -4
- package/dist/index.esm.js.map +1 -1
- package/dist/index.iife.js +244 -4
- package/dist/index.iife.js.map +1 -1
- package/dist/index.system.js +244 -4
- package/dist/index.system.js.map +1 -1
- package/dist/index.umd.js +244 -4
- package/dist/index.umd.js.map +1 -1
- package/dist/types/src/Httpx.d.ts +1273 -1274
- package/dist/types/src/Log.d.ts +96 -97
- package/dist/types/src/Utils.d.ts +1752 -1747
- package/dist/types/src/Vue.d.ts +43 -0
- package/dist/types/src/VueObject.d.ts +110 -110
- package/package.json +2 -1
- package/src/Httpx.ts +3 -3
- package/src/Log.ts +1 -2
- package/src/Utils.ts +26 -25
- package/src/Vue.ts +241 -0
- package/src/VueObject.ts +29 -29
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
declare class RefImpl {
|
|
2
|
+
_value: any;
|
|
3
|
+
_isRef: boolean;
|
|
4
|
+
_rawValue: any;
|
|
5
|
+
_vue: Vue;
|
|
6
|
+
constructor(vueIns: Vue, rawValue: any);
|
|
7
|
+
get value(): any;
|
|
8
|
+
set value(newValue: any);
|
|
9
|
+
}
|
|
10
|
+
declare class ObjectRefImpl {
|
|
11
|
+
object: any;
|
|
12
|
+
key: any;
|
|
13
|
+
constructor(object: any, key: any);
|
|
14
|
+
get value(): any;
|
|
15
|
+
set value(newValue: any);
|
|
16
|
+
}
|
|
17
|
+
export declare class Vue {
|
|
18
|
+
private reactMap;
|
|
19
|
+
private targetMap;
|
|
20
|
+
private activeEffect;
|
|
21
|
+
constructor();
|
|
22
|
+
/**
|
|
23
|
+
* 生成一个被代理的对象
|
|
24
|
+
* @param target 需要代理的对象
|
|
25
|
+
*/
|
|
26
|
+
reactive<T extends object>(target: T): T;
|
|
27
|
+
/**
|
|
28
|
+
* 观察被reactive的对象值改变
|
|
29
|
+
* @param source 被观察的对象,这里采用函数返回对象
|
|
30
|
+
* @param changeCallBack 值改变的回调
|
|
31
|
+
*/
|
|
32
|
+
watch<T>(source: () => T, changeCallBack: (newValue: T | undefined, oldValue: T | undefined) => void): void;
|
|
33
|
+
toReactive(value: any): any;
|
|
34
|
+
ref(value: any): RefImpl;
|
|
35
|
+
toRef(object: any, key: any): ObjectRefImpl;
|
|
36
|
+
toRefs(object: any): {};
|
|
37
|
+
private trigger;
|
|
38
|
+
private triggerEffect;
|
|
39
|
+
private track;
|
|
40
|
+
private trackEffect;
|
|
41
|
+
private traversal;
|
|
42
|
+
}
|
|
43
|
+
export {};
|
|
@@ -1,110 +1,110 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
$
|
|
4
|
-
$
|
|
5
|
-
$
|
|
6
|
-
$
|
|
7
|
-
$
|
|
8
|
-
$
|
|
9
|
-
$
|
|
10
|
-
$
|
|
11
|
-
$
|
|
12
|
-
$
|
|
13
|
-
$
|
|
14
|
-
$
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
$
|
|
25
|
-
$
|
|
26
|
-
$
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
*
|
|
50
|
-
* @param
|
|
51
|
-
* @
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
*
|
|
57
|
-
* @param
|
|
58
|
-
* @
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
*
|
|
64
|
-
* @param
|
|
65
|
-
* @
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
*
|
|
86
|
-
* + next():
|
|
87
|
-
* + next(
|
|
88
|
-
* + next(
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
$
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
}
|
|
108
|
-
export declare interface HTMLVue2DivElement extends HTMLDivElement {
|
|
109
|
-
__vue__: Vue2Object;
|
|
110
|
-
}
|
|
1
|
+
export declare interface Vue2Object {
|
|
2
|
+
$attrs: any;
|
|
3
|
+
$children: Vue2Object[];
|
|
4
|
+
$createElement: (...args: any[]) => any;
|
|
5
|
+
$el: HTMLElement;
|
|
6
|
+
$listeners: any;
|
|
7
|
+
$options: any;
|
|
8
|
+
$parent: Vue2Object;
|
|
9
|
+
$refs: any;
|
|
10
|
+
$root: Vue2Object;
|
|
11
|
+
$scopedSlots: any;
|
|
12
|
+
$slots: any;
|
|
13
|
+
$store: any;
|
|
14
|
+
$vnode: any;
|
|
15
|
+
_data: any;
|
|
16
|
+
_directInactive: boolean;
|
|
17
|
+
_events: any;
|
|
18
|
+
_hasHookEvent: boolean;
|
|
19
|
+
_isBeingDestroyed: boolean;
|
|
20
|
+
_isDestroyed: boolean;
|
|
21
|
+
_isMounted: boolean;
|
|
22
|
+
_isVue: boolean;
|
|
23
|
+
$data: any;
|
|
24
|
+
$isServer: boolean;
|
|
25
|
+
$props: any;
|
|
26
|
+
$route: any & {
|
|
27
|
+
fullPath: string;
|
|
28
|
+
hash: string;
|
|
29
|
+
matched: any[];
|
|
30
|
+
meta: any;
|
|
31
|
+
name: string;
|
|
32
|
+
params: any;
|
|
33
|
+
path: string;
|
|
34
|
+
query: any;
|
|
35
|
+
};
|
|
36
|
+
$router: any & {
|
|
37
|
+
afterHooks: Function[];
|
|
38
|
+
app: Vue2Object;
|
|
39
|
+
apps: Vue2Object[];
|
|
40
|
+
beforeHooks: Function[];
|
|
41
|
+
fallback: boolean;
|
|
42
|
+
history: any & {
|
|
43
|
+
base: string;
|
|
44
|
+
current: any;
|
|
45
|
+
listeners: any[];
|
|
46
|
+
router: Vue2Object["$router"];
|
|
47
|
+
/**
|
|
48
|
+
*
|
|
49
|
+
* @param delta 访问的距离。如果 delta < 0 则后退相应数量的记录,如果 > 0 则前进。
|
|
50
|
+
* @param triggerListeners 是否应该触发连接到该历史的监听器
|
|
51
|
+
* @returns
|
|
52
|
+
*/
|
|
53
|
+
go: (delta: number, triggerListeners?: boolean) => void;
|
|
54
|
+
/**
|
|
55
|
+
*
|
|
56
|
+
* @param to 要设置的地址
|
|
57
|
+
* @param data 可选的 HistoryState 以关联该导航记录
|
|
58
|
+
* @returns
|
|
59
|
+
*/
|
|
60
|
+
push: (to: string, data?: any) => void;
|
|
61
|
+
/**
|
|
62
|
+
*
|
|
63
|
+
* @param to 要设置的地址
|
|
64
|
+
* @param data 可选的 HistoryState 以关联该导航记录
|
|
65
|
+
* @returns
|
|
66
|
+
*/
|
|
67
|
+
replace: (to: string, data?: any) => void;
|
|
68
|
+
};
|
|
69
|
+
matcher: any & {
|
|
70
|
+
addRoute: (...args: any[]) => any;
|
|
71
|
+
addRoutes: (...args: any[]) => any;
|
|
72
|
+
getRoutes: () => any;
|
|
73
|
+
match: (...args: any[]) => any;
|
|
74
|
+
};
|
|
75
|
+
mode: string;
|
|
76
|
+
resolveHooks: ((...args: any[]) => any)[];
|
|
77
|
+
currentRoute: any;
|
|
78
|
+
beforeEach: (callback: ((
|
|
79
|
+
/** 即将要进入的目标 路由对象 */
|
|
80
|
+
to: Vue2Object["$route"],
|
|
81
|
+
/** 当前导航正要离开的路由 */
|
|
82
|
+
from: Vue2Object["$route"],
|
|
83
|
+
/**
|
|
84
|
+
*
|
|
85
|
+
* + next(): 进行管道中的下一个钩子。如果全部钩子执行完了,则导航的状态就是 confirmed (确认的)。
|
|
86
|
+
* + next(false): 中断当前的导航。如果浏览器的 URL 改变了 (可能是用户手动或者浏览器后退按钮),那么 URL 地址会重置到 from 路由对应的地址。
|
|
87
|
+
* + next('/') 或者 next({ path: '/' }): 跳转到一个不同的地址。当前的导航被中断,然后进行一个新的导航。你可以向 next 传递任意位置对象,且允许设置诸如 replace: true、name: 'home' 之类的选项以及任何用在 router-link 的 to prop 或 router.push 中的选项。
|
|
88
|
+
* + next(error): (2.4.0+) 如果传入 next 的参数是一个 Error 实例,则导航会被终止且该错误会被传递给 router.onError() 注册过的回调。
|
|
89
|
+
*/
|
|
90
|
+
next: Function) => void)
|
|
91
|
+
/** 移除上一个添加的监听 */
|
|
92
|
+
| (() => void)) => void;
|
|
93
|
+
afterEach: (callback: ((
|
|
94
|
+
/** 即将要进入的目标 路由对象 */
|
|
95
|
+
to: Vue2Object["$route"],
|
|
96
|
+
/** 当前导航正要离开的路由 */
|
|
97
|
+
from: Vue2Object["$route"]) => void)
|
|
98
|
+
/** 移除上一个添加的监听 */
|
|
99
|
+
| (() => void)) => void;
|
|
100
|
+
};
|
|
101
|
+
$ssrContext: any;
|
|
102
|
+
$watch: (key: string | string[] | (() => any), handler: (this: any, newVal: any, oldVal: any) => void, options?: {
|
|
103
|
+
immediate?: boolean;
|
|
104
|
+
deep?: boolean;
|
|
105
|
+
}) => void;
|
|
106
|
+
[key: string]: any;
|
|
107
|
+
}
|
|
108
|
+
export declare interface HTMLVue2DivElement extends HTMLDivElement {
|
|
109
|
+
__vue__: Vue2Object;
|
|
110
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@whitesev/utils",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.0",
|
|
4
4
|
"description": "一个常用的工具库",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"module": "dist/index.esm.js",
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
"typescript": "^5.5.4"
|
|
45
45
|
},
|
|
46
46
|
"scripts": {
|
|
47
|
+
"dev": "rollup --config --watch",
|
|
47
48
|
"build": "rollup --config",
|
|
48
49
|
"build:all": "rollup --config"
|
|
49
50
|
}
|
package/src/Httpx.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Utils } from "./Utils";
|
|
2
2
|
import { GenerateUUID } from "./UtilsCommon";
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -98,7 +98,7 @@ export type HttpxResponseCallBackType =
|
|
|
98
98
|
export type HttpxResponseMap = {
|
|
99
99
|
arraybuffer: ArrayBuffer;
|
|
100
100
|
blob: Blob;
|
|
101
|
-
json:
|
|
101
|
+
json: any;
|
|
102
102
|
stream: ReadableStream<string>;
|
|
103
103
|
document: Document;
|
|
104
104
|
undefined: string;
|
|
@@ -1062,7 +1062,7 @@ export declare interface HttpxDetails {
|
|
|
1062
1062
|
/**
|
|
1063
1063
|
* 将该对象添加到响应的属性中,可为空
|
|
1064
1064
|
*/
|
|
1065
|
-
context?:
|
|
1065
|
+
context?: any;
|
|
1066
1066
|
/**
|
|
1067
1067
|
* 重写mimeType,可为空
|
|
1068
1068
|
*/
|
package/src/Log.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { AnyObject } from "./Utils";
|
|
2
1
|
|
|
3
2
|
/** Utils.Log的初始化配置 */
|
|
4
3
|
declare interface UtilsLogOptions {
|
|
@@ -245,7 +244,7 @@ class Log {
|
|
|
245
244
|
* @example
|
|
246
245
|
* log.table([{"名字":"example","值":"123"},{"名字":"example2","值":"345"}])
|
|
247
246
|
*/
|
|
248
|
-
table(msg:
|
|
247
|
+
table(msg: any[], color = this.#details.infoColor, otherStyle = "") {
|
|
249
248
|
if (this.#disable) return;
|
|
250
249
|
this.checkClearConsole();
|
|
251
250
|
let stack = new Error()!.stack!.split("\n");
|
package/src/Utils.ts
CHANGED
|
@@ -16,6 +16,7 @@ import type { Vue2Object } from "./VueObject";
|
|
|
16
16
|
import type { UtilsAjaxHookResult } from "./AjaxHookerType";
|
|
17
17
|
import { GenerateUUID } from "./UtilsCommon";
|
|
18
18
|
import { WindowApi, type UtilsWindowApiOption } from "./WindowApi";
|
|
19
|
+
import { Vue } from "./Vue";
|
|
19
20
|
|
|
20
21
|
export declare var unsafeWindow: Window & typeof globalThis;
|
|
21
22
|
|
|
@@ -1515,12 +1516,12 @@ class Utils {
|
|
|
1515
1516
|
* Utils.getReactObj(document.querySelector("input"))?.reactProps?.onChange({target:{value:"123"}});
|
|
1516
1517
|
*/
|
|
1517
1518
|
getReactObj(element: HTMLElement | Element): {
|
|
1518
|
-
reactFiber?:
|
|
1519
|
-
reactProps?:
|
|
1520
|
-
reactEvents?:
|
|
1521
|
-
reactEventHandlers?:
|
|
1522
|
-
reactInternalInstance?:
|
|
1523
|
-
reactContainer?:
|
|
1519
|
+
reactFiber?: any;
|
|
1520
|
+
reactProps?: any;
|
|
1521
|
+
reactEvents?: any;
|
|
1522
|
+
reactEventHandlers?: any;
|
|
1523
|
+
reactInternalInstance?: any;
|
|
1524
|
+
reactContainer?: any;
|
|
1524
1525
|
} {
|
|
1525
1526
|
let result = {};
|
|
1526
1527
|
Object.keys(element).forEach((domPropsName) => {
|
|
@@ -2343,8 +2344,8 @@ class Utils {
|
|
|
2343
2344
|
* Utils.parseObjectToArray({"工具类":"jsonToArray","return","Array"});
|
|
2344
2345
|
* > ['jsonToArray', 'Array']
|
|
2345
2346
|
**/
|
|
2346
|
-
parseObjectToArray(target:
|
|
2347
|
-
parseObjectToArray(target:
|
|
2347
|
+
parseObjectToArray(target: any): any;
|
|
2348
|
+
parseObjectToArray(target: any): any {
|
|
2348
2349
|
if (typeof target !== "object") {
|
|
2349
2350
|
throw new Error(
|
|
2350
2351
|
"Utils.parseObjectToArray 参数 target 必须为 object 类型"
|
|
@@ -3322,7 +3323,6 @@ class Utils {
|
|
|
3322
3323
|
}
|
|
3323
3324
|
/**
|
|
3324
3325
|
* 申请剪贴板权限
|
|
3325
|
-
* @returns {Promise<boolean>}
|
|
3326
3326
|
*/
|
|
3327
3327
|
requestClipboardPermission() {
|
|
3328
3328
|
return new Promise((resolve, reject) => {
|
|
@@ -3335,16 +3335,13 @@ class Utils {
|
|
|
3335
3335
|
.then((permissionStatus) => {
|
|
3336
3336
|
resolve(true);
|
|
3337
3337
|
})
|
|
3338
|
-
.catch(
|
|
3339
|
-
|
|
3340
|
-
|
|
3341
|
-
|
|
3342
|
-
|
|
3343
|
-
|
|
3344
|
-
|
|
3345
|
-
resolve(false);
|
|
3346
|
-
}
|
|
3347
|
-
);
|
|
3338
|
+
.catch((error: TypeError) => {
|
|
3339
|
+
console.error([
|
|
3340
|
+
"申请剪贴板权限失败,尝试直接写入👉",
|
|
3341
|
+
error.message ?? error.name ?? error.stack,
|
|
3342
|
+
]);
|
|
3343
|
+
resolve(false);
|
|
3344
|
+
});
|
|
3348
3345
|
} else {
|
|
3349
3346
|
resolve(false);
|
|
3350
3347
|
}
|
|
@@ -4665,11 +4662,11 @@ class Utils {
|
|
|
4665
4662
|
*
|
|
4666
4663
|
*/
|
|
4667
4664
|
waitProperty<T extends any>(
|
|
4668
|
-
checkObj:
|
|
4665
|
+
checkObj: any | (() => any),
|
|
4669
4666
|
checkPropertyName: string
|
|
4670
4667
|
): Promise<T>;
|
|
4671
4668
|
waitProperty<T extends any>(
|
|
4672
|
-
checkObj:
|
|
4669
|
+
checkObj: any | (() => any),
|
|
4673
4670
|
checkPropertyName: string
|
|
4674
4671
|
): Promise<T> {
|
|
4675
4672
|
return new Promise((resolve) => {
|
|
@@ -4703,13 +4700,13 @@ class Utils {
|
|
|
4703
4700
|
* console.log("test success set");
|
|
4704
4701
|
*/
|
|
4705
4702
|
waitPropertyByInterval<T extends any>(
|
|
4706
|
-
checkObj:
|
|
4703
|
+
checkObj: any | (() => any),
|
|
4707
4704
|
checkPropertyName: string | ((obj: any) => boolean),
|
|
4708
4705
|
intervalTimer?: number,
|
|
4709
4706
|
maxTime?: number
|
|
4710
4707
|
): Promise<T>;
|
|
4711
4708
|
waitPropertyByInterval<T extends any>(
|
|
4712
|
-
checkObj:
|
|
4709
|
+
checkObj: any | (() => any),
|
|
4713
4710
|
checkPropertyName: string | ((obj: any) => boolean),
|
|
4714
4711
|
intervalTimer: number = 250,
|
|
4715
4712
|
maxTime: number = -1
|
|
@@ -4839,13 +4836,13 @@ class Utils {
|
|
|
4839
4836
|
* > 111;
|
|
4840
4837
|
*/
|
|
4841
4838
|
watchObject(
|
|
4842
|
-
target:
|
|
4839
|
+
target: any,
|
|
4843
4840
|
propertyName: string,
|
|
4844
4841
|
getCallBack: (value: any) => void,
|
|
4845
4842
|
setCallBack: (value: any) => void
|
|
4846
4843
|
): void;
|
|
4847
4844
|
watchObject(
|
|
4848
|
-
target:
|
|
4845
|
+
target: any,
|
|
4849
4846
|
propertyName: string,
|
|
4850
4847
|
getCallBack: (value: any) => void,
|
|
4851
4848
|
setCallBack: (value: any) => void
|
|
@@ -4970,6 +4967,10 @@ class Utils {
|
|
|
4970
4967
|
* Utils.generateUUID()
|
|
4971
4968
|
*/
|
|
4972
4969
|
generateUUID = GenerateUUID;
|
|
4970
|
+
/**
|
|
4971
|
+
* 自定义的动态响应对象
|
|
4972
|
+
*/
|
|
4973
|
+
Vue = Vue;
|
|
4973
4974
|
}
|
|
4974
4975
|
|
|
4975
4976
|
let utils = new Utils();
|