@skyux/core 6.16.0 → 7.0.0-alpha.0

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.
Files changed (104) hide show
  1. package/documentation.json +1049 -899
  2. package/esm2020/lib/modules/adapter-service/adapter.module.mjs +4 -4
  3. package/esm2020/lib/modules/adapter-service/adapter.service.mjs +24 -25
  4. package/esm2020/lib/modules/affix/affix-offset.mjs +1 -1
  5. package/esm2020/lib/modules/affix/affix.directive.mjs +41 -26
  6. package/esm2020/lib/modules/affix/affix.module.mjs +5 -5
  7. package/esm2020/lib/modules/affix/affix.service.mjs +3 -3
  8. package/esm2020/lib/modules/affix/affixer.mjs +266 -260
  9. package/esm2020/lib/modules/affix/dom-utils.mjs +7 -7
  10. package/esm2020/lib/modules/dock/dock-dom-adapter.service.mjs +51 -47
  11. package/esm2020/lib/modules/dock/dock-item.mjs +10 -5
  12. package/esm2020/lib/modules/dock/dock.component.mjs +58 -34
  13. package/esm2020/lib/modules/dock/dock.module.mjs +5 -5
  14. package/esm2020/lib/modules/dock/dock.service.mjs +43 -39
  15. package/esm2020/lib/modules/dynamic-component/dynamic-component.module.mjs +4 -4
  16. package/esm2020/lib/modules/dynamic-component/dynamic-component.service.mjs +40 -25
  17. package/esm2020/lib/modules/format/app-format.mjs +3 -3
  18. package/esm2020/lib/modules/id/id.directive.mjs +3 -3
  19. package/esm2020/lib/modules/id/id.module.mjs +4 -4
  20. package/esm2020/lib/modules/id/id.service.mjs +3 -3
  21. package/esm2020/lib/modules/log/log.module.mjs +4 -4
  22. package/esm2020/lib/modules/log/log.service.mjs +41 -41
  23. package/esm2020/lib/modules/media-query/media-query.module.mjs +4 -4
  24. package/esm2020/lib/modules/media-query/media-query.service.mjs +53 -50
  25. package/esm2020/lib/modules/mutation/mutation-observer-service.mjs +6 -4
  26. package/esm2020/lib/modules/numeric/numeric.module.mjs +5 -5
  27. package/esm2020/lib/modules/numeric/numeric.pipe.mjs +29 -22
  28. package/esm2020/lib/modules/numeric/numeric.service.mjs +87 -102
  29. package/esm2020/lib/modules/overlay/overlay-adapter.service.mjs +26 -20
  30. package/esm2020/lib/modules/overlay/overlay-instance.mjs +18 -9
  31. package/esm2020/lib/modules/overlay/overlay.component.mjs +82 -58
  32. package/esm2020/lib/modules/overlay/overlay.module.mjs +5 -5
  33. package/esm2020/lib/modules/overlay/overlay.service.mjs +58 -52
  34. package/esm2020/lib/modules/percent-pipe/percent-pipe.module.mjs +5 -5
  35. package/esm2020/lib/modules/percent-pipe/percent.pipe.mjs +35 -24
  36. package/esm2020/lib/modules/resize-observer/resize-observer-media-query.service.mjs +41 -49
  37. package/esm2020/lib/modules/resize-observer/resize-observer.service.mjs +3 -3
  38. package/esm2020/lib/modules/scrollable-host/scrollable-host.service.mjs +69 -70
  39. package/esm2020/lib/modules/shared/sky-core-resources.module.mjs +4 -4
  40. package/esm2020/lib/modules/title/title.service.mjs +11 -7
  41. package/esm2020/lib/modules/trim/trim.directive.mjs +13 -14
  42. package/esm2020/lib/modules/trim/trim.module.mjs +4 -4
  43. package/esm2020/lib/modules/ui-config/ui-config.service.mjs +3 -3
  44. package/esm2020/lib/modules/viewkeeper/viewkeeper-boundary-info.mjs +1 -1
  45. package/esm2020/lib/modules/viewkeeper/viewkeeper-host-options.mjs +3 -3
  46. package/esm2020/lib/modules/viewkeeper/viewkeeper.directive.mjs +78 -63
  47. package/esm2020/lib/modules/viewkeeper/viewkeeper.mjs +166 -156
  48. package/esm2020/lib/modules/viewkeeper/viewkeeper.module.mjs +4 -4
  49. package/esm2020/lib/modules/viewkeeper/viewkeeper.service.mjs +10 -6
  50. package/esm2020/lib/modules/window/window-ref.mjs +3 -3
  51. package/esm2020/testing/core-testing.module.mjs +8 -5
  52. package/esm2020/testing/mock-media-query.service.mjs +7 -4
  53. package/esm2020/testing/mock-ui-config.service.mjs +7 -4
  54. package/esm2020/testing/overlay/overlay-harness-filters.mjs +1 -1
  55. package/esm2020/testing/overlay/overlay-harness.mjs +2 -1
  56. package/esm2020/testing/shared/component-harness.mjs +4 -1
  57. package/esm2020/testing/shared/harness-filters.mjs +1 -1
  58. package/fesm2015/skyux-core-testing.mjs +23 -10
  59. package/fesm2015/skyux-core-testing.mjs.map +1 -1
  60. package/fesm2015/skyux-core.mjs +1416 -1291
  61. package/fesm2015/skyux-core.mjs.map +1 -1
  62. package/fesm2020/skyux-core-testing.mjs +23 -10
  63. package/fesm2020/skyux-core-testing.mjs.map +1 -1
  64. package/fesm2020/skyux-core.mjs +1418 -1290
  65. package/fesm2020/skyux-core.mjs.map +1 -1
  66. package/lib/modules/adapter-service/adapter.service.d.ts +3 -5
  67. package/lib/modules/affix/affix-offset.d.ts +1 -1
  68. package/lib/modules/affix/affix.directive.d.ts +13 -14
  69. package/lib/modules/affix/affixer.d.ts +2 -34
  70. package/lib/modules/affix/dom-utils.d.ts +3 -3
  71. package/lib/modules/dock/dock-dom-adapter.service.d.ts +2 -9
  72. package/lib/modules/dock/dock-item.d.ts +1 -1
  73. package/lib/modules/dock/dock.component.d.ts +3 -11
  74. package/lib/modules/dock/dock.service.d.ts +2 -5
  75. package/lib/modules/dynamic-component/dynamic-component.service.d.ts +2 -7
  76. package/lib/modules/id/id.directive.d.ts +1 -1
  77. package/lib/modules/log/log.service.d.ts +2 -6
  78. package/lib/modules/media-query/media-query.service.d.ts +1 -8
  79. package/lib/modules/numeric/numeric.pipe.d.ts +3 -9
  80. package/lib/modules/numeric/numeric.service.d.ts +3 -36
  81. package/lib/modules/overlay/overlay-adapter.service.d.ts +1 -3
  82. package/lib/modules/overlay/overlay-instance.d.ts +1 -2
  83. package/lib/modules/overlay/overlay.component.d.ts +2 -15
  84. package/lib/modules/overlay/overlay.service.d.ts +1 -7
  85. package/lib/modules/percent-pipe/percent.pipe.d.ts +3 -10
  86. package/lib/modules/resize-observer/resize-observer-media-query.service.d.ts +2 -7
  87. package/lib/modules/scrollable-host/scrollable-host.service.d.ts +2 -11
  88. package/lib/modules/title/title.service.d.ts +2 -2
  89. package/lib/modules/trim/trim.directive.d.ts +1 -3
  90. package/lib/modules/viewkeeper/viewkeeper-boundary-info.d.ts +1 -1
  91. package/lib/modules/viewkeeper/viewkeeper.d.ts +2 -24
  92. package/lib/modules/viewkeeper/viewkeeper.directive.d.ts +5 -17
  93. package/lib/modules/viewkeeper/viewkeeper.service.d.ts +1 -1
  94. package/package.json +10 -10
  95. package/testing/core-testing.module.d.ts +3 -0
  96. package/testing/{skyux-core-testing.d.ts → index.d.ts} +0 -0
  97. package/testing/mock-media-query.service.d.ts +3 -0
  98. package/testing/mock-ui-config.service.d.ts +3 -0
  99. package/testing/overlay/overlay-harness-filters.d.ts +1 -0
  100. package/testing/overlay/overlay-harness.d.ts +1 -0
  101. package/testing/shared/component-harness.d.ts +3 -0
  102. package/testing/shared/harness-filters.d.ts +1 -0
  103. package/skyux-core.d.ts +0 -5
  104. package/testing/package.json +0 -10
@@ -6,10 +6,10 @@ import * as i0 from "@angular/core";
6
6
  */
7
7
  export class SkyMediaQueryModule {
8
8
  }
9
- SkyMediaQueryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyMediaQueryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- SkyMediaQueryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyMediaQueryModule });
11
- SkyMediaQueryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyMediaQueryModule });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyMediaQueryModule, decorators: [{
9
+ SkyMediaQueryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyMediaQueryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ SkyMediaQueryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SkyMediaQueryModule });
11
+ SkyMediaQueryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyMediaQueryModule });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyMediaQueryModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{}]
15
15
  }] });
@@ -1,13 +1,16 @@
1
+ var _SkyMediaQueryService_instances, _SkyMediaQueryService_currentSubject, _SkyMediaQueryService_currentBreakpoint, _SkyMediaQueryService_breakpoints, _SkyMediaQueryService_mediaQueries, _SkyMediaQueryService_zone, _SkyMediaQueryService_addListeners, _SkyMediaQueryService_removeListeners, _SkyMediaQueryService_notifyBreakpointChange;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { Injectable, NgZone } from '@angular/core';
2
4
  import { BehaviorSubject } from 'rxjs';
3
5
  import { SkyMediaBreakpoints } from './media-breakpoints';
4
6
  import * as i0 from "@angular/core";
7
+ const DEFAULT_BREAKPOINT = SkyMediaBreakpoints.md;
5
8
  export class SkyMediaQueryService {
6
9
  constructor(zone) {
7
- this.zone = zone;
8
- this.currentSubject = new BehaviorSubject(this.current);
9
- this._current = SkyMediaBreakpoints.md;
10
- this.breakpoints = [
10
+ _SkyMediaQueryService_instances.add(this);
11
+ _SkyMediaQueryService_currentSubject.set(this, new BehaviorSubject(DEFAULT_BREAKPOINT));
12
+ _SkyMediaQueryService_currentBreakpoint.set(this, DEFAULT_BREAKPOINT);
13
+ _SkyMediaQueryService_breakpoints.set(this, [
11
14
  {
12
15
  mediaQueryString: SkyMediaQueryService.xs,
13
16
  name: SkyMediaBreakpoints.xs,
@@ -24,26 +27,28 @@ export class SkyMediaQueryService {
24
27
  mediaQueryString: SkyMediaQueryService.lg,
25
28
  name: SkyMediaBreakpoints.lg,
26
29
  },
27
- ];
28
- this.mediaQueries = [];
29
- this.addListeners();
30
+ ]);
31
+ _SkyMediaQueryService_mediaQueries.set(this, []);
32
+ _SkyMediaQueryService_zone.set(this, void 0);
33
+ __classPrivateFieldSet(this, _SkyMediaQueryService_zone, zone, "f");
34
+ __classPrivateFieldGet(this, _SkyMediaQueryService_instances, "m", _SkyMediaQueryService_addListeners).call(this);
30
35
  }
31
36
  /**
32
37
  * Returns the current breakpoint.
33
38
  */
34
39
  get current() {
35
- return this._current;
40
+ return __classPrivateFieldGet(this, _SkyMediaQueryService_currentBreakpoint, "f");
36
41
  }
37
42
  ngOnDestroy() {
38
- this.removeListeners();
39
- this.currentSubject.complete();
43
+ __classPrivateFieldGet(this, _SkyMediaQueryService_instances, "m", _SkyMediaQueryService_removeListeners).call(this);
44
+ __classPrivateFieldGet(this, _SkyMediaQueryService_currentSubject, "f").complete();
40
45
  }
41
46
  /**
42
47
  * Subscribes to screen size changes.
43
48
  * @param listener Specifies a function that is called when breakpoints change.
44
49
  */
45
50
  subscribe(listener) {
46
- return this.currentSubject.subscribe({
51
+ return __classPrivateFieldGet(this, _SkyMediaQueryService_currentSubject, "f").subscribe({
47
52
  next: (breakpoints) => {
48
53
  listener(breakpoints);
49
54
  },
@@ -53,43 +58,41 @@ export class SkyMediaQueryService {
53
58
  * @internal
54
59
  */
55
60
  destroy() {
56
- this.removeListeners();
57
- this.currentSubject.complete();
58
- }
59
- addListeners() {
60
- this.mediaQueries = this.breakpoints.map((breakpoint) => {
61
- const mq = matchMedia(breakpoint.mediaQueryString);
62
- const listener = (event) => {
63
- // Run the check outside of Angular's change detection since Angular
64
- // does not wrap matchMedia listeners in NgZone.
65
- // See: https://blog.assaf.co/angular-2-change-detection-zones-and-an-example/
66
- this.zone.run(() => {
67
- if (event.matches) {
68
- this.notifyBreakpointChange(breakpoint.name);
69
- }
70
- });
71
- };
72
- mq.addListener(listener);
73
- if (mq.matches) {
74
- this.notifyBreakpointChange(breakpoint.name);
75
- }
76
- return {
77
- mediaQueryList: mq,
78
- listener,
79
- };
80
- });
81
- }
82
- removeListeners() {
83
- this.mediaQueries.forEach((mediaQuery) => {
84
- mediaQuery.mediaQueryList.removeListener(mediaQuery.listener);
85
- });
86
- this.mediaQueries = [];
87
- }
88
- notifyBreakpointChange(breakpoint) {
89
- this._current = breakpoint;
90
- this.currentSubject.next(breakpoint);
61
+ __classPrivateFieldGet(this, _SkyMediaQueryService_instances, "m", _SkyMediaQueryService_removeListeners).call(this);
62
+ __classPrivateFieldGet(this, _SkyMediaQueryService_currentSubject, "f").complete();
91
63
  }
92
64
  }
65
+ _SkyMediaQueryService_currentSubject = new WeakMap(), _SkyMediaQueryService_currentBreakpoint = new WeakMap(), _SkyMediaQueryService_breakpoints = new WeakMap(), _SkyMediaQueryService_mediaQueries = new WeakMap(), _SkyMediaQueryService_zone = new WeakMap(), _SkyMediaQueryService_instances = new WeakSet(), _SkyMediaQueryService_addListeners = function _SkyMediaQueryService_addListeners() {
66
+ __classPrivateFieldSet(this, _SkyMediaQueryService_mediaQueries, __classPrivateFieldGet(this, _SkyMediaQueryService_breakpoints, "f").map((breakpoint) => {
67
+ const mq = matchMedia(breakpoint.mediaQueryString);
68
+ const listener = (event) => {
69
+ // Run the check outside of Angular's change detection since Angular
70
+ // does not wrap matchMedia listeners in NgZone.
71
+ // See: https://blog.assaf.co/angular-2-change-detection-zones-and-an-example/
72
+ __classPrivateFieldGet(this, _SkyMediaQueryService_zone, "f").run(() => {
73
+ if (event.matches) {
74
+ __classPrivateFieldGet(this, _SkyMediaQueryService_instances, "m", _SkyMediaQueryService_notifyBreakpointChange).call(this, breakpoint.name);
75
+ }
76
+ });
77
+ };
78
+ mq.addListener(listener);
79
+ if (mq.matches) {
80
+ __classPrivateFieldGet(this, _SkyMediaQueryService_instances, "m", _SkyMediaQueryService_notifyBreakpointChange).call(this, breakpoint.name);
81
+ }
82
+ return {
83
+ mediaQueryList: mq,
84
+ listener,
85
+ };
86
+ }), "f");
87
+ }, _SkyMediaQueryService_removeListeners = function _SkyMediaQueryService_removeListeners() {
88
+ __classPrivateFieldGet(this, _SkyMediaQueryService_mediaQueries, "f").forEach((mediaQuery) => {
89
+ mediaQuery.mediaQueryList.removeListener(mediaQuery.listener);
90
+ });
91
+ __classPrivateFieldSet(this, _SkyMediaQueryService_mediaQueries, [], "f");
92
+ }, _SkyMediaQueryService_notifyBreakpointChange = function _SkyMediaQueryService_notifyBreakpointChange(breakpoint) {
93
+ __classPrivateFieldSet(this, _SkyMediaQueryService_currentBreakpoint, breakpoint, "f");
94
+ __classPrivateFieldGet(this, _SkyMediaQueryService_currentSubject, "f").next(breakpoint);
95
+ };
93
96
  /**
94
97
  * The size for the `xs` breakpoint.
95
98
  * @default "(max-width: 767px)"
@@ -110,12 +113,12 @@ SkyMediaQueryService.md = '(min-width: 992px) and (max-width: 1199px)';
110
113
  * @default "(min-width: 1200px)"
111
114
  */
112
115
  SkyMediaQueryService.lg = '(min-width: 1200px)';
113
- SkyMediaQueryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyMediaQueryService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
114
- SkyMediaQueryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyMediaQueryService, providedIn: 'root' });
115
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyMediaQueryService, decorators: [{
116
+ SkyMediaQueryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyMediaQueryService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
117
+ SkyMediaQueryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyMediaQueryService, providedIn: 'root' });
118
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyMediaQueryService, decorators: [{
116
119
  type: Injectable,
117
120
  args: [{
118
121
  providedIn: 'root',
119
122
  }]
120
123
  }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtcXVlcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9tZWRpYS1xdWVyeS9tZWRpYS1xdWVyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBRXJELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU0xRCxNQUFNLE9BQU8sb0JBQW9CO0lBaUUvQixZQUFvQixJQUFZO1FBQVosU0FBSSxHQUFKLElBQUksQ0FBUTtRQWpDeEIsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FDMUMsSUFBSSxDQUFDLE9BQU8sQ0FDYixDQUFDO1FBRU0sYUFBUSxHQUFHLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztRQUVsQyxnQkFBVyxHQUdiO1lBQ0o7Z0JBQ0UsZ0JBQWdCLEVBQUUsb0JBQW9CLENBQUMsRUFBRTtnQkFDekMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLEVBQUU7YUFDN0I7WUFDRDtnQkFDRSxnQkFBZ0IsRUFBRSxvQkFBb0IsQ0FBQyxFQUFFO2dCQUN6QyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsRUFBRTthQUM3QjtZQUNEO2dCQUNFLGdCQUFnQixFQUFFLG9CQUFvQixDQUFDLEVBQUU7Z0JBQ3pDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxFQUFFO2FBQzdCO1lBQ0Q7Z0JBQ0UsZ0JBQWdCLEVBQUUsb0JBQW9CLENBQUMsRUFBRTtnQkFDekMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLEVBQUU7YUFDN0I7U0FDRixDQUFDO1FBRU0saUJBQVksR0FHZCxFQUFFLENBQUM7UUFHUCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQTFDRDs7T0FFRztJQUNILElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQXVDTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxTQUFTLENBQUMsUUFBK0I7UUFDOUMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQztZQUNuQyxJQUFJLEVBQUUsQ0FBQyxXQUFnQyxFQUFFLEVBQUU7Z0JBQ3pDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN4QixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ksT0FBTztRQUNaLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFTyxZQUFZO1FBQ2xCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFlLEVBQUUsRUFBRTtZQUMzRCxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFbkQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtnQkFDOUIsb0VBQW9FO2dCQUNwRSxnREFBZ0Q7Z0JBQ2hELDhFQUE4RTtnQkFDOUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUNqQixJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7d0JBQ2pCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7cUJBQzlDO2dCQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDO1lBRUYsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUV6QixJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUM5QztZQUVELE9BQU87Z0JBQ0wsY0FBYyxFQUFFLEVBQUU7Z0JBQ2xCLFFBQVE7YUFDVCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZTtRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3ZDLFVBQVUsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxVQUErQjtRQUM1RCxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN2QyxDQUFDOztBQW5JRDs7O0dBR0c7QUFDVyx1QkFBRSxHQUFHLG9CQUFxQixDQUFBO0FBRXhDOzs7R0FHRztBQUNXLHVCQUFFLEdBQUcsMkNBQTRDLENBQUE7QUFFL0Q7OztHQUdHO0FBQ1csdUJBQUUsR0FBRyw0Q0FBNkMsQ0FBQTtBQUVoRTs7O0dBR0c7QUFDVyx1QkFBRSxHQUFHLHFCQUFzQixDQUFBO2lIQXZCOUIsb0JBQW9CO3FIQUFwQixvQkFBb0IsY0FGbkIsTUFBTTsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgTmdab25lLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5TWVkaWFCcmVha3BvaW50cyB9IGZyb20gJy4vbWVkaWEtYnJlYWtwb2ludHMnO1xuaW1wb3J0IHsgU2t5TWVkaWFRdWVyeUxpc3RlbmVyIH0gZnJvbSAnLi9tZWRpYS1xdWVyeS1saXN0ZW5lcic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lNZWRpYVF1ZXJ5U2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cbiAgICogQGRlZmF1bHQgXCIobWF4LXdpZHRoOiA3NjdweClcIlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB4cyA9ICcobWF4LXdpZHRoOiA3NjdweCknO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cbiAgICogQGRlZmF1bHQgXCIobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KVwiXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHNtID0gJyhtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpJztcblxuICAvKipcbiAgICogVGhlIHNpemUgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXG4gICAqIEBkZWZhdWx0IFwiKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpXCJcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbWQgPSAnKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpJztcblxuICAvKipcbiAgICogVGhlIHNpemUgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXG4gICAqIEBkZWZhdWx0IFwiKG1pbi13aWR0aDogMTIwMHB4KVwiXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGxnID0gJyhtaW4td2lkdGg6IDEyMDBweCknO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGN1cnJlbnQoKTogU2t5TWVkaWFCcmVha3BvaW50cyB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnQ7XG4gIH1cblxuICBwcml2YXRlIGN1cnJlbnRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTa3lNZWRpYUJyZWFrcG9pbnRzPihcbiAgICB0aGlzLmN1cnJlbnRcbiAgKTtcblxuICBwcml2YXRlIF9jdXJyZW50ID0gU2t5TWVkaWFCcmVha3BvaW50cy5tZDtcblxuICBwcml2YXRlIGJyZWFrcG9pbnRzOiB7XG4gICAgbWVkaWFRdWVyeVN0cmluZzogc3RyaW5nO1xuICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHM7XG4gIH1bXSA9IFtcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS54cyxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMueHMsXG4gICAgfSxcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS5zbSxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMuc20sXG4gICAgfSxcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS5tZCxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMubWQsXG4gICAgfSxcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS5sZyxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMubGcsXG4gICAgfSxcbiAgXTtcblxuICBwcml2YXRlIG1lZGlhUXVlcmllczoge1xuICAgIG1lZGlhUXVlcnlMaXN0OiBNZWRpYVF1ZXJ5TGlzdDtcbiAgICBsaXN0ZW5lcjogKGV2ZW50OiBhbnkpID0+IHZvaWQ7XG4gIH1bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgem9uZTogTmdab25lKSB7XG4gICAgdGhpcy5hZGRMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnJlbW92ZUxpc3RlbmVycygpO1xuICAgIHRoaXMuY3VycmVudFN1YmplY3QuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdWJzY3JpYmVzIHRvIHNjcmVlbiBzaXplIGNoYW5nZXMuXG4gICAqIEBwYXJhbSBsaXN0ZW5lciBTcGVjaWZpZXMgYSBmdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIGJyZWFrcG9pbnRzIGNoYW5nZS5cbiAgICovXG4gIHB1YmxpYyBzdWJzY3JpYmUobGlzdGVuZXI6IFNreU1lZGlhUXVlcnlMaXN0ZW5lcik6IFN1YnNjcmlwdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFN1YmplY3Quc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChicmVha3BvaW50czogU2t5TWVkaWFCcmVha3BvaW50cykgPT4ge1xuICAgICAgICBsaXN0ZW5lcihicmVha3BvaW50cyk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5yZW1vdmVMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLmN1cnJlbnRTdWJqZWN0LmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGFkZExpc3RlbmVycygpOiB2b2lkIHtcbiAgICB0aGlzLm1lZGlhUXVlcmllcyA9IHRoaXMuYnJlYWtwb2ludHMubWFwKChicmVha3BvaW50OiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IG1xID0gbWF0Y2hNZWRpYShicmVha3BvaW50Lm1lZGlhUXVlcnlTdHJpbmcpO1xuXG4gICAgICBjb25zdCBsaXN0ZW5lciA9IChldmVudDogYW55KSA9PiB7XG4gICAgICAgIC8vIFJ1biB0aGUgY2hlY2sgb3V0c2lkZSBvZiBBbmd1bGFyJ3MgY2hhbmdlIGRldGVjdGlvbiBzaW5jZSBBbmd1bGFyXG4gICAgICAgIC8vIGRvZXMgbm90IHdyYXAgbWF0Y2hNZWRpYSBsaXN0ZW5lcnMgaW4gTmdab25lLlxuICAgICAgICAvLyBTZWU6IGh0dHBzOi8vYmxvZy5hc3NhZi5jby9hbmd1bGFyLTItY2hhbmdlLWRldGVjdGlvbi16b25lcy1hbmQtYW4tZXhhbXBsZS9cbiAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgaWYgKGV2ZW50Lm1hdGNoZXMpIHtcbiAgICAgICAgICAgIHRoaXMubm90aWZ5QnJlYWtwb2ludENoYW5nZShicmVha3BvaW50Lm5hbWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9O1xuXG4gICAgICBtcS5hZGRMaXN0ZW5lcihsaXN0ZW5lcik7XG5cbiAgICAgIGlmIChtcS5tYXRjaGVzKSB7XG4gICAgICAgIHRoaXMubm90aWZ5QnJlYWtwb2ludENoYW5nZShicmVha3BvaW50Lm5hbWUpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBtZWRpYVF1ZXJ5TGlzdDogbXEsXG4gICAgICAgIGxpc3RlbmVyLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIHRoaXMubWVkaWFRdWVyaWVzLmZvckVhY2goKG1lZGlhUXVlcnkpID0+IHtcbiAgICAgIG1lZGlhUXVlcnkubWVkaWFRdWVyeUxpc3QucmVtb3ZlTGlzdGVuZXIobWVkaWFRdWVyeS5saXN0ZW5lcik7XG4gICAgfSk7XG4gICAgdGhpcy5tZWRpYVF1ZXJpZXMgPSBbXTtcbiAgfVxuXG4gIHByaXZhdGUgbm90aWZ5QnJlYWtwb2ludENoYW5nZShicmVha3BvaW50OiBTa3lNZWRpYUJyZWFrcG9pbnRzKTogdm9pZCB7XG4gICAgdGhpcy5fY3VycmVudCA9IGJyZWFrcG9pbnQ7XG4gICAgdGhpcy5jdXJyZW50U3ViamVjdC5uZXh0KGJyZWFrcG9pbnQpO1xuICB9XG59XG4iXX0=
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtcXVlcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9tZWRpYS1xdWVyeS9tZWRpYS1xdWVyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFFckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRzFELE1BQU0sa0JBQWtCLEdBQUcsbUJBQW1CLENBQUMsRUFBRSxDQUFDO0FBS2xELE1BQU0sT0FBTyxvQkFBb0I7SUFtRS9CLFlBQVksSUFBWTs7UUFuQ3hCLCtDQUFrQixJQUFJLGVBQWUsQ0FDbkMsa0JBQWtCLENBQ25CLEVBQUM7UUFFRixrREFBcUIsa0JBQWtCLEVBQUM7UUFFeEMsNENBR007WUFDSjtnQkFDRSxnQkFBZ0IsRUFBRSxvQkFBb0IsQ0FBQyxFQUFFO2dCQUN6QyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsRUFBRTthQUM3QjtZQUNEO2dCQUNFLGdCQUFnQixFQUFFLG9CQUFvQixDQUFDLEVBQUU7Z0JBQ3pDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxFQUFFO2FBQzdCO1lBQ0Q7Z0JBQ0UsZ0JBQWdCLEVBQUUsb0JBQW9CLENBQUMsRUFBRTtnQkFDekMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLEVBQUU7YUFDN0I7WUFDRDtnQkFDRSxnQkFBZ0IsRUFBRSxvQkFBb0IsQ0FBQyxFQUFFO2dCQUN6QyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsRUFBRTthQUM3QjtTQUNGLEVBQUM7UUFFRiw2Q0FHTSxFQUFFLEVBQUM7UUFFVCw2Q0FBYztRQUdaLHVCQUFBLElBQUksOEJBQVMsSUFBSSxNQUFBLENBQUM7UUFDbEIsdUJBQUEsSUFBSSwyRUFBYyxNQUFsQixJQUFJLENBQWdCLENBQUM7SUFDdkIsQ0FBQztJQTdDRDs7T0FFRztJQUNILElBQVcsT0FBTztRQUNoQixPQUFPLHVCQUFBLElBQUksK0NBQW1CLENBQUM7SUFDakMsQ0FBQztJQTBDTSxXQUFXO1FBQ2hCLHVCQUFBLElBQUksOEVBQWlCLE1BQXJCLElBQUksQ0FBbUIsQ0FBQztRQUN4Qix1QkFBQSxJQUFJLDRDQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxTQUFTLENBQUMsUUFBK0I7UUFDOUMsT0FBTyx1QkFBQSxJQUFJLDRDQUFnQixDQUFDLFNBQVMsQ0FBQztZQUNwQyxJQUFJLEVBQUUsQ0FBQyxXQUFnQyxFQUFFLEVBQUU7Z0JBQ3pDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN4QixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ksT0FBTztRQUNaLHVCQUFBLElBQUksOEVBQWlCLE1BQXJCLElBQUksQ0FBbUIsQ0FBQztRQUN4Qix1QkFBQSxJQUFJLDRDQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7OztJQUdDLHVCQUFBLElBQUksc0NBQWlCLHVCQUFBLElBQUkseUNBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtRQUN4RCxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFbkQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUEwQixFQUFFLEVBQUU7WUFDOUMsb0VBQW9FO1lBQ3BFLGdEQUFnRDtZQUNoRCw4RUFBOEU7WUFDOUUsdUJBQUEsSUFBSSxrQ0FBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2xCLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtvQkFDakIsdUJBQUEsSUFBSSxxRkFBd0IsTUFBNUIsSUFBSSxFQUF5QixVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQy9DO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7UUFFRixFQUFFLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXpCLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRTtZQUNkLHVCQUFBLElBQUkscUZBQXdCLE1BQTVCLElBQUksRUFBeUIsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQy9DO1FBRUQsT0FBTztZQUNMLGNBQWMsRUFBRSxFQUFFO1lBQ2xCLFFBQVE7U0FDVCxDQUFDO0lBQ0osQ0FBQyxDQUFDLE1BQUEsQ0FBQztBQUNMLENBQUM7SUFHQyx1QkFBQSxJQUFJLDBDQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7UUFDeEMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBQ0gsdUJBQUEsSUFBSSxzQ0FBaUIsRUFBRSxNQUFBLENBQUM7QUFDMUIsQ0FBQyx1R0FFdUIsVUFBK0I7SUFDckQsdUJBQUEsSUFBSSwyQ0FBc0IsVUFBVSxNQUFBLENBQUM7SUFDckMsdUJBQUEsSUFBSSw0Q0FBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDeEMsQ0FBQztBQXRJRDs7O0dBR0c7QUFDVyx1QkFBRSxHQUFHLG9CQUFxQixDQUFBO0FBRXhDOzs7R0FHRztBQUNXLHVCQUFFLEdBQUcsMkNBQTRDLENBQUE7QUFFL0Q7OztHQUdHO0FBQ1csdUJBQUUsR0FBRyw0Q0FBNkMsQ0FBQTtBQUVoRTs7O0dBR0c7QUFDVyx1QkFBRSxHQUFHLHFCQUFzQixDQUFBO2lIQXZCOUIsb0JBQW9CO3FIQUFwQixvQkFBb0IsY0FGbkIsTUFBTTsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgTmdab25lLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5TWVkaWFCcmVha3BvaW50cyB9IGZyb20gJy4vbWVkaWEtYnJlYWtwb2ludHMnO1xuaW1wb3J0IHsgU2t5TWVkaWFRdWVyeUxpc3RlbmVyIH0gZnJvbSAnLi9tZWRpYS1xdWVyeS1saXN0ZW5lcic7XG5cbmNvbnN0IERFRkFVTFRfQlJFQUtQT0lOVCA9IFNreU1lZGlhQnJlYWtwb2ludHMubWQ7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lNZWRpYVF1ZXJ5U2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cbiAgICogQGRlZmF1bHQgXCIobWF4LXdpZHRoOiA3NjdweClcIlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB4cyA9ICcobWF4LXdpZHRoOiA3NjdweCknO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cbiAgICogQGRlZmF1bHQgXCIobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KVwiXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHNtID0gJyhtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpJztcblxuICAvKipcbiAgICogVGhlIHNpemUgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXG4gICAqIEBkZWZhdWx0IFwiKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpXCJcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbWQgPSAnKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpJztcblxuICAvKipcbiAgICogVGhlIHNpemUgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXG4gICAqIEBkZWZhdWx0IFwiKG1pbi13aWR0aDogMTIwMHB4KVwiXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGxnID0gJyhtaW4td2lkdGg6IDEyMDBweCknO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGN1cnJlbnQoKTogU2t5TWVkaWFCcmVha3BvaW50cyB7XG4gICAgcmV0dXJuIHRoaXMuI2N1cnJlbnRCcmVha3BvaW50O1xuICB9XG5cbiAgI2N1cnJlbnRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTa3lNZWRpYUJyZWFrcG9pbnRzPihcbiAgICBERUZBVUxUX0JSRUFLUE9JTlRcbiAgKTtcblxuICAjY3VycmVudEJyZWFrcG9pbnQgPSBERUZBVUxUX0JSRUFLUE9JTlQ7XG5cbiAgI2JyZWFrcG9pbnRzOiB7XG4gICAgbWVkaWFRdWVyeVN0cmluZzogc3RyaW5nO1xuICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHM7XG4gIH1bXSA9IFtcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS54cyxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMueHMsXG4gICAgfSxcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS5zbSxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMuc20sXG4gICAgfSxcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS5tZCxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMubWQsXG4gICAgfSxcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS5sZyxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMubGcsXG4gICAgfSxcbiAgXTtcblxuICAjbWVkaWFRdWVyaWVzOiB7XG4gICAgbWVkaWFRdWVyeUxpc3Q6IE1lZGlhUXVlcnlMaXN0O1xuICAgIGxpc3RlbmVyOiAoZXZlbnQ6IGFueSkgPT4gdm9pZDtcbiAgfVtdID0gW107XG5cbiAgI3pvbmU6IE5nWm9uZTtcblxuICBjb25zdHJ1Y3Rvcih6b25lOiBOZ1pvbmUpIHtcbiAgICB0aGlzLiN6b25lID0gem9uZTtcbiAgICB0aGlzLiNhZGRMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNyZW1vdmVMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLiNjdXJyZW50U3ViamVjdC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1YnNjcmliZXMgdG8gc2NyZWVuIHNpemUgY2hhbmdlcy5cbiAgICogQHBhcmFtIGxpc3RlbmVyIFNwZWNpZmllcyBhIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gYnJlYWtwb2ludHMgY2hhbmdlLlxuICAgKi9cbiAgcHVibGljIHN1YnNjcmliZShsaXN0ZW5lcjogU2t5TWVkaWFRdWVyeUxpc3RlbmVyKTogU3Vic2NyaXB0aW9uIHtcbiAgICByZXR1cm4gdGhpcy4jY3VycmVudFN1YmplY3Quc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChicmVha3BvaW50czogU2t5TWVkaWFCcmVha3BvaW50cykgPT4ge1xuICAgICAgICBsaXN0ZW5lcihicmVha3BvaW50cyk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jcmVtb3ZlTGlzdGVuZXJzKCk7XG4gICAgdGhpcy4jY3VycmVudFN1YmplY3QuY29tcGxldGUoKTtcbiAgfVxuXG4gICNhZGRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgdGhpcy4jbWVkaWFRdWVyaWVzID0gdGhpcy4jYnJlYWtwb2ludHMubWFwKChicmVha3BvaW50KSA9PiB7XG4gICAgICBjb25zdCBtcSA9IG1hdGNoTWVkaWEoYnJlYWtwb2ludC5tZWRpYVF1ZXJ5U3RyaW5nKTtcblxuICAgICAgY29uc3QgbGlzdGVuZXIgPSAoZXZlbnQ6IE1lZGlhUXVlcnlMaXN0RXZlbnQpID0+IHtcbiAgICAgICAgLy8gUnVuIHRoZSBjaGVjayBvdXRzaWRlIG9mIEFuZ3VsYXIncyBjaGFuZ2UgZGV0ZWN0aW9uIHNpbmNlIEFuZ3VsYXJcbiAgICAgICAgLy8gZG9lcyBub3Qgd3JhcCBtYXRjaE1lZGlhIGxpc3RlbmVycyBpbiBOZ1pvbmUuXG4gICAgICAgIC8vIFNlZTogaHR0cHM6Ly9ibG9nLmFzc2FmLmNvL2FuZ3VsYXItMi1jaGFuZ2UtZGV0ZWN0aW9uLXpvbmVzLWFuZC1hbi1leGFtcGxlL1xuICAgICAgICB0aGlzLiN6b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgaWYgKGV2ZW50Lm1hdGNoZXMpIHtcbiAgICAgICAgICAgIHRoaXMuI25vdGlmeUJyZWFrcG9pbnRDaGFuZ2UoYnJlYWtwb2ludC5uYW1lKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfTtcblxuICAgICAgbXEuYWRkTGlzdGVuZXIobGlzdGVuZXIpO1xuXG4gICAgICBpZiAobXEubWF0Y2hlcykge1xuICAgICAgICB0aGlzLiNub3RpZnlCcmVha3BvaW50Q2hhbmdlKGJyZWFrcG9pbnQubmFtZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1lZGlhUXVlcnlMaXN0OiBtcSxcbiAgICAgICAgbGlzdGVuZXIsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgI3JlbW92ZUxpc3RlbmVycygpOiB2b2lkIHtcbiAgICB0aGlzLiNtZWRpYVF1ZXJpZXMuZm9yRWFjaCgobWVkaWFRdWVyeSkgPT4ge1xuICAgICAgbWVkaWFRdWVyeS5tZWRpYVF1ZXJ5TGlzdC5yZW1vdmVMaXN0ZW5lcihtZWRpYVF1ZXJ5Lmxpc3RlbmVyKTtcbiAgICB9KTtcbiAgICB0aGlzLiNtZWRpYVF1ZXJpZXMgPSBbXTtcbiAgfVxuXG4gICNub3RpZnlCcmVha3BvaW50Q2hhbmdlKGJyZWFrcG9pbnQ6IFNreU1lZGlhQnJlYWtwb2ludHMpOiB2b2lkIHtcbiAgICB0aGlzLiNjdXJyZW50QnJlYWtwb2ludCA9IGJyZWFrcG9pbnQ7XG4gICAgdGhpcy4jY3VycmVudFN1YmplY3QubmV4dChicmVha3BvaW50KTtcbiAgfVxufVxuIl19
@@ -1,16 +1,18 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ // TODO: Prefix this service with `Sky` in a breaking change.
3
4
  export class MutationObserverService {
5
+ // TODO: Give the `callback` parameter a stricter type in a breaking change.
4
6
  create(callback) {
5
7
  return new MutationObserver(callback);
6
8
  }
7
9
  }
8
- MutationObserverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: MutationObserverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
9
- MutationObserverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: MutationObserverService, providedIn: 'root' });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: MutationObserverService, decorators: [{
10
+ MutationObserverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MutationObserverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
11
+ MutationObserverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MutationObserverService, providedIn: 'root' });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MutationObserverService, decorators: [{
11
13
  type: Injectable,
12
14
  args: [{
13
15
  providedIn: 'root',
14
16
  }]
15
17
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXV0YXRpb24tb2JzZXJ2ZXItc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9tdXRhdGlvbi9tdXRhdGlvbi1vYnNlcnZlci1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyx1QkFBdUI7SUFDM0IsTUFBTSxDQUFDLFFBQWE7UUFDekIsT0FBTyxJQUFJLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7O29IQUhVLHVCQUF1Qjt3SEFBdkIsdUJBQXVCLGNBRnRCLE1BQU07MkZBRVAsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlIHtcbiAgcHVibGljIGNyZWF0ZShjYWxsYmFjazogYW55KTogTXV0YXRpb25PYnNlcnZlciB7XG4gICAgcmV0dXJuIG5ldyBNdXRhdGlvbk9ic2VydmVyKGNhbGxiYWNrKTtcbiAgfVxufVxuIl19
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXV0YXRpb24tb2JzZXJ2ZXItc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9tdXRhdGlvbi9tdXRhdGlvbi1vYnNlcnZlci1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTNDLDZEQUE2RDtBQUk3RCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLDRFQUE0RTtJQUNyRSxNQUFNLENBQUMsUUFBYTtRQUN6QixPQUFPLElBQUksZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDeEMsQ0FBQzs7b0hBSlUsdUJBQXVCO3dIQUF2Qix1QkFBdUIsY0FGdEIsTUFBTTsyRkFFUCx1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vLyBUT0RPOiBQcmVmaXggdGhpcyBzZXJ2aWNlIHdpdGggYFNreWAgaW4gYSBicmVha2luZyBjaGFuZ2UuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTXV0YXRpb25PYnNlcnZlclNlcnZpY2Uge1xuICAvLyBUT0RPOiBHaXZlIHRoZSBgY2FsbGJhY2tgIHBhcmFtZXRlciBhIHN0cmljdGVyIHR5cGUgaW4gYSBicmVha2luZyBjaGFuZ2UuXG4gIHB1YmxpYyBjcmVhdGUoY2FsbGJhY2s6IGFueSk6IE11dGF0aW9uT2JzZXJ2ZXIge1xuICAgIHJldHVybiBuZXcgTXV0YXRpb25PYnNlcnZlcihjYWxsYmFjayk7XG4gIH1cbn1cbiJdfQ==
@@ -5,10 +5,10 @@ import { SkyNumericPipe } from './numeric.pipe';
5
5
  import * as i0 from "@angular/core";
6
6
  export class SkyNumericModule {
7
7
  }
8
- SkyNumericModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyNumericModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- SkyNumericModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyNumericModule, declarations: [SkyNumericPipe], imports: [SkyI18nModule, SkyCoreResourcesModule], exports: [SkyNumericPipe] });
10
- SkyNumericModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyNumericModule, providers: [SkyNumericPipe], imports: [[SkyI18nModule, SkyCoreResourcesModule]] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyNumericModule, decorators: [{
8
+ SkyNumericModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyNumericModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ SkyNumericModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SkyNumericModule, declarations: [SkyNumericPipe], imports: [SkyI18nModule, SkyCoreResourcesModule], exports: [SkyNumericPipe] });
10
+ SkyNumericModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyNumericModule, providers: [SkyNumericPipe], imports: [SkyI18nModule, SkyCoreResourcesModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyNumericModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [SkyNumericPipe],
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
17
17
  exports: [SkyNumericPipe],
18
18
  }]
19
19
  }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvbnVtZXJpYy9udW1lcmljLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVFoRCxNQUFNLE9BQU8sZ0JBQWdCOzs2R0FBaEIsZ0JBQWdCOzhHQUFoQixnQkFBZ0IsaUJBTFosY0FBYyxhQUVuQixhQUFhLEVBQUUsc0JBQXNCLGFBQ3JDLGNBQWM7OEdBRWIsZ0JBQWdCLGFBSmhCLENBQUMsY0FBYyxDQUFDLFlBQ2xCLENBQUMsYUFBYSxFQUFFLHNCQUFzQixDQUFDOzJGQUdyQyxnQkFBZ0I7a0JBTjVCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsY0FBYyxDQUFDO29CQUM5QixTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQzNCLE9BQU8sRUFBRSxDQUFDLGFBQWEsRUFBRSxzQkFBc0IsQ0FBQztvQkFDaEQsT0FBTyxFQUFFLENBQUMsY0FBYyxDQUFDO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lJMThuTW9kdWxlIH0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQgeyBTa3lDb3JlUmVzb3VyY2VzTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL3NreS1jb3JlLXJlc291cmNlcy5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lOdW1lcmljUGlwZSB9IGZyb20gJy4vbnVtZXJpYy5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU2t5TnVtZXJpY1BpcGVdLFxuICBwcm92aWRlcnM6IFtTa3lOdW1lcmljUGlwZV0sXG4gIGltcG9ydHM6IFtTa3lJMThuTW9kdWxlLCBTa3lDb3JlUmVzb3VyY2VzTW9kdWxlXSxcbiAgZXhwb3J0czogW1NreU51bWVyaWNQaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TnVtZXJpY01vZHVsZSB7fVxuIl19
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvbnVtZXJpYy9udW1lcmljLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVFoRCxNQUFNLE9BQU8sZ0JBQWdCOzs2R0FBaEIsZ0JBQWdCOzhHQUFoQixnQkFBZ0IsaUJBTFosY0FBYyxhQUVuQixhQUFhLEVBQUUsc0JBQXNCLGFBQ3JDLGNBQWM7OEdBRWIsZ0JBQWdCLGFBSmhCLENBQUMsY0FBYyxDQUFDLFlBQ2pCLGFBQWEsRUFBRSxzQkFBc0I7MkZBR3BDLGdCQUFnQjtrQkFONUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQzlCLFNBQVMsRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDM0IsT0FBTyxFQUFFLENBQUMsYUFBYSxFQUFFLHNCQUFzQixDQUFDO29CQUNoRCxPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUkxOG5Nb2R1bGUgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7IFNreUNvcmVSZXNvdXJjZXNNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWNvcmUtcmVzb3VyY2VzLm1vZHVsZSc7XG5cbmltcG9ydCB7IFNreU51bWVyaWNQaXBlIH0gZnJvbSAnLi9udW1lcmljLnBpcGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTa3lOdW1lcmljUGlwZV0sXG4gIHByb3ZpZGVyczogW1NreU51bWVyaWNQaXBlXSxcbiAgaW1wb3J0czogW1NreUkxOG5Nb2R1bGUsIFNreUNvcmVSZXNvdXJjZXNNb2R1bGVdLFxuICBleHBvcnRzOiBbU2t5TnVtZXJpY1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lOdW1lcmljTW9kdWxlIHt9XG4iXX0=
@@ -1,3 +1,5 @@
1
+ var _SkyNumericPipe_cacheKey, _SkyNumericPipe_changeDetector, _SkyNumericPipe_formattedValue, _SkyNumericPipe_ngUnsubscribe, _SkyNumericPipe_numericSvc, _SkyNumericPipe_providerLocale;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { ChangeDetectorRef, Pipe, } from '@angular/core';
2
4
  import { SkyAppLocaleProvider } from '@skyux/i18n';
3
5
  import { Subject } from 'rxjs';
@@ -14,34 +16,38 @@ import * as i2 from "./numeric.service";
14
16
  * a space before the two curly brackets closing the pipe or it will not work.
15
17
  */
16
18
  export class SkyNumericPipe {
17
- constructor(localeProvider, numericService, changeDetector) {
18
- this.localeProvider = localeProvider;
19
- this.numericService = numericService;
20
- this.changeDetector = changeDetector;
21
- this.ngUnsubscribe = new Subject();
22
- this.localeProvider
19
+ constructor(localeProvider, numericSvc, changeDetector) {
20
+ _SkyNumericPipe_cacheKey.set(this, void 0);
21
+ _SkyNumericPipe_changeDetector.set(this, void 0);
22
+ _SkyNumericPipe_formattedValue.set(this, void 0);
23
+ _SkyNumericPipe_ngUnsubscribe.set(this, new Subject());
24
+ _SkyNumericPipe_numericSvc.set(this, void 0);
25
+ _SkyNumericPipe_providerLocale.set(this, void 0);
26
+ __classPrivateFieldSet(this, _SkyNumericPipe_numericSvc, numericSvc, "f");
27
+ __classPrivateFieldSet(this, _SkyNumericPipe_changeDetector, changeDetector, "f");
28
+ localeProvider
23
29
  .getLocaleInfo()
24
- .pipe(takeUntil(this.ngUnsubscribe))
30
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyNumericPipe_ngUnsubscribe, "f")))
25
31
  .subscribe((localeInfo) => {
26
- this.providerLocale = localeInfo.locale;
27
- numericService.currentLocale = this.providerLocale;
28
- this.changeDetector.markForCheck();
32
+ __classPrivateFieldSet(this, _SkyNumericPipe_providerLocale, localeInfo.locale, "f");
33
+ numericSvc.currentLocale = __classPrivateFieldGet(this, _SkyNumericPipe_providerLocale, "f");
34
+ __classPrivateFieldGet(this, _SkyNumericPipe_changeDetector, "f").markForCheck();
29
35
  });
30
36
  }
31
37
  ngOnDestroy() {
32
- this.ngUnsubscribe.next();
33
- this.ngUnsubscribe.complete();
38
+ __classPrivateFieldGet(this, _SkyNumericPipe_ngUnsubscribe, "f").next();
39
+ __classPrivateFieldGet(this, _SkyNumericPipe_ngUnsubscribe, "f").complete();
34
40
  }
35
41
  /**
36
42
  * Formats a number based on the provided options.
37
43
  */
38
44
  transform(value, config) {
39
45
  const newCacheKey = (config ? JSON.stringify(config, Object.keys(config).sort()) : '') +
40
- `${value}_${config?.locale || this.providerLocale}`;
46
+ `${value}_${config?.locale || __classPrivateFieldGet(this, _SkyNumericPipe_providerLocale, "f")}`;
41
47
  /* If the value and locale are the same as the last transform then return the previous value
42
48
  instead of reformatting. */
43
- if (this.formattedValue && this.cacheKey === newCacheKey) {
44
- return this.formattedValue;
49
+ if (__classPrivateFieldGet(this, _SkyNumericPipe_formattedValue, "f") && __classPrivateFieldGet(this, _SkyNumericPipe_cacheKey, "f") === newCacheKey) {
50
+ return __classPrivateFieldGet(this, _SkyNumericPipe_formattedValue, "f");
45
51
  }
46
52
  const options = new NumericOptions();
47
53
  // The default number of digits is `1`. When truncate is disabled, set digits
@@ -62,18 +68,19 @@ export class SkyNumericPipe {
62
68
  }
63
69
  Object.assign(options, config);
64
70
  // Assign properties for proper result caching.
65
- this.cacheKey = newCacheKey;
66
- this.formattedValue = this.numericService.formatNumber(value, options);
67
- return this.formattedValue;
71
+ __classPrivateFieldSet(this, _SkyNumericPipe_cacheKey, newCacheKey, "f");
72
+ __classPrivateFieldSet(this, _SkyNumericPipe_formattedValue, __classPrivateFieldGet(this, _SkyNumericPipe_numericSvc, "f").formatNumber(value, options), "f");
73
+ return __classPrivateFieldGet(this, _SkyNumericPipe_formattedValue, "f");
68
74
  }
69
75
  }
70
- SkyNumericPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyNumericPipe, deps: [{ token: i1.SkyAppLocaleProvider }, { token: i2.SkyNumericService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
71
- SkyNumericPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyNumericPipe, name: "skyNumeric", pure: false });
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyNumericPipe, decorators: [{
76
+ _SkyNumericPipe_cacheKey = new WeakMap(), _SkyNumericPipe_changeDetector = new WeakMap(), _SkyNumericPipe_formattedValue = new WeakMap(), _SkyNumericPipe_ngUnsubscribe = new WeakMap(), _SkyNumericPipe_numericSvc = new WeakMap(), _SkyNumericPipe_providerLocale = new WeakMap();
77
+ SkyNumericPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyNumericPipe, deps: [{ token: i1.SkyAppLocaleProvider }, { token: i2.SkyNumericService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
78
+ SkyNumericPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SkyNumericPipe, name: "skyNumeric", pure: false });
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyNumericPipe, decorators: [{
73
80
  type: Pipe,
74
81
  args: [{
75
82
  name: 'skyNumeric',
76
83
  pure: false,
77
84
  }]
78
85
  }], ctorParameters: function () { return [{ type: i1.SkyAppLocaleProvider }, { type: i2.SkyNumericService }, { type: i0.ChangeDetectorRef }]; } });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL251bWVyaWMvbnVtZXJpYy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsSUFBSSxHQUVMLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsY0FBYyxFQUFxQixNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7O0FBRXREOzs7OztHQUtHO0FBS0gsTUFBTSxPQUFPLGNBQWM7SUFPekIsWUFDVSxjQUFvQyxFQUMzQixjQUFpQyxFQUMxQyxjQUFpQztRQUZqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBc0I7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQzFDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUxuQyxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFPMUMsSUFBSSxDQUFDLGNBQWM7YUFDaEIsYUFBYSxFQUFFO2FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDbkMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1lBQ3hDLGNBQWMsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUNuRCxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLFNBQVMsQ0FBQyxLQUFhLEVBQUUsTUFBMEI7UUFDeEQsTUFBTSxXQUFXLEdBQ2YsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2xFLEdBQUcsS0FBSyxJQUFJLE1BQU0sRUFBRSxNQUFNLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXREO21DQUMyQjtRQUMzQixJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxXQUFXLEVBQUU7WUFDeEQsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO1NBQzVCO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUVyQyw2RUFBNkU7UUFDN0UsdUZBQXVGO1FBQ3ZGLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssS0FBSyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ3RFLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ3BCO1FBRUQsZ0ZBQWdGO1FBQ2hGLElBQ0UsTUFBTTtZQUNOLE1BQU0sQ0FBQyxTQUFTO1lBQ2hCLE1BQU0sQ0FBQyxNQUFNO1lBQ2IsTUFBTSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUNoQztZQUNBLE1BQU0sSUFBSSxLQUFLLENBQ2IsaUZBQWlGLENBQ2xGLENBQUM7WUFFRiwrRkFBK0Y7U0FDaEc7YUFBTSxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsU0FBUyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUN2RCxPQUFPLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7U0FDbkM7UUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUvQiwrQ0FBK0M7UUFDL0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxXQUFXLENBQUM7UUFFNUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdkUsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7OzJHQXhFVSxjQUFjO3lHQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFKMUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsWUFBWTtvQkFDbEIsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgT25EZXN0cm95LFxuICBQaXBlLFxuICBQaXBlVHJhbnNmb3JtLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUFwcExvY2FsZVByb3ZpZGVyIH0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE51bWVyaWNPcHRpb25zLCBTa3lOdW1lcmljT3B0aW9ucyB9IGZyb20gJy4vbnVtZXJpYy5vcHRpb25zJztcbmltcG9ydCB7IFNreU51bWVyaWNTZXJ2aWNlIH0gZnJvbSAnLi9udW1lcmljLnNlcnZpY2UnO1xuXG4vKipcbiAqIFNob3J0ZW5zIG51bWJlcnMgdG8gcm91bmRlZCBudW1iZXJzIGFuZCBhYmJyZXZpYXRpb24gY2hhcmFjdGVycyBzdWNoIGFzIEsgZm9yIHRob3VzYW5kcyxcbiAqIE0gZm9yIG1pbGxpb25zLCBCIGZvciBiaWxsaW9ucywgYW5kIFQgZm9yIHRyaWxsaW9ucy4gVGhlIHBpcGUgYWxzbyBmb3JtYXRzIGZvciBjdXJyZW5jeS5cbiAqIEJlIHN1cmUgeW91IGhhdmUgYSBzcGFjZSBhZnRlciB0aGUgdHdvIGN1cmx5IGJyYWNrZXRzIG9wZW5pbmcgdGhlIHBpcGUgYW5kXG4gKiBhIHNwYWNlIGJlZm9yZSB0aGUgdHdvIGN1cmx5IGJyYWNrZXRzIGNsb3NpbmcgdGhlIHBpcGUgb3IgaXQgd2lsbCBub3Qgd29yay5cbiAqL1xuQFBpcGUoe1xuICBuYW1lOiAnc2t5TnVtZXJpYycsXG4gIHB1cmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lOdW1lcmljUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0sIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgY2FjaGVLZXk6IHN0cmluZztcbiAgcHJpdmF0ZSBmb3JtYXR0ZWRWYWx1ZTogc3RyaW5nO1xuICBwcml2YXRlIHByb3ZpZGVyTG9jYWxlOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGxvY2FsZVByb3ZpZGVyOiBTa3lBcHBMb2NhbGVQcm92aWRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG51bWVyaWNTZXJ2aWNlOiBTa3lOdW1lcmljU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICB0aGlzLmxvY2FsZVByb3ZpZGVyXG4gICAgICAuZ2V0TG9jYWxlSW5mbygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxvY2FsZUluZm8pID0+IHtcbiAgICAgICAgdGhpcy5wcm92aWRlckxvY2FsZSA9IGxvY2FsZUluZm8ubG9jYWxlO1xuICAgICAgICBudW1lcmljU2VydmljZS5jdXJyZW50TG9jYWxlID0gdGhpcy5wcm92aWRlckxvY2FsZTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogRm9ybWF0cyBhIG51bWJlciBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgb3B0aW9ucy5cbiAgICovXG4gIHB1YmxpYyB0cmFuc2Zvcm0odmFsdWU6IG51bWJlciwgY29uZmlnPzogU2t5TnVtZXJpY09wdGlvbnMpOiBzdHJpbmcge1xuICAgIGNvbnN0IG5ld0NhY2hlS2V5ID1cbiAgICAgIChjb25maWcgPyBKU09OLnN0cmluZ2lmeShjb25maWcsIE9iamVjdC5rZXlzKGNvbmZpZykuc29ydCgpKSA6ICcnKSArXG4gICAgICBgJHt2YWx1ZX1fJHtjb25maWc/LmxvY2FsZSB8fCB0aGlzLnByb3ZpZGVyTG9jYWxlfWA7XG5cbiAgICAvKiBJZiB0aGUgdmFsdWUgYW5kIGxvY2FsZSBhcmUgdGhlIHNhbWUgYXMgdGhlIGxhc3QgdHJhbnNmb3JtIHRoZW4gcmV0dXJuIHRoZSBwcmV2aW91cyB2YWx1ZVxuICAgIGluc3RlYWQgb2YgcmVmb3JtYXR0aW5nLiAqL1xuICAgIGlmICh0aGlzLmZvcm1hdHRlZFZhbHVlICYmIHRoaXMuY2FjaGVLZXkgPT09IG5ld0NhY2hlS2V5KSB7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXR0ZWRWYWx1ZTtcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zID0gbmV3IE51bWVyaWNPcHRpb25zKCk7XG5cbiAgICAvLyBUaGUgZGVmYXVsdCBudW1iZXIgb2YgZGlnaXRzIGlzIGAxYC4gV2hlbiB0cnVuY2F0ZSBpcyBkaXNhYmxlZCwgc2V0IGRpZ2l0c1xuICAgIC8vIHRvIGAwYCB0byBhdm9pZCB0aGUgdW5uZWNlc3NhcnkgYWRkaXRpb24gb2YgYC4wYCBhdCB0aGUgZW5kIG9mIHRoZSBmb3JtYXR0ZWQgbnVtYmVyLlxuICAgIGlmIChjb25maWcgJiYgY29uZmlnLnRydW5jYXRlID09PSBmYWxzZSAmJiBjb25maWcuZGlnaXRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIG9wdGlvbnMuZGlnaXRzID0gMDtcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgbWluaW11bSBkaWdpdHMgaXMgbGVzcyB0aGFuIHRoZSBzZXQgbWF4aW11bSBkaWdpdHMgdGhlbiB0aHJvdyBhbiBlcnJvclxuICAgIGlmIChcbiAgICAgIGNvbmZpZyAmJlxuICAgICAgY29uZmlnLm1pbkRpZ2l0cyAmJlxuICAgICAgY29uZmlnLmRpZ2l0cyAmJlxuICAgICAgY29uZmlnLm1pbkRpZ2l0cyA+IGNvbmZpZy5kaWdpdHNcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ1RoZSBgZGlnaXRzYCBwcm9wZXJ0eSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byB0aGUgYG1pbkRpZ2l0c2AgcHJvcGVydHknXG4gICAgICApO1xuXG4gICAgICAvLyBJZiB0aGVyZSBpcyBhIG1pbmltdW0gZGlnaXRzIGdpdmVuIGJ1dCBub3QgYSBtYXhpbXVtIHRoZW4gZGVmYXVsdCB0aGUgbWF4aW11bSB0byB0aGUgbWluaW11bVxuICAgIH0gZWxzZSBpZiAoY29uZmlnICYmIGNvbmZpZy5taW5EaWdpdHMgJiYgIWNvbmZpZy5kaWdpdHMpIHtcbiAgICAgIG9wdGlvbnMuZGlnaXRzID0gY29uZmlnLm1pbkRpZ2l0cztcbiAgICB9XG5cbiAgICBPYmplY3QuYXNzaWduKG9wdGlvbnMsIGNvbmZpZyk7XG5cbiAgICAvLyBBc3NpZ24gcHJvcGVydGllcyBmb3IgcHJvcGVyIHJlc3VsdCBjYWNoaW5nLlxuICAgIHRoaXMuY2FjaGVLZXkgPSBuZXdDYWNoZUtleTtcblxuICAgIHRoaXMuZm9ybWF0dGVkVmFsdWUgPSB0aGlzLm51bWVyaWNTZXJ2aWNlLmZvcm1hdE51bWJlcih2YWx1ZSwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIHRoaXMuZm9ybWF0dGVkVmFsdWU7XG4gIH1cbn1cbiJdfQ==
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL251bWVyaWMvbnVtZXJpYy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUVqQixJQUFJLEdBRUwsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxjQUFjLEVBQXFCLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUFFdEQ7Ozs7O0dBS0c7QUFLSCxNQUFNLE9BQU8sY0FBYztJQWF6QixZQUNFLGNBQW9DLEVBQ3BDLFVBQTZCLEVBQzdCLGNBQWlDO1FBZm5DLDJDQUE4QjtRQUU5QixpREFBbUM7UUFFbkMsaURBQW9DO1FBRXBDLHdDQUFpQixJQUFJLE9BQU8sRUFBUSxFQUFDO1FBRXJDLDZDQUErQjtRQUUvQixpREFBb0M7UUFPbEMsdUJBQUEsSUFBSSw4QkFBZSxVQUFVLE1BQUEsQ0FBQztRQUM5Qix1QkFBQSxJQUFJLGtDQUFtQixjQUFjLE1BQUEsQ0FBQztRQUV0QyxjQUFjO2FBQ1gsYUFBYSxFQUFFO2FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBQSxJQUFJLHFDQUFlLENBQUMsQ0FBQzthQUNwQyxTQUFTLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUN4Qix1QkFBQSxJQUFJLGtDQUFtQixVQUFVLENBQUMsTUFBTSxNQUFBLENBQUM7WUFDekMsVUFBVSxDQUFDLGFBQWEsR0FBRyx1QkFBQSxJQUFJLHNDQUFnQixDQUFDO1lBQ2hELHVCQUFBLElBQUksc0NBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sV0FBVztRQUNoQix1QkFBQSxJQUFJLHFDQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDM0IsdUJBQUEsSUFBSSxxQ0FBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7T0FFRztJQUNJLFNBQVMsQ0FBQyxLQUFhLEVBQUUsTUFBMEI7UUFDeEQsTUFBTSxXQUFXLEdBQ2YsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2xFLEdBQUcsS0FBSyxJQUFJLE1BQU0sRUFBRSxNQUFNLElBQUksdUJBQUEsSUFBSSxzQ0FBZ0IsRUFBRSxDQUFDO1FBRXZEO21DQUMyQjtRQUMzQixJQUFJLHVCQUFBLElBQUksc0NBQWdCLElBQUksdUJBQUEsSUFBSSxnQ0FBVSxLQUFLLFdBQVcsRUFBRTtZQUMxRCxPQUFPLHVCQUFBLElBQUksc0NBQWdCLENBQUM7U0FDN0I7UUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBRXJDLDZFQUE2RTtRQUM3RSx1RkFBdUY7UUFDdkYsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxLQUFLLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDdEUsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7U0FDcEI7UUFFRCxnRkFBZ0Y7UUFDaEYsSUFDRSxNQUFNO1lBQ04sTUFBTSxDQUFDLFNBQVM7WUFDaEIsTUFBTSxDQUFDLE1BQU07WUFDYixNQUFNLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQ2hDO1lBQ0EsTUFBTSxJQUFJLEtBQUssQ0FDYixpRkFBaUYsQ0FDbEYsQ0FBQztZQUVGLCtGQUErRjtTQUNoRzthQUFNLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQ3ZELE9BQU8sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztTQUNuQztRQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRS9CLCtDQUErQztRQUMvQyx1QkFBQSxJQUFJLDRCQUFhLFdBQVcsTUFBQSxDQUFDO1FBRTdCLHVCQUFBLElBQUksa0NBQW1CLHVCQUFBLElBQUksa0NBQVksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxNQUFBLENBQUM7UUFDckUsT0FBTyx1QkFBQSxJQUFJLHNDQUFnQixDQUFDO0lBQzlCLENBQUM7OzsyR0FqRlUsY0FBYzt5R0FBZCxjQUFjOzJGQUFkLGNBQWM7a0JBSjFCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFlBQVk7b0JBQ2xCLElBQUksRUFBRSxLQUFLO2lCQUNaIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIE9uRGVzdHJveSxcbiAgUGlwZSxcbiAgUGlwZVRyYW5zZm9ybSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lBcHBMb2NhbGVQcm92aWRlciB9IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBOdW1lcmljT3B0aW9ucywgU2t5TnVtZXJpY09wdGlvbnMgfSBmcm9tICcuL251bWVyaWMub3B0aW9ucyc7XG5pbXBvcnQgeyBTa3lOdW1lcmljU2VydmljZSB9IGZyb20gJy4vbnVtZXJpYy5zZXJ2aWNlJztcblxuLyoqXG4gKiBTaG9ydGVucyBudW1iZXJzIHRvIHJvdW5kZWQgbnVtYmVycyBhbmQgYWJicmV2aWF0aW9uIGNoYXJhY3RlcnMgc3VjaCBhcyBLIGZvciB0aG91c2FuZHMsXG4gKiBNIGZvciBtaWxsaW9ucywgQiBmb3IgYmlsbGlvbnMsIGFuZCBUIGZvciB0cmlsbGlvbnMuIFRoZSBwaXBlIGFsc28gZm9ybWF0cyBmb3IgY3VycmVuY3kuXG4gKiBCZSBzdXJlIHlvdSBoYXZlIGEgc3BhY2UgYWZ0ZXIgdGhlIHR3byBjdXJseSBicmFja2V0cyBvcGVuaW5nIHRoZSBwaXBlIGFuZFxuICogYSBzcGFjZSBiZWZvcmUgdGhlIHR3byBjdXJseSBicmFja2V0cyBjbG9zaW5nIHRoZSBwaXBlIG9yIGl0IHdpbGwgbm90IHdvcmsuXG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ3NreU51bWVyaWMnLFxuICBwdXJlOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TnVtZXJpY1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtLCBPbkRlc3Ryb3kge1xuICAjY2FjaGVLZXk6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAjY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmO1xuXG4gICNmb3JtYXR0ZWRWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjbnVtZXJpY1N2YzogU2t5TnVtZXJpY1NlcnZpY2U7XG5cbiAgI3Byb3ZpZGVyTG9jYWxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgbG9jYWxlUHJvdmlkZXI6IFNreUFwcExvY2FsZVByb3ZpZGVyLFxuICAgIG51bWVyaWNTdmM6IFNreU51bWVyaWNTZXJ2aWNlLFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICB0aGlzLiNudW1lcmljU3ZjID0gbnVtZXJpY1N2YztcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuXG4gICAgbG9jYWxlUHJvdmlkZXJcbiAgICAgIC5nZXRMb2NhbGVJbmZvKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxvY2FsZUluZm8pID0+IHtcbiAgICAgICAgdGhpcy4jcHJvdmlkZXJMb2NhbGUgPSBsb2NhbGVJbmZvLmxvY2FsZTtcbiAgICAgICAgbnVtZXJpY1N2Yy5jdXJyZW50TG9jYWxlID0gdGhpcy4jcHJvdmlkZXJMb2NhbGU7XG4gICAgICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZvcm1hdHMgYSBudW1iZXIgYmFzZWQgb24gdGhlIHByb3ZpZGVkIG9wdGlvbnMuXG4gICAqL1xuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIsIGNvbmZpZz86IFNreU51bWVyaWNPcHRpb25zKTogc3RyaW5nIHtcbiAgICBjb25zdCBuZXdDYWNoZUtleSA9XG4gICAgICAoY29uZmlnID8gSlNPTi5zdHJpbmdpZnkoY29uZmlnLCBPYmplY3Qua2V5cyhjb25maWcpLnNvcnQoKSkgOiAnJykgK1xuICAgICAgYCR7dmFsdWV9XyR7Y29uZmlnPy5sb2NhbGUgfHwgdGhpcy4jcHJvdmlkZXJMb2NhbGV9YDtcblxuICAgIC8qIElmIHRoZSB2YWx1ZSBhbmQgbG9jYWxlIGFyZSB0aGUgc2FtZSBhcyB0aGUgbGFzdCB0cmFuc2Zvcm0gdGhlbiByZXR1cm4gdGhlIHByZXZpb3VzIHZhbHVlXG4gICAgaW5zdGVhZCBvZiByZWZvcm1hdHRpbmcuICovXG4gICAgaWYgKHRoaXMuI2Zvcm1hdHRlZFZhbHVlICYmIHRoaXMuI2NhY2hlS2V5ID09PSBuZXdDYWNoZUtleSkge1xuICAgICAgcmV0dXJuIHRoaXMuI2Zvcm1hdHRlZFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IG9wdGlvbnMgPSBuZXcgTnVtZXJpY09wdGlvbnMoKTtcblxuICAgIC8vIFRoZSBkZWZhdWx0IG51bWJlciBvZiBkaWdpdHMgaXMgYDFgLiBXaGVuIHRydW5jYXRlIGlzIGRpc2FibGVkLCBzZXQgZGlnaXRzXG4gICAgLy8gdG8gYDBgIHRvIGF2b2lkIHRoZSB1bm5lY2Vzc2FyeSBhZGRpdGlvbiBvZiBgLjBgIGF0IHRoZSBlbmQgb2YgdGhlIGZvcm1hdHRlZCBudW1iZXIuXG4gICAgaWYgKGNvbmZpZyAmJiBjb25maWcudHJ1bmNhdGUgPT09IGZhbHNlICYmIGNvbmZpZy5kaWdpdHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgb3B0aW9ucy5kaWdpdHMgPSAwO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSBtaW5pbXVtIGRpZ2l0cyBpcyBsZXNzIHRoYW4gdGhlIHNldCBtYXhpbXVtIGRpZ2l0cyB0aGVuIHRocm93IGFuIGVycm9yXG4gICAgaWYgKFxuICAgICAgY29uZmlnICYmXG4gICAgICBjb25maWcubWluRGlnaXRzICYmXG4gICAgICBjb25maWcuZGlnaXRzICYmXG4gICAgICBjb25maWcubWluRGlnaXRzID4gY29uZmlnLmRpZ2l0c1xuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnVGhlIGBkaWdpdHNgIHByb3BlcnR5IG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIHRoZSBgbWluRGlnaXRzYCBwcm9wZXJ0eSdcbiAgICAgICk7XG5cbiAgICAgIC8vIElmIHRoZXJlIGlzIGEgbWluaW11bSBkaWdpdHMgZ2l2ZW4gYnV0IG5vdCBhIG1heGltdW0gdGhlbiBkZWZhdWx0IHRoZSBtYXhpbXVtIHRvIHRoZSBtaW5pbXVtXG4gICAgfSBlbHNlIGlmIChjb25maWcgJiYgY29uZmlnLm1pbkRpZ2l0cyAmJiAhY29uZmlnLmRpZ2l0cykge1xuICAgICAgb3B0aW9ucy5kaWdpdHMgPSBjb25maWcubWluRGlnaXRzO1xuICAgIH1cblxuICAgIE9iamVjdC5hc3NpZ24ob3B0aW9ucywgY29uZmlnKTtcblxuICAgIC8vIEFzc2lnbiBwcm9wZXJ0aWVzIGZvciBwcm9wZXIgcmVzdWx0IGNhY2hpbmcuXG4gICAgdGhpcy4jY2FjaGVLZXkgPSBuZXdDYWNoZUtleTtcblxuICAgIHRoaXMuI2Zvcm1hdHRlZFZhbHVlID0gdGhpcy4jbnVtZXJpY1N2Yy5mb3JtYXROdW1iZXIodmFsdWUsIG9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzLiNmb3JtYXR0ZWRWYWx1ZTtcbiAgfVxufVxuIl19