Comparing version 11.10.0 to 11.10.1
@@ -0,1 +1,16 @@ | ||
# [11.10.0](https://github.com/ike18t/ng-mocks/compare/v11.9.1...v11.10.0) (2021-04-04) | ||
### Bug Fixes | ||
* **#316:** better support for typeIn and ngModel ([7d03c2d](https://github.com/ike18t/ng-mocks/commit/7d03c2dbe770bab188370fb96d0b4b6b5e18cbe5)), closes [#316](https://github.com/ike18t/ng-mocks/issues/316) | ||
* **#320:** full implementation of ngMocks.touch and ngMocks.change ([fd81409](https://github.com/ike18t/ng-mocks/commit/fd81409591d67c931f5686fd23210829179b8e75)), closes [#320](https://github.com/ike18t/ng-mocks/issues/320) | ||
* **#324:** smarter touches and changes ([fa418d0](https://github.com/ike18t/ng-mocks/commit/fa418d0440876a9eab55564e75e3807b9a60687c)), closes [#324](https://github.com/ike18t/ng-mocks/issues/324) | ||
### Features | ||
* **#314:** ngMocks.formatText ([fa3cea7](https://github.com/ike18t/ng-mocks/commit/fa3cea73f5709fbc03ae2a8999281876289ccd43)), closes [#314](https://github.com/ike18t/ng-mocks/issues/314) | ||
* **#315:** ngMocks.trigger and ngMocks.click ([2ae6e5a](https://github.com/ike18t/ng-mocks/commit/2ae6e5ab0de6f1e3505cf26ac5752a63a458e059)), closes [#315](https://github.com/ike18t/ng-mocks/issues/315) | ||
## [11.9.1](https://github.com/ike18t/ng-mocks/compare/v11.9.0...v11.9.1) (2021-03-14) | ||
@@ -2,0 +17,0 @@ |
@@ -21,2 +21,3 @@ "use strict"; | ||
var get_root_providers_data_1 = require("./get-root-providers-data"); | ||
var handle_provided_in_dependency_1 = require("./handle-provided-in-dependency"); | ||
var skip_root_provider_dependency_1 = require("./skip-root-provider-dependency"); | ||
@@ -38,2 +39,3 @@ exports.default = (function (mockDef) { | ||
var provide = extract_dep_1.default(decorators); | ||
handle_provided_in_dependency_1.default(provide); | ||
if (skip_root_provider_dependency_1.default(provide)) { | ||
@@ -78,2 +80,2 @@ continue; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXJvb3QtcHJvdmlkZXItcGFyYW1ldGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLWJ1aWxkZXIvcHJvbWlzZS9nZXQtcm9vdC1wcm92aWRlci1wYXJhbWV0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQSxrRUFBMkQ7QUFDM0Qsd0RBQW1FO0FBQ25FLG9FQUE2RDtBQUU3RCw2RkFBbUY7QUFDbkYsbUZBQTJFO0FBQzNFLDZDQUF1QztBQUN2QyxxRUFBNkQ7QUFDN0QsaUZBQXlFO0FBR3pFLG1CQUFlLFVBQUMsT0FBK0I7O0lBQzdDLElBQU0sVUFBVSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7SUFDdkIsSUFBQSxLQUF1QixpQ0FBb0IsRUFBRSxFQUEzQyxPQUFPLGFBQUEsRUFBRSxPQUFPLGFBQTJCLENBQUM7O1FBRXBELEtBQXFCLElBQUEsWUFBQSxTQUFBLE9BQU8sQ0FBQSxnQ0FBQSxxREFBRTtZQUF6QixJQUFNLE1BQU0sb0JBQUE7O2dCQUNmLEtBQWtCLElBQUEsMEJBQUEsU0FBQSxNQUFNLENBQUEsQ0FBQSw4QkFBQSxrREFBRTtvQkFBckIsSUFBTSxHQUFHLG1CQUFBO29CQUNaLDZDQUE4QixDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7O3dCQUV6RCxLQUF5QixJQUFBLG9CQUFBLFNBQUEsMEJBQWMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQSxDQUFBLGdCQUFBLDRCQUFFOzRCQUF0RCxJQUFNLFVBQVUsV0FBQTs0QkFDbkIsSUFBTSxPQUFPLEdBQVEscUJBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQzs0QkFDNUMsSUFBSSx1Q0FBMEIsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQ0FDdkMsU0FBUzs2QkFDVjs0QkFDRCx3Q0FBMkIsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDOzRCQUN0RCxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMscUNBQXVCLENBQUMsSUFBSSxDQUFDLDJCQUFlLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQ0FDbkcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQzs2QkFDekI7aUNBQU07Z0NBQ0wsMkJBQWUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDOzZCQUM1RDt5QkFDRjs7Ozs7Ozs7O2lCQUNGOzs7Ozs7Ozs7U0FDRjs7Ozs7Ozs7O0lBRUQsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQyxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvcmVSZWZsZWN0Sml0IGZyb20gJy4uLy4uL2NvbW1vbi9jb3JlLnJlZmxlY3Quaml0JztcbmltcG9ydCB7IE5HX01PQ0tTX1JPT1RfUFJPVklERVJTIH0gZnJvbSAnLi4vLi4vY29tbW9uL2NvcmUudG9rZW5zJztcbmltcG9ydCBuZ01vY2tzVW5pdmVyc2UgZnJvbSAnLi4vLi4vY29tbW9uL25nLW1vY2tzLXVuaXZlcnNlJztcblxuaW1wb3J0IGFkZERlZlRvUm9vdFByb3ZpZGVyUGFyYW1ldGVycyBmcm9tICcuL2FkZC1kZWYtdG8tcm9vdC1wcm92aWRlci1wYXJhbWV0ZXJzJztcbmltcG9ydCBjaGVja1Jvb3RQcm92aWRlckRlcGVuZGVuY3kgZnJvbSAnLi9jaGVjay1yb290LXByb3ZpZGVyLWRlcGVuZGVuY3knO1xuaW1wb3J0IGV4dHJhY3REZXAgZnJvbSAnLi9leHRyYWN0LWRlcCc7XG5pbXBvcnQgZ2V0Um9vdFByb3ZpZGVyc0RhdGEgZnJvbSAnLi9nZXQtcm9vdC1wcm92aWRlcnMtZGF0YSc7XG5pbXBvcnQgc2tpcFJvb3RQcm92aWRlckRlcGVuZGVuY3kgZnJvbSAnLi9za2lwLXJvb3QtcHJvdmlkZXItZGVwZW5kZW5jeSc7XG5pbXBvcnQgeyBCdWlsZGVyRGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCAobW9ja0RlZjogQnVpbGRlckRhdGFbJ21vY2tEZWYnXSk6IFNldDxhbnk+ID0+IHtcbiAgY29uc3QgcGFyYW1ldGVycyA9IG5ldyBTZXQoKTtcbiAgY29uc3QgeyBidWNrZXRzLCB0b3VjaGVkIH0gPSBnZXRSb290UHJvdmlkZXJzRGF0YSgpO1xuXG4gIGZvciAoY29uc3QgYnVja2V0IG9mIGJ1Y2tldHMpIHtcbiAgICBmb3IgKGNvbnN0IGRlZiBvZiBidWNrZXQpIHtcbiAgICAgIGFkZERlZlRvUm9vdFByb3ZpZGVyUGFyYW1ldGVycyhwYXJhbWV0ZXJzLCBtb2NrRGVmLCBkZWYpO1xuXG4gICAgICBmb3IgKGNvbnN0IGRlY29yYXRvcnMgb2YgY29yZVJlZmxlY3RKaXQoKS5wYXJhbWV0ZXJzKGRlZikpIHtcbiAgICAgICAgY29uc3QgcHJvdmlkZTogYW55ID0gZXh0cmFjdERlcChkZWNvcmF0b3JzKTtcbiAgICAgICAgaWYgKHNraXBSb290UHJvdmlkZXJEZXBlbmRlbmN5KHByb3ZpZGUpKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgY2hlY2tSb290UHJvdmlkZXJEZXBlbmRlbmN5KHByb3ZpZGUsIHRvdWNoZWQsIGJ1Y2tldCk7XG4gICAgICAgIGlmIChtb2NrRGVmLmhhcyhOR19NT0NLU19ST09UX1BST1ZJREVSUykgfHwgIW5nTW9ja3NVbml2ZXJzZS5jb25maWcuZ2V0KCduZ01vY2tzRGVwc1NraXAnKS5oYXMoZGVmKSkge1xuICAgICAgICAgIHBhcmFtZXRlcnMuYWRkKHByb3ZpZGUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5nTW9ja3NVbml2ZXJzZS5jb25maWcuZ2V0KCduZ01vY2tzRGVwc1NraXAnKS5hZGQocHJvdmlkZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gcGFyYW1ldGVycztcbn07XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXJvb3QtcHJvdmlkZXItcGFyYW1ldGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLWJ1aWxkZXIvcHJvbWlzZS9nZXQtcm9vdC1wcm92aWRlci1wYXJhbWV0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQSxrRUFBMkQ7QUFDM0Qsd0RBQW1FO0FBQ25FLG9FQUE2RDtBQUU3RCw2RkFBbUY7QUFDbkYsbUZBQTJFO0FBQzNFLDZDQUF1QztBQUN2QyxxRUFBNkQ7QUFDN0QsaUZBQXlFO0FBQ3pFLGlGQUF5RTtBQUd6RSxtQkFBZSxVQUFDLE9BQStCOztJQUM3QyxJQUFNLFVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLElBQUEsS0FBdUIsaUNBQW9CLEVBQUUsRUFBM0MsT0FBTyxhQUFBLEVBQUUsT0FBTyxhQUEyQixDQUFDOztRQUVwRCxLQUFxQixJQUFBLFlBQUEsU0FBQSxPQUFPLENBQUEsZ0NBQUEscURBQUU7WUFBekIsSUFBTSxNQUFNLG9CQUFBOztnQkFDZixLQUFrQixJQUFBLDBCQUFBLFNBQUEsTUFBTSxDQUFBLENBQUEsOEJBQUEsa0RBQUU7b0JBQXJCLElBQU0sR0FBRyxtQkFBQTtvQkFDWiw2Q0FBOEIsQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDOzt3QkFFekQsS0FBeUIsSUFBQSxvQkFBQSxTQUFBLDBCQUFjLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUEsQ0FBQSxnQkFBQSw0QkFBRTs0QkFBdEQsSUFBTSxVQUFVLFdBQUE7NEJBQ25CLElBQU0sT0FBTyxHQUFRLHFCQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7NEJBQzVDLHVDQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDOzRCQUNwQyxJQUFJLHVDQUEwQixDQUFDLE9BQU8sQ0FBQyxFQUFFO2dDQUN2QyxTQUFTOzZCQUNWOzRCQUNELHdDQUEyQixDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7NEJBQ3RELElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQ0FBdUIsQ0FBQyxJQUFJLENBQUMsMkJBQWUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dDQUNuRyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDOzZCQUN6QjtpQ0FBTTtnQ0FDTCwyQkFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7NkJBQzVEO3lCQUNGOzs7Ozs7Ozs7aUJBQ0Y7Ozs7Ozs7OztTQUNGOzs7Ozs7Ozs7SUFFRCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY29yZVJlZmxlY3RKaXQgZnJvbSAnLi4vLi4vY29tbW9uL2NvcmUucmVmbGVjdC5qaXQnO1xuaW1wb3J0IHsgTkdfTU9DS1NfUk9PVF9QUk9WSURFUlMgfSBmcm9tICcuLi8uLi9jb21tb24vY29yZS50b2tlbnMnO1xuaW1wb3J0IG5nTW9ja3NVbml2ZXJzZSBmcm9tICcuLi8uLi9jb21tb24vbmctbW9ja3MtdW5pdmVyc2UnO1xuXG5pbXBvcnQgYWRkRGVmVG9Sb290UHJvdmlkZXJQYXJhbWV0ZXJzIGZyb20gJy4vYWRkLWRlZi10by1yb290LXByb3ZpZGVyLXBhcmFtZXRlcnMnO1xuaW1wb3J0IGNoZWNrUm9vdFByb3ZpZGVyRGVwZW5kZW5jeSBmcm9tICcuL2NoZWNrLXJvb3QtcHJvdmlkZXItZGVwZW5kZW5jeSc7XG5pbXBvcnQgZXh0cmFjdERlcCBmcm9tICcuL2V4dHJhY3QtZGVwJztcbmltcG9ydCBnZXRSb290UHJvdmlkZXJzRGF0YSBmcm9tICcuL2dldC1yb290LXByb3ZpZGVycy1kYXRhJztcbmltcG9ydCBoYW5kbGVQcm92aWRlZEluRGVwZW5kZW5jeSBmcm9tICcuL2hhbmRsZS1wcm92aWRlZC1pbi1kZXBlbmRlbmN5JztcbmltcG9ydCBza2lwUm9vdFByb3ZpZGVyRGVwZW5kZW5jeSBmcm9tICcuL3NraXAtcm9vdC1wcm92aWRlci1kZXBlbmRlbmN5JztcbmltcG9ydCB7IEJ1aWxkZXJEYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBkZWZhdWx0IChtb2NrRGVmOiBCdWlsZGVyRGF0YVsnbW9ja0RlZiddKTogU2V0PGFueT4gPT4ge1xuICBjb25zdCBwYXJhbWV0ZXJzID0gbmV3IFNldCgpO1xuICBjb25zdCB7IGJ1Y2tldHMsIHRvdWNoZWQgfSA9IGdldFJvb3RQcm92aWRlcnNEYXRhKCk7XG5cbiAgZm9yIChjb25zdCBidWNrZXQgb2YgYnVja2V0cykge1xuICAgIGZvciAoY29uc3QgZGVmIG9mIGJ1Y2tldCkge1xuICAgICAgYWRkRGVmVG9Sb290UHJvdmlkZXJQYXJhbWV0ZXJzKHBhcmFtZXRlcnMsIG1vY2tEZWYsIGRlZik7XG5cbiAgICAgIGZvciAoY29uc3QgZGVjb3JhdG9ycyBvZiBjb3JlUmVmbGVjdEppdCgpLnBhcmFtZXRlcnMoZGVmKSkge1xuICAgICAgICBjb25zdCBwcm92aWRlOiBhbnkgPSBleHRyYWN0RGVwKGRlY29yYXRvcnMpO1xuICAgICAgICBoYW5kbGVQcm92aWRlZEluRGVwZW5kZW5jeShwcm92aWRlKTtcbiAgICAgICAgaWYgKHNraXBSb290UHJvdmlkZXJEZXBlbmRlbmN5KHByb3ZpZGUpKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgY2hlY2tSb290UHJvdmlkZXJEZXBlbmRlbmN5KHByb3ZpZGUsIHRvdWNoZWQsIGJ1Y2tldCk7XG4gICAgICAgIGlmIChtb2NrRGVmLmhhcyhOR19NT0NLU19ST09UX1BST1ZJREVSUykgfHwgIW5nTW9ja3NVbml2ZXJzZS5jb25maWcuZ2V0KCduZ01vY2tzRGVwc1NraXAnKS5oYXMoZGVmKSkge1xuICAgICAgICAgIHBhcmFtZXRlcnMuYWRkKHByb3ZpZGUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5nTW9ja3NVbml2ZXJzZS5jb25maWcuZ2V0KCduZ01vY2tzRGVwc1NraXAnKS5hZGQocHJvdmlkZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gcGFyYW1ldGVycztcbn07XG4iXX0= |
@@ -5,2 +5,3 @@ "use strict"; | ||
var core_config_1 = require("../../common/core.config"); | ||
var core_reflect_provided_in_1 = require("../../common/core.reflect.provided-in"); | ||
var func_is_ng_injection_token_1 = require("../../common/func.is-ng-injection-token"); | ||
@@ -22,3 +23,2 @@ var ng_mocks_universe_1 = require("../../common/ng-mocks-universe"); | ||
exports.default = (function (provide) { | ||
var _a, _b; | ||
if (skipSystem(provide)) { | ||
@@ -28,5 +28,4 @@ return true; | ||
// Empty providedIn or things for a platform have to be skipped. | ||
var skip = !((_a = provide.ɵprov) === null || _a === void 0 ? void 0 : _a.providedIn) || provide.ɵprov.providedIn === 'platform'; | ||
// istanbul ignore next: A6 | ||
skip = skip && (!((_b = provide.ngInjectableDef) === null || _b === void 0 ? void 0 : _b.providedIn) || provide.ngInjectableDef.providedIn === 'platform'); | ||
var providedIn = core_reflect_provided_in_1.default(provide); | ||
var skip = !providedIn || providedIn === 'platform'; | ||
if (typeof provide === 'function' && skip) { | ||
@@ -37,2 +36,2 @@ return true; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1kZXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1idWlsZGVyL3Byb21pc2Uvc2tpcC1kZXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwwQ0FBMkM7QUFFM0Msd0RBQWtEO0FBQ2xELHNGQUE2RTtBQUM3RSxvRUFBNkQ7QUFFN0QsSUFBTSxVQUFVLEdBQUcsVUFBQyxPQUFZO0lBQzlCLElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxLQUFLLGlCQUFRLElBQUksMkJBQWUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQzVFLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFDRCxJQUFJLE9BQU8sT0FBTyxLQUFLLFVBQVUsSUFBSSxxQkFBVSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDdEcsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELElBQUksK0NBQWtCLENBQUMsT0FBTyxDQUFDLElBQUkscUJBQVUsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQy9GLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLHFEQUFxRDtBQUNyRCxtQkFBZSxVQUFDLE9BQVk7O0lBQzFCLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxnRUFBZ0U7SUFDaEUsSUFBSSxJQUFJLEdBQUcsUUFBQyxPQUFPLENBQUMsS0FBSywwQ0FBRSxVQUFVLENBQUEsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLFVBQVUsS0FBSyxVQUFVLENBQUM7SUFDakYsMkJBQTJCO0lBQzNCLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFDLE9BQU8sQ0FBQyxlQUFlLDBDQUFFLFVBQVUsQ0FBQSxJQUFJLE9BQU8sQ0FBQyxlQUFlLENBQUMsVUFBVSxLQUFLLFVBQVUsQ0FBQyxDQUFDO0lBQzNHLElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxJQUFJLElBQUksRUFBRTtRQUN6QyxPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCBjb3JlQ29uZmlnIGZyb20gJy4uLy4uL2NvbW1vbi9jb3JlLmNvbmZpZyc7XG5pbXBvcnQgeyBpc05nSW5qZWN0aW9uVG9rZW4gfSBmcm9tICcuLi8uLi9jb21tb24vZnVuYy5pcy1uZy1pbmplY3Rpb24tdG9rZW4nO1xuaW1wb3J0IG5nTW9ja3NVbml2ZXJzZSBmcm9tICcuLi8uLi9jb21tb24vbmctbW9ja3MtdW5pdmVyc2UnO1xuXG5jb25zdCBza2lwU3lzdGVtID0gKHByb3ZpZGU6IGFueSk6IGJvb2xlYW4gPT4ge1xuICBpZiAoIXByb3ZpZGUgfHwgcHJvdmlkZSA9PT0gRE9DVU1FTlQgfHwgbmdNb2Nrc1VuaXZlcnNlLnRvdWNoZXMuaGFzKHByb3ZpZGUpKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgaWYgKHR5cGVvZiBwcm92aWRlID09PSAnZnVuY3Rpb24nICYmIGNvcmVDb25maWcubmV2ZXJNb2NrUHJvdmlkZWRGdW5jdGlvbi5pbmRleE9mKHByb3ZpZGUubmFtZSkgIT09IC0xKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgaWYgKGlzTmdJbmplY3Rpb25Ub2tlbihwcm92aWRlKSAmJiBjb3JlQ29uZmlnLm5ldmVyTW9ja1Rva2VuLmluZGV4T2YocHJvdmlkZS50b1N0cmluZygpKSAhPT0gLTEpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn07XG5cbi8vIENoZWNrcyBpZiB3ZSBzaG91bGQgYXZvaWQgbW9ja2luZyBvZiB0aGUgcHJvdmlkZXIuXG5leHBvcnQgZGVmYXVsdCAocHJvdmlkZTogYW55KTogYm9vbGVhbiA9PiB7XG4gIGlmIChza2lwU3lzdGVtKHByb3ZpZGUpKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBFbXB0eSBwcm92aWRlZEluIG9yIHRoaW5ncyBmb3IgYSBwbGF0Zm9ybSBoYXZlIHRvIGJlIHNraXBwZWQuXG4gIGxldCBza2lwID0gIXByb3ZpZGUuybVwcm92Py5wcm92aWRlZEluIHx8IHByb3ZpZGUuybVwcm92LnByb3ZpZGVkSW4gPT09ICdwbGF0Zm9ybSc7XG4gIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBBNlxuICBza2lwID0gc2tpcCAmJiAoIXByb3ZpZGUubmdJbmplY3RhYmxlRGVmPy5wcm92aWRlZEluIHx8IHByb3ZpZGUubmdJbmplY3RhYmxlRGVmLnByb3ZpZGVkSW4gPT09ICdwbGF0Zm9ybScpO1xuICBpZiAodHlwZW9mIHByb3ZpZGUgPT09ICdmdW5jdGlvbicgJiYgc2tpcCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufTtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1kZXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1idWlsZGVyL3Byb21pc2Uvc2tpcC1kZXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwwQ0FBMkM7QUFFM0Msd0RBQWtEO0FBQ2xELGtGQUEwRTtBQUMxRSxzRkFBNkU7QUFDN0Usb0VBQTZEO0FBRTdELElBQU0sVUFBVSxHQUFHLFVBQUMsT0FBWTtJQUM5QixJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sS0FBSyxpQkFBUSxJQUFJLDJCQUFlLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUM1RSxPQUFPLElBQUksQ0FBQztLQUNiO0lBQ0QsSUFBSSxPQUFPLE9BQU8sS0FBSyxVQUFVLElBQUkscUJBQVUsQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQ3RHLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFDRCxJQUFJLCtDQUFrQixDQUFDLE9BQU8sQ0FBQyxJQUFJLHFCQUFVLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUMvRixPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUM7QUFFRixxREFBcUQ7QUFDckQsbUJBQWUsVUFBQyxPQUFZO0lBQzFCLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxnRUFBZ0U7SUFDaEUsSUFBTSxVQUFVLEdBQUcsa0NBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEQsSUFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLElBQUksVUFBVSxLQUFLLFVBQVUsQ0FBQztJQUN0RCxJQUFJLE9BQU8sT0FBTyxLQUFLLFVBQVUsSUFBSSxJQUFJLEVBQUU7UUFDekMsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgY29yZUNvbmZpZyBmcm9tICcuLi8uLi9jb21tb24vY29yZS5jb25maWcnO1xuaW1wb3J0IGNvcmVSZWZsZWN0UHJvdmlkZWRJbiBmcm9tICcuLi8uLi9jb21tb24vY29yZS5yZWZsZWN0LnByb3ZpZGVkLWluJztcbmltcG9ydCB7IGlzTmdJbmplY3Rpb25Ub2tlbiB9IGZyb20gJy4uLy4uL2NvbW1vbi9mdW5jLmlzLW5nLWluamVjdGlvbi10b2tlbic7XG5pbXBvcnQgbmdNb2Nrc1VuaXZlcnNlIGZyb20gJy4uLy4uL2NvbW1vbi9uZy1tb2Nrcy11bml2ZXJzZSc7XG5cbmNvbnN0IHNraXBTeXN0ZW0gPSAocHJvdmlkZTogYW55KTogYm9vbGVhbiA9PiB7XG4gIGlmICghcHJvdmlkZSB8fCBwcm92aWRlID09PSBET0NVTUVOVCB8fCBuZ01vY2tzVW5pdmVyc2UudG91Y2hlcy5oYXMocHJvdmlkZSkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBpZiAodHlwZW9mIHByb3ZpZGUgPT09ICdmdW5jdGlvbicgJiYgY29yZUNvbmZpZy5uZXZlck1vY2tQcm92aWRlZEZ1bmN0aW9uLmluZGV4T2YocHJvdmlkZS5uYW1lKSAhPT0gLTEpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBpZiAoaXNOZ0luamVjdGlvblRva2VuKHByb3ZpZGUpICYmIGNvcmVDb25maWcubmV2ZXJNb2NrVG9rZW4uaW5kZXhPZihwcm92aWRlLnRvU3RyaW5nKCkpICE9PSAtMSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufTtcblxuLy8gQ2hlY2tzIGlmIHdlIHNob3VsZCBhdm9pZCBtb2NraW5nIG9mIHRoZSBwcm92aWRlci5cbmV4cG9ydCBkZWZhdWx0IChwcm92aWRlOiBhbnkpOiBib29sZWFuID0+IHtcbiAgaWYgKHNraXBTeXN0ZW0ocHJvdmlkZSkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIEVtcHR5IHByb3ZpZGVkSW4gb3IgdGhpbmdzIGZvciBhIHBsYXRmb3JtIGhhdmUgdG8gYmUgc2tpcHBlZC5cbiAgY29uc3QgcHJvdmlkZWRJbiA9IGNvcmVSZWZsZWN0UHJvdmlkZWRJbihwcm92aWRlKTtcbiAgY29uc3Qgc2tpcCA9ICFwcm92aWRlZEluIHx8IHByb3ZpZGVkSW4gPT09ICdwbGF0Zm9ybSc7XG4gIGlmICh0eXBlb2YgcHJvdmlkZSA9PT0gJ2Z1bmN0aW9uJyAmJiBza2lwKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59O1xuIl19 |
@@ -62,2 +62,3 @@ "use strict"; | ||
var func_get_mocked_ng_def_of_1 = require("../common/func.get-mocked-ng-def-of"); | ||
var func_import_exists_1 = require("../common/func.import-exists"); | ||
var func_is_mock_1 = require("../common/func.is-mock"); | ||
@@ -289,2 +290,3 @@ var mock_control_value_accessor_1 = require("../common/mock-control-value-accessor"); | ||
function MockComponent(component) { | ||
func_import_exists_1.default(component, 'MockComponent'); | ||
// We are inside of an 'it'. It is fine to to return a mock copy. | ||
@@ -311,2 +313,2 @@ if (testing_1.getTestBed()._instantiated) { | ||
exports.MockComponent = MockComponent; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1jb21wb25lbnQvbW9jay1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBV3VCO0FBQ3ZCLGlEQUFtRDtBQUVuRCx1RUFBZ0U7QUFDaEUsaURBQTJDO0FBQzNDLHVEQUFxRDtBQUNyRCwyRkFBbUY7QUFFbkYsaUZBQXVFO0FBQ3ZFLHVEQUFnRDtBQUVoRCxxRkFBbUY7QUFDbkYsaUVBQTBEO0FBQzFELHFFQUErRDtBQUUvRCxnRUFBMEQ7QUFDMUQsNENBQXNDO0FBR3RDLElBQU0sbUJBQW1CLEdBQUcsVUFDMUIsUUFBNkMsRUFDN0MsSUFBWSxFQUNaLFFBQWdCLEVBQ2hCLEdBQXNCO0lBRXRCLElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQWlCLElBQUksU0FBSSxRQUFVLENBQUMsRUFBRTtRQUNsRCxRQUFRLENBQUMsbUJBQWlCLElBQUksU0FBSSxRQUFVLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDckQsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0tBQ3JCO0lBRUQsT0FBTyxRQUFRLENBQUMsZ0JBQWMsSUFBSSxTQUFJLFFBQVUsQ0FBQyxDQUFDO0FBQ3BELENBQUMsQ0FBQztBQUVGLElBQU0scUJBQXFCLEdBQUcsVUFDNUIsYUFBK0IsRUFDL0IsS0FBa0MsRUFDbEMsS0FBYTs7O1FBRWIsS0FBbUIsSUFBQSxLQUFBLFNBQUEsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUEsZ0JBQUEsNEJBQUU7WUFBdkMsSUFBTSxJQUFJLFdBQUE7WUFDYixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDaEI7Ozs7Ozs7OztJQUVELElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQzs7UUFDbEIsS0FBbUIsSUFBQSxVQUFBLFNBQUEsS0FBSyxDQUFBLDRCQUFBLCtDQUFFO1lBQXJCLElBQU0sSUFBSSxrQkFBQTtZQUNiLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ1QsU0FBUzthQUNWO1lBQ0QsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDcEMsU0FBUyxJQUFJLENBQUMsQ0FBQztTQUNoQjs7Ozs7Ozs7O0FBQ0gsQ0FBQyxDQUFDO0FBRUYsSUFBTSxxQkFBcUIsR0FBRyxVQUFDLElBQTBCLEVBQUUsT0FBeUI7OztRQUNsRixLQUF5QixJQUFBLEtBQUEsU0FBQSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQSxnQkFBQSw0QkFBRTtZQUEvQyxJQUFNLFVBQVUsV0FBQTtZQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLFNBQVMsQ0FBQztTQUN0Qzs7Ozs7Ozs7OztRQUNELEtBQXlCLElBQUEsS0FBQSxTQUFBLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUEsZ0JBQUEsNEJBQUU7WUFBMUMsSUFBTSxVQUFVLFdBQUE7WUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBSSxPQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDekQ7Ozs7Ozs7OztJQUNELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztBQUN0QixDQUFDLENBQUM7QUFFRixJQUFNLG9CQUFvQixHQUFHLFVBQzNCLEdBQXFCLEVBQ3JCLEdBQXNCLEVBQ3RCLFNBQWdCLEVBQ2hCLEtBQWtDLEVBQ2xDLE9BQTZCLEVBQzdCLE9BQXlCOztJQUV6QixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQzs7UUFFZixLQUEwQixJQUFBLGNBQUEsU0FBQSxTQUFTLENBQUEsb0NBQUEsMkRBQUU7WUFBaEMsSUFBTSxXQUFXLHNCQUFBO1lBQ3BCLEtBQUssSUFBSSxDQUFDLENBQUM7WUFDWCxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLFNBQVMsQ0FBQztZQUN6QyxJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDOUQsU0FBUzthQUNWO1lBQ0QsSUFBSSxDQUFDLENBQUMsV0FBVyxZQUFZLGtCQUFXLENBQUMsRUFBRTtnQkFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO2FBQzVDO1lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDakIsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDeEQ7WUFDRCxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDOUM7Ozs7Ozs7OztJQUNELEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUVwQixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLElBQU0sU0FBUyxHQUFHLFVBQUMsUUFBNkMsRUFBRSxHQUFzQjtJQUN0Rix3RUFBd0U7SUFDeEUsOEJBQWtCLENBQ2hCLFFBQVEsRUFDUixVQUFVLEVBQ1YsVUFBQyxvQkFBb0QsRUFBRSxTQUFlLEVBQUUsU0FBa0M7UUFDbEcsSUFBQSxLQUFBLE9BQWlDLGlCQUFNLENBQUMsb0JBQW9CLENBQUMsSUFBQSxFQUE1RCxJQUFJLFFBQUEsRUFBRSxHQUFHLFFBQUEsRUFBRSxRQUFRLFFBQUEsRUFBRSxPQUFPLFFBQWdDLENBQUM7UUFFcEUsSUFBTSxHQUFHLEdBQUcsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNSLE9BQU87U0FDUjtRQUVELElBQU0sUUFBUSxHQUFRLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwQyxJQUFNLFNBQVMsR0FBRyxRQUFRLFlBQVksZ0JBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWxGLElBQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxtQkFBaUIsSUFBSSxTQUFJLFFBQVEsV0FBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hFLElBQU0sS0FBSyxHQUFHLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLHdCQUFPLFNBQVMsS0FBRSxTQUFTLFdBQUEsSUFBRyxDQUFDO1FBRXJHLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDekMsUUFBUSxDQUFDLG1CQUFpQixJQUFJLFNBQUksUUFBUSxXQUFRLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDNUQsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLENBQUMsQ0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsSUFBTSxjQUFjLEdBQUcsVUFDckIsUUFBNkMsRUFDN0MsSUFBWSxFQUNaLFFBQWdCLEVBQ2hCLE9BQTZCOztJQUU3QixJQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsbUJBQWlCLElBQUksU0FBSSxRQUFRLFdBQVEsQ0FBQyxDQUFDO0lBQ2xFLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDOztRQUNmLEtBQW1CLElBQUEsVUFBQSxTQUFBLEtBQUssQ0FBQSw0QkFBQSwrQ0FBRTtZQUFyQixJQUFNLElBQUksa0JBQUE7WUFDYixLQUFLLElBQUksQ0FBQyxDQUFDO1lBQ1gsSUFBSSxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ3ZELFNBQVM7YUFDVjtZQUNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNmLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxTQUFTLENBQUM7U0FDMUI7Ozs7Ozs7OztBQUNILENBQUMsQ0FBQztBQUVGLElBQU0sT0FBTyxHQUFHLFVBQUMsUUFBNkMsRUFBRSxjQUFpQztJQUMvRixvRUFBb0U7SUFDcEUsOEJBQWtCLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFDLG9CQUFvRDtRQUNwRixJQUFBLEtBQUEsT0FBOEIsaUJBQU0sQ0FBQyxvQkFBb0IsQ0FBQyxJQUFBLEVBQXpELElBQUksUUFBQSxFQUFJLFFBQVEsUUFBQSxFQUFFLE9BQU8sUUFBZ0MsQ0FBQztRQUVqRSxJQUFJLENBQUMsUUFBUSxDQUFDLG1CQUFpQixJQUFJLFNBQUksUUFBVSxDQUFDLEVBQUU7WUFDbEQsT0FBTztTQUNSO1FBQ0QsY0FBYyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWxELElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixRQUFRLENBQUMsbUJBQWlCLElBQUksU0FBSSxRQUFVLENBQUMsR0FBRyxLQUFLLENBQUM7U0FDdkQ7UUFDRCxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDakMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRjtJQUFnQyxxQ0FBMEI7SUFDeEQsdUJBQXVCO0lBQ3ZCLDJCQUNFLFFBQWtCLEVBQ2xCLFNBQWMsRUFBRSxZQUFZO0lBQzVCLGNBQWlDO1FBSG5DLFlBS0Usa0JBQU0sUUFBUSxFQUFFLFNBQVMsQ0FBQyxTQUszQjtRQUpDLElBQUksc0JBQVUsQ0FBQyxLQUFJLENBQUMsRUFBRTtZQUNwQixTQUFTLENBQUMsS0FBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sQ0FBQyxLQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7U0FDL0I7O0lBQ0gsQ0FBQztJQUVNLDhDQUFrQixHQUF6Qjs7UUFDRSxJQUFNLE1BQU0sR0FBSSxJQUFJLENBQUMsZUFBdUIsQ0FBQyxNQUFNLENBQUM7UUFDcEQsSUFBSSxDQUFFLElBQVksQ0FBQyxVQUFVLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUU7O2dCQUN4RCxLQUFvQixJQUFBLEtBQUEsU0FBQSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQSxnQkFBQSw0QkFBRTtvQkFBM0MsSUFBTSxLQUFLLFdBQUE7b0JBQ1IsSUFBQSxLQUNKLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSTt3QkFDM0IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO3dCQUN0QixDQUFDLENBQUM7NEJBQ0UsU0FBUyxFQUFFLFNBQVM7NEJBQ3BCLFNBQVMsRUFBRSxFQUFFO3lCQUNkLEVBTkMsU0FBUyxlQUFBLEVBQUUsU0FBUyxlQU1yQixDQUFDO29CQUNQLElBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztpQkFDckQ7Ozs7Ozs7OztZQUNBLElBQVksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUNILHdCQUFDO0FBQUQsQ0FBQyxBQTlCRCxDQUFnQyx3REFBMEIsR0E4QnpEO0FBRUQsOEJBQWtCLENBQUMsaUJBQWlCLEVBQUUsWUFBWSxFQUFFO0lBQ2xELENBQUMsZUFBUSxDQUFDO0lBQ1YsQ0FBQyxtQkFBUSxDQUFDLFNBQVMsSUFBSSwwQkFBMEIsQ0FBQyxDQUFDLGNBQU0sT0FBQSxTQUFTLEVBQVQsQ0FBUyxDQUFDLEVBQUUsSUFBSSxlQUFRLEVBQUUsRUFBRSxJQUFJLFdBQUksRUFBRSxDQUFDO0lBQ2hHLENBQUMsd0JBQWlCLENBQUM7Q0FDcEIsQ0FBQyxDQUFDO0FBRUgsSUFBTSxhQUFhLEdBQUcsVUFBQyxTQUFvQixFQUFFLElBQWU7SUFDMUQsSUFBTSxJQUFJLEdBQUcsd0NBQTJCLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUMsSUFBQSxRQUFRLEdBQW9ELElBQUksU0FBeEQsRUFBRSxNQUFNLEdBQTRDLElBQUksT0FBaEQsRUFBRSxPQUFPLEdBQW1DLElBQUksUUFBdkMsRUFBRSxPQUFPLEdBQTBCLElBQUksUUFBOUIsRUFBRSxRQUFRLEdBQWdCLElBQUksU0FBcEIsRUFBRSxTQUFTLEdBQUssSUFBSSxVQUFULENBQVU7SUFDekUsSUFBTSxRQUFRLEdBQUcsMkJBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0MsSUFBTSxRQUFRLEdBQUcsRUFBRSxNQUFNLFFBQUEsRUFBRSxPQUFPLFNBQUEsRUFBRSxTQUFTLFdBQUEsRUFBRSxPQUFPLFNBQUEsRUFBRSxDQUFDO0lBQ3pELElBQU0sVUFBVSxHQUFHLEVBQUUsUUFBUSxVQUFBLEVBQUUsUUFBUSxVQUFBLEVBQUUsUUFBUSxVQUFBLEVBQUUsQ0FBQztJQUNwRCxnQkFBUyxDQUFDLDhCQUFtQixDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDOUUsQ0FBQyxDQUFDO0FBRUYsU0FBZ0IsY0FBYztJQUFDLG9CQUErQjtTQUEvQixVQUErQixFQUEvQixxQkFBK0IsRUFBL0IsSUFBK0I7UUFBL0IsK0JBQStCOztJQUM1RCxPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDdkMsQ0FBQztBQUZELHdDQUVDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixhQUFhLENBQWEsU0FBMkI7SUFDbkUsaUVBQWlFO0lBQ2pFLElBQUssb0JBQVUsRUFBVSxDQUFDLGFBQWEsRUFBRTtRQUN2QyxJQUFJO1lBQ0YsT0FBTyw0Q0FBZ0IsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDekM7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLDhCQUE4QjtTQUMvQjtLQUNGO0lBQ0QsSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsSUFBSSwyQkFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRTtRQUNuRyxPQUFPLDJCQUFlLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsSUFBTSxJQUFJLEdBQUcsMEJBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzVDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFL0IsdUJBQXVCO0lBQ3ZCLElBQUksMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEVBQUU7UUFDL0MsMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQ3hEO0lBRUQsT0FBTyxJQUFXLENBQUM7QUFDckIsQ0FBQztBQXRCRCxzQ0FzQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIEluamVjdG9yLFxuICBPcHRpb25hbCxcbiAgUXVlcnlMaXN0LFxuICBTZWxmLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRUZXN0QmVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IGNvcmVEZWZpbmVQcm9wZXJ0eSBmcm9tICcuLi9jb21tb24vY29yZS5kZWZpbmUtcHJvcGVydHknO1xuaW1wb3J0IGNvcmVGb3JtIGZyb20gJy4uL2NvbW1vbi9jb3JlLmZvcm0nO1xuaW1wb3J0IHsgZXh0ZW5kQ2xhc3MgfSBmcm9tICcuLi9jb21tb24vY29yZS5oZWxwZXJzJztcbmltcG9ydCBjb3JlUmVmbGVjdERpcmVjdGl2ZVJlc29sdmUgZnJvbSAnLi4vY29tbW9uL2NvcmUucmVmbGVjdC5kaXJlY3RpdmUtcmVzb2x2ZSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUudHlwZXMnO1xuaW1wb3J0IHsgZ2V0TW9ja2VkTmdEZWZPZiB9IGZyb20gJy4uL2NvbW1vbi9mdW5jLmdldC1tb2NrZWQtbmctZGVmLW9mJztcbmltcG9ydCBmdW5jSXNNb2NrIGZyb20gJy4uL2NvbW1vbi9mdW5jLmlzLW1vY2snO1xuaW1wb3J0IHsgTW9ja0NvbmZpZyB9IGZyb20gJy4uL2NvbW1vbi9tb2NrJztcbmltcG9ydCB7IExlZ2FjeUNvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi4vY29tbW9uL21vY2stY29udHJvbC12YWx1ZS1hY2Nlc3Nvcic7XG5pbXBvcnQgbmdNb2Nrc1VuaXZlcnNlIGZyb20gJy4uL2NvbW1vbi9uZy1tb2Nrcy11bml2ZXJzZSc7XG5pbXBvcnQgZGVjb3JhdGVEZWNsYXJhdGlvbiBmcm9tICcuLi9tb2NrL2RlY29yYXRlLWRlY2xhcmF0aW9uJztcblxuaW1wb3J0IGdlbmVyYXRlVGVtcGxhdGUgZnJvbSAnLi9yZW5kZXIvZ2VuZXJhdGUtdGVtcGxhdGUnO1xuaW1wb3J0IGdldEtleSBmcm9tICcuL3JlbmRlci9nZXQta2V5JztcbmltcG9ydCB7IE1vY2tlZENvbXBvbmVudCB9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCBtaXhSZW5kZXJQcmVwYXJlVmNyID0gKFxuICBpbnN0YW5jZTogTW9ja0NvbmZpZyAmIFJlY29yZDxrZXlvZiBhbnksIGFueT4sXG4gIHR5cGU6IHN0cmluZyxcbiAgc2VsZWN0b3I6IHN0cmluZyxcbiAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbik6IFZpZXdDb250YWluZXJSZWYgfCB1bmRlZmluZWQgPT4ge1xuICBpZiAoIWluc3RhbmNlW2BuZ01vY2tzUmVuZGVyXyR7dHlwZX1fJHtzZWxlY3Rvcn1gXSkge1xuICAgIGluc3RhbmNlW2BuZ01vY2tzUmVuZGVyXyR7dHlwZX1fJHtzZWxlY3Rvcn1gXSA9IHRydWU7XG4gICAgY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHJldHVybiBpbnN0YW5jZVtgX19tb2NrVmlld18ke3R5cGV9XyR7c2VsZWN0b3J9YF07XG59O1xuXG5jb25zdCBtaXhSZW5kZXJSZW9yZGVyVmlld3MgPSAoXG4gIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gIHZpZXdzOiBBcnJheTxFbWJlZGRlZFZpZXdSZWY8YW55Pj4sXG4gIGluZGV4OiBudW1iZXIsXG4pOiB2b2lkID0+IHtcbiAgZm9yIChjb25zdCB2aWV3IG9mIHZpZXdzLnNwbGljZShpbmRleCArIDEpKSB7XG4gICAgdmlldy5kZXN0cm95KCk7XG4gIH1cblxuICBsZXQgdmlld0luZGV4ID0gMDtcbiAgZm9yIChjb25zdCB2aWV3IG9mIHZpZXdzKSB7XG4gICAgaWYgKCF2aWV3KSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgdmlld0NvbnRhaW5lci5tb3ZlKHZpZXcsIHZpZXdJbmRleCk7XG4gICAgdmlld0luZGV4ICs9IDE7XG4gIH1cbn07XG5cbmNvbnN0IG1peFJlbmRlckFwcGx5Q29udGV4dCA9ICh2aWV3OiBFbWJlZGRlZFZpZXdSZWY8YW55PiwgY29udGV4dDogUmVjb3JkPGFueSwgYW55Pik6IHZvaWQgPT4ge1xuICBmb3IgKGNvbnN0IGNvbnRleHRLZXkgb2YgT2JqZWN0LmtleXModmlldy5jb250ZXh0KSkge1xuICAgIHZpZXcuY29udGV4dFtjb250ZXh0S2V5XSA9IHVuZGVmaW5lZDtcbiAgfVxuICBmb3IgKGNvbnN0IGNvbnRleHRLZXkgb2YgT2JqZWN0LmtleXMoY29udGV4dCkpIHtcbiAgICB2aWV3LmNvbnRleHRbY29udGV4dEtleV0gPSAoY29udGV4dCBhcyBhbnkpW2NvbnRleHRLZXldO1xuICB9XG4gIHZpZXcubWFya0ZvckNoZWNrKCk7XG59O1xuXG5jb25zdCBtaXhSZW5kZXJIYW5kbGVWaWV3cyA9IChcbiAgdmNyOiBWaWV3Q29udGFpbmVyUmVmLFxuICBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICB0ZW1wbGF0ZXM6IGFueVtdLFxuICB2aWV3czogQXJyYXk8RW1iZWRkZWRWaWV3UmVmPGFueT4+LFxuICBpbmRpY2VzOiB1bmRlZmluZWQgfCBudW1iZXJbXSxcbiAgY29udGV4dDogUmVjb3JkPGFueSwgYW55Pixcbik6IG51bWJlciA9PiB7XG4gIGxldCBpbmRleCA9IC0xO1xuXG4gIGZvciAoY29uc3QgdGVtcGxhdGVSZWYgb2YgdGVtcGxhdGVzKSB7XG4gICAgaW5kZXggKz0gMTtcbiAgICB2aWV3c1tpbmRleF0gPSB2aWV3c1tpbmRleF0gfHwgdW5kZWZpbmVkO1xuICAgIGlmICgoaW5kaWNlcyAmJiBpbmRpY2VzLmluZGV4T2YoaW5kZXgpID09PSAtMSkgfHwgIXRlbXBsYXRlUmVmKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgaWYgKCEodGVtcGxhdGVSZWYgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZikpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgVGVtcGxhdGVSZWZgKTtcbiAgICB9XG4gICAgaWYgKCF2aWV3c1tpbmRleF0pIHtcbiAgICAgIHZpZXdzW2luZGV4XSA9IHZjci5jcmVhdGVFbWJlZGRlZFZpZXcodGVtcGxhdGVSZWYsIHt9KTtcbiAgICB9XG4gICAgbWl4UmVuZGVyQXBwbHlDb250ZXh0KHZpZXdzW2luZGV4XSwgY29udGV4dCk7XG4gIH1cbiAgY2RyLmRldGVjdENoYW5nZXMoKTtcblxuICByZXR1cm4gaW5kZXg7XG59O1xuXG5jb25zdCBtaXhSZW5kZXIgPSAoaW5zdGFuY2U6IE1vY2tDb25maWcgJiBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+LCBjZHI6IENoYW5nZURldGVjdG9yUmVmKTogdm9pZCA9PiB7XG4gIC8vIFByb3ZpZGluZyBhIG1ldGhvZCB0byByZW5kZXIgYW55IEBDb250ZW50Q2hpbGQgYmFzZWQgb24gaXRzIHNlbGVjdG9yLlxuICBjb3JlRGVmaW5lUHJvcGVydHkoXG4gICAgaW5zdGFuY2UsXG4gICAgJ19fcmVuZGVyJyxcbiAgICAoY29udGVudENoaWxkU2VsZWN0b3I6IHN0cmluZyB8IFtzdHJpbmcsIC4uLm51bWJlcltdXSwgJGltcGxpY2l0PzogYW55LCB2YXJpYWJsZXM/OiBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+KSA9PiB7XG4gICAgICBjb25zdCBbdHlwZSwga2V5LCBzZWxlY3RvciwgaW5kaWNlc10gPSBnZXRLZXkoY29udGVudENoaWxkU2VsZWN0b3IpO1xuXG4gICAgICBjb25zdCB2Y3IgPSBtaXhSZW5kZXJQcmVwYXJlVmNyKGluc3RhbmNlLCB0eXBlLCBzZWxlY3RvciwgY2RyKTtcbiAgICAgIGlmICghdmNyKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcHJvcGVydHk6IGFueSA9IGluc3RhbmNlW2tleV07XG4gICAgICBjb25zdCB0ZW1wbGF0ZXMgPSBwcm9wZXJ0eSBpbnN0YW5jZW9mIFF1ZXJ5TGlzdCA/IHByb3BlcnR5LnRvQXJyYXkoKSA6IFtwcm9wZXJ0eV07XG5cbiAgICAgIGNvbnN0IHZpZXdzID0gaW5zdGFuY2VbYG5nTW9ja3NSZW5kZXJfJHt0eXBlfV8ke3NlbGVjdG9yfV92aWV3c2BdIHx8IFtdO1xuICAgICAgY29uc3QgaW5kZXggPSBtaXhSZW5kZXJIYW5kbGVWaWV3cyh2Y3IsIGNkciwgdGVtcGxhdGVzLCB2aWV3cywgaW5kaWNlcywgeyAuLi52YXJpYWJsZXMsICRpbXBsaWNpdCB9KTtcblxuICAgICAgbWl4UmVuZGVyUmVvcmRlclZpZXdzKHZjciwgdmlld3MsIGluZGV4KTtcbiAgICAgIGluc3RhbmNlW2BuZ01vY2tzUmVuZGVyXyR7dHlwZX1fJHtzZWxlY3Rvcn1fdmlld3NgXSA9IHZpZXdzO1xuICAgICAgY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9LFxuICApO1xufTtcblxuY29uc3QgbWl4SGlkZUhhbmRsZXIgPSAoXG4gIGluc3RhbmNlOiBNb2NrQ29uZmlnICYgUmVjb3JkPGtleW9mIGFueSwgYW55PixcbiAgdHlwZTogc3RyaW5nLFxuICBzZWxlY3Rvcjogc3RyaW5nLFxuICBpbmRpY2VzOiB1bmRlZmluZWQgfCBudW1iZXJbXSxcbikgPT4ge1xuICBjb25zdCB2aWV3cyA9IGluc3RhbmNlW2BuZ01vY2tzUmVuZGVyXyR7dHlwZX1fJHtzZWxlY3Rvcn1fdmlld3NgXTtcbiAgbGV0IGluZGV4ID0gLTE7XG4gIGZvciAoY29uc3QgdmlldyBvZiB2aWV3cykge1xuICAgIGluZGV4ICs9IDE7XG4gICAgaWYgKChpbmRpY2VzICYmIGluZGljZXMuaW5kZXhPZihpbmRleCkgPT09IC0xKSB8fCAhdmlldykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIHZpZXcuZGVzdHJveSgpO1xuICAgIHZpZXdzW2luZGV4XSA9IHVuZGVmaW5lZDtcbiAgfVxufTtcblxuY29uc3QgbWl4SGlkZSA9IChpbnN0YW5jZTogTW9ja0NvbmZpZyAmIFJlY29yZDxrZXlvZiBhbnksIGFueT4sIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZik6IHZvaWQgPT4ge1xuICAvLyBQcm92aWRpbmcgbWV0aG9kIHRvIGhpZGUgYW55IEBDb250ZW50Q2hpbGQgYmFzZWQgb24gaXRzIHNlbGVjdG9yLlxuICBjb3JlRGVmaW5lUHJvcGVydHkoaW5zdGFuY2UsICdfX2hpZGUnLCAoY29udGVudENoaWxkU2VsZWN0b3I6IHN0cmluZyB8IFtzdHJpbmcsIC4uLm51bWJlcltdXSkgPT4ge1xuICAgIGNvbnN0IFt0eXBlLCAsIHNlbGVjdG9yLCBpbmRpY2VzXSA9IGdldEtleShjb250ZW50Q2hpbGRTZWxlY3Rvcik7XG5cbiAgICBpZiAoIWluc3RhbmNlW2BuZ01vY2tzUmVuZGVyXyR7dHlwZX1fJHtzZWxlY3Rvcn1gXSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBtaXhIaWRlSGFuZGxlcihpbnN0YW5jZSwgdHlwZSwgc2VsZWN0b3IsIGluZGljZXMpO1xuXG4gICAgaWYgKCFpbmRpY2VzKSB7XG4gICAgICBpbnN0YW5jZVtgbmdNb2Nrc1JlbmRlcl8ke3R5cGV9XyR7c2VsZWN0b3J9YF0gPSBmYWxzZTtcbiAgICB9XG4gICAgY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9KTtcbn07XG5cbmNsYXNzIENvbXBvbmVudE1vY2tCYXNlIGV4dGVuZHMgTGVnYWN5Q29udHJvbFZhbHVlQWNjZXNzb3IgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgLy8gaXN0YW5idWwgaWdub3JlIG5leHRcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBuZ0NvbnRyb2w6IGFueSwgLy8gTmdDb250cm9sXG4gICAgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHtcbiAgICBzdXBlcihpbmplY3RvciwgbmdDb250cm9sKTtcbiAgICBpZiAoZnVuY0lzTW9jayh0aGlzKSkge1xuICAgICAgbWl4UmVuZGVyKHRoaXMsIGNoYW5nZURldGVjdG9yKTtcbiAgICAgIG1peEhpZGUodGhpcywgY2hhbmdlRGV0ZWN0b3IpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnID0gKHRoaXMuX19uZ01vY2tzQ29uZmlnIGFzIGFueSkuY29uZmlnO1xuICAgIGlmICghKHRoaXMgYXMgYW55KS5fX3JlbmRlcmVkICYmIGNvbmZpZyAmJiBjb25maWcucmVuZGVyKSB7XG4gICAgICBmb3IgKGNvbnN0IGJsb2NrIG9mIE9iamVjdC5rZXlzKGNvbmZpZy5yZW5kZXIpKSB7XG4gICAgICAgIGNvbnN0IHsgJGltcGxpY2l0LCB2YXJpYWJsZXMgfSA9XG4gICAgICAgICAgY29uZmlnLnJlbmRlcltibG9ja10gIT09IHRydWVcbiAgICAgICAgICAgID8gY29uZmlnLnJlbmRlcltibG9ja11cbiAgICAgICAgICAgIDoge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIHZhcmlhYmxlczoge30sXG4gICAgICAgICAgICAgIH07XG4gICAgICAgICh0aGlzIGFzIGFueSkuX19yZW5kZXIoYmxvY2ssICRpbXBsaWNpdCwgdmFyaWFibGVzKTtcbiAgICAgIH1cbiAgICAgICh0aGlzIGFzIGFueSkuX19yZW5kZXJlZCA9IHRydWU7XG4gICAgfVxuICB9XG59XG5cbmNvcmVEZWZpbmVQcm9wZXJ0eShDb21wb25lbnRNb2NrQmFzZSwgJ3BhcmFtZXRlcnMnLCBbXG4gIFtJbmplY3Rvcl0sXG4gIFtjb3JlRm9ybS5OZ0NvbnRyb2wgfHwgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gKCgpID0+IHVuZGVmaW5lZCksIG5ldyBPcHRpb25hbCgpLCBuZXcgU2VsZigpXSxcbiAgW0NoYW5nZURldGVjdG9yUmVmXSxcbl0pO1xuXG5jb25zdCBkZWNvcmF0ZUNsYXNzID0gKGNvbXBvbmVudDogVHlwZTxhbnk+LCBtb2NrOiBUeXBlPGFueT4pOiB2b2lkID0+IHtcbiAgY29uc3QgbWV0YSA9IGNvcmVSZWZsZWN0RGlyZWN0aXZlUmVzb2x2ZShjb21wb25lbnQpO1xuICBjb25zdCB7IGV4cG9ydEFzLCBpbnB1dHMsIG91dHB1dHMsIHF1ZXJpZXMsIHNlbGVjdG9yLCBwcm92aWRlcnMgfSA9IG1ldGE7XG4gIGNvbnN0IHRlbXBsYXRlID0gZ2VuZXJhdGVUZW1wbGF0ZShxdWVyaWVzKTtcbiAgY29uc3QgbW9ja01ldGEgPSB7IGlucHV0cywgb3V0cHV0cywgcHJvdmlkZXJzLCBxdWVyaWVzIH07XG4gIGNvbnN0IG1vY2tQYXJhbXMgPSB7IGV4cG9ydEFzLCBzZWxlY3RvciwgdGVtcGxhdGUgfTtcbiAgQ29tcG9uZW50KGRlY29yYXRlRGVjbGFyYXRpb24oY29tcG9uZW50LCBtb2NrLCBtb2NrTWV0YSwgbW9ja1BhcmFtcykpKG1vY2spO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vY2tDb21wb25lbnRzKC4uLmNvbXBvbmVudHM6IEFycmF5PFR5cGU8YW55Pj4pOiBBcnJheTxUeXBlPE1vY2tlZENvbXBvbmVudDxhbnk+Pj4ge1xuICByZXR1cm4gY29tcG9uZW50cy5tYXAoTW9ja0NvbXBvbmVudCk7XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tDb21wb25lbnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tDb21wb25lbnQ8VENvbXBvbmVudD4oY29tcG9uZW50OiBUeXBlPFRDb21wb25lbnQ+KTogVHlwZTxNb2NrZWRDb21wb25lbnQ8VENvbXBvbmVudD4+IHtcbiAgLy8gV2UgYXJlIGluc2lkZSBvZiBhbiAnaXQnLiBJdCBpcyBmaW5lIHRvIHRvIHJldHVybiBhIG1vY2sgY29weS5cbiAgaWYgKChnZXRUZXN0QmVkKCkgYXMgYW55KS5faW5zdGFudGlhdGVkKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBnZXRNb2NrZWROZ0RlZk9mKGNvbXBvbmVudCwgJ2MnKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gbG9va3MgbGlrZSBhbiBpbi10ZXN0IG1vY2suXG4gICAgfVxuICB9XG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZUNvbXBvbmVudCcpICYmIG5nTW9ja3NVbml2ZXJzZS5jYWNoZURlY2xhcmF0aW9ucy5oYXMoY29tcG9uZW50KSkge1xuICAgIHJldHVybiBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuZ2V0KGNvbXBvbmVudCk7XG4gIH1cblxuICBjb25zdCBtb2NrID0gZXh0ZW5kQ2xhc3MoQ29tcG9uZW50TW9ja0Jhc2UpO1xuICBkZWNvcmF0ZUNsYXNzKGNvbXBvbmVudCwgbW9jayk7XG5cbiAgLy8gaXN0YW5idWwgaWdub3JlIGVsc2VcbiAgaWYgKG5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ2NhY2hlQ29tcG9uZW50JykpIHtcbiAgICBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuc2V0KGNvbXBvbmVudCwgbW9jayk7XG4gIH1cblxuICByZXR1cm4gbW9jayBhcyBhbnk7XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1jb21wb25lbnQvbW9jay1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBV3VCO0FBQ3ZCLGlEQUFtRDtBQUVuRCx1RUFBZ0U7QUFDaEUsaURBQTJDO0FBQzNDLHVEQUFxRDtBQUNyRCwyRkFBbUY7QUFFbkYsaUZBQXVFO0FBQ3ZFLG1FQUE0RDtBQUM1RCx1REFBZ0Q7QUFFaEQscUZBQW1GO0FBQ25GLGlFQUEwRDtBQUMxRCxxRUFBK0Q7QUFFL0QsZ0VBQTBEO0FBQzFELDRDQUFzQztBQUd0QyxJQUFNLG1CQUFtQixHQUFHLFVBQzFCLFFBQTZDLEVBQzdDLElBQVksRUFDWixRQUFnQixFQUNoQixHQUFzQjtJQUV0QixJQUFJLENBQUMsUUFBUSxDQUFDLG1CQUFpQixJQUFJLFNBQUksUUFBVSxDQUFDLEVBQUU7UUFDbEQsUUFBUSxDQUFDLG1CQUFpQixJQUFJLFNBQUksUUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3JELEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztLQUNyQjtJQUVELE9BQU8sUUFBUSxDQUFDLGdCQUFjLElBQUksU0FBSSxRQUFVLENBQUMsQ0FBQztBQUNwRCxDQUFDLENBQUM7QUFFRixJQUFNLHFCQUFxQixHQUFHLFVBQzVCLGFBQStCLEVBQy9CLEtBQWtDLEVBQ2xDLEtBQWE7OztRQUViLEtBQW1CLElBQUEsS0FBQSxTQUFBLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFBLGdCQUFBLDRCQUFFO1lBQXZDLElBQU0sSUFBSSxXQUFBO1lBQ2IsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2hCOzs7Ozs7Ozs7SUFF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LENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLDJCQUFlLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQ25HLE9BQU8sMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7S0FDekQ7SUFFRCxJQUFNLElBQUksR0FBRywwQkFBVyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDNUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUUvQix1QkFBdUI7SUFDdkIsSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtRQUMvQywyQkFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7S0FDeEQ7SUFFRCxPQUFPLElBQVcsQ0FBQztBQUNyQixDQUFDO0FBeEJELHNDQXdCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVtYmVkZGVkVmlld1JlZixcbiAgSW5qZWN0b3IsXG4gIE9wdGlvbmFsLFxuICBRdWVyeUxpc3QsXG4gIFNlbGYsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldFRlc3RCZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgY29yZURlZmluZVByb3BlcnR5IGZyb20gJy4uL2NvbW1vbi9jb3JlLmRlZmluZS1wcm9wZXJ0eSc7XG5pbXBvcnQgY29yZUZvcm0gZnJvbSAnLi4vY29tbW9uL2NvcmUuZm9ybSc7XG5pbXBvcnQgeyBleHRlbmRDbGFzcyB9IGZyb20gJy4uL2NvbW1vbi9jb3JlLmhlbHBlcnMnO1xuaW1wb3J0IGNvcmVSZWZsZWN0RGlyZWN0aXZlUmVzb2x2ZSBmcm9tICcuLi9jb21tb24vY29yZS5yZWZsZWN0LmRpcmVjdGl2ZS1yZXNvbHZlJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICcuLi9jb21tb24vY29yZS50eXBlcyc7XG5pbXBvcnQgeyBnZXRNb2NrZWROZ0RlZk9mIH0gZnJvbSAnLi4vY29tbW9uL2Z1bmMuZ2V0LW1vY2tlZC1uZy1kZWYtb2YnO1xuaW1wb3J0IGZ1bmNJbXBvcnRFeGlzdHMgZnJvbSAnLi4vY29tbW9uL2Z1bmMuaW1wb3J0LWV4aXN0cyc7XG5pbXBvcnQgZnVuY0lzTW9jayBmcm9tICcuLi9jb21tb24vZnVuYy5pcy1tb2NrJztcbmltcG9ydCB7IE1vY2tDb25maWcgfSBmcm9tICcuLi9jb21tb24vbW9jayc7XG5pbXBvcnQgeyBMZWdhY3lDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJy4uL2NvbW1vbi9tb2NrLWNvbnRyb2wtdmFsdWUtYWNjZXNzb3InO1xuaW1wb3J0IG5nTW9ja3NVbml2ZXJzZSBmcm9tICcuLi9jb21tb24vbmctbW9ja3MtdW5pdmVyc2UnO1xuaW1wb3J0IGRlY29yYXRlRGVjbGFyYXRpb24gZnJvbSAnLi4vbW9jay9kZWNvcmF0ZS1kZWNsYXJhdGlvbic7XG5cbmltcG9ydCBnZW5lcmF0ZVRlbXBsYXRlIGZyb20gJy4vcmVuZGVyL2dlbmVyYXRlLXRlbXBsYXRlJztcbmltcG9ydCBnZXRLZXkgZnJvbSAnLi9yZW5kZXIvZ2V0LWtleSc7XG5pbXBvcnQgeyBNb2NrZWRDb21wb25lbnQgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgbWl4UmVuZGVyUHJlcGFyZVZjciA9IChcbiAgaW5zdGFuY2U6IE1vY2tDb25maWcgJiBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+LFxuICB0eXBlOiBzdHJpbmcsXG4gIHNlbGVjdG9yOiBzdHJpbmcsXG4gIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4pOiBWaWV3Q29udGFpbmVyUmVmIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKCFpbnN0YW5jZVtgbmdNb2Nrc1JlbmRlcl8ke3R5cGV9XyR7c2VsZWN0b3J9YF0pIHtcbiAgICBpbnN0YW5jZVtgbmdNb2Nrc1JlbmRlcl8ke3R5cGV9XyR7c2VsZWN0b3J9YF0gPSB0cnVlO1xuICAgIGNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICByZXR1cm4gaW5zdGFuY2VbYF9fbW9ja1ZpZXdfJHt0eXBlfV8ke3NlbGVjdG9yfWBdO1xufTtcblxuY29uc3QgbWl4UmVuZGVyUmVvcmRlclZpZXdzID0gKFxuICB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxuICB2aWV3czogQXJyYXk8RW1iZWRkZWRWaWV3UmVmPGFueT4+LFxuICBpbmRleDogbnVtYmVyLFxuKTogdm9pZCA9PiB7XG4gIGZvciAoY29uc3QgdmlldyBvZiB2aWV3cy5zcGxpY2UoaW5kZXggKyAxKSkge1xuICAgIHZpZXcuZGVzdHJveSgpO1xuICB9XG5cbiAgbGV0IHZpZXdJbmRleCA9IDA7XG4gIGZvciAoY29uc3QgdmlldyBvZiB2aWV3cykge1xuICAgIGlmICghdmlldykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIHZpZXdDb250YWluZXIubW92ZSh2aWV3LCB2aWV3SW5kZXgpO1xuICAgIHZpZXdJbmRleCArPSAxO1xuICB9XG59O1xuXG5jb25zdCBtaXhSZW5kZXJBcHBseUNvbnRleHQgPSAodmlldzogRW1iZWRkZWRWaWV3UmVmPGFueT4sIGNvbnRleHQ6IFJlY29yZDxhbnksIGFueT4pOiB2b2lkID0+IHtcbiAgZm9yIChjb25zdCBjb250ZXh0S2V5IG9mIE9iamVjdC5rZXlzKHZpZXcuY29udGV4dCkpIHtcbiAgICB2aWV3LmNvbnRleHRbY29udGV4dEtleV0gPSB1bmRlZmluZWQ7XG4gIH1cbiAgZm9yIChjb25zdCBjb250ZXh0S2V5IG9mIE9iamVjdC5rZXlzKGNvbnRleHQpKSB7XG4gICAgdmlldy5jb250ZXh0W2NvbnRleHRLZXldID0gKGNvbnRleHQgYXMgYW55KVtjb250ZXh0S2V5XTtcbiAgfVxuICB2aWV3Lm1hcmtGb3JDaGVjaygpO1xufTtcblxuY29uc3QgbWl4UmVuZGVySGFuZGxlVmlld3MgPSAoXG4gIHZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgdGVtcGxhdGVzOiBhbnlbXSxcbiAgdmlld3M6IEFycmF5PEVtYmVkZGVkVmlld1JlZjxhbnk+PixcbiAgaW5kaWNlczogdW5kZWZpbmVkIHwgbnVtYmVyW10sXG4gIGNvbnRleHQ6IFJlY29yZDxhbnksIGFueT4sXG4pOiBudW1iZXIgPT4ge1xuICBsZXQgaW5kZXggPSAtMTtcblxuICBmb3IgKGNvbnN0IHRlbXBsYXRlUmVmIG9mIHRlbXBsYXRlcykge1xuICAgIGluZGV4ICs9IDE7XG4gICAgdmlld3NbaW5kZXhdID0gdmlld3NbaW5kZXhdIHx8IHVuZGVmaW5lZDtcbiAgICBpZiAoKGluZGljZXMgJiYgaW5kaWNlcy5pbmRleE9mKGluZGV4KSA9PT0gLTEpIHx8ICF0ZW1wbGF0ZVJlZikge1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIGlmICghKHRlbXBsYXRlUmVmIGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kIFRlbXBsYXRlUmVmYCk7XG4gICAgfVxuICAgIGlmICghdmlld3NbaW5kZXhdKSB7XG4gICAgICB2aWV3c1tpbmRleF0gPSB2Y3IuY3JlYXRlRW1iZWRkZWRWaWV3KHRlbXBsYXRlUmVmLCB7fSk7XG4gICAgfVxuICAgIG1peFJlbmRlckFwcGx5Q29udGV4dCh2aWV3c1tpbmRleF0sIGNvbnRleHQpO1xuICB9XG4gIGNkci5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgcmV0dXJuIGluZGV4O1xufTtcblxuY29uc3QgbWl4UmVuZGVyID0gKGluc3RhbmNlOiBNb2NrQ29uZmlnICYgUmVjb3JkPGtleW9mIGFueSwgYW55PiwgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZik6IHZvaWQgPT4ge1xuICAvLyBQcm92aWRpbmcgYSBtZXRob2QgdG8gcmVuZGVyIGFueSBAQ29udGVudENoaWxkIGJhc2VkIG9uIGl0cyBzZWxlY3Rvci5cbiAgY29yZURlZmluZVByb3BlcnR5KFxuICAgIGluc3RhbmNlLFxuICAgICdfX3JlbmRlcicsXG4gICAgKGNvbnRlbnRDaGlsZFNlbGVjdG9yOiBzdHJpbmcgfCBbc3RyaW5nLCAuLi5udW1iZXJbXV0sICRpbXBsaWNpdD86IGFueSwgdmFyaWFibGVzPzogUmVjb3JkPGtleW9mIGFueSwgYW55PikgPT4ge1xuICAgICAgY29uc3QgW3R5cGUsIGtleSwgc2VsZWN0b3IsIGluZGljZXNdID0gZ2V0S2V5KGNvbnRlbnRDaGlsZFNlbGVjdG9yKTtcblxuICAgICAgY29uc3QgdmNyID0gbWl4UmVuZGVyUHJlcGFyZVZjcihpbnN0YW5jZSwgdHlwZSwgc2VsZWN0b3IsIGNkcik7XG4gICAgICBpZiAoIXZjcikge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHByb3BlcnR5OiBhbnkgPSBpbnN0YW5jZVtrZXldO1xuICAgICAgY29uc3QgdGVtcGxhdGVzID0gcHJvcGVydHkgaW5zdGFuY2VvZiBRdWVyeUxpc3QgPyBwcm9wZXJ0eS50b0FycmF5KCkgOiBbcHJvcGVydHldO1xuXG4gICAgICBjb25zdCB2aWV3cyA9IGluc3RhbmNlW2BuZ01vY2tzUmVuZGVyXyR7dHlwZX1fJHtzZWxlY3Rvcn1fdmlld3NgXSB8fCBbXTtcbiAgICAgIGNvbnN0IGluZGV4ID0gbWl4UmVuZGVySGFuZGxlVmlld3ModmNyLCBjZHIsIHRlbXBsYXRlcywgdmlld3MsIGluZGljZXMsIHsgLi4udmFyaWFibGVzLCAkaW1wbGljaXQgfSk7XG5cbiAgICAgIG1peFJlbmRlclJlb3JkZXJWaWV3cyh2Y3IsIHZpZXdzLCBpbmRleCk7XG4gICAgICBpbnN0YW5jZVtgbmdNb2Nrc1JlbmRlcl8ke3R5cGV9XyR7c2VsZWN0b3J9X3ZpZXdzYF0gPSB2aWV3cztcbiAgICAgIGNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSxcbiAgKTtcbn07XG5cbmNvbnN0IG1peEhpZGVIYW5kbGVyID0gKFxuICBpbnN0YW5jZTogTW9ja0NvbmZpZyAmIFJlY29yZDxrZXlvZiBhbnksIGFueT4sXG4gIHR5cGU6IHN0cmluZyxcbiAgc2VsZWN0b3I6IHN0cmluZyxcbiAgaW5kaWNlczogdW5kZWZpbmVkIHwgbnVtYmVyW10sXG4pID0+IHtcbiAgY29uc3Qgdmlld3MgPSBpbnN0YW5jZVtgbmdNb2Nrc1JlbmRlcl8ke3R5cGV9XyR7c2VsZWN0b3J9X3ZpZXdzYF07XG4gIGxldCBpbmRleCA9IC0xO1xuICBmb3IgKGNvbnN0IHZpZXcgb2Ygdmlld3MpIHtcbiAgICBpbmRleCArPSAxO1xuICAgIGlmICgoaW5kaWNlcyAmJiBpbmRpY2VzLmluZGV4T2YoaW5kZXgpID09PSAtMSkgfHwgIXZpZXcpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICB2aWV3LmRlc3Ryb3koKTtcbiAgICB2aWV3c1tpbmRleF0gPSB1bmRlZmluZWQ7XG4gIH1cbn07XG5cbmNvbnN0IG1peEhpZGUgPSAoaW5zdGFuY2U6IE1vY2tDb25maWcgJiBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+LCBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpOiB2b2lkID0+IHtcbiAgLy8gUHJvdmlkaW5nIG1ldGhvZCB0byBoaWRlIGFueSBAQ29udGVudENoaWxkIGJhc2VkIG9uIGl0cyBzZWxlY3Rvci5cbiAgY29yZURlZmluZVByb3BlcnR5KGluc3RhbmNlLCAnX19oaWRlJywgKGNvbnRlbnRDaGlsZFNlbGVjdG9yOiBzdHJpbmcgfCBbc3RyaW5nLCAuLi5udW1iZXJbXV0pID0+IHtcbiAgICBjb25zdCBbdHlwZSwgLCBzZWxlY3RvciwgaW5kaWNlc10gPSBnZXRLZXkoY29udGVudENoaWxkU2VsZWN0b3IpO1xuXG4gICAgaWYgKCFpbnN0YW5jZVtgbmdNb2Nrc1JlbmRlcl8ke3R5cGV9XyR7c2VsZWN0b3J9YF0pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbWl4SGlkZUhhbmRsZXIoaW5zdGFuY2UsIHR5cGUsIHNlbGVjdG9yLCBpbmRpY2VzKTtcblxuICAgIGlmICghaW5kaWNlcykge1xuICAgICAgaW5zdGFuY2VbYG5nTW9ja3NSZW5kZXJfJHt0eXBlfV8ke3NlbGVjdG9yfWBdID0gZmFsc2U7XG4gICAgfVxuICAgIGNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfSk7XG59O1xuXG5jbGFzcyBDb21wb25lbnRNb2NrQmFzZSBleHRlbmRzIExlZ2FjeUNvbnRyb2xWYWx1ZUFjY2Vzc29yIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgbmdDb250cm9sOiBhbnksIC8vIE5nQ29udHJvbFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7XG4gICAgc3VwZXIoaW5qZWN0b3IsIG5nQ29udHJvbCk7XG4gICAgaWYgKGZ1bmNJc01vY2sodGhpcykpIHtcbiAgICAgIG1peFJlbmRlcih0aGlzLCBjaGFuZ2VEZXRlY3Rvcik7XG4gICAgICBtaXhIaWRlKHRoaXMsIGNoYW5nZURldGVjdG9yKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbmZpZyA9ICh0aGlzLl9fbmdNb2Nrc0NvbmZpZyBhcyBhbnkpLmNvbmZpZztcbiAgICBpZiAoISh0aGlzIGFzIGFueSkuX19yZW5kZXJlZCAmJiBjb25maWcgJiYgY29uZmlnLnJlbmRlcikge1xuICAgICAgZm9yIChjb25zdCBibG9jayBvZiBPYmplY3Qua2V5cyhjb25maWcucmVuZGVyKSkge1xuICAgICAgICBjb25zdCB7ICRpbXBsaWNpdCwgdmFyaWFibGVzIH0gPVxuICAgICAgICAgIGNvbmZpZy5yZW5kZXJbYmxvY2tdICE9PSB0cnVlXG4gICAgICAgICAgICA/IGNvbmZpZy5yZW5kZXJbYmxvY2tdXG4gICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHt9LFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAodGhpcyBhcyBhbnkpLl9fcmVuZGVyKGJsb2NrLCAkaW1wbGljaXQsIHZhcmlhYmxlcyk7XG4gICAgICB9XG4gICAgICAodGhpcyBhcyBhbnkpLl9fcmVuZGVyZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxufVxuXG5jb3JlRGVmaW5lUHJvcGVydHkoQ29tcG9uZW50TW9ja0Jhc2UsICdwYXJhbWV0ZXJzJywgW1xuICBbSW5qZWN0b3JdLFxuICBbY29yZUZvcm0uTmdDb250cm9sIHx8IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovICgoKSA9PiB1bmRlZmluZWQpLCBuZXcgT3B0aW9uYWwoKSwgbmV3IFNlbGYoKV0sXG4gIFtDaGFuZ2VEZXRlY3RvclJlZl0sXG5dKTtcblxuY29uc3QgZGVjb3JhdGVDbGFzcyA9IChjb21wb25lbnQ6IFR5cGU8YW55PiwgbW9jazogVHlwZTxhbnk+KTogdm9pZCA9PiB7XG4gIGNvbnN0IG1ldGEgPSBjb3JlUmVmbGVjdERpcmVjdGl2ZVJlc29sdmUoY29tcG9uZW50KTtcbiAgY29uc3QgeyBleHBvcnRBcywgaW5wdXRzLCBvdXRwdXRzLCBxdWVyaWVzLCBzZWxlY3RvciwgcHJvdmlkZXJzIH0gPSBtZXRhO1xuICBjb25zdCB0ZW1wbGF0ZSA9IGdlbmVyYXRlVGVtcGxhdGUocXVlcmllcyk7XG4gIGNvbnN0IG1vY2tNZXRhID0geyBpbnB1dHMsIG91dHB1dHMsIHByb3ZpZGVycywgcXVlcmllcyB9O1xuICBjb25zdCBtb2NrUGFyYW1zID0geyBleHBvcnRBcywgc2VsZWN0b3IsIHRlbXBsYXRlIH07XG4gIENvbXBvbmVudChkZWNvcmF0ZURlY2xhcmF0aW9uKGNvbXBvbmVudCwgbW9jaywgbW9ja01ldGEsIG1vY2tQYXJhbXMpKShtb2NrKTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2NrQ29tcG9uZW50cyguLi5jb21wb25lbnRzOiBBcnJheTxUeXBlPGFueT4+KTogQXJyYXk8VHlwZTxNb2NrZWRDb21wb25lbnQ8YW55Pj4+IHtcbiAgcmV0dXJuIGNvbXBvbmVudHMubWFwKE1vY2tDb21wb25lbnQpO1xufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrQ29tcG9uZW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrQ29tcG9uZW50PFRDb21wb25lbnQ+KGNvbXBvbmVudDogVHlwZTxUQ29tcG9uZW50Pik6IFR5cGU8TW9ja2VkQ29tcG9uZW50PFRDb21wb25lbnQ+PiB7XG4gIGZ1bmNJbXBvcnRFeGlzdHMoY29tcG9uZW50LCAnTW9ja0NvbXBvbmVudCcpO1xuXG4gIC8vIFdlIGFyZSBpbnNpZGUgb2YgYW4gJ2l0Jy4gSXQgaXMgZmluZSB0byB0byByZXR1cm4gYSBtb2NrIGNvcHkuXG4gIGlmICgoZ2V0VGVzdEJlZCgpIGFzIGFueSkuX2luc3RhbnRpYXRlZCkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gZ2V0TW9ja2VkTmdEZWZPZihjb21wb25lbnQsICdjJyk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIGxvb2tzIGxpa2UgYW4gaW4tdGVzdCBtb2NrLlxuICAgIH1cbiAgfVxuICBpZiAobmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnY2FjaGVDb21wb25lbnQnKSAmJiBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuaGFzKGNvbXBvbmVudCkpIHtcbiAgICByZXR1cm4gbmdNb2Nrc1VuaXZlcnNlLmNhY2hlRGVjbGFyYXRpb25zLmdldChjb21wb25lbnQpO1xuICB9XG5cbiAgY29uc3QgbW9jayA9IGV4dGVuZENsYXNzKENvbXBvbmVudE1vY2tCYXNlKTtcbiAgZGVjb3JhdGVDbGFzcyhjb21wb25lbnQsIG1vY2spO1xuXG4gIC8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlXG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZUNvbXBvbmVudCcpKSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmNhY2hlRGVjbGFyYXRpb25zLnNldChjb21wb25lbnQsIG1vY2spO1xuICB9XG5cbiAgcmV0dXJuIG1vY2sgYXMgYW55O1xufVxuIl19 |
@@ -35,2 +35,3 @@ "use strict"; | ||
var func_get_mocked_ng_def_of_1 = require("../common/func.get-mocked-ng-def-of"); | ||
var func_import_exists_1 = require("../common/func.import-exists"); | ||
var mock_control_value_accessor_1 = require("../common/mock-control-value-accessor"); | ||
@@ -110,2 +111,3 @@ var ng_mocks_universe_1 = require("../common/ng-mocks-universe"); | ||
function MockDirective(directive) { | ||
func_import_exists_1.default(directive, 'MockDirective'); | ||
// We are inside of an 'it'. | ||
@@ -133,2 +135,2 @@ // It is fine to to return a mock copy or to throw an exception if it was not replaced with its mock copy in TestBed. | ||
exports.MockDirective = MockDirective; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1kaXJlY3RpdmUvbW9jay1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBVXVCO0FBQ3ZCLGlEQUFtRDtBQUVuRCx1RUFBZ0U7QUFDaEUsaURBQTJDO0FBQzNDLHVEQUFxRDtBQUNyRCwyRkFBbUY7QUFFbkYsaUZBQXVFO0FBQ3ZFLHFGQUFtRjtBQUNuRixpRUFBMEQ7QUFDMUQscUVBQStEO0FBSS9EO0lBQWdDLHFDQUEwQjtJQUN4RCx1QkFBdUI7SUFDdkIsMkJBQ0UsUUFBa0IsRUFDbEIsU0FBYyxFQUFFLFlBQVk7SUFDNUIsR0FBc0IsRUFDdEIsR0FBcUIsRUFDckIsT0FBaUMsRUFDakMsUUFBd0M7UUFEeEMsd0JBQUEsRUFBQSxjQUFpQztRQUNqQyx5QkFBQSxFQUFBLGVBQXdDO1FBTjFDLFlBUUUsa0JBQU0sUUFBUSxFQUFFLFNBQVMsQ0FBQyxTQUUzQjtRQURDLEtBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQzs7SUFDckQsQ0FBQztJQUVNLG9DQUFRLEdBQWY7UUFDRSxJQUFNLE1BQU0sR0FBSSxJQUFJLENBQUMsZUFBdUIsQ0FBQyxNQUFNLENBQUM7UUFDcEQsSUFBSSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsTUFBTSxFQUFFO1lBQ1osSUFBQSxLQUNKLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSTtnQkFDcEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNO2dCQUNmLENBQUMsQ0FBQztvQkFDRSxTQUFTLEVBQUUsU0FBUztvQkFDcEIsU0FBUyxFQUFFLEVBQUU7aUJBQ2QsRUFOQyxTQUFTLGVBQUEsRUFBRSxTQUFTLGVBTXJC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O1FBQS9CLCtCQUErQjs7SUFDNUQsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0FBQ3ZDLENBQUM7QUFGRCx3Q0FFQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsYUFBYSxDQUFhLFNBQTJCO0lBQ25FLDRCQUE0QjtJQUM1QixxSEFBcUg7SUFDckgsSUFBSyxvQkFBVSxFQUFVLENBQUMsYUFBYSxFQUFFO1FBQ3ZDLElBQUk7WUFDRixPQUFPLDRDQUFnQixDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUN6QztRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsOEJBQThCO1NBQy9CO0tBQ0Y7SUFDRCxJQUFJLDJCQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLDJCQUFlLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQ25HLE9BQU8sMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7S0FDekQ7SUFFRCxJQUFNLElBQUksR0FBRywwQkFBVyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDNUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUUvQix1QkFBdUI7SUFDdkIsSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtRQUMvQywyQkFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7S0FDeEQ7SUFFRCxPQUFPLElBQVcsQ0FBQztBQUNyQixDQUFDO0FBdkJELHNDQXVCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdG9yLFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBTZWxmLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRUZXN0QmVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IGNvcmVEZWZpbmVQcm9wZXJ0eSBmcm9tICcuLi9jb21tb24vY29yZS5kZWZpbmUtcHJvcGVydHknO1xuaW1wb3J0IGNvcmVGb3JtIGZyb20gJy4uL2NvbW1vbi9jb3JlLmZvcm0nO1xuaW1wb3J0IHsgZXh0ZW5kQ2xhc3MgfSBmcm9tICcuLi9jb21tb24vY29yZS5oZWxwZXJzJztcbmltcG9ydCBjb3JlUmVmbGVjdERpcmVjdGl2ZVJlc29sdmUgZnJvbSAnLi4vY29tbW9uL2NvcmUucmVmbGVjdC5kaXJlY3RpdmUtcmVzb2x2ZSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUudHlwZXMnO1xuaW1wb3J0IHsgZ2V0TW9ja2VkTmdEZWZPZiB9IGZyb20gJy4uL2NvbW1vbi9mdW5jLmdldC1tb2NrZWQtbmctZGVmLW9mJztcbmltcG9ydCB7IExlZ2FjeUNvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi4vY29tbW9uL21vY2stY29udHJvbC12YWx1ZS1hY2Nlc3Nvcic7XG5pbXBvcnQgbmdNb2Nrc1VuaXZlcnNlIGZyb20gJy4uL2NvbW1vbi9uZy1tb2Nrcy11bml2ZXJzZSc7XG5pbXBvcnQgZGVjb3JhdGVEZWNsYXJhdGlvbiBmcm9tICcuLi9tb2NrL2RlY29yYXRlLWRlY2xhcmF0aW9uJztcblxuaW1wb3J0IHsgTW9ja2VkRGlyZWN0aXZlIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNsYXNzIERpcmVjdGl2ZU1vY2tCYXNlIGV4dGVuZHMgTGVnYWN5Q29udHJvbFZhbHVlQWNjZXNzb3IgaW1wbGVtZW50cyBPbkluaXQge1xuICAvLyBpc3RhbmJ1bCBpZ25vcmUgbmV4dFxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIG5nQ29udHJvbDogYW55LCAvLyBOZ0NvbnRyb2xcbiAgICBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgICBlbGVtZW50OiBFbGVtZW50UmVmIHwgbnVsbCA9IG51bGwsXG4gICAgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbCxcbiAgKSB7XG4gICAgc3VwZXIoaW5qZWN0b3IsIG5nQ29udHJvbCk7XG4gICAgdGhpcy5fX25nTW9ja3NJbnN0YWxsKHZjciwgY2RyLCBlbGVtZW50LCB0ZW1wbGF0ZSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnID0gKHRoaXMuX19uZ01vY2tzQ29uZmlnIGFzIGFueSkuY29uZmlnO1xuICAgIGlmIChjb25maWc/LnJlbmRlcikge1xuICAgICAgY29uc3QgeyAkaW1wbGljaXQsIHZhcmlhYmxlcyB9ID1cbiAgICAgICAgY29uZmlnLnJlbmRlciAhPT0gdHJ1ZVxuICAgICAgICAgID8gY29uZmlnLnJlbmRlclxuICAgICAgICAgIDoge1xuICAgICAgICAgICAgICAkaW1wbGljaXQ6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgdmFyaWFibGVzOiB7fSxcbiAgICAgICAgICAgIH07XG4gICAgICAodGhpcyBhcyBhbnkpLl9fcmVuZGVyKCRpbXBsaWNpdCwgdmFyaWFibGVzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9fbmdNb2Nrc0luc3RhbGwoXG4gICAgdmNyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgZWxlbWVudDogRWxlbWVudFJlZiB8IG51bGwsXG4gICAgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsLFxuICApOiB2b2lkIHtcbiAgICAvLyBCYXNpY2FsbHkgYW55IGRpcmVjdGl2ZSBvbiBuZy10ZW1wbGF0ZSBpcyB0cmVhdGVkIGFzIHN0cnVjdHVyYWwsIGV2ZW4gaXQgZG9lcyBub3QgY29udHJvbCByZW5kZXIgcHJvY2Vzcy5cbiAgICAvLyBJbiBvdXIgY2FzZSB3ZSBkbyBub3QgaWYgd2Ugc2hvdWxkIHJlbmRlciBpdCBvciBub3QgYW5kIGR1ZSB0byB0aGlzIHdlIGRvIG5vdGhpbmcuXG4gICAgY29yZURlZmluZVByb3BlcnR5KHRoaXMsICdfX2VsZW1lbnQnLCBlbGVtZW50KTtcbiAgICBjb3JlRGVmaW5lUHJvcGVydHkodGhpcywgJ19fdGVtcGxhdGUnLCB0ZW1wbGF0ZSk7XG4gICAgY29yZURlZmluZVByb3BlcnR5KHRoaXMsICdfX3ZpZXdDb250YWluZXInLCB2Y3IpO1xuICAgIGNvcmVEZWZpbmVQcm9wZXJ0eSh0aGlzLCAnX192Y3InLCB2Y3IpO1xuICAgIGNvcmVEZWZpbmVQcm9wZXJ0eSh0aGlzLCAnX19jZHInLCBjZHIpO1xuICAgIGNvcmVEZWZpbmVQcm9wZXJ0eSh0aGlzLCAnX19pc1N0cnVjdHVyYWwnLCB0ZW1wbGF0ZSAmJiB2Y3IpO1xuXG4gICAgLy8gUHJvdmlkaW5nIG1ldGhvZCB0byByZW5kZXIgbW9jayB2YWx1ZXMuXG4gICAgY29yZURlZmluZVByb3BlcnR5KHRoaXMsICdfX3JlbmRlcicsICgkaW1wbGljaXQ/OiBhbnksIHZhcmlhYmxlcz86IFJlY29yZDxrZXlvZiBhbnksIGFueT4pID0+IHtcbiAgICAgIGlmICh2Y3IgJiYgdGVtcGxhdGUpIHtcbiAgICAgICAgdmNyLmNsZWFyKCk7XG4gICAgICAgIHZjci5jcmVhdGVFbWJlZGRlZFZpZXcodGVtcGxhdGUsIHsgLi4udmFyaWFibGVzLCAkaW1wbGljaXQgfSk7XG4gICAgICAgIGNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cblxuY29yZURlZmluZVByb3BlcnR5KERpcmVjdGl2ZU1vY2tCYXNlLCAncGFyYW1ldGVycycsIFtcbiAgW0luamVjdG9yXSxcbiAgW2NvcmVGb3JtLk5nQ29udHJvbCB8fCAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyAoKCkgPT4gdW5kZWZpbmVkKSwgbmV3IE9wdGlvbmFsKCksIG5ldyBTZWxmKCldLFxuICBbQ2hhbmdlRGV0ZWN0b3JSZWZdLFxuICBbVmlld0NvbnRhaW5lclJlZl0sXG4gIFtFbGVtZW50UmVmLCBuZXcgT3B0aW9uYWwoKSwgbmV3IFNlbGYoKV0sXG4gIFtUZW1wbGF0ZVJlZiwgbmV3IE9wdGlvbmFsKCksIG5ldyBTZWxmKCldLFxuXSk7XG5cbmNvbnN0IGRlY29yYXRlQ2xhc3MgPSAoZGlyZWN0aXZlOiBUeXBlPGFueT4sIG1vY2s6IFR5cGU8YW55Pik6IHZvaWQgPT4ge1xuICBjb25zdCBtZXRhID0gY29yZVJlZmxlY3REaXJlY3RpdmVSZXNvbHZlKGRpcmVjdGl2ZSk7XG4gIGNvbnN0IHsgc2VsZWN0b3IsIGV4cG9ydEFzLCBpbnB1dHMsIG91dHB1dHMsIHF1ZXJpZXMsIHByb3ZpZGVycyB9ID0gbWV0YTtcbiAgY29uc3QgbW9ja01ldGEgPSB7IGlucHV0cywgb3V0cHV0cywgcHJvdmlkZXJzLCBxdWVyaWVzIH07XG4gIGNvbnN0IG1vY2tQYXJhbXMgPSB7IGV4cG9ydEFzLCBzZWxlY3RvciB9O1xuICBjb25zdCBvcHRpb25zID0gZGVjb3JhdGVEZWNsYXJhdGlvbihkaXJlY3RpdmUsIG1vY2ssIG1vY2tNZXRhLCBtb2NrUGFyYW1zKTtcbiAgRGlyZWN0aXZlKG9wdGlvbnMpKG1vY2spO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vY2tEaXJlY3RpdmVzKC4uLmRpcmVjdGl2ZXM6IEFycmF5PFR5cGU8YW55Pj4pOiBBcnJheTxUeXBlPE1vY2tlZERpcmVjdGl2ZTxhbnk+Pj4ge1xuICByZXR1cm4gZGlyZWN0aXZlcy5tYXAoTW9ja0RpcmVjdGl2ZSk7XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tEaXJlY3RpdmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tEaXJlY3RpdmU8VERpcmVjdGl2ZT4oZGlyZWN0aXZlOiBUeXBlPFREaXJlY3RpdmU+KTogVHlwZTxNb2NrZWREaXJlY3RpdmU8VERpcmVjdGl2ZT4+IHtcbiAgLy8gV2UgYXJlIGluc2lkZSBvZiBhbiAnaXQnLlxuICAvLyBJdCBpcyBmaW5lIHRvIHRvIHJldHVybiBhIG1vY2sgY29weSBvciB0byB0aHJvdyBhbiBleGNlcHRpb24gaWYgaXQgd2FzIG5vdCByZXBsYWNlZCB3aXRoIGl0cyBtb2NrIGNvcHkgaW4gVGVzdEJlZC5cbiAgaWYgKChnZXRUZXN0QmVkKCkgYXMgYW55KS5faW5zdGFudGlhdGVkKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBnZXRNb2NrZWROZ0RlZk9mKGRpcmVjdGl2ZSwgJ2QnKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gbG9va3MgbGlrZSBhbiBpbi10ZXN0IG1vY2suXG4gICAgfVxuICB9XG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZURpcmVjdGl2ZScpICYmIG5nTW9ja3NVbml2ZXJzZS5jYWNoZURlY2xhcmF0aW9ucy5oYXMoZGlyZWN0aXZlKSkge1xuICAgIHJldHVybiBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuZ2V0KGRpcmVjdGl2ZSk7XG4gIH1cblxuICBjb25zdCBtb2NrID0gZXh0ZW5kQ2xhc3MoRGlyZWN0aXZlTW9ja0Jhc2UpO1xuICBkZWNvcmF0ZUNsYXNzKGRpcmVjdGl2ZSwgbW9jayk7XG5cbiAgLy8gaXN0YW5idWwgaWdub3JlIGVsc2VcbiAgaWYgKG5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ2NhY2hlRGlyZWN0aXZlJykpIHtcbiAgICBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuc2V0KGRpcmVjdGl2ZSwgbW9jayk7XG4gIH1cblxuICByZXR1cm4gbW9jayBhcyBhbnk7XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1kaXJlY3RpdmUvbW9jay1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBVXVCO0FBQ3ZCLGlEQUFtRDtBQUVuRCx1RUFBZ0U7QUFDaEUsaURBQTJDO0FBQzNDLHVEQUFxRDtBQUNyRCwyRkFBbUY7QUFFbkYsaUZBQXVFO0FBQ3ZFLG1FQUE0RDtBQUM1RCxxRkFBbUY7QUFDbkYsaUVBQTBEO0FBQzFELHFFQUErRDtBQUkvRDtJQUFnQyxxQ0FBMEI7SUFDeEQsdUJBQXVCO0lBQ3ZCLDJCQUNFLFFBQWtCLEVBQ2xCLFNBQWMsRUFBRSxZQUFZO0lBQzVCLEdBQXNCLEVBQ3RCLEdBQXFCLEVBQ3JCLE9BQWlDLEVBQ2pDLFFBQXdDO1FBRHhDLHdCQUFBLEVBQUEsY0FBaUM7UUFDakMseUJBQUEsRUFBQSxlQUF3QztRQU4xQyxZQVFFLGtCQUFNLFFBQVEsRUFBRSxTQUFTLENBQUMsU0FFM0I7UUFEQyxLQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7O0lBQ3JELENBQUM7SUFFTSxvQ0FBUSxHQUFmO1FBQ0UsSUFBTSxNQUFNLEdBQUksSUFBSSxDQUFDLGVBQXVCLENBQUMsTUFBTSxDQUFDO1FBQ3BELElBQUksTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE1BQU0sRUFBRTtZQUNaLElBQUEsS0FDSixNQUFNLENBQUMsTUFBTSxLQUFLLElBQUk7Z0JBQ3BCLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTTtnQkFDZixDQUFDLENBQUM7b0JBQ0UsU0FBUyxFQUFFLFNBQVM7b0JBQ3BCLFNBQVMsRUFBRSxFQUFFO2lCQUNkLEVBTkMsU0FBUyxlQUFBLEVB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QixFQUEvQixJQUErQjtRQUEvQiwrQkFBK0I7O0lBQzVELE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUN2QyxDQUFDO0FBRkQsd0NBRUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGFBQWEsQ0FBYSxTQUEyQjtJQUNuRSw0QkFBZ0IsQ0FBQyxTQUFTLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFFN0MsNEJBQTRCO0lBQzVCLHFIQUFxSDtJQUNySCxJQUFLLG9CQUFVLEVBQVUsQ0FBQyxhQUFhLEVBQUU7UUFDdkMsSUFBSTtZQUNGLE9BQU8sNENBQWdCLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ3pDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCw4QkFBOEI7U0FDL0I7S0FDRjtJQUNELElBQUksMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLElBQUksMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUU7UUFDbkcsT0FBTywyQkFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUN6RDtJQUVELElBQU0sSUFBSSxHQUFHLDBCQUFXLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM1QyxhQUFhLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBRS9CLHVCQUF1QjtJQUN2QixJQUFJLDJCQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1FBQy9DLDJCQUFlLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUN4RDtJQUVELE9BQU8sSUFBVyxDQUFDO0FBQ3JCLENBQUM7QUF6QkQsc0NBeUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0b3IsXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFNlbGYsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldFRlc3RCZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgY29yZURlZmluZVByb3BlcnR5IGZyb20gJy4uL2NvbW1vbi9jb3JlLmRlZmluZS1wcm9wZXJ0eSc7XG5pbXBvcnQgY29yZUZvcm0gZnJvbSAnLi4vY29tbW9uL2NvcmUuZm9ybSc7XG5pbXBvcnQgeyBleHRlbmRDbGFzcyB9IGZyb20gJy4uL2NvbW1vbi9jb3JlLmhlbHBlcnMnO1xuaW1wb3J0IGNvcmVSZWZsZWN0RGlyZWN0aXZlUmVzb2x2ZSBmcm9tICcuLi9jb21tb24vY29yZS5yZWZsZWN0LmRpcmVjdGl2ZS1yZXNvbHZlJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICcuLi9jb21tb24vY29yZS50eXBlcyc7XG5pbXBvcnQgeyBnZXRNb2NrZWROZ0RlZk9mIH0gZnJvbSAnLi4vY29tbW9uL2Z1bmMuZ2V0LW1vY2tlZC1uZy1kZWYtb2YnO1xuaW1wb3J0IGZ1bmNJbXBvcnRFeGlzdHMgZnJvbSAnLi4vY29tbW9uL2Z1bmMuaW1wb3J0LWV4aXN0cyc7XG5pbXBvcnQgeyBMZWdhY3lDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJy4uL2NvbW1vbi9tb2NrLWNvbnRyb2wtdmFsdWUtYWNjZXNzb3InO1xuaW1wb3J0IG5nTW9ja3NVbml2ZXJzZSBmcm9tICcuLi9jb21tb24vbmctbW9ja3MtdW5pdmVyc2UnO1xuaW1wb3J0IGRlY29yYXRlRGVjbGFyYXRpb24gZnJvbSAnLi4vbW9jay9kZWNvcmF0ZS1kZWNsYXJhdGlvbic7XG5cbmltcG9ydCB7IE1vY2tlZERpcmVjdGl2ZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5jbGFzcyBEaXJlY3RpdmVNb2NrQmFzZSBleHRlbmRzIExlZ2FjeUNvbnRyb2xWYWx1ZUFjY2Vzc29yIGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8gaXN0YW5idWwgaWdub3JlIG5leHRcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBuZ0NvbnRyb2w6IGFueSwgLy8gTmdDb250cm9sXG4gICAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICB2Y3I6IFZpZXdDb250YWluZXJSZWYsXG4gICAgZWxlbWVudDogRWxlbWVudFJlZiB8IG51bGwgPSBudWxsLFxuICAgIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCA9IG51bGwsXG4gICkge1xuICAgIHN1cGVyKGluamVjdG9yLCBuZ0NvbnRyb2wpO1xuICAgIHRoaXMuX19uZ01vY2tzSW5zdGFsbCh2Y3IsIGNkciwgZWxlbWVudCwgdGVtcGxhdGUpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbmZpZyA9ICh0aGlzLl9fbmdNb2Nrc0NvbmZpZyBhcyBhbnkpLmNvbmZpZztcbiAgICBpZiAoY29uZmlnPy5yZW5kZXIpIHtcbiAgICAgIGNvbnN0IHsgJGltcGxpY2l0LCB2YXJpYWJsZXMgfSA9XG4gICAgICAgIGNvbmZpZy5yZW5kZXIgIT09IHRydWVcbiAgICAgICAgICA/IGNvbmZpZy5yZW5kZXJcbiAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgJGltcGxpY2l0OiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIHZhcmlhYmxlczoge30sXG4gICAgICAgICAgICB9O1xuICAgICAgKHRoaXMgYXMgYW55KS5fX3JlbmRlcigkaW1wbGljaXQsIHZhcmlhYmxlcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfX25nTW9ja3NJbnN0YWxsKFxuICAgIHZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgICBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIGVsZW1lbnQ6IEVsZW1lbnRSZWYgfCBudWxsLFxuICAgIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCxcbiAgKTogdm9pZCB7XG4gICAgLy8gQmFzaWNhbGx5IGFueSBkaXJlY3RpdmUgb24gbmctdGVtcGxhdGUgaXMgdHJlYXRlZCBhcyBzdHJ1Y3R1cmFsLCBldmVuIGl0IGRvZXMgbm90IGNvbnRyb2wgcmVuZGVyIHByb2Nlc3MuXG4gICAgLy8gSW4gb3VyIGNhc2Ugd2UgZG8gbm90IGlmIHdlIHNob3VsZCByZW5kZXIgaXQgb3Igbm90IGFuZCBkdWUgdG8gdGhpcyB3ZSBkbyBub3RoaW5nLlxuICAgIGNvcmVEZWZpbmVQcm9wZXJ0eSh0aGlzLCAnX19lbGVtZW50JywgZWxlbWVudCk7XG4gICAgY29yZURlZmluZVByb3BlcnR5KHRoaXMsICdfX3RlbXBsYXRlJywgdGVtcGxhdGUpO1xuICAgIGNvcmVEZWZpbmVQcm9wZXJ0eSh0aGlzLCAnX192aWV3Q29udGFpbmVyJywgdmNyKTtcbiAgICBjb3JlRGVmaW5lUHJvcGVydHkodGhpcywgJ19fdmNyJywgdmNyKTtcbiAgICBjb3JlRGVmaW5lUHJvcGVydHkodGhpcywgJ19fY2RyJywgY2RyKTtcbiAgICBjb3JlRGVmaW5lUHJvcGVydHkodGhpcywgJ19faXNTdHJ1Y3R1cmFsJywgdGVtcGxhdGUgJiYgdmNyKTtcblxuICAgIC8vIFByb3ZpZGluZyBtZXRob2QgdG8gcmVuZGVyIG1vY2sgdmFsdWVzLlxuICAgIGNvcmVEZWZpbmVQcm9wZXJ0eSh0aGlzLCAnX19yZW5kZXInLCAoJGltcGxpY2l0PzogYW55LCB2YXJpYWJsZXM/OiBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+KSA9PiB7XG4gICAgICBpZiAodmNyICYmIHRlbXBsYXRlKSB7XG4gICAgICAgIHZjci5jbGVhcigpO1xuICAgICAgICB2Y3IuY3JlYXRlRW1iZWRkZWRWaWV3KHRlbXBsYXRlLCB7IC4uLnZhcmlhYmxlcywgJGltcGxpY2l0IH0pO1xuICAgICAgICBjZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG5cbmNvcmVEZWZpbmVQcm9wZXJ0eShEaXJlY3RpdmVNb2NrQmFzZSwgJ3BhcmFtZXRlcnMnLCBbXG4gIFtJbmplY3Rvcl0sXG4gIFtjb3JlRm9ybS5OZ0NvbnRyb2wgfHwgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gKCgpID0+IHVuZGVmaW5lZCksIG5ldyBPcHRpb25hbCgpLCBuZXcgU2VsZigpXSxcbiAgW0NoYW5nZURldGVjdG9yUmVmXSxcbiAgW1ZpZXdDb250YWluZXJSZWZdLFxuICBbRWxlbWVudFJlZiwgbmV3IE9wdGlvbmFsKCksIG5ldyBTZWxmKCldLFxuICBbVGVtcGxhdGVSZWYsIG5ldyBPcHRpb25hbCgpLCBuZXcgU2VsZigpXSxcbl0pO1xuXG5jb25zdCBkZWNvcmF0ZUNsYXNzID0gKGRpcmVjdGl2ZTogVHlwZTxhbnk+LCBtb2NrOiBUeXBlPGFueT4pOiB2b2lkID0+IHtcbiAgY29uc3QgbWV0YSA9IGNvcmVSZWZsZWN0RGlyZWN0aXZlUmVzb2x2ZShkaXJlY3RpdmUpO1xuICBjb25zdCB7IHNlbGVjdG9yLCBleHBvcnRBcywgaW5wdXRzLCBvdXRwdXRzLCBxdWVyaWVzLCBwcm92aWRlcnMgfSA9IG1ldGE7XG4gIGNvbnN0IG1vY2tNZXRhID0geyBpbnB1dHMsIG91dHB1dHMsIHByb3ZpZGVycywgcXVlcmllcyB9O1xuICBjb25zdCBtb2NrUGFyYW1zID0geyBleHBvcnRBcywgc2VsZWN0b3IgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IGRlY29yYXRlRGVjbGFyYXRpb24oZGlyZWN0aXZlLCBtb2NrLCBtb2NrTWV0YSwgbW9ja1BhcmFtcyk7XG4gIERpcmVjdGl2ZShvcHRpb25zKShtb2NrKTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2NrRGlyZWN0aXZlcyguLi5kaXJlY3RpdmVzOiBBcnJheTxUeXBlPGFueT4+KTogQXJyYXk8VHlwZTxNb2NrZWREaXJlY3RpdmU8YW55Pj4+IHtcbiAgcmV0dXJuIGRpcmVjdGl2ZXMubWFwKE1vY2tEaXJlY3RpdmUpO1xufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrRGlyZWN0aXZlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrRGlyZWN0aXZlPFREaXJlY3RpdmU+KGRpcmVjdGl2ZTogVHlwZTxURGlyZWN0aXZlPik6IFR5cGU8TW9ja2VkRGlyZWN0aXZlPFREaXJlY3RpdmU+PiB7XG4gIGZ1bmNJbXBvcnRFeGlzdHMoZGlyZWN0aXZlLCAnTW9ja0RpcmVjdGl2ZScpO1xuXG4gIC8vIFdlIGFyZSBpbnNpZGUgb2YgYW4gJ2l0Jy5cbiAgLy8gSXQgaXMgZmluZSB0byB0byByZXR1cm4gYSBtb2NrIGNvcHkgb3IgdG8gdGhyb3cgYW4gZXhjZXB0aW9uIGlmIGl0IHdhcyBub3QgcmVwbGFjZWQgd2l0aCBpdHMgbW9jayBjb3B5IGluIFRlc3RCZWQuXG4gIGlmICgoZ2V0VGVzdEJlZCgpIGFzIGFueSkuX2luc3RhbnRpYXRlZCkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gZ2V0TW9ja2VkTmdEZWZPZihkaXJlY3RpdmUsICdkJyk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIGxvb2tzIGxpa2UgYW4gaW4tdGVzdCBtb2NrLlxuICAgIH1cbiAgfVxuICBpZiAobmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnY2FjaGVEaXJlY3RpdmUnKSAmJiBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuaGFzKGRpcmVjdGl2ZSkpIHtcbiAgICByZXR1cm4gbmdNb2Nrc1VuaXZlcnNlLmNhY2hlRGVjbGFyYXRpb25zLmdldChkaXJlY3RpdmUpO1xuICB9XG5cbiAgY29uc3QgbW9jayA9IGV4dGVuZENsYXNzKERpcmVjdGl2ZU1vY2tCYXNlKTtcbiAgZGVjb3JhdGVDbGFzcyhkaXJlY3RpdmUsIG1vY2spO1xuXG4gIC8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlXG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZURpcmVjdGl2ZScpKSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmNhY2hlRGVjbGFyYXRpb25zLnNldChkaXJlY3RpdmUsIG1vY2spO1xuICB9XG5cbiAgcmV0dXJuIG1vY2sgYXMgYW55O1xufVxuIl19 |
@@ -42,2 +42,3 @@ "use strict"; | ||
exports.MockReset = exports.MockInstance = void 0; | ||
var func_import_exists_1 = require("../common/func.import-exists"); | ||
var ng_mocks_universe_1 = require("../common/ng-mocks-universe"); | ||
@@ -147,2 +148,3 @@ var stack = [[]]; | ||
} | ||
func_import_exists_1.default(declaration, 'MockInstance'); | ||
var _a = parseMockInstanceArgs(args), key = _a.key, value = _a.value, accessor = _a.accessor, data = _a.data; | ||
@@ -159,2 +161,2 @@ if (key) { | ||
exports.MockReset = MockReset; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLWluc3RhbmNlL21vY2staW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxpRUFBMEQ7QUFFMUQsSUFBTSxLQUFLLEdBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM1QixJQUFNLFNBQVMsR0FBRztJQUNoQixLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ2pCLENBQUMsQ0FBQztBQUNGLElBQU0sUUFBUSxHQUFHOzs7O1FBQ2YsS0FBMEIsSUFBQSxLQUFBLFNBQUEsS0FBSyxDQUFDLEdBQUcsRUFBRSxJQUFJLDBCQUEwQixDQUFDLEVBQUUsQ0FBQSxnQkFBQSw0QkFBRTtZQUFuRSxJQUFNLFdBQVcsV0FBQTtZQUNwQixZQUFBLDJCQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsMENBQUUsU0FBUywwQ0FBRSxHQUFHLEdBQUc7U0FDbkU7Ozs7Ozs7OztJQUNELHFCQUFxQjtJQUNyQixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ3RCLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDaEI7QUFDSCxDQUFDLENBQUM7QUFFRixJQUFNLGFBQWEsR0FBMkI7SUFDNUMsV0FBVyxFQUFFLFFBQVE7SUFDckIsY0FBYyxFQUFFLFNBQVM7SUFDekIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsV0FBVyxFQUFFLFNBQVM7SUFDdEIsU0FBUyxFQUFFLFFBQVE7SUFDbkIsWUFBWSxFQUFFLFNBQVM7Q0FDeEIsQ0FBQztBQUVGLElBQU0sUUFBUSxHQUEyQjtJQUN2QyxRQUFRLEVBQUU7UUFDUixJQUFNLEdBQUcsR0FBRywyQkFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzVDLE9BQU8sR0FBRyxDQUFDLE1BQU0sRUFBRTtZQUNYLElBQUEsS0FBQSxPQUF3QixHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksMEJBQTBCLENBQUMsRUFBRSxJQUFBLEVBQWpFLFdBQVcsUUFBQSxFQUFFLE1BQU0sUUFBOEMsQ0FBQztZQUN6RSxJQUFNLGNBQWMsR0FBRywyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDO2dCQUNwRSxDQUFDLENBQUMsMkJBQWUsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztnQkFDakQsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNQLDJCQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLHdCQUN6QyxjQUFjLEdBQ2QsTUFBTSxFQUNULENBQUM7U0FDSjtJQUNILENBQUM7SUFDRCxXQUFXLEVBQUU7UUFDWCx3Q0FBd0M7UUFDeEMsK0JBQStCO1FBQy9CLElBQU0sR0FBRyxHQUFHLDJCQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDNUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVCLENBQUM7Q0FDRixDQUFDO0FBRUYsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDO0FBQzNCLElBQU0sT0FBTyxHQUFHLFVBQUMsV0FBZ0IsRUFBRSxNQUFXO0lBQzVDLElBQUksZUFBZSxFQUFFO1FBQ25CLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdkMsZUFBZSxHQUFHLEtBQUssQ0FBQztLQUN6QjtJQUVELDJCQUFlLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDOUQsQ0FBQyxDQUFDO0FBU0YsSUFBTSxxQkFBcUIsR0FBRyxVQUFDLElBQVc7SUFDeEMsSUFBTSxHQUFHLEdBQXFCLEVBQUUsQ0FBQztJQUVqQyxJQUFJLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsRUFBRTtRQUMvQixHQUFHLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQixHQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwQixHQUFHLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN4QjtTQUFNO1FBQ0wsR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDcEI7SUFFRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsQ0FBQztBQUVGLElBQU0sa0JBQWtCLEdBQUcsVUFBSSxXQUEwRCxFQUFFLElBQVU7SUFDbkcsSUFBTSxNQUFNLEdBQUcsT0FBTyxJQUFJLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2xFLElBQU0sY0FBYyxHQUFHLDJCQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7UUFDcEUsQ0FBQyxDQUFDLDJCQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7UUFDakQsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNQLE9BQU8sQ0FBQyxXQUFXLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFFckMsSUFBSSxNQUFNLEVBQUU7UUFDViwyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyx3QkFDekMsY0FBYyxHQUNkLE1BQU0sRUFDVCxDQUFDO0tBQ0o7U0FBTTtRQUNMLDJCQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLHdCQUN6QyxjQUFjLEtBQ2pCLElBQUksRUFBRSxTQUFTLEVBQ2YsU0FBUyxFQUFFLFNBQVMsSUFDcEIsQ0FBQztLQUNKO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsSUFBSSxvQkFBb0IsR0FBRyxJQUFJLENBQUM7QUFDaEMsSUFBTSxrQkFBa0IsR0FBRyxVQUN6QixXQUEwRCxFQUMxRCxJQUFZLEVBQ1osSUFBUyxFQUNULGFBQTZCO0lBRTdCLElBQUksb0JBQW9CLEVBQUU7UUFDeEIsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM1QyxvQkFBb0IsR0FBRyxLQUFLLENBQUM7S0FDOUI7SUFDRCxJQUFNLE1BQU0sR0FBRywyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLDJCQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3RILElBQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO0lBQ3pDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDNUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsMkJBQWUsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN4RCxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFMUMsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUM7QUFtRUYsU0FBZ0IsWUFBWSxDQUFJLFdBQTBEO0lBQUUsY0FBYztTQUFkLFVBQWMsRUFBZCxxQkFBYyxFQUFkLElBQWM7UUFBZCw2QkFBYzs7SUFDbEcsSUFBQSxLQUFpQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsRUFBMUQsR0FBRyxTQUFBLEVBQUUsS0FBSyxXQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsSUFBSSxVQUFnQyxDQUFDO0lBQ25FLElBQUksR0FBRyxFQUFFO1FBQ1AsT0FBTyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztLQUM5RDtJQUVELGtCQUFrQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUN4QyxDQUFDO0FBUEQsb0NBT0M7QUFFRCxTQUFnQixTQUFTO0lBQ3ZCLDJCQUFlLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO0FBQ3pDLENBQUM7QUFGRCw4QkFFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBYnN0cmFjdFR5cGUsIFR5cGUgfSBmcm9tICcuLi9jb21tb24vY29yZS50eXBlcyc7XG5pbXBvcnQgbmdNb2Nrc1VuaXZlcnNlIGZyb20gJy4uL2NvbW1vbi9uZy1tb2Nrcy11bml2ZXJzZSc7XG5cbmNvbnN0IHN0YWNrOiBhbnlbXVtdID0gW1tdXTtcbmNvbnN0IHN0YWNrUHVzaCA9ICgpID0+IHtcbiAgc3RhY2sucHVzaChbXSk7XG59O1xuY29uc3Qgc3RhY2tQb3AgPSAoKSA9PiB7XG4gIGZvciAoY29uc3QgZGVjbGFyYXRpb24gb2Ygc3RhY2sucG9wKCkgfHwgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gW10pIHtcbiAgICBuZ01vY2tzVW5pdmVyc2UuY29uZmlnSW5zdGFuY2UuZ2V0KGRlY2xhcmF0aW9uKT8ub3ZlcmxvYWRzPy5wb3AoKTtcbiAgfVxuICAvLyBpc3RhbmJ1bCBpZ25vcmUgaWZcbiAgaWYgKHN0YWNrLmxlbmd0aCA9PT0gMCkge1xuICAgIHN0YWNrLnB1c2goW10pO1xuICB9XG59O1xuXG5jb25zdCByZXBvcnRlclN0YWNrOiBqYXNtaW5lLkN1c3RvbVJlcG9ydGVyID0ge1xuICBqYXNtaW5lRG9uZTogc3RhY2tQb3AsXG4gIGphc21pbmVTdGFydGVkOiBzdGFja1B1c2gsXG4gIHNwZWNEb25lOiBzdGFja1BvcCxcbiAgc3BlY1N0YXJ0ZWQ6IHN0YWNrUHVzaCxcbiAgc3VpdGVEb25lOiBzdGFja1BvcCxcbiAgc3VpdGVTdGFydGVkOiBzdGFja1B1c2gsXG59O1xuXG5jb25zdCByZXBvcnRlcjogamFzbWluZS5DdXN0b21SZXBvcnRlciA9IHtcbiAgc3BlY0RvbmU6ICgpID0+IHtcbiAgICBjb25zdCBzZXQgPSBuZ01vY2tzVW5pdmVyc2UuZ2V0TG9jYWxNb2NrcygpO1xuICAgIHdoaWxlIChzZXQubGVuZ3RoKSB7XG4gICAgICBjb25zdCBbZGVjbGFyYXRpb24sIGNvbmZpZ10gPSBzZXQucG9wKCkgfHwgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gW107XG4gICAgICBjb25zdCB1bml2ZXJzZUNvbmZpZyA9IG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5oYXMoZGVjbGFyYXRpb24pXG4gICAgICAgID8gbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlLmdldChkZWNsYXJhdGlvbilcbiAgICAgICAgOiB7fTtcbiAgICAgIG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5zZXQoZGVjbGFyYXRpb24sIHtcbiAgICAgICAgLi4udW5pdmVyc2VDb25maWcsXG4gICAgICAgIC4uLmNvbmZpZyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfSxcbiAgc3BlY1N0YXJ0ZWQ6ICgpID0+IHtcbiAgICAvLyBPbiBzdGFydCB3ZSBoYXZlIHRvIGZsdXNoIGFueSBjYWNoZXMsXG4gICAgLy8gdGhleSBhcmUgbm90IGZyb20gdGhpcyBzcGVjLlxuICAgIGNvbnN0IHNldCA9IG5nTW9ja3NVbml2ZXJzZS5nZXRMb2NhbE1vY2tzKCk7XG4gICAgc2V0LnNwbGljZSgwLCBzZXQubGVuZ3RoKTtcbiAgfSxcbn07XG5cbmxldCBpbnN0YWxsUmVwb3J0ZXIgPSB0cnVlO1xuY29uc3QgcmVzdG9yZSA9IChkZWNsYXJhdGlvbjogYW55LCBjb25maWc6IGFueSk6IHZvaWQgPT4ge1xuICBpZiAoaW5zdGFsbFJlcG9ydGVyKSB7XG4gICAgamFzbWluZS5nZXRFbnYoKS5hZGRSZXBvcnRlcihyZXBvcnRlcik7XG4gICAgaW5zdGFsbFJlcG9ydGVyID0gZmFsc2U7XG4gIH1cblxuICBuZ01vY2tzVW5pdmVyc2UuZ2V0TG9jYWxNb2NrcygpLnB1c2goW2RlY2xhcmF0aW9uLCBjb25maWddKTtcbn07XG5cbmludGVyZmFjZSBNb2NrSW5zdGFuY2VBcmdzIHtcbiAgYWNjZXNzb3I/OiAnZ2V0JyB8ICdzZXQnO1xuICBkYXRhPzogYW55O1xuICBrZXk/OiBzdHJpbmc7XG4gIHZhbHVlPzogYW55O1xufVxuXG5jb25zdCBwYXJzZU1vY2tJbnN0YW5jZUFyZ3MgPSAoYXJnczogYW55W10pOiBNb2NrSW5zdGFuY2VBcmdzID0+IHtcbiAgY29uc3Qgc2V0OiBNb2NrSW5zdGFuY2VBcmdzID0ge307XG5cbiAgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJykge1xuICAgIHNldC5rZXkgPSBhcmdzWzBdO1xuICAgIHNldC52YWx1ZSA9IGFyZ3NbMV07XG4gICAgc2V0LmFjY2Vzc29yID0gYXJnc1syXTtcbiAgfSBlbHNlIHtcbiAgICBzZXQuZGF0YSA9IGFyZ3NbMF07XG4gIH1cblxuICByZXR1cm4gc2V0O1xufTtcblxuY29uc3QgbW9ja0luc3RhbmNlQ29uZmlnID0gPFQ+KGRlY2xhcmF0aW9uOiBUeXBlPFQ+IHwgQWJzdHJhY3RUeXBlPFQ+IHwgSW5qZWN0aW9uVG9rZW48VD4sIGRhdGE/OiBhbnkpOiB2b2lkID0+IHtcbiAgY29uc3QgY29uZmlnID0gdHlwZW9mIGRhdGEgPT09ICdmdW5jdGlvbicgPyB7IGluaXQ6IGRhdGEgfSA6IGRhdGE7XG4gIGNvbnN0IHVuaXZlcnNlQ29uZmlnID0gbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlLmhhcyhkZWNsYXJhdGlvbilcbiAgICA/IG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5nZXQoZGVjbGFyYXRpb24pXG4gICAgOiB7fTtcbiAgcmVzdG9yZShkZWNsYXJhdGlvbiwgdW5pdmVyc2VDb25maWcpO1xuXG4gIGlmIChjb25maWcpIHtcbiAgICBuZ01vY2tzVW5pdmVyc2UuY29uZmlnSW5zdGFuY2Uuc2V0KGRlY2xhcmF0aW9uLCB7XG4gICAgICAuLi51bml2ZXJzZUNvbmZpZyxcbiAgICAgIC4uLmNvbmZpZyxcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBuZ01vY2tzVW5pdmVyc2UuY29uZmlnSW5zdGFuY2Uuc2V0KGRlY2xhcmF0aW9uLCB7XG4gICAgICAuLi51bml2ZXJzZUNvbmZpZyxcbiAgICAgIGluaXQ6IHVuZGVmaW5lZCxcbiAgICAgIG92ZXJsb2FkczogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG59O1xuXG5sZXQgaW5zdGFsbFN0YWNrUmVwb3J0ZXIgPSB0cnVlO1xuY29uc3QgbW9ja0luc3RhbmNlTWVtYmVyID0gPFQ+KFxuICBkZWNsYXJhdGlvbjogVHlwZTxUPiB8IEFic3RyYWN0VHlwZTxUPiB8IEluamVjdGlvblRva2VuPFQ+LFxuICBuYW1lOiBzdHJpbmcsXG4gIHN0dWI6IGFueSxcbiAgZW5jYXBzdWxhdGlvbj86ICdnZXQnIHwgJ3NldCcsXG4pID0+IHtcbiAgaWYgKGluc3RhbGxTdGFja1JlcG9ydGVyKSB7XG4gICAgamFzbWluZS5nZXRFbnYoKS5hZGRSZXBvcnRlcihyZXBvcnRlclN0YWNrKTtcbiAgICBpbnN0YWxsU3RhY2tSZXBvcnRlciA9IGZhbHNlO1xuICB9XG4gIGNvbnN0IGNvbmZpZyA9IG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5oYXMoZGVjbGFyYXRpb24pID8gbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlLmdldChkZWNsYXJhdGlvbikgOiB7fTtcbiAgY29uc3Qgb3ZlcmxvYWRzID0gY29uZmlnLm92ZXJsb2FkcyB8fCBbXTtcbiAgb3ZlcmxvYWRzLnB1c2goW25hbWUsIHN0dWIsIGVuY2Fwc3VsYXRpb25dKTtcbiAgY29uZmlnLm92ZXJsb2FkcyA9IG92ZXJsb2FkcztcbiAgbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlLnNldChkZWNsYXJhdGlvbiwgY29uZmlnKTtcbiAgc3RhY2tbc3RhY2subGVuZ3RoIC0gMV0ucHVzaChkZWNsYXJhdGlvbik7XG5cbiAgcmV0dXJuIHN0dWI7XG59O1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9uZ01vY2tzL3N0dWJNZW1iZXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tJbnN0YW5jZTxUIGV4dGVuZHMgb2JqZWN0LCBLIGV4dGVuZHMga2V5b2YgVCwgUyBleHRlbmRzICgpID0+IFRbS10+KFxuICBpbnN0YW5jZTogVHlwZTxUPiB8IEFic3RyYWN0VHlwZTxUPixcbiAgbmFtZTogSyxcbiAgc3R1YjogUyxcbiAgZW5jYXBzdWxhdGlvbjogJ2dldCcsXG4pOiBTO1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9uZ01vY2tzL3N0dWJNZW1iZXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tJbnN0YW5jZTxUIGV4dGVuZHMgb2JqZWN0LCBLIGV4dGVuZHMga2V5b2YgVCwgUyBleHRlbmRzICh2YWx1ZTogVFtLXSkgPT4gdm9pZD4oXG4gIGluc3RhbmNlOiBUeXBlPFQ+IHwgQWJzdHJhY3RUeXBlPFQ+LFxuICBuYW1lOiBLLFxuICBzdHViOiBTLFxuICBlbmNhcHN1bGF0aW9uOiAnc2V0Jyxcbik6IFM7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL25nTW9ja3Mvc3R1Yk1lbWJlclxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja0luc3RhbmNlPFQgZXh0ZW5kcyBvYmplY3QsIEsgZXh0ZW5kcyBrZXlvZiBULCBTIGV4dGVuZHMgVFtLXT4oXG4gIGluc3RhbmNlOiBUeXBlPFQ+IHwgQWJzdHJhY3RUeXBlPFQ+LFxuICBuYW1lOiBLLFxuICBzdHViOiBTLFxuKTogUztcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja0luc3RhbmNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrSW5zdGFuY2U8VD4oXG4gIGRlY2xhcmF0aW9uOiBJbmplY3Rpb25Ub2tlbjxUPixcbiAgaW5pdD86IChpbnN0YW5jZTogVCB8IHVuZGVmaW5lZCwgaW5qZWN0b3I6IEluamVjdG9yIHwgdW5kZWZpbmVkKSA9PiBQYXJ0aWFsPFQ+LFxuKTogdm9pZDtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja0luc3RhbmNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrSW5zdGFuY2U8VD4oXG4gIGRlY2xhcmF0aW9uOiBJbmplY3Rpb25Ub2tlbjxUPixcbiAgY29uZmlnPzoge1xuICAgIGluaXQ/OiAoaW5zdGFuY2U6IFQgfCB1bmRlZmluZWQsIGluamVjdG9yOiBJbmplY3RvciB8IHVuZGVmaW5lZCkgPT4gUGFydGlhbDxUPjtcbiAgfSxcbik6IHZvaWQ7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tJbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja0luc3RhbmNlPFQ+KFxuICBkZWNsYXJhdGlvbjogVHlwZTxUPiB8IEFic3RyYWN0VHlwZTxUPixcbiAgaW5pdD86IChpbnN0YW5jZTogVCwgaW5qZWN0b3I6IEluamVjdG9yIHwgdW5kZWZpbmVkKSA9PiB2b2lkIHwgUGFydGlhbDxUPixcbik6IHZvaWQ7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tJbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja0luc3RhbmNlPFQ+KFxuICBkZWNsYXJhdGlvbjogVHlwZTxUPiB8IEFic3RyYWN0VHlwZTxUPixcbiAgY29uZmlnPzoge1xuICAgIGluaXQ/OiAoaW5zdGFuY2U6IFQsIGluamVjdG9yOiBJbmplY3RvciB8IHVuZGVmaW5lZCkgPT4gdm9pZCB8IFBhcnRpYWw8VD47XG4gIH0sXG4pOiB2b2lkO1xuXG5leHBvcnQgZnVuY3Rpb24gTW9ja0luc3RhbmNlPFQ+KGRlY2xhcmF0aW9uOiBUeXBlPFQ+IHwgQWJzdHJhY3RUeXBlPFQ+IHwgSW5qZWN0aW9uVG9rZW48VD4sIC4uLmFyZ3M6IGFueVtdKSB7XG4gIGNvbnN0IHsga2V5LCB2YWx1ZSwgYWNjZXNzb3IsIGRhdGEgfSA9IHBhcnNlTW9ja0luc3RhbmNlQXJncyhhcmdzKTtcbiAgaWYgKGtleSkge1xuICAgIHJldHVybiBtb2NrSW5zdGFuY2VNZW1iZXIoZGVjbGFyYXRpb24sIGtleSwgdmFsdWUsIGFjY2Vzc29yKTtcbiAgfVxuXG4gIG1vY2tJbnN0YW5jZUNvbmZpZyhkZWNsYXJhdGlvbiwgZGF0YSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2NrUmVzZXQoKSB7XG4gIG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5jbGVhcigpO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLWluc3RhbmNlL21vY2staW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxtRUFBNEQ7QUFDNUQsaUVBQTBEO0FBRTFELElBQU0sS0FBSyxHQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDNUIsSUFBTSxTQUFTLEdBQUc7SUFDaEIsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNqQixDQUFDLENBQUM7QUFDRixJQUFNLFFBQVEsR0FBRzs7OztRQUNmLEtBQTBCLElBQUEsS0FBQSxTQUFBLEtBQUssQ0FBQyxHQUFHLEVBQUUsSUFBSSwwQkFBMEIsQ0FBQyxFQUFFLENBQUEsZ0JBQUEsNEJBQUU7WUFBbkUsSUFBTSxXQUFXLFdBQUE7WUFDcEIsWUFBQSwyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLDBDQUFFLFNBQVMsMENBQUUsR0FBRyxHQUFHO1NBQ25FOzs7Ozs7Ozs7SUFDRCxxQkFBcUI7SUFDckIsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUN0QixLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsSUFBTSxhQUFhLEdBQTJCO0lBQzVDLFdBQVcsRUFBRSxRQUFRO0lBQ3JCLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFdBQVcsRUFBRSxTQUFTO0lBQ3RCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLFlBQVksRUFBRSxTQUFTO0NBQ3hCLENBQUM7QUFFRixJQUFNLFFBQVEsR0FBMkI7SUFDdkMsUUFBUSxFQUFFO1FBQ1IsSUFBTSxHQUFHLEdBQUcsMkJBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUM1QyxPQUFPLEdBQUcsQ0FBQyxNQUFNLEVBQUU7WUFDWCxJQUFBLEtBQUEsT0FBd0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLDBCQUEwQixDQUFDLEVBQUUsSUFBQSxFQUFqRSxXQUFXLFFBQUEsRUFBRSxNQUFNLFFBQThDLENBQUM7WUFDekUsSUFBTSxjQUFjLEdBQUcsMkJBQWUsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztnQkFDcEUsQ0FBQyxDQUFDLDJCQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7Z0JBQ2pELENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDUCwyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyx3QkFDekMsY0FBYyxHQUNkLE1BQU0sRUFDVCxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBQ0QsV0FBVyxFQUFFO1FBQ1gsd0NBQXdDO1FBQ3hDLCtCQUErQjtRQUMvQixJQUFNLEdBQUcsR0FBRywyQkFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzVDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QixDQUFDO0NBQ0YsQ0FBQztBQUVGLElBQUksZUFBZSxHQUFHLElBQUksQ0FBQztBQUMzQixJQUFNLE9BQU8sR0FBRyxVQUFDLFdBQWdCLEVBQUUsTUFBVztJQUM1QyxJQUFJLGVBQWUsRUFBRTtRQUNuQixPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZDLGVBQWUsR0FBRyxLQUFLLENBQUM7S0FDekI7SUFFRCwyQkFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQzlELENBQUMsQ0FBQztBQVNGLElBQU0scUJBQXFCLEdBQUcsVUFBQyxJQUFXO0lBQ3hDLElBQU0sR0FBRyxHQUFxQixFQUFFLENBQUM7SUFFakMsSUFBSSxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLEVBQUU7UUFDL0IsR0FBRyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEIsR0FBRyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsR0FBRyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDeEI7U0FBTTtRQUNMLEdBQUcsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3BCO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLENBQUM7QUFFRixJQUFNLGtCQUFrQixHQUFHLFVBQUksV0FBMEQsRUFBRSxJQUFVO0lBQ25HLElBQU0sTUFBTSxHQUFHLE9BQU8sSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNsRSxJQUFNLGNBQWMsR0FBRywyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDO1FBQ3BFLENBQUMsQ0FBQywyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDUCxPQUFPLENBQUMsV0FBVyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBRXJDLElBQUksTUFBTSxFQUFFO1FBQ1YsMkJBQWUsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFdBQVcsd0JBQ3pDLGNBQWMsR0FDZCxNQUFNLEVBQ1QsQ0FBQztLQUNKO1NBQU07UUFDTCwyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyx3QkFDekMsY0FBYyxLQUNqQixJQUFJLEVBQUUsU0FBUyxFQUNmLFNBQVMsRUFBRSxTQUFTLElBQ3BCLENBQUM7S0FDSjtBQUNILENBQUMsQ0FBQztBQUVGLElBQUksb0JBQW9CLEdBQUcsSUFBSSxDQUFDO0FBQ2hDLElBQU0sa0JBQWtCLEdBQUcsVUFDekIsV0FBMEQsRUFDMUQsSUFBWSxFQUNaLElBQVMsRUFDVCxhQUE2QjtJQUU3QixJQUFJLG9CQUFvQixFQUFFO1FBQ3hCLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0tBQzlCO0lBQ0QsSUFBTSxNQUFNLEdBQUcsMkJBQWUsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQywyQkFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN0SCxJQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztJQUN6QyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLDJCQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDeEQsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRTFDLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBbUVGLFNBQWdCLFlBQVksQ0FBSSxXQUEwRDtJQUFFLGNBQWM7U0FBZCxVQUFjLEVBQWQscUJBQWMsRUFBZCxJQUFjO1FBQWQsNkJBQWM7O0lBQ3hHLDRCQUFnQixDQUFDLFdBQVcsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUV4QyxJQUFBLEtBQWlDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxFQUExRCxHQUFHLFNBQUEsRUFBRSxLQUFLLFdBQUEsRUFBRSxRQUFRLGNBQUEsRUFBRSxJQUFJLFVBQWdDLENBQUM7SUFDbkUsSUFBSSxHQUFHLEVBQUU7UUFDUCxPQUFPLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0tBQzlEO0lBRUQsa0JBQWtCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFURCxvQ0FTQztBQUVELFNBQWdCLFNBQVM7SUFDdkIsMkJBQWUsQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDekMsQ0FBQztBQUZELDhCQUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFic3RyYWN0VHlwZSwgVHlwZSB9IGZyb20gJy4uL2NvbW1vbi9jb3JlLnR5cGVzJztcbmltcG9ydCBmdW5jSW1wb3J0RXhpc3RzIGZyb20gJy4uL2NvbW1vbi9mdW5jLmltcG9ydC1leGlzdHMnO1xuaW1wb3J0IG5nTW9ja3NVbml2ZXJzZSBmcm9tICcuLi9jb21tb24vbmctbW9ja3MtdW5pdmVyc2UnO1xuXG5jb25zdCBzdGFjazogYW55W11bXSA9IFtbXV07XG5jb25zdCBzdGFja1B1c2ggPSAoKSA9PiB7XG4gIHN0YWNrLnB1c2goW10pO1xufTtcbmNvbnN0IHN0YWNrUG9wID0gKCkgPT4ge1xuICBmb3IgKGNvbnN0IGRlY2xhcmF0aW9uIG9mIHN0YWNrLnBvcCgpIHx8IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovIFtdKSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlLmdldChkZWNsYXJhdGlvbik/Lm92ZXJsb2Fkcz8ucG9wKCk7XG4gIH1cbiAgLy8gaXN0YW5idWwgaWdub3JlIGlmXG4gIGlmIChzdGFjay5sZW5ndGggPT09IDApIHtcbiAgICBzdGFjay5wdXNoKFtdKTtcbiAgfVxufTtcblxuY29uc3QgcmVwb3J0ZXJTdGFjazogamFzbWluZS5DdXN0b21SZXBvcnRlciA9IHtcbiAgamFzbWluZURvbmU6IHN0YWNrUG9wLFxuICBqYXNtaW5lU3RhcnRlZDogc3RhY2tQdXNoLFxuICBzcGVjRG9uZTogc3RhY2tQb3AsXG4gIHNwZWNTdGFydGVkOiBzdGFja1B1c2gsXG4gIHN1aXRlRG9uZTogc3RhY2tQb3AsXG4gIHN1aXRlU3RhcnRlZDogc3RhY2tQdXNoLFxufTtcblxuY29uc3QgcmVwb3J0ZXI6IGphc21pbmUuQ3VzdG9tUmVwb3J0ZXIgPSB7XG4gIHNwZWNEb25lOiAoKSA9PiB7XG4gICAgY29uc3Qgc2V0ID0gbmdNb2Nrc1VuaXZlcnNlLmdldExvY2FsTW9ja3MoKTtcbiAgICB3aGlsZSAoc2V0Lmxlbmd0aCkge1xuICAgICAgY29uc3QgW2RlY2xhcmF0aW9uLCBjb25maWddID0gc2V0LnBvcCgpIHx8IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovIFtdO1xuICAgICAgY29uc3QgdW5pdmVyc2VDb25maWcgPSBuZ01vY2tzVW5pdmVyc2UuY29uZmlnSW5zdGFuY2UuaGFzKGRlY2xhcmF0aW9uKVxuICAgICAgICA/IG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5nZXQoZGVjbGFyYXRpb24pXG4gICAgICAgIDoge307XG4gICAgICBuZ01vY2tzVW5pdmVyc2UuY29uZmlnSW5zdGFuY2Uuc2V0KGRlY2xhcmF0aW9uLCB7XG4gICAgICAgIC4uLnVuaXZlcnNlQ29uZmlnLFxuICAgICAgICAuLi5jb25maWcsXG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG4gIHNwZWNTdGFydGVkOiAoKSA9PiB7XG4gICAgLy8gT24gc3RhcnQgd2UgaGF2ZSB0byBmbHVzaCBhbnkgY2FjaGVzLFxuICAgIC8vIHRoZXkgYXJlIG5vdCBmcm9tIHRoaXMgc3BlYy5cbiAgICBjb25zdCBzZXQgPSBuZ01vY2tzVW5pdmVyc2UuZ2V0TG9jYWxNb2NrcygpO1xuICAgIHNldC5zcGxpY2UoMCwgc2V0Lmxlbmd0aCk7XG4gIH0sXG59O1xuXG5sZXQgaW5zdGFsbFJlcG9ydGVyID0gdHJ1ZTtcbmNvbnN0IHJlc3RvcmUgPSAoZGVjbGFyYXRpb246IGFueSwgY29uZmlnOiBhbnkpOiB2b2lkID0+IHtcbiAgaWYgKGluc3RhbGxSZXBvcnRlcikge1xuICAgIGphc21pbmUuZ2V0RW52KCkuYWRkUmVwb3J0ZXIocmVwb3J0ZXIpO1xuICAgIGluc3RhbGxSZXBvcnRlciA9IGZhbHNlO1xuICB9XG5cbiAgbmdNb2Nrc1VuaXZlcnNlLmdldExvY2FsTW9ja3MoKS5wdXNoKFtkZWNsYXJhdGlvbiwgY29uZmlnXSk7XG59O1xuXG5pbnRlcmZhY2UgTW9ja0luc3RhbmNlQXJncyB7XG4gIGFjY2Vzc29yPzogJ2dldCcgfCAnc2V0JztcbiAgZGF0YT86IGFueTtcbiAga2V5Pzogc3RyaW5nO1xuICB2YWx1ZT86IGFueTtcbn1cblxuY29uc3QgcGFyc2VNb2NrSW5zdGFuY2VBcmdzID0gKGFyZ3M6IGFueVtdKTogTW9ja0luc3RhbmNlQXJncyA9PiB7XG4gIGNvbnN0IHNldDogTW9ja0luc3RhbmNlQXJncyA9IHt9O1xuXG4gIGlmICh0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycpIHtcbiAgICBzZXQua2V5ID0gYXJnc1swXTtcbiAgICBzZXQudmFsdWUgPSBhcmdzWzFdO1xuICAgIHNldC5hY2Nlc3NvciA9IGFyZ3NbMl07XG4gIH0gZWxzZSB7XG4gICAgc2V0LmRhdGEgPSBhcmdzWzBdO1xuICB9XG5cbiAgcmV0dXJuIHNldDtcbn07XG5cbmNvbnN0IG1vY2tJbnN0YW5jZUNvbmZpZyA9IDxUPihkZWNsYXJhdGlvbjogVHlwZTxUPiB8IEFic3RyYWN0VHlwZTxUPiB8IEluamVjdGlvblRva2VuPFQ+LCBkYXRhPzogYW55KTogdm9pZCA9PiB7XG4gIGNvbnN0IGNvbmZpZyA9IHR5cGVvZiBkYXRhID09PSAnZnVuY3Rpb24nID8geyBpbml0OiBkYXRhIH0gOiBkYXRhO1xuICBjb25zdCB1bml2ZXJzZUNvbmZpZyA9IG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5oYXMoZGVjbGFyYXRpb24pXG4gICAgPyBuZ01vY2tzVW5pdmVyc2UuY29uZmlnSW5zdGFuY2UuZ2V0KGRlY2xhcmF0aW9uKVxuICAgIDoge307XG4gIHJlc3RvcmUoZGVjbGFyYXRpb24sIHVuaXZlcnNlQ29uZmlnKTtcblxuICBpZiAoY29uZmlnKSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlLnNldChkZWNsYXJhdGlvbiwge1xuICAgICAgLi4udW5pdmVyc2VDb25maWcsXG4gICAgICAuLi5jb25maWcsXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlLnNldChkZWNsYXJhdGlvbiwge1xuICAgICAgLi4udW5pdmVyc2VDb25maWcsXG4gICAgICBpbml0OiB1bmRlZmluZWQsXG4gICAgICBvdmVybG9hZHM6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxufTtcblxubGV0IGluc3RhbGxTdGFja1JlcG9ydGVyID0gdHJ1ZTtcbmNvbnN0IG1vY2tJbnN0YW5jZU1lbWJlciA9IDxUPihcbiAgZGVjbGFyYXRpb246IFR5cGU8VD4gfCBBYnN0cmFjdFR5cGU8VD4gfCBJbmplY3Rpb25Ub2tlbjxUPixcbiAgbmFtZTogc3RyaW5nLFxuICBzdHViOiBhbnksXG4gIGVuY2Fwc3VsYXRpb24/OiAnZ2V0JyB8ICdzZXQnLFxuKSA9PiB7XG4gIGlmIChpbnN0YWxsU3RhY2tSZXBvcnRlcikge1xuICAgIGphc21pbmUuZ2V0RW52KCkuYWRkUmVwb3J0ZXIocmVwb3J0ZXJTdGFjayk7XG4gICAgaW5zdGFsbFN0YWNrUmVwb3J0ZXIgPSBmYWxzZTtcbiAgfVxuICBjb25zdCBjb25maWcgPSBuZ01vY2tzVW5pdmVyc2UuY29uZmlnSW5zdGFuY2UuaGFzKGRlY2xhcmF0aW9uKSA/IG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5nZXQoZGVjbGFyYXRpb24pIDoge307XG4gIGNvbnN0IG92ZXJsb2FkcyA9IGNvbmZpZy5vdmVybG9hZHMgfHwgW107XG4gIG92ZXJsb2Fkcy5wdXNoKFtuYW1lLCBzdHViLCBlbmNhcHN1bGF0aW9uXSk7XG4gIGNvbmZpZy5vdmVybG9hZHMgPSBvdmVybG9hZHM7XG4gIG5nTW9ja3NVbml2ZXJzZS5jb25maWdJbnN0YW5jZS5zZXQoZGVjbGFyYXRpb24sIGNvbmZpZyk7XG4gIHN0YWNrW3N0YWNrLmxlbmd0aCAtIDFdLnB1c2goZGVjbGFyYXRpb24pO1xuXG4gIHJldHVybiBzdHViO1xufTtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvbmdNb2Nrcy9zdHViTWVtYmVyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrSW5zdGFuY2U8VCBleHRlbmRzIG9iamVjdCwgSyBleHRlbmRzIGtleW9mIFQsIFMgZXh0ZW5kcyAoKSA9PiBUW0tdPihcbiAgaW5zdGFuY2U6IFR5cGU8VD4gfCBBYnN0cmFjdFR5cGU8VD4sXG4gIG5hbWU6IEssXG4gIHN0dWI6IFMsXG4gIGVuY2Fwc3VsYXRpb246ICdnZXQnLFxuKTogUztcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvbmdNb2Nrcy9zdHViTWVtYmVyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrSW5zdGFuY2U8VCBleHRlbmRzIG9iamVjdCwgSyBleHRlbmRzIGtleW9mIFQsIFMgZXh0ZW5kcyAodmFsdWU6IFRbS10pID0+IHZvaWQ+KFxuICBpbnN0YW5jZTogVHlwZTxUPiB8IEFic3RyYWN0VHlwZTxUPixcbiAgbmFtZTogSyxcbiAgc3R1YjogUyxcbiAgZW5jYXBzdWxhdGlvbjogJ3NldCcsXG4pOiBTO1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9uZ01vY2tzL3N0dWJNZW1iZXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tJbnN0YW5jZTxUIGV4dGVuZHMgb2JqZWN0LCBLIGV4dGVuZHMga2V5b2YgVCwgUyBleHRlbmRzIFRbS10+KFxuICBpbnN0YW5jZTogVHlwZTxUPiB8IEFic3RyYWN0VHlwZTxUPixcbiAgbmFtZTogSyxcbiAgc3R1YjogUyxcbik6IFM7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tJbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja0luc3RhbmNlPFQ+KFxuICBkZWNsYXJhdGlvbjogSW5qZWN0aW9uVG9rZW48VD4sXG4gIGluaXQ/OiAoaW5zdGFuY2U6IFQgfCB1bmRlZmluZWQsIGluamVjdG9yOiBJbmplY3RvciB8IHVuZGVmaW5lZCkgPT4gUGFydGlhbDxUPixcbik6IHZvaWQ7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tJbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja0luc3RhbmNlPFQ+KFxuICBkZWNsYXJhdGlvbjogSW5qZWN0aW9uVG9rZW48VD4sXG4gIGNvbmZpZz86IHtcbiAgICBpbml0PzogKGluc3RhbmNlOiBUIHwgdW5kZWZpbmVkLCBpbmplY3RvcjogSW5qZWN0b3IgfCB1bmRlZmluZWQpID0+IFBhcnRpYWw8VD47XG4gIH0sXG4pOiB2b2lkO1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrSW5zdGFuY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tJbnN0YW5jZTxUPihcbiAgZGVjbGFyYXRpb246IFR5cGU8VD4gfCBBYnN0cmFjdFR5cGU8VD4sXG4gIGluaXQ/OiAoaW5zdGFuY2U6IFQsIGluamVjdG9yOiBJbmplY3RvciB8IHVuZGVmaW5lZCkgPT4gdm9pZCB8IFBhcnRpYWw8VD4sXG4pOiB2b2lkO1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrSW5zdGFuY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tJbnN0YW5jZTxUPihcbiAgZGVjbGFyYXRpb246IFR5cGU8VD4gfCBBYnN0cmFjdFR5cGU8VD4sXG4gIGNvbmZpZz86IHtcbiAgICBpbml0PzogKGluc3RhbmNlOiBULCBpbmplY3RvcjogSW5qZWN0b3IgfCB1bmRlZmluZWQpID0+IHZvaWQgfCBQYXJ0aWFsPFQ+O1xuICB9LFxuKTogdm9pZDtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vY2tJbnN0YW5jZTxUPihkZWNsYXJhdGlvbjogVHlwZTxUPiB8IEFic3RyYWN0VHlwZTxUPiB8IEluamVjdGlvblRva2VuPFQ+LCAuLi5hcmdzOiBhbnlbXSkge1xuICBmdW5jSW1wb3J0RXhpc3RzKGRlY2xhcmF0aW9uLCAnTW9ja0luc3RhbmNlJyk7XG5cbiAgY29uc3QgeyBrZXksIHZhbHVlLCBhY2Nlc3NvciwgZGF0YSB9ID0gcGFyc2VNb2NrSW5zdGFuY2VBcmdzKGFyZ3MpO1xuICBpZiAoa2V5KSB7XG4gICAgcmV0dXJuIG1vY2tJbnN0YW5jZU1lbWJlcihkZWNsYXJhdGlvbiwga2V5LCB2YWx1ZSwgYWNjZXNzb3IpO1xuICB9XG5cbiAgbW9ja0luc3RhbmNlQ29uZmlnKGRlY2xhcmF0aW9uLCBkYXRhKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIE1vY2tSZXNldCgpIHtcbiAgbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlLmNsZWFyKCk7XG59XG4iXX0= |
@@ -38,2 +38,3 @@ "use strict"; | ||
var func_get_mocked_ng_def_of_1 = require("../common/func.get-mocked-ng-def-of"); | ||
var func_import_exists_1 = require("../common/func.import-exists"); | ||
var func_is_ng_def_1 = require("../common/func.is-ng-def"); | ||
@@ -142,2 +143,3 @@ var func_is_ng_module_def_with_providers_1 = require("../common/func.is-ng-module-def-with-providers"); | ||
var _a; | ||
func_import_exists_1.default(module, 'MockModule'); | ||
var _b = extractModuleAndProviders(module), ngModule = _b.ngModule, ngModuleProviders = _b.ngModuleProviders; | ||
@@ -167,2 +169,2 @@ // We are inside of an 'it'. It is fine to to return a mock copy. | ||
exports.MockModule = MockModule; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1tb2R1bGUvbW9jay1tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBQW1EO0FBQ25ELGlEQUFtRDtBQUVuRCxxREFBK0M7QUFDL0MsdURBQXFEO0FBQ3JELHFGQUE2RTtBQUU3RSx5REFBbUQ7QUFDbkQsaUZBQXVFO0FBQ3ZFLDJEQUFtRDtBQUNuRCx1R0FBbUg7QUFDbkgsdUNBQXNDO0FBQ3RDLGlFQUEwRDtBQUUxRCw2Q0FBc0M7QUFFdEMsSUFBTSxRQUFRLEdBQUcsVUFBQyxVQUFtQixJQUFjLE9BQUEsVUFBVSxLQUFLLE1BQU0sSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQTlELENBQThELENBQUM7QUFFbEgsSUFBTSxRQUFRLEdBQUcsVUFBQyxVQUFtQixJQUFjLE9BQUEsVUFBVSxLQUFLLE1BQU0sSUFBSSxDQUFDLDJCQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBL0QsQ0FBK0QsQ0FBQztBQUVuSCxJQUFNLFdBQVcsR0FBRyxVQUFDLFVBQW1CO0lBQ3RDLE9BQUEsVUFBVSxLQUFLLFNBQVMsSUFBSSxDQUFDLDJCQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7QUFBbEUsQ0FBa0UsQ0FBQztBQUVyRSxJQUFNLFNBQVMsR0FBRyxVQUFDLFFBQWM7SUFDL0IsT0FBQSxxQkFBVSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQywyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO0FBQTdGLENBQTZGLENBQUM7QUFFaEcsSUFBTSxvQkFBb0IsR0FB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QUFVLEVBQUU7S0FDaEU7SUFDRCxJQUFNLG1CQUFtQixHQUFHLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDaEUscUJBQXFCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUUxQyxPQUFPLGNBQWMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0FBQzlGLENBQUM7QUF4QkQsZ0NBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRUZXN0QmVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IGNvcmVDb25maWcgZnJvbSAnLi4vY29tbW9uL2NvcmUuY29uZmlnJztcbmltcG9ydCB7IGV4dGVuZENsYXNzIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUuaGVscGVycyc7XG5pbXBvcnQgY29yZVJlZmxlY3RNb2R1bGVSZXNvbHZlIGZyb20gJy4uL2NvbW1vbi9jb3JlLnJlZmxlY3QubW9kdWxlLXJlc29sdmUnO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJy4uL2NvbW1vbi9jb3JlLnR5cGVzJztcbmltcG9ydCBkZWNvcmF0ZU1vY2sgZnJvbSAnLi4vY29tbW9uL2RlY29yYXRlLm1vY2snO1xuaW1wb3J0IHsgZ2V0TW9ja2VkTmdEZWZPZiB9IGZyb20gJy4uL2NvbW1vbi9mdW5jLmdldC1tb2NrZWQtbmctZGVmLW9mJztcbmltcG9ydCB7IGlzTmdEZWYgfSBmcm9tICcuLi9jb21tb24vZnVuYy5pcy1uZy1kZWYnO1xuaW1wb3J0IHsgaXNOZ01vZHVsZURlZldpdGhQcm92aWRlcnMsIE5nTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJy4uL2NvbW1vbi9mdW5jLmlzLW5nLW1vZHVsZS1kZWYtd2l0aC1wcm92aWRlcnMnO1xuaW1wb3J0IHsgTW9jayB9IGZyb20gJy4uL2NvbW1vbi9tb2NrJztcbmltcG9ydCBuZ01vY2tzVW5pdmVyc2UgZnJvbSAnLi4vY29tbW9uL25nLW1vY2tzLXVuaXZlcnNlJztcblxuaW1wb3J0IG1vY2tOZ0RlZiBmcm9tICcuL21vY2stbmctZGVmJztcblxuY29uc3QgZmxhZ01vY2sgPSAocmVzb2x1dGlvbj86IHN0cmluZyk6IGJvb2xlYW4gPT4gcmVzb2x1dGlvbiA9PT0gJ21vY2snICYmIG5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ3NraXBNb2NrJyk7XG5cbmNvbnN0IGZsYWdLZWVwID0gKHJlc29sdXRpb24/OiBzdHJpbmcpOiBib29sZWFuID0+IHJlc29sdXRpb24gPT09ICdrZWVwJyAmJiAhbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnc2tpcE1vY2snKTtcblxuY29uc3QgZmxhZ1JlcGxhY2UgPSAocmVzb2x1dGlvbj86IHN0cmluZyk6IGJvb2xlYW4gPT5cbiAgcmVzb2x1dGlvbiA9PT0gJ3JlcGxhY2UnICYmICFuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdza2lwTW9jaycpO1xuXG5jb25zdCBmbGFnTmV2ZXIgPSAobmdNb2R1bGU/OiBhbnkpOiBib29sZWFuID0+XG4gIGNvcmVDb25maWcubmV2ZXJNb2NrTW9kdWxlLmluZGV4T2YobmdNb2R1bGUpICE9PSAtMSAmJiAhbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnc2tpcE1vY2snKTtcblxuY29uc3QgcHJlcHJvY2Vzc1RvZ2dsZUZsYWcgPSAobmdNb2R1bGU6IFR5cGU8YW55Pik6IGJvb2xlYW4gPT4ge1xuICBsZXQgdG9nZ2xlU2tpcE1vY2tGbGFnID0gZmFsc2U7XG5cbiAgY29uc3QgcmVzb2x1dGlvbiA9IG5nTW9ja3NVbml2ZXJzZS5nZXRSZXNvbHV0aW9uKG5nTW9kdWxlKTtcbiAgaWYgKGZsYWdNb2NrKHJlc29sdXRpb24pKSB7XG4gICAgdG9nZ2xlU2tpcE1vY2tGbGFnID0gdHJ1ZTtcbiAgICBuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuZGVsZXRlKCdza2lwTW9jaycpO1xuICB9XG4gIGlmIChmbGFnS2VlcChyZXNvbHV0aW9uKSB8fCBmbGFnUmVwbGFjZShyZXNvbHV0aW9uKSB8fCBmbGFnTmV2ZXIobmdNb2R1bGUpKSB7XG4gICAgdG9nZ2xlU2tpcE1vY2tGbGFnID0gdHJ1ZTtcbiAgICBuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuYWRkKCdza2lwTW9jaycpO1xuICB9XG5cbiAgcmV0dXJuIHRvZ2dsZVNraXBNb2NrRmxhZztcbn07XG5cbmNvbnN0IHBvc3Rwcm9jZXNzVG9nZ2xlRmxhZyA9ICh0b2dnbGVTa2lwTW9ja0ZsYWc6IGJvb2xlYW4pOiB2b2lkID0+IHtcbiAgaWYgKHRvZ2dsZVNraXBNb2NrRmxhZyAmJiBuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdza2lwTW9jaycpKSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmRlbGV0ZSgnc2tpcE1vY2snKTtcbiAgfSBlbHNlIGlmICh0b2dnbGVTa2lwTW9ja0ZsYWcgJiYgIW5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ3NraXBNb2NrJykpIHtcbiAgICBuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuYWRkKCdza2lwTW9jaycpO1xuICB9XG59O1xuXG5jb25zdCBleHRyYWN0TW9kdWxlQW5kUHJvdmlkZXJzID0gKFxuICBtb2R1bGU6IGFueSxcbik6IHtcbiAgbmdNb2R1bGU6IFR5cGU8YW55PjtcbiAgbmdNb2R1bGVQcm92aWRlcnM6IFByb3ZpZGVyW10gfCB1bmRlZmluZWQ7XG59ID0+IHtcbiAgbGV0IG5nTW9kdWxlOiBUeXBlPGFueT47XG4gIGxldCBuZ01vZHVsZVByb3ZpZGVyczogUHJvdmlkZXJbXSB8IHVuZGVmaW5lZDtcblxuICBpZiAoaXNOZ01vZHVsZURlZldpdGhQcm92aWRlcnMobW9kdWxlKSkge1xuICAgIG5nTW9kdWxlID0gbW9kdWxlLm5nTW9kdWxlO1xuICAgIGlmIChtb2R1bGUucHJvdmlkZXJzKSB7XG4gICAgICBuZ01vZHVsZVByb3ZpZGVycyA9IG1vZHVsZS5wcm92aWRlcnM7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIG5nTW9kdWxlID0gbW9kdWxlO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBuZ01vZHVsZSxcbiAgICBuZ01vZHVsZVByb3ZpZGVycyxcbiAgfTtcbn07XG5cbmNvbnN0IGdldEV4aXN0aW5nTW9ja01vZHVsZSA9IChuZ01vZHVsZTogVHlwZTxhbnk+KTogVHlwZTxhbnk+IHwgdW5kZWZpbmVkID0+IHtcbiAgLy8gRXZlcnkgbW9kdWxlIHNob3VsZCBiZSByZXBsYWNlZCB3aXRoIGl0cyBtb2NrIGNvcHkgb25seSBvbmNlIHRvIGF2b2lkIGVycm9ycyBsaWtlOlxuICAvLyBGYWlsZWQ6IFR5cGUgLi4uQ29tcG9uZW50IGlzIHBhcnQgb2YgdGhlIGRlY2xhcmF0aW9ucyBvZiAyIG1vZHVsZXM6IC4uLk1vZHVsZSBhbmQgLi4uTW9kdWxlLi4uXG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZU1vZHVsZScpICYmIG5nTW9ja3NVbml2ZXJzZS5jYWNoZURlY2xhcmF0aW9ucy5oYXMobmdNb2R1bGUpKSB7XG4gICAgcmV0dXJuIG5nTW9ja3NVbml2ZXJzZS5jYWNoZURlY2xhcmF0aW9ucy5nZXQobmdNb2R1bGUpO1xuICB9XG5cbiAgLy8gTm93IHdlIGNoZWNrIGlmIHdlIG5lZWQgdG8ga2VlcCB0aGUgb3JpZ2luYWwgbW9kdWxlIG9yIHRvIHJlcGxhY2UgaXQgd2l0aCBzb21lIG90aGVyLlxuICBpZiAobmdNb2Nrc1VuaXZlcnNlLmhhc0J1aWxkRGVjbGFyYXRpb24obmdNb2R1bGUpKSB7XG4gICAgY29uc3QgaW5zdGFuY2UgPSBuZ01vY2tzVW5pdmVyc2UuZ2V0QnVpbGREZWNsYXJhdGlvbihuZ01vZHVsZSk7XG4gICAgaWYgKGlzTmdEZWYoaW5zdGFuY2UsICdtJykgJiYgaW5zdGFuY2UgIT09IG5nTW9kdWxlKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2U7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn07XG5cbmNvbnN0IGdldE1vY2tNb2R1bGVEZWYgPSAobmdNb2R1bGU6IFR5cGU8YW55PiwgbW9ja01vZHVsZT86IFR5cGU8YW55Pik6IE5nTW9kdWxlIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKCFtb2NrTW9kdWxlKSB7XG4gICAgY29uc3QgbWV0YSA9IGNvcmVSZWZsZWN0TW9kdWxlUmVzb2x2ZShuZ01vZHVsZSk7XG4gICAgY29uc3QgW2NoYW5nZWQsIG5nTW9kdWxlRGVmXSA9IG1vY2tOZ0RlZihtZXRhLCBuZ01vZHVsZSk7XG4gICAgaWYgKGNoYW5nZWQpIHtcbiAgICAgIHJldHVybiBuZ01vZHVsZURlZjtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdW5kZWZpbmVkO1xufTtcblxuY29uc3QgZGV0ZWN0TW9ja01vZHVsZSA9IChuZ01vZHVsZTogVHlwZTxhbnk+LCBtb2NrTW9kdWxlPzogVHlwZTxhbnk+KTogVHlwZTxhbnk+ID0+IHtcbiAgY29uc3QgbW9ja01vZHVsZURlZiA9IGdldE1vY2tNb2R1bGVEZWYobmdNb2R1bGUsIG1vY2tNb2R1bGUpO1xuXG4gIGlmIChtb2NrTW9kdWxlRGVmKSB7XG4gICAgY29uc3QgcGFyZW50ID0gbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnc2tpcE1vY2snKSA/IG5nTW9kdWxlIDogTW9jaztcbiAgICBjb25zdCBtb2NrID0gZXh0ZW5kQ2xhc3MocGFyZW50KTtcblxuICAgIC8vIHRoZSBsYXN0IHRoaW5nIGlzIHRvIGFwcGx5IGRlY29yYXRvcnMuXG4gICAgTmdNb2R1bGUobW9ja01vZHVsZURlZikobW9jayk7XG4gICAgZGVjb3JhdGVNb2NrKG1vY2ssIG5nTW9kdWxlKTtcblxuICAgIHJldHVybiBtb2NrO1xuICB9XG5cbiAgcmV0dXJuIG1vY2tNb2R1bGUgfHwgbmdNb2R1bGU7XG59O1xuXG5jb25zdCBnZXRNb2NrUHJvdmlkZXJzID0gKG5nTW9kdWxlUHJvdmlkZXJzOiBQcm92aWRlcltdIHwgdW5kZWZpbmVkKTogUHJvdmlkZXJbXSB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChuZ01vZHVsZVByb3ZpZGVycykge1xuICAgIGNvbnN0IFtjaGFuZ2VkLCBuZ01vZHVsZURlZl0gPSBtb2NrTmdEZWYoeyBwcm92aWRlcnM6IG5nTW9kdWxlUHJvdmlkZXJzIH0pO1xuXG4gICAgcmV0dXJuIGNoYW5nZWQgPyBuZ01vZHVsZURlZi5wcm92aWRlcnMgOiBuZ01vZHVsZVByb3ZpZGVycztcbiAgfVxuXG4gIHJldHVybiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZW5lcmF0ZVJldHVybiA9IChcbiAgbW9kdWxlOiBhbnksXG4gIG5nTW9kdWxlOiBUeXBlPGFueT4sXG4gIG5nTW9kdWxlUHJvdmlkZXJzOiBQcm92aWRlcltdIHwgdW5kZWZpbmVkLFxuICBtb2NrTW9kdWxlOiBUeXBlPGFueT4sXG4gIG1vY2tNb2R1bGVQcm92aWRlcnM6IFByb3ZpZGVyW10gfCB1bmRlZmluZWQsXG4pOiBhbnkgPT5cbiAgbW9ja01vZHVsZSA9PT0gbmdNb2R1bGUgJiYgbW9ja01vZHVsZVByb3ZpZGVycyA9PT0gbmdNb2R1bGVQcm92aWRlcnNcbiAgICA/IG1vZHVsZVxuICAgIDogaXNOZ01vZHVsZURlZldpdGhQcm92aWRlcnMobW9kdWxlKVxuICAgID8geyBuZ01vZHVsZTogbW9ja01vZHVsZSwgLi4uKG1vY2tNb2R1bGVQcm92aWRlcnMgPyB7IHByb3ZpZGVyczogbW9ja01vZHVsZVByb3ZpZGVycyB9IDoge30pIH1cbiAgICA6IG1vY2tNb2R1bGU7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tNb2R1bGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tNb2R1bGU8VD4obW9kdWxlOiBUeXBlPFQ+KTogVHlwZTxUPjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja01vZHVsZVxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja01vZHVsZTxUPihtb2R1bGU6IE5nTW9kdWxlV2l0aFByb3ZpZGVyczxUPik6IE5nTW9kdWxlV2l0aFByb3ZpZGVyczxUPjtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vY2tNb2R1bGUobW9kdWxlOiBhbnkpOiBhbnkge1xuICBjb25zdCB7IG5nTW9kdWxlLCBuZ01vZHVsZVByb3ZpZGVycyB9ID0gZXh0cmFjdE1vZHVsZUFuZFByb3ZpZGVycyhtb2R1bGUpO1xuXG4gIC8vIFdlIGFyZSBpbnNpZGUgb2YgYW4gJ2l0Jy4gSXQgaXMgZmluZSB0byB0byByZXR1cm4gYSBtb2NrIGNvcHkuXG4gIGlmICghbmdNb2R1bGVQcm92aWRlcnMgJiYgKGdldFRlc3RCZWQoKSBhcyBhbnkpLl9pbnN0YW50aWF0ZWQpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGdldE1vY2tlZE5nRGVmT2YobmdNb2R1bGUsICdtJyk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIGxvb2tzIGxpa2UgYW4gaW4tdGVzdCBtb2NrLlxuICAgIH1cbiAgfVxuICBjb25zdCB0b2dnbGVTa2lwTW9ja0ZsYWcgPSBwcmVwcm9jZXNzVG9nZ2xlRmxhZyhuZ01vZHVsZSk7XG4gIGNvbnN0IG1vY2tNb2R1bGUgPSBkZXRlY3RNb2NrTW9kdWxlKG5nTW9kdWxlLCBnZXRFeGlzdGluZ01vY2tNb2R1bGUobmdNb2R1bGUpKTtcbiAgLy8gaXN0YW5idWwgaWdub3JlIGVsc2VcbiAgaWYgKG5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ2NhY2hlTW9kdWxlJykpIHtcbiAgICBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuc2V0KG5nTW9kdWxlLCBtb2NrTW9kdWxlKTtcbiAgfVxuICBpZiAobmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnc2tpcE1vY2snKSkge1xuICAgIG5nTW9ja3NVbml2ZXJzZS5jb25maWcuZ2V0KCduZ01vY2tzRGVwc1NraXAnKT8uYWRkKG1vY2tNb2R1bGUpO1xuICB9XG4gIGNvbnN0IG1vY2tNb2R1bGVQcm92aWRlcnMgPSBnZXRNb2NrUHJvdmlkZXJzKG5nTW9kdWxlUHJvdmlkZXJzKTtcbiAgcG9zdHByb2Nlc3NUb2dnbGVGbGFnKHRvZ2dsZVNraXBNb2NrRmxhZyk7XG5cbiAgcmV0dXJuIGdlbmVyYXRlUmV0dXJuKG1vZHVsZSwgbmdNb2R1bGUsIG5nTW9kdWxlUHJvdmlkZXJzLCBtb2NrTW9kdWxlLCBtb2NrTW9kdWxlUHJvdmlkZXJzKTtcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1tb2R1bGUvbW9jay1tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBQW1EO0FBQ25ELGlEQUFtRDtBQUVuRCxxREFBK0M7QUFDL0MsdURBQXFEO0FBQ3JELHFGQUE2RTtBQUU3RSx5REFBbUQ7QUFDbkQsaUZBQXVFO0FBQ3ZFLG1FQUE0RDtBQUM1RCwyREFBbUQ7QUFDbkQsdUdBQW1IO0FBQ25ILHVDQUFzQztBQUN0QyxpRUFBMEQ7QUFFMUQsNkNBQXNDO0FBRXRDLElBQU0sUUFBUSxHQUFHLFVBQUMsVUFBbUIsSUFBYyxPQUFBLFVBQVUsS0FBSyxNQUFNLElBQUksMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUE5RCxDQUE4RCxDQUFDO0FBRWxILElBQU0sUUFBUSxHQUFHLFVBQUMsVUFBbUIsSUFBYyxPQUFBLFVBQVUsS0FBSyxNQUFNLElBQUksQ0FBQywyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQS9ELENBQStELENBQUM7QUFFbkgsSUFBTSxXQUFXLEdBQUcsVUFBQyxVQUFtQjtJQUN0QyxPQUFBLFVBQVUsS0FBSyxTQUFTLElBQUksQ0FBQywyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO0FBQWxFLENBQWtFLENBQUM7QUFFckUsSUFBTSxTQUFTLEdBQUcsVUFBQyxRQUFjO0lBQy9CLE9BQUEscUJBQVUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQztBQUE3RixDQUE2RixDQUFDO0FBRWhHLElBQU0sb0JBQW9CLEdBQUcsVUFBQyxRQUFtQjtJQUMvQyxJQUFJLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUUvQixJQUFNLFVBQVUsR0FBRywyQkFBZSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzRCxJQUFJLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRTtRQUN4QixrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDMUIsMkJBQWUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQzFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUMxRSxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDMUIsMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQ3ZDO0lBRUQsT0FBTyxrQkFBa0IsQ0FBQztBQUM1QixDQUFDLENBQUM7QUFFRixJQUFNLHFCQUFxQixHQUFHLFVBQUMsa0JBQTJCO0lBQ3hELElBQUksa0JBQWtCLElBQUksMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1FBQy9ELDJCQUFlLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUMxQztTQUFNLElBQUksa0JBQWtCLElBQUksQ0FBQywyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDdkUsMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQ3ZDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsSUFBTSx5QkFBeUIsR0FBRyxVQUNoQyxNQUFXO0lBS1gsSUFBSSxRQUFtQixDQUFDO0lBQ3hCLElBQUksaUJBQXlDLENBQUM7SUFFOUMsSUFBSSxpRUFBMEIsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUN0QyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUMzQixJQUFJLE1BQU0sQ0FBQyxTQUFTLEVBQUU7WUFDcEIsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztTQUN0QztLQUNGO1NBQU07UUFDTCxRQUFRLEdBQUcsTUFBTSxDQUFDO0tBQ25CO0lBRUQsT0FBTztRQUNMLFFBQVEsVUFBQTtRQUNSLGlCQUFpQixtQkFBQTtLQUNsQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsSUFBTSxxQkFBcUIsR0FBRyxVQUFDLFFBQW1CO0lBQ2hELHFGQUFxRjtJQUNyRixpR0FBaUc7SUFDakcsSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDL0YsT0FBTywyQkFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUN4RDtJQUVELHdGQUF3RjtJQUN4RixJQUFJLDJCQUFlLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDakQsSUFBTSxRQUFRLEdBQUcsMkJBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvRCxJQUFJLHdCQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxJQUFJLFFBQVEsS0FBSyxRQUFRLEVBQUU7WUFDbkQsT0FBTyxRQUFRLENBQUM7U0FDakI7S0FDRjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMsQ0FBQztBQUVGLElBQU0sZ0JBQWdCLEdBQUcsVUFBQyxRQUFtQixFQUFFLFVBQXNCO0lBQ25FLElBQUksQ0FBQyxVQUFVLEVBQUU7UUFDZixJQUFNLElBQUksR0FBRyxxQ0FBd0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxQyxJQUFBLEtBQUEsT0FBeUIscUJBQVMsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUEsRUFBakQsT0FBTyxRQUFBLEVBQUUsV0FBVyxRQUE2QixDQUFDO1FBQ3pELElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTyxXQUFXLENBQUM7U0FDcEI7S0FDRjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMsQ0FBQztBQUVGLElBQU0sZ0JBQWdCLEdBQUcsVUFBQyxRQUFtQixFQUFFLFVBQXNCO0lBQ25FLElBQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUU3RCxJQUFJLGFBQWEsRUFBRTtRQUNqQixJQUFNLFFBQU0sR0FBRywyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBSSxDQUFDO1FBQ3ZFLElBQU0sSUFBSSxHQUFHLDBCQUFXLENBQUMsUUFBTSxDQUFDLENBQUM7UUFFakMseUNBQXlDO1FBQ3pDLGVBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5Qix1QkFBWSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUU3QixPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsT0FBTyxVQUFVLElBQUksUUFBUSxDQUFDO0FBQ2hDLENBQUMsQ0FBQztBQUVGLElBQU0sZ0JBQWdCLEdBQUcsVUFBQyxpQkFBeUM7SUFDakUsSUFBSSxpQkFBaUIsRUFBRTtRQUNmLElBQUEsS0FBQSxPQUF5QixxQkFBUyxDQUFDLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsSUFBQSxFQUFuRSxPQUFPLFFBQUEsRUFBRSxXQUFXLFFBQStDLENBQUM7UUFFM0UsT0FBTyxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDO0tBQzVEO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBRUYsSUFBTSxjQUFjLEdBQUcsVUFDckIsTUFBVyxFQUNYLFFBQW1CLEVBQ25CLGlCQUF5QyxFQUN6QyxVQUFxQixFQUNyQixtQkFBMkM7SUFFM0MsT0FBQSxVQUFVLEtBQUssUUFBUSxJQUFJLG1CQUFtQixLQUFLLGlCQUFpQjtRQUNsRSxDQUFDLENBQUMsTUFBTTtRQUNSLENBQUMsQ0FBQyxpRUFBMEIsQ0FBQyxNQUFNLENBQUM7WUFDcEMsQ0FBQyxZQUFHLFFBQVEsRUFBRSxVQUFVLElBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzVGLENBQUMsQ0FBQyxVQUFVO0FBSmQsQ0FJYyxDQUFDO0FBWWpCLFNBQWdCLFVBQVUsQ0FBQyxNQUFXOztJQUNwQyw0QkFBZ0IsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFFakMsSUFBQSxLQUFrQyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsRUFBakUsUUFBUSxjQUFBLEVBQUUsaUJBQWlCLHVCQUFzQyxDQUFDO0lBRTFFLGlFQUFpRTtJQUNqRSxJQUFJLENBQUMsaUJBQWlCLElBQUssb0JBQVUsRUFBVSxDQUFDLGFBQWEsRUFBRTtRQUM3RCxJQUFJO1lBQ0YsT0FBTyw0Q0FBZ0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDeEM7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLDhCQUE4QjtTQUMvQjtLQUNGO0lBQ0QsSUFBTSxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxRCxJQUFNLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUMvRSx1QkFBdUI7SUFDdkIsSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUU7UUFDNUMsMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0tBQzdEO0lBQ0QsSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDekMsTUFBQSwyQkFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsMENBQUUsR0FBRyxDQUFDLFVBQVUsRUFBRTtLQUNoRTtJQUNELElBQU0sbUJBQW1CLEdBQUcsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNoRSxxQkFBcUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBRTFDLE9BQU8sY0FBYyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLG1CQUFtQixDQUFDLENBQUM7QUFDOUYsQ0FBQztBQTFCRCxnQ0EwQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldFRlc3RCZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgY29yZUNvbmZpZyBmcm9tICcuLi9jb21tb24vY29yZS5jb25maWcnO1xuaW1wb3J0IHsgZXh0ZW5kQ2xhc3MgfSBmcm9tICcuLi9jb21tb24vY29yZS5oZWxwZXJzJztcbmltcG9ydCBjb3JlUmVmbGVjdE1vZHVsZVJlc29sdmUgZnJvbSAnLi4vY29tbW9uL2NvcmUucmVmbGVjdC5tb2R1bGUtcmVzb2x2ZSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUudHlwZXMnO1xuaW1wb3J0IGRlY29yYXRlTW9jayBmcm9tICcuLi9jb21tb24vZGVjb3JhdGUubW9jayc7XG5pbXBvcnQgeyBnZXRNb2NrZWROZ0RlZk9mIH0gZnJvbSAnLi4vY29tbW9uL2Z1bmMuZ2V0LW1vY2tlZC1uZy1kZWYtb2YnO1xuaW1wb3J0IGZ1bmNJbXBvcnRFeGlzdHMgZnJvbSAnLi4vY29tbW9uL2Z1bmMuaW1wb3J0LWV4aXN0cyc7XG5pbXBvcnQgeyBpc05nRGVmIH0gZnJvbSAnLi4vY29tbW9uL2Z1bmMuaXMtbmctZGVmJztcbmltcG9ydCB7IGlzTmdNb2R1bGVEZWZXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICcuLi9jb21tb24vZnVuYy5pcy1uZy1tb2R1bGUtZGVmLXdpdGgtcHJvdmlkZXJzJztcbmltcG9ydCB7IE1vY2sgfSBmcm9tICcuLi9jb21tb24vbW9jayc7XG5pbXBvcnQgbmdNb2Nrc1VuaXZlcnNlIGZyb20gJy4uL2NvbW1vbi9uZy1tb2Nrcy11bml2ZXJzZSc7XG5cbmltcG9ydCBtb2NrTmdEZWYgZnJvbSAnLi9tb2NrLW5nLWRlZic7XG5cbmNvbnN0IGZsYWdNb2NrID0gKHJlc29sdXRpb24/OiBzdHJpbmcpOiBib29sZWFuID0+IHJlc29sdXRpb24gPT09ICdtb2NrJyAmJiBuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdza2lwTW9jaycpO1xuXG5jb25zdCBmbGFnS2VlcCA9IChyZXNvbHV0aW9uPzogc3RyaW5nKTogYm9vbGVhbiA9PiByZXNvbHV0aW9uID09PSAna2VlcCcgJiYgIW5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ3NraXBNb2NrJyk7XG5cbmNvbnN0IGZsYWdSZXBsYWNlID0gKHJlc29sdXRpb24/OiBzdHJpbmcpOiBib29sZWFuID0+XG4gIHJlc29sdXRpb24gPT09ICdyZXBsYWNlJyAmJiAhbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnc2tpcE1vY2snKTtcblxuY29uc3QgZmxhZ05ldmVyID0gKG5nTW9kdWxlPzogYW55KTogYm9vbGVhbiA9PlxuICBjb3JlQ29uZmlnLm5ldmVyTW9ja01vZHVsZS5pbmRleE9mKG5nTW9kdWxlKSAhPT0gLTEgJiYgIW5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ3NraXBNb2NrJyk7XG5cbmNvbnN0IHByZXByb2Nlc3NUb2dnbGVGbGFnID0gKG5nTW9kdWxlOiBUeXBlPGFueT4pOiBib29sZWFuID0+IHtcbiAgbGV0IHRvZ2dsZVNraXBNb2NrRmxhZyA9IGZhbHNlO1xuXG4gIGNvbnN0IHJlc29sdXRpb24gPSBuZ01vY2tzVW5pdmVyc2UuZ2V0UmVzb2x1dGlvbihuZ01vZHVsZSk7XG4gIGlmIChmbGFnTW9jayhyZXNvbHV0aW9uKSkge1xuICAgIHRvZ2dsZVNraXBNb2NrRmxhZyA9IHRydWU7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmRlbGV0ZSgnc2tpcE1vY2snKTtcbiAgfVxuICBpZiAoZmxhZ0tlZXAocmVzb2x1dGlvbikgfHwgZmxhZ1JlcGxhY2UocmVzb2x1dGlvbikgfHwgZmxhZ05ldmVyKG5nTW9kdWxlKSkge1xuICAgIHRvZ2dsZVNraXBNb2NrRmxhZyA9IHRydWU7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmFkZCgnc2tpcE1vY2snKTtcbiAgfVxuXG4gIHJldHVybiB0b2dnbGVTa2lwTW9ja0ZsYWc7XG59O1xuXG5jb25zdCBwb3N0cHJvY2Vzc1RvZ2dsZUZsYWcgPSAodG9nZ2xlU2tpcE1vY2tGbGFnOiBib29sZWFuKTogdm9pZCA9PiB7XG4gIGlmICh0b2dnbGVTa2lwTW9ja0ZsYWcgJiYgbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnc2tpcE1vY2snKSkge1xuICAgIG5nTW9ja3NVbml2ZXJzZS5mbGFncy5kZWxldGUoJ3NraXBNb2NrJyk7XG4gIH0gZWxzZSBpZiAodG9nZ2xlU2tpcE1vY2tGbGFnICYmICFuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdza2lwTW9jaycpKSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmFkZCgnc2tpcE1vY2snKTtcbiAgfVxufTtcblxuY29uc3QgZXh0cmFjdE1vZHVsZUFuZFByb3ZpZGVycyA9IChcbiAgbW9kdWxlOiBhbnksXG4pOiB7XG4gIG5nTW9kdWxlOiBUeXBlPGFueT47XG4gIG5nTW9kdWxlUHJvdmlkZXJzOiBQcm92aWRlcltdIHwgdW5kZWZpbmVkO1xufSA9PiB7XG4gIGxldCBuZ01vZHVsZTogVHlwZTxhbnk+O1xuICBsZXQgbmdNb2R1bGVQcm92aWRlcnM6IFByb3ZpZGVyW10gfCB1bmRlZmluZWQ7XG5cbiAgaWYgKGlzTmdNb2R1bGVEZWZXaXRoUHJvdmlkZXJzKG1vZHVsZSkpIHtcbiAgICBuZ01vZHVsZSA9IG1vZHVsZS5uZ01vZHVsZTtcbiAgICBpZiAobW9kdWxlLnByb3ZpZGVycykge1xuICAgICAgbmdNb2R1bGVQcm92aWRlcnMgPSBtb2R1bGUucHJvdmlkZXJzO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBuZ01vZHVsZSA9IG1vZHVsZTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgbmdNb2R1bGUsXG4gICAgbmdNb2R1bGVQcm92aWRlcnMsXG4gIH07XG59O1xuXG5jb25zdCBnZXRFeGlzdGluZ01vY2tNb2R1bGUgPSAobmdNb2R1bGU6IFR5cGU8YW55Pik6IFR5cGU8YW55PiB8IHVuZGVmaW5lZCA9PiB7XG4gIC8vIEV2ZXJ5IG1vZHVsZSBzaG91bGQgYmUgcmVwbGFjZWQgd2l0aCBpdHMgbW9jayBjb3B5IG9ubHkgb25jZSB0byBhdm9pZCBlcnJvcnMgbGlrZTpcbiAgLy8gRmFpbGVkOiBUeXBlIC4uLkNvbXBvbmVudCBpcyBwYXJ0IG9mIHRoZSBkZWNsYXJhdGlvbnMgb2YgMiBtb2R1bGVzOiAuLi5Nb2R1bGUgYW5kIC4uLk1vZHVsZS4uLlxuICBpZiAobmdNb2Nrc1VuaXZlcnNlLmZsYWdzLmhhcygnY2FjaGVNb2R1bGUnKSAmJiBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuaGFzKG5nTW9kdWxlKSkge1xuICAgIHJldHVybiBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuZ2V0KG5nTW9kdWxlKTtcbiAgfVxuXG4gIC8vIE5vdyB3ZSBjaGVjayBpZiB3ZSBuZWVkIHRvIGtlZXAgdGhlIG9yaWdpbmFsIG1vZHVsZSBvciB0byByZXBsYWNlIGl0IHdpdGggc29tZSBvdGhlci5cbiAgaWYgKG5nTW9ja3NVbml2ZXJzZS5oYXNCdWlsZERlY2xhcmF0aW9uKG5nTW9kdWxlKSkge1xuICAgIGNvbnN0IGluc3RhbmNlID0gbmdNb2Nrc1VuaXZlcnNlLmdldEJ1aWxkRGVjbGFyYXRpb24obmdNb2R1bGUpO1xuICAgIGlmIChpc05nRGVmKGluc3RhbmNlLCAnbScpICYmIGluc3RhbmNlICE9PSBuZ01vZHVsZSkge1xuICAgICAgcmV0dXJuIGluc3RhbmNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRNb2NrTW9kdWxlRGVmID0gKG5nTW9kdWxlOiBUeXBlPGFueT4sIG1vY2tNb2R1bGU/OiBUeXBlPGFueT4pOiBOZ01vZHVsZSB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmICghbW9ja01vZHVsZSkge1xuICAgIGNvbnN0IG1ldGEgPSBjb3JlUmVmbGVjdE1vZHVsZVJlc29sdmUobmdNb2R1bGUpO1xuICAgIGNvbnN0IFtjaGFuZ2VkLCBuZ01vZHVsZURlZl0gPSBtb2NrTmdEZWYobWV0YSwgbmdNb2R1bGUpO1xuICAgIGlmIChjaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gbmdNb2R1bGVEZWY7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn07XG5cbmNvbnN0IGRldGVjdE1vY2tNb2R1bGUgPSAobmdNb2R1bGU6IFR5cGU8YW55PiwgbW9ja01vZHVsZT86IFR5cGU8YW55Pik6IFR5cGU8YW55PiA9PiB7XG4gIGNvbnN0IG1vY2tNb2R1bGVEZWYgPSBnZXRNb2NrTW9kdWxlRGVmKG5nTW9kdWxlLCBtb2NrTW9kdWxlKTtcblxuICBpZiAobW9ja01vZHVsZURlZikge1xuICAgIGNvbnN0IHBhcmVudCA9IG5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ3NraXBNb2NrJykgPyBuZ01vZHVsZSA6IE1vY2s7XG4gICAgY29uc3QgbW9jayA9IGV4dGVuZENsYXNzKHBhcmVudCk7XG5cbiAgICAvLyB0aGUgbGFzdCB0aGluZyBpcyB0byBhcHBseSBkZWNvcmF0b3JzLlxuICAgIE5nTW9kdWxlKG1vY2tNb2R1bGVEZWYpKG1vY2spO1xuICAgIGRlY29yYXRlTW9jayhtb2NrLCBuZ01vZHVsZSk7XG5cbiAgICByZXR1cm4gbW9jaztcbiAgfVxuXG4gIHJldHVybiBtb2NrTW9kdWxlIHx8IG5nTW9kdWxlO1xufTtcblxuY29uc3QgZ2V0TW9ja1Byb3ZpZGVycyA9IChuZ01vZHVsZVByb3ZpZGVyczogUHJvdmlkZXJbXSB8IHVuZGVmaW5lZCk6IFByb3ZpZGVyW10gfCB1bmRlZmluZWQgPT4ge1xuICBpZiAobmdNb2R1bGVQcm92aWRlcnMpIHtcbiAgICBjb25zdCBbY2hhbmdlZCwgbmdNb2R1bGVEZWZdID0gbW9ja05nRGVmKHsgcHJvdmlkZXJzOiBuZ01vZHVsZVByb3ZpZGVycyB9KTtcblxuICAgIHJldHVybiBjaGFuZ2VkID8gbmdNb2R1bGVEZWYucHJvdmlkZXJzIDogbmdNb2R1bGVQcm92aWRlcnM7XG4gIH1cblxuICByZXR1cm4gdW5kZWZpbmVkO1xufTtcblxuY29uc3QgZ2VuZXJhdGVSZXR1cm4gPSAoXG4gIG1vZHVsZTogYW55LFxuICBuZ01vZHVsZTogVHlwZTxhbnk+LFxuICBuZ01vZHVsZVByb3ZpZGVyczogUHJvdmlkZXJbXSB8IHVuZGVmaW5lZCxcbiAgbW9ja01vZHVsZTogVHlwZTxhbnk+LFxuICBtb2NrTW9kdWxlUHJvdmlkZXJzOiBQcm92aWRlcltdIHwgdW5kZWZpbmVkLFxuKTogYW55ID0+XG4gIG1vY2tNb2R1bGUgPT09IG5nTW9kdWxlICYmIG1vY2tNb2R1bGVQcm92aWRlcnMgPT09IG5nTW9kdWxlUHJvdmlkZXJzXG4gICAgPyBtb2R1bGVcbiAgICA6IGlzTmdNb2R1bGVEZWZXaXRoUHJvdmlkZXJzKG1vZHVsZSlcbiAgICA/IHsgbmdNb2R1bGU6IG1vY2tNb2R1bGUsIC4uLihtb2NrTW9kdWxlUHJvdmlkZXJzID8geyBwcm92aWRlcnM6IG1vY2tNb2R1bGVQcm92aWRlcnMgfSA6IHt9KSB9XG4gICAgOiBtb2NrTW9kdWxlO1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrTW9kdWxlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrTW9kdWxlPFQ+KG1vZHVsZTogVHlwZTxUPik6IFR5cGU8VD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tNb2R1bGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tNb2R1bGU8VD4obW9kdWxlOiBOZ01vZHVsZVdpdGhQcm92aWRlcnM8VD4pOiBOZ01vZHVsZVdpdGhQcm92aWRlcnM8VD47XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2NrTW9kdWxlKG1vZHVsZTogYW55KTogYW55IHtcbiAgZnVuY0ltcG9ydEV4aXN0cyhtb2R1bGUsICdNb2NrTW9kdWxlJyk7XG5cbiAgY29uc3QgeyBuZ01vZHVsZSwgbmdNb2R1bGVQcm92aWRlcnMgfSA9IGV4dHJhY3RNb2R1bGVBbmRQcm92aWRlcnMobW9kdWxlKTtcblxuICAvLyBXZSBhcmUgaW5zaWRlIG9mIGFuICdpdCcuIEl0IGlzIGZpbmUgdG8gdG8gcmV0dXJuIGEgbW9jayBjb3B5LlxuICBpZiAoIW5nTW9kdWxlUHJvdmlkZXJzICYmIChnZXRUZXN0QmVkKCkgYXMgYW55KS5faW5zdGFudGlhdGVkKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBnZXRNb2NrZWROZ0RlZk9mKG5nTW9kdWxlLCAnbScpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBsb29rcyBsaWtlIGFuIGluLXRlc3QgbW9jay5cbiAgICB9XG4gIH1cbiAgY29uc3QgdG9nZ2xlU2tpcE1vY2tGbGFnID0gcHJlcHJvY2Vzc1RvZ2dsZUZsYWcobmdNb2R1bGUpO1xuICBjb25zdCBtb2NrTW9kdWxlID0gZGV0ZWN0TW9ja01vZHVsZShuZ01vZHVsZSwgZ2V0RXhpc3RpbmdNb2NrTW9kdWxlKG5nTW9kdWxlKSk7XG4gIC8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlXG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZU1vZHVsZScpKSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmNhY2hlRGVjbGFyYXRpb25zLnNldChuZ01vZHVsZSwgbW9ja01vZHVsZSk7XG4gIH1cbiAgaWYgKG5nTW9ja3NVbml2ZXJzZS5mbGFncy5oYXMoJ3NraXBNb2NrJykpIHtcbiAgICBuZ01vY2tzVW5pdmVyc2UuY29uZmlnLmdldCgnbmdNb2Nrc0RlcHNTa2lwJyk/LmFkZChtb2NrTW9kdWxlKTtcbiAgfVxuICBjb25zdCBtb2NrTW9kdWxlUHJvdmlkZXJzID0gZ2V0TW9ja1Byb3ZpZGVycyhuZ01vZHVsZVByb3ZpZGVycyk7XG4gIHBvc3Rwcm9jZXNzVG9nZ2xlRmxhZyh0b2dnbGVTa2lwTW9ja0ZsYWcpO1xuXG4gIHJldHVybiBnZW5lcmF0ZVJldHVybihtb2R1bGUsIG5nTW9kdWxlLCBuZ01vZHVsZVByb3ZpZGVycywgbW9ja01vZHVsZSwgbW9ja01vZHVsZVByb3ZpZGVycyk7XG59XG4iXX0= |
@@ -10,2 +10,3 @@ "use strict"; | ||
var func_get_mocked_ng_def_of_1 = require("../common/func.get-mocked-ng-def-of"); | ||
var func_import_exists_1 = require("../common/func.import-exists"); | ||
var mock_1 = require("../common/mock"); | ||
@@ -41,2 +42,3 @@ var ng_mocks_universe_1 = require("../common/ng-mocks-universe"); | ||
function MockPipe(pipe, transform) { | ||
func_import_exists_1.default(pipe, 'MockPipe'); | ||
// We are inside of an 'it'. It is fine to return a mock copy. | ||
@@ -62,2 +64,2 @@ if (testing_1.getTestBed()._instantiated) { | ||
exports.MockPipe = MockPipe; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1tb2Nrcy9zcmMvbGliL21vY2stcGlwZS9tb2NrLXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0NBQW9EO0FBQ3BELGlEQUFtRDtBQUVuRCx1REFBcUQ7QUFDckQsaUZBQXlFO0FBRXpFLHlEQUFtRDtBQUNuRCxpRkFBdUU7QUFDdkUsdUNBQXNDO0FBQ3RDLGlFQUEwRDtBQUMxRCwyRUFBb0U7QUFJcEU7O0dBRUc7QUFDSCxTQUFnQixTQUFTO0lBQUMsZUFBb0M7U0FBcEMsVUFBb0MsRUFBcEMscUJBQW9DLEVBQXBDLElBQW9DO1FBQXBDLDBCQUFvQzs7SUFDNUQsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQUEsSUFBSSxJQUFJLE9BQUEsUUFBUSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsRUFBekIsQ0FBeUIsQ0FBQyxDQUFDO0FBQ3RELENBQUM7QUFGRCw4QkFFQztBQUVELElBQU0sWUFBWSxHQUFHLFVBQUMsSUFBZSxFQUFFLFNBQXNDO0lBQzNFLElBQU0sSUFBSSxHQUFHLDBCQUFXLENBQUMsV0FBSSxDQUFDLENBQUM7SUFDL0IsV0FBSSxDQUFDLG1DQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsdUJBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFO1FBQ3ZCLElBQUksRUFBRSxVQUFDLFFBQXVCO1lBQzVCLElBQUksU0FBUyxFQUFFO2dCQUNiLFFBQVEsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO2FBQ2hDO1lBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUU7Z0JBQ3ZCLDZCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFLLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxlQUFZLENBQUMsQ0FBQzthQUN6RjtRQUNILENBQUM7S0FDRixDQUFDLENBQUM7SUFFSCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQztBQVVGLFNBQWdCLFFBQVEsQ0FDdEIsSUFBaUIsRUFDakIsU0FBOEI7SUFFOUIsOERBQThEO0lBQzlELElBQUssb0JBQVUsRUFBVSxDQUFDLGFBQWEsRUFBRTtRQUN2QyxJQUFJO1lBQ0YsT0FBTyw0Q0FBZ0IsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDcEM7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLDhCQUE4QjtTQUMvQjtLQUNGO0lBQ0QsdUJBQXVCO0lBQ3ZCLElBQUksMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLDJCQUFlLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3pGLE9BQU8sMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDcEQ7SUFFRCxJQUFNLElBQUksR0FBRyxZQUFZLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzNDLElBQUksMkJBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1FBQzFDLDJCQUFlLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztLQUNuRDtJQUVELE9BQU8sSUFBVyxDQUFDO0FBQ3JCLENBQUM7QUF2QkQsNEJBdUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0VGVzdEJlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IGV4dGVuZENsYXNzIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUuaGVscGVycyc7XG5pbXBvcnQgY29yZVJlZmxlY3RQaXBlUmVzb2x2ZSBmcm9tICcuLi9jb21tb24vY29yZS5yZWZsZWN0LnBpcGUtcmVzb2x2ZSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUudHlwZXMnO1xuaW1wb3J0IGRlY29yYXRlTW9jayBmcm9tICcuLi9jb21tb24vZGVjb3JhdGUubW9jayc7XG5pbXBvcnQgeyBnZXRNb2NrZWROZ0RlZk9mIH0gZnJvbSAnLi4vY29tbW9uL2Z1bmMuZ2V0LW1vY2tlZC1uZy1kZWYtb2YnO1xuaW1wb3J0IHsgTW9jayB9IGZyb20gJy4uL2NvbW1vbi9tb2NrJztcbmltcG9ydCBuZ01vY2tzVW5pdmVyc2UgZnJvbSAnLi4vY29tbW9uL25nLW1vY2tzLXVuaXZlcnNlJztcbmltcG9ydCBoZWxwZXJNb2NrU2VydmljZSBmcm9tICcuLi9tb2NrLXNlcnZpY2UvaGVscGVyLm1vY2stc2VydmljZSc7XG5cbmltcG9ydCB7IE1vY2tlZFBpcGUgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1BpcGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tQaXBlcyguLi5waXBlczogQXJyYXk8VHlwZTxQaXBlVHJhbnNmb3JtPj4pOiBBcnJheTxUeXBlPFBpcGVUcmFuc2Zvcm0+PiB7XG4gIHJldHVybiBwaXBlcy5tYXAocGlwZSA9PiBNb2NrUGlwZShwaXBlLCB1bmRlZmluZWQpKTtcbn1cblxuY29uc3QgZ2V0TW9ja0NsYXNzID0gKHBpcGU6IFR5cGU8YW55PiwgdHJhbnNmb3JtPzogUGlwZVRyYW5zZm9ybVsndHJhbnNmb3JtJ10pOiBUeXBlPGFueT4gPT4ge1xuICBjb25zdCBtb2NrID0gZXh0ZW5kQ2xhc3MoTW9jayk7XG4gIFBpcGUoY29yZVJlZmxlY3RQaXBlUmVzb2x2ZShwaXBlKSkobW9jayk7XG4gIGRlY29yYXRlTW9jayhtb2NrLCBwaXBlLCB7XG4gICAgaW5pdDogKGluc3RhbmNlOiBQaXBlVHJhbnNmb3JtKSA9PiB7XG4gICAgICBpZiAodHJhbnNmb3JtKSB7XG4gICAgICAgIGluc3RhbmNlLnRyYW5zZm9ybSA9IHRyYW5zZm9ybTtcbiAgICAgIH1cbiAgICAgIGlmICghaW5zdGFuY2UudHJhbnNmb3JtKSB7XG4gICAgICAgIGhlbHBlck1vY2tTZXJ2aWNlLm1vY2soaW5zdGFuY2UsICd0cmFuc2Zvcm0nLCBgJHtpbnN0YW5jZS5jb25zdHJ1Y3Rvci5uYW1lfS50cmFuc2Zvcm1gKTtcbiAgICAgIH1cbiAgICB9LFxuICB9KTtcblxuICByZXR1cm4gbW9jaztcbn07XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tQaXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrUGlwZTxUUGlwZSBleHRlbmRzIFBpcGVUcmFuc2Zvcm0+KFxuICBwaXBlOiBUeXBlPFRQaXBlPixcbiAgdHJhbnNmb3JtPzogVFBpcGVbJ3RyYW5zZm9ybSddLFxuKTogVHlwZTxNb2NrZWRQaXBlPFRQaXBlPj47XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2NrUGlwZTxUUGlwZSBleHRlbmRzIFBpcGVUcmFuc2Zvcm0+KFxuICBwaXBlOiBUeXBlPFRQaXBlPixcbiAgdHJhbnNmb3JtPzogVFBpcGVbJ3RyYW5zZm9ybSddLFxuKTogVHlwZTxNb2NrZWRQaXBlPFRQaXBlPj4ge1xuICAvLyBXZSBhcmUgaW5zaWRlIG9mIGFuICdpdCcuIEl0IGlzIGZpbmUgdG8gcmV0dXJuIGEgbW9jayBjb3B5LlxuICBpZiAoKGdldFRlc3RCZWQoKSBhcyBhbnkpLl9pbnN0YW50aWF0ZWQpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGdldE1vY2tlZE5nRGVmT2YocGlwZSwgJ3AnKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gbG9va3MgbGlrZSBhbiBpbi10ZXN0IG1vY2suXG4gICAgfVxuICB9XG4gIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZVBpcGUnKSAmJiBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuaGFzKHBpcGUpKSB7XG4gICAgcmV0dXJuIG5nTW9ja3NVbml2ZXJzZS5jYWNoZURlY2xhcmF0aW9ucy5nZXQocGlwZSk7XG4gIH1cblxuICBjb25zdCBtb2NrID0gZ2V0TW9ja0NsYXNzKHBpcGUsIHRyYW5zZm9ybSk7XG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZVBpcGUnKSkge1xuICAgIG5nTW9ja3NVbml2ZXJzZS5jYWNoZURlY2xhcmF0aW9ucy5zZXQocGlwZSwgbW9jayk7XG4gIH1cblxuICByZXR1cm4gbW9jayBhcyBhbnk7XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1tb2Nrcy9zcmMvbGliL21vY2stcGlwZS9tb2NrLXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0NBQW9EO0FBQ3BELGlEQUFtRDtBQUVuRCx1REFBcUQ7QUFDckQsaUZBQXlFO0FBRXpFLHlEQUFtRDtBQUNuRCxpRkFBdUU7QUFDdkUsbUVBQTREO0FBQzVELHVDQUFzQztBQUN0QyxpRUFBMEQ7QUFDMUQsMkVBQW9FO0FBSXBFOztHQUVHO0FBQ0gsU0FBZ0IsU0FBUztJQUFDLGVBQW9DO1NBQXBDLFVBQW9DLEVBQXBDLHFCQUFvQyxFQUFwQyxJQUFvQztRQUFwQywwQkFBb0M7O0lBQzVELE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFBLElBQUksSUFBSSxPQUFBLFFBQVEsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQXpCLENBQXlCLENBQUMsQ0FBQztBQUN0RCxDQUFDO0FBRkQsOEJBRUM7QUFFRCxJQUFNLFlBQVksR0FBRyxVQUFDLElBQWUsRUFBRSxTQUFzQztJQUMzRSxJQUFNLElBQUksR0FBRywwQkFBVyxDQUFDLFdBQUksQ0FBQyxDQUFDO0lBQy9CLFdBQUksQ0FBQyxtQ0FBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLHVCQUFZLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRTtRQUN2QixJQUFJLEVBQUUsVUFBQyxRQUF1QjtZQUM1QixJQUFJLFNBQVMsRUFBRTtnQkFDYixRQUFRLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQzthQUNoQztZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFO2dCQUN2Qiw2QkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBSyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksZUFBWSxDQUFDLENBQUM7YUFDekY7UUFDSCxDQUFDO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUM7QUFVRixTQUFnQixRQUFRLENBQ3RCLElBQWlCLEVBQ2pCLFNBQThCO0lBRTlCLDRCQUFnQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztJQUVuQyw4REFBOEQ7SUFDOUQsSUFBSyxvQkFBVSxFQUFVLENBQUMsYUFBYSxFQUFFO1FBQ3ZDLElBQUk7WUFDRixPQUFPLDRDQUFnQixDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztTQUNwQztRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsOEJBQThCO1NBQy9CO0tBQ0Y7SUFDRCx1QkFBdUI7SUFDdkIsSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDekYsT0FBTywyQkFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUNwRDtJQUVELElBQU0sSUFBSSxHQUFHLFlBQVksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDM0MsSUFBSSwyQkFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUU7UUFDMUMsMkJBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQ25EO0lBRUQsT0FBTyxJQUFXLENBQUM7QUFDckIsQ0FBQztBQXpCRCw0QkF5QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRUZXN0QmVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IHsgZXh0ZW5kQ2xhc3MgfSBmcm9tICcuLi9jb21tb24vY29yZS5oZWxwZXJzJztcbmltcG9ydCBjb3JlUmVmbGVjdFBpcGVSZXNvbHZlIGZyb20gJy4uL2NvbW1vbi9jb3JlLnJlZmxlY3QucGlwZS1yZXNvbHZlJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICcuLi9jb21tb24vY29yZS50eXBlcyc7XG5pbXBvcnQgZGVjb3JhdGVNb2NrIGZyb20gJy4uL2NvbW1vbi9kZWNvcmF0ZS5tb2NrJztcbmltcG9ydCB7IGdldE1vY2tlZE5nRGVmT2YgfSBmcm9tICcuLi9jb21tb24vZnVuYy5nZXQtbW9ja2VkLW5nLWRlZi1vZic7XG5pbXBvcnQgZnVuY0ltcG9ydEV4aXN0cyBmcm9tICcuLi9jb21tb24vZnVuYy5pbXBvcnQtZXhpc3RzJztcbmltcG9ydCB7IE1vY2sgfSBmcm9tICcuLi9jb21tb24vbW9jayc7XG5pbXBvcnQgbmdNb2Nrc1VuaXZlcnNlIGZyb20gJy4uL2NvbW1vbi9uZy1tb2Nrcy11bml2ZXJzZSc7XG5pbXBvcnQgaGVscGVyTW9ja1NlcnZpY2UgZnJvbSAnLi4vbW9jay1zZXJ2aWNlL2hlbHBlci5tb2NrLXNlcnZpY2UnO1xuXG5pbXBvcnQgeyBNb2NrZWRQaXBlIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tQaXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrUGlwZXMoLi4ucGlwZXM6IEFycmF5PFR5cGU8UGlwZVRyYW5zZm9ybT4+KTogQXJyYXk8VHlwZTxQaXBlVHJhbnNmb3JtPj4ge1xuICByZXR1cm4gcGlwZXMubWFwKHBpcGUgPT4gTW9ja1BpcGUocGlwZSwgdW5kZWZpbmVkKSk7XG59XG5cbmNvbnN0IGdldE1vY2tDbGFzcyA9IChwaXBlOiBUeXBlPGFueT4sIHRyYW5zZm9ybT86IFBpcGVUcmFuc2Zvcm1bJ3RyYW5zZm9ybSddKTogVHlwZTxhbnk+ID0+IHtcbiAgY29uc3QgbW9jayA9IGV4dGVuZENsYXNzKE1vY2spO1xuICBQaXBlKGNvcmVSZWZsZWN0UGlwZVJlc29sdmUocGlwZSkpKG1vY2spO1xuICBkZWNvcmF0ZU1vY2sobW9jaywgcGlwZSwge1xuICAgIGluaXQ6IChpbnN0YW5jZTogUGlwZVRyYW5zZm9ybSkgPT4ge1xuICAgICAgaWYgKHRyYW5zZm9ybSkge1xuICAgICAgICBpbnN0YW5jZS50cmFuc2Zvcm0gPSB0cmFuc2Zvcm07XG4gICAgICB9XG4gICAgICBpZiAoIWluc3RhbmNlLnRyYW5zZm9ybSkge1xuICAgICAgICBoZWxwZXJNb2NrU2VydmljZS5tb2NrKGluc3RhbmNlLCAndHJhbnNmb3JtJywgYCR7aW5zdGFuY2UuY29uc3RydWN0b3IubmFtZX0udHJhbnNmb3JtYCk7XG4gICAgICB9XG4gICAgfSxcbiAgfSk7XG5cbiAgcmV0dXJuIG1vY2s7XG59O1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUGlwZVxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja1BpcGU8VFBpcGUgZXh0ZW5kcyBQaXBlVHJhbnNmb3JtPihcbiAgcGlwZTogVHlwZTxUUGlwZT4sXG4gIHRyYW5zZm9ybT86IFRQaXBlWyd0cmFuc2Zvcm0nXSxcbik6IFR5cGU8TW9ja2VkUGlwZTxUUGlwZT4+O1xuXG5leHBvcnQgZnVuY3Rpb24gTW9ja1BpcGU8VFBpcGUgZXh0ZW5kcyBQaXBlVHJhbnNmb3JtPihcbiAgcGlwZTogVHlwZTxUUGlwZT4sXG4gIHRyYW5zZm9ybT86IFRQaXBlWyd0cmFuc2Zvcm0nXSxcbik6IFR5cGU8TW9ja2VkUGlwZTxUUGlwZT4+IHtcbiAgZnVuY0ltcG9ydEV4aXN0cyhwaXBlLCAnTW9ja1BpcGUnKTtcblxuICAvLyBXZSBhcmUgaW5zaWRlIG9mIGFuICdpdCcuIEl0IGlzIGZpbmUgdG8gcmV0dXJuIGEgbW9jayBjb3B5LlxuICBpZiAoKGdldFRlc3RCZWQoKSBhcyBhbnkpLl9pbnN0YW50aWF0ZWQpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGdldE1vY2tlZE5nRGVmT2YocGlwZSwgJ3AnKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gbG9va3MgbGlrZSBhbiBpbi10ZXN0IG1vY2suXG4gICAgfVxuICB9XG4gIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZVBpcGUnKSAmJiBuZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMuaGFzKHBpcGUpKSB7XG4gICAgcmV0dXJuIG5nTW9ja3NVbml2ZXJzZS5jYWNoZURlY2xhcmF0aW9ucy5nZXQocGlwZSk7XG4gIH1cblxuICBjb25zdCBtb2NrID0gZ2V0TW9ja0NsYXNzKHBpcGUsIHRyYW5zZm9ybSk7XG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuZmxhZ3MuaGFzKCdjYWNoZVBpcGUnKSkge1xuICAgIG5nTW9ja3NVbml2ZXJzZS5jYWNoZURlY2xhcmF0aW9ucy5zZXQocGlwZSwgbW9jayk7XG4gIH1cblxuICByZXR1cm4gbW9jayBhcyBhbnk7XG59XG4iXX0= |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.MockProvider = exports.MockProviders = void 0; | ||
var func_import_exists_1 = require("../common/func.import-exists"); | ||
var mock_helper_stub_1 = require("../mock-helper/mock-helper.stub"); | ||
@@ -18,2 +19,3 @@ var helper_use_factory_1 = require("../mock-service/helper.use-factory"); | ||
if (overrides === void 0) { overrides = defaultValue; } | ||
func_import_exists_1.default(provide, 'MockProvider'); | ||
return helper_use_factory_1.default(provide, function () { return mock_service_1.MockService(provide); }, function (value) { | ||
@@ -30,2 +32,2 @@ if (overrides === defaultValue) { | ||
exports.MockProvider = MockProvider; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLXByb3ZpZGVyL21vY2stcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0Esb0VBQTZEO0FBQzdELHlFQUFrRTtBQUNsRSw2REFBMkQ7QUFFM0QsSUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO0FBRXhCLFNBQWdCLGFBQWE7SUFBQyxtQkFBdUQ7U0FBdkQsVUFBdUQsRUFBdkQscUJBQXVELEVBQXZELElBQXVEO1FBQXZELDhCQUF1RDs7SUFDbkYsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQUMsUUFBYSxJQUFLLE9BQUEsWUFBWSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsRUFBcEMsQ0FBb0MsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFGRCxzQ0FFQztBQWlCRCxTQUFnQixZQUFZLENBQUMsT0FBWSxFQUFFLFNBQTZCO0lBQTdCLDBCQUFBLEVBQUEsd0JBQTZCO0lBQ3RFLE9BQU8sNEJBQWdCLENBQ3JCLE9BQU8sRUFDUCxjQUFNLE9BQUEsMEJBQVcsQ0FBQyxPQUFPLENBQUMsRUFBcEIsQ0FBb0IsRUFDMUIsVUFBQSxLQUFLO1FBQ0gsSUFBSSxTQUFTLEtBQUssWUFBWSxFQUFFO1lBQzlCLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxPQUFPLDBCQUFjLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzFDLENBQUMsQ0FDRixDQUFDO0FBQ0osQ0FBQztBQWZELG9DQWVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmFjdG9yeVByb3ZpZGVyLCBJbmplY3Rpb25Ub2tlbiwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQW55VHlwZSB9IGZyb20gJy4uL2NvbW1vbi9jb3JlLnR5cGVzJztcbmltcG9ydCBtb2NrSGVscGVyU3R1YiBmcm9tICcuLi9tb2NrLWhlbHBlci9tb2NrLWhlbHBlci5zdHViJztcbmltcG9ydCBoZWxwZXJVc2VGYWN0b3J5IGZyb20gJy4uL21vY2stc2VydmljZS9oZWxwZXIudXNlLWZhY3RvcnknO1xuaW1wb3J0IHsgTW9ja1NlcnZpY2UgfSBmcm9tICcuLi9tb2NrLXNlcnZpY2UvbW9jay1zZXJ2aWNlJztcblxuY29uc3QgZGVmYXVsdFZhbHVlID0ge307XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2NrUHJvdmlkZXJzKC4uLnByb3ZpZGVyczogQXJyYXk8QW55VHlwZTxhbnk+IHwgSW5qZWN0aW9uVG9rZW48YW55Pj4pOiBGYWN0b3J5UHJvdmlkZXJbXSB7XG4gIHJldHVybiBwcm92aWRlcnMubWFwKChwcm92aWRlcjogYW55KSA9PiBNb2NrUHJvdmlkZXIocHJvdmlkZXIsIGRlZmF1bHRWYWx1ZSkpO1xufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tQcm92aWRlcjxJIGV4dGVuZHMgb2JqZWN0PihpbnN0YW5jZTogQW55VHlwZTxJPiwgb3ZlcnJpZGVzPzogUGFydGlhbDxJPik6IEZhY3RvcnlQcm92aWRlcjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1Byb3ZpZGVyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrUHJvdmlkZXI8ST4ocHJvdmlkZXI6IEluamVjdGlvblRva2VuPEk+IHwgc3RyaW5nLCB1c2VWYWx1ZT86IFBhcnRpYWw8ST4pOiBGYWN0b3J5UHJvdmlkZXI7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tQcm92aWRlclxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja1Byb3ZpZGVyPEkgPSBhbnk+KHByb3ZpZGVyOiBzdHJpbmcsIHVzZVZhbHVlPzogUGFydGlhbDxJPik6IEZhY3RvcnlQcm92aWRlcjtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vY2tQcm92aWRlcihwcm92aWRlOiBhbnksIG92ZXJyaWRlczogYW55ID0gZGVmYXVsdFZhbHVlKTogUHJvdmlkZXIge1xuICByZXR1cm4gaGVscGVyVXNlRmFjdG9yeShcbiAgICBwcm92aWRlLFxuICAgICgpID0+IE1vY2tTZXJ2aWNlKHByb3ZpZGUpLFxuICAgIHZhbHVlID0+IHtcbiAgICAgIGlmIChvdmVycmlkZXMgPT09IGRlZmF1bHRWYWx1ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgIHJldHVybiBvdmVycmlkZXM7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBtb2NrSGVscGVyU3R1Yih2YWx1ZSwgb3ZlcnJpZGVzKTtcbiAgICB9LFxuICApO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLXByb3ZpZGVyL21vY2stcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0EsbUVBQTREO0FBQzVELG9FQUE2RDtBQUM3RCx5RUFBa0U7QUFDbEUsNkRBQTJEO0FBRTNELElBQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztBQUV4QixTQUFnQixhQUFhO0lBQUMsbUJBQXVEO1NBQXZELFVBQXVELEVBQXZELHFCQUF1RCxFQUF2RCxJQUF1RDtRQUF2RCw4QkFBdUQ7O0lBQ25GLE9BQU8sU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFDLFFBQWEsSUFBSyxPQUFBLFlBQVksQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLEVBQXBDLENBQW9DLENBQUMsQ0FBQztBQUNoRixDQUFDO0FBRkQsc0NBRUM7QUFpQkQsU0FBZ0IsWUFBWSxDQUFDLE9BQVksRUFBRSxTQUE2QjtJQUE3QiwwQkFBQSxFQUFBLHdCQUE2QjtJQUN0RSw0QkFBZ0IsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFFMUMsT0FBTyw0QkFBZ0IsQ0FDckIsT0FBTyxFQUNQLGNBQU0sT0FBQSwwQkFBVyxDQUFDLE9BQU8sQ0FBQyxFQUFwQixDQUFvQixFQUMxQixVQUFBLEtBQUs7UUFDSCxJQUFJLFNBQVMsS0FBSyxZQUFZLEVBQUU7WUFDOUIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUVELE9BQU8sMEJBQWMsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDMUMsQ0FBQyxDQUNGLENBQUM7QUFDSixDQUFDO0FBakJELG9DQWlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhY3RvcnlQcm92aWRlciwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFueVR5cGUgfSBmcm9tICcuLi9jb21tb24vY29yZS50eXBlcyc7XG5pbXBvcnQgZnVuY0ltcG9ydEV4aXN0cyBmcm9tICcuLi9jb21tb24vZnVuYy5pbXBvcnQtZXhpc3RzJztcbmltcG9ydCBtb2NrSGVscGVyU3R1YiBmcm9tICcuLi9tb2NrLWhlbHBlci9tb2NrLWhlbHBlci5zdHViJztcbmltcG9ydCBoZWxwZXJVc2VGYWN0b3J5IGZyb20gJy4uL21vY2stc2VydmljZS9oZWxwZXIudXNlLWZhY3RvcnknO1xuaW1wb3J0IHsgTW9ja1NlcnZpY2UgfSBmcm9tICcuLi9tb2NrLXNlcnZpY2UvbW9jay1zZXJ2aWNlJztcblxuY29uc3QgZGVmYXVsdFZhbHVlID0ge307XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2NrUHJvdmlkZXJzKC4uLnByb3ZpZGVyczogQXJyYXk8QW55VHlwZTxhbnk+IHwgSW5qZWN0aW9uVG9rZW48YW55Pj4pOiBGYWN0b3J5UHJvdmlkZXJbXSB7XG4gIHJldHVybiBwcm92aWRlcnMubWFwKChwcm92aWRlcjogYW55KSA9PiBNb2NrUHJvdmlkZXIocHJvdmlkZXIsIGRlZmF1bHRWYWx1ZSkpO1xufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1vY2tQcm92aWRlcjxJIGV4dGVuZHMgb2JqZWN0PihpbnN0YW5jZTogQW55VHlwZTxJPiwgb3ZlcnJpZGVzPzogUGFydGlhbDxJPik6IEZhY3RvcnlQcm92aWRlcjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1Byb3ZpZGVyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBNb2NrUHJvdmlkZXI8ST4ocHJvdmlkZXI6IEluamVjdGlvblRva2VuPEk+IHwgc3RyaW5nLCB1c2VWYWx1ZT86IFBhcnRpYWw8ST4pOiBGYWN0b3J5UHJvdmlkZXI7XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tQcm92aWRlclxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9ja1Byb3ZpZGVyPEkgPSBhbnk+KHByb3ZpZGVyOiBzdHJpbmcsIHVzZVZhbHVlPzogUGFydGlhbDxJPik6IEZhY3RvcnlQcm92aWRlcjtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vY2tQcm92aWRlcihwcm92aWRlOiBhbnksIG92ZXJyaWRlczogYW55ID0gZGVmYXVsdFZhbHVlKTogUHJvdmlkZXIge1xuICBmdW5jSW1wb3J0RXhpc3RzKHByb3ZpZGUsICdNb2NrUHJvdmlkZXInKTtcblxuICByZXR1cm4gaGVscGVyVXNlRmFjdG9yeShcbiAgICBwcm92aWRlLFxuICAgICgpID0+IE1vY2tTZXJ2aWNlKHByb3ZpZGUpLFxuICAgIHZhbHVlID0+IHtcbiAgICAgIGlmIChvdmVycmlkZXMgPT09IGRlZmF1bHRWYWx1ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgIHJldHVybiBvdmVycmlkZXM7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBtb2NrSGVscGVyU3R1Yih2YWx1ZSwgb3ZlcnJpZGVzKTtcbiAgICB9LFxuICApO1xufVxuIl19 |
@@ -50,2 +50,3 @@ "use strict"; | ||
var core_reflect_directive_resolve_1 = require("../common/core.reflect.directive-resolve"); | ||
var func_import_exists_1 = require("../common/func.import-exists"); | ||
var func_is_ng_def_1 = require("../common/func.is-ng-def"); | ||
@@ -187,2 +188,3 @@ var mock_helper_1 = require("../mock-helper/mock-helper"); | ||
if (flags === void 0) { flags = true; } | ||
func_import_exists_1.default(template, 'MockRender'); | ||
var flagsObject = typeof flags === 'boolean' ? { detectChanges: flags } : flags; | ||
@@ -201,2 +203,2 @@ var meta = typeof template === 'string' || func_is_ng_def_1.isNgDef(template, 't') ? {} : reflectTemplate(template); | ||
exports.MockRender = MockRender; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1yZW5kZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1yZW5kZXIvbW9jay1yZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBQWlHO0FBQ2pHLGlEQUFrRTtBQUVsRSx1REFBcUQ7QUFDckQsMkZBQW1GO0FBRW5GLDJEQUFtRDtBQUNuRCwwREFBcUQ7QUFDckQsNkRBQTJEO0FBRTNELG1FQUE0RDtBQUM1RCx1RUFBK0Q7QUFHL0QsSUFBTSxtQ0FBbUMsR0FBRyxVQUFDLE1BQVcsRUFBRSxJQUFjLElBQUssT0FBQSxDQUFDLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBN0IsQ0FBNkIsQ0FBQztBQUUzRyxJQUFNLDRCQUE0QixHQUFHLFVBQ25DLFFBQWdDLEVBQ2hDLE1BQVcsRUFDWCxNQUFnQixFQUNoQixPQUFpQjs7SUFFakIsa0NBQXFCLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDOztRQUN4QyxLQUF5QixJQUFBLEtBQUEsU0FBQSxtQ0FBbUMsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUEsZ0JBQUEsNEJBQUU7WUFBekUsSUFBTSxVQUFVLFdBQUE7WUFDYixJQUFBLEtBQUEsT0FBYSxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFBLEVBQWxDLFFBQVEsUUFBMEIsQ0FBQztZQUMxQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsU0FBUyxDQUFDO1NBQ2hDOzs7Ozs7Ozs7O1FBQ0QsS0FBeUIsSUFBQSxLQUFBLFNBQUEsbUNBQW1DLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFBLGdCQUFBLDRCQUFFO1lBQTFFLElBQU0sVUFBVSxXQUFBO1lB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Q0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWhILHFCQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdkIsSUFBTSxPQUFPLEdBQVEsY0FBYyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3pFLElBQUksZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDOUIsaUJBQWlCLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUM5QztTQUFNO1FBQ0wsZUFBZSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDNUM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRVEsZ0NBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIERlYnVnRWxlbWVudCwgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRGaXh0dXJlLCBUZXN0QmVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IHsgZXh0ZW5kQ2xhc3MgfSBmcm9tICcuLi9jb21tb24vY29yZS5oZWxwZXJzJztcbmltcG9ydCBjb3JlUmVmbGVjdERpcmVjdGl2ZVJlc29sdmUgZnJvbSAnLi4vY29tbW9uL2NvcmUucmVmbGVjdC5kaXJlY3RpdmUtcmVzb2x2ZSc7XG5pbXBvcnQgeyBBbnlUeXBlLCBUeXBlIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUudHlwZXMnO1xuaW1wb3J0IHsgaXNOZ0RlZiB9IGZyb20gJy4uL2NvbW1vbi9mdW5jLmlzLW5nLWRlZic7XG5pbXBvcnQgeyBuZ01vY2tzIH0gZnJvbSAnLi4vbW9jay1oZWxwZXIvbW9jay1oZWxwZXInO1xuaW1wb3J0IHsgTW9ja1NlcnZpY2UgfSBmcm9tICcuLi9tb2NrLXNlcnZpY2UvbW9jay1zZXJ2aWNlJztcblxuaW1wb3J0IGZ1bmNHZW5lcmF0ZVRlbXBsYXRlIGZyb20gJy4vZnVuYy5nZW5lcmF0ZS10ZW1wbGF0ZSc7XG5pbXBvcnQgZnVuY0luc3RhbGxQcm9wUmVhZGVyIGZyb20gJy4vZnVuYy5pbnN0YWxsLXByb3AtcmVhZGVyJztcbmltcG9ydCB7IElNb2NrUmVuZGVyT3B0aW9ucywgTW9ja2VkQ29tcG9uZW50Rml4dHVyZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCBhcHBseVBhcmFtc1RvRml4dHVyZUluc3RhbmNlR2V0RGF0YSA9IChwYXJhbXM6IGFueSwga2V5czogc3RyaW5nW10pID0+ICghcGFyYW1zICYmIGtleXMgPyBrZXlzIDogW10pO1xuXG5jb25zdCBhcHBseVBhcmFtc1RvRml4dHVyZUluc3RhbmNlID0gKFxuICBpbnN0YW5jZTogUmVjb3JkPGtleW9mIGFueSwgYW55PixcbiAgcGFyYW1zOiBhbnksXG4gIGlucHV0czogc3RyaW5nW10sXG4gIG91dHB1dHM6IHN0cmluZ1tdLFxuKTogdm9pZCA9PiB7XG4gIGZ1bmNJbnN0YWxsUHJvcFJlYWRlcihpbnN0YW5jZSwgcGFyYW1zKTtcbiAgZm9yIChjb25zdCBkZWZpbml0aW9uIG9mIGFwcGx5UGFyYW1zVG9GaXh0dXJlSW5zdGFuY2VHZXREYXRhKHBhcmFtcywgaW5wdXRzKSkge1xuICAgIGNvbnN0IFtwcm9wZXJ0eV0gPSBkZWZpbml0aW9uLnNwbGl0KCc6ICcpO1xuICAgIGluc3RhbmNlW3Byb3BlcnR5XSA9IHVuZGVmaW5lZDtcbiAgfVxuICBmb3IgKGNvbnN0IGRlZmluaXRpb24gb2YgYXBwbHlQYXJhbXNUb0ZpeHR1cmVJbnN0YW5jZUdldERhdGEocGFyYW1zLCBvdXRwdXRzKSkge1xuICAgIGNvbnN0IFtwcm9wZXJ0eV0gPSBkZWZpbml0aW9uLnNwbGl0KCc6ICcpO1xuICAgIGluc3RhbmNlW3Byb3BlcnR5XSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgfVxufTtcblxuY29uc3QgcmVnaXN0ZXJUZW1wbGF0ZU1pZGRsZXdhcmUgPSAodGVtcGxhdGU6IEFueVR5cGU8YW55PiwgbWV0YTogRGlyZWN0aXZlKTogdm9pZCA9PiB7XG4gIGNvbnN0IGNoaWxkID0gZXh0ZW5kQ2xhc3ModGVtcGxhdGUpO1xuXG4gIGxldCBwcm92aWRlcnMgPSBtZXRhLnByb3ZpZGVycyB8fCBbXTtcbiAgcHJvdmlkZXJzID0gW1xuICAgIC4uLnByb3ZpZGVycyxcbiAgICB7XG4gICAgICBwcm92aWRlOiB0ZW1wbGF0ZSxcbiAgICAgIHVzZUV4aXN0aW5nOiBjaGlsZCxcbiAgICB9LFxuICBdO1xuICBtZXRhLnByb3ZpZGVycyA9IHByb3ZpZGVycztcblxuICBpZiAoaXNOZ0RlZih0ZW1wbGF0ZSwgJ2MnKSkge1xuICAgIENvbXBvbmVudChtZXRhKShjaGlsZCk7XG4gIH0gZWxzZSB7XG4gICAgRGlyZWN0aXZlKG1ldGEpKGNoaWxkKTtcbiAgfVxuICBUZXN0QmVkLmNvbmZpZ3VyZVRlc3RpbmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW2NoaWxkXSxcbiAgfSk7XG59O1xuXG5jb25zdCByZWZsZWN0VGVtcGxhdGUgPSAodGVtcGxhdGU6IEFueVR5cGU8YW55Pik6IERpcmVjdGl2ZSA9PiB7XG4gIGlmICghaXNOZ0RlZih0ZW1wbGF0ZSwgJ2MnKSAmJiAhaXNOZ0RlZih0ZW1wbGF0ZSwgJ2QnKSkge1xuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIGNvbnN0IG1ldGEgPSB7IC4uLmNvcmVSZWZsZWN0RGlyZWN0aXZlUmVzb2x2ZSh0ZW1wbGF0ZSkgfTtcblxuICBpZiAobWV0YS5zZWxlY3RvciAmJiBtZXRhLnNlbGVjdG9yLm1hdGNoKC9bXFxbXFxdLF0vKSkge1xuICAgIG1ldGEuc2VsZWN0b3IgPSAnJztcbiAgfVxuXG4gIGlmICghbWV0YS5zZWxlY3Rvcikge1xuICAgIG1ldGEuc2VsZWN0b3IgPSBgbmctbW9ja3MtJHt0ZW1wbGF0ZS5uYW1lfWA7XG4gICAgcmVnaXN0ZXJUZW1wbGF0ZU1pZGRsZXdhcmUodGVtcGxhdGUsIG1ldGEpO1xuICB9XG5cbiAgcmV0dXJuIG1ldGE7XG59O1xuXG5jb25zdCBnZW5lcmF0ZUZpeHR1cmUgPSAoeyBwYXJhbXMsIG9wdGlvbnMsIGlucHV0cywgb3V0cHV0cyB9OiBhbnkpID0+IHtcbiAgY2xhc3MgTW9ja1JlbmRlckNvbXBvbmVudCB7XG4gICAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgICAgYXBwbHlQYXJhbXNUb0ZpeHR1cmVJbnN0YW5jZSh0aGlzLCBwYXJhbXMsIGlucHV0cywgb3V0cHV0cyk7XG4gICAgfVxuICB9XG5cbiAgQ29tcG9uZW50KG9wdGlvbnMpKE1vY2tSZW5kZXJDb21wb25lbnQpO1xuICBUZXN0QmVkLmNvbmZpZ3VyZVRlc3RpbmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW01vY2tSZW5kZXJDb21wb25lbnRdLFxuICB9KTtcblxuICByZXR1cm4gVGVzdEJlZC5jcmVhdGVDb21wb25lbnQoTW9ja1JlbmRlckNvbXBvbmVudCk7XG59O1xuXG5jb25zdCBmaXh0dXJlRmFjdG9yeSA9IDxUPih0ZW1wbGF0ZTogYW55LCBtZXRhOiBEaXJlY3RpdmUsIHBhcmFtczogYW55LCBmbGFnczogYW55KTogQ29tcG9uZW50Rml4dHVyZTxUPiA9PiB7XG4gIGNvbnN0IG1vY2tUZW1wbGF0ZSA9IGZ1bmNHZW5lcmF0ZVRlbXBsYXRlKHRlbXBsYXRlLCB7IC4uLm1ldGEsIHBhcmFtcyB9KTtcbiAgY29uc3Qgb3B0aW9uczogQ29tcG9uZW50ID0geyBwcm92aWRlcnM6IGZsYWdzLnByb3ZpZGVycywgc2VsZWN0b3I6ICdtb2NrLXJlbmRlcicsIHRlbXBsYXRlOiBtb2NrVGVtcGxhdGUgfTtcbiAgY29uc3QgZml4dHVyZTogYW55ID0gZ2VuZXJhdGVGaXh0dXJlKHsgLi4ubWV0YSwgcGFyYW1zLCBvcHRpb25zIH0pO1xuICBpZiAoZmxhZ3MuZGV0ZWN0Q2hhbmdlcykge1xuICAgIGZpeHR1cmUuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcmV0dXJuIGZpeHR1cmU7XG59O1xuXG5jb25zdCBpc0V4cGVjdGVkUmVuZGVyID0gKHRlbXBsYXRlOiBhbnkpOiBib29sZWFuID0+XG4gIHR5cGVvZiB0ZW1wbGF0ZSA9PT0gJ3N0cmluZycgfHwgaXNOZ0RlZih0ZW1wbGF0ZSwgJ2MnKSB8fCBpc05nRGVmKHRlbXBsYXRlLCAnZCcpO1xuXG5jb25zdCByZW5kZXJEZWNsYXJhdGlvbiA9IChmaXh0dXJlOiBhbnksIHRlbXBsYXRlOiBhbnksIHBhcmFtczogYW55KTogdm9pZCA9PiB7XG4gIGZpeHR1cmUucG9pbnQgPSBmaXh0dXJlLmRlYnVnRWxlbWVudC5jaGlsZHJlblswXSB8fCBmaXh0dXJlLmRlYnVnRWxlbWVudC5jaGlsZE5vZGVzWzBdO1xuICBpZiAoaXNOZ0RlZih0ZW1wbGF0ZSwgJ2QnKSkge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShmaXh0dXJlLnBvaW50LCAnY29tcG9uZW50SW5zdGFuY2UnLCB7XG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgZ2V0OiAoKSA9PiBuZ01vY2tzLmdldChmaXh0dXJlLnBvaW50LCB0ZW1wbGF0ZSksXG4gICAgfSk7XG4gIH1cbiAgdHJ5V2hlbighcGFyYW1zLCAoKSA9PiBmdW5jSW5zdGFsbFByb3BSZWFkZXIoZml4dHVyZS5jb21wb25lbnRJbnN0YW5jZSwgZml4dHVyZS5wb2ludD8uY29tcG9uZW50SW5zdGFuY2UpKTtcbn07XG5cbmNvbnN0IHJlbmRlckluamVjdGlvbiA9IChmaXh0dXJlOiBhbnksIHRlbXBsYXRlOiBhbnksIHBhcmFtczogYW55KTogdm9pZCA9PiB7XG4gIGNvbnN0IGluc3RhbmNlID0gVGVzdEJlZC5nZXQodGVtcGxhdGUpO1xuICBpZiAocGFyYW1zKSB7XG4gICAgbmdNb2Nrcy5zdHViKGluc3RhbmNlLCBwYXJhbXMpO1xuICB9XG4gIGZpeHR1cmUucG9pbnQgPSBNb2NrU2VydmljZShEZWJ1Z0VsZW1lbnQsIHtcbiAgICBjaGlsZE5vZGVzOiBbXSxcbiAgICBjaGlsZHJlbjogW10sXG4gICAgY29tcG9uZW50SW5zdGFuY2U6IGluc3RhbmNlLFxuICAgIG5hdGl2ZUVsZW1lbnQ6IE1vY2tTZXJ2aWNlKEhUTUxFbGVtZW50KSxcbiAgfSk7XG4gIGZ1bmNJbnN0YWxsUHJvcFJlYWRlcihmaXh0dXJlLmNvbXBvbmVudEluc3RhbmNlLCBmaXh0dXJlLnBvaW50LmNvbXBvbmVudEluc3RhbmNlLCB0cnVlKTtcbn07XG5cbmNvbnN0IHRyeVdoZW4gPSAoZmxhZzogYm9vbGVhbiwgY2FsbGJhY2s6ICgpID0+IHZvaWQpID0+IHtcbiAgaWYgKCFmbGFnKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIHRyeSB7XG4gICAgLy8gaXZ5IHRocm93cyBFcnJvcjogRXhwZWN0aW5nIGluc3RhbmNlIG9mIERPTSBFbGVtZW50XG4gICAgY2FsbGJhY2soKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIC8vIG5vdGhpbmcgdG8gZG9cbiAgfVxufTtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQ+KFxuICB0ZW1wbGF0ZTogSW5qZWN0aW9uVG9rZW48TUNvbXBvbmVudD4sXG4gIHBhcmFtcz86IHVuZGVmaW5lZCxcbiAgZGV0ZWN0Q2hhbmdlcz86IGJvb2xlYW4gfCBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrZWRDb21wb25lbnRGaXh0dXJlPE1Db21wb25lbnQsIHZvaWQ+O1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyXG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXI8TUNvbXBvbmVudD4oXG4gIHRlbXBsYXRlOiBUeXBlPE1Db21wb25lbnQ+LFxuICBwYXJhbXM6IHVuZGVmaW5lZCxcbiAgZGV0ZWN0Q2hhbmdlcz86IGJvb2xlYW4gfCBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrZWRDb21wb25lbnRGaXh0dXJlPE1Db21wb25lbnQsIE1Db21wb25lbnQ+O1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyXG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXI8TUNvbXBvbmVudCwgVENvbXBvbmVudCBleHRlbmRzIG9iamVjdD4oXG4gIHRlbXBsYXRlOiBUeXBlPE1Db21wb25lbnQ+LFxuICBwYXJhbXM6IFRDb21wb25lbnQsXG4gIGRldGVjdENoYW5nZXM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50LCBUQ29tcG9uZW50PjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQsIFRDb21wb25lbnQgZXh0ZW5kcyBvYmplY3QgPSBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+PihcbiAgdGVtcGxhdGU6IFR5cGU8TUNvbXBvbmVudD4sXG4gIHBhcmFtczogVENvbXBvbmVudCxcbiAgZGV0ZWN0Q2hhbmdlcz86IGJvb2xlYW4gfCBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrZWRDb21wb25lbnRGaXh0dXJlPE1Db21wb25lbnQsIFRDb21wb25lbnQ+O1xuXG4vKipcbiAqIFdpdGhvdXQgcGFyYW1zIHdlIHNob3VsZCBub3QgYXV0b2NvbXBsZXRlIGFueSBrZXlzIG9mIGFueSB0eXBlcy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQ+KHRlbXBsYXRlOiBUeXBlPE1Db21wb25lbnQ+KTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50LCBNQ29tcG9uZW50PjtcblxuLyoqXG4gKiBBbiBlbXB0eSBzdHJpbmcgZG9lcyBub3QgaGF2ZSBwb2ludC5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyKHRlbXBsYXRlOiAnJyk6IENvbXBvbmVudEZpeHR1cmU8dm9pZD4gJiB7IHBvaW50OiB1bmRlZmluZWQgfTtcblxuLyoqXG4gKiBXaXRob3V0IHBhcmFtcyB3ZSBzaG91bGQgbm90IGF1dG9jb21wbGV0ZSBhbnkga2V5cyBvZiBhbnkgdHlwZXMuXG4gKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50ID0gdm9pZD4odGVtcGxhdGU6IHN0cmluZyk6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50ID0gdm9pZCwgVENvbXBvbmVudCBleHRlbmRzIFJlY29yZDxrZXlvZiBhbnksIGFueT4gPSBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+PihcbiAgdGVtcGxhdGU6IHN0cmluZyxcbiAgcGFyYW1zOiBUQ29tcG9uZW50LFxuICBkZXRlY3RDaGFuZ2VzPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudCwgVENvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50LCBUQ29tcG9uZW50IGV4dGVuZHMgUmVjb3JkPGtleW9mIGFueSwgYW55PiA9IFJlY29yZDxrZXlvZiBhbnksIGFueT4+KFxuICB0ZW1wbGF0ZTogc3RyaW5nLFxuICBwYXJhbXM6IFRDb21wb25lbnQsXG4gIGRldGVjdENoYW5nZXM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50LCBUQ29tcG9uZW50PjtcblxuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50LCBUQ29tcG9uZW50IGV4dGVuZHMgUmVjb3JkPGtleW9mIGFueSwgYW55Pj4oXG4gIHRlbXBsYXRlOiBzdHJpbmcgfCBUeXBlPE1Db21wb25lbnQ+IHwgSW5qZWN0aW9uVG9rZW48TUNvbXBvbmVudD4sXG4gIHBhcmFtcz86IFRDb21wb25lbnQsXG4gIGZsYWdzOiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zID0gdHJ1ZSxcbik6IGFueSB7XG4gIGNvbnN0IGZsYWdzT2JqZWN0OiBJTW9ja1JlbmRlck9wdGlvbnMgPSB0eXBlb2YgZmxhZ3MgPT09ICdib29sZWFuJyA/IHsgZGV0ZWN0Q2hhbmdlczogZmxhZ3MgfSA6IGZsYWdzO1xuICBjb25zdCBtZXRhOiBEaXJlY3RpdmUgPSB0eXBlb2YgdGVtcGxhdGUgPT09ICdzdHJpbmcnIHx8IGlzTmdEZWYodGVtcGxhdGUsICd0JykgPyB7fSA6IHJlZmxlY3RUZW1wbGF0ZSh0ZW1wbGF0ZSk7XG5cbiAgbmdNb2Nrcy5mbHVzaFRlc3RCZWQoKTtcbiAgY29uc3QgZml4dHVyZTogYW55ID0gZml4dHVyZUZhY3RvcnkodGVtcGxhdGUsIG1ldGEsIHBhcmFtcywgZmxhZ3NPYmplY3QpO1xuICBpZiAoaXNFeHBlY3RlZFJlbmRlcih0ZW1wbGF0ZSkpIHtcbiAgICByZW5kZXJEZWNsYXJhdGlvbihmaXh0dXJlLCB0ZW1wbGF0ZSwgcGFyYW1zKTtcbiAgfSBlbHNlIHtcbiAgICByZW5kZXJJbmplY3Rpb24oZml4dHVyZSwgdGVtcGxhdGUsIHBhcmFtcyk7XG4gIH1cblxuICByZXR1cm4gZml4dHVyZTtcbn1cblxuZXhwb3J0IHsgTW9ja1JlbmRlciB9O1xuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1yZW5kZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1yZW5kZXIvbW9jay1yZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBQWlHO0FBQ2pHLGlEQUFrRTtBQUVsRSx1REFBcUQ7QUFDckQsMkZBQW1GO0FBRW5GLG1FQUE0RDtBQUM1RCwyREFBbUQ7QUFDbkQsMERBQXFEO0FBQ3JELDZEQUEyRDtBQUUzRCxtRUFBNEQ7QUFDNUQsdUVBQStEO0FBRy9ELElBQU0sbUNBQW1DLEdBQUcsVUFBQyxNQUFXLEVBQUUsSUFBYyxJQUFLLE9BQUEsQ0FBQyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQTdCLENBQTZCLENBQUM7QUFFM0csSUFBTSw0QkFBNEIsR0FBRyxVQUNuQyxRQUFnQyxFQUNoQyxNQUFXLEVBQ1gsTUFBZ0IsRUFDaEIsT0FBaUI7O0lBRWpCLGtDQUFxQixDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQzs7UUFDeEMsS0FBeUIsSUFBQSxLQUFBLFNBQUEsbUNBQW1DLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFBLGdCQUFBLDRCQUFFO1lBQXpFLElBQU0sVUFBVSxXQUFBO1lBQ2IsSUFBQSxLQUFBLE9BQWEsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBQSxFQUFsQyxRQUFRLFFBQTBCLENBQUM7WUFDMUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFNBQVMsQ0FBQztTQUNoQzs7Ozs7Ozs7OztRQUNELEtBQXlCLElBQUEsS0FBQSxTQUFBLG1DQUFtQyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQSxnQkFBQSw0QkFBRTtZQUExRSxJQUFN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SUFBSSx3QkFBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFaEgscUJBQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN2QixJQUFNLE9BQU8sR0FBUSxjQUFjLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDekUsSUFBSSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUM5QixpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0tBQzlDO1NBQU07UUFDTCxlQUFlLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUM1QztJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFFUSxnQ0FBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRGVidWdFbGVtZW50LCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudEZpeHR1cmUsIFRlc3RCZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBleHRlbmRDbGFzcyB9IGZyb20gJy4uL2NvbW1vbi9jb3JlLmhlbHBlcnMnO1xuaW1wb3J0IGNvcmVSZWZsZWN0RGlyZWN0aXZlUmVzb2x2ZSBmcm9tICcuLi9jb21tb24vY29yZS5yZWZsZWN0LmRpcmVjdGl2ZS1yZXNvbHZlJztcbmltcG9ydCB7IEFueVR5cGUsIFR5cGUgfSBmcm9tICcuLi9jb21tb24vY29yZS50eXBlcyc7XG5pbXBvcnQgZnVuY0ltcG9ydEV4aXN0cyBmcm9tICcuLi9jb21tb24vZnVuYy5pbXBvcnQtZXhpc3RzJztcbmltcG9ydCB7IGlzTmdEZWYgfSBmcm9tICcuLi9jb21tb24vZnVuYy5pcy1uZy1kZWYnO1xuaW1wb3J0IHsgbmdNb2NrcyB9IGZyb20gJy4uL21vY2staGVscGVyL21vY2staGVscGVyJztcbmltcG9ydCB7IE1vY2tTZXJ2aWNlIH0gZnJvbSAnLi4vbW9jay1zZXJ2aWNlL21vY2stc2VydmljZSc7XG5cbmltcG9ydCBmdW5jR2VuZXJhdGVUZW1wbGF0ZSBmcm9tICcuL2Z1bmMuZ2VuZXJhdGUtdGVtcGxhdGUnO1xuaW1wb3J0IGZ1bmNJbnN0YWxsUHJvcFJlYWRlciBmcm9tICcuL2Z1bmMuaW5zdGFsbC1wcm9wLXJlYWRlcic7XG5pbXBvcnQgeyBJTW9ja1JlbmRlck9wdGlvbnMsIE1vY2tlZENvbXBvbmVudEZpeHR1cmUgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgYXBwbHlQYXJhbXNUb0ZpeHR1cmVJbnN0YW5jZUdldERhdGEgPSAocGFyYW1zOiBhbnksIGtleXM6IHN0cmluZ1tdKSA9PiAoIXBhcmFtcyAmJiBrZXlzID8ga2V5cyA6IFtdKTtcblxuY29uc3QgYXBwbHlQYXJhbXNUb0ZpeHR1cmVJbnN0YW5jZSA9IChcbiAgaW5zdGFuY2U6IFJlY29yZDxrZXlvZiBhbnksIGFueT4sXG4gIHBhcmFtczogYW55LFxuICBpbnB1dHM6IHN0cmluZ1tdLFxuICBvdXRwdXRzOiBzdHJpbmdbXSxcbik6IHZvaWQgPT4ge1xuICBmdW5jSW5zdGFsbFByb3BSZWFkZXIoaW5zdGFuY2UsIHBhcmFtcyk7XG4gIGZvciAoY29uc3QgZGVmaW5pdGlvbiBvZiBhcHBseVBhcmFtc1RvRml4dHVyZUluc3RhbmNlR2V0RGF0YShwYXJhbXMsIGlucHV0cykpIHtcbiAgICBjb25zdCBbcHJvcGVydHldID0gZGVmaW5pdGlvbi5zcGxpdCgnOiAnKTtcbiAgICBpbnN0YW5jZVtwcm9wZXJ0eV0gPSB1bmRlZmluZWQ7XG4gIH1cbiAgZm9yIChjb25zdCBkZWZpbml0aW9uIG9mIGFwcGx5UGFyYW1zVG9GaXh0dXJlSW5zdGFuY2VHZXREYXRhKHBhcmFtcywgb3V0cHV0cykpIHtcbiAgICBjb25zdCBbcHJvcGVydHldID0gZGVmaW5pdGlvbi5zcGxpdCgnOiAnKTtcbiAgICBpbnN0YW5jZVtwcm9wZXJ0eV0gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIH1cbn07XG5cbmNvbnN0IHJlZ2lzdGVyVGVtcGxhdGVNaWRkbGV3YXJlID0gKHRlbXBsYXRlOiBBbnlUeXBlPGFueT4sIG1ldGE6IERpcmVjdGl2ZSk6IHZvaWQgPT4ge1xuICBjb25zdCBjaGlsZCA9IGV4dGVuZENsYXNzKHRlbXBsYXRlKTtcblxuICBsZXQgcHJvdmlkZXJzID0gbWV0YS5wcm92aWRlcnMgfHwgW107XG4gIHByb3ZpZGVycyA9IFtcbiAgICAuLi5wcm92aWRlcnMsXG4gICAge1xuICAgICAgcHJvdmlkZTogdGVtcGxhdGUsXG4gICAgICB1c2VFeGlzdGluZzogY2hpbGQsXG4gICAgfSxcbiAgXTtcbiAgbWV0YS5wcm92aWRlcnMgPSBwcm92aWRlcnM7XG5cbiAgaWYgKGlzTmdEZWYodGVtcGxhdGUsICdjJykpIHtcbiAgICBDb21wb25lbnQobWV0YSkoY2hpbGQpO1xuICB9IGVsc2Uge1xuICAgIERpcmVjdGl2ZShtZXRhKShjaGlsZCk7XG4gIH1cbiAgVGVzdEJlZC5jb25maWd1cmVUZXN0aW5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtjaGlsZF0sXG4gIH0pO1xufTtcblxuY29uc3QgcmVmbGVjdFRlbXBsYXRlID0gKHRlbXBsYXRlOiBBbnlUeXBlPGFueT4pOiBEaXJlY3RpdmUgPT4ge1xuICBpZiAoIWlzTmdEZWYodGVtcGxhdGUsICdjJykgJiYgIWlzTmdEZWYodGVtcGxhdGUsICdkJykpIHtcbiAgICByZXR1cm4ge307XG4gIH1cblxuICBjb25zdCBtZXRhID0geyAuLi5jb3JlUmVmbGVjdERpcmVjdGl2ZVJlc29sdmUodGVtcGxhdGUpIH07XG5cbiAgaWYgKG1ldGEuc2VsZWN0b3IgJiYgbWV0YS5zZWxlY3Rvci5tYXRjaCgvW1xcW1xcXSxdLykpIHtcbiAgICBtZXRhLnNlbGVjdG9yID0gJyc7XG4gIH1cblxuICBpZiAoIW1ldGEuc2VsZWN0b3IpIHtcbiAgICBtZXRhLnNlbGVjdG9yID0gYG5nLW1vY2tzLSR7dGVtcGxhdGUubmFtZX1gO1xuICAgIHJlZ2lzdGVyVGVtcGxhdGVNaWRkbGV3YXJlKHRlbXBsYXRlLCBtZXRhKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhO1xufTtcblxuY29uc3QgZ2VuZXJhdGVGaXh0dXJlID0gKHsgcGFyYW1zLCBvcHRpb25zLCBpbnB1dHMsIG91dHB1dHMgfTogYW55KSA9PiB7XG4gIGNsYXNzIE1vY2tSZW5kZXJDb21wb25lbnQge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICAgIGFwcGx5UGFyYW1zVG9GaXh0dXJlSW5zdGFuY2UodGhpcywgcGFyYW1zLCBpbnB1dHMsIG91dHB1dHMpO1xuICAgIH1cbiAgfVxuXG4gIENvbXBvbmVudChvcHRpb25zKShNb2NrUmVuZGVyQ29tcG9uZW50KTtcbiAgVGVzdEJlZC5jb25maWd1cmVUZXN0aW5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtNb2NrUmVuZGVyQ29tcG9uZW50XSxcbiAgfSk7XG5cbiAgcmV0dXJuIFRlc3RCZWQuY3JlYXRlQ29tcG9uZW50KE1vY2tSZW5kZXJDb21wb25lbnQpO1xufTtcblxuY29uc3QgZml4dHVyZUZhY3RvcnkgPSA8VD4odGVtcGxhdGU6IGFueSwgbWV0YTogRGlyZWN0aXZlLCBwYXJhbXM6IGFueSwgZmxhZ3M6IGFueSk6IENvbXBvbmVudEZpeHR1cmU8VD4gPT4ge1xuICBjb25zdCBtb2NrVGVtcGxhdGUgPSBmdW5jR2VuZXJhdGVUZW1wbGF0ZSh0ZW1wbGF0ZSwgeyAuLi5tZXRhLCBwYXJhbXMgfSk7XG4gIGNvbnN0IG9wdGlvbnM6IENvbXBvbmVudCA9IHsgcHJvdmlkZXJzOiBmbGFncy5wcm92aWRlcnMsIHNlbGVjdG9yOiAnbW9jay1yZW5kZXInLCB0ZW1wbGF0ZTogbW9ja1RlbXBsYXRlIH07XG4gIGNvbnN0IGZpeHR1cmU6IGFueSA9IGdlbmVyYXRlRml4dHVyZSh7IC4uLm1ldGEsIHBhcmFtcywgb3B0aW9ucyB9KTtcbiAgaWYgKGZsYWdzLmRldGVjdENoYW5nZXMpIHtcbiAgICBmaXh0dXJlLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHJldHVybiBmaXh0dXJlO1xufTtcblxuY29uc3QgaXNFeHBlY3RlZFJlbmRlciA9ICh0ZW1wbGF0ZTogYW55KTogYm9vbGVhbiA9PlxuICB0eXBlb2YgdGVtcGxhdGUgPT09ICdzdHJpbmcnIHx8IGlzTmdEZWYodGVtcGxhdGUsICdjJykgfHwgaXNOZ0RlZih0ZW1wbGF0ZSwgJ2QnKTtcblxuY29uc3QgcmVuZGVyRGVjbGFyYXRpb24gPSAoZml4dHVyZTogYW55LCB0ZW1wbGF0ZTogYW55LCBwYXJhbXM6IGFueSk6IHZvaWQgPT4ge1xuICBmaXh0dXJlLnBvaW50ID0gZml4dHVyZS5kZWJ1Z0VsZW1lbnQuY2hpbGRyZW5bMF0gfHwgZml4dHVyZS5kZWJ1Z0VsZW1lbnQuY2hpbGROb2Rlc1swXTtcbiAgaWYgKGlzTmdEZWYodGVtcGxhdGUsICdkJykpIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZml4dHVyZS5wb2ludCwgJ2NvbXBvbmVudEluc3RhbmNlJywge1xuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgIGdldDogKCkgPT4gbmdNb2Nrcy5nZXQoZml4dHVyZS5wb2ludCwgdGVtcGxhdGUpLFxuICAgIH0pO1xuICB9XG4gIHRyeVdoZW4oIXBhcmFtcywgKCkgPT4gZnVuY0luc3RhbGxQcm9wUmVhZGVyKGZpeHR1cmUuY29tcG9uZW50SW5zdGFuY2UsIGZpeHR1cmUucG9pbnQ/LmNvbXBvbmVudEluc3RhbmNlKSk7XG59O1xuXG5jb25zdCByZW5kZXJJbmplY3Rpb24gPSAoZml4dHVyZTogYW55LCB0ZW1wbGF0ZTogYW55LCBwYXJhbXM6IGFueSk6IHZvaWQgPT4ge1xuICBjb25zdCBpbnN0YW5jZSA9IFRlc3RCZWQuZ2V0KHRlbXBsYXRlKTtcbiAgaWYgKHBhcmFtcykge1xuICAgIG5nTW9ja3Muc3R1YihpbnN0YW5jZSwgcGFyYW1zKTtcbiAgfVxuICBmaXh0dXJlLnBvaW50ID0gTW9ja1NlcnZpY2UoRGVidWdFbGVtZW50LCB7XG4gICAgY2hpbGROb2RlczogW10sXG4gICAgY2hpbGRyZW46IFtdLFxuICAgIGNvbXBvbmVudEluc3RhbmNlOiBpbnN0YW5jZSxcbiAgICBuYXRpdmVFbGVtZW50OiBNb2NrU2VydmljZShIVE1MRWxlbWVudCksXG4gIH0pO1xuICBmdW5jSW5zdGFsbFByb3BSZWFkZXIoZml4dHVyZS5jb21wb25lbnRJbnN0YW5jZSwgZml4dHVyZS5wb2ludC5jb21wb25lbnRJbnN0YW5jZSwgdHJ1ZSk7XG59O1xuXG5jb25zdCB0cnlXaGVuID0gKGZsYWc6IGJvb2xlYW4sIGNhbGxiYWNrOiAoKSA9PiB2b2lkKSA9PiB7XG4gIGlmICghZmxhZykge1xuICAgIHJldHVybjtcbiAgfVxuICB0cnkge1xuICAgIC8vIGl2eSB0aHJvd3MgRXJyb3I6IEV4cGVjdGluZyBpbnN0YW5jZSBvZiBET00gRWxlbWVudFxuICAgIGNhbGxiYWNrKCk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICAvLyBub3RoaW5nIHRvIGRvXG4gIH1cbn07XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50PihcbiAgdGVtcGxhdGU6IEluamVjdGlvblRva2VuPE1Db21wb25lbnQ+LFxuICBwYXJhbXM/OiB1bmRlZmluZWQsXG4gIGRldGVjdENoYW5nZXM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50LCB2b2lkPjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQ+KFxuICB0ZW1wbGF0ZTogVHlwZTxNQ29tcG9uZW50PixcbiAgcGFyYW1zOiB1bmRlZmluZWQsXG4gIGRldGVjdENoYW5nZXM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50LCBNQ29tcG9uZW50PjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQsIFRDb21wb25lbnQgZXh0ZW5kcyBvYmplY3Q+KFxuICB0ZW1wbGF0ZTogVHlwZTxNQ29tcG9uZW50PixcbiAgcGFyYW1zOiBUQ29tcG9uZW50LFxuICBkZXRlY3RDaGFuZ2VzPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudCwgVENvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50LCBUQ29tcG9uZW50IGV4dGVuZHMgb2JqZWN0ID0gUmVjb3JkPGtleW9mIGFueSwgYW55Pj4oXG4gIHRlbXBsYXRlOiBUeXBlPE1Db21wb25lbnQ+LFxuICBwYXJhbXM6IFRDb21wb25lbnQsXG4gIGRldGVjdENoYW5nZXM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50LCBUQ29tcG9uZW50PjtcblxuLyoqXG4gKiBXaXRob3V0IHBhcmFtcyB3ZSBzaG91bGQgbm90IGF1dG9jb21wbGV0ZSBhbnkga2V5cyBvZiBhbnkgdHlwZXMuXG4gKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50Pih0ZW1wbGF0ZTogVHlwZTxNQ29tcG9uZW50Pik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudCwgTUNvbXBvbmVudD47XG5cbi8qKlxuICogQW4gZW1wdHkgc3RyaW5nIGRvZXMgbm90IGhhdmUgcG9pbnQuXG4gKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcih0ZW1wbGF0ZTogJycpOiBDb21wb25lbnRGaXh0dXJlPHZvaWQ+ICYgeyBwb2ludDogdW5kZWZpbmVkIH07XG5cbi8qKlxuICogV2l0aG91dCBwYXJhbXMgd2Ugc2hvdWxkIG5vdCBhdXRvY29tcGxldGUgYW55IGtleXMgb2YgYW55IHR5cGVzLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyXG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXI8TUNvbXBvbmVudCA9IHZvaWQ+KHRlbXBsYXRlOiBzdHJpbmcpOiBNb2NrZWRDb21wb25lbnRGaXh0dXJlPE1Db21wb25lbnQ+O1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyXG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXI8TUNvbXBvbmVudCA9IHZvaWQsIFRDb21wb25lbnQgZXh0ZW5kcyBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+ID0gUmVjb3JkPGtleW9mIGFueSwgYW55Pj4oXG4gIHRlbXBsYXRlOiBzdHJpbmcsXG4gIHBhcmFtczogVENvbXBvbmVudCxcbiAgZGV0ZWN0Q2hhbmdlcz86IGJvb2xlYW4gfCBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrZWRDb21wb25lbnRGaXh0dXJlPE1Db21wb25lbnQsIFRDb21wb25lbnQ+O1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyXG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXI8TUNvbXBvbmVudCwgVENvbXBvbmVudCBleHRlbmRzIFJlY29yZDxrZXlvZiBhbnksIGFueT4gPSBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+PihcbiAgdGVtcGxhdGU6IHN0cmluZyxcbiAgcGFyYW1zOiBUQ29tcG9uZW50LFxuICBkZXRlY3RDaGFuZ2VzPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudCwgVENvbXBvbmVudD47XG5cbmZ1bmN0aW9uIE1vY2tSZW5kZXI8TUNvbXBvbmVudCwgVENvbXBvbmVudCBleHRlbmRzIFJlY29yZDxrZXlvZiBhbnksIGFueT4+KFxuICB0ZW1wbGF0ZTogc3RyaW5nIHwgVHlwZTxNQ29tcG9uZW50PiB8IEluamVjdGlvblRva2VuPE1Db21wb25lbnQ+LFxuICBwYXJhbXM/OiBUQ29tcG9uZW50LFxuICBmbGFnczogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyA9IHRydWUsXG4pOiBhbnkge1xuICBmdW5jSW1wb3J0RXhpc3RzKHRlbXBsYXRlLCAnTW9ja1JlbmRlcicpO1xuXG4gIGNvbnN0IGZsYWdzT2JqZWN0OiBJTW9ja1JlbmRlck9wdGlvbnMgPSB0eXBlb2YgZmxhZ3MgPT09ICdib29sZWFuJyA/IHsgZGV0ZWN0Q2hhbmdlczogZmxhZ3MgfSA6IGZsYWdzO1xuICBjb25zdCBtZXRhOiBEaXJlY3RpdmUgPSB0eXBlb2YgdGVtcGxhdGUgPT09ICdzdHJpbmcnIHx8IGlzTmdEZWYodGVtcGxhdGUsICd0JykgPyB7fSA6IHJlZmxlY3RUZW1wbGF0ZSh0ZW1wbGF0ZSk7XG5cbiAgbmdNb2Nrcy5mbHVzaFRlc3RCZWQoKTtcbiAgY29uc3QgZml4dHVyZTogYW55ID0gZml4dHVyZUZhY3RvcnkodGVtcGxhdGUsIG1ldGEsIHBhcmFtcywgZmxhZ3NPYmplY3QpO1xuICBpZiAoaXNFeHBlY3RlZFJlbmRlcih0ZW1wbGF0ZSkpIHtcbiAgICByZW5kZXJEZWNsYXJhdGlvbihmaXh0dXJlLCB0ZW1wbGF0ZSwgcGFyYW1zKTtcbiAgfSBlbHNlIHtcbiAgICByZW5kZXJJbmplY3Rpb24oZml4dHVyZSwgdGVtcGxhdGUsIHBhcmFtcyk7XG4gIH1cblxuICByZXR1cm4gZml4dHVyZTtcbn1cblxuZXhwb3J0IHsgTW9ja1JlbmRlciB9O1xuIl19 |
{ | ||
"name": "ng-mocks", | ||
"version": "11.10.0", | ||
"version": "11.10.1", | ||
"description": "An Angular testing library for creating mock services, components, directives, pipes and modules in unit tests, which includes shallow rendering, precise stubs to dump child dependencies, supports Angular 5 6 7 8 9 10 11 12, jasmine and jest.", | ||
@@ -79,7 +79,7 @@ "keywords": [ | ||
"peerDependencies": { | ||
"@angular/common": ">=5.x <=12.x", | ||
"@angular/compiler": ">=5.x <=12.x", | ||
"@angular/core": ">=5.x <=12.x", | ||
"@angular/platform-browser": ">=5.x <=12.x" | ||
"@angular/common": "5.0.0-alpha - 5 || 6.0.0-alpha - 6 || 7.0.0-alpha - 7 || 8.0.0-alpha - 8 || 9.0.0-alpha - 9 || 10.0.0-alpha - 10 || 11.0.0-alpha - 11 || 12.0.0-alpha - 12", | ||
"@angular/compiler": "5.0.0-alpha - 5 || 6.0.0-alpha - 6 || 7.0.0-alpha - 7 || 8.0.0-alpha - 8 || 9.0.0-alpha - 9 || 10.0.0-alpha - 10 || 11.0.0-alpha - 11 || 12.0.0-alpha - 12", | ||
"@angular/core": "5.0.0-alpha - 5 || 6.0.0-alpha - 6 || 7.0.0-alpha - 7 || 8.0.0-alpha - 8 || 9.0.0-alpha - 9 || 10.0.0-alpha - 10 || 11.0.0-alpha - 11 || 12.0.0-alpha - 12", | ||
"@angular/platform-browser": "5.0.0-alpha - 5 || 6.0.0-alpha - 6 || 7.0.0-alpha - 7 || 8.0.0-alpha - 8 || 9.0.0-alpha - 9 || 10.0.0-alpha - 10 || 11.0.0-alpha - 11 || 12.0.0-alpha - 12" | ||
} | ||
} |
1292694
469
14955