@sergdudko/objectstream 2.0.5 → 3.1.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/CHANGELOG.md +7 -23
- package/README.md +84 -71
- package/ignoreUpdatesModules.json +4 -0
- package/lib/classes/Parser.d.ts +2 -1
- package/lib/classes/Parser.js +41 -35
- package/lib/classes/Parser.js.map +1 -1
- package/lib/classes/Stringifer.d.ts +2 -1
- package/lib/classes/Stringifer.js +39 -22
- package/lib/classes/Stringifer.js.map +1 -1
- package/lib/index.js +3 -3
- package/lib/index.js.map +1 -1
- package/lib/utils/global.js +6 -5
- package/lib/utils/global.js.map +1 -1
- package/package.json +22 -18
package/CHANGELOG.md
CHANGED
|
@@ -1,34 +1,18 @@
|
|
|
1
|
-
#
|
|
1
|
+
# 3.1.1 / 2022-06-22
|
|
2
2
|
|
|
3
3
|
## :tada: Enhancements
|
|
4
|
-
- Replaced tslint with eslint
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
- Updated code style
|
|
7
6
|
|
|
8
|
-
|
|
9
|
-
- Size optimization
|
|
10
|
-
|
|
11
|
-
# 2.0.3 / 2020-06-08
|
|
12
|
-
|
|
13
|
-
## :tada: Enhancements
|
|
14
|
-
- Size optimization
|
|
15
|
-
|
|
16
|
-
# 2.0.2 / 2020-06-07
|
|
7
|
+
# 3.1.0 / 2022-06-22
|
|
17
8
|
|
|
18
9
|
## :tada: Enhancements
|
|
19
|
-
- Added TypeScript declaration
|
|
20
|
-
|
|
21
|
-
# 2.0.1 / 2020-06-07
|
|
22
10
|
|
|
23
|
-
|
|
24
|
-
-
|
|
11
|
+
- Updated libraries
|
|
12
|
+
- Fixes for node 18 and new versions of libraries
|
|
25
13
|
|
|
26
|
-
#
|
|
14
|
+
# 3.0.0 / 2021-05-10
|
|
27
15
|
|
|
28
16
|
## :tada: Enhancements
|
|
29
|
-
- New version in TypeScript implementation
|
|
30
|
-
|
|
31
|
-
# 1.7.7 / 2020-01-16
|
|
32
17
|
|
|
33
|
-
|
|
34
|
-
- Old version in JavaScript implementation
|
|
18
|
+
- Removed support Node v8.x
|
package/README.md
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Creates a stream to convert json from string or convert json to drain. The stream is based on the incoming object stream.
|
|
1
|
+
# @sergdudko/objectstream
|
|
2
|
+
|
|
3
|
+
Creates a stream to convert json from string or convert json to drain. The stream is based on the incoming object stream.
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@sergdudko/objectstream)
|
|
6
6
|
[](https://www.npmjs.com/package/@sergdudko/objectstream)
|
|
7
7
|
[](https://www.npmjs.com/package/@sergdudko/objectstream)
|
|
8
8
|

|
|
9
9
|

|
|
10
|
-
|
|
10
|
+
|
|
11
11
|
- Based on native methods of NodeJS
|
|
12
|
-
|
|
13
12
|
|
|
14
|
-
## INSTALL
|
|
15
|
-
|
|
13
|
+
## INSTALL
|
|
14
|
+
|
|
16
15
|
```bash
|
|
17
16
|
npm i @sergdudko/objectstream --save
|
|
18
17
|
```
|
|
@@ -23,77 +22,91 @@ Creates a stream to convert json from string or convert json to drain. The strea
|
|
|
23
22
|
|
|
24
23
|
## SUPPORTED ENCODING
|
|
25
24
|
|
|
26
|
-
|
|
|
27
|
-
|
|
28
|
-
|
|
|
29
|
-
|
|
|
25
|
+
| Stream | incoming stream | outgoing stream |
|
|
26
|
+
| ---------- | --------------------------------- | --------------------------------- |
|
|
27
|
+
| Stringifer | utf8 (object mode) | utf8, base64, latin1, binary, hex |
|
|
28
|
+
| Parser | utf8, base64, latin1, binary, hex | utf8 (object mode) |
|
|
30
29
|
|
|
31
30
|
## USE
|
|
32
31
|
|
|
33
32
|
```js
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
33
|
+
// REQUIRE OR IMPORT CLASS
|
|
34
|
+
|
|
35
|
+
const Stringifer = require("@sergdudko/objectstream").Stringifer;
|
|
36
|
+
const Parser = require("@sergdudko/objectstream").Parser;
|
|
37
|
+
// or use import
|
|
38
|
+
import { Stringifer, Parser } from "@sergdudko/objectstream";
|
|
39
|
+
|
|
40
|
+
// CREATE STREAM
|
|
41
|
+
|
|
42
|
+
const firstSeparator = "[";
|
|
43
|
+
const middleSeparator = ",";
|
|
44
|
+
const endSeparator = "]";
|
|
45
|
+
const stringToObject = new Parser(
|
|
46
|
+
firstSeparator,
|
|
47
|
+
middleSeparator,
|
|
48
|
+
endSeparator
|
|
49
|
+
);
|
|
50
|
+
const objectToString = new Stringifer(
|
|
51
|
+
firstSeparator,
|
|
52
|
+
middleSeparator,
|
|
53
|
+
endSeparator
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
// EVENTS
|
|
57
|
+
|
|
58
|
+
stringToObject.on("data", (e) => {
|
|
59
|
+
// e - is Object
|
|
60
|
+
});
|
|
61
|
+
stringToObject.on("error", (d) => {
|
|
62
|
+
// e - Array of Error
|
|
63
|
+
});
|
|
64
|
+
stringToObject.on("end", () => {
|
|
65
|
+
// end event
|
|
66
|
+
});
|
|
67
|
+
stringToObject.on("finish", () => {
|
|
68
|
+
// finish event
|
|
69
|
+
});
|
|
70
|
+
objectToString.on("data", (e) => {
|
|
71
|
+
// e - is Buffer (deault, if you need a string use setEncoding)
|
|
72
|
+
});
|
|
73
|
+
objectToString.on("error", (d) => {
|
|
74
|
+
// e - Array of Error
|
|
75
|
+
});
|
|
76
|
+
objectToString.on("end", () => {
|
|
77
|
+
// end event
|
|
78
|
+
});
|
|
79
|
+
objectToString.on("finish", () => {
|
|
80
|
+
// finish event
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
// CHANGE ENCODING
|
|
84
|
+
|
|
85
|
+
stringToObject.setEncoding("latin1");
|
|
86
|
+
objectToString.setEncoding("latin1");
|
|
87
|
+
|
|
88
|
+
// WRITE DATA (example for utf8)
|
|
89
|
+
|
|
90
|
+
stringToObject.write('{"boolean":true}');
|
|
91
|
+
objectToString.write({ boolean: true });
|
|
92
|
+
|
|
93
|
+
// PIPE
|
|
94
|
+
|
|
95
|
+
stringToObject.pipe(objectToString);
|
|
89
96
|
```
|
|
90
97
|
|
|
91
98
|
## WARNING
|
|
92
|
-
|
|
99
|
+
|
|
100
|
+
Streams behave unexpectedly when processing errors in versions node 14 and later. In these versions, you need to make sure that in case of an error the stream will be destroyed or the processing of the stream will continue.
|
|
93
101
|
|
|
94
102
|
## EXAMPLE
|
|
103
|
+
|
|
95
104
|
[see test directory](https://github.com/siarheidudko/objectstream/tree/master/test)
|
|
96
|
-
|
|
97
|
-
##
|
|
98
|
-
|
|
99
|
-
|
|
105
|
+
|
|
106
|
+
## OLDER VERSIONS
|
|
107
|
+
|
|
108
|
+
- [v2.0.5](https://www.npmjs.com/package/@sergdudko/objectstream/v/2.0.5) - supported Node 8
|
|
109
|
+
|
|
110
|
+
## LICENSE
|
|
111
|
+
|
|
112
|
+
MIT
|
package/lib/classes/Parser.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import { Transform } from "stream";
|
|
3
4
|
/**
|
|
4
5
|
* @class Parser
|
|
@@ -79,7 +80,7 @@ export declare class Parser extends Transform {
|
|
|
79
80
|
* @param encoding - stream encoding
|
|
80
81
|
* @param callback - callback function
|
|
81
82
|
*/
|
|
82
|
-
_transform(string: string | Buffer | null | undefined, encoding?:
|
|
83
|
+
_transform(string: string | Buffer | null | undefined, encoding?: BufferEncoding, callback?: Function): void;
|
|
83
84
|
/**
|
|
84
85
|
* Flush event handler
|
|
85
86
|
*
|
package/lib/classes/Parser.js
CHANGED
|
@@ -17,25 +17,25 @@ class Parser extends stream_1.Transform {
|
|
|
17
17
|
*/
|
|
18
18
|
constructor(start, middle, end) {
|
|
19
19
|
super({ highWaterMark: 64 * 1024, objectMode: true });
|
|
20
|
-
if (
|
|
21
|
-
(
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
if (typeof start !== "undefined" &&
|
|
21
|
+
(typeof start !== "string" ||
|
|
22
|
+
Buffer.byteLength(start) > 1 ||
|
|
23
|
+
start.match(/["{}]/)))
|
|
24
24
|
throw new Error("Argument start require one byte String!");
|
|
25
|
-
if (
|
|
26
|
-
(
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
if (typeof middle !== "undefined" &&
|
|
26
|
+
(typeof middle !== "string" ||
|
|
27
|
+
Buffer.byteLength(middle) > 1 ||
|
|
28
|
+
middle.match(/["{}]/)))
|
|
29
29
|
throw new Error("Argument separator require one byte String!");
|
|
30
|
-
if (
|
|
31
|
-
(
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
if (typeof end !== "undefined" &&
|
|
31
|
+
(typeof end !== "string" ||
|
|
32
|
+
Buffer.byteLength(end) > 1 ||
|
|
33
|
+
end.match(/["{}]/)))
|
|
34
34
|
throw new Error("Argument end require one byte String!");
|
|
35
35
|
this.__separators = {
|
|
36
36
|
start: Buffer.from(start ? start : "", "utf8")[0],
|
|
37
37
|
middle: Buffer.from(middle ? middle : "", "utf8")[0],
|
|
38
|
-
end: Buffer.from(end ? end : "", "utf8")[0]
|
|
38
|
+
end: Buffer.from(end ? end : "", "utf8")[0],
|
|
39
39
|
};
|
|
40
40
|
this.__clear();
|
|
41
41
|
this.__bytesRead = 0;
|
|
@@ -69,16 +69,17 @@ class Parser extends stream_1.Transform {
|
|
|
69
69
|
if (this.__leftBrace !== 0) {
|
|
70
70
|
this.__buffers.push(buffer.slice(s, s + 1));
|
|
71
71
|
}
|
|
72
|
-
else if (
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
72
|
+
else if (this.__separators.start !== buffer[s] &&
|
|
73
|
+
this.__separators.end !== buffer[s] &&
|
|
74
|
+
this.__separators.middle !== buffer[s] &&
|
|
75
|
+
0x20 !== buffer[s] &&
|
|
76
|
+
0x0d !== buffer[s] &&
|
|
77
|
+
0x0a !== buffer[s] &&
|
|
78
|
+
0x09 !== buffer[s]) {
|
|
79
79
|
errors.push(new Error("Unexpected token " +
|
|
80
80
|
buffer.slice(s, s + 1).toString(this.__encoding) +
|
|
81
|
-
" in JSON at position " +
|
|
81
|
+
" in JSON at position " +
|
|
82
|
+
(this.__bytesRead + s)));
|
|
82
83
|
}
|
|
83
84
|
}
|
|
84
85
|
/**
|
|
@@ -89,8 +90,12 @@ class Parser extends stream_1.Transform {
|
|
|
89
90
|
* @param encoding - stream encoding
|
|
90
91
|
* @param callback - callback function
|
|
91
92
|
*/
|
|
92
|
-
_transform(string,
|
|
93
|
-
|
|
93
|
+
_transform(string,
|
|
94
|
+
// eslint-disable-next-line
|
|
95
|
+
encoding = this.__encoding, callback = () => {
|
|
96
|
+
return;
|
|
97
|
+
}) {
|
|
98
|
+
if (typeof string === "undefined") {
|
|
94
99
|
callback();
|
|
95
100
|
return;
|
|
96
101
|
}
|
|
@@ -100,13 +105,12 @@ class Parser extends stream_1.Transform {
|
|
|
100
105
|
});
|
|
101
106
|
return;
|
|
102
107
|
}
|
|
103
|
-
const _buffer =
|
|
104
|
-
Buffer.from(string, encoding) : string;
|
|
108
|
+
const _buffer = typeof string === "string" ? Buffer.from(string, encoding) : string;
|
|
105
109
|
if (!(_buffer instanceof Buffer)) {
|
|
106
110
|
callback([
|
|
107
111
|
new Error("Incoming data type is " +
|
|
108
|
-
typeof
|
|
109
|
-
", require data type is String!")
|
|
112
|
+
typeof _buffer +
|
|
113
|
+
", require data type is String!"),
|
|
110
114
|
]);
|
|
111
115
|
return;
|
|
112
116
|
}
|
|
@@ -132,7 +136,7 @@ class Parser extends stream_1.Transform {
|
|
|
132
136
|
case 0x0d:
|
|
133
137
|
case 0x00:
|
|
134
138
|
case 0x0b:
|
|
135
|
-
if (this.__openQuotes &&
|
|
139
|
+
if (this.__openQuotes && this.__leftBrace !== 0)
|
|
136
140
|
this.__buffers.push(Buffer.from("\\u" + ("0000" + _buffer[s].toString(16)).slice(-4), "utf8"));
|
|
137
141
|
break;
|
|
138
142
|
case 0x22:
|
|
@@ -147,12 +151,12 @@ class Parser extends stream_1.Transform {
|
|
|
147
151
|
this.__handler(_buffer, s, errors);
|
|
148
152
|
break;
|
|
149
153
|
}
|
|
150
|
-
if (
|
|
154
|
+
if (this.__leftBrace !== 0 && this.__leftBrace === this.__rightBrace) {
|
|
151
155
|
try {
|
|
152
156
|
const _buf = Buffer.concat(this.__buffers);
|
|
153
157
|
const _str = _buf.toString("utf8");
|
|
154
158
|
const _object = JSON.parse(_str);
|
|
155
|
-
if (global_1.validator(_object, false)) {
|
|
159
|
+
if ((0, global_1.validator)(_object, false)) {
|
|
156
160
|
this.__clear();
|
|
157
161
|
this.push(_object);
|
|
158
162
|
}
|
|
@@ -183,7 +187,9 @@ class Parser extends stream_1.Transform {
|
|
|
183
187
|
* @private
|
|
184
188
|
* @param callback - callback function
|
|
185
189
|
*/
|
|
186
|
-
_flush(callback = () => {
|
|
190
|
+
_flush(callback = () => {
|
|
191
|
+
return;
|
|
192
|
+
}) {
|
|
187
193
|
this.__clear();
|
|
188
194
|
callback();
|
|
189
195
|
}
|
|
@@ -193,7 +199,9 @@ class Parser extends stream_1.Transform {
|
|
|
193
199
|
* @private
|
|
194
200
|
* @param callback - callback function
|
|
195
201
|
*/
|
|
196
|
-
_final(callback = () => {
|
|
202
|
+
_final(callback = () => {
|
|
203
|
+
return;
|
|
204
|
+
}) {
|
|
197
205
|
if (this.__buffers.length === 0) {
|
|
198
206
|
callback();
|
|
199
207
|
return;
|
|
@@ -202,9 +210,7 @@ class Parser extends stream_1.Transform {
|
|
|
202
210
|
const _buf = Buffer.concat(this.__buffers);
|
|
203
211
|
const _str = _buf.toString("utf8");
|
|
204
212
|
JSON.parse(_str);
|
|
205
|
-
callback([
|
|
206
|
-
new Error("Raw object detected!")
|
|
207
|
-
]);
|
|
213
|
+
callback([new Error("Raw object detected!")]);
|
|
208
214
|
}
|
|
209
215
|
catch (err) {
|
|
210
216
|
callback([err]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Parser.js","sourceRoot":"","sources":["../../src/classes/Parser.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Parser.js","sourceRoot":"","sources":["../../src/classes/Parser.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACnC,4CAA4C;AAE5C;;;;GAIG;AACH,MAAa,MAAO,SAAQ,kBAAS;IACnC;;;;;OAKG;IACH,YAAY,KAAc,EAAE,MAAe,EAAE,GAAY;QACvD,KAAK,CAAC,EAAE,aAAa,EAAE,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,IACE,OAAO,KAAK,KAAK,WAAW;YAC5B,CAAC,OAAO,KAAK,KAAK,QAAQ;gBACxB,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC5B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEvB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,IACE,OAAO,MAAM,KAAK,WAAW;YAC7B,CAAC,OAAO,MAAM,KAAK,QAAQ;gBACzB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC;gBAC7B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAExB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,IACE,OAAO,GAAG,KAAK,WAAW;YAC1B,CAAC,OAAO,GAAG,KAAK,QAAQ;gBACtB,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;gBAC1B,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAErB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,GAAG;YAClB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;YACpD,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;SAC5C,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IAqDD;;;;OAIG;IACK,OAAO;QACb,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IACD;;OAEG;IACK,SAAS,CAAC,MAAc,EAAE,CAAS,EAAE,MAAe;QAC1D,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,EAAE;YACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/C,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC/B;QACD,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,EAAE;YAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAC7C;aAAM,IACL,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC;YACrC,IAAI,CAAC,YAAY,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC;YACtC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;YAClB,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;YAClB,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;YAClB,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAClB;YACA,MAAM,CAAC,IAAI,CACT,IAAI,KAAK,CACP,mBAAmB;gBACjB,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;gBAChD,uBAAuB;gBACvB,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CACzB,CACF,CAAC;SACH;IACH,CAAC;IACD;;;;;;;OAOG;IACI,UAAU,CACf,MAA0C;IAC1C,2BAA2B;IAC3B,WAAW,IAAI,CAAC,UAA4B,EAC5C,WAAqB,GAAG,EAAE;QACxB,OAAO;IACT,CAAC;QAED,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,QAAQ,EAAE,CAAC;YACX,OAAO;SACR;QACD,IAAI,MAAM,KAAK,IAAI,EAAE;YACnB,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;gBACf,QAAQ,EAAE,CAAC;YACb,CAAC,CAAC,CAAC;YACH,OAAO;SACR;QACD,MAAM,OAAO,GACX,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACtE,IAAI,CAAC,CAAC,OAAO,YAAY,MAAM,CAAC,EAAE;YAChC,QAAQ,CAAC;gBACP,IAAI,KAAK,CACP,wBAAwB;oBACtB,OAAO,OAAO;oBACd,gCAAgC,CACnC;aACF,CAAC,CAAC;YACH,OAAO;SACR;QACD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YAClC,QAAQ,EAAE,CAAC;YACX,OAAO;SACR;QACD,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,QAAQ,OAAO,CAAC,CAAC,CAAC,EAAE;gBAClB,KAAK,IAAI;oBACP,IAAI,CAAC,WAAW,EAAE,CAAC;oBACnB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;oBACnC,MAAM;gBACR,KAAK,IAAI;oBACP,IAAI,CAAC,YAAY,EAAE,CAAC;oBACpB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;oBACnC,MAAM;gBACR,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI;oBACP,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC;wBAC7C,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,MAAM,CAAC,IAAI,CACT,KAAK,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACpD,MAAM,CACP,CACF,CAAC;oBACJ,MAAM;gBACR,KAAK,IAAI;oBACP,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI;wBACzB,IAAI,IAAI,CAAC,YAAY;4BAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;6BAC5C,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC;4BAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;oBAC5D,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;oBACnC,MAAM;gBACR;oBACE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;oBACnC,MAAM;aACT;YACD,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,YAAY,EAAE;gBACpE,IAAI;oBACF,MAAM,IAAI,GAAW,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACnD,MAAM,IAAI,GAAW,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACjC,IAAI,IAAA,kBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE;wBAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;wBACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACpB;yBAAM;wBACL,IAAI,CAAC,OAAO,EAAE,CAAC;wBACf,MAAM,CAAC,IAAI,CACT,IAAI,KAAK,CACP,2DAA2D,CAC5D,CACF,CAAC;qBACH;iBACF;gBAAC,OAAO,GAAQ,EAAE;oBACjB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAClB;aACF;iBAAM,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE;gBAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;aACxD;SACF;QACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;;YACnC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,UAAU,CAAC;IACzC,CAAC;IACD;;;;;OAKG;IACI,MAAM,CACX,WAAqB,GAAG,EAAE;QACxB,OAAO;IACT,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,QAAQ,EAAE,CAAC;IACb,CAAC;IACD;;;;;OAKG;IACI,MAAM,CACX,WAAqB,GAAG,EAAE;QACxB,OAAO;IACT,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,QAAQ,EAAE,CAAC;YACX,OAAO;SACR;QACD,IAAI;YACF,MAAM,IAAI,GAAW,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnD,MAAM,IAAI,GAAW,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjB,QAAQ,CAAC,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;SAC/C;QAAC,OAAO,GAAG,EAAE;YACZ,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACjB;IACH,CAAC;IACD;;OAEG;IACI,WAAW,CAChB,QAAmE;QAEnE,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;QAC3B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;;AAnSH,wBAoSC;AA9OC;;;;GAIG;AACY,cAAO,GAAW,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import { Transform } from "stream";
|
|
3
4
|
/**
|
|
4
5
|
* @class Stringifer
|
|
@@ -47,7 +48,7 @@ export declare class Stringifer extends Transform {
|
|
|
47
48
|
*/
|
|
48
49
|
_transform(object: {
|
|
49
50
|
[key: string]: any;
|
|
50
|
-
} | null | undefined, encoding?:
|
|
51
|
+
} | null | undefined, encoding?: BufferEncoding, callback?: Function): void;
|
|
51
52
|
/**
|
|
52
53
|
* Flush event handler
|
|
53
54
|
*
|
|
@@ -17,25 +17,25 @@ class Stringifer extends stream_1.Transform {
|
|
|
17
17
|
*/
|
|
18
18
|
constructor(start, middle, end) {
|
|
19
19
|
super({ highWaterMark: 64 * 1024, objectMode: true });
|
|
20
|
-
if (
|
|
21
|
-
(
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
if (typeof start !== "undefined" &&
|
|
21
|
+
(typeof start !== "string" ||
|
|
22
|
+
Buffer.byteLength(start) > 1 ||
|
|
23
|
+
start.match(/["{}]/)))
|
|
24
24
|
throw new Error("Argument start require one byte String!");
|
|
25
|
-
if (
|
|
26
|
-
(
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
if (typeof middle !== "undefined" &&
|
|
26
|
+
(typeof middle !== "string" ||
|
|
27
|
+
Buffer.byteLength(middle) > 1 ||
|
|
28
|
+
middle.match(/["{}]/)))
|
|
29
29
|
throw new Error("Argument separator require one byte String!");
|
|
30
|
-
if (
|
|
31
|
-
(
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
if (typeof end !== "undefined" &&
|
|
31
|
+
(typeof end !== "string" ||
|
|
32
|
+
Buffer.byteLength(end) > 1 ||
|
|
33
|
+
end.match(/["{}]/)))
|
|
34
34
|
throw new Error("Argument end require one byte String!");
|
|
35
35
|
this.__separators = {
|
|
36
36
|
start: Buffer.from(start ? start : "", "utf8"),
|
|
37
37
|
middle: Buffer.from(middle ? middle : "", "utf8"),
|
|
38
|
-
end: Buffer.from(end ? end : "", "utf8")
|
|
38
|
+
end: Buffer.from(end ? end : "", "utf8"),
|
|
39
39
|
};
|
|
40
40
|
this.__isString = false;
|
|
41
41
|
this.__bytesWrite = 0;
|
|
@@ -51,8 +51,12 @@ class Stringifer extends stream_1.Transform {
|
|
|
51
51
|
* @param callback - callback function
|
|
52
52
|
*/
|
|
53
53
|
// eslint-disable-next-line
|
|
54
|
-
_transform(object,
|
|
55
|
-
|
|
54
|
+
_transform(object,
|
|
55
|
+
// eslint-disable-next-line
|
|
56
|
+
encoding = this.__encoding, callback = () => {
|
|
57
|
+
return;
|
|
58
|
+
}) {
|
|
59
|
+
if (typeof object === "undefined") {
|
|
56
60
|
callback();
|
|
57
61
|
return;
|
|
58
62
|
}
|
|
@@ -62,11 +66,13 @@ class Stringifer extends stream_1.Transform {
|
|
|
62
66
|
});
|
|
63
67
|
return;
|
|
64
68
|
}
|
|
65
|
-
switch (typeof
|
|
69
|
+
switch (typeof object) {
|
|
66
70
|
case "object":
|
|
67
71
|
try {
|
|
68
|
-
if (global_1.validator(object, false) !== true) {
|
|
69
|
-
callback([
|
|
72
|
+
if ((0, global_1.validator)(object, false) !== true) {
|
|
73
|
+
callback([
|
|
74
|
+
new Error("Validation failed, incoming data type is not pure Object!"),
|
|
75
|
+
]);
|
|
70
76
|
return;
|
|
71
77
|
}
|
|
72
78
|
let _buffer = Buffer.from(JSON.stringify(object), "utf8");
|
|
@@ -92,7 +98,11 @@ class Stringifer extends stream_1.Transform {
|
|
|
92
98
|
callback();
|
|
93
99
|
return;
|
|
94
100
|
default:
|
|
95
|
-
callback([
|
|
101
|
+
callback([
|
|
102
|
+
new Error("Incoming data type is " +
|
|
103
|
+
typeof object +
|
|
104
|
+
", require data type is pure Object!"),
|
|
105
|
+
]);
|
|
96
106
|
return;
|
|
97
107
|
}
|
|
98
108
|
}
|
|
@@ -102,7 +112,9 @@ class Stringifer extends stream_1.Transform {
|
|
|
102
112
|
* @private
|
|
103
113
|
* @param callback - callback function
|
|
104
114
|
*/
|
|
105
|
-
_flush(callback = () => {
|
|
115
|
+
_flush(callback = () => {
|
|
116
|
+
return;
|
|
117
|
+
}) {
|
|
106
118
|
callback();
|
|
107
119
|
}
|
|
108
120
|
/**
|
|
@@ -111,9 +123,14 @@ class Stringifer extends stream_1.Transform {
|
|
|
111
123
|
* @private
|
|
112
124
|
* @param callback - callback function
|
|
113
125
|
*/
|
|
114
|
-
_final(callback = () => {
|
|
126
|
+
_final(callback = () => {
|
|
127
|
+
return;
|
|
128
|
+
}) {
|
|
115
129
|
if (this.__bytesWrite === 0) {
|
|
116
|
-
const _buffer = Buffer.concat([
|
|
130
|
+
const _buffer = Buffer.concat([
|
|
131
|
+
this.__separators.start,
|
|
132
|
+
this.__separators.end,
|
|
133
|
+
]);
|
|
117
134
|
if (this.__isString)
|
|
118
135
|
this.push(_buffer.toString(this.__encoding));
|
|
119
136
|
else
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stringifer.js","sourceRoot":"","sources":["../../src/classes/Stringifer.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Stringifer.js","sourceRoot":"","sources":["../../src/classes/Stringifer.ts"],"names":[],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
*/
|
|
11
11
|
const Parser_1 = require("./classes/Parser");
|
|
12
12
|
const Stringifer_1 = require("./classes/Stringifer");
|
|
13
|
-
module.exports = module.exports = {
|
|
13
|
+
module.exports = (module.exports = {
|
|
14
14
|
/**
|
|
15
15
|
* Object to String stream
|
|
16
16
|
*/
|
|
@@ -18,6 +18,6 @@ module.exports = module.exports = {
|
|
|
18
18
|
/**
|
|
19
19
|
* String to Object stream
|
|
20
20
|
*/
|
|
21
|
-
Parser: Parser_1.Parser
|
|
22
|
-
};
|
|
21
|
+
Parser: Parser_1.Parser,
|
|
22
|
+
});
|
|
23
23
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;AAEH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;AAEH,6CAA0C;AAC1C,qDAAkD;AAElD,iBAAS,CAAC,MAAM,CAAC,OAAO,GAAG;IACzB;;OAEG;IACH,UAAU,EAAV,uBAAU;IACV;;OAEG;IACH,MAAM,EAAN,eAAM;CACP,CAAC,CAAC"}
|
package/lib/utils/global.js
CHANGED
|
@@ -8,8 +8,8 @@ exports.validator = void 0;
|
|
|
8
8
|
* @param obj - object for validation
|
|
9
9
|
* @param it - internal flag
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
switch (typeof
|
|
11
|
+
const validator = (obj, it = true) => {
|
|
12
|
+
switch (typeof obj) {
|
|
13
13
|
case "boolean":
|
|
14
14
|
return true;
|
|
15
15
|
case "number":
|
|
@@ -21,13 +21,13 @@ exports.validator = (obj, it = true) => {
|
|
|
21
21
|
return true;
|
|
22
22
|
if (obj.__proto__ === {}.__proto__) {
|
|
23
23
|
for (const key in obj)
|
|
24
|
-
if (exports.validator(obj[key]) === false)
|
|
24
|
+
if ((0, exports.validator)(obj[key]) === false)
|
|
25
25
|
return false;
|
|
26
26
|
return true;
|
|
27
27
|
}
|
|
28
|
-
if (it &&
|
|
28
|
+
if (it && obj.__proto__ === [].__proto__) {
|
|
29
29
|
for (const key of obj)
|
|
30
|
-
if (exports.validator(key) === false)
|
|
30
|
+
if ((0, exports.validator)(key) === false)
|
|
31
31
|
return false;
|
|
32
32
|
return true;
|
|
33
33
|
}
|
|
@@ -36,4 +36,5 @@ exports.validator = (obj, it = true) => {
|
|
|
36
36
|
return false;
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
|
+
exports.validator = validator;
|
|
39
40
|
//# sourceMappingURL=global.js.map
|
package/lib/utils/global.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/utils/global.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/utils/global.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACI,MAAM,SAAS,GAAG,CAAC,GAAQ,EAAE,KAAc,IAAI,EAAE,EAAE;IACxD,QAAQ,OAAO,GAAG,EAAE;QAClB,KAAK,SAAS;YACZ,OAAO,IAAI,CAAC;QACd,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC;QACd,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC;QACd,KAAK,QAAQ;YACX,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YAC9B,IAAI,GAAG,CAAC,SAAS,KAAM,EAAU,CAAC,SAAS,EAAE;gBAC3C,KAAK,MAAM,GAAG,IAAI,GAAG;oBAAE,IAAI,IAAA,iBAAS,EAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;wBAAE,OAAO,KAAK,CAAC;gBACvE,OAAO,IAAI,CAAC;aACb;YACD,IAAI,EAAE,IAAI,GAAG,CAAC,SAAS,KAAM,EAAU,CAAC,SAAS,EAAE;gBACjD,KAAK,MAAM,GAAG,IAAI,GAAG;oBAAE,IAAI,IAAA,iBAAS,EAAC,GAAG,CAAC,KAAK,KAAK;wBAAE,OAAO,KAAK,CAAC;gBAClE,OAAO,IAAI,CAAC;aACb;YACD,OAAO,KAAK,CAAC;QACf;YACE,OAAO,KAAK,CAAC;KAChB;AACH,CAAC,CAAC;AAtBW,QAAA,SAAS,aAsBpB"}
|
package/package.json
CHANGED
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sergdudko/objectstream",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.1.1",
|
|
4
4
|
"description": "Creates a stream to convert json from string or convert json to string.",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
8
|
-
"test": "mocha test/**/*.test.js",
|
|
9
|
-
"
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
8
|
+
"test": "node_modules/.bin/mocha test/**/*.test.js",
|
|
9
|
+
"cov": "node_modules/.bin/nyc npm run test",
|
|
10
|
+
"doc": "node_modules/.bin/typedoc --entryPointStrategy expand src&&echo \"\">./docs/.nojekyll",
|
|
11
|
+
"lint": "node_modules/.bin/eslint -c .eslintrc.js --ext .ts src",
|
|
12
|
+
"build": "rm -rf lib && node_modules/.bin/tsc --declaration",
|
|
13
|
+
"update": "eval \"$(node -e 'const t = require(`./package.json`);const ignore = require(`./ignoreUpdatesModules.json`);console.log(`npm i ${(Object.keys(t.dependencies).filter((e)=>ignore.base.indexOf(e) === -1).map((e)=>(`${e}@latest`)).join(` `))} --save&&npm i ${(Object.keys(t.devDependencies).filter((e)=>ignore.dev.indexOf(e) === -1).map((e)=>(`${e}@latest`)).join(` `))} --save-dev`);')\"",
|
|
13
14
|
"testv12": "docker run --name=objectstream-node12 --rm -v $PWD:/app node12:1.0.0 nyc npm run test",
|
|
14
15
|
"testv13": "docker run --name=objectstream-node13 --rm -v $PWD:/app node13:1.0.0 nyc npm run test",
|
|
15
|
-
"testv14": "docker run --name=objectstream-node14 --rm -v $PWD:/app node14:1.0.0 nyc npm run test"
|
|
16
|
+
"testv14": "docker run --name=objectstream-node14 --rm -v $PWD:/app node14:1.0.0 nyc npm run test",
|
|
17
|
+
"testv16": "docker run --name=objectstream-node16 --rm -v $PWD:/app node16:1.0.0 nyc npm run test",
|
|
18
|
+
"testv18": "docker run --name=objectstream-node18 --rm -v $PWD:/app node18:1.0.0 nyc npm run test"
|
|
16
19
|
},
|
|
17
20
|
"author": "Siarhei Dudko",
|
|
18
21
|
"license": "MIT",
|
|
@@ -34,19 +37,20 @@
|
|
|
34
37
|
],
|
|
35
38
|
"homepage": "https://siarheidudko.github.io/objectstream/index.html",
|
|
36
39
|
"devDependencies": {
|
|
37
|
-
"@types/node": "^
|
|
38
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
39
|
-
"@typescript-eslint/parser": "^
|
|
40
|
-
"eslint": "^
|
|
41
|
-
"eslint-config-prettier": "^
|
|
42
|
-
"eslint-plugin-import": "^2.
|
|
43
|
-
"lodash": "^4.17.
|
|
44
|
-
"mocha": "^
|
|
45
|
-
"
|
|
40
|
+
"@types/node": "^16.11.41",
|
|
41
|
+
"@typescript-eslint/eslint-plugin": "^5.29.0",
|
|
42
|
+
"@typescript-eslint/parser": "^5.29.0",
|
|
43
|
+
"eslint": "^8.18.0",
|
|
44
|
+
"eslint-config-prettier": "^8.5.0",
|
|
45
|
+
"eslint-plugin-import": "^2.26.0",
|
|
46
|
+
"lodash": "^4.17.21",
|
|
47
|
+
"mocha": "^10.0.0",
|
|
48
|
+
"nyc": "^15.1.0",
|
|
49
|
+
"typedoc": "^0.22.17",
|
|
50
|
+
"typescript": "^4.7.4"
|
|
46
51
|
},
|
|
47
|
-
"dependencies": {},
|
|
48
52
|
"engines": {
|
|
49
|
-
"node": ">=
|
|
53
|
+
"node": ">=10"
|
|
50
54
|
},
|
|
51
55
|
"directorie": {
|
|
52
56
|
"man": "./docs/",
|