@adviser/cement 0.4.17 → 0.4.19
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/cjs/is-json.cjs +16 -0
- package/cjs/is-json.cjs.map +1 -0
- package/cjs/is-json.test.cjs +76 -0
- package/cjs/is-json.test.cjs.map +1 -0
- package/cjs/logger.cjs +14 -12
- package/cjs/logger.cjs.map +1 -1
- package/cjs/logger.test.cjs +1 -1
- package/cjs/logger.test.cjs.map +1 -1
- package/cjs/node/node-env-actions.cjs +1 -8
- package/cjs/node/node-env-actions.cjs.map +1 -1
- package/cjs/sys-env.test.cjs +16 -0
- package/cjs/sys-env.test.cjs.map +1 -1
- package/cjs/uri.cjs +19 -9
- package/cjs/uri.cjs.map +1 -1
- package/cjs/uri.test.cjs +37 -4
- package/cjs/uri.test.cjs.map +1 -1
- package/esm/is-json.d.ts +6 -0
- package/esm/is-json.d.ts.map +1 -0
- package/esm/is-json.js +13 -0
- package/esm/is-json.js.map +1 -0
- package/esm/is-json.test.d.ts +2 -0
- package/esm/is-json.test.d.ts.map +1 -0
- package/esm/is-json.test.js +74 -0
- package/esm/is-json.test.js.map +1 -0
- package/esm/logger.d.ts.map +1 -1
- package/esm/logger.js +14 -12
- package/esm/logger.js.map +1 -1
- package/esm/logger.test.js +1 -1
- package/esm/logger.test.js.map +1 -1
- package/esm/node/node-env-actions.d.ts +0 -1
- package/esm/node/node-env-actions.d.ts.map +1 -1
- package/esm/node/node-env-actions.js +1 -8
- package/esm/node/node-env-actions.js.map +1 -1
- package/esm/sys-env.test.js +16 -0
- package/esm/sys-env.test.js.map +1 -1
- package/esm/uri.d.ts +7 -1
- package/esm/uri.d.ts.map +1 -1
- package/esm/uri.js +19 -9
- package/esm/uri.js.map +1 -1
- package/esm/uri.test.js +37 -4
- package/esm/uri.test.js.map +1 -1
- package/package.json +2 -2
- package/src/is-json.ts +20 -0
- package/src/jsr.json +1 -1
- package/src/logger.ts +16 -15
- package/src/node/node-env-actions.ts +14 -13
- package/src/uri.ts +29 -10
- package/ts/cjs/is-json.js +16 -0
- package/ts/cjs/is-json.js.map +1 -0
- package/ts/cjs/is-json.test.js +76 -0
- package/ts/cjs/is-json.test.js.map +1 -0
- package/ts/cjs/logger.js +14 -12
- package/ts/cjs/logger.js.map +1 -1
- package/ts/cjs/logger.test.js +1 -1
- package/ts/cjs/logger.test.js.map +1 -1
- package/ts/cjs/node/node-env-actions.js +1 -8
- package/ts/cjs/node/node-env-actions.js.map +1 -1
- package/ts/cjs/sys-env.test.js +16 -0
- package/ts/cjs/sys-env.test.js.map +1 -1
- package/ts/cjs/uri.js +19 -9
- package/ts/cjs/uri.js.map +1 -1
- package/ts/cjs/uri.test.js +37 -4
- package/ts/cjs/uri.test.js.map +1 -1
- package/ts/esm/is-json.d.ts +6 -0
- package/ts/esm/is-json.d.ts.map +1 -0
- package/ts/esm/is-json.js +13 -0
- package/ts/esm/is-json.js.map +1 -0
- package/ts/esm/is-json.test.d.ts +2 -0
- package/ts/esm/is-json.test.d.ts.map +1 -0
- package/ts/esm/is-json.test.js +74 -0
- package/ts/esm/is-json.test.js.map +1 -0
- package/ts/esm/logger.d.ts.map +1 -1
- package/ts/esm/logger.js +14 -12
- package/ts/esm/logger.js.map +1 -1
- package/ts/esm/logger.test.js +1 -1
- package/ts/esm/logger.test.js.map +1 -1
- package/ts/esm/node/node-env-actions.d.ts +0 -1
- package/ts/esm/node/node-env-actions.d.ts.map +1 -1
- package/ts/esm/node/node-env-actions.js +1 -8
- package/ts/esm/node/node-env-actions.js.map +1 -1
- package/ts/esm/sys-env.test.js +16 -0
- package/ts/esm/sys-env.test.js.map +1 -1
- package/ts/esm/uri.d.ts +7 -1
- package/ts/esm/uri.d.ts.map +1 -1
- package/ts/esm/uri.js +19 -9
- package/ts/esm/uri.js.map +1 -1
- package/ts/esm/uri.test.js +37 -4
- package/ts/esm/uri.test.js.map +1 -1
package/esm/uri.test.js
CHANGED
@@ -2,7 +2,7 @@ import { BuildURI, MutableURL, URI, isCoerceURI, param } from "@adviser/cement";
|
|
2
2
|
describe("BuildURI", () => {
|
3
3
|
let uri;
|
4
4
|
beforeEach(() => {
|
5
|
-
uri = BuildURI.from(
|
5
|
+
uri = BuildURI.from(MutableURL.fromThrow("http://example.com"));
|
6
6
|
uri.hostname("example");
|
7
7
|
uri.setParam("key", "value");
|
8
8
|
});
|
@@ -33,7 +33,7 @@ describe("URI", () => {
|
|
33
33
|
expect(URI.from("bla://example/com?key=value").toString()).toBe("bla://example/com?key=value");
|
34
34
|
});
|
35
35
|
it("from URL", () => {
|
36
|
-
expect(URI.from(
|
36
|
+
expect(URI.from(MutableURL.fromThrow("blix://example.com?key=value")).toString()).toBe("blix://example.com?key=value");
|
37
37
|
});
|
38
38
|
it("from URI", () => {
|
39
39
|
expect(URI.from(URI.from("blix://example.com?key=value")).toString()).toBe("blix://example.com?key=value");
|
@@ -95,7 +95,7 @@ describe("URI", () => {
|
|
95
95
|
expect(res.status).toBeGreaterThan(199);
|
96
96
|
});
|
97
97
|
it("MutableURL is instance of URL", () => {
|
98
|
-
expect(
|
98
|
+
expect(MutableURL.fromThrow("http://example.com") instanceof URL).toBe(true);
|
99
99
|
});
|
100
100
|
it("file url", () => {
|
101
101
|
const uri = URI.from("file://fp?storagekey=zTvTPEPQRWij8rfb3FrFqBm");
|
@@ -398,7 +398,7 @@ describe("URI", () => {
|
|
398
398
|
expect(isCoerceURI(null)).toBe(false);
|
399
399
|
expect(isCoerceURI(undefined)).toBe(false);
|
400
400
|
expect(isCoerceURI(new URL("http://example.com"))).toBe(true);
|
401
|
-
expect(isCoerceURI(
|
401
|
+
expect(isCoerceURI(MutableURL.fromThrow("http://example.com"))).toBe(true);
|
402
402
|
expect(isCoerceURI(URI.from("http://example.com"))).toBe(true);
|
403
403
|
expect(isCoerceURI(BuildURI.from("http://example.com"))).toBe(true);
|
404
404
|
expect(isCoerceURI("http://example.com")).toBe(true);
|
@@ -630,4 +630,37 @@ describe("URI", () => {
|
|
630
630
|
expect(uri.URI().hash).toEqual("#a=1&b=2&c=3");
|
631
631
|
});
|
632
632
|
});
|
633
|
+
describe("MutableURL.fromThrow", () => {
|
634
|
+
it("should return Ok for valid url with protocol", () => {
|
635
|
+
const result = MutableURL.from("http://example.com/foo");
|
636
|
+
expect(result.isOk()).toBe(true);
|
637
|
+
expect(result.Ok().toString()).toBe("http://example.com/foo");
|
638
|
+
});
|
639
|
+
it("should return Err for invalid url", () => {
|
640
|
+
const result = MutableURL.from("not-a-url");
|
641
|
+
expect(result.isErr()).toBe(true);
|
642
|
+
});
|
643
|
+
it("should return Err for invalid url 1", () => {
|
644
|
+
const result = MutableURL.from("not-a-url:");
|
645
|
+
expect(result.isErr()).toBe(true);
|
646
|
+
});
|
647
|
+
it("should return Err for invalid url 2", () => {
|
648
|
+
const result = MutableURL.from("not-a-url:/");
|
649
|
+
expect(result.isErr()).toBe(true);
|
650
|
+
});
|
651
|
+
it("should return Err for invalid urll 3", () => {
|
652
|
+
const result = MutableURL.from("not-a-url://kdkkef/df:dkdkfkdk");
|
653
|
+
expect(result.isErr()).toBe(true);
|
654
|
+
});
|
655
|
+
it("should return Ok for custom protocol", () => {
|
656
|
+
const result = MutableURL.from("b0lix://foo/bar");
|
657
|
+
expect(result.isOk()).toBe(true);
|
658
|
+
expect(result.Ok().toString()).toContain("b0lix://");
|
659
|
+
});
|
660
|
+
it("should return Ok for short custom protocol", () => {
|
661
|
+
const result = MutableURL.from("b0_-Ix://");
|
662
|
+
expect(result.isOk()).toBe(true);
|
663
|
+
expect(result.Ok().toString()).toContain("b0_-Ix://");
|
664
|
+
});
|
665
|
+
});
|
633
666
|
//# sourceMappingURL=uri.test.js.map
|
package/esm/uri.test.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"uri.test.js","sourceRoot":"","sources":["../../../src/uri.test.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"uri.test.js","sourceRoot":"","sources":["../../../src/uri.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@adviser/cement",
|
3
|
-
"version": "0.4.
|
3
|
+
"version": "0.4.19",
|
4
4
|
"description": "better try/catch/finally handling",
|
5
5
|
"main": "./cjs/index.js",
|
6
6
|
"type": "module",
|
@@ -48,7 +48,7 @@
|
|
48
48
|
"yaml": "^2.7.1"
|
49
49
|
},
|
50
50
|
"devDependencies": {
|
51
|
-
"@cloudflare/vitest-pool-workers": "^0.8.
|
51
|
+
"@cloudflare/vitest-pool-workers": "^0.8.44",
|
52
52
|
"@eslint/js": "^9.20.0",
|
53
53
|
"@types/node": "^24.0.0",
|
54
54
|
"@typescript-eslint/eslint-plugin": "^8.7.0",
|
package/src/is-json.ts
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
const possibleJSONre = new RegExp(
|
2
|
+
'^\\s*(?:\\{.*\\}|\\[.*\\]|"(?:[^"\\\\]|\\\\.)*"|true|false|null|-?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)\\s*$',
|
3
|
+
);
|
4
|
+
|
5
|
+
export interface IsJSONResult<T> {
|
6
|
+
readonly isJSON: boolean;
|
7
|
+
readonly parsed?: T;
|
8
|
+
}
|
9
|
+
|
10
|
+
export function isJSON<T = unknown>(str: string): IsJSONResult<T> {
|
11
|
+
if (possibleJSONre.test(str)) {
|
12
|
+
try {
|
13
|
+
const parsed = JSON.parse(str) as T;
|
14
|
+
return { isJSON: true, parsed };
|
15
|
+
} catch {
|
16
|
+
/* noop */
|
17
|
+
}
|
18
|
+
}
|
19
|
+
return { isJSON: false };
|
20
|
+
}
|
package/src/jsr.json
CHANGED
package/src/logger.ts
CHANGED
@@ -3,7 +3,8 @@ import { bin2string } from "./bin2text.js";
|
|
3
3
|
import { Option } from "./option.js";
|
4
4
|
import { Result } from "./result.js";
|
5
5
|
import { TxtEnDecoder } from "./txt-en-decoder.js";
|
6
|
-
import { CoerceURI } from "./uri.js";
|
6
|
+
import { CoerceURI, MutableURL } from "./uri.js";
|
7
|
+
import { isJSON } from "./is-json.js";
|
7
8
|
|
8
9
|
export const Level = {
|
9
10
|
WARN: "warn",
|
@@ -77,20 +78,16 @@ function logValueInternal(val: LogValueArg, ctx: LogValueStateInternal): LogValu
|
|
77
78
|
case "function":
|
78
79
|
return new LogValue(val);
|
79
80
|
case "string": {
|
80
|
-
|
81
|
-
|
81
|
+
const resIsJson = isJSON<LogValueArg>(val);
|
82
|
+
if (resIsJson.isJSON) {
|
83
|
+
const ret = resIsJson.parsed;
|
82
84
|
if (typeof ret === "object" && ret !== null) {
|
83
85
|
return logValueInternal(ret, ctx);
|
84
86
|
}
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
return new LogValue(() => url.toString());
|
90
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
91
|
-
} catch (e) {
|
92
|
-
// ignore
|
93
|
-
}
|
87
|
+
}
|
88
|
+
const resIsURI = MutableURL.from(val);
|
89
|
+
if (resIsURI.isOk()) {
|
90
|
+
return new LogValue(() => resIsURI.Ok().toString());
|
94
91
|
}
|
95
92
|
if (val.match(/[\n\r]/)) {
|
96
93
|
const lines = val.split(/[\n\r]+/).map((v) => v.trim());
|
@@ -111,12 +108,16 @@ function logValueInternal(val: LogValueArg, ctx: LogValueStateInternal): LogValu
|
|
111
108
|
// should be injected
|
112
109
|
const decoder = new TextDecoder();
|
113
110
|
const asStr = decoder.decode(val);
|
114
|
-
const
|
115
|
-
|
111
|
+
const resIsJson = isJSON<LogValueArg>(asStr);
|
112
|
+
if (resIsJson.isJSON) {
|
113
|
+
const obj = JSON.parse(asStr) as LogValueArg;
|
114
|
+
return logValueInternal(obj, ctx);
|
115
|
+
}
|
116
116
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
117
117
|
} catch (e) {
|
118
|
-
|
118
|
+
// noop, we will return the stringified value
|
119
119
|
}
|
120
|
+
return logValueInternal(bin2string(val, 512), ctx);
|
120
121
|
}
|
121
122
|
if (Array.isArray(val)) {
|
122
123
|
return new LogValue(() =>
|
@@ -40,18 +40,18 @@ export class NodeEnvActions implements EnvActions {
|
|
40
40
|
// return cleaned;
|
41
41
|
// }
|
42
42
|
|
43
|
-
mergeEnv(): Record<string, string> {
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
}
|
43
|
+
// mergeEnv(): Record<string, string> {
|
44
|
+
// // const importMetaEnv = this.cleanImportMetaEnv();
|
45
|
+
// // console.debug("NodeEnvActions.mergeEnv", importMetaEnv);
|
46
|
+
// const nodeEnv = Object.keys(this.#node.process.env).reduce(
|
47
|
+
// (acc, key) => {
|
48
|
+
// acc[key] = this.#node.process.env[key] || "";
|
49
|
+
// return acc;
|
50
|
+
// },
|
51
|
+
// {} as Record<string, string>,
|
52
|
+
// );
|
53
|
+
// return { ...nodeEnv };
|
54
|
+
// }
|
55
55
|
|
56
56
|
static new(opts: Partial<EnvFactoryOpts>): EnvActions {
|
57
57
|
return NodeEnvActions.once.once(() => new NodeEnvActions(opts));
|
@@ -73,7 +73,7 @@ export class NodeEnvActions implements EnvActions {
|
|
73
73
|
return runtimeFn().isNodeIsh;
|
74
74
|
// typeof this.#node === "object" && typeof this.#node.process === "object" && typeof this.#node.process.env === "object";
|
75
75
|
}
|
76
|
-
readonly _env: Record<string, string> = this.active() ? this.
|
76
|
+
readonly _env: Record<string, string> = this.active() ? this.#node.process.env : {};
|
77
77
|
keys(): string[] {
|
78
78
|
return Object.keys(this._env);
|
79
79
|
}
|
@@ -83,6 +83,7 @@ export class NodeEnvActions implements EnvActions {
|
|
83
83
|
set(key: string, value?: string): void {
|
84
84
|
if (value) {
|
85
85
|
this._env[key] = value;
|
86
|
+
// this.#node.process.env[key] = value; // also set in process.env
|
86
87
|
}
|
87
88
|
}
|
88
89
|
delete(key: string): void {
|
package/src/uri.ts
CHANGED
@@ -9,6 +9,11 @@ type NullOrUndef = null | undefined;
|
|
9
9
|
|
10
10
|
type OneKey<K extends string, V = string> = Record<K, V>;
|
11
11
|
|
12
|
+
export interface IsURIResult {
|
13
|
+
readonly isURI: boolean;
|
14
|
+
readonly uri?: URI;
|
15
|
+
}
|
16
|
+
|
12
17
|
/** @xdeprecated use param from get-params-result */
|
13
18
|
// export const key = param;
|
14
19
|
|
@@ -152,17 +157,17 @@ function falsy2undef<T>(value: T | NullOrUndef): T | undefined {
|
|
152
157
|
|
153
158
|
function ensureURLWithDefaultProto(url: string | URL, defaultProtocol: string): MutableURL {
|
154
159
|
if (!url) {
|
155
|
-
return
|
160
|
+
return MutableURL.fromThrow(`${defaultProtocol}//`);
|
156
161
|
}
|
157
162
|
if (typeof url === "string") {
|
158
163
|
try {
|
159
|
-
return
|
164
|
+
return MutableURL.fromThrow(url);
|
160
165
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
161
166
|
} catch (e) {
|
162
|
-
return
|
167
|
+
return MutableURL.fromThrow(`${defaultProtocol}//${url}`);
|
163
168
|
}
|
164
169
|
} else {
|
165
|
-
return
|
170
|
+
return MutableURL.fromThrow(url.toString());
|
166
171
|
}
|
167
172
|
}
|
168
173
|
|
@@ -179,6 +184,9 @@ export function isURL(value: unknown): value is URL {
|
|
179
184
|
// due to that the System URL class is has a strange behavior
|
180
185
|
// on different platforms, we need to implement our own URL class
|
181
186
|
const customInspectSymbol = Symbol.for("nodejs.util.inspect.custom");
|
187
|
+
|
188
|
+
const urlRegex = /^([a-z][a-z0-9_-]*):\/\/[^:]*$/i;
|
189
|
+
|
182
190
|
export class MutableURL extends URL {
|
183
191
|
private readonly _sysURL: URL;
|
184
192
|
// private readonly _urlStr: string;
|
@@ -189,7 +197,18 @@ export class MutableURL extends URL {
|
|
189
197
|
|
190
198
|
// override readonly hash: string;
|
191
199
|
|
192
|
-
|
200
|
+
static fromThrow(urlStr: string): MutableURL {
|
201
|
+
return new MutableURL(urlStr);
|
202
|
+
}
|
203
|
+
|
204
|
+
static from(urlStr: string): Result<MutableURL> {
|
205
|
+
if (urlRegex.test(urlStr)) {
|
206
|
+
return exception2Result(() => new MutableURL(urlStr));
|
207
|
+
}
|
208
|
+
return Result.Err(`Invalid URL: ${urlStr}`);
|
209
|
+
}
|
210
|
+
|
211
|
+
private constructor(urlStr: string) {
|
193
212
|
super("defect://does.not.exist");
|
194
213
|
const partedURL = urlStr.split(":");
|
195
214
|
this._hasHostpart = hasHostPartProtocols.has(partedURL[0]);
|
@@ -320,16 +339,16 @@ export class MutableURL extends URL {
|
|
320
339
|
function from<T>(fac: (url: MutableURL) => T, strURLUri: CoerceURI | undefined, defaultProtocol: string): T {
|
321
340
|
switch (typeof falsy2undef(strURLUri)) {
|
322
341
|
case "undefined":
|
323
|
-
return fac(
|
342
|
+
return fac(MutableURL.fromThrow(`${defaultProtocol}///`));
|
324
343
|
case "string":
|
325
344
|
return fac(ensureURLWithDefaultProto(strURLUri as string, defaultProtocol));
|
326
345
|
case "object":
|
327
346
|
if (BuildURI.is(strURLUri)) {
|
328
|
-
return fac(
|
347
|
+
return fac(MutableURL.fromThrow(strURLUri._url.toString()));
|
329
348
|
} else if (URI.is(strURLUri)) {
|
330
|
-
return fac(
|
349
|
+
return fac(MutableURL.fromThrow(strURLUri._url.toString()));
|
331
350
|
} else if (isURL(strURLUri)) {
|
332
|
-
return fac(
|
351
|
+
return fac(MutableURL.fromThrow(strURLUri.toString()));
|
333
352
|
}
|
334
353
|
throw new Error(`unknown object type: ${strURLUri}`);
|
335
354
|
default:
|
@@ -455,7 +474,7 @@ export class BuildURI implements URIInterface<BuildURI> {
|
|
455
474
|
return this.appendRelative(p);
|
456
475
|
}
|
457
476
|
}
|
458
|
-
this._url =
|
477
|
+
this._url = MutableURL.fromThrow(p.toString());
|
459
478
|
return this;
|
460
479
|
}
|
461
480
|
|
@@ -0,0 +1,16 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.isJSON = isJSON;
|
4
|
+
const possibleJSONre = new RegExp('^\\s*(?:\\{.*\\}|\\[.*\\]|"(?:[^"\\\\]|\\\\.)*"|true|false|null|-?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)\\s*$');
|
5
|
+
function isJSON(str) {
|
6
|
+
if (possibleJSONre.test(str)) {
|
7
|
+
try {
|
8
|
+
const parsed = JSON.parse(str);
|
9
|
+
return { isJSON: true, parsed };
|
10
|
+
}
|
11
|
+
catch {
|
12
|
+
}
|
13
|
+
}
|
14
|
+
return { isJSON: false };
|
15
|
+
}
|
16
|
+
//# sourceMappingURL=is-json.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"is-json.js","sourceRoot":"","sources":["../../../src/is-json.ts"],"names":[],"mappings":";;AASA,wBAUC;AAnBD,MAAM,cAAc,GAAG,IAAI,MAAM,CAC/B,4GAA4G,CAC7G,CAAC;AAOF,SAAgB,MAAM,CAAc,GAAW;IAC7C,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAM,CAAC;YACpC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;IACH,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC3B,CAAC"}
|
@@ -0,0 +1,76 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const is_json_js_1 = require("./is-json.js");
|
4
|
+
describe("isJSON", () => {
|
5
|
+
it("should detect valid JSON object", () => {
|
6
|
+
const result = (0, is_json_js_1.isJSON)('{"a":1,"b":2}');
|
7
|
+
expect(result.isJSON).toBe(true);
|
8
|
+
expect(result.parsed).toEqual({ a: 1, b: 2 });
|
9
|
+
});
|
10
|
+
it("should detect valid JSON array", () => {
|
11
|
+
const result = (0, is_json_js_1.isJSON)("[1,2,3]");
|
12
|
+
expect(result.isJSON).toBe(true);
|
13
|
+
expect(result.parsed).toEqual([1, 2, 3]);
|
14
|
+
});
|
15
|
+
it("should detect valid JSON string", () => {
|
16
|
+
const result = (0, is_json_js_1.isJSON)('"hello"');
|
17
|
+
expect(result.isJSON).toBe(true);
|
18
|
+
expect(result.parsed).toBe("hello");
|
19
|
+
});
|
20
|
+
it("should detect valid JSON number", () => {
|
21
|
+
const result = (0, is_json_js_1.isJSON)("123");
|
22
|
+
expect(result.isJSON).toBe(true);
|
23
|
+
expect(result.parsed).toBe(123);
|
24
|
+
});
|
25
|
+
it("should detect valid JSON boolean true", () => {
|
26
|
+
const result = (0, is_json_js_1.isJSON)("true");
|
27
|
+
expect(result.isJSON).toBe(true);
|
28
|
+
expect(result.parsed).toBe(true);
|
29
|
+
});
|
30
|
+
it("should detect valid JSON boolean false", () => {
|
31
|
+
const result = (0, is_json_js_1.isJSON)("false");
|
32
|
+
expect(result.isJSON).toBe(true);
|
33
|
+
expect(result.parsed).toBe(false);
|
34
|
+
});
|
35
|
+
it("should detect valid JSON null", () => {
|
36
|
+
const result = (0, is_json_js_1.isJSON)("null");
|
37
|
+
expect(result.isJSON).toBe(true);
|
38
|
+
expect(result.parsed).toBe(null);
|
39
|
+
});
|
40
|
+
it("should detect valid JSON with whitespace", () => {
|
41
|
+
const result = (0, is_json_js_1.isJSON)(" [1, 2, 3] ");
|
42
|
+
expect(result.isJSON).toBe(true);
|
43
|
+
expect(result.parsed).toEqual([1, 2, 3]);
|
44
|
+
});
|
45
|
+
it("should return false for invalid JSON", () => {
|
46
|
+
const result = (0, is_json_js_1.isJSON)("{a:1}");
|
47
|
+
expect(result.isJSON).toBe(false);
|
48
|
+
expect(result.parsed).toBeUndefined();
|
49
|
+
});
|
50
|
+
it("should return false for non-JSON string", () => {
|
51
|
+
const result = (0, is_json_js_1.isJSON)("hello");
|
52
|
+
expect(result.isJSON).toBe(false);
|
53
|
+
expect(result.parsed).toBeUndefined();
|
54
|
+
});
|
55
|
+
it("should return false for empty string", () => {
|
56
|
+
const result = (0, is_json_js_1.isJSON)("");
|
57
|
+
expect(result.isJSON).toBe(false);
|
58
|
+
expect(result.parsed).toBeUndefined();
|
59
|
+
});
|
60
|
+
it("should return false for malformed JSON", () => {
|
61
|
+
const result = (0, is_json_js_1.isJSON)('{"a":1,}');
|
62
|
+
expect(result.isJSON).toBe(false);
|
63
|
+
expect(result.parsed).toBeUndefined();
|
64
|
+
});
|
65
|
+
it("should handle numbers with exponent", () => {
|
66
|
+
const result = (0, is_json_js_1.isJSON)("1e3");
|
67
|
+
expect(result.isJSON).toBe(true);
|
68
|
+
expect(result.parsed).toBe(1000);
|
69
|
+
});
|
70
|
+
it("should handle negative numbers", () => {
|
71
|
+
const result = (0, is_json_js_1.isJSON)("-42");
|
72
|
+
expect(result.isJSON).toBe(true);
|
73
|
+
expect(result.parsed).toBe(-42);
|
74
|
+
});
|
75
|
+
});
|
76
|
+
//# sourceMappingURL=is-json.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"is-json.test.js","sourceRoot":"","sources":["../../../src/is-json.test.ts"],"names":[],"mappings":"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"}
|
package/ts/cjs/logger.js
CHANGED
@@ -6,6 +6,8 @@ exports.logValue = logValue;
|
|
6
6
|
exports.IsLogger = IsLogger;
|
7
7
|
const is_promise_js_1 = require("./is-promise.js");
|
8
8
|
const bin2text_js_1 = require("./bin2text.js");
|
9
|
+
const uri_js_1 = require("./uri.js");
|
10
|
+
const is_json_js_1 = require("./is-json.js");
|
9
11
|
exports.Level = {
|
10
12
|
WARN: "warn",
|
11
13
|
DEBUG: "debug",
|
@@ -47,19 +49,16 @@ function logValueInternal(val, ctx) {
|
|
47
49
|
case "function":
|
48
50
|
return new LogValue(val);
|
49
51
|
case "string": {
|
50
|
-
|
51
|
-
|
52
|
+
const resIsJson = (0, is_json_js_1.isJSON)(val);
|
53
|
+
if (resIsJson.isJSON) {
|
54
|
+
const ret = resIsJson.parsed;
|
52
55
|
if (typeof ret === "object" && ret !== null) {
|
53
56
|
return logValueInternal(ret, ctx);
|
54
57
|
}
|
55
58
|
}
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
return new LogValue(() => url.toString());
|
60
|
-
}
|
61
|
-
catch (e) {
|
62
|
-
}
|
59
|
+
const resIsURI = uri_js_1.MutableURL.from(val);
|
60
|
+
if (resIsURI.isOk()) {
|
61
|
+
return new LogValue(() => resIsURI.Ok().toString());
|
63
62
|
}
|
64
63
|
if (val.match(/[\n\r]/)) {
|
65
64
|
const lines = val.split(/[\n\r]+/).map((v) => v.trim());
|
@@ -79,12 +78,15 @@ function logValueInternal(val, ctx) {
|
|
79
78
|
try {
|
80
79
|
const decoder = new TextDecoder();
|
81
80
|
const asStr = decoder.decode(val);
|
82
|
-
const
|
83
|
-
|
81
|
+
const resIsJson = (0, is_json_js_1.isJSON)(asStr);
|
82
|
+
if (resIsJson.isJSON) {
|
83
|
+
const obj = JSON.parse(asStr);
|
84
|
+
return logValueInternal(obj, ctx);
|
85
|
+
}
|
84
86
|
}
|
85
87
|
catch (e) {
|
86
|
-
return logValueInternal((0, bin2text_js_1.bin2string)(val, 512), ctx);
|
87
88
|
}
|
89
|
+
return logValueInternal((0, bin2text_js_1.bin2string)(val, 512), ctx);
|
88
90
|
}
|
89
91
|
if (Array.isArray(val)) {
|
90
92
|
return new LogValue(() => val.map((v) => logValue(v, { ...ctx, state: undefined }).value()));
|