zeed 0.25.0 → 0.25.1
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/browser/localstorage.spec.cjs +5 -5
- package/dist/browser/localstorage.spec.js +5 -5
- package/dist/{chunk-6UYYLWYZ.js → chunk-2TKBSFBA.js} +4 -4
- package/dist/{chunk-D46UZDEX.js → chunk-3V5PWXL6.js} +2 -2
- package/dist/{chunk-R4I2HR4S.js → chunk-4C3OMNSX.js} +6 -2
- package/dist/{chunk-R4I2HR4S.js.map → chunk-4C3OMNSX.js.map} +1 -1
- package/dist/{chunk-GRFP6IKE.cjs → chunk-B5PIG6YL.cjs} +5 -1
- package/dist/chunk-B5PIG6YL.cjs.map +1 -0
- package/dist/{chunk-G7WANTEK.cjs → chunk-CRJXATRH.cjs} +8 -8
- package/dist/{chunk-G7WANTEK.cjs.map → chunk-CRJXATRH.cjs.map} +1 -1
- package/dist/{chunk-EAM7QSTF.js → chunk-DYTWZLOR.js} +2 -2
- package/dist/{chunk-FKHI7ASJ.cjs → chunk-EIBIA44Q.cjs} +5 -5
- package/dist/{chunk-FKHI7ASJ.cjs.map → chunk-EIBIA44Q.cjs.map} +1 -1
- package/dist/{chunk-4L3PWYRW.js → chunk-HDSJYWGU.js} +2 -2
- package/dist/{chunk-IQEW5KTI.cjs → chunk-L3IADASD.cjs} +3 -3
- package/dist/{chunk-IQEW5KTI.cjs.map → chunk-L3IADASD.cjs.map} +1 -1
- package/dist/{chunk-SVLYETPO.cjs → chunk-MUYEMHP5.cjs} +6 -2
- package/dist/chunk-MUYEMHP5.cjs.map +1 -0
- package/dist/{chunk-J5SM53KP.cjs → chunk-N7BCGFNY.cjs} +5 -5
- package/dist/{chunk-J5SM53KP.cjs.map → chunk-N7BCGFNY.cjs.map} +1 -1
- package/dist/{chunk-LT2F6LQX.cjs → chunk-ODTID2TC.cjs} +3 -3
- package/dist/{chunk-LT2F6LQX.cjs.map → chunk-ODTID2TC.cjs.map} +1 -1
- package/dist/{chunk-KGHBDTFF.js → chunk-QGUPJAJO.js} +5 -1
- package/dist/chunk-QGUPJAJO.js.map +1 -0
- package/dist/{chunk-KHDAGCHA.cjs → chunk-SSXUFY3A.cjs} +3 -3
- package/dist/{chunk-KHDAGCHA.cjs.map → chunk-SSXUFY3A.cjs.map} +1 -1
- package/dist/{chunk-PTOT32QZ.js → chunk-WQJ47BZ7.js} +2 -2
- package/dist/{chunk-VCSRBH2M.js → chunk-YBJDAY56.js} +2 -2
- package/dist/common/bin/index.spec.cjs +5 -5
- package/dist/common/bin/index.spec.js +5 -5
- package/dist/common/crypto.spec.cjs +5 -5
- package/dist/common/crypto.spec.js +5 -5
- package/dist/common/data/bin.spec.cjs +1 -1
- package/dist/common/data/bin.spec.js +1 -1
- package/dist/common/data/convert.cjs +5 -2
- package/dist/common/data/convert.cjs.map +1 -1
- package/dist/common/data/convert.js +4 -1
- package/dist/common/data/convert.spec.cjs +27 -24
- package/dist/common/data/convert.spec.cjs.map +1 -1
- package/dist/common/data/convert.spec.js +4 -1
- package/dist/common/data/convert.spec.js.map +1 -1
- package/dist/common/data/deep.spec.cjs +1 -1
- package/dist/common/data/deep.spec.js +1 -1
- package/dist/common/data/index.cjs +2 -2
- package/dist/common/data/index.js +1 -1
- package/dist/common/data/sorted.spec.cjs +5 -5
- package/dist/common/data/sorted.spec.js +5 -5
- package/dist/common/dispose-defer.spec.cjs +1 -1
- package/dist/common/dispose-defer.spec.js +1 -1
- package/dist/common/index.cjs +6 -6
- package/dist/common/index.js +5 -5
- package/dist/common/log/index.cjs +2 -2
- package/dist/common/log/index.js +1 -1
- package/dist/common/log/log-memory.cjs +2 -2
- package/dist/common/log/log-memory.js +1 -1
- package/dist/common/log/log-memory.spec.cjs +2 -2
- package/dist/common/log/log-memory.spec.js +1 -1
- package/dist/common/msg/channel.spec.cjs +1 -1
- package/dist/common/msg/channel.spec.js +1 -1
- package/dist/common/msg/encoder.spec.cjs +5 -5
- package/dist/common/msg/encoder.spec.js +5 -5
- package/dist/common/msg/index.cjs +4 -3
- package/dist/common/msg/index.cjs.map +1 -1
- package/dist/common/msg/index.js +3 -2
- package/dist/common/msg/messages.cjs +4 -3
- package/dist/common/msg/messages.cjs.map +1 -1
- package/dist/common/msg/messages.js +3 -2
- package/dist/common/msg/messages.spec.cjs +5 -4
- package/dist/common/msg/messages.spec.cjs.map +1 -1
- package/dist/common/msg/messages.spec.js +3 -2
- package/dist/common/msg/messages.spec.js.map +1 -1
- package/dist/common/schema/args.cjs +3 -3
- package/dist/common/schema/args.js +2 -2
- package/dist/common/schema/args.spec.cjs +4 -4
- package/dist/common/schema/args.spec.js +2 -2
- package/dist/common/schema/env.cjs +3 -3
- package/dist/common/schema/env.js +2 -2
- package/dist/common/schema/env.spec.cjs +5 -5
- package/dist/common/schema/env.spec.js +2 -2
- package/dist/common/schema/index.cjs +4 -4
- package/dist/common/schema/index.js +3 -3
- package/dist/common/schema/schema.spec.cjs +1 -1
- package/dist/common/schema/schema.spec.js +1 -1
- package/dist/index.all.cjs +8 -8
- package/dist/index.all.js +7 -7
- package/dist/index.browser.cjs +6 -6
- package/dist/index.browser.js +5 -5
- package/dist/index.node.cjs +9 -9
- package/dist/index.node.js +8 -8
- package/dist/node/index.cjs +5 -4
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +4 -3
- package/dist/node/log/index.cjs +5 -4
- package/dist/node/log/index.cjs.map +1 -1
- package/dist/node/log/index.js +4 -3
- package/dist/node/log/log-context-node.cjs +6 -5
- package/dist/node/log/log-context-node.cjs.map +1 -1
- package/dist/node/log/log-context-node.js +5 -4
- package/dist/node/log/log-file.cjs +4 -3
- package/dist/node/log/log-file.cjs.map +1 -1
- package/dist/node/log/log-file.js +3 -2
- package/dist/node/log/log-file.spec.cjs +4 -4
- package/dist/node/log/log-file.spec.js +3 -3
- package/dist/node/log/log-node.cjs +4 -3
- package/dist/node/log/log-node.cjs.map +1 -1
- package/dist/node/log/log-node.js +3 -2
- package/dist/node/log/log-node.spec.cjs +7 -7
- package/dist/node/log/log-node.spec.js +3 -3
- package/package.json +1 -1
- package/dist/chunk-GRFP6IKE.cjs.map +0 -1
- package/dist/chunk-KGHBDTFF.js.map +0 -1
- package/dist/chunk-SVLYETPO.cjs.map +0 -1
- /package/dist/{chunk-6UYYLWYZ.js.map → chunk-2TKBSFBA.js.map} +0 -0
- /package/dist/{chunk-D46UZDEX.js.map → chunk-3V5PWXL6.js.map} +0 -0
- /package/dist/{chunk-EAM7QSTF.js.map → chunk-DYTWZLOR.js.map} +0 -0
- /package/dist/{chunk-4L3PWYRW.js.map → chunk-HDSJYWGU.js.map} +0 -0
- /package/dist/{chunk-PTOT32QZ.js.map → chunk-WQJ47BZ7.js.map} +0 -0
- /package/dist/{chunk-VCSRBH2M.js.map → chunk-YBJDAY56.js.map} +0 -0
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
require('../chunk-Q2SNIYQS.cjs');
|
|
3
3
|
require('../chunk-HHIITKT4.cjs');
|
|
4
4
|
require('../chunk-XKOTJK3W.cjs');
|
|
5
|
-
require('../chunk-
|
|
6
|
-
require('../chunk-
|
|
5
|
+
require('../chunk-L3IADASD.cjs');
|
|
6
|
+
require('../chunk-EIBIA44Q.cjs');
|
|
7
7
|
require('../chunk-2Q4Q3VX6.cjs');
|
|
8
8
|
require('../chunk-HN6JW3BL.cjs');
|
|
9
9
|
require('../chunk-HEYAOG5D.cjs');
|
|
10
10
|
require('../chunk-O33QJMGR.cjs');
|
|
11
|
-
require('../chunk-
|
|
11
|
+
require('../chunk-ODTID2TC.cjs');
|
|
12
12
|
require('../chunk-GAB4VEWK.cjs');
|
|
13
13
|
require('../chunk-2P6TEB5M.cjs');
|
|
14
14
|
require('../chunk-DR4WHI2S.cjs');
|
|
@@ -40,7 +40,7 @@ require('../chunk-V3MFEGRK.cjs');
|
|
|
40
40
|
require('../chunk-2UTQQDPY.cjs');
|
|
41
41
|
require('../chunk-SFUIGVPA.cjs');
|
|
42
42
|
require('../chunk-X23ZSPZC.cjs');
|
|
43
|
-
require('../chunk-
|
|
43
|
+
require('../chunk-B5PIG6YL.cjs');
|
|
44
44
|
require('../chunk-TUWUD5A6.cjs');
|
|
45
45
|
require('../chunk-3TNVJY4F.cjs');
|
|
46
46
|
require('../chunk-MJ7L4G3V.cjs');
|
|
@@ -52,7 +52,7 @@ require('../chunk-MPD2DJAD.cjs');
|
|
|
52
52
|
require('../chunk-7BEQHGH5.cjs');
|
|
53
53
|
require('../chunk-FLTWM56V.cjs');
|
|
54
54
|
require('../chunk-4B2XCWGL.cjs');
|
|
55
|
-
require('../chunk-
|
|
55
|
+
require('../chunk-MUYEMHP5.cjs');
|
|
56
56
|
require('../chunk-5CIFX7O6.cjs');
|
|
57
57
|
require('../chunk-SSHZQKW7.cjs');
|
|
58
58
|
require('../chunk-NU2LARFE.cjs');
|
|
@@ -2,13 +2,13 @@ import "../chunk-W7SXHTUN.js";
|
|
|
2
2
|
import "../chunk-UMUHNSGZ.js";
|
|
3
3
|
import "../chunk-WQPRL26Y.js";
|
|
4
4
|
import "../chunk-6NLXLMPR.js";
|
|
5
|
-
import "../chunk-
|
|
6
|
-
import "../chunk-
|
|
5
|
+
import "../chunk-HDSJYWGU.js";
|
|
6
|
+
import "../chunk-WQJ47BZ7.js";
|
|
7
7
|
import "../chunk-HIX6EHLQ.js";
|
|
8
8
|
import "../chunk-RSB2DP4K.js";
|
|
9
9
|
import "../chunk-HOPWS6D4.js";
|
|
10
10
|
import "../chunk-OWFULLVR.js";
|
|
11
|
-
import "../chunk-
|
|
11
|
+
import "../chunk-YBJDAY56.js";
|
|
12
12
|
import "../chunk-TZ5CXZYL.js";
|
|
13
13
|
import "../chunk-2AXVHLEB.js";
|
|
14
14
|
import "../chunk-O7MQBX35.js";
|
|
@@ -40,7 +40,7 @@ import "../chunk-SZJLXMYP.js";
|
|
|
40
40
|
import "../chunk-GKKLBSFA.js";
|
|
41
41
|
import "../chunk-RNL46FQ3.js";
|
|
42
42
|
import "../chunk-MWUFUBY5.js";
|
|
43
|
-
import "../chunk-
|
|
43
|
+
import "../chunk-QGUPJAJO.js";
|
|
44
44
|
import "../chunk-X56GIAWQ.js";
|
|
45
45
|
import "../chunk-FLFB2K34.js";
|
|
46
46
|
import "../chunk-264HKVNG.js";
|
|
@@ -52,7 +52,7 @@ import "../chunk-FL5CT6MC.js";
|
|
|
52
52
|
import "../chunk-LAWEUL6N.js";
|
|
53
53
|
import "../chunk-3YFOOUF5.js";
|
|
54
54
|
import "../chunk-TSCDX4AS.js";
|
|
55
|
-
import "../chunk-
|
|
55
|
+
import "../chunk-4C3OMNSX.js";
|
|
56
56
|
import "../chunk-D6B6MYVG.js";
|
|
57
57
|
import "../chunk-NEFIJY6U.js";
|
|
58
58
|
import "../chunk-EW6FHLFK.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
LoggerFileHandler
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3V5PWXL6.js";
|
|
4
4
|
import {
|
|
5
5
|
LoggerNodeHandler
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-DYTWZLOR.js";
|
|
7
7
|
import {
|
|
8
8
|
toPath
|
|
9
9
|
} from "./chunk-YIU6EKNX.js";
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "./chunk-6Y6SHAML.js";
|
|
13
13
|
import {
|
|
14
14
|
valueToBoolean
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-QGUPJAJO.js";
|
|
16
16
|
import {
|
|
17
17
|
getGlobalLogger
|
|
18
18
|
} from "./chunk-XYJV3SSU.js";
|
|
@@ -44,4 +44,4 @@ export {
|
|
|
44
44
|
Logger,
|
|
45
45
|
LoggerFromConfig
|
|
46
46
|
};
|
|
47
|
-
//# sourceMappingURL=chunk-
|
|
47
|
+
//# sourceMappingURL=chunk-2TKBSFBA.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
renderMessages
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-QGUPJAJO.js";
|
|
4
4
|
import {
|
|
5
5
|
useLevelFilter,
|
|
6
6
|
useNamespaceFilter
|
|
@@ -66,4 +66,4 @@ function LoggerFileHandler(path, opt = {}) {
|
|
|
66
66
|
export {
|
|
67
67
|
LoggerFileHandler
|
|
68
68
|
};
|
|
69
|
-
//# sourceMappingURL=chunk-
|
|
69
|
+
//# sourceMappingURL=chunk-3V5PWXL6.js.map
|
|
@@ -25,7 +25,11 @@ function LoggerMemoryHandler(opt) {
|
|
|
25
25
|
if (!matchesNamespace(msg.name))
|
|
26
26
|
return;
|
|
27
27
|
msg.timestamp ?? (msg.timestamp = getTimestamp());
|
|
28
|
-
const m = objectPlain(msg, {
|
|
28
|
+
const m = objectPlain(msg, {
|
|
29
|
+
maxDepth,
|
|
30
|
+
errorTrace,
|
|
31
|
+
keepAsIs: (v) => v instanceof Error
|
|
32
|
+
});
|
|
29
33
|
if (compact === true)
|
|
30
34
|
messages.push([m.timestamp, m.level, m.name, ...m.messages]);
|
|
31
35
|
else
|
|
@@ -41,4 +45,4 @@ export {
|
|
|
41
45
|
logMessageFromCompact,
|
|
42
46
|
LoggerMemoryHandler
|
|
43
47
|
};
|
|
44
|
-
//# sourceMappingURL=chunk-
|
|
48
|
+
//# sourceMappingURL=chunk-4C3OMNSX.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/log/log-memory.ts"],"sourcesContent":["import type { LogHandler, LogHandlerOptions, LogMessage, LogMessageCompact } from './log-base'\nimport { objectPlain } from '../data/object'\nimport { getTimestamp } from '../time'\nimport { useLevelFilter, useNamespaceFilter } from './log-filter'\n\nexport function logMessageFromCompact(m: LogMessageCompact): LogMessage {\n const [timestamp, level, name, ...messages] = m\n return { timestamp, level, name, messages }\n}\n\n/** Collect messages in a list. */\nexport function LoggerMemoryHandler(\n opt: LogHandlerOptions & {\n compact?: boolean\n messages: LogMessageCompact[] | LogMessage[]\n errorTrace?: boolean\n limit?: number\n maxDepth?: number\n },\n): LogHandler {\n const { level = undefined, filter = undefined, compact = false, messages = [], errorTrace = false, maxDepth = 20 } = opt\n const matchesNamespace = useNamespaceFilter(filter)\n const matchesLevel = useLevelFilter(level)\n\n let counter = opt.limit ?? Number.POSITIVE_INFINITY\n\n return (msg: LogMessage) => {\n if (!matchesLevel(msg.level))\n return\n if (!matchesNamespace(msg.name))\n return\n\n msg.timestamp ??= getTimestamp()\n\n const m = objectPlain(msg, {
|
|
1
|
+
{"version":3,"sources":["../src/common/log/log-memory.ts"],"sourcesContent":["import type { LogHandler, LogHandlerOptions, LogMessage, LogMessageCompact } from './log-base'\nimport { objectPlain } from '../data/object'\nimport { getTimestamp } from '../time'\nimport { useLevelFilter, useNamespaceFilter } from './log-filter'\n\nexport function logMessageFromCompact(m: LogMessageCompact): LogMessage {\n const [timestamp, level, name, ...messages] = m\n return { timestamp, level, name, messages }\n}\n\n/** Collect messages in a list. */\nexport function LoggerMemoryHandler(\n opt: LogHandlerOptions & {\n compact?: boolean\n messages: LogMessageCompact[] | LogMessage[]\n errorTrace?: boolean\n limit?: number\n maxDepth?: number\n },\n): LogHandler {\n const { level = undefined, filter = undefined, compact = false, messages = [], errorTrace = false, maxDepth = 20 } = opt\n const matchesNamespace = useNamespaceFilter(filter)\n const matchesLevel = useLevelFilter(level)\n\n let counter = opt.limit ?? Number.POSITIVE_INFINITY\n\n return (msg: LogMessage) => {\n if (!matchesLevel(msg.level))\n return\n if (!matchesNamespace(msg.name))\n return\n\n msg.timestamp ??= getTimestamp()\n\n const m = objectPlain(msg, {\n maxDepth,\n errorTrace,\n keepAsIs: v => v instanceof Error,\n })\n\n if (compact === true)\n (messages as LogMessageCompact[]).push([m.timestamp, m.level, m.name, ...m.messages])\n else\n (messages as LogMessage[]).push(m)\n\n if (counter <= 0)\n messages.shift()\n else\n --counter\n }\n}\n"],"mappings":";;;;;;;;;;;;AAKO,SAAS,sBAAsB,GAAkC;AACtE,QAAM,CAAC,WAAW,OAAO,MAAM,GAAG,QAAQ,IAAI;AAC9C,SAAO,EAAE,WAAW,OAAO,MAAM,SAAS;AAC5C;AAGO,SAAS,oBACd,KAOY;AACZ,QAAM,EAAE,QAAQ,QAAW,SAAS,QAAW,UAAU,OAAO,WAAW,CAAC,GAAG,aAAa,OAAO,WAAW,GAAG,IAAI;AACrH,QAAM,mBAAmB,mBAAmB,MAAM;AAClD,QAAM,eAAe,eAAe,KAAK;AAEzC,MAAI,UAAU,IAAI,SAAS,OAAO;AAElC,SAAO,CAAC,QAAoB;AAC1B,QAAI,CAAC,aAAa,IAAI,KAAK;AACzB;AACF,QAAI,CAAC,iBAAiB,IAAI,IAAI;AAC5B;AAEF,QAAI,cAAJ,IAAI,YAAc,aAAa;AAE/B,UAAM,IAAI,YAAY,KAAK;AAAA,MACzB;AAAA,MACA;AAAA,MACA,UAAU,OAAK,aAAa;AAAA,IAC9B,CAAC;AAED,QAAI,YAAY;AACd,MAAC,SAAiC,KAAK,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,EAAE,QAAQ,CAAC;AAAA;AAEpF,MAAC,SAA0B,KAAK,CAAC;AAEnC,QAAI,WAAW;AACb,eAAS,MAAM;AAAA;AAEf,QAAE;AAAA,EACN;AACF;","names":[]}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
|
|
2
2
|
|
|
3
|
+
var _chunkSSHZQKW7cjs = require('./chunk-SSHZQKW7.cjs');
|
|
4
|
+
|
|
5
|
+
|
|
3
6
|
var _chunkEZB4PXZZcjs = require('./chunk-EZB4PXZZ.cjs');
|
|
4
7
|
|
|
5
8
|
// src/common/data/convert.ts
|
|
@@ -80,6 +83,7 @@ ${_chunkEZB4PXZZcjs.Uint8ArrayToHexDump.call(void 0, obj)}
|
|
|
80
83
|
${obj.stack}`;
|
|
81
84
|
}
|
|
82
85
|
try {
|
|
86
|
+
obj = _chunkSSHZQKW7cjs.objectPlain.call(void 0, obj);
|
|
83
87
|
return pretty ? JSON.stringify(obj, null, 2) : JSON.stringify(obj);
|
|
84
88
|
} catch (err) {
|
|
85
89
|
}
|
|
@@ -115,4 +119,4 @@ function fixBrokenUtf8String(brokenString) {
|
|
|
115
119
|
|
|
116
120
|
|
|
117
121
|
exports.stringToBoolean = stringToBoolean; exports.stringToInteger = stringToInteger; exports.stringToFloat = stringToFloat; exports.valueToBoolean = valueToBoolean; exports.valueToBooleanNotFalse = valueToBooleanNotFalse; exports.valueToInteger = valueToInteger; exports.valueToFloat = valueToFloat; exports.valueToString = valueToString; exports.toFloat = toFloat; exports.toInt = toInt; exports.toString = toString; exports.toBool = toBool; exports.formatMessages = formatMessages; exports.renderMessages = renderMessages; exports.fixBrokenUtf8String = fixBrokenUtf8String;
|
|
118
|
-
//# sourceMappingURL=chunk-
|
|
122
|
+
//# sourceMappingURL=chunk-B5PIG6YL.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-B5PIG6YL.cjs","../src/common/data/convert.ts"],"names":[],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/chunk-B5PIG6YL.cjs","sourcesContent":[null,"import { Uint8ArrayToHexDump } from './bin'\nimport { objectPlain } from './object'\n\n// import { jsonStringify } from './json'\n\nconst TRUE_VALUES_LIST = ['1', 'true', 'yes', 'y', 'on']\nconst FALSE_VALUES_LIST = ['0', 'false', 'no', 'n', 'off']\n\nexport function stringToBoolean(value?: string, defaultValue = false): boolean {\n if (value == null || typeof value !== 'string')\n return defaultValue\n return TRUE_VALUES_LIST.includes(String(value).trim().toLowerCase())\n}\n\nexport function stringToInteger(value?: string, defaultValue = 0): number {\n if (value == null || typeof value !== 'string')\n return defaultValue\n return Number.parseInt(value.trim(), 10) ?? defaultValue\n}\n\nexport function stringToFloat(value?: string, defaultValue = 0.0): number {\n if (value == null || typeof value !== 'string')\n return defaultValue\n return Number.parseFloat(value.trim()) ?? defaultValue\n}\n\n/** `true` is a number != 0, a string stating `true`. Otherwise false. */\nexport function valueToBoolean(value?: any, defaultValue = false): boolean {\n if (value == null)\n return defaultValue\n if (typeof value === 'boolean')\n return value\n if (typeof value === 'number')\n return value !== 0\n return TRUE_VALUES_LIST.includes(String(value).trim().toLowerCase())\n}\n\n/** Explicitly has to have a `false` value to become `false`, otherwise `true` */\nexport function valueToBooleanNotFalse(value?: any, defaultValue = true): boolean {\n if (value == null)\n return defaultValue\n if (typeof value === 'boolean')\n return value\n if (typeof value === 'number')\n return value !== 0\n return !(FALSE_VALUES_LIST.includes(String(value).trim().toLowerCase()))\n}\n\nexport function valueToInteger(value?: any, defaultValue = 0): number {\n if (value == null)\n return defaultValue\n if (typeof value === 'boolean')\n return value ? 1 : 0\n if (typeof value === 'number')\n return Math.floor(value)\n return Number.parseInt(String(value).trim(), 10) ?? defaultValue\n}\n\nexport function valueToFloat(value?: any, defaultValue = 0.0): number {\n if (value == null)\n return defaultValue\n if (typeof value === 'boolean')\n return value ? 1 : 0\n if (typeof value === 'number')\n return Math.floor(value)\n return Number.parseFloat(String(value).trim()) ?? defaultValue\n}\n\nexport function valueToString(value?: any, defaultValue = ''): string {\n if (value == null)\n return defaultValue\n // if (value == \"\") return defaultValue // ???\n return String(value) ?? defaultValue\n}\n\n// todo: toDate, toTimestamp, toData(value, base=64)\n\n// export function mapToObject<T>(map: Map<string, T>): { [key: string]: T } {\n// return Object.fromEntries(map)\n// }\n\n// export function objectToMap<T>(obj: { [key: string]: T }): Map<string, T> {\n// return new Map(Object.entries(obj))\n// }\n\n// Shortcuts\n\nexport const toFloat = valueToFloat\nexport const toInt = valueToInteger\nexport const toString = valueToString\nexport const toBool = valueToBoolean\n\n// Strings\n\nexport interface RenderMessagesOptions {\n trace?: boolean // = true\n pretty?: boolean // = true\n}\n\nexport function formatMessages(\n messages: any[],\n opt: RenderMessagesOptions = {},\n): any[] {\n const { trace = true, pretty = true } = opt\n return messages.map((obj) => {\n if (obj && typeof obj === 'object') {\n if (pretty && (obj instanceof Uint8Array || obj instanceof ArrayBuffer))\n return `\\n${Uint8ArrayToHexDump(obj)}\\n`\n if (obj instanceof Error) {\n if (!trace)\n return `${obj.name || 'Error'}: ${obj.message}`\n return `${obj.name || 'Error'}: ${obj.message}\\n${obj.stack}`\n }\n try {\n obj = objectPlain(obj)\n return pretty ? JSON.stringify(obj, null, 2) : JSON.stringify(obj)\n }\n catch (err) {}\n }\n return String(obj)\n })\n}\n\nexport function renderMessages(\n messages: any[],\n opt: RenderMessagesOptions = {},\n): string {\n return formatMessages(messages, opt).join(' ')\n}\n\n//\n\n// Awesome trick from https://stackoverflow.com/a/5396742/140927\nexport function fixBrokenUtf8String(brokenString: string): string {\n try {\n return decodeURIComponent(escape(brokenString))\n }\n catch (e) {\n // log.debug(\"fixString failed for\", s)\n }\n return brokenString\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkSSXUFY3Acjs = require('./chunk-SSXUFY3A.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkN7BCGFNYcjs = require('./chunk-N7BCGFNY.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
var _chunkKM2MJVXIcjs = require('./chunk-KM2MJVXI.cjs');
|
|
@@ -12,7 +12,7 @@ var _chunkKM2MJVXIcjs = require('./chunk-KM2MJVXI.cjs');
|
|
|
12
12
|
var _chunkX4UFBMH7cjs = require('./chunk-X4UFBMH7.cjs');
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
var
|
|
15
|
+
var _chunkB5PIG6YLcjs = require('./chunk-B5PIG6YL.cjs');
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
var _chunk2AGPRCO5cjs = require('./chunk-2AGPRCO5.cjs');
|
|
@@ -22,17 +22,17 @@ var _process = require('process'); var _process2 = _interopRequireDefault(_proce
|
|
|
22
22
|
function Logger(name, level) {
|
|
23
23
|
return _chunk2AGPRCO5cjs.getGlobalLogger.call(void 0, (context) => {
|
|
24
24
|
const handlers = [
|
|
25
|
-
|
|
25
|
+
_chunkN7BCGFNYcjs.LoggerNodeHandler.call(void 0, {
|
|
26
26
|
padding: 32,
|
|
27
27
|
nameBrackets: false
|
|
28
28
|
// levelHelper: false,
|
|
29
29
|
})
|
|
30
30
|
];
|
|
31
31
|
const logFilePath = _nullishCoalesce(_process2.default.env.ZEED_LOG, () => ( _process2.default.env.LOG));
|
|
32
|
-
const time =
|
|
33
|
-
const pretty =
|
|
32
|
+
const time = _chunkB5PIG6YLcjs.valueToBoolean.call(void 0, _process2.default.env.ZEED_TIME, true);
|
|
33
|
+
const pretty = _chunkB5PIG6YLcjs.valueToBoolean.call(void 0, _process2.default.env.ZEED_PRETTY, false);
|
|
34
34
|
if (logFilePath)
|
|
35
|
-
handlers.unshift(
|
|
35
|
+
handlers.unshift(_chunkSSXUFY3Acjs.LoggerFileHandler.call(void 0, _chunkKM2MJVXIcjs.toPath.call(void 0, logFilePath), { time, pretty }));
|
|
36
36
|
context.setHandlers(handlers);
|
|
37
37
|
})(name, level);
|
|
38
38
|
}
|
|
@@ -44,4 +44,4 @@ function LoggerFromConfig(config, name, level) {
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
exports.Logger = Logger; exports.LoggerFromConfig = LoggerFromConfig;
|
|
47
|
-
//# sourceMappingURL=chunk-
|
|
47
|
+
//# sourceMappingURL=chunk-CRJXATRH.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-CRJXATRH.cjs","../src/node/log/log-context-node.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACjBA,oFAAoB;AAQb,SAAS,MAAA,CAAO,IAAA,EAAe,KAAA,EAA4C;AAChF,EAAA,OAAO,+CAAA,CAAiB,OAAA,EAAA,GAAY;AAClC,IAAA,MAAM,SAAA,EAAW;AAAA,MACf,iDAAA;AAAkB,QAChB,OAAA,EAAS,EAAA;AAAA,QACT,YAAA,EAAc;AAAA;AAAA,MAEhB,CAAC;AAAA,IACH,CAAA;AAEA,IAAA,MAAM,YAAA,mBAAc,iBAAA,CAAQ,GAAA,CAAI,QAAA,UAAY,iBAAA,CAAQ,GAAA,CAAI,KAAA;AACxD,IAAA,MAAM,KAAA,EAAO,8CAAA,iBAAe,CAAQ,GAAA,CAAI,SAAA,EAAW,IAAI,CAAA;AACvD,IAAA,MAAM,OAAA,EAAS,8CAAA,iBAAe,CAAQ,GAAA,CAAI,WAAA,EAAa,KAAK,CAAA;AAC5D,IAAA,GAAA,CAAI,WAAA;AACF,MAAA,QAAA,CAAS,OAAA,CAAQ,iDAAA,sCAAkB,WAAkB,CAAA,EAAG,EAAE,IAAA,EAAM,OAAO,CAAC,CAAC,CAAA;AAE3E,IAAA,OAAA,CAAQ,WAAA,CAAY,QAAQ,CAAA;AAAA,EAC9B,CAAC,CAAA,CAAE,IAAA,EAAM,KAAK,CAAA;AAChB;AAGO,SAAS,gBAAA,CAAiB,MAAA,EAAmB,IAAA,EAAc,KAAA,EAA4C;AAC5G,EAAA,OAAO,iDAAA,MAAkB,EAAQ,MAAA,EAAQ,IAAA,EAAM,KAAK,CAAA;AACtD;ADQA;AACA;AACE;AACA;AACF,qEAAC","file":"/home/runner/work/zeed/zeed/dist/chunk-CRJXATRH.cjs","sourcesContent":[null,"import type { LoggerInterface, LogLevelAliasType } from '../../common/log/log-base'\nimport type { LogConfig } from '../../common/log/log-config'\nimport process from 'node:process'\nimport { valueToBoolean } from '../../common/data/convert'\nimport { getGlobalLogger } from '../../common/log/log'\nimport { _LoggerFromConfig } from '../../common/log/log-config'\nimport { toPath } from '../env'\nimport { LoggerFileHandler } from './log-file'\nimport { LoggerNodeHandler } from './log-node'\n\nexport function Logger(name?: string, level?: LogLevelAliasType): LoggerInterface {\n return getGlobalLogger((context) => {\n const handlers = [\n LoggerNodeHandler({\n padding: 32,\n nameBrackets: false,\n // levelHelper: false,\n }),\n ]\n\n const logFilePath = process.env.ZEED_LOG ?? process.env.LOG\n const time = valueToBoolean(process.env.ZEED_TIME, true)\n const pretty = valueToBoolean(process.env.ZEED_PRETTY, false)\n if (logFilePath)\n handlers.unshift(LoggerFileHandler(toPath(logFilePath), { time, pretty }))\n\n context.setHandlers(handlers)\n })(name, level)\n}\n\n/** See LogConfig */\nexport function LoggerFromConfig(config: LogConfig, name: string, level?: LogLevelAliasType): LoggerInterface {\n return _LoggerFromConfig(Logger, config, name, level)\n}\n"]}
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
import {
|
|
7
7
|
renderMessages,
|
|
8
8
|
valueToBoolean
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-QGUPJAJO.js";
|
|
10
10
|
import {
|
|
11
11
|
formatMilliseconds,
|
|
12
12
|
getTimestamp
|
|
@@ -200,4 +200,4 @@ export {
|
|
|
200
200
|
loggerStackTraceDebug,
|
|
201
201
|
LoggerNodeHandler
|
|
202
202
|
};
|
|
203
|
-
//# sourceMappingURL=chunk-
|
|
203
|
+
//# sourceMappingURL=chunk-DYTWZLOR.js.map
|
|
@@ -5,7 +5,7 @@ var _chunk2Q4Q3VX6cjs = require('./chunk-2Q4Q3VX6.cjs');
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunkB5PIG6YLcjs = require('./chunk-B5PIG6YL.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
@@ -32,12 +32,12 @@ function parseSchemaEnv(schema, env = _nullishCoalesce(_optionalChain([process,
|
|
|
32
32
|
return _chunkSSHZQKW7cjs.objectMap.call(void 0, schema._object, (key, schema2) => {
|
|
33
33
|
let value = env[_chunkQK5A4MK5cjs.toCamelCase.call(void 0, key)];
|
|
34
34
|
if (schema2.type === "number") {
|
|
35
|
-
value =
|
|
35
|
+
value = _chunkB5PIG6YLcjs.valueToInteger.call(void 0, value, schema2._default);
|
|
36
36
|
} else if (schema2.type === "boolean") {
|
|
37
37
|
if (schema2._default === true)
|
|
38
|
-
value =
|
|
38
|
+
value = _chunkB5PIG6YLcjs.valueToBooleanNotFalse.call(void 0, value);
|
|
39
39
|
else
|
|
40
|
-
value =
|
|
40
|
+
value = _chunkB5PIG6YLcjs.valueToBoolean.call(void 0, value, false);
|
|
41
41
|
}
|
|
42
42
|
return schema2.parse(value);
|
|
43
43
|
});
|
|
@@ -55,4 +55,4 @@ function stringFromSchemaEnv(schema, prefix = "", commentOut = false) {
|
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
exports.parseSchemaEnv = parseSchemaEnv; exports.stringFromSchemaEnv = stringFromSchemaEnv;
|
|
58
|
-
//# sourceMappingURL=chunk-
|
|
58
|
+
//# sourceMappingURL=chunk-EIBIA44Q.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-EIBIA44Q.cjs","../src/common/schema/env.ts"],"names":["schema"],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACNO,SAAS,cAAA,CAAkB,MAAA,EAAiB,IAAA,mCAAW,OAAA,2BAAS,KAAA,UAAO,CAAC,GAAA,EAAG,OAAA,EAAS,EAAA,EAAO;AAChG,EAAA,sCAAA,kDAAO,MAAyB,CAAA,EAAG,gCAAgC,CAAA;AACnE,EAAA,MAAM,GAAA,EAAK,MAAA,CAAO,MAAA;AAClB,EAAA,GAAA,CAAI,GAAA,EAAK,CAAA;AACP,IAAA,IAAA,EAAM,4CAAA,GAAa,EAAK,CAAA,GAAA,EAAA,GAAO,GAAA,CAAI,UAAA,CAAW,MAAM,CAAC,CAAA;AACvD,EAAA,IAAA,EAAM,yCAAA,GAAU,EAAK,CAAC,GAAA,EAAK,KAAA,EAAA,GAAU;AACnC,IAAA,GAAA,CAAI,GAAA,EAAK,CAAA;AACP,MAAA,IAAA,EAAM,GAAA,CAAI,SAAA,CAAU,EAAE,CAAA;AACxB,IAAA,OAAO,CAAC,2CAAA,GAAe,CAAA,EAAG,KAAK,CAAA;AAAA,EACjC,CAAC,CAAA;AACD,EAAA,OAAO,yCAAA,MAAU,CAAO,OAAA,EAAU,CAAC,GAAA,EAAKA,OAAAA,EAAAA,GAAW;AACjD,IAAA,IAAI,MAAA,EAAQ,GAAA,CAAI,2CAAA,GAAe,CAAC,CAAA;AAChC,IAAA,GAAA,CAAIA,OAAAA,CAAO,KAAA,IAAS,QAAA,EAAU;AAC5B,MAAA,MAAA,EAAQ,8CAAA,KAAe,EAAOA,OAAAA,CAAO,QAAQ,CAAA;AAAA,IAC/C,EAAA,KAAA,GAAA,CACSA,OAAAA,CAAO,KAAA,IAAS,SAAA,EAAW;AAClC,MAAA,GAAA,CAAIA,OAAAA,CAAO,SAAA,IAAa,IAAA;AACtB,QAAA,MAAA,EAAQ,sDAAA,KAA4B,CAAA;AAAA,MAAA;AAEpC,QAAA,MAAA,EAAQ,8CAAA,KAAe,EAAO,KAAK,CAAA;AAAA,IACvC;AACA,IAAA,OAAOA,OAAAA,CAAO,KAAA,CAAM,KAAK,CAAA;AAAA,EAC3B,CAAC,CAAA;AACH;AAEO,SAAS,mBAAA,CAAuB,MAAA,EAAiB,OAAA,EAAS,EAAA,EAAI,WAAA,EAAa,KAAA,EAAe;AAC/F,EAAA,sCAAA,kDAAO,MAAyB,CAAA,EAAG,gCAAgC,CAAA;AACnE,EAAA,MAAM,MAAA,EAAkB,CAAC,CAAA;AACzB,EAAA,yCAAA,MAAU,CAAO,OAAA,EAAU,CAAC,GAAA,EAAKA,OAAAA,EAAAA,GAAW;AAC1C,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,EAAA;AACZ,EAAA;AACY,EAAA;AACf;ADMgB;AACA;AACA;AACA;AACA","file":"/home/runner/work/zeed/zeed/dist/chunk-EIBIA44Q.cjs","sourcesContent":[null,"import type { Type } from './schema'\nimport { assert } from '../assert'\nimport { fromCamelCase, toCamelCase } from '../data/camelcase'\nimport { valueToBoolean, valueToBooleanNotFalse, valueToInteger } from '../data/convert'\nimport { objectFilter, objectMap } from '../data/object'\nimport { isSchemaObjectFlat } from './utils'\n\n// declare module './types' {\n// interface TypeProps {\n// argShort?: string\n// }\n// }\n\n// eslint-disable-next-line node/prefer-global/process\nexport function parseSchemaEnv<T>(schema: Type<T>, env: any = process?.env ?? {}, prefix = ''): T {\n assert(isSchemaObjectFlat(schema), 'schema should be a flat object')\n const pl = prefix.length\n if (pl > 0)\n env = objectFilter(env, key => key.startsWith(prefix))\n env = objectMap(env, (key, value) => {\n if (pl > 0)\n key = key.substring(pl)\n return [toCamelCase(key), value]\n })\n return objectMap(schema._object!, (key, schema) => {\n let value = env[toCamelCase(key)]\n if (schema.type === 'number') {\n value = valueToInteger(value, schema._default)\n }\n else if (schema.type === 'boolean') {\n if (schema._default === true)\n value = valueToBooleanNotFalse(value)\n else\n value = valueToBoolean(value, false)\n }\n return schema.parse(value)\n }) as T\n}\n\nexport function stringFromSchemaEnv<T>(schema: Type<T>, prefix = '', commentOut = false): string {\n assert(isSchemaObjectFlat(schema), 'schema should be a flat object')\n const lines: string[] = []\n objectMap(schema._object!, (key, schema) => {\n lines.push(`${commentOut ? '# ' : ''}${prefix + fromCamelCase(key, '_').toUpperCase()}=${schema._default ?? ''}`)\n }) as T\n return lines.join('\\n')\n}\n"]}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-HIX6EHLQ.js";
|
|
4
4
|
import {
|
|
5
5
|
valueToInteger
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-QGUPJAJO.js";
|
|
7
7
|
import {
|
|
8
8
|
fromCamelCase,
|
|
9
9
|
toCamelCase
|
|
@@ -81,4 +81,4 @@ export {
|
|
|
81
81
|
parseSchemaArgs,
|
|
82
82
|
helpSchemaArgs
|
|
83
83
|
};
|
|
84
|
-
//# sourceMappingURL=chunk-
|
|
84
|
+
//# sourceMappingURL=chunk-HDSJYWGU.js.map
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var _chunk2Q4Q3VX6cjs = require('./chunk-2Q4Q3VX6.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkB5PIG6YLcjs = require('./chunk-B5PIG6YL.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
@@ -55,7 +55,7 @@ function parseSchemaArgs(schema, args = _nullishCoalesce(_optionalChain([process
|
|
|
55
55
|
const argsResult = _chunkSSHZQKW7cjs.objectMap.call(void 0, schema._object, (key, schema2) => {
|
|
56
56
|
let value = argsObj[_chunkQK5A4MK5cjs.toCamelCase.call(void 0, key)];
|
|
57
57
|
if (schema2.type === "number") {
|
|
58
|
-
value =
|
|
58
|
+
value = _chunkB5PIG6YLcjs.valueToInteger.call(void 0, value);
|
|
59
59
|
}
|
|
60
60
|
return schema2.parse(value);
|
|
61
61
|
});
|
|
@@ -81,4 +81,4 @@ function helpSchemaArgs(schema) {
|
|
|
81
81
|
|
|
82
82
|
|
|
83
83
|
exports.parseSchemaArgs = parseSchemaArgs; exports.helpSchemaArgs = helpSchemaArgs;
|
|
84
|
-
//# sourceMappingURL=chunk-
|
|
84
|
+
//# sourceMappingURL=chunk-L3IADASD.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-L3IADASD.cjs","../src/common/schema/args.ts"],"names":["schema"],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/chunk-L3IADASD.cjs","sourcesContent":[null,"import type { Type } from './schema'\nimport { assert } from '../assert'\nimport { fromCamelCase, toCamelCase } from '../data/camelcase'\nimport { valueToInteger } from '../data/convert'\nimport { objectMap } from '../data/object'\nimport { isSchemaObjectFlat } from './utils'\n\ndeclare module './schema' {\n interface TypeProps {\n argShort?: string\n argDesc?: string\n }\n}\n\n// eslint-disable-next-line node/prefer-global/process\nexport function parseSchemaArgs<T>(schema: Type<T>, args: any = process?.argv ?? {}): [T, string[]] {\n assert(isSchemaObjectFlat(schema), 'schema should be a flat object')\n\n const alias: Record<string, string> = {}\n const booleanArgs: string[] = []\n\n objectMap(schema._object!, (key, schema: Type<any>) => {\n if (schema._props?.argShort)\n alias[toCamelCase(schema._props.argShort)] = toCamelCase(key)\n if (schema.type === 'boolean') {\n booleanArgs.push(toCamelCase(key))\n }\n })\n\n const argList = [...args]\n let arg: string | undefined\n const names: string[] = []\n const argsObj: Record<string, any> = {}\n\n // eslint-disable-next-line no-cond-assign\n while ((arg = argList.shift())) {\n let value: any\n if (/^--?/.test(arg)) {\n let key = arg.replace(/^--?/, '')\n if (arg.includes('=')) {\n const [name, valuePart] = key.split('=', 2)\n key = name.trim()\n value = valuePart.trim()\n }\n key = toCamelCase(key)\n key = alias[key] ?? key\n if (booleanArgs.includes(key)) {\n argsObj[key] = true\n }\n else {\n value = value ?? argList.shift() ?? ''\n argsObj[key] = value\n }\n }\n else {\n names.push(arg)\n }\n }\n\n const argsResult = objectMap(schema._object!, (key, schema) => {\n let value = argsObj[toCamelCase(key)]\n if (schema.type === 'number') {\n value = valueToInteger(value)\n }\n return schema.parse(value)\n }) as T\n\n return [argsResult, names]\n}\n\nexport function helpSchemaArgs<T>(schema: Type<T>): string {\n assert(isSchemaObjectFlat(schema), 'schema should be a flat object')\n\n const lines: string[] = []\n\n objectMap(schema._object!, (key, schema: Type<any>) => {\n let s = `--${fromCamelCase(key)}`\n if (schema._props?.argShort)\n s += `, -${fromCamelCase(schema._props.argShort)}`\n if (schema.type !== 'boolean')\n s += `=${schema.type}`\n lines.push(s)\n if (schema._props?.argDesc)\n lines.push(` ${schema._props?.argDesc}`)\n })\n\n return lines.join('\\n')\n}\n"]}
|
|
@@ -25,7 +25,11 @@ function LoggerMemoryHandler(opt) {
|
|
|
25
25
|
if (!matchesNamespace(msg.name))
|
|
26
26
|
return;
|
|
27
27
|
_nullishCoalesce(msg.timestamp, () => ( (msg.timestamp = _chunk33B2TEAZcjs.getTimestamp.call(void 0, ))));
|
|
28
|
-
const m = _chunkSSHZQKW7cjs.objectPlain.call(void 0, msg, {
|
|
28
|
+
const m = _chunkSSHZQKW7cjs.objectPlain.call(void 0, msg, {
|
|
29
|
+
maxDepth,
|
|
30
|
+
errorTrace,
|
|
31
|
+
keepAsIs: (v) => v instanceof Error
|
|
32
|
+
});
|
|
29
33
|
if (compact === true)
|
|
30
34
|
messages.push([m.timestamp, m.level, m.name, ...m.messages]);
|
|
31
35
|
else
|
|
@@ -41,4 +45,4 @@ function LoggerMemoryHandler(opt) {
|
|
|
41
45
|
|
|
42
46
|
|
|
43
47
|
exports.logMessageFromCompact = logMessageFromCompact; exports.LoggerMemoryHandler = LoggerMemoryHandler;
|
|
44
|
-
//# sourceMappingURL=chunk-
|
|
48
|
+
//# sourceMappingURL=chunk-MUYEMHP5.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-MUYEMHP5.cjs","../src/common/log/log-memory.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACF,wDAA6B;AAC7B;AACA;ACNO,SAAS,qBAAA,CAAsB,CAAA,EAAkC;AACtE,EAAA,MAAM,CAAC,SAAA,EAAW,KAAA,EAAO,IAAA,EAAM,GAAG,QAAQ,EAAA,EAAI,CAAA;AAC9C,EAAA,OAAO,EAAE,SAAA,EAAW,KAAA,EAAO,IAAA,EAAM,SAAS,CAAA;AAC5C;AAGO,SAAS,mBAAA,CACd,GAAA,EAOY;AACZ,EAAA,MAAM,EAAE,MAAA,EAAQ,KAAA,CAAA,EAAW,OAAA,EAAS,KAAA,CAAA,EAAW,QAAA,EAAU,KAAA,EAAO,SAAA,EAAW,CAAC,CAAA,EAAG,WAAA,EAAa,KAAA,EAAO,SAAA,EAAW,GAAG,EAAA,EAAI,GAAA;AACrH,EAAA,MAAM,iBAAA,EAAmB,kDAAA,MAAyB,CAAA;AAClD,EAAA,MAAM,aAAA,EAAe,8CAAA,KAAoB,CAAA;AAEzC,EAAA,IAAI,QAAA,mBAAU,GAAA,CAAI,KAAA,UAAS,MAAA,CAAO,mBAAA;AAElC,EAAA,OAAO,CAAC,GAAA,EAAA,GAAoB;AAC1B,IAAA,GAAA,CAAI,CAAC,YAAA,CAAa,GAAA,CAAI,KAAK,CAAA;AACzB,MAAA,MAAA;AACF,IAAA,GAAA,CAAI,CAAC,gBAAA,CAAiB,GAAA,CAAI,IAAI,CAAA;AAC5B,MAAA,MAAA;AAEF,qBAAA,GAAA,CAAI,SAAA,UAAA,CAAJ,GAAA,CAAI,UAAA,EAAc,4CAAA,CAAa,GAAA;AAE/B,IAAA,MAAM,EAAA,EAAI,2CAAA,GAAY,EAAK;AAAA,MACzB,QAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA,EAAU,CAAA,CAAA,EAAA,GAAK,EAAA,WAAa;AAAA,IAC9B,CAAC,CAAA;AAED,IAAA,GAAA,CAAI,QAAA,IAAY,IAAA;AACd,MAAC,QAAA,CAAiC,IAAA,CAAK,CAAC,CAAA,CAAE,SAAA,EAAW,CAAA,CAAE,KAAA,EAAO,CAAA,CAAE,IAAA,EAAM,GAAG,CAAA,CAAE,QAAQ,CAAC,CAAA;AAAA,IAAA;AAEpF,MAAC,QAAA,CAA0B,IAAA,CAAK,CAAC,CAAA;AAEnC,IAAA,GAAA,CAAI,QAAA,GAAW,CAAA;AACb,MAAA,QAAA,CAAS,KAAA,CAAM,CAAA;AAAA,IAAA;AAEf,MAAA,EAAE,OAAA;AAAA,EACN,CAAA;AACF;ADRA;AACA;AACE;AACA;AACF,yGAAC","file":"/home/runner/work/zeed/zeed/dist/chunk-MUYEMHP5.cjs","sourcesContent":[null,"import type { LogHandler, LogHandlerOptions, LogMessage, LogMessageCompact } from './log-base'\nimport { objectPlain } from '../data/object'\nimport { getTimestamp } from '../time'\nimport { useLevelFilter, useNamespaceFilter } from './log-filter'\n\nexport function logMessageFromCompact(m: LogMessageCompact): LogMessage {\n const [timestamp, level, name, ...messages] = m\n return { timestamp, level, name, messages }\n}\n\n/** Collect messages in a list. */\nexport function LoggerMemoryHandler(\n opt: LogHandlerOptions & {\n compact?: boolean\n messages: LogMessageCompact[] | LogMessage[]\n errorTrace?: boolean\n limit?: number\n maxDepth?: number\n },\n): LogHandler {\n const { level = undefined, filter = undefined, compact = false, messages = [], errorTrace = false, maxDepth = 20 } = opt\n const matchesNamespace = useNamespaceFilter(filter)\n const matchesLevel = useLevelFilter(level)\n\n let counter = opt.limit ?? Number.POSITIVE_INFINITY\n\n return (msg: LogMessage) => {\n if (!matchesLevel(msg.level))\n return\n if (!matchesNamespace(msg.name))\n return\n\n msg.timestamp ??= getTimestamp()\n\n const m = objectPlain(msg, {\n maxDepth,\n errorTrace,\n keepAsIs: v => v instanceof Error,\n })\n\n if (compact === true)\n (messages as LogMessageCompact[]).push([m.timestamp, m.level, m.name, ...m.messages])\n else\n (messages as LogMessage[]).push(m)\n\n if (counter <= 0)\n messages.shift()\n else\n --counter\n }\n}\n"]}
|
|
@@ -6,7 +6,7 @@ var _chunkJFEY5QE3cjs = require('./chunk-JFEY5QE3.cjs');
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkB5PIG6YLcjs = require('./chunk-B5PIG6YL.cjs');
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
@@ -26,7 +26,7 @@ var _process = require('process'); var _process2 = _interopRequireDefault(_proce
|
|
|
26
26
|
var _tty = require('tty'); var _tty2 = _interopRequireDefault(_tty);
|
|
27
27
|
function shouldUseColor() {
|
|
28
28
|
try {
|
|
29
|
-
return
|
|
29
|
+
return _chunkB5PIG6YLcjs.valueToBoolean.call(void 0, _process2.default.env.ZEED_COLOR, _tty2.default.isatty(_process2.default.stdout.fd));
|
|
30
30
|
} catch (err) {
|
|
31
31
|
}
|
|
32
32
|
return false;
|
|
@@ -44,7 +44,7 @@ function nodeSelectColorByName(namespace) {
|
|
|
44
44
|
var namespaces = {};
|
|
45
45
|
var startTime;
|
|
46
46
|
function log(...args) {
|
|
47
|
-
_process2.default.stdout.write(`${
|
|
47
|
+
_process2.default.stdout.write(`${_chunkB5PIG6YLcjs.renderMessages.call(void 0, args)}
|
|
48
48
|
`);
|
|
49
49
|
}
|
|
50
50
|
var TTY_STYLE = {
|
|
@@ -78,7 +78,7 @@ function colorStringList(list, style, bold = true) {
|
|
|
78
78
|
}
|
|
79
79
|
function shouldUseStack() {
|
|
80
80
|
try {
|
|
81
|
-
return
|
|
81
|
+
return _chunkB5PIG6YLcjs.valueToBoolean.call(void 0, _process2.default.env.ZEED_STACK, false);
|
|
82
82
|
} catch (err) {
|
|
83
83
|
}
|
|
84
84
|
return false;
|
|
@@ -200,4 +200,4 @@ function LoggerNodeHandler(opt = {}) {
|
|
|
200
200
|
|
|
201
201
|
|
|
202
202
|
exports.colorString = colorString; exports.colorStringList = colorStringList; exports.loggerStackTraceDebug = loggerStackTraceDebug; exports.LoggerNodeHandler = LoggerNodeHandler;
|
|
203
|
-
//# sourceMappingURL=chunk-
|
|
203
|
+
//# sourceMappingURL=chunk-N7BCGFNY.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-N7BCGFNY.cjs","../src/node/log/log-node.ts"],"names":["colors"],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/chunk-N7BCGFNY.cjs","sourcesContent":[null,"import type { LogHandler, LogHandlerOptions, LogMessage } from '../../common/log/log-base'\nimport process from 'node:process'\nimport tty from 'node:tty'\nimport { renderMessages, valueToBoolean } from '../../common/data/convert'\nimport { LogLevelError, LogLevelInfo, LogLevelWarn } from '../../common/log/log-base'\nimport { useLevelFilter, useNamespaceFilter } from '../../common/log/log-filter'\nimport { formatMilliseconds, getTimestamp } from '../../common/time'\nimport { getSourceLocation, getSourceLocationByPrecedingPattern, getStack } from './log-util'\n\nfunction shouldUseColor(): boolean {\n try {\n return valueToBoolean(process.env.ZEED_COLOR, tty.isatty(process.stdout.fd))\n }\n catch (err) {}\n return false\n}\n\nlet defaultUseColor: boolean | undefined\n\nconst colors = [6, 2, 3, 4, 5, 1]\n\nfunction nodeSelectColorByName(namespace: string) {\n let hash = 0\n for (let i = 0; i < namespace.length; i++) {\n hash = (hash << 5) - hash + namespace.charCodeAt(i)\n hash |= 0 // Convert to 32bit integer\n }\n return colors[Math.abs(hash) % colors.length]\n}\n\nconst namespaces: Record<string, any> = {}\n\nlet startTime: number | undefined\n\nfunction log(...args: any[]) {\n process.stdout.write(`${renderMessages(args)}\\n`)\n}\n\n// const _browserStyleMap = {\n// [BOLD]: { \"font-weight\": \"bold\" },\n// [UNBOLD]: { \"font-weight\": \"normal\" },\n// [BLUE]: { color: \"blue\" },\n// [GREEN]: { color: \"green\" },\n// [GREY]: { color: \"grey\" },\n// [RED]: { color: \"red\" },\n// [PURPLE]: { color: \"purple\" },\n// [ORANGE]: { color: \"orange\" },\n// [UNCOLOR]: { color: \"black\" },\n// }\n\nconst TTY_STYLE = {\n BOLD: '\\u001B[1m',\n UNBOLD: '\\u001B[2m',\n RED: '\\u001B[31m',\n GREEN: '\\u001B[32m',\n BLUE: '\\u001B[34m',\n PURPLE: '\\u001B[35m',\n GRAY: '\\u001B[37m',\n ORANGE: '\\u001B[38;5;208m',\n UNCOLOR: '\\u001B[0m',\n}\n\nenum COLOR {\n RED = 1,\n GREEN = 2,\n BLUE = 4,\n PURPLE = 5,\n GRAY = 7,\n ORANGE = 8,\n}\n\nconst colorEnd = '\\u001B[0m'\n\nexport function colorString(text: string, colorCode: number) {\n const colorStart = colorCode === COLOR.ORANGE\n ? TTY_STYLE.ORANGE\n : `\\u001B[3${colorCode < 8 ? colorCode : `8;5;${colorCode}`}m`\n return `${colorStart}${text}${colorEnd}`\n}\n\nexport function colorStringList(\n list: Array<any>,\n style: string,\n bold = true,\n) {\n return list.map((value) => {\n if (typeof value !== 'string')\n return value\n let start = style\n let end = colorEnd\n if (bold) {\n start = `${TTY_STYLE.BOLD}${start}`\n end = `${end}${TTY_STYLE.BOLD}`\n }\n return `${start}${value}${end}`\n })\n}\n\nfunction shouldUseStack(): boolean {\n try {\n return valueToBoolean(process.env.ZEED_STACK, false)\n }\n catch (err) {}\n return false\n}\n\nlet defaultUseStack: boolean | undefined\n\nexport const loggerStackTraceDebug = 'loggerStackTraceDebug-7d38e5a9214b58d29734374cdb9521fd964d7485'\n\nexport function LoggerNodeHandler(opt: LogHandlerOptions = {}): LogHandler {\n if (defaultUseColor == null)\n defaultUseColor = shouldUseColor()\n\n if (defaultUseStack == null)\n defaultUseStack = shouldUseStack()\n\n if (startTime == null)\n startTime = getTimestamp()\n\n const {\n level = undefined,\n filter = undefined,\n colors = defaultUseColor,\n levelHelper = true,\n nameBrackets = true,\n padding = 0,\n fill = 0,\n stack = defaultUseStack,\n time = true,\n } = opt\n const matchesNamespace = useNamespaceFilter(filter)\n const matchesLevel = useLevelFilter(level)\n return (msg: LogMessage) => {\n if (!matchesLevel(msg.level))\n return\n if (!matchesNamespace(msg.name))\n return\n const timeNow = getTimestamp()\n const name = msg.name || ''\n let ninfo = namespaces[name || '']\n if (ninfo == null) {\n ninfo = {\n color: nodeSelectColorByName(name),\n // time: timeNow\n }\n namespaces[name] = ninfo\n }\n const timeDiffString = formatMilliseconds(timeNow - startTime!)\n\n let args: string[]\n\n let displayName = nameBrackets ? `[${name}]` : name\n\n if (padding > 0)\n displayName = displayName.padStart(padding, ' ')\n\n if (fill > 0)\n displayName = displayName.padEnd(fill, ' ')\n\n if (colors) {\n const c = ninfo.color\n args = [`${colorString(displayName, c)} | `] // nameBrackets ? [`%c[${name}]`] : [`%c${name}`]\n if (msg.level === LogLevelWarn)\n args.push(...colorStringList(msg.messages, TTY_STYLE.ORANGE))\n else if (msg.level === LogLevelError)\n args.push(...colorStringList(msg.messages, TTY_STYLE.RED))\n else\n args.push(...msg.messages)\n if (time)\n args.push(colorString(`+${timeDiffString}`, c))\n }\n else {\n args = [displayName, ...msg.messages]\n if (time)\n args.push(`+${timeDiffString}`)\n }\n\n if (msg.messages?.[0] === loggerStackTraceDebug) {\n try {\n // eslint-disable-next-line no-console\n console.log(getStack())\n }\n catch (err) { }\n }\n\n // Probably time consuming\n if (stack) {\n let line = ''\n if (typeof stack === 'boolean') {\n line = getSourceLocationByPrecedingPattern(\n ['at Function.', 'at null.log (', 'at log ('],\n true,\n )\n if (!line)\n line = getSourceLocation(0, true)\n }\n else {\n const depth = typeof stack === 'number' ? stack : 3\n line = getSourceLocation(depth, true)\n }\n if (line)\n args.push(colorString(`(${line})`, COLOR.GRAY))\n }\n\n const sep = '|'\n const charLevel = '.'\n\n switch (msg.level) {\n case LogLevelInfo:\n if (levelHelper)\n args[0] = `I${sep}${charLevel} ${args[0]}`\n log(...args)\n break\n case LogLevelWarn:\n if (levelHelper) {\n args[0] = (colors\n ? colorString(`W${sep}${charLevel}${charLevel} `, COLOR.ORANGE)\n : `W${sep}${charLevel}${charLevel} `) + args[0]\n }\n log(...args)\n break\n case LogLevelError:\n if (levelHelper) {\n args[0] = (colors\n ? colorString(`E${sep}${charLevel}${charLevel}${charLevel} `, COLOR.RED)\n : `E${sep}${charLevel}${charLevel}${charLevel} `) + args[0]\n }\n log(...args)\n break\n default:\n if (levelHelper)\n args[0] = `D${sep} ${args[0]}`\n log(...args)\n break\n }\n }\n}\n"]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var _chunk2P6TEB5Mcjs = require('./chunk-2P6TEB5M.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkB5PIG6YLcjs = require('./chunk-B5PIG6YL.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
@@ -85,7 +85,7 @@ function useMessageHub(opt = {}) {
|
|
|
85
85
|
if (id)
|
|
86
86
|
await postMessage({ id, result: result2 });
|
|
87
87
|
} catch (error2) {
|
|
88
|
-
const err = error2 instanceof Error ? error2 : new Error(
|
|
88
|
+
const err = error2 instanceof Error ? error2 : new Error(_chunkB5PIG6YLcjs.valueToString.call(void 0, error2));
|
|
89
89
|
log.warn("execution error", err.name);
|
|
90
90
|
await postMessage({
|
|
91
91
|
id,
|
|
@@ -162,4 +162,4 @@ function useMessageHub(opt = {}) {
|
|
|
162
162
|
|
|
163
163
|
|
|
164
164
|
exports.createPromiseProxy = createPromiseProxy; exports.useMessageHub = useMessageHub;
|
|
165
|
-
//# sourceMappingURL=chunk-
|
|
165
|
+
//# sourceMappingURL=chunk-ODTID2TC.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-LT2F6LQX.cjs","../src/common/msg/messages.ts"],"names":["name","result","error","opt"],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/chunk-LT2F6LQX.cjs","sourcesContent":[null,"import type { LogLevelAliasType } from '../log/log-base'\nimport type { Json } from '../types'\nimport type { Channel } from './channel'\nimport type { Encoder } from './encoder'\nimport { valueToString } from '../data/convert'\nimport { isPromise, tryTimeout } from '../exec/promise'\nimport { DefaultLogger } from '../log/log'\nimport { uname, uuid } from '../uuid'\nimport { JsonEncoder } from './encoder'\n\nexport interface MessageAction {\n name: string\n id: string\n args?: Json[]\n}\n\nexport interface MessageResult {\n id: string\n result?: Json\n error?: { stack?: string, name: string, message: string }\n}\n\nexport type Message = MessageAction | MessageResult\n\nexport interface MessagesOptions {\n timeout?: number\n}\n\nexport interface MessagesDefaultMethods<L> {\n dispose: () => void\n connect?: (channel: Channel) => void\n options: (opt: MessagesOptions) => L\n}\n\nexport type MessagesMethods<L> = L & MessagesDefaultMethods<L>\n\n// export type MessageDefinitions = {\n// [key: string]: (...args: any) => Promise<any>\n// }\n\nexport type MessageDefinitions = Record<any, (...args: any) => Promise<any>>\n\nexport interface MessageHub {\n dispose: () => void\n connect: (newChannel: Channel) => void\n listen: <L extends MessageDefinitions>(newHandlers: L) => void\n send: <L extends MessageDefinitions>() => MessagesMethods<L>\n}\n\n// The async proxy, waiting for a response\nexport function createPromiseProxy<P extends object>(fn: (name: string, args: any[], opt: any) => Promise<unknown>, opt: MessagesOptions, predefinedMethods: any = {}): P {\n return new Proxy<P>(predefinedMethods, {\n get: (target: any, name: any) => {\n if (name in target)\n return target[name]\n return (...args: any): any => fn(name, args, opt)\n },\n })\n}\n\n/**\n * RPC\n *\n * Features:\n * - Waits for connection\n * - Retries after fail\n * - Timeouts\n */\nexport function useMessageHub(\n opt: {\n name?: string\n channel?: Channel\n encoder?: Encoder\n retryAfter?: number\n ignoreUnhandled?: boolean\n debug?: boolean\n logLevel?: LogLevelAliasType\n } = {},\n): MessageHub {\n const {\n name = uname('hub'),\n encoder = new JsonEncoder(),\n retryAfter = 1000,\n ignoreUnhandled = true,\n logLevel = false,\n } = opt\n\n const log = DefaultLogger(name, logLevel)\n\n const handlers = {}\n let channel: Channel | undefined\n const queue: Message[] = []\n let queueRetryTimer: any\n const waitingForResponse: Record<string, [\n (result?: any) => any, // resolve\n (result?: any) => any, // reject\n ]> = {}\n\n const dispose = () => {\n clearTimeout(queueRetryTimer)\n }\n\n const postNext = async () => {\n clearTimeout(queueRetryTimer)\n if (channel) {\n if (channel.isConnected) {\n while (queue.length) {\n const message = queue[0]\n try {\n channel.postMessage(await encoder.encode(message))\n queue.shift() // remove from queue when done\n }\n catch (err) {\n log.warn('postMessage', err)\n break\n }\n }\n }\n if (queue.length > 0 && retryAfter > 0)\n queueRetryTimer = setTimeout(postNext, retryAfter)\n }\n }\n\n const postMessage = async (message: Message) => {\n log('enqueue postMessage', message)\n queue.push(message)\n await postNext()\n }\n\n const connect = async (newChannel: Channel) => {\n channel = newChannel\n\n channel.on('connect', postNext)\n\n channel.on('message', async (msg: any) => {\n log('onmessage', typeof msg)\n const { name, args, id, result, error } = await encoder.decode(msg.data)\n\n // Incoming new message\n if (name) {\n log(`name ${name} id ${id}`)\n try {\n // @ts-expect-error xxx\n if (handlers[name] == null)\n throw new Error(`handler for ${name} was not found`)\n\n // @ts-expect-error xxx\n let result = handlers[name](...args)\n if (isPromise(result))\n result = await result\n log(`result ${result}`)\n if (id)\n await postMessage({ id, result })\n }\n catch (error) {\n const err\n = error instanceof Error ? error : new Error(valueToString(error))\n log.warn('execution error', err.name)\n await postMessage({\n id,\n error: {\n message: err.message,\n stack: err.stack,\n name: err.name,\n },\n })\n }\n }\n\n // Incoming new response\n else if (id) {\n log(`response for id=${id}: result=${result}, error=${error}`)\n if (waitingForResponse[id] == null) {\n if (result === undefined)\n log(`skip response for ${id}`)\n else\n log.warn(`no response hook for ${id}`)\n }\n else {\n const [resolve, reject] = waitingForResponse[id]\n if (resolve && reject) {\n delete waitingForResponse[id]\n if (error) {\n const err = new Error(error.message)\n err.stack = error.stack\n err.name = error.name\n log.warn('reject', err.name)\n reject(err)\n }\n else {\n log('resolve', result)\n resolve(result)\n }\n }\n }\n }\n\n // Don't know what to do with it\n else if (!ignoreUnhandled) {\n log.warn('Unhandled message', msg)\n }\n })\n\n await postNext()\n }\n\n const fetchMessage = async (\n name: string,\n args: any[],\n opt: MessagesOptions = {},\n ): Promise<unknown> => {\n const { timeout = 5000 } = opt\n const id = uuid()\n await postMessage({\n name,\n args,\n id,\n })\n return tryTimeout(\n new Promise(\n (resolve, reject) => (waitingForResponse[id] = [resolve, reject]),\n ),\n timeout,\n )\n }\n\n if (opt.channel)\n void connect(opt.channel) // todo async\n\n return {\n dispose,\n\n connect,\n listen<L extends object>(newHandlers: L) {\n Object.assign(handlers, newHandlers)\n },\n send<L extends object>() {\n // The regular proxy without responding, just send\n return createPromiseProxy<L>(fetchMessage, {}, {\n options(perCallopt: MessagesOptions) {\n return createPromiseProxy<L>(fetchMessage, { ...perCallopt })\n },\n } as MessagesDefaultMethods<L>) as MessagesMethods<L>\n },\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-ODTID2TC.cjs","../src/common/msg/messages.ts"],"names":["name","result","error","opt"],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/chunk-ODTID2TC.cjs","sourcesContent":[null,"import type { LogLevelAliasType } from '../log/log-base'\nimport type { Json } from '../types'\nimport type { Channel } from './channel'\nimport type { Encoder } from './encoder'\nimport { valueToString } from '../data/convert'\nimport { isPromise, tryTimeout } from '../exec/promise'\nimport { DefaultLogger } from '../log/log'\nimport { uname, uuid } from '../uuid'\nimport { JsonEncoder } from './encoder'\n\nexport interface MessageAction {\n name: string\n id: string\n args?: Json[]\n}\n\nexport interface MessageResult {\n id: string\n result?: Json\n error?: { stack?: string, name: string, message: string }\n}\n\nexport type Message = MessageAction | MessageResult\n\nexport interface MessagesOptions {\n timeout?: number\n}\n\nexport interface MessagesDefaultMethods<L> {\n dispose: () => void\n connect?: (channel: Channel) => void\n options: (opt: MessagesOptions) => L\n}\n\nexport type MessagesMethods<L> = L & MessagesDefaultMethods<L>\n\n// export type MessageDefinitions = {\n// [key: string]: (...args: any) => Promise<any>\n// }\n\nexport type MessageDefinitions = Record<any, (...args: any) => Promise<any>>\n\nexport interface MessageHub {\n dispose: () => void\n connect: (newChannel: Channel) => void\n listen: <L extends MessageDefinitions>(newHandlers: L) => void\n send: <L extends MessageDefinitions>() => MessagesMethods<L>\n}\n\n// The async proxy, waiting for a response\nexport function createPromiseProxy<P extends object>(fn: (name: string, args: any[], opt: any) => Promise<unknown>, opt: MessagesOptions, predefinedMethods: any = {}): P {\n return new Proxy<P>(predefinedMethods, {\n get: (target: any, name: any) => {\n if (name in target)\n return target[name]\n return (...args: any): any => fn(name, args, opt)\n },\n })\n}\n\n/**\n * RPC\n *\n * Features:\n * - Waits for connection\n * - Retries after fail\n * - Timeouts\n */\nexport function useMessageHub(\n opt: {\n name?: string\n channel?: Channel\n encoder?: Encoder\n retryAfter?: number\n ignoreUnhandled?: boolean\n debug?: boolean\n logLevel?: LogLevelAliasType\n } = {},\n): MessageHub {\n const {\n name = uname('hub'),\n encoder = new JsonEncoder(),\n retryAfter = 1000,\n ignoreUnhandled = true,\n logLevel = false,\n } = opt\n\n const log = DefaultLogger(name, logLevel)\n\n const handlers = {}\n let channel: Channel | undefined\n const queue: Message[] = []\n let queueRetryTimer: any\n const waitingForResponse: Record<string, [\n (result?: any) => any, // resolve\n (result?: any) => any, // reject\n ]> = {}\n\n const dispose = () => {\n clearTimeout(queueRetryTimer)\n }\n\n const postNext = async () => {\n clearTimeout(queueRetryTimer)\n if (channel) {\n if (channel.isConnected) {\n while (queue.length) {\n const message = queue[0]\n try {\n channel.postMessage(await encoder.encode(message))\n queue.shift() // remove from queue when done\n }\n catch (err) {\n log.warn('postMessage', err)\n break\n }\n }\n }\n if (queue.length > 0 && retryAfter > 0)\n queueRetryTimer = setTimeout(postNext, retryAfter)\n }\n }\n\n const postMessage = async (message: Message) => {\n log('enqueue postMessage', message)\n queue.push(message)\n await postNext()\n }\n\n const connect = async (newChannel: Channel) => {\n channel = newChannel\n\n channel.on('connect', postNext)\n\n channel.on('message', async (msg: any) => {\n log('onmessage', typeof msg)\n const { name, args, id, result, error } = await encoder.decode(msg.data)\n\n // Incoming new message\n if (name) {\n log(`name ${name} id ${id}`)\n try {\n // @ts-expect-error xxx\n if (handlers[name] == null)\n throw new Error(`handler for ${name} was not found`)\n\n // @ts-expect-error xxx\n let result = handlers[name](...args)\n if (isPromise(result))\n result = await result\n log(`result ${result}`)\n if (id)\n await postMessage({ id, result })\n }\n catch (error) {\n const err\n = error instanceof Error ? error : new Error(valueToString(error))\n log.warn('execution error', err.name)\n await postMessage({\n id,\n error: {\n message: err.message,\n stack: err.stack,\n name: err.name,\n },\n })\n }\n }\n\n // Incoming new response\n else if (id) {\n log(`response for id=${id}: result=${result}, error=${error}`)\n if (waitingForResponse[id] == null) {\n if (result === undefined)\n log(`skip response for ${id}`)\n else\n log.warn(`no response hook for ${id}`)\n }\n else {\n const [resolve, reject] = waitingForResponse[id]\n if (resolve && reject) {\n delete waitingForResponse[id]\n if (error) {\n const err = new Error(error.message)\n err.stack = error.stack\n err.name = error.name\n log.warn('reject', err.name)\n reject(err)\n }\n else {\n log('resolve', result)\n resolve(result)\n }\n }\n }\n }\n\n // Don't know what to do with it\n else if (!ignoreUnhandled) {\n log.warn('Unhandled message', msg)\n }\n })\n\n await postNext()\n }\n\n const fetchMessage = async (\n name: string,\n args: any[],\n opt: MessagesOptions = {},\n ): Promise<unknown> => {\n const { timeout = 5000 } = opt\n const id = uuid()\n await postMessage({\n name,\n args,\n id,\n })\n return tryTimeout(\n new Promise(\n (resolve, reject) => (waitingForResponse[id] = [resolve, reject]),\n ),\n timeout,\n )\n }\n\n if (opt.channel)\n void connect(opt.channel) // todo async\n\n return {\n dispose,\n\n connect,\n listen<L extends object>(newHandlers: L) {\n Object.assign(handlers, newHandlers)\n },\n send<L extends object>() {\n // The regular proxy without responding, just send\n return createPromiseProxy<L>(fetchMessage, {}, {\n options(perCallopt: MessagesOptions) {\n return createPromiseProxy<L>(fetchMessage, { ...perCallopt })\n },\n } as MessagesDefaultMethods<L>) as MessagesMethods<L>\n },\n }\n}\n"]}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import {
|
|
2
|
+
objectPlain
|
|
3
|
+
} from "./chunk-NEFIJY6U.js";
|
|
1
4
|
import {
|
|
2
5
|
Uint8ArrayToHexDump
|
|
3
6
|
} from "./chunk-MTV32UFZ.js";
|
|
@@ -80,6 +83,7 @@ ${Uint8ArrayToHexDump(obj)}
|
|
|
80
83
|
${obj.stack}`;
|
|
81
84
|
}
|
|
82
85
|
try {
|
|
86
|
+
obj = objectPlain(obj);
|
|
83
87
|
return pretty ? JSON.stringify(obj, null, 2) : JSON.stringify(obj);
|
|
84
88
|
} catch (err) {
|
|
85
89
|
}
|
|
@@ -115,4 +119,4 @@ export {
|
|
|
115
119
|
renderMessages,
|
|
116
120
|
fixBrokenUtf8String
|
|
117
121
|
};
|
|
118
|
-
//# sourceMappingURL=chunk-
|
|
122
|
+
//# sourceMappingURL=chunk-QGUPJAJO.js.map
|