@skyux/modals 6.17.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.
- package/esm2020/lib/modules/modal/modal-adapter.service.mjs +50 -3
- package/esm2020/lib/modules/modal/modal-host.component.mjs +28 -9
- package/fesm2015/skyux-modals.mjs +75 -9
- package/fesm2015/skyux-modals.mjs.map +1 -1
- package/fesm2020/skyux-modals.mjs +75 -9
- package/fesm2020/skyux-modals.mjs.map +1 -1
- package/lib/modules/modal/modal-adapter.service.d.ts +12 -0
- package/lib/modules/modal/modal-host.component.d.ts +2 -2
- package/package.json +5 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _SkyModalAdapterService_instances, _SkyModalAdapterService_docRef, _SkyModalAdapterService_bodyEl, _SkyModalAdapterService_windowRef, _SkyModalAdapterService_addClassToBody, _SkyModalAdapterService_removeClassFromBody;
|
|
1
|
+
var _SkyModalAdapterService_instances, _SkyModalAdapterService_docRef, _SkyModalAdapterService_bodyEl, _SkyModalAdapterService_windowRef, _SkyModalAdapterService_hostSiblingAriaHiddenCache, _SkyModalAdapterService_addClassToBody, _SkyModalAdapterService_removeClassFromBody;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
3
|
import { Injectable } from '@angular/core';
|
|
4
4
|
import { SkyAppWindowRef } from '@skyux/core';
|
|
@@ -13,6 +13,7 @@ export class SkyModalAdapterService {
|
|
|
13
13
|
_SkyModalAdapterService_docRef.set(this, void 0);
|
|
14
14
|
_SkyModalAdapterService_bodyEl.set(this, void 0);
|
|
15
15
|
_SkyModalAdapterService_windowRef.set(this, void 0);
|
|
16
|
+
_SkyModalAdapterService_hostSiblingAriaHiddenCache.set(this, new Map());
|
|
16
17
|
__classPrivateFieldSet(this, _SkyModalAdapterService_windowRef, windowRef, "f");
|
|
17
18
|
__classPrivateFieldSet(this, _SkyModalAdapterService_docRef, __classPrivateFieldGet(this, _SkyModalAdapterService_windowRef, "f").nativeWindow.document, "f");
|
|
18
19
|
__classPrivateFieldSet(this, _SkyModalAdapterService_bodyEl, __classPrivateFieldGet(this, _SkyModalAdapterService_windowRef, "f").nativeWindow.document.body, "f");
|
|
@@ -36,8 +37,54 @@ export class SkyModalAdapterService {
|
|
|
36
37
|
getModalOpener() {
|
|
37
38
|
return __classPrivateFieldGet(this, _SkyModalAdapterService_docRef, "f").activeElement;
|
|
38
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Hides siblings of modal-host from screen readers
|
|
42
|
+
* @param hostElRef reference to modal-host element
|
|
43
|
+
*/
|
|
44
|
+
hideHostSiblingsFromScreenReaders(hostElRef) {
|
|
45
|
+
const hostElement = hostElRef.nativeElement;
|
|
46
|
+
const hostSiblings = hostElement.parentElement.children;
|
|
47
|
+
for (let i = 0; i < hostSiblings.length; i++) {
|
|
48
|
+
const element = hostSiblings[i];
|
|
49
|
+
if (element !== hostElement &&
|
|
50
|
+
!element.hasAttribute('aria-live') &&
|
|
51
|
+
element.nodeName.toLowerCase() !== 'script' &&
|
|
52
|
+
element.nodeName.toLowerCase() !== 'style') {
|
|
53
|
+
// preserve previous aria-hidden status of elements outside of modal host
|
|
54
|
+
__classPrivateFieldGet(this, _SkyModalAdapterService_hostSiblingAriaHiddenCache, "f").set(element, element.getAttribute('aria-hidden'));
|
|
55
|
+
element.setAttribute('aria-hidden', 'true');
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Restores modal-host siblings to screenreader status prior to modals being opened
|
|
61
|
+
*/
|
|
62
|
+
unhideOrRestoreHostSiblingsFromScreenReaders() {
|
|
63
|
+
__classPrivateFieldGet(this, _SkyModalAdapterService_hostSiblingAriaHiddenCache, "f").forEach((previousValue, element) => {
|
|
64
|
+
// if element had aria-hidden status prior, restore status
|
|
65
|
+
if (element.parentElement) {
|
|
66
|
+
if (previousValue) {
|
|
67
|
+
element.setAttribute('aria-hidden', previousValue);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
element.removeAttribute('aria-hidden');
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
__classPrivateFieldGet(this, _SkyModalAdapterService_hostSiblingAriaHiddenCache, "f").clear();
|
|
75
|
+
}
|
|
76
|
+
hidePreviousModalFromScreenReaders(topModal) {
|
|
77
|
+
if (topModal && topModal.nativeElement.previousElementSibling) {
|
|
78
|
+
topModal.nativeElement.previousElementSibling.setAttribute('aria-hidden', 'true');
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
unhidePreviousModalFromScreenReaders(topModal) {
|
|
82
|
+
if (topModal && topModal.nativeElement.previousElementSibling) {
|
|
83
|
+
topModal.nativeElement.previousElementSibling.removeAttribute('aria-hidden');
|
|
84
|
+
}
|
|
85
|
+
}
|
|
39
86
|
}
|
|
40
|
-
_SkyModalAdapterService_docRef = new WeakMap(), _SkyModalAdapterService_bodyEl = new WeakMap(), _SkyModalAdapterService_windowRef = new WeakMap(), _SkyModalAdapterService_instances = new WeakSet(), _SkyModalAdapterService_addClassToBody = function _SkyModalAdapterService_addClassToBody(className) {
|
|
87
|
+
_SkyModalAdapterService_docRef = new WeakMap(), _SkyModalAdapterService_bodyEl = new WeakMap(), _SkyModalAdapterService_windowRef = new WeakMap(), _SkyModalAdapterService_hostSiblingAriaHiddenCache = new WeakMap(), _SkyModalAdapterService_instances = new WeakSet(), _SkyModalAdapterService_addClassToBody = function _SkyModalAdapterService_addClassToBody(className) {
|
|
41
88
|
__classPrivateFieldGet(this, _SkyModalAdapterService_bodyEl, "f").classList.add(className);
|
|
42
89
|
}, _SkyModalAdapterService_removeClassFromBody = function _SkyModalAdapterService_removeClassFromBody(className) {
|
|
43
90
|
__classPrivateFieldGet(this, _SkyModalAdapterService_bodyEl, "f").classList.remove(className);
|
|
@@ -49,4 +96,4 @@ SkyModalAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0
|
|
|
49
96
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalAdapterService, decorators: [{
|
|
50
97
|
type: Injectable
|
|
51
98
|
}], ctorParameters: function () { return [{ type: i1.SkyAppWindowRef }]; } });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtYWRhcHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvbGliL21vZHVsZXMvbW9kYWwvbW9kYWwtYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFFOUM7O0dBRUc7QUFFSCxNQUFNLE9BQU8sc0JBQXNCO0lBVWpDLFlBQVksU0FBMEI7O1FBTnRDLGlEQUFhO1FBQ2IsaURBQXFCO1FBRXJCLG9EQUE0QjtRQUM1Qiw2REFBOEIsSUFBSSxHQUFHLEVBQTBCLEVBQUM7UUFHOUQsdUJBQUEsSUFBSSxxQ0FBYyxTQUFTLE1BQUEsQ0FBQztRQUM1Qix1QkFBQSxJQUFJLGtDQUFXLHVCQUFBLElBQUkseUNBQVcsQ0FBQyxZQUFZLENBQUMsUUFBUSxNQUFBLENBQUM7UUFDckQsdUJBQUEsSUFBSSxrQ0FBVyx1QkFBQSxJQUFJLHlDQUFXLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLE1BQUEsQ0FBQztJQUM1RCxDQUFDO0lBRU0sd0JBQXdCLENBQUMsU0FBa0I7UUFDaEQsSUFBSSxTQUFTLEVBQUU7WUFDYix1QkFBQSxJQUFJLGlGQUFnQixNQUFwQixJQUFJLEVBQWlCLHNCQUFzQixDQUFDLHFCQUFxQixDQUFDLENBQUM7U0FDcEU7YUFBTTtZQUNMLHVCQUFBLElBQUksc0ZBQXFCLE1BQXpCLElBQUksRUFBc0Isc0JBQXNCLENBQUMscUJBQXFCLENBQUMsQ0FBQztTQUN6RTtJQUNILENBQUM7SUFFTSxhQUFhLENBQUMsS0FBYztRQUNqQyxJQUFJLEtBQUssRUFBRTtZQUNULHVCQUFBLElBQUksaUZBQWdCLE1BQXBCLElBQUksRUFBaUIsc0JBQXNCLENB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YW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUFwcFdpbmRvd1JlZiB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreU1vZGFsQWRhcHRlclNlcnZpY2Uge1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBNT0RBTF9CT0RZX0ZVTExfQ0xBU1MgPSAnc2t5LW1vZGFsLWJvZHktZnVsbC1wYWdlJztcbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgTU9EQUxfQk9EWV9DTEFTUyA9ICdza3ktbW9kYWwtYm9keS1vcGVuJztcblxuICAjZG9jUmVmOiBhbnk7XG4gICNib2R5RWw6IEhUTUxFbGVtZW50O1xuXG4gICN3aW5kb3dSZWY6IFNreUFwcFdpbmRvd1JlZjtcbiAgI2hvc3RTaWJsaW5nQXJpYUhpZGRlbkNhY2hlID0gbmV3IE1hcDxFbGVtZW50LCBzdHJpbmcgfCBudWxsPigpO1xuXG4gIGNvbnN0cnVjdG9yKHdpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmKSB7XG4gICAgdGhpcy4jd2luZG93UmVmID0gd2luZG93UmVmO1xuICAgIHRoaXMuI2RvY1JlZiA9IHRoaXMuI3dpbmRvd1JlZi5uYXRpdmVXaW5kb3cuZG9jdW1lbnQ7XG4gICAgdGhpcy4jYm9keUVsID0gdGhpcy4jd2luZG93UmVmLm5hdGl2ZVdpbmRvdy5kb2N1bWVudC5ib2R5O1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZUZ1bGxQYWdlTW9kYWxDbGFzcyhpc0FkZEZ1bGw6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAoaXNBZGRGdWxsKSB7XG4gICAgICB0aGlzLiNhZGRDbGFzc1RvQm9keShTa3lNb2RhbEFkYXB0ZXJTZXJ2aWNlLk1PREFMX0JPRFlfRlVMTF9DTEFTUyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI3JlbW92ZUNsYXNzRnJvbUJvZHkoU2t5TW9kYWxBZGFwdGVyU2VydmljZS5NT0RBTF9CT0RZX0ZVTExfQ0xBU1MpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXRQYWdlU2Nyb2xsKGlzQWRkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGlzQWRkKSB7XG4gICAgICB0aGlzLiNhZGRDbGFzc1RvQm9keShTa3lNb2RhbEFkYXB0ZXJTZXJ2aWNlLk1PREFMX0JPRFlfQ0xBU1MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNyZW1vdmVDbGFzc0Zyb21Cb2R5KFNreU1vZGFsQWRhcHRlclNlcnZpY2UuTU9EQUxfQk9EWV9DTEFTUyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldE1vZGFsT3BlbmVyKCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy4jZG9jUmVmLmFjdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICAjYWRkQ2xhc3NUb0JvZHkoY2xhc3NOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLiNib2R5RWwuY2xhc3NMaXN0LmFkZChjbGFzc05hbWUpO1xuICB9XG5cbiAgI3JlbW92ZUNsYXNzRnJvbUJvZHkoY2xhc3NOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLiNib2R5RWwuY2xhc3NMaXN0LnJlbW92ZShjbGFzc05hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhpZGVzIHNpYmxpbmdzIG9mIG1vZGFsLWhvc3QgZnJvbSBzY3JlZW4gcmVhZGVyc1xuICAgKiBAcGFyYW0gaG9zdEVsUmVmIHJlZmVyZW5jZSB0byBtb2RhbC1ob3N0IGVsZW1lbnRcbiAgICovXG4gIHB1YmxpYyBoaWRlSG9zdFNpYmxpbmdzRnJvbVNjcmVlblJlYWRlcnMoaG9zdEVsUmVmOiBFbGVtZW50UmVmKTogdm9pZCB7XG4gICAgY29uc3QgaG9zdEVsZW1lbnQgPSBob3N0RWxSZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBob3N0U2libGluZ3MgPSBob3N0RWxlbWVudC5wYXJlbnRFbGVtZW50LmNoaWxkcmVuO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBob3N0U2libGluZ3MubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSBob3N0U2libGluZ3NbaV07XG4gICAgICBpZiAoXG4gICAgICAgIGVsZW1lbnQgIT09IGhvc3RFbGVtZW50ICYmXG4gICAgICAgICFlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnYXJpYS1saXZlJykgJiZcbiAgICAgICAgZWxlbWVudC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpICE9PSAnc2NyaXB0JyAmJlxuICAgICAgICBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgIT09ICdzdHlsZSdcbiAgICAgICkge1xuICAgICAgICAvLyBwcmVzZXJ2ZSBwcmV2aW91cyBhcmlhLWhpZGRlbiBzdGF0dXMgb2YgZWxlbWVudHMgb3V0c2lkZSBvZiBtb2RhbCBob3N0XG4gICAgICAgIHRoaXMuI2hvc3RTaWJsaW5nQXJpYUhpZGRlbkNhY2hlLnNldChcbiAgICAgICAgICBlbGVtZW50LFxuICAgICAgICAgIGVsZW1lbnQuZ2V0QXR0cmlidXRlKCdhcmlhLWhpZGRlbicpXG4gICAgICAgICk7XG4gICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWhpZGRlbicsICd0cnVlJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIG1vZGFsLWhvc3Qgc2libGluZ3MgdG8gc2NyZWVucmVhZGVyIHN0YXR1cyBwcmlvciB0byBtb2RhbHMgYmVpbmcgb3BlbmVkXG4gICAqL1xuICBwdWJsaWMgdW5oaWRlT3JSZXN0b3JlSG9zdFNpYmxpbmdzRnJvbVNjcmVlblJlYWRlcnMoKTogdm9pZCB7XG4gICAgdGhpcy4jaG9zdFNpYmxpbmdBcmlhSGlkZGVuQ2FjaGUuZm9yRWFjaCgocHJldmlvdXNWYWx1ZSwgZWxlbWVudCkgPT4ge1xuICAgICAgLy8gaWYgZWxlbWVudCBoYWQgYXJpYS1oaWRkZW4gc3RhdHVzIHByaW9yLCByZXN0b3JlIHN0YXR1c1xuICAgICAgaWYgKGVsZW1lbnQucGFyZW50RWxlbWVudCkge1xuICAgICAgICBpZiAocHJldmlvdXNWYWx1ZSkge1xuICAgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWhpZGRlbicsIHByZXZpb3VzVmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWhpZGRlbicpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy4jaG9zdFNpYmxpbmdBcmlhSGlkZGVuQ2FjaGUuY2xlYXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBoaWRlUHJldmlvdXNNb2RhbEZyb21TY3JlZW5SZWFkZXJzKHRvcE1vZGFsOiBFbGVtZW50UmVmKTogdm9pZCB7XG4gICAgaWYgKHRvcE1vZGFsICYmIHRvcE1vZGFsLm5hdGl2ZUVsZW1lbnQucHJldmlvdXNFbGVtZW50U2libGluZykge1xuICAgICAgdG9wTW9kYWwubmF0aXZlRWxlbWVudC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nLnNldEF0dHJpYnV0ZShcbiAgICAgICAgJ2FyaWEtaGlkZGVuJyxcbiAgICAgICAgJ3RydWUnXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1bmhpZGVQcmV2aW91c01vZGFsRnJvbVNjcmVlblJlYWRlcnModG9wTW9kYWw6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICBpZiAodG9wTW9kYWwgJiYgdG9wTW9kYWwubmF0aXZlRWxlbWVudC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nKSB7XG4gICAgICB0b3BNb2RhbC5uYXRpdmVFbGVtZW50LnByZXZpb3VzRWxlbWVudFNpYmxpbmcucmVtb3ZlQXR0cmlidXRlKFxuICAgICAgICAnYXJpYS1oaWRkZW4nXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var _SkyModalHostComponent_instances, _SkyModalHostComponent_resolver, _SkyModalHostComponent_adapter, _SkyModalHostComponent_injector, _SkyModalHostComponent_router, _SkyModalHostComponent_changeDetector, _SkyModalHostComponent_modalHostContext, _SkyModalHostComponent_modalInstances, _SkyModalHostComponent_registerModalInstance, _SkyModalHostComponent_unregisterModalInstance, _SkyModalHostComponent_closeAllModalInstances;
|
|
1
|
+
var _SkyModalHostComponent_instances, _SkyModalHostComponent_resolver, _SkyModalHostComponent_adapter, _SkyModalHostComponent_injector, _SkyModalHostComponent_router, _SkyModalHostComponent_changeDetector, _SkyModalHostComponent_modalHostContext, _SkyModalHostComponent_elRef, _SkyModalHostComponent_modalInstances, _SkyModalHostComponent_registerModalInstance, _SkyModalHostComponent_unregisterModalInstance, _SkyModalHostComponent_closeAllModalInstances;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
|
-
import { ChangeDetectorRef, Component, ComponentFactoryResolver, Injector, ViewChild, ViewContainerRef, } from '@angular/core';
|
|
3
|
+
import { ChangeDetectorRef, Component, ComponentFactoryResolver, ElementRef, Injector, ViewChild, ViewContainerRef, } from '@angular/core';
|
|
4
4
|
import { NavigationStart, Router } from '@angular/router';
|
|
5
5
|
import { SkyMediaQueryService, SkyResizeObserverMediaQueryService, } from '@skyux/core';
|
|
6
6
|
import { takeWhile } from 'rxjs/operators';
|
|
@@ -17,7 +17,7 @@ import * as i4 from "@angular/common";
|
|
|
17
17
|
* @internal
|
|
18
18
|
*/
|
|
19
19
|
export class SkyModalHostComponent {
|
|
20
|
-
constructor(resolver, adapter, injector, router, changeDetector, modalHostContext) {
|
|
20
|
+
constructor(resolver, adapter, injector, router, changeDetector, modalHostContext, elRef) {
|
|
21
21
|
_SkyModalHostComponent_instances.add(this);
|
|
22
22
|
_SkyModalHostComponent_resolver.set(this, void 0);
|
|
23
23
|
_SkyModalHostComponent_adapter.set(this, void 0);
|
|
@@ -25,6 +25,7 @@ export class SkyModalHostComponent {
|
|
|
25
25
|
_SkyModalHostComponent_router.set(this, void 0);
|
|
26
26
|
_SkyModalHostComponent_changeDetector.set(this, void 0);
|
|
27
27
|
_SkyModalHostComponent_modalHostContext.set(this, void 0);
|
|
28
|
+
_SkyModalHostComponent_elRef.set(this, void 0);
|
|
28
29
|
_SkyModalHostComponent_modalInstances.set(this, []);
|
|
29
30
|
__classPrivateFieldSet(this, _SkyModalHostComponent_resolver, resolver, "f");
|
|
30
31
|
__classPrivateFieldSet(this, _SkyModalHostComponent_adapter, adapter, "f");
|
|
@@ -32,6 +33,7 @@ export class SkyModalHostComponent {
|
|
|
32
33
|
__classPrivateFieldSet(this, _SkyModalHostComponent_router, router, "f");
|
|
33
34
|
__classPrivateFieldSet(this, _SkyModalHostComponent_changeDetector, changeDetector, "f");
|
|
34
35
|
__classPrivateFieldSet(this, _SkyModalHostComponent_modalHostContext, modalHostContext, "f");
|
|
36
|
+
__classPrivateFieldSet(this, _SkyModalHostComponent_elRef, elRef, "f");
|
|
35
37
|
}
|
|
36
38
|
get modalOpen() {
|
|
37
39
|
return SkyModalHostService.openModalCount > 0;
|
|
@@ -80,9 +82,26 @@ export class SkyModalHostComponent {
|
|
|
80
82
|
parent: __classPrivateFieldGet(this, _SkyModalHostComponent_injector, "f"),
|
|
81
83
|
});
|
|
82
84
|
const modalComponentRef = this.target.createComponent(factory, undefined, injector);
|
|
85
|
+
// modal element that was just opened
|
|
86
|
+
const modalElement = modalComponentRef.location;
|
|
83
87
|
modalInstance.componentInstance = modalComponentRef.instance;
|
|
84
88
|
__classPrivateFieldGet(this, _SkyModalHostComponent_instances, "m", _SkyModalHostComponent_registerModalInstance).call(this, modalInstance);
|
|
85
|
-
|
|
89
|
+
// hidding all elements at the modal-host level from screenreaders when the a modal is opened
|
|
90
|
+
__classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f").hideHostSiblingsFromScreenReaders(__classPrivateFieldGet(this, _SkyModalHostComponent_elRef, "f"));
|
|
91
|
+
if (SkyModalHostService.openModalCount > 1 &&
|
|
92
|
+
SkyModalHostService.topModal === hostService) {
|
|
93
|
+
// hiding the lower modals when more than one modal is opened
|
|
94
|
+
__classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f").hidePreviousModalFromScreenReaders(modalElement);
|
|
95
|
+
}
|
|
96
|
+
const closeModal = () => {
|
|
97
|
+
// unhide siblings if last modal is closing
|
|
98
|
+
if (SkyModalHostService.openModalCount === 1) {
|
|
99
|
+
__classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f").unhideOrRestoreHostSiblingsFromScreenReaders();
|
|
100
|
+
}
|
|
101
|
+
else if (SkyModalHostService.topModal === hostService) {
|
|
102
|
+
// if there are more than 1 modal then unhide the one behind this one before closing it
|
|
103
|
+
__classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f").unhidePreviousModalFromScreenReaders(modalElement);
|
|
104
|
+
}
|
|
86
105
|
hostService.destroy();
|
|
87
106
|
adapter.setPageScroll(SkyModalHostService.openModalCount > 0);
|
|
88
107
|
adapter.toggleFullPageModalClass(SkyModalHostService.fullPageModalCount > 0);
|
|
@@ -92,7 +111,7 @@ export class SkyModalHostComponent {
|
|
|
92
111
|
modalOpener.focus();
|
|
93
112
|
}
|
|
94
113
|
modalComponentRef.destroy();
|
|
95
|
-
}
|
|
114
|
+
};
|
|
96
115
|
hostService.openHelp.subscribe((helpKey) => {
|
|
97
116
|
modalInstance.openHelp(helpKey);
|
|
98
117
|
});
|
|
@@ -114,7 +133,7 @@ export class SkyModalHostComponent {
|
|
|
114
133
|
__classPrivateFieldGet(this, _SkyModalHostComponent_changeDetector, "f").detectChanges();
|
|
115
134
|
}
|
|
116
135
|
}
|
|
117
|
-
_SkyModalHostComponent_resolver = new WeakMap(), _SkyModalHostComponent_adapter = new WeakMap(), _SkyModalHostComponent_injector = new WeakMap(), _SkyModalHostComponent_router = new WeakMap(), _SkyModalHostComponent_changeDetector = new WeakMap(), _SkyModalHostComponent_modalHostContext = new WeakMap(), _SkyModalHostComponent_modalInstances = new WeakMap(), _SkyModalHostComponent_instances = new WeakSet(), _SkyModalHostComponent_registerModalInstance = function _SkyModalHostComponent_registerModalInstance(instance) {
|
|
136
|
+
_SkyModalHostComponent_resolver = new WeakMap(), _SkyModalHostComponent_adapter = new WeakMap(), _SkyModalHostComponent_injector = new WeakMap(), _SkyModalHostComponent_router = new WeakMap(), _SkyModalHostComponent_changeDetector = new WeakMap(), _SkyModalHostComponent_modalHostContext = new WeakMap(), _SkyModalHostComponent_elRef = new WeakMap(), _SkyModalHostComponent_modalInstances = new WeakMap(), _SkyModalHostComponent_instances = new WeakSet(), _SkyModalHostComponent_registerModalInstance = function _SkyModalHostComponent_registerModalInstance(instance) {
|
|
118
137
|
__classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").push(instance);
|
|
119
138
|
}, _SkyModalHostComponent_unregisterModalInstance = function _SkyModalHostComponent_unregisterModalInstance(instance) {
|
|
120
139
|
__classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").slice(__classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").indexOf(instance), 1);
|
|
@@ -123,16 +142,16 @@ _SkyModalHostComponent_resolver = new WeakMap(), _SkyModalHostComponent_adapter
|
|
|
123
142
|
instance.close();
|
|
124
143
|
}
|
|
125
144
|
};
|
|
126
|
-
SkyModalHostComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i1.SkyModalAdapterService }, { token: i0.Injector }, { token: i2.Router }, { token: i0.ChangeDetectorRef }, { token: i3.SkyModalHostContext }], target: i0.ɵɵFactoryTarget.Component });
|
|
145
|
+
SkyModalHostComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i1.SkyModalAdapterService }, { token: i0.Injector }, { token: i2.Router }, { token: i0.ChangeDetectorRef }, { token: i3.SkyModalHostContext }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
127
146
|
SkyModalHostComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyModalHostComponent, selector: "sky-modal-host", viewQueries: [{ propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-modal-host-backdrop\"\n [hidden]=\"!modalOpen\"\n [ngStyle]=\"{\n zIndex: backdropZIndex\n }\"\n></div>\n<div #target></div>\n", styles: [".sky-modal-host-backdrop{background-color:#00000080;position:fixed;top:0;left:0;bottom:0;right:0}\n"], directives: [{ type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], viewProviders: [SkyModalAdapterService] });
|
|
128
147
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostComponent, decorators: [{
|
|
129
148
|
type: Component,
|
|
130
149
|
args: [{ selector: 'sky-modal-host', viewProviders: [SkyModalAdapterService], template: "<div\n class=\"sky-modal-host-backdrop\"\n [hidden]=\"!modalOpen\"\n [ngStyle]=\"{\n zIndex: backdropZIndex\n }\"\n></div>\n<div #target></div>\n", styles: [".sky-modal-host-backdrop{background-color:#00000080;position:fixed;top:0;left:0;bottom:0;right:0}\n"] }]
|
|
131
|
-
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i1.SkyModalAdapterService }, { type: i0.Injector }, { type: i2.Router }, { type: i0.ChangeDetectorRef }, { type: i3.SkyModalHostContext }]; }, propDecorators: { target: [{
|
|
150
|
+
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i1.SkyModalAdapterService }, { type: i0.Injector }, { type: i2.Router }, { type: i0.ChangeDetectorRef }, { type: i3.SkyModalHostContext }, { type: i0.ElementRef }]; }, propDecorators: { target: [{
|
|
132
151
|
type: ViewChild,
|
|
133
152
|
args: ['target', {
|
|
134
153
|
read: ViewContainerRef,
|
|
135
154
|
static: true,
|
|
136
155
|
}]
|
|
137
156
|
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaG9zdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9tb2RhbHMvc3JjL2xpYi9tb2R1bGVzL21vZGFsL21vZGFsLWhvc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsUUFBUSxFQUVSLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLGtDQUFrQyxHQUNuQyxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQUkzRDs7R0FFRztBQU9ILE1BQU0sT0FBTyxxQkFBcUI7SUErQmhDLFlBQ0UsUUFBa0MsRUFDbEMsT0FBK0IsRUFDL0IsUUFBa0IsRUFDbEIsTUFBYyxFQUNkLGNBQWlDLEVBQ2pDLGdCQUFxQzs7UUFoQnZDLGtEQUFvQztRQUNwQyxpREFBaUM7UUFDakMsa0RBQW9CO1FBQ3BCLGdEQUFnQjtRQUNoQix3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MEIsYUFBYSxDQUFDLENBQUM7WUFDN0MsVUFBVSxFQUFFLENBQUM7UUFDZixDQUFDLENBQUMsQ0FBQztRQUVILHFGQUFxRjtRQUNyRix1QkFBQSxJQUFJLDZDQUFnQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7OytmQUVzQixRQUEwQjtJQUMvQyx1QkFBQSxJQUFJLDZDQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUN0QyxDQUFDLDJHQUV3QixRQUEwQjtJQUNqRCx1QkFBQSxJQUFJLDZDQUFnQixDQUFDLEtBQUssQ0FBQyx1QkFBQSxJQUFJLDZDQUFnQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUN4RSxDQUFDO0lBR0MsS0FBSyxNQUFNLFFBQVEsSUFBSSx1QkFBQSxJQUFJLDZDQUFnQixFQUFFO1FBQzNDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztLQUNsQjtBQUNILENBQUM7a0hBbktVLHFCQUFxQjtzR0FBckIscUJBQXFCLG1JQWdCeEIsZ0JBQWdCLDJDQ2pEMUIsMEpBUUEsa05EdUJpQixDQUFDLHNCQUFzQixDQUFDOzJGQUU1QixxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0UsZ0JBQWdCLGlCQUdYLENBQUMsc0JBQXNCLENBQUM7a1FBcUJoQyxNQUFNO3NCQUpaLFNBQVM7dUJBQUMsUUFBUSxFQUFFO3dCQUNuQixJQUFJLEVBQUUsZ0JBQWdCO3dCQUN0QixNQUFNLEVBQUUsSUFBSTtxQkFDTiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgSW5qZWN0b3IsXG4gIE9uRGVzdHJveSxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25TdGFydCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7XG4gIFNreU1lZGlhUXVlcnlTZXJ2aWNlLFxuICBTa3lSZXNpemVPYnNlcnZlck1lZGlhUXVlcnlTZXJ2aWNlLFxufSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IHRha2VXaGlsZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5TW9kYWxBZGFwdGVyU2VydmljZSB9IGZyb20gJy4vbW9kYWwtYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreU1vZGFsQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vbW9kYWwtY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBTa3lNb2RhbEhvc3RDb250ZXh0IH0gZnJvbSAnLi9tb2RhbC1ob3N0LWNvbnRleHQnO1xuaW1wb3J0IHsgU2t5TW9kYWxIb3N0U2VydmljZSB9IGZyb20gJy4vbW9kYWwtaG9zdC5zZXJ2aWNlJztcbmltcG9ydCB7IFNreU1vZGFsSW5zdGFuY2UgfSBmcm9tICcuL21vZGFsLWluc3RhbmNlJztcbmltcG9ydCB7IFNreU1vZGFsQ29uZmlndXJhdGlvbkludGVyZmFjZSB9IGZyb20gJy4vbW9kYWwuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LW1vZGFsLWhvc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vbW9kYWwtaG9zdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21vZGFsLWhvc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgdmlld1Byb3ZpZGVyczogW1NreU1vZGFsQWRhcHRlclNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lNb2RhbEhvc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwdWJsaWMgZ2V0IG1vZGFsT3BlbigpIHtcbiAgICByZXR1cm4gU2t5TW9kYWxIb3N0U2VydmljZS5vcGVuTW9kYWxDb3VudCA+IDA7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGJhY2tkcm9wWkluZGV4KCkge1xuICAgIHJldHVybiBTa3lNb2RhbEhvc3RTZXJ2aWNlLmJhY2tkcm9wWkluZGV4O1xuICB9XG5cbiAgLyoqXG4gICAqIFVzZSBgYW55YCBmb3IgYmFja3dhcmRzLWNvbXBhdGliaWxpdHkgd2l0aCBBbmd1bGFyIDQtNy5cbiAgICogU2VlOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8zMDY1NFxuICAgKiBUT0RPOiBSZW1vdmUgdGhlIGBhbnlgIGluIGEgYnJlYWtpbmcgY2hhbmdlLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIEBWaWV3Q2hpbGQoJ3RhcmdldCcsIHtcbiAgICByZWFkOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSBhcyBhbnkpXG4gIHB1YmxpYyB0YXJnZXQ6IFZpZXdDb250YWluZXJSZWYgfCB1bmRlZmluZWQ7XG5cbiAgI3Jlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI7XG4gICNhZGFwdGVyOiBTa3lNb2RhbEFkYXB0ZXJTZXJ2aWNlO1xuICAjaW5qZWN0b3I6IEluamVjdG9yO1xuICAjcm91dGVyOiBSb3V0ZXI7XG4gICNjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG5cbiAgI21vZGFsSG9zdENvbnRleHQ6IFNreU1vZGFsSG9zdENvbnRleHQ7XG5cbiAgI21vZGFsSW5zdGFuY2VzOiBTa3lNb2RhbEluc3RhbmNlW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIGFkYXB0ZXI6IFNreU1vZGFsQWRhcHRlclNlcnZpY2UsXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHJvdXRlcjogUm91dGVyLFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBtb2RhbEhvc3RDb250ZXh0OiBTa3lNb2RhbEhvc3RDb250ZXh0XG4gICkge1xuICAgIHRoaXMuI3Jlc29sdmVyID0gcmVzb2x2ZXI7XG4gICAgdGhpcy4jYWRhcHRlciA9IGFkYXB0ZXI7XG4gICAgdGhpcy4jaW5qZWN0b3IgPSBpbmplY3RvcjtcbiAgICB0aGlzLiNyb3V0ZXIgPSByb3V0ZXI7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IgPSBjaGFuZ2VEZXRlY3RvcjtcbiAgICB0aGlzLiNtb2RhbEhvc3RDb250ZXh0ID0gbW9kYWxIb3N0Q29udGV4dDtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAvLyBDbG9zZSBhbGwgbW9kYWwgaW5zdGFuY2VzIGJlZm9yZSBkaXNwb3Npbmcgb2YgdGhlIGhvc3QgY29udGFpbmVyLlxuICAgIHRoaXMuI2Nsb3NlQWxsTW9kYWxJbnN0YW5jZXMoKTtcbiAgICB0aGlzLiNtb2RhbEhvc3RDb250ZXh0LmFyZ3MudGVhcmRvd25DYWxsYmFjaygpO1xuICB9XG5cbiAgcHVibGljIG9wZW4oXG4gICAgbW9kYWxJbnN0YW5jZTogU2t5TW9kYWxJbnN0YW5jZSxcbiAgICBjb21wb25lbnQ6IGFueSxcbiAgICBjb25maWc/OiBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2VcbiAgKTogdm9pZCB7XG4gICAgLyogSWdub3JlIGNvdmVyYWdlIGFzIHdlIHNwZWNpZnkgdGhlIHRhcmdldCBlbGVtZW50IGFuZCBzbyB0aGUgdmlldyBjaGlsZCBzaG91bGQgbmV2ZXIgYmUgdW5kZWZpbmVkIHVubGVzc1xuICAgICAqIHdlIHdlcmUgdG8gY2FsbCB0aGUgYG9wZW5gIG1ldGhvZCBpbiBhbiBlYXJseSBsaWZlY3ljbGUgaG9vay4gKi9cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGlmICghdGhpcy50YXJnZXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJhbXM6IFNreU1vZGFsQ29uZmlndXJhdGlvbkludGVyZmFjZSA9IE9iamVjdC5hc3NpZ24oe30sIGNvbmZpZyk7XG4gICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuI3Jlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XG5cbiAgICBjb25zdCBob3N0U2VydmljZSA9IG5ldyBTa3lNb2RhbEhvc3RTZXJ2aWNlKCk7XG4gICAgaG9zdFNlcnZpY2UuZnVsbFBhZ2UgPSAhIXBhcmFtcy5mdWxsUGFnZTtcblxuICAgIGNvbnN0IGFkYXB0ZXIgPSB0aGlzLiNhZGFwdGVyO1xuICAgIGNvbnN0IG1vZGFsT3BlbmVyOiBIVE1MRWxlbWVudCA9IGFkYXB0ZXIuZ2V0TW9kYWxPcGVuZXIoKTtcblxuICAgIGxldCBpc09wZW4gPSB0cnVlO1xuXG4gICAgLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvbiAqL1xuICAgIHBhcmFtcy5wcm92aWRlcnMhLnB1c2goe1xuICAgICAgcHJvdmlkZTogU2t5TW9kYWxIb3N0U2VydmljZSxcbiAgICAgIHVzZVZhbHVlOiBob3N0U2VydmljZSxcbiAgICB9KTtcbiAgICBwYXJhbXMucHJvdmlkZXJzIS5wdXNoKHtcbiAgICAgIHByb3ZpZGU6IFNreU1vZGFsQ29uZmlndXJhdGlvbixcbiAgICAgIHVzZVZhbHVlOiBwYXJhbXMsXG4gICAgfSk7XG4gICAgcGFyYW1zLnByb3ZpZGVycyEucHVzaCh7XG4gICAgICBwcm92aWRlOiBTa3lNZWRpYVF1ZXJ5U2VydmljZSxcbiAgICAgIHVzZUV4aXN0aW5nOiBTa3lSZXNpemVPYnNlcnZlck1lZGlhUXVlcnlTZXJ2aWNlLFxuICAgIH0pO1xuICAgIC8qIGVzbGludC1lbmFibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvbiAqL1xuXG4gICAgYWRhcHRlci5zZXRQYWdlU2Nyb2xsKFNreU1vZGFsSG9zdFNlcnZpY2Uub3Blbk1vZGFsQ291bnQgPiAwKTtcbiAgICBhZGFwdGVyLnRvZ2dsZUZ1bGxQYWdlTW9kYWxDbGFzcyhcbiAgICAgIFNreU1vZGFsSG9zdFNlcnZpY2UuZnVsbFBhZ2VNb2RhbENvdW50ID4gMFxuICAgICk7XG5cbiAgICBjb25zdCBwcm92aWRlcnMgPSBwYXJhbXMucHJvdmlkZXJzIHx8IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovIFtdO1xuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVycyxcbiAgICAgIHBhcmVudDogdGhpcy4jaW5qZWN0b3IsXG4gICAgfSk7XG5cbiAgICBjb25zdCBtb2RhbENvbXBvbmVudFJlZiA9IHRoaXMudGFyZ2V0LmNyZWF0ZUNvbXBvbmVudChcbiAgICAgIGZhY3RvcnksXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBpbmplY3RvclxuICAgICk7XG5cbiAgICBtb2RhbEluc3RhbmNlLmNvbXBvbmVudEluc3RhbmNlID0gbW9kYWxDb21wb25lbnRSZWYuaW5zdGFuY2U7XG5cbiAgICB0aGlzLiNyZWdpc3Rlck1vZGFsSW5zdGFuY2UobW9kYWxJbnN0YW5jZSk7XG5cbiAgICBmdW5jdGlvbiBjbG9zZU1vZGFsKCkge1xuICAgICAgaG9zdFNlcnZpY2UuZGVzdHJveSgpO1xuICAgICAgYWRhcHRlci5zZXRQYWdlU2Nyb2xsKFNreU1vZGFsSG9zdFNlcnZpY2Uub3Blbk1vZGFsQ291bnQgPiAwKTtcbiAgICAgIGFkYXB0ZXIudG9nZ2xlRnVsbFBhZ2VNb2RhbENsYXNzKFxuICAgICAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLmZ1bGxQYWdlTW9kYWxDb3VudCA+IDBcbiAgICAgICk7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgICBpZiAobW9kYWxPcGVuZXIgJiYgbW9kYWxPcGVuZXIuZm9jdXMpIHtcbiAgICAgICAgbW9kYWxPcGVuZXIuZm9jdXMoKTtcbiAgICAgIH1cbiAgICAgIG1vZGFsQ29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBob3N0U2VydmljZS5vcGVuSGVscC5zdWJzY3JpYmUoKGhlbHBLZXkpID0+IHtcbiAgICAgIG1vZGFsSW5zdGFuY2Uub3BlbkhlbHAoaGVscEtleSk7XG4gICAgfSk7XG5cbiAgICBob3N0U2VydmljZS5jbG9zZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZSgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy4jcm91dGVyLmV2ZW50cy5waXBlKHRha2VXaGlsZSgoKSA9PiBpc09wZW4pKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSB7XG4gICAgICAgIG1vZGFsSW5zdGFuY2UuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIG1vZGFsSW5zdGFuY2UuY2xvc2VkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpc09wZW4gPSBmYWxzZTtcbiAgICAgIHRoaXMuI3VucmVnaXN0ZXJNb2RhbEluc3RhbmNlKG1vZGFsSW5zdGFuY2UpO1xuICAgICAgY2xvc2VNb2RhbCgpO1xuICAgIH0pO1xuXG4gICAgLy8gTmVjZXNzYXJ5IGlmIHRoZSBob3N0IHdhcyBjcmVhdGVkIHZpYSBhIGNvbnN1bWVyJ3MgbGlmZWN5Y2xlIGhvb2sgc3VjaCBhcyBuZ09uSW5pdFxuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gICNyZWdpc3Rlck1vZGFsSW5zdGFuY2UoaW5zdGFuY2U6IFNreU1vZGFsSW5zdGFuY2UpOiB2b2lkIHtcbiAgICB0aGlzLiNtb2RhbEluc3RhbmNlcy5wdXNoKGluc3RhbmNlKTtcbiAgfVxuXG4gICN1bnJlZ2lzdGVyTW9kYWxJbnN0YW5jZShpbnN0YW5jZTogU2t5TW9kYWxJbnN0YW5jZSk6IHZvaWQge1xuICAgIHRoaXMuI21vZGFsSW5zdGFuY2VzLnNsaWNlKHRoaXMuI21vZGFsSW5zdGFuY2VzLmluZGV4T2YoaW5zdGFuY2UpLCAxKTtcbiAgfVxuXG4gICNjbG9zZUFsbE1vZGFsSW5zdGFuY2VzKCk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgaW5zdGFuY2Ugb2YgdGhpcy4jbW9kYWxJbnN0YW5jZXMpIHtcbiAgICAgIGluc3RhbmNlLmNsb3NlKCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwic2t5LW1vZGFsLWhvc3QtYmFja2Ryb3BcIlxuICBbaGlkZGVuXT1cIiFtb2RhbE9wZW5cIlxuICBbbmdTdHlsZV09XCJ7XG4gICAgekluZGV4OiBiYWNrZHJvcFpJbmRleFxuICB9XCJcbj48L2Rpdj5cbjxkaXYgI3RhcmdldD48L2Rpdj5cbiJdfQ==
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaG9zdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9tb2RhbHMvc3JjL2xpYi9tb2R1bGVzL21vZGFsL21vZGFsLWhvc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsVUFBVSxFQUNWLFFBQVEsRUFFUixTQUFTLEVBQ1QsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixrQ0FBa0MsR0FDbkMsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7QUFJM0Q7O0dBRUc7QUFPSCxNQUFNLE9BQU8scUJBQXFCO0lBK0JoQyxZQUNFLFFBQWtDLEVBQ2xDLE9BQStCLEVBQy9CLFFBQWtCLEVBQ2xCLE1BQWMsRUFDZCxjQUFpQyxFQUNqQyxnQkFBcUMsRUFDckMsS0FBaUI7O1FBakJuQixrREFBb0M7UUFDcEMsaURBQWlDO1FBQ2pDLGtEQUFv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Q0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ3hFLENBQUM7SUFHQyxLQUFLLE1BQU0sUUFBUSxJQUFJLHVCQUFBLElBQUksNkNBQWdCLEVBQUU7UUFDM0MsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0tBQ2xCO0FBQ0gsQ0FBQztrSEExTFUscUJBQXFCO3NHQUFyQixxQkFBcUIsbUlBZ0J4QixnQkFBZ0IsMkNDbEQxQiwwSkFRQSxrTkR3QmlCLENBQUMsc0JBQXNCLENBQUM7MkZBRTVCLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxnQkFBZ0IsaUJBR1gsQ0FBQyxzQkFBc0IsQ0FBQzsyUkFxQmhDLE1BQU07c0JBSlosU0FBUzt1QkFBQyxRQUFRLEVBQUU7d0JBQ25CLElBQUksRUFBRSxnQkFBZ0I7d0JBQ3RCLE1BQU0sRUFBRSxJQUFJO3FCQUNOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBFbGVtZW50UmVmLFxuICBJbmplY3RvcixcbiAgT25EZXN0cm95LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgU2t5TWVkaWFRdWVyeVNlcnZpY2UsXG4gIFNreVJlc2l6ZU9ic2VydmVyTWVkaWFRdWVyeVNlcnZpY2UsXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgdGFrZVdoaWxlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lNb2RhbEFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9tb2RhbC1hZGFwdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5TW9kYWxDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9tb2RhbC1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IFNreU1vZGFsSG9zdENvbnRleHQgfSBmcm9tICcuL21vZGFsLWhvc3QtY29udGV4dCc7XG5pbXBvcnQgeyBTa3lNb2RhbEhvc3RTZXJ2aWNlIH0gZnJvbSAnLi9tb2RhbC1ob3N0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5TW9kYWxJbnN0YW5jZSB9IGZyb20gJy4vbW9kYWwtaW5zdGFuY2UnO1xuaW1wb3J0IHsgU2t5TW9kYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlIH0gZnJvbSAnLi9tb2RhbC5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktbW9kYWwtaG9zdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC1ob3N0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9kYWwtaG9zdC5jb21wb25lbnQuc2NzcyddLFxuICB2aWV3UHJvdmlkZXJzOiBbU2t5TW9kYWxBZGFwdGVyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreU1vZGFsSG9zdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHB1YmxpYyBnZXQgbW9kYWxPcGVuKCkge1xuICAgIHJldHVybiBTa3lNb2RhbEhvc3RTZXJ2aWNlLm9wZW5Nb2RhbENvdW50ID4gMDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYmFja2Ryb3BaSW5kZXgoKSB7XG4gICAgcmV0dXJuIFNreU1vZGFsSG9zdFNlcnZpY2UuYmFja2Ryb3BaSW5kZXg7XG4gIH1cblxuICAvKipcbiAgICogVXNlIGBhbnlgIGZvciBiYWNrd2FyZHMtY29tcGF0aWJpbGl0eSB3aXRoIEFuZ3VsYXIgNC03LlxuICAgKiBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzMwNjU0XG4gICAqIFRPRE86IFJlbW92ZSB0aGUgYGFueWAgaW4gYSBicmVha2luZyBjaGFuZ2UuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgQFZpZXdDaGlsZCgndGFyZ2V0Jywge1xuICAgIHJlYWQ6IFZpZXdDb250YWluZXJSZWYsXG4gICAgc3RhdGljOiB0cnVlLFxuICB9IGFzIGFueSlcbiAgcHVibGljIHRhcmdldDogVmlld0NvbnRhaW5lclJlZiB8IHVuZGVmaW5lZDtcblxuICAjcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjtcbiAgI2FkYXB0ZXI6IFNreU1vZGFsQWRhcHRlclNlcnZpY2U7XG4gICNpbmplY3RvcjogSW5qZWN0b3I7XG4gICNyb3V0ZXI6IFJvdXRlcjtcbiAgI2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgI21vZGFsSG9zdENvbnRleHQ6IFNreU1vZGFsSG9zdENvbnRleHQ7XG4gICNlbFJlZjogRWxlbWVudFJlZjtcblxuICAjbW9kYWxJbnN0YW5jZXM6IFNreU1vZGFsSW5zdGFuY2VbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgYWRhcHRlcjogU2t5TW9kYWxBZGFwdGVyU2VydmljZSxcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcm91dGVyOiBSb3V0ZXIsXG4gICAgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIG1vZGFsSG9zdENvbnRleHQ6IFNreU1vZGFsSG9zdENvbnRleHQsXG4gICAgZWxSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgdGhpcy4jcmVzb2x2ZXIgPSByZXNvbHZlcjtcbiAgICB0aGlzLiNhZGFwdGVyID0gYWRhcHRlcjtcbiAgICB0aGlzLiNpbmplY3RvciA9IGluamVjdG9yO1xuICAgIHRoaXMuI3JvdXRlciA9IHJvdXRlcjtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuICAgIHRoaXMuI21vZGFsSG9zdENvbnRleHQgPSBtb2RhbEhvc3RDb250ZXh0O1xuICAgIHRoaXMuI2VsUmVmID0gZWxSZWY7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgLy8gQ2xvc2UgYWxsIG1vZGFsIGluc3RhbmNlcyBiZWZvcmUgZGlzcG9zaW5nIG9mIHRoZSBob3N0IGNvbnRhaW5lci5cbiAgICB0aGlzLiNjbG9zZUFsbE1vZGFsSW5zdGFuY2VzKCk7XG4gICAgdGhpcy4jbW9kYWxIb3N0Q29udGV4dC5hcmdzLnRlYXJkb3duQ2FsbGJhY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKFxuICAgIG1vZGFsSW5zdGFuY2U6IFNreU1vZGFsSW5zdGFuY2UsXG4gICAgY29tcG9uZW50OiBhbnksXG4gICAgY29uZmlnPzogU2t5TW9kYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlXG4gICk6IHZvaWQge1xuICAgIC8qIElnbm9yZSBjb3ZlcmFnZSBhcyB3ZSBzcGVjaWZ5IHRoZSB0YXJnZXQgZWxlbWVudCBhbmQgc28gdGhlIHZpZXcgY2hpbGQgc2hvdWxkIG5ldmVyIGJlIHVuZGVmaW5lZCB1bmxlc3NcbiAgICAgKiB3ZSB3ZXJlIHRvIGNhbGwgdGhlIGBvcGVuYCBtZXRob2QgaW4gYW4gZWFybHkgbGlmZWN5Y2xlIGhvb2suICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBpZiAoIXRoaXMudGFyZ2V0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcGFyYW1zOiBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2UgPSBPYmplY3QuYXNzaWduKHt9LCBjb25maWcpO1xuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLiNyZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShjb21wb25lbnQpO1xuXG4gICAgY29uc3QgaG9zdFNlcnZpY2UgPSBuZXcgU2t5TW9kYWxIb3N0U2VydmljZSgpO1xuICAgIGhvc3RTZXJ2aWNlLmZ1bGxQYWdlID0gISFwYXJhbXMuZnVsbFBhZ2U7XG5cbiAgICBjb25zdCBhZGFwdGVyID0gdGhpcy4jYWRhcHRlcjtcbiAgICBjb25zdCBtb2RhbE9wZW5lcjogSFRNTEVsZW1lbnQgPSBhZGFwdGVyLmdldE1vZGFsT3BlbmVyKCk7XG5cbiAgICBsZXQgaXNPcGVuID0gdHJ1ZTtcblxuICAgIC8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24gKi9cbiAgICBwYXJhbXMucHJvdmlkZXJzIS5wdXNoKHtcbiAgICAgIHByb3ZpZGU6IFNreU1vZGFsSG9zdFNlcnZpY2UsXG4gICAgICB1c2VWYWx1ZTogaG9zdFNlcnZpY2UsXG4gICAgfSk7XG4gICAgcGFyYW1zLnByb3ZpZGVycyEucHVzaCh7XG4gICAgICBwcm92aWRlOiBTa3lNb2RhbENvbmZpZ3VyYXRpb24sXG4gICAgICB1c2VWYWx1ZTogcGFyYW1zLFxuICAgIH0pO1xuICAgIHBhcmFtcy5wcm92aWRlcnMhLnB1c2goe1xuICAgICAgcHJvdmlkZTogU2t5TWVkaWFRdWVyeVNlcnZpY2UsXG4gICAgICB1c2VFeGlzdGluZzogU2t5UmVzaXplT2JzZXJ2ZXJNZWRpYVF1ZXJ5U2VydmljZSxcbiAgICB9KTtcbiAgICAvKiBlc2xpbnQtZW5hYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24gKi9cblxuICAgIGFkYXB0ZXIuc2V0UGFnZVNjcm9sbChTa3lNb2RhbEhvc3RTZXJ2aWNlLm9wZW5Nb2RhbENvdW50ID4gMCk7XG4gICAgYWRhcHRlci50b2dnbGVGdWxsUGFnZU1vZGFsQ2xhc3MoXG4gICAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLmZ1bGxQYWdlTW9kYWxDb3VudCA+IDBcbiAgICApO1xuXG4gICAgY29uc3QgcHJvdmlkZXJzID0gcGFyYW1zLnByb3ZpZGVycyB8fCAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyBbXTtcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwcm92aWRlcnMsXG4gICAgICBwYXJlbnQ6IHRoaXMuI2luamVjdG9yLFxuICAgIH0pO1xuXG4gICAgY29uc3QgbW9kYWxDb21wb25lbnRSZWYgPSB0aGlzLnRhcmdldC5jcmVhdGVDb21wb25lbnQoXG4gICAgICBmYWN0b3J5LFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgaW5qZWN0b3JcbiAgICApO1xuXG4gICAgLy8gbW9kYWwgZWxlbWVudCB0aGF0IHdhcyBqdXN0IG9wZW5lZFxuICAgIGNvbnN0IG1vZGFsRWxlbWVudCA9IG1vZGFsQ29tcG9uZW50UmVmLmxvY2F0aW9uO1xuXG4gICAgbW9kYWxJbnN0YW5jZS5jb21wb25lbnRJbnN0YW5jZSA9IG1vZGFsQ29tcG9uZW50UmVmLmluc3RhbmNlO1xuXG4gICAgdGhpcy4jcmVnaXN0ZXJNb2RhbEluc3RhbmNlKG1vZGFsSW5zdGFuY2UpO1xuXG4gICAgLy8gaGlkZGluZyBhbGwgZWxlbWVudHMgYXQgdGhlIG1vZGFsLWhvc3QgbGV2ZWwgZnJvbSBzY3JlZW5yZWFkZXJzIHdoZW4gdGhlIGEgbW9kYWwgaXMgb3BlbmVkXG4gICAgdGhpcy4jYWRhcHRlci5oaWRlSG9zdFNpYmxpbmdzRnJvbVNjcmVlblJlYWRlcnModGhpcy4jZWxSZWYpO1xuICAgIGlmIChcbiAgICAgIFNreU1vZGFsSG9zdFNlcnZpY2Uub3Blbk1vZGFsQ291bnQgPiAxICYmXG4gICAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLnRvcE1vZGFsID09PSBob3N0U2VydmljZVxuICAgICkge1xuICAgICAgLy8gaGlkaW5nIHRoZSBsb3dlciBtb2RhbHMgd2hlbiBtb3JlIHRoYW4gb25lIG1vZGFsIGlzIG9wZW5lZFxuICAgICAgdGhpcy4jYWRhcHRlci5oaWRlUHJldmlvdXNNb2RhbEZyb21TY3JlZW5SZWFkZXJzKG1vZGFsRWxlbWVudCk7XG4gICAgfVxuXG4gICAgY29uc3QgY2xvc2VNb2RhbCA9ICgpID0+IHtcbiAgICAgIC8vIHVuaGlkZSBzaWJsaW5ncyBpZiBsYXN0IG1vZGFsIGlzIGNsb3NpbmdcbiAgICAgIGlmIChTa3lNb2RhbEhvc3RTZXJ2aWNlLm9wZW5Nb2RhbENvdW50ID09PSAxKSB7XG4gICAgICAgIHRoaXMuI2FkYXB0ZXIudW5oaWRlT3JSZXN0b3JlSG9zdFNpYmxpbmdzRnJvbVNjcmVlblJlYWRlcnMoKTtcbiAgICAgIH0gZWxzZSBpZiAoU2t5TW9kYWxIb3N0U2VydmljZS50b3BNb2RhbCA9PT0gaG9zdFNlcnZpY2UpIHtcbiAgICAgICAgLy8gaWYgdGhlcmUgYXJlIG1vcmUgdGhhbiAxIG1vZGFsIHRoZW4gdW5oaWRlIHRoZSBvbmUgYmVoaW5kIHRoaXMgb25lIGJlZm9yZSBjbG9zaW5nIGl0XG4gICAgICAgIHRoaXMuI2FkYXB0ZXIudW5oaWRlUHJldmlvdXNNb2RhbEZyb21TY3JlZW5SZWFkZXJzKG1vZGFsRWxlbWVudCk7XG4gICAgICB9XG5cbiAgICAgIGhvc3RTZXJ2aWNlLmRlc3Ryb3koKTtcbiAgICAgIGFkYXB0ZXIuc2V0UGFnZVNjcm9sbChTa3lNb2RhbEhvc3RTZXJ2aWNlLm9wZW5Nb2RhbENvdW50ID4gMCk7XG4gICAgICBhZGFwdGVyLnRvZ2dsZUZ1bGxQYWdlTW9kYWxDbGFzcyhcbiAgICAgICAgU2t5TW9kYWxIb3N0U2VydmljZS5mdWxsUGFnZU1vZGFsQ291bnQgPiAwXG4gICAgICApO1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIC8qIHNhbml0eSBjaGVjayAqL1xuICAgICAgaWYgKG1vZGFsT3BlbmVyICYmIG1vZGFsT3BlbmVyLmZvY3VzKSB7XG4gICAgICAgIG1vZGFsT3BlbmVyLmZvY3VzKCk7XG4gICAgICB9XG4gICAgICBtb2RhbENvbXBvbmVudFJlZi5kZXN0cm95KCk7XG4gICAgfTtcblxuICAgIGhvc3RTZXJ2aWNlLm9wZW5IZWxwLnN1YnNjcmliZSgoaGVscEtleSkgPT4ge1xuICAgICAgbW9kYWxJbnN0YW5jZS5vcGVuSGVscChoZWxwS2V5KTtcbiAgICB9KTtcblxuICAgIGhvc3RTZXJ2aWNlLmNsb3NlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBtb2RhbEluc3RhbmNlLmNsb3NlKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLiNyb3V0ZXIuZXZlbnRzLnBpcGUodGFrZVdoaWxlKCgpID0+IGlzT3BlbikpLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZSgpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgbW9kYWxJbnN0YW5jZS5jbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlzT3BlbiA9IGZhbHNlO1xuICAgICAgdGhpcy4jdW5yZWdpc3Rlck1vZGFsSW5zdGFuY2UobW9kYWxJbnN0YW5jZSk7XG4gICAgICBjbG9zZU1vZGFsKCk7XG4gICAgfSk7XG5cbiAgICAvLyBOZWNlc3NhcnkgaWYgdGhlIGhvc3Qgd2FzIGNyZWF0ZWQgdmlhIGEgY29uc3VtZXIncyBsaWZlY3ljbGUgaG9vayBzdWNoIGFzIG5nT25Jbml0XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgI3JlZ2lzdGVyTW9kYWxJbnN0YW5jZShpbnN0YW5jZTogU2t5TW9kYWxJbnN0YW5jZSk6IHZvaWQge1xuICAgIHRoaXMuI21vZGFsSW5zdGFuY2VzLnB1c2goaW5zdGFuY2UpO1xuICB9XG5cbiAgI3VucmVnaXN0ZXJNb2RhbEluc3RhbmNlKGluc3RhbmNlOiBTa3lNb2RhbEluc3RhbmNlKTogdm9pZCB7XG4gICAgdGhpcy4jbW9kYWxJbnN0YW5jZXMuc2xpY2UodGhpcy4jbW9kYWxJbnN0YW5jZXMuaW5kZXhPZihpbnN0YW5jZSksIDEpO1xuICB9XG5cbiAgI2Nsb3NlQWxsTW9kYWxJbnN0YW5jZXMoKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBpbnN0YW5jZSBvZiB0aGlzLiNtb2RhbEluc3RhbmNlcykge1xuICAgICAgaW5zdGFuY2UuY2xvc2UoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktbW9kYWwtaG9zdC1iYWNrZHJvcFwiXG4gIFtoaWRkZW5dPVwiIW1vZGFsT3BlblwiXG4gIFtuZ1N0eWxlXT1cIntcbiAgICB6SW5kZXg6IGJhY2tkcm9wWkluZGV4XG4gIH1cIlxuPjwvZGl2PlxuPGRpdiAjdGFyZ2V0PjwvZGl2PlxuIl19
|
|
@@ -138,7 +138,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
138
138
|
args: [{ selector: 'sky-modal-header', template: "<h1\n class=\"sky-emphasized\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n>\n <ng-content></ng-content>\n</h1>\n", styles: ["h1{margin:0;line-height:1.2}:host-context(.sky-theme-modern.sky-theme-mode-dark) h1{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark h1{color:#fbfcfe}\n"] }]
|
|
139
139
|
}] });
|
|
140
140
|
|
|
141
|
-
var _SkyModalAdapterService_instances, _SkyModalAdapterService_docRef, _SkyModalAdapterService_bodyEl, _SkyModalAdapterService_windowRef, _SkyModalAdapterService_addClassToBody, _SkyModalAdapterService_removeClassFromBody;
|
|
141
|
+
var _SkyModalAdapterService_instances, _SkyModalAdapterService_docRef, _SkyModalAdapterService_bodyEl, _SkyModalAdapterService_windowRef, _SkyModalAdapterService_hostSiblingAriaHiddenCache, _SkyModalAdapterService_addClassToBody, _SkyModalAdapterService_removeClassFromBody;
|
|
142
142
|
/**
|
|
143
143
|
* @internal
|
|
144
144
|
*/
|
|
@@ -148,6 +148,7 @@ class SkyModalAdapterService {
|
|
|
148
148
|
_SkyModalAdapterService_docRef.set(this, void 0);
|
|
149
149
|
_SkyModalAdapterService_bodyEl.set(this, void 0);
|
|
150
150
|
_SkyModalAdapterService_windowRef.set(this, void 0);
|
|
151
|
+
_SkyModalAdapterService_hostSiblingAriaHiddenCache.set(this, new Map());
|
|
151
152
|
__classPrivateFieldSet(this, _SkyModalAdapterService_windowRef, windowRef, "f");
|
|
152
153
|
__classPrivateFieldSet(this, _SkyModalAdapterService_docRef, __classPrivateFieldGet(this, _SkyModalAdapterService_windowRef, "f").nativeWindow.document, "f");
|
|
153
154
|
__classPrivateFieldSet(this, _SkyModalAdapterService_bodyEl, __classPrivateFieldGet(this, _SkyModalAdapterService_windowRef, "f").nativeWindow.document.body, "f");
|
|
@@ -171,8 +172,54 @@ class SkyModalAdapterService {
|
|
|
171
172
|
getModalOpener() {
|
|
172
173
|
return __classPrivateFieldGet(this, _SkyModalAdapterService_docRef, "f").activeElement;
|
|
173
174
|
}
|
|
175
|
+
/**
|
|
176
|
+
* Hides siblings of modal-host from screen readers
|
|
177
|
+
* @param hostElRef reference to modal-host element
|
|
178
|
+
*/
|
|
179
|
+
hideHostSiblingsFromScreenReaders(hostElRef) {
|
|
180
|
+
const hostElement = hostElRef.nativeElement;
|
|
181
|
+
const hostSiblings = hostElement.parentElement.children;
|
|
182
|
+
for (let i = 0; i < hostSiblings.length; i++) {
|
|
183
|
+
const element = hostSiblings[i];
|
|
184
|
+
if (element !== hostElement &&
|
|
185
|
+
!element.hasAttribute('aria-live') &&
|
|
186
|
+
element.nodeName.toLowerCase() !== 'script' &&
|
|
187
|
+
element.nodeName.toLowerCase() !== 'style') {
|
|
188
|
+
// preserve previous aria-hidden status of elements outside of modal host
|
|
189
|
+
__classPrivateFieldGet(this, _SkyModalAdapterService_hostSiblingAriaHiddenCache, "f").set(element, element.getAttribute('aria-hidden'));
|
|
190
|
+
element.setAttribute('aria-hidden', 'true');
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Restores modal-host siblings to screenreader status prior to modals being opened
|
|
196
|
+
*/
|
|
197
|
+
unhideOrRestoreHostSiblingsFromScreenReaders() {
|
|
198
|
+
__classPrivateFieldGet(this, _SkyModalAdapterService_hostSiblingAriaHiddenCache, "f").forEach((previousValue, element) => {
|
|
199
|
+
// if element had aria-hidden status prior, restore status
|
|
200
|
+
if (element.parentElement) {
|
|
201
|
+
if (previousValue) {
|
|
202
|
+
element.setAttribute('aria-hidden', previousValue);
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
element.removeAttribute('aria-hidden');
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
});
|
|
209
|
+
__classPrivateFieldGet(this, _SkyModalAdapterService_hostSiblingAriaHiddenCache, "f").clear();
|
|
210
|
+
}
|
|
211
|
+
hidePreviousModalFromScreenReaders(topModal) {
|
|
212
|
+
if (topModal && topModal.nativeElement.previousElementSibling) {
|
|
213
|
+
topModal.nativeElement.previousElementSibling.setAttribute('aria-hidden', 'true');
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
unhidePreviousModalFromScreenReaders(topModal) {
|
|
217
|
+
if (topModal && topModal.nativeElement.previousElementSibling) {
|
|
218
|
+
topModal.nativeElement.previousElementSibling.removeAttribute('aria-hidden');
|
|
219
|
+
}
|
|
220
|
+
}
|
|
174
221
|
}
|
|
175
|
-
_SkyModalAdapterService_docRef = new WeakMap(), _SkyModalAdapterService_bodyEl = new WeakMap(), _SkyModalAdapterService_windowRef = new WeakMap(), _SkyModalAdapterService_instances = new WeakSet(), _SkyModalAdapterService_addClassToBody = function _SkyModalAdapterService_addClassToBody(className) {
|
|
222
|
+
_SkyModalAdapterService_docRef = new WeakMap(), _SkyModalAdapterService_bodyEl = new WeakMap(), _SkyModalAdapterService_windowRef = new WeakMap(), _SkyModalAdapterService_hostSiblingAriaHiddenCache = new WeakMap(), _SkyModalAdapterService_instances = new WeakSet(), _SkyModalAdapterService_addClassToBody = function _SkyModalAdapterService_addClassToBody(className) {
|
|
176
223
|
__classPrivateFieldGet(this, _SkyModalAdapterService_bodyEl, "f").classList.add(className);
|
|
177
224
|
}, _SkyModalAdapterService_removeClassFromBody = function _SkyModalAdapterService_removeClassFromBody(className) {
|
|
178
225
|
__classPrivateFieldGet(this, _SkyModalAdapterService_bodyEl, "f").classList.remove(className);
|
|
@@ -282,12 +329,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
282
329
|
}] }];
|
|
283
330
|
} });
|
|
284
331
|
|
|
285
|
-
var _SkyModalHostComponent_instances, _SkyModalHostComponent_resolver, _SkyModalHostComponent_adapter, _SkyModalHostComponent_injector, _SkyModalHostComponent_router, _SkyModalHostComponent_changeDetector, _SkyModalHostComponent_modalHostContext, _SkyModalHostComponent_modalInstances, _SkyModalHostComponent_registerModalInstance, _SkyModalHostComponent_unregisterModalInstance, _SkyModalHostComponent_closeAllModalInstances;
|
|
332
|
+
var _SkyModalHostComponent_instances, _SkyModalHostComponent_resolver, _SkyModalHostComponent_adapter, _SkyModalHostComponent_injector, _SkyModalHostComponent_router, _SkyModalHostComponent_changeDetector, _SkyModalHostComponent_modalHostContext, _SkyModalHostComponent_elRef, _SkyModalHostComponent_modalInstances, _SkyModalHostComponent_registerModalInstance, _SkyModalHostComponent_unregisterModalInstance, _SkyModalHostComponent_closeAllModalInstances;
|
|
286
333
|
/**
|
|
287
334
|
* @internal
|
|
288
335
|
*/
|
|
289
336
|
class SkyModalHostComponent {
|
|
290
|
-
constructor(resolver, adapter, injector, router, changeDetector, modalHostContext) {
|
|
337
|
+
constructor(resolver, adapter, injector, router, changeDetector, modalHostContext, elRef) {
|
|
291
338
|
_SkyModalHostComponent_instances.add(this);
|
|
292
339
|
_SkyModalHostComponent_resolver.set(this, void 0);
|
|
293
340
|
_SkyModalHostComponent_adapter.set(this, void 0);
|
|
@@ -295,6 +342,7 @@ class SkyModalHostComponent {
|
|
|
295
342
|
_SkyModalHostComponent_router.set(this, void 0);
|
|
296
343
|
_SkyModalHostComponent_changeDetector.set(this, void 0);
|
|
297
344
|
_SkyModalHostComponent_modalHostContext.set(this, void 0);
|
|
345
|
+
_SkyModalHostComponent_elRef.set(this, void 0);
|
|
298
346
|
_SkyModalHostComponent_modalInstances.set(this, []);
|
|
299
347
|
__classPrivateFieldSet(this, _SkyModalHostComponent_resolver, resolver, "f");
|
|
300
348
|
__classPrivateFieldSet(this, _SkyModalHostComponent_adapter, adapter, "f");
|
|
@@ -302,6 +350,7 @@ class SkyModalHostComponent {
|
|
|
302
350
|
__classPrivateFieldSet(this, _SkyModalHostComponent_router, router, "f");
|
|
303
351
|
__classPrivateFieldSet(this, _SkyModalHostComponent_changeDetector, changeDetector, "f");
|
|
304
352
|
__classPrivateFieldSet(this, _SkyModalHostComponent_modalHostContext, modalHostContext, "f");
|
|
353
|
+
__classPrivateFieldSet(this, _SkyModalHostComponent_elRef, elRef, "f");
|
|
305
354
|
}
|
|
306
355
|
get modalOpen() {
|
|
307
356
|
return SkyModalHostService.openModalCount > 0;
|
|
@@ -350,9 +399,26 @@ class SkyModalHostComponent {
|
|
|
350
399
|
parent: __classPrivateFieldGet(this, _SkyModalHostComponent_injector, "f"),
|
|
351
400
|
});
|
|
352
401
|
const modalComponentRef = this.target.createComponent(factory, undefined, injector);
|
|
402
|
+
// modal element that was just opened
|
|
403
|
+
const modalElement = modalComponentRef.location;
|
|
353
404
|
modalInstance.componentInstance = modalComponentRef.instance;
|
|
354
405
|
__classPrivateFieldGet(this, _SkyModalHostComponent_instances, "m", _SkyModalHostComponent_registerModalInstance).call(this, modalInstance);
|
|
355
|
-
|
|
406
|
+
// hidding all elements at the modal-host level from screenreaders when the a modal is opened
|
|
407
|
+
__classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f").hideHostSiblingsFromScreenReaders(__classPrivateFieldGet(this, _SkyModalHostComponent_elRef, "f"));
|
|
408
|
+
if (SkyModalHostService.openModalCount > 1 &&
|
|
409
|
+
SkyModalHostService.topModal === hostService) {
|
|
410
|
+
// hiding the lower modals when more than one modal is opened
|
|
411
|
+
__classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f").hidePreviousModalFromScreenReaders(modalElement);
|
|
412
|
+
}
|
|
413
|
+
const closeModal = () => {
|
|
414
|
+
// unhide siblings if last modal is closing
|
|
415
|
+
if (SkyModalHostService.openModalCount === 1) {
|
|
416
|
+
__classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f").unhideOrRestoreHostSiblingsFromScreenReaders();
|
|
417
|
+
}
|
|
418
|
+
else if (SkyModalHostService.topModal === hostService) {
|
|
419
|
+
// if there are more than 1 modal then unhide the one behind this one before closing it
|
|
420
|
+
__classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f").unhidePreviousModalFromScreenReaders(modalElement);
|
|
421
|
+
}
|
|
356
422
|
hostService.destroy();
|
|
357
423
|
adapter.setPageScroll(SkyModalHostService.openModalCount > 0);
|
|
358
424
|
adapter.toggleFullPageModalClass(SkyModalHostService.fullPageModalCount > 0);
|
|
@@ -362,7 +428,7 @@ class SkyModalHostComponent {
|
|
|
362
428
|
modalOpener.focus();
|
|
363
429
|
}
|
|
364
430
|
modalComponentRef.destroy();
|
|
365
|
-
}
|
|
431
|
+
};
|
|
366
432
|
hostService.openHelp.subscribe((helpKey) => {
|
|
367
433
|
modalInstance.openHelp(helpKey);
|
|
368
434
|
});
|
|
@@ -384,7 +450,7 @@ class SkyModalHostComponent {
|
|
|
384
450
|
__classPrivateFieldGet(this, _SkyModalHostComponent_changeDetector, "f").detectChanges();
|
|
385
451
|
}
|
|
386
452
|
}
|
|
387
|
-
_SkyModalHostComponent_resolver = new WeakMap(), _SkyModalHostComponent_adapter = new WeakMap(), _SkyModalHostComponent_injector = new WeakMap(), _SkyModalHostComponent_router = new WeakMap(), _SkyModalHostComponent_changeDetector = new WeakMap(), _SkyModalHostComponent_modalHostContext = new WeakMap(), _SkyModalHostComponent_modalInstances = new WeakMap(), _SkyModalHostComponent_instances = new WeakSet(), _SkyModalHostComponent_registerModalInstance = function _SkyModalHostComponent_registerModalInstance(instance) {
|
|
453
|
+
_SkyModalHostComponent_resolver = new WeakMap(), _SkyModalHostComponent_adapter = new WeakMap(), _SkyModalHostComponent_injector = new WeakMap(), _SkyModalHostComponent_router = new WeakMap(), _SkyModalHostComponent_changeDetector = new WeakMap(), _SkyModalHostComponent_modalHostContext = new WeakMap(), _SkyModalHostComponent_elRef = new WeakMap(), _SkyModalHostComponent_modalInstances = new WeakMap(), _SkyModalHostComponent_instances = new WeakSet(), _SkyModalHostComponent_registerModalInstance = function _SkyModalHostComponent_registerModalInstance(instance) {
|
|
388
454
|
__classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").push(instance);
|
|
389
455
|
}, _SkyModalHostComponent_unregisterModalInstance = function _SkyModalHostComponent_unregisterModalInstance(instance) {
|
|
390
456
|
__classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").slice(__classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").indexOf(instance), 1);
|
|
@@ -393,12 +459,12 @@ _SkyModalHostComponent_resolver = new WeakMap(), _SkyModalHostComponent_adapter
|
|
|
393
459
|
instance.close();
|
|
394
460
|
}
|
|
395
461
|
};
|
|
396
|
-
SkyModalHostComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: SkyModalAdapterService }, { token: i0.Injector }, { token: i2$1.Router }, { token: i0.ChangeDetectorRef }, { token: SkyModalHostContext }], target: i0.ɵɵFactoryTarget.Component });
|
|
462
|
+
SkyModalHostComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: SkyModalAdapterService }, { token: i0.Injector }, { token: i2$1.Router }, { token: i0.ChangeDetectorRef }, { token: SkyModalHostContext }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
397
463
|
SkyModalHostComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyModalHostComponent, selector: "sky-modal-host", viewQueries: [{ propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-modal-host-backdrop\"\n [hidden]=\"!modalOpen\"\n [ngStyle]=\"{\n zIndex: backdropZIndex\n }\"\n></div>\n<div #target></div>\n", styles: [".sky-modal-host-backdrop{background-color:#00000080;position:fixed;top:0;left:0;bottom:0;right:0}\n"], directives: [{ type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], viewProviders: [SkyModalAdapterService] });
|
|
398
464
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostComponent, decorators: [{
|
|
399
465
|
type: Component,
|
|
400
466
|
args: [{ selector: 'sky-modal-host', viewProviders: [SkyModalAdapterService], template: "<div\n class=\"sky-modal-host-backdrop\"\n [hidden]=\"!modalOpen\"\n [ngStyle]=\"{\n zIndex: backdropZIndex\n }\"\n></div>\n<div #target></div>\n", styles: [".sky-modal-host-backdrop{background-color:#00000080;position:fixed;top:0;left:0;bottom:0;right:0}\n"] }]
|
|
401
|
-
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: SkyModalAdapterService }, { type: i0.Injector }, { type: i2$1.Router }, { type: i0.ChangeDetectorRef }, { type: SkyModalHostContext }]; }, propDecorators: { target: [{
|
|
467
|
+
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: SkyModalAdapterService }, { type: i0.Injector }, { type: i2$1.Router }, { type: i0.ChangeDetectorRef }, { type: SkyModalHostContext }, { type: i0.ElementRef }]; }, propDecorators: { target: [{
|
|
402
468
|
type: ViewChild,
|
|
403
469
|
args: ['target', {
|
|
404
470
|
read: ViewContainerRef,
|