@skyux/core 6.15.0 → 6.17.1

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 (79) hide show
  1. package/documentation.json +1042 -892
  2. package/esm2020/lib/modules/adapter-service/adapter.service.mjs +21 -22
  3. package/esm2020/lib/modules/affix/affix-offset.mjs +1 -1
  4. package/esm2020/lib/modules/affix/affix.directive.mjs +38 -23
  5. package/esm2020/lib/modules/affix/affixer.mjs +266 -260
  6. package/esm2020/lib/modules/affix/dom-utils.mjs +7 -7
  7. package/esm2020/lib/modules/dock/dock-dom-adapter.service.mjs +48 -44
  8. package/esm2020/lib/modules/dock/dock-item.mjs +10 -5
  9. package/esm2020/lib/modules/dock/dock.component.mjs +55 -31
  10. package/esm2020/lib/modules/dock/dock.service.mjs +40 -36
  11. package/esm2020/lib/modules/dynamic-component/dynamic-component.service.mjs +37 -22
  12. package/esm2020/lib/modules/log/log.service.mjs +37 -37
  13. package/esm2020/lib/modules/media-query/media-query.service.mjs +50 -47
  14. package/esm2020/lib/modules/mutation/mutation-observer-service.mjs +3 -1
  15. package/esm2020/lib/modules/numeric/numeric.pipe.mjs +26 -19
  16. package/esm2020/lib/modules/numeric/numeric.service.mjs +84 -99
  17. package/esm2020/lib/modules/overlay/overlay-adapter.service.mjs +23 -17
  18. package/esm2020/lib/modules/overlay/overlay-instance.mjs +18 -9
  19. package/esm2020/lib/modules/overlay/overlay.component.mjs +79 -55
  20. package/esm2020/lib/modules/overlay/overlay.service.mjs +55 -49
  21. package/esm2020/lib/modules/percent-pipe/percent.pipe.mjs +32 -21
  22. package/esm2020/lib/modules/resize-observer/resize-observer-media-query.service.mjs +38 -46
  23. package/esm2020/lib/modules/scrollable-host/scrollable-host.service.mjs +66 -67
  24. package/esm2020/lib/modules/title/title.service.mjs +8 -4
  25. package/esm2020/lib/modules/trim/trim.directive.mjs +10 -11
  26. package/esm2020/lib/modules/viewkeeper/viewkeeper-boundary-info.mjs +1 -1
  27. package/esm2020/lib/modules/viewkeeper/viewkeeper.directive.mjs +75 -60
  28. package/esm2020/lib/modules/viewkeeper/viewkeeper.mjs +166 -156
  29. package/esm2020/lib/modules/viewkeeper/viewkeeper.service.mjs +7 -3
  30. package/esm2020/testing/core-testing.module.mjs +4 -1
  31. package/esm2020/testing/mock-media-query.service.mjs +4 -1
  32. package/esm2020/testing/mock-ui-config.service.mjs +4 -1
  33. package/esm2020/testing/overlay/overlay-harness-filters.mjs +1 -1
  34. package/esm2020/testing/overlay/overlay-harness.mjs +2 -1
  35. package/esm2020/testing/shared/component-harness.mjs +4 -1
  36. package/esm2020/testing/shared/harness-filters.mjs +1 -1
  37. package/fesm2015/skyux-core-testing.mjs +13 -0
  38. package/fesm2015/skyux-core-testing.mjs.map +1 -1
  39. package/fesm2015/skyux-core.mjs +1276 -1151
  40. package/fesm2015/skyux-core.mjs.map +1 -1
  41. package/fesm2020/skyux-core-testing.mjs +13 -0
  42. package/fesm2020/skyux-core-testing.mjs.map +1 -1
  43. package/fesm2020/skyux-core.mjs +1278 -1150
  44. package/fesm2020/skyux-core.mjs.map +1 -1
  45. package/lib/modules/adapter-service/adapter.service.d.ts +3 -5
  46. package/lib/modules/affix/affix-offset.d.ts +1 -1
  47. package/lib/modules/affix/affix.directive.d.ts +12 -13
  48. package/lib/modules/affix/affixer.d.ts +2 -34
  49. package/lib/modules/affix/dom-utils.d.ts +3 -3
  50. package/lib/modules/dock/dock-dom-adapter.service.d.ts +2 -9
  51. package/lib/modules/dock/dock-item.d.ts +1 -1
  52. package/lib/modules/dock/dock.component.d.ts +2 -10
  53. package/lib/modules/dock/dock.service.d.ts +2 -5
  54. package/lib/modules/dynamic-component/dynamic-component.service.d.ts +2 -7
  55. package/lib/modules/log/log.service.d.ts +2 -6
  56. package/lib/modules/media-query/media-query.service.d.ts +1 -8
  57. package/lib/modules/numeric/numeric.pipe.d.ts +2 -8
  58. package/lib/modules/numeric/numeric.service.d.ts +3 -36
  59. package/lib/modules/overlay/overlay-adapter.service.d.ts +1 -3
  60. package/lib/modules/overlay/overlay-instance.d.ts +1 -2
  61. package/lib/modules/overlay/overlay.component.d.ts +1 -14
  62. package/lib/modules/overlay/overlay.service.d.ts +1 -7
  63. package/lib/modules/percent-pipe/percent.pipe.d.ts +2 -9
  64. package/lib/modules/resize-observer/resize-observer-media-query.service.d.ts +2 -7
  65. package/lib/modules/scrollable-host/scrollable-host.service.d.ts +2 -11
  66. package/lib/modules/title/title.service.d.ts +2 -2
  67. package/lib/modules/trim/trim.directive.d.ts +0 -2
  68. package/lib/modules/viewkeeper/viewkeeper-boundary-info.d.ts +1 -1
  69. package/lib/modules/viewkeeper/viewkeeper.d.ts +2 -24
  70. package/lib/modules/viewkeeper/viewkeeper.directive.d.ts +4 -16
  71. package/lib/modules/viewkeeper/viewkeeper.service.d.ts +1 -1
  72. package/package.json +2 -2
  73. package/testing/core-testing.module.d.ts +3 -0
  74. package/testing/mock-media-query.service.d.ts +3 -0
  75. package/testing/mock-ui-config.service.d.ts +3 -0
  76. package/testing/overlay/overlay-harness-filters.d.ts +1 -0
  77. package/testing/overlay/overlay-harness.d.ts +1 -0
  78. package/testing/shared/component-harness.d.ts +3 -0
  79. package/testing/shared/harness-filters.d.ts +1 -0
@@ -1,4 +1,4 @@
1
- var _SkyTrimDirective_instances, _SkyTrimDirective_obs, _SkyTrimDirective_observe, _SkyTrimDirective_disconnect, _SkyTrimDirective_trim;
1
+ var _SkyTrimDirective_instances, _SkyTrimDirective_elRef, _SkyTrimDirective_obs, _SkyTrimDirective_observe, _SkyTrimDirective_disconnect, _SkyTrimDirective_trim;
2
2
  import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
3
  import { Directive, ElementRef } from '@angular/core';
4
4
  import { MutationObserverService } from '../mutation/mutation-observer-service';
@@ -9,15 +9,15 @@ import * as i1 from "../mutation/mutation-observer-service";
9
9
  */
10
10
  export class SkyTrimDirective {
11
11
  constructor(elRef, mutationObs) {
12
- this.elRef = elRef;
13
- this.mutationObs = mutationObs;
14
12
  _SkyTrimDirective_instances.add(this);
13
+ _SkyTrimDirective_elRef.set(this, void 0);
15
14
  _SkyTrimDirective_obs.set(this, void 0);
16
- __classPrivateFieldSet(this, _SkyTrimDirective_obs, this.mutationObs.create((mutations) => {
15
+ __classPrivateFieldSet(this, _SkyTrimDirective_elRef, elRef, "f");
16
+ __classPrivateFieldSet(this, _SkyTrimDirective_obs, mutationObs.create((mutations) => {
17
17
  const nodes = [];
18
18
  // Only trim white space inside direct descendents of the current element.
19
19
  for (const mutation of mutations) {
20
- if (mutation.target.parentNode === this.elRef.nativeElement) {
20
+ if (mutation.target.parentNode === elRef.nativeElement) {
21
21
  nodes.push(mutation.target);
22
22
  }
23
23
  }
@@ -26,16 +26,15 @@ export class SkyTrimDirective {
26
26
  __classPrivateFieldGet(this, _SkyTrimDirective_instances, "m", _SkyTrimDirective_observe).call(this);
27
27
  }
28
28
  ngOnInit() {
29
- const el = this.elRef.nativeElement;
29
+ const el = __classPrivateFieldGet(this, _SkyTrimDirective_elRef, "f").nativeElement;
30
30
  __classPrivateFieldGet(this, _SkyTrimDirective_instances, "m", _SkyTrimDirective_trim).call(this, Array.from(el.childNodes));
31
31
  }
32
32
  ngOnDestroy() {
33
33
  __classPrivateFieldGet(this, _SkyTrimDirective_instances, "m", _SkyTrimDirective_disconnect).call(this);
34
- __classPrivateFieldSet(this, _SkyTrimDirective_obs, undefined, "f");
35
34
  }
36
35
  }
37
- _SkyTrimDirective_obs = new WeakMap(), _SkyTrimDirective_instances = new WeakSet(), _SkyTrimDirective_observe = function _SkyTrimDirective_observe() {
38
- __classPrivateFieldGet(this, _SkyTrimDirective_obs, "f").observe(this.elRef.nativeElement, {
36
+ _SkyTrimDirective_elRef = new WeakMap(), _SkyTrimDirective_obs = new WeakMap(), _SkyTrimDirective_instances = new WeakSet(), _SkyTrimDirective_observe = function _SkyTrimDirective_observe() {
37
+ __classPrivateFieldGet(this, _SkyTrimDirective_obs, "f").observe(__classPrivateFieldGet(this, _SkyTrimDirective_elRef, "f").nativeElement, {
39
38
  characterData: true,
40
39
  subtree: true,
41
40
  });
@@ -46,7 +45,7 @@ _SkyTrimDirective_obs = new WeakMap(), _SkyTrimDirective_instances = new WeakSet
46
45
  // doesn't retrigger the observe callback.
47
46
  __classPrivateFieldGet(this, _SkyTrimDirective_instances, "m", _SkyTrimDirective_disconnect).call(this);
48
47
  for (const node of nodes) {
49
- if (node.nodeType === Node.TEXT_NODE) {
48
+ if (node.nodeType === Node.TEXT_NODE && node.textContent) {
50
49
  const textContent = node.textContent;
51
50
  const textContentTrimmed = textContent.trim();
52
51
  if (textContent !== textContentTrimmed) {
@@ -64,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
64
63
  selector: '[skyTrim]',
65
64
  }]
66
65
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.MutationObserverService }]; } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvdHJpbS90cmltLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUV6RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBRWhGOztHQUVHO0FBSUgsTUFBTSxPQUFPLGdCQUFnQjtJQUczQixZQUNVLEtBQWlCLEVBQ2pCLFdBQW9DO1FBRHBDLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsZ0JBQVcsR0FBWCxXQUFXLENBQXlCOztRQUo5Qyx3Q0FBdUI7UUFNckIsdUJBQUEsSUFBSSx5QkFBUSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQTJCLEVBQUUsRUFBRTtZQUNsRSxNQUFNLEtBQUssR0FBVyxFQUFFLENBQUM7WUFFekIsMEVBQTBFO1lBQzFFLEtBQUssTUFBTSxRQUFRLElBQUksU0FBUyxFQUFFO2dCQUNoQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFO29CQUMzRCxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDN0I7YUFDRjtZQUVELHVCQUFBLElBQUksMkRBQU0sTUFBVixJQUFJLEVBQU8sS0FBSyxDQUFDLENBQUM7UUFDcEIsQ0FBQyxDQUFDLE1BQUEsQ0FBQztRQUVILHVCQUFBLElBQUksOERBQVMsTUFBYixJQUFJLENBQVcsQ0FBQztJQUNsQixDQUFDO0lBRU0sUUFBUTtRQUNiLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBd0IsQ0FBQztRQUMvQyx1QkFBQSxJQUFJLDJEQUFNLE1BQVYsSUFBSSxFQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVNLFdBQVc7UUFDaEIsdUJBQUEsSUFBSSxpRUFBWSxNQUFoQixJQUFJLENBQWMsQ0FBQztRQUNuQix1QkFBQSxJQUFJLHlCQUFRLFNBQVMsTUFBQSxDQUFDO0lBQ3hCLENBQUM7OztJQUdDLHVCQUFBLElBQUksNkJBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUU7UUFDMUMsYUFBYSxFQUFFLElBQUk7UUFDbkIsT0FBTyxFQUFFLElBQUk7S0FDZCxDQUFDLENBQUM7QUFDTCxDQUFDO0lBR0MsdUJBQUEsSUFBSSw2QkFBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO0FBQ3pCLENBQUMsMkRBRUssS0FBYTtJQUNqQix5RUFBeUU7SUFDekUsMENBQTBDO0lBQzFDLHVCQUFBLElBQUksaUVBQVksTUFBaEIsSUFBSSxDQUFjLENBQUM7SUFFbkIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7UUFDeEIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDcEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUNyQyxNQUFNLGtCQUFrQixHQUFHLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUU5QyxJQUFJLFdBQVcsS0FBSyxrQkFBa0IsRUFBRTtnQkFDdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQzthQUN2QztTQUNGO0tBQ0Y7SUFFRCx1QkFBQSxJQUFJLDhEQUFTLE1BQWIsSUFBSSxDQUFXLENBQUM7QUFDbEIsQ0FBQzs2R0E3RFUsZ0JBQWdCO2lHQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFINUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsV0FBVztpQkFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vbXV0YXRpb24vbXV0YXRpb24tb2JzZXJ2ZXItc2VydmljZSc7XG5cbi8qKlxuICogVHJpbXMgd2hpdGVzcGFjZSBpbiBlYWNoIHRleHQgbm9kZSB0aGF0IGlzIGEgZGlyZWN0IGRlc2NlbmRlbnQgb2YgdGhlIGN1cnJlbnQgZWxlbWVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreVRyaW1dJyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5VHJpbURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgI29iczogTXV0YXRpb25PYnNlcnZlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgbXV0YXRpb25PYnM6IE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuI29icyA9IHRoaXMubXV0YXRpb25PYnMuY3JlYXRlKChtdXRhdGlvbnM6IE11dGF0aW9uUmVjb3JkW10pID0+IHtcbiAgICAgIGNvbnN0IG5vZGVzOiBOb2RlW10gPSBbXTtcblxuICAgICAgLy8gT25seSB0cmltIHdoaXRlIHNwYWNlIGluc2lkZSBkaXJlY3QgZGVzY2VuZGVudHMgb2YgdGhlIGN1cnJlbnQgZWxlbWVudC5cbiAgICAgIGZvciAoY29uc3QgbXV0YXRpb24gb2YgbXV0YXRpb25zKSB7XG4gICAgICAgIGlmIChtdXRhdGlvbi50YXJnZXQucGFyZW50Tm9kZSA9PT0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgICAgbm9kZXMucHVzaChtdXRhdGlvbi50YXJnZXQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMuI3RyaW0obm9kZXMpO1xuICAgIH0pO1xuXG4gICAgdGhpcy4jb2JzZXJ2ZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGVsID0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50IGFzIEVsZW1lbnQ7XG4gICAgdGhpcy4jdHJpbShBcnJheS5mcm9tKGVsLmNoaWxkTm9kZXMpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNkaXNjb25uZWN0KCk7XG4gICAgdGhpcy4jb2JzID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgI29ic2VydmUoKTogdm9pZCB7XG4gICAgdGhpcy4jb2JzLm9ic2VydmUodGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LCB7XG4gICAgICBjaGFyYWN0ZXJEYXRhOiB0cnVlLFxuICAgICAgc3VidHJlZTogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gICNkaXNjb25uZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuI29icy5kaXNjb25uZWN0KCk7XG4gIH1cblxuICAjdHJpbShub2RlczogTm9kZVtdKTogdm9pZCB7XG4gICAgLy8gU3VzcGVuZCB0aGUgTXV0YXRpb25PYnNlcnZlciBzbyBhbHRlcmluZyB0aGUgdGV4dCBjb250ZW50IG9mIGVhY2ggbm9kZVxuICAgIC8vIGRvZXNuJ3QgcmV0cmlnZ2VyIHRoZSBvYnNlcnZlIGNhbGxiYWNrLlxuICAgIHRoaXMuI2Rpc2Nvbm5lY3QoKTtcblxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiBub2Rlcykge1xuICAgICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSB7XG4gICAgICAgIGNvbnN0IHRleHRDb250ZW50ID0gbm9kZS50ZXh0Q29udGVudDtcbiAgICAgICAgY29uc3QgdGV4dENvbnRlbnRUcmltbWVkID0gdGV4dENvbnRlbnQudHJpbSgpO1xuXG4gICAgICAgIGlmICh0ZXh0Q29udGVudCAhPT0gdGV4dENvbnRlbnRUcmltbWVkKSB7XG4gICAgICAgICAgbm9kZS50ZXh0Q29udGVudCA9IHRleHRDb250ZW50VHJpbW1lZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuI29ic2VydmUoKTtcbiAgfVxufVxuIl19
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvdHJpbS90cmltLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUV6RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBRWhGOztHQUVHO0FBSUgsTUFBTSxPQUFPLGdCQUFnQjtJQUszQixZQUFZLEtBQWlCLEVBQUUsV0FBb0M7O1FBSm5FLDBDQUFtQjtRQUVuQix3Q0FBdUI7UUFHckIsdUJBQUEsSUFBSSwyQkFBVSxLQUFLLE1BQUEsQ0FBQztRQUVwQix1QkFBQSxJQUFJLHlCQUFRLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUEyQixFQUFFLEVBQUU7WUFDN0QsTUFBTSxLQUFLLEdBQVcsRUFBRSxDQUFDO1lBRXpCLDBFQUEwRTtZQUMxRSxLQUFLLE1BQU0sUUFBUSxJQUFJLFNBQVMsRUFBRTtnQkFDaEMsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsS0FBSyxLQUFLLENBQUMsYUFBYSxFQUFFO29CQUN0RCxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDN0I7YUFDRjtZQUVELHVCQUFBLElBQUksMkRBQU0sTUFBVixJQUFJLEVBQU8sS0FBSyxDQUFDLENBQUM7UUFDcEIsQ0FBQyxDQUFDLE1BQUEsQ0FBQztRQUVILHVCQUFBLElBQUksOERBQVMsTUFBYixJQUFJLENBQVcsQ0FBQztJQUNsQixDQUFDO0lBRU0sUUFBUTtRQUNiLE1BQU0sRUFBRSxHQUFHLHVCQUFBLElBQUksK0JBQU8sQ0FBQyxhQUF3QixDQUFDO1FBQ2hELHVCQUFBLElBQUksMkRBQU0sTUFBVixJQUFJLEVBQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU0sV0FBVztRQUNoQix1QkFBQSxJQUFJLGlFQUFZLE1BQWhCLElBQUksQ0FBYyxDQUFDO0lBQ3JCLENBQUM7OztJQUdDLHVCQUFBLElBQUksNkJBQUssQ0FBQyxPQUFPLENBQUMsdUJBQUEsSUFBSSwrQkFBTyxDQUFDLGFBQWEsRUFBRTtRQUMzQyxhQUFhLEVBQUUsSUFBSTtRQUNuQixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUMsQ0FBQztBQUNMLENBQUM7SUFHQyx1QkFBQSxJQUFJLDZCQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7QUFDekIsQ0FBQywyREFFSyxLQUFhO0lBQ2pCLHlFQUF5RTtJQUN6RSwwQ0FBMEM7SUFDMUMsdUJBQUEsSUFBSSxpRUFBWSxNQUFoQixJQUFJLENBQWMsQ0FBQztJQUVuQixLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtRQUN4QixJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3hELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7WUFDckMsTUFBTSxrQkFBa0IsR0FBRyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFOUMsSUFBSSxXQUFXLEtBQUssa0JBQWtCLEVBQUU7Z0JBQ3RDLElBQUksQ0FBQyxXQUFXLEdBQUcsa0JBQWtCLENBQUM7YUFDdkM7U0FDRjtLQUNGO0lBRUQsdUJBQUEsSUFBSSw4REFBUyxNQUFiLElBQUksQ0FBVyxDQUFDO0FBQ2xCLENBQUM7NkdBN0RVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBSDVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNdXRhdGlvbk9ic2VydmVyU2VydmljZSB9IGZyb20gJy4uL211dGF0aW9uL211dGF0aW9uLW9ic2VydmVyLXNlcnZpY2UnO1xuXG4vKipcbiAqIFRyaW1zIHdoaXRlc3BhY2UgaW4gZWFjaCB0ZXh0IG5vZGUgdGhhdCBpcyBhIGRpcmVjdCBkZXNjZW5kZW50IG9mIHRoZSBjdXJyZW50IGVsZW1lbnQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tza3lUcmltXScsXG59KVxuZXhwb3J0IGNsYXNzIFNreVRyaW1EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICNlbFJlZjogRWxlbWVudFJlZjtcblxuICAjb2JzOiBNdXRhdGlvbk9ic2VydmVyO1xuXG4gIGNvbnN0cnVjdG9yKGVsUmVmOiBFbGVtZW50UmVmLCBtdXRhdGlvbk9iczogTXV0YXRpb25PYnNlcnZlclNlcnZpY2UpIHtcbiAgICB0aGlzLiNlbFJlZiA9IGVsUmVmO1xuXG4gICAgdGhpcy4jb2JzID0gbXV0YXRpb25PYnMuY3JlYXRlKChtdXRhdGlvbnM6IE11dGF0aW9uUmVjb3JkW10pID0+IHtcbiAgICAgIGNvbnN0IG5vZGVzOiBOb2RlW10gPSBbXTtcblxuICAgICAgLy8gT25seSB0cmltIHdoaXRlIHNwYWNlIGluc2lkZSBkaXJlY3QgZGVzY2VuZGVudHMgb2YgdGhlIGN1cnJlbnQgZWxlbWVudC5cbiAgICAgIGZvciAoY29uc3QgbXV0YXRpb24gb2YgbXV0YXRpb25zKSB7XG4gICAgICAgIGlmIChtdXRhdGlvbi50YXJnZXQucGFyZW50Tm9kZSA9PT0gZWxSZWYubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgIG5vZGVzLnB1c2gobXV0YXRpb24udGFyZ2V0KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLiN0cmltKG5vZGVzKTtcbiAgICB9KTtcblxuICAgIHRoaXMuI29ic2VydmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBlbCA9IHRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQgYXMgRWxlbWVudDtcbiAgICB0aGlzLiN0cmltKEFycmF5LmZyb20oZWwuY2hpbGROb2RlcykpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI2Rpc2Nvbm5lY3QoKTtcbiAgfVxuXG4gICNvYnNlcnZlKCk6IHZvaWQge1xuICAgIHRoaXMuI29icy5vYnNlcnZlKHRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgIGNoYXJhY3RlckRhdGE6IHRydWUsXG4gICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgIH0pO1xuICB9XG5cbiAgI2Rpc2Nvbm5lY3QoKTogdm9pZCB7XG4gICAgdGhpcy4jb2JzLmRpc2Nvbm5lY3QoKTtcbiAgfVxuXG4gICN0cmltKG5vZGVzOiBOb2RlW10pOiB2b2lkIHtcbiAgICAvLyBTdXNwZW5kIHRoZSBNdXRhdGlvbk9ic2VydmVyIHNvIGFsdGVyaW5nIHRoZSB0ZXh0IGNvbnRlbnQgb2YgZWFjaCBub2RlXG4gICAgLy8gZG9lc24ndCByZXRyaWdnZXIgdGhlIG9ic2VydmUgY2FsbGJhY2suXG4gICAgdGhpcy4jZGlzY29ubmVjdCgpO1xuXG4gICAgZm9yIChjb25zdCBub2RlIG9mIG5vZGVzKSB7XG4gICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUgJiYgbm9kZS50ZXh0Q29udGVudCkge1xuICAgICAgICBjb25zdCB0ZXh0Q29udGVudCA9IG5vZGUudGV4dENvbnRlbnQ7XG4gICAgICAgIGNvbnN0IHRleHRDb250ZW50VHJpbW1lZCA9IHRleHRDb250ZW50LnRyaW0oKTtcblxuICAgICAgICBpZiAodGV4dENvbnRlbnQgIT09IHRleHRDb250ZW50VHJpbW1lZCkge1xuICAgICAgICAgIG5vZGUudGV4dENvbnRlbnQgPSB0ZXh0Q29udGVudFRyaW1tZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLiNvYnNlcnZlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2tlZXBlci1ib3VuZGFyeS1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL3ZpZXdrZWVwZXIvdmlld2tlZXBlci1ib3VuZGFyeS1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lWaWV3a2VlcGVyT2Zmc2V0IH0gZnJvbSAnLi92aWV3a2VlcGVyLW9mZnNldCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2t5Vmlld2tlZXBlckJvdW5kYXJ5SW5mbyB7XG4gIGVsSGVpZ2h0OiBudW1iZXI7XG5cbiAgc3BhY2VyRWw6IEhUTUxFbGVtZW50O1xuXG4gIHNwYWNlcklkOiBzdHJpbmc7XG5cbiAgYm91bmRhcnlCb3R0b206IG51bWJlcjtcblxuICBib3VuZGFyeU9mZnNldDogU2t5Vmlld2tlZXBlck9mZnNldDtcblxuICBib3VuZGFyeUVsOiBIVE1MRWxlbWVudDtcblxuICBzY3JvbGxMZWZ0OiBudW1iZXI7XG5cbiAgc2Nyb2xsVG9wOiBudW1iZXI7XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2tlZXBlci1ib3VuZGFyeS1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL3ZpZXdrZWVwZXIvdmlld2tlZXBlci1ib3VuZGFyeS1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lWaWV3a2VlcGVyT2Zmc2V0IH0gZnJvbSAnLi92aWV3a2VlcGVyLW9mZnNldCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2t5Vmlld2tlZXBlckJvdW5kYXJ5SW5mbyB7XG4gIGVsSGVpZ2h0OiBudW1iZXI7XG5cbiAgc3BhY2VyRWw6IEhUTUxFbGVtZW50IHwgbnVsbDtcblxuICBzcGFjZXJJZDogc3RyaW5nO1xuXG4gIGJvdW5kYXJ5Qm90dG9tOiBudW1iZXI7XG5cbiAgYm91bmRhcnlPZmZzZXQ6IFNreVZpZXdrZWVwZXJPZmZzZXQ7XG5cbiAgYm91bmRhcnlFbDogSFRNTEVsZW1lbnQ7XG5cbiAgc2Nyb2xsTGVmdDogbnVtYmVyO1xuXG4gIHNjcm9sbFRvcDogbnVtYmVyO1xufVxuIl19
@@ -1,3 +1,5 @@
1
+ var _SkyViewkeeperDirective_instances, _SkyViewkeeperDirective__skyViewkeeper, _SkyViewkeeperDirective_currentViewkeeperEls, _SkyViewkeeperDirective_el, _SkyViewkeeperDirective_mutationObserverSvc, _SkyViewkeeperDirective_observer, _SkyViewkeeperDirective_scrollableHostSvc, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, _SkyViewkeeperDirective_viewkeepers, _SkyViewkeeperDirective_viewkeeperSvc, _SkyViewkeeperDirective_destroyViewkeepers, _SkyViewkeeperDirective_getViewkeeperEls, _SkyViewkeeperDirective_viewkeeperElsChanged, _SkyViewkeeperDirective_detectElements;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { Directive, ElementRef, Input, Optional, } from '@angular/core';
2
4
  import { Subject } from 'rxjs';
3
5
  import { takeUntil } from 'rxjs/operators';
@@ -9,87 +11,100 @@ import * as i1 from "../mutation/mutation-observer-service";
9
11
  import * as i2 from "./viewkeeper.service";
10
12
  import * as i3 from "../scrollable-host/scrollable-host.service";
11
13
  export class SkyViewkeeperDirective {
12
- constructor(el, mutationObserverSvc, viewkeeperSvc, scrollableHostService) {
13
- this.el = el;
14
- this.mutationObserverSvc = mutationObserverSvc;
15
- this.viewkeeperSvc = viewkeeperSvc;
16
- this.scrollableHostService = scrollableHostService;
17
- this.viewkeepers = [];
18
- this.scrollableHostWatchUnsubscribe = undefined;
14
+ constructor(el, mutationObserverSvc, viewkeeperSvc, scrollableHostSvc) {
15
+ _SkyViewkeeperDirective_instances.add(this);
16
+ _SkyViewkeeperDirective__skyViewkeeper.set(this, void 0);
17
+ _SkyViewkeeperDirective_currentViewkeeperEls.set(this, void 0);
18
+ _SkyViewkeeperDirective_el.set(this, void 0);
19
+ _SkyViewkeeperDirective_mutationObserverSvc.set(this, void 0);
20
+ _SkyViewkeeperDirective_observer.set(this, void 0);
21
+ _SkyViewkeeperDirective_scrollableHostSvc.set(this, void 0);
22
+ _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe.set(this, void 0);
23
+ _SkyViewkeeperDirective_viewkeepers.set(this, []);
24
+ _SkyViewkeeperDirective_viewkeeperSvc.set(this, void 0);
25
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_el, el, "f");
26
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_mutationObserverSvc, mutationObserverSvc, "f");
27
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_viewkeeperSvc, viewkeeperSvc, "f");
28
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_scrollableHostSvc, scrollableHostSvc, "f");
19
29
  }
20
30
  set skyViewkeeper(value) {
21
- this._skyViewkeeper = value;
22
- this.detectElements();
31
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective__skyViewkeeper, value, "f");
32
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_instances, "m", _SkyViewkeeperDirective_detectElements).call(this);
23
33
  }
24
34
  get skyViewkeeper() {
25
- return this._skyViewkeeper;
35
+ return __classPrivateFieldGet(this, _SkyViewkeeperDirective__skyViewkeeper, "f");
26
36
  }
27
37
  ngOnInit() {
28
- this.observer = this.mutationObserverSvc.create(() => this.detectElements());
29
- this.observer.observe(this.el.nativeElement, {
38
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_observer, __classPrivateFieldGet(this, _SkyViewkeeperDirective_mutationObserverSvc, "f").create(() => __classPrivateFieldGet(this, _SkyViewkeeperDirective_instances, "m", _SkyViewkeeperDirective_detectElements).call(this)), "f");
39
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_observer, "f").observe(__classPrivateFieldGet(this, _SkyViewkeeperDirective_el, "f").nativeElement, {
30
40
  childList: true,
31
41
  subtree: true,
32
42
  });
33
43
  }
34
44
  ngOnDestroy() {
35
- this.observer.disconnect();
36
- this.scrollableHostWatchUnsubscribe?.next();
37
- this.scrollableHostWatchUnsubscribe?.complete();
38
- this.destroyViewkeepers();
39
- }
40
- destroyViewkeepers() {
41
- for (const viewkeeper of this.viewkeepers) {
42
- this.viewkeeperSvc.destroy(viewkeeper);
45
+ /*istanbul ignore else*/
46
+ if (__classPrivateFieldGet(this, _SkyViewkeeperDirective_observer, "f")) {
47
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_observer, "f").disconnect();
48
+ }
49
+ /*istanbul ignore else*/
50
+ if (__classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, "f")) {
51
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, "f").next();
52
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, "f").complete();
43
53
  }
44
- this.viewkeepers = [];
54
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_instances, "m", _SkyViewkeeperDirective_destroyViewkeepers).call(this);
45
55
  }
46
- getViewkeeperEls() {
47
- let viewkeeperEls;
48
- if (this.skyViewkeeper) {
49
- viewkeeperEls = [];
50
- for (const item of this.skyViewkeeper) {
51
- const matchingEls = Array.from(this.el.nativeElement.querySelectorAll(item));
52
- viewkeeperEls = [...viewkeeperEls, ...matchingEls];
53
- }
56
+ }
57
+ _SkyViewkeeperDirective__skyViewkeeper = new WeakMap(), _SkyViewkeeperDirective_currentViewkeeperEls = new WeakMap(), _SkyViewkeeperDirective_el = new WeakMap(), _SkyViewkeeperDirective_mutationObserverSvc = new WeakMap(), _SkyViewkeeperDirective_observer = new WeakMap(), _SkyViewkeeperDirective_scrollableHostSvc = new WeakMap(), _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe = new WeakMap(), _SkyViewkeeperDirective_viewkeepers = new WeakMap(), _SkyViewkeeperDirective_viewkeeperSvc = new WeakMap(), _SkyViewkeeperDirective_instances = new WeakSet(), _SkyViewkeeperDirective_destroyViewkeepers = function _SkyViewkeeperDirective_destroyViewkeepers() {
58
+ for (const viewkeeper of __classPrivateFieldGet(this, _SkyViewkeeperDirective_viewkeepers, "f")) {
59
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_viewkeeperSvc, "f").destroy(viewkeeper);
60
+ }
61
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_viewkeepers, [], "f");
62
+ }, _SkyViewkeeperDirective_getViewkeeperEls = function _SkyViewkeeperDirective_getViewkeeperEls() {
63
+ let viewkeeperEls = [];
64
+ if (this.skyViewkeeper) {
65
+ viewkeeperEls = [];
66
+ for (const item of this.skyViewkeeper) {
67
+ const matchingEls = Array.from(__classPrivateFieldGet(this, _SkyViewkeeperDirective_el, "f").nativeElement.querySelectorAll(item));
68
+ viewkeeperEls = [...viewkeeperEls, ...matchingEls];
54
69
  }
55
- return viewkeeperEls;
56
70
  }
57
- viewkeeperElsChanged(viewkeeperEls) {
58
- if (!viewkeeperEls !== !this.currentViewkeeperEls) {
71
+ return viewkeeperEls;
72
+ }, _SkyViewkeeperDirective_viewkeeperElsChanged = function _SkyViewkeeperDirective_viewkeeperElsChanged(viewkeeperEls) {
73
+ if (!viewkeeperEls !== !__classPrivateFieldGet(this, _SkyViewkeeperDirective_currentViewkeeperEls, "f")) {
74
+ return true;
75
+ }
76
+ if (viewkeeperEls && __classPrivateFieldGet(this, _SkyViewkeeperDirective_currentViewkeeperEls, "f")) {
77
+ if (viewkeeperEls.length !== __classPrivateFieldGet(this, _SkyViewkeeperDirective_currentViewkeeperEls, "f").length) {
59
78
  return true;
60
79
  }
61
- if (viewkeeperEls && this.currentViewkeeperEls) {
62
- if (viewkeeperEls.length !== this.currentViewkeeperEls.length) {
80
+ for (let i = 0, n = viewkeeperEls.length; i < n; i++) {
81
+ if (viewkeeperEls[i] !== __classPrivateFieldGet(this, _SkyViewkeeperDirective_currentViewkeeperEls, "f")[i]) {
63
82
  return true;
64
83
  }
65
- for (let i = 0, n = viewkeeperEls.length; i < n; i++) {
66
- if (viewkeeperEls[i] !== this.currentViewkeeperEls[i]) {
67
- return true;
68
- }
69
- }
70
84
  }
71
- return false;
72
85
  }
73
- detectElements() {
74
- const viewkeeperEls = this.getViewkeeperEls();
75
- if (this.viewkeeperElsChanged(viewkeeperEls)) {
76
- if (this.scrollableHostWatchUnsubscribe) {
77
- this.scrollableHostWatchUnsubscribe.next();
78
- this.scrollableHostWatchUnsubscribe.complete();
79
- this.scrollableHostWatchUnsubscribe = new Subject();
80
- }
81
- else {
82
- this.scrollableHostWatchUnsubscribe = new Subject();
83
- }
84
- this.scrollableHostService
85
- .watchScrollableHost(this.el)
86
- .pipe(takeUntil(this.scrollableHostWatchUnsubscribe))
86
+ return false;
87
+ }, _SkyViewkeeperDirective_detectElements = function _SkyViewkeeperDirective_detectElements() {
88
+ const viewkeeperEls = __classPrivateFieldGet(this, _SkyViewkeeperDirective_instances, "m", _SkyViewkeeperDirective_getViewkeeperEls).call(this);
89
+ if (__classPrivateFieldGet(this, _SkyViewkeeperDirective_instances, "m", _SkyViewkeeperDirective_viewkeeperElsChanged).call(this, viewkeeperEls)) {
90
+ if (__classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, "f")) {
91
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, "f").next();
92
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, "f").complete();
93
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, new Subject(), "f");
94
+ }
95
+ else {
96
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, new Subject(), "f");
97
+ }
98
+ if (__classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostSvc, "f")) {
99
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostSvc, "f")
100
+ .watchScrollableHost(__classPrivateFieldGet(this, _SkyViewkeeperDirective_el, "f"))
101
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyViewkeeperDirective_scrollableHostWatchUnsubscribe, "f")))
87
102
  .subscribe((scrollableHost) => {
88
- this.destroyViewkeepers();
103
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_instances, "m", _SkyViewkeeperDirective_destroyViewkeepers).call(this);
89
104
  let previousViewkeeperEl;
90
105
  for (const viewkeeperEl of viewkeeperEls) {
91
- this.viewkeepers.push(this.viewkeeperSvc.create({
92
- boundaryEl: this.el.nativeElement,
106
+ __classPrivateFieldGet(this, _SkyViewkeeperDirective_viewkeepers, "f").push(__classPrivateFieldGet(this, _SkyViewkeeperDirective_viewkeeperSvc, "f").create({
107
+ boundaryEl: __classPrivateFieldGet(this, _SkyViewkeeperDirective_el, "f").nativeElement,
93
108
  scrollableHost: scrollableHost instanceof HTMLElement
94
109
  ? scrollableHost
95
110
  : undefined,
@@ -100,10 +115,10 @@ export class SkyViewkeeperDirective {
100
115
  previousViewkeeperEl = viewkeeperEl;
101
116
  }
102
117
  });
103
- this.currentViewkeeperEls = viewkeeperEls;
104
118
  }
119
+ __classPrivateFieldSet(this, _SkyViewkeeperDirective_currentViewkeeperEls, viewkeeperEls, "f");
105
120
  }
106
- }
121
+ };
107
122
  SkyViewkeeperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyViewkeeperDirective, deps: [{ token: i0.ElementRef }, { token: i1.MutationObserverService }, { token: i2.SkyViewkeeperService }, { token: i3.SkyScrollableHostService, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
108
123
  SkyViewkeeperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: SkyViewkeeperDirective, selector: "[skyViewkeeper]", inputs: { skyViewkeeper: "skyViewkeeper" }, ngImport: i0 });
109
124
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyViewkeeperDirective, decorators: [{
@@ -116,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
116
131
  }] }]; }, propDecorators: { skyViewkeeper: [{
117
132
  type: Input
118
133
  }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2tlZXBlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvdmlld2tlZXBlci92aWV3a2VlcGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBR0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBR3RGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQUs1RCxNQUFNLE9BQU8sc0JBQXNCO0lBc0JqQyxZQUNVLEVBQWMsRUFDZCxtQkFBNEMsRUFDNUMsYUFBbUMsRUFDdkIscUJBQStDO1FBSDNELE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXlCO1FBQzVDLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUN2QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQTBCO1FBWjdELGdCQUFXLEdBQW9CLEVBQUUsQ0FBQztRQU1sQyxtQ0FBOEIsR0FBOEIsU0FBUyxDQUFDO0lBTzNFLENBQUM7SUExQkosSUFDVyxhQUFhLENBQUMsS0FBZTtRQUN0QyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUU1QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7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LElBQUksQ0FBQyxFQUFFLENBQUM7aUJBQzVCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLENBQUM7aUJBQ3BELFNBQVMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFO2dCQUM1QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFFMUIsSUFBSSxvQkFBaUMsQ0FBQztnQkFFdEMsS0FBSyxNQUFNLFlBQVksSUFBSSxhQUFhLEVBQUU7b0JBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQzt3QkFDeEIsVUFBVSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYTt3QkFDakMsY0FBYyxFQUNaLGNBQWMsWUFBWSxXQUFXOzRCQUNuQyxDQUFDLENBQUMsY0FBYzs0QkFDaEIsQ0FBQyxDQUFDLFNBQVM7d0JBQ2YsRUFBRSxFQUFFLFlBQVk7d0JBQ2hCLFFBQVEsRUFBRSxJQUFJO3dCQUNkLGdCQUFnQixFQUFFLG9CQUFvQjtxQkFDdkMsQ0FBQyxDQUNILENBQUM7b0JBRUYsb0JBQW9CLEdBQUcsWUFBWSxDQUFDO2lCQUNyQztZQUNILENBQUMsQ0FBQyxDQUFDO1lBRUwsSUFBSSxDQUFDLG9CQUFvQixHQUFHLGFBQWEsQ0FBQztTQUMzQztJQUNILENBQUM7O21IQXJJVSxzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7aUJBQzVCOzswQkEyQkksUUFBUTs0Q0F4QkEsYUFBYTtzQkFEdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTXV0YXRpb25PYnNlcnZlclNlcnZpY2UgfSBmcm9tICcuLi9tdXRhdGlvbi9tdXRhdGlvbi1vYnNlcnZlci1zZXJ2aWNlJztcbmltcG9ydCB7IFNreVNjcm9sbGFibGVIb3N0U2VydmljZSB9IGZyb20gJy4uL3Njcm9sbGFibGUtaG9zdC9zY3JvbGxhYmxlLWhvc3Quc2VydmljZSc7XG5cbmltcG9ydCB7IFNreVZpZXdrZWVwZXIgfSBmcm9tICcuL3ZpZXdrZWVwZXInO1xuaW1wb3J0IHsgU2t5Vmlld2tlZXBlclNlcnZpY2UgfSBmcm9tICcuL3ZpZXdrZWVwZXIuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tza3lWaWV3a2VlcGVyXScsXG59KVxuZXhwb3J0IGNsYXNzIFNreVZpZXdrZWVwZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2t5Vmlld2tlZXBlcih2YWx1ZTogc3RyaW5nW10pIHtcbiAgICB0aGlzLl9za3lWaWV3a2VlcGVyID0gdmFsdWU7XG5cbiAgICB0aGlzLmRldGVjdEVsZW1lbnRzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNreVZpZXdrZWVwZXIoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLl9za3lWaWV3a2VlcGVyO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2t5Vmlld2tlZXBlcjogc3RyaW5nW107XG5cbiAgcHJpdmF0ZSB2aWV3a2VlcGVyczogU2t5Vmlld2tlZXBlcltdID0gW107XG5cbiAgcHJpdmF0ZSBvYnNlcnZlcjogTXV0YXRpb25PYnNlcnZlcjtcblxuICBwcml2YXRlIGN1cnJlbnRWaWV3a2VlcGVyRWxzOiBIVE1MRWxlbWVudFtdO1xuXG4gIHByaXZhdGUgc2Nyb2xsYWJsZUhvc3RXYXRjaFVuc3Vic2NyaWJlOiBTdWJqZWN0PHZvaWQ+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBtdXRhdGlvbk9ic2VydmVyU3ZjOiBNdXRhdGlvbk9ic2VydmVyU2VydmljZSxcbiAgICBwcml2YXRlIHZpZXdrZWVwZXJTdmM6IFNreVZpZXdrZWVwZXJTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgc2Nyb2xsYWJsZUhvc3RTZXJ2aWNlOiBTa3lTY3JvbGxhYmxlSG9zdFNlcnZpY2VcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm9ic2VydmVyID0gdGhpcy5tdXRhdGlvbk9ic2VydmVyU3ZjLmNyZWF0ZSgoKSA9PlxuICAgICAgdGhpcy5kZXRlY3RFbGVtZW50cygpXG4gICAgKTtcblxuICAgIHRoaXMub2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5vYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgdGhpcy5zY3JvbGxhYmxlSG9zdFdhdGNoVW5zdWJzY3JpYmU/Lm5leHQoKTtcbiAgICB0aGlzLnNjcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZT8uY29tcGxldGUoKTtcbiAgICB0aGlzLmRlc3Ryb3lWaWV3a2VlcGVycygpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95Vmlld2tlZXBlcnMoKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCB2aWV3a2VlcGVyIG9mIHRoaXMudmlld2tlZXBlcnMpIHtcbiAgICAgIHRoaXMudmlld2tlZXBlclN2Yy5kZXN0cm95KHZpZXdrZWVwZXIpO1xuICAgIH1cblxuICAgIHRoaXMudmlld2tlZXBlcnMgPSBbXTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Vmlld2tlZXBlckVscygpOiBIVE1MRWxlbWVudFtdIHtcbiAgICBsZXQgdmlld2tlZXBlckVsczogSFRNTEVsZW1lbnRbXTtcblxuICAgIGlmICh0aGlzLnNreVZpZXdrZWVwZXIpIHtcbiAgICAgIHZpZXdrZWVwZXJFbHMgPSBbXTtcblxuICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHRoaXMuc2t5Vmlld2tlZXBlcikge1xuICAgICAgICBjb25zdCBtYXRjaGluZ0VscyA9IEFycmF5LmZyb20oXG4gICAgICAgICAgKHRoaXMuZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkucXVlcnlTZWxlY3RvckFsbChpdGVtKVxuICAgICAgICApIGFzIEhUTUxFbGVtZW50W107XG5cbiAgICAgICAgdmlld2tlZXBlckVscyA9IFsuLi52aWV3a2VlcGVyRWxzLCAuLi5tYXRjaGluZ0Vsc107XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHZpZXdrZWVwZXJFbHM7XG4gIH1cblxuICBwcml2YXRlIHZpZXdrZWVwZXJFbHNDaGFuZ2VkKHZpZXdrZWVwZXJFbHM6IEhUTUxFbGVtZW50W10pOiBib29sZWFuIHtcbiAgICBpZiAoIXZpZXdrZWVwZXJFbHMgIT09ICF0aGlzLmN1cnJlbnRWaWV3a2VlcGVyRWxzKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodmlld2tlZXBlckVscyAmJiB0aGlzLmN1cnJlbnRWaWV3a2VlcGVyRWxzKSB7XG4gICAgICBpZiAodmlld2tlZXBlckVscy5sZW5ndGggIT09IHRoaXMuY3VycmVudFZpZXdrZWVwZXJFbHMubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGxldCBpID0gMCwgbiA9IHZpZXdrZWVwZXJFbHMubGVuZ3RoOyBpIDwgbjsgaSsrKSB7XG4gICAgICAgIGlmICh2aWV3a2VlcGVyRWxzW2ldICE9PSB0aGlzLmN1cnJlbnRWaWV3a2VlcGVyRWxzW2ldKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGRldGVjdEVsZW1lbnRzKCk6IHZvaWQge1xuICAgIGNvbnN0IHZpZXdrZWVwZXJFbHMgPSB0aGlzLmdldFZpZXdrZWVwZXJFbHMoKTtcblxuICAgIGlmICh0aGlzLnZpZXdrZWVwZXJFbHNDaGFuZ2VkKHZpZXdrZWVwZXJFbHMpKSB7XG4gICAgICBpZiAodGhpcy5zY3JvbGxhYmxlSG9zdFdhdGNoVW5zdWJzY3JpYmUpIHtcbiAgICAgICAgdGhpcy5zY3JvbGxhYmxlSG9zdFdhdGNoVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLnNjcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLnNjcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNjcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2Nyb2xsYWJsZUhvc3RTZXJ2aWNlXG4gICAgICAgIC53YXRjaFNjcm9sbGFibGVIb3N0KHRoaXMuZWwpXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnNjcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKHNjcm9sbGFibGVIb3N0KSA9PiB7XG4gICAgICAgICAgdGhpcy5kZXN0cm95Vmlld2tlZXBlcnMoKTtcblxuICAgICAgICAgIGxldCBwcmV2aW91c1ZpZXdrZWVwZXJFbDogSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgICBmb3IgKGNvbnN0IHZpZXdrZWVwZXJFbCBvZiB2aWV3a2VlcGVyRWxzKSB7XG4gICAgICAgICAgICB0aGlzLnZpZXdrZWVwZXJzLnB1c2goXG4gICAgICAgICAgICAgIHRoaXMudmlld2tlZXBlclN2Yy5jcmVhdGUoe1xuICAgICAgICAgICAgICAgIGJvdW5kYXJ5RWw6IHRoaXMuZWwubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgICBzY3JvbGxhYmxlSG9zdDpcbiAgICAgICAgICAgICAgICAgIHNjcm9sbGFibGVIb3N0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgPyBzY3JvbGxhYmxlSG9zdFxuICAgICAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBlbDogdmlld2tlZXBlckVsLFxuICAgICAgICAgICAgICAgIHNldFdpZHRoOiB0cnVlLFxuICAgICAgICAgICAgICAgIHZlcnRpY2FsT2Zmc2V0RWw6IHByZXZpb3VzVmlld2tlZXBlckVsLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgcHJldmlvdXNWaWV3a2VlcGVyRWwgPSB2aWV3a2VlcGVyRWw7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgdGhpcy5jdXJyZW50Vmlld2tlZXBlckVscyA9IHZpZXdrZWVwZXJFbHM7XG4gICAgfVxuICB9XG59XG4iXX0=
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2tlZXBlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvdmlld2tlZXBlci92aWV3a2VlcGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFHTCxRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFHdEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBSzVELE1BQU0sT0FBTyxzQkFBc0I7SUE4QmpDLFlBQ0UsRUFBYyxFQUNkLG1CQUE0QyxFQUM1QyxhQUFtQyxFQUN2QixpQkFBNEM7O1FBdEIxRCx5REFBc0M7UUFFdEMsK0RBQWlEO1FBRWpELDZDQUFnQjtRQUVoQiw4REFBOEM7UUFFOUMsbURBQXdDO1FBRXhDLDREQUF5RDtRQUV6RCx5RUFBMkQ7UUFFM0QsOENBQWdDLEVBQUUsRUFBQztRQUVuQyx3REFBcUM7UUFRbkMsdUJBQUEsSUFBSSw4QkFBTyxFQUFFLE1BQUEsQ0FBQztRQUNkLHVCQUFBLElBQUksK0NBQXdCLG1CQUFtQixNQUFBLENBQUM7UUFDaEQsdUJBQUEsSUFBSSx5Q0FBa0IsYUFBYSxNQUFBLENBQUM7UUFDcEMsdUJBQUEsSUFBSSw2Q0FBc0IsaUJBQWlCLE1BQUEsQ0FBQztJQUM5QyxDQUFDO0lBdkNELElBQ1csYUFBYSxDQUFDLEtBQTJCO1FBQ2xELHVC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LGFBQWEsTUFBQSxDQUFDO0tBQzVDO0FBQ0gsQ0FBQzttSEE1SlUsc0JBQXNCO3VHQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFIbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2lCQUM1Qjs7MEJBbUNJLFFBQVE7NENBaENBLGFBQWE7c0JBRHZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vbXV0YXRpb24vbXV0YXRpb24tb2JzZXJ2ZXItc2VydmljZSc7XG5pbXBvcnQgeyBTa3lTY3JvbGxhYmxlSG9zdFNlcnZpY2UgfSBmcm9tICcuLi9zY3JvbGxhYmxlLWhvc3Qvc2Nyb2xsYWJsZS1ob3N0LnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBTa3lWaWV3a2VlcGVyIH0gZnJvbSAnLi92aWV3a2VlcGVyJztcbmltcG9ydCB7IFNreVZpZXdrZWVwZXJTZXJ2aWNlIH0gZnJvbSAnLi92aWV3a2VlcGVyLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2t5Vmlld2tlZXBlcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lWaWV3a2VlcGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNreVZpZXdrZWVwZXIodmFsdWU6IHN0cmluZ1tdIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3NreVZpZXdrZWVwZXIgPSB2YWx1ZTtcblxuICAgIHRoaXMuI2RldGVjdEVsZW1lbnRzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNreVZpZXdrZWVwZXIoKTogc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfc2t5Vmlld2tlZXBlcjtcbiAgfVxuXG4gICNfc2t5Vmlld2tlZXBlcjogc3RyaW5nW10gfCB1bmRlZmluZWQ7XG5cbiAgI2N1cnJlbnRWaWV3a2VlcGVyRWxzOiBIVE1MRWxlbWVudFtdIHwgdW5kZWZpbmVkO1xuXG4gICNlbDogRWxlbWVudFJlZjtcblxuICAjbXV0YXRpb25PYnNlcnZlclN2YzogTXV0YXRpb25PYnNlcnZlclNlcnZpY2U7XG5cbiAgI29ic2VydmVyOiBNdXRhdGlvbk9ic2VydmVyIHwgdW5kZWZpbmVkO1xuXG4gICNzY3JvbGxhYmxlSG9zdFN2YzogU2t5U2Nyb2xsYWJsZUhvc3RTZXJ2aWNlIHwgdW5kZWZpbmVkO1xuXG4gICNzY3JvbGxhYmxlSG9zdFdhdGNoVW5zdWJzY3JpYmU6IFN1YmplY3Q8dm9pZD4gfCB1bmRlZmluZWQ7XG5cbiAgI3ZpZXdrZWVwZXJzOiBTa3lWaWV3a2VlcGVyW10gPSBbXTtcblxuICAjdmlld2tlZXBlclN2YzogU2t5Vmlld2tlZXBlclNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZWw6IEVsZW1lbnRSZWYsXG4gICAgbXV0YXRpb25PYnNlcnZlclN2YzogTXV0YXRpb25PYnNlcnZlclNlcnZpY2UsXG4gICAgdmlld2tlZXBlclN2YzogU2t5Vmlld2tlZXBlclNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgc2Nyb2xsYWJsZUhvc3RTdmM/OiBTa3lTY3JvbGxhYmxlSG9zdFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy4jZWwgPSBlbDtcbiAgICB0aGlzLiNtdXRhdGlvbk9ic2VydmVyU3ZjID0gbXV0YXRpb25PYnNlcnZlclN2YztcbiAgICB0aGlzLiN2aWV3a2VlcGVyU3ZjID0gdmlld2tlZXBlclN2YztcbiAgICB0aGlzLiNzY3JvbGxhYmxlSG9zdFN2YyA9IHNjcm9sbGFibGVIb3N0U3ZjO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI29ic2VydmVyID0gdGhpcy4jbXV0YXRpb25PYnNlcnZlclN2Yy5jcmVhdGUoKCkgPT5cbiAgICAgIHRoaXMuI2RldGVjdEVsZW1lbnRzKClcbiAgICApO1xuXG4gICAgdGhpcy4jb2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLiNlbC5uYXRpdmVFbGVtZW50LCB7XG4gICAgICBjaGlsZExpc3Q6IHRydWUsXG4gICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UqL1xuICAgIGlmICh0aGlzLiNvYnNlcnZlcikge1xuICAgICAgdGhpcy4jb2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgIH1cblxuICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UqL1xuICAgIGlmICh0aGlzLiNzY3JvbGxhYmxlSG9zdFdhdGNoVW5zdWJzY3JpYmUpIHtcbiAgICAgIHRoaXMuI3Njcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgICB0aGlzLiNzY3JvbGxhYmxlSG9zdFdhdGNoVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICB0aGlzLiNkZXN0cm95Vmlld2tlZXBlcnMoKTtcbiAgfVxuXG4gICNkZXN0cm95Vmlld2tlZXBlcnMoKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCB2aWV3a2VlcGVyIG9mIHRoaXMuI3ZpZXdrZWVwZXJzKSB7XG4gICAgICB0aGlzLiN2aWV3a2VlcGVyU3ZjLmRlc3Ryb3kodmlld2tlZXBlcik7XG4gICAgfVxuXG4gICAgdGhpcy4jdmlld2tlZXBlcnMgPSBbXTtcbiAgfVxuXG4gICNnZXRWaWV3a2VlcGVyRWxzKCk6IEhUTUxFbGVtZW50W10ge1xuICAgIGxldCB2aWV3a2VlcGVyRWxzOiBIVE1MRWxlbWVudFtdID0gW107XG5cbiAgICBpZiAodGhpcy5za3lWaWV3a2VlcGVyKSB7XG4gICAgICB2aWV3a2VlcGVyRWxzID0gW107XG5cbiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0aGlzLnNreVZpZXdrZWVwZXIpIHtcbiAgICAgICAgY29uc3QgbWF0Y2hpbmdFbHMgPSBBcnJheS5mcm9tKFxuICAgICAgICAgICh0aGlzLiNlbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5xdWVyeVNlbGVjdG9yQWxsKGl0ZW0pXG4gICAgICAgICkgYXMgSFRNTEVsZW1lbnRbXTtcblxuICAgICAgICB2aWV3a2VlcGVyRWxzID0gWy4uLnZpZXdrZWVwZXJFbHMsIC4uLm1hdGNoaW5nRWxzXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdmlld2tlZXBlckVscztcbiAgfVxuXG4gICN2aWV3a2VlcGVyRWxzQ2hhbmdlZCh2aWV3a2VlcGVyRWxzOiBIVE1MRWxlbWVudFtdKTogYm9vbGVhbiB7XG4gICAgaWYgKCF2aWV3a2VlcGVyRWxzICE9PSAhdGhpcy4jY3VycmVudFZpZXdrZWVwZXJFbHMpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGlmICh2aWV3a2VlcGVyRWxzICYmIHRoaXMuI2N1cnJlbnRWaWV3a2VlcGVyRWxzKSB7XG4gICAgICBpZiAodmlld2tlZXBlckVscy5sZW5ndGggIT09IHRoaXMuI2N1cnJlbnRWaWV3a2VlcGVyRWxzLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgZm9yIChsZXQgaSA9IDAsIG4gPSB2aWV3a2VlcGVyRWxzLmxlbmd0aDsgaSA8IG47IGkrKykge1xuICAgICAgICBpZiAodmlld2tlZXBlckVsc1tpXSAhPT0gdGhpcy4jY3VycmVudFZpZXdrZWVwZXJFbHNbaV0pIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gICNkZXRlY3RFbGVtZW50cygpOiB2b2lkIHtcbiAgICBjb25zdCB2aWV3a2VlcGVyRWxzID0gdGhpcy4jZ2V0Vmlld2tlZXBlckVscygpO1xuXG4gICAgaWYgKHRoaXMuI3ZpZXdrZWVwZXJFbHNDaGFuZ2VkKHZpZXdrZWVwZXJFbHMpKSB7XG4gICAgICBpZiAodGhpcy4jc2Nyb2xsYWJsZUhvc3RXYXRjaFVuc3Vic2NyaWJlKSB7XG4gICAgICAgIHRoaXMuI3Njcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgICAgIHRoaXMuI3Njcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLiNzY3JvbGxhYmxlSG9zdFdhdGNoVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy4jc2Nyb2xsYWJsZUhvc3RXYXRjaFVuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuI3Njcm9sbGFibGVIb3N0U3ZjKSB7XG4gICAgICAgIHRoaXMuI3Njcm9sbGFibGVIb3N0U3ZjXG4gICAgICAgICAgLndhdGNoU2Nyb2xsYWJsZUhvc3QodGhpcy4jZWwpXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI3Njcm9sbGFibGVIb3N0V2F0Y2hVbnN1YnNjcmliZSkpXG4gICAgICAgICAgLnN1YnNjcmliZSgoc2Nyb2xsYWJsZUhvc3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuI2Rlc3Ryb3lWaWV3a2VlcGVycygpO1xuXG4gICAgICAgICAgICBsZXQgcHJldmlvdXNWaWV3a2VlcGVyRWw6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHZpZXdrZWVwZXJFbCBvZiB2aWV3a2VlcGVyRWxzKSB7XG4gICAgICAgICAgICAgIHRoaXMuI3ZpZXdrZWVwZXJzLnB1c2goXG4gICAgICAgICAgICAgICAgdGhpcy4jdmlld2tlZXBlclN2Yy5jcmVhdGUoe1xuICAgICAgICAgICAgICAgICAgYm91bmRhcnlFbDogdGhpcy4jZWwubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgICAgIHNjcm9sbGFibGVIb3N0OlxuICAgICAgICAgICAgICAgICAgICBzY3JvbGxhYmxlSG9zdCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50XG4gICAgICAgICAgICAgICAgICAgICAgPyBzY3JvbGxhYmxlSG9zdFxuICAgICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgZWw6IHZpZXdrZWVwZXJFbCxcbiAgICAgICAgICAgICAgICAgIHNldFdpZHRoOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgdmVydGljYWxPZmZzZXRFbDogcHJldmlvdXNWaWV3a2VlcGVyRWwsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICBwcmV2aW91c1ZpZXdrZWVwZXJFbCA9IHZpZXdrZWVwZXJFbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdGhpcy4jY3VycmVudFZpZXdrZWVwZXJFbHMgPSB2aWV3a2VlcGVyRWxzO1xuICAgIH1cbiAgfVxufVxuIl19