necessary 10.0.3 → 10.0.7
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 +33 -33
- package/lib/utilities/ajax.js +4 -4
- package/lib/utilities/array.js +20 -12
- package/lib/utilities/asynchronous.js +19 -19
- package/lib/utilities/configuration.js +3 -3
- package/lib/utilities/fileSystem.js +3 -3
- package/lib/utilities/logging.js +10 -10
- package/lib/utilities/request.js +7 -7
- package/lib/utilities/template.js +3 -3
- package/package.json +1 -1
- package/src/utilities/ajax.js +4 -4
- package/src/utilities/asynchronous.js +18 -18
package/README.md
CHANGED
|
@@ -60,13 +60,13 @@ The miscellaneous functions are a special case. They can be treated as above but
|
|
|
60
60
|
|
|
61
61
|
The first two `get()` and `post()` functions make use of the third `request()` function, which is more generic and can be used for arbitrary HTTP requests.
|
|
62
62
|
|
|
63
|
-
* The `get()` function sends a `GET` request, taking `host`, `uri`, `query` and `
|
|
63
|
+
* The `get()` function sends a `GET` request, taking `host`, `uri`, `query` and `operation` arguments, together with an optional `headers` argument after the `query` argument.
|
|
64
64
|
|
|
65
65
|
The `query` argument should be a plain old JavaScript object, the names and values of which are encoded and concatenated to form the query string.
|
|
66
66
|
|
|
67
67
|
The `headers` argument should also be a plain old JavaScript object. If it does not have an `accept` property then one wil be provided with the value `application/json`.
|
|
68
68
|
|
|
69
|
-
The `callback` argument is expected to be a function taking `
|
|
69
|
+
The `callback` argument is expected to be a function taking `content` and `statusCode` arguments. If the `accept` property of the main `headers` argument is set to `application/json` then the operation's `content` argument can be assumed to be JSON, or `null` if the request body cannot be parsed as such. The `statusCode` argument will be the response status code, for example `200` for a successful `OK` response.
|
|
70
70
|
|
|
71
71
|
```
|
|
72
72
|
const host = "...",
|
|
@@ -147,7 +147,7 @@ const offEXT = onEXT(process.exit);
|
|
|
147
147
|
offEXT();
|
|
148
148
|
```
|
|
149
149
|
|
|
150
|
-
* The `prompt()` function is meant for use in shell applications. It takes a plain old JavaScript `options` object and a `callback` function as
|
|
150
|
+
* The `prompt()` function is meant for use in shell applications. It takes a plain old JavaScript `options` object and a `callback` function as its first and second arguments, respectively:
|
|
151
151
|
|
|
152
152
|
```
|
|
153
153
|
const hidden = true,
|
|
@@ -835,14 +835,14 @@ Ideally the `host` argument should not include a trailing forward slash whereas
|
|
|
835
835
|
- `eventually()`
|
|
836
836
|
- `repeatedly()`
|
|
837
837
|
|
|
838
|
-
These functions generally take either a
|
|
838
|
+
These functions generally take either a operatio or an array of operations, functions that mutate a context essentially, rather than returning a value, followed by a `done()` function and an optional `context` argument. They all pass a `next()` function to the operations followed by the `done()` function, the `context` and then an `index` argument. Operations are given access to the `done()` function which can be called instead of the `next()` function in order to terminate early.
|
|
839
839
|
|
|
840
|
-
* The `whilst()` function takes a single
|
|
840
|
+
* The `whilst()` function takes a single operation, which it calls each time the operation invokes the given `next()` function or until the operation invokes the given `done()` function. The operation can also force termination by returning a truthy value, in which case it must *not* call the given `next()` or `done()` functions. In the example below the operation will be executed ten times:
|
|
841
841
|
|
|
842
842
|
```
|
|
843
843
|
const context = {}; ///
|
|
844
844
|
|
|
845
|
-
const
|
|
845
|
+
const operation = (next, done, context, index) => {
|
|
846
846
|
const terminate = (index === 9);
|
|
847
847
|
|
|
848
848
|
if (terminate) {
|
|
@@ -854,17 +854,17 @@ const callback = (next, done, context, index) => {
|
|
|
854
854
|
}
|
|
855
855
|
}
|
|
856
856
|
|
|
857
|
-
whilst(
|
|
857
|
+
whilst(operation, () => {
|
|
858
858
|
/// done
|
|
859
859
|
}, context);
|
|
860
860
|
```
|
|
861
861
|
|
|
862
|
-
* The `forEach()` function takes an array as the first argument followed by a single
|
|
862
|
+
* The `forEach()` function takes an array as the first argument followed by a single operation, which it calls for each element of the array unless the operation invokes the given `done()` function. If the `done()` function is never invoked by the operation, it is called once each of the array elements has been passed to the operation, provided the operationinvokes the given `next ()` function each time. In the example below the operation will be executed four times:
|
|
863
863
|
|
|
864
864
|
```
|
|
865
865
|
const context = {};
|
|
866
866
|
|
|
867
|
-
const
|
|
867
|
+
const operation = (element, next, done, context, index) => {
|
|
868
868
|
const terminate = (element === 3);
|
|
869
869
|
|
|
870
870
|
if (terminate) {
|
|
@@ -878,56 +878,56 @@ const callback = (element, next, done, context, index) => {
|
|
|
878
878
|
|
|
879
879
|
const array = [0, 1, 2, 3, 4, 5];
|
|
880
880
|
|
|
881
|
-
forEach(array,
|
|
881
|
+
forEach(array, operation, () => {
|
|
882
882
|
/// done
|
|
883
883
|
}, context);
|
|
884
884
|
```
|
|
885
885
|
|
|
886
|
-
* The `sequence()` function takes an array of
|
|
886
|
+
* The `sequence()` function takes an array of operations, which it calls in turn unless the operation invokes the given `done()` function. If the `done()` function is never invoked by a operation, it is called once each of the operations have been called, provided each operation invokes the given `next ()` function. In the example below each of the operations bar the last is executed:
|
|
887
887
|
|
|
888
888
|
```
|
|
889
889
|
const context = {};
|
|
890
890
|
|
|
891
|
-
const
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
891
|
+
const firstOperation = (next, done, context, index) => { next(); },
|
|
892
|
+
secondOperation = (next, done, context, index) => { next(); },
|
|
893
|
+
thirdOperation = (next, done, context, index) => { done(); },
|
|
894
|
+
lastOperation = (next, done, context, index) => { next(); },
|
|
895
|
+
operation = [
|
|
896
|
+
firstOperation,
|
|
897
|
+
secondOperation,
|
|
898
|
+
thirdOperation,
|
|
899
|
+
lastOperation
|
|
900
900
|
];
|
|
901
901
|
|
|
902
|
-
sequence(
|
|
902
|
+
sequence(operations, () => {
|
|
903
903
|
/// done
|
|
904
904
|
}, context);
|
|
905
905
|
```
|
|
906
906
|
|
|
907
|
-
* The `eventually()` function takes an array of
|
|
907
|
+
* The `eventually()` function takes an array of operations, each of which it calls immediately without waiting for the operations to invoke the given `next()` functions. When each of the operations has invoked the given `next()` function, it will call the `done()` function. Note that in this case invoking the `done()` function from within a operation will not halt the execution of other operations, it is passed as an argument only for the sake of convention. In the example below each of the operations is executed:
|
|
908
908
|
|
|
909
909
|
```
|
|
910
910
|
const context = {};
|
|
911
911
|
|
|
912
|
-
const
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
912
|
+
const firstOperation = (next, done, context, index) => { next(); },
|
|
913
|
+
secondOperation = (next, done, context, index) => { next(); },
|
|
914
|
+
thirdOperation = (next, done, context, index) => { done(); },
|
|
915
|
+
operations = [
|
|
916
|
+
firstOperation,
|
|
917
|
+
secondOperation,
|
|
918
|
+
thirdOperation
|
|
919
919
|
];
|
|
920
920
|
|
|
921
|
-
eventually(
|
|
921
|
+
eventually(operations, () => {
|
|
922
922
|
/// done
|
|
923
923
|
}, context);
|
|
924
924
|
```
|
|
925
|
-
* The `repeatedly()` function takes a single
|
|
925
|
+
* The `repeatedly()` function takes a single operation and a `length` parameter, immediately calling the operation a `length` number of times without waiting for it to invoke the given `next()` function each time. When the operation has invoked the given `next()` function a `length` number of times, it will call the `done()` function. Note that in this case invoking the `done()` function from within the operation will not halt its execution the requisite number of times, it is passed as an argument only for the sake of convention. In the example below the operation is executed ten times:
|
|
926
926
|
|
|
927
927
|
```
|
|
928
928
|
const context = {};
|
|
929
929
|
|
|
930
|
-
const
|
|
930
|
+
const operation = (next, done, context, index) => {
|
|
931
931
|
...
|
|
932
932
|
|
|
933
933
|
next();
|
|
@@ -935,7 +935,7 @@ const callback = (next, done, context, index) => {
|
|
|
935
935
|
|
|
936
936
|
const length = 10;
|
|
937
937
|
|
|
938
|
-
repeatedly(
|
|
938
|
+
repeatedly(operation, length, () => {
|
|
939
939
|
// done
|
|
940
940
|
}, context);
|
|
941
941
|
```
|
package/lib/utilities/ajax.js
CHANGED
|
@@ -39,9 +39,9 @@ function request(host, uri, query, method, headers, content1, callback) {
|
|
|
39
39
|
content1 = jsonString; ///
|
|
40
40
|
}
|
|
41
41
|
xmlHttpRequest.onreadystatechange = function() {
|
|
42
|
-
var readyState = xmlHttpRequest.readyState, status = xmlHttpRequest.status,
|
|
42
|
+
var readyState = xmlHttpRequest.readyState, status = xmlHttpRequest.status, response = xmlHttpRequest.response, statusCode = status;
|
|
43
43
|
if (readyState == 4) {
|
|
44
|
-
var content =
|
|
44
|
+
var content = response;
|
|
45
45
|
if (accept === _contentTypes.APPLICATION_JSON_CONTENT_TYPE) {
|
|
46
46
|
try {
|
|
47
47
|
var jsonString = content, json = JSON.parse(jsonString);
|
|
@@ -49,8 +49,8 @@ function request(host, uri, query, method, headers, content1, callback) {
|
|
|
49
49
|
} catch (error) {
|
|
50
50
|
content = null;
|
|
51
51
|
}
|
|
52
|
-
callback(content, statusCode);
|
|
53
52
|
}
|
|
53
|
+
callback(content, statusCode);
|
|
54
54
|
}
|
|
55
55
|
};
|
|
56
56
|
xmlHttpRequest.open(method, url);
|
|
@@ -77,4 +77,4 @@ function underwriteContentType(headers, contentTYpe) {
|
|
|
77
77
|
(0, _http).underwrite(headers, name, value);
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvYWpheC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgQUNDRVBULCBDT05URU5UX1RZUEUgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBHRVRfTUVUSE9ELCBQT1NUX01FVEhPRCB9IGZyb20gXCIuLi9tZXRob2RzXCI7XG5pbXBvcnQgeyBBUFBMSUNBVElPTl9KU09OX0NPTlRFTlRfVFlQRSB9IGZyb20gXCIuLi9jb250ZW50VHlwZXNcIjtcbmltcG9ydCB7IHVuZGVyd3JpdGUsIHVybEZyb21Ib3N0VVJJQW5kUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2h0dHBcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldChob3N0LCB1cmksIHF1ZXJ5LCBoZWFkZXJzLCBjYWxsYmFjaykge1xuICBpZiAoY2FsbGJhY2sgPT09IHVuZGVmaW5lZCkge1xuICAgIGNhbGxiYWNrID0gaGVhZGVyczsgLy8vXG4gICAgaGVhZGVycyA9IHt9O1xuICB9XG5cbiAgY29uc3QgbWV0aG9kID0gR0VUX01FVEhPRCxcbiAgICAgICAgYWNjZXB0ID0gQVBQTElDQVRJT05fSlNPTl9DT05URU5UX1RZUEUsXG4gICAgICAgIGNvbnRlbnQgPSBudWxsO1xuXG4gIHVuZGVyd3JpdGVBY2NlcHQoaGVhZGVycywgYWNjZXB0KTtcblxuICByZXF1ZXN0KGhvc3QsIHVyaSwgcXVlcnksIG1ldGhvZCwgaGVhZGVycywgY29udGVudCwgY2FsbGJhY2spO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcG9zdChob3N0LCB1cmksIHF1ZXJ5LCBoZWFkZXJzLCBjb250ZW50LCBjYWxsYmFjaykge1xuICBpZiAoY2FsbGJhY2sgPT09IHVuZGVmaW5lZCkge1xuICAgIGNhbGxiYWNrID0gY29udGVudDtcbiAgICBjb250ZW50ID0gaGVhZGVycztcbiAgICBoZWFkZXJzID0ge307XG4gIH1cblxuICBjb25zdCBtZXRob2QgPSBQT1NUX01FVEhPRCxcbiAgICAgICAgYWNjZXB0ID0gQVBQTElDQVRJT05fSlNPTl9DT05URU5UX1RZUEUsXG4gICAgICAgIGNvbnRlbnRUeXBlID0gQVBQTElDQVRJT05fSlNPTl9DT05URU5UX1RZUEU7XG5cbiAgdW5kZXJ3cml0ZUFjY2VwdChoZWFkZXJzLCBhY2NlcHQpO1xuXG4gIHVuZGVyd3JpdGVDb250ZW50VHlwZShoZWFkZXJzLCBjb250ZW50VHlwZSk7XG5cbiAgcmVxdWVzdChob3N0LCB1cmksIHF1ZXJ5LCBtZXRob2QsIGhlYWRlcnMsIGNvbnRlbnQsIGNhbGxiYWNrKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcXVlc3QoaG9zdCwgdXJpLCBxdWVyeSwgbWV0aG9kLCBoZWFkZXJzLCBjb250ZW50LCBjYWxsYmFjaykge1xuICBjb25zdCB1cmwgPSB1cmxGcm9tSG9zdFVSSUFuZFF1ZXJ5KGhvc3QsIHVyaSwgcXVlcnkpLFxuICAgICAgICBhY2NlcHQgPSBoZWFkZXJzW0FDQ0VQVF0gfHwgbnVsbCxcbiAgICAgICAgY29udGVudFR5cGUgPSBoZWFkZXJzW0NPTlRFTlRfVFlQRV0gfHwgbnVsbCxcbiAgICAgICAgeG1sSHR0cFJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblxuICBpZiAoY29udGVudFR5cGUgPT09IEFQUExJQ0FUSU9OX0pTT05fQ09OVEVOVF9UWVBFKSB7XG4gICAgY29uc3QganNvbiA9IGNvbnRlbnQsICAvLy9cbiAgICAgICAgICBqc29uU3RyaW5nID0gSlNPTi5zdHJpbmdpZnkoanNvbik7XG5cbiAgICBjb250ZW50ID0ganNvblN0cmluZzsgIC8vL1xuICB9XG5cbiAgeG1sSHR0cFJlcXVlc3Qub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgcmVhZHlTdGF0ZSwgc3RhdHVzLCByZXNwb25zZSB9ID0geG1sSHR0cFJlcXVlc3QsXG4gICAgICAgICAgc3RhdHVzQ29kZSA9IHN0YXR1cztcblxuICAgIGlmIChyZWFkeVN0YXRlID09IDQpIHtcbiAgICAgIGxldCBjb250ZW50ID0gcmVzcG9uc2U7XG5cbiAgICAgIGlmIChhY2NlcHQgPT09IEFQUExJQ0FUSU9OX0pTT05fQ09OVEVOVF9UWVBFKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QganNvblN0cmluZyA9IGNvbnRlbnQsICAvLy9cbiAgICAgICAgICAgICAgICBqc29uID0gSlNPTi5wYXJzZShqc29uU3RyaW5nKTtcblxuICAgICAgICAgIGNvbnRlbnQgPSBqc29uOyAgLy8vXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgY29udGVudCA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY2FsbGJhY2soY29udGVudCwgc3RhdHVzQ29kZSk7XG4gICAgfVxuICB9O1xuXG4gIHhtbEh0dHBSZXF1ZXN0Lm9wZW4obWV0aG9kLCB1cmwpO1xuXG4gIGlmIChhY2NlcHQgIT09IG51bGwpIHtcbiAgICB4bWxIdHRwUmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKEFDQ0VQVCwgYWNjZXB0KTtcbiAgfVxuXG4gIGlmIChjb250ZW50VHlwZSAhPT0gbnVsbCkge1xuICAgIHhtbEh0dHBSZXF1ZXN0LnNldFJlcXVlc3RIZWFkZXIoQ09OVEVOVF9UWVBFLCBjb250ZW50VHlwZSk7XG4gIH1cblxuICAoY29udGVudCAhPT0gbnVsbCkgP1xuICAgIHhtbEh0dHBSZXF1ZXN0LnNlbmQoY29udGVudCkgOlxuICAgICAgeG1sSHR0cFJlcXVlc3Quc2VuZCgpO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGdldCxcbiAgcG9zdCxcbiAgcmVxdWVzdFxufVxuXG5mdW5jdGlvbiB1bmRlcndyaXRlQWNjZXB0KGhlYWRlcnMsIGFjY2VwdCkge1xuICBjb25zdCBuYW1lID0gQUNDRVBULCAgLy8vXG4gICAgICAgIHZhbHVlID0gYWNjZXB0OyAvLy9cblxuICB1bmRlcndyaXRlKGhlYWRlcnMsIG5hbWUsIHZhbHVlKTtcbn1cblxuZnVuY3Rpb24gdW5kZXJ3cml0ZUNvbnRlbnRUeXBlKGhlYWRlcnMsIGNvbnRlbnRUWXBlKSB7XG4gIGNvbnN0IG5hbWUgPSBDT05URU5UX1RZUEUsICAvLy9cbiAgICAgICAgdmFsdWUgPSBjb250ZW50VFlwZTsgLy8vXG5cbiAgdW5kZXJ3cml0ZShoZWFkZXJzLCBuYW1lLCB2YWx1ZSk7XG59XG4iXSwibmFtZXMiOlsiZ2V0IiwicG9zdCIsInJlcXVlc3QiLCJob3N0IiwidXJpIiwicXVlcnkiLCJoZWFkZXJzIiwiY2FsbGJhY2siLCJ1bmRlZmluZWQiLCJtZXRob2QiLCJhY2NlcHQiLCJjb250ZW50IiwidW5kZXJ3cml0ZUFjY2VwdCIsImNvbnRlbnRUeXBlIiwidW5kZXJ3cml0ZUNvbnRlbnRUeXBlIiwidXJsIiwieG1sSHR0cFJlcXVlc3QiLCJYTUxIdHRwUmVxdWVzdCIsImpzb24iLCJqc29uU3RyaW5nIiwiSlNPTiIsInN0cmluZ2lmeSIsIm9ucmVhZHlzdGF0ZWNoYW5nZSIsInJlYWR5U3RhdGUiLCJzdGF0dXMiLCJyZXNwb25zZSIsInN0YXR1c0NvZGUiLCJwYXJzZSIsImVycm9yIiwib3BlbiIsInNldFJlcXVlc3RIZWFkZXIiLCJzZW5kIiwibmFtZSIsInZhbHVlIiwiY29udGVudFRZcGUiXSwibWFwcGluZ3MiOiJBQUFBLENBQVk7Ozs7UUFPSUEsR0FBRyxHQUFIQSxHQUFHO1FBZUhDLElBQUksR0FBSkEsSUFBSTtRQWtCSkMsT0FBTyxHQUFQQSxPQUFPOztBQXRDYyxHQUFjLENBQWQsVUFBYztBQUNYLEdBQVksQ0FBWixRQUFZO0FBQ04sR0FBaUIsQ0FBakIsYUFBaUI7QUFDWixHQUFtQixDQUFuQixLQUFtQjtTQUV0REYsR0FBRyxDQUFDRyxJQUFJLEVBQUVDLEdBQUcsRUFBRUMsS0FBSyxFQUFFQyxPQUFPLEVBQUVDLFFBQVEsRUFBRSxDQUFDO0lBQ3hELEVBQUUsRUFBRUEsUUFBUSxLQUFLQyxTQUFTLEVBQUUsQ0FBQztRQUMzQkQsUUFBUSxHQUFHRCxPQUFPLENBQUUsQ0FB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
|
package/lib/utilities/array.js
CHANGED
|
@@ -40,13 +40,13 @@ exports.backwardsReduce = backwardsReduce;
|
|
|
40
40
|
exports.forwardsForEach = forwardsForEach;
|
|
41
41
|
exports.backwardsForEach = backwardsForEach;
|
|
42
42
|
exports.default = void 0;
|
|
43
|
+
function _arrayLikeToArray(arr, len) {
|
|
44
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
45
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
46
|
+
return arr2;
|
|
47
|
+
}
|
|
43
48
|
function _arrayWithoutHoles(arr) {
|
|
44
|
-
if (Array.isArray(arr))
|
|
45
|
-
for(var i = 0, arr2 = new Array(arr.length); i < arr.length; i++){
|
|
46
|
-
arr2[i] = arr[i];
|
|
47
|
-
}
|
|
48
|
-
return arr2;
|
|
49
|
-
}
|
|
49
|
+
if (Array.isArray(arr)) return _arrayLikeToArray(arr);
|
|
50
50
|
}
|
|
51
51
|
function _instanceof(left, right) {
|
|
52
52
|
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
@@ -56,13 +56,21 @@ function _instanceof(left, right) {
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
function _iterableToArray(iter) {
|
|
59
|
-
if (Symbol.iterator
|
|
59
|
+
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
60
60
|
}
|
|
61
61
|
function _nonIterableSpread() {
|
|
62
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance");
|
|
62
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
63
63
|
}
|
|
64
64
|
function _toConsumableArray(arr) {
|
|
65
|
-
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();
|
|
65
|
+
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
|
|
66
|
+
}
|
|
67
|
+
function _unsupportedIterableToArray(o, minLen) {
|
|
68
|
+
if (!o) return;
|
|
69
|
+
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
|
70
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
71
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
72
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
73
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
|
66
74
|
}
|
|
67
75
|
function first(array) {
|
|
68
76
|
return array[0];
|
|
@@ -132,8 +140,8 @@ function copy(array1, array2) {
|
|
|
132
140
|
function merge(array1, array2) {
|
|
133
141
|
Array.prototype.push.apply(array1, array2);
|
|
134
142
|
}
|
|
135
|
-
function splice(array1, start
|
|
136
|
-
var deleteCount =
|
|
143
|
+
function splice(array1, start) {
|
|
144
|
+
var deleteCount = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Infinity, array2 = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : [];
|
|
137
145
|
var args = [
|
|
138
146
|
start,
|
|
139
147
|
deleteCount
|
|
@@ -323,4 +331,4 @@ var _default = {
|
|
|
323
331
|
};
|
|
324
332
|
exports.default = _default;
|
|
325
333
|
|
|
326
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvYXJyYXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBmaXJzdChhcnJheSkgeyByZXR1cm4gYXJyYXlbMF07fVxuXG5leHBvcnQgZnVuY3Rpb24gc2Vjb25kKGFycmF5KSB7IHJldHVybiBhcnJheVsxXTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gdGhpcmQoYXJyYXkpIHsgcmV0dXJuIGFycmF5WzJdOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3VydGgoYXJyYXkpIHsgcmV0dXJuIGFycmF5WzNdOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBmaWZ0aChhcnJheSkgeyByZXR1cm4gYXJyYXlbNF07IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpZnRoTGFzdChhcnJheSkgeyByZXR1cm4gYXJyYXlbYXJyYXkubGVuZ3RoIC0gNV07IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvdXJ0aExhc3QoYXJyYXkpIHsgcmV0dXJuIGFycmF5W2FycmF5Lmxlbmd0aCAtIDRdOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiB0aGlyZExhc3QoYXJyYXkpIHsgcmV0dXJuIGFycmF5W2FycmF5Lmxlbmd0aCAtIDNdOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBzZWNvbmRMYXN0KGFycmF5KSB7IHJldHVybiBhcnJheVthcnJheS5sZW5ndGggLSAyXTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gZmlyc3RMYXN0KGFycmF5KSB7IHJldHVybiBhcnJheVthcnJheS5sZW5ndGggLSAxXTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gbGFzdChhcnJheSkgeyByZXR1cm4gYXJyYXlbYXJyYXkubGVuZ3RoIC0gMV07IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGhlYWQoYXJyYXkpIHsgcmV0dXJuIGFycmF5LnNsaWNlKDAsIDEpOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWlsKGFycmF5KSB7IHJldHVybiBhcnJheS5zbGljZSgxKTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gYmFjayhhcnJheSkgeyByZXR1cm4gYXJyYXkuc2xpY2UoYXJyYXkubGVuZ3RoIC0gMSk7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyb250KGFycmF5KSB7IHJldHVybiBhcnJheS5zbGljZSgwLCBhcnJheS5sZW5ndGggLSAxKTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gcHVzaChhcnJheTEsIGFycmF5MikgeyBBcnJheS5wcm90b3R5cGUucHVzaC5hcHBseShhcnJheTEsIGFycmF5Mik7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIHVuc2hpZnQoYXJyYXkxLCBhcnJheTIpIHsgQXJyYXkucHJvdG90eXBlLnVuc2hpZnQuYXBwbHkoYXJyYXkxLCBhcnJheTIpOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBjb25jYXQoYXJyYXkxLCBlbGVtZW50T3JBcnJheTIpIHtcbiAgY29uc3QgYXJyYXkyID0gKGVsZW1lbnRPckFycmF5MiBpbnN0YW5jZW9mIEFycmF5KSA/XG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnRPckFycmF5MiA6XG4gICAgICAgICAgICAgICAgICAgICBbZWxlbWVudE9yQXJyYXkyXTtcbiAgXG4gIHB1c2goYXJyYXkxLCBhcnJheTIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2xlYXIoYXJyYXkpIHtcbiAgY29uc3Qgc3RhcnQgPSAwO1xuICBcbiAgcmV0dXJuIGFycmF5LnNwbGljZShzdGFydCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb3B5KGFycmF5MSwgYXJyYXkyKSB7XG4gIGNvbnN0IHN0YXJ0ID0gMCxcbiAgICAgICAgZGVsZXRlQ291bnQgPSBhcnJheTIubGVuZ3RoOyAgLy8vXG4gIFxuICBzcGxpY2UoYXJyYXkxLCBzdGFydCwgZGVsZXRlQ291bnQsIGFycmF5Mik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXJnZShhcnJheTEsIGFycmF5MikgeyBBcnJheS5wcm90b3R5cGUucHVzaC5hcHBseShhcnJheTEsIGFycmF5Mik7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIHNwbGljZShhcnJheTEsIHN0YXJ0LCBkZWxldGVDb3VudCA9IEluZmluaXR5LCBhcnJheTIgPSBbXSkge1xuICBjb25zdCBhcmdzID0gW3N0YXJ0LCBkZWxldGVDb3VudCwgLi4uYXJyYXkyXSxcbiAgICAgICAgZGVsZXRlZEl0ZW1zQXJyYXkgPSBBcnJheS5wcm90b3R5cGUuc3BsaWNlLmFwcGx5KGFycmF5MSwgYXJncyk7XG5cbiAgcmV0dXJuIGRlbGV0ZWRJdGVtc0FycmF5O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZShhcnJheSwgZWxlbWVudCwgdGVzdCkge1xuICBsZXQgc3RhcnQ7XG4gIFxuICBjb25zdCBmb3VuZCA9IGFycmF5LnNvbWUoKGVsZW1lbnQsIGluZGV4KSA9PiB7XG4gICAgY29uc3QgcGFzc2VkID0gdGVzdChlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAocGFzc2VkKSB7XG4gICAgICBzdGFydCA9IGluZGV4OyAgLy8vXG4gICAgICBcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG4gIFxuICBpZiAoZm91bmQpIHtcbiAgICBjb25zdCBkZWxldGVDb3VudCA9IDE7XG5cbiAgICBhcnJheS5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50LCBlbGVtZW50KTtcbiAgfVxuXG4gIHJldHVybiBmb3VuZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlcihhcnJheSwgdGVzdCkge1xuICBjb25zdCBmaWx0ZXJlZEVsZW1lbnRzID0gW107XG4gIFxuICBiYWNrd2FyZHNGb3JFYWNoKGFycmF5LCAoZWxlbWVudCwgaW5kZXgpID0+IHtcbiAgICBjb25zdCBwYXNzZWQgPSB0ZXN0KGVsZW1lbnQsIGluZGV4KTtcblxuICAgIGlmICghcGFzc2VkKSB7XG4gICAgICBjb25zdCBzdGFydCA9IGluZGV4LCAgLy8vXG4gICAgICAgICAgICBkZWxldGVDb3VudCA9IDEsXG4gICAgICAgICAgICBkZWxldGVkRWxlbWVudHMgPSBhcnJheS5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50KSxcbiAgICAgICAgICAgIGZpcnN0RGVsZXRlZEVsZW1lbnQgPSBmaXJzdChkZWxldGVkRWxlbWVudHMpO1xuICAgICAgXG4gICAgICBmaWx0ZXJlZEVsZW1lbnRzLnVuc2hpZnQoZmlyc3REZWxldGVkRWxlbWVudCk7ICAvLy9cbiAgICB9XG4gIH0pO1xuICBcbiAgcmV0dXJuIGZpbHRlcmVkRWxlbWVudHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kKGFycmF5LCB0ZXN0KSB7XG4gIGNvbnN0IGVsZW1lbnRzID0gW107XG5cbiAgZm9yd2FyZHNGb3JFYWNoKGFycmF5LCAoZWxlbWVudCwgaW5kZXgpID0+IHtcbiAgICBjb25zdCBwYXNzZWQgPSB0ZXN0KGVsZW1lbnQsIGluZGV4KTtcblxuICAgIGlmIChwYXNzZWQpIHtcbiAgICAgIGVsZW1lbnRzLnB1c2goZWxlbWVudCk7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gZWxlbWVudHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcnVuZShhcnJheSwgdGVzdCkge1xuICBsZXQgcHJ1bmVkRWxlbWVudCA9IHVuZGVmaW5lZDtcbiAgXG4gIGFycmF5LnNvbWUoKGVsZW1lbnQsIGluZGV4KSA9PiB7XG4gICAgY29uc3QgcGFzc2VkID0gdGVzdChlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAoIXBhc3NlZCkge1xuICAgICAgY29uc3Qgc3RhcnQgPSBpbmRleCwgIC8vL1xuICAgICAgICAgICAgZGVsZXRlQ291bnQgPSAxLFxuICAgICAgICAgICAgZGVsZXRlZEVsZW1lbnRzID0gYXJyYXkuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCksXG4gICAgICAgICAgICBmaXJzdERlbGV0ZWRFbGVtZW50ID0gZmlyc3QoZGVsZXRlZEVsZW1lbnRzKTtcbiAgICAgIFxuICAgICAgcHJ1bmVkRWxlbWVudCA9IGZpcnN0RGVsZXRlZEVsZW1lbnQ7ICAvLy9cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcbiAgXG4gIHJldHVybiBwcnVuZWRFbGVtZW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGF0Y2goYXJyYXksIGVsZW1lbnQsIHRlc3QpIHtcbiAgY29uc3QgZm91bmQgPSBhcnJheS5zb21lKChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IHBhc3NlZCA9IHRlc3QoZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgaWYgKHBhc3NlZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuXG4gIGlmIChmb3VuZCkge1xuICAgIGFycmF5LnB1c2goZWxlbWVudCk7XG4gIH1cblxuICByZXR1cm4gZm91bmQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhdWdtZW50KGFycmF5MSwgYXJyYXkyLCB0ZXN0KSB7XG4gIGFycmF5Mi5mb3JFYWNoKChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IHBhc3NlZCA9IHRlc3QoZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgaWYgKHBhc3NlZCkge1xuICAgICAgYXJyYXkxLnB1c2goZWxlbWVudCk7XG4gICAgfVxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNlcGFyYXRlKGFycmF5LCBhcnJheTEsIGFycmF5MiwgdGVzdCkge1xuICBhcnJheS5mb3JFYWNoKChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IHBhc3NlZCA9IHRlc3QoZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgcGFzc2VkID9cbiAgICAgIGFycmF5MS5wdXNoKGVsZW1lbnQpIDpcbiAgICAgICAgYXJyYXkyLnB1c2goZWxlbWVudCk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yd2FyZHNTb21lKGFycmF5LCBjYWxsYmFjaykge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYXJyYXlMZW5ndGg7IGluZGV4KyspIHtcbiAgICBjb25zdCBlbGVtZW50ID0gYXJyYXlbaW5kZXhdLFxuICAgICAgICAgIHJlc3VsdCA9IGNhbGxiYWNrKGVsZW1lbnQsIGluZGV4KTtcbiAgICBcbiAgICBpZiAocmVzdWx0KSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiYWNrd2FyZHNTb21lKGFycmF5LCBjYWxsYmFjaykge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuICBmb3IgKGxldCBpbmRleCA9IGFycmF5TGVuZ3RoIC0gMTsgaW5kZXggPj0gMDsgaW5kZXgtLSkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBhcnJheVtpbmRleF0sXG4gICAgICAgICAgcmVzdWx0ID0gY2FsbGJhY2soZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yd2FyZHNFdmVyeShhcnJheSwgY2FsbGJhY2spIHtcbiAgY29uc3QgYXJyYXlMZW5ndGggPSBhcnJheS5sZW5ndGg7XG5cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGFycmF5TGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGFycmF5W2luZGV4XSxcbiAgICAgICAgICByZXN1bHQgPSBjYWxsYmFjayhlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYmFja3dhcmRzRXZlcnkoYXJyYXksIGNhbGxiYWNrKSB7XG4gIGNvbnN0IGFycmF5TGVuZ3RoID0gYXJyYXkubGVuZ3RoO1xuXG4gIGZvciAobGV0IGluZGV4ID0gYXJyYXlMZW5ndGggLSAxOyBpbmRleCA+PSAwOyBpbmRleC0tKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGFycmF5W2luZGV4XSxcbiAgICAgICAgICByZXN1bHQgPSBjYWxsYmFjayhlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yd2FyZHNSZWR1Y2UoYXJyYXksIGNhbGxiYWNrLCBpbml0aWFsVmFsdWUpIHtcbiAgbGV0IHZhbHVlID0gaW5pdGlhbFZhbHVlO1xuXG4gIGZvcndhcmRzRm9yRWFjaChhcnJheSwgKGVsZW1lbnQsIGluZGV4KSA9PiB7XG4gICAgdmFsdWUgPSBjYWxsYmFjayh2YWx1ZSwgZWxlbWVudCwgaW5kZXgpO1xuICB9KTtcblxuICByZXR1cm4gdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiYWNrd2FyZHNSZWR1Y2UoYXJyYXksIGNhbGxiYWNrLCBpbml0aWFsVmFsdWUpIHtcbiAgbGV0IHZhbHVlID0gaW5pdGlhbFZhbHVlO1xuXG4gIGJhY2t3YXJkc0ZvckVhY2goYXJyYXksIChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIHZhbHVlID0gY2FsbGJhY2sodmFsdWUsIGVsZW1lbnQsIGluZGV4KTtcbiAgfSk7XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yd2FyZHNGb3JFYWNoKGFycmF5LCBjYWxsYmFjaykge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYXJyYXlMZW5ndGg7IGluZGV4KyspIHtcbiAgICBjb25zdCBlbGVtZW50ID0gYXJyYXlbaW5kZXhdO1xuXG4gICAgY2FsbGJhY2soZWxlbWVudCwgaW5kZXgpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiYWNrd2FyZHNGb3JFYWNoKGFycmF5LCBjYWxsYmFjaykge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuICBmb3IgKGxldCBpbmRleCA9IGFycmF5TGVuZ3RoIC0gMTsgaW5kZXggPj0gMDsgaW5kZXgtLSkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBhcnJheVtpbmRleF07XG5cbiAgICBjYWxsYmFjayhlbGVtZW50LCBpbmRleCk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBmaXJzdCxcbiAgc2Vjb25kLFxuICB0aGlyZCxcbiAgZm91cnRoLFxuICBmaWZ0aCxcbiAgZmlmdGhMYXN0LFxuICBmb3VydGhMYXN0LFxuICB0aGlyZExhc3QsXG4gIHNlY29uZExhc3QsXG4gIGZpcnN0TGFzdCxcbiAgbGFzdCxcbiAgaGVhZCxcbiAgdGFpbCxcbiAgYmFjayxcbiAgZnJvbnQsXG4gIHB1c2gsXG4gIHVuc2hpZnQsXG4gIGNvbmNhdCxcbiAgY2xlYXIsXG4gIGNvcHksXG4gIG1lcmdlLFxuICBzcGxpY2UsXG4gIHJlcGxhY2UsXG4gIGZpbHRlcixcbiAgZmluZCxcbiAgcHJ1bmUsXG4gIHBhdGNoLFxuICBhdWdtZW50LFxuICBzZXBhcmF0ZSxcbiAgZm9yd2FyZHNTb21lLFxuICBiYWNrd2FyZHNTb21lLFxuICBmb3J3YXJkc0V2ZXJ5LFxuICBiYWNrd2FyZHNFdmVyeSxcbiAgZm9yd2FyZHNSZWR1Y2UsXG4gIGJhY2t3YXJkc1JlZHVjZSxcbiAgZm9yd2FyZHNGb3JFYWNoLFxuICBiYWNrd2FyZHNGb3JFYWNoXG59O1xuIl0sIm5hbWVzIjpbImZpcnN0Iiwic2Vjb25kIiwidGhpcmQiLCJmb3VydGgiLCJmaWZ0aCIsImZpZnRoTGFzdCIsImZvdXJ0aExhc3QiLCJ0aGlyZExhc3QiLCJzZWNvbmRMYXN0IiwiZmlyc3RMYXN0IiwibGFzdCIsImhlYWQiLCJ0YWlsIiwiYmFjayIsImZyb250IiwicHVzaCIsInVuc2hpZnQiLCJjb25jYXQiLCJjbGVhciIsImNvcHkiLCJtZXJnZSIsInNwbGljZSIsInJlcGxhY2UiLCJmaWx0ZXIiLCJmaW5kIiwicHJ1bmUiLCJwYXRjaCIsImF1Z21lbnQiLCJzZXBhcmF0ZSIsImZvcndhcmRzU29tZSIsImJhY2t3YXJkc1NvbWUiLCJmb3J3YXJkc0V2ZXJ5IiwiYmFja3dhcmRzRXZlcnkiLCJmb3J3YXJkc1JlZHVjZSIsImJhY2t3YXJkc1JlZHVjZSIsImZvcndhcmRzRm9yRWFjaCIsImJhY2t3YXJkc0ZvckVhY2giLCJhcnJheSIsImxlbmd0aCIsInNsaWNlIiwiYXJyYXkxIiwiYXJyYXkyIiwiQXJyYXkiLCJwcm90b3R5cGUiLCJhcHBseSIsImVsZW1lbnRPckFycmF5MiIsInN0YXJ0IiwiZGVsZXRlQ291bnQiLCJJbmZpbml0eSIsImFyZ3MiLCJkZWxldGVkSXRlbXNBcnJheSIsImVsZW1lbnQiLCJ0ZXN0IiwiZm91bmQiLCJzb21lIiwiaW5kZXgiLCJwYXNzZWQiLCJmaWx0ZXJlZEVsZW1lbnRzIiwiZGVsZXRlZEVsZW1lbnRzIiwiZmlyc3REZWxldGVkRWxlbWVudCIsImVsZW1lbnRzIiwicHJ1bmVkRWxlbWVudCIsInVuZGVmaW5lZCIsImZvckVhY2giLCJjYWxsYmFjayIsImFycmF5TGVuZ3RoIiwicmVzdWx0IiwiaW5pdGlhbFZhbHVlIiwidmFsdWUiXSwibWFwcGluZ3MiOiJBQUFBLENBQVk7Ozs7UUFFSUEsS0FBSyxHQUFMQSxLQUFLO1FBRUxDLE1BQU0sR0FBTkEsTUFBTTtRQUVOQyxLQUFLLEdBQUxBLEtBQUs7UUFFTEMsTUFBTSxHQUFOQSxNQUFNO1FBRU5DLEtBQUssR0FBTEEsS0FBSztRQUVMQyxTQUFTLEdBQVRBLFNBQVM7UUFFVEMsVUFBVSxHQUFWQSxVQUFVO1FBRVZDLFNBQVMsR0FBVEEsU0FBUztRQUVUQyxVQUFVLEdBQVZBLFVBQVU7UUFFVkMsU0FBUyxHQUFUQSxTQUFTO1FBRVRDLElBQUksR0FBSkEsSUFBSTtRQUVKQyxJQUFJLEdBQUpBLElBQUk7UUFFSkMsSUFBSSxHQUFKQSxJQUFJO1FBRUpDLElBQUksR0FBSkEsSUFBSTtRQUVKQyxLQUFLLEdBQUxBLEtBQUs7UUFFTEMsSUFBSSxHQUFKQSxJQUFJ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
|
|
334
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvYXJyYXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBmaXJzdChhcnJheSkgeyByZXR1cm4gYXJyYXlbMF07fVxuXG5leHBvcnQgZnVuY3Rpb24gc2Vjb25kKGFycmF5KSB7IHJldHVybiBhcnJheVsxXTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gdGhpcmQoYXJyYXkpIHsgcmV0dXJuIGFycmF5WzJdOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3VydGgoYXJyYXkpIHsgcmV0dXJuIGFycmF5WzNdOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBmaWZ0aChhcnJheSkgeyByZXR1cm4gYXJyYXlbNF07IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpZnRoTGFzdChhcnJheSkgeyByZXR1cm4gYXJyYXlbYXJyYXkubGVuZ3RoIC0gNV07IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvdXJ0aExhc3QoYXJyYXkpIHsgcmV0dXJuIGFycmF5W2FycmF5Lmxlbmd0aCAtIDRdOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiB0aGlyZExhc3QoYXJyYXkpIHsgcmV0dXJuIGFycmF5W2FycmF5Lmxlbmd0aCAtIDNdOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBzZWNvbmRMYXN0KGFycmF5KSB7IHJldHVybiBhcnJheVthcnJheS5sZW5ndGggLSAyXTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gZmlyc3RMYXN0KGFycmF5KSB7IHJldHVybiBhcnJheVthcnJheS5sZW5ndGggLSAxXTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gbGFzdChhcnJheSkgeyByZXR1cm4gYXJyYXlbYXJyYXkubGVuZ3RoIC0gMV07IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGhlYWQoYXJyYXkpIHsgcmV0dXJuIGFycmF5LnNsaWNlKDAsIDEpOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWlsKGFycmF5KSB7IHJldHVybiBhcnJheS5zbGljZSgxKTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gYmFjayhhcnJheSkgeyByZXR1cm4gYXJyYXkuc2xpY2UoYXJyYXkubGVuZ3RoIC0gMSk7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyb250KGFycmF5KSB7IHJldHVybiBhcnJheS5zbGljZSgwLCBhcnJheS5sZW5ndGggLSAxKTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gcHVzaChhcnJheTEsIGFycmF5MikgeyBBcnJheS5wcm90b3R5cGUucHVzaC5hcHBseShhcnJheTEsIGFycmF5Mik7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIHVuc2hpZnQoYXJyYXkxLCBhcnJheTIpIHsgQXJyYXkucHJvdG90eXBlLnVuc2hpZnQuYXBwbHkoYXJyYXkxLCBhcnJheTIpOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBjb25jYXQoYXJyYXkxLCBlbGVtZW50T3JBcnJheTIpIHtcbiAgY29uc3QgYXJyYXkyID0gKGVsZW1lbnRPckFycmF5MiBpbnN0YW5jZW9mIEFycmF5KSA/XG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnRPckFycmF5MiA6XG4gICAgICAgICAgICAgICAgICAgICBbZWxlbWVudE9yQXJyYXkyXTtcbiAgXG4gIHB1c2goYXJyYXkxLCBhcnJheTIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2xlYXIoYXJyYXkpIHtcbiAgY29uc3Qgc3RhcnQgPSAwO1xuICBcbiAgcmV0dXJuIGFycmF5LnNwbGljZShzdGFydCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb3B5KGFycmF5MSwgYXJyYXkyKSB7XG4gIGNvbnN0IHN0YXJ0ID0gMCxcbiAgICAgICAgZGVsZXRlQ291bnQgPSBhcnJheTIubGVuZ3RoOyAgLy8vXG4gIFxuICBzcGxpY2UoYXJyYXkxLCBzdGFydCwgZGVsZXRlQ291bnQsIGFycmF5Mik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXJnZShhcnJheTEsIGFycmF5MikgeyBBcnJheS5wcm90b3R5cGUucHVzaC5hcHBseShhcnJheTEsIGFycmF5Mik7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIHNwbGljZShhcnJheTEsIHN0YXJ0LCBkZWxldGVDb3VudCA9IEluZmluaXR5LCBhcnJheTIgPSBbXSkge1xuICBjb25zdCBhcmdzID0gW3N0YXJ0LCBkZWxldGVDb3VudCwgLi4uYXJyYXkyXSxcbiAgICAgICAgZGVsZXRlZEl0ZW1zQXJyYXkgPSBBcnJheS5wcm90b3R5cGUuc3BsaWNlLmFwcGx5KGFycmF5MSwgYXJncyk7XG5cbiAgcmV0dXJuIGRlbGV0ZWRJdGVtc0FycmF5O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZShhcnJheSwgZWxlbWVudCwgdGVzdCkge1xuICBsZXQgc3RhcnQ7XG4gIFxuICBjb25zdCBmb3VuZCA9IGFycmF5LnNvbWUoKGVsZW1lbnQsIGluZGV4KSA9PiB7XG4gICAgY29uc3QgcGFzc2VkID0gdGVzdChlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAocGFzc2VkKSB7XG4gICAgICBzdGFydCA9IGluZGV4OyAgLy8vXG4gICAgICBcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG4gIFxuICBpZiAoZm91bmQpIHtcbiAgICBjb25zdCBkZWxldGVDb3VudCA9IDE7XG5cbiAgICBhcnJheS5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50LCBlbGVtZW50KTtcbiAgfVxuXG4gIHJldHVybiBmb3VuZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlcihhcnJheSwgdGVzdCkge1xuICBjb25zdCBmaWx0ZXJlZEVsZW1lbnRzID0gW107XG4gIFxuICBiYWNrd2FyZHNGb3JFYWNoKGFycmF5LCAoZWxlbWVudCwgaW5kZXgpID0+IHtcbiAgICBjb25zdCBwYXNzZWQgPSB0ZXN0KGVsZW1lbnQsIGluZGV4KTtcblxuICAgIGlmICghcGFzc2VkKSB7XG4gICAgICBjb25zdCBzdGFydCA9IGluZGV4LCAgLy8vXG4gICAgICAgICAgICBkZWxldGVDb3VudCA9IDEsXG4gICAgICAgICAgICBkZWxldGVkRWxlbWVudHMgPSBhcnJheS5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50KSxcbiAgICAgICAgICAgIGZpcnN0RGVsZXRlZEVsZW1lbnQgPSBmaXJzdChkZWxldGVkRWxlbWVudHMpO1xuICAgICAgXG4gICAgICBmaWx0ZXJlZEVsZW1lbnRzLnVuc2hpZnQoZmlyc3REZWxldGVkRWxlbWVudCk7ICAvLy9cbiAgICB9XG4gIH0pO1xuICBcbiAgcmV0dXJuIGZpbHRlcmVkRWxlbWVudHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kKGFycmF5LCB0ZXN0KSB7XG4gIGNvbnN0IGVsZW1lbnRzID0gW107XG5cbiAgZm9yd2FyZHNGb3JFYWNoKGFycmF5LCAoZWxlbWVudCwgaW5kZXgpID0+IHtcbiAgICBjb25zdCBwYXNzZWQgPSB0ZXN0KGVsZW1lbnQsIGluZGV4KTtcblxuICAgIGlmIChwYXNzZWQpIHtcbiAgICAgIGVsZW1lbnRzLnB1c2goZWxlbWVudCk7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gZWxlbWVudHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcnVuZShhcnJheSwgdGVzdCkge1xuICBsZXQgcHJ1bmVkRWxlbWVudCA9IHVuZGVmaW5lZDtcbiAgXG4gIGFycmF5LnNvbWUoKGVsZW1lbnQsIGluZGV4KSA9PiB7XG4gICAgY29uc3QgcGFzc2VkID0gdGVzdChlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAoIXBhc3NlZCkge1xuICAgICAgY29uc3Qgc3RhcnQgPSBpbmRleCwgIC8vL1xuICAgICAgICAgICAgZGVsZXRlQ291bnQgPSAxLFxuICAgICAgICAgICAgZGVsZXRlZEVsZW1lbnRzID0gYXJyYXkuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCksXG4gICAgICAgICAgICBmaXJzdERlbGV0ZWRFbGVtZW50ID0gZmlyc3QoZGVsZXRlZEVsZW1lbnRzKTtcbiAgICAgIFxuICAgICAgcHJ1bmVkRWxlbWVudCA9IGZpcnN0RGVsZXRlZEVsZW1lbnQ7ICAvLy9cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcbiAgXG4gIHJldHVybiBwcnVuZWRFbGVtZW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGF0Y2goYXJyYXksIGVsZW1lbnQsIHRlc3QpIHtcbiAgY29uc3QgZm91bmQgPSBhcnJheS5zb21lKChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IHBhc3NlZCA9IHRlc3QoZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgaWYgKHBhc3NlZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuXG4gIGlmIChmb3VuZCkge1xuICAgIGFycmF5LnB1c2goZWxlbWVudCk7XG4gIH1cblxuICByZXR1cm4gZm91bmQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhdWdtZW50KGFycmF5MSwgYXJyYXkyLCB0ZXN0KSB7XG4gIGFycmF5Mi5mb3JFYWNoKChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IHBhc3NlZCA9IHRlc3QoZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgaWYgKHBhc3NlZCkge1xuICAgICAgYXJyYXkxLnB1c2goZWxlbWVudCk7XG4gICAgfVxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNlcGFyYXRlKGFycmF5LCBhcnJheTEsIGFycmF5MiwgdGVzdCkge1xuICBhcnJheS5mb3JFYWNoKChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IHBhc3NlZCA9IHRlc3QoZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgcGFzc2VkID9cbiAgICAgIGFycmF5MS5wdXNoKGVsZW1lbnQpIDpcbiAgICAgICAgYXJyYXkyLnB1c2goZWxlbWVudCk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yd2FyZHNTb21lKGFycmF5LCBjYWxsYmFjaykge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYXJyYXlMZW5ndGg7IGluZGV4KyspIHtcbiAgICBjb25zdCBlbGVtZW50ID0gYXJyYXlbaW5kZXhdLFxuICAgICAgICAgIHJlc3VsdCA9IGNhbGxiYWNrKGVsZW1lbnQsIGluZGV4KTtcbiAgICBcbiAgICBpZiAocmVzdWx0KSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiYWNrd2FyZHNTb21lKGFycmF5LCBjYWxsYmFjaykge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuICBmb3IgKGxldCBpbmRleCA9IGFycmF5TGVuZ3RoIC0gMTsgaW5kZXggPj0gMDsgaW5kZXgtLSkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBhcnJheVtpbmRleF0sXG4gICAgICAgICAgcmVzdWx0ID0gY2FsbGJhY2soZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yd2FyZHNFdmVyeShhcnJheSwgY2FsbGJhY2spIHtcbiAgY29uc3QgYXJyYXlMZW5ndGggPSBhcnJheS5sZW5ndGg7XG5cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGFycmF5TGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGFycmF5W2luZGV4XSxcbiAgICAgICAgICByZXN1bHQgPSBjYWxsYmFjayhlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYmFja3dhcmRzRXZlcnkoYXJyYXksIGNhbGxiYWNrKSB7XG4gIGNvbnN0IGFycmF5TGVuZ3RoID0gYXJyYXkubGVuZ3RoO1xuXG4gIGZvciAobGV0IGluZGV4ID0gYXJyYXlMZW5ndGggLSAxOyBpbmRleCA+PSAwOyBpbmRleC0tKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGFycmF5W2luZGV4XSxcbiAgICAgICAgICByZXN1bHQgPSBjYWxsYmFjayhlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yd2FyZHNSZWR1Y2UoYXJyYXksIGNhbGxiYWNrLCBpbml0aWFsVmFsdWUpIHtcbiAgbGV0IHZhbHVlID0gaW5pdGlhbFZhbHVlO1xuXG4gIGZvcndhcmRzRm9yRWFjaChhcnJheSwgKGVsZW1lbnQsIGluZGV4KSA9PiB7XG4gICAgdmFsdWUgPSBjYWxsYmFjayh2YWx1ZSwgZWxlbWVudCwgaW5kZXgpO1xuICB9KTtcblxuICByZXR1cm4gdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiYWNrd2FyZHNSZWR1Y2UoYXJyYXksIGNhbGxiYWNrLCBpbml0aWFsVmFsdWUpIHtcbiAgbGV0IHZhbHVlID0gaW5pdGlhbFZhbHVlO1xuXG4gIGJhY2t3YXJkc0ZvckVhY2goYXJyYXksIChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIHZhbHVlID0gY2FsbGJhY2sodmFsdWUsIGVsZW1lbnQsIGluZGV4KTtcbiAgfSk7XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yd2FyZHNGb3JFYWNoKGFycmF5LCBjYWxsYmFjaykge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYXJyYXlMZW5ndGg7IGluZGV4KyspIHtcbiAgICBjb25zdCBlbGVtZW50ID0gYXJyYXlbaW5kZXhdO1xuXG4gICAgY2FsbGJhY2soZWxlbWVudCwgaW5kZXgpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiYWNrd2FyZHNGb3JFYWNoKGFycmF5LCBjYWxsYmFjaykge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuICBmb3IgKGxldCBpbmRleCA9IGFycmF5TGVuZ3RoIC0gMTsgaW5kZXggPj0gMDsgaW5kZXgtLSkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBhcnJheVtpbmRleF07XG5cbiAgICBjYWxsYmFjayhlbGVtZW50LCBpbmRleCk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBmaXJzdCxcbiAgc2Vjb25kLFxuICB0aGlyZCxcbiAgZm91cnRoLFxuICBmaWZ0aCxcbiAgZmlmdGhMYXN0LFxuICBmb3VydGhMYXN0LFxuICB0aGlyZExhc3QsXG4gIHNlY29uZExhc3QsXG4gIGZpcnN0TGFzdCxcbiAgbGFzdCxcbiAgaGVhZCxcbiAgdGFpbCxcbiAgYmFjayxcbiAgZnJvbnQsXG4gIHB1c2gsXG4gIHVuc2hpZnQsXG4gIGNvbmNhdCxcbiAgY2xlYXIsXG4gIGNvcHksXG4gIG1lcmdlLFxuICBzcGxpY2UsXG4gIHJlcGxhY2UsXG4gIGZpbHRlcixcbiAgZmluZCxcbiAgcHJ1bmUsXG4gIHBhdGNoLFxuICBhdWdtZW50LFxuICBzZXBhcmF0ZSxcbiAgZm9yd2FyZHNTb21lLFxuICBiYWNrd2FyZHNTb21lLFxuICBmb3J3YXJkc0V2ZXJ5LFxuICBiYWNrd2FyZHNFdmVyeSxcbiAgZm9yd2FyZHNSZWR1Y2UsXG4gIGJhY2t3YXJkc1JlZHVjZSxcbiAgZm9yd2FyZHNGb3JFYWNoLFxuICBiYWNrd2FyZHNGb3JFYWNoXG59O1xuIl0sIm5hbWVzIjpbImZpcnN0Iiwic2Vjb25kIiwidGhpcmQiLCJmb3VydGgiLCJmaWZ0aCIsImZpZnRoTGFzdCIsImZvdXJ0aExhc3QiLCJ0aGlyZExhc3QiLCJzZWNvbmRMYXN0IiwiZmlyc3RMYXN0IiwibGFzdCIsImhlYWQiLCJ0YWlsIiwiYmFjayIsImZyb250IiwicHVzaCIsInVuc2hpZnQiLCJjb25jYXQiLCJjbGVhciIsImNvcHkiLCJtZXJnZSIsInNwbGljZSIsInJlcGxhY2UiLCJmaWx0ZXIiLCJmaW5kIiwicHJ1bmUiLCJwYXRjaCIsImF1Z21lbnQiLCJzZXBhcmF0ZSIsImZvcndhcmRzU29tZSIsImJhY2t3YXJkc1NvbWUiLCJmb3J3YXJkc0V2ZXJ5IiwiYmFja3dhcmRzRXZlcnkiLCJmb3J3YXJkc1JlZHVjZSIsImJhY2t3YXJkc1JlZHVjZSIsImZvcndhcmRzRm9yRWFjaCIsImJhY2t3YXJkc0ZvckVhY2giLCJhcnJheSIsImxlbmd0aCIsInNsaWNlIiwiYXJyYXkxIiwiYXJyYXkyIiwiQXJyYXkiLCJwcm90b3R5cGUiLCJhcHBseSIsImVsZW1lbnRPckFycmF5MiIsInN0YXJ0IiwiZGVsZXRlQ291bnQiLCJJbmZpbml0eSIsImFyZ3MiLCJkZWxldGVkSXRlbXNBcnJheSIsImVsZW1lbnQiLCJ0ZXN0IiwiZm91bmQiLCJzb21lIiwiaW5kZXgiLCJwYXNzZWQiLCJmaWx0ZXJlZEVsZW1lbnRzIiwiZGVsZXRlZEVsZW1lbnRzIiwiZmlyc3REZWxldGVkRWxlbWVudCIsImVsZW1lbnRzIiwicHJ1bmVkRWxlbWVudCIsInVuZGVmaW5lZCIsImZvckVhY2giLCJjYWxsYmFjayIsImFycmF5TGVuZ3RoIiwicmVzdWx0IiwiaW5pdGlhbFZhbHVlIiwidmFsdWUiXSwibWFwcGluZ3MiOiJBQUFBLENBQVk7Ozs7UUFFSUEsS0FBSyxHQUFMQSxLQUFLO1FBRUxDLE1BQU0sR0FBTkEsTUFBTTtRQUVOQyxLQUFLLEdBQUxBLEtBQUs7UUFFTEMsTUFBTSxHQUFOQSxNQUFNO1FBRU5DLEtBQUssR0FBTEEsS0FBSztRQUVMQyxTQUFTLEdBQVRBLFNBQVM7UUFFVEMsVUFBVSxHQUFWQSxVQUFVO1FBRVZDLFNBQVMsR0FBVEEsU0FBUztRQUVUQyxVQUFVLEdBQVZBLFVBQVU7UUFFVkMsU0FBUyxHQUFUQSxTQUFTO1FBRVRDLElBQUksR0FBSkEsSUFBSTtRQUVKQyxJQUFJLEdBQUpBLElBQUk7UUFFSkMsSUFBSSxHQUFKQSxJQUFJO1FBRUpDLElBQUksR0FBSkEsSUFBSTtRQUVKQyxLQUFLLEdBQUxBLEtBQUs7UUFFTEMsSUFBSSxHQUFKQSxJQUFJ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
|
|
@@ -10,18 +10,18 @@ exports.repeatedly = repeatedly;
|
|
|
10
10
|
exports.forwardsForEach = forwardsForEach;
|
|
11
11
|
exports.backwardsForEach = backwardsForEach;
|
|
12
12
|
exports.default = void 0;
|
|
13
|
-
function whilst(
|
|
13
|
+
function whilst(operation, done, context) {
|
|
14
14
|
var count = -1;
|
|
15
15
|
function next() {
|
|
16
16
|
count++;
|
|
17
|
-
var index = count, terminate =
|
|
17
|
+
var index = count, terminate = operation(next, done, context, index);
|
|
18
18
|
if (terminate) {
|
|
19
19
|
done();
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
next();
|
|
23
23
|
}
|
|
24
|
-
function forEach(array,
|
|
24
|
+
function forEach(array, operation, done, context) {
|
|
25
25
|
var length = array.length; ///
|
|
26
26
|
var count = -1;
|
|
27
27
|
function next() {
|
|
@@ -31,13 +31,13 @@ function forEach(array, callback, done, context) {
|
|
|
31
31
|
done();
|
|
32
32
|
} else {
|
|
33
33
|
var index = count, element = array[index];
|
|
34
|
-
|
|
34
|
+
operation(element, next, done, context, index);
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
next();
|
|
38
38
|
}
|
|
39
|
-
function sequence(
|
|
40
|
-
var length =
|
|
39
|
+
function sequence(operations, done, context) {
|
|
40
|
+
var length = operations.length; ///
|
|
41
41
|
var count = -1;
|
|
42
42
|
function next() {
|
|
43
43
|
count++;
|
|
@@ -45,13 +45,13 @@ function sequence(callbacks, done, context) {
|
|
|
45
45
|
if (terminate) {
|
|
46
46
|
done();
|
|
47
47
|
} else {
|
|
48
|
-
var index = count,
|
|
49
|
-
|
|
48
|
+
var index = count, operation = operations[index];
|
|
49
|
+
operation(next, done, context, index);
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
next();
|
|
53
53
|
}
|
|
54
|
-
function eventually(
|
|
54
|
+
function eventually(operations, done, context) {
|
|
55
55
|
var next = function next() {
|
|
56
56
|
count++;
|
|
57
57
|
var terminate = count === length;
|
|
@@ -59,13 +59,13 @@ function eventually(callbacks, done, context) {
|
|
|
59
59
|
done();
|
|
60
60
|
}
|
|
61
61
|
};
|
|
62
|
-
var length =
|
|
62
|
+
var length = operations.length; ///
|
|
63
63
|
var count = 0;
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
operations.forEach(function(operation, index) {
|
|
65
|
+
operation(next, done, context, index);
|
|
66
66
|
});
|
|
67
67
|
}
|
|
68
|
-
function repeatedly(
|
|
68
|
+
function repeatedly(operation, length, done, context) {
|
|
69
69
|
var next = function next() {
|
|
70
70
|
count++;
|
|
71
71
|
var terminate = count === length;
|
|
@@ -75,10 +75,10 @@ function repeatedly(callback, length, done, context) {
|
|
|
75
75
|
};
|
|
76
76
|
var count = 0;
|
|
77
77
|
for(var index = 0; index < length; index++){
|
|
78
|
-
|
|
78
|
+
operation(next, done, context, index);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
-
function forwardsForEach(array,
|
|
81
|
+
function forwardsForEach(array, operation, done, context) {
|
|
82
82
|
var length = array.length; ///
|
|
83
83
|
var count = -1;
|
|
84
84
|
function next() {
|
|
@@ -88,12 +88,12 @@ function forwardsForEach(array, callback, done, context) {
|
|
|
88
88
|
done();
|
|
89
89
|
} else {
|
|
90
90
|
var index = count, element = array[index];
|
|
91
|
-
|
|
91
|
+
operation(element, next, done, context, index);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
next();
|
|
95
95
|
}
|
|
96
|
-
function backwardsForEach(array,
|
|
96
|
+
function backwardsForEach(array, operation, done, context) {
|
|
97
97
|
var length = array.length; ///
|
|
98
98
|
var count = length;
|
|
99
99
|
function next() {
|
|
@@ -103,7 +103,7 @@ function backwardsForEach(array, callback, done, context) {
|
|
|
103
103
|
done();
|
|
104
104
|
} else {
|
|
105
105
|
var index = count, element = array[index];
|
|
106
|
-
|
|
106
|
+
operation(element, next, done, context, index);
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
next();
|
|
@@ -119,4 +119,4 @@ var _default = {
|
|
|
119
119
|
};
|
|
120
120
|
exports.default = _default;
|
|
121
121
|
|
|
122
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
122
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvYXN5bmNocm9ub3VzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHdoaWxzdChvcGVyYXRpb24sIGRvbmUsIGNvbnRleHQpIHtcclxuICBsZXQgY291bnQgPSAtMTtcclxuXHJcbiAgZnVuY3Rpb24gbmV4dCgpIHtcclxuICAgIGNvdW50Kys7XHJcblxyXG4gICAgY29uc3QgaW5kZXggPSBjb3VudCwgIC8vL1xyXG4gICAgICAgICAgdGVybWluYXRlID0gb3BlcmF0aW9uKG5leHQsIGRvbmUsIGNvbnRleHQsIGluZGV4KTtcclxuXHJcbiAgICBpZiAodGVybWluYXRlKSB7XHJcbiAgICAgIGRvbmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5leHQoKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZvckVhY2goYXJyYXksIG9wZXJhdGlvbiwgZG9uZSwgY29udGV4dCkge1xyXG4gIGNvbnN0IGxlbmd0aCA9IGFycmF5Lmxlbmd0aDsgIC8vL1xyXG5cclxuICBsZXQgY291bnQgPSAtMTtcclxuXHJcbiAgZnVuY3Rpb24gbmV4dCgpIHtcclxuICAgIGNvdW50Kys7XHJcblxyXG4gICAgY29uc3QgdGVybWluYXRlID0gKGNvdW50ID09PSBsZW5ndGgpO1xyXG5cclxuICAgIGlmICh0ZXJtaW5hdGUpIHtcclxuICAgICAgZG9uZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgaW5kZXggPSBjb3VudCwgIC8vL1xyXG4gICAgICAgICAgICBlbGVtZW50ID0gYXJyYXlbaW5kZXhdO1xyXG5cclxuICAgICAgb3BlcmF0aW9uKGVsZW1lbnQsIG5leHQsIGRvbmUsIGNvbnRleHQsIGluZGV4KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5leHQoKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNlcXVlbmNlKG9wZXJhdGlvbnMsIGRvbmUsIGNvbnRleHQpIHtcclxuICBjb25zdCBsZW5ndGggPSBvcGVyYXRpb25zLmxlbmd0aDsgIC8vL1xyXG5cclxuICBsZXQgY291bnQgPSAtMTtcclxuXHJcbiAgZnVuY3Rpb24gbmV4dCgpIHtcclxuICAgIGNvdW50Kys7XHJcblxyXG4gICAgY29uc3QgdGVybWluYXRlID0gKGNvdW50ID09PSBsZW5ndGgpO1xyXG5cclxuICAgIGlmICh0ZXJtaW5hdGUpIHtcclxuICAgICAgZG9uZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgaW5kZXggPSBjb3VudCwgIC8vL1xyXG4gICAgICAgICAgICBvcGVyYXRpb24gPSBvcGVyYXRpb25zW2luZGV4XTtcclxuXHJcbiAgICAgIG9wZXJhdGlvbihuZXh0LCBkb25lLCBjb250ZXh0LCBpbmRleCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZXh0KCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBldmVudHVhbGx5KG9wZXJhdGlvbnMsIGRvbmUsIGNvbnRleHQpIHtcclxuICBjb25zdCBsZW5ndGggPSBvcGVyYXRpb25zLmxlbmd0aDsgIC8vL1xyXG5cclxuICBsZXQgY291bnQgPSAwO1xyXG5cclxuICBmdW5jdGlvbiBuZXh0KCkge1xyXG4gICAgY291bnQrKztcclxuXHJcbiAgICBjb25zdCB0ZXJtaW5hdGUgPSAoY291bnQgPT09IGxlbmd0aCk7XHJcblxyXG4gICAgaWYgKHRlcm1pbmF0ZSkge1xyXG4gICAgICBkb25lKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcGVyYXRpb25zLmZvckVhY2goKG9wZXJhdGlvbiwgaW5kZXgpID0+IHtcclxuICAgIG9wZXJhdGlvbihuZXh0LCBkb25lLCBjb250ZXh0LCBpbmRleCk7XHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZXBlYXRlZGx5KG9wZXJhdGlvbiwgbGVuZ3RoLCBkb25lLCBjb250ZXh0KSB7XHJcbiAgbGV0IGNvdW50ID0gMDtcclxuXHJcbiAgZnVuY3Rpb24gbmV4dCgpIHtcclxuICAgIGNvdW50Kys7XHJcblxyXG4gICAgY29uc3QgdGVybWluYXRlID0gKGNvdW50ID09PSBsZW5ndGgpO1xyXG5cclxuICAgIGlmICh0ZXJtaW5hdGUpIHtcclxuICAgICAgZG9uZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgb3BlcmF0aW9uKG5leHQsIGRvbmUsIGNvbnRleHQsIGluZGV4KTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBmb3J3YXJkc0ZvckVhY2goYXJyYXksIG9wZXJhdGlvbiwgZG9uZSwgY29udGV4dCkge1xyXG4gIGNvbnN0IGxlbmd0aCA9IGFycmF5Lmxlbmd0aDsgIC8vL1xyXG5cclxuICBsZXQgY291bnQgPSAtMTtcclxuXHJcbiAgZnVuY3Rpb24gbmV4dCgpIHtcclxuICAgIGNvdW50Kys7XHJcblxyXG4gICAgY29uc3QgdGVybWluYXRlID0gKGNvdW50ID09PSBsZW5ndGgpO1xyXG5cclxuICAgIGlmICh0ZXJtaW5hdGUpIHtcclxuICAgICAgZG9uZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgaW5kZXggPSBjb3VudCwgIC8vL1xyXG4gICAgICAgICAgICBlbGVtZW50ID0gYXJyYXlbaW5kZXhdO1xyXG5cclxuICAgICAgb3BlcmF0aW9uKGVsZW1lbnQsIG5leHQsIGRvbmUsIGNvbnRleHQsIGluZGV4KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5leHQoKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGJhY2t3YXJkc0ZvckVhY2goYXJyYXksIG9wZXJhdGlvbiwgZG9uZSwgY29udGV4dCkge1xyXG4gIGNvbnN0IGxlbmd0aCA9IGFycmF5Lmxlbmd0aDsgIC8vL1xyXG5cclxuICBsZXQgY291bnQgPSBsZW5ndGg7XHJcblxyXG4gIGZ1bmN0aW9uIG5leHQoKSB7XHJcbiAgICBjb3VudC0tO1xyXG5cclxuICAgIGNvbnN0IHRlcm1pbmF0ZSA9IChjb3VudCA9PT0gLTEpO1xyXG5cclxuICAgIGlmICh0ZXJtaW5hdGUpIHtcclxuICAgICAgZG9uZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgaW5kZXggPSBjb3VudCwgIC8vL1xyXG4gICAgICAgICAgICBlbGVtZW50ID0gYXJyYXlbaW5kZXhdO1xyXG5cclxuICAgICAgb3BlcmF0aW9uKGVsZW1lbnQsIG5leHQsIGRvbmUsIGNvbnRleHQsIGluZGV4KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5leHQoKTtcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIHdoaWxzdCxcclxuICBmb3JFYWNoLFxyXG4gIHNlcXVlbmNlLFxyXG4gIGV2ZW50dWFsbHksXHJcbiAgcmVwZWF0ZWRseSxcclxuICBmb3J3YXJkc0ZvckVhY2gsXHJcbiAgYmFja3dhcmRzRm9yRWFjaFxyXG59O1xyXG4iXSwibmFtZXMiOlsid2hpbHN0IiwiZm9yRWFjaCIsInNlcXVlbmNlIiwiZXZlbnR1YWxseSIsInJlcGVhdGVkbHkiLCJmb3J3YXJkc0ZvckVhY2giLCJiYWNrd2FyZHNGb3JFYWNoIiwib3BlcmF0aW9uIiwiZG9uZSIsImNvbnRleHQiLCJjb3VudCIsIm5leHQiLCJpbmRleCIsInRlcm1pbmF0ZSIsImFycmF5IiwibGVuZ3RoIiwiZWxlbWVudCIsIm9wZXJhdGlvbnMiXSwibWFwcGluZ3MiOiJBQUFBLENBQVk7Ozs7UUFFSUEsTUFBTSxHQUFOQSxNQUFNO1FBaUJOQyxPQUFPLEdBQVBBLE9BQU87UUF1QlBDLFFBQVEsR0FBUkEsUUFBUTtRQXVCUkMsVUFBVSxHQUFWQSxVQUFVO1FBb0JWQyxVQUFVLEdBQVZBLFVBQVU7UUFrQlZDLGVBQWUsR0FBZkEsZUFBZTtRQXVCZkMsZ0JBQWdCLEdBQWhCQSxnQkFBZ0I7O1NBNUhoQk4sTUFBTSxDQUFDTyxTQUFTLEVBQUVDLElBQUksRUFBRUMsT0FBTyxFQUFF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
|
|
@@ -22,8 +22,8 @@ var _default = {
|
|
|
22
22
|
};
|
|
23
23
|
exports.default = _default;
|
|
24
24
|
var baseExtension = _defaults.DEFAULT_RC_BASE_EXTENSION;
|
|
25
|
-
function _rc(
|
|
26
|
-
var environmentNameOrArgv =
|
|
25
|
+
function _rc() {
|
|
26
|
+
var environmentNameOrArgv = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
|
|
27
27
|
var environment1, environmentName, environmentNameOrArgvArgv = _instanceof(environmentNameOrArgv, Array);
|
|
28
28
|
if (environmentNameOrArgvArgv) {
|
|
29
29
|
var argv = environmentNameOrArgv; ///
|
|
@@ -107,4 +107,4 @@ function rcFilePathFromNothing() {
|
|
|
107
107
|
return rcFilePath;
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29uZmlndXJhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgZmlyc3QsIHNlY29uZCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IERFRkFVTFRfUkNfQkFTRV9FWFRFTlNJT04gfSBmcm9tIFwiLi4vZGVmYXVsdHNcIjtcbmltcG9ydCB7IHJlYWRGaWxlLCB3cml0ZUZpbGUsIGNoZWNrRmlsZUV4aXN0cyB9IGZyb20gXCIuLi91dGlsaXRpZXMvZmlsZVN5c3RlbVwiO1xuXG5pZiAoIWdsb2JhbFRoaXMucmMpIHtcbiAgZ2xvYmFsVGhpcy5yYyA9IF9yYztcbn1cblxuY29uc3QgeyByYyB9ID0gZ2xvYmFsVGhpcztcblxuZXhwb3J0IGRlZmF1bHQge1xuICByY1xufTtcblxubGV0IGJhc2VFeHRlbnNpb24gPSBERUZBVUxUX1JDX0JBU0VfRVhURU5TSU9OO1xuXG5mdW5jdGlvbiBfcmMoZW52aXJvbm1lbnROYW1lT3JBcmd2ID0gbnVsbCkge1xuICBsZXQgZW52aXJvbm1lbnQsXG4gICAgICBlbnZpcm9ubWVudE5hbWUsXG4gICAgICBlbnZpcm9ubWVudE5hbWVPckFyZ3ZBcmd2ID0gKGVudmlyb25tZW50TmFtZU9yQXJndiBpbnN0YW5jZW9mIEFycmF5KTtcblxuICBpZiAoZW52aXJvbm1lbnROYW1lT3JBcmd2QXJndikge1xuICAgIGNvbnN0IGFyZ3YgPSBlbnZpcm9ubWVudE5hbWVPckFyZ3Y7IC8vL1xuXG4gICAgZW52aXJvbm1lbnROYW1lID0gZW52aXJvbm1lbnROYW1lRnJvbUFyZ3YoYXJndik7XG4gIH0gZWxzZSB7XG4gICAgZW52aXJvbm1lbnROYW1lID0gZW52aXJvbm1lbnROYW1lT3JBcmd2OyAgLy8vXG4gIH1cblxuICBjb25zdCBqc29uID0gcmVhZFJDRmlsZSgpLFxuICAgICAgICB7IGVudmlyb25tZW50cyB9ID0ganNvbjtcblxuICBpZiAoZW52aXJvbm1lbnROYW1lID09PSBudWxsKSB7XG4gICAgY29uc3QgZmlyc3RFbnZpcm9ubWVudCA9IGZpcnN0KGVudmlyb25tZW50cyk7XG5cbiAgICBlbnZpcm9ubWVudCA9IGZpcnN0RW52aXJvbm1lbnQ7IC8vL1xuICB9IGVsc2Uge1xuICAgIGVudmlyb25tZW50ID0gZW52aXJvbm1lbnRzLmZpbmQoKGVudmlyb25tZW50KSA9PiB7XG4gICAgICBjb25zdCB7IG5hbWUgfSA9IGVudmlyb25tZW50LFxuICAgICAgICAgICAgZm91bmQgPSAobmFtZSA9PT0gZW52aXJvbm1lbnROYW1lKTtcblxuICAgICAgcmV0dXJuIGZvdW5kO1xuICAgIH0pO1xuICB9XG5cbiAgZGVsZXRlIGVudmlyb25tZW50Lm5hbWU7XG5cbiAgT2JqZWN0LmFzc2lnbihyYywgZW52aXJvbm1lbnQpO1xuXG4gIHJldHVybiBlbnZpcm9ubWVudDtcbn1cblxuZnVuY3Rpb24gcmVhZFJDRmlsZSgpIHtcbiAgY29uc3QgcmNGaWxlUGF0aCA9IHJjRmlsZVBhdGhGcm9tTm90aGluZygpLFxuICAgICAgICByY0ZpbGVDb250ZW50ID0gcmVhZEZpbGUocmNGaWxlUGF0aCksXG4gICAgICAgIGpzb24gPSBKU09OLnBhcnNlKHJjRmlsZUNvbnRlbnQpO1xuXG4gIHJldHVybiBqc29uOyAgICAgIFxufVxuXG5mdW5jdGlvbiB3cml0ZVJDRmlsZShqc29uKSB7XG4gIGNvbnN0IHJjRmlsZVBhdGggPSByY0ZpbGVQYXRoRnJvbU5vdGhpbmcoKSxcbiAgICAgICAgcmRGaWxlQ29udGVudCA9IEpTT04uc3RyaW5naWZ5KGpzb24sIG51bGwsIFwiICBcIik7XG5cbiAgd3JpdGVGaWxlKHJjRmlsZVBhdGgsIHJkRmlsZUNvbnRlbnQpO1xufVxuXG5mdW5jdGlvbiB1cGRhdGVSQ0ZpbGUoYWRkZWRQcm9wZXJ0aWVzLCAuLi5kZWxldGVkUHJvcGVydHlOYW1lcykge1xuICBsZXQganNvbiA9IHJlYWRSQ0ZpbGUoKTtcblxuICBpZiAoYWRkZWRQcm9wZXJ0aWVzKSB7XG4gICAgT2JqZWN0LmFzc2lnbihqc29uLCBhZGRlZFByb3BlcnRpZXMpO1xuICB9XG5cbiAgZGVsZXRlZFByb3BlcnR5TmFtZXMuZm9yRWFjaCgoZGVsZXRlZFByb3BlcnR5TmFtZSkgPT4ge1xuICAgIGRlbGV0ZSBqc29uW2RlbGV0ZWRQcm9wZXJ0eU5hbWVdO1xuICB9KTtcblxuICB3cml0ZVJDRmlsZShqc29uKTsgICAgICBcbn1cblxuZnVuY3Rpb24gY2hlY2tSQ0ZpbGVFeGlzdHMoKSB7XG4gIGNvbnN0IHJjRmlsZVBhdGggPSByY0ZpbGVQYXRoRnJvbU5vdGhpbmcoKSxcbiAgICAgICAgcmNGaWxlRXhpc3RzID0gY2hlY2tGaWxlRXhpc3RzKHJjRmlsZVBhdGgpO1xuXG4gIHJldHVybiByY0ZpbGVFeGlzdHM7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVZhY3VvdXNSQ0ZpbGUoKSB7XG4gIGNvbnN0IGpzb24gPSB7XG4gICAgXCJlbnZpcm9ubWVudHNcIjogW1xuICAgICAge31cbiAgICBdXG4gIH07XG5cbiAgd3JpdGVSQ0ZpbGUoanNvbik7XG59XG5cbmZ1bmN0aW9uIHNldFJDQmFzZUV4dGVuc2lvbihyY0Jhc2VFeHRlbnNpb24pIHsgYmFzZUV4dGVuc2lvbiA9IHJjQmFzZUV4dGVuc2lvbjsgfVxuXG5PYmplY3QuYXNzaWduKF9yYywge1xuICByZWFkUkNGaWxlLFxuICB3cml0ZVJDRmlsZSxcbiAgdXBkYXRlUkNGaWxlLFxuICBjaGVja1JDRmlsZUV4aXN0cyxcbiAgY3JlYXRlVmFjdW91c1JDRmlsZSxcbiAgc2V0UkNCYXNlRXh0ZW5zaW9uXG59KTtcblxuZnVuY3Rpb24gZW52aXJvbm1lbnROYW1lRnJvbUFyZ3YoYXJndikge1xuICBsZXQgZW52aXJvbm1lbnROYW1lID0gbnVsbDtcblxuICBhcmd2LmZpbmQoKGFyZ3VtZW50KSA9PiB7ICAvLy9cbiAgICBjb25zdCBtYXRjaGVzID0gYXJndW1lbnQubWF0Y2goLy0tZW52aXJvbm1lbnQ9KC4rKS8pLFxuICAgICAgICAgIGZvdW5kID0gKG1hdGNoZXMgIT09IG51bGwpO1xuXG4gICAgaWYgKGZvdW5kKSB7XG4gICAgICBjb25zdCBzZWNvbmRNYXRjaCA9IHNlY29uZChtYXRjaGVzKTtcblxuICAgICAgZW52aXJvbm1lbnROYW1lID0gc2Vjb25kTWF0Y2g7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvdW5kO1xuICB9KTtcblxuICByZXR1cm4gZW52aXJvbm1lbnROYW1lO1xufVxuXG5mdW5jdGlvbiByY0ZpbGVQYXRoRnJvbU5vdGhpbmcoKSB7XG4gIGNvbnN0IHJjRmlsZVBhdGggPSBgLi8uJHtiYXNlRXh0ZW5zaW9ufXJjYDtcblxuICByZXR1cm4gcmNGaWxlUGF0aDtcbn1cbiJdLCJuYW1lcyI6WyJnbG9iYWxUaGlzIiwicmMiLCJfcmMiLCJiYXNlRXh0ZW5zaW9uIiwiZW52aXJvbm1lbnROYW1lT3JBcmd2IiwiZW52aXJvbm1lbnQiLCJlbnZpcm9ubWVudE5hbWUiLCJlbnZpcm9ubWVudE5hbWVPckFyZ3ZBcmd2IiwiQXJyYXkiLCJhcmd2IiwiZW52aXJvbm1lbnROYW1lRnJvbUFyZ3YiLCJqc29uIiwicmVhZFJDRmlsZSIsImVudmlyb25tZW50cyIsImZpcnN0RW52aXJvbm1lbnQiLCJmaW5kIiwibmFtZSIsImZvdW5kIiwiT2JqZWN0IiwiYXNzaWduIiwicmNGaWxlUGF0aCIsInJjRmlsZVBhdGhGcm9tTm90aGluZyIsInJjRmlsZUNvbnRlbnQiLCJKU09OIiwicGFyc2UiLCJ3cml0ZVJDRmlsZSIsInJkRmlsZUNvbnRlbnQiLCJzdHJpbmdpZnkiLCJ1cGRhdGVSQ0ZpbGUiLCJhZGRlZFByb3BlcnRpZXMiLCJkZWxldGVkUHJvcGVydHlOYW1lcyIsImZvckVhY2giLCJkZWxldGVkUHJvcGVydHlOYW1lIiwiY2hlY2tSQ0ZpbGVFeGlzdHMiLCJyY0ZpbGVFeGlzdHMiLCJjcmVhdGVWYWN1b3VzUkNGaWxlIiwic2V0UkNCYXNlRXh0ZW5zaW9uIiwicmNCYXNlRXh0ZW5zaW9uIiwiYXJndW1lbnQi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
|
|
@@ -65,8 +65,8 @@ function readDirectory(directoryPath) {
|
|
|
65
65
|
var subEntryNames = _fs.default.readdirSync(directoryPath);
|
|
66
66
|
return subEntryNames;
|
|
67
67
|
}
|
|
68
|
-
function readFile(filePath
|
|
69
|
-
var encoding =
|
|
68
|
+
function readFile(filePath) {
|
|
69
|
+
var encoding = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : _defaults.DEFAULT_ENCODING;
|
|
70
70
|
var options = {
|
|
71
71
|
encoding: encoding
|
|
72
72
|
}, content = _fs.default.readFileSync(filePath, options);
|
|
@@ -107,4 +107,4 @@ var _default = {
|
|
|
107
107
|
};
|
|
108
108
|
exports.default = _default;
|
|
109
109
|
|
|
110
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGZzIGZyb20gXCJmc1wiO1xuXG5pbXBvcnQgeyBERUZBVUxUX0VOQ09ESU5HIH0gZnJvbSBcIi4uL2RlZmF1bHRzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0VudHJ5RXhpc3RzKGVudHJ5UGF0aCkge1xuICBjb25zdCBlbnRyeUV4aXN0cyA9IGZzLmV4aXN0c1N5bmMoZW50cnlQYXRoKTtcblxuICByZXR1cm4gZW50cnlFeGlzdHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0ZpbGVFeGlzdHMoZmlsZVBhdGgpIHtcbiAgbGV0IGZpbGVFeGlzdHMgPSBmYWxzZTtcbiAgXG4gIGNvbnN0IGVudHJ5UGF0aCA9IGZpbGVQYXRoLCAvLy9cbiAgICAgICAgZW50cnlFeGlzdHMgPSBjaGVja0VudHJ5RXhpc3RzKGVudHJ5UGF0aCk7XG4gIFxuICBpZiAoZW50cnlFeGlzdHMpIHtcbiAgICBjb25zdCBlbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShlbnRyeVBhdGgpO1xuICAgIFxuICAgIGlmIChlbnRyeUZpbGUpIHtcbiAgICAgIGZpbGVFeGlzdHMgPSB0cnVlO1xuICAgIH1cbiAgfVxuICBcbiAgcmV0dXJuIGZpbGVFeGlzdHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0RpcmVjdG9yeUV4aXN0cyhkaXJlY3RvcnlQYXRoKSB7XG4gIGxldCBkaXJlY3RvcnlFeGlzdHMgPSBmYWxzZTtcblxuICBjb25zdCBlbnRyeVBhdGggPSBkaXJlY3RvcnlQYXRoLCAvLy9cbiAgICAgICAgZW50cnlFeGlzdHMgPSBjaGVja0VudHJ5RXhpc3RzKGVudHJ5UGF0aCk7XG5cbiAgaWYgKGVudHJ5RXhpc3RzKSB7XG4gICAgY29uc3QgZW50cnlEaXJlY3RvcnkgPSBpc0VudHJ5RGlyZWN0b3J5KGVudHJ5UGF0aCk7XG5cbiAgICBpZiAoZW50cnlEaXJlY3RvcnkpIHtcbiAgICAgIGRpcmVjdG9yeUV4aXN0cyA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRpcmVjdG9yeUV4aXN0cztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRW50cnlGaWxlKGVudHJ5UGF0aCkge1xuICBjb25zdCBzdGF0ID0gZnMuc3RhdFN5bmMoZW50cnlQYXRoKSxcbiAgICAgICAgZW50cnlEaXJlY3RvcnkgPSBzdGF0LmlzRGlyZWN0b3J5KCksXG4gICAgICAgIGVudHJ5RmlsZSA9ICFlbnRyeURpcmVjdG9yeTtcblxuICByZXR1cm4gZW50cnlGaWxlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNFbnRyeURpcmVjdG9yeShlbnRyeVBhdGgpIHtcbiAgY29uc3Qgc3RhdCA9IGZzLnN0YXRTeW5jKGVudHJ5UGF0aCksXG4gICAgICAgIGVudHJ5RGlyZWN0b3J5ID0gc3RhdC5pc0RpcmVjdG9yeSgpO1xuXG4gIHJldHVybiBlbnRyeURpcmVjdG9yeTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRGlyZWN0b3J5RW1wdHkoZGlyZWN0b3J5UGF0aCkge1xuICBjb25zdCBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShkaXJlY3RvcnlQYXRoKSxcbiAgICAgICAgc3ViRW50cnlOYW1lc0xlbmd0aCA9IHN1YkVudHJ5TmFtZXMubGVuZ3RoLFxuICAgICAgICBkaXJlY3RvcnlFbXB0eSA9IChzdWJFbnRyeU5hbWVzTGVuZ3RoID09PSAwKTtcblxuICByZXR1cm4gZGlyZWN0b3J5RW1wdHk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkRGlyZWN0b3J5KGRpcmVjdG9yeVBhdGgpIHtcbiAgY29uc3Qgc3ViRW50cnlOYW1lcyA9IGZzLnJlYWRkaXJTeW5jKGRpcmVjdG9yeVBhdGgpO1xuXG4gIHJldHVybiBzdWJFbnRyeU5hbWVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZEZpbGUoZmlsZVBhdGgsIGVuY29kaW5nID0gREVGQVVMVF9FTkNPRElORykge1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICAgIGVuY29kaW5nXG4gICAgICAgIH0sXG4gICAgICAgIGNvbnRlbnQgPSBmcy5yZWFkRmlsZVN5bmMoZmlsZVBhdGgsIG9wdGlvbnMpO1xuXG4gIHJldHVybiBjb250ZW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gd3JpdGVGaWxlKGZpbGVQYXRoLCBjb250ZW50KSB7XG4gIGZzLndyaXRlRmlsZVN5bmMoZmlsZVBhdGgsIGNvbnRlbnQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXBwZW5kVG9GaWxlKGZpbGVQYXRoLCBjb250ZW50KSB7XG4gIGZzLmFwcGVuZEZpbGVTeW5jKGZpbGVQYXRoLCBjb250ZW50KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZURpcmVjdG9yeShkaXJlY3RvcnlQYXRoKSB7XG4gIGNvbnN0IHJlY3Vyc2l2ZSA9IHRydWUsXG4gICAgICAgIG9wdGlvbnMgPSB7XG4gICAgICAgICAgcmVjdXJzaXZlXG4gICAgICAgIH07XG5cbiAgZnMubWtkaXJTeW5jKGRpcmVjdG9yeVBhdGgsIG9wdGlvbnMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVuYW1lRmlsZShvbGRGaWxlUGF0aCwgbmV3RmlsZVBhdGgpIHtcbiAgZnMucmVuYW1lU3luYyhvbGRGaWxlUGF0aCwgbmV3RmlsZVBhdGgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3RhdHMoZmlsZVBhdGgpIHtcbiAgcmV0dXJuIGZzLnN0YXRTeW5jKGZpbGVQYXRoKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBjaGVja0VudHJ5RXhpc3RzLFxuICBjaGVja0ZpbGVFeGlzdHMsXG4gIGNoZWNrRGlyZWN0b3J5RXhpc3RzLFxuICBpc0VudHJ5RmlsZSxcbiAgaXNFbnRyeURpcmVjdG9yeSxcbiAgaXNEaXJlY3RvcnlFbXB0eSxcbiAgcmVhZERpcmVjdG9yeSxcbiAgcmVhZEZpbGUsXG4gIHdyaXRlRmlsZSxcbiAgYXBwZW5kVG9GaWxlLFxuICBjcmVhdGVEaXJlY3RvcnksXG4gIHJlbmFtZUZpbGUsXG4gIGdldFN0YXRzXG59O1xuIl0sIm5hbWVzIjpbImNoZWNrRW50cnlFeGlzdHMiLCJjaGVja0ZpbGVFeGlzdHMiLCJjaGVja0RpcmVjdG9yeUV4aXN0cyIsImlzRW50cnlGaWxlIiwiaXNFbnRyeURpcmVjdG9yeSIsImlzRGlyZWN0b3J5RW1wdHkiLCJyZWFkRGlyZWN0b3J5IiwicmVhZEZpbGUiLCJ3cml0ZUZpbGUiLCJhcHBlbmRUb0ZpbGUiLCJjcmVhdGVEaXJlY3RvcnkiLCJyZW5hbWVGaWxlIiwiZ2V0U3RhdHMiLCJlbnRyeVBhdGgiLCJlbnRyeUV4aXN0cyIsImV4aXN0c1N5bmMiLCJmaWxlUGF0aCIsImZpbGVFeGlzdHMiLCJlbnRyeUZpbGUiLCJkaXJlY3RvcnlQYXRoIiwiZGlyZWN0b3J5RXhpc3RzIiwiZW50cnlEaXJlY3RvcnkiLCJzdGF0Iiwic3RhdFN5bmMiLCJpc0RpcmVjdG9yeSIsInN1YkVudHJ5TmFtZXMiLCJzdWJFbnRyeU5hbWVzTGVuZ3RoIiwibGVuZ3RoIiwiZGlyZWN0b3J5RW1wdHkiLCJyZWFkZGlyU3luYyIsImVuY29kaW5nIiwib3B0aW9ucyIsImNvbnRlbnQiLCJyZWFkRmlsZVN5bmMiLCJ3cml0ZUZpbGVTeW5jIiwiYXBwZW5kRmlsZVN5bmMiLCJyZWN1cnNpdmUiLCJta2RpclN5bmMiLCJvbGRGaWxlUGF0aCIsIm5ld0ZpbGVQYXRoIiwicmVuYW1lU3luYyJdLCJtYXBwaW5ncyI6IkFBQUEsQ0FBWTs7OztRQU1JQSxnQkFBZ0IsR0FBaEJBLGdCQUFnQjtRQU1oQkMsZUFBZSxHQUFmQSxlQUFlO1FBaUJmQyxvQkFBb0IsR0FBcEJBLG9CQUFvQjtRQWlCcEJDLFdBQVcsR0FBWEEsV0FBVztRQVFYQyxnQkFBZ0IsR0FBaEJBLGdCQUFnQjtRQU9oQkMsZ0JBQWdCLEdBQWhCQSxnQkFBZ0I7UUFRaEJDLGFBQWEsR0FBYkEsYUFBYTtRQU1iQyxRQUFRLEdBQVJBLFFBQVE7UUFTUkMsU0FBUyxHQUFUQSxT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
|
package/lib/utilities/logging.js
CHANGED
|
@@ -32,8 +32,8 @@ var levels = [
|
|
|
32
32
|
_levels.FATAL_LEVEL,
|
|
33
33
|
];
|
|
34
34
|
var logLevel = _defaults.DEFAULT_LOG_LEVEL, logFileBaseName = _defaults.DEFAULT_LOG_FILE_BASE_NAME, logDirectoryPath = _defaults.DEFAULT_LOG_DIRECTORY_PATH;
|
|
35
|
-
function log(messageOrError
|
|
36
|
-
var level =
|
|
35
|
+
function log(messageOrError) {
|
|
36
|
+
var level = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : _constants.EMPTY_STRING;
|
|
37
37
|
var salientStackMessageIndex = 1;
|
|
38
38
|
if (level !== _constants.EMPTY_STRING) {
|
|
39
39
|
var levelIndex = levels.indexOf(level), logLevelIndex = levels.indexOf(logLevel);
|
|
@@ -43,15 +43,15 @@ function log(messageOrError, param) {
|
|
|
43
43
|
salientStackMessageIndex += 1;
|
|
44
44
|
level = "".concat(level, " "); ///
|
|
45
45
|
}
|
|
46
|
-
var
|
|
46
|
+
var error1, message;
|
|
47
47
|
if (_instanceof(messageOrError, Error)) {
|
|
48
|
-
|
|
49
|
-
message =
|
|
48
|
+
error1 = messageOrError; ///
|
|
49
|
+
message = error1.message;
|
|
50
50
|
} else {
|
|
51
51
|
message = messageOrError; ///
|
|
52
|
-
|
|
52
|
+
error1 = new Error(message);
|
|
53
53
|
}
|
|
54
|
-
var stack =
|
|
54
|
+
var stack = error1.stack, stackMessages = stackMessagesFromStack(stack), pertinentStackMessage = stackMessages[salientStackMessageIndex], stackMessage = pertinentStackMessage, currentDateAndTimeString = getCurrentDateAndTimeString(), filePath = filePathFromStackMessage(stackMessage), lineNumber = lineNumberFromStackMessage(stackMessage), logMessage = "".concat(level).concat(currentDateAndTimeString, " ").concat(filePath, "(").concat(lineNumber, ") ").concat(message);
|
|
55
55
|
console.log(logMessage);
|
|
56
56
|
if (logDirectoryPath !== null) {
|
|
57
57
|
rollOverLogFile();
|
|
@@ -76,7 +76,7 @@ function info(message) {
|
|
|
76
76
|
function warning(message) {
|
|
77
77
|
return log(message, _levels.WARNING_LEVEL);
|
|
78
78
|
}
|
|
79
|
-
function
|
|
79
|
+
function error(message) {
|
|
80
80
|
return log(message, _levels.ERROR_LEVEL);
|
|
81
81
|
}
|
|
82
82
|
function fatal(message) {
|
|
@@ -112,7 +112,7 @@ Object.assign(log, {
|
|
|
112
112
|
debug: debug,
|
|
113
113
|
info: info,
|
|
114
114
|
warning: warning,
|
|
115
|
-
error:
|
|
115
|
+
error: error,
|
|
116
116
|
fatal: fatal,
|
|
117
117
|
setLogLevel: setLogLevel,
|
|
118
118
|
setLogFileBaseName: setLogFileBaseName,
|
|
@@ -189,4 +189,4 @@ function padStart(string, targetLength, padString) {
|
|
|
189
189
|
return paddedString;
|
|
190
190
|
}
|
|
191
191
|
|
|
192
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbG9nZ2luZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcblxuaW1wb3J0IHsgc2Vjb25kIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgY29uY2F0ZW5hdGVQYXRocyB9IGZyb20gXCIuLi91dGlsaXRpZXMvcGF0aFwiO1xuaW1wb3J0IHsgY2hlY2tGaWxlRXhpc3RzLCByZWFkRmlsZSwgYXBwZW5kVG9GaWxlLCByZW5hbWVGaWxlLCBnZXRTdGF0cyB9IGZyb20gXCIuLi91dGlsaXRpZXMvZmlsZVN5c3RlbVwiO1xuaW1wb3J0IHsgREVGQVVMVF9MT0dfTEVWRUwsIERFRkFVTFRfTE9HX0ZJTEVfQkFTRV9OQU1FLCBERUZBVUxUX0xPR19ESVJFQ1RPUllfUEFUSCB9IGZyb20gXCIuLi9kZWZhdWx0c1wiO1xuaW1wb3J0IHsgVFJBQ0VfTEVWRUwsIERFQlVHX0xFVkVMLCBJTkZPX0xFVkVMLCBXQVJOSU5HX0xFVkVMLCBFUlJPUl9MRVZFTCwgRkFUQUxfTEVWRUwgfSBmcm9tIFwiLi4vbGV2ZWxzXCI7XG5cbmNvbnN0IGxldmVscyA9IFtcbiAgVFJBQ0VfTEVWRUwsXG4gIERFQlVHX0xFVkVMLFxuICBJTkZPX0xFVkVMLFxuICBXQVJOSU5HX0xFVkVMLFxuICBFUlJPUl9MRVZFTCxcbiAgRkFUQUxfTEVWRUwsXG5dO1xuXG5sZXQgbG9nTGV2ZWwgPSBERUZBVUxUX0xPR19MRVZFTCxcbiAgICBsb2dGaWxlQmFzZU5hbWUgPSBERUZBVUxUX0xPR19GSUxFX0JBU0VfTkFNRSxcbiAgICBsb2dEaXJlY3RvcnlQYXRoID0gREVGQVVMVF9MT0dfRElSRUNUT1JZX1BBVEg7XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2cobWVzc2FnZU9yRXJyb3IsIGxldmVsID0gRU1QVFlfU1RSSU5HKSB7XG4gIGxldCBzYWxpZW50U3RhY2tNZXNzYWdlSW5kZXggPSAxO1xuXG4gIGlmIChsZXZlbCAhPT0gRU1QVFlfU1RSSU5HKSB7XG4gICAgY29uc3QgbGV2ZWxJbmRleCA9IGxldmVscy5pbmRleE9mKGxldmVsKSxcbiAgICAgICAgICBsb2dMZXZlbEluZGV4ID0gbGV2ZWxzLmluZGV4T2YobG9nTGV2ZWwpO1xuXG4gICAgaWYgKGxldmVsSW5kZXggPCBsb2dMZXZlbEluZGV4KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2FsaWVudFN0YWNrTWVzc2FnZUluZGV4ICs9IDE7XG5cbiAgICBsZXZlbCA9IGAke2xldmVsfSBgOyAgLy8vXG4gIH1cblxuICBsZXQgZXJyb3IsXG4gICAgICBtZXNzYWdlO1xuXG4gIGlmIChtZXNzYWdlT3JFcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgZXJyb3IgPSBtZXNzYWdlT3JFcnJvcjsgLy8vXG5cbiAgICAoeyBtZXNzYWdlIH0gPSBlcnJvcik7XG4gIH0gZWxzZSB7XG4gICAgbWVzc2FnZSA9IG1lc3NhZ2VPckVycm9yOyAvLy9cblxuICAgIGVycm9yID0gbmV3IEVycm9yKG1lc3NhZ2UpO1xuICB9XG5cbiAgY29uc3QgeyBzdGFjayB9ID0gZXJyb3IsXG4gICAgICAgIHN0YWNrTWVzc2FnZXMgPSBzdGFja01lc3NhZ2VzRnJvbVN0YWNrKHN0YWNrKSxcbiAgICAgICAgcGVydGluZW50U3RhY2tNZXNzYWdlID0gc3RhY2tNZXNzYWdlc1tzYWxpZW50U3RhY2tNZXNzYWdlSW5kZXhdLFxuICAgICAgICBzdGFja01lc3NhZ2UgPSBwZXJ0aW5lbnRTdGFja01lc3NhZ2UsIC8vL1xuICAgICAgICBjdXJyZW50RGF0ZUFuZFRpbWVTdHJpbmcgPSBnZXRDdXJyZW50RGF0ZUFuZFRpbWVTdHJpbmcoKSxcbiAgICAgICAgZmlsZVBhdGggPSBmaWxlUGF0aEZyb21TdGFja01lc3NhZ2Uoc3RhY2tNZXNzYWdlKSxcbiAgICAgICAgbGluZU51bWJlciA9IGxpbmVOdW1iZXJGcm9tU3RhY2tNZXNzYWdlKHN0YWNrTWVzc2FnZSksXG4gICAgICAgIGxvZ01lc3NhZ2UgPSBgJHtsZXZlbH0ke2N1cnJlbnREYXRlQW5kVGltZVN0cmluZ30gJHtmaWxlUGF0aH0oJHtsaW5lTnVtYmVyfSkgJHttZXNzYWdlfWA7XG5cbiAgY29uc29sZS5sb2cobG9nTWVzc2FnZSk7XG5cbiAgaWYgKGxvZ0RpcmVjdG9yeVBhdGggIT09IG51bGwpIHtcbiAgICByb2xsT3ZlckxvZ0ZpbGUoKTtcblxuICAgIGNvbnN0IGxvZ0ZpbGVQYXRoID0gZ2V0TG9nRmlsZVBhdGgoKSxcbiAgICAgICAgICBsb2dGaWxlQ29udGVudCA9IGAke2xvZ01lc3NhZ2V9XFxuYDtcblxuICAgIGFwcGVuZFRvRmlsZShsb2dGaWxlUGF0aCwgbG9nRmlsZUNvbnRlbnQpO1xuICB9XG5cbiAgcmV0dXJuIGxvZ01lc3NhZ2U7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbG9nXG59XG5cbmZ1bmN0aW9uIHRyYWNlKG1lc3NhZ2UpIHsgcmV0dXJuIGxvZyhtZXNzYWdlLCBUUkFDRV9MRVZFTCk7IH1cblxuZnVuY3Rpb24gZGVidWcobWVzc2FnZSkgeyByZXR1cm4gbG9nKG1lc3NhZ2UsIERFQlVHX0xFVkVMKTsgfVxuXG5mdW5jdGlvbiBpbmZvKG1lc3NhZ2UpIHsgcmV0dXJuIGxvZyhtZXNzYWdlLCBJTkZPX0xFVkVMKTsgfVxuXG5mdW5jdGlvbiB3YXJuaW5nKG1lc3NhZ2UpIHsgcmV0dXJuIGxvZyhtZXNzYWdlLCBXQVJOSU5HX0xFVkVMKTsgfVxuXG5mdW5jdGlvbiBlcnJvcihtZXNzYWdlKSB7IHJldHVybiBsb2cobWVzc2FnZSwgRVJST1JfTEVWRUwpOyB9XG5cbmZ1bmN0aW9uIGZhdGFsKG1lc3NhZ2UpIHsgcmV0dXJuIGxvZyhtZXNzYWdlLCBGQVRBTF9MRVZFTCk7IH1cblxuZnVuY3Rpb24gc2V0TG9nTGV2ZWwobGV2ZWwpIHsgbG9nTGV2ZWwgPSBsZXZlbDsgfVxuXG5mdW5jdGlvbiBzZXRMb2dGaWxlQmFzZU5hbWUoZmlsZUJhc2VOYW1lKSB7IGxvZ0ZpbGVCYXNlTmFtZSA9IGZpbGVCYXNlTmFtZTsgfVxuXG5mdW5jdGlvbiBzZXRMb2dEaXJlY3RvcnlQYXRoKGRpcmVjdG9yeVBhdGgpIHsgbG9nRGlyZWN0b3J5UGF0aCA9IGRpcmVjdG9yeVBhdGg7IH1cblxuZnVuY3Rpb24gc2V0TG9nT3B0aW9ucyhsb2dPcHRpb25zKSB7XG4gIGNvbnN0IHsgbGV2ZWwsIGZpbGVCYXNlTmFtZSwgZGlyZWN0b3J5UGF0aCB9ID0gbG9nT3B0aW9ucztcblxuICBzZXRMb2dMZXZlbChsZXZlbCk7XG5cbiAgc2V0TG9nRmlsZUJhc2VOYW1lKGZpbGVCYXNlTmFtZSk7XG5cbiAgc2V0TG9nRGlyZWN0b3J5UGF0aChkaXJlY3RvcnlQYXRoKTtcbn1cblxuZnVuY3Rpb24gZ2V0TG9nRmlsZUNvbnRlbnQoKSB7XG4gIGNvbnN0IGxvZ0ZpbGVQYXRoID0gZ2V0TG9nRmlsZVBhdGgoKSxcbiAgICAgICAgbG9nRmlsZUNvbnRlbnQgPSByZWFkRmlsZShsb2dGaWxlUGF0aCk7XG5cbiAgcmV0dXJuIGxvZ0ZpbGVDb250ZW50O1xufVxuXG5PYmplY3QuYXNzaWduKGxvZywge1xuICBUUkFDRV9MRVZFTCxcbiAgREVCVUdfTEVWRUwsXG4gIElORk9fTEVWRUwsXG4gIFdBUk5JTkdfTEVWRUwsXG4gIEVSUk9SX0xFVkVMLFxuICBGQVRBTF9MRVZFTCxcbiAgdHJhY2UsXG4gIGRlYnVnLFxuICBpbmZvLFxuICB3YXJuaW5nLFxuICBlcnJvcixcbiAgZmF0YWwsXG4gIHNldExvZ0xldmVsLFxuICBzZXRMb2dGaWxlQmFzZU5hbWUsXG4gIHNldExvZ0RpcmVjdG9yeVBhdGgsXG4gIHNldExvZ09wdGlvbnMsXG4gIGdldExvZ0ZpbGVDb250ZW50XG59KTtcblxuZnVuY3Rpb24gZ2V0TG9nRmlsZVBhdGgoKSB7XG4gIGNvbnN0IGxvZ0ZpbGVOYW1lID0gYCR7bG9nRmlsZUJhc2VOYW1lfS5sb2dgLFxuICAgICAgICBsb2dGaWxlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMobG9nRGlyZWN0b3J5UGF0aCwgbG9nRmlsZU5hbWUpO1xuXG4gIHJldHVybiBsb2dGaWxlUGF0aDtcbn1cblxuZnVuY3Rpb24gZ2V0Um9sbGVkT3ZlckxvZ0ZpbGVQYXRoKCkge1xuICBjb25zdCBjdXJyZW50RGF0ZVN0cmluZyA9IGdldEN1cnJlbnREYXRlU3RyaW5nKCksXG4gICAgICAgIHJvbGxlZE92ZXJMb2dGaWxlTmFtZSA9IGAke2xvZ0ZpbGVCYXNlTmFtZX0uJHtjdXJyZW50RGF0ZVN0cmluZ30ubG9nYCxcbiAgICAgICAgcm9sbGVkT3ZlckxvZ0ZpbGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhsb2dEaXJlY3RvcnlQYXRoLCByb2xsZWRPdmVyTG9nRmlsZU5hbWUpO1xuXG4gIHJldHVybiByb2xsZWRPdmVyTG9nRmlsZVBhdGg7XG59XG5cbmZ1bmN0aW9uIGdldExvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlKCkge1xuICBjb25zdCBsb2dGaWxlUGF0aCA9IGdldExvZ0ZpbGVQYXRoKCksXG4gICAgICAgIGxvZ0ZpbGVTdGF0cyA9IGdldFN0YXRzKGxvZ0ZpbGVQYXRoKSxcbiAgICAgICAgeyBtdGltZSB9ID0gbG9nRmlsZVN0YXRzLFxuICAgICAgICBsb2dGaWxlTGFzdE1vZGlmaWVkRGF0ZSA9IG5ldyBEYXRlKG10aW1lKTsgIC8vL1xuXG4gIHJldHVybiBsb2dGaWxlTGFzdE1vZGlmaWVkRGF0ZTtcbn1cblxuZnVuY3Rpb24gcm9sbE92ZXJMb2dGaWxlKCkge1xuICBjb25zdCBsb2dGaWxlUGF0aCA9IGdldExvZ0ZpbGVQYXRoKCksXG4gICAgICAgIGxvZ0ZpbGVFeGlzdHMgPSBjaGVja0ZpbGVFeGlzdHMobG9nRmlsZVBhdGgpO1xuXG4gIGlmICghbG9nRmlsZUV4aXN0cykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGxvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlID0gZ2V0TG9nRmlsZUxhc3RNb2RpZmllZERhdGUoKSxcbiAgICAgICAgbG9nRmlsZUxhc3RNb2RpZmllZERhdGVDdXJyZW50RGF0ZSA9IGlzRGF0ZUN1cnJlbnREYXRlKGxvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlKTtcblxuICBpZiAoIWxvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlQ3VycmVudERhdGUpIHtcbiAgICBjb25zdCByb2xsZWRPdmVyTG9nRmlsZVBhdGggPSBnZXRSb2xsZWRPdmVyTG9nRmlsZVBhdGgoKTtcblxuICAgIHJlbmFtZUZpbGUobG9nRmlsZVBhdGgsIHJvbGxlZE92ZXJMb2dGaWxlUGF0aCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNEYXRlQ3VycmVudERhdGUoZGF0ZSkge1xuICBjb25zdCBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCksXG4gICAgICAgIGRhdGVTdHJpbmcgPSBkYXRlLnRvRGF0ZVN0cmluZygpLFxuICAgICAgICBjdXJyZW50RGF0ZVN0cmluZyA9IGN1cnJlbnREYXRlLnRvRGF0ZVN0cmluZygpLFxuICAgICAgICBkYXRlQ3VycmVudERhdGUgPSAoZGF0ZVN0cmluZyA9PT0gY3VycmVudERhdGVTdHJpbmcpO1xuXG4gIHJldHVybiBkYXRlQ3VycmVudERhdGU7XG59XG5cbmZ1bmN0aW9uIGdldEN1cnJlbnREYXRlU3RyaW5nKCkge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoKSxcbiAgICAgICAgZGF5ID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0RGF0ZSgpLCAyKSwgIC8vL1xuICAgICAgICBtb250aCA9IHBhZFN0YXJ0V2l0aFplcm9lcyhkYXRlLmdldE1vbnRoKCkgKyAxLCAyKSwgLy8vXG4gICAgICAgIHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCksXG4gICAgICAgIGN1cnJlbnREYXRlQW5kVGltZVN0cmluZyA9IGAke2RheX0tJHttb250aH0tJHt5ZWFyfWA7XG5cbiAgcmV0dXJuIGN1cnJlbnREYXRlQW5kVGltZVN0cmluZztcbn1cblxuZnVuY3Rpb24gZ2V0Q3VycmVudERhdGVBbmRUaW1lU3RyaW5nKCkge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoKSxcbiAgICAgICAgZGF5ID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0RGF0ZSgpLCAyKSwgIC8vL1xuICAgICAgICBtb250aCA9IHBhZFN0YXJ0V2l0aFplcm9lcyhkYXRlLmdldE1vbnRoKCkgKyAxLCAyKSwgLy8vXG4gICAgICAgIHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCksXG4gICAgICAgIGhvdXJzID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0SG91cnMoKSwgMiksXG4gICAgICAgIG1pbnV0ZXMgPSBwYWRTdGFydFdpdGhaZXJvZXMoZGF0ZS5nZXRNaW51dGVzKCksIDIpLFxuICAgICAgICBzZWNvbmRzID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0U2Vjb25kcygpLCAyKSxcbiAgICAgICAgbWlsbGlzZWNvbmRzID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0TWlsbGlzZWNvbmRzKCksIDMpLFxuICAgICAgICBjdXJyZW50RGF0ZUFuZFRpbWVTdHJpbmcgPSBgJHtkYXl9LSR7bW9udGh9LSR7eWVhcn0gJHtob3Vyc306JHttaW51dGVzfToke3NlY29uZHN9LiR7bWlsbGlzZWNvbmRzfWA7XG5cbiAgcmV0dXJuIGN1cnJlbnREYXRlQW5kVGltZVN0cmluZztcbn1cblxuZnVuY3Rpb24gc3RhY2tNZXNzYWdlc0Zyb21TdGFjayhzdGFjaykge1xuICBjb25zdCBzdGFja01lc3NhZ2VzID0gW10sXG4gICAgICAgIHN0YWNrTGluZXMgPSBzdGFjay5zcGxpdCgvXFxyXFxufFxcbi8pO1xuXG4gIGxldCBzdGFja01lc3NhZ2UgPSBFTVBUWV9TVFJJTkc7XG5cbiAgc3RhY2tMaW5lcy5mb3JFYWNoKChzdGFja0xpbmUpID0+IHtcbiAgICBjb25zdCBtYXRjaGVzID0gL15cXHMqYXQuKi8udGVzdChzdGFja0xpbmUpO1xuXG4gICAgc3RhY2tNZXNzYWdlID0gKHN0YWNrTWVzc2FnZSA9PT0gRU1QVFlfU1RSSU5HKSA/XG4gICAgICAgICAgICAgICAgICAgICAgc3RhY2tMaW5lIDpcbiAgICAgICAgICAgICAgICAgICAgICAgIGAke3N0YWNrTWVzc2FnZX1cXG4ke3N0YWNrTGluZX1gO1xuXG4gICAgaWYgKG1hdGNoZXMpIHtcbiAgICAgIHN0YWNrTWVzc2FnZXMucHVzaChzdGFja01lc3NhZ2UpO1xuXG4gICAgICBzdGFja01lc3NhZ2UgPSBFTVBUWV9TVFJJTkc7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gc3RhY2tNZXNzYWdlcztcbn1cblxuZnVuY3Rpb24gZmlsZVBhdGhGcm9tU3RhY2tNZXNzYWdlKHN0YWNrTWVzc2FnZSkge1xuICBjb25zdCBtYXRjaGVzID0gc3RhY2tNZXNzYWdlLm1hdGNoKC8oXFwvLispOlxcZCs6XFxkKy9tKSxcbiAgICAgICAgc2Vjb25kTWF0Y2ggPSBzZWNvbmQobWF0Y2hlcyksXG4gICAgICAgIGFic29sdXRlRmlsZVBhdGggPSBzZWNvbmRNYXRjaCwgIC8vL1xuICAgICAgICBjdXJyZW50V29ya2luZ0RpcmVjdG9yeVBhdGggPSBwYXRoLnJlc29sdmUoXCIuXCIpLCAgLy8vXG4gICAgICAgIGN1cnJlbnRXb3JraW5nRGlyZWN0b3J5UGF0aExlbmd0aCA9IGN1cnJlbnRXb3JraW5nRGlyZWN0b3J5UGF0aC5sZW5ndGgsXG4gICAgICAgIHN0YXJ0ID0gY3VycmVudFdvcmtpbmdEaXJlY3RvcnlQYXRoTGVuZ3RoICsgMSwgIC8vL1xuICAgICAgICBmaWxlUGF0aCA9IGFic29sdXRlRmlsZVBhdGguc3Vic3RyKHN0YXJ0KTtcblxuICByZXR1cm4gZmlsZVBhdGg7XG59XG5cbmZ1bmN0aW9uIGxpbmVOdW1iZXJGcm9tU3RhY2tNZXNzYWdlKHN0YWNrTWVzc2FnZSkge1xuICBjb25zdCBtYXRjaGVzID0gc3RhY2tNZXNzYWdlLm1hdGNoKC86KFxcZCspL20pLFxuICAgICAgICBzZWNvbmRNYXRjaCA9IHNlY29uZChtYXRjaGVzKSxcbiAgICAgICAgbGluZU51bWJlciA9IHNlY29uZE1hdGNoOyAvLy9cblxuICByZXR1cm4gbGluZU51bWJlcjtcbn1cblxuZnVuY3Rpb24gcGFkU3RhcnRXaXRoWmVyb2VzKHN0cmluZywgdGFyZ2V0TGVuZ3RoKSB7XG4gIGNvbnN0IHBhZFN0cmluZyA9IFwiMFwiLFxuICAgICAgICBwYWRkZWRTdHJpbmcgPSBwYWRTdGFydChzdHJpbmcsIHRhcmdldExlbmd0aCwgcGFkU3RyaW5nKTtcblxuICByZXR1cm4gcGFkZGVkU3RyaW5nO1xufVxuXG5mdW5jdGlvbiBwYWRTdGFydChzdHJpbmcsIHRhcmdldExlbmd0aCwgcGFkU3RyaW5nKSB7XG4gIGxldCBwYWRkaW5nID0gRU1QVFlfU1RSSU5HO1xuXG4gIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0YXJnZXRMZW5ndGg7IGluZGV4KyspIHtcbiAgICBwYWRkaW5nICs9IHBhZFN0cmluZztcbiAgfVxuXG4gIGNvbnN0IHBhZGRlZFN0cmluZyA9IGAke3BhZGRpbmd9JHtzdHJpbmd9YC5zdWJzdHIoLXRhcmdldExlbmd0aCk7XG5cbiAgcmV0dXJuIHBhZGRlZFN0cmluZztcbn1cbiJdLCJuYW1lcyI6WyJsb2ciLCJsZXZlbHMiLCJsb2dMZXZlbCIsImxvZ0ZpbGVCYXNlTmFtZSIsImxvZ0RpcmVjdG9yeVBhdGgiLCJtZXNzYWdlT3JFcnJvciIsImxldmVsIiwic2FsaWVudFN0YWNrTWVzc2FnZUluZGV4IiwibGV2ZWxJbmRleCIsImluZGV4T2YiLCJsb2dMZXZlbEluZGV4IiwiZXJyb3IiLCJtZXNzYWdlIiwiRXJyb3IiLCJzdGFjayIsInN0YWNrTWVzc2FnZXMiLCJzdGFja01lc3NhZ2VzRnJvbVN0YWNrIiwicGVydGluZW50U3RhY2tNZXNzYWdlIiwic3RhY2tNZXNzYWdlIiwiY3VycmVudERhdGVBbmRUaW1lU3RyaW5nIiwiZ2V0Q3VycmVudERhdGVBbmRUaW1lU3RyaW5nIiwiZmlsZVBhdGgiLCJmaWxlUGF0aEZyb21TdGFja01lc3NhZ2UiLCJsaW5lTnVtYmVyIiwibGluZU51bWJlckZyb21TdGFja01lc3NhZ2UiLCJsb2dNZXNzYWdlIiwiY29uc29sZSIsInJvbGxPdmVyTG9nRmlsZSIsImxvZ0ZpbGVQYXRoIiwiZ2V0TG9nRmlsZVBhdGgiLCJsb2dGaWxlQ29udGVudCIsInRyYWNlIiwiZGVidWciLCJpbmZvIiwid2FybmluZyIsImZhdGFsIiwic2V0TG9nTGV2ZWwiLCJzZXRMb2dGaWxlQmFzZU5hbWUiLCJmaWxlQmFzZU5hbWUiLCJzZXRMb2dEaXJlY3RvcnlQYXRoIiwiZGlyZWN0b3J5UGF0aCIsInNldExvZ09wdGlvbnMiLCJsb2dPcHRpb25zIiwiZ2V0TG9nRmlsZUNvbnRlbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJUUkFDRV9MRVZFTCIsIkRFQlVHX0xFVkVMIiwiSU5GT19MRVZFTCIsIldBUk5JTkdfTEVWRUwiLCJFUlJPUl9MRVZFTCIsIkZBVEFMX0xFVkVMIiwibG9nRmlsZU5hbWUiLCJnZXRSb2xsZWRPdmVyTG9nRmlsZVBhdGgiLCJjdXJyZW50RGF0ZVN0cmluZyIsImdldEN1cnJlbnREYXRlU3RyaW5nIiwicm9sbGVkT3ZlckxvZ0ZpbGVOYW1lIiwicm9sbGVkT3ZlckxvZ0ZpbGVQYXRoIiwiZ2V0TG9nRmlsZUxhc3RNb2RpZmllZERhdGUiLCJsb2dGaWxlU3RhdHMiLCJtdGltZSIsImxvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlIiwiRGF0ZSIsImxvZ0ZpbGVFeGlzdHMiLCJsb2dGaWxlTGFzdE1vZGlmaWVkRGF0ZUN1cnJlbnREYXRlIiwiaXNEYXRlQ3VycmVudERhdGUiLCJkYXRlIiwiY3VycmVudERhdGUiLCJkYXRlU3RyaW5nIiwidG9EYXRlU3RyaW5nIiwiZGF0ZUN1cnJlbnREYXRlIiwiZGF5IiwicGFkU3RhcnRXaXRoWmVyb2VzIiwiZ2V0RGF0ZSIsIm1vbnRoIiwiZ2V0TW9udGgiLCJ5ZWFyIiwiZ2V0RnVsbFllYXIiLCJob3VycyIsImdldEhvdXJzIiwibWludXRlcyIsImdldE1pbnV0ZXMiLCJzZWNvbmRzIiwiZ2V0U2Vjb25kcyIsIm1pbGxpc2Vjb25kcyIsImdldE1pbGxpc2Vjb25kcyIsInN0YWNrTGluZXMiLCJzcGxpdCIsImZvckVhY2giLCJzdGFja0xpbmUiLCJtYXRjaGVzIiwidGVzdCIsInB1c2giLCJtYXRjaCIsInNlY29uZE1hdGNoIiwiYWJzb2x1dGVGaWxlUGF0aCIsImN1cnJlbnRXb3JraW5nRGlyZWN0b3J5UGF0aCIsInJlc29sdmUiLCJjdXJyZW50V29ya2luZ0RpcmVjdG9yeVBhdGhMZW5ndGgiLCJsZW5ndGgiLCJzdGFydCIsInN1YnN0ciIsInN0cmluZyIsInRhcmdldExlbmd0aCIsInBhZFN0cmluZyIsInBhZGRlZFN0cmluZyIsInBhZFN0YXJ0IiwicGFkZGluZyIsImluZGV4Il0sIm1hcHBpbmdzIjoiQUFBQSxDQUFZOzs7O1FBd0JJQSxHQUFHLEdBQUhBLEdBQUc7O0FBdEJGLEdBQU0sQ0FBTixLQUFNO0FBRUEsR0FBb0IsQ0FBcEIsTUFBb0I7QUFDZCxHQUFjLENBQWQsVUFBYztBQUNWLEdBQW1CLENBQW5CLE1BQW1CO0FBQzBCLEdBQXlCLENBQXpCLFdBQXlCO0FBQ2IsR0FBYSxDQUFiLFNBQWE7QUFDVCxHQUFXLENBQVgsT0FBVzs7Ozs7Ozs7Ozs7OztBQUV6RyxHQUFLLENBQUNDLE1BQU0sR0FBRyxDQUFDO0lBRjhFLE9BQVc7SUFBWCxPQUFXO0lBQVgsT0FBVztJQUFYLE9BQVc7SUFBWCxPQUFXO0lBQVgsT0FBVztBQVN6RyxDQUFDO0FBRUQsR0FBRyxDQUFDQyxRQUFRLEdBWjhFLFNBQWEsb0JBYW5HQyxlQUFlLEdBYnVFLFNBQWEsNkJBY25HQyxnQkFBZ0IsR0Fkc0UsU0FBYTtTQWdCdkZKLEdBQUcsQ0FBQ0ssY0FBYyxFQUFFQyxLQUFvQixFQUFFLENBQUM7UUFBdkJBLEtBQUssR0FBTEEsS0FBb0IsY0FuQjNCLFVBQWMsZ0JBbUJQQSxLQUFvQjtJQUN0RCxHQUFHLENBQUNDLHdCQUF3QixHQUFHLENBQUM7SUFFaEMsRUFBRSxFQUFFRCxLQUFLLEtBdEJrQixVQUFjLGVBc0JiLENBQUM7UUFDM0IsR0FBSyxDQUFDRSxVQUFVLEdBQUdQLE1BQU0sQ0FBQ1EsT0FBTyxDQUFDSCxLQUFLLEdBQ2pDSSxhQUFhLEdBQUdULE1BQU0sQ0FBQ1EsT0FBTyxDQUFDUCxRQUFRO1FBRTdDLEVBQUUsRUFBRU0sVUFBVSxHQUFHRSxhQUFhLEVBQUUsQ0FBQztZQUMvQixNQUFNO1FBQ1IsQ0FBQztRQUVESCx3QkFBd0IsSUFBSSxDQUFDO1FBRTdCRCxLQUFLLEdBQUksQ0FBQSxFQUFRLE1BQUMsQ0FBUEEsS0FBSyxFQUFDLENBQUMsSUFBSSxDQUFHLEFBQUgsRUFBRyxBQUFILENBQUc7SUFDM0IsQ0FBQztJQUVELEdBQUcsQ0FBQ0ssS0FBSyxFQUNMQyxPQUFPO0lBRVgsRUFBRSxFQUFFUCxXQUErQixDQUEvQkEsY0FBYyxFQUFZUSxLQUFLLEdBQUUsQ0FBQztRQUNwQ0YsS0FBSyxHQUFHTixjQUFjLENBQUUsQ0FBRyxBQUFILEVBQUcsQUFBSCxDQUFHO1FBRXhCTyxPQUFPLEdBQUtELEtBQUssQ0FBakJDLE9BQU87SUFDWixDQUFDLE1BQU0sQ0FBQztRQUNOQSxPQUFPLEdBQUdQLGNBQWMsQ0FBRSxDQUFHLEFBQUgsRUFBRyxBQUFILENBQUc7UUFFN0JNLEtBQUssR0FBRyxHQUFHLENBQUNFLEtBQUssQ0FBQ0QsT0FBTztJQUMzQixDQUFDO0lBRUQsR0FBSyxDQUFHRSxLQUFLLEdBQUtILEtBQUssQ0FBZkcsS0FBSyxFQUNQQyxhQUFhLEdBQUdDLHNCQUFzQixDQUFDRixLQUFLLEdBQzVDRyxxQkFBcUIsR0FBR0YsYUFBYSxDQUFDUix3QkFBd0IsR0FDOURXLFlBQVksR0FBR0QscUJBQXFCLEVBQ3BDRSx3QkFBd0IsR0FBR0MsMkJBQTJCLElBQ3REQyxRQUFRLEdBQUdDLHdCQUF3QixDQUFDSixZQUFZLEdBQ2hESyxVQUFVLEdBQUdDLDBCQUEwQixDQUFDTixZQUFZLEdBQ3BETyxVQUFVLEdBQUksQ0FBQSxFQUFVTixNQUF3QixDQUFoQ2IsS0FBSyxFQUErQmUsTUFBUSxDQUFwQ0Ysd0JBQXdCLEVBQUMsQ0FBQyxJQUFjSSxNQUFVLENBQXRCRixRQUFRLEVBQUMsQ0FBQyxJQUFpQlQsTUFBTyxDQUF0QlcsVUFBVSxFQUFDLENBQUUsS0FBVSxNQUFBLENBQVJYLE9BQU87SUFFNUZjLE9BQU8sQ0FBQzFCLEdBQUcsQ0FBQ3lCLFVBQVU7SUFFdEIsRUFBRSxFQUFFckIsZ0JBQWdCLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDOUJ1QixlQUFlO1FBRWYsR0FBSyxDQUFDQyxXQUFXLEdBQUdDLGNBQWMsSUFDNUJDLGNBQWMsR0FBSSxDQUFBLEVBQWEsTUFBRSxDQUFiTCxVQUFVLEVBQUMsQ0FBRTtZQTdEbUMsV0FBeUIsZUErRHRGRyxXQUFXLEVBQUVFLGNBQWM7SUFDMUMsQ0FBQztJQUVELE1BQU0sQ0FBQ0wsVUFBVTtBQUNuQixDQUFDO2VBRWMsQ0FBQztJQUNkekIsR0FBRyxFQUFIQSxHQUFHO0FBQ0wsQ0FBQzs7U0FFUStCLEtBQUssQ0FBQ25CLE9BQU8sRUFBRSxDQUFDO0lBQUMsTUFBTSxDQUFDWixHQUFHLENBQUNZLE9BQU8sRUF2RWtELE9BQVc7QUF1RTdDLENBQUM7U0FFcERvQixLQUFLLENBQUNwQixPQUFPLEVBQUUsQ0FBQztJQUFDLE1BQU0sQ0FBQ1osR0FBRyxDQUFDWSxPQUFPLEVBekVrRCxPQUFXO0FBeUU3QyxDQUFDO1NBRXBEcUIsSUFBSSxDQUFDckIsT0FBTyxFQUFFLENBQUM7SUFBQyxNQUFNLENBQUNaLEdBQUcsQ0FBQ1ksT0FBTyxFQTNFbUQsT0FBVztBQTJFL0MsQ0FBQztTQUVsRHNCLE9BQU8sQ0FBQ3RCLE9BQU8sRUFBRSxDQUFDO0lBQUMsTUFBTSxDQUFDWixHQUFHLENBQUNZLE9BQU8sRUE3RWdELE9BQVc7QUE2RXpDLENBQUM7U0FFeERELE1BQUssQ0FBQ0MsT0FBTyxFQUFFLENBQUM7SUFBQyxNQUFNLENBQUNaLEdBQUcsQ0FBQ1ksT0FBTyxFQS9Fa0QsT0FBVztBQStFN0MsQ0FBQztTQUVwRHVCLEtBQUssQ0FBQ3ZCLE9BQU8sRUFBRSxDQUFDO0lBQUMsTUFBTSxDQUFDWixHQUFHLENBQUNZLE9BQU8sRUFqRmtELE9BQVc7QUFpRjdDLENBQUM7U0FFcER3QixXQUFXLENBQUM5QixLQUFLLEVBQUUsQ0FBQztJQUFDSixRQUFRLEdBQUdJLEtBQUs7QUFBRSxDQUFDO1NBRXhDK0Isa0JBQWtCLENBQUNDLFlBQVksRUFBRSxDQUFDO0lBQUNuQyxlQUFlLEdBQUdtQyxZQUFZO0FBQUUsQ0FBQztTQUVwRUMsbUJBQW1CLENBQUNDLGFBQWEsRUFBRSxDQUFDO0lBQUNwQyxnQkFBZ0IsR0FBR29DLGFBQWE7QUFBRSxDQUFDO1NBRXhFQyxhQUFhLENBQUNDLFVBQVUsRUFBRSxDQUFDO0lBQ2xDLEdBQUssQ0FBR3BDLEtBQUssR0FBa0NvQyxVQUFVLENBQWpEcEMsS0FBSyxFQUFFZ0MsWUFBWSxHQUFvQkksVUFBVSxDQUExQ0osWUFBWSxFQUFFRSxhQUFhLEdBQUtFLFVBQVUsQ0FBNUJGLGFBQWE7SUFFMUNKLFdBQVcsQ0FBQzlCLEtBQUs7SUFFakIrQixrQkFBa0IsQ0FBQ0MsWUFBWTtJQUUvQkMsbUJBQW1CLENBQUNDLGFBQWE7QUFDbkMsQ0FBQztTQUVRRyxpQkFBaUIsR0FBRyxDQUFDO0lBQzVCLEdBQUssQ0FBQ2YsV0FBVyxHQUFHQyxjQUFjLElBQzVCQyxjQUFjLE9Bdkd3RCxXQUF5QixXQXVHckVGLFdBQVc7SUFFM0MsTUFBTSxDQUFDRSxjQUFjO0FBQ3ZCLENBQUM7QUFFRGMsTUFBTSxDQUFDQyxNQUFNLENBQUM3QyxHQUFHLEVBQUUsQ0FBQztJQUNsQjhDLFdBQVcsRUEzR2lGLE9BQVc7SUE0R3ZHQyxXQUFXLEVBNUdpRixPQUFXO0lBNkd2R0MsVUFBVSxFQTdHa0YsT0FBVztJQThHdkdDLGFBQWEsRUE5RytFLE9BQVc7SUErR3ZHQyxXQUFXLEVBL0dpRixPQUFXO0lBZ0h2R0MsV0FBVyxFQWhIaUYsT0FBVztJQWlIdkdwQixLQUFLLEVBQUxBLEtBQUs7SUFDTEMsS0FBSyxFQUFMQSxLQUFLO0lBQ0xDLElBQUksRUFBSkEsSUFBSTtJQUNKQyxPQUFPLEVBQVBBLE9BQU87SUFDUHZCLEtBQUssRUFBTEEsTUFBSztJQUNMd0IsS0FBSyxFQUFMQSxLQUFLO0lBQ0xDLFdBQVcsRUFBWEEsV0FBVztJQUNYQyxrQkFBa0IsRUFBbEJBLGtCQUFrQjtJQUNsQkUsbUJBQW1CLEVBQW5CQSxtQkFBbUI7SUFDbkJFLGFBQWEsRUFBYkEsYUFBYTtJQUNiRSxpQkFBaUIsRUFBakJBLGlCQUFpQjtBQUNuQixDQUFDO1NBRVFkLGNBQWMsR0FBRyxDQUFDO0lBQ3pCLEdBQUssQ0FBQ3VCLFdBQVcsR0FBSSxDQUFBLEVBQWtCLE1BQUksQ0FBcEJqRCxlQUFlLEVBQUMsQ0FBSSxRQUNyQ3lCLFdBQVcsT0FuSWMsTUFBbUIsbUJBbUlieEIsZ0JBQWdCLEVBQUVnRCxXQUFXO0lBRWxFLE1BQU0sQ0FBQ3hCLFdBQVc7QUFDcEIsQ0FBQztTQUVReUIsd0JBQXdCLEdBQUcsQ0FBQztJQUNuQyxHQUFLLENBQUNDLGlCQUFpQixHQUFHQyxvQkFBb0IsSUFDeENDLHFCQUFxQixHQUFJLENBQUEsRUFBcUJGLE1BQWlCLENBQXBDbkQsZUFBZSxFQUFDLENBQUMsSUFBb0IsTUFBSSxDQUF0Qm1ELGlCQUFpQixFQUFDLENBQUksUUFDcEVHLHFCQUFxQixPQTNJSSxNQUFtQixtQkEySUhyRCxnQkFBZ0IsRUFBRW9ELHFCQUFxQjtJQUV0RixNQUFNLENBQUNDLHFCQUFxQjtBQUM5QixDQUFDO1NBRVFDLDBCQUEwQixHQUFHLENBQUM7SUFDckMsR0FBSyxDQUFDOUIsV0FBVyxHQUFHQyxjQUFjLElBQzVCOEIsWUFBWSxPQWpKMEQsV0FBeUIsV0FpSnZFL0IsV0FBVyxHQUNqQ2dDLEtBQUssR0FBS0QsWUFBWSxDQUF0QkMsS0FBSyxFQUNQQyx1QkFBdUIsR0FBRyxHQUFHLENBQUNDLElBQUksQ0FBQ0YsS0FBSyxFQUFJLENBQUcsQUFBSCxFQUFHLEFBQUgsQ0FBRztJQUVyRCxNQUFNLENBQUNDLHVCQUF1QjtBQUNoQyxDQUFDO1NBRVFsQyxlQUFlLEdBQUcsQ0FBQztJQUMxQixHQUFLLENBQUNDLFdBQVcsR0FBR0MsY0FBYyxJQUM1QmtDLGFBQWEsT0ExSnlELFdBQXlCLGtCQTBKL0RuQyxXQUFXO0lBRWpELEVBQUUsR0FBR21DLGFBQWEsRUFBRSxDQUFDO1FBQ25CLE1BQU07SUFDUixDQUFDO0lBRUQsR0FBSyxDQUFDRix1QkFBdUIsR0FBR0gsMEJBQTBCLElBQ3BETSxrQ0FBa0MsR0FBR0MsaUJBQWlCLENBQUNKLHVCQUF1QjtJQUVwRixFQUFFLEdBQUdHLGtDQUFrQyxFQUFFLENBQUM7UUFDeEMsR0FBSyxDQUFDUCxxQkFBcUIsR0FBR0osd0JBQXdCO1lBcEtvQixXQUF5QixhQXNLeEZ6QixXQUFXLEVBQUU2QixxQkFBcUI7SUFDL0MsQ0FBQztBQUNILENBQUM7U0FFUVEsaUJBQWlCLENBQUNDLElBQUksRUFBRSxDQUFDO0lBQ2hDLEdBQUssQ0FBQ0MsV0FBVyxHQUFHLEdBQUcsQ0FBQ0wsSUFBSSxJQUN0Qk0sVUFBVSxHQUFHRixJQUFJLENBQUNHLFlBQVksSUFDOUJmLGlCQUFpQixHQUFHYSxXQUFXLENBQUNFLFlBQVksSUFDNUNDLGVBQWUsR0FBSUYsVUFBVSxLQUFLZCxpQkFBaUI7SUFFekQsTUFBTSxDQUFDZ0IsZUFBZTtBQUN4QixDQUFDO1NBRVFmLG9CQUFvQixHQUFHLENBQUM7SUFDL0IsR0FBSyxDQUFDVyxJQUFJLEdBQUcsR0FBRyxDQUFDSixJQUFJLElBQ2ZTLEdBQUcsR0FBR0Msa0JBQWtCLENBQUNOLElBQUksQ0FBQ08sT0FBTyxJQUFJLENBQUMsR0FDMUNDLEtBQUssR0FBR0Ysa0JBQWtCLENBQUNOLElBQUksQ0FBQ1MsUUFBUSxLQUFLLENBQUMsRUFBRSxDQUFDLEdBQ2pEQyxJQUFJLEdBQUdWLElBQUksQ0FBQ1csV0FBVyxJQUN2QjFELHdCQUF3QixHQUFJLENBQUEsRUFBU3VELE1BQUssQ0FBWkgsR0FBRyxFQUFDLENBQUMsSUFBV0ssTUFBSSxDQUFiRixLQUFLLEVBQUMsQ0FBQyxJQUFPLE1BQUEsQ0FBTEUsSUFBSTtJQUV4RCxNQUFNLENBQUN6RCx3QkFBd0I7QUFDakMsQ0FBQztTQUVRQywyQkFBMkIsR0FBRyxDQUFDO0lBQ3RDLEdBQUssQ0FBQzhDLElBQUksR0FBRyxHQUFHLENBQUNKLElBQUksSUFDZlMsR0FBRyxHQUFHQyxrQkFBa0IsQ0FBQ04sSUFBSSxDQUFDTyxPQUFPLElBQUksQ0FBQyxHQUMxQ0MsS0FBSyxHQUFHRixrQkFBa0IsQ0FBQ04sSUFBSSxDQUFDUyxRQUFRLEtBQUssQ0FBQyxFQUFFLENBQUMsR0FDakRDLElBQUksR0FBR1YsSUFBSSxDQUFDVyxXQUFXLElBQ3ZCQyxLQUFLLEdBQUdOLGtCQUFrQixDQUFDTixJQUFJLENBQUNhLFFBQVEsSUFBSSxDQUFDLEdBQzdDQyxPQUFPLEdBQUdSLGtCQUFrQixDQUFDTixJQUFJLENBQUNlLFVBQVUsSUFBSSxDQUFDLEdBQ2pEQyxPQUFPLEdBQUdWLGtCQUFrQixDQUFDTixJQUFJLENBQUNpQixVQUFVLElBQUksQ0FBQyxHQUNqREMsWUFBWSxHQUFHWixrQkFBa0IsQ0FBQ04sSUFBSSxDQUFDbUIsZUFBZSxJQUFJLENBQUMsR0FDM0RsRSx3QkFBd0IsR0FBSSxDQUFBLEVBQVN1RCxNQUFLLENBQVpILEdBQUcsRUFBQyxDQUFDLElBQVdLLE1BQUksQ0FBYkYsS0FBSyxFQUFDLENBQUMsSUFBVUksTUFBSyxDQUFiRixJQUFJLEVBQUMsQ0FBQyxJQUFXSSxNQUFPLENBQWhCRixLQUFLLEVBQUMsQ0FBQyxJQUFhSSxNQUFPLENBQWxCRixPQUFPLEVBQUMsQ0FBQyxJQUFhSSxNQUFZLENBQXZCRixPQUFPLEVBQUMsQ0FBQyxJQUFlLE1BQUEsQ0FBYkUsWUFBWTtJQUV2RyxNQUFNLENBQUNqRSx3QkFBd0I7QUFDakMsQ0FBQztTQUVRSCxzQkFBc0IsQ0FBQ0YsS0FBSyxFQUFFLENBQUM7SUFDdEMsR0FBSyxDQUFDQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLEVBQ2xCdUUsVUFBVSxHQUFHeEUsS0FBSyxDQUFDeUUsS0FBSztJQUU5QixHQUFHLENBQUNyRSxZQUFZLEdBak5XLFVBQWM7SUFtTnpDb0UsVUFBVSxDQUFDRSxPQUFPLENBQUMsUUFBUSxDQUFQQyxTQUFTLEVBQUssQ0FBQztRQUNqQyxHQUFLLENBQUNDLE9BQU8sY0FBY0MsSUFBSSxDQUFDRixTQUFTO1FBRXpDdkUsWUFBWSxHQUFJQSxZQUFZLEtBdE5ILFVBQWMsZ0JBdU5yQnVFLFNBQVMsR0FDTixDQUFBLEVBQW1CQSxNQUFTLENBQTFCdkUsWUFBWSxFQUFDLENBQUUsS0FBWSxNQUFBLENBQVZ1RSxTQUFTO1FBRWpELEVBQUUsRUFBRUMsT0FBTyxFQUFFLENBQUM7WUFDWjNFLGFBQWEsQ0FBQzZFLElBQUksQ0FBQzFFLFlBQVk7WUFFL0JBLFlBQVksR0E3TlcsVUFBYztRQThOdkMsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNLENBQUNILGFBQWE7QUFDdEIsQ0FBQztTQUVRTyx3QkFBd0IsQ0FBQ0osWUFBWSxFQUFFLENBQUM7SUFDL0MsR0FBSyxDQUFDd0UsT0FBTyxHQUFHeEUsWUFBWSxDQUFDMkUsS0FBSyxxQkFDNUJDLFdBQVcsT0F2T0ksTUFBb0IsU0F1T2RKLE9BQU8sR0FDNUJLLGdCQUFnQixHQUFHRCxXQUFXLEVBQzlCRSwyQkFBMkIsR0EzT2xCLEtBQU0sU0EyT29CQyxPQUFPLENBQUMsQ0FBRyxLQUM5Q0MsaUNBQWlDLEdBQUdGLDJCQUEyQixDQUFDRyxNQUFNLEVBQ3RFQyxLQUFLLEdBQUdGLGlDQUFpQyxHQUFHLENBQUMsRUFDN0M3RSxRQUFRLEdBQUcwRSxnQkFBZ0IsQ0FBQ00sTUFBTSxDQUFDRCxLQUFLO0lBRTlDLE1BQU0sQ0FBQy9FLFFBQVE7QUFDakIsQ0FBQztTQUVRRywwQkFBMEIsQ0FBQ04sWUFBWSxFQUFFLENBQUM7SUFDakQsR0FBSyxDQUFDd0UsT0FBTyxHQUFHeEUsWUFBWSxDQUFDMkUsS0FBSyxhQUM1QkMsV0FBVyxPQW5QSSxNQUFvQixTQW1QZEosT0FBTyxHQUM1Qm5FLFVBQVUsR0FBR3VFLFdBQVcsQ0FBRSxDQUFHLEFBQUgsRUFBRyxBQUFILENBQUc7SUFFbkMsTUFBTSxDQUFDdkUsVUFBVTtBQUNuQixDQUFDO1NBRVFpRCxrQkFBa0IsQ0FBQzhCLE1BQU0sRUFBRUMsWUFBWSxFQUFFLENBQUM7SUFDakQsR0FBSyxDQUFDQyxTQUFTLEdBQUcsQ0FBRyxJQUNmQyxZQUFZLEdBQUdDLFFBQVEsQ0FBQ0osTUFBTSxFQUFFQyxZQUFZLEVBQUVDLFNBQVM7SUFFN0QsTUFBTSxDQUFDQyxZQUFZO0FBQ3JCLENBQUM7U0FFUUMsUUFBUSxDQUFDSixNQUFNLEVBQUVDLFlBQVksRUFBRUMsU0FBUyxFQUFFLENBQUM7SUFDbEQsR0FBRyxDQUFDRyxPQUFPLEdBaFFnQixVQUFjO0lBa1F6QyxHQUFHLENBQUUsR0FBRyxDQUFDQyxLQUFLLEdBQUcsQ0FBQyxFQUFFQSxLQUFLLEdBQUdMLFlBQVksRUFBRUssS0FBSyxHQUFJLENBQUM7UUFDbERELE9BQU8sSUFBSUgsU0FBUztJQUN0QixDQUFDO0lBRUQsR0FBSyxDQUFDQyxZQUFZLEdBQUksQ0FBQSxFQUFZSCxNQUFNLENBQWhCSyxPQUFPLEVBQVUsTUFBQSxDQUFQTCxNQUFNLEVBQUdELE1BQU0sRUFBRUUsWUFBWTtJQUUvRCxNQUFNLENBQUNFLFlBQVk7QUFDckIsQ0FBQyJ9
|
|
192
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbG9nZ2luZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcblxuaW1wb3J0IHsgc2Vjb25kIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgY29uY2F0ZW5hdGVQYXRocyB9IGZyb20gXCIuLi91dGlsaXRpZXMvcGF0aFwiO1xuaW1wb3J0IHsgY2hlY2tGaWxlRXhpc3RzLCByZWFkRmlsZSwgYXBwZW5kVG9GaWxlLCByZW5hbWVGaWxlLCBnZXRTdGF0cyB9IGZyb20gXCIuLi91dGlsaXRpZXMvZmlsZVN5c3RlbVwiO1xuaW1wb3J0IHsgREVGQVVMVF9MT0dfTEVWRUwsIERFRkFVTFRfTE9HX0ZJTEVfQkFTRV9OQU1FLCBERUZBVUxUX0xPR19ESVJFQ1RPUllfUEFUSCB9IGZyb20gXCIuLi9kZWZhdWx0c1wiO1xuaW1wb3J0IHsgVFJBQ0VfTEVWRUwsIERFQlVHX0xFVkVMLCBJTkZPX0xFVkVMLCBXQVJOSU5HX0xFVkVMLCBFUlJPUl9MRVZFTCwgRkFUQUxfTEVWRUwgfSBmcm9tIFwiLi4vbGV2ZWxzXCI7XG5cbmNvbnN0IGxldmVscyA9IFtcbiAgVFJBQ0VfTEVWRUwsXG4gIERFQlVHX0xFVkVMLFxuICBJTkZPX0xFVkVMLFxuICBXQVJOSU5HX0xFVkVMLFxuICBFUlJPUl9MRVZFTCxcbiAgRkFUQUxfTEVWRUwsXG5dO1xuXG5sZXQgbG9nTGV2ZWwgPSBERUZBVUxUX0xPR19MRVZFTCxcbiAgICBsb2dGaWxlQmFzZU5hbWUgPSBERUZBVUxUX0xPR19GSUxFX0JBU0VfTkFNRSxcbiAgICBsb2dEaXJlY3RvcnlQYXRoID0gREVGQVVMVF9MT0dfRElSRUNUT1JZX1BBVEg7XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2cobWVzc2FnZU9yRXJyb3IsIGxldmVsID0gRU1QVFlfU1RSSU5HKSB7XG4gIGxldCBzYWxpZW50U3RhY2tNZXNzYWdlSW5kZXggPSAxO1xuXG4gIGlmIChsZXZlbCAhPT0gRU1QVFlfU1RSSU5HKSB7XG4gICAgY29uc3QgbGV2ZWxJbmRleCA9IGxldmVscy5pbmRleE9mKGxldmVsKSxcbiAgICAgICAgICBsb2dMZXZlbEluZGV4ID0gbGV2ZWxzLmluZGV4T2YobG9nTGV2ZWwpO1xuXG4gICAgaWYgKGxldmVsSW5kZXggPCBsb2dMZXZlbEluZGV4KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2FsaWVudFN0YWNrTWVzc2FnZUluZGV4ICs9IDE7XG5cbiAgICBsZXZlbCA9IGAke2xldmVsfSBgOyAgLy8vXG4gIH1cblxuICBsZXQgZXJyb3IsXG4gICAgICBtZXNzYWdlO1xuXG4gIGlmIChtZXNzYWdlT3JFcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgZXJyb3IgPSBtZXNzYWdlT3JFcnJvcjsgLy8vXG5cbiAgICAoeyBtZXNzYWdlIH0gPSBlcnJvcik7XG4gIH0gZWxzZSB7XG4gICAgbWVzc2FnZSA9IG1lc3NhZ2VPckVycm9yOyAvLy9cblxuICAgIGVycm9yID0gbmV3IEVycm9yKG1lc3NhZ2UpO1xuICB9XG5cbiAgY29uc3QgeyBzdGFjayB9ID0gZXJyb3IsXG4gICAgICAgIHN0YWNrTWVzc2FnZXMgPSBzdGFja01lc3NhZ2VzRnJvbVN0YWNrKHN0YWNrKSxcbiAgICAgICAgcGVydGluZW50U3RhY2tNZXNzYWdlID0gc3RhY2tNZXNzYWdlc1tzYWxpZW50U3RhY2tNZXNzYWdlSW5kZXhdLFxuICAgICAgICBzdGFja01lc3NhZ2UgPSBwZXJ0aW5lbnRTdGFja01lc3NhZ2UsIC8vL1xuICAgICAgICBjdXJyZW50RGF0ZUFuZFRpbWVTdHJpbmcgPSBnZXRDdXJyZW50RGF0ZUFuZFRpbWVTdHJpbmcoKSxcbiAgICAgICAgZmlsZVBhdGggPSBmaWxlUGF0aEZyb21TdGFja01lc3NhZ2Uoc3RhY2tNZXNzYWdlKSxcbiAgICAgICAgbGluZU51bWJlciA9IGxpbmVOdW1iZXJGcm9tU3RhY2tNZXNzYWdlKHN0YWNrTWVzc2FnZSksXG4gICAgICAgIGxvZ01lc3NhZ2UgPSBgJHtsZXZlbH0ke2N1cnJlbnREYXRlQW5kVGltZVN0cmluZ30gJHtmaWxlUGF0aH0oJHtsaW5lTnVtYmVyfSkgJHttZXNzYWdlfWA7XG5cbiAgY29uc29sZS5sb2cobG9nTWVzc2FnZSk7XG5cbiAgaWYgKGxvZ0RpcmVjdG9yeVBhdGggIT09IG51bGwpIHtcbiAgICByb2xsT3ZlckxvZ0ZpbGUoKTtcblxuICAgIGNvbnN0IGxvZ0ZpbGVQYXRoID0gZ2V0TG9nRmlsZVBhdGgoKSxcbiAgICAgICAgICBsb2dGaWxlQ29udGVudCA9IGAke2xvZ01lc3NhZ2V9XFxuYDtcblxuICAgIGFwcGVuZFRvRmlsZShsb2dGaWxlUGF0aCwgbG9nRmlsZUNvbnRlbnQpO1xuICB9XG5cbiAgcmV0dXJuIGxvZ01lc3NhZ2U7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbG9nXG59XG5cbmZ1bmN0aW9uIHRyYWNlKG1lc3NhZ2UpIHsgcmV0dXJuIGxvZyhtZXNzYWdlLCBUUkFDRV9MRVZFTCk7IH1cblxuZnVuY3Rpb24gZGVidWcobWVzc2FnZSkgeyByZXR1cm4gbG9nKG1lc3NhZ2UsIERFQlVHX0xFVkVMKTsgfVxuXG5mdW5jdGlvbiBpbmZvKG1lc3NhZ2UpIHsgcmV0dXJuIGxvZyhtZXNzYWdlLCBJTkZPX0xFVkVMKTsgfVxuXG5mdW5jdGlvbiB3YXJuaW5nKG1lc3NhZ2UpIHsgcmV0dXJuIGxvZyhtZXNzYWdlLCBXQVJOSU5HX0xFVkVMKTsgfVxuXG5mdW5jdGlvbiBlcnJvcihtZXNzYWdlKSB7IHJldHVybiBsb2cobWVzc2FnZSwgRVJST1JfTEVWRUwpOyB9XG5cbmZ1bmN0aW9uIGZhdGFsKG1lc3NhZ2UpIHsgcmV0dXJuIGxvZyhtZXNzYWdlLCBGQVRBTF9MRVZFTCk7IH1cblxuZnVuY3Rpb24gc2V0TG9nTGV2ZWwobGV2ZWwpIHsgbG9nTGV2ZWwgPSBsZXZlbDsgfVxuXG5mdW5jdGlvbiBzZXRMb2dGaWxlQmFzZU5hbWUoZmlsZUJhc2VOYW1lKSB7IGxvZ0ZpbGVCYXNlTmFtZSA9IGZpbGVCYXNlTmFtZTsgfVxuXG5mdW5jdGlvbiBzZXRMb2dEaXJlY3RvcnlQYXRoKGRpcmVjdG9yeVBhdGgpIHsgbG9nRGlyZWN0b3J5UGF0aCA9IGRpcmVjdG9yeVBhdGg7IH1cblxuZnVuY3Rpb24gc2V0TG9nT3B0aW9ucyhsb2dPcHRpb25zKSB7XG4gIGNvbnN0IHsgbGV2ZWwsIGZpbGVCYXNlTmFtZSwgZGlyZWN0b3J5UGF0aCB9ID0gbG9nT3B0aW9ucztcblxuICBzZXRMb2dMZXZlbChsZXZlbCk7XG5cbiAgc2V0TG9nRmlsZUJhc2VOYW1lKGZpbGVCYXNlTmFtZSk7XG5cbiAgc2V0TG9nRGlyZWN0b3J5UGF0aChkaXJlY3RvcnlQYXRoKTtcbn1cblxuZnVuY3Rpb24gZ2V0TG9nRmlsZUNvbnRlbnQoKSB7XG4gIGNvbnN0IGxvZ0ZpbGVQYXRoID0gZ2V0TG9nRmlsZVBhdGgoKSxcbiAgICAgICAgbG9nRmlsZUNvbnRlbnQgPSByZWFkRmlsZShsb2dGaWxlUGF0aCk7XG5cbiAgcmV0dXJuIGxvZ0ZpbGVDb250ZW50O1xufVxuXG5PYmplY3QuYXNzaWduKGxvZywge1xuICBUUkFDRV9MRVZFTCxcbiAgREVCVUdfTEVWRUwsXG4gIElORk9fTEVWRUwsXG4gIFdBUk5JTkdfTEVWRUwsXG4gIEVSUk9SX0xFVkVMLFxuICBGQVRBTF9MRVZFTCxcbiAgdHJhY2UsXG4gIGRlYnVnLFxuICBpbmZvLFxuICB3YXJuaW5nLFxuICBlcnJvcixcbiAgZmF0YWwsXG4gIHNldExvZ0xldmVsLFxuICBzZXRMb2dGaWxlQmFzZU5hbWUsXG4gIHNldExvZ0RpcmVjdG9yeVBhdGgsXG4gIHNldExvZ09wdGlvbnMsXG4gIGdldExvZ0ZpbGVDb250ZW50XG59KTtcblxuZnVuY3Rpb24gZ2V0TG9nRmlsZVBhdGgoKSB7XG4gIGNvbnN0IGxvZ0ZpbGVOYW1lID0gYCR7bG9nRmlsZUJhc2VOYW1lfS5sb2dgLFxuICAgICAgICBsb2dGaWxlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMobG9nRGlyZWN0b3J5UGF0aCwgbG9nRmlsZU5hbWUpO1xuXG4gIHJldHVybiBsb2dGaWxlUGF0aDtcbn1cblxuZnVuY3Rpb24gZ2V0Um9sbGVkT3ZlckxvZ0ZpbGVQYXRoKCkge1xuICBjb25zdCBjdXJyZW50RGF0ZVN0cmluZyA9IGdldEN1cnJlbnREYXRlU3RyaW5nKCksXG4gICAgICAgIHJvbGxlZE92ZXJMb2dGaWxlTmFtZSA9IGAke2xvZ0ZpbGVCYXNlTmFtZX0uJHtjdXJyZW50RGF0ZVN0cmluZ30ubG9nYCxcbiAgICAgICAgcm9sbGVkT3ZlckxvZ0ZpbGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhsb2dEaXJlY3RvcnlQYXRoLCByb2xsZWRPdmVyTG9nRmlsZU5hbWUpO1xuXG4gIHJldHVybiByb2xsZWRPdmVyTG9nRmlsZVBhdGg7XG59XG5cbmZ1bmN0aW9uIGdldExvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlKCkge1xuICBjb25zdCBsb2dGaWxlUGF0aCA9IGdldExvZ0ZpbGVQYXRoKCksXG4gICAgICAgIGxvZ0ZpbGVTdGF0cyA9IGdldFN0YXRzKGxvZ0ZpbGVQYXRoKSxcbiAgICAgICAgeyBtdGltZSB9ID0gbG9nRmlsZVN0YXRzLFxuICAgICAgICBsb2dGaWxlTGFzdE1vZGlmaWVkRGF0ZSA9IG5ldyBEYXRlKG10aW1lKTsgIC8vL1xuXG4gIHJldHVybiBsb2dGaWxlTGFzdE1vZGlmaWVkRGF0ZTtcbn1cblxuZnVuY3Rpb24gcm9sbE92ZXJMb2dGaWxlKCkge1xuICBjb25zdCBsb2dGaWxlUGF0aCA9IGdldExvZ0ZpbGVQYXRoKCksXG4gICAgICAgIGxvZ0ZpbGVFeGlzdHMgPSBjaGVja0ZpbGVFeGlzdHMobG9nRmlsZVBhdGgpO1xuXG4gIGlmICghbG9nRmlsZUV4aXN0cykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGxvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlID0gZ2V0TG9nRmlsZUxhc3RNb2RpZmllZERhdGUoKSxcbiAgICAgICAgbG9nRmlsZUxhc3RNb2RpZmllZERhdGVDdXJyZW50RGF0ZSA9IGlzRGF0ZUN1cnJlbnREYXRlKGxvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlKTtcblxuICBpZiAoIWxvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlQ3VycmVudERhdGUpIHtcbiAgICBjb25zdCByb2xsZWRPdmVyTG9nRmlsZVBhdGggPSBnZXRSb2xsZWRPdmVyTG9nRmlsZVBhdGgoKTtcblxuICAgIHJlbmFtZUZpbGUobG9nRmlsZVBhdGgsIHJvbGxlZE92ZXJMb2dGaWxlUGF0aCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNEYXRlQ3VycmVudERhdGUoZGF0ZSkge1xuICBjb25zdCBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCksXG4gICAgICAgIGRhdGVTdHJpbmcgPSBkYXRlLnRvRGF0ZVN0cmluZygpLFxuICAgICAgICBjdXJyZW50RGF0ZVN0cmluZyA9IGN1cnJlbnREYXRlLnRvRGF0ZVN0cmluZygpLFxuICAgICAgICBkYXRlQ3VycmVudERhdGUgPSAoZGF0ZVN0cmluZyA9PT0gY3VycmVudERhdGVTdHJpbmcpO1xuXG4gIHJldHVybiBkYXRlQ3VycmVudERhdGU7XG59XG5cbmZ1bmN0aW9uIGdldEN1cnJlbnREYXRlU3RyaW5nKCkge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoKSxcbiAgICAgICAgZGF5ID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0RGF0ZSgpLCAyKSwgIC8vL1xuICAgICAgICBtb250aCA9IHBhZFN0YXJ0V2l0aFplcm9lcyhkYXRlLmdldE1vbnRoKCkgKyAxLCAyKSwgLy8vXG4gICAgICAgIHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCksXG4gICAgICAgIGN1cnJlbnREYXRlQW5kVGltZVN0cmluZyA9IGAke2RheX0tJHttb250aH0tJHt5ZWFyfWA7XG5cbiAgcmV0dXJuIGN1cnJlbnREYXRlQW5kVGltZVN0cmluZztcbn1cblxuZnVuY3Rpb24gZ2V0Q3VycmVudERhdGVBbmRUaW1lU3RyaW5nKCkge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoKSxcbiAgICAgICAgZGF5ID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0RGF0ZSgpLCAyKSwgIC8vL1xuICAgICAgICBtb250aCA9IHBhZFN0YXJ0V2l0aFplcm9lcyhkYXRlLmdldE1vbnRoKCkgKyAxLCAyKSwgLy8vXG4gICAgICAgIHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCksXG4gICAgICAgIGhvdXJzID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0SG91cnMoKSwgMiksXG4gICAgICAgIG1pbnV0ZXMgPSBwYWRTdGFydFdpdGhaZXJvZXMoZGF0ZS5nZXRNaW51dGVzKCksIDIpLFxuICAgICAgICBzZWNvbmRzID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0U2Vjb25kcygpLCAyKSxcbiAgICAgICAgbWlsbGlzZWNvbmRzID0gcGFkU3RhcnRXaXRoWmVyb2VzKGRhdGUuZ2V0TWlsbGlzZWNvbmRzKCksIDMpLFxuICAgICAgICBjdXJyZW50RGF0ZUFuZFRpbWVTdHJpbmcgPSBgJHtkYXl9LSR7bW9udGh9LSR7eWVhcn0gJHtob3Vyc306JHttaW51dGVzfToke3NlY29uZHN9LiR7bWlsbGlzZWNvbmRzfWA7XG5cbiAgcmV0dXJuIGN1cnJlbnREYXRlQW5kVGltZVN0cmluZztcbn1cblxuZnVuY3Rpb24gc3RhY2tNZXNzYWdlc0Zyb21TdGFjayhzdGFjaykge1xuICBjb25zdCBzdGFja01lc3NhZ2VzID0gW10sXG4gICAgICAgIHN0YWNrTGluZXMgPSBzdGFjay5zcGxpdCgvXFxyXFxufFxcbi8pO1xuXG4gIGxldCBzdGFja01lc3NhZ2UgPSBFTVBUWV9TVFJJTkc7XG5cbiAgc3RhY2tMaW5lcy5mb3JFYWNoKChzdGFja0xpbmUpID0+IHtcbiAgICBjb25zdCBtYXRjaGVzID0gL15cXHMqYXQuKi8udGVzdChzdGFja0xpbmUpO1xuXG4gICAgc3RhY2tNZXNzYWdlID0gKHN0YWNrTWVzc2FnZSA9PT0gRU1QVFlfU1RSSU5HKSA/XG4gICAgICAgICAgICAgICAgICAgICAgc3RhY2tMaW5lIDpcbiAgICAgICAgICAgICAgICAgICAgICAgIGAke3N0YWNrTWVzc2FnZX1cXG4ke3N0YWNrTGluZX1gO1xuXG4gICAgaWYgKG1hdGNoZXMpIHtcbiAgICAgIHN0YWNrTWVzc2FnZXMucHVzaChzdGFja01lc3NhZ2UpO1xuXG4gICAgICBzdGFja01lc3NhZ2UgPSBFTVBUWV9TVFJJTkc7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gc3RhY2tNZXNzYWdlcztcbn1cblxuZnVuY3Rpb24gZmlsZVBhdGhGcm9tU3RhY2tNZXNzYWdlKHN0YWNrTWVzc2FnZSkge1xuICBjb25zdCBtYXRjaGVzID0gc3RhY2tNZXNzYWdlLm1hdGNoKC8oXFwvLispOlxcZCs6XFxkKy9tKSxcbiAgICAgICAgc2Vjb25kTWF0Y2ggPSBzZWNvbmQobWF0Y2hlcyksXG4gICAgICAgIGFic29sdXRlRmlsZVBhdGggPSBzZWNvbmRNYXRjaCwgIC8vL1xuICAgICAgICBjdXJyZW50V29ya2luZ0RpcmVjdG9yeVBhdGggPSBwYXRoLnJlc29sdmUoXCIuXCIpLCAgLy8vXG4gICAgICAgIGN1cnJlbnRXb3JraW5nRGlyZWN0b3J5UGF0aExlbmd0aCA9IGN1cnJlbnRXb3JraW5nRGlyZWN0b3J5UGF0aC5sZW5ndGgsXG4gICAgICAgIHN0YXJ0ID0gY3VycmVudFdvcmtpbmdEaXJlY3RvcnlQYXRoTGVuZ3RoICsgMSwgIC8vL1xuICAgICAgICBmaWxlUGF0aCA9IGFic29sdXRlRmlsZVBhdGguc3Vic3RyKHN0YXJ0KTtcblxuICByZXR1cm4gZmlsZVBhdGg7XG59XG5cbmZ1bmN0aW9uIGxpbmVOdW1iZXJGcm9tU3RhY2tNZXNzYWdlKHN0YWNrTWVzc2FnZSkge1xuICBjb25zdCBtYXRjaGVzID0gc3RhY2tNZXNzYWdlLm1hdGNoKC86KFxcZCspL20pLFxuICAgICAgICBzZWNvbmRNYXRjaCA9IHNlY29uZChtYXRjaGVzKSxcbiAgICAgICAgbGluZU51bWJlciA9IHNlY29uZE1hdGNoOyAvLy9cblxuICByZXR1cm4gbGluZU51bWJlcjtcbn1cblxuZnVuY3Rpb24gcGFkU3RhcnRXaXRoWmVyb2VzKHN0cmluZywgdGFyZ2V0TGVuZ3RoKSB7XG4gIGNvbnN0IHBhZFN0cmluZyA9IFwiMFwiLFxuICAgICAgICBwYWRkZWRTdHJpbmcgPSBwYWRTdGFydChzdHJpbmcsIHRhcmdldExlbmd0aCwgcGFkU3RyaW5nKTtcblxuICByZXR1cm4gcGFkZGVkU3RyaW5nO1xufVxuXG5mdW5jdGlvbiBwYWRTdGFydChzdHJpbmcsIHRhcmdldExlbmd0aCwgcGFkU3RyaW5nKSB7XG4gIGxldCBwYWRkaW5nID0gRU1QVFlfU1RSSU5HO1xuXG4gIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0YXJnZXRMZW5ndGg7IGluZGV4KyspIHtcbiAgICBwYWRkaW5nICs9IHBhZFN0cmluZztcbiAgfVxuXG4gIGNvbnN0IHBhZGRlZFN0cmluZyA9IGAke3BhZGRpbmd9JHtzdHJpbmd9YC5zdWJzdHIoLXRhcmdldExlbmd0aCk7XG5cbiAgcmV0dXJuIHBhZGRlZFN0cmluZztcbn1cbiJdLCJuYW1lcyI6WyJsb2ciLCJsZXZlbHMiLCJsb2dMZXZlbCIsImxvZ0ZpbGVCYXNlTmFtZSIsImxvZ0RpcmVjdG9yeVBhdGgiLCJtZXNzYWdlT3JFcnJvciIsImxldmVsIiwic2FsaWVudFN0YWNrTWVzc2FnZUluZGV4IiwibGV2ZWxJbmRleCIsImluZGV4T2YiLCJsb2dMZXZlbEluZGV4IiwiZXJyb3IiLCJtZXNzYWdlIiwiRXJyb3IiLCJzdGFjayIsInN0YWNrTWVzc2FnZXMiLCJzdGFja01lc3NhZ2VzRnJvbVN0YWNrIiwicGVydGluZW50U3RhY2tNZXNzYWdlIiwic3RhY2tNZXNzYWdlIiwiY3VycmVudERhdGVBbmRUaW1lU3RyaW5nIiwiZ2V0Q3VycmVudERhdGVBbmRUaW1lU3RyaW5nIiwiZmlsZVBhdGgiLCJmaWxlUGF0aEZyb21TdGFja01lc3NhZ2UiLCJsaW5lTnVtYmVyIiwibGluZU51bWJlckZyb21TdGFja01lc3NhZ2UiLCJsb2dNZXNzYWdlIiwiY29uc29sZSIsInJvbGxPdmVyTG9nRmlsZSIsImxvZ0ZpbGVQYXRoIiwiZ2V0TG9nRmlsZVBhdGgiLCJsb2dGaWxlQ29udGVudCIsInRyYWNlIiwiZGVidWciLCJpbmZvIiwid2FybmluZyIsImZhdGFsIiwic2V0TG9nTGV2ZWwiLCJzZXRMb2dGaWxlQmFzZU5hbWUiLCJmaWxlQmFzZU5hbWUiLCJzZXRMb2dEaXJlY3RvcnlQYXRoIiwiZGlyZWN0b3J5UGF0aCIsInNldExvZ09wdGlvbnMiLCJsb2dPcHRpb25zIiwiZ2V0TG9nRmlsZUNvbnRlbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJUUkFDRV9MRVZFTCIsIkRFQlVHX0xFVkVMIiwiSU5GT19MRVZFTCIsIldBUk5JTkdfTEVWRUwiLCJFUlJPUl9MRVZFTCIsIkZBVEFMX0xFVkVMIiwibG9nRmlsZU5hbWUiLCJnZXRSb2xsZWRPdmVyTG9nRmlsZVBhdGgiLCJjdXJyZW50RGF0ZVN0cmluZyIsImdldEN1cnJlbnREYXRlU3RyaW5nIiwicm9sbGVkT3ZlckxvZ0ZpbGVOYW1lIiwicm9sbGVkT3ZlckxvZ0ZpbGVQYXRoIiwiZ2V0TG9nRmlsZUxhc3RNb2RpZmllZERhdGUiLCJsb2dGaWxlU3RhdHMiLCJtdGltZSIsImxvZ0ZpbGVMYXN0TW9kaWZpZWREYXRlIiwiRGF0ZSIsImxvZ0ZpbGVFeGlzdHMiLCJsb2dGaWxlTGFzdE1vZGlmaWVkRGF0ZUN1cnJlbnREYXRlIiwiaXNEYXRlQ3VycmVudERhdGUiLCJkYXRlIiwiY3VycmVudERhdGUiLCJkYXRlU3RyaW5nIiwidG9EYXRlU3RyaW5nIiwiZGF0ZUN1cnJlbnREYXRlIiwiZGF5IiwicGFkU3RhcnRXaXRoWmVyb2VzIiwiZ2V0RGF0ZSIsIm1vbnRoIiwiZ2V0TW9udGgiLCJ5ZWFyIiwiZ2V0RnVsbFllYXIiLCJob3VycyIsImdldEhvdXJzIiwibWludXRlcyIsImdldE1pbnV0ZXMiLCJzZWNvbmRzIiwiZ2V0U2Vjb25kcyIsIm1pbGxpc2Vjb25kcyIsImdldE1pbGxpc2Vjb25kcyIsInN0YWNrTGluZXMiLCJzcGxpdCIsImZvckVhY2giLCJzdGFja0xpbmUiLCJtYXRjaGVzIiwidGVzdCIsInB1c2giLCJtYXRjaCIsInNlY29uZE1hdGNoIiwiYWJzb2x1dGVGaWxlUGF0aCIsImN1cnJlbnRXb3JraW5nRGlyZWN0b3J5UGF0aCIsInJlc29sdmUiLCJjdXJyZW50V29ya2luZ0RpcmVjdG9yeVBhdGhMZW5ndGgiLCJsZW5ndGgiLCJzdGFydCIsInN1YnN0ciIsInN0cmluZyIsInRhcmdldExlbmd0aCIsInBhZFN0cmluZyIsInBhZGRlZFN0cmluZyIsInBhZFN0YXJ0IiwicGFkZGluZyIsImluZGV4Il0sIm1hcHBpbmdzIjoiQUFBQSxDQUFZOzs7O1FBd0JJQSxHQUFHLEdBQUhBLEdBQUc7O0FBdEJGLEdBQU0sQ0FBTixLQUFNO0FBRUEsR0FBb0IsQ0FBcEIsTUFBb0I7QUFDZCxHQUFjLENBQWQsVUFBYztBQUNWLEdBQW1CLENBQW5CLE1BQW1CO0FBQzBCLEdBQXlCLENBQXpCLFdBQXlCO0FBQ2IsR0FBYSxDQUFiLFNBQWE7QUFDVCxHQUFXLENBQVgsT0FBVzs7Ozs7Ozs7Ozs7OztBQUV6RyxHQUFLLENBQUNDLE1BQU0sR0FBRyxDQUFDO0lBRjhFLE9BQVc7SUFBWCxPQUFXO0lBQVgsT0FBVztJQUFYLE9BQVc7SUFBWCxPQUFXO0lBQVgsT0FBVztBQVN6RyxDQUFDO0FBRUQsR0FBRyxDQUFDQyxRQUFRLEdBWjhFLFNBQWEsb0JBYW5HQyxlQUFlLEdBYnVFLFNBQWEsNkJBY25HQyxnQkFBZ0IsR0Fkc0UsU0FBYTtTQWdCdkZKLEdBQUcsQ0FBQ0ssY0FBYyxFQUF3QixDQUFDO1FBQXZCQyxLQUFLLG9FQW5CWixVQUFjO0lBb0J6QyxHQUFHLENBQUNDLHdCQUF3QixHQUFHLENBQUM7SUFFaEMsRUFBRSxFQUFFRCxLQUFLLEtBdEJrQixVQUFjLGVBc0JiLENBQUM7UUFDM0IsR0FBSyxDQUFDRSxVQUFVLEdBQUdQLE1BQU0sQ0FBQ1EsT0FBTyxD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
|
package/lib/utilities/request.js
CHANGED
|
@@ -7,15 +7,15 @@ var _constants = require("../constants");
|
|
|
7
7
|
var _methods = require("../methods");
|
|
8
8
|
var _http = require("../utilities/http");
|
|
9
9
|
var http = require("http"), https = require("https");
|
|
10
|
-
function
|
|
10
|
+
function createRequest(host, uri, query, method, headers, callback) {
|
|
11
11
|
var port = (0, _http).portFromHost(host), secure = (0, _http).secureFromHost(host), hostname = (0, _http).hostnameFromHost(host), queryString = (0, _http).queryStringFromQuery(query), path = queryString === _constants.EMPTY_STRING ? uri : "".concat(uri, "?").concat(queryString), options = {
|
|
12
12
|
hostname: hostname,
|
|
13
13
|
headers: headers,
|
|
14
14
|
method: method,
|
|
15
15
|
port: port,
|
|
16
16
|
path: path
|
|
17
|
-
},
|
|
18
|
-
var request =
|
|
17
|
+
}, createRequest1 = secure ? https.request : http.request; ///
|
|
18
|
+
var request = createRequest1(options, function(response) {
|
|
19
19
|
var error = null;
|
|
20
20
|
callback(error, response);
|
|
21
21
|
});
|
|
@@ -31,7 +31,7 @@ function createGetRequest(host, uri, query, headers, callback) {
|
|
|
31
31
|
headers = {
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
|
-
var method = _methods.GET_METHOD, getRequest =
|
|
34
|
+
var method = _methods.GET_METHOD, getRequest = createRequest(host, uri, query, method, headers, callback);
|
|
35
35
|
return getRequest;
|
|
36
36
|
}
|
|
37
37
|
function createPostRequest(host, uri, query, headers, callback) {
|
|
@@ -40,14 +40,14 @@ function createPostRequest(host, uri, query, headers, callback) {
|
|
|
40
40
|
headers = {
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
|
-
var method = _methods.POST_METHOD, postRequest =
|
|
43
|
+
var method = _methods.POST_METHOD, postRequest = createRequest(host, uri, query, method, headers, callback);
|
|
44
44
|
return postRequest;
|
|
45
45
|
}
|
|
46
46
|
var _default = {
|
|
47
|
-
createRequest:
|
|
47
|
+
createRequest: createRequest,
|
|
48
48
|
createGetRequest: createGetRequest,
|
|
49
49
|
createPostRequest: createPostRequest
|
|
50
50
|
};
|
|
51
51
|
exports.default = _default;
|
|
52
52
|
|
|
53
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcmVxdWVzdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgaHR0cCA9IHJlcXVpcmUoXCJodHRwXCIpLFxuICAgICAgaHR0cHMgPSByZXF1aXJlKFwiaHR0cHNcIik7XG5cbmltcG9ydCB7IEVSUk9SLCBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBHRVRfTUVUSE9ELCBQT1NUX01FVEhPRCB9IGZyb20gXCIuLi9tZXRob2RzXCI7XG5pbXBvcnQgeyBwb3J0RnJvbUhvc3QsIHNlY3VyZUZyb21Ib3N0LCBob3N0bmFtZUZyb21Ib3N0LCBxdWVyeVN0cmluZ0Zyb21RdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvaHR0cFwiO1xuXG5mdW5jdGlvbiBjcmVhdGVSZXF1ZXN0KGhvc3QsIHVyaSwgcXVlcnksIG1ldGhvZCwgaGVhZGVycywgY2FsbGJhY2spIHtcbiAgY29uc3QgcG9ydCA9IHBvcnRGcm9tSG9zdChob3N0KSxcbiAgICAgICAgc2VjdXJlID0gc2VjdXJlRnJvbUhvc3QoaG9zdCksXG4gICAgICAgIGhvc3RuYW1lID0gaG9zdG5hbWVGcm9tSG9zdChob3N0KSxcbiAgICAgICAgcXVlcnlTdHJpbmcgPSBxdWVyeVN0cmluZ0Zyb21RdWVyeShxdWVyeSksXG4gICAgICAgIHBhdGggPSAocXVlcnlTdHJpbmcgPT09IEVNUFRZX1NUUklORykgP1xuICAgICAgICAgICAgICAgICB1cmkgOlxuICAgICAgICAgICAgICAgICAgYCR7dXJpfT8ke3F1ZXJ5U3RyaW5nfWAsXG4gICAgICAgIG9wdGlvbnMgPSB7XG4gICAgICAgICAgaG9zdG5hbWUsXG4gICAgICAgICAgaGVhZGVycyxcbiAgICAgICAgICBtZXRob2QsXG4gICAgICAgICAgcG9ydCxcbiAgICAgICAgICBwYXRoXG4gICAgICAgIH0sXG4gICAgICAgIGNyZWF0ZVJlcXVlc3QgPSBzZWN1cmUgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICBodHRwcy5yZXF1ZXN0IDogLy8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHR0cC5yZXF1ZXN0OyAvLy9cblxuICBjb25zdCByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChvcHRpb25zLCAocmVzcG9uc2UpID0+IHtcbiAgICBjb25zdCBlcnJvciA9IG51bGw7XG5cbiAgICBjYWxsYmFjayhlcnJvciwgcmVzcG9uc2UpO1xuICB9KTtcblxuICByZXF1ZXN0Lm9uKEVSUk9SLCAoZXJyb3IpID0+
|
|
53
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcmVxdWVzdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgaHR0cCA9IHJlcXVpcmUoXCJodHRwXCIpLFxuICAgICAgaHR0cHMgPSByZXF1aXJlKFwiaHR0cHNcIik7XG5cbmltcG9ydCB7IEVSUk9SLCBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBHRVRfTUVUSE9ELCBQT1NUX01FVEhPRCB9IGZyb20gXCIuLi9tZXRob2RzXCI7XG5pbXBvcnQgeyBwb3J0RnJvbUhvc3QsIHNlY3VyZUZyb21Ib3N0LCBob3N0bmFtZUZyb21Ib3N0LCBxdWVyeVN0cmluZ0Zyb21RdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvaHR0cFwiO1xuXG5mdW5jdGlvbiBjcmVhdGVSZXF1ZXN0KGhvc3QsIHVyaSwgcXVlcnksIG1ldGhvZCwgaGVhZGVycywgY2FsbGJhY2spIHtcbiAgY29uc3QgcG9ydCA9IHBvcnRGcm9tSG9zdChob3N0KSxcbiAgICAgICAgc2VjdXJlID0gc2VjdXJlRnJvbUhvc3QoaG9zdCksXG4gICAgICAgIGhvc3RuYW1lID0gaG9zdG5hbWVGcm9tSG9zdChob3N0KSxcbiAgICAgICAgcXVlcnlTdHJpbmcgPSBxdWVyeVN0cmluZ0Zyb21RdWVyeShxdWVyeSksXG4gICAgICAgIHBhdGggPSAocXVlcnlTdHJpbmcgPT09IEVNUFRZX1NUUklORykgP1xuICAgICAgICAgICAgICAgICB1cmkgOlxuICAgICAgICAgICAgICAgICAgYCR7dXJpfT8ke3F1ZXJ5U3RyaW5nfWAsXG4gICAgICAgIG9wdGlvbnMgPSB7XG4gICAgICAgICAgaG9zdG5hbWUsXG4gICAgICAgICAgaGVhZGVycyxcbiAgICAgICAgICBtZXRob2QsXG4gICAgICAgICAgcG9ydCxcbiAgICAgICAgICBwYXRoXG4gICAgICAgIH0sXG4gICAgICAgIGNyZWF0ZVJlcXVlc3QgPSBzZWN1cmUgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICBodHRwcy5yZXF1ZXN0IDogLy8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHR0cC5yZXF1ZXN0OyAvLy9cblxuICBjb25zdCByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChvcHRpb25zLCAocmVzcG9uc2UpID0+IHtcbiAgICBjb25zdCBlcnJvciA9IG51bGw7XG5cbiAgICBjYWxsYmFjayhlcnJvciwgcmVzcG9uc2UpO1xuICB9KTtcblxuICByZXF1ZXN0Lm9uKEVSUk9SLCAoZXJyb3IpID0+IHtcbiAgICBjb25zdCByZXNwb25zZSA9IG51bGw7XG5cbiAgICBjYWxsYmFjayhlcnJvciwgcmVzcG9uc2UpO1xuICB9KTtcblxuICByZXR1cm4gcmVxdWVzdDtcbn1cblxuZnVuY3Rpb24gY3JlYXRlR2V0UmVxdWVzdChob3N0LCB1cmksIHF1ZXJ5LCBoZWFkZXJzLCBjYWxsYmFjaykge1xuICBpZiAoY2FsbGJhY2sgPT09IHVuZGVmaW5lZCkge1xuICAgIGNhbGxiYWNrID0gaGVhZGVyczsgLy8vXG4gICAgaGVhZGVycyA9IHt9O1xuICB9XG5cbiAgY29uc3QgbWV0aG9kID0gR0VUX01FVEhPRCxcbiAgICAgICAgZ2V0UmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoaG9zdCwgdXJpLCBxdWVyeSwgbWV0aG9kLCBoZWFkZXJzLCBjYWxsYmFjayk7XG5cbiAgcmV0dXJuIGdldFJlcXVlc3Q7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVBvc3RSZXF1ZXN0KGhvc3QsIHVyaSwgcXVlcnksIGhlYWRlcnMsIGNhbGxiYWNrKSB7XG4gIGlmIChjYWxsYmFjayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY2FsbGJhY2sgPSBoZWFkZXJzOyAvLy9cbiAgICBoZWFkZXJzID0ge307XG4gIH1cblxuICBjb25zdCBtZXRob2QgPSBQT1NUX01FVEhPRCxcbiAgICAgICAgcG9zdFJlcXVlc3QgPSBjcmVhdGVSZXF1ZXN0KGhvc3QsIHVyaSwgcXVlcnksIG1ldGhvZCwgaGVhZGVycywgY2FsbGJhY2spO1xuXG4gIHJldHVybiBwb3N0UmVxdWVzdDtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBjcmVhdGVSZXF1ZXN0LFxuICBjcmVhdGVHZXRSZXF1ZXN0LFxuICBjcmVhdGVQb3N0UmVxdWVzdFxufTtcbiJdLCJuYW1lcyI6WyJodHRwIiwicmVxdWlyZSIsImh0dHBzIiwiY3JlYXRlUmVxdWVzdCIsImhvc3QiLCJ1cmkiLCJxdWVyeSIsIm1ldGhvZCIsImhlYWRlcnMiLCJjYWxsYmFjayIsInBvcnQiLCJzZWN1cmUiLCJob3N0bmFtZSIsInF1ZXJ5U3RyaW5nIiwicGF0aCIsIm9wdGlvbnMiLCJyZXF1ZXN0IiwicmVzcG9uc2UiLCJlcnJvciIsIm9uIiwiY3JlYXRlR2V0UmVxdWVzdCIsInVuZGVmaW5lZCIsImdldFJlcXVlc3QiLCJjcmVhdGVQb3N0UmVxdWVzdCIsInBvc3RSZXF1ZXN0Il0sIm1hcHBpbmdzIjoiQUFBQSxDQUFZOzs7OztBQUt3QixHQUFjLENBQWQsVUFBYztBQUNWLEdBQVksQ0FBWixRQUFZO0FBQ2lDLEdBQW1CLENBQW5CLEtBQW1CO0FBTHhHLEdBQUssQ0FBQ0EsSUFBSSxHQUFHQyxPQUFPLENBQUMsQ0FBTSxRQUNyQkMsS0FBSyxHQUFHRCxPQUFPLENBQUMsQ0FBTztTQU1wQkUsYUFBYSxDQUFDQyxJQUFJLEVBQUVDLEdBQUcsRUFBRUMsS0FBSyxFQUFFQyxNQUFNLEVBQUVDLE9BQU8sRUFBRUMsUUFBUSxFQUFFLENBQUM7SUFDbkUsR0FBSyxDQUFDQyxJQUFJLE9BSHlFLEtBQW1CLGVBRzVFTixJQUFJLEdBQ3hCTyxNQUFNLE9BSnVFLEtBQW1CLGlCQUl4RVAsSUFBSSxHQUM1QlEsUUFBUSxPQUxxRSxLQUFtQixtQkFLcEVSLElBQUksR0FDaENTLFdBQVcsT0FOa0UsS0FBbUIsdUJBTTdEUCxLQUFLLEdBQ3hDUSxJQUFJLEdBQUlELFdBQVcsS0FUUyxVQUFjLGdCQVVqQ1IsR0FBRyxHQUNELENBQUEsRUFBU1EsTUFBVyxDQUFsQlIsR0FBRyxFQUFDLENBQUMsSUFBYyxNQUFBLENBQVpRLFdBQVcsR0FDL0JFLE9BQU8sR0FBRyxDQUFDO1FBQ1RILFFBQVEsRUFBUkEsUUFBUTtRQUNSSixPQUFPLEVBQVBBLE9BQU87UUFDUEQsTUFBTSxFQUFOQSxNQUFNO1FBQ05HLElBQUksRUFBSkEsSUFBSTtRQUNKSSxJQUFJLEVBQUpBLElBQUk7SUFDTixDQUFDLEVBQ0RYLGNBQWEsR0FBR1EsTUFBTSxHQUNKVCxLQUFLLENBQUNjLE9BQU8sR0FDWGhCLElBQUksQ0FBQ2dCLE9BQU8sQ0FBRSxDQUFHLEFBQUgsRUFBRyxBQUFILENBQUc7SUFFM0MsR0FBSyxDQUFDQSxPQUFPLEdBQUdiLGNBQWEsQ0FBQ1ksT0FBTyxFQUFFLFFBQVEsQ0FBUEUsUUFBUSxFQUFLLENBQUM7UUFDcEQsR0FBSyxDQUFDQyxLQUFLLEdBQUcsSUFBSTtRQUVsQlQsUUFBUSxDQUFDUyxLQUFLLEVBQUVELFFBQVE7SUFDMUIsQ0FBQztJQUVERCxPQUFPLENBQUNHLEVBQUUsQ0E3QndCLFVBQWMsUUE2QjlCLFFBQVEsQ0FBUEQsS0FBSyxFQUFLLENBQUM7UUFDNUIsR0FBSyxDQUFDRCxRQUFRLEdBQUcsSUFBSTtRQUVyQlIsUUFBUSxDQUFDUyxLQUFLLEVBQUVELFFBQVE7SUFDMUIsQ0FBQztJQUVELE1BQU0sQ0FBQ0QsT0FBTztBQUNoQixDQUFDO1NBRVFJLGdCQUFnQixDQUFDaEIsSUFBSSxFQUFFQyxHQUFHLEVBQUVDLEtBQUssRUFBRUUsT0FBTyxFQUFFQyxRQUFRLEVBQUUsQ0FBQztJQUM5RCxFQUFFLEVBQUVBLFFBQVEsS0FBS1ksU0FBUyxFQUFFLENBQUM7UUFDM0JaLFFBQVEsR0FBR0QsT0FBTyxDQUFFLENBQUcsQUFBSCxFQUFHLEFBQUgsQ0FBRztRQUN2QkEsT0FBTyxHQUFHLENBQUM7UUFBQSxDQUFDO0lBQ2QsQ0FBQztJQUVELEdBQUssQ0FBQ0QsTUFBTSxHQTNDMEIsUUFBWSxhQTRDNUNlLFVBQVUsR0FBR25CLGFBQWEsQ0FBQ0MsSUFBSSxFQUFFQyxHQUFHLEVBQUVDLEtBQUssRUFBRUMsTUFBTSxFQUFFQyxPQUFPLEVBQUVDLFFBQVE7SUFFNUUsTUFBTSxDQUFDYSxVQUFVO0FBQ25CLENBQUM7U0FFUUMsaUJBQWlCLENBQUNuQixJQUFJLEVBQUVDLEdBQUcsRUFBRUMsS0FBSyxFQUFFRSxPQUFPLEVBQUVDLFFBQVEsRUFBRSxDQUFDO0lBQy9ELEVBQUUsRUFBRUEsUUFBUSxLQUFLWSxTQUFTLEVBQUUsQ0FBQztRQUMzQlosUUFBUSxHQUFHRCxPQUFPLENBQUUsQ0FBRyxBQUFILEVBQUcsQUFBSCxDQUFHO1FBQ3ZCQSxPQUFPLEdBQUcsQ0FBQztRQUFBLENBQUM7SUFDZCxDQUFDO0lBRUQsR0FBSyxDQUFDRCxNQUFNLEdBdkQwQixRQUFZLGNBd0Q1Q2lCLFdBQVcsR0FBR3JCLGFBQWEsQ0FBQ0MsSUFBSSxFQUFFQyxHQUFHLEVBQUVDLEtBQUssRUFBRUMsTUFBTSxFQUFFQyxPQUFPLEVBQUVDLFFBQVE7SUFFN0UsTUFBTSxDQUFDZSxXQUFXO0FBQ3BCLENBQUM7ZUFFYyxDQUFDO0lBQ2RyQixhQUFhLEVBQWJBLGFBQWE7SUFDYmlCLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCRyxpQkFBaUIsRUFBakJBLGlCQUFpQjtBQUNuQixDQUFDIn0=
|
|
@@ -16,8 +16,8 @@ function parseContent(content, args, regex) {
|
|
|
16
16
|
var lines = content.split("\n"), parsedLines = parseLines(lines, args, regex), parsedContent = parsedLines.join("\n");
|
|
17
17
|
return parsedContent;
|
|
18
18
|
}
|
|
19
|
-
function parseLine(line, args
|
|
20
|
-
var regex =
|
|
19
|
+
function parseLine(line, args) {
|
|
20
|
+
var regex = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : /\${(.+?)}/g;
|
|
21
21
|
var parsedLine = line.replace(regex, function(match, token) {
|
|
22
22
|
var parsedToken = parseToken(token, args);
|
|
23
23
|
return parsedToken;
|
|
@@ -45,4 +45,4 @@ function parseToken(token, args) {
|
|
|
45
45
|
return parsedToken;
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdGVtcGxhdGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IHJlYWRGaWxlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9maWxlU3lzdGVtXCI7XG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUZpbGUoZmlsZVBhdGgsIGFyZ3MsIHJlZ2V4KSB7XG4gIGNvbnN0IGNvbnRlbnQgPSByZWFkRmlsZShmaWxlUGF0aCksXG4gICAgICAgIHBhcnNlZENvbnRlbnQgPSBwYXJzZUNvbnRlbnQoY29udGVudCwgYXJncywgcmVnZXgpO1xuXG4gIHJldHVybiBwYXJzZWRDb250ZW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VDb250ZW50KGNvbnRlbnQsIGFyZ3MsIHJlZ2V4KSB7XG4gIGNvbnN0IGxpbmVzID0gY29udGVudC5zcGxpdChcIlxcblwiKSxcbiAgICAgICAgcGFyc2VkTGluZXMgPSBwYXJzZUxpbmVzKGxpbmVzLCBhcmdzLCByZWdleCksXG4gICAgICAgIHBhcnNlZENvbnRlbnQgPSBwYXJzZWRMaW5lcy5qb2luKFwiXFxuXCIpO1xuXG4gIHJldHVybiBwYXJzZWRDb250ZW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VMaW5lKGxpbmUsIGFyZ3MsIHJlZ2V4ID0gL1xcJHsoLis/KX0vZykge1xuICBjb25zdCBwYXJzZWRMaW5lID0gbGluZS5yZXBsYWNlKHJlZ2V4LCAobWF0Y2gsIHRva2VuKSA9PiB7XG4gICAgY29uc3QgcGFyc2VkVG9rZW4gPSBwYXJzZVRva2VuKHRva2VuLCBhcmdzKTtcblxuICAgIHJldHVybiBwYXJzZWRUb2tlbjtcbiAgfSk7XG5cbiAgcmV0dXJuIHBhcnNlZExpbmU7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgcGFyc2VGaWxlLFxuICBwYXJzZUNvbnRlbnQsXG4gIHBhcnNlTGluZVxufTtcblxuZnVuY3Rpb24gcGFyc2VMaW5lcyhsaW5lcywgYXJncywgcmVnZXgpIHtcbiAgY29uc3QgcGFyc2VkTGluZXMgPSBsaW5lcy5tYXAoKGxpbmUpID0+
|
|
48
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdGVtcGxhdGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IHJlYWRGaWxlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9maWxlU3lzdGVtXCI7XG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUZpbGUoZmlsZVBhdGgsIGFyZ3MsIHJlZ2V4KSB7XG4gIGNvbnN0IGNvbnRlbnQgPSByZWFkRmlsZShmaWxlUGF0aCksXG4gICAgICAgIHBhcnNlZENvbnRlbnQgPSBwYXJzZUNvbnRlbnQoY29udGVudCwgYXJncywgcmVnZXgpO1xuXG4gIHJldHVybiBwYXJzZWRDb250ZW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VDb250ZW50KGNvbnRlbnQsIGFyZ3MsIHJlZ2V4KSB7XG4gIGNvbnN0IGxpbmVzID0gY29udGVudC5zcGxpdChcIlxcblwiKSxcbiAgICAgICAgcGFyc2VkTGluZXMgPSBwYXJzZUxpbmVzKGxpbmVzLCBhcmdzLCByZWdleCksXG4gICAgICAgIHBhcnNlZENvbnRlbnQgPSBwYXJzZWRMaW5lcy5qb2luKFwiXFxuXCIpO1xuXG4gIHJldHVybiBwYXJzZWRDb250ZW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VMaW5lKGxpbmUsIGFyZ3MsIHJlZ2V4ID0gL1xcJHsoLis/KX0vZykge1xuICBjb25zdCBwYXJzZWRMaW5lID0gbGluZS5yZXBsYWNlKHJlZ2V4LCAobWF0Y2gsIHRva2VuKSA9PiB7XG4gICAgY29uc3QgcGFyc2VkVG9rZW4gPSBwYXJzZVRva2VuKHRva2VuLCBhcmdzKTtcblxuICAgIHJldHVybiBwYXJzZWRUb2tlbjtcbiAgfSk7XG5cbiAgcmV0dXJuIHBhcnNlZExpbmU7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgcGFyc2VGaWxlLFxuICBwYXJzZUNvbnRlbnQsXG4gIHBhcnNlTGluZVxufTtcblxuZnVuY3Rpb24gcGFyc2VMaW5lcyhsaW5lcywgYXJncywgcmVnZXgpIHtcbiAgY29uc3QgcGFyc2VkTGluZXMgPSBsaW5lcy5tYXAoKGxpbmUpID0+IHtcbiAgICBjb25zdCBwYXJzZWRMaW5lID0gcGFyc2VMaW5lKGxpbmUsIGFyZ3MsIHJlZ2V4KTtcblxuICAgIHJldHVybiBwYXJzZWRMaW5lO1xuICB9KTtcblxuICByZXR1cm4gcGFyc2VkTGluZXM7XG59XG5cbmZ1bmN0aW9uIHBhcnNlVG9rZW4odG9rZW4sIGFyZ3MpIHtcbiAgbGV0IHBhcnNlZFRva2VuID0gRU1QVFlfU1RSSU5HO1xuXG4gIGlmIChhcmdzLmhhc093blByb3BlcnR5KHRva2VuKSkge1xuICAgIHBhcnNlZFRva2VuID0gYXJnc1t0b2tlbl07XG4gIH1cblxuICByZXR1cm4gcGFyc2VkVG9rZW47XG59XG4iXSwibmFtZXMiOlsicGFyc2VGaWxlIiwicGFyc2VDb250ZW50IiwicGFyc2VMaW5lIiwiZmlsZVBhdGgiLCJhcmdzIiwicmVnZXgiLCJjb250ZW50IiwicGFyc2VkQ29udGVudCIsImxpbmVzIiwic3BsaXQiLCJwYXJzZWRMaW5lcyIsInBhcnNlTGluZXMiLCJqb2luIiwibGluZSIsInBhcnNlZExpbmUiLCJyZXBsYWNlIiwidG9rZW4iLCJtYXRjaCIsInBhcnNlZFRva2VuIiwicGFyc2VUb2tlbiIsIm1hcCIsImhhc093blByb3BlcnR5Il0sIm1hcHBpbmdzIjoiQUFBQSxDQUFZOzs7O1FBS0lBLFNBQVMsR0FBVEEsU0FBUztRQU9UQyxZQUFZLEdBQVpBLFlBQVk7UUFRWkMsU0FBUyxHQUFUQSxTQUFTOztBQWxCQSxHQUF5QixDQUF6QixXQUF5QjtBQUNyQixHQUFjLENBQWQsVUFBYztTQUUzQkYsU0FBUyxDQUFDRyxRQUFRLEVBQUVDLElBQUksRUFBRUMsS0FBSyxFQUFFLENBQUM7SUFDaEQsR0FBSyxDQUFDQyxPQUFPLE9BSlUsV0FBeUIsV0FJdkJILFFBQVEsR0FDM0JJLGFBQWEsR0FBR04sWUFBWSxDQUFDSyxPQUFPLEVBQUVGLElBQUksRUFBRUMsS0FBSztJQUV2RCxNQUFNLENBQUNFLGFBQWE7QUFDdEIsQ0FBQztTQUVlTixZQUFZLENBQUNLLE9BQU8sRUFBRUYsSUFBSSxFQUFFQyxLQUFLLEVBQUUsQ0FBQztJQUNsRCxHQUFLLENBQUNHLEtBQUssR0FBR0YsT0FBTyxDQUFDRyxLQUFLLENBQUMsQ0FBSSxNQUMxQkMsV0FBVyxHQUFHQyxVQUFVLENBQUNILEtBQUssRUFBRUosSUFBSSxFQUFFQyxLQUFLLEdBQzNDRSxhQUFhLEdBQUdHLFdBQVcsQ0FBQ0UsSUFBSSxDQUFDLENBQUk7SUFFM0MsTUFBTSxDQUFDTCxhQUFhO0FBQ3RCLENBQUM7U0FFZUwsU0FBUyxDQUFDVyxJQUFJLEVBQUVULElBQUksRUFBd0IsQ0FBQztRQUF2QkMsS0FBSztJQUN6QyxHQUFLLENBQUNTLFVBQVUsR0FBR0QsSUFBSSxDQUFDRSxPQUFPLENBQUNWLEtBQUssRUFBRSxRQUFRVyxDQUFQQyxLQUFLLEVBQUVELEtBQUssRUFBSyxDQUFDO1FBQ3hELEdBQUssQ0FBQ0UsV0FBVyxHQUFHQyxVQUFVLENBQUNILEtBQUssRUFBRVosSUFBSTtRQUUxQyxNQUFNLENBQUNjLFdBQVc7SUFDcEIsQ0FBQztJQUVELE1BQU0sQ0FBQ0osVUFBVTtBQUNuQixDQUFDO2VBRWMsQ0FBQztJQUNkZCxTQUFTLEVBQVRBLFNBQVM7SUFDVEMsWUFBWSxFQUFaQSxZQUFZO0lBQ1pDLFNBQVMsRUFBVEEsU0FBUztBQUNYLENBQUM7O1NBRVFTLFVBQVUsQ0FBQ0gsS0FBSyxFQUFFSixJQUFJLEVBQUVDLEtBQUssRUFBRSxDQUFDO0lBQ3ZDLEdBQUssQ0FBQ0ssV0FBVyxHQUFHRixLQUFLLENBQUNZLEdBQUcsQ0FBQyxRQUFRLENBQVBQLElBQUksRUFBSyxDQUFDO1FBQ3ZDLEdBQUssQ0FBQ0MsVUFBVSxHQUFHWixTQUFTLENBQUNXLElBQUksRUFBRVQsSUFBSSxFQUFFQyxLQUFLO1FBRTlDLE1BQU0sQ0FBQ1MsVUFBVTtJQUNuQixDQUFDO0lBRUQsTUFBTSxDQUFDSixXQUFXO0FBQ3BCLENBQUM7U0FFUVMsVUFBVSxDQUFDSCxLQUFLLEVBQUVaLElBQUksRUFBRSxDQUFDO0lBQ2hDLEdBQUcsQ0FBQ2MsV0FBVyxHQTVDWSxVQUFjO0lBOEN6QyxFQUFFLEVBQUVkLElBQUksQ0FBQ2lCLGNBQWMsQ0FBQ0wsS0FBSyxHQUFHLENBQUM7UUFDL0JFLFdBQVcsR0FBR2QsSUFBSSxDQUFDWSxLQUFLO0lBQzFCLENBQUM7SUFFRCxNQUFNLENBQUNFLFdBQVc7QUFDcEIsQ0FBQyJ9
|
package/package.json
CHANGED
package/src/utilities/ajax.js
CHANGED
|
@@ -52,11 +52,11 @@ export function request(host, uri, query, method, headers, content, callback) {
|
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
xmlHttpRequest.onreadystatechange = () => {
|
|
55
|
-
const { readyState, status,
|
|
55
|
+
const { readyState, status, response } = xmlHttpRequest,
|
|
56
56
|
statusCode = status;
|
|
57
57
|
|
|
58
58
|
if (readyState == 4) {
|
|
59
|
-
let content =
|
|
59
|
+
let content = response;
|
|
60
60
|
|
|
61
61
|
if (accept === APPLICATION_JSON_CONTENT_TYPE) {
|
|
62
62
|
try {
|
|
@@ -67,9 +67,9 @@ export function request(host, uri, query, method, headers, content, callback) {
|
|
|
67
67
|
} catch (error) {
|
|
68
68
|
content = null;
|
|
69
69
|
}
|
|
70
|
-
|
|
71
|
-
callback(content, statusCode);
|
|
72
70
|
}
|
|
71
|
+
|
|
72
|
+
callback(content, statusCode);
|
|
73
73
|
}
|
|
74
74
|
};
|
|
75
75
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
export function whilst(
|
|
3
|
+
export function whilst(operation, done, context) {
|
|
4
4
|
let count = -1;
|
|
5
5
|
|
|
6
6
|
function next() {
|
|
7
7
|
count++;
|
|
8
8
|
|
|
9
9
|
const index = count, ///
|
|
10
|
-
terminate =
|
|
10
|
+
terminate = operation(next, done, context, index);
|
|
11
11
|
|
|
12
12
|
if (terminate) {
|
|
13
13
|
done();
|
|
@@ -17,7 +17,7 @@ export function whilst(callback, done, context) {
|
|
|
17
17
|
next();
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
export function forEach(array,
|
|
20
|
+
export function forEach(array, operation, done, context) {
|
|
21
21
|
const length = array.length; ///
|
|
22
22
|
|
|
23
23
|
let count = -1;
|
|
@@ -33,15 +33,15 @@ export function forEach(array, callback, done, context) {
|
|
|
33
33
|
const index = count, ///
|
|
34
34
|
element = array[index];
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
operation(element, next, done, context, index);
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
next();
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
export function sequence(
|
|
44
|
-
const length =
|
|
43
|
+
export function sequence(operations, done, context) {
|
|
44
|
+
const length = operations.length; ///
|
|
45
45
|
|
|
46
46
|
let count = -1;
|
|
47
47
|
|
|
@@ -54,17 +54,17 @@ export function sequence(callbacks, done, context) {
|
|
|
54
54
|
done();
|
|
55
55
|
} else {
|
|
56
56
|
const index = count, ///
|
|
57
|
-
|
|
57
|
+
operation = operations[index];
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
operation(next, done, context, index);
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
next();
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
export function eventually(
|
|
67
|
-
const length =
|
|
66
|
+
export function eventually(operations, done, context) {
|
|
67
|
+
const length = operations.length; ///
|
|
68
68
|
|
|
69
69
|
let count = 0;
|
|
70
70
|
|
|
@@ -78,12 +78,12 @@ export function eventually(callbacks, done, context) {
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
-
|
|
82
|
-
|
|
81
|
+
operations.forEach((operation, index) => {
|
|
82
|
+
operation(next, done, context, index);
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
85
|
|
|
86
|
-
export function repeatedly(
|
|
86
|
+
export function repeatedly(operation, length, done, context) {
|
|
87
87
|
let count = 0;
|
|
88
88
|
|
|
89
89
|
function next() {
|
|
@@ -97,11 +97,11 @@ export function repeatedly(callback, length, done, context) {
|
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
for (let index = 0; index < length; index++) {
|
|
100
|
-
|
|
100
|
+
operation(next, done, context, index);
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
-
export function forwardsForEach(array,
|
|
104
|
+
export function forwardsForEach(array, operation, done, context) {
|
|
105
105
|
const length = array.length; ///
|
|
106
106
|
|
|
107
107
|
let count = -1;
|
|
@@ -117,14 +117,14 @@ export function forwardsForEach(array, callback, done, context) {
|
|
|
117
117
|
const index = count, ///
|
|
118
118
|
element = array[index];
|
|
119
119
|
|
|
120
|
-
|
|
120
|
+
operation(element, next, done, context, index);
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
next();
|
|
125
125
|
}
|
|
126
126
|
|
|
127
|
-
export function backwardsForEach(array,
|
|
127
|
+
export function backwardsForEach(array, operation, done, context) {
|
|
128
128
|
const length = array.length; ///
|
|
129
129
|
|
|
130
130
|
let count = length;
|
|
@@ -140,7 +140,7 @@ export function backwardsForEach(array, callback, done, context) {
|
|
|
140
140
|
const index = count, ///
|
|
141
141
|
element = array[index];
|
|
142
142
|
|
|
143
|
-
|
|
143
|
+
operation(element, next, done, context, index);
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
146
|
|