verdaccio 5.15.1 → 5.15.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/CHANGELOG.md +7 -0
- package/build/api/endpoint/api/package.js +13 -4
- package/build/utils/string.js +40 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [5.15.2](https://github.com/verdaccio/verdaccio/compare/v5.15.1...v5.15.2) (2022-09-05)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* get header by quality priority value ([#3359](https://github.com/verdaccio/verdaccio/issues/3359)) ([cdb80aa](https://github.com/verdaccio/verdaccio/commit/cdb80aac20b98855638ac9c8eeca700076b2c519))
|
|
11
|
+
|
|
5
12
|
### [5.15.1](https://github.com/verdaccio/verdaccio/compare/v5.15.0...v5.15.1) (2022-09-04)
|
|
6
13
|
|
|
7
14
|
|
|
@@ -11,12 +11,12 @@ var _constants = require("../../../lib/constants");
|
|
|
11
11
|
|
|
12
12
|
var _utils = require("../../../lib/utils");
|
|
13
13
|
|
|
14
|
+
var _string = require("../../../utils/string");
|
|
15
|
+
|
|
14
16
|
var _middleware = require("../../middleware");
|
|
15
17
|
|
|
16
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
19
|
|
|
18
|
-
const ABBREVIATED_HEADER = 'application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*';
|
|
19
|
-
|
|
20
20
|
const downloadStream = (packageName, filename, storage, req, res) => {
|
|
21
21
|
const stream = storage.getTarball(packageName, filename);
|
|
22
22
|
stream.on('content-length', function (content) {
|
|
@@ -52,6 +52,8 @@ function _default(route, auth, storage, config) {
|
|
|
52
52
|
const can = (0, _middleware.allow)(auth); // TODO: anonymous user?
|
|
53
53
|
|
|
54
54
|
route.get('/:package/:version?', can('access'), function (req, res, next) {
|
|
55
|
+
const abbreviated = (0, _string.getByQualityPriorityValue)(req.get('Accept')) === 'application/vnd.npm.install-v1+json';
|
|
56
|
+
|
|
55
57
|
const getPackageMetaCallback = function (err, metadata) {
|
|
56
58
|
if (err) {
|
|
57
59
|
return next(err);
|
|
@@ -61,12 +63,19 @@ function _default(route, auth, storage, config) {
|
|
|
61
63
|
let queryVersion = req.params.version;
|
|
62
64
|
|
|
63
65
|
if (_lodash.default.isNil(queryVersion)) {
|
|
66
|
+
if (abbreviated) {
|
|
67
|
+
res.setHeader(_constants.HEADERS.CONTENT_TYPE, 'application/vnd.npm.install-v1+json');
|
|
68
|
+
} else {
|
|
69
|
+
res.setHeader(_constants.HEADERS.CONTENT_TYPE, _constants.HEADERS.JSON);
|
|
70
|
+
}
|
|
71
|
+
|
|
64
72
|
return next(metadata);
|
|
65
73
|
}
|
|
66
74
|
|
|
67
75
|
let version = (0, _utils.getVersion)(metadata, queryVersion);
|
|
68
76
|
|
|
69
77
|
if (_lodash.default.isNil(version) === false) {
|
|
78
|
+
res.setHeader(_constants.HEADERS.CONTENT_TYPE, _constants.HEADERS.JSON);
|
|
70
79
|
return next(version);
|
|
71
80
|
}
|
|
72
81
|
|
|
@@ -76,6 +85,7 @@ function _default(route, auth, storage, config) {
|
|
|
76
85
|
version = (0, _utils.getVersion)(metadata, queryVersion);
|
|
77
86
|
|
|
78
87
|
if (_lodash.default.isNil(version) === false) {
|
|
88
|
+
res.setHeader(_constants.HEADERS.CONTENT_TYPE, _constants.HEADERS.JSON);
|
|
79
89
|
return next(version);
|
|
80
90
|
}
|
|
81
91
|
}
|
|
@@ -84,7 +94,6 @@ function _default(route, auth, storage, config) {
|
|
|
84
94
|
return next(_utils.ErrorCode.getNotFound(`${_constants.API_ERROR.VERSION_NOT_EXIST}: ${req.params.version}`));
|
|
85
95
|
};
|
|
86
96
|
|
|
87
|
-
const abbreviated = req.get('Accept') === ABBREVIATED_HEADER;
|
|
88
97
|
storage.getPackage({
|
|
89
98
|
name: req.params.package,
|
|
90
99
|
uplinksLook: true,
|
|
@@ -113,4 +122,4 @@ function _default(route, auth, storage, config) {
|
|
|
113
122
|
}
|
|
114
123
|
});
|
|
115
124
|
}
|
|
116
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBQkJSRVZJQVRFRF9IRUFERVIiLCJkb3dubG9hZFN0cmVhbSIsInBhY2thZ2VOYW1lIiwiZmlsZW5hbWUiLCJzdG9yYWdlIiwicmVxIiwicmVzIiwic3RyZWFtIiwiZ2V0VGFyYmFsbCIsIm9uIiwiY29udGVudCIsImhlYWRlciIsImVyciIsImxvY2FscyIsInJlcG9ydF9lcnJvciIsIkhFQURFUlMiLCJDT05URU5UX1RZUEUiLCJPQ1RFVF9TVFJFQU0iLCJwaXBlIiwicmVkaXJlY3RPckRvd25sb2FkU3RyZWFtIiwiY29uZmlnIiwidGFyYmFsbFVybFJlZGlyZWN0IiwiXyIsImdldCIsImhhc0xvY2FsVGFyYmFsbCIsInRoZW4iLCJjb250ZXh0IiwidGFyYmFsbFVybCIsInRlbXBsYXRlIiwicmVkaXJlY3QiLCJjYXRjaCIsInJvdXRlIiwiYXV0aCIsImNhbiIsImFsbG93IiwibmV4dCIsImdldFBhY2thZ2VNZXRhQ2FsbGJhY2siLCJtZXRhZGF0YSIsImNvbnZlcnREaXN0UmVtb3RlVG9Mb2NhbFRhcmJhbGxVcmxzIiwidXJsX3ByZWZpeCIsInF1ZXJ5VmVyc2lvbiIsInBhcmFtcyIsInZlcnNpb24iLCJpc05pbCIsImdldFZlcnNpb24iLCJESVNUX1RBR1MiLCJFcnJvckNvZGUiLCJnZXROb3RGb3VuZCIsIkFQSV9FUlJPUiIsIlZFUlNJT05fTk9UX0VYSVNUIiwiYWJicmV2aWF0ZWQiLCJnZXRQYWNrYWdlIiwibmFtZSIsInBhY2thZ2UiLCJ1cGxpbmtzTG9vayIsImNhbGxiYWNrIiwic2NvcGVkUGFja2FnZSIsInVuZGVmaW5lZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcGkvZW5kcG9pbnQvYXBpL3BhY2thZ2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuXG5pbXBvcnQgeyBDb25maWcsIFBhY2thZ2UgfSBmcm9tICdAdmVyZGFjY2lvL3R5cGVzJztcblxuaW1wb3J0IHsgJE5leHRGdW5jdGlvblZlciwgJFJlcXVlc3RFeHRlbmQsICRSZXNwb25zZUV4dGVuZCwgSUF1dGgsIElTdG9yYWdlSGFuZGxlciB9IGZyb20gJy4uLy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEFQSV9FUlJPUiwgRElTVF9UQUdTLCBIRUFERVJTIH0gZnJvbSAnLi4vLi4vLi4vbGliL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBFcnJvckNvZGUsIGNvbnZlcnREaXN0UmVtb3RlVG9Mb2NhbFRhcmJhbGxVcmxzLCBnZXRWZXJzaW9uIH0gZnJvbSAnLi4vLi4vLi4vbGliL3V0aWxzJztcbmltcG9ydCB7IGFsbG93IH0gZnJvbSAnLi4vLi4vbWlkZGxld2FyZSc7XG5cbmNvbnN0IEFCQlJFVklBVEVEX0hFQURFUiA9ICdhcHBsaWNhdGlvbi92bmQubnBtLmluc3RhbGwtdjEranNvbjsgcT0xLjAsIGFwcGxpY2F0aW9uL2pzb247IHE9MC44LCAqLyonO1xuY29uc3QgZG93bmxvYWRTdHJlYW0gPSAocGFja2FnZU5hbWU6IHN0cmluZywgZmlsZW5hbWU6IHN0cmluZywgc3RvcmFnZTogYW55LCByZXE6ICRSZXF1ZXN0RXh0ZW5kLCByZXM6ICRSZXNwb25zZUV4dGVuZCk6IHZvaWQgPT4ge1xuICBjb25zdCBzdHJlYW0gPSBzdG9yYWdlLmdldFRhcmJhbGwocGFja2FnZU5hbWUsIGZpbGVuYW1lKTtcblxuICBzdHJlYW0ub24oJ2NvbnRlbnQtbGVuZ3RoJywgZnVuY3Rpb24gKGNvbnRlbnQpOiB2b2lkIHtcbiAgICByZXMuaGVhZGVyKCdDb250ZW50LUxlbmd0aCcsIGNvbnRlbnQpO1xuICB9KTtcblxuICBzdHJlYW0ub24oJ2Vycm9yJywgZnVuY3Rpb24gKGVycik6IHZvaWQge1xuICAgIHJldHVybiByZXMubG9jYWxzLnJlcG9ydF9lcnJvcihlcnIpO1xuICB9KTtcblxuICByZXMuaGVhZGVyKEhFQURFUlMuQ09OVEVOVF9UWVBFLCBIRUFERVJTLk9DVEVUX1NUUkVBTSk7XG4gIHN0cmVhbS5waXBlKHJlcyk7XG59O1xuXG5jb25zdCByZWRpcmVjdE9yRG93bmxvYWRTdHJlYW0gPSAocGFja2FnZU5hbWU6IHN0cmluZywgZmlsZW5hbWU6IHN0cmluZywgc3RvcmFnZTogYW55LCByZXE6ICRSZXF1ZXN0RXh0ZW5kLCByZXM6ICRSZXNwb25zZUV4dGVuZCwgY29uZmlnOiBDb25maWcpOiB2b2lkID0+IHtcbiAgY29uc3QgdGFyYmFsbFVybFJlZGlyZWN0ID0gXy5nZXQoY29uZmlnLCAnZXhwZXJpbWVudHMudGFyYmFsbF91cmxfcmVkaXJlY3QnKTtcbiAgc3RvcmFnZVxuICAgIC5oYXNMb2NhbFRhcmJhbGwocGFja2FnZU5hbWUsIGZpbGVuYW1lKVxuICAgIC50aGVuKChoYXNMb2NhbFRhcmJhbGwpID0+IHtcbiAgICAgIGlmIChoYXNMb2NhbFRhcmJhbGwpIHtcbiAgICAgICAgY29uc3QgY29udGV4dCA9IHsgcGFja2FnZU5hbWUsIGZpbGVuYW1lIH07XG4gICAgICAgIGNvbnN0IHRhcmJhbGxVcmwgPSB0eXBlb2YgdGFyYmFsbFVybFJlZGlyZWN0ID09PSAnZnVuY3Rpb24nID8gdGFyYmFsbFVybFJlZGlyZWN0KGNvbnRleHQpIDogXy50ZW1wbGF0ZSh0YXJiYWxsVXJsUmVkaXJlY3QpKGNvbnRleHQpO1xuICAgICAgICByZXMucmVkaXJlY3QodGFyYmFsbFVybCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkb3dubG9hZFN0cmVhbShwYWNrYWdlTmFtZSwgZmlsZW5hbWUsIHN0b3JhZ2UsIHJlcSwgcmVzKTtcbiAgICAgIH1cbiAgICB9KVxuICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICByZXMubG9jYWxzLnJlcG9ydF9lcnJvcihlcnIpO1xuICAgIH0pO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gKHJvdXRlOiBSb3V0ZXIsIGF1dGg6IElBdXRoLCBzdG9yYWdlOiBJU3RvcmFnZUhhbmRsZXIsIGNvbmZpZzogQ29uZmlnKTogdm9pZCB7XG4gIGNvbnN0IGNhbiA9IGFsbG93KGF1dGgpO1xuICAvLyBUT0RPOiBhbm9ueW1vdXMgdXNlcj9cbiAgcm91dGUuZ2V0KCcvOnBhY2thZ2UvOnZlcnNpb24/JywgY2FuKCdhY2Nlc3MnKSwgZnVuY3Rpb24gKHJlcTogJFJlcXVlc3RFeHRlbmQsIHJlczogJFJlc3BvbnNlRXh0ZW5kLCBuZXh0OiAkTmV4dEZ1bmN0aW9uVmVyKTogdm9pZCB7XG4gICAgY29uc3QgZ2V0UGFja2FnZU1ldGFDYWxsYmFjayA9IGZ1bmN0aW9uIChlcnIsIG1ldGFkYXRhOiBQYWNrYWdlKTogdm9pZCB7XG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHJldHVybiBuZXh0KGVycik7XG4gICAgICB9XG4gICAgICBtZXRhZGF0YSA9IGNvbnZlcnREaXN0UmVtb3RlVG9Mb2NhbFRhcmJhbGxVcmxzKG1ldGFkYXRhLCByZXEsIGNvbmZpZy51cmxfcHJlZml4KTtcblxuICAgICAgbGV0IHF1ZXJ5VmVyc2lvbiA9IHJlcS5wYXJhbXMudmVyc2lvbjtcbiAgICAgIGlmIChfLmlzTmlsKHF1ZXJ5VmVyc2lvbikpIHtcbiAgICAgICAgcmV0dXJuIG5leHQobWV0YWRhdGEpO1xuICAgICAgfVxuXG4gICAgICBsZXQgdmVyc2lvbiA9IGdldFZlcnNpb24obWV0YWRhdGEsIHF1ZXJ5VmVyc2lvbik7XG4gICAgICBpZiAoXy5pc05pbCh2ZXJzaW9uKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgcmV0dXJuIG5leHQodmVyc2lvbik7XG4gICAgICB9XG5cbiAgICAgIGlmIChfLmlzTmlsKG1ldGFkYXRhW0RJU1RfVEFHU10pID09PSBmYWxzZSkge1xuICAgICAgICBpZiAoXy5pc05pbChtZXRhZGF0YVtESVNUX1RBR1NdW3F1ZXJ5VmVyc2lvbl0pID09PSBmYWxzZSkge1xuICAgICAgICAgIHF1ZXJ5VmVyc2lvbiA9IG1ldGFkYXRhW0RJU1RfVEFHU11bcXVlcnlWZXJzaW9uXTtcbiAgICAgICAgICB2ZXJzaW9uID0gZ2V0VmVyc2lvbihtZXRhZGF0YSwgcXVlcnlWZXJzaW9uKTtcbiAgICAgICAgICBpZiAoXy5pc05pbCh2ZXJzaW9uKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXh0KHZlcnNpb24pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG5leHQoRXJyb3JDb2RlLmdldE5vdEZvdW5kKGAke0FQSV9FUlJPUi5WRVJTSU9OX05PVF9FWElTVH06ICR7cmVxLnBhcmFtcy52ZXJzaW9ufWApKTtcbiAgICB9O1xuICAgIGNvbnN0IGFiYnJldmlhdGVkID0gcmVxLmdldCgnQWNjZXB0JykgPT09IEFCQlJFVklBVEVEX0hFQURFUjtcbiAgICBzdG9yYWdlLmdldFBhY2thZ2Uoe1xuICAgICAgbmFtZTogcmVxLnBhcmFtcy5wYWNrYWdlLFxuICAgICAgdXBsaW5rc0xvb2s6IHRydWUsXG4gICAgICByZXEsXG4gICAgICBhYmJyZXZpYXRlZCxcbiAgICAgIGNhbGxiYWNrOiBnZXRQYWNrYWdlTWV0YUNhbGxiYWNrLFxuICAgIH0pO1xuICB9KTtcblxuICByb3V0ZS5nZXQoJy86c2NvcGVkUGFja2FnZS8tLzpzY29wZS86ZmlsZW5hbWUnLCBjYW4oJ2FjY2VzcycpLCBmdW5jdGlvbiAocmVxOiAkUmVxdWVzdEV4dGVuZCwgcmVzOiAkUmVzcG9uc2VFeHRlbmQpOiB2b2lkIHtcbiAgICBjb25zdCB7IHNjb3BlZFBhY2thZ2UsIGZpbGVuYW1lIH0gPSByZXEucGFyYW1zO1xuICAgIGlmIChfLmdldChjb25maWcsICdleHBlcmltZW50cy50YXJiYWxsX3VybF9yZWRpcmVjdCcpID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGRvd25sb2FkU3RyZWFtKHNjb3BlZFBhY2thZ2UsIGZpbGVuYW1lLCBzdG9yYWdlLCByZXEsIHJlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlZGlyZWN0T3JEb3dubG9hZFN0cmVhbShzY29wZWRQYWNrYWdlLCBmaWxlbmFtZSwgc3RvcmFnZSwgcmVxLCByZXMsIGNvbmZpZyk7XG4gICAgfVxuICB9KTtcblxuICByb3V0ZS5nZXQoJy86cGFja2FnZS8tLzpmaWxlbmFtZScsIGNhbignYWNjZXNzJyksIGZ1bmN0aW9uIChyZXE6ICRSZXF1ZXN0RXh0ZW5kLCByZXM6ICRSZXNwb25zZUV4dGVuZCk6IHZvaWQge1xuICAgIGlmIChfLmdldChjb25maWcsICdleHBlcmltZW50cy50YXJiYWxsX3VybF9yZWRpcmVjdCcpID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGRvd25sb2FkU3RyZWFtKHJlcS5wYXJhbXMucGFja2FnZSwgcmVxLnBhcmFtcy5maWxlbmFtZSwgc3RvcmFnZSwgcmVxLCByZXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZWRpcmVjdE9yRG93bmxvYWRTdHJlYW0ocmVxLnBhcmFtcy5wYWNrYWdlLCByZXEucGFyYW1zLmZpbGVuYW1lLCBzdG9yYWdlLCByZXEsIHJlcywgY29uZmlnKTtcbiAgICB9XG4gIH0pO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQ0E7O0FBS0E7O0FBQ0E7O0FBQ0E7Ozs7QUFFQSxNQUFNQSxrQkFBa0IsR0FBRywwRUFBM0I7O0FBQ0EsTUFBTUMsY0FBYyxHQUFHLENBQUNDLFdBQUQsRUFBc0JDLFFBQXRCLEVBQXdDQyxPQUF4QyxFQUFzREMsR0FBdEQsRUFBMkVDLEdBQTNFLEtBQTBHO0VBQy9ILE1BQU1DLE1BQU0sR0FBR0gsT0FBTyxDQUFDSSxVQUFSLENBQW1CTixXQUFuQixFQUFnQ0MsUUFBaEMsQ0FBZjtFQUVBSSxNQUFNLENBQUNFLEVBQVAsQ0FBVSxnQkFBVixFQUE0QixVQUFVQyxPQUFWLEVBQXlCO0lBQ25ESixHQUFHLENBQUNLLE1BQUosQ0FBVyxnQkFBWCxFQUE2QkQsT0FBN0I7RUFDRCxDQUZEO0VBSUFILE1BQU0sQ0FBQ0UsRUFBUCxDQUFVLE9BQVYsRUFBbUIsVUFBVUcsR0FBVixFQUFxQjtJQUN0QyxPQUFPTixHQUFHLENBQUNPLE1BQUosQ0FBV0MsWUFBWCxDQUF3QkYsR0FBeEIsQ0FBUDtFQUNELENB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
|
|
125
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkb3dubG9hZFN0cmVhbSIsInBhY2thZ2VOYW1lIiwiZmlsZW5hbWUiLCJzdG9yYWdlIiwicmVxIiwicmVzIiwic3RyZWFtIiwiZ2V0VGFyYmFsbCIsIm9uIiwiY29udGVudCIsImhlYWRlciIsImVyciIsImxvY2FscyIsInJlcG9ydF9lcnJvciIsIkhFQURFUlMiLCJDT05URU5UX1RZUEUiLCJPQ1RFVF9TVFJFQU0iLCJwaXBlIiwicmVkaXJlY3RPckRvd25sb2FkU3RyZWFtIiwiY29uZmlnIiwidGFyYmFsbFVybFJlZGlyZWN0IiwiXyIsImdldCIsImhhc0xvY2FsVGFyYmFsbCIsInRoZW4iLCJjb250ZXh0IiwidGFyYmFsbFVybCIsInRlbXBsYXRlIiwicmVkaXJlY3QiLCJjYXRjaCIsInJvdXRlIiwiYXV0aCIsImNhbiIsImFsbG93IiwibmV4dCIsImFiYnJldmlhdGVkIiwiZ2V0QnlRdWFsaXR5UHJpb3JpdHlWYWx1ZSIsImdldFBhY2thZ2VNZXRhQ2FsbGJhY2siLCJtZXRhZGF0YSIsImNvbnZlcnREaXN0UmVtb3RlVG9Mb2NhbFRhcmJhbGxVcmxzIiwidXJsX3ByZWZpeCIsInF1ZXJ5VmVyc2lvbiIsInBhcmFtcyIsInZlcnNpb24iLCJpc05pbCIsInNldEhlYWRlciIsIkpTT04iLCJnZXRWZXJzaW9uIiwiRElTVF9UQUdTIiwiRXJyb3JDb2RlIiwiZ2V0Tm90Rm91bmQiLCJBUElfRVJST1IiLCJWRVJTSU9OX05PVF9FWElTVCIsImdldFBhY2thZ2UiLCJuYW1lIiwicGFja2FnZSIsInVwbGlua3NMb29rIiwiY2FsbGJhY2siLCJzY29wZWRQYWNrYWdlIiwidW5kZWZpbmVkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwaS9lbmRwb2ludC9hcGkvcGFja2FnZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5cbmltcG9ydCB7IENvbmZpZywgUGFja2FnZSB9IGZyb20gJ0B2ZXJkYWNjaW8vdHlwZXMnO1xuXG5pbXBvcnQgeyAkTmV4dEZ1bmN0aW9uVmVyLCAkUmVxdWVzdEV4dGVuZCwgJFJlc3BvbnNlRXh0ZW5kLCBJQXV0aCwgSVN0b3JhZ2VIYW5kbGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgQVBJX0VSUk9SLCBESVNUX1RBR1MsIEhFQURFUlMgfSBmcm9tICcuLi8uLi8uLi9saWIvY29uc3RhbnRzJztcbmltcG9ydCB7IEVycm9yQ29kZSwgY29udmVydERpc3RSZW1vdGVUb0xvY2FsVGFyYmFsbFVybHMsIGdldFZlcnNpb24gfSBmcm9tICcuLi8uLi8uLi9saWIvdXRpbHMnO1xuaW1wb3J0IHsgZ2V0QnlRdWFsaXR5UHJpb3JpdHlWYWx1ZSB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3N0cmluZyc7XG5pbXBvcnQgeyBhbGxvdyB9IGZyb20gJy4uLy4uL21pZGRsZXdhcmUnO1xuXG5jb25zdCBkb3dubG9hZFN0cmVhbSA9IChwYWNrYWdlTmFtZTogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nLCBzdG9yYWdlOiBhbnksIHJlcTogJFJlcXVlc3RFeHRlbmQsIHJlczogJFJlc3BvbnNlRXh0ZW5kKTogdm9pZCA9PiB7XG4gIGNvbnN0IHN0cmVhbSA9IHN0b3JhZ2UuZ2V0VGFyYmFsbChwYWNrYWdlTmFtZSwgZmlsZW5hbWUpO1xuXG4gIHN0cmVhbS5vbignY29udGVudC1sZW5ndGgnLCBmdW5jdGlvbiAoY29udGVudCk6IHZvaWQge1xuICAgIHJlcy5oZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoJywgY29udGVudCk7XG4gIH0pO1xuXG4gIHN0cmVhbS5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyKTogdm9pZCB7XG4gICAgcmV0dXJuIHJlcy5sb2NhbHMucmVwb3J0X2Vycm9yKGVycik7XG4gIH0pO1xuXG4gIHJlcy5oZWFkZXIoSEVBREVSUy5DT05URU5UX1RZUEUsIEhFQURFUlMuT0NURVRfU1RSRUFNKTtcbiAgc3RyZWFtLnBpcGUocmVzKTtcbn07XG5cbmNvbnN0IHJlZGlyZWN0T3JEb3dubG9hZFN0cmVhbSA9IChwYWNrYWdlTmFtZTogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nLCBzdG9yYWdlOiBhbnksIHJlcTogJFJlcXVlc3RFeHRlbmQsIHJlczogJFJlc3BvbnNlRXh0ZW5kLCBjb25maWc6IENvbmZpZyk6IHZvaWQgPT4ge1xuICBjb25zdCB0YXJiYWxsVXJsUmVkaXJlY3QgPSBfLmdldChjb25maWcsICdleHBlcmltZW50cy50YXJiYWxsX3VybF9yZWRpcmVjdCcpO1xuICBzdG9yYWdlXG4gICAgLmhhc0xvY2FsVGFyYmFsbChwYWNrYWdlTmFtZSwgZmlsZW5hbWUpXG4gICAgLnRoZW4oKGhhc0xvY2FsVGFyYmFsbCkgPT4ge1xuICAgICAgaWYgKGhhc0xvY2FsVGFyYmFsbCkge1xuICAgICAgICBjb25zdCBjb250ZXh0ID0geyBwYWNrYWdlTmFtZSwgZmlsZW5hbWUgfTtcbiAgICAgICAgY29uc3QgdGFyYmFsbFVybCA9IHR5cGVvZiB0YXJiYWxsVXJsUmVkaXJlY3QgPT09ICdmdW5jdGlvbicgPyB0YXJiYWxsVXJsUmVkaXJlY3QoY29udGV4dCkgOiBfLnRlbXBsYXRlKHRhcmJhbGxVcmxSZWRpcmVjdCkoY29udGV4dCk7XG4gICAgICAgIHJlcy5yZWRpcmVjdCh0YXJiYWxsVXJsKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRvd25sb2FkU3RyZWFtKHBhY2thZ2VOYW1lLCBmaWxlbmFtZSwgc3RvcmFnZSwgcmVxLCByZXMpO1xuICAgICAgfVxuICAgIH0pXG4gICAgLmNhdGNoKChlcnIpID0+IHtcbiAgICAgIHJlcy5sb2NhbHMucmVwb3J0X2Vycm9yKGVycik7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAocm91dGU6IFJvdXRlciwgYXV0aDogSUF1dGgsIHN0b3JhZ2U6IElTdG9yYWdlSGFuZGxlciwgY29uZmlnOiBDb25maWcpOiB2b2lkIHtcbiAgY29uc3QgY2FuID0gYWxsb3coYXV0aCk7XG4gIC8vIFRPRE86IGFub255bW91cyB1c2VyP1xuICByb3V0ZS5nZXQoJy86cGFja2FnZS86dmVyc2lvbj8nLCBjYW4oJ2FjY2VzcycpLCBmdW5jdGlvbiAocmVxOiAkUmVxdWVzdEV4dGVuZCwgcmVzOiAkUmVzcG9uc2VFeHRlbmQsIG5leHQ6ICROZXh0RnVuY3Rpb25WZXIpOiB2b2lkIHtcbiAgICBjb25zdCBhYmJyZXZpYXRlZCA9IGdldEJ5UXVhbGl0eVByaW9yaXR5VmFsdWUocmVxLmdldCgnQWNjZXB0JykpID09PSAnYXBwbGljYXRpb24vdm5kLm5wbS5pbnN0YWxsLXYxK2pzb24nO1xuICAgIGNvbnN0IGdldFBhY2thZ2VNZXRhQ2FsbGJhY2sgPSBmdW5jdGlvbiAoZXJyLCBtZXRhZGF0YTogUGFja2FnZSk6IHZvaWQge1xuICAgICAgaWYgKGVycikge1xuICAgICAgICByZXR1cm4gbmV4dChlcnIpO1xuICAgICAgfVxuICAgICAgbWV0YWRhdGEgPSBjb252ZXJ0RGlzdFJlbW90ZVRvTG9jYWxUYXJiYWxsVXJscyhtZXRhZGF0YSwgcmVxLCBjb25maWcudXJsX3ByZWZpeCk7XG5cbiAgICAgIGxldCBxdWVyeVZlcnNpb24gPSByZXEucGFyYW1zLnZlcnNpb247XG4gICAgICBpZiAoXy5pc05pbChxdWVyeVZlcnNpb24pKSB7XG4gICAgICAgIGlmIChhYmJyZXZpYXRlZCkge1xuICAgICAgICAgIHJlcy5zZXRIZWFkZXIoSEVBREVSUy5DT05URU5UX1RZUEUsICdhcHBsaWNhdGlvbi92bmQubnBtLmluc3RhbGwtdjEranNvbicpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlcy5zZXRIZWFkZXIoSEVBREVSUy5DT05URU5UX1RZUEUsIEhFQURFUlMuSlNPTik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbmV4dChtZXRhZGF0YSk7XG4gICAgICB9XG5cbiAgICAgIGxldCB2ZXJzaW9uID0gZ2V0VmVyc2lvbihtZXRhZGF0YSwgcXVlcnlWZXJzaW9uKTtcbiAgICAgIGlmIChfLmlzTmlsKHZlcnNpb24pID09PSBmYWxzZSkge1xuICAgICAgICByZXMuc2V0SGVhZGVyKEhFQURFUlMuQ09OVEVOVF9UWVBFLCBIRUFERVJTLkpTT04pO1xuICAgICAgICByZXR1cm4gbmV4dCh2ZXJzaW9uKTtcbiAgICAgIH1cblxuICAgICAgaWYgKF8uaXNOaWwobWV0YWRhdGFbRElTVF9UQUdTXSkgPT09IGZhbHNlKSB7XG4gICAgICAgIGlmIChfLmlzTmlsKG1ldGFkYXRhW0RJU1RfVEFHU11bcXVlcnlWZXJzaW9uXSkgPT09IGZhbHNlKSB7XG4gICAgICAgICAgcXVlcnlWZXJzaW9uID0gbWV0YWRhdGFbRElTVF9UQUdTXVtxdWVyeVZlcnNpb25dO1xuICAgICAgICAgIHZlcnNpb24gPSBnZXRWZXJzaW9uKG1ldGFkYXRhLCBxdWVyeVZlcnNpb24pO1xuICAgICAgICAgIGlmIChfLmlzTmlsKHZlcnNpb24pID09PSBmYWxzZSkge1xuICAgICAgICAgICAgcmVzLnNldEhlYWRlcihIRUFERVJTLkNPTlRFTlRfVFlQRSwgSEVBREVSUy5KU09OKTtcbiAgICAgICAgICAgIHJldHVybiBuZXh0KHZlcnNpb24pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG5leHQoRXJyb3JDb2RlLmdldE5vdEZvdW5kKGAke0FQSV9FUlJPUi5WRVJTSU9OX05PVF9FWElTVH06ICR7cmVxLnBhcmFtcy52ZXJzaW9ufWApKTtcbiAgICB9O1xuXG4gICAgc3RvcmFnZS5nZXRQYWNrYWdlKHtcbiAgICAgIG5hbWU6IHJlcS5wYXJhbXMucGFja2FnZSxcbiAgICAgIHVwbGlua3NMb29rOiB0cnVlLFxuICAgICAgcmVxLFxuICAgICAgYWJicmV2aWF0ZWQsXG4gICAgICBjYWxsYmFjazogZ2V0UGFja2FnZU1ldGFDYWxsYmFjayxcbiAgICB9KTtcbiAgfSk7XG5cbiAgcm91dGUuZ2V0KCcvOnNjb3BlZFBhY2thZ2UvLS86c2NvcGUvOmZpbGVuYW1lJywgY2FuKCdhY2Nlc3MnKSwgZnVuY3Rpb24gKHJlcTogJFJlcXVlc3RFeHRlbmQsIHJlczogJFJlc3BvbnNlRXh0ZW5kKTogdm9pZCB7XG4gICAgY29uc3QgeyBzY29wZWRQYWNrYWdlLCBmaWxlbmFtZSB9ID0gcmVxLnBhcmFtcztcbiAgICBpZiAoXy5nZXQoY29uZmlnLCAnZXhwZXJpbWVudHMudGFyYmFsbF91cmxfcmVkaXJlY3QnKSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBkb3dubG9hZFN0cmVhbShzY29wZWRQYWNrYWdlLCBmaWxlbmFtZSwgc3RvcmFnZSwgcmVxLCByZXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZWRpcmVjdE9yRG93bmxvYWRTdHJlYW0oc2NvcGVkUGFja2FnZSwgZmlsZW5hbWUsIHN0b3JhZ2UsIHJlcSwgcmVzLCBjb25maWcpO1xuICAgIH1cbiAgfSk7XG5cbiAgcm91dGUuZ2V0KCcvOnBhY2thZ2UvLS86ZmlsZW5hbWUnLCBjYW4oJ2FjY2VzcycpLCBmdW5jdGlvbiAocmVxOiAkUmVxdWVzdEV4dGVuZCwgcmVzOiAkUmVzcG9uc2VFeHRlbmQpOiB2b2lkIHtcbiAgICBpZiAoXy5nZXQoY29uZmlnLCAnZXhwZXJpbWVudHMudGFyYmFsbF91cmxfcmVkaXJlY3QnKSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBkb3dubG9hZFN0cmVhbShyZXEucGFyYW1zLnBhY2thZ2UsIHJlcS5wYXJhbXMuZmlsZW5hbWUsIHN0b3JhZ2UsIHJlcSwgcmVzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVkaXJlY3RPckRvd25sb2FkU3RyZWFtKHJlcS5wYXJhbXMucGFja2FnZSwgcmVxLnBhcmFtcy5maWxlbmFtZSwgc3RvcmFnZSwgcmVxLCByZXMsIGNvbmZpZyk7XG4gICAgfVxuICB9KTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBOztBQUtBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBRUEsTUFBTUEsY0FBYyxHQUFHLENBQUNDLFdBQUQsRUFBc0JDLFFBQXRCLEVB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
|
package/build/utils/string.js
CHANGED
|
@@ -3,10 +3,49 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.getByQualityPriorityValue = getByQualityPriorityValue;
|
|
6
7
|
exports.spliceURL = spliceURL;
|
|
7
8
|
|
|
8
9
|
// @flow
|
|
9
10
|
function spliceURL(...args) {
|
|
10
11
|
return Array.from(args).reduce((lastResult, current) => lastResult + current).replace(/([^:])(\/)+(.)/g, `$1/$3`);
|
|
11
12
|
}
|
|
12
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Quality values, or q-values and q-factors, are used to describe the order
|
|
15
|
+
* of priority of values in a comma-separated list.
|
|
16
|
+
* It is a special syntax allowed in some HTTP headers and in HTML.
|
|
17
|
+
* https://developer.mozilla.org/en-US/docs/Glossary/Quality_values
|
|
18
|
+
* @param headerValue
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
function getByQualityPriorityValue(headerValue) {
|
|
23
|
+
if (typeof headerValue !== 'string') {
|
|
24
|
+
return '';
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
const split = headerValue.split(',');
|
|
28
|
+
|
|
29
|
+
if (split.length <= 1) {
|
|
30
|
+
const qList = split[0].split(';');
|
|
31
|
+
return qList[0];
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
let [header] = split.reduce((acc, item) => {
|
|
35
|
+
const qList = item.split(';');
|
|
36
|
+
|
|
37
|
+
if (qList.length > 1) {
|
|
38
|
+
const [accept, q] = qList;
|
|
39
|
+
const [, query] = q.split('=');
|
|
40
|
+
acc.push([accept.trim(), query ? query : 0]);
|
|
41
|
+
} else {
|
|
42
|
+
acc.push([qList[0], 0]);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return acc;
|
|
46
|
+
}, []).sort(function (a, b) {
|
|
47
|
+
return b[1] - a[1];
|
|
48
|
+
});
|
|
49
|
+
return header[0];
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzcGxpY2VVUkwiLCJhcmdzIiwiQXJyYXkiLCJmcm9tIiwicmVkdWNlIiwibGFzdFJlc3VsdCIsImN1cnJlbnQiLCJyZXBsYWNlIiwiZ2V0QnlRdWFsaXR5UHJpb3JpdHlWYWx1ZSIsImhlYWRlclZhbHVlIiwic3BsaXQiLCJsZW5ndGgiLCJxTGlzdCIsImhlYWRlciIsImFjYyIsIml0ZW0iLCJhY2NlcHQiLCJxIiwicXVlcnkiLCJwdXNoIiwidHJpbSIsInNvcnQiLCJhIiwiYiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9zdHJpbmcudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQGZsb3dcblxuZXhwb3J0IGZ1bmN0aW9uIHNwbGljZVVSTCguLi5hcmdzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gIHJldHVybiBBcnJheS5mcm9tKGFyZ3MpXG4gICAgLnJlZHVjZSgobGFzdFJlc3VsdCwgY3VycmVudCkgPT4gbGFzdFJlc3VsdCArIGN1cnJlbnQpXG4gICAgLnJlcGxhY2UoLyhbXjpdKShcXC8pKyguKS9nLCBgJDEvJDNgKTtcbn1cblxuLyoqXG4gKiBRdWFsaXR5IHZhbHVlcywgb3IgcS12YWx1ZXMgYW5kIHEtZmFjdG9ycywgYXJlIHVzZWQgdG8gZGVzY3JpYmUgdGhlIG9yZGVyXG4gKiBvZiBwcmlvcml0eSBvZiB2YWx1ZXMgaW4gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdC5cbiAqIEl0IGlzIGEgc3BlY2lhbCBzeW50YXggYWxsb3dlZCBpbiBzb21lIEhUVFAgaGVhZGVycyBhbmQgaW4gSFRNTC5cbiAqIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvR2xvc3NhcnkvUXVhbGl0eV92YWx1ZXNcbiAqIEBwYXJhbSBoZWFkZXJWYWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QnlRdWFsaXR5UHJpb3JpdHlWYWx1ZShoZWFkZXJWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCk6IHN0cmluZyB7XG4gIGlmICh0eXBlb2YgaGVhZGVyVmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgY29uc3Qgc3BsaXQgPSBoZWFkZXJWYWx1ZS5zcGxpdCgnLCcpO1xuXG4gIGlmIChzcGxpdC5sZW5ndGggPD0gMSkge1xuICAgIGNvbnN0IHFMaXN0ID0gc3BsaXRbMF0uc3BsaXQoJzsnKTtcbiAgICByZXR1cm4gcUxpc3RbMF07XG4gIH1cblxuICBsZXQgW2hlYWRlcl0gPSBzcGxpdFxuICAgIC5yZWR1Y2UoKGFjYywgaXRlbTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBxTGlzdCA9IGl0ZW0uc3BsaXQoJzsnKTtcbiAgICAgIGlmIChxTGlzdC5sZW5ndGggPiAxKSB7XG4gICAgICAgIGNvbnN0IFthY2NlcHQsIHFdID0gcUxpc3Q7XG4gICAgICAgIGNvbnN0IFssIHF1ZXJ5XSA9IHEuc3BsaXQoJz0nKTtcbiAgICAgICAgYWNjLnB1c2goW2FjY2VwdC50cmltKCksIHF1ZXJ5ID8gcXVlcnkgOiAwXSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhY2MucHVzaChbcUxpc3RbMF0sIDBdKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwgW10gYXMgYW55KVxuICAgIC5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICByZXR1cm4gYlsxXSAtIGFbMV07XG4gICAgfSk7XG4gIHJldHVybiBoZWFkZXJbMF07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFFTyxTQUFTQSxTQUFULENBQW1CLEdBQUdDLElBQXRCLEVBQThDO0VBQ25ELE9BQU9DLEtBQUssQ0FBQ0MsSUFBTixDQUFXRixJQUFYLEVBQ0pHLE1BREksQ0FDRyxDQUFDQyxVQUFELEVBQWFDLE9BQWIsS0FBeUJELFVBQVUsR0FBR0MsT0FEekMsRUFFSkMsT0FGSSxDQUVJLGlCQUZKLEVBRXdCLE9BRnhCLENBQVA7QUFHRDtBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFDTyxTQUFTQyx5QkFBVCxDQUFtQ0MsV0FBbkMsRUFBbUY7RUFDeEYsSUFBSSxPQUFPQSxXQUFQLEtBQXVCLFFBQTNCLEVBQXFDO0lBQ25DLE9BQU8sRUFBUDtFQUNEOztFQUVELE1BQU1DLEtBQUssR0FBR0QsV0FBVyxDQUFDQyxLQUFaLENBQWtCLEdBQWxCLENBQWQ7O0VBRUEsSUFBSUEsS0FBSyxDQUFDQyxNQUFOLElBQWdCLENBQXBCLEVBQXVCO0lBQ3JCLE1BQU1DLEtBQUssR0FBR0YsS0FBSyxDQUFDLENBQUQsQ0FBTCxDQUFTQSxLQUFULENBQWUsR0FBZixDQUFkO0lBQ0EsT0FBT0UsS0FBSyxDQUFDLENBQUQsQ0FBWjtFQUNEOztFQUVELElBQUksQ0FBQ0MsTUFBRCxJQUFXSCxLQUFLLENBQ2pCTixNQURZLENBQ0wsQ0FBQ1UsR0FBRCxFQUFNQyxJQUFOLEtBQXVCO0lBQzdCLE1BQU1ILEtBQUssR0FBR0csSUFBSSxDQUFDTCxLQUFMLENBQVcsR0FBWCxDQUFkOztJQUNBLElBQUlFLEtBQUssQ0FBQ0QsTUFBTixHQUFlLENBQW5CLEVBQXNCO01BQ3BCLE1BQU0sQ0FBQ0ssTUFBRCxFQUFTQyxDQUFULElBQWNMLEtBQXBCO01BQ0EsTUFBTSxHQUFHTSxLQUFILElBQVlELENBQUMsQ0FBQ1AsS0FBRixDQUFRLEdBQVIsQ0FBbEI7TUFDQUksR0FBRyxDQUFDSyxJQUFKLENBQVMsQ0FBQ0gsTUFBTSxDQUFDSSxJQUFQLEVBQUQsRUFBZ0JGLEtBQUssR0FBR0EsS0FBSCxHQUFXLENBQWhDLENBQVQ7SUFDRCxDQUpELE1BSU87TUFDTEosR0FBRyxDQUFDSyxJQUFKLENBQVMsQ0FBQ1AsS0FBSyxDQUFDLENBQUQsQ0FBTixFQUFXLENBQVgsQ0FBVDtJQUNEOztJQUNELE9BQU9FLEdBQVA7RUFDRCxDQVhZLEVBV1YsRUFYVSxFQVlaTyxJQVpZLENBWVAsVUFBVUMsQ0FBVixFQUFhQyxDQUFiLEVBQWdCO0lBQ3BCLE9BQU9BLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBT0QsQ0FBQyxDQUFDLENBQUQsQ0FBZjtFQUNELENBZFksQ0FBZjtFQWVBLE9BQU9ULE1BQU0sQ0FBQyxDQUFELENBQWI7QUFDRCJ9
|