ng-mocks 12.0.1 → 12.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/dist/lib/common/ng-mocks-universe.js +5 -1
- package/dist/lib/mock-helper/mock-helper.object.js +2 -3
- package/dist/lib/mock-render/func.create-wrapper.d.ts +1 -1
- package/dist/lib/mock-render/func.create-wrapper.js +22 -8
- package/dist/lib/mock-render/func.generate-template.d.ts +1 -1
- package/dist/lib/mock-render/func.generate-template.js +17 -21
- package/dist/lib/mock-render/mock-render-factory.d.ts +11 -19
- package/dist/lib/mock-render/mock-render-factory.js +13 -29
- package/dist/lib/mock-render/mock-render.js +16 -3
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
## [12.0.1](https://github.com/ike18t/ng-mocks/compare/v12.0.0...v12.0.1) (2021-05-21)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* **core:** a config parameter to suppress MockRender errors [#572](https://github.com/ike18t/ng-mocks/issues/572) ([bcfe23a](https://github.com/ike18t/ng-mocks/commit/bcfe23ab53a87a92529ddb30bb07618cbaab590c))
|
|
7
|
+
* **core:** broken query selectors are properly normalized [#567](https://github.com/ike18t/ng-mocks/issues/567) ([9c1ea70](https://github.com/ike18t/ng-mocks/commit/9c1ea70564f11323337646a6d74ebbddc8965a31))
|
|
8
|
+
* **default-mock:** supports an array with declarations [#568](https://github.com/ike18t/ng-mocks/issues/568) ([5d3b43e](https://github.com/ike18t/ng-mocks/commit/5d3b43e91db0a8e8a40dedc024a40cbd76225575))
|
|
9
|
+
* **default-mock:** supports generic type in array signature [#583](https://github.com/ike18t/ng-mocks/issues/583) ([c925818](https://github.com/ike18t/ng-mocks/commit/c925818e13086e402f79fa49c39e012567d7b52a))
|
|
10
|
+
* **faster:** supports directives and components without selectors [#576](https://github.com/ike18t/ng-mocks/issues/576) ([599c7d5](https://github.com/ike18t/ng-mocks/commit/599c7d518cbf280da85a73aa2a1c23ce85d74523))
|
|
11
|
+
* **mock-render:** allowing to disable flush TestBed warning ([6131ecb](https://github.com/ike18t/ng-mocks/commit/6131ecbf3f45205ec059184819a9ce68c81e1502))
|
|
12
|
+
* **mock-render:** providing a MockRenderFactory in order to reuse the same middleware component ([79fa336](https://github.com/ike18t/ng-mocks/commit/79fa3368798eaf9e49c92201a9b6a693e5f63e8b))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Performance Improvements
|
|
16
|
+
|
|
17
|
+
* **core:** switching internal stack to an array instead of a set ([24c4bfd](https://github.com/ike18t/ng-mocks/commit/24c4bfd7b514b2ed38497039853a5958c721cff8))
|
|
18
|
+
|
|
1
19
|
# [12.0.0](https://github.com/ike18t/ng-mocks/compare/v11.11.2...v12.0.0) (2021-05-13)
|
|
2
20
|
|
|
3
21
|
|
|
@@ -36,6 +36,10 @@ ngMocksUniverse.configInstance = new Map();
|
|
|
36
36
|
ngMocksUniverse.flags = new Set(core_config_1.default.flags);
|
|
37
37
|
ngMocksUniverse.global = new Map();
|
|
38
38
|
ngMocksUniverse.touches = new Set();
|
|
39
|
+
ngMocksUniverse.global.set('flags', {
|
|
40
|
+
// @deprecated and will be changed in A13 to 'throw'
|
|
41
|
+
onTestBedFlushNeed: 'warn',
|
|
42
|
+
});
|
|
39
43
|
ngMocksUniverse.getLocalMocks = function () {
|
|
40
44
|
if (!ngMocksUniverse.global.has('local-mocks')) {
|
|
41
45
|
ngMocksUniverse.global.set('local-mocks', []);
|
|
@@ -91,4 +95,4 @@ var getBuildDeclaration = function (def) { return ngMocksUniverse.getBuildDeclar
|
|
|
91
95
|
ngMocksUniverse.isExcludedDef = function (def) { return hasBuildDeclaration(def) && getBuildDeclaration(def) === null; };
|
|
92
96
|
ngMocksUniverse.isProvidedDef = function (def) { return hasBuildDeclaration(def) && getBuildDeclaration(def) !== null; };
|
|
93
97
|
exports.default = (function () { return ngMocksUniverse; })();
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctbW9ja3MtdW5pdmVyc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvY29tbW9uL25nLW1vY2tzLXVuaXZlcnNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLDZDQUF1QztBQUd2Qyx1QkFBdUI7QUFDdkIsSUFBTSxTQUFTLEdBQUcsY0FBVyxPQUFBLE1BQU0sSUFBSSxNQUFNLEVBQWhCLENBQWdCLENBQUM7QUFFOUMsSUFBTSxTQUFTLEdBQUcsVUFBQyxHQUFXLElBQUssT0FBQTtJQUNqQyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDcEMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztLQUM1QztJQUVELE9BQU8sZUFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDekMsQ0FBQyxFQU5rQyxDQU1sQyxDQUFDO0FBc0JGLFNBQVMsRUFBRSxDQUFDLGVBQWUsR0FBRyxTQUFTLEVBQUUsQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDO0FBQ2hFLElBQU0sZUFBZSxHQUFvQixTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUM7QUFFckUsZUFBZSxDQUFDLGlCQUFpQixHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7QUFDOUMsZUFBZSxDQUFDLGNBQWMsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO0FBQzNDLGVBQWUsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO0FBQzlDLGVBQWUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztBQUMzQyxlQUFlLENBQUMsTUFBTSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7QUFDbkMsZUFBZSxDQUFDLGNBQWMs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Q2Q7SUFFSyxJQUFBLEtBQUEsT0FBUyxRQUFRLElBQUEsRUFBaEIsSUFBSSxRQUFZLENBQUM7SUFFeEIsT0FBTyxJQUFJLEtBQUssTUFBTSxDQUFDO0FBQ3pCLENBQUMsQ0FBQztBQUVGLElBQU0sbUJBQW1CLEdBQUcsVUFBQyxHQUFRLElBQWMsT0FBQSxlQUFlLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLEVBQXhDLENBQXdDLENBQUM7QUFDNUYsSUFBTSxtQkFBbUIsR0FBRyxVQUFDLEdBQVEsSUFBVSxPQUFBLGVBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsRUFBeEMsQ0FBd0MsQ0FBQztBQUV4RixlQUFlLENBQUMsYUFBYSxHQUFHLFVBQUMsR0FBUSxJQUFjLE9BQUEsbUJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksbUJBQW1CLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxFQUE3RCxDQUE2RCxDQUFDO0FBRXJILGVBQWUsQ0FBQyxhQUFhLEdBQUcsVUFBQyxHQUFRLElBQWMsT0FBQSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQTdELENBQTZELENBQUM7QUFFckgsa0JBQWUsQ0FBQyxjQUF1QixPQUFBLGVBQWUsRUFBZixDQUFlLENBQUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IGNvcmVDb25maWcgZnJvbSAnLi9jb3JlLmNvbmZpZyc7XG5pbXBvcnQgeyBBbnlUeXBlIH0gZnJvbSAnLi9jb3JlLnR5cGVzJztcblxuLy8gaXN0YW5idWwgaWdub3JlIG5leHRcbmNvbnN0IGdldEdsb2JhbCA9ICgpOiBhbnkgPT4gd2luZG93IHx8IGdsb2JhbDtcblxuY29uc3QgZ2xvYmFsTWFwID0gKGtleTogc3RyaW5nKSA9PiAoKSA9PiB7XG4gIGlmICghbmdNb2Nrc1VuaXZlcnNlLmdsb2JhbC5oYXMoa2V5KSkge1xuICAgIG5nTW9ja3NVbml2ZXJzZS5nbG9iYWwuc2V0KGtleSwgbmV3IE1hcCgpKTtcbiAgfVxuXG4gIHJldHVybiBuZ01vY2tzVW5pdmVyc2UuZ2xvYmFsLmdldChrZXkpO1xufTtcblxuaW50ZXJmYWNlIE5nTW9ja3NVbml2ZXJzZSB7XG4gIGJ1aWx0RGVjbGFyYXRpb25zOiBNYXA8YW55LCBhbnk+O1xuICBidWlsdFByb3ZpZGVyczogTWFwPGFueSwgYW55PjtcbiAgY2FjaGVEZWNsYXJhdGlvbnM6IE1hcDxhbnksIGFueT47XG4gIGNhY2hlUHJvdmlkZXJzOiBNYXA8YW55LCBhbnk+O1xuICBjb25maWc6IE1hcDxhbnksIGFueT47XG4gIGNvbmZpZ0luc3RhbmNlOiBNYXA8YW55LCBhbnk+O1xuICBmbGFnczogU2V0PHN0cmluZz47XG4gIGdldEJ1aWxkRGVjbGFyYXRpb246IChkZWY6IGFueSkgPT4gYW55IHwgdW5kZWZpbmVkO1xuICBnZXREZWZhdWx0czogKCkgPT4gTWFwPGFueSwgdW5kZWZpbmVkIHwgWydtb2NrJyB8ICdrZWVwJyB8ICdyZXBsYWNlJyB8ICdleGNsdWRlJywgYW55P10+O1xuICBnZXRMb2NhbE1vY2tzOiAoKSA9PiBBcnJheTxbYW55LCBhbnldPjtcbiAgZ2V0T3ZlcnJpZGVzOiAoKSA9PiBNYXA8YW55LCBhbnk+O1xuICBnZXRSZXNvbHV0aW9uOiAoZGVmOiBhbnkpID0+IHVuZGVmaW5lZCB8ICdtb2NrJyB8ICdrZWVwJyB8ICdyZXBsYWNlJyB8ICdleGNsdWRlJztcbiAgZ2xvYmFsOiBNYXA8YW55LCBhbnk+O1xuICBoYXNCdWlsZERlY2xhcmF0aW9uOiAoZGVmOiBhbnkpID0+IGJvb2xlYW47XG4gIGlzRXhjbHVkZWREZWY6IChkZWY6IGFueSkgPT4gYm9vbGVhbjtcbiAgaXNQcm92aWRlZERlZjogKGRlZjogYW55KSA9PiBib29sZWFuO1xuICB0b3VjaGVzOiBTZXQ8QW55VHlwZTxhbnk+IHwgSW5qZWN0aW9uVG9rZW48YW55PiB8IHN0cmluZz47XG59XG5cbmdldEdsb2JhbCgpLm5nTW9ja3NVbml2ZXJzZSA9IGdldEdsb2JhbCgpLm5nTW9ja3NVbml2ZXJzZSB8fCB7fTtcbmNvbnN0IG5nTW9ja3NVbml2ZXJzZTogTmdNb2Nrc1VuaXZlcnNlID0gZ2V0R2xvYmFsKCkubmdNb2Nrc1VuaXZlcnNlO1xuXG5uZ01vY2tzVW5pdmVyc2UuYnVpbHREZWNsYXJhdGlvbnMgPSBuZXcgTWFwKCk7XG5uZ01vY2tzVW5pdmVyc2UuYnVpbHRQcm92aWRlcnMgPSBuZXcgTWFwKCk7XG5uZ01vY2tzVW5pdmVyc2UuY2FjaGVEZWNsYXJhdGlvbnMgPSBuZXcgTWFwKCk7XG5uZ01vY2tzVW5pdmVyc2UuY2FjaGVQcm92aWRlcnMgPSBuZXcgTWFwKCk7XG5uZ01vY2tzVW5pdmVyc2UuY29uZmlnID0gbmV3IE1hcCgpO1xubmdNb2Nrc1VuaXZlcnNlLmNvbmZpZ0luc3RhbmNlID0gbmV3IE1hcCgpO1xubmdNb2Nrc1VuaXZlcnNlLmZsYWdzID0gbmV3IFNldChjb3JlQ29uZmlnLmZsYWdzKTtcbm5nTW9ja3NVbml2ZXJzZS5nbG9iYWwgPSBuZXcgTWFwKCk7XG5uZ01vY2tzVW5pdmVyc2UudG91Y2hlcyA9IG5ldyBTZXQoKTtcblxubmdNb2Nrc1VuaXZlcnNlLmdsb2JhbC5zZXQoJ2ZsYWdzJywge1xuICAvLyBAZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSBjaGFuZ2VkIGluIEExMyB0byAndGhyb3cnXG4gIG9uVGVzdEJlZEZsdXNoTmVlZDogJ3dhcm4nLFxufSk7XG5cbm5nTW9ja3NVbml2ZXJzZS5nZXRMb2NhbE1vY2tzID0gKCkgPT4ge1xuICBpZiAoIW5nTW9ja3NVbml2ZXJzZS5nbG9iYWwuaGFzKCdsb2NhbC1tb2NrcycpKSB7XG4gICAgbmdNb2Nrc1VuaXZlcnNlLmdsb2JhbC5zZXQoJ2xvY2FsLW1vY2tzJywgW10pO1xuICB9XG5cbiAgcmV0dXJuIG5nTW9ja3NVbml2ZXJzZS5nbG9iYWwuZ2V0KCdsb2NhbC1tb2NrcycpO1xufTtcblxubmdNb2Nrc1VuaXZlcnNlLmdldE92ZXJyaWRlcyA9IGdsb2JhbE1hcCgnb3ZlcnJpZGVzJyk7XG5uZ01vY2tzVW5pdmVyc2UuZ2V0RGVmYXVsdHMgPSBnbG9iYWxNYXAoJ2RlZmF1bHRzJyk7XG5cbm5nTW9ja3NVbml2ZXJzZS5nZXRSZXNvbHV0aW9uID0gKGRlZjogYW55KTogdW5kZWZpbmVkIHwgJ21vY2snIHwgJ2tlZXAnIHwgJ3JlcGxhY2UnIHwgJ2V4Y2x1ZGUnID0+IHtcbiAgY29uc3Qgc2V0ID0gbmdNb2Nrc1VuaXZlcnNlLmNvbmZpZy5nZXQoJ25nTW9ja3NEZXBzUmVzb2x1dGlvbicpO1xuICBpZiAoc2V0Py5oYXMoZGVmKSkge1xuICAgIHJldHVybiBzZXQuZ2V0KGRlZik7XG4gIH1cblxuICBjb25zdCBkZWZWYWx1ZSA9IG5nTW9ja3NVbml2ZXJzZS5nZXREZWZhdWx0cygpLmdldChkZWYpO1xuICBpZiAoIWRlZlZhbHVlKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IFt2YWx1ZV0gPSBkZWZWYWx1ZTtcblxuICByZXR1cm4gdmFsdWU7XG59O1xuXG5uZ01vY2tzVW5pdmVyc2UuZ2V0QnVpbGREZWNsYXJhdGlvbiA9IChkZWY6IGFueSk6IHVuZGVmaW5lZCB8IG51bGwgfCBhbnkgPT4ge1xuICBpZiAobmdNb2Nrc1VuaXZlcnNlLmJ1aWx0RGVjbGFyYXRpb25zLmhhcyhkZWYpKSB7XG4gICAgcmV0dXJuIG5nTW9ja3NVbml2ZXJzZS5idWlsdERlY2xhcmF0aW9ucy5nZXQoZGVmKTtcbiAgfVxuXG4gIGNvbnN0IGRlZlZhbHVlID0gbmdNb2Nrc1VuaXZlcnNlLmdldERlZmF1bHRzKCkuZ2V0KGRlZik7XG4gIGlmICghZGVmVmFsdWUpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBbbW9kZSwgcmVwbGFjZW1lbnRdID0gZGVmVmFsdWU7XG5cbiAgaWYgKG1vZGUgPT09ICdleGNsdWRlJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGlmIChtb2RlID09PSAna2VlcCcpIHtcbiAgICByZXR1cm4gZGVmO1xuICB9XG4gIGlmIChtb2RlID09PSAncmVwbGFjZScpIHtcbiAgICByZXR1cm4gcmVwbGFjZW1lbnQ7XG4gIH1cbn07XG5cbm5nTW9ja3NVbml2ZXJzZS5oYXNCdWlsZERlY2xhcmF0aW9uID0gKGRlZjogYW55KTogYm9vbGVhbiA9PiB7XG4gIGlmIChuZ01vY2tzVW5pdmVyc2UuYnVpbHREZWNsYXJhdGlvbnMuaGFzKGRlZikpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNvbnN0IGRlZlZhbHVlID0gbmdNb2Nrc1VuaXZlcnNlLmdldERlZmF1bHRzKCkuZ2V0KGRlZik7XG4gIGlmICghZGVmVmFsdWUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBbbW9kZV0gPSBkZWZWYWx1ZTtcblxuICByZXR1cm4gbW9kZSAhPT0gJ21vY2snO1xufTtcblxuY29uc3QgaGFzQnVpbGREZWNsYXJhdGlvbiA9IChkZWY6IGFueSk6IGJvb2xlYW4gPT4gbmdNb2Nrc1VuaXZlcnNlLmhhc0J1aWxkRGVjbGFyYXRpb24oZGVmKTtcbmNvbnN0IGdldEJ1aWxkRGVjbGFyYXRpb24gPSAoZGVmOiBhbnkpOiBhbnkgPT4gbmdNb2Nrc1VuaXZlcnNlLmdldEJ1aWxkRGVjbGFyYXRpb24oZGVmKTtcblxubmdNb2Nrc1VuaXZlcnNlLmlzRXhjbHVkZWREZWYgPSAoZGVmOiBhbnkpOiBib29sZWFuID0+IGhhc0J1aWxkRGVjbGFyYXRpb24oZGVmKSAmJiBnZXRCdWlsZERlY2xhcmF0aW9uKGRlZikgPT09IG51bGw7XG5cbm5nTW9ja3NVbml2ZXJzZS5pc1Byb3ZpZGVkRGVmID0gKGRlZjogYW55KTogYm9vbGVhbiA9PiBoYXNCdWlsZERlY2xhcmF0aW9uKGRlZikgJiYgZ2V0QnVpbGREZWNsYXJhdGlvbihkZWYpICE9PSBudWxsO1xuXG5leHBvcnQgZGVmYXVsdCAoKCk6IE5nTW9ja3NVbml2ZXJzZSA9PiBuZ01vY2tzVW5pdmVyc2UpKCk7XG4iXX0=
|
|
@@ -41,11 +41,10 @@ exports.default = {
|
|
|
41
41
|
change: mock_helper_change_1.default,
|
|
42
42
|
click: mock_helper_click_1.default,
|
|
43
43
|
config: function (config) {
|
|
44
|
-
var flags = ng_mocks_universe_1.default.global.get('flags')
|
|
44
|
+
var flags = ng_mocks_universe_1.default.global.get('flags');
|
|
45
45
|
if (config.onTestBedFlushNeed !== undefined) {
|
|
46
46
|
flags.onTestBedFlushNeed = config.onTestBedFlushNeed;
|
|
47
47
|
}
|
|
48
|
-
ng_mocks_universe_1.default.global.set('flags', flags);
|
|
49
48
|
},
|
|
50
49
|
crawl: mock_helper_crawl_1.default,
|
|
51
50
|
defaultMock: mock_helper_default_mock_1.default,
|
|
@@ -80,4 +79,4 @@ exports.default = {
|
|
|
80
79
|
touch: mock_helper_touch_1.default,
|
|
81
80
|
trigger: mock_helper_trigger_1.default,
|
|
82
81
|
};
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1oZWxwZXIub2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1tb2Nrcy9zcmMvbGliL21vY2staGVscGVyL21vY2staGVscGVyLm9iamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlFQUEwRDtBQUUxRCwrREFBd0Q7QUFDeEQsaUVBQTBEO0FBQzFELHlFQUFpRTtBQUNqRSwrREFBd0Q7QUFDeEQsNkRBQXNEO0FBQ3RELGdFQUF5RDtBQUN6RCxnRUFBeUQ7QUFDekQsb0VBQTZEO0FBQzdELHVGQUErRTtBQUMvRSx5RkFBaUY7QUFDakYsNERBQXFEO0FBQ3JELG9FQUE0RDtBQUM1RCw0RUFBb0U7QUFDcEUsNEVBQW9FO0FBQ3BFLCtEQUF1RDtBQUN2RCx1RUFBK0Q7QUFDL0QsMkRBQW9EO0FBQ3BELDJFQUFrRTtBQUNsRSxxREFBOEM7QUFDOUMsMkVBQW1FO0FBQ25FLHFFQUE2RDtBQUM3RCxxRUFBNkQ7QUFDN0QsMkVBQW1FO0FBQ25FLHFFQUE2RDtBQUM3RCx1REFBZ0Q7QUFDaEQseURBQWtEO0FBQ2xELDJEQUFvRDtBQUNwRCx5REFBa0Q7QUFDbEQsdURBQWdEO0FBQ2hELHFFQUE2RDtBQUM3RCwrRUFBc0U7QUFDdEUsOERBQXVEO0FBQ3ZELGtFQUEyRDtBQUMzRCw4RkFBcUY7QUFDckYsZ0dBQXVGO0FBRXZGLGtCQUFlO0lBQ2IsT0FBTyxFQUFFLDhCQUFpQjtJQUMxQixNQUFNLEVBQUUsNEJBQWdCO0lBQ3hCLEtBQUssRUFBRSwyQkFBZTtJQUN0QixNQUFNLEVBQUUsVUFBQyxNQUF3RTtRQUMvRSxJQUFNLEtBQUssR0FBRywyQkFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEQsSUFBSSxNQUFNLENBQUMsa0JBQWtCLEtBQUssU0FBUyxFQUFFO1lBQzNDLEtBQUssQ0FBQyxrQkFBa0IsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUM7U0FDdEQ7SUFDSCxDQUFDO0lBQ0QsS0FBSyxFQUFFLDJCQUFlO0lBQ3RCLFdBQVcsRUFBRSxrQ0FBcUI7SUFDbEMsS0FBSyxFQUFFLDJCQUFlO0lBQ3RCLE1BQU0sRUFBRSw0QkFBZ0I7SUFDeEIsSUFBSSxFQUFFLDBCQUFjO0lBQ3BCLE9BQU8sRUFBRSw4QkFBaUI7SUFDMUIsWUFBWSxFQUFFLG1DQUFzQjtJQUNwQyxhQUFhLEVBQUUsb0NBQXVCO0lBQ3RDLGVBQWUsRUFBRSx1Q0FBeUI7SUFDMUMsZ0JBQWdCLEVBQUUsd0NBQTBCO0lBQzVDLFlBQVksRUFBRSxvQ0FBc0I7SUFDcEMsVUFBVSxFQUFFLGlDQUFvQjtJQUNoQyxVQUFVLEVBQUUsaUNBQW9CO0lBQ2hDLEdBQUcsRUFBRSx5QkFBYTtJQUNsQixhQUFhLEVBQUUsb0NBQXVCO0lBQ3RDLFVBQVUsRUFBRSxpQ0FBb0I7SUFDaEMsVUFBVSxFQUFFLGlDQUFvQjtJQUNoQyxhQUFhLEVBQUUsb0NBQXVCO0lBQ3RDLFVBQVUsRUFBRSxpQ0FBb0I7SUFDaEMsSUFBSSxFQUFFLDBCQUFjO0lBQ3BCLElBQUksRUFBRSwwQkFBYztJQUNwQixLQUFLLEVBQUUsMkJBQWU7SUFDdEIsTUFBTSxFQUFFLDRCQUFnQjtJQUN4QixNQUFNLEVBQUUsNEJBQWdCO0lBQ3hCLEtBQUssRUFBRSwyQkFBZTtJQUN0QixNQUFNLEVBQUUsNEJBQWdCO0lBQ3hCLFNBQVMsRUFBRSxnQ0FBbUI7SUFDOUIsSUFBSSxFQUFFLDBCQUFjO0lBQ3BCLFVBQVUsRUFBRSxpQ0FBb0I7SUFDaEMsY0FBYyxFQUFFLHNDQUF3QjtJQUN4QyxLQUFLLEVBQUUsMkJBQWU7SUFDdEIsT0FBTyxFQUFFLDZCQUFpQjtDQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG5nTW9ja3NVbml2ZXJzZSBmcm9tICcuLi9jb21tb24vbmctbW9ja3MtdW5pdmVyc2UnO1xuXG5pbXBvcnQgbW9ja0hlbHBlckNyYXdsIGZyb20gJy4vY3Jhd2wvbW9jay1oZWxwZXIuY3Jhd2wnO1xuaW1wb3J0IG1vY2tIZWxwZXJSZXZlYWwgZnJvbSAnLi9jcmF3bC9tb2NrLWhlbHBlci5yZXZlYWwnO1xuaW1wb3J0IG1vY2tIZWxwZXJSZXZlYWxBbGwgZnJvbSAnLi9jcmF3bC9tb2NrLWhlbHBlci5yZXZlYWwtYWxsJztcbmltcG9ydCBtb2NrSGVscGVyQ2hhbmdlIGZyb20gJy4vY3ZhL21vY2staGVscGVyLmNoYW5nZSc7XG5pbXBvcnQgbW9ja0hlbHBlclRvdWNoIGZyb20gJy4vY3ZhL21vY2staGVscGVyLnRvdWNoJztcbmltcG9ydCBtb2NrSGVscGVyQ2xpY2sgZnJvbSAnLi9ldmVudHMvbW9jay1oZWxwZXIuY2xpY2snO1xuaW1wb3J0IG1vY2tIZWxwZXJFdmVudCBmcm9tICcuL2V2ZW50cy9tb2NrLWhlbHBlci5ldmVudCc7XG5pbXBvcnQgbW9ja0hlbHBlclRyaWdnZXIgZnJvbSAnLi9ldmVudHMvbW9jay1oZWxwZXIudHJpZ2dlcic7XG5pbXBvcnQgbW9ja0hlbHBlckZpbmRJbnN0YW5jZSBmcm9tICcuL2ZpbmQtaW5zdGFuY2UvbW9jay1oZWxwZXIuZmluZC1pbnN0YW5jZSc7XG5pbXBvcnQgbW9ja0hlbHBlckZpbmRJbnN0YW5jZXMgZnJvbSAnLi9maW5kLWluc3RhbmNlL21vY2staGVscGVyLmZpbmQtaW5zdGFuY2VzJztcbmltcG9ydCBtb2NrSGVscGVyRmluZCBmcm9tICcuL2ZpbmQvbW9jay1oZWxwZXIuZmluZCc7XG5pbXBvcnQgbW9ja0hlbHBlckZpbmRBbGwgZnJvbSAnLi9maW5kL21vY2staGVscGVyLmZpbmQtYWxsJztcbmltcG9ydCBtb2NrSGVscGVyRm9ybWF0SHRtbCBmcm9tICcuL2Zvcm1hdC9tb2NrLWhlbHBlci5mb3JtYXQtaHRtbCc7XG5pbXBvcnQgbW9ja0hlbHBlckZvcm1hdFRleHQgZnJvbSAnLi9mb3JtYXQvbW9jay1oZWxwZXIuZm9ybWF0LXRleHQnO1xuaW1wb3J0IG1vY2tIZWxwZXJBdXRvU3B5IGZyb20gJy4vbW9jay1oZWxwZXIuYXV0by1zcHknO1xuaW1wb3J0IG1vY2tIZWxwZXJEZWZhdWx0TW9jayBmcm9tICcuL21vY2staGVscGVyLmRlZmF1bHQtbW9jayc7XG5pbXBvcnQgbW9ja0hlbHBlckZhc3RlciBmcm9tICcuL21vY2staGVscGVyLmZhc3Rlcic7XG5pbXBvcnQgbW9ja0hlbHBlckZsdXNoVGVzdEJlZCBmcm9tICcuL21vY2staGVscGVyLmZsdXNoLXRlc3QtYmVkJztcbmltcG9ydCBtb2NrSGVscGVyR2V0IGZyb20gJy4vbW9jay1oZWxwZXIuZ2V0JztcbmltcG9ydCBtb2NrSGVscGVyR2xvYmFsRXhjbHVkZSBmcm9tICcuL21vY2staGVscGVyLmdsb2JhbC1leGNsdWRlJztcbmltcG9ydCBtb2NrSGVscGVyR2xvYmFsS2VlcCBmcm9tICcuL21vY2staGVscGVyLmdsb2JhbC1rZWVwJztcbmltcG9ydCBtb2NrSGVscGVyR2xvYmFsTW9jayBmcm9tICcuL21vY2staGVscGVyLmdsb2JhbC1tb2NrJztcbmltcG9ydCBtb2NrSGVscGVyR2xvYmFsUmVwbGFjZSBmcm9tICcuL21vY2staGVscGVyLmdsb2JhbC1yZXBsYWNlJztcbmltcG9ydCBtb2NrSGVscGVyR2xvYmFsV2lwZSBmcm9tICcuL21vY2staGVscGVyLmdsb2JhbC13aXBlJztcbmltcG9ydCBtb2NrSGVscGVyR3V0cyBmcm9tICcuL21vY2staGVscGVyLmd1dHMnO1xuaW1wb3J0IG1vY2tIZWxwZXJJbnB1dCBmcm9tICcuL21vY2staGVscGVyLmlucHV0JztcbmltcG9ydCBtb2NrSGVscGVyT3V0cHV0IGZyb20gJy4vbW9jay1oZWxwZXIub3V0cHV0JztcbmltcG9ydCBtb2NrSGVscGVyUmVzZXQgZnJvbSAnLi9tb2NrLWhlbHBlci5yZXNldCc7XG5pbXBvcnQgbW9ja0hlbHBlclN0dWIgZnJvbSAnLi9tb2NrLWhlbHBlci5zdHViJztcbmltcG9ydCBtb2NrSGVscGVyU3R1Yk1lbWJlciBmcm9tICcuL21vY2staGVscGVyLnN0dWItbWVtYmVyJztcbmltcG9ydCBtb2NrSGVscGVyVGhyb3dPbkNvbnNvbGUgZnJvbSAnLi9tb2NrLWhlbHBlci50aHJvdy1vbi1jb25zb2xlJztcbmltcG9ydCBtb2NrSGVscGVySGlkZSBmcm9tICcuL3JlbmRlci9tb2NrLWhlbHBlci5oaWRlJztcbmltcG9ydCBtb2NrSGVscGVyUmVuZGVyIGZyb20gJy4vcmVuZGVyL21vY2staGVscGVyLnJlbmRlcic7XG5pbXBvcnQgbW9ja0hlbHBlckZpbmRUZW1wbGF0ZVJlZiBmcm9tICcuL3RlbXBsYXRlLXJlZi9tb2NrLWhlbHBlci5maW5kLXRlbXBsYXRlLXJlZic7XG5pbXBvcnQgbW9ja0hlbHBlckZpbmRUZW1wbGF0ZVJlZnMgZnJvbSAnLi90ZW1wbGF0ZS1yZWYvbW9jay1oZWxwZXIuZmluZC10ZW1wbGF0ZS1yZWZzJztcblxuZXhwb3J0IGRlZmF1bHQge1xuICBhdXRvU3B5OiBtb2NrSGVscGVyQXV0b1NweSxcbiAgY2hhbmdlOiBtb2NrSGVscGVyQ2hhbmdlLFxuICBjbGljazogbW9ja0hlbHBlckNsaWNrLFxuICBjb25maWc6IChjb25maWc6IHsgb25UZXN0QmVkRmx1c2hOZWVkPzogJ3Rocm93JyB8ICd3YXJuJyB8ICdpLWtub3ctYnV0LWRpc2FibGUnIH0pID0+IHtcbiAgICBjb25zdCBmbGFncyA9IG5nTW9ja3NVbml2ZXJzZS5nbG9iYWwuZ2V0KCdmbGFncycpO1xuICAgIGlmIChjb25maWcub25UZXN0QmVkRmx1c2hOZWVkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGZsYWdzLm9uVGVzdEJlZEZsdXNoTmVlZCA9IGNvbmZpZy5vblRlc3RCZWRGbHVzaE5lZWQ7XG4gICAgfVxuICB9LFxuICBjcmF3bDogbW9ja0hlbHBlckNyYXdsLFxuICBkZWZhdWx0TW9jazogbW9ja0hlbHBlckRlZmF1bHRNb2NrLFxuICBldmVudDogbW9ja0hlbHBlckV2ZW50LFxuICBmYXN0ZXI6IG1vY2tIZWxwZXJGYXN0ZXIsXG4gIGZpbmQ6IG1vY2tIZWxwZXJGaW5kLFxuICBmaW5kQWxsOiBtb2NrSGVscGVyRmluZEFsbCxcbiAgZmluZEluc3RhbmNlOiBtb2NrSGVscGVyRmluZEluc3RhbmNlLFxuICBmaW5kSW5zdGFuY2VzOiBtb2NrSGVscGVyRmluZEluc3RhbmNlcyxcbiAgZmluZFRlbXBsYXRlUmVmOiBtb2NrSGVscGVyRmluZFRlbXBsYXRlUmVmLFxuICBmaW5kVGVtcGxhdGVSZWZzOiBtb2NrSGVscGVyRmluZFRlbXBsYXRlUmVmcyxcbiAgZmx1c2hUZXN0QmVkOiBtb2NrSGVscGVyRmx1c2hUZXN0QmVkLFxuICBmb3JtYXRIdG1sOiBtb2NrSGVscGVyRm9ybWF0SHRtbCxcbiAgZm9ybWF0VGV4dDogbW9ja0hlbHBlckZvcm1hdFRleHQsXG4gIGdldDogbW9ja0hlbHBlckdldCxcbiAgZ2xvYmFsRXhjbHVkZTogbW9ja0hlbHBlckdsb2JhbEV4Y2x1ZGUsXG4gIGdsb2JhbEtlZXA6IG1vY2tIZWxwZXJHbG9iYWxLZWVwLFxuICBnbG9iYWxNb2NrOiBtb2NrSGVscGVyR2xvYmFsTW9jayxcbiAgZ2xvYmFsUmVwbGFjZTogbW9ja0hlbHBlckdsb2JhbFJlcGxhY2UsXG4gIGdsb2JhbFdpcGU6IG1vY2tIZWxwZXJHbG9iYWxXaXBlLFxuICBndXRzOiBtb2NrSGVscGVyR3V0cyxcbiAgaGlkZTogbW9ja0hlbHBlckhpZGUsXG4gIGlucHV0OiBtb2NrSGVscGVySW5wdXQsXG4gIG91dHB1dDogbW9ja0hlbHBlck91dHB1dCxcbiAgcmVuZGVyOiBtb2NrSGVscGVyUmVuZGVyLFxuICByZXNldDogbW9ja0hlbHBlclJlc2V0LFxuICByZXZlYWw6IG1vY2tIZWxwZXJSZXZlYWwsXG4gIHJldmVhbEFsbDogbW9ja0hlbHBlclJldmVhbEFsbCxcbiAgc3R1YjogbW9ja0hlbHBlclN0dWIsXG4gIHN0dWJNZW1iZXI6IG1vY2tIZWxwZXJTdHViTWVtYmVyLFxuICB0aHJvd09uQ29uc29sZTogbW9ja0hlbHBlclRocm93T25Db25zb2xlLFxuICB0b3VjaDogbW9ja0hlbHBlclRvdWNoLFxuICB0cmlnZ2VyOiBtb2NrSGVscGVyVHJpZ2dlcixcbn07XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Directive } from '@angular/core';
|
|
2
2
|
import { Type } from '../common/core.types';
|
|
3
|
-
declare const _default: (template: any, meta: Directive,
|
|
3
|
+
declare const _default: (template: any, meta: Directive, bindings: undefined | null | any[], flags: Record<keyof any, any>) => Type<any>;
|
|
4
4
|
export default _default;
|
|
@@ -24,15 +24,30 @@ var __values = (this && this.__values) || function(o) {
|
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
25
|
var core_1 = require("@angular/core");
|
|
26
26
|
var testing_1 = require("@angular/core/testing");
|
|
27
|
+
var core_define_property_1 = require("../common/core.define-property");
|
|
27
28
|
var helper_define_property_descriptor_1 = require("../mock-service/helper.define-property-descriptor");
|
|
28
29
|
var func_generate_template_1 = require("./func.generate-template");
|
|
29
|
-
var
|
|
30
|
+
var generateWrapperOutput = function (instance) {
|
|
31
|
+
return function (prop, event) {
|
|
32
|
+
if (typeof instance[prop] === 'function') {
|
|
33
|
+
return instance[prop](event);
|
|
34
|
+
}
|
|
35
|
+
if (instance[prop] && typeof instance[prop] === 'object' && typeof instance[prop].emit === 'function') {
|
|
36
|
+
return instance[prop].emit(event);
|
|
37
|
+
}
|
|
38
|
+
if (instance[prop] && typeof instance[prop] === 'object' && typeof instance[prop].next === 'function') {
|
|
39
|
+
return instance[prop].next(event);
|
|
40
|
+
}
|
|
41
|
+
instance[prop] = event;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
30
44
|
var generateWrapper = function (_a) {
|
|
31
|
-
var
|
|
45
|
+
var bindings = _a.bindings, options = _a.options, inputs = _a.inputs;
|
|
32
46
|
var MockRenderComponent = /** @class */ (function () {
|
|
33
47
|
function MockRenderComponent() {
|
|
34
48
|
var e_1, _a;
|
|
35
|
-
|
|
49
|
+
core_define_property_1.default(this, '__ngMocksOutput', generateWrapperOutput(this));
|
|
50
|
+
if (!bindings) {
|
|
36
51
|
var _loop_1 = function (input) {
|
|
37
52
|
var value = null;
|
|
38
53
|
helper_define_property_descriptor_1.default(this_1, input, {
|
|
@@ -55,7 +70,6 @@ var generateWrapper = function (_a) {
|
|
|
55
70
|
finally { if (e_1) throw e_1.error; }
|
|
56
71
|
}
|
|
57
72
|
}
|
|
58
|
-
func_install_prop_reader_1.default(this, params);
|
|
59
73
|
}
|
|
60
74
|
return MockRenderComponent;
|
|
61
75
|
}());
|
|
@@ -65,13 +79,13 @@ var generateWrapper = function (_a) {
|
|
|
65
79
|
});
|
|
66
80
|
return MockRenderComponent;
|
|
67
81
|
};
|
|
68
|
-
exports.default = (function (template, meta,
|
|
69
|
-
var mockTemplate = func_generate_template_1.default(template, __assign(__assign({}, meta), {
|
|
82
|
+
exports.default = (function (template, meta, bindings, flags) {
|
|
83
|
+
var mockTemplate = func_generate_template_1.default(template, __assign(__assign({}, meta), { bindings: bindings }));
|
|
70
84
|
var options = {
|
|
71
85
|
providers: flags.providers,
|
|
72
86
|
selector: 'mock-render',
|
|
73
87
|
template: mockTemplate,
|
|
74
88
|
};
|
|
75
|
-
return generateWrapper(__assign(__assign({}, meta), {
|
|
89
|
+
return generateWrapper(__assign(__assign({}, meta), { bindings: bindings, options: options }));
|
|
76
90
|
});
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuYy5jcmVhdGUtd3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLXJlbmRlci9mdW5jLmNyZWF0ZS13cmFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNDQUFxRDtBQUNyRCxpREFBZ0Q7QUFFaEQsdUVBQWdFO0FBRWhFLHVHQUErRjtBQUUvRixtRUFBNEQ7QUFFNUQsSUFBTSxxQkFBcUIsR0FDekIsVUFBQyxRQUFhO0lBQ2QsT0FBQSxVQUFDLElBQWUsRUFBRSxLQUFVO1FBQzFCLElBQUksT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssVUFBVSxFQUFFO1lBQ3hDLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlCO1FBQ0QsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssUUFBUSxJQUFJLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxVQUFVLEVBQUU7WUFDckcsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ25DO1FBQ0QsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssUUFBUSxJQUFJLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxVQUFVLEVBQUU7WUFDckcsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ25DO1FBRUQsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0FBWkQsQ0FZQyxDQUFDO0FBRUosSUFBTSxlQUFlLEdBQUcsVUFBQyxFQUFrQztRQUFoQyxRQUFRLGNBQUEsRUFBRSxPQUFPLGFBQUEsRUFBRSxNQUFNLFlBQUE7SUFDbEQ7UUFDRTs7WUFDRSw4QkFBa0IsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUV6RSxJQUFJLENBQUMsUUFBUSxFQUFFO3dDQUNGLEtBQUs7b0JBQ2QsSUFBSSxLQUFLLEdBQVEsSUFBSSxDQUFDO29CQUN0QiwyQ0FBOEIsU0FBTyxLQUFLLEVBQUU7d0JBQzFDLEdBQUcsRUFBRSxjQUFNLE9BQUEsS0FBSyxFQUFMLENBQUs7d0JBQ2hCLEdBQUcsRUFBRSxVQUFDLFFBQWEsSUFBSyxPQUFBLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxFQUFsQixDQUFrQjtxQkFDM0MsQ0FBQyxDQUFDOzs7O29CQUxMLEtBQW9CLElBQUEsS0FBQSxTQUFBLE1BQU0sSUFBSSxFQUFFLENBQUEsZ0JBQUE7d0JBQTNCLElBQU0sS0FBSyxXQUFBO2dDQUFMLEtBQUs7cUJBTWY7Ozs7Ozs7OzthQUNGO1FBQ0gsQ0FBQztRQUNILDBCQUFDO0lBQUQsQ0FBQyxBQWRELElBY0M7SUFFRCxnQkFBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDeEMsaUJBQU8sQ0FBQyxzQkFBc0IsQ0FBQztRQUM3QixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztLQUNwQyxDQUFDLENBQUM7SUFFSCxPQUFPLG1CQUFtQixDQUFDO0FBQzdCLENBQUMsQ0FBQztBQUVGLG1CQUFlLFVBQ2IsUUFBYSxFQUNiLElBQWUsRUFDZixRQUFrQyxFQUNsQyxLQUE2QjtJQUU3QixJQUFNLFlBQVksR0FBRyxnQ0FBb0IsQ0FBQyxRQUFRLHdCQUFPLElBQUksS0FBRSxRQUFRLFVBQUEsSUFBRyxDQUFDO0lBQzNFLElBQU0sT0FBTyxHQUFjO1FBQ3pCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztRQUMxQixRQUFRLEVBQUUsYUFBYTtRQUN2QixRQUFRLEVBQUUsWUFBWTtLQUN2QixDQUFDO0lBRUYsT0FBTyxlQUFlLHVCQUFNLElBQUksS0FBRSxRQUFRLFVBQUEsRUFBRSxPQUFPLFNBQUEsSUFBRyxDQUFDO0FBQ3pELENBQUMsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUZXN0QmVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IGNvcmVEZWZpbmVQcm9wZXJ0eSBmcm9tICcuLi9jb21tb24vY29yZS5kZWZpbmUtcHJvcGVydHknO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJy4uL2NvbW1vbi9jb3JlLnR5cGVzJztcbmltcG9ydCBoZWxwZXJEZWZpbmVQcm9wZXJ0eURlc2NyaXB0b3IgZnJvbSAnLi4vbW9jay1zZXJ2aWNlL2hlbHBlci5kZWZpbmUtcHJvcGVydHktZGVzY3JpcHRvcic7XG5cbmltcG9ydCBmdW5jR2VuZXJhdGVUZW1wbGF0ZSBmcm9tICcuL2Z1bmMuZ2VuZXJhdGUtdGVtcGxhdGUnO1xuXG5jb25zdCBnZW5lcmF0ZVdyYXBwZXJPdXRwdXQgPVxuICAoaW5zdGFuY2U6IGFueSkgPT5cbiAgKHByb3A6IGtleW9mIGFueSwgZXZlbnQ6IGFueSk6IHZvaWQgPT4ge1xuICAgIGlmICh0eXBlb2YgaW5zdGFuY2VbcHJvcF0gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHJldHVybiBpbnN0YW5jZVtwcm9wXShldmVudCk7XG4gICAgfVxuICAgIGlmIChpbnN0YW5jZVtwcm9wXSAmJiB0eXBlb2YgaW5zdGFuY2VbcHJvcF0gPT09ICdvYmplY3QnICYmIHR5cGVvZiBpbnN0YW5jZVtwcm9wXS5lbWl0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2VbcHJvcF0uZW1pdChldmVudCk7XG4gICAgfVxuICAgIGlmIChpbnN0YW5jZVtwcm9wXSAmJiB0eXBlb2YgaW5zdGFuY2VbcHJvcF0gPT09ICdvYmplY3QnICYmIHR5cGVvZiBpbnN0YW5jZVtwcm9wXS5uZXh0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2VbcHJvcF0ubmV4dChldmVudCk7XG4gICAgfVxuXG4gICAgaW5zdGFuY2VbcHJvcF0gPSBldmVudDtcbiAgfTtcblxuY29uc3QgZ2VuZXJhdGVXcmFwcGVyID0gKHsgYmluZGluZ3MsIG9wdGlvbnMsIGlucHV0cyB9OiBhbnkpID0+IHtcbiAgY2xhc3MgTW9ja1JlbmRlckNvbXBvbmVudCB7XG4gICAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgICAgY29yZURlZmluZVByb3BlcnR5KHRoaXMsICdfX25nTW9ja3NPdXRwdXQnLCBnZW5lcmF0ZVdyYXBwZXJPdXRwdXQodGhpcykpO1xuXG4gICAgICBpZiAoIWJpbmRpbmdzKSB7XG4gICAgICAgIGZvciAoY29uc3QgaW5wdXQgb2YgaW5wdXRzIHx8IFtdKSB7XG4gICAgICAgICAgbGV0IHZhbHVlOiBhbnkgPSBudWxsO1xuICAgICAgICAgIGhlbHBlckRlZmluZVByb3BlcnR5RGVzY3JpcHRvcih0aGlzLCBpbnB1dCwge1xuICAgICAgICAgICAgZ2V0OiAoKSA9PiB2YWx1ZSxcbiAgICAgICAgICAgIHNldDogKG5ld1ZhbHVlOiBhbnkpID0+ICh2YWx1ZSA9IG5ld1ZhbHVlKSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIENvbXBvbmVudChvcHRpb25zKShNb2NrUmVuZGVyQ29tcG9uZW50KTtcbiAgVGVzdEJlZC5jb25maWd1cmVUZXN0aW5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtNb2NrUmVuZGVyQ29tcG9uZW50XSxcbiAgfSk7XG5cbiAgcmV0dXJuIE1vY2tSZW5kZXJDb21wb25lbnQ7XG59O1xuXG5leHBvcnQgZGVmYXVsdCAoXG4gIHRlbXBsYXRlOiBhbnksXG4gIG1ldGE6IERpcmVjdGl2ZSxcbiAgYmluZGluZ3M6IHVuZGVmaW5lZCB8IG51bGwgfCBhbnlbXSxcbiAgZmxhZ3M6IFJlY29yZDxrZXlvZiBhbnksIGFueT4sXG4pOiBUeXBlPGFueT4gPT4ge1xuICBjb25zdCBtb2NrVGVtcGxhdGUgPSBmdW5jR2VuZXJhdGVUZW1wbGF0ZSh0ZW1wbGF0ZSwgeyAuLi5tZXRhLCBiaW5kaW5ncyB9KTtcbiAgY29uc3Qgb3B0aW9uczogQ29tcG9uZW50ID0ge1xuICAgIHByb3ZpZGVyczogZmxhZ3MucHJvdmlkZXJzLFxuICAgIHNlbGVjdG9yOiAnbW9jay1yZW5kZXInLFxuICAgIHRlbXBsYXRlOiBtb2NrVGVtcGxhdGUsXG4gIH07XG5cbiAgcmV0dXJuIGdlbmVyYXRlV3JhcHBlcih7IC4uLm1ldGEsIGJpbmRpbmdzLCBvcHRpb25zIH0pO1xufTtcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: (declaration: any, { selector,
|
|
1
|
+
declare const _default: (declaration: any, { selector, bindings, inputs, outputs }: any) => string;
|
|
2
2
|
export default _default;
|
|
@@ -27,36 +27,32 @@ var __read = (this && this.__read) || function (o, n) {
|
|
|
27
27
|
return ar;
|
|
28
28
|
};
|
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
var
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
return '.emit($event)';
|
|
30
|
+
var generateTemplateAttrWrap = function (prop, type) { return (type === 'i' ? "[" + prop + "]" : "(" + prop + ")"); };
|
|
31
|
+
var generateTemplateAttrWithParams = function (prop, type) {
|
|
32
|
+
var tpl = " " + generateTemplateAttrWrap(prop, type) + "=\"";
|
|
33
|
+
if (type === 'i') {
|
|
34
|
+
tpl += prop;
|
|
36
35
|
}
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
else {
|
|
37
|
+
tpl += "__ngMocksOutput('" + prop + "', $event)";
|
|
39
38
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
var generateTemplateAttrWrap = function (prop, type) { return (type === 'i' ? "[" + prop + "]" : "(" + prop + ")"); };
|
|
43
|
-
var generateTemplateAttrWithParams = function (params, prop, type) {
|
|
44
|
-
return " " + generateTemplateAttrWrap(prop, type) + "=\"" + prop + (type === 'o' ? solveOutput(params[prop]) : '') + "\"";
|
|
39
|
+
tpl += "\"";
|
|
40
|
+
return tpl;
|
|
45
41
|
};
|
|
46
|
-
var generateTemplateAttr = function (
|
|
42
|
+
var generateTemplateAttr = function (bindings, attr, type) {
|
|
47
43
|
var e_1, _a;
|
|
48
44
|
// unprovided params for inputs should render empty placeholders
|
|
49
|
-
if (!
|
|
45
|
+
if (!bindings && type === 'o') {
|
|
50
46
|
return '';
|
|
51
47
|
}
|
|
52
48
|
var mockTemplate = '';
|
|
53
|
-
var keys =
|
|
49
|
+
var keys = bindings !== null && bindings !== void 0 ? bindings : attr;
|
|
54
50
|
try {
|
|
55
51
|
for (var attr_1 = __values(attr), attr_1_1 = attr_1.next(); !attr_1_1.done; attr_1_1 = attr_1.next()) {
|
|
56
52
|
var definition = attr_1_1.value;
|
|
57
53
|
var _b = __read(definition.split(': '), 2), property = _b[0], alias = _b[1];
|
|
58
54
|
mockTemplate +=
|
|
59
|
-
keys.indexOf(alias || property) === -1 ? '' : generateTemplateAttrWithParams(
|
|
55
|
+
keys.indexOf(alias || property) === -1 ? '' : generateTemplateAttrWithParams(alias || property, type);
|
|
60
56
|
}
|
|
61
57
|
}
|
|
62
58
|
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
@@ -69,7 +65,7 @@ var generateTemplateAttr = function (params, attr, type) {
|
|
|
69
65
|
return mockTemplate;
|
|
70
66
|
};
|
|
71
67
|
exports.default = (function (declaration, _a) {
|
|
72
|
-
var selector = _a.selector,
|
|
68
|
+
var selector = _a.selector, bindings = _a.bindings, inputs = _a.inputs, outputs = _a.outputs;
|
|
73
69
|
var mockTemplate = '';
|
|
74
70
|
// istanbul ignore else
|
|
75
71
|
if (typeof declaration === 'string') {
|
|
@@ -77,10 +73,10 @@ exports.default = (function (declaration, _a) {
|
|
|
77
73
|
}
|
|
78
74
|
else if (selector) {
|
|
79
75
|
mockTemplate += "<" + selector;
|
|
80
|
-
mockTemplate += generateTemplateAttr(
|
|
81
|
-
mockTemplate += generateTemplateAttr(
|
|
76
|
+
mockTemplate += generateTemplateAttr(bindings, inputs, 'i');
|
|
77
|
+
mockTemplate += generateTemplateAttr(bindings, outputs, 'o');
|
|
82
78
|
mockTemplate += "></" + selector + ">";
|
|
83
79
|
}
|
|
84
80
|
return mockTemplate;
|
|
85
81
|
});
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuYy5nZW5lcmF0ZS10ZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLXJlbmRlci9mdW5jLmdlbmVyYXRlLXRlbXBsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBTSx3QkFBd0IsR0FBRyxVQUFDLElBQVksRUFBRSxJQUFlLElBQUssT0FBQSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQUksSUFBSSxNQUFHLENBQUMsQ0FBQyxDQUFDLE1BQUksSUFBSSxNQUFHLENBQUMsRUFBMUMsQ0FBMEMsQ0FBQztBQUUvRyxJQUFNLDhCQUE4QixHQUFHLFVBQUMsSUFBWSxFQUFFLElBQWU7SUFDbkUsSUFBSSxHQUFHLEdBQUcsTUFBSSx3QkFBd0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQUksQ0FBQztJQUN2RCxJQUFJLElBQUksS0FBSyxHQUFHLEVBQUU7UUFDaEIsR0FBRyxJQUFJLElBQUksQ0FBQztLQUNiO1NBQU07UUFDTCxHQUFHLElBQUksc0JBQW9CLElBQUksZUFBWSxDQUFDO0tBQzdDO0lBQ0QsR0FBRyxJQUFJLElBQUcsQ0FBQztJQUVYLE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyxDQUFDO0FBRUYsSUFBTSxvQkFBb0IsR0FBRyxVQUFDLFFBQWtDLEVBQUUsSUFBUyxFQUFFLElBQWU7O0lBQzFGLGdFQUFnRTtJQUNoRSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksS0FBSyxHQUFHLEVBQUU7UUFDN0IsT0FBTyxFQUFFLENBQUM7S0FDWDtJQUVELElBQUksWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUN0QixJQUFNLElBQUksR0FBRyxRQUFRLGFBQVIsUUFBUSxjQUFSLFFBQVEsR0FBSSxJQUFJLENBQUM7O1FBQzlCLEtBQXlCLElBQUEsU0FBQSxTQUFBLElBQUksQ0FBQSwwQkFBQSw0Q0FBRTtZQUExQixJQUFNLFVBQVUsaUJBQUE7WUFDYixJQUFBLEtBQUEsT0FBb0IsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBQSxFQUF6QyxRQUFRLFFBQUEsRUFBRSxLQUFLLFFBQTBCLENBQUM7WUFDakQsWUFBWTtnQkFDVixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyw4QkFBOEIsQ0FBQyxLQUFLLElBQUksUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ3pHOzs7Ozs7Ozs7SUFFRCxPQUFPLFlBQVksQ0FBQztBQUN0QixDQUFDLENBQUM7QUFFRixtQkFBZSxVQUFDLFdBQWdCLEVBQUUsRUFBNEM7UUFBMUMsUUFBUSxjQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsTUFBTSxZQUFBLEVBQUUsT0FBTyxhQUFBO0lBQ3JFLElBQUksWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUV0Qix1QkFBdUI7SUFDdkIsSUFBSSxPQUFPLFdBQVcsS0FBSyxRQUFRLEVBQUU7UUFDbkMsWUFBWSxHQUFHLFdBQVcsQ0FBQztLQUM1QjtTQUFNLElBQUksUUFBUSxFQUFFO1FBQ25CLFlBQVksSUFBSSxNQUFJLFFBQVUsQ0FBQztRQUMvQixZQUFZLElBQUksb0JBQW9CLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM1RCxZQUFZLElBQUksb0JBQW9CLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM3RCxZQUFZLElBQUksUUFBTSxRQUFRLE1BQUcsQ0FBQztLQUNuQztJQUVELE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUMsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGdlbmVyYXRlVGVtcGxhdGVBdHRyV3JhcCA9IChwcm9wOiBzdHJpbmcsIHR5cGU6ICdpJyB8ICdvJykgPT4gKHR5cGUgPT09ICdpJyA/IGBbJHtwcm9wfV1gIDogYCgke3Byb3B9KWApO1xuXG5jb25zdCBnZW5lcmF0ZVRlbXBsYXRlQXR0cldpdGhQYXJhbXMgPSAocHJvcDogc3RyaW5nLCB0eXBlOiAnaScgfCAnbycpOiBzdHJpbmcgPT4ge1xuICBsZXQgdHBsID0gYCAke2dlbmVyYXRlVGVtcGxhdGVBdHRyV3JhcChwcm9wLCB0eXBlKX09XCJgO1xuICBpZiAodHlwZSA9PT0gJ2knKSB7XG4gICAgdHBsICs9IHByb3A7XG4gIH0gZWxzZSB7XG4gICAgdHBsICs9IGBfX25nTW9ja3NPdXRwdXQoJyR7cHJvcH0nLCAkZXZlbnQpYDtcbiAgfVxuICB0cGwgKz0gYFwiYDtcblxuICByZXR1cm4gdHBsO1xufTtcblxuY29uc3QgZ2VuZXJhdGVUZW1wbGF0ZUF0dHIgPSAoYmluZGluZ3M6IG51bGwgfCB1bmRlZmluZWQgfCBhbnlbXSwgYXR0cjogYW55LCB0eXBlOiAnaScgfCAnbycpID0+IHtcbiAgLy8gdW5wcm92aWRlZCBwYXJhbXMgZm9yIGlucHV0cyBzaG91bGQgcmVuZGVyIGVtcHR5IHBsYWNlaG9sZGVyc1xuICBpZiAoIWJpbmRpbmdzICYmIHR5cGUgPT09ICdvJykge1xuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGxldCBtb2NrVGVtcGxhdGUgPSAnJztcbiAgY29uc3Qga2V5cyA9IGJpbmRpbmdzID8/IGF0dHI7XG4gIGZvciAoY29uc3QgZGVmaW5pdGlvbiBvZiBhdHRyKSB7XG4gICAgY29uc3QgW3Byb3BlcnR5LCBhbGlhc10gPSBkZWZpbml0aW9uLnNwbGl0KCc6ICcpO1xuICAgIG1vY2tUZW1wbGF0ZSArPVxuICAgICAga2V5cy5pbmRleE9mKGFsaWFzIHx8IHByb3BlcnR5KSA9PT0gLTEgPyAnJyA6IGdlbmVyYXRlVGVtcGxhdGVBdHRyV2l0aFBhcmFtcyhhbGlhcyB8fCBwcm9wZXJ0eSwgdHlwZSk7XG4gIH1cblxuICByZXR1cm4gbW9ja1RlbXBsYXRlO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgKGRlY2xhcmF0aW9uOiBhbnksIHsgc2VsZWN0b3IsIGJpbmRpbmdzLCBpbnB1dHMsIG91dHB1dHMgfTogYW55KTogc3RyaW5nID0+IHtcbiAgbGV0IG1vY2tUZW1wbGF0ZSA9ICcnO1xuXG4gIC8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlXG4gIGlmICh0eXBlb2YgZGVjbGFyYXRpb24gPT09ICdzdHJpbmcnKSB7XG4gICAgbW9ja1RlbXBsYXRlID0gZGVjbGFyYXRpb247XG4gIH0gZWxzZSBpZiAoc2VsZWN0b3IpIHtcbiAgICBtb2NrVGVtcGxhdGUgKz0gYDwke3NlbGVjdG9yfWA7XG4gICAgbW9ja1RlbXBsYXRlICs9IGdlbmVyYXRlVGVtcGxhdGVBdHRyKGJpbmRpbmdzLCBpbnB1dHMsICdpJyk7XG4gICAgbW9ja1RlbXBsYXRlICs9IGdlbmVyYXRlVGVtcGxhdGVBdHRyKGJpbmRpbmdzLCBvdXRwdXRzLCAnbycpO1xuICAgIG1vY2tUZW1wbGF0ZSArPSBgPjwvJHtzZWxlY3Rvcn0+YDtcbiAgfVxuXG4gIHJldHVybiBtb2NrVGVtcGxhdGU7XG59O1xuIl19
|
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
2
|
import { AnyType } from '../common/core.types';
|
|
3
|
-
import {
|
|
4
|
-
interface MockRenderFactory<C = any, F =
|
|
3
|
+
import { IMockRenderOptions, MockedComponentFixture } from './types';
|
|
4
|
+
interface MockRenderFactory<C = any, F extends keyof any = keyof C> {
|
|
5
|
+
bindings: keyof F;
|
|
5
6
|
declaration: AnyType<never>;
|
|
6
|
-
params:
|
|
7
|
-
(): MockedComponentFixture<C, F>;
|
|
7
|
+
<T extends Record<F, any>>(params?: Partial<T>, detectChanges?: boolean): MockedComponentFixture<C, T>;
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
10
|
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
11
11
|
*/
|
|
12
|
-
declare function MockRenderFactory<MComponent>(template: InjectionToken<MComponent>,
|
|
12
|
+
declare function MockRenderFactory<MComponent>(template: InjectionToken<MComponent>, bindings?: undefined | null, options?: IMockRenderOptions): MockRenderFactory<MComponent, never>;
|
|
13
13
|
/**
|
|
14
14
|
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
15
15
|
*/
|
|
16
|
-
declare function MockRenderFactory<MComponent>(template: AnyType<MComponent>,
|
|
16
|
+
declare function MockRenderFactory<MComponent>(template: AnyType<MComponent>, bindings: undefined | null, options?: IMockRenderOptions): MockRenderFactory<MComponent, keyof MComponent>;
|
|
17
17
|
/**
|
|
18
18
|
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
19
19
|
*/
|
|
20
|
-
declare function MockRenderFactory<MComponent,
|
|
20
|
+
declare function MockRenderFactory<MComponent, TKeys extends keyof any>(template: AnyType<MComponent>, bindings: TKeys[], options?: IMockRenderOptions): MockRenderFactory<MComponent, TKeys>;
|
|
21
21
|
/**
|
|
22
22
|
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
23
23
|
*/
|
|
24
|
-
declare function MockRenderFactory<MComponent,
|
|
24
|
+
declare function MockRenderFactory<MComponent, TKeys extends keyof any = keyof any>(template: AnyType<MComponent>, bindings: TKeys, options?: IMockRenderOptions): MockRenderFactory<MComponent, TKeys>;
|
|
25
25
|
/**
|
|
26
26
|
* Without params we should not autocomplete any keys of any types.
|
|
27
27
|
*
|
|
28
28
|
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
29
29
|
*/
|
|
30
|
-
declare function MockRenderFactory<MComponent>(template: AnyType<MComponent>): MockRenderFactory<MComponent, MComponent>;
|
|
30
|
+
declare function MockRenderFactory<MComponent>(template: AnyType<MComponent>): MockRenderFactory<MComponent, keyof MComponent>;
|
|
31
31
|
/**
|
|
32
32
|
* An empty string does not have point.
|
|
33
33
|
*
|
|
34
34
|
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
35
35
|
*/
|
|
36
|
-
declare function MockRenderFactory(template: ''): MockRenderFactory<void,
|
|
36
|
+
declare function MockRenderFactory(template: ''): MockRenderFactory<void, never>;
|
|
37
37
|
/**
|
|
38
38
|
* Without params we should not autocomplete any keys of any types.
|
|
39
39
|
*
|
|
@@ -43,13 +43,5 @@ declare function MockRenderFactory<MComponent = void>(template: string): MockRen
|
|
|
43
43
|
/**
|
|
44
44
|
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
45
45
|
*/
|
|
46
|
-
declare function MockRenderFactory<MComponent = void>(template: string,
|
|
47
|
-
/**
|
|
48
|
-
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
49
|
-
*/
|
|
50
|
-
declare function MockRenderFactory<MComponent = void, TComponent extends Record<keyof any, any> = Record<keyof any, any>>(template: string, params: TComponent, detectChangesOrOptions?: boolean | IMockRenderOptions): MockRenderFactory<MComponent, TComponent>;
|
|
51
|
-
/**
|
|
52
|
-
* @see https://ng-mocks.sudo.eu/api/MockRender#factory
|
|
53
|
-
*/
|
|
54
|
-
declare function MockRenderFactory<MComponent, TComponent extends Record<keyof any, any> = Record<keyof any, any>>(template: string, params: TComponent, detectChangesOrOptions?: boolean | IMockRenderOptions): MockRenderFactory<MComponent, TComponent>;
|
|
46
|
+
declare function MockRenderFactory<MComponent = void, TKeys extends keyof any = keyof any>(template: string, bindings?: undefined | null, options?: IMockRenderOptions): MockRenderFactory<MComponent, TKeys>;
|
|
55
47
|
export { MockRenderFactory };
|
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
3
|
exports.MockRenderFactory = void 0;
|
|
15
4
|
var core_1 = require("@angular/core");
|
|
@@ -64,20 +53,15 @@ var tryWhen = function (flag, callback) {
|
|
|
64
53
|
var fixtureMessage = [
|
|
65
54
|
'Forgot to flush TestBed?',
|
|
66
55
|
'MockRender cannot be used without a reset after TestBed.get / TestBed.inject / TestBed.createComponent and another MockRender in the same test.',
|
|
56
|
+
'If you want to mock a service before rendering, consider usage of MockRenderFactory or MockInstance.',
|
|
67
57
|
'To flush TestBed, add a call of ngMocks.flushTestBed() before the call of MockRender, or pass `reset: true` to MockRender options.',
|
|
68
|
-
'If you want to mock a service before rendering, consider usage of MockInstance.',
|
|
69
58
|
].join(' ');
|
|
70
59
|
var handleFixtureError = function (e) {
|
|
71
60
|
var error = new Error(fixtureMessage);
|
|
72
61
|
core_define_property_1.default(error, 'parent', e, false);
|
|
73
62
|
throw error;
|
|
74
63
|
};
|
|
75
|
-
var globalFlags = ng_mocks_universe_1.default.global.get('flags')
|
|
76
|
-
// istanbul ignore else
|
|
77
|
-
if (globalFlags.onTestBedFlushNeed === undefined) {
|
|
78
|
-
globalFlags.onTestBedFlushNeed = 'throw';
|
|
79
|
-
}
|
|
80
|
-
ng_mocks_universe_1.default.global.set('flags', globalFlags);
|
|
64
|
+
var globalFlags = ng_mocks_universe_1.default.global.get('flags');
|
|
81
65
|
var flushTestBed = function (flags) {
|
|
82
66
|
var testBed = testing_1.getTestBed();
|
|
83
67
|
if (flags.reset || (!testBed._instantiated && !testBed._testModuleRef)) {
|
|
@@ -91,11 +75,12 @@ var flushTestBed = function (flags) {
|
|
|
91
75
|
mock_helper_1.ngMocks.flushTestBed();
|
|
92
76
|
}
|
|
93
77
|
};
|
|
94
|
-
var generateFactory = function (componentCtor,
|
|
95
|
-
var result = function () {
|
|
78
|
+
var generateFactory = function (componentCtor, bindings, template) {
|
|
79
|
+
var result = function (params, detectChanges) {
|
|
96
80
|
var fixture = testing_1.TestBed.createComponent(componentCtor);
|
|
81
|
+
func_install_prop_reader_1.default(fixture.componentInstance, params);
|
|
97
82
|
core_define_property_1.default(fixture, 'ngMocksStackId', ng_mocks_universe_1.default.global.get('reporter-stack-id'));
|
|
98
|
-
if (
|
|
83
|
+
if (detectChanges === undefined || detectChanges) {
|
|
99
84
|
fixture.detectChanges();
|
|
100
85
|
}
|
|
101
86
|
if (isExpectedRender(template)) {
|
|
@@ -107,22 +92,21 @@ var generateFactory = function (componentCtor, flags, params, template) {
|
|
|
107
92
|
return fixture;
|
|
108
93
|
};
|
|
109
94
|
result.declaration = componentCtor;
|
|
110
|
-
result.
|
|
95
|
+
result.bindings = bindings;
|
|
111
96
|
return result;
|
|
112
97
|
};
|
|
113
|
-
function MockRenderFactory(template,
|
|
114
|
-
if (
|
|
98
|
+
function MockRenderFactory(template, bindings, options) {
|
|
99
|
+
if (options === void 0) { options = {}; }
|
|
115
100
|
func_import_exists_1.default(template, 'MockRender');
|
|
116
|
-
var flagsObject = typeof flags === 'boolean' ? { detectChanges: flags } : __assign({}, flags);
|
|
117
101
|
var meta = typeof template === 'string' || func_is_ng_def_1.isNgDef(template, 't') ? {} : func_reflect_template_1.default(template);
|
|
118
|
-
flushTestBed(
|
|
102
|
+
flushTestBed(options);
|
|
119
103
|
try {
|
|
120
|
-
var componentCtor = func_create_wrapper_1.default(template, meta,
|
|
121
|
-
return generateFactory(componentCtor,
|
|
104
|
+
var componentCtor = func_create_wrapper_1.default(template, meta, bindings, options);
|
|
105
|
+
return generateFactory(componentCtor, bindings, template);
|
|
122
106
|
}
|
|
123
107
|
catch (e) {
|
|
124
108
|
handleFixtureError(e);
|
|
125
109
|
}
|
|
126
110
|
}
|
|
127
111
|
exports.MockRenderFactory = MockRenderFactory;
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1yZW5kZXItZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLXJlbmRlci9tb2NrLXJlbmRlci1mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBQXdFO0FBQ3hFLGlEQUE0RDtBQUU1RCx1RUFBZ0U7QUFFaEUsbUVBQTREO0FBQzVELDJEQUFtRDtBQUNuRCxpRUFBMEQ7QUFDMUQsMERBQXFEO0FBQ3JELHVHQUErRjtBQUMvRiw2REFBMkQ7QUFFM0QsNkRBQXNEO0FBQ3RELHVFQUErRDtBQUMvRCxpRUFBMEQ7QUFTMUQsSUFBTSxnQkFBZ0IsR0FBRyxVQUFDLFFBQWE7SUFDckMsT0FBQSxPQUFPLFFBQVEsS0FBSyxRQUFRLElBQUksd0JBQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLElBQUksd0JBQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDO0FBQWhGLENBQWdGLENBQUM7QUFFbkYsSUFBTSxpQkFBaUIsR0FBRyxVQUFDLE9BQVksRUFBRSxRQUFhLEVBQUUsTUFBVztJQUNqRSxPQUFPLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZGLElBQUksd0JBQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLEVBQUU7UUFDMUIsMkNBQThCLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxtQkFBbUIsRUFBRTtZQUNqRSxHQUFHLEVBQUUsY0FBTSxPQUFBLHFCQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQXBDLENBQW9DO1NBQ2hELENBQUMsQ0FBQztLQUNKO0lBQ0QsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLHNCQUFNLE9BQUEsa0NBQXFCLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE1BQUEsT0FBTyxDQUFDLEtBQUssMENBQUUsaUJBQWlCLENBQUMsQ0FBQSxFQUFBLENBQUMsQ0FBQztBQUM3RyxDQUFDLENBQUM7QUFFRixJQUFNLGVBQWUsR0FBRyxVQUFDLE9BQVksRUFBRSxRQUFhLEVBQUUsTUFBVztJQUMvRCxJQUFNLFFBQVEsR0FBRyxpQkFBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxJQUFJLE1BQU0sRUFBRTtRQUNWLHFCQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUNoQztJQUNELE9BQU8sQ0FBQyxLQUFLLEdBQUcsMEJBQVcsQ0FBQyxtQkFBWSxFQUFFO1FBQ3hDLFVBQVUsRUFBRSxFQUFFO1FBQ2QsUUFBUSxFQUFFLEVBQUU7UUFDWixpQkFBaUIsRUFBRSxRQUFRO1FBQzNCLGFBQWEsRUFBRSwwQkFBVyxDQUFDLFdBQVcsQ0FBQztLQUN4QyxDQUFDLENBQUM7SUFDSCxrQ0FBcUIsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUMxRixDQUFDLENBQUM7QUFFRixJQUFNLE9BQU8sR0FBRyxVQUFDLElBQWEsRUFBRSxRQUFvQjtJQUNsRCxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ1QsT0FBTztLQUNSO0lBQ0QsSUFBSTtRQUNGLHNEQUFzRDtRQUN0RCxRQUFRLEVBQUUsQ0FBQztLQUNaO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixnQkFBZ0I7S0FDakI7QUFDSCxDQUFDLENBQUM7QUFFRixJQUFNLGNBQWMsR0FBRztJQUNyQiwwQkFBMEI7SUFDMUIsaUpBQWlKO0lBQ2pKLG9JQUFvSTtJQUNwSSxpRkFBaUY7Q0FDbEYsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFWixJQUFNLGtCQUFrQixHQUFHLFVBQUMsQ0FBTTtJQUNoQyxJQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4Qyw4QkFBa0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5QyxNQUFNLEtBQUssQ0FBQztBQUNkLENBQUMsQ0FBQztBQUVGLElBQU0sV0FBVyxHQUFHLDJCQUFlLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSwwQkFBMEIsQ0FBQyxFQUFFLENBQUM7QUFDekYsdUJBQXVCO0FBQ3ZCLElBQUksV0FBVyxDQUFDLGtCQUFrQixLQUFLLFNBQVMsRUFBRTtJQUNoRCxXQUFXLENBQUMsa0JBQWtCLEdBQUcsT0FBTyxDQUFDO0NBQzFDO0FBQ0QsMkJBQWUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztBQUNqRCxJQUFNLFlBQVksR0FBRyxVQUFDLEtBQTBCO0lBQzlDLElBQU0sT0FBTyxHQUFRLG9CQUFVLEVBQUUsQ0FBQztJQUNsQyxJQUFJLEtBQUssQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEVBQUU7UUFDdEUscUJBQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztLQUN4QjtTQUFNLElBQUksV0FBVyxDQUFDLGtCQUFrQixLQUFLLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1FBQzFHLElBQUksV0FBVyxDQUFDLGtCQUFrQixLQUFLLE1BQU0sRUFBRTtZQUM3QyxzQ0FBc0M7WUFDdEMsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUM5QjtRQUNELHFCQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7S0FDeEI7QUFDSCxDQUFDLENBQUM7QUFFRixJQUFNLGVBQWUsR0FBRyxVQUFDLGFBQXdCLEVBQUUsS0FBVSxFQUFFLE1BQVcsRUFBRSxRQUFhO0lBQ3ZGLElBQU0sTUFBTSxHQUFHO1FBQ2IsSUFBTSxPQUFPLEdBQVEsaUJBQU8sQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUQsOEJBQWtCLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLDJCQUFlLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7UUFFL0YsSUFBSSxLQUFLLENBQUMsYUFBYSxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsYUFBYSxFQUFFO1lBQzVELE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN6QjtRQUVELElBQUksZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDOUIsaUJBQWlCLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUM5QzthQUFNO1lBQ0wsZUFBZSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDNUM7UUFFRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDLENBQUM7SUFDRixNQUFNLENBQUMsV0FBVyxHQUFHLGFBQWEsQ0FBQztJQUNuQyxNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUV2QixPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDLENBQUM7QUFzRkYsU0FBUyxpQkFBaUIsQ0FDeEIsUUFBbUUsRUFDbkUsTUFBbUIsRUFDbkIsS0FBMEM7SUFBMUMsc0JBQUEsRUFBQSxZQUEwQztJQUUxQyw0QkFBZ0IsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFFekMsSUFBTSxXQUFXLEdBQXVCLE9BQU8sS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxjQUFNLEtBQUssQ0FBRSxDQUFDO0lBQzdHLElBQU0sSUFBSSxHQUFjLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSx3QkFBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywrQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVwSCxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUIsSUFBSTtRQUNGLElBQU0sYUFBYSxHQUFRLDZCQUFpQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRWxGLE9BQU8sZUFBZSxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0tBQ3RFO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN2QjtBQUNILENBQUM7QUFFUSw4Q0FBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWJ1Z0VsZW1lbnQsIERpcmVjdGl2ZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldFRlc3RCZWQsIFRlc3RCZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgY29yZURlZmluZVByb3BlcnR5IGZyb20gJy4uL2NvbW1vbi9jb3JlLmRlZmluZS1wcm9wZXJ0eSc7XG5pbXBvcnQgeyBBbnlUeXBlLCBUeXBlIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUudHlwZXMnO1xuaW1wb3J0IGZ1bmNJbXBvcnRFeGlzdHMgZnJvbSAnLi4vY29tbW9uL2Z1bmMuaW1wb3J0LWV4aXN0cyc7XG5pbXBvcnQgeyBpc05nRGVmIH0gZnJvbSAnLi4vY29tbW9uL2Z1bmMuaXMtbmctZGVmJztcbmltcG9ydCBuZ01vY2tzVW5pdmVyc2UgZnJvbSAnLi4vY29tbW9uL25nLW1vY2tzLXVuaXZlcnNlJztcbmltcG9ydCB7IG5nTW9ja3MgfSBmcm9tICcuLi9tb2NrLWhlbHBlci9tb2NrLWhlbHBlcic7XG5pbXBvcnQgaGVscGVyRGVmaW5lUHJvcGVydHlEZXNjcmlwdG9yIGZyb20gJy4uL21vY2stc2VydmljZS9oZWxwZXIuZGVmaW5lLXByb3BlcnR5LWRlc2NyaXB0b3InO1xuaW1wb3J0IHsgTW9ja1NlcnZpY2UgfSBmcm9tICcuLi9tb2NrLXNlcnZpY2UvbW9jay1zZXJ2aWNlJztcblxuaW1wb3J0IGZ1bmNDcmVhdGVXcmFwcGVyIGZyb20gJy4vZnVuYy5jcmVhdGUtd3JhcHBlcic7XG5pbXBvcnQgZnVuY0luc3RhbGxQcm9wUmVhZGVyIGZyb20gJy4vZnVuYy5pbnN0YWxsLXByb3AtcmVhZGVyJztcbmltcG9ydCBmdW5jUmVmbGVjdFRlbXBsYXRlIGZyb20gJy4vZnVuYy5yZWZsZWN0LXRlbXBsYXRlJztcbmltcG9ydCB7IERlZmF1bHRSZW5kZXJDb21wb25lbnQsIElNb2NrUmVuZGVyT3B0aW9ucywgTW9ja2VkQ29tcG9uZW50Rml4dHVyZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5pbnRlcmZhY2UgTW9ja1JlbmRlckZhY3Rvcnk8QyA9IGFueSwgRiA9IERlZmF1bHRSZW5kZXJDb21wb25lbnQ8Qz4+IHtcbiAgZGVjbGFyYXRpb246IEFueVR5cGU8bmV2ZXI+O1xuICBwYXJhbXM6IEY7XG4gICgpOiBNb2NrZWRDb21wb25lbnRGaXh0dXJlPEMsIEY+O1xufVxuXG5jb25zdCBpc0V4cGVjdGVkUmVuZGVyID0gKHRlbXBsYXRlOiBhbnkpOiBib29sZWFuID0+XG4gIHR5cGVvZiB0ZW1wbGF0ZSA9PT0gJ3N0cmluZycgfHwgaXNOZ0RlZih0ZW1wbGF0ZSwgJ2MnKSB8fCBpc05nRGVmKHRlbXBsYXRlLCAnZCcpO1xuXG5jb25zdCByZW5kZXJEZWNsYXJhdGlvbiA9IChmaXh0dXJlOiBhbnksIHRlbXBsYXRlOiBhbnksIHBhcmFtczogYW55KTogdm9pZCA9PiB7XG4gIGZpeHR1cmUucG9pbnQgPSBmaXh0dXJlLmRlYnVnRWxlbWVudC5jaGlsZHJlblswXSB8fCBmaXh0dXJlLmRlYnVnRWxlbWVudC5jaGlsZE5vZGVzWzBdO1xuICBpZiAoaXNOZ0RlZih0ZW1wbGF0ZSwgJ2QnKSkge1xuICAgIGhlbHBlckRlZmluZVByb3BlcnR5RGVzY3JpcHRvcihmaXh0dXJlLnBvaW50LCAnY29tcG9uZW50SW5zdGFuY2UnLCB7XG4gICAgICBnZXQ6ICgpID0+IG5nTW9ja3MuZ2V0KGZpeHR1cmUucG9pbnQsIHRlbXBsYXRlKSxcbiAgICB9KTtcbiAgfVxuICB0cnlXaGVuKCFwYXJhbXMsICgpID0+IGZ1bmNJbnN0YWxsUHJvcFJlYWRlcihmaXh0dXJlLmNvbXBvbmVudEluc3RhbmNlLCBmaXh0dXJlLnBvaW50Py5jb21wb25lbnRJbnN0YW5jZSkpO1xufTtcblxuY29uc3QgcmVuZGVySW5qZWN0aW9uID0gKGZpeHR1cmU6IGFueSwgdGVtcGxhdGU6IGFueSwgcGFyYW1zOiBhbnkpOiB2b2lkID0+IHtcbiAgY29uc3QgaW5zdGFuY2UgPSBUZXN0QmVkLmdldCh0ZW1wbGF0ZSk7XG4gIGlmIChwYXJhbXMpIHtcbiAgICBuZ01vY2tzLnN0dWIoaW5zdGFuY2UsIHBhcmFtcyk7XG4gIH1cbiAgZml4dHVyZS5wb2ludCA9IE1vY2tTZXJ2aWNlKERlYnVnRWxlbWVudCwge1xuICAgIGNoaWxkTm9kZXM6IFtdLFxuICAgIGNoaWxkcmVuOiBbXSxcbiAgICBjb21wb25lbnRJbnN0YW5jZTogaW5zdGFuY2UsXG4gICAgbmF0aXZlRWxlbWVudDogTW9ja1NlcnZpY2UoSFRNTEVsZW1lbnQpLFxuICB9KTtcbiAgZnVuY0luc3RhbGxQcm9wUmVhZGVyKGZpeHR1cmUuY29tcG9uZW50SW5zdGFuY2UsIGZpeHR1cmUucG9pbnQuY29tcG9uZW50SW5zdGFuY2UsIHRydWUpO1xufTtcblxuY29uc3QgdHJ5V2hlbiA9IChmbGFnOiBib29sZWFuLCBjYWxsYmFjazogKCkgPT4gdm9pZCkgPT4ge1xuICBpZiAoIWZsYWcpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgdHJ5IHtcbiAgICAvLyBpdnkgdGhyb3dzIEVycm9yOiBFeHBlY3RpbmcgaW5zdGFuY2Ugb2YgRE9NIEVsZW1lbnRcbiAgICBjYWxsYmFjaygpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gbm90aGluZyB0byBkb1xuICB9XG59O1xuXG5jb25zdCBmaXh0dXJlTWVzc2FnZSA9IFtcbiAgJ0ZvcmdvdCB0byBmbHVzaCBUZXN0QmVkPycsXG4gICdNb2NrUmVuZGVyIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgYSByZXNldCBhZnRlciBUZXN0QmVkLmdldCAvIFRlc3RCZWQuaW5qZWN0IC8gVGVzdEJlZC5jcmVhdGVDb21wb25lbnQgYW5kIGFub3RoZXIgTW9ja1JlbmRlciBpbiB0aGUgc2FtZSB0ZXN0LicsXG4gICdUbyBmbHVzaCBUZXN0QmVkLCBhZGQgYSBjYWxsIG9mIG5nTW9ja3MuZmx1c2hUZXN0QmVkKCkgYmVmb3JlIHRoZSBjYWxsIG9mIE1vY2tSZW5kZXIsIG9yIHBhc3MgYHJlc2V0OiB0cnVlYCB0byBNb2NrUmVuZGVyIG9wdGlvbnMuJyxcbiAgJ0lmIHlvdSB3YW50IHRvIG1vY2sgYSBzZXJ2aWNlIGJlZm9yZSByZW5kZXJpbmcsIGNvbnNpZGVyIHVzYWdlIG9mIE1vY2tJbnN0YW5jZS4nLFxuXS5qb2luKCcgJyk7XG5cbmNvbnN0IGhhbmRsZUZpeHR1cmVFcnJvciA9IChlOiBhbnkpID0+IHtcbiAgY29uc3QgZXJyb3IgPSBuZXcgRXJyb3IoZml4dHVyZU1lc3NhZ2UpO1xuICBjb3JlRGVmaW5lUHJvcGVydHkoZXJyb3IsICdwYXJlbnQnLCBlLCBmYWxzZSk7XG4gIHRocm93IGVycm9yO1xufTtcblxuY29uc3QgZ2xvYmFsRmxhZ3MgPSBuZ01vY2tzVW5pdmVyc2UuZ2xvYmFsLmdldCgnZmxhZ3MnKSB8fCAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyB7fTtcbi8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlXG5pZiAoZ2xvYmFsRmxhZ3Mub25UZXN0QmVkRmx1c2hOZWVkID09PSB1bmRlZmluZWQpIHtcbiAgZ2xvYmFsRmxhZ3Mub25UZXN0QmVkRmx1c2hOZWVkID0gJ3Rocm93Jztcbn1cbm5nTW9ja3NVbml2ZXJzZS5nbG9iYWwuc2V0KCdmbGFncycsIGdsb2JhbEZsYWdzKTtcbmNvbnN0IGZsdXNoVGVzdEJlZCA9IChmbGFnczogUmVjb3JkPHN0cmluZywgYW55Pik6IHZvaWQgPT4ge1xuICBjb25zdCB0ZXN0QmVkOiBhbnkgPSBnZXRUZXN0QmVkKCk7XG4gIGlmIChmbGFncy5yZXNldCB8fCAoIXRlc3RCZWQuX2luc3RhbnRpYXRlZCAmJiAhdGVzdEJlZC5fdGVzdE1vZHVsZVJlZikpIHtcbiAgICBuZ01vY2tzLmZsdXNoVGVzdEJlZCgpO1xuICB9IGVsc2UgaWYgKGdsb2JhbEZsYWdzLm9uVGVzdEJlZEZsdXNoTmVlZCAhPT0gJ3Rocm93JyAmJiAodGVzdEJlZC5fdGVzdE1vZHVsZVJlZiB8fCB0ZXN0QmVkLl9pbnN0YW50aWF0ZWQpKSB7XG4gICAgaWYgKGdsb2JhbEZsYWdzLm9uVGVzdEJlZEZsdXNoTmVlZCA9PT0gJ3dhcm4nKSB7XG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tY29uc29sZVxuICAgICAgY29uc29sZS53YXJuKGZpeHR1cmVNZXNzYWdlKTtcbiAgICB9XG4gICAgbmdNb2Nrcy5mbHVzaFRlc3RCZWQoKTtcbiAgfVxufTtcblxuY29uc3QgZ2VuZXJhdGVGYWN0b3J5ID0gKGNvbXBvbmVudEN0b3I6IFR5cGU8YW55PiwgZmxhZ3M6IGFueSwgcGFyYW1zOiBhbnksIHRlbXBsYXRlOiBhbnkpID0+IHtcbiAgY29uc3QgcmVzdWx0ID0gKCkgPT4ge1xuICAgIGNvbnN0IGZpeHR1cmU6IGFueSA9IFRlc3RCZWQuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEN0b3IpO1xuICAgIGNvcmVEZWZpbmVQcm9wZXJ0eShmaXh0dXJlLCAnbmdNb2Nrc1N0YWNrSWQnLCBuZ01vY2tzVW5pdmVyc2UuZ2xvYmFsLmdldCgncmVwb3J0ZXItc3RhY2staWQnKSk7XG5cbiAgICBpZiAoZmxhZ3MuZGV0ZWN0Q2hhbmdlcyA9PT0gdW5kZWZpbmVkIHx8IGZsYWdzLmRldGVjdENoYW5nZXMpIHtcbiAgICAgIGZpeHR1cmUuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIGlmIChpc0V4cGVjdGVkUmVuZGVyKHRlbXBsYXRlKSkge1xuICAgICAgcmVuZGVyRGVjbGFyYXRpb24oZml4dHVyZSwgdGVtcGxhdGUsIHBhcmFtcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlbmRlckluamVjdGlvbihmaXh0dXJlLCB0ZW1wbGF0ZSwgcGFyYW1zKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZml4dHVyZTtcbiAgfTtcbiAgcmVzdWx0LmRlY2xhcmF0aW9uID0gY29tcG9uZW50Q3RvcjtcbiAgcmVzdWx0LnBhcmFtcyA9IHBhcmFtcztcblxuICByZXR1cm4gcmVzdWx0O1xufTtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlciNmYWN0b3J5XG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQ+KFxuICB0ZW1wbGF0ZTogSW5qZWN0aW9uVG9rZW48TUNvbXBvbmVudD4sXG4gIHBhcmFtcz86IHVuZGVmaW5lZCB8IG51bGwsXG4gIGRldGVjdENoYW5nZXNPck9wdGlvbnM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja1JlbmRlckZhY3Rvcnk8TUNvbXBvbmVudCwgdm9pZD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50PihcbiAgdGVtcGxhdGU6IEFueVR5cGU8TUNvbXBvbmVudD4sXG4gIHBhcmFtczogdW5kZWZpbmVkIHwgbnVsbCxcbiAgZGV0ZWN0Q2hhbmdlc09yT3B0aW9ucz86IGJvb2xlYW4gfCBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50LCBNQ29tcG9uZW50PjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlciNmYWN0b3J5XG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIFRDb21wb25lbnQgZXh0ZW5kcyBvYmplY3Q+KFxuICB0ZW1wbGF0ZTogQW55VHlwZTxNQ29tcG9uZW50PixcbiAgcGFyYW1zOiBUQ29tcG9uZW50LFxuICBkZXRlY3RDaGFuZ2VzT3JPcHRpb25zPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIFRDb21wb25lbnQ+O1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyI2ZhY3RvcnlcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlckZhY3Rvcnk8TUNvbXBvbmVudCwgVENvbXBvbmVudCBleHRlbmRzIG9iamVjdCA9IFJlY29yZDxrZXlvZiBhbnksIGFueT4+KFxuICB0ZW1wbGF0ZTogQW55VHlwZTxNQ29tcG9uZW50PixcbiAgcGFyYW1zOiBUQ29tcG9uZW50LFxuICBkZXRlY3RDaGFuZ2VzT3JPcHRpb25zPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIFRDb21wb25lbnQ+O1xuXG4vKipcbiAqIFdpdGhvdXQgcGFyYW1zIHdlIHNob3VsZCBub3QgYXV0b2NvbXBsZXRlIGFueSBrZXlzIG9mIGFueSB0eXBlcy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlciNmYWN0b3J5XG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQ+KHRlbXBsYXRlOiBBbnlUeXBlPE1Db21wb25lbnQ+KTogTW9ja1JlbmRlckZhY3Rvcnk8TUNvbXBvbmVudCwgTUNvbXBvbmVudD47XG5cbi8qKlxuICogQW4gZW1wdHkgc3RyaW5nIGRvZXMgbm90IGhhdmUgcG9pbnQuXG4gKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeSh0ZW1wbGF0ZTogJycpOiBNb2NrUmVuZGVyRmFjdG9yeTx2b2lkLCB1bmRlZmluZWQ+O1xuXG4vKipcbiAqIFdpdGhvdXQgcGFyYW1zIHdlIHNob3VsZCBub3QgYXV0b2NvbXBsZXRlIGFueSBrZXlzIG9mIGFueSB0eXBlcy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlciNmYWN0b3J5XG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQgPSB2b2lkPih0ZW1wbGF0ZTogc3RyaW5nKTogTW9ja1JlbmRlckZhY3Rvcnk8TUNvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50ID0gdm9pZD4oXG4gIHRlbXBsYXRlOiBzdHJpbmcsXG4gIHBhcmFtczogdW5kZWZpbmVkIHwgbnVsbCxcbiAgZGV0ZWN0Q2hhbmdlc09yT3B0aW9ucz86IGJvb2xlYW4gfCBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50LCB2b2lkPjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlciNmYWN0b3J5XG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQgPSB2b2lkLCBUQ29tcG9uZW50IGV4dGVuZHMgUmVjb3JkPGtleW9mIGFueSwgYW55PiA9IFJlY29yZDxrZXlvZiBhbnksIGFueT4+KFxuICB0ZW1wbGF0ZTogc3RyaW5nLFxuICBwYXJhbXM6IFRDb21wb25lbnQsXG4gIGRldGVjdENoYW5nZXNPck9wdGlvbnM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja1JlbmRlckZhY3Rvcnk8TUNvbXBvbmVudCwgVENvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50LCBUQ29tcG9uZW50IGV4dGVuZHMgUmVjb3JkPGtleW9mIGFueSwgYW55PiA9IFJlY29yZDxrZXlvZiBhbnksIGFueT4+KFxuICB0ZW1wbGF0ZTogc3RyaW5nLFxuICBwYXJhbXM6IFRDb21wb25lbnQsXG4gIGRldGVjdENoYW5nZXNPck9wdGlvbnM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja1JlbmRlckZhY3Rvcnk8TUNvbXBvbmVudCwgVENvbXBvbmVudD47XG5cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIFRDb21wb25lbnQgZXh0ZW5kcyBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+PihcbiAgdGVtcGxhdGU6IHN0cmluZyB8IEFueVR5cGU8TUNvbXBvbmVudD4gfCBJbmplY3Rpb25Ub2tlbjxNQ29tcG9uZW50PixcbiAgcGFyYW1zPzogVENvbXBvbmVudCxcbiAgZmxhZ3M6IGJvb2xlYW4gfCBJTW9ja1JlbmRlck9wdGlvbnMgPSB0cnVlLFxuKTogYW55IHtcbiAgZnVuY0ltcG9ydEV4aXN0cyh0ZW1wbGF0ZSwgJ01vY2tSZW5kZXInKTtcblxuICBjb25zdCBmbGFnc09iamVjdDogSU1vY2tSZW5kZXJPcHRpb25zID0gdHlwZW9mIGZsYWdzID09PSAnYm9vbGVhbicgPyB7IGRldGVjdENoYW5nZXM6IGZsYWdzIH0gOiB7IC4uLmZsYWdzIH07XG4gIGNvbnN0IG1ldGE6IERpcmVjdGl2ZSA9IHR5cGVvZiB0ZW1wbGF0ZSA9PT0gJ3N0cmluZycgfHwgaXNOZ0RlZih0ZW1wbGF0ZSwgJ3QnKSA/IHt9IDogZnVuY1JlZmxlY3RUZW1wbGF0ZSh0ZW1wbGF0ZSk7XG5cbiAgZmx1c2hUZXN0QmVkKGZsYWdzT2JqZWN0KTtcbiAgdHJ5IHtcbiAgICBjb25zdCBjb21wb25lbnRDdG9yOiBhbnkgPSBmdW5jQ3JlYXRlV3JhcHBlcih0ZW1wbGF0ZSwgbWV0YSwgcGFyYW1zLCBmbGFnc09iamVjdCk7XG5cbiAgICByZXR1cm4gZ2VuZXJhdGVGYWN0b3J5KGNvbXBvbmVudEN0b3IsIGZsYWdzT2JqZWN0LCBwYXJhbXMsIHRlbXBsYXRlKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGhhbmRsZUZpeHR1cmVFcnJvcihlKTtcbiAgfVxufVxuXG5leHBvcnQgeyBNb2NrUmVuZGVyRmFjdG9yeSB9O1xuIl19
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1yZW5kZXItZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctbW9ja3Mvc3JjL2xpYi9tb2NrLXJlbmRlci9tb2NrLXJlbmRlci1mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNDQUF3RTtBQUN4RSxpREFBNEQ7QUFFNUQsdUVBQWdFO0FBRWhFLG1FQUE0RDtBQUM1RCwyREFBbUQ7QUFDbkQsaUVBQTBEO0FBQzFELDBEQUFxRDtBQUNyRCx1R0FBK0Y7QUFDL0YsNkRBQTJEO0FBRTNELDZEQUFzRDtBQUN0RCx1RUFBK0Q7QUFDL0QsaUVBQTBEO0FBUzFELElBQU0sZ0JBQWdCLEdBQUcsVUFBQyxRQUFhO0lBQ3JDLE9BQUEsT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLHdCQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxJQUFJLHdCQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQztBQUFoRixDQUFnRixDQUFDO0FBRW5GLElBQU0saUJBQWlCLEdBQUcsVUFBQyxPQUFZLEVBQUUsUUFBYSxFQUFFLE1BQVc7SUFDakUsT0FBTyxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2RixJQUFJLHdCQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1FBQzFCLDJDQUE4QixDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsbUJBQW1CLEVBQUU7WUFDakUsR0FBRyxFQUFFLGNBQU0sT0FBQSxxQkFBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFwQyxDQUFvQztTQUNoRCxDQUFDLENBQUM7S0FDSjtJQUNELE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxzQkFBTSxPQUFB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QUMsQ0FBQyxDQUFDO0tBQ3ZCO0FBQ0gsQ0FBQztBQUVRLDhDQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlYnVnRWxlbWVudCwgRGlyZWN0aXZlLCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0VGVzdEJlZCwgVGVzdEJlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5cbmltcG9ydCBjb3JlRGVmaW5lUHJvcGVydHkgZnJvbSAnLi4vY29tbW9uL2NvcmUuZGVmaW5lLXByb3BlcnR5JztcbmltcG9ydCB7IEFueVR5cGUsIFR5cGUgfSBmcm9tICcuLi9jb21tb24vY29yZS50eXBlcyc7XG5pbXBvcnQgZnVuY0ltcG9ydEV4aXN0cyBmcm9tICcuLi9jb21tb24vZnVuYy5pbXBvcnQtZXhpc3RzJztcbmltcG9ydCB7IGlzTmdEZWYgfSBmcm9tICcuLi9jb21tb24vZnVuYy5pcy1uZy1kZWYnO1xuaW1wb3J0IG5nTW9ja3NVbml2ZXJzZSBmcm9tICcuLi9jb21tb24vbmctbW9ja3MtdW5pdmVyc2UnO1xuaW1wb3J0IHsgbmdNb2NrcyB9IGZyb20gJy4uL21vY2staGVscGVyL21vY2staGVscGVyJztcbmltcG9ydCBoZWxwZXJEZWZpbmVQcm9wZXJ0eURlc2NyaXB0b3IgZnJvbSAnLi4vbW9jay1zZXJ2aWNlL2hlbHBlci5kZWZpbmUtcHJvcGVydHktZGVzY3JpcHRvcic7XG5pbXBvcnQgeyBNb2NrU2VydmljZSB9IGZyb20gJy4uL21vY2stc2VydmljZS9tb2NrLXNlcnZpY2UnO1xuXG5pbXBvcnQgZnVuY0NyZWF0ZVdyYXBwZXIgZnJvbSAnLi9mdW5jLmNyZWF0ZS13cmFwcGVyJztcbmltcG9ydCBmdW5jSW5zdGFsbFByb3BSZWFkZXIgZnJvbSAnLi9mdW5jLmluc3RhbGwtcHJvcC1yZWFkZXInO1xuaW1wb3J0IGZ1bmNSZWZsZWN0VGVtcGxhdGUgZnJvbSAnLi9mdW5jLnJlZmxlY3QtdGVtcGxhdGUnO1xuaW1wb3J0IHsgSU1vY2tSZW5kZXJPcHRpb25zLCBNb2NrZWRDb21wb25lbnRGaXh0dXJlIH0gZnJvbSAnLi90eXBlcyc7XG5cbmludGVyZmFjZSBNb2NrUmVuZGVyRmFjdG9yeTxDID0gYW55LCBGIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgQz4ge1xuICBiaW5kaW5nczoga2V5b2YgRjtcbiAgZGVjbGFyYXRpb246IEFueVR5cGU8bmV2ZXI+O1xuICA8VCBleHRlbmRzIFJlY29yZDxGLCBhbnk+PihwYXJhbXM/OiBQYXJ0aWFsPFQ+LCBkZXRlY3RDaGFuZ2VzPzogYm9vbGVhbik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8QywgVD47XG59XG5cbmNvbnN0IGlzRXhwZWN0ZWRSZW5kZXIgPSAodGVtcGxhdGU6IGFueSk6IGJvb2xlYW4gPT5cbiAgdHlwZW9mIHRlbXBsYXRlID09PSAnc3RyaW5nJyB8fCBpc05nRGVmKHRlbXBsYXRlLCAnYycpIHx8IGlzTmdEZWYodGVtcGxhdGUsICdkJyk7XG5cbmNvbnN0IHJlbmRlckRlY2xhcmF0aW9uID0gKGZpeHR1cmU6IGFueSwgdGVtcGxhdGU6IGFueSwgcGFyYW1zOiBhbnkpOiB2b2lkID0+IHtcbiAgZml4dHVyZS5wb2ludCA9IGZpeHR1cmUuZGVidWdFbGVtZW50LmNoaWxkcmVuWzBdIHx8IGZpeHR1cmUuZGVidWdFbGVtZW50LmNoaWxkTm9kZXNbMF07XG4gIGlmIChpc05nRGVmKHRlbXBsYXRlLCAnZCcpKSB7XG4gICAgaGVscGVyRGVmaW5lUHJvcGVydHlEZXNjcmlwdG9yKGZpeHR1cmUucG9pbnQsICdjb21wb25lbnRJbnN0YW5jZScsIHtcbiAgICAgIGdldDogKCkgPT4gbmdNb2Nrcy5nZXQoZml4dHVyZS5wb2ludCwgdGVtcGxhdGUpLFxuICAgIH0pO1xuICB9XG4gIHRyeVdoZW4oIXBhcmFtcywgKCkgPT4gZnVuY0luc3RhbGxQcm9wUmVhZGVyKGZpeHR1cmUuY29tcG9uZW50SW5zdGFuY2UsIGZpeHR1cmUucG9pbnQ/LmNvbXBvbmVudEluc3RhbmNlKSk7XG59O1xuXG5jb25zdCByZW5kZXJJbmplY3Rpb24gPSAoZml4dHVyZTogYW55LCB0ZW1wbGF0ZTogYW55LCBwYXJhbXM6IGFueSk6IHZvaWQgPT4ge1xuICBjb25zdCBpbnN0YW5jZSA9IFRlc3RCZWQuZ2V0KHRlbXBsYXRlKTtcbiAgaWYgKHBhcmFtcykge1xuICAgIG5nTW9ja3Muc3R1YihpbnN0YW5jZSwgcGFyYW1zKTtcbiAgfVxuICBmaXh0dXJlLnBvaW50ID0gTW9ja1NlcnZpY2UoRGVidWdFbGVtZW50LCB7XG4gICAgY2hpbGROb2RlczogW10sXG4gICAgY2hpbGRyZW46IFtdLFxuICAgIGNvbXBvbmVudEluc3RhbmNlOiBpbnN0YW5jZSxcbiAgICBuYXRpdmVFbGVtZW50OiBNb2NrU2VydmljZShIVE1MRWxlbWVudCksXG4gIH0pO1xuICBmdW5jSW5zdGFsbFByb3BSZWFkZXIoZml4dHVyZS5jb21wb25lbnRJbnN0YW5jZSwgZml4dHVyZS5wb2ludC5jb21wb25lbnRJbnN0YW5jZSwgdHJ1ZSk7XG59O1xuXG5jb25zdCB0cnlXaGVuID0gKGZsYWc6IGJvb2xlYW4sIGNhbGxiYWNrOiAoKSA9PiB2b2lkKSA9PiB7XG4gIGlmICghZmxhZykge1xuICAgIHJldHVybjtcbiAgfVxuICB0cnkge1xuICAgIC8vIGl2eSB0aHJvd3MgRXJyb3I6IEV4cGVjdGluZyBpbnN0YW5jZSBvZiBET00gRWxlbWVudFxuICAgIGNhbGxiYWNrKCk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICAvLyBub3RoaW5nIHRvIGRvXG4gIH1cbn07XG5cbmNvbnN0IGZpeHR1cmVNZXNzYWdlID0gW1xuICAnRm9yZ290IHRvIGZsdXNoIFRlc3RCZWQ/JyxcbiAgJ01vY2tSZW5kZXIgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBhIHJlc2V0IGFmdGVyIFRlc3RCZWQuZ2V0IC8gVGVzdEJlZC5pbmplY3QgLyBUZXN0QmVkLmNyZWF0ZUNvbXBvbmVudCBhbmQgYW5vdGhlciBNb2NrUmVuZGVyIGluIHRoZSBzYW1lIHRlc3QuJyxcbiAgJ0lmIHlvdSB3YW50IHRvIG1vY2sgYSBzZXJ2aWNlIGJlZm9yZSByZW5kZXJpbmcsIGNvbnNpZGVyIHVzYWdlIG9mIE1vY2tSZW5kZXJGYWN0b3J5IG9yIE1vY2tJbnN0YW5jZS4nLFxuICAnVG8gZmx1c2ggVGVzdEJlZCwgYWRkIGEgY2FsbCBvZiBuZ01vY2tzLmZsdXNoVGVzdEJlZCgpIGJlZm9yZSB0aGUgY2FsbCBvZiBNb2NrUmVuZGVyLCBvciBwYXNzIGByZXNldDogdHJ1ZWAgdG8gTW9ja1JlbmRlciBvcHRpb25zLicsXG5dLmpvaW4oJyAnKTtcblxuY29uc3QgaGFuZGxlRml4dHVyZUVycm9yID0gKGU6IGFueSkgPT4ge1xuICBjb25zdCBlcnJvciA9IG5ldyBFcnJvcihmaXh0dXJlTWVzc2FnZSk7XG4gIGNvcmVEZWZpbmVQcm9wZXJ0eShlcnJvciwgJ3BhcmVudCcsIGUsIGZhbHNlKTtcbiAgdGhyb3cgZXJyb3I7XG59O1xuXG5jb25zdCBnbG9iYWxGbGFncyA9IG5nTW9ja3NVbml2ZXJzZS5nbG9iYWwuZ2V0KCdmbGFncycpO1xuY29uc3QgZmx1c2hUZXN0QmVkID0gKGZsYWdzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogdm9pZCA9PiB7XG4gIGNvbnN0IHRlc3RCZWQ6IGFueSA9IGdldFRlc3RCZWQoKTtcbiAgaWYgKGZsYWdzLnJlc2V0IHx8ICghdGVzdEJlZC5faW5zdGFudGlhdGVkICYmICF0ZXN0QmVkLl90ZXN0TW9kdWxlUmVmKSkge1xuICAgIG5nTW9ja3MuZmx1c2hUZXN0QmVkKCk7XG4gIH0gZWxzZSBpZiAoZ2xvYmFsRmxhZ3Mub25UZXN0QmVkRmx1c2hOZWVkICE9PSAndGhyb3cnICYmICh0ZXN0QmVkLl90ZXN0TW9kdWxlUmVmIHx8IHRlc3RCZWQuX2luc3RhbnRpYXRlZCkpIHtcbiAgICBpZiAoZ2xvYmFsRmxhZ3Mub25UZXN0QmVkRmx1c2hOZWVkID09PSAnd2FybicpIHtcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oZml4dHVyZU1lc3NhZ2UpO1xuICAgIH1cbiAgICBuZ01vY2tzLmZsdXNoVGVzdEJlZCgpO1xuICB9XG59O1xuXG5jb25zdCBnZW5lcmF0ZUZhY3RvcnkgPSAoY29tcG9uZW50Q3RvcjogVHlwZTxhbnk+LCBiaW5kaW5nczogdW5kZWZpbmVkIHwgbnVsbCB8IGFueVtdLCB0ZW1wbGF0ZTogYW55KSA9PiB7XG4gIGNvbnN0IHJlc3VsdCA9IChwYXJhbXM6IGFueSwgZGV0ZWN0Q2hhbmdlcz86IGJvb2xlYW4pID0+IHtcbiAgICBjb25zdCBmaXh0dXJlOiBhbnkgPSBUZXN0QmVkLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRDdG9yKTtcblxuICAgIGZ1bmNJbnN0YWxsUHJvcFJlYWRlcihmaXh0dXJlLmNvbXBvbmVudEluc3RhbmNlLCBwYXJhbXMpO1xuICAgIGNvcmVEZWZpbmVQcm9wZXJ0eShmaXh0dXJlLCAnbmdNb2Nrc1N0YWNrSWQnLCBuZ01vY2tzVW5pdmVyc2UuZ2xvYmFsLmdldCgncmVwb3J0ZXItc3RhY2staWQnKSk7XG5cbiAgICBpZiAoZGV0ZWN0Q2hhbmdlcyA9PT0gdW5kZWZpbmVkIHx8IGRldGVjdENoYW5nZXMpIHtcbiAgICAgIGZpeHR1cmUuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIGlmIChpc0V4cGVjdGVkUmVuZGVyKHRlbXBsYXRlKSkge1xuICAgICAgcmVuZGVyRGVjbGFyYXRpb24oZml4dHVyZSwgdGVtcGxhdGUsIHBhcmFtcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlbmRlckluamVjdGlvbihmaXh0dXJlLCB0ZW1wbGF0ZSwgcGFyYW1zKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZml4dHVyZTtcbiAgfTtcbiAgcmVzdWx0LmRlY2xhcmF0aW9uID0gY29tcG9uZW50Q3RvcjtcbiAgcmVzdWx0LmJpbmRpbmdzID0gYmluZGluZ3M7XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn07XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50PihcbiAgdGVtcGxhdGU6IEluamVjdGlvblRva2VuPE1Db21wb25lbnQ+LFxuICBiaW5kaW5ncz86IHVuZGVmaW5lZCB8IG51bGwsXG4gIG9wdGlvbnM/OiBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50LCBuZXZlcj47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50PihcbiAgdGVtcGxhdGU6IEFueVR5cGU8TUNvbXBvbmVudD4sXG4gIGJpbmRpbmdzOiB1bmRlZmluZWQgfCBudWxsLFxuICBvcHRpb25zPzogSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja1JlbmRlckZhY3Rvcnk8TUNvbXBvbmVudCwga2V5b2YgTUNvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50LCBUS2V5cyBleHRlbmRzIGtleW9mIGFueT4oXG4gIHRlbXBsYXRlOiBBbnlUeXBlPE1Db21wb25lbnQ+LFxuICBiaW5kaW5nczogVEtleXNbXSxcbiAgb3B0aW9ucz86IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIFRLZXlzPjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlciNmYWN0b3J5XG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIFRLZXlzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgYW55PihcbiAgdGVtcGxhdGU6IEFueVR5cGU8TUNvbXBvbmVudD4sXG4gIGJpbmRpbmdzOiBUS2V5cyxcbiAgb3B0aW9ucz86IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIFRLZXlzPjtcblxuLyoqXG4gKiBXaXRob3V0IHBhcmFtcyB3ZSBzaG91bGQgbm90IGF1dG9jb21wbGV0ZSBhbnkga2V5cyBvZiBhbnkgdHlwZXMuXG4gKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50Pih0ZW1wbGF0ZTogQW55VHlwZTxNQ29tcG9uZW50Pik6IE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIGtleW9mIE1Db21wb25lbnQ+O1xuXG4vKipcbiAqIEFuIGVtcHR5IHN0cmluZyBkb2VzIG5vdCBoYXZlIHBvaW50LlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyI2ZhY3RvcnlcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlckZhY3RvcnkodGVtcGxhdGU6ICcnKTogTW9ja1JlbmRlckZhY3Rvcnk8dm9pZCwgbmV2ZXI+O1xuXG4vKipcbiAqIFdpdGhvdXQgcGFyYW1zIHdlIHNob3VsZCBub3QgYXV0b2NvbXBsZXRlIGFueSBrZXlzIG9mIGFueSB0eXBlcy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlciNmYWN0b3J5XG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQgPSB2b2lkPih0ZW1wbGF0ZTogc3RyaW5nKTogTW9ja1JlbmRlckZhY3Rvcnk8TUNvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXIjZmFjdG9yeVxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50ID0gdm9pZCwgVEtleXMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBhbnk+KFxuICB0ZW1wbGF0ZTogc3RyaW5nLFxuICBiaW5kaW5ncz86IHVuZGVmaW5lZCB8IG51bGwsXG4gIG9wdGlvbnM/OiBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrUmVuZGVyRmFjdG9yeTxNQ29tcG9uZW50LCBUS2V5cz47XG5cbmZ1bmN0aW9uIE1vY2tSZW5kZXJGYWN0b3J5PE1Db21wb25lbnQsIFRLZXlzIGV4dGVuZHMga2V5b2YgYW55PihcbiAgdGVtcGxhdGU6IHN0cmluZyB8IEFueVR5cGU8TUNvbXBvbmVudD4gfCBJbmplY3Rpb25Ub2tlbjxNQ29tcG9uZW50PixcbiAgYmluZGluZ3M/OiB1bmRlZmluZWQgfCBudWxsIHwgVEtleXNbXSxcbiAgb3B0aW9uczogSU1vY2tSZW5kZXJPcHRpb25zID0ge30sXG4pOiBhbnkge1xuICBmdW5jSW1wb3J0RXhpc3RzKHRlbXBsYXRlLCAnTW9ja1JlbmRlcicpO1xuXG4gIGNvbnN0IG1ldGE6IERpcmVjdGl2ZSA9IHR5cGVvZiB0ZW1wbGF0ZSA9PT0gJ3N0cmluZycgfHwgaXNOZ0RlZih0ZW1wbGF0ZSwgJ3QnKSA/IHt9IDogZnVuY1JlZmxlY3RUZW1wbGF0ZSh0ZW1wbGF0ZSk7XG5cbiAgZmx1c2hUZXN0QmVkKG9wdGlvbnMpO1xuICB0cnkge1xuICAgIGNvbnN0IGNvbXBvbmVudEN0b3I6IGFueSA9IGZ1bmNDcmVhdGVXcmFwcGVyKHRlbXBsYXRlLCBtZXRhLCBiaW5kaW5ncywgb3B0aW9ucyk7XG5cbiAgICByZXR1cm4gZ2VuZXJhdGVGYWN0b3J5KGNvbXBvbmVudEN0b3IsIGJpbmRpbmdzLCB0ZW1wbGF0ZSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBoYW5kbGVGaXh0dXJlRXJyb3IoZSk7XG4gIH1cbn1cblxuZXhwb3J0IHsgTW9ja1JlbmRlckZhY3RvcnkgfTtcbiJdfQ==
|
|
@@ -1,11 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
14
|
exports.MockRender = void 0;
|
|
4
15
|
var mock_render_factory_1 = require("./mock-render-factory");
|
|
5
16
|
function MockRender(template, params, flags) {
|
|
6
17
|
if (flags === void 0) { flags = true; }
|
|
7
|
-
var
|
|
8
|
-
|
|
18
|
+
var bindings = params && typeof params === 'object' ? Object.keys(params) : params;
|
|
19
|
+
var options = typeof flags === 'boolean' ? { detectChanges: flags } : __assign({}, flags);
|
|
20
|
+
var factory = mock_render_factory_1.MockRenderFactory(template, bindings, options);
|
|
21
|
+
return factory(params, options.detectChanges);
|
|
9
22
|
}
|
|
10
23
|
exports.MockRender = MockRender;
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1yZW5kZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLW1vY2tzL3NyYy9saWIvbW9jay1yZW5kZXIvbW9jay1yZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFLQSw2REFBMEQ7QUF1RjFELFNBQVMsVUFBVSxDQUNqQixRQUFtRSxFQUNuRSxNQUFtQixFQUNuQixLQUEwQztJQUExQyxzQkFBQSxFQUFBLFlBQTBDO0lBRTFDLElBQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNyRixJQUFNLE9BQU8sR0FBRyxPQUFPLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsY0FBTSxLQUFLLENBQUUsQ0FBQztJQUNyRixJQUFNLE9BQU8sR0FBSSx1Q0FBeUIsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRXhFLE9BQU8sT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDaEQsQ0FBQztBQUVRLGdDQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudEZpeHR1cmUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBBbnlUeXBlIH0gZnJvbSAnLi4vY29tbW9uL2NvcmUudHlwZXMnO1xuXG5pbXBvcnQgeyBNb2NrUmVuZGVyRmFjdG9yeSB9IGZyb20gJy4vbW9jay1yZW5kZXItZmFjdG9yeSc7XG5pbXBvcnQgeyBJTW9ja1JlbmRlck9wdGlvbnMsIE1vY2tlZENvbXBvbmVudEZpeHR1cmUgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQ+KFxuICB0ZW1wbGF0ZTogSW5qZWN0aW9uVG9rZW48TUNvbXBvbmVudD4sXG4gIHBhcmFtcz86IHVuZGVmaW5lZCB8IG51bGwsXG4gIGRldGVjdENoYW5nZXNPck9wdGlvbnM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50LCB2b2lkPjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQ+KFxuICB0ZW1wbGF0ZTogQW55VHlwZTxNQ29tcG9uZW50PixcbiAgcGFyYW1zOiB1bmRlZmluZWQgfCBudWxsLFxuICBkZXRlY3RDaGFuZ2VzT3JPcHRpb25zPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudCwgTUNvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50LCBUQ29tcG9uZW50IGV4dGVuZHMgb2JqZWN0PihcbiAgdGVtcGxhdGU6IEFueVR5cGU8TUNvbXBvbmVudD4sXG4gIHBhcmFtczogVENvbXBvbmVudCxcbiAgZGV0ZWN0Q2hhbmdlc09yT3B0aW9ucz86IGJvb2xlYW4gfCBJTW9ja1JlbmRlck9wdGlvbnMsXG4pOiBNb2NrZWRDb21wb25lbnRGaXh0dXJlPE1Db21wb25lbnQsIFRDb21wb25lbnQ+O1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyXG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXI8TUNvbXBvbmVudCwgVENvbXBvbmVudCBleHRlbmRzIG9iamVjdCA9IFJlY29yZDxrZXlvZiBhbnksIGFueT4+KFxuICB0ZW1wbGF0ZTogQW55VHlwZTxNQ29tcG9uZW50PixcbiAgcGFyYW1zOiBUQ29tcG9uZW50LFxuICBkZXRlY3RDaGFuZ2VzT3JPcHRpb25zPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudCwgVENvbXBvbmVudD47XG5cbi8qKlxuICogV2l0aG91dCBwYXJhbXMgd2Ugc2hvdWxkIG5vdCBhdXRvY29tcGxldGUgYW55IGtleXMgb2YgYW55IHR5cGVzLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyXG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXI8TUNvbXBvbmVudD4odGVtcGxhdGU6IEFueVR5cGU8TUNvbXBvbmVudD4pOiBNb2NrZWRDb21wb25lbnRGaXh0dXJlPE1Db21wb25lbnQsIE1Db21wb25lbnQ+O1xuXG4vKipcbiAqIEFuIGVtcHR5IHN0cmluZyBkb2VzIG5vdCBoYXZlIHBvaW50LlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9uZy1tb2Nrcy5zdWRvLmV1L2FwaS9Nb2NrUmVuZGVyXG4gKi9cbmZ1bmN0aW9uIE1vY2tSZW5kZXIodGVtcGxhdGU6ICcnKTogQ29tcG9uZW50Rml4dHVyZTx2b2lkPiAmIHsgcG9pbnQ6IHVuZGVmaW5lZCB9O1xuXG4vKipcbiAqIFdpdGhvdXQgcGFyYW1zIHdlIHNob3VsZCBub3QgYXV0b2NvbXBsZXRlIGFueSBrZXlzIG9mIGFueSB0eXBlcy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQgPSB2b2lkPih0ZW1wbGF0ZTogc3RyaW5nKTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50PjtcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vbmctbW9ja3Muc3Vkby5ldS9hcGkvTW9ja1JlbmRlclxuICovXG5mdW5jdGlvbiBNb2NrUmVuZGVyPE1Db21wb25lbnQgPSB2b2lkPihcbiAgdGVtcGxhdGU6IHN0cmluZyxcbiAgcGFyYW1zOiB1bmRlZmluZWQgfCBudWxsLFxuICBkZXRlY3RDaGFuZ2VzT3JPcHRpb25zPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudCwgdm9pZD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50ID0gdm9pZCwgVENvbXBvbmVudCBleHRlbmRzIFJlY29yZDxrZXlvZiBhbnksIGFueT4gPSBSZWNvcmQ8a2V5b2YgYW55LCBhbnk+PihcbiAgdGVtcGxhdGU6IHN0cmluZyxcbiAgcGFyYW1zOiBUQ29tcG9uZW50LFxuICBkZXRlY3RDaGFuZ2VzT3JPcHRpb25zPzogYm9vbGVhbiB8IElNb2NrUmVuZGVyT3B0aW9ucyxcbik6IE1vY2tlZENvbXBvbmVudEZpeHR1cmU8TUNvbXBvbmVudCwgVENvbXBvbmVudD47XG5cbi8qKlxuICogQHNlZSBodHRwczovL25nLW1vY2tzLnN1ZG8uZXUvYXBpL01vY2tSZW5kZXJcbiAqL1xuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50LCBUQ29tcG9uZW50IGV4dGVuZHMgUmVjb3JkPGtleW9mIGFueSwgYW55PiA9IFJlY29yZDxrZXlvZiBhbnksIGFueT4+KFxuICB0ZW1wbGF0ZTogc3RyaW5nLFxuICBwYXJhbXM6IFRDb21wb25lbnQsXG4gIGRldGVjdENoYW5nZXNPck9wdGlvbnM/OiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zLFxuKTogTW9ja2VkQ29tcG9uZW50Rml4dHVyZTxNQ29tcG9uZW50LCBUQ29tcG9uZW50PjtcblxuZnVuY3Rpb24gTW9ja1JlbmRlcjxNQ29tcG9uZW50LCBUQ29tcG9uZW50IGV4dGVuZHMgUmVjb3JkPGtleW9mIGFueSwgYW55Pj4oXG4gIHRlbXBsYXRlOiBzdHJpbmcgfCBBbnlUeXBlPE1Db21wb25lbnQ+IHwgSW5qZWN0aW9uVG9rZW48TUNvbXBvbmVudD4sXG4gIHBhcmFtcz86IFRDb21wb25lbnQsXG4gIGZsYWdzOiBib29sZWFuIHwgSU1vY2tSZW5kZXJPcHRpb25zID0gdHJ1ZSxcbik6IGFueSB7XG4gIGNvbnN0IGJpbmRpbmdzID0gcGFyYW1zICYmIHR5cGVvZiBwYXJhbXMgPT09ICdvYmplY3QnID8gT2JqZWN0LmtleXMocGFyYW1zKSA6IHBhcmFtcztcbiAgY29uc3Qgb3B0aW9ucyA9IHR5cGVvZiBmbGFncyA9PT0gJ2Jvb2xlYW4nID8geyBkZXRlY3RDaGFuZ2VzOiBmbGFncyB9IDogeyAuLi5mbGFncyB9O1xuICBjb25zdCBmYWN0b3J5ID0gKE1vY2tSZW5kZXJGYWN0b3J5IGFzIGFueSkodGVtcGxhdGUsIGJpbmRpbmdzLCBvcHRpb25zKTtcblxuICByZXR1cm4gZmFjdG9yeShwYXJhbXMsIG9wdGlvbnMuZGV0ZWN0Q2hhbmdlcyk7XG59XG5cbmV4cG9ydCB7IE1vY2tSZW5kZXIgfTtcbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ng-mocks",
|
|
3
|
-
"version": "12.0.
|
|
3
|
+
"version": "12.0.2",
|
|
4
4
|
"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.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|