@kikiutils/shared 18.3.0 → 19.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -7
- package/dist/buffer.d.ts +0 -2
- package/dist/buffer.d.ts.map +1 -1
- package/dist/buffer.js +1 -2
- package/dist/classes/enhanced-date.d.ts +0 -2
- package/dist/classes/enhanced-date.d.ts.map +1 -1
- package/dist/classes/enhanced-date.js +1 -2
- package/dist/classes/path.d.ts +1 -3
- package/dist/classes/path.d.ts.map +1 -1
- package/dist/classes/path.js +1 -2
- package/dist/classes/precision-number.d.ts +0 -2
- package/dist/classes/precision-number.d.ts.map +1 -1
- package/dist/classes/precision-number.js +1 -2
- package/dist/clipboard.d.ts +0 -2
- package/dist/clipboard.d.ts.map +1 -1
- package/dist/clipboard.js +1 -2
- package/dist/crypto-hash.d.ts +0 -2
- package/dist/crypto-hash.d.ts.map +1 -1
- package/dist/crypto-hash.js +1 -2
- package/dist/datetime.d.ts +0 -2
- package/dist/datetime.d.ts.map +1 -1
- package/dist/datetime.js +1 -2
- package/dist/element-plus.d.ts +0 -2
- package/dist/element-plus.d.ts.map +1 -1
- package/dist/element-plus.js +1 -2
- package/dist/enum.d.ts +0 -2
- package/dist/enum.d.ts.map +1 -1
- package/dist/enum.js +1 -2
- package/dist/env.d.ts +0 -2
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +1 -2
- package/dist/event-awaiter.d.ts +0 -2
- package/dist/event-awaiter.d.ts.map +1 -1
- package/dist/event-awaiter.js +1 -2
- package/dist/file.d.ts +0 -2
- package/dist/file.d.ts.map +1 -1
- package/dist/file.js +1 -2
- package/dist/general.d.ts +0 -2
- package/dist/general.d.ts.map +1 -1
- package/dist/general.js +1 -2
- package/dist/hash.d.ts +0 -2
- package/dist/hash.d.ts.map +1 -1
- package/dist/hash.js +1 -2
- package/dist/logger/_internals/formatter.d.ts +13 -0
- package/dist/logger/_internals/formatter.d.ts.map +1 -0
- package/dist/logger/_internals/formatter.js +57 -0
- package/dist/logger/_internals/formatter.js.map +1 -0
- package/dist/logger/_internals/levels.d.ts +54 -0
- package/dist/logger/_internals/levels.d.ts.map +1 -0
- package/dist/logger/_internals/levels.js +59 -0
- package/dist/logger/_internals/levels.js.map +1 -0
- package/dist/logger/_internals/logger.d.ts +12 -0
- package/dist/logger/_internals/logger.d.ts.map +1 -0
- package/dist/logger/_internals/logger.js +147 -0
- package/dist/logger/_internals/logger.js.map +1 -0
- package/dist/logger/_internals/types.d.ts +12 -0
- package/dist/logger/_internals/types.d.ts.map +1 -0
- package/dist/logger/_internals/types.js +1 -0
- package/dist/logger/index.d.ts +10 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js +25 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/node/_internals/file-writer.d.ts +11 -0
- package/dist/logger/node/_internals/file-writer.d.ts.map +1 -0
- package/dist/logger/node/_internals/file-writer.js +188 -0
- package/dist/logger/node/_internals/file-writer.js.map +1 -0
- package/dist/logger/node/_internals/formatter.d.ts +4 -0
- package/dist/logger/node/_internals/formatter.d.ts.map +1 -0
- package/dist/logger/node/_internals/formatter.js +21 -0
- package/dist/logger/node/_internals/formatter.js.map +1 -0
- package/dist/logger/node/index.d.ts +10 -0
- package/dist/logger/node/index.d.ts.map +1 -0
- package/dist/logger/node/index.js +122 -0
- package/dist/logger/node/index.js.map +1 -0
- package/dist/logger/node/types.d.ts +43 -0
- package/dist/logger/node/types.d.ts.map +1 -0
- package/dist/logger/node/types.js +1 -0
- package/dist/logger/types.d.ts +49 -0
- package/dist/logger/types.d.ts.map +1 -0
- package/dist/logger/types.js +1 -0
- package/dist/math.d.ts +0 -2
- package/dist/math.d.ts.map +1 -1
- package/dist/math.js +1 -2
- package/dist/number.d.ts +0 -2
- package/dist/number.d.ts.map +1 -1
- package/dist/number.js +1 -2
- package/dist/random.d.ts +0 -2
- package/dist/random.d.ts.map +1 -1
- package/dist/random.js +1 -2
- package/dist/redis/script-runner.d.ts +0 -2
- package/dist/redis/script-runner.d.ts.map +1 -1
- package/dist/redis/script-runner.js +1 -2
- package/dist/storages/lru/keyed-store.d.ts +0 -2
- package/dist/storages/lru/keyed-store.d.ts.map +1 -1
- package/dist/storages/lru/keyed-store.js +1 -2
- package/dist/storages/redis/keyed-store.d.ts +0 -2
- package/dist/storages/redis/keyed-store.d.ts.map +1 -1
- package/dist/storages/redis/keyed-store.js +1 -2
- package/dist/storages/redis/msgpack.d.ts +0 -2
- package/dist/storages/redis/msgpack.d.ts.map +1 -1
- package/dist/storages/redis/msgpack.js +1 -2
- package/dist/storages/redis/types.d.ts +0 -2
- package/dist/storages/redis/types.d.ts.map +1 -1
- package/dist/string.d.ts +0 -2
- package/dist/string.d.ts.map +1 -1
- package/dist/string.js +1 -2
- package/dist/time.d.ts +0 -2
- package/dist/time.d.ts.map +1 -1
- package/dist/time.js +1 -2
- package/dist/types/filtered-key-path.d.ts +0 -2
- package/dist/types/filtered-key-path.d.ts.map +1 -1
- package/dist/types/index.d.ts +0 -10
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/vue.d.ts +0 -2
- package/dist/types/vue.d.ts.map +1 -1
- package/dist/url.d.ts +0 -2
- package/dist/url.d.ts.map +1 -1
- package/dist/url.js +1 -2
- package/dist/vue.d.ts +0 -2
- package/dist/vue.d.ts.map +1 -1
- package/dist/vue.js +1 -2
- package/dist/web.d.ts +0 -2
- package/dist/web.d.ts.map +1 -1
- package/dist/web.js +1 -2
- package/package.json +73 -45
- package/src/logger/_internals/formatter.ts +80 -0
- package/src/logger/_internals/levels.ts +60 -0
- package/src/logger/_internals/logger.ts +224 -0
- package/src/logger/_internals/types.ts +12 -0
- package/src/logger/index.ts +34 -0
- package/src/logger/node/_internals/file-writer.ts +298 -0
- package/src/logger/node/_internals/formatter.ts +33 -0
- package/src/logger/node/index.ts +175 -0
- package/src/logger/node/types.ts +58 -0
- package/src/logger/types.ts +59 -0
- package/src/types/index.ts +0 -10
- package/dist/classes/ssh-client.d.ts +0 -40
- package/dist/classes/ssh-client.d.ts.map +0 -1
- package/dist/classes/ssh-client.js +0 -130
- package/dist/classes/ssh-client.js.map +0 -1
- package/dist/consola.d.ts +0 -24
- package/dist/consola.d.ts.map +0 -1
- package/dist/consola.js +0 -29
- package/dist/consola.js.map +0 -1
- package/dist/object.d.ts +0 -44
- package/dist/object.d.ts.map +0 -1
- package/dist/object.js +0 -59
- package/dist/object.js.map +0 -1
- package/dist/pino.d.ts +0 -25
- package/dist/pino.d.ts.map +0 -1
- package/dist/pino.js +0 -34
- package/dist/pino.js.map +0 -1
- package/src/classes/ssh-client.ts +0 -175
- package/src/consola.ts +0 -25
- package/src/object.ts +0 -78
- package/src/pino.ts +0 -33
package/src/object.ts
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Serializes a nested object into a deterministic, flat string format.
|
|
3
|
-
*
|
|
4
|
-
* @remarks
|
|
5
|
-
* This function recursively traverses the input object (including nested objects and arrays),
|
|
6
|
-
* flattens it into key paths using dot notation (e.g. "a.b.0.c"), sorts all keys,
|
|
7
|
-
* and joins each key-value pair into a string with customizable separators.
|
|
8
|
-
*
|
|
9
|
-
* It is designed for use cases such as signature generation, cache key construction,
|
|
10
|
-
* or any context requiring consistent and predictable object serialization.
|
|
11
|
-
*
|
|
12
|
-
* Note: Empty objects and arrays produce an empty string, which is useful for
|
|
13
|
-
* generating deterministic signature payloads.
|
|
14
|
-
*
|
|
15
|
-
* @param input - The object to serialize. Can contain nested objects and arrays.
|
|
16
|
-
* @param kvSeparator - The string used to separate each key from its value (default: '=').
|
|
17
|
-
* @param pairSeparator - The string used to separate each key-value pair (default: '&').
|
|
18
|
-
*
|
|
19
|
-
* @returns A deterministic string representation of the input object.
|
|
20
|
-
*
|
|
21
|
-
* @example
|
|
22
|
-
*
|
|
23
|
-
* ```ts
|
|
24
|
-
* import { stringifyObjectDeterministically } from '@kikiutils/shared/object';
|
|
25
|
-
*
|
|
26
|
-
* console.log(stringifyObjectDeterministically({
|
|
27
|
-
* b: 2,
|
|
28
|
-
* a: {
|
|
29
|
-
* x: 1,
|
|
30
|
-
* y: [
|
|
31
|
-
* 3,
|
|
32
|
-
* 4,
|
|
33
|
-
* ],
|
|
34
|
-
* },
|
|
35
|
-
* })); // => a.x=1&a.y.0=3&a.y.1=4&b=2
|
|
36
|
-
*
|
|
37
|
-
* console.log(stringifyObjectDeterministically({ foo: 'bar' }, ':', '|')); // => foo:bar
|
|
38
|
-
* console.log(stringifyObjectDeterministically({})); // => ''
|
|
39
|
-
* ```
|
|
40
|
-
*/
|
|
41
|
-
export function stringifyObjectDeterministically(
|
|
42
|
-
input: Record<string, any>,
|
|
43
|
-
kvSeparator: string = '=',
|
|
44
|
-
pairSeparator: string = '&',
|
|
45
|
-
) {
|
|
46
|
-
const entries: string[] = [];
|
|
47
|
-
|
|
48
|
-
function walk(object: any, path: string[] = []) {
|
|
49
|
-
if (Array.isArray(object)) {
|
|
50
|
-
object.forEach((value, i) => {
|
|
51
|
-
walk(
|
|
52
|
-
value,
|
|
53
|
-
[
|
|
54
|
-
...path,
|
|
55
|
-
i.toString(),
|
|
56
|
-
],
|
|
57
|
-
);
|
|
58
|
-
});
|
|
59
|
-
} else if (
|
|
60
|
-
object !== null
|
|
61
|
-
&& typeof object === 'object'
|
|
62
|
-
&& Object.prototype.toString.call(object) === '[object Object]'
|
|
63
|
-
) {
|
|
64
|
-
Object.keys(object).sort().forEach((key) => {
|
|
65
|
-
walk(
|
|
66
|
-
object[key],
|
|
67
|
-
[
|
|
68
|
-
...path,
|
|
69
|
-
key,
|
|
70
|
-
],
|
|
71
|
-
);
|
|
72
|
-
});
|
|
73
|
-
} else entries.push(`${path.join('.')}${kvSeparator}${String(object)}`);
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
walk(input);
|
|
77
|
-
return entries.sort().join(pairSeparator);
|
|
78
|
-
}
|
package/src/pino.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { pino } from 'pino';
|
|
2
|
-
import { PinoPretty } from 'pino-pretty';
|
|
3
|
-
|
|
4
|
-
// Configure pretty-printed log output.
|
|
5
|
-
const stream = PinoPretty({
|
|
6
|
-
colorize: true, // Enable colored output for better readability
|
|
7
|
-
ignore: 'hostname,pid', // Exclude 'hostname' and 'pid' fields from the logs
|
|
8
|
-
translateTime: 'SYS:yyyy-mm-dd HH:MM:ss.l', // Format the timestamp in 'yyyy-mm-dd HH:MM:ss.l' format
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* A pino logger with environment-controlled verbosity.
|
|
13
|
-
*
|
|
14
|
-
* @remarks
|
|
15
|
-
* `PINO_LOGGER_LEVEL` sets the log level when nonempty at module initialization;
|
|
16
|
-
* otherwise, `NODE_ENV=production` selects `error`, and other environments retain the logger's default level.
|
|
17
|
-
* Assign `logger.level` to change verbosity after initialization.
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
*
|
|
21
|
-
* ```ts
|
|
22
|
-
* import { logger } from '@kikiutils/shared/pino';
|
|
23
|
-
*
|
|
24
|
-
* logger.level = 'info';
|
|
25
|
-
* logger.info('Application started');
|
|
26
|
-
* ```
|
|
27
|
-
*
|
|
28
|
-
* @see {@link https://getpino.io/#/docs/api?id=level-string | Pino log levels}
|
|
29
|
-
*/
|
|
30
|
-
export const pinoLogger = pino({}, stream);
|
|
31
|
-
export const logger = pinoLogger;
|
|
32
|
-
// eslint-disable-next-line style/max-len
|
|
33
|
-
pinoLogger.level = process.env.PINO_LOGGER_LEVEL || (process.env.NODE_ENV === 'production' ? 'error' : pinoLogger.level);
|