@ezs/basics 2.5.0 → 2.5.2
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 -1
- package/lib/buf-object.js +1 -3
- package/lib/csv-object.js +1 -7
- package/lib/csv-parse.js +1 -10
- package/lib/csv-string.js +1 -8
- package/lib/file-load.js +0 -10
- package/lib/file-save.js +3 -25
- package/lib/index.js +0 -34
- package/lib/ini-string.js +1 -5
- package/lib/json-parse.js +2 -23
- package/lib/json-string.js +0 -4
- package/lib/obj-count.js +1 -3
- package/lib/obj-flatten.js +2 -9
- package/lib/obj-namespaces.js +0 -11
- package/lib/obj-standardize.js +1 -16
- package/lib/request.js +0 -6
- package/lib/tar-dump.js +1 -8
- package/lib/tar-extract.js +0 -16
- package/lib/txt-concat.js +1 -6
- package/lib/txt-inflection.js +3 -9
- package/lib/txt-object.js +1 -6
- package/lib/txt-parse.js +1 -10
- package/lib/txt-sentences.js +4 -13
- package/lib/txt-zip.js +0 -8
- package/lib/url-connect.js +2 -23
- package/lib/url-fetch.js +2 -17
- package/lib/url-pagination.js +2 -9
- package/lib/url-parse.js +1 -5
- package/lib/url-request.js +2 -18
- package/lib/url-stream.js +0 -15
- package/lib/url-string.js +1 -5
- package/lib/xml-convert.js +1 -6
- package/lib/xml-parse.js +1 -7
- package/lib/xml-string.js +1 -9
- package/lib/zip-extract.js +0 -8
- package/package.json +3 -4
- package/CHANGELOG.md +0 -1098
package/lib/url-request.js
CHANGED
|
@@ -4,23 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = URLRequest;
|
|
7
|
-
|
|
8
7
|
var _lodash = _interopRequireDefault(require("lodash.set"));
|
|
9
|
-
|
|
10
8
|
var _debug = _interopRequireDefault(require("debug"));
|
|
11
|
-
|
|
12
9
|
var _url = require("url");
|
|
13
|
-
|
|
14
10
|
var _nodeAbortController = _interopRequireDefault(require("node-abort-controller"));
|
|
15
|
-
|
|
16
11
|
var _parseHeaders = _interopRequireDefault(require("parse-headers"));
|
|
17
|
-
|
|
18
12
|
var _asyncRetry = _interopRequireDefault(require("async-retry"));
|
|
19
|
-
|
|
20
13
|
var _request = _interopRequireDefault(require("./request"));
|
|
21
|
-
|
|
22
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
-
|
|
24
15
|
/**
|
|
25
16
|
* Take `Object` as parameters of URL, throw each chunk from the result
|
|
26
17
|
*
|
|
@@ -62,7 +53,6 @@ async function URLRequest(data, feed) {
|
|
|
62
53
|
if (this.isLast()) {
|
|
63
54
|
return feed.close();
|
|
64
55
|
}
|
|
65
|
-
|
|
66
56
|
const url = this.getParam('url');
|
|
67
57
|
const json = Boolean(this.getParam('json', true));
|
|
68
58
|
const target = [].concat(this.getParam('target')).filter(Boolean).shift();
|
|
@@ -81,30 +71,25 @@ async function URLRequest(data, feed) {
|
|
|
81
71
|
const options = {
|
|
82
72
|
retries
|
|
83
73
|
};
|
|
84
|
-
|
|
85
74
|
if (url) {
|
|
86
75
|
cURL.search = new _url.URLSearchParams(data);
|
|
87
76
|
}
|
|
88
|
-
|
|
89
77
|
const onError = e => {
|
|
90
78
|
controller.abort();
|
|
91
|
-
|
|
92
79
|
if (noerror) {
|
|
93
80
|
(0, _debug.default)('ezs')(`Ignore item #${this.getIndex()} [URLRequest] <${e}>`);
|
|
94
81
|
return feed.send(data);
|
|
95
82
|
}
|
|
96
|
-
|
|
97
83
|
(0, _debug.default)('ezs')(`Break item #${this.getIndex()} [URLRequest] <${e}>`);
|
|
98
84
|
return feed.send(e);
|
|
99
85
|
};
|
|
100
|
-
|
|
101
86
|
try {
|
|
102
87
|
const response = await (0, _asyncRetry.default)((0, _request.default)(cURL.href, parameters), options);
|
|
103
88
|
const func = json ? 'json' : 'text';
|
|
104
89
|
const value = await response[func]();
|
|
105
|
-
|
|
106
90
|
if (target) {
|
|
107
|
-
const result = typeof data === 'object' ? {
|
|
91
|
+
const result = typeof data === 'object' ? {
|
|
92
|
+
...data
|
|
108
93
|
} : {
|
|
109
94
|
url: data
|
|
110
95
|
};
|
|
@@ -112,7 +97,6 @@ async function URLRequest(data, feed) {
|
|
|
112
97
|
inserts.forEach(i => (0, _lodash.default)(result, i, response.headers.get(i)));
|
|
113
98
|
return feed.send(result);
|
|
114
99
|
}
|
|
115
|
-
|
|
116
100
|
inserts.forEach(i => (0, _lodash.default)(value, i, response.headers.get(i)));
|
|
117
101
|
return feed.send(value);
|
|
118
102
|
} catch (e) {
|
package/lib/url-stream.js
CHANGED
|
@@ -4,23 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = URLStream;
|
|
7
|
-
|
|
8
7
|
var _debug = _interopRequireDefault(require("debug"));
|
|
9
|
-
|
|
10
8
|
var _url = require("url");
|
|
11
|
-
|
|
12
9
|
var _nodeAbortController = _interopRequireDefault(require("node-abort-controller"));
|
|
13
|
-
|
|
14
10
|
var _JSONStream = _interopRequireDefault(require("JSONStream"));
|
|
15
|
-
|
|
16
11
|
var _parseHeaders = _interopRequireDefault(require("parse-headers"));
|
|
17
|
-
|
|
18
12
|
var _asyncRetry = _interopRequireDefault(require("async-retry"));
|
|
19
|
-
|
|
20
13
|
var _request = _interopRequireDefault(require("./request"));
|
|
21
|
-
|
|
22
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
-
|
|
24
15
|
/**
|
|
25
16
|
* Take `String` as URL, throw each chunk from the result or
|
|
26
17
|
* Take `Object` as parameters of URL, throw each chunk from the result
|
|
@@ -91,7 +82,6 @@ async function URLStream(data, feed) {
|
|
|
91
82
|
if (this.isLast()) {
|
|
92
83
|
return feed.close();
|
|
93
84
|
}
|
|
94
|
-
|
|
95
85
|
const url = this.getParam('url');
|
|
96
86
|
const path = this.getParam('path', '*');
|
|
97
87
|
const retries = Number(this.getParam('retries', 5));
|
|
@@ -108,23 +98,18 @@ async function URLStream(data, feed) {
|
|
|
108
98
|
const options = {
|
|
109
99
|
retries
|
|
110
100
|
};
|
|
111
|
-
|
|
112
101
|
if (url) {
|
|
113
102
|
cURL.search = new _url.URLSearchParams(data);
|
|
114
103
|
}
|
|
115
|
-
|
|
116
104
|
const onError = e => {
|
|
117
105
|
controller.abort();
|
|
118
|
-
|
|
119
106
|
if (noerror) {
|
|
120
107
|
(0, _debug.default)('ezs')(`Ignore item #${this.getIndex()} [URLStream] <${e}>`);
|
|
121
108
|
return feed.send(data);
|
|
122
109
|
}
|
|
123
|
-
|
|
124
110
|
(0, _debug.default)('ezs')(`Break item #${this.getIndex()} [URLStream] <${e}>`);
|
|
125
111
|
return feed.send(e);
|
|
126
112
|
};
|
|
127
|
-
|
|
128
113
|
try {
|
|
129
114
|
const response = await (0, _asyncRetry.default)((0, _request.default)(cURL.href, parameters), options);
|
|
130
115
|
const output = path ? response.body.pipe(_JSONStream.default.parse(path)) : response.body;
|
package/lib/url-string.js
CHANGED
|
@@ -4,16 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _url = require("url");
|
|
9
|
-
|
|
10
8
|
function URLString(data, feed) {
|
|
11
9
|
if (this.isLast()) {
|
|
12
10
|
return feed.close();
|
|
13
11
|
}
|
|
14
|
-
|
|
15
12
|
return feed.send((0, _url.format)(data));
|
|
16
13
|
}
|
|
14
|
+
|
|
17
15
|
/**
|
|
18
16
|
* Take an `Object` representing an URL and stringify it.
|
|
19
17
|
*
|
|
@@ -22,8 +20,6 @@ function URLString(data, feed) {
|
|
|
22
20
|
* @name URLString
|
|
23
21
|
* @returns {String}
|
|
24
22
|
*/
|
|
25
|
-
|
|
26
|
-
|
|
27
23
|
var _default = {
|
|
28
24
|
URLString
|
|
29
25
|
};
|
package/lib/xml-convert.js
CHANGED
|
@@ -4,22 +4,19 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _xmlMapping = _interopRequireDefault(require("xml-mapping"));
|
|
9
|
-
|
|
10
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
9
|
function XMLConvert(data, feed) {
|
|
13
10
|
if (this.isLast()) {
|
|
14
11
|
return feed.close();
|
|
15
12
|
}
|
|
16
|
-
|
|
17
13
|
const func = this.getParam('invert', false) ? 'dump' : 'load';
|
|
18
14
|
const opts = {
|
|
19
15
|
header: this.getParam('prologue', false)
|
|
20
16
|
};
|
|
21
17
|
feed.send(_xmlMapping.default[func](data, opts));
|
|
22
18
|
}
|
|
19
|
+
|
|
23
20
|
/**
|
|
24
21
|
* Convert each chunk as XML String to JSON Object
|
|
25
22
|
*
|
|
@@ -90,8 +87,6 @@ function XMLConvert(data, feed) {
|
|
|
90
87
|
* @param {String} [prologue=false] add XML prologue
|
|
91
88
|
* @returns {Object}
|
|
92
89
|
*/
|
|
93
|
-
|
|
94
|
-
|
|
95
90
|
var _default = {
|
|
96
91
|
XMLConvert
|
|
97
92
|
};
|
package/lib/xml-parse.js
CHANGED
|
@@ -4,20 +4,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _xmlSplitter = _interopRequireDefault(require("xml-splitter"));
|
|
9
|
-
|
|
10
8
|
var _streamWrite = _interopRequireDefault(require("stream-write"));
|
|
11
|
-
|
|
12
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
10
|
function XMLParse(data, feed) {
|
|
15
11
|
if (!this.handle) {
|
|
16
12
|
const separator = this.getParam('separator', '/');
|
|
17
13
|
this.handle = new _xmlSplitter.default(separator);
|
|
18
14
|
this.handle.on('data', obj => feed.write(obj));
|
|
19
15
|
}
|
|
20
|
-
|
|
21
16
|
if (!this.isLast()) {
|
|
22
17
|
(0, _streamWrite.default)(this.handle.stream, data, () => feed.end());
|
|
23
18
|
} else {
|
|
@@ -33,6 +28,7 @@ function XMLParse(data, feed) {
|
|
|
33
28
|
*/
|
|
34
29
|
}
|
|
35
30
|
}
|
|
31
|
+
|
|
36
32
|
/**
|
|
37
33
|
* Take `String` as XML input, parse it and split it in multi document at each path found
|
|
38
34
|
*
|
|
@@ -60,8 +56,6 @@ function XMLParse(data, feed) {
|
|
|
60
56
|
* @param {String} [separator="/"] choose a character for flatten keys
|
|
61
57
|
* @returns {Object}
|
|
62
58
|
*/
|
|
63
|
-
|
|
64
|
-
|
|
65
59
|
var _default = {
|
|
66
60
|
XMLParse
|
|
67
61
|
};
|
package/lib/xml-string.js
CHANGED
|
@@ -4,35 +4,29 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _xmlMapping = _interopRequireDefault(require("xml-mapping"));
|
|
9
|
-
|
|
10
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
9
|
function XMLString(data, feed) {
|
|
13
10
|
const rootElement = this.getParam('rootElement', 'items');
|
|
14
11
|
const contentElement = this.getParam('contentElement', 'item');
|
|
15
|
-
|
|
16
12
|
if (this.isLast()) {
|
|
17
13
|
const endTag = rootElement.length > 0 ? `</${rootElement}>` : '';
|
|
18
14
|
if (endTag) feed.write(endTag);
|
|
19
15
|
return feed.close();
|
|
20
16
|
}
|
|
21
|
-
|
|
22
17
|
if (this.isFirst()) {
|
|
23
18
|
const prologue = this.getParam('prologue', false) ? '<?xml version="1.0" encoding="UTF-8"?>\n' : '';
|
|
24
19
|
const rootNamespace = [].concat(this.getParam('rootNamespace')).filter(Boolean).map(ns => ns.replace('://', '§§§')).map(ns => ns.split(':')).map(ns => ns[1] ? [`:${ns[0]}`, ns[1]] : ['', ns[0]]).map(ns => [ns[0], ns[1].replace('§§§', '://').trim()]).reduce((prev, cur) => `${prev} xmlns${cur[0]}="${encodeURI(cur[1])}"`, '');
|
|
25
20
|
const beginTag = rootElement.length > 0 ? `${prologue}<${rootElement}${rootNamespace}>` : '';
|
|
26
|
-
|
|
27
21
|
if (beginTag) {
|
|
28
22
|
feed.write(beginTag);
|
|
29
23
|
}
|
|
30
24
|
}
|
|
31
|
-
|
|
32
25
|
feed.send(_xmlMapping.default.dump({
|
|
33
26
|
[contentElement]: data
|
|
34
27
|
}));
|
|
35
28
|
}
|
|
29
|
+
|
|
36
30
|
/**
|
|
37
31
|
* Transform an `Object` into an XML string.
|
|
38
32
|
*
|
|
@@ -58,8 +52,6 @@ function XMLString(data, feed) {
|
|
|
58
52
|
* @param {Boolean} [prologue=false] Add XML prologue `<?xml`
|
|
59
53
|
* @returns {String}
|
|
60
54
|
*/
|
|
61
|
-
|
|
62
|
-
|
|
63
55
|
var _default = {
|
|
64
56
|
XMLString
|
|
65
57
|
};
|
package/lib/zip-extract.js
CHANGED
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = ZIPExtract;
|
|
7
|
-
|
|
8
7
|
var _unzipper = _interopRequireDefault(require("unzipper"));
|
|
9
|
-
|
|
10
8
|
var _micromatch = _interopRequireDefault(require("micromatch"));
|
|
11
|
-
|
|
12
9
|
var _streamWrite = _interopRequireDefault(require("stream-write"));
|
|
13
|
-
|
|
14
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
11
|
/**
|
|
17
12
|
* Take the content of a zip file, extract some files.
|
|
18
13
|
* The JSON object is sent to the output stream for each file.
|
|
@@ -31,7 +26,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
31
26
|
*/
|
|
32
27
|
function ZIPExtract(data, feed) {
|
|
33
28
|
const filesPatern = this.getParam('path', '**/*.json');
|
|
34
|
-
|
|
35
29
|
if (this.isFirst()) {
|
|
36
30
|
const {
|
|
37
31
|
ezs
|
|
@@ -46,12 +40,10 @@ function ZIPExtract(data, feed) {
|
|
|
46
40
|
value: content
|
|
47
41
|
}, () => entry.autodrain());
|
|
48
42
|
}
|
|
49
|
-
|
|
50
43
|
return entry.autodrain();
|
|
51
44
|
}).promise();
|
|
52
45
|
this.whenFinish = feed.flow(this.output);
|
|
53
46
|
}
|
|
54
|
-
|
|
55
47
|
if (this.isLast()) {
|
|
56
48
|
this.whenEnd.finally(() => this.output.end());
|
|
57
49
|
this.whenFinish.finally(() => feed.close());
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ezs/basics",
|
|
3
3
|
"description": "Basics statements for EZS",
|
|
4
|
-
"version": "2.5.
|
|
4
|
+
"version": "2.5.2",
|
|
5
5
|
"author": "Nicolas Thouvenin <nthouvenin@gmail.com>",
|
|
6
6
|
"bugs": "https://github.com/Inist-CNRS/ezs/issues",
|
|
7
7
|
"dependencies": {
|
|
@@ -33,8 +33,7 @@
|
|
|
33
33
|
"tmp-filepath": "2.0.0",
|
|
34
34
|
"unzipper": "0.10.11",
|
|
35
35
|
"xml-mapping": "1.7.2",
|
|
36
|
-
"xml-splitter": "1.2.1"
|
|
37
|
-
"yajson-stream": "1.3.3"
|
|
36
|
+
"xml-splitter": "1.2.1"
|
|
38
37
|
},
|
|
39
38
|
"devDependencies": {
|
|
40
39
|
"pako": "2.0.4"
|
|
@@ -42,7 +41,7 @@
|
|
|
42
41
|
"directories": {
|
|
43
42
|
"test": "test"
|
|
44
43
|
},
|
|
45
|
-
"gitHead": "
|
|
44
|
+
"gitHead": "8fe234cec9142250dc5d73c37c3370c6ca3e0d70",
|
|
46
45
|
"homepage": "https://github.com/Inist-CNRS/ezs/tree/master/packages/basics#readme",
|
|
47
46
|
"keywords": [
|
|
48
47
|
"ezs"
|