tedious 14.7.0 → 15.0.0-beta.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/appveyor.yml +1 -1
- package/lib/connection.js +80 -166
- package/lib/connector.js +100 -144
- package/lib/data-types/tvp.js +4 -4
- package/lib/errors/abort-error.js +19 -0
- package/lib/errors/timeout-error.js +19 -0
- package/lib/instance-lookup.js +77 -117
- package/lib/message-io.js +89 -65
- package/lib/metadata-parser.js +1 -1
- package/lib/request.js +2 -2
- package/lib/sender.js +41 -88
- package/lib/token/colmetadata-token-parser.js +1 -1
- package/lib/token/done-token-parser.js +1 -1
- package/lib/token/env-change-token-parser.js +1 -1
- package/lib/token/feature-ext-ack-parser.js +1 -1
- package/lib/token/fedauth-info-parser.js +1 -1
- package/lib/token/infoerror-token-parser.js +1 -1
- package/lib/token/loginack-token-parser.js +1 -1
- package/lib/token/nbcrow-token-parser.js +1 -1
- package/lib/token/order-token-parser.js +1 -1
- package/lib/token/returnstatus-token-parser.js +1 -1
- package/lib/token/returnvalue-token-parser.js +1 -1
- package/lib/token/sspi-token-parser.js +1 -1
- package/lib/token/stream-parser.js +1 -1
- package/lib/token/token-stream-parser.js +1 -1
- package/lib/utils/with-timeout.js +45 -0
- package/lib/value-parser.js +1 -1
- package/package.json +3 -3
- package/types/native-duplexpair.d.ts +12 -0
package/lib/connector.js
CHANGED
|
@@ -3,60 +3,43 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.connectInParallel = connectInParallel;
|
|
7
|
+
exports.connectInSequence = connectInSequence;
|
|
8
|
+
exports.lookupAllAddresses = lookupAllAddresses;
|
|
7
9
|
|
|
8
10
|
var _net = _interopRequireDefault(require("net"));
|
|
9
11
|
|
|
10
|
-
var _dns = _interopRequireDefault(require("dns"));
|
|
11
|
-
|
|
12
12
|
var punycode = _interopRequireWildcard(require("punycode"));
|
|
13
13
|
|
|
14
|
+
var _abortError = _interopRequireDefault(require("./errors/abort-error"));
|
|
15
|
+
|
|
16
|
+
var _esAggregateError = _interopRequireDefault(require("es-aggregate-error"));
|
|
17
|
+
|
|
14
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
19
|
|
|
16
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
17
21
|
|
|
18
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
23
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
this.code = void 0;
|
|
24
|
-
this.code = 'ABORT_ERR';
|
|
25
|
-
this.name = 'AbortError';
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
class ParallelConnectionStrategy {
|
|
31
|
-
constructor(addresses, signal, options) {
|
|
32
|
-
this.addresses = void 0;
|
|
33
|
-
this.options = void 0;
|
|
34
|
-
this.signal = void 0;
|
|
35
|
-
this.addresses = addresses;
|
|
36
|
-
this.options = options;
|
|
37
|
-
this.signal = signal;
|
|
24
|
+
async function connectInParallel(options, lookup, signal) {
|
|
25
|
+
if (signal.aborted) {
|
|
26
|
+
throw new _abortError.default();
|
|
38
27
|
}
|
|
39
28
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
if (signal.aborted) {
|
|
44
|
-
return process.nextTick(callback, new AbortError());
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
const addresses = this.addresses;
|
|
29
|
+
const addresses = await lookupAllAddresses(options.host, lookup, signal);
|
|
30
|
+
return await new Promise((resolve, reject) => {
|
|
48
31
|
const sockets = new Array(addresses.length);
|
|
49
|
-
|
|
32
|
+
const errors = [];
|
|
50
33
|
|
|
51
|
-
function onError(
|
|
52
|
-
|
|
34
|
+
function onError(err) {
|
|
35
|
+
errors.push(err);
|
|
53
36
|
this.removeListener('error', onError);
|
|
54
37
|
this.removeListener('connect', onConnect);
|
|
55
38
|
this.destroy();
|
|
56
39
|
|
|
57
|
-
if (
|
|
40
|
+
if (errors.length === addresses.length) {
|
|
58
41
|
signal.removeEventListener('abort', onAbort);
|
|
59
|
-
|
|
42
|
+
reject(new _esAggregateError.default(errors, 'Could not connect (parallel)'));
|
|
60
43
|
}
|
|
61
44
|
}
|
|
62
45
|
|
|
@@ -75,7 +58,7 @@ class ParallelConnectionStrategy {
|
|
|
75
58
|
socket.destroy();
|
|
76
59
|
}
|
|
77
60
|
|
|
78
|
-
|
|
61
|
+
resolve(this);
|
|
79
62
|
}
|
|
80
63
|
|
|
81
64
|
const onAbort = () => {
|
|
@@ -86,11 +69,11 @@ class ParallelConnectionStrategy {
|
|
|
86
69
|
socket.destroy();
|
|
87
70
|
}
|
|
88
71
|
|
|
89
|
-
|
|
72
|
+
reject(new _abortError.default());
|
|
90
73
|
};
|
|
91
74
|
|
|
92
75
|
for (let i = 0, len = addresses.length; i < len; i++) {
|
|
93
|
-
const socket = sockets[i] = _net.default.connect({ ...
|
|
76
|
+
const socket = sockets[i] = _net.default.connect({ ...options,
|
|
94
77
|
host: addresses[i].address,
|
|
95
78
|
family: addresses[i].family
|
|
96
79
|
});
|
|
@@ -102,126 +85,99 @@ class ParallelConnectionStrategy {
|
|
|
102
85
|
signal.addEventListener('abort', onAbort, {
|
|
103
86
|
once: true
|
|
104
87
|
});
|
|
105
|
-
}
|
|
106
|
-
|
|
88
|
+
});
|
|
107
89
|
}
|
|
108
90
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
constructor(addresses, signal, options) {
|
|
113
|
-
this.addresses = void 0;
|
|
114
|
-
this.options = void 0;
|
|
115
|
-
this.signal = void 0;
|
|
116
|
-
this.addresses = addresses;
|
|
117
|
-
this.options = options;
|
|
118
|
-
this.signal = signal;
|
|
91
|
+
async function connectInSequence(options, lookup, signal) {
|
|
92
|
+
if (signal.aborted) {
|
|
93
|
+
throw new _abortError.default();
|
|
119
94
|
}
|
|
120
95
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
96
|
+
const errors = [];
|
|
97
|
+
const addresses = await lookupAllAddresses(options.host, lookup, signal);
|
|
98
|
+
|
|
99
|
+
for (const address of addresses) {
|
|
100
|
+
try {
|
|
101
|
+
return await new Promise((resolve, reject) => {
|
|
102
|
+
const socket = _net.default.connect({ ...options,
|
|
103
|
+
host: address.address,
|
|
104
|
+
family: address.family
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
const onAbort = () => {
|
|
108
|
+
socket.removeListener('error', onError);
|
|
109
|
+
socket.removeListener('connect', onConnect);
|
|
110
|
+
socket.destroy();
|
|
111
|
+
reject(new _abortError.default());
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
const onError = err => {
|
|
115
|
+
signal.removeEventListener('abort', onAbort);
|
|
116
|
+
socket.removeListener('error', onError);
|
|
117
|
+
socket.removeListener('connect', onConnect);
|
|
118
|
+
socket.destroy();
|
|
119
|
+
reject(err);
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
const onConnect = () => {
|
|
123
|
+
signal.removeEventListener('abort', onAbort);
|
|
124
|
+
socket.removeListener('error', onError);
|
|
125
|
+
socket.removeListener('connect', onConnect);
|
|
126
|
+
resolve(socket);
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
signal.addEventListener('abort', onAbort, {
|
|
130
|
+
once: true
|
|
131
|
+
});
|
|
132
|
+
socket.on('error', onError);
|
|
133
|
+
socket.on('connect', onConnect);
|
|
134
|
+
});
|
|
135
|
+
} catch (err) {
|
|
136
|
+
if (err instanceof Error && err.name === 'AbortError') {
|
|
137
|
+
throw err;
|
|
138
|
+
}
|
|
127
139
|
|
|
128
|
-
|
|
129
|
-
|
|
140
|
+
errors.push(err);
|
|
141
|
+
continue;
|
|
130
142
|
}
|
|
131
|
-
|
|
132
|
-
const socket = _net.default.connect({ ...this.options,
|
|
133
|
-
host: next.address,
|
|
134
|
-
family: next.family
|
|
135
|
-
});
|
|
136
|
-
|
|
137
|
-
const onAbort = () => {
|
|
138
|
-
socket.removeListener('error', onError);
|
|
139
|
-
socket.removeListener('connect', onConnect);
|
|
140
|
-
socket.destroy();
|
|
141
|
-
callback(new AbortError());
|
|
142
|
-
};
|
|
143
|
-
|
|
144
|
-
const onError = _err => {
|
|
145
|
-
this.signal.removeEventListener('abort', onAbort);
|
|
146
|
-
socket.removeListener('error', onError);
|
|
147
|
-
socket.removeListener('connect', onConnect);
|
|
148
|
-
socket.destroy();
|
|
149
|
-
this.connect(callback);
|
|
150
|
-
};
|
|
151
|
-
|
|
152
|
-
const onConnect = () => {
|
|
153
|
-
this.signal.removeEventListener('abort', onAbort);
|
|
154
|
-
socket.removeListener('error', onError);
|
|
155
|
-
socket.removeListener('connect', onConnect);
|
|
156
|
-
callback(null, socket);
|
|
157
|
-
};
|
|
158
|
-
|
|
159
|
-
this.signal.addEventListener('abort', onAbort, {
|
|
160
|
-
once: true
|
|
161
|
-
});
|
|
162
|
-
socket.on('error', onError);
|
|
163
|
-
socket.on('connect', onConnect);
|
|
164
143
|
}
|
|
165
144
|
|
|
145
|
+
throw new _esAggregateError.default(errors, 'Could not connect (sequence)');
|
|
166
146
|
}
|
|
147
|
+
/**
|
|
148
|
+
* Look up all addresses for the given hostname.
|
|
149
|
+
*/
|
|
167
150
|
|
|
168
|
-
exports.SequentialConnectionStrategy = SequentialConnectionStrategy;
|
|
169
151
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
this.options = void 0;
|
|
175
|
-
this.multiSubnetFailover = void 0;
|
|
176
|
-
this.lookup = void 0;
|
|
177
|
-
this.signal = void 0;
|
|
178
|
-
this.options = options;
|
|
179
|
-
this.lookup = (_options$lookup = options.lookup) !== null && _options$lookup !== void 0 ? _options$lookup : _dns.default.lookup;
|
|
180
|
-
this.signal = signal;
|
|
181
|
-
this.multiSubnetFailover = multiSubnetFailover;
|
|
152
|
+
async function lookupAllAddresses(host, lookup, signal) {
|
|
153
|
+
if (signal.aborted) {
|
|
154
|
+
throw new _abortError.default();
|
|
182
155
|
}
|
|
183
156
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
}
|
|
203
|
-
});
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
lookupAllAddresses(host, callback) {
|
|
207
|
-
if (_net.default.isIPv6(host)) {
|
|
208
|
-
process.nextTick(callback, null, [{
|
|
209
|
-
address: host,
|
|
210
|
-
family: 6
|
|
211
|
-
}]);
|
|
212
|
-
} else if (_net.default.isIPv4(host)) {
|
|
213
|
-
process.nextTick(callback, null, [{
|
|
214
|
-
address: host,
|
|
215
|
-
family: 4
|
|
216
|
-
}]);
|
|
217
|
-
} else {
|
|
218
|
-
this.lookup.call(null, punycode.toASCII(host), {
|
|
157
|
+
if (_net.default.isIPv6(host)) {
|
|
158
|
+
return [{
|
|
159
|
+
address: host,
|
|
160
|
+
family: 6
|
|
161
|
+
}];
|
|
162
|
+
} else if (_net.default.isIPv4(host)) {
|
|
163
|
+
return [{
|
|
164
|
+
address: host,
|
|
165
|
+
family: 4
|
|
166
|
+
}];
|
|
167
|
+
} else {
|
|
168
|
+
return await new Promise((resolve, reject) => {
|
|
169
|
+
const onAbort = () => {
|
|
170
|
+
reject(new _abortError.default());
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
signal.addEventListener('abort', onAbort);
|
|
174
|
+
lookup(punycode.toASCII(host), {
|
|
219
175
|
all: true
|
|
220
|
-
},
|
|
221
|
-
|
|
176
|
+
}, (err, addresses) => {
|
|
177
|
+
signal.removeEventListener('abort', onAbort);
|
|
178
|
+
err ? reject(err) : resolve(addresses);
|
|
179
|
+
});
|
|
180
|
+
});
|
|
222
181
|
}
|
|
223
|
-
|
|
224
182
|
}
|
|
225
|
-
|
|
226
|
-
exports.Connector = Connector;
|
|
227
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBYm9ydEVycm9yIiwiRXJyb3IiLCJjb25zdHJ1Y3RvciIsImNvZGUiLCJuYW1lIiwiUGFyYWxsZWxDb25uZWN0aW9uU3RyYXRlZ3kiLCJhZGRyZXNzZXMiLCJzaWduYWwiLCJvcHRpb25zIiwiY29ubmVjdCIsImNhbGxiYWNrIiwiYWJvcnRlZCIsInByb2Nlc3MiLCJuZXh0VGljayIsInNvY2tldHMiLCJBcnJheSIsImxlbmd0aCIsImVycm9yQ291bnQiLCJvbkVycm9yIiwiX2VyciIsInJlbW92ZUxpc3RlbmVyIiwib25Db25uZWN0IiwiZGVzdHJveSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJvbkFib3J0IiwiaiIsInNvY2tldCIsImkiLCJsZW4iLCJuZXQiLCJob3N0IiwiYWRkcmVzcyIsImZhbWlseSIsIm9uIiwiYWRkRXZlbnRMaXN0ZW5lciIsIm9uY2UiLCJTZXF1ZW50aWFsQ29ubmVjdGlvblN0cmF0ZWd5IiwibmV4dCIsInNoaWZ0IiwiQ29ubmVjdG9yIiwibXVsdGlTdWJuZXRGYWlsb3ZlciIsImxvb2t1cCIsImRucyIsImV4ZWN1dGUiLCJjYiIsImxvb2t1cEFsbEFkZHJlc3NlcyIsImVyciIsImlzSVB2NiIsImlzSVB2NCIsImNhbGwiLCJwdW55Y29kZSIsInRvQVNDSUkiLCJhbGwiXSwic291cmNlcyI6WyIuLi9zcmMvY29ubmVjdG9yLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBuZXQgZnJvbSAnbmV0JztcbmltcG9ydCBkbnMgZnJvbSAnZG5zJztcblxuaW1wb3J0ICogYXMgcHVueWNvZGUgZnJvbSAncHVueWNvZGUnO1xuaW1wb3J0IHsgQWJvcnRTaWduYWwgfSBmcm9tICdub2RlLWFib3J0LWNvbnRyb2xsZXInO1xuXG5jbGFzcyBBYm9ydEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQnKTtcblxuICAgIHRoaXMuY29kZSA9ICdBQk9SVF9FUlInO1xuICAgIHRoaXMubmFtZSA9ICdBYm9ydEVycm9yJztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFyYWxsZWxDb25uZWN0aW9uU3RyYXRlZ3kge1xuICBhZGRyZXNzZXM6IGRucy5Mb29rdXBBZGRyZXNzW107XG4gIG9wdGlvbnM6IHsgcG9ydDogbnVtYmVyLCBsb2NhbEFkZHJlc3M/OiBzdHJpbmcgfCB1bmRlZmluZWQgfTtcbiAgc2lnbmFsOiBBYm9ydFNpZ25hbDtcblxuICBjb25zdHJ1Y3RvcihhZGRyZXNzZXM6IGRucy5Mb29rdXBBZGRyZXNzW10sIHNpZ25hbDogQWJvcnRTaWduYWwsIG9wdGlvbnM6IHsgcG9ydDogbnVtYmVyLCBsb2NhbEFkZHJlc3M/OiBzdHJpbmcgfCB1bmRlZmluZWQgfSkge1xuICAgIHRoaXMuYWRkcmVzc2VzID0gYWRkcmVzc2VzO1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgdGhpcy5zaWduYWwgPSBzaWduYWw7XG4gIH1cblxuICBjb25uZWN0KGNhbGxiYWNrOiAoZXJyOiBFcnJvciB8IG51bGwsIHNvY2tldD86IG5ldC5Tb2NrZXQpID0+IHZvaWQpIHtcbiAgICBjb25zdCBzaWduYWwgPSB0aGlzLnNpZ25hbDtcbiAgICBpZiAoc2lnbmFsLmFib3J0ZWQpIHtcbiAgICAgIHJldHVybiBwcm9jZXNzLm5leHRUaWNrKGNhbGxiYWNrLCBuZXcgQWJvcnRFcnJvcigpKTtcbiAgICB9XG5cbiAgICBjb25zdCBhZGRyZXNzZXMgPSB0aGlzLmFkZHJlc3NlcztcbiAgICBjb25zdCBzb2NrZXRzID0gbmV3IEFycmF5KGFkZHJlc3Nlcy5sZW5ndGgpO1xuXG4gICAgbGV0IGVycm9yQ291bnQgPSAwO1xuICAgIGZ1bmN0aW9uIG9uRXJyb3IodGhpczogbmV0LlNvY2tldCwgX2VycjogRXJyb3IpIHtcbiAgICAgIGVycm9yQ291bnQgKz0gMTtcblxuICAgICAgdGhpcy5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICB0aGlzLmRlc3Ryb3koKTtcblxuICAgICAgaWYgKGVycm9yQ291bnQgPT09IGFkZHJlc3Nlcy5sZW5ndGgpIHtcbiAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgICAgY2FsbGJhY2sobmV3IEVycm9yKCdDb3VsZCBub3QgY29ubmVjdCAocGFyYWxsZWwpJykpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIG9uQ29ubmVjdCh0aGlzOiBuZXQuU29ja2V0KSB7XG4gICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBzb2NrZXRzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgIGNvbnN0IHNvY2tldCA9IHNvY2tldHNbal07XG5cbiAgICAgICAgaWYgKHRoaXMgPT09IHNvY2tldCkge1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuICAgICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgfVxuXG4gICAgICBjYWxsYmFjayhudWxsLCB0aGlzKTtcbiAgICB9XG5cbiAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBzb2NrZXRzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgIGNvbnN0IHNvY2tldCA9IHNvY2tldHNbal07XG5cbiAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICAgIHNvY2tldC5kZXN0cm95KCk7XG4gICAgICB9XG5cbiAgICAgIGNhbGxiYWNrKG5ldyBBYm9ydEVycm9yKCkpO1xuICAgIH07XG5cbiAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYWRkcmVzc2VzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICBjb25zdCBzb2NrZXQgPSBzb2NrZXRzW2ldID0gbmV0LmNvbm5lY3Qoe1xuICAgICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICAgIGhvc3Q6IGFkZHJlc3Nlc1tpXS5hZGRyZXNzLFxuICAgICAgICBmYW1pbHk6IGFkZHJlc3Nlc1tpXS5mYW1pbHlcbiAgICAgIH0pO1xuXG4gICAgICBzb2NrZXQub24oJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICBzb2NrZXQub24oJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuICAgIH1cblxuICAgIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQsIHsgb25jZTogdHJ1ZSB9KTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgU2VxdWVudGlhbENvbm5lY3Rpb25TdHJhdGVneSB7XG4gIGFkZHJlc3NlczogZG5zLkxvb2t1cEFkZHJlc3NbXTtcbiAgb3B0aW9uczogeyBwb3J0OiBudW1iZXIsIGxvY2FsQWRkcmVzcz86IHN0cmluZyB8IHVuZGVmaW5lZCB9O1xuICBzaWduYWw6IEFib3J0U2lnbmFsO1xuXG4gIGNvbnN0cnVjdG9yKGFkZHJlc3NlczogZG5zLkxvb2t1cEFkZHJlc3NbXSwgc2lnbmFsOiBBYm9ydFNpZ25hbCwgb3B0aW9uczogeyBwb3J0OiBudW1iZXIsIGxvY2FsQWRkcmVzcz86IHN0cmluZyB8IHVuZGVmaW5lZCB9KSB7XG4gICAgdGhpcy5hZGRyZXNzZXMgPSBhZGRyZXNzZXM7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICB0aGlzLnNpZ25hbCA9IHNpZ25hbDtcbiAgfVxuXG4gIGNvbm5lY3QoY2FsbGJhY2s6IChlcnI6IEVycm9yIHwgbnVsbCwgc29ja2V0PzogbmV0LlNvY2tldCkgPT4gdm9pZCkge1xuICAgIGlmICh0aGlzLnNpZ25hbC5hYm9ydGVkKSB7XG4gICAgICByZXR1cm4gcHJvY2Vzcy5uZXh0VGljayhjYWxsYmFjaywgbmV3IEFib3J0RXJyb3IoKSk7XG4gICAgfVxuXG4gICAgY29uc3QgbmV4dCA9IHRoaXMuYWRkcmVzc2VzLnNoaWZ0KCk7XG4gICAgaWYgKCFuZXh0KSB7XG4gICAgICByZXR1cm4gY2FsbGJhY2sobmV3IEVycm9yKCdDb3VsZCBub3QgY29ubmVjdCAoc2VxdWVuY2UpJykpO1xuICAgIH1cblxuICAgIGNvbnN0IHNvY2tldCA9IG5ldC5jb25uZWN0KHtcbiAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgIGhvc3Q6IG5leHQuYWRkcmVzcyxcbiAgICAgIGZhbWlseTogbmV4dC5mYW1pbHlcbiAgICB9KTtcblxuICAgIGNvbnN0IG9uQWJvcnQgPSAoKSA9PiB7XG4gICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICBzb2NrZXQuZGVzdHJveSgpO1xuXG4gICAgICBjYWxsYmFjayhuZXcgQWJvcnRFcnJvcigpKTtcbiAgICB9O1xuXG4gICAgY29uc3Qgb25FcnJvciA9IChfZXJyOiBFcnJvcikgPT4ge1xuICAgICAgdGhpcy5zaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjb25uZWN0Jywgb25Db25uZWN0KTtcblxuICAgICAgc29ja2V0LmRlc3Ryb3koKTtcblxuICAgICAgdGhpcy5jb25uZWN0KGNhbGxiYWNrKTtcbiAgICB9O1xuXG4gICAgY29uc3Qgb25Db25uZWN0ID0gKCkgPT4ge1xuICAgICAgdGhpcy5zaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjb25uZWN0Jywgb25Db25uZWN0KTtcblxuICAgICAgY2FsbGJhY2sobnVsbCwgc29ja2V0KTtcbiAgICB9O1xuXG4gICAgdGhpcy5zaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0LCB7IG9uY2U6IHRydWUgfSk7XG5cbiAgICBzb2NrZXQub24oJ2Vycm9yJywgb25FcnJvcik7XG4gICAgc29ja2V0Lm9uKCdjb25uZWN0Jywgb25Db25uZWN0KTtcbiAgfVxufVxuXG50eXBlIExvb2t1cEZ1bmN0aW9uID0gKGhvc3RuYW1lOiBzdHJpbmcsIG9wdGlvbnM6IGRucy5Mb29rdXBBbGxPcHRpb25zLCBjYWxsYmFjazogKGVycjogTm9kZUpTLkVycm5vRXhjZXB0aW9uIHwgbnVsbCwgYWRkcmVzc2VzOiBkbnMuTG9va3VwQWRkcmVzc1tdKSA9PiB2b2lkKSA9PiB2b2lkO1xuXG5leHBvcnQgY2xhc3MgQ29ubmVjdG9yIHtcbiAgb3B0aW9uczogeyBwb3J0OiBudW1iZXIsIGhvc3Q6IHN0cmluZywgbG9jYWxBZGRyZXNzPzogc3RyaW5nIHwgdW5kZWZpbmVkIH07XG4gIG11bHRpU3VibmV0RmFpbG92ZXI6IGJvb2xlYW47XG4gIGxvb2t1cDogTG9va3VwRnVuY3Rpb247XG4gIHNpZ25hbDogQWJvcnRTaWduYWw7XG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogeyBwb3J0OiBudW1iZXIsIGhvc3Q6IHN0cmluZywgbG9jYWxBZGRyZXNzPzogc3RyaW5nIHwgdW5kZWZpbmVkLCBsb29rdXA/OiBMb29rdXBGdW5jdGlvbiB8IHVuZGVmaW5lZCB9LCBzaWduYWw6IEFib3J0U2lnbmFsLCBtdWx0aVN1Ym5ldEZhaWxvdmVyOiBib29sZWFuKSB7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICB0aGlzLmxvb2t1cCA9IG9wdGlvbnMubG9va3VwID8/IGRucy5sb29rdXA7XG4gICAgdGhpcy5zaWduYWwgPSBzaWduYWw7XG4gICAgdGhpcy5tdWx0aVN1Ym5ldEZhaWxvdmVyID0gbXVsdGlTdWJuZXRGYWlsb3ZlcjtcbiAgfVxuXG4gIGV4ZWN1dGUoY2I6IChlcnI6IEVycm9yIHwgbnVsbCwgc29ja2V0PzogbmV0LlNvY2tldCkgPT4gdm9pZCkge1xuICAgIGlmICh0aGlzLnNpZ25hbC5hYm9ydGVkKSB7XG4gICAgICByZXR1cm4gcHJvY2Vzcy5uZXh0VGljayhjYiwgbmV3IEFib3J0RXJyb3IoKSk7XG4gICAgfVxuXG4gICAgdGhpcy5sb29rdXBBbGxBZGRyZXNzZXModGhpcy5vcHRpb25zLmhvc3QsIChlcnIsIGFkZHJlc3NlcykgPT4ge1xuICAgICAgaWYgKHRoaXMuc2lnbmFsLmFib3J0ZWQpIHtcbiAgICAgICAgcmV0dXJuIGNiKG5ldyBBYm9ydEVycm9yKCkpO1xuICAgICAgfVxuXG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHJldHVybiBjYihlcnIpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5tdWx0aVN1Ym5ldEZhaWxvdmVyKSB7XG4gICAgICAgIG5ldyBQYXJhbGxlbENvbm5lY3Rpb25TdHJhdGVneShhZGRyZXNzZXMsIHRoaXMuc2lnbmFsLCB0aGlzLm9wdGlvbnMpLmNvbm5lY3QoY2IpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3IFNlcXVlbnRpYWxDb25uZWN0aW9uU3RyYXRlZ3koYWRkcmVzc2VzLCB0aGlzLnNpZ25hbCwgdGhpcy5vcHRpb25zKS5jb25uZWN0KGNiKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGxvb2t1cEFsbEFkZHJlc3Nlcyhob3N0OiBzdHJpbmcsIGNhbGxiYWNrOiAoZXJyOiBOb2RlSlMuRXJybm9FeGNlcHRpb24gfCBudWxsLCBhZGRyZXNzZXM6IGRucy5Mb29rdXBBZGRyZXNzW10pID0+IHZvaWQpIHtcbiAgICBpZiAobmV0LmlzSVB2Nihob3N0KSkge1xuICAgICAgcHJvY2Vzcy5uZXh0VGljayhjYWxsYmFjaywgbnVsbCwgW3sgYWRkcmVzczogaG9zdCwgZmFtaWx5OiA2IH1dKTtcbiAgICB9IGVsc2UgaWYgKG5ldC5pc0lQdjQoaG9zdCkpIHtcbiAgICAgIHByb2Nlc3MubmV4dFRpY2soY2FsbGJhY2ssIG51bGwsIFt7IGFkZHJlc3M6IGhvc3QsIGZhbWlseTogNCB9XSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9va3VwLmNhbGwobnVsbCwgcHVueWNvZGUudG9BU0NJSShob3N0KSwgeyBhbGw6IHRydWUgfSwgY2FsbGJhY2spO1xuICAgIH1cbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBRUE7Ozs7Ozs7O0FBR0EsTUFBTUEsVUFBTixTQUF5QkMsS0FBekIsQ0FBK0I7RUFHN0JDLFdBQVcsR0FBRztJQUNaLE1BQU0sMkJBQU47SUFEWSxLQUZkQyxJQUVjO0lBR1osS0FBS0EsSUFBTCxHQUFZLFdBQVo7SUFDQSxLQUFLQyxJQUFMLEdBQVksWUFBWjtFQUNEOztBQVI0Qjs7QUFXeEIsTUFBTUMsMEJBQU4sQ0FBaUM7RUFLdENILFdBQVcsQ0FBQ0ksU0FBRCxFQUFpQ0MsTUFBakMsRUFBc0RDLE9BQXRELEVBQW9IO0lBQUEsS0FKL0hGLFNBSStIO0lBQUEsS0FIL0hFLE9BRytIO0lBQUEsS0FGL0hELE1BRStIO0lBQzdILEtBQUtELFNBQUwsR0FBaUJBLFNBQWpCO0lBQ0EsS0FBS0UsT0FBTCxHQUFlQSxPQUFmO0lBQ0EsS0FBS0QsTUFBTCxHQUFjQSxNQUFkO0VBQ0Q7O0VBRURFLE9BQU8sQ0FBQ0MsUUFBRCxFQUE2RDtJQUNsRSxNQUFNSCxNQUFNLEdBQUcsS0FBS0EsTUFBcEI7O0lBQ0EsSUFBSUEsTUFBTSxDQUFDSSxPQUFYLEVBQW9CO01BQ2xCLE9BQU9DLE9B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
|
|
183
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb25uZWN0SW5QYXJhbGxlbCIsIm9wdGlvbnMiLCJsb29rdXAiLCJzaWduYWwiLCJhYm9ydGVkIiwiQWJvcnRFcnJvciIsImFkZHJlc3NlcyIsImxvb2t1cEFsbEFkZHJlc3NlcyIsImhvc3QiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInNvY2tldHMiLCJBcnJheSIsImxlbmd0aCIsImVycm9ycyIsIm9uRXJyb3IiLCJlcnIiLCJwdXNoIiwicmVtb3ZlTGlzdGVuZXIiLCJvbkNvbm5lY3QiLCJkZXN0cm95IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm9uQWJvcnQiLCJBZ2dyZWdhdGVFcnJvciIsImoiLCJzb2NrZXQiLCJpIiwibGVuIiwibmV0IiwiY29ubmVjdCIsImFkZHJlc3MiLCJmYW1pbHkiLCJvbiIsImFkZEV2ZW50TGlzdGVuZXIiLCJvbmNlIiwiY29ubmVjdEluU2VxdWVuY2UiLCJFcnJvciIsIm5hbWUiLCJpc0lQdjYiLCJpc0lQdjQiLCJwdW55Y29kZSIsInRvQVNDSUkiLCJhbGwiXSwic291cmNlcyI6WyIuLi9zcmMvY29ubmVjdG9yLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBuZXQgZnJvbSAnbmV0JztcbmltcG9ydCBkbnMsIHsgTG9va3VwQWRkcmVzcyB9IGZyb20gJ2Rucyc7XG5cbmltcG9ydCAqIGFzIHB1bnljb2RlIGZyb20gJ3B1bnljb2RlJztcbmltcG9ydCB7IEFib3J0U2lnbmFsIH0gZnJvbSAnbm9kZS1hYm9ydC1jb250cm9sbGVyJztcbmltcG9ydCBBYm9ydEVycm9yIGZyb20gJy4vZXJyb3JzL2Fib3J0LWVycm9yJztcblxuaW1wb3J0IEFnZ3JlZ2F0ZUVycm9yIGZyb20gJ2VzLWFnZ3JlZ2F0ZS1lcnJvcic7XG5cbnR5cGUgTG9va3VwRnVuY3Rpb24gPSAoaG9zdG5hbWU6IHN0cmluZywgb3B0aW9uczogZG5zLkxvb2t1cEFsbE9wdGlvbnMsIGNhbGxiYWNrOiAoZXJyOiBOb2RlSlMuRXJybm9FeGNlcHRpb24gfCBudWxsLCBhZGRyZXNzZXM6IGRucy5Mb29rdXBBZGRyZXNzW10pID0+IHZvaWQpID0+IHZvaWQ7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb25uZWN0SW5QYXJhbGxlbChvcHRpb25zOiB7IGhvc3Q6IHN0cmluZywgcG9ydDogbnVtYmVyLCBsb2NhbEFkZHJlc3M/OiBzdHJpbmcgfCB1bmRlZmluZWQgfSwgbG9va3VwOiBMb29rdXBGdW5jdGlvbiwgc2lnbmFsOiBBYm9ydFNpZ25hbCkge1xuICBpZiAoc2lnbmFsLmFib3J0ZWQpIHtcbiAgICB0aHJvdyBuZXcgQWJvcnRFcnJvcigpO1xuICB9XG5cbiAgY29uc3QgYWRkcmVzc2VzID0gYXdhaXQgbG9va3VwQWxsQWRkcmVzc2VzKG9wdGlvbnMuaG9zdCwgbG9va3VwLCBzaWduYWwpO1xuXG4gIHJldHVybiBhd2FpdCBuZXcgUHJvbWlzZTxuZXQuU29ja2V0PigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3Qgc29ja2V0cyA9IG5ldyBBcnJheShhZGRyZXNzZXMubGVuZ3RoKTtcblxuICAgIGNvbnN0IGVycm9yczogRXJyb3JbXSA9IFtdO1xuXG4gICAgZnVuY3Rpb24gb25FcnJvcih0aGlzOiBuZXQuU29ja2V0LCBlcnI6IEVycm9yKSB7XG4gICAgICBlcnJvcnMucHVzaChlcnIpO1xuXG4gICAgICB0aGlzLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgdGhpcy5yZW1vdmVMaXN0ZW5lcignY29ubmVjdCcsIG9uQ29ubmVjdCk7XG5cbiAgICAgIHRoaXMuZGVzdHJveSgpO1xuXG4gICAgICBpZiAoZXJyb3JzLmxlbmd0aCA9PT0gYWRkcmVzc2VzLmxlbmd0aCkge1xuICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICByZWplY3QobmV3IEFnZ3JlZ2F0ZUVycm9yKGVycm9ycywgJ0NvdWxkIG5vdCBjb25uZWN0IChwYXJhbGxlbCknKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gb25Db25uZWN0KHRoaXM6IG5ldC5Tb2NrZXQpIHtcbiAgICAgIHNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQpO1xuXG4gICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNvY2tldHMubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgY29uc3Qgc29ja2V0ID0gc29ja2V0c1tqXTtcblxuICAgICAgICBpZiAodGhpcyA9PT0gc29ja2V0KSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignY29ubmVjdCcsIG9uQ29ubmVjdCk7XG4gICAgICAgIHNvY2tldC5kZXN0cm95KCk7XG4gICAgICB9XG5cbiAgICAgIHJlc29sdmUodGhpcyk7XG4gICAgfVxuXG4gICAgY29uc3Qgb25BYm9ydCA9ICgpID0+IHtcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgc29ja2V0cy5sZW5ndGg7IGorKykge1xuICAgICAgICBjb25zdCBzb2NrZXQgPSBzb2NrZXRzW2pdO1xuXG4gICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjb25uZWN0Jywgb25Db25uZWN0KTtcblxuICAgICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgfVxuXG4gICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgfTtcblxuICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBhZGRyZXNzZXMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgICAgIGNvbnN0IHNvY2tldCA9IHNvY2tldHNbaV0gPSBuZXQuY29ubmVjdCh7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIGhvc3Q6IGFkZHJlc3Nlc1tpXS5hZGRyZXNzLFxuICAgICAgICBmYW1pbHk6IGFkZHJlc3Nlc1tpXS5mYW1pbHlcbiAgICAgIH0pO1xuXG4gICAgICBzb2NrZXQub24oJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICBzb2NrZXQub24oJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuICAgIH1cblxuICAgIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQsIHsgb25jZTogdHJ1ZSB9KTtcbiAgfSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb25uZWN0SW5TZXF1ZW5jZShvcHRpb25zOiB7IGhvc3Q6IHN0cmluZywgcG9ydDogbnVtYmVyLCBsb2NhbEFkZHJlc3M/OiBzdHJpbmcgfCB1bmRlZmluZWQgfSwgbG9va3VwOiBMb29rdXBGdW5jdGlvbiwgc2lnbmFsOiBBYm9ydFNpZ25hbCkge1xuICBpZiAoc2lnbmFsLmFib3J0ZWQpIHtcbiAgICB0aHJvdyBuZXcgQWJvcnRFcnJvcigpO1xuICB9XG5cbiAgY29uc3QgZXJyb3JzOiBhbnlbXSA9IFtdO1xuICBjb25zdCBhZGRyZXNzZXMgPSBhd2FpdCBsb29rdXBBbGxBZGRyZXNzZXMob3B0aW9ucy5ob3N0LCBsb29rdXAsIHNpZ25hbCk7XG5cbiAgZm9yIChjb25zdCBhZGRyZXNzIG9mIGFkZHJlc3Nlcykge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgbmV3IFByb21pc2U8bmV0LlNvY2tldD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBjb25zdCBzb2NrZXQgPSBuZXQuY29ubmVjdCh7XG4gICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgICBob3N0OiBhZGRyZXNzLmFkZHJlc3MsXG4gICAgICAgICAgZmFtaWx5OiBhZGRyZXNzLmZhbWlseVxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICAgICAgc29ja2V0LmRlc3Ryb3koKTtcblxuICAgICAgICAgIHJlamVjdChuZXcgQWJvcnRFcnJvcigpKTtcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBvbkVycm9yID0gKGVycjogRXJyb3IpID0+IHtcbiAgICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICAgICAgc29ja2V0LmRlc3Ryb3koKTtcblxuICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IG9uQ29ubmVjdCA9ICgpID0+IHtcbiAgICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICAgICAgcmVzb2x2ZShzb2NrZXQpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQsIHsgb25jZTogdHJ1ZSB9KTtcblxuICAgICAgICBzb2NrZXQub24oJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgIHNvY2tldC5vbignY29ubmVjdCcsIG9uQ29ubmVjdCk7XG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvciAmJiBlcnIubmFtZSA9PT0gJ0Fib3J0RXJyb3InKSB7XG4gICAgICAgIHRocm93IGVycjtcbiAgICAgIH1cblxuICAgICAgZXJyb3JzLnB1c2goZXJyKTtcblxuICAgICAgY29udGludWU7XG4gICAgfVxuICB9XG5cbiAgdGhyb3cgbmV3IEFnZ3JlZ2F0ZUVycm9yKGVycm9ycywgJ0NvdWxkIG5vdCBjb25uZWN0IChzZXF1ZW5jZSknKTtcbn1cblxuLyoqXG4gKiBMb29rIHVwIGFsbCBhZGRyZXNzZXMgZm9yIHRoZSBnaXZlbiBob3N0bmFtZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxvb2t1cEFsbEFkZHJlc3Nlcyhob3N0OiBzdHJpbmcsIGxvb2t1cDogTG9va3VwRnVuY3Rpb24sIHNpZ25hbDogQWJvcnRTaWduYWwpOiBQcm9taXNlPGRucy5Mb29rdXBBZGRyZXNzW10+IHtcbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgdGhyb3cgbmV3IEFib3J0RXJyb3IoKTtcbiAgfVxuXG4gIGlmIChuZXQuaXNJUHY2KGhvc3QpKSB7XG4gICAgcmV0dXJuIFt7IGFkZHJlc3M6IGhvc3QsIGZhbWlseTogNiB9XTtcbiAgfSBlbHNlIGlmIChuZXQuaXNJUHY0KGhvc3QpKSB7XG4gICAgcmV0dXJuIFt7IGFkZHJlc3M6IGhvc3QsIGZhbWlseTogNCB9XTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gYXdhaXQgbmV3IFByb21pc2U8TG9va3VwQWRkcmVzc1tdPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgICB9O1xuXG4gICAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgbG9va3VwKHB1bnljb2RlLnRvQVNDSUkoaG9zdCksIHsgYWxsOiB0cnVlIH0sIChlcnIsIGFkZHJlc3NlcykgPT4ge1xuICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICBlcnIgPyByZWplY3QoZXJyKSA6IHJlc29sdmUoYWRkcmVzc2VzKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztBQUdBOztBQUVBOztBQUVBOzs7Ozs7OztBQUlPLGVBQWVBLGlCQUFmLENBQWlDQyxPQUFqQyxFQUE2R0MsTUFBN0csRUFBcUlDLE1BQXJJLEVBQTBKO0VBQy9KLElBQUlBLE1BQU0sQ0FBQ0MsT0FBWCxFQUFvQjtJQUNsQixNQUFNLElBQUlDLG1CQUFKLEVBQU47RUFDRDs7RUFFRCxNQUFNQyxTQUFTLEdBQUcsTUFBTUMsa0JBQWtCLENBQUNOLE9BQU8sQ0FBQ08sSUFBVCxFQUFlTixNQUFmLEVBQXVCQyxNQUF2QixDQUExQztFQUVBLE9BQU8sTUFBTSxJQUFJTSxPQUFKLENBQXdCLENBQUNDLE9BQUQsRUFBVUMsTUFBVixLQUFxQjtJQUN4RCxNQUFNQyxPQUFPLEdBQUcsSUFBSUMsS0FBSixDQUFVUCxTQUFTLENBQUNRLE1BQXBCLENBQWhCO0lBRUEsTUFBTUMsTUFBZSxHQUFHLEVBQXhCOztJQUVBLFNBQVNDLE9BQVQsQ0FBbUNDLEdBQW5DLEVBQStDO01BQzdDRixNQUFNLENBQUNHLElBQVAsQ0FBWUQsR0FBWjtNQUVBLEtBQUtFLGNBQUwsQ0FBb0IsT0FBcEIsRUFBNkJILE9BQTdCO01BQ0EsS0FBS0csY0FBTCxDQUFvQixTQUFwQixFQUErQkMsU0FBL0I7TUFFQSxLQUFLQyxPQUFMOztNQUVBLElBQUlOLE1BQU0sQ0FBQ0QsTUFBUCxLQUFrQlIsU0FBUyxDQUFDUSxNQUFoQyxFQUF3QztRQUN0Q1gsTUFBTSxDQUFDbUIsbUJBQVAsQ0FBMkIsT0FBM0IsRUFBb0NDLE9BQXBDO1FBRUFaLE1BQU0sQ0FBQyxJQUFJYSx5QkFBSixDQUFtQlQsTUFBbkIsRUFBMkIsOEJBQTNCLENBQUQsQ0FBTjtNQUNEO0lBQ0Y7O0lBRUQsU0FBU0ssU0FBVCxH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
|
package/lib/data-types/tvp.js
CHANGED
|
@@ -23,11 +23,11 @@ const TVP = {
|
|
|
23
23
|
},
|
|
24
24
|
|
|
25
25
|
generateTypeInfo(parameter) {
|
|
26
|
-
var _parameter$value
|
|
26
|
+
var _parameter$value, _parameter$value2;
|
|
27
27
|
|
|
28
28
|
const databaseName = '';
|
|
29
|
-
const schema = (
|
|
30
|
-
const typeName = (
|
|
29
|
+
const schema = ((_parameter$value = parameter.value) === null || _parameter$value === void 0 ? void 0 : _parameter$value.schema) ?? '';
|
|
30
|
+
const typeName = ((_parameter$value2 = parameter.value) === null || _parameter$value2 === void 0 ? void 0 : _parameter$value2.name) ?? '';
|
|
31
31
|
const bufferLength = 1 + 1 + Buffer.byteLength(databaseName, 'ucs2') + 1 + Buffer.byteLength(schema, 'ucs2') + 1 + Buffer.byteLength(typeName, 'ucs2');
|
|
32
32
|
const buffer = new _writableTrackingBuffer.default(bufferLength, 'ucs2');
|
|
33
33
|
buffer.writeUInt8(this.id);
|
|
@@ -123,4 +123,4 @@ const TVP = {
|
|
|
123
123
|
var _default = TVP;
|
|
124
124
|
exports.default = _default;
|
|
125
125
|
module.exports = TVP;
|
|
126
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUVlBfUk9XX1RPS0VOIiwiQnVmZmVyIiwiZnJvbSIsIlRWUF9FTkRfVE9LRU4iLCJOVUxMX0xFTkdUSCIsIlRWUCIsImlkIiwidHlwZSIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsInBhcmFtZXRlciIsInZhbHVlIiwiZ2VuZXJhdGVUeXBlSW5mbyIsImRhdGFiYXNlTmFtZSIsInNjaGVtYSIsInR5cGVOYW1lIiwiYnVmZmVyTGVuZ3RoIiwiYnl0ZUxlbmd0aCIsImJ1ZmZlciIsIldyaXRhYmxlVHJhY2tpbmdCdWZmZXIiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVCVmFyY2hhciIsImRhdGEiLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsIm9wdGlvbnMiLCJjb2x1bW5zIiwiYWxsb2MiLCJ3cml0ZVVJbnQxNkxFIiwibGVuZ3RoIiwiZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhIiwicm93cyIsImkiLCJsZW4iLCJjb2x1bW4iLCJidWZmIiwid3JpdGVVSW50MzJMRSIsInJvdyIsImsiLCJsZW4yIiwicGFyYW0iLCJ2YWxpZGF0ZSIsImNvbGxhdGlvbiIsInNjYWxlIiwicHJlY2lzaW9uIiwiVHlwZUVycm9yIiwiQXJyYXkiLCJpc0FycmF5IiwibW9kdWxlIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3R2cC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgV3JpdGFibGVUcmFja2luZ0J1ZmZlciBmcm9tICcuLi90cmFja2luZy1idWZmZXIvd3JpdGFibGUtdHJhY2tpbmctYnVmZmVyJztcblxuY29uc3QgVFZQX1JPV19UT0tFTiA9IEJ1ZmZlci5mcm9tKFsweDAxXSk7XG5jb25zdCBUVlBfRU5EX1RPS0VOID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRl0pO1xuXG5jb25zdCBUVlA6IERhdGFUeXBlID0ge1xuICBpZDogMHhGMyxcbiAgdHlwZTogJ1RWUFRZUEUnLFxuICBuYW1lOiAnVFZQJyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgYW55OyAvLyBUZW1wb3Jhcnkgc29sdXRpb24uIFJlbW92ZSAnYW55JyBsYXRlci5cbiAgICByZXR1cm4gdmFsdWUubmFtZSArICcgcmVhZG9ubHknO1xuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgZGF0YWJhc2VOYW1lID0gJyc7XG4gICAgY29uc3Qgc2NoZW1hID0gcGFyYW1ldGVyLnZhbHVlPy5zY2hlbWEgPz8gJyc7XG4gICAgY29uc3QgdHlwZU5hbWUgPSBwYXJhbWV0ZXIudmFsdWU/
|
|
126
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUVlBfUk9XX1RPS0VOIiwiQnVmZmVyIiwiZnJvbSIsIlRWUF9FTkRfVE9LRU4iLCJOVUxMX0xFTkdUSCIsIlRWUCIsImlkIiwidHlwZSIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsInBhcmFtZXRlciIsInZhbHVlIiwiZ2VuZXJhdGVUeXBlSW5mbyIsImRhdGFiYXNlTmFtZSIsInNjaGVtYSIsInR5cGVOYW1lIiwiYnVmZmVyTGVuZ3RoIiwiYnl0ZUxlbmd0aCIsImJ1ZmZlciIsIldyaXRhYmxlVHJhY2tpbmdCdWZmZXIiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVCVmFyY2hhciIsImRhdGEiLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsIm9wdGlvbnMiLCJjb2x1bW5zIiwiYWxsb2MiLCJ3cml0ZVVJbnQxNkxFIiwibGVuZ3RoIiwiZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhIiwicm93cyIsImkiLCJsZW4iLCJjb2x1bW4iLCJidWZmIiwid3JpdGVVSW50MzJMRSIsInJvdyIsImsiLCJsZW4yIiwicGFyYW0iLCJ2YWxpZGF0ZSIsImNvbGxhdGlvbiIsInNjYWxlIiwicHJlY2lzaW9uIiwiVHlwZUVycm9yIiwiQXJyYXkiLCJpc0FycmF5IiwibW9kdWxlIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3R2cC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgV3JpdGFibGVUcmFja2luZ0J1ZmZlciBmcm9tICcuLi90cmFja2luZy1idWZmZXIvd3JpdGFibGUtdHJhY2tpbmctYnVmZmVyJztcblxuY29uc3QgVFZQX1JPV19UT0tFTiA9IEJ1ZmZlci5mcm9tKFsweDAxXSk7XG5jb25zdCBUVlBfRU5EX1RPS0VOID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRl0pO1xuXG5jb25zdCBUVlA6IERhdGFUeXBlID0ge1xuICBpZDogMHhGMyxcbiAgdHlwZTogJ1RWUFRZUEUnLFxuICBuYW1lOiAnVFZQJyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgYW55OyAvLyBUZW1wb3Jhcnkgc29sdXRpb24uIFJlbW92ZSAnYW55JyBsYXRlci5cbiAgICByZXR1cm4gdmFsdWUubmFtZSArICcgcmVhZG9ubHknO1xuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgZGF0YWJhc2VOYW1lID0gJyc7XG4gICAgY29uc3Qgc2NoZW1hID0gcGFyYW1ldGVyLnZhbHVlPy5zY2hlbWEgPz8gJyc7XG4gICAgY29uc3QgdHlwZU5hbWUgPSBwYXJhbWV0ZXIudmFsdWU/Lm5hbWUgPz8gJyc7XG5cbiAgICBjb25zdCBidWZmZXJMZW5ndGggPSAxICtcbiAgICAgIDEgKyBCdWZmZXIuYnl0ZUxlbmd0aChkYXRhYmFzZU5hbWUsICd1Y3MyJykgK1xuICAgICAgMSArIEJ1ZmZlci5ieXRlTGVuZ3RoKHNjaGVtYSwgJ3VjczInKSArXG4gICAgICAxICsgQnVmZmVyLmJ5dGVMZW5ndGgodHlwZU5hbWUsICd1Y3MyJyk7XG5cbiAgICBjb25zdCBidWZmZXIgPSBuZXcgV3JpdGFibGVUcmFja2luZ0J1ZmZlcihidWZmZXJMZW5ndGgsICd1Y3MyJyk7XG4gICAgYnVmZmVyLndyaXRlVUludDgodGhpcy5pZCk7XG4gICAgYnVmZmVyLndyaXRlQlZhcmNoYXIoZGF0YWJhc2VOYW1lKTtcbiAgICBidWZmZXIud3JpdGVCVmFyY2hhcihzY2hlbWEpO1xuICAgIGJ1ZmZlci53cml0ZUJWYXJjaGFyKHR5cGVOYW1lKTtcblxuICAgIHJldHVybiBidWZmZXIuZGF0YTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICBjb25zdCB7IGNvbHVtbnMgfSA9IHBhcmFtZXRlci52YWx1ZTtcbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoMik7XG4gICAgYnVmZmVyLndyaXRlVUludDE2TEUoY29sdW1ucy5sZW5ndGgsIDApO1xuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgKmdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHlpZWxkIFRWUF9FTkRfVE9LRU47XG4gICAgICB5aWVsZCBUVlBfRU5EX1RPS0VOO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHsgY29sdW1ucywgcm93cyB9ID0gcGFyYW1ldGVyLnZhbHVlO1xuXG4gICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IGNvbHVtbnMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgICAgIGNvbnN0IGNvbHVtbiA9IGNvbHVtbnNbaV07XG5cbiAgICAgIGNvbnN0IGJ1ZmYgPSBCdWZmZXIuYWxsb2MoNik7XG4gICAgICAvLyBVc2VyVHlwZVxuICAgICAgYnVmZi53cml0ZVVJbnQzMkxFKDB4MDAwMDAwMDAsIDApO1xuXG4gICAgICAvLyBGbGFnc1xuICAgICAgYnVmZi53cml0ZVVJbnQxNkxFKDB4MDAwMCwgNCk7XG4gICAgICB5aWVsZCBidWZmO1xuXG4gICAgICAvLyBUWVBFX0lORk9cbiAgICAgIHlpZWxkIGNvbHVtbi50eXBlLmdlbmVyYXRlVHlwZUluZm8oY29sdW1uKTtcblxuICAgICAgLy8gQ29sTmFtZVxuICAgICAgeWllbGQgQnVmZmVyLmZyb20oWzB4MDBdKTtcbiAgICB9XG5cbiAgICB5aWVsZCBUVlBfRU5EX1RPS0VOO1xuXG4gICAgZm9yIChsZXQgaSA9IDAsIGxlbmd0aCA9IHJvd3MubGVuZ3RoOyBpIDwgbGVuZ3RoOyBpKyspIHtcbiAgICAgIHlpZWxkIFRWUF9ST1dfVE9LRU47XG5cbiAgICAgIGNvbnN0IHJvdyA9IHJvd3NbaV07XG4gICAgICBmb3IgKGxldCBrID0gMCwgbGVuMiA9IHJvdy5sZW5ndGg7IGsgPCBsZW4yOyBrKyspIHtcbiAgICAgICAgY29uc3QgY29sdW1uID0gY29sdW1uc1trXTtcbiAgICAgICAgY29uc3QgdmFsdWUgPSByb3dba107XG5cbiAgICAgICAgY29uc3QgcGFyYW0gPSB7XG4gICAgICAgICAgdmFsdWU6IGNvbHVtbi50eXBlLnZhbGlkYXRlKHZhbHVlLCBwYXJhbWV0ZXIuY29sbGF0aW9uKSxcbiAgICAgICAgICBsZW5ndGg6IGNvbHVtbi5sZW5ndGgsXG4gICAgICAgICAgc2NhbGU6IGNvbHVtbi5zY2FsZSxcbiAgICAgICAgICBwcmVjaXNpb246IGNvbHVtbi5wcmVjaXNpb25cbiAgICAgICAgfTtcblxuICAgICAgICAvLyBUdnBDb2x1bW5EYXRhXG4gICAgICAgIHlpZWxkIGNvbHVtbi50eXBlLmdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtLCBvcHRpb25zKTtcbiAgICAgICAgeWllbGQgKiBjb2x1bW4udHlwZS5nZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW0sIG9wdGlvbnMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHlpZWxkIFRWUF9FTkRfVE9LRU47XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogQnVmZmVyIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHRhYmxlLicpO1xuICAgIH1cblxuICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZS5jb2x1bW5zKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCB0YWJsZS4nKTtcbiAgICB9XG5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUucm93cykpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgdGFibGUuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBUVlA7XG5tb2R1bGUuZXhwb3J0cyA9IFRWUDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBOzs7O0FBRUEsTUFBTUEsYUFBYSxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsQ0FBWixDQUF0QjtBQUNBLE1BQU1DLGFBQWEsR0FBR0YsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELENBQVosQ0FBdEI7QUFFQSxNQUFNRSxXQUFXLEdBQUdILE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsQ0FBWixDQUFwQjtBQUVBLE1BQU1HLEdBQWEsR0FBRztFQUNwQkMsRUFBRSxFQUFFLElBRGdCO0VBRXBCQyxJQUFJLEVBQUUsU0FGYztFQUdwQkMsSUFBSSxFQUFFLEtBSGM7RUFLcEJDLFdBQVcsRUFBRSxVQUFTQyxTQUFULEVBQW9CO0lBQy9CLE1BQU1DLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4QixDQUQrQixDQUNPOztJQUN0QyxPQUFPQSxLQUFLLENBQUNILElBQU4sR0FBYSxXQUFwQjtFQUNELENBUm1COztFQVVwQkksZ0JBQWdCLENBQUNGLFNBQUQsRUFBWTtJQUFBOztJQUMxQixNQUFNRyxZQUFZLEdBQUcsRUFBckI7SUFDQSxNQUFNQyxNQUFNLEdBQUcscUJBQUFKLFNBQVMsQ0FBQ0MsS0FBVixzRUFBaUJHLE1BQWpCLEtBQTJCLEVBQTFDO0lBQ0EsTUFBTUMsUUFBUSxHQUFHLHNCQUFBTCxTQUFTLENBQUNDLEtBQVYsd0VBQWlCSCxJQUFqQixLQUF5QixFQUExQztJQUVBLE1BQU1RLFlBQVksR0FBRyxJQUNuQixDQURtQixHQUNmZixNQUFNLENBQUNn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
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
class AbortError extends Error {
|
|
9
|
+
constructor() {
|
|
10
|
+
super('The operation was aborted');
|
|
11
|
+
this.code = void 0;
|
|
12
|
+
this.code = 'ABORT_ERR';
|
|
13
|
+
this.name = 'AbortError';
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
exports.default = AbortError;
|
|
19
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBYm9ydEVycm9yIiwiRXJyb3IiLCJjb25zdHJ1Y3RvciIsImNvZGUiLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Vycm9ycy9hYm9ydC1lcnJvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBBYm9ydEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQnKTtcblxuICAgIHRoaXMuY29kZSA9ICdBQk9SVF9FUlInO1xuICAgIHRoaXMubmFtZSA9ICdBYm9ydEVycm9yJztcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQWUsTUFBTUEsVUFBTixTQUF5QkMsS0FBekIsQ0FBK0I7RUFHNUNDLFdBQVcsR0FBRztJQUNaLE1BQU0sMkJBQU47SUFEWSxLQUZkQyxJQUVjO0lBR1osS0FBS0EsSUFBTCxHQUFZLFdBQVo7SUFDQSxLQUFLQyxJQUFMLEdBQVksWUFBWjtFQUNEOztBQVIyQyJ9
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
class TimeoutError extends Error {
|
|
9
|
+
constructor() {
|
|
10
|
+
super('The operation was aborted due to timeout');
|
|
11
|
+
this.code = void 0;
|
|
12
|
+
this.code = 'TIMEOUT_ERR';
|
|
13
|
+
this.name = 'TimeoutError';
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
exports.default = TimeoutError;
|
|
19
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUaW1lb3V0RXJyb3IiLCJFcnJvciIsImNvbnN0cnVjdG9yIiwiY29kZSIsIm5hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZXJyb3JzL3RpbWVvdXQtZXJyb3IudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGltZW91dEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQgZHVlIHRvIHRpbWVvdXQnKTtcblxuICAgIHRoaXMuY29kZSA9ICdUSU1FT1VUX0VSUic7XG4gICAgdGhpcy5uYW1lID0gJ1RpbWVvdXRFcnJvcic7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFlLE1BQU1BLFlBQU4sU0FBMkJDLEtBQTNCLENBQWlDO0VBRzlDQyxXQUFXLEdBQUc7SUFDWixNQUFNLDBDQUFOO0lBRFksS0FGZEMsSUFFYztJQUdaLEtBQUtBLElBQUwsR0FBWSxhQUFaO0lBQ0EsS0FBS0MsSUFBTCxHQUFZLGNBQVo7RUFDRDs7QUFSNkMifQ==
|