ts2famix 2.1.0-beta.1 → 2.1.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analyze.js +18 -8
- package/dist/analyze_functions/process_functions.js +18 -8
- package/dist/famix_functions/EntityDictionary.js +20 -10
- package/dist/famix_functions/helpers_creation.js +18 -8
- package/dist/lib/famix/famix_repository.js +18 -8
- package/dist/lib/famix/index.js +18 -8
- package/dist/refactorer/refactor-getter-setter.js +18 -8
- package/dist/ts2famix-cli-wrapper.js +18 -8
- package/dist/ts2famix-cli.js +18 -8
- package/dist/ts2famix-tsconfig.js +18 -8
- package/package.json +1 -1
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
36
|
exports.indexOfSplitArray = indexOfSplitArray;
|
|
27
37
|
exports.getSubTypeName = getSubTypeName;
|
|
@@ -145,4 +155,4 @@ function replaceLastBetweenTags(input, replacement) {
|
|
|
145
155
|
const afterTag = input.substring(closingTagIndex); // Include '>'
|
|
146
156
|
return beforeTag + replacement + afterTag;
|
|
147
157
|
}
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVyc19jcmVhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mYW1peF9mdW5jdGlvbnMvaGVscGVyc19jcmVhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBZUEsOENBZUM7QUFFRCx3Q0FpQkM7QUFPRCw0Q0FHQztBQU9ELG9DQWdCQztBQU9ELDRDQWtCQztBQUVELHdDQU1DO0FBRUQsd0RBaUJDO0FBdElELGdFQUFrRDtBQUNsRCx3Q0FBb0M7QUFDcEMsdUNBQWtVO0FBU2xVOzs7R0FHRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLE1BQXdCO0lBQ3RELE1BQU0sRUFBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUMsR0FBRyxNQUFNLENBQUM7SUFDckQsS0FBSyxJQUFJLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ3BFLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQztRQUNqQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzFDLElBQUksV0FBVyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDeEMsS0FBSyxHQUFHLEtBQUssQ0FBQztnQkFDZCxNQUFNO1lBQ1YsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1IsT0FBTyxDQUFDLENBQUMsQ0FBQyxvREFBb0Q7UUFDbEUsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsa0VBQWtFO0FBQ2pGLENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsY0FBaUM7SUFDNUQsTUFBTSxJQUFJLEdBQUcsY0FBYyxZQUFZLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFELGNBQWMsWUFBWSxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNyRCxjQUFjLFlBQVksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ25ELGNBQWMsWUFBWSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDM0MsY0FBYyxZQUFZLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO3dCQUNyRCxjQUFjLFlBQVksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7NEJBQzdDLGNBQWMsWUFBWSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQ0FDbkQsY0FBYyxZQUFZLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO29DQUMzQyxjQUFjLFlBQVksS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7d0NBQy9DLGNBQWMsWUFBWSxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzs0Q0FDckQsY0FBYyxZQUFZLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dEQUNuRCxjQUFjLFlBQVksS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7b0RBQ3JELGNBQWMsWUFBWSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQzt3REFDbkQsYUFBYSxDQUFDO0lBQ2xFLGdCQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsY0FBYyxDQUFDLElBQUksZUFBZSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzFELE9BQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQUMsSUFBWTtJQUN6QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0MsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ3RELENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLElBQWdCO0lBQ3pDLElBQUksUUFBMEIsQ0FBQztJQUMvQixRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNwQyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUsscUJBQVUsQ0FBQyxpQkFBaUI7UUFDNUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLHFCQUFVLENBQUMsV0FBVztRQUN0QyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUsscUJBQVUsQ0FBQyxtQkFBbUI7UUFDOUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLHFCQUFVLENBQUMsa0JBQWtCO1FBQzdDLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxxQkFBVSxDQUFDLGlCQUFpQjtRQUM1QyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUsscUJBQVUsQ0FBQyxVQUFVO1FBQ3JDLENBQUMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxhQUFhO1FBQ2pDLENBQUMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxhQUFhO1FBQ2pDLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxxQkFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDakQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBQ0QsT0FBTyxRQUFRLENBQUE7QUFDbkIsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixnQkFBZ0IsQ0FBQyxPQUErQjtJQUM1RCxJQUFJLFFBQTBCLENBQUM7SUFDL0IsUUFBUSxHQUFHLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDdkMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLHFCQUFVLENBQUMsaUJBQWlCO1FBQzVDLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxxQkFBVSxDQUFDLFdBQVc7UUFDdEMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLHFCQUFVLENBQUMsZUFBZTtRQUMxQyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUsscUJBQVUsQ0FBQyxtQkFBbUI7UUFDOUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLHFCQUFVLENBQUMsa0JBQWtCO1FBQzdDLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxxQkFBVSxDQUFDLGlCQUFpQjtRQUM1QyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUsscUJBQVUsQ0FBQyxVQUFVO1FBQ3JDLENBQUMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxhQUFhO1FBQ2pDLENBQUMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxhQUFhO1FBQ2pDLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxxQkFBVSxDQUFDLGdCQUFnQjtRQUMzQyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUsscUJBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3JELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsTUFBZ0IsRUFBRSxNQUFnQjtJQUM3RCxJQUFJLE1BQU0sSUFBSSxNQUFNLEVBQUcsQ0FBQztRQUNwQixPQUFPLE1BQU0sQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztBQUNMLENBQUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxLQUFhLEVBQUUsV0FBbUI7SUFDckUsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUU1QyxJQUFJLFlBQVksS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sS0FBSyxDQUFDLENBQUMsa0RBQWtEO0lBQ3BFLENBQUM7SUFFRCxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUV6RCxJQUFJLGVBQWUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3pCLE9BQU8sS0FBSyxDQUFDLENBQUMsd0RBQXdEO0lBQzFFLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjO0lBQ3RFLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxjQUFjO0lBRWpFLE9BQU8sU0FBUyxHQUFHLFdBQVcsR0FBRyxRQUFRLENBQUM7QUFDOUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEZhbWl4IGZyb20gXCIuLi9saWIvZmFtaXgvbW9kZWwvZmFtaXhcIjtcclxuaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSBcIi4uL2FuYWx5emVcIjtcclxuaW1wb3J0IHsgQ29uc3RydWN0b3JEZWNsYXJhdGlvbiwgSWRlbnRpZmllciwgRnVuY3Rpb25EZWNsYXJhdGlvbiwgTWV0aG9kRGVjbGFyYXRpb24sIE1ldGhvZFNpZ25hdHVyZSwgUHJvcGVydHlEZWNsYXJhdGlvbiwgUHJvcGVydHlTaWduYXR1cmUsIFZhcmlhYmxlRGVjbGFyYXRpb24sIFBhcmFtZXRlckRlY2xhcmF0aW9uLCBHZXRBY2Nlc3NvckRlY2xhcmF0aW9uLCBTZXRBY2Nlc3NvckRlY2xhcmF0aW9uLCBFbnVtTWVtYmVyLCBUeXBlQWxpYXNEZWNsYXJhdGlvbiwgTm9kZSwgU3ludGF4S2luZCwgRnVuY3Rpb25FeHByZXNzaW9uIH0gZnJvbSBcInRzLW1vcnBoXCI7XHJcbmltcG9ydCB7IFRTTW9ycGhUeXBlRGVjbGFyYXRpb24gfSBmcm9tIFwiLi9FbnRpdHlEaWN0aW9uYXJ5XCI7XHJcblxyXG5pbnRlcmZhY2UgU2VhcmNoUGFyYW1ldGVycyB7XHJcbiAgICBzZWFyY2hBcnJheTogc3RyaW5nW107XHJcbiAgICB0YXJnZXRBcnJheTogc3RyaW5nW107XHJcbiAgICBzdGFydD86IG51bWJlcjtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRoaXMgZnVuY3Rpb24gd29ya3MgbGlrZSBpbmRleE9mLCBidXQgaXQgd29ya3Mgd2l0aCBhcnJheXMgb2YgZ3JhcGhlbWUgY2x1c3RlcnMuXHJcbiAqIEBwYXJhbSB0YXJnZXRBcnJheVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGluZGV4T2ZTcGxpdEFycmF5KHBhcmFtczogU2VhcmNoUGFyYW1ldGVycyk6IG51bWJlciB7XHJcbiAgICBjb25zdCB7c2VhcmNoQXJyYXksIHRhcmdldEFycmF5LCBzdGFydCA9IDB9ID0gcGFyYW1zO1xyXG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0OyBpIDw9IHNlYXJjaEFycmF5Lmxlbmd0aCAtIHRhcmdldEFycmF5Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgbGV0IGZvdW5kID0gdHJ1ZTtcclxuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHRhcmdldEFycmF5Lmxlbmd0aDsgaisrKSB7XHJcbiAgICAgICAgICAgIGlmIChzZWFyY2hBcnJheVtpICsgal0gIT09IHRhcmdldEFycmF5W2pdKSB7XHJcbiAgICAgICAgICAgICAgICBmb3VuZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZvdW5kKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBpOyAvLyBSZXR1cm4gdGhlIGluZGV4IHdoZXJlIHRoZSB0YXJnZXQgYXJyYXkgd2FzIGZvdW5kXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIC0xOyAvLyBSZXR1cm4gLTEgaWYgdGhlIHRhcmdldCBhcnJheSB3YXMgbm90IGZvdW5kIGluIHRoZSBzZWFyY2ggYXJyYXlcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFN1YlR5cGVOYW1lKGZteE5hbWVkRW50aXR5OiBGYW1peC5OYW1lZEVudGl0eSkge1xyXG4gICAgY29uc3QgbmFtZSA9IGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguQ2xhc3MgPyAnQ2xhc3MnIDpcclxuICAgICAgICBmbXhOYW1lZEVudGl0eSBpbnN0YW5jZW9mIEZhbWl4LkludGVyZmFjZSA/ICdJbnRlcmZhY2UnIDpcclxuICAgICAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5GdW5jdGlvbiA/ICdGdW5jdGlvbicgOlxyXG4gICAgICAgICAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5FbnVtID8gJ0VudW0nIDpcclxuICAgICAgICAgICAgICAgICAgICBmbXhOYW1lZEVudGl0eSBpbnN0YW5jZW9mIEZhbWl4LkVudW1WYWx1ZSA/ICdFbnVtVmFsdWUnIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5BbGlhcyA/ICdBbGlhcycgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5WYXJpYWJsZSA/ICdWYXJpYWJsZScgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguVHlwZSA/ICdUeXBlJyA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguTWV0aG9kID8gJ01ldGhvZCcgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5EZWNvcmF0b3IgPyAnRGVjb3JhdG9yJyA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5BY2Nlc3NvciA/ICdBY2Nlc3NvcicgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbXhOYW1lZEVudGl0eSBpbnN0YW5jZW9mIEZhbWl4LlBhcmFtZXRlciA/ICdQYXJhbWV0ZXInIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguUHJvcGVydHkgPyAnUHJvcGVydHknIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnTmFtZWRFbnRpdHknO1xyXG4gICAgbG9nZ2VyLmRlYnVnKGAke2ZteE5hbWVkRW50aXR5Lm5hbWV9IGlzIG9mIHR5cGUgJHtuYW1lfWApO1xyXG4gICAgcmV0dXJuIG5hbWU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZXRzIHRoZSBzaWduYXR1cmUgb2YgYSBtZXRob2Qgb3IgYSBmdW5jdGlvblxyXG4gKiBAcGFyYW0gdGV4dCBBIG1ldGhvZCBvciBhIGZ1bmN0aW9uIHNvdXJjZSBjb2RlXHJcbiAqIEByZXR1cm5zIFRoZSBzaWduYXR1cmUgb2YgdGhlIG1ldGhvZCBvciB0aGUgZnVuY3Rpb25cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlU2lnbmF0dXJlKHRleHQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBlbmRTaWduYXR1cmVUZXh0ID0gdGV4dC5pbmRleE9mKFwie1wiKTtcclxuICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZygwLCBlbmRTaWduYXR1cmVUZXh0KS50cmltKCk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBGaW5kcyB0aGUgYW5jZXN0b3Igb2YgYSBub2RlXHJcbiAqIEBwYXJhbSBub2RlIEEgbm9kZVxyXG4gKiBAcmV0dXJucyBUaGUgYW5jZXN0b3Igb2YgdGhlIG5vZGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBmaW5kQW5jZXN0b3Iobm9kZTogSWRlbnRpZmllcik6IE5vZGUge1xyXG4gICAgbGV0IGFuY2VzdG9yOiBOb2RlIHwgdW5kZWZpbmVkO1xyXG4gICAgYW5jZXN0b3IgPSBub2RlLmdldEFuY2VzdG9ycygpLmZpbmQoYSA9PiBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5NZXRob2REZWNsYXJhdGlvbiB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5Db25zdHJ1Y3RvciB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5GdW5jdGlvbkRlY2xhcmF0aW9uIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLkZ1bmN0aW9uRXhwcmVzc2lvbiB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5Nb2R1bGVEZWNsYXJhdGlvbiB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5Tb3VyY2VGaWxlIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZE5hbWUoKSA9PT0gXCJHZXRBY2Nlc3NvclwiIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZE5hbWUoKSA9PT0gXCJTZXRBY2Nlc3NvclwiIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLkNsYXNzRGVjbGFyYXRpb24pO1xyXG4gICAgaWYgKCFhbmNlc3Rvcikge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQW5jZXN0b3Igbm90IGZvdW5kIGZvciAke25vZGUuZ2V0VGV4dCgpfWApO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGFuY2VzdG9yXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBGaW5kcyB0aGUgYW5jZXN0b3Igb2YgYSB0cy1tb3JwaCBlbGVtZW50XHJcbiAqIEBwYXJhbSBlbGVtZW50IEEgdHMtbW9ycGggZWxlbWVudFxyXG4gKiBAcmV0dXJucyBUaGUgYW5jZXN0b3Igb2YgdGhlIHRzLW1vcnBoIGVsZW1lbnRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBmaW5kVHlwZUFuY2VzdG9yKGVsZW1lbnQ6IFRTTW9ycGhUeXBlRGVjbGFyYXRpb24pOiBOb2RlIHtcclxuICAgIGxldCBhbmNlc3RvcjogTm9kZSB8IHVuZGVmaW5lZDtcclxuICAgIGFuY2VzdG9yID0gZWxlbWVudC5nZXRBbmNlc3RvcnMoKS5maW5kKGEgPT4gXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuTWV0aG9kRGVjbGFyYXRpb24gfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuQ29uc3RydWN0b3IgfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuTWV0aG9kU2lnbmF0dXJlIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLkZ1bmN0aW9uRGVjbGFyYXRpb24gfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuRnVuY3Rpb25FeHByZXNzaW9uIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLk1vZHVsZURlY2xhcmF0aW9uIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLlNvdXJjZUZpbGUgfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kTmFtZSgpID09PSBcIkdldEFjY2Vzc29yXCIgfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kTmFtZSgpID09PSBcIlNldEFjY2Vzc29yXCIgfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuQ2xhc3NEZWNsYXJhdGlvbiB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5JbnRlcmZhY2VEZWNsYXJhdGlvbik7XHJcbiAgICBpZiAoIWFuY2VzdG9yKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUeXBlIGFuY2VzdG9yIG5vdCBmb3VuZCBmb3IgJHtlbGVtZW50LmdldEtpbmROYW1lKCl9YCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYW5jZXN0b3I7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBhcnJheXNBcmVFcXVhbChhcnJheTE6IHN0cmluZ1tdLCBhcnJheTI6IHN0cmluZ1tdKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoYXJyYXkxICYmIGFycmF5MiApIHtcclxuICAgICAgICByZXR1cm4gYXJyYXkxLmxlbmd0aCA9PT0gYXJyYXkyLmxlbmd0aCAmJiBhcnJheTEuZXZlcnkoKHZhbHVlLCBpbmRleCkgPT4gdmFsdWUgPT09IGFycmF5MltpbmRleF0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZXBsYWNlTGFzdEJldHdlZW5UYWdzKGlucHV0OiBzdHJpbmcsIHJlcGxhY2VtZW50OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgbGFzdFRhZ0luZGV4ID0gaW5wdXQubGFzdEluZGV4T2YoJzwnKTtcclxuICAgIFxyXG4gICAgaWYgKGxhc3RUYWdJbmRleCA9PT0gLTEpIHtcclxuICAgICAgICByZXR1cm4gaW5wdXQ7IC8vIFJldHVybiB0aGUgb3JpZ2luYWwgc3RyaW5nIGlmIG5vIHRhZ3MgYXJlIGZvdW5kXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY2xvc2luZ1RhZ0luZGV4ID0gaW5wdXQuaW5kZXhPZignPicsIGxhc3RUYWdJbmRleCk7XHJcbiAgICBcclxuICAgIGlmIChjbG9zaW5nVGFnSW5kZXggPT09IC0xKSB7XHJcbiAgICAgICAgcmV0dXJuIGlucHV0OyAvLyBSZXR1cm4gdGhlIG9yaWdpbmFsIHN0cmluZyBpZiBubyBjbG9zaW5nIHRhZyBpcyBmb3VuZFxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGJlZm9yZVRhZyA9IGlucHV0LnN1YnN0cmluZygwLCBsYXN0VGFnSW5kZXggKyAxKTsgLy8gSW5jbHVkZSAnPCdcclxuICAgIGNvbnN0IGFmdGVyVGFnID0gaW5wdXQuc3Vic3RyaW5nKGNsb3NpbmdUYWdJbmRleCk7IC8vIEluY2x1ZGUgJz4nXHJcblxyXG4gICAgcmV0dXJuIGJlZm9yZVRhZyArIHJlcGxhY2VtZW50ICsgYWZ0ZXJUYWc7XHJcbn1cclxuIl19
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVyc19jcmVhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mYW1peF9mdW5jdGlvbnMvaGVscGVyc19jcmVhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWVBLDhDQWVDO0FBRUQsd0NBaUJDO0FBT0QsNENBR0M7QUFPRCxvQ0FnQkM7QUFPRCw0Q0FrQkM7QUFFRCx3Q0FNQztBQUVELHdEQWlCQztBQXRJRCxnRUFBa0Q7QUFDbEQsd0NBQW9DO0FBQ3BDLHVDQUFrVTtBQVNsVTs7O0dBR0c7QUFDSCxTQUFnQixpQkFBaUIsQ0FBQyxNQUF3QjtJQUN0RCxNQUFNLEVBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFDLEdBQUcsTUFBTSxDQUFDO0lBQ3JELEtBQUssSUFBSSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsSUFBSSxXQUFXLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNwRSxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDakIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3hDLEtBQUssR0FBRyxLQUFLLENBQUM7Z0JBQ2QsTUFBTTtZQUNWLENBQUM7UUFDTCxDQUFDO1FBQ0QsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNSLE9BQU8sQ0FBQyxDQUFDLENBQUMsb0RBQW9EO1FBQ2xFLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtFQUFrRTtBQUNqRixDQUFDO0FBRUQsU0FB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TyxNQUFNLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN0RyxDQUFDO1NBQU0sQ0FBQztRQUNKLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7QUFDTCxDQUFDO0FBRUQsU0FBZ0Isc0JBQXNCLENBQUMsS0FBYSxFQUFFLFdBQW1CO0lBQ3JFLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFNUMsSUFBSSxZQUFZLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN0QixPQUFPLEtBQUssQ0FBQyxDQUFDLGtEQUFrRDtJQUNwRSxDQUFDO0lBRUQsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFFekQsSUFBSSxlQUFlLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN6QixPQUFPLEtBQUssQ0FBQyxDQUFDLHdEQUF3RDtJQUMxRSxDQUFDO0lBRUQsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYztJQUN0RSxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsY0FBYztJQUVqRSxPQUFPLFNBQVMsR0FBRyxXQUFXLEdBQUcsUUFBUSxDQUFDO0FBQzlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBGYW1peCBmcm9tIFwiLi4vbGliL2ZhbWl4L21vZGVsL2ZhbWl4XCI7XHJcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gXCIuLi9hbmFseXplXCI7XHJcbmltcG9ydCB7IENvbnN0cnVjdG9yRGVjbGFyYXRpb24sIElkZW50aWZpZXIsIEZ1bmN0aW9uRGVjbGFyYXRpb24sIE1ldGhvZERlY2xhcmF0aW9uLCBNZXRob2RTaWduYXR1cmUsIFByb3BlcnR5RGVjbGFyYXRpb24sIFByb3BlcnR5U2lnbmF0dXJlLCBWYXJpYWJsZURlY2xhcmF0aW9uLCBQYXJhbWV0ZXJEZWNsYXJhdGlvbiwgR2V0QWNjZXNzb3JEZWNsYXJhdGlvbiwgU2V0QWNjZXNzb3JEZWNsYXJhdGlvbiwgRW51bU1lbWJlciwgVHlwZUFsaWFzRGVjbGFyYXRpb24sIE5vZGUsIFN5bnRheEtpbmQsIEZ1bmN0aW9uRXhwcmVzc2lvbiB9IGZyb20gXCJ0cy1tb3JwaFwiO1xyXG5pbXBvcnQgeyBUU01vcnBoVHlwZURlY2xhcmF0aW9uIH0gZnJvbSBcIi4vRW50aXR5RGljdGlvbmFyeVwiO1xyXG5cclxuaW50ZXJmYWNlIFNlYXJjaFBhcmFtZXRlcnMge1xyXG4gICAgc2VhcmNoQXJyYXk6IHN0cmluZ1tdO1xyXG4gICAgdGFyZ2V0QXJyYXk6IHN0cmluZ1tdO1xyXG4gICAgc3RhcnQ/OiBudW1iZXI7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUaGlzIGZ1bmN0aW9uIHdvcmtzIGxpa2UgaW5kZXhPZiwgYnV0IGl0IHdvcmtzIHdpdGggYXJyYXlzIG9mIGdyYXBoZW1lIGNsdXN0ZXJzLlxyXG4gKiBAcGFyYW0gdGFyZ2V0QXJyYXlcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpbmRleE9mU3BsaXRBcnJheShwYXJhbXM6IFNlYXJjaFBhcmFtZXRlcnMpOiBudW1iZXIge1xyXG4gICAgY29uc3Qge3NlYXJjaEFycmF5LCB0YXJnZXRBcnJheSwgc3RhcnQgPSAwfSA9IHBhcmFtcztcclxuICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8PSBzZWFyY2hBcnJheS5sZW5ndGggLSB0YXJnZXRBcnJheS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGxldCBmb3VuZCA9IHRydWU7XHJcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0YXJnZXRBcnJheS5sZW5ndGg7IGorKykge1xyXG4gICAgICAgICAgICBpZiAoc2VhcmNoQXJyYXlbaSArIGpdICE9PSB0YXJnZXRBcnJheVtqXSkge1xyXG4gICAgICAgICAgICAgICAgZm91bmQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChmb3VuZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gaTsgLy8gUmV0dXJuIHRoZSBpbmRleCB3aGVyZSB0aGUgdGFyZ2V0IGFycmF5IHdhcyBmb3VuZFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiAtMTsgLy8gUmV0dXJuIC0xIGlmIHRoZSB0YXJnZXQgYXJyYXkgd2FzIG5vdCBmb3VuZCBpbiB0aGUgc2VhcmNoIGFycmF5XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRTdWJUeXBlTmFtZShmbXhOYW1lZEVudGl0eTogRmFtaXguTmFtZWRFbnRpdHkpIHtcclxuICAgIGNvbnN0IG5hbWUgPSBmbXhOYW1lZEVudGl0eSBpbnN0YW5jZW9mIEZhbWl4LkNsYXNzID8gJ0NsYXNzJyA6XHJcbiAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5JbnRlcmZhY2UgPyAnSW50ZXJmYWNlJyA6XHJcbiAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguRnVuY3Rpb24gPyAnRnVuY3Rpb24nIDpcclxuICAgICAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguRW51bSA/ICdFbnVtJyA6XHJcbiAgICAgICAgICAgICAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5FbnVtVmFsdWUgPyAnRW51bVZhbHVlJyA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguQWxpYXMgPyAnQWxpYXMnIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguVmFyaWFibGUgPyAnVmFyaWFibGUnIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbXhOYW1lZEVudGl0eSBpbnN0YW5jZW9mIEZhbWl4LlR5cGUgPyAnVHlwZScgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbXhOYW1lZEVudGl0eSBpbnN0YW5jZW9mIEZhbWl4Lk1ldGhvZCA/ICdNZXRob2QnIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguRGVjb3JhdG9yID8gJ0RlY29yYXRvcicgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZteE5hbWVkRW50aXR5IGluc3RhbmNlb2YgRmFtaXguQWNjZXNzb3IgPyAnQWNjZXNzb3InIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm14TmFtZWRFbnRpdHkgaW5zdGFuY2VvZiBGYW1peC5QYXJhbWV0ZXIgPyAnUGFyYW1ldGVyJyA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbXhOYW1lZEVudGl0eSBpbnN0YW5jZW9mIEZhbWl4LlByb3BlcnR5ID8gJ1Byb3BlcnR5JyA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ05hbWVkRW50aXR5JztcclxuICAgIGxvZ2dlci5kZWJ1ZyhgJHtmbXhOYW1lZEVudGl0eS5uYW1lfSBpcyBvZiB0eXBlICR7bmFtZX1gKTtcclxuICAgIHJldHVybiBuYW1lO1xyXG59XHJcblxyXG4vKipcclxuICogR2V0cyB0aGUgc2lnbmF0dXJlIG9mIGEgbWV0aG9kIG9yIGEgZnVuY3Rpb25cclxuICogQHBhcmFtIHRleHQgQSBtZXRob2Qgb3IgYSBmdW5jdGlvbiBzb3VyY2UgY29kZVxyXG4gKiBAcmV0dXJucyBUaGUgc2lnbmF0dXJlIG9mIHRoZSBtZXRob2Qgb3IgdGhlIGZ1bmN0aW9uXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gY29tcHV0ZVNpZ25hdHVyZSh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgZW5kU2lnbmF0dXJlVGV4dCA9IHRleHQuaW5kZXhPZihcIntcIik7XHJcbiAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgZW5kU2lnbmF0dXJlVGV4dCkudHJpbSgpO1xyXG59XHJcblxyXG4vKipcclxuICogRmluZHMgdGhlIGFuY2VzdG9yIG9mIGEgbm9kZVxyXG4gKiBAcGFyYW0gbm9kZSBBIG5vZGVcclxuICogQHJldHVybnMgVGhlIGFuY2VzdG9yIG9mIHRoZSBub2RlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZmluZEFuY2VzdG9yKG5vZGU6IElkZW50aWZpZXIpOiBOb2RlIHtcclxuICAgIGxldCBhbmNlc3RvcjogTm9kZSB8IHVuZGVmaW5lZDtcclxuICAgIGFuY2VzdG9yID0gbm9kZS5nZXRBbmNlc3RvcnMoKS5maW5kKGEgPT4gXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuTWV0aG9kRGVjbGFyYXRpb24gfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuQ29uc3RydWN0b3IgfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuRnVuY3Rpb25EZWNsYXJhdGlvbiB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5GdW5jdGlvbkV4cHJlc3Npb24gfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuTW9kdWxlRGVjbGFyYXRpb24gfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuU291cmNlRmlsZSB8fCBcclxuICAgICAgICBhLmdldEtpbmROYW1lKCkgPT09IFwiR2V0QWNjZXNzb3JcIiB8fCBcclxuICAgICAgICBhLmdldEtpbmROYW1lKCkgPT09IFwiU2V0QWNjZXNzb3JcIiB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5DbGFzc0RlY2xhcmF0aW9uKTtcclxuICAgIGlmICghYW5jZXN0b3IpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEFuY2VzdG9yIG5vdCBmb3VuZCBmb3IgJHtub2RlLmdldFRleHQoKX1gKTtcclxuICAgIH1cclxuICAgIHJldHVybiBhbmNlc3RvclxyXG59XHJcblxyXG4vKipcclxuICogRmluZHMgdGhlIGFuY2VzdG9yIG9mIGEgdHMtbW9ycGggZWxlbWVudFxyXG4gKiBAcGFyYW0gZWxlbWVudCBBIHRzLW1vcnBoIGVsZW1lbnRcclxuICogQHJldHVybnMgVGhlIGFuY2VzdG9yIG9mIHRoZSB0cy1tb3JwaCBlbGVtZW50XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZmluZFR5cGVBbmNlc3RvcihlbGVtZW50OiBUU01vcnBoVHlwZURlY2xhcmF0aW9uKTogTm9kZSB7XHJcbiAgICBsZXQgYW5jZXN0b3I6IE5vZGUgfCB1bmRlZmluZWQ7XHJcbiAgICBhbmNlc3RvciA9IGVsZW1lbnQuZ2V0QW5jZXN0b3JzKCkuZmluZChhID0+IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLk1ldGhvZERlY2xhcmF0aW9uIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLkNvbnN0cnVjdG9yIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLk1ldGhvZFNpZ25hdHVyZSB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5GdW5jdGlvbkRlY2xhcmF0aW9uIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLkZ1bmN0aW9uRXhwcmVzc2lvbiB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5Nb2R1bGVEZWNsYXJhdGlvbiB8fCBcclxuICAgICAgICBhLmdldEtpbmQoKSA9PT0gU3ludGF4S2luZC5Tb3VyY2VGaWxlIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZE5hbWUoKSA9PT0gXCJHZXRBY2Nlc3NvclwiIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZE5hbWUoKSA9PT0gXCJTZXRBY2Nlc3NvclwiIHx8IFxyXG4gICAgICAgIGEuZ2V0S2luZCgpID09PSBTeW50YXhLaW5kLkNsYXNzRGVjbGFyYXRpb24gfHwgXHJcbiAgICAgICAgYS5nZXRLaW5kKCkgPT09IFN5bnRheEtpbmQuSW50ZXJmYWNlRGVjbGFyYXRpb24pO1xyXG4gICAgaWYgKCFhbmNlc3Rvcikge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVHlwZSBhbmNlc3RvciBub3QgZm91bmQgZm9yICR7ZWxlbWVudC5nZXRLaW5kTmFtZSgpfWApO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGFuY2VzdG9yO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYXJyYXlzQXJlRXF1YWwoYXJyYXkxOiBzdHJpbmdbXSwgYXJyYXkyOiBzdHJpbmdbXSk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKGFycmF5MSAmJiBhcnJheTIgKSB7XHJcbiAgICAgICAgcmV0dXJuIGFycmF5MS5sZW5ndGggPT09IGFycmF5Mi5sZW5ndGggJiYgYXJyYXkxLmV2ZXJ5KCh2YWx1ZSwgaW5kZXgpID0+IHZhbHVlID09PSBhcnJheTJbaW5kZXhdKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZUxhc3RCZXR3ZWVuVGFncyhpbnB1dDogc3RyaW5nLCByZXBsYWNlbWVudDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGxhc3RUYWdJbmRleCA9IGlucHV0Lmxhc3RJbmRleE9mKCc8Jyk7XHJcbiAgICBcclxuICAgIGlmIChsYXN0VGFnSW5kZXggPT09IC0xKSB7XHJcbiAgICAgICAgcmV0dXJuIGlucHV0OyAvLyBSZXR1cm4gdGhlIG9yaWdpbmFsIHN0cmluZyBpZiBubyB0YWdzIGFyZSBmb3VuZFxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGNsb3NpbmdUYWdJbmRleCA9IGlucHV0LmluZGV4T2YoJz4nLCBsYXN0VGFnSW5kZXgpO1xyXG4gICAgXHJcbiAgICBpZiAoY2xvc2luZ1RhZ0luZGV4ID09PSAtMSkge1xyXG4gICAgICAgIHJldHVybiBpbnB1dDsgLy8gUmV0dXJuIHRoZSBvcmlnaW5hbCBzdHJpbmcgaWYgbm8gY2xvc2luZyB0YWcgaXMgZm91bmRcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBiZWZvcmVUYWcgPSBpbnB1dC5zdWJzdHJpbmcoMCwgbGFzdFRhZ0luZGV4ICsgMSk7IC8vIEluY2x1ZGUgJzwnXHJcbiAgICBjb25zdCBhZnRlclRhZyA9IGlucHV0LnN1YnN0cmluZyhjbG9zaW5nVGFnSW5kZXgpOyAvLyBJbmNsdWRlICc+J1xyXG5cclxuICAgIHJldHVybiBiZWZvcmVUYWcgKyByZXBsYWNlbWVudCArIGFmdGVyVGFnO1xyXG59XHJcbiJdfQ==
|
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
36
|
exports.FamixRepository = void 0;
|
|
27
37
|
const famix_1 = require("./model/famix");
|
|
@@ -276,4 +286,4 @@ class FamixRepository {
|
|
|
276
286
|
}
|
|
277
287
|
}
|
|
278
288
|
exports.FamixRepository = FamixRepository;
|
|
279
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFtaXhfcmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZmFtaXgvZmFtaXhfcmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHlDQUE0SztBQUM1SyxxREFBdUM7QUFFdkM7O0dBRUc7QUFDSCxNQUFhLGVBQWU7SUFjeEI7UUFiUSxhQUFRLEdBQUcsSUFBSSxHQUFHLEVBQW9CLENBQUMsQ0FBQyxxQkFBcUI7UUFDN0QsaUJBQVksR0FBRyxJQUFJLEdBQUcsRUFBUyxDQUFDLENBQUMsb0JBQW9CO1FBQ3JELG9CQUFlLEdBQUcsSUFBSSxHQUFHLEVBQWEsQ0FBQyxDQUFDLHVCQUF1QjtRQUMvRCxpQkFBWSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUMsQ0FBQyx1QkFBdUI7UUFDekQsaUJBQVksR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDLENBQUMsb0JBQW9CO1FBQ3RELG1CQUFjLEdBQUcsSUFBSSxHQUFHLEVBQVksQ0FBQyxDQUFDLHNCQUFzQjtRQUM1RCxtQkFBYyxHQUFHLElBQUksR0FBRyxFQUF1QixDQUFDLENBQUMsc0JBQXNCO1FBQ3ZFLGVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBeUIsQ0FBQyxDQUFDLGtCQUFrQjtRQUNqRSxjQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUMsYUFBYTtRQUM1QixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUMxQix3QkFBbUIsR0FBRyxJQUFJLEdBQUcsRUFBbUMsQ0FBQztRQUNqRSxxQkFBZ0IsR0FBRyxJQUFJLEdBQUcsRUFBbUMsQ0FBQyxDQUFDLGdGQUFnRjtRQUduSixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksc0JBQWMsRUFBRSxDQUFDLENBQUMsQ0FBRSw4Q0FBOEM7SUFDMUYsQ0FBQztJQUVNLHNCQUFzQixDQUFDLG1CQUF5RDtRQUNuRixJQUFJLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1C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QWtCLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzdJLENBQUM7WUFDRCxJQUFJLENBQUMsR0FBRyxDQUFFLE9BQXVCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUMxRCxDQUFDO0lBQ0wsQ0FBQztJQUdEOzs7T0FHRztJQUNJLE9BQU87UUFDVixJQUFJLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZCxLQUFLLE1BQU0sT0FBTyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDdkQsR0FBRyxHQUFHLEdBQUcsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsR0FBRyxDQUFDO1FBQ3hDLENBQUM7UUFDRCxHQUFHLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN2QyxPQUFPLEdBQUcsR0FBRyxHQUFHLENBQUM7SUFDckIsQ0FBQztDQUNKO0FBOVFELDBDQThRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhbWl4QmFzZUVsZW1lbnQgfSBmcm9tIFwiLi9mYW1peF9iYXNlX2VsZW1lbnRcIjtcclxuaW1wb3J0IHsgQ2xhc3MsIEludGVyZmFjZSwgVmFyaWFibGUsIE1ldGhvZCwgQXJyb3dGdW5jdGlvbiwgRnVuY3Rpb24gYXMgRmFtaXhGdW5jdGlvbkVudGl0eSwgVHlwZSwgTmFtZWRFbnRpdHksIFNjcmlwdEVudGl0eSwgTW9kdWxlLCBTb3VyY2VMYW5ndWFnZSB9IGZyb20gXCIuL21vZGVsL2ZhbWl4XCI7XHJcbmltcG9ydCAqIGFzIEZhbWl4IGZyb20gXCIuL21vZGVsL2ZhbWl4XCI7XHJcbmltcG9ydCB7IFRTTW9ycGhPYmplY3RUeXBlIH0gZnJvbSBcIi4uLy4uL2ZhbWl4X2Z1bmN0aW9ucy9FbnRpdHlEaWN0aW9uYXJ5XCI7XHJcbi8qKlxyXG4gKiBUaGlzIGNsYXNzIGlzIHVzZWQgdG8gc3RvcmUgYWxsIEZhbWl4IGVsZW1lbnRzXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRmFtaXhSZXBvc2l0b3J5IHtcclxuICAgIHByaXZhdGUgZWxlbWVudHMgPSBuZXcgU2V0PEZhbWl4QmFzZUVsZW1lbnQ+KCk7IC8vIEFsbCBGYW1peCBlbGVtZW50c1xyXG4gICAgcHJpdmF0ZSBmYW1peENsYXNzZXMgPSBuZXcgU2V0PENsYXNzPigpOyAvLyBBbGwgRmFtaXggY2xhc3Nlc1xyXG4gICAgcHJpdmF0ZSBmYW1peEludGVyZmFjZXMgPSBuZXcgU2V0PEludGVyZmFjZT4oKTsgLy8gQWxsIEZhbWl4IGludGVyZmFjZXNcclxuICAgIHByaXZhdGUgZmFtaXhNb2R1bGVzID0gbmV3IFNldDxNb2R1bGU+KCk7IC8vIEFsbCBGYW1peCBuYW1lc3BhY2VzXHJcbiAgICBwcml2YXRlIGZhbWl4TWV0aG9kcyA9IG5ldyBTZXQ8TWV0aG9kPigpOyAvLyBBbGwgRmFtaXggbWV0aG9kc1xyXG4gICAgcHJpdmF0ZSBmYW1peFZhcmlhYmxlcyA9IG5ldyBTZXQ8VmFyaWFibGU+KCk7IC8vIEFsbCBGYW1peCB2YXJpYWJsZXNcclxuICAgIHByaXZhdGUgZmFtaXhGdW5jdGlvbnMgPSBuZXcgU2V0PEZhbWl4RnVuY3Rpb25FbnRpdHk+KCk7IC8vIEFsbCBGYW1peCBmdW5jdGlvbnNcclxuICAgIHByaXZhdGUgZmFtaXhGaWxlcyA9IG5ldyBTZXQ8U2NyaXB0RW50aXR5IHwgTW9kdWxlPigpOyAvLyBBbGwgRmFtaXggZmlsZXNcclxuICAgIHByaXZhdGUgaWRDb3VudGVyID0gMTsgLy8gSWQgY291bnRlclxyXG4gICAgcHJpdmF0ZSBhYnNvbHV0ZVBhdGg6IHN0cmluZyA9IFwiXCI7XHJcbiAgICBwcml2YXRlIGZteEVsZW1lbnRPYmplY3RNYXAgPSBuZXcgTWFwPEZhbWl4LkVudGl0eSwgVFNNb3JwaE9iamVjdFR5cGU+KCk7XHJcbiAgICBwcml2YXRlIHRzTW9ycGhPYmplY3RNYXAgPSBuZXcgTWFwPFRTTW9ycGhPYmplY3RUeXBlLCBGYW1peC5FbnRpdHk+KCk7IC8vIFRPRE86IGFkZCB0aGlzIG1hcCB0byBoYXZlIHR3by13YXkgbWFwcGluZyBiZXR3ZWVuIEZhbWl4IGFuZCBUUyBNb3JwaCBvYmplY3RzXHJcbiAgICBcclxuICAgIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgICAgIHRoaXMuYWRkRWxlbWVudChuZXcgU291cmNlTGFuZ3VhZ2UoKSk7ICAvLyBhZGQgdGhlIHNvdXJjZSBsYW5ndWFnZSBlbnRpdHkgKFR5cGVTY3JpcHQpXHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldEZteEVsZW1lbnRPYmplY3RNYXAoZm14RWxlbWVudE9iamVjdE1hcDogTWFwPEZhbWl4LkVudGl0eSwgVFNNb3JwaE9iamVjdFR5cGU+KSB7XHJcbiAgICAgICAgdGhpcy5mbXhFbGVtZW50T2JqZWN0TWFwID0gZm14RWxlbWVudE9iamVjdE1hcDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0Rm14RWxlbWVudE9iamVjdE1hcCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5mbXhFbGVtZW50T2JqZWN0TWFwO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRBYnNvbHV0ZVBhdGgoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5hYnNvbHV0ZVBhdGg7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldEFic29sdXRlUGF0aChwYXRoOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmFic29sdXRlUGF0aCA9IHBhdGg7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGEgRmFtaXggZW50aXR5IGJ5IGlkXHJcbiAgICAgKiBAcGFyYW0gaWQgQW4gaWQgb2YgYSBGYW1peCBlbnRpdHlcclxuICAgICAqIEByZXR1cm5zIFRoZSBGYW1peCBlbnRpdHkgY29ycmVzcG9uZGluZyB0byB0aGUgaWQgb3IgdW5kZWZpbmVkIGlmIGl0IGRvZXNuJ3QgZXhpc3RcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldEZhbWl4RW50aXR5QnlJZChpZDogbnVtYmVyKTogRmFtaXhCYXNlRWxlbWVudCB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgY29uc3QgZW50aXR5ID0gQXJyYXkuZnJvbSh0aGlzLmVsZW1lbnRzLnZhbHVlcygpKS5maW5kKGUgPT4gZS5pZCA9PT0gaWQpO1xyXG4gICAgICAgIHJldHVybiBlbnRpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGEgRmFtaXggZW50aXR5IGJ5IGZ1bGx5IHF1YWxpZmllZCBuYW1lXHJcbiAgICAgKiBAcGFyYW0gZnVsbHlRdWFsaWZpZWROYW1lIEEgZnVsbHkgcXVhbGlmaWVkIG5hbWVcclxuICAgICAqIEByZXR1cm5zIFRoZSBGYW1peCBlbnRpdHkgY29ycmVzcG9uZGluZyB0byB0aGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb3IgdW5kZWZpbmVkIGlmIGl0IGRvZXNuJ3QgZXhpc3RcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldEZhbWl4RW50aXR5QnlGdWxseVF1YWxpZmllZE5hbWUoZnVsbHlRdWFsaWZpZWROYW1lOiBzdHJpbmcpOiBGYW1peEJhc2VFbGVtZW50IHwgdW5kZWZpbmVkIHtcclxuICAgICAgICBjb25zdCBhbGxFbnRpdGllcyA9IEFycmF5LmZyb20odGhpcy5lbGVtZW50cy52YWx1ZXMoKSkuZmlsdGVyKGUgPT4gZSBpbnN0YW5jZW9mIE5hbWVkRW50aXR5KSBhcyBBcnJheTxOYW1lZEVudGl0eT47XHJcbiAgICAgICAgY29uc3QgZW50aXR5ID0gYWxsRW50aXRpZXMuZmluZChlID0+IFxyXG4gICAgICAgICAgICAvLyB7Y29uc29sZS5sb2coYG5hbWVkRW50aXR5OiAke2UuZnVsbHlRdWFsaWZpZWROYW1lfWApOyBcclxuICAgICAgICAgICAgLy8gcmV0dXJuIFxyXG4gICAgICAgICAgICBlLmZ1bGx5UXVhbGlmaWVkTmFtZSA9PT0gZnVsbHlRdWFsaWZpZWROYW1lXHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgcmV0dXJuIGVudGl0eTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNZXRob2QgdG8gZ2V0IEZhbWl4IGFjY2VzcyBieSBhY2Nlc3NvciBhbmQgdmFyaWFibGVcclxuICAgIHB1YmxpYyBnZXRGYW1peEFjY2Vzc0J5QWNjZXNzb3JBbmRWYXJpYWJsZShhY2Nlc3NvcjogRmFtaXguQ29udGFpbmVyRW50aXR5LCB2YXJpYWJsZTogRmFtaXguU3RydWN0dXJhbEVudGl0eSk6IEZhbWl4LkFjY2VzcyB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgLy8gSXRlcmF0ZSB0aHJvdWdoIHRoZSBsaXN0IG9mIEZhbWl4IGFjY2Vzc2VzIHRvIGZpbmQgdGhlIG1hdGNoaW5nIG9uZVxyXG4gICAgICAgIGZvciAoY29uc3QgYWNjZXNzIG9mIEFycmF5LmZyb20odGhpcy5lbGVtZW50cy52YWx1ZXMoKSkuZmlsdGVyKGUgPT4gZSBpbnN0YW5jZW9mIEZhbWl4LkFjY2VzcykgYXMgQXJyYXk8RmFtaXguQWNjZXNzPikge1xyXG4gICAgICAgICAgICBpZiAoYWNjZXNzLmFjY2Vzc29yID09PSBhY2Nlc3NvciAmJiBhY2Nlc3MudmFyaWFibGUgPT09IHZhcmlhYmxlKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWNjZXNzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIFJldHVybiB1bmRlZmluZWQgaWYgbm8gbWF0Y2hpbmcgYWNjZXNzIGlzIGZvdW5kXHJcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgZXhwb3J0KGFyZzA6IHsgZm9ybWF0OiBzdHJpbmc7IH0pIHtcclxuICAgICAgICBpZiAoYXJnMC5mb3JtYXQgPT09IFwianNvblwiKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdldEpTT04oKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbnN1cHBvcnRlZCBmb3JtYXRcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBPbmx5IGZvciB0ZXN0c1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhbGwgRmFtaXggZW50aXRpZXNcclxuICAgICAqIEByZXR1cm5zIEFsbCBGYW1peCBlbnRpdGllc1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX2dldEFsbEVudGl0aWVzKCk6IFNldDxGYW1peEJhc2VFbGVtZW50PiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBTZXQoQXJyYXkuZnJvbSh0aGlzLmVsZW1lbnRzLnZhbHVlcygpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGFsbCBGYW1peCBlbnRpdGllcyBvZiBhIGdpdmVuIHR5cGVcclxuICAgICAqIEBwYXJhbSB0aGVUeXBlIEEgdHlwZSBvZiBGYW1peCBlbnRpdHlcclxuICAgICAqIEByZXR1cm5zIEFsbCBGYW1peCBlbnRpdGllcyBvZiB0aGUgZ2l2ZW4gdHlwZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX2dldEFsbEVudGl0aWVzV2l0aFR5cGUodGhlVHlwZTogc3RyaW5nKTogU2V0PEZhbWl4QmFzZUVsZW1lbnQ+IHtcclxuICAgICAgICByZXR1cm4gbmV3IFNldChBcnJheS5mcm9tKHRoaXMuZWxlbWVudHMudmFsdWVzKCkpLmZpbHRlcihlID0+IChlIGFzIEZhbWl4QmFzZUVsZW1lbnQpLmNvbnN0cnVjdG9yLm5hbWUgPT09IHRoZVR5cGUpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYSBGYW1peCBjbGFzcyBieSBuYW1lXHJcbiAgICAgKiBAcGFyYW0gbmFtZSBBIGNsYXNzIG5hbWVcclxuICAgICAqIEByZXR1cm5zIFRoZSBGYW1peCBjbGFzcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBuYW1lIG9yIHVuZGVmaW5lZCBpZiBpdCBkb2Vzbid0IGV4aXN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfZ2V0RmFtaXhDbGFzcyhmdWxseVF1YWxpZmllZE5hbWU6IHN0cmluZyk6IENsYXNzIHwgdW5kZWZpbmVkIHtcclxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmZhbWl4Q2xhc3Nlcy52YWx1ZXMoKSkuZmluZChucyA9PiBucy5mdWxseVF1YWxpZmllZE5hbWUgPT09IGZ1bGx5UXVhbGlmaWVkTmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGEgRmFtaXggaW50ZXJmYWNlIGJ5IG5hbWVcclxuICAgICAqIEBwYXJhbSBuYW1lIEFuIGludGVyZmFjZSBuYW1lXHJcbiAgICAgKiBAcmV0dXJucyBUaGUgRmFtaXggaW50ZXJmYWNlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG5hbWUgb3IgdW5kZWZpbmVkIGlmIGl0IGRvZXNuJ3QgZXhpc3RcclxuICAgICAqL1xyXG4gICAgcHVibGljIF9nZXRGYW1peEludGVyZmFjZShmdWxseVF1YWxpZmllZE5hbWU6IHN0cmluZyk6IEludGVyZmFjZSB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5mYW1peEludGVyZmFjZXMudmFsdWVzKCkpLmZpbmQobnMgPT4gbnMuZnVsbHlRdWFsaWZpZWROYW1lID09PSBmdWxseVF1YWxpZmllZE5hbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhIEZhbWl4IG1ldGhvZCBieSBuYW1lXHJcbiAgICAgKiBAcGFyYW0gbmFtZSBBIG1ldGhvZCBuYW1lXHJcbiAgICAgKiBAcmV0dXJucyBUaGUgRmFtaXggbWV0aG9kIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG5hbWUgb3IgdW5kZWZpbmVkIGlmIGl0IGRvZXNuJ3QgZXhpc3RcclxuICAgICAqL1xyXG4gICAgcHVibGljIF9nZXRGYW1peE1ldGhvZChmdWxseVF1YWxpZmllZE5hbWU6IHN0cmluZyk6IE1ldGhvZCB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5mYW1peE1ldGhvZHMudmFsdWVzKCkpLmZpbmQobnMgPT4gbnMuZnVsbHlRdWFsaWZpZWROYW1lID09PSBmdWxseVF1YWxpZmllZE5hbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhIEZhbWl4IGZ1bmN0aW9uIGJ5IG5hbWVcclxuICAgICAqIEBwYXJhbSBuYW1lIEEgZnVuY3Rpb24gbmFtZVxyXG4gICAgICogQHJldHVybnMgVGhlIEZhbWl4IGZ1bmN0aW9uIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG5hbWUgb3IgdW5kZWZpbmVkIGlmIGl0IGRvZXNuJ3QgZXhpc3RcclxuICAgICAqL1xyXG4gICAgcHVibGljIF9nZXRGYW1peEZ1bmN0aW9uKGZ1bGx5UXVhbGlmaWVkTmFtZTogc3RyaW5nKTogRmFtaXhGdW5jdGlvbkVudGl0eSB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5mYW1peEZ1bmN0aW9ucy52YWx1ZXMoKSkuZmluZChucyA9PiBucy5mdWxseVF1YWxpZmllZE5hbWUgPT09IGZ1bGx5UXVhbGlmaWVkTmFtZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhIEZhbWl4IHZhcmlhYmxlIGJ5IG5hbWVcclxuICAgICAqIEBwYXJhbSBuYW1lIEEgdmFyaWFibGUgbmFtZVxyXG4gICAgICogQHJldHVybnMgVGhlIEZhbWl4IHZhcmlhYmxlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG5hbWUgb3IgdW5kZWZpbmVkIGlmIGl0IGRvZXNuJ3QgZXhpc3RcclxuICAgICAqL1xyXG4gICAgcHVibGljIF9nZXRGYW1peFZhcmlhYmxlKGZ1bGx5UXVhbGlmaWVkTmFtZTogc3RyaW5nKTogVmFyaWFibGUgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZmFtaXhWYXJpYWJsZXMudmFsdWVzKCkpLmZpbmQodiA9PiB2LmZ1bGx5UXVhbGlmaWVkTmFtZSA9PT0gZnVsbHlRdWFsaWZpZWROYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYSBGYW1peCBuYW1lc3BhY2UgYnkgbmFtZVxyXG4gICAgICogQHBhcmFtIG5hbWUgQSBuYW1lc3BhY2UgbmFtZVxyXG4gICAgICogQHJldHVybnMgVGhlIEZhbWl4IG5hbWVzcGFjZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBuYW1lIG9yIHVuZGVmaW5lZCBpZiBpdCBkb2Vzbid0IGV4aXN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfZ2V0RmFtaXhNb2R1bGUoZnVsbHlRdWFsaWZpZWROYW1lOiBzdHJpbmcpOiBNb2R1bGUgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZmFtaXhNb2R1bGVzLnZhbHVlcygpKS5maW5kKG5zID0+IG5zLmZ1bGx5UXVhbGlmaWVkTmFtZSA9PT0gZnVsbHlRdWFsaWZpZWROYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYWxsIEZhbWl4IG5hbWVzcGFjZXNcclxuICAgICAqIEByZXR1cm5zIEFsbCBGYW1peCBuYW1lc3BhY2VzXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfZ2V0RmFtaXhNb2R1bGVzKCk6IFNldDxNb2R1bGU+IHtcclxuICAgICAgICByZXR1cm4gbmV3IFNldChBcnJheS5mcm9tKHRoaXMuZmFtaXhNb2R1bGVzLnZhbHVlcygpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGEgRmFtaXggZmlsZSBieSBuYW1lXHJcbiAgICAgKiBAcGFyYW0gbmFtZSBBIGZpbGUgbmFtZVxyXG4gICAgICogQHJldHVybnMgVGhlIEZhbWl4IGZpbGUgY29ycmVzcG9uZGluZyB0byB0aGUgbmFtZSBvciB1bmRlZmluZWQgaWYgaXQgZG9lc24ndCBleGlzdFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX2dldEZhbWl4RmlsZShmdWxseVF1YWxpZmllZE5hbWU6IHN0cmluZyk6IFNjcmlwdEVudGl0eSB8IE1vZHVsZSB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5mYW1peEZpbGVzLnZhbHVlcygpKS5maW5kKG5zID0+IG5zLm5hbWUgPT09IGZ1bGx5UXVhbGlmaWVkTmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGFsbCBGYW1peCBmaWxlc1xyXG4gICAgICogQHJldHVybnMgQWxsIEZhbWl4IGZpbGVzXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfZ2V0RmFtaXhGaWxlcygpOiBTZXQ8U2NyaXB0RW50aXR5IHwgTW9kdWxlPiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBTZXQoQXJyYXkuZnJvbSh0aGlzLmZhbWl4RmlsZXMudmFsdWVzKCkpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYWxsIG1ldGhvZCBuYW1lcyBhcyBhIHNldCBmcm9tIGEgY2xhc3NcclxuICAgICAqIEBwYXJhbSBjbGFzc05hbWUgQSBjbGFzcyBuYW1lXHJcbiAgICAgKiBAcmV0dXJucyBUaGUgc2V0IG9mIGNsYXNzIFwiY2xhc3NOYW1lXCIgbWV0aG9kIG5hbWVzXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfbWV0aG9kTmFtZXNBc1NldEZyb21DbGFzcyhjbGFzc05hbWU6IHN0cmluZyk6IFNldDxzdHJpbmc+IHtcclxuICAgICAgICBjb25zdCB0aGVDbGFzcyA9IHRoaXMuX2dldEZhbWl4Q2xhc3MoY2xhc3NOYW1lKSBhcyBDbGFzcztcclxuICAgICAgICByZXR1cm4gbmV3IFNldChBcnJheS5mcm9tKHRoZUNsYXNzLm1ldGhvZHMpLm1hcChtID0+IG0ubmFtZSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhbGwgbWV0aG9kIHBhcmVudHMgYXMgYSBzZXQgZnJvbSBhIGNsYXNzXHJcbiAgICAgKiBAcGFyYW0gY2xhc3NOYW1lIEEgY2xhc3MgbmFtZVxyXG4gICAgICogQHJldHVybnMgVGhlIHNldCBvZiBjbGFzcyBcImNsYXNzTmFtZVwiIG1ldGhvZCBwYXJlbnRzXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfbWV0aG9kUGFyZW50c0FzU2V0RnJvbUNsYXNzKGNsYXNzTmFtZTogc3RyaW5nKTogU2V0PFR5cGU+IHtcclxuICAgICAgICBjb25zdCB0aGVDbGFzcyA9IHRoaXMuX2dldEZhbWl4Q2xhc3MoY2xhc3NOYW1lKSBhcyBDbGFzcztcclxuICAgICAgICByZXR1cm4gbmV3IFNldChBcnJheS5mcm9tKHRoZUNsYXNzLm1ldGhvZHMpLm1hcChtID0+IG0ucGFyZW50RW50aXR5KSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIHRoZSBtYXAgb2YgRmFtaXggZWxlbWVudCBpZHMgYW5kIHRoZWlyIEZhbWl4IGVsZW1lbnQgZnJvbSBhIEpTT04gbW9kZWxcclxuICAgICAqIEBwYXJhbSBtb2RlbCBBIEpTT04gbW9kZWxcclxuICAgICAqIEByZXR1cm5zIFRoZSBtYXAgb2YgRmFtaXggZWxlbWVudCBpZHMgYW5kIHRoZWlyIEZhbWl4IGVsZW1lbnQgZnJvbSB0aGUgSlNPTiBtb2RlbFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX2luaXRNYXBGcm9tTW9kZWwobW9kZWw6IHN0cmluZyk6IE1hcDxudW1iZXIsIHVua25vd24+IHtcclxuICAgICAgICBjb25zdCBwYXJzZWRNb2RlbDogQXJyYXk8RmFtaXhCYXNlRWxlbWVudD4gPSBKU09OLnBhcnNlKG1vZGVsKTtcclxuICAgICAgICBjb25zdCBpZFRvRWxlbWVudE1hcDogTWFwPG51bWJlciwgdW5rbm93bj4gPSBuZXcgTWFwKCk7XHJcbiAgICAgICAgcGFyc2VkTW9kZWwuZm9yRWFjaChlbGVtZW50ID0+IHtcclxuICAgICAgICAgICAgaWRUb0VsZW1lbnRNYXAuc2V0KGVsZW1lbnQuaWQsIGVsZW1lbnQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBpZFRvRWxlbWVudE1hcDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGRzIGEgRmFtaXggZWxlbWVudCB0byB0aGUgcmVwb3NpdG9yeVxyXG4gICAgICogQHBhcmFtIGVsZW1lbnQgQSBGYW1peCBlbGVtZW50XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhZGRFbGVtZW50KGVsZW1lbnQ6IEZhbWl4QmFzZUVsZW1lbnQpOiB2b2lkIHtcclxuICAgICAgICBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIENsYXNzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmFtaXhDbGFzc2VzLmFkZChlbGVtZW50KTtcclxuICAgICAgICB9IGVsc2UgaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBJbnRlcmZhY2UpIHtcclxuICAgICAgICAgICAgdGhpcy5mYW1peEludGVyZmFjZXMuYWRkKGVsZW1lbnQpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIE1vZHVsZSkge1xyXG4gICAgICAgICAgICB0aGlzLmZhbWl4TW9kdWxlcy5hZGQoZWxlbWVudCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChlbGVtZW50IGluc3RhbmNlb2YgVmFyaWFibGUpIHtcclxuICAgICAgICAgICAgdGhpcy5mYW1peFZhcmlhYmxlcy5hZGQoZWxlbWVudCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChlbGVtZW50IGluc3RhbmNlb2YgTWV0aG9kKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmFtaXhNZXRob2RzLmFkZChlbGVtZW50KTtcclxuICAgICAgICB9IGVsc2UgaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBGYW1peEZ1bmN0aW9uRW50aXR5IHx8IGVsZW1lbnQgaW5zdGFuY2VvZiBBcnJvd0Z1bmN0aW9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmFtaXhGdW5jdGlvbnMuYWRkKGVsZW1lbnQpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIFNjcmlwdEVudGl0eSB8fCBlbGVtZW50IGluc3RhbmNlb2YgTW9kdWxlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmFtaXhGaWxlcy5hZGQoZWxlbWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZWxlbWVudHMuYWRkKGVsZW1lbnQpO1xyXG4gICAgICAgIGVsZW1lbnQuaWQgPSB0aGlzLmlkQ291bnRlcjtcclxuICAgICAgICB0aGlzLmlkQ291bnRlcisrO1xyXG4gICAgICAgIHRoaXMudmFsaWRhdGVGUU5zKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWYWxpZGF0ZXMgdGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lcyBvZiBhbGwgRmFtaXggZWxlbWVudHNcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUZRTnMoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gbWFrZSBzdXJlIGFsbCBlbGVtZW50cyBoYXZlIHVuaXF1ZSBmdWxseSBxdWFsaWZpZWQgbmFtZXNcclxuICAgICAgICBjb25zdCBmcW5zID0gbmV3IFNldDxzdHJpbmc+KCk7XHJcbiAgICAgICAgZm9yIChjb25zdCBlbGVtZW50IG9mIEFycmF5LmZyb20odGhpcy5lbGVtZW50cy52YWx1ZXMoKSkpIHtcclxuICAgICAgICAgICAgaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBOYW1lZEVudGl0eSAmJiBlbGVtZW50LmZ1bGx5UXVhbGlmaWVkTmFtZSAmJiBmcW5zLmhhcyhlbGVtZW50LmZ1bGx5UXVhbGlmaWVkTmFtZSkpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHRoZUV4aXN0aW5nRWxlbWVudCA9IEFycmF5LmZyb20odGhpcy5lbGVtZW50cy52YWx1ZXMoKSkuZmluZChlID0+IChlIGFzIE5hbWVkRW50aXR5KS5mdWxseVF1YWxpZmllZE5hbWUgPT09IGVsZW1lbnQuZnVsbHlRdWFsaWZpZWROYW1lKTtcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lICR7ZWxlbWVudC5mdWxseVF1YWxpZmllZE5hbWV9IGlzIG5vdCB1bmlxdWUuXFxuSXQgZXhpc3RzIGZvciAke3RoZUV4aXN0aW5nRWxlbWVudD8uZ2V0SlNPTigpfWApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZxbnMuYWRkKChlbGVtZW50IGFzIE5hbWVkRW50aXR5KS5mdWxseVF1YWxpZmllZE5hbWUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGEgSlNPTiByZXByZXNlbnRhdGlvbiBvZiB0aGUgcmVwb3NpdG9yeVxyXG4gICAgICogQHJldHVybnMgQSBKU09OIHJlcHJlc2VudGF0aW9uIG9mIHRoZSByZXBvc2l0b3J5XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRKU09OKCk6IHN0cmluZyB7XHJcbiAgICAgICAgbGV0IHJldCA9IFwiW1wiO1xyXG4gICAgICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiBBcnJheS5mcm9tKHRoaXMuZWxlbWVudHMudmFsdWVzKCkpKSB7XHJcbiAgICAgICAgICAgIHJldCA9IHJldCArIGVsZW1lbnQuZ2V0SlNPTigpICsgXCIsXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldCA9IHJldC5zdWJzdHJpbmcoMCwgcmV0Lmxlbmd0aCAtIDEpO1xyXG4gICAgICAgIHJldHVybiByZXQgKyBcIl1cIjtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
289
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFtaXhfcmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZmFtaXgvZmFtaXhfcmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx5Q0FBNEs7QUFDNUsscURBQXVDO0FBRXZDOztHQUVHO0FBQ0gsTUFBYSxlQUFlO0lBY3hCO1FBYlEsYUFBUSxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFDLENBQUMscUJBQXFCO1FBQzdELGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQVMsQ0FBQyxDQUFDLG9CQUFvQjtRQUNyRCxvQkFBZSxHQUFHLElBQUksR0FBRyxFQUFhLENBQUMsQ0FBQyx1QkFBdUI7UUFDL0QsaUJBQVksR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDLENBQUMsdUJBQXVCO1FBQ3pELGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQyxDQUFDLG9CQUFvQjtRQUN0RCxtQkFBYyxHQUFHLElBQUksR0FBRyxFQUFZLENBQUMsQ0FBQyxzQkFBc0I7UUFDNUQsbUJBQWMsR0FBRyxJQUFJLEdBQUcsRUFBdUIsQ0FBQyxDQUFDLHNCQUFzQjtRQUN2RSxlQUFVLEdBQUcsSUFBSSxHQUFHLEVBQXlCLENBQUMsQ0FBQyxrQkFBa0I7UUFDakUsY0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLGFBQWE7UUFDNUIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIsd0JBQW1CLEdBQUcsSUFBSSxHQUFHLEVBQW1DLENBQUM7UUFDakUscUJBQWdCLEdBQUcsSUFBSSxHQUFHLEVBQW1DLENBQUMsQ0FBQyxnRkFBZ0Y7UUFHbkosSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLHNCQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUUsOENBQThDO0lBQzFGLENBQUM7SUFFTSxzQkFBc0IsQ0FBQyxtQkFBeUQ7UUFDbkYsSUFBSSxDQUFDLG1CQUFtQixH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a0NBQWtDLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM3SSxDQUFDO1lBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBRSxPQUF1QixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDMUQsQ0FBQztJQUNMLENBQUM7SUFHRDs7O09BR0c7SUFDSSxPQUFPO1FBQ1YsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2QsS0FBSyxNQUFNLE9BQU8sSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3ZELEdBQUcsR0FBRyxHQUFHLEdBQUcsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLEdBQUcsQ0FBQztRQUN4QyxDQUFDO1FBQ0QsR0FBRyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDdkMsT0FBTyxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQ3JCLENBQUM7Q0FDSjtBQTlRRCwwQ0E4UUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEJhc2VFbGVtZW50IH0gZnJvbSBcIi4vZmFtaXhfYmFzZV9lbGVtZW50XCI7XHJcbmltcG9ydCB7IENsYXNzLCBJbnRlcmZhY2UsIFZhcmlhYmxlLCBNZXRob2QsIEFycm93RnVuY3Rpb24sIEZ1bmN0aW9uIGFzIEZhbWl4RnVuY3Rpb25FbnRpdHksIFR5cGUsIE5hbWVkRW50aXR5LCBTY3JpcHRFbnRpdHksIE1vZHVsZSwgU291cmNlTGFuZ3VhZ2UgfSBmcm9tIFwiLi9tb2RlbC9mYW1peFwiO1xyXG5pbXBvcnQgKiBhcyBGYW1peCBmcm9tIFwiLi9tb2RlbC9mYW1peFwiO1xyXG5pbXBvcnQgeyBUU01vcnBoT2JqZWN0VHlwZSB9IGZyb20gXCIuLi8uLi9mYW1peF9mdW5jdGlvbnMvRW50aXR5RGljdGlvbmFyeVwiO1xyXG4vKipcclxuICogVGhpcyBjbGFzcyBpcyB1c2VkIHRvIHN0b3JlIGFsbCBGYW1peCBlbGVtZW50c1xyXG4gKi9cclxuZXhwb3J0IGNsYXNzIEZhbWl4UmVwb3NpdG9yeSB7XHJcbiAgICBwcml2YXRlIGVsZW1lbnRzID0gbmV3IFNldDxGYW1peEJhc2VFbGVtZW50PigpOyAvLyBBbGwgRmFtaXggZWxlbWVudHNcclxuICAgIHByaXZhdGUgZmFtaXhDbGFzc2VzID0gbmV3IFNldDxDbGFzcz4oKTsgLy8gQWxsIEZhbWl4IGNsYXNzZXNcclxuICAgIHByaXZhdGUgZmFtaXhJbnRlcmZhY2VzID0gbmV3IFNldDxJbnRlcmZhY2U+KCk7IC8vIEFsbCBGYW1peCBpbnRlcmZhY2VzXHJcbiAgICBwcml2YXRlIGZhbWl4TW9kdWxlcyA9IG5ldyBTZXQ8TW9kdWxlPigpOyAvLyBBbGwgRmFtaXggbmFtZXNwYWNlc1xyXG4gICAgcHJpdmF0ZSBmYW1peE1ldGhvZHMgPSBuZXcgU2V0PE1ldGhvZD4oKTsgLy8gQWxsIEZhbWl4IG1ldGhvZHNcclxuICAgIHByaXZhdGUgZmFtaXhWYXJpYWJsZXMgPSBuZXcgU2V0PFZhcmlhYmxlPigpOyAvLyBBbGwgRmFtaXggdmFyaWFibGVzXHJcbiAgICBwcml2YXRlIGZhbWl4RnVuY3Rpb25zID0gbmV3IFNldDxGYW1peEZ1bmN0aW9uRW50aXR5PigpOyAvLyBBbGwgRmFtaXggZnVuY3Rpb25zXHJcbiAgICBwcml2YXRlIGZhbWl4RmlsZXMgPSBuZXcgU2V0PFNjcmlwdEVudGl0eSB8IE1vZHVsZT4oKTsgLy8gQWxsIEZhbWl4IGZpbGVzXHJcbiAgICBwcml2YXRlIGlkQ291bnRlciA9IDE7IC8vIElkIGNvdW50ZXJcclxuICAgIHByaXZhdGUgYWJzb2x1dGVQYXRoOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgcHJpdmF0ZSBmbXhFbGVtZW50T2JqZWN0TWFwID0gbmV3IE1hcDxGYW1peC5FbnRpdHksIFRTTW9ycGhPYmplY3RUeXBlPigpO1xyXG4gICAgcHJpdmF0ZSB0c01vcnBoT2JqZWN0TWFwID0gbmV3IE1hcDxUU01vcnBoT2JqZWN0VHlwZSwgRmFtaXguRW50aXR5PigpOyAvLyBUT0RPOiBhZGQgdGhpcyBtYXAgdG8gaGF2ZSB0d28td2F5IG1hcHBpbmcgYmV0d2VlbiBGYW1peCBhbmQgVFMgTW9ycGggb2JqZWN0c1xyXG4gICAgXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLmFkZEVsZW1lbnQobmV3IFNvdXJjZUxhbmd1YWdlKCkpOyAgLy8gYWRkIHRoZSBzb3VyY2UgbGFuZ3VhZ2UgZW50aXR5IChUeXBlU2NyaXB0KVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZXRGbXhFbGVtZW50T2JqZWN0TWFwKGZteEVsZW1lbnRPYmplY3RNYXA6IE1hcDxGYW1peC5FbnRpdHksIFRTTW9ycGhPYmplY3RUeXBlPikge1xyXG4gICAgICAgIHRoaXMuZm14RWxlbWVudE9iamVjdE1hcCA9IGZteEVsZW1lbnRPYmplY3RNYXA7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEZteEVsZW1lbnRPYmplY3RNYXAoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm14RWxlbWVudE9iamVjdE1hcDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0QWJzb2x1dGVQYXRoKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYWJzb2x1dGVQYXRoO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZXRBYnNvbHV0ZVBhdGgocGF0aDogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5hYnNvbHV0ZVBhdGggPSBwYXRoO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhIEZhbWl4IGVudGl0eSBieSBpZFxyXG4gICAgICogQHBhcmFtIGlkIEFuIGlkIG9mIGEgRmFtaXggZW50aXR5XHJcbiAgICAgKiBAcmV0dXJucyBUaGUgRmFtaXggZW50aXR5IGNvcnJlc3BvbmRpbmcgdG8gdGhlIGlkIG9yIHVuZGVmaW5lZCBpZiBpdCBkb2Vzbid0IGV4aXN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRGYW1peEVudGl0eUJ5SWQoaWQ6IG51bWJlcik6IEZhbWl4QmFzZUVsZW1lbnQgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIGNvbnN0IGVudGl0eSA9IEFycmF5LmZyb20odGhpcy5lbGVtZW50cy52YWx1ZXMoKSkuZmluZChlID0+IGUuaWQgPT09IGlkKTtcclxuICAgICAgICByZXR1cm4gZW50aXR5O1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhIEZhbWl4IGVudGl0eSBieSBmdWxseSBxdWFsaWZpZWQgbmFtZVxyXG4gICAgICogQHBhcmFtIGZ1bGx5UXVhbGlmaWVkTmFtZSBBIGZ1bGx5IHF1YWxpZmllZCBuYW1lXHJcbiAgICAgKiBAcmV0dXJucyBUaGUgRmFtaXggZW50aXR5IGNvcnJlc3BvbmRpbmcgdG8gdGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9yIHVuZGVmaW5lZCBpZiBpdCBkb2Vzbid0IGV4aXN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRGYW1peEVudGl0eUJ5RnVsbHlRdWFsaWZpZWROYW1lKGZ1bGx5UXVhbGlmaWVkTmFtZTogc3RyaW5nKTogRmFtaXhCYXNlRWxlbWVudCB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgY29uc3QgYWxsRW50aXRpZXMgPSBBcnJheS5mcm9tKHRoaXMuZWxlbWVudHMudmFsdWVzKCkpLmZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYW1lZEVudGl0eSkgYXMgQXJyYXk8TmFtZWRFbnRpdHk+O1xyXG4gICAgICAgIGNvbnN0IGVudGl0eSA9IGFsbEVudGl0aWVzLmZpbmQoZSA9PiBcclxuICAgICAgICAgICAgLy8ge2NvbnNvbGUubG9nKGBuYW1lZEVudGl0eTogJHtlLmZ1bGx5UXVhbGlmaWVkTmFtZX1gKTsgXHJcbiAgICAgICAgICAgIC8vIHJldHVybiBcclxuICAgICAgICAgICAgZS5mdWxseVF1YWxpZmllZE5hbWUgPT09IGZ1bGx5UXVhbGlmaWVkTmFtZVxyXG4gICAgICAgIC8vIH1cclxuICAgICAgICApO1xyXG4gICAgICAgIHJldHVybiBlbnRpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTWV0aG9kIHRvIGdldCBGYW1peCBhY2Nlc3MgYnkgYWNjZXNzb3IgYW5kIHZhcmlhYmxlXHJcbiAgICBwdWJsaWMgZ2V0RmFtaXhBY2Nlc3NCeUFjY2Vzc29yQW5kVmFyaWFibGUoYWNjZXNzb3I6IEZhbWl4LkNvbnRhaW5lckVudGl0eSwgdmFyaWFibGU6IEZhbWl4LlN0cnVjdHVyYWxFbnRpdHkpOiBGYW1peC5BY2Nlc3MgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCB0aGUgbGlzdCBvZiBGYW1peCBhY2Nlc3NlcyB0byBmaW5kIHRoZSBtYXRjaGluZyBvbmVcclxuICAgICAgICBmb3IgKGNvbnN0IGFjY2VzcyBvZiBBcnJheS5mcm9tKHRoaXMuZWxlbWVudHMudmFsdWVzKCkpLmZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBGYW1peC5BY2Nlc3MpIGFzIEFycmF5PEZhbWl4LkFjY2Vzcz4pIHtcclxuICAgICAgICAgICAgaWYgKGFjY2Vzcy5hY2Nlc3NvciA9PT0gYWNjZXNzb3IgJiYgYWNjZXNzLnZhcmlhYmxlID09PSB2YXJpYWJsZSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFjY2VzcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBSZXR1cm4gdW5kZWZpbmVkIGlmIG5vIG1hdGNoaW5nIGFjY2VzcyBpcyBmb3VuZFxyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGV4cG9ydChhcmcwOiB7IGZvcm1hdDogc3RyaW5nOyB9KSB7XHJcbiAgICAgICAgaWYgKGFyZzAuZm9ybWF0ID09PSBcImpzb25cIikge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRKU09OKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgZm9ybWF0XCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLy8gT25seSBmb3IgdGVzdHNcclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYWxsIEZhbWl4IGVudGl0aWVzXHJcbiAgICAgKiBAcmV0dXJucyBBbGwgRmFtaXggZW50aXRpZXNcclxuICAgICAqL1xyXG4gICAgcHVibGljIF9nZXRBbGxFbnRpdGllcygpOiBTZXQ8RmFtaXhCYXNlRWxlbWVudD4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgU2V0KEFycmF5LmZyb20odGhpcy5lbGVtZW50cy52YWx1ZXMoKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhbGwgRmFtaXggZW50aXRpZXMgb2YgYSBnaXZlbiB0eXBlXHJcbiAgICAgKiBAcGFyYW0gdGhlVHlwZSBBIHR5cGUgb2YgRmFtaXggZW50aXR5XHJcbiAgICAgKiBAcmV0dXJucyBBbGwgRmFtaXggZW50aXRpZXMgb2YgdGhlIGdpdmVuIHR5cGVcclxuICAgICAqL1xyXG4gICAgcHVibGljIF9nZXRBbGxFbnRpdGllc1dpdGhUeXBlKHRoZVR5cGU6IHN0cmluZyk6IFNldDxGYW1peEJhc2VFbGVtZW50PiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBTZXQoQXJyYXkuZnJvbSh0aGlzLmVsZW1lbnRzLnZhbHVlcygpKS5maWx0ZXIoZSA9PiAoZSBhcyBGYW1peEJhc2VFbGVtZW50KS5jb25zdHJ1Y3Rvci5uYW1lID09PSB0aGVUeXBlKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGEgRmFtaXggY2xhc3MgYnkgbmFtZVxyXG4gICAgICogQHBhcmFtIG5hbWUgQSBjbGFzcyBuYW1lXHJcbiAgICAgKiBAcmV0dXJucyBUaGUgRmFtaXggY2xhc3MgY29ycmVzcG9uZGluZyB0byB0aGUgbmFtZSBvciB1bmRlZmluZWQgaWYgaXQgZG9lc24ndCBleGlzdFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX2dldEZhbWl4Q2xhc3MoZnVsbHlRdWFsaWZpZWROYW1lOiBzdHJpbmcpOiBDbGFzcyB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5mYW1peENsYXNzZXMudmFsdWVzKCkpLmZpbmQobnMgPT4gbnMuZnVsbHlRdWFsaWZpZWROYW1lID09PSBmdWxseVF1YWxpZmllZE5hbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhIEZhbWl4IGludGVyZmFjZSBieSBuYW1lXHJcbiAgICAgKiBAcGFyYW0gbmFtZSBBbiBpbnRlcmZhY2UgbmFtZVxyXG4gICAgICogQHJldHVybnMgVGhlIEZhbWl4IGludGVyZmFjZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBuYW1lIG9yIHVuZGVmaW5lZCBpZiBpdCBkb2Vzbid0IGV4aXN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfZ2V0RmFtaXhJbnRlcmZhY2UoZnVsbHlRdWFsaWZpZWROYW1lOiBzdHJpbmcpOiBJbnRlcmZhY2UgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZmFtaXhJbnRlcmZhY2VzLnZhbHVlcygpKS5maW5kKG5zID0+IG5zLmZ1bGx5UXVhbGlmaWVkTmFtZSA9PT0gZnVsbHlRdWFsaWZpZWROYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYSBGYW1peCBtZXRob2QgYnkgbmFtZVxyXG4gICAgICogQHBhcmFtIG5hbWUgQSBtZXRob2QgbmFtZVxyXG4gICAgICogQHJldHVybnMgVGhlIEZhbWl4IG1ldGhvZCBjb3JyZXNwb25kaW5nIHRvIHRoZSBuYW1lIG9yIHVuZGVmaW5lZCBpZiBpdCBkb2Vzbid0IGV4aXN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfZ2V0RmFtaXhNZXRob2QoZnVsbHlRdWFsaWZpZWROYW1lOiBzdHJpbmcpOiBNZXRob2QgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZmFtaXhNZXRob2RzLnZhbHVlcygpKS5maW5kKG5zID0+IG5zLmZ1bGx5UXVhbGlmaWVkTmFtZSA9PT0gZnVsbHlRdWFsaWZpZWROYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYSBGYW1peCBmdW5jdGlvbiBieSBuYW1lXHJcbiAgICAgKiBAcGFyYW0gbmFtZSBBIGZ1bmN0aW9uIG5hbWVcclxuICAgICAqIEByZXR1cm5zIFRoZSBGYW1peCBmdW5jdGlvbiBjb3JyZXNwb25kaW5nIHRvIHRoZSBuYW1lIG9yIHVuZGVmaW5lZCBpZiBpdCBkb2Vzbid0IGV4aXN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfZ2V0RmFtaXhGdW5jdGlvbihmdWxseVF1YWxpZmllZE5hbWU6IHN0cmluZyk6IEZhbWl4RnVuY3Rpb25FbnRpdHkgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZmFtaXhGdW5jdGlvbnMudmFsdWVzKCkpLmZpbmQobnMgPT4gbnMuZnVsbHlRdWFsaWZpZWROYW1lID09PSBmdWxseVF1YWxpZmllZE5hbWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYSBGYW1peCB2YXJpYWJsZSBieSBuYW1lXHJcbiAgICAgKiBAcGFyYW0gbmFtZSBBIHZhcmlhYmxlIG5hbWVcclxuICAgICAqIEByZXR1cm5zIFRoZSBGYW1peCB2YXJpYWJsZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBuYW1lIG9yIHVuZGVmaW5lZCBpZiBpdCBkb2Vzbid0IGV4aXN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBfZ2V0RmFtaXhWYXJpYWJsZShmdWxseVF1YWxpZmllZE5hbWU6IHN0cmluZyk6IFZhcmlhYmxlIHwgdW5kZWZpbmVkIHtcclxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmZhbWl4VmFyaWFibGVzLnZhbHVlcygpKS5maW5kKHYgPT4gdi5mdWxseVF1YWxpZmllZE5hbWUgPT09IGZ1bGx5UXVhbGlmaWVkTmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGEgRmFtaXggbmFtZXNwYWNlIGJ5IG5hbWVcclxuICAgICAqIEBwYXJhbSBuYW1lIEEgbmFtZXNwYWNlIG5hbWVcclxuICAgICAqIEByZXR1cm5zIFRoZSBGYW1peCBuYW1lc3BhY2UgY29ycmVzcG9uZGluZyB0byB0aGUgbmFtZSBvciB1bmRlZmluZWQgaWYgaXQgZG9lc24ndCBleGlzdFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX2dldEZhbWl4TW9kdWxlKGZ1bGx5UXVhbGlmaWVkTmFtZTogc3RyaW5nKTogTW9kdWxlIHwgdW5kZWZpbmVkIHtcclxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmZhbWl4TW9kdWxlcy52YWx1ZXMoKSkuZmluZChucyA9PiBucy5mdWxseVF1YWxpZmllZE5hbWUgPT09IGZ1bGx5UXVhbGlmaWVkTmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGFsbCBGYW1peCBuYW1lc3BhY2VzXHJcbiAgICAgKiBAcmV0dXJucyBBbGwgRmFtaXggbmFtZXNwYWNlc1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX2dldEZhbWl4TW9kdWxlcygpOiBTZXQ8TW9kdWxlPiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBTZXQoQXJyYXkuZnJvbSh0aGlzLmZhbWl4TW9kdWxlcy52YWx1ZXMoKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhIEZhbWl4IGZpbGUgYnkgbmFtZVxyXG4gICAgICogQHBhcmFtIG5hbWUgQSBmaWxlIG5hbWVcclxuICAgICAqIEByZXR1cm5zIFRoZSBGYW1peCBmaWxlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG5hbWUgb3IgdW5kZWZpbmVkIGlmIGl0IGRvZXNuJ3QgZXhpc3RcclxuICAgICAqL1xyXG4gICAgcHVibGljIF9nZXRGYW1peEZpbGUoZnVsbHlRdWFsaWZpZWROYW1lOiBzdHJpbmcpOiBTY3JpcHRFbnRpdHkgfCBNb2R1bGUgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZmFtaXhGaWxlcy52YWx1ZXMoKSkuZmluZChucyA9PiBucy5uYW1lID09PSBmdWxseVF1YWxpZmllZE5hbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhbGwgRmFtaXggZmlsZXNcclxuICAgICAqIEByZXR1cm5zIEFsbCBGYW1peCBmaWxlc1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX2dldEZhbWl4RmlsZXMoKTogU2V0PFNjcmlwdEVudGl0eSB8IE1vZHVsZT4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgU2V0KEFycmF5LmZyb20odGhpcy5mYW1peEZpbGVzLnZhbHVlcygpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIGFsbCBtZXRob2QgbmFtZXMgYXMgYSBzZXQgZnJvbSBhIGNsYXNzXHJcbiAgICAgKiBAcGFyYW0gY2xhc3NOYW1lIEEgY2xhc3MgbmFtZVxyXG4gICAgICogQHJldHVybnMgVGhlIHNldCBvZiBjbGFzcyBcImNsYXNzTmFtZVwiIG1ldGhvZCBuYW1lc1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX21ldGhvZE5hbWVzQXNTZXRGcm9tQ2xhc3MoY2xhc3NOYW1lOiBzdHJpbmcpOiBTZXQ8c3RyaW5nPiB7XHJcbiAgICAgICAgY29uc3QgdGhlQ2xhc3MgPSB0aGlzLl9nZXRGYW1peENsYXNzKGNsYXNzTmFtZSkgYXMgQ2xhc3M7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBTZXQoQXJyYXkuZnJvbSh0aGVDbGFzcy5tZXRob2RzKS5tYXAobSA9PiBtLm5hbWUpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgYWxsIG1ldGhvZCBwYXJlbnRzIGFzIGEgc2V0IGZyb20gYSBjbGFzc1xyXG4gICAgICogQHBhcmFtIGNsYXNzTmFtZSBBIGNsYXNzIG5hbWVcclxuICAgICAqIEByZXR1cm5zIFRoZSBzZXQgb2YgY2xhc3MgXCJjbGFzc05hbWVcIiBtZXRob2QgcGFyZW50c1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgX21ldGhvZFBhcmVudHNBc1NldEZyb21DbGFzcyhjbGFzc05hbWU6IHN0cmluZyk6IFNldDxUeXBlPiB7XHJcbiAgICAgICAgY29uc3QgdGhlQ2xhc3MgPSB0aGlzLl9nZXRGYW1peENsYXNzKGNsYXNzTmFtZSkgYXMgQ2xhc3M7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBTZXQoQXJyYXkuZnJvbSh0aGVDbGFzcy5tZXRob2RzKS5tYXAobSA9PiBtLnBhcmVudEVudGl0eSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyB0aGUgbWFwIG9mIEZhbWl4IGVsZW1lbnQgaWRzIGFuZCB0aGVpciBGYW1peCBlbGVtZW50IGZyb20gYSBKU09OIG1vZGVsXHJcbiAgICAgKiBAcGFyYW0gbW9kZWwgQSBKU09OIG1vZGVsXHJcbiAgICAgKiBAcmV0dXJucyBUaGUgbWFwIG9mIEZhbWl4IGVsZW1lbnQgaWRzIGFuZCB0aGVpciBGYW1peCBlbGVtZW50IGZyb20gdGhlIEpTT04gbW9kZWxcclxuICAgICAqL1xyXG4gICAgcHVibGljIF9pbml0TWFwRnJvbU1vZGVsKG1vZGVsOiBzdHJpbmcpOiBNYXA8bnVtYmVyLCB1bmtub3duPiB7XHJcbiAgICAgICAgY29uc3QgcGFyc2VkTW9kZWw6IEFycmF5PEZhbWl4QmFzZUVsZW1lbnQ+ID0gSlNPTi5wYXJzZShtb2RlbCk7XHJcbiAgICAgICAgY29uc3QgaWRUb0VsZW1lbnRNYXA6IE1hcDxudW1iZXIsIHVua25vd24+ID0gbmV3IE1hcCgpO1xyXG4gICAgICAgIHBhcnNlZE1vZGVsLmZvckVhY2goZWxlbWVudCA9PiB7XHJcbiAgICAgICAgICAgIGlkVG9FbGVtZW50TWFwLnNldChlbGVtZW50LmlkLCBlbGVtZW50KTtcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gaWRUb0VsZW1lbnRNYXA7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQWRkcyBhIEZhbWl4IGVsZW1lbnQgdG8gdGhlIHJlcG9zaXRvcnlcclxuICAgICAqIEBwYXJhbSBlbGVtZW50IEEgRmFtaXggZWxlbWVudFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWRkRWxlbWVudChlbGVtZW50OiBGYW1peEJhc2VFbGVtZW50KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBDbGFzcykge1xyXG4gICAgICAgICAgICB0aGlzLmZhbWl4Q2xhc3Nlcy5hZGQoZWxlbWVudCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChlbGVtZW50IGluc3RhbmNlb2YgSW50ZXJmYWNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmFtaXhJbnRlcmZhY2VzLmFkZChlbGVtZW50KTtcclxuICAgICAgICB9IGVsc2UgaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBNb2R1bGUpIHtcclxuICAgICAgICAgICAgdGhpcy5mYW1peE1vZHVsZXMuYWRkKGVsZW1lbnQpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIFZhcmlhYmxlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmFtaXhWYXJpYWJsZXMuYWRkKGVsZW1lbnQpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIE1ldGhvZCkge1xyXG4gICAgICAgICAgICB0aGlzLmZhbWl4TWV0aG9kcy5hZGQoZWxlbWVudCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChlbGVtZW50IGluc3RhbmNlb2YgRmFtaXhGdW5jdGlvbkVudGl0eSB8fCBlbGVtZW50IGluc3RhbmNlb2YgQXJyb3dGdW5jdGlvbikge1xyXG4gICAgICAgICAgICB0aGlzLmZhbWl4RnVuY3Rpb25zLmFkZChlbGVtZW50KTtcclxuICAgICAgICB9IGVsc2UgaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBTY3JpcHRFbnRpdHkgfHwgZWxlbWVudCBpbnN0YW5jZW9mIE1vZHVsZSkge1xyXG4gICAgICAgICAgICB0aGlzLmZhbWl4RmlsZXMuYWRkKGVsZW1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmVsZW1lbnRzLmFkZChlbGVtZW50KTtcclxuICAgICAgICBlbGVtZW50LmlkID0gdGhpcy5pZENvdW50ZXI7XHJcbiAgICAgICAgdGhpcy5pZENvdW50ZXIrKztcclxuICAgICAgICB0aGlzLnZhbGlkYXRlRlFOcygpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmFsaWRhdGVzIHRoZSBmdWxseSBxdWFsaWZpZWQgbmFtZXMgb2YgYWxsIEZhbWl4IGVsZW1lbnRzXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgdmFsaWRhdGVGUU5zKCk6IHZvaWQge1xyXG4gICAgICAgIC8vIG1ha2Ugc3VyZSBhbGwgZWxlbWVudHMgaGF2ZSB1bmlxdWUgZnVsbHkgcXVhbGlmaWVkIG5hbWVzXHJcbiAgICAgICAgY29uc3QgZnFucyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xyXG4gICAgICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiBBcnJheS5mcm9tKHRoaXMuZWxlbWVudHMudmFsdWVzKCkpKSB7XHJcbiAgICAgICAgICAgIGlmIChlbGVtZW50IGluc3RhbmNlb2YgTmFtZWRFbnRpdHkgJiYgZWxlbWVudC5mdWxseVF1YWxpZmllZE5hbWUgJiYgZnFucy5oYXMoZWxlbWVudC5mdWxseVF1YWxpZmllZE5hbWUpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB0aGVFeGlzdGluZ0VsZW1lbnQgPSBBcnJheS5mcm9tKHRoaXMuZWxlbWVudHMudmFsdWVzKCkpLmZpbmQoZSA9PiAoZSBhcyBOYW1lZEVudGl0eSkuZnVsbHlRdWFsaWZpZWROYW1lID09PSBlbGVtZW50LmZ1bGx5UXVhbGlmaWVkTmFtZSk7XHJcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBmdWxseSBxdWFsaWZpZWQgbmFtZSAke2VsZW1lbnQuZnVsbHlRdWFsaWZpZWROYW1lfSBpcyBub3QgdW5pcXVlLlxcbkl0IGV4aXN0cyBmb3IgJHt0aGVFeGlzdGluZ0VsZW1lbnQ/LmdldEpTT04oKX1gKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBmcW5zLmFkZCgoZWxlbWVudCBhcyBOYW1lZEVudGl0eSkuZnVsbHlRdWFsaWZpZWROYW1lKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0cyBhIEpTT04gcmVwcmVzZW50YXRpb24gb2YgdGhlIHJlcG9zaXRvcnlcclxuICAgICAqIEByZXR1cm5zIEEgSlNPTiByZXByZXNlbnRhdGlvbiBvZiB0aGUgcmVwb3NpdG9yeVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0SlNPTigpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCByZXQgPSBcIltcIjtcclxuICAgICAgICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgQXJyYXkuZnJvbSh0aGlzLmVsZW1lbnRzLnZhbHVlcygpKSkge1xyXG4gICAgICAgICAgICByZXQgPSByZXQgKyBlbGVtZW50LmdldEpTT04oKSArIFwiLFwiO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXQgPSByZXQuc3Vic3RyaW5nKDAsIHJldC5sZW5ndGggLSAxKTtcclxuICAgICAgICByZXR1cm4gcmV0ICsgXCJdXCI7XHJcbiAgICB9XHJcbn1cclxuIl19
|
package/dist/lib/famix/index.js
CHANGED
|
@@ -15,17 +15,27 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
const Famix = __importStar(require("./model/famix"));
|
|
26
36
|
const famix_base_element_1 = require("./famix_base_element");
|
|
27
37
|
const famix_JSON_exporter_1 = require("./famix_JSON_exporter");
|
|
28
38
|
const famix_repository_1 = require("./famix_repository");
|
|
29
39
|
const model = { Famix };
|
|
30
40
|
module.exports = { FamixBaseElement: famix_base_element_1.FamixBaseElement, FamixJSONExporter: famix_JSON_exporter_1.FamixJSONExporter, FamixRepository: famix_repository_1.FamixRepository, model };
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2ZhbWl4L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFBdUM7QUFDdkMsNkRBQXdEO0FBQ3hELCtEQUEwRDtBQUMxRCx5REFBcUQ7QUFFckQsTUFBTSxLQUFLLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQztBQUV4QixpQkFBUyxFQUFFLGdCQUFnQixFQUFoQixxQ0FBZ0IsRUFBRSxpQkFBaUIsRUFBakIsdUNBQWlCLEVBQUUsZUFBZSxFQUFmLGtDQUFlLEVBQUUsS0FBSyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBGYW1peCBmcm9tIFwiLi9tb2RlbC9mYW1peFwiO1xyXG5pbXBvcnQgeyBGYW1peEJhc2VFbGVtZW50IH0gZnJvbSBcIi4vZmFtaXhfYmFzZV9lbGVtZW50XCI7XHJcbmltcG9ydCB7IEZhbWl4SlNPTkV4cG9ydGVyIH0gZnJvbSBcIi4vZmFtaXhfSlNPTl9leHBvcnRlclwiO1xyXG5pbXBvcnQgeyBGYW1peFJlcG9zaXRvcnkgfSBmcm9tIFwiLi9mYW1peF9yZXBvc2l0b3J5XCI7XHJcblxyXG5jb25zdCBtb2RlbCA9IHsgRmFtaXggfTtcclxuXHJcbmV4cG9ydCA9IHsgRmFtaXhCYXNlRWxlbWVudCwgRmFtaXhKU09ORXhwb3J0ZXIsIEZhbWl4UmVwb3NpdG9yeSwgbW9kZWwgfTtcclxuIl19
|
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
36
|
const ts_morph_1 = require("ts-morph");
|
|
27
37
|
const path = __importStar(require("path"));
|
|
@@ -139,4 +149,4 @@ function replaceMethodCalls(cls, methodName, propName) {
|
|
|
139
149
|
function capitalize(str) {
|
|
140
150
|
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
141
151
|
}
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmYWN0b3ItZ2V0dGVyLXNldHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZWZhY3RvcmVyL3JlZmFjdG9yLWdldHRlci1zZXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUE2RTtBQUM3RSwyQ0FBNkI7QUFFN0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxrQkFBTyxFQUFFLENBQUM7QUFDOUIsT0FBTyxDQUFDLHFCQUFxQixDQUFDLGlEQUFpRCxDQUFDLENBQUM7QUFDakYsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUUzRixPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO0lBQzFDLE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUUxQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDeEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNsQixNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkMsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUM5QixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEMsSUFBSSxRQUFnQixDQUFDO1lBRXJCLElBQUksZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsUUFBUSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsVUFBVSxDQUFDLEtBQUss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QUMsQ0FBQyxDQUFDLENBQUM7QUFDdEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsYXNzRGVjbGFyYXRpb24sIFByb2plY3QsIFNvdXJjZUZpbGUsIFN5bnRheEtpbmQgfSBmcm9tIFwidHMtbW9ycGhcIjtcclxuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xyXG5cclxuY29uc3QgcHJvamVjdCA9IG5ldyBQcm9qZWN0KCk7XHJcbnByb2plY3QuYWRkU291cmNlRmlsZXNBdFBhdGhzKFwic3JjL2xpYi9mYW1peC9tb2RlbC9mYW1peC9mYW1peF9iYXNlX2VsZW1lbnQudHNcIik7XHJcbnByb2plY3QuZ2V0U291cmNlRmlsZXMoKS5mb3JFYWNoKHNvdXJjZUZpbGUgPT4geyBjb25zb2xlLmxvZyhzb3VyY2VGaWxlLmdldEZpbGVQYXRoKCkpOyB9KTtcclxuXHJcbnByb2plY3QuZ2V0U291cmNlRmlsZXMoKS5mb3JFYWNoKHNvdXJjZUZpbGUgPT4ge1xyXG4gICAgY29uc3QgdHlwZU1hcCA9IGNyZWF0ZVR5cGVNYXAoc291cmNlRmlsZSk7XHJcblxyXG4gICAgY29uc3QgY2xhc3NlcyA9IHNvdXJjZUZpbGUuZ2V0Q2xhc3NlcygpO1xyXG4gICAgY2xhc3Nlcy5mb3JFYWNoKGNscyA9PiB7XHJcbiAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IGNscy5nZXRQcm9wZXJ0aWVzKCk7XHJcbiAgICAgICAgY2xzLmdldE1ldGhvZHMoKS5mb3JFYWNoKG1ldGhvZCA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1ldGhvZE5hbWUgPSBtZXRob2QuZ2V0TmFtZSgpO1xyXG4gICAgICAgICAgICBsZXQgcHJvcE5hbWU6IHN0cmluZztcclxuXHJcbiAgICAgICAgICAgIGlmIChpc0VsaWdpYmxlR2V0dGVyKG1ldGhvZE5hbWUpKSB7XHJcbiAgICAgICAgICAgICAgICBwcm9wTmFtZSA9IG1ldGhvZE5hbWUuY2hhckF0KDMpLnRvTG93ZXJDYXNlKCkgKyBtZXRob2ROYW1lLnNsaWNlKDQpO1xyXG4gICAgICAgICAgICAgICAgcmVuYW1lUHJvcGVydHlJZkV4aXN0cyhjbHMsIHByb3BOYW1lLCBwcm9wZXJ0aWVzKTtcclxuICAgICAgICAgICAgICAgIHJlZmFjdG9yVG9HZXR0ZXIoY2xzLCBtZXRob2QsIHByb3BOYW1lLCB0eXBlTWFwKTtcclxuICAgICAgICAgICAgICAgIHJlcGxhY2VNZXRob2RDYWxscyhjbHMsIGBnZXQke2NhcGl0YWxpemUocHJvcE5hbWUpfWAsIHByb3BOYW1lKTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChpc0VsaWdpYmxlU2V0dGVyKG1ldGhvZE5hbWUpKSB7XHJcbiAgICAgICAgICAgICAgICBwcm9wTmFtZSA9IG1ldGhvZE5hbWUuY2hhckF0KDMpLnRvTG93ZXJDYXNlKCkgKyBtZXRob2ROYW1lLnNsaWNlKDQpO1xyXG4gICAgICAgICAgICAgICAgcmVuYW1lUHJvcGVydHlJZkV4aXN0cyhjbHMsIHByb3BOYW1lLCBwcm9wZXJ0aWVzKTtcclxuICAgICAgICAgICAgICAgIHJlZmFjdG9yVG9TZXR0ZXIoY2xzLCBtZXRob2QsIHByb3BOYW1lLCB0eXBlTWFwKTtcclxuICAgICAgICAgICAgICAgIHJlcGxhY2VNZXRob2RDYWxscyhjbHMsIGBzZXQke2NhcGl0YWxpemUocHJvcE5hbWUpfWAsIHByb3BOYW1lKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSk7XHJcbn0pO1xyXG5cclxucHJvamVjdC5zYXZlKCkudGhlbigoKSA9PiB7XHJcbiAgICBjb25zb2xlLmxvZyhcIlJlZmFjdG9yaW5nIGNvbXBsZXRlIVwiKTtcclxufSk7XHJcblxyXG5mdW5jdGlvbiBpc0VsaWdpYmxlR2V0dGVyKG1ldGhvZE5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIG1ldGhvZE5hbWUuc3RhcnRzV2l0aChcImdldFwiKSAmJiAvXltBLVpdW2EtekEtWjAtOV0qJC8udGVzdChtZXRob2ROYW1lLnNsaWNlKDMpKSAmJiAhbWV0aG9kTmFtZS5pbmNsdWRlcyhcIkpTT05cIik7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGlzRWxpZ2libGVTZXR0ZXIobWV0aG9kTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gbWV0aG9kTmFtZS5zdGFydHNXaXRoKFwic2V0XCIpICYmIC9eW0EtWl1bYS16QS1aMC05XSokLy50ZXN0KG1ldGhvZE5hbWUuc2xpY2UoMykpO1xyXG59XHJcblxyXG5mdW5jdGlvbiByZW5hbWVQcm9wZXJ0eUlmRXhpc3RzKGNsczogYW55LCBwcm9wTmFtZTogc3RyaW5nLCBwcm9wZXJ0aWVzOiBhbnlbXSkge1xyXG4gICAgY29uc3QgZXhpc3RpbmdQcm9wZXJ0eSA9IHByb3BlcnRpZXMuZmluZChwcm9wID0+IHByb3AuZ2V0TmFtZSgpID09PSBwcm9wTmFtZSk7XHJcbiAgICBpZiAoZXhpc3RpbmdQcm9wZXJ0eSkge1xyXG4gICAgICAgIGV4aXN0aW5nUHJvcGVydHkucmVuYW1lKGBfJHtwcm9wTmFtZX1gKTtcclxuICAgIH1cclxufVxyXG5cclxuZnVuY3Rpb24gY3JlYXRlVHlwZU1hcChzb3VyY2VGaWxlOiBTb3VyY2VGaWxlKTogTWFwPHN0cmluZywgc3RyaW5nPiB7XHJcbiAgICBjb25zdCB0eXBlTWFwID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcclxuICAgIGNvbnN0IGltcG9ydERlY2xhcmF0aW9ucyA9IHNvdXJjZUZpbGUuZ2V0SW1wb3J0RGVjbGFyYXRpb25zKCk7XHJcblxyXG4gICAgaW1wb3J0RGVjbGFyYXRpb25zLmZvckVhY2goaW1wb3J0RGVjbCA9PiB7XHJcbiAgICAgICAgY29uc3QgbW9kdWxlU3BlY2lmaWVyID0gaW1wb3J0RGVjbC5nZXRNb2R1bGVTcGVjaWZpZXIoKS5nZXRUZXh0KCkucmVwbGFjZSgvWydcIl0vZywgJycpO1xyXG4gICAgICAgIGNvbnN0IGFic29sdXRlUGF0aCA9IHBhdGgucmVzb2x2ZShzb3VyY2VGaWxlLmdldERpcmVjdG9yeSgpLmdldFBhdGgoKSwgbW9kdWxlU3BlY2lmaWVyKTtcclxuICAgICAgICBjb25zdCBub3JtYWxpemVkUGF0aCA9IG5vcm1hbGl6ZVBhdGgoYWJzb2x1dGVQYXRoKTtcclxuICAgICAgICBjb25zdCBuYW1lZEltcG9ydHMgPSBpbXBvcnREZWNsLmdldE5hbWVkSW1wb3J0cygpO1xyXG4gICAgICAgIGNvbnN0IGRlZmF1bHRJbXBvcnQgPSBpbXBvcnREZWNsLmdldERlZmF1bHRJbXBvcnQoKTtcclxuXHJcbiAgICAgICAgbmFtZWRJbXBvcnRzLmZvckVhY2gobmFtZWRJbXBvcnQgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgTmFtZWQgaW1wb3J0OiAke25hbWVkSW1wb3J0LmdldE5hbWUoKX0sIHBhdGg6ICR7bm9ybWFsaXplZFBhdGh9YCk7XHJcbiAgICAgICAgICAgIHR5cGVNYXAuc2V0KG5hbWVkSW1wb3J0LmdldE5hbWUoKSwgbm9ybWFsaXplZFBhdGgpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBpZiAoZGVmYXVsdEltcG9ydCkge1xyXG4gICAgICAgICAgICB0eXBlTWFwLnNldChkZWZhdWx0SW1wb3J0LmdldFRleHQoKSwgbm9ybWFsaXplZFBhdGgpO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB0eXBlTWFwO1xyXG59XHJcblxyXG5mdW5jdGlvbiByZWZhY3RvclRvR2V0dGVyKGNsczogYW55LCBtZXRob2Q6IGFueSwgcHJvcE5hbWU6IHN0cmluZywgdHlwZU1hcDogTWFwPHN0cmluZywgc3RyaW5nPikge1xyXG4gICAgY29uc3QgZ2V0dGVyTmFtZSA9IHByb3BOYW1lO1xyXG4gICAgY29uc3QgcmVuYW1lZFByb3AgPSBgXyR7cHJvcE5hbWV9YDtcclxuICAgIGNvbnN0IHJldHVyblR5cGUgPSBtZXRob2QuZ2V0UmV0dXJuVHlwZSgpLmdldFRleHQoKTtcclxuICAgIGNvbnN0IHNpbXBsaWZpZWRUeXBlID0gcmVwbGFjZUxvbmdUeXBlUGF0aHMocmV0dXJuVHlwZSwgdHlwZU1hcCk7XHJcblxyXG4gICAgY29uc3QgZ2V0dGVyQm9keSA9IG1ldGhvZC5nZXRCb2R5VGV4dCgpLnJlcGxhY2UobmV3IFJlZ0V4cChgdGhpc1xcXFwuJHtwcm9wTmFtZX1gLCAnZycpLCBgdGhpcy4ke3JlbmFtZWRQcm9wfWApO1xyXG5cclxuICAgIGNscy5hZGRHZXRBY2Nlc3Nvcih7XHJcbiAgICAgICAgbmFtZTogZ2V0dGVyTmFtZSxcclxuICAgICAgICBzdGF0ZW1lbnRzOiBnZXR0ZXJCb2R5LFxyXG4gICAgICAgIC8vIHJldHVyblR5cGU6IHNpbXBsaWZpZWRUeXBlLCAgLy8gZG9uJ3QgbmVlZCBhIHJldHVybiB0eXBlIGZvciBnZXR0ZXJcclxuICAgIH0pO1xyXG5cclxuICAgIG1ldGhvZC5yZW1vdmUoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVmYWN0b3JUb1NldHRlcihjbHM6IGFueSwgbWV0aG9kOiBhbnksIHByb3BOYW1lOiBzdHJpbmcsIHR5cGVNYXA6IE1hcDxzdHJpbmcsIHN0cmluZz4pIHtcclxuICAgIGNvbnN0IHNldHRlck5hbWUgPSBwcm9wTmFtZTtcclxuICAgIGNvbnN0IHJlbmFtZWRQcm9wID0gYF8ke3Byb3BOYW1lfWA7XHJcblxyXG4gICAgY29uc3QgcGFyYW1ldGVyID0gbWV0aG9kLmdldFBhcmFtZXRlcnMoKVswXTtcclxuICAgIGNvbnN0IHBhcmFtTmFtZSA9IHBhcmFtZXRlci5nZXROYW1lKCk7XHJcbiAgICBjb25zdCBwYXJhbVR5cGUgPSByZXBsYWNlTG9uZ1R5cGVQYXRocyhwYXJhbWV0ZXIuZ2V0VHlwZSgpLmdldFRleHQoKSwgdHlwZU1hcCk7XHJcblxyXG4gICAgY29uc3Qgc2V0dGVyQm9keSA9IG1ldGhvZC5nZXRCb2R5VGV4dCgpLnJlcGxhY2UobmV3IFJlZ0V4cChgdGhpc1xcXFwuJHtwcm9wTmFtZX1gLCAnZycpLCBgdGhpcy4ke3JlbmFtZWRQcm9wfWApO1xyXG5cclxuICAgIGNscy5hZGRTZXRBY2Nlc3Nvcih7XHJcbiAgICAgICAgbmFtZTogc2V0dGVyTmFtZSxcclxuICAgICAgICBzdGF0ZW1lbnRzOiBzZXR0ZXJCb2R5LFxyXG4gICAgICAgIHBhcmFtZXRlcnM6IFt7IG5hbWU6IHBhcmFtTmFtZSwgdHlwZTogcGFyYW1UeXBlIH1dLFxyXG4gICAgfSk7XHJcblxyXG4gICAgbWV0aG9kLnJlbW92ZSgpO1xyXG59XHJcblxyXG5mdW5jdGlvbiByZXBsYWNlTG9uZ1R5cGVQYXRocyh0eXBlOiBzdHJpbmcsIHR5cGVNYXA6IE1hcDxzdHJpbmcsIHN0cmluZz4pOiBzdHJpbmcge1xyXG4gICAgZm9yIChjb25zdCBbaW1wb3J0TmFtZSwgaW1wb3J0UGF0aF0gb2YgdHlwZU1hcC5lbnRyaWVzKCkpIHtcclxuICAgICAgICBjb25zdCBsb25nUGF0aCA9IGBpbXBvcnQoXCIke2ltcG9ydFBhdGh9XCIpJHtpbXBvcnROYW1lfWA7XHJcbiAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKGBpbXBvcnRcXFxcKFtcIiddJHtub3JtYWxpemVQYXRoKGltcG9ydFBhdGgpfVtcIiddXFxcXClcXFxcLiR7aW1wb3J0TmFtZX1gLCAnZycpO1xyXG4gICAgICAgIGlmIChyZWdleC50ZXN0KHR5cGUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBpbXBvcnROYW1lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB0eXBlO1xyXG59XHJcblxyXG5mdW5jdGlvbiBub3JtYWxpemVQYXRoKGZpbGVQYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGZpbGVQYXRoLnJlcGxhY2UoL1xcXFwvZywgJy8nKTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVwbGFjZU1ldGhvZENhbGxzKGNsczogQ2xhc3NEZWNsYXJhdGlvbiwgbWV0aG9kTmFtZTogc3RyaW5nLCBwcm9wTmFtZTogc3RyaW5nKSB7XHJcbiAgICBjbHMuZ2V0RGVzY2VuZGFudHNPZktpbmQoU3ludGF4S2luZC5DYWxsRXhwcmVzc2lvbikuZm9yRWFjaChjYWxsRXhwciA9PiB7XHJcbiAgICAgICAgY29uc3QgZXhwciA9IGNhbGxFeHByLmdldEV4cHJlc3Npb24oKTtcclxuICAgICAgICBpZiAoZXhwci5nZXRUZXh0KCkgPT09IGB0aGlzLiR7bWV0aG9kTmFtZX1gKSB7XHJcbiAgICAgICAgICAgIGNhbGxFeHByLnJlcGxhY2VXaXRoVGV4dChgdGhpcy4ke3Byb3BOYW1lfWApO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZXhwci5nZXRUZXh0KCkgPT09IGB0aGlzLiR7bWV0aG9kTmFtZX1gICYmIGNhbGxFeHByLmdldEFyZ3VtZW50cygpLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY2FsbEV4cHIucmVwbGFjZVdpdGhUZXh0KGB0aGlzLiR7cHJvcE5hbWV9ID0gJHtjYWxsRXhwci5nZXRBcmd1bWVudHMoKVswXS5nZXRUZXh0KCl9YCk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNhcGl0YWxpemUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHN0ci5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0ci5zbGljZSgxKTtcclxufVxyXG4iXX0=
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmYWN0b3ItZ2V0dGVyLXNldHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZWZhY3RvcmVyL3JlZmFjdG9yLWdldHRlci1zZXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBNkU7QUFDN0UsMkNBQTZCO0FBRTdCLE1BQU0sT0FBTyxHQUFHLElBQUksa0JBQU8sRUFBRSxDQUFDO0FBQzlCLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxpREFBaUQsQ0FBQyxDQUFDO0FBQ2pGLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFM0YsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRTtJQUMxQyxNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFMUMsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3hDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDbEIsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDOUIsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BDLElBQUksUUFBZ0IsQ0FBQztZQUVyQixJQUFJLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLFFBQVEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLFVBQVUs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QUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3RELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbGFzc0RlY2xhcmF0aW9uLCBQcm9qZWN0LCBTb3VyY2VGaWxlLCBTeW50YXhLaW5kIH0gZnJvbSBcInRzLW1vcnBoXCI7XHJcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcclxuXHJcbmNvbnN0IHByb2plY3QgPSBuZXcgUHJvamVjdCgpO1xyXG5wcm9qZWN0LmFkZFNvdXJjZUZpbGVzQXRQYXRocyhcInNyYy9saWIvZmFtaXgvbW9kZWwvZmFtaXgvZmFtaXhfYmFzZV9lbGVtZW50LnRzXCIpO1xyXG5wcm9qZWN0LmdldFNvdXJjZUZpbGVzKCkuZm9yRWFjaChzb3VyY2VGaWxlID0+IHsgY29uc29sZS5sb2coc291cmNlRmlsZS5nZXRGaWxlUGF0aCgpKTsgfSk7XHJcblxyXG5wcm9qZWN0LmdldFNvdXJjZUZpbGVzKCkuZm9yRWFjaChzb3VyY2VGaWxlID0+IHtcclxuICAgIGNvbnN0IHR5cGVNYXAgPSBjcmVhdGVUeXBlTWFwKHNvdXJjZUZpbGUpO1xyXG5cclxuICAgIGNvbnN0IGNsYXNzZXMgPSBzb3VyY2VGaWxlLmdldENsYXNzZXMoKTtcclxuICAgIGNsYXNzZXMuZm9yRWFjaChjbHMgPT4ge1xyXG4gICAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSBjbHMuZ2V0UHJvcGVydGllcygpO1xyXG4gICAgICAgIGNscy5nZXRNZXRob2RzKCkuZm9yRWFjaChtZXRob2QgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBtZXRob2ROYW1lID0gbWV0aG9kLmdldE5hbWUoKTtcclxuICAgICAgICAgICAgbGV0IHByb3BOYW1lOiBzdHJpbmc7XHJcblxyXG4gICAgICAgICAgICBpZiAoaXNFbGlnaWJsZUdldHRlcihtZXRob2ROYW1lKSkge1xyXG4gICAgICAgICAgICAgICAgcHJvcE5hbWUgPSBtZXRob2ROYW1lLmNoYXJBdCgzKS50b0xvd2VyQ2FzZSgpICsgbWV0aG9kTmFtZS5zbGljZSg0KTtcclxuICAgICAgICAgICAgICAgIHJlbmFtZVByb3BlcnR5SWZFeGlzdHMoY2xzLCBwcm9wTmFtZSwgcHJvcGVydGllcyk7XHJcbiAgICAgICAgICAgICAgICByZWZhY3RvclRvR2V0dGVyKGNscywgbWV0aG9kLCBwcm9wTmFtZSwgdHlwZU1hcCk7XHJcbiAgICAgICAgICAgICAgICByZXBsYWNlTWV0aG9kQ2FsbHMoY2xzLCBgZ2V0JHtjYXBpdGFsaXplKHByb3BOYW1lKX1gLCBwcm9wTmFtZSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNFbGlnaWJsZVNldHRlcihtZXRob2ROYW1lKSkge1xyXG4gICAgICAgICAgICAgICAgcHJvcE5hbWUgPSBtZXRob2ROYW1lLmNoYXJBdCgzKS50b0xvd2VyQ2FzZSgpICsgbWV0aG9kTmFtZS5zbGljZSg0KTtcclxuICAgICAgICAgICAgICAgIHJlbmFtZVByb3BlcnR5SWZFeGlzdHMoY2xzLCBwcm9wTmFtZSwgcHJvcGVydGllcyk7XHJcbiAgICAgICAgICAgICAgICByZWZhY3RvclRvU2V0dGVyKGNscywgbWV0aG9kLCBwcm9wTmFtZSwgdHlwZU1hcCk7XHJcbiAgICAgICAgICAgICAgICByZXBsYWNlTWV0aG9kQ2FsbHMoY2xzLCBgc2V0JHtjYXBpdGFsaXplKHByb3BOYW1lKX1gLCBwcm9wTmFtZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH0pO1xyXG59KTtcclxuXHJcbnByb2plY3Quc2F2ZSgpLnRoZW4oKCkgPT4ge1xyXG4gICAgY29uc29sZS5sb2coXCJSZWZhY3RvcmluZyBjb21wbGV0ZSFcIik7XHJcbn0pO1xyXG5cclxuZnVuY3Rpb24gaXNFbGlnaWJsZUdldHRlcihtZXRob2ROYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBtZXRob2ROYW1lLnN0YXJ0c1dpdGgoXCJnZXRcIikgJiYgL15bQS1aXVthLXpBLVowLTldKiQvLnRlc3QobWV0aG9kTmFtZS5zbGljZSgzKSkgJiYgIW1ldGhvZE5hbWUuaW5jbHVkZXMoXCJKU09OXCIpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc0VsaWdpYmxlU2V0dGVyKG1ldGhvZE5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIG1ldGhvZE5hbWUuc3RhcnRzV2l0aChcInNldFwiKSAmJiAvXltBLVpdW2EtekEtWjAtOV0qJC8udGVzdChtZXRob2ROYW1lLnNsaWNlKDMpKTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVuYW1lUHJvcGVydHlJZkV4aXN0cyhjbHM6IGFueSwgcHJvcE5hbWU6IHN0cmluZywgcHJvcGVydGllczogYW55W10pIHtcclxuICAgIGNvbnN0IGV4aXN0aW5nUHJvcGVydHkgPSBwcm9wZXJ0aWVzLmZpbmQocHJvcCA9PiBwcm9wLmdldE5hbWUoKSA9PT0gcHJvcE5hbWUpO1xyXG4gICAgaWYgKGV4aXN0aW5nUHJvcGVydHkpIHtcclxuICAgICAgICBleGlzdGluZ1Byb3BlcnR5LnJlbmFtZShgXyR7cHJvcE5hbWV9YCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNyZWF0ZVR5cGVNYXAoc291cmNlRmlsZTogU291cmNlRmlsZSk6IE1hcDxzdHJpbmcsIHN0cmluZz4ge1xyXG4gICAgY29uc3QgdHlwZU1hcCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XHJcbiAgICBjb25zdCBpbXBvcnREZWNsYXJhdGlvbnMgPSBzb3VyY2VGaWxlLmdldEltcG9ydERlY2xhcmF0aW9ucygpO1xyXG5cclxuICAgIGltcG9ydERlY2xhcmF0aW9ucy5mb3JFYWNoKGltcG9ydERlY2wgPT4ge1xyXG4gICAgICAgIGNvbnN0IG1vZHVsZVNwZWNpZmllciA9IGltcG9ydERlY2wuZ2V0TW9kdWxlU3BlY2lmaWVyKCkuZ2V0VGV4dCgpLnJlcGxhY2UoL1snXCJdL2csICcnKTtcclxuICAgICAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBwYXRoLnJlc29sdmUoc291cmNlRmlsZS5nZXREaXJlY3RvcnkoKS5nZXRQYXRoKCksIG1vZHVsZVNwZWNpZmllcik7XHJcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFBhdGggPSBub3JtYWxpemVQYXRoKGFic29sdXRlUGF0aCk7XHJcbiAgICAgICAgY29uc3QgbmFtZWRJbXBvcnRzID0gaW1wb3J0RGVjbC5nZXROYW1lZEltcG9ydHMoKTtcclxuICAgICAgICBjb25zdCBkZWZhdWx0SW1wb3J0ID0gaW1wb3J0RGVjbC5nZXREZWZhdWx0SW1wb3J0KCk7XHJcblxyXG4gICAgICAgIG5hbWVkSW1wb3J0cy5mb3JFYWNoKG5hbWVkSW1wb3J0ID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coYE5hbWVkIGltcG9ydDogJHtuYW1lZEltcG9ydC5nZXROYW1lKCl9LCBwYXRoOiAke25vcm1hbGl6ZWRQYXRofWApO1xyXG4gICAgICAgICAgICB0eXBlTWFwLnNldChuYW1lZEltcG9ydC5nZXROYW1lKCksIG5vcm1hbGl6ZWRQYXRoKTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgaWYgKGRlZmF1bHRJbXBvcnQpIHtcclxuICAgICAgICAgICAgdHlwZU1hcC5zZXQoZGVmYXVsdEltcG9ydC5nZXRUZXh0KCksIG5vcm1hbGl6ZWRQYXRoKTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gdHlwZU1hcDtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVmYWN0b3JUb0dldHRlcihjbHM6IGFueSwgbWV0aG9kOiBhbnksIHByb3BOYW1lOiBzdHJpbmcsIHR5cGVNYXA6IE1hcDxzdHJpbmcsIHN0cmluZz4pIHtcclxuICAgIGNvbnN0IGdldHRlck5hbWUgPSBwcm9wTmFtZTtcclxuICAgIGNvbnN0IHJlbmFtZWRQcm9wID0gYF8ke3Byb3BOYW1lfWA7XHJcbiAgICBjb25zdCByZXR1cm5UeXBlID0gbWV0aG9kLmdldFJldHVyblR5cGUoKS5nZXRUZXh0KCk7XHJcbiAgICBjb25zdCBzaW1wbGlmaWVkVHlwZSA9IHJlcGxhY2VMb25nVHlwZVBhdGhzKHJldHVyblR5cGUsIHR5cGVNYXApO1xyXG5cclxuICAgIGNvbnN0IGdldHRlckJvZHkgPSBtZXRob2QuZ2V0Qm9keVRleHQoKS5yZXBsYWNlKG5ldyBSZWdFeHAoYHRoaXNcXFxcLiR7cHJvcE5hbWV9YCwgJ2cnKSwgYHRoaXMuJHtyZW5hbWVkUHJvcH1gKTtcclxuXHJcbiAgICBjbHMuYWRkR2V0QWNjZXNzb3Ioe1xyXG4gICAgICAgIG5hbWU6IGdldHRlck5hbWUsXHJcbiAgICAgICAgc3RhdGVtZW50czogZ2V0dGVyQm9keSxcclxuICAgICAgICAvLyByZXR1cm5UeXBlOiBzaW1wbGlmaWVkVHlwZSwgIC8vIGRvbid0IG5lZWQgYSByZXR1cm4gdHlwZSBmb3IgZ2V0dGVyXHJcbiAgICB9KTtcclxuXHJcbiAgICBtZXRob2QucmVtb3ZlKCk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHJlZmFjdG9yVG9TZXR0ZXIoY2xzOiBhbnksIG1ldGhvZDogYW55LCBwcm9wTmFtZTogc3RyaW5nLCB0eXBlTWFwOiBNYXA8c3RyaW5nLCBzdHJpbmc+KSB7XHJcbiAgICBjb25zdCBzZXR0ZXJOYW1lID0gcHJvcE5hbWU7XHJcbiAgICBjb25zdCByZW5hbWVkUHJvcCA9IGBfJHtwcm9wTmFtZX1gO1xyXG5cclxuICAgIGNvbnN0IHBhcmFtZXRlciA9IG1ldGhvZC5nZXRQYXJhbWV0ZXJzKClbMF07XHJcbiAgICBjb25zdCBwYXJhbU5hbWUgPSBwYXJhbWV0ZXIuZ2V0TmFtZSgpO1xyXG4gICAgY29uc3QgcGFyYW1UeXBlID0gcmVwbGFjZUxvbmdUeXBlUGF0aHMocGFyYW1ldGVyLmdldFR5cGUoKS5nZXRUZXh0KCksIHR5cGVNYXApO1xyXG5cclxuICAgIGNvbnN0IHNldHRlckJvZHkgPSBtZXRob2QuZ2V0Qm9keVRleHQoKS5yZXBsYWNlKG5ldyBSZWdFeHAoYHRoaXNcXFxcLiR7cHJvcE5hbWV9YCwgJ2cnKSwgYHRoaXMuJHtyZW5hbWVkUHJvcH1gKTtcclxuXHJcbiAgICBjbHMuYWRkU2V0QWNjZXNzb3Ioe1xyXG4gICAgICAgIG5hbWU6IHNldHRlck5hbWUsXHJcbiAgICAgICAgc3RhdGVtZW50czogc2V0dGVyQm9keSxcclxuICAgICAgICBwYXJhbWV0ZXJzOiBbeyBuYW1lOiBwYXJhbU5hbWUsIHR5cGU6IHBhcmFtVHlwZSB9XSxcclxuICAgIH0pO1xyXG5cclxuICAgIG1ldGhvZC5yZW1vdmUoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVwbGFjZUxvbmdUeXBlUGF0aHModHlwZTogc3RyaW5nLCB0eXBlTWFwOiBNYXA8c3RyaW5nLCBzdHJpbmc+KTogc3RyaW5nIHtcclxuICAgIGZvciAoY29uc3QgW2ltcG9ydE5hbWUsIGltcG9ydFBhdGhdIG9mIHR5cGVNYXAuZW50cmllcygpKSB7XHJcbiAgICAgICAgY29uc3QgbG9uZ1BhdGggPSBgaW1wb3J0KFwiJHtpbXBvcnRQYXRofVwiKSR7aW1wb3J0TmFtZX1gO1xyXG4gICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChgaW1wb3J0XFxcXChbXCInXSR7bm9ybWFsaXplUGF0aChpbXBvcnRQYXRoKX1bXCInXVxcXFwpXFxcXC4ke2ltcG9ydE5hbWV9YCwgJ2cnKTtcclxuICAgICAgICBpZiAocmVnZXgudGVzdCh0eXBlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0TmFtZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHlwZTtcclxufVxyXG5cclxuZnVuY3Rpb24gbm9ybWFsaXplUGF0aChmaWxlUGF0aDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBmaWxlUGF0aC5yZXBsYWNlKC9cXFxcL2csICcvJyk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHJlcGxhY2VNZXRob2RDYWxscyhjbHM6IENsYXNzRGVjbGFyYXRpb24sIG1ldGhvZE5hbWU6IHN0cmluZywgcHJvcE5hbWU6IHN0cmluZykge1xyXG4gICAgY2xzLmdldERlc2NlbmRhbnRzT2ZLaW5kKFN5bnRheEtpbmQuQ2FsbEV4cHJlc3Npb24pLmZvckVhY2goY2FsbEV4cHIgPT4ge1xyXG4gICAgICAgIGNvbnN0IGV4cHIgPSBjYWxsRXhwci5nZXRFeHByZXNzaW9uKCk7XHJcbiAgICAgICAgaWYgKGV4cHIuZ2V0VGV4dCgpID09PSBgdGhpcy4ke21ldGhvZE5hbWV9YCkge1xyXG4gICAgICAgICAgICBjYWxsRXhwci5yZXBsYWNlV2l0aFRleHQoYHRoaXMuJHtwcm9wTmFtZX1gKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGV4cHIuZ2V0VGV4dCgpID09PSBgdGhpcy4ke21ldGhvZE5hbWV9YCAmJiBjYWxsRXhwci5nZXRBcmd1bWVudHMoKS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGNhbGxFeHByLnJlcGxhY2VXaXRoVGV4dChgdGhpcy4ke3Byb3BOYW1lfSA9ICR7Y2FsbEV4cHIuZ2V0QXJndW1lbnRzKClbMF0uZ2V0VGV4dCgpfWApO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG59XHJcblxyXG5mdW5jdGlvbiBjYXBpdGFsaXplKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBzdHIuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBzdHIuc2xpY2UoMSk7XHJcbn1cclxuIl19
|
|
@@ -16,13 +16,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
26
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
37
|
const child_process_1 = require("child_process");
|
|
28
38
|
const path = __importStar(require("path"));
|
|
@@ -39,4 +49,4 @@ const child = (0, child_process_1.spawn)('node', args, { stdio: 'inherit' });
|
|
|
39
49
|
child.on('close', (code) => {
|
|
40
50
|
process.exit(code);
|
|
41
51
|
});
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHMyZmFtaXgtY2xpLXdyYXBwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHMyZmFtaXgtY2xpLXdyYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsaURBQXNDO0FBQ3RDLDJDQUE2QjtBQUU3QixxRUFBcUU7QUFDckUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztBQUUzRCxzRUFBc0U7QUFDdEUsTUFBTSxJQUFJLEdBQUc7SUFDWCxzQkFBc0I7SUFDdEIsMENBQTBDO0lBQzFDLE9BQU87SUFDUCxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztDQUN6QixDQUFDO0FBRUYsTUFBTSxLQUFLLEdBQUcsSUFBQSxxQkFBSyxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztBQUV4RCxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFO0lBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDckIsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIjIS91c3IvYmluL2VudiBub2RlXHJcblxyXG5pbXBvcnQgeyBzcGF3biB9IGZyb20gJ2NoaWxkX3Byb2Nlc3MnO1xyXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xyXG5cclxuLy8gUmVzb2x2ZSB0aGUgcGF0aCB0byB0czJmYW1peC1jbGkuanMgcmVsYXRpdmUgdG8gdGhlIHdyYXBwZXIgc2NyaXB0XHJcbmNvbnN0IGNsaVBhdGggPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAndHMyZmFtaXgtY2xpLmpzJyk7XHJcblxyXG4vLyBBbGxvdyB0c2xvZyB0byBkaXNwbGF5IHRoZSBwcm9wZXIgVHlwZVNjcmlwdCBmaWxlcyBhbmQgbGluZSBudW1iZXJzXHJcbmNvbnN0IGFyZ3MgPSBbXHJcbiAgJy0tZW5hYmxlLXNvdXJjZS1tYXBzJyxcclxuICAnLS1leHBlcmltZW50YWwtc3BlY2lmaWVyLXJlc29sdXRpb249bm9kZScsXHJcbiAgY2xpUGF0aCxcclxuICAuLi5wcm9jZXNzLmFyZ3Yuc2xpY2UoMilcclxuXTtcclxuXHJcbmNvbnN0IGNoaWxkID0gc3Bhd24oJ25vZGUnLCBhcmdzLCB7IHN0ZGlvOiAnaW5oZXJpdCcgfSk7XHJcblxyXG5jaGlsZC5vbignY2xvc2UnLCAoY29kZSkgPT4ge1xyXG4gIHByb2Nlc3MuZXhpdChjb2RlKTtcclxufSk7XHJcbiJdfQ==
|
package/dist/ts2famix-cli.js
CHANGED
|
@@ -16,13 +16,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
26
36
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
27
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
28
38
|
};
|
|
@@ -80,4 +90,4 @@ fs.writeFile(jsonFilePath, jsonOutput, (err) => {
|
|
|
80
90
|
}
|
|
81
91
|
});
|
|
82
92
|
analyze_3.logger.info(`Created: ${jsonFilePath}`);
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHMyZmFtaXgtY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RzMmZhbWl4LWNsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx1Q0FBeUI7QUFDekIsa0RBQTBCO0FBQzFCLHVDQUFxQztBQUVyQyx1Q0FBbUM7QUFDbkMsdUNBQW1DO0FBRW5DLE1BQU0sSUFBSSxHQUFHLGVBQUs7S0FDYixPQUFPLENBQUMsc0VBQXNFLEVBQUUsd0RBQXdELENBQUM7S0FDekksT0FBTyxDQUFDLGtFQUFrRSxFQUFFLHNEQUFzRCxDQUFDO0tBQ25JLEtBQUssQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDO0tBQ25CLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0tBQ2IsS0FBSyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUM7S0FDcEIsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7S0FDYixLQUFLLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQztLQUN0QixLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztLQUNiLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0tBQ2YsUUFBUSxDQUFDLEdBQUcsRUFBRSw4RkFBOEYsQ0FBQztLQUM3RyxPQUFPLENBQUMsV0FBVyxDQUFDO0tBQ3BCLE9BQU8sQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDO0tBQzNCLFFBQVEsQ0FBQyxXQUFXLEVBQUUsc0lBQXNJLENBQUM7S0FDN0osWUFBWSxDQUFDLE9BQU8sQ0FBQztLQUNyQixZQUFZLENBQUMsUUFBUSxDQUFDO0tBQ3RCLFNBQVMsRUFBRSxDQUFDO0FBRWpCLHVDQUFtQztBQUNuQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQVcsQ0FBQztBQUMzRCxnQkFBTSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBb0IsQ0FBQztBQUVuRCxNQUFNLFFBQVEsR0FBRyxJQUFJLGtCQUFRLEVBQUUsQ0FBQztBQUNoQyxJQUFJLFFBQXlCLENBQUM7QUFFOUIsSUFBSyxJQUFJLENBQUMsS0FBZ0IsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztJQUNuRCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFlLENBQUM7SUFDOUMseUNBQXlDO0lBQ3pDLE1BQU0sT0FBTyxHQUFHLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDakYsZ0JBQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLE1BQU0sT0FBTyxHQUFHLElBQUksa0JBQU8sQ0FBQztRQUN4QixnQkFBZ0I7UUFDaEIsZUFBZSxFQUFFO1lBQ2IsT0FBTyxFQUFFLE9BQU87U0FDbkI7S0FDRixDQUFDLENBQUM7SUFDTCxRQUFRLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBRXJELENBQUM7S0FBTSxDQUFDO0lBQ0osTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLEVBQVUsQ0FBQztJQUNsQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFlLENBQUMsQ0FBQztJQUNqQyxRQUFRLEdBQUcsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ2pELENBQUM7QUFFRCxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUMsTUFBTSxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUM7QUFDckQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQWdCLENBQUM7QUFFM0MsRUFBRSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7SUFDM0MsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUFDLE1BQU0sR0FBRyxDQUFDO0lBQUMsQ0FBQztBQUMzQixDQUFDLENBQUMsQ0FBQztBQUVILGdCQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksWUFBWSxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcclxuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XHJcbmltcG9ydCB5YXJncyBmcm9tIFwieWFyZ3NcIjtcclxuaW1wb3J0IHsgSW1wb3J0ZXIgfSBmcm9tICcuL2FuYWx5emUnO1xyXG5pbXBvcnQgeyBGYW1peFJlcG9zaXRvcnkgfSBmcm9tIFwiLi9saWIvZmFtaXgvZmFtaXhfcmVwb3NpdG9yeVwiO1xyXG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcInRzLW1vcnBoXCI7XHJcbmltcG9ydCB7IGNvbmZpZyB9IGZyb20gXCIuL2FuYWx5emVcIjtcclxuXHJcbmNvbnN0IGFyZ3YgPSB5YXJnc1xyXG4gICAgLmV4YW1wbGUoYHRzMmZhbWl4IC1pIFwicGF0aC90by9wcm9qZWN0LyoqLyoudHNcIiAtbyBKU09OTW9kZWxzL3Byb2plY3ROYW1lLmpzb25gLCAnQ3JlYXRlcyBhIEpTT04tZm9ybWF0IEZhbWl4IG1vZGVsIG9mIHR5cGVzY3JpcHQgZmlsZXMuJylcclxuICAgIC5leGFtcGxlKGB0czJmYW1peCAtaSBwYXRoL3RvL3RzY29uZmlnLmpzb24gLW8gSlNPTk1vZGVscy9wcm9qZWN0TmFtZS5qc29uYCwgJ0NyZWF0ZXMgYSBKU09OLWZvcm1hdCBtb2RlbCBvZiBhIHR5cGVzY3JpcHQgcHJvamVjdC4nKVxyXG4gICAgLmFsaWFzKCdpJywgJ2lucHV0JylcclxuICAgIC5uYXJncygnaScsIDEpXHJcbiAgICAuYWxpYXMoJ28nLCAnb3V0cHV0JylcclxuICAgIC5uYXJncygnbycsIDEpXHJcbiAgICAuYWxpYXMoJ2wnLCAnbG9nbGV2ZWwnKVxyXG4gICAgLm5hcmdzKCdsJywgMSlcclxuICAgIC5kZWZhdWx0KCdsJywgMylcclxuICAgIC5kZXNjcmliZSgnbCcsICdTZXQgbWluaW11bSBsb2dnaW5nIGxldmVsIDA6IHNpbGx5LCAxOiB0cmFjZSwgMjogZGVidWcsIDM6IGluZm8sIDQ6IHdhcm4sIDU6IGVycm9yLCA2OiBmYXRhbCcpXHJcbiAgICAuYm9vbGVhbignZ3JhcGhlbWVzJylcclxuICAgIC5kZWZhdWx0KCdncmFwaGVtZXMnLCBmYWxzZSlcclxuICAgIC5kZXNjcmliZSgnZ3JhcGhlbWVzJywgJ1Byb2Nlc3MgZ3JhcGhlbWVzIChvdXRzaWRlIG9mIHRoZSBCTVApIHRvIGF2b2lkIHNvdXJjZSBhbmNob3Igb2Zmc2V0IGVycm9ycyAoZHVlIHRvIHBlcmZvcm1hbmNlIGlzc3VlcywgdGhpcyBpcyBkaXNhYmxlZCBieSBkZWZhdWx0KScpXHJcbiAgICAuZGVtYW5kT3B0aW9uKCdpbnB1dCcpXHJcbiAgICAuZGVtYW5kT3B0aW9uKCdvdXRwdXQnKVxyXG4gICAgLnBhcnNlU3luYygpO1xyXG5cclxuaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSAnLi9hbmFseXplJztcclxubG9nZ2VyLnNldHRpbmdzLm1pbkxldmVsID0gTnVtYmVyKGFyZ3YubG9nbGV2ZWwpIGFzIG51bWJlcjtcclxuY29uZmlnLmV4cGVjdEdyYXBoZW1lcyA9IGFyZ3YuZ3JhcGhlbWVzIGFzIGJvb2xlYW47XHJcblxyXG5jb25zdCBpbXBvcnRlciA9IG5ldyBJbXBvcnRlcigpO1xyXG5sZXQgZmFtaXhSZXA6IEZhbWl4UmVwb3NpdG9yeTtcclxuXHJcbmlmICgoYXJndi5pbnB1dCBhcyBzdHJpbmcpLmVuZHNXaXRoKCd0c2NvbmZpZy5qc29uJykpIHtcclxuICAgIGNvbnN0IHRzQ29uZmlnRmlsZVBhdGggPSBhcmd2LmlucHV0IGFzIHN0cmluZztcclxuICAgIC8vIGdldCB0aGUgYmFzZVVybCBmcm9tIHRoZSB0c2NvbmZpZyBmaWxlXHJcbiAgICBjb25zdCBiYXNlVXJsID0gdHNDb25maWdGaWxlUGF0aC5zdWJzdHJpbmcoMCwgdHNDb25maWdGaWxlUGF0aC5sYXN0SW5kZXhPZignLycpKTtcclxuICAgIGxvZ2dlci5pbmZvKGBiYXNlVXJsOiAke2Jhc2VVcmx9YCk7XHJcbiAgICBjb25zdCBwcm9qZWN0ID0gbmV3IFByb2plY3Qoe1xyXG4gICAgICAgIHRzQ29uZmlnRmlsZVBhdGgsXHJcbiAgICAgICAgY29tcGlsZXJPcHRpb25zOiB7XHJcbiAgICAgICAgICAgIGJhc2VVcmw6IGJhc2VVcmwsXHJcbiAgICAgICAgfVxyXG4gICAgICB9KTsgXHJcbiAgICBmYW1peFJlcCA9IGltcG9ydGVyLmZhbWl4UmVwRnJvbVByb2plY3QocHJvamVjdCk7XHJcblxyXG59IGVsc2Uge1xyXG4gICAgY29uc3QgcGF0aHMgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xyXG4gICAgcGF0aHMucHVzaChhcmd2LmlucHV0IGFzIHN0cmluZyk7XHJcbiAgICBmYW1peFJlcCA9IGltcG9ydGVyLmZhbWl4UmVwRnJvbVBhdGhzKHBhdGhzKTtcclxufVxyXG5cclxuY29uc3QganNvbk91dHB1dCA9IGZhbWl4UmVwLmV4cG9ydCh7Zm9ybWF0OiBcImpzb25cIn0pO1xyXG5jb25zdCBqc29uRmlsZVBhdGggPSBhcmd2Lm91dHB1dCBhcyBzdHJpbmc7XHJcblxyXG5mcy53cml0ZUZpbGUoanNvbkZpbGVQYXRoLCBqc29uT3V0cHV0LCAoZXJyKSA9PiB7XHJcbiAgICBpZiAoZXJyKSB7IHRocm93IGVycjsgfVxyXG59KTtcclxuXHJcbmxvZ2dlci5pbmZvKGBDcmVhdGVkOiAke2pzb25GaWxlUGF0aH1gKTsgXHJcbiJdfQ==
|
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
37
|
};
|
|
@@ -51,4 +61,4 @@ fs.writeFile(jsonFilePath, jsonOutput, (err) => {
|
|
|
51
61
|
}
|
|
52
62
|
});
|
|
53
63
|
console.info(`Created: ${jsonFilePath}`);
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHMyZmFtaXgtdHNjb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHMyZmFtaXgtdHNjb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBeUI7QUFDekIsa0RBQTBCO0FBQzFCLHVDQUFxQztBQUNyQyx1Q0FBbUM7QUFFbkMsTUFBTSxRQUFRLEdBQUcsSUFBSSxrQkFBUSxFQUFFLENBQUM7QUFFaEMsTUFBTSxJQUFJLEdBQUcsZUFBSztLQUNmLE9BQU8sQ0FBQyxxR0FBcUcsRUFBRSxxREFBcUQsQ0FBQztLQUNySyxLQUFLLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQztLQUNuQixLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztLQUNiLEtBQUssQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDO0tBQ3BCLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0tBQ2IsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztBQUU1RCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFlLENBQUM7QUFFOUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxrQkFBTyxDQUFDO0lBQzFCLGdCQUFnQjtDQUNqQixDQUFDLENBQUM7QUFFSCxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDdkQsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO0FBQ3RDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFnQixDQUFDO0FBRTNDLEVBQUUsQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO0lBQzdDLElBQUksR0FBRyxFQUFFLENBQUM7UUFBQyxNQUFNLEdBQUcsQ0FBQztJQUFDLENBQUM7QUFDekIsQ0FBQyxDQUFDLENBQUM7QUFFSCxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksWUFBWSxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xyXG5pbXBvcnQgeWFyZ3MgZnJvbSBcInlhcmdzXCI7XHJcbmltcG9ydCB7IEltcG9ydGVyIH0gZnJvbSBcIi4vYW5hbHl6ZVwiO1xyXG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcInRzLW1vcnBoXCI7XHJcblxyXG5jb25zdCBpbXBvcnRlciA9IG5ldyBJbXBvcnRlcigpO1xyXG5cclxuY29uc3QgYXJndiA9IHlhcmdzXHJcbiAgLmV4YW1wbGUoYHRzLW5vZGUgc3JjL3RzMmZhbWl4LXRzY29uZmlnLnRzIC1pIC4uL3BhdGgvdG8vcHJvamVjdC90c2NvbmZpZy5qc29uIC1vIEpTT05Nb2RlbHMvcHJvamVjdE5hbWUuanNvbmAsICdjcmVhdGVzIGEgSlNPTi1mb3JtYXQgbW9kZWwgb2YgYSB0eXBlc2NyaXB0IHByb2plY3QnKVxyXG4gIC5hbGlhcygnaScsICdpbnB1dCcpXHJcbiAgLm5hcmdzKCdpJywgMSlcclxuICAuYWxpYXMoJ28nLCAnb3V0cHV0JylcclxuICAubmFyZ3MoJ28nLCAxKVxyXG4gIC5kZW1hbmRPcHRpb24oJ2lucHV0JykuZGVtYW5kT3B0aW9uKCdvdXRwdXQnKS5wYXJzZVN5bmMoKTtcclxuXHJcbmNvbnN0IHRzQ29uZmlnRmlsZVBhdGggPSBhcmd2LmlucHV0IGFzIHN0cmluZztcclxuXHJcbmNvbnN0IHByb2plY3QgPSBuZXcgUHJvamVjdCh7XHJcbiAgdHNDb25maWdGaWxlUGF0aFxyXG59KTsgIFxyXG5cclxuY29uc3QgZmFtaXhSZXAgPSBpbXBvcnRlci5mYW1peFJlcEZyb21Qcm9qZWN0KHByb2plY3QpO1xyXG5jb25zdCBqc29uT3V0cHV0ID0gZmFtaXhSZXAuZ2V0SlNPTigpO1xyXG5jb25zdCBqc29uRmlsZVBhdGggPSBhcmd2Lm91dHB1dCBhcyBzdHJpbmc7XHJcblxyXG5mcy53cml0ZUZpbGUoanNvbkZpbGVQYXRoLCBqc29uT3V0cHV0LCAoZXJyKSA9PiB7XHJcbiAgaWYgKGVycikgeyB0aHJvdyBlcnI7IH1cclxufSk7XHJcblxyXG5jb25zb2xlLmluZm8oYENyZWF0ZWQ6ICR7anNvbkZpbGVQYXRofWApOyBcclxuIl19
|