wenay-common 1.0.149 → 1.0.152
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/lib/Common/Listen.d.ts +23 -2
- package/lib/Common/Listen.js +55 -6
- package/lib/Common/node_console.d.ts +1 -0
- package/lib/Common/node_console.js +15 -1
- package/lib/tsconfig.json +6 -0
- package/package.json +1 -1
package/lib/Common/Listen.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
type tr222<T extends any[]> = (...r: T) => void;
|
|
2
|
-
export declare function funcListenCallback<T extends any[]>(a: (e: tr222<T>) => (void | (() => void)), event?: (type: "add" | "remove", count: number) => void): {
|
|
2
|
+
export declare function funcListenCallback<T extends any[]>(a: (e: tr222<T>) => (void | (() => void)), event?: (type: "add" | "remove", count: number, api: ReturnType<typeof funcListenCallback<T>>) => void): {
|
|
3
3
|
lastUpdate: () => Date | null;
|
|
4
4
|
lastUpdateMs: () => number | null;
|
|
5
5
|
isRun: () => boolean;
|
|
@@ -9,12 +9,33 @@ export declare function funcListenCallback<T extends any[]>(a: (e: tr222<T>) =>
|
|
|
9
9
|
removeListen: (a: (tr222<T>) | null) => void;
|
|
10
10
|
count: () => number;
|
|
11
11
|
};
|
|
12
|
+
type tr2<T extends (...a: any[]) => any> = (a: Parameters<T>[0]) => void;
|
|
13
|
+
type t1<T extends any[] = any[]> = ReturnType<typeof funcListenCallback<T>>;
|
|
14
|
+
type tt = tr2<Parameters<t1["addListen"]>[0]>;
|
|
15
|
+
export declare function funcListenBySocket3<Z extends any[] = any[]>(e: t1<Z>, z: {
|
|
16
|
+
readonly status?: () => boolean;
|
|
17
|
+
readonly setEventClose?: (eventClose: () => any) => any;
|
|
18
|
+
}): {
|
|
19
|
+
callback: (z: (a: Z[0]) => void) => void;
|
|
20
|
+
removeCallback: () => boolean;
|
|
21
|
+
};
|
|
22
|
+
export declare function funcListenBySocket2<Z extends any[] = any[]>(e: t1<Z>, { stop, setEventClose, status, paramsModify }: {
|
|
23
|
+
readonly status?: () => boolean;
|
|
24
|
+
readonly setEventClose?: (eventClose: () => any) => any;
|
|
25
|
+
readonly stop?: (x: tt) => any;
|
|
26
|
+
readonly paramsModify?: (...e: Parameters<tt>) => any[];
|
|
27
|
+
}): {
|
|
28
|
+
callback: (z: (a: Z[0]) => void) => void;
|
|
29
|
+
removeCallback: () => boolean;
|
|
30
|
+
};
|
|
12
31
|
export declare function funcListenBySocket<Z extends any[] = any[]>(e: ReturnType<typeof funcListenCallback<Z>>, status: () => boolean): {
|
|
13
32
|
callback: (z: (param: Parameters<Parameters<typeof e.addListen>[0]>[0]) => void) => void;
|
|
14
33
|
removeCallback: () => boolean;
|
|
15
34
|
};
|
|
16
35
|
export declare const funcListenBySocket1: typeof funcListenBySocket;
|
|
17
|
-
export declare function UseListen<T extends any[]>(
|
|
36
|
+
export declare function UseListen<T extends any[]>(data?: {
|
|
37
|
+
event?: Parameters<typeof funcListenCallback<T>>[1];
|
|
38
|
+
}): readonly [(...e: T) => void | undefined, {
|
|
18
39
|
lastUpdate: () => Date | null;
|
|
19
40
|
lastUpdateMs: () => number | null;
|
|
20
41
|
isRun: () => boolean;
|
package/lib/Common/Listen.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PromiseArrayListen = exports.UseListen = exports.funcListenBySocket1 = exports.funcListenBySocket = exports.funcListenCallback = void 0;
|
|
3
|
+
exports.PromiseArrayListen = exports.UseListen = exports.funcListenBySocket1 = exports.funcListenBySocket = exports.funcListenBySocket2 = exports.funcListenBySocket3 = exports.funcListenCallback = void 0;
|
|
4
4
|
function funcListenCallback(a, event) {
|
|
5
5
|
const obj = new Map;
|
|
6
6
|
let close = null;
|
|
@@ -9,7 +9,7 @@ function funcListenCallback(a, event) {
|
|
|
9
9
|
lastUpdate = Date.now();
|
|
10
10
|
obj.forEach(e => e(...z));
|
|
11
11
|
})) ?? null);
|
|
12
|
-
|
|
12
|
+
const api = {
|
|
13
13
|
lastUpdate: () => lastUpdate != null ? new Date(lastUpdate) : lastUpdate,
|
|
14
14
|
lastUpdateMs: () => lastUpdate,
|
|
15
15
|
isRun: () => close != null,
|
|
@@ -17,16 +17,65 @@ function funcListenCallback(a, event) {
|
|
|
17
17
|
close: () => { close?.(); close = null; },
|
|
18
18
|
addListen: (a) => {
|
|
19
19
|
obj.set(a, a);
|
|
20
|
-
event?.("add", obj.size);
|
|
20
|
+
event?.("add", obj.size, api);
|
|
21
21
|
},
|
|
22
22
|
removeListen: (a) => {
|
|
23
23
|
obj.delete(a);
|
|
24
|
-
event?.("remove", obj.size);
|
|
24
|
+
event?.("remove", obj.size, api);
|
|
25
25
|
},
|
|
26
26
|
count: () => obj.size
|
|
27
27
|
};
|
|
28
|
+
return api;
|
|
28
29
|
}
|
|
29
30
|
exports.funcListenCallback = funcListenCallback;
|
|
31
|
+
function funcListenBySocket3(e, z) {
|
|
32
|
+
return funcListenBySocket2(e, { ...z, stop: x => x("___STOP"), paramsModify: (...e) => [e[0]] });
|
|
33
|
+
}
|
|
34
|
+
exports.funcListenBySocket3 = funcListenBySocket3;
|
|
35
|
+
function funcListenBySocket2(e, { stop, setEventClose, status, paramsModify }) {
|
|
36
|
+
const { addListen, removeListen, count } = e;
|
|
37
|
+
const x = { x: null };
|
|
38
|
+
let r2 = null;
|
|
39
|
+
const removeCallback = () => {
|
|
40
|
+
if (x.x) {
|
|
41
|
+
stop?.(x.x);
|
|
42
|
+
x.x = null;
|
|
43
|
+
}
|
|
44
|
+
if (r2)
|
|
45
|
+
removeListen(r2);
|
|
46
|
+
return true;
|
|
47
|
+
};
|
|
48
|
+
return {
|
|
49
|
+
callback: (z) => {
|
|
50
|
+
if (x.x)
|
|
51
|
+
stop?.(x.x);
|
|
52
|
+
if (r2)
|
|
53
|
+
removeListen(r2);
|
|
54
|
+
x.x = z;
|
|
55
|
+
if (!z) {
|
|
56
|
+
console.log(z);
|
|
57
|
+
console.log(e.count());
|
|
58
|
+
console.trace();
|
|
59
|
+
}
|
|
60
|
+
let ta;
|
|
61
|
+
ta = z;
|
|
62
|
+
if (paramsModify) {
|
|
63
|
+
ta = (...a) => {
|
|
64
|
+
const params = paramsModify(...a);
|
|
65
|
+
z(...params);
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
if (status)
|
|
69
|
+
r2 = (a) => { status() ? ta(a) : removeListen(r2); };
|
|
70
|
+
else
|
|
71
|
+
r2 = (a) => ta(a);
|
|
72
|
+
addListen(r2);
|
|
73
|
+
setEventClose?.(() => removeCallback());
|
|
74
|
+
},
|
|
75
|
+
removeCallback
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
exports.funcListenBySocket2 = funcListenBySocket2;
|
|
30
79
|
function funcListenBySocket(e, status) {
|
|
31
80
|
const { addListen, removeListen, count } = e;
|
|
32
81
|
let x = null;
|
|
@@ -59,9 +108,9 @@ function funcListenBySocket(e, status) {
|
|
|
59
108
|
}
|
|
60
109
|
exports.funcListenBySocket = funcListenBySocket;
|
|
61
110
|
exports.funcListenBySocket1 = funcListenBySocket;
|
|
62
|
-
function UseListen() {
|
|
111
|
+
function UseListen(data) {
|
|
63
112
|
let t = null;
|
|
64
|
-
const a = funcListenCallback((e) => { t = e; });
|
|
113
|
+
const a = funcListenCallback((e) => { t = e; }, data?.event);
|
|
65
114
|
a.run();
|
|
66
115
|
return [(...e) => t?.(...e), a];
|
|
67
116
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.__LineFile = exports.disable = exports.enable = void 0;
|
|
3
|
+
exports.__LineFiles = exports.__LineFile = exports.disable = exports.enable = void 0;
|
|
4
4
|
let _enabled = false;
|
|
5
5
|
function enable(flag = true) { _enabled = flag; }
|
|
6
6
|
exports.enable = enable;
|
|
@@ -74,3 +74,17 @@ function __LineFile(lvl = 0) {
|
|
|
74
74
|
return `${e.getFileName()}:${e.getLineNumber()}:${e.getColumnNumber()} ` + e.getFunctionName();
|
|
75
75
|
}
|
|
76
76
|
exports.__LineFile = __LineFile;
|
|
77
|
+
function __LineFiles(lvlStart = 0, lvlEnd = 5) {
|
|
78
|
+
if (!_enabled) {
|
|
79
|
+
return "";
|
|
80
|
+
}
|
|
81
|
+
const originalPrepareStackTrace = Error.prepareStackTrace;
|
|
82
|
+
Error.prepareStackTrace = (_, stack) => stack;
|
|
83
|
+
let e = new Error().stack.slice(lvlStart + 1, lvlEnd);
|
|
84
|
+
if (wrapCallSite)
|
|
85
|
+
e = e.map(e => wrapCallSite(e));
|
|
86
|
+
const msgs = e.map(e => `${e.getFileName()}:${e.getLineNumber()}:${e.getColumnNumber()} ` + e.getFunctionName());
|
|
87
|
+
Error.prepareStackTrace = originalPrepareStackTrace;
|
|
88
|
+
return msgs;
|
|
89
|
+
}
|
|
90
|
+
exports.__LineFiles = __LineFiles;
|