@skyux/modals 5.7.2 → 6.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/documentation.json +4 -4
- package/esm2020/index.mjs +26 -0
- package/esm2020/lib/modules/confirm/confirm-button-action.mjs +2 -0
- package/esm2020/lib/modules/confirm/confirm-button-config.mjs +2 -0
- package/esm2020/lib/modules/confirm/confirm-button.mjs +2 -0
- package/esm2020/lib/modules/confirm/confirm-closed-event-args.mjs +2 -0
- package/esm2020/lib/modules/confirm/confirm-config.mjs +2 -0
- package/esm2020/lib/modules/confirm/confirm-instance.mjs +12 -0
- package/esm2020/lib/modules/confirm/confirm-modal-context.mjs +4 -0
- package/esm2020/lib/modules/confirm/confirm-type.mjs +25 -0
- package/esm2020/lib/modules/confirm/confirm.component.mjs +123 -0
- package/esm2020/lib/modules/confirm/confirm.module.mjs +34 -0
- package/esm2020/lib/modules/confirm/confirm.service.mjs +55 -0
- package/esm2020/lib/modules/modal/modal-adapter.service.mjs +47 -0
- package/esm2020/lib/modules/modal/modal-before-close-handler.mjs +7 -0
- package/esm2020/lib/modules/modal/modal-close-args.mjs +3 -0
- package/esm2020/lib/modules/modal/modal-component-adapter.service.mjs +98 -0
- package/esm2020/lib/modules/modal/modal-configuration.mjs +19 -0
- package/esm2020/lib/modules/modal/modal-content.component.mjs +14 -0
- package/esm2020/lib/modules/modal/modal-footer.component.mjs +14 -0
- package/esm2020/lib/modules/modal/modal-header.component.mjs +15 -0
- package/esm2020/lib/modules/modal/modal-host.component.mjs +96 -0
- package/esm2020/lib/modules/modal/modal-host.service.mjs +55 -0
- package/esm2020/lib/modules/modal/modal-instance.mjs +105 -0
- package/esm2020/lib/modules/modal/modal-scroll-shadow-event-args.mjs +2 -0
- package/esm2020/lib/modules/modal/modal-scroll-shadow.directive.mjs +122 -0
- package/esm2020/lib/modules/modal/modal-state-animation.mjs +8 -0
- package/esm2020/lib/modules/modal/modal.component.mjs +178 -0
- package/esm2020/lib/modules/modal/modal.interface.mjs +4 -0
- package/esm2020/lib/modules/modal/modal.module.mjs +63 -0
- package/esm2020/lib/modules/modal/modal.service.mjs +85 -0
- package/esm2020/lib/modules/shared/sky-modals-resources.module.mjs +54 -0
- package/esm2020/skyux-modals.mjs +5 -0
- package/esm2020/testing/modal-fixture.mjs +168 -0
- package/esm2020/testing/public-api.mjs +2 -0
- package/esm2020/testing/skyux-modals-testing.mjs +5 -0
- package/fesm2015/{skyux-modals-testing.js → skyux-modals-testing.mjs} +1 -1
- package/fesm2015/skyux-modals-testing.mjs.map +1 -0
- package/fesm2015/skyux-modals.mjs +1159 -0
- package/fesm2015/skyux-modals.mjs.map +1 -0
- package/{esm2015/testing/modal-fixture.js → fesm2020/skyux-modals-testing.mjs} +8 -2
- package/fesm2020/skyux-modals-testing.mjs.map +1 -0
- package/{fesm2015/skyux-modals.js → fesm2020/skyux-modals.mjs} +58 -88
- package/fesm2020/skyux-modals.mjs.map +1 -0
- package/package.json +39 -15
- package/testing/package.json +5 -5
- package/bundles/skyux-modals-testing.umd.js +0 -538
- package/bundles/skyux-modals.umd.js +0 -1356
- package/esm2015/index.js +0 -26
- package/esm2015/index.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm-button-action.js +0 -2
- package/esm2015/lib/modules/confirm/confirm-button-action.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm-button-config.js +0 -2
- package/esm2015/lib/modules/confirm/confirm-button-config.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm-button.js +0 -2
- package/esm2015/lib/modules/confirm/confirm-button.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm-closed-event-args.js +0 -2
- package/esm2015/lib/modules/confirm/confirm-closed-event-args.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm-config.js +0 -2
- package/esm2015/lib/modules/confirm/confirm-config.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm-instance.js +0 -12
- package/esm2015/lib/modules/confirm/confirm-instance.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm-modal-context.js +0 -4
- package/esm2015/lib/modules/confirm/confirm-modal-context.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm-type.js +0 -25
- package/esm2015/lib/modules/confirm/confirm-type.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm.component.js +0 -127
- package/esm2015/lib/modules/confirm/confirm.component.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm.module.js +0 -35
- package/esm2015/lib/modules/confirm/confirm.module.js.map +0 -1
- package/esm2015/lib/modules/confirm/confirm.service.js +0 -55
- package/esm2015/lib/modules/confirm/confirm.service.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-adapter.service.js +0 -47
- package/esm2015/lib/modules/modal/modal-adapter.service.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-before-close-handler.js +0 -7
- package/esm2015/lib/modules/modal/modal-before-close-handler.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-close-args.js +0 -3
- package/esm2015/lib/modules/modal/modal-close-args.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-component-adapter.service.js +0 -98
- package/esm2015/lib/modules/modal/modal-component-adapter.service.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-configuration.js +0 -19
- package/esm2015/lib/modules/modal/modal-configuration.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-content.component.js +0 -19
- package/esm2015/lib/modules/modal/modal-content.component.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-footer.component.js +0 -18
- package/esm2015/lib/modules/modal/modal-footer.component.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-header.component.js +0 -19
- package/esm2015/lib/modules/modal/modal-header.component.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-host.component.js +0 -101
- package/esm2015/lib/modules/modal/modal-host.component.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-host.service.js +0 -55
- package/esm2015/lib/modules/modal/modal-host.service.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-instance.js +0 -105
- package/esm2015/lib/modules/modal/modal-instance.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-scroll-shadow-event-args.js +0 -2
- package/esm2015/lib/modules/modal/modal-scroll-shadow-event-args.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-scroll-shadow.directive.js +0 -122
- package/esm2015/lib/modules/modal/modal-scroll-shadow.directive.js.map +0 -1
- package/esm2015/lib/modules/modal/modal-state-animation.js +0 -8
- package/esm2015/lib/modules/modal/modal-state-animation.js.map +0 -1
- package/esm2015/lib/modules/modal/modal.component.js +0 -184
- package/esm2015/lib/modules/modal/modal.component.js.map +0 -1
- package/esm2015/lib/modules/modal/modal.interface.js +0 -4
- package/esm2015/lib/modules/modal/modal.interface.js.map +0 -1
- package/esm2015/lib/modules/modal/modal.module.js +0 -64
- package/esm2015/lib/modules/modal/modal.module.js.map +0 -1
- package/esm2015/lib/modules/modal/modal.service.js +0 -85
- package/esm2015/lib/modules/modal/modal.service.js.map +0 -1
- package/esm2015/lib/modules/shared/sky-modals-resources.module.js +0 -54
- package/esm2015/lib/modules/shared/sky-modals-resources.module.js.map +0 -1
- package/esm2015/skyux-modals.js +0 -5
- package/esm2015/skyux-modals.js.map +0 -1
- package/esm2015/testing/modal-fixture.js.map +0 -1
- package/esm2015/testing/public-api.js +0 -2
- package/esm2015/testing/public-api.js.map +0 -1
- package/esm2015/testing/skyux-modals-testing.js +0 -5
- package/esm2015/testing/skyux-modals-testing.js.map +0 -1
- package/fesm2015/skyux-modals-testing.js.map +0 -1
- package/fesm2015/skyux-modals.js.map +0 -1
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Allows interaction with a SKY UX modal component.
|
|
3
|
+
*/
|
|
4
|
+
export class SkyModalFixture {
|
|
5
|
+
constructor(fixture, skyTestId) {
|
|
6
|
+
this.fixture = fixture;
|
|
7
|
+
this.modalElement = document.querySelector('sky-modal[data-sky-id="' + skyTestId + '"]');
|
|
8
|
+
if (!this.modalElement) {
|
|
9
|
+
throw new Error(`No element was found with a \`data-sky-id\` value of "${skyTestId}".`);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The modal component's ARIA describedby attribute.
|
|
14
|
+
*/
|
|
15
|
+
get ariaDescribedBy() {
|
|
16
|
+
const modalDialogElement = this.getModalDiaglogElement();
|
|
17
|
+
if (modalDialogElement) {
|
|
18
|
+
return modalDialogElement.getAttribute('aria-describedby') || undefined;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
throw new Error(`No modal exists.`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The modal component's ARIA labelledby attribute.
|
|
26
|
+
*/
|
|
27
|
+
get ariaLabelledBy() {
|
|
28
|
+
const modalDialogElement = this.getModalDiaglogElement();
|
|
29
|
+
if (modalDialogElement) {
|
|
30
|
+
return modalDialogElement.getAttribute('aria-labelledby') || undefined;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
throw new Error(`No modal exists.`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* The modal component's role attribute.
|
|
38
|
+
*/
|
|
39
|
+
get ariaRole() {
|
|
40
|
+
const modalDialogElement = this.getModalDiaglogElement();
|
|
41
|
+
if (modalDialogElement) {
|
|
42
|
+
return modalDialogElement.getAttribute('role') || undefined;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
throw new Error(`No modal exists.`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Whether or not the modal is a full page modal.
|
|
50
|
+
*/
|
|
51
|
+
get fullPage() {
|
|
52
|
+
const modalDivElement = this.getModalDiv();
|
|
53
|
+
if (modalDivElement) {
|
|
54
|
+
return modalDivElement.classList.contains('sky-modal-full-page');
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
throw new Error(`No modal exists.`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* The size of the modal.
|
|
62
|
+
*/
|
|
63
|
+
get size() {
|
|
64
|
+
const modalDivElement = this.getModalDiv();
|
|
65
|
+
if (modalDivElement) {
|
|
66
|
+
const possibleSizes = ['small', 'medium', 'large'];
|
|
67
|
+
for (let size of possibleSizes) {
|
|
68
|
+
if (modalDivElement.classList.contains('sky-modal-' + size)) {
|
|
69
|
+
return size;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
throw new Error(`No modal exists.`);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Whether or not the modal is set up for tiled content.
|
|
79
|
+
*/
|
|
80
|
+
get tiledBody() {
|
|
81
|
+
const modalDivElement = this.getModalDiv();
|
|
82
|
+
if (modalDivElement) {
|
|
83
|
+
return modalDivElement.classList.contains('sky-modal-tiled');
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
throw new Error(`No modal exists.`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Clicks the modal header's "close" button.
|
|
91
|
+
*/
|
|
92
|
+
clickHeaderCloseButton() {
|
|
93
|
+
const closeButton = this.modalElement.querySelector('.sky-modal .sky-modal-btn-close');
|
|
94
|
+
if (closeButton) {
|
|
95
|
+
closeButton.click();
|
|
96
|
+
this.fixture.detectChanges();
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
throw new Error(`No header close button exists.`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Clicks the modal header's "help" button.
|
|
104
|
+
*/
|
|
105
|
+
clickHelpButton() {
|
|
106
|
+
const helpButton = this.modalElement.querySelector('.sky-modal .sky-modal-header-buttons button[name="help-button"]');
|
|
107
|
+
if (helpButton) {
|
|
108
|
+
helpButton.click();
|
|
109
|
+
this.fixture.detectChanges();
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
throw new Error(`No help button exists.`);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Returns the main modal element.
|
|
117
|
+
*/
|
|
118
|
+
getModalDiv() {
|
|
119
|
+
if (this.modalElement) {
|
|
120
|
+
return this.modalElement.querySelector('.sky-modal');
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
throw new Error(`No modal exists.`);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Returns the modal's content element.
|
|
128
|
+
*/
|
|
129
|
+
getModalContentEl() {
|
|
130
|
+
if (this.modalElement) {
|
|
131
|
+
return this.modalElement.querySelector('.sky-modal-content');
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
throw new Error(`No modal exists.`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Returns the modal's footer element.
|
|
139
|
+
*/
|
|
140
|
+
getModalFooterEl() {
|
|
141
|
+
if (this.modalElement) {
|
|
142
|
+
return this.modalElement.querySelector('.sky-modal-footer');
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
throw new Error(`No modal exists.`);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Returns the modal's header element.
|
|
150
|
+
*/
|
|
151
|
+
getModalHeaderEl() {
|
|
152
|
+
if (this.modalElement) {
|
|
153
|
+
return this.modalElement.querySelector('.sky-modal-header');
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
throw new Error(`No modal exists.`);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
getModalDiaglogElement() {
|
|
160
|
+
if (this.modalElement) {
|
|
161
|
+
return this.modalElement.querySelector('.sky-modal-dialog');
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
throw new Error(`No modal exists.`);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtZml4dHVyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9tb2RhbHMvdGVzdGluZy9zcmMvbW9kYWwtZml4dHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBRzFCLFlBQW9CLE9BQThCLEVBQUUsU0FBaUI7UUFBakQsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFDaEQsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUN4Qyx5QkFBeUIsR0FBRyxTQUFTLEdBQUcsSUFBSSxDQUM3QyxDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FDYix5REFBeUQsU0FBUyxJQUFJLENBQ3ZFLENBQUM7U0FDSDtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsZUFBZTtRQUN4QixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ3pELElBQUksa0JBQWtCLEVBQUU7WUFDdEIsT0FBTyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsSUFBSSxTQUFTLENBQUM7U0FDekU7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsY0FBYztRQUN2QixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ3pELElBQUksa0JBQWtCLEVBQUU7WUFDdEIsT0FBTyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsSUFBSSxTQUFTLENBQUM7U0FDeEU7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7SUFFRDs7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QixDQUFDLENBQUM7U0FDOUQ7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLGdCQUFnQjtRQUNyQixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1NBQzdEO2FBQU07WUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDckM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxnQkFBZ0I7UUFDckIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQztTQUM3RDthQUFNO1lBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ3JDO0lBQ0gsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1NBQzdEO2FBQU07WUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDckM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRGaXh0dXJlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcblxuLyoqXG4gKiBBbGxvd3MgaW50ZXJhY3Rpb24gd2l0aCBhIFNLWSBVWCBtb2RhbCBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lNb2RhbEZpeHR1cmUge1xuICBwcml2YXRlIG1vZGFsRWxlbWVudDogSFRNTEVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmaXh0dXJlOiBDb21wb25lbnRGaXh0dXJlPGFueT4sIHNreVRlc3RJZDogc3RyaW5nKSB7XG4gICAgdGhpcy5tb2RhbEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgJ3NreS1tb2RhbFtkYXRhLXNreS1pZD1cIicgKyBza3lUZXN0SWQgKyAnXCJdJ1xuICAgICk7XG5cbiAgICBpZiAoIXRoaXMubW9kYWxFbGVtZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBObyBlbGVtZW50IHdhcyBmb3VuZCB3aXRoIGEgXFxgZGF0YS1za3ktaWRcXGAgdmFsdWUgb2YgXCIke3NreVRlc3RJZH1cIi5gXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbW9kYWwgY29tcG9uZW50J3MgQVJJQSBkZXNjcmliZWRieSBhdHRyaWJ1dGUuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGFyaWFEZXNjcmliZWRCeSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IG1vZGFsRGlhbG9nRWxlbWVudCA9IHRoaXMuZ2V0TW9kYWxEaWFnbG9nRWxlbWVudCgpO1xuICAgIGlmIChtb2RhbERpYWxvZ0VsZW1lbnQpIHtcbiAgICAgIHJldHVybiBtb2RhbERpYWxvZ0VsZW1lbnQuZ2V0QXR0cmlidXRlKCdhcmlhLWRlc2NyaWJlZGJ5JykgfHwgdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vZGFsIGV4aXN0cy5gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVGhlIG1vZGFsIGNvbXBvbmVudCdzIEFSSUEgbGFiZWxsZWRieSBhdHRyaWJ1dGUuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGFyaWFMYWJlbGxlZEJ5KCk6IHN0cmluZyB7XG4gICAgY29uc3QgbW9kYWxEaWFsb2dFbGVtZW50ID0gdGhpcy5nZXRNb2RhbERpYWdsb2dFbGVtZW50KCk7XG4gICAgaWYgKG1vZGFsRGlhbG9nRWxlbWVudCkge1xuICAgICAgcmV0dXJuIG1vZGFsRGlhbG9nRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWxsZWRieScpIHx8IHVuZGVmaW5lZDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb2RhbCBleGlzdHMuYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBtb2RhbCBjb21wb25lbnQncyByb2xlIGF0dHJpYnV0ZS5cbiAgICovXG4gIHB1YmxpYyBnZXQgYXJpYVJvbGUoKTogc3RyaW5nIHtcbiAgICBjb25zdCBtb2RhbERpYWxvZ0VsZW1lbnQgPSB0aGlzLmdldE1vZGFsRGlhZ2xvZ0VsZW1lbnQoKTtcbiAgICBpZiAobW9kYWxEaWFsb2dFbGVtZW50KSB7XG4gICAgICByZXR1cm4gbW9kYWxEaWFsb2dFbGVtZW50LmdldEF0dHJpYnV0ZSgncm9sZScpIHx8IHVuZGVmaW5lZDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb2RhbCBleGlzdHMuYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoZSBtb2RhbCBpcyBhIGZ1bGwgcGFnZSBtb2RhbC5cbiAgICovXG4gIHB1YmxpYyBnZXQgZnVsbFBhZ2UoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbW9kYWxEaXZFbGVtZW50ID0gdGhpcy5nZXRNb2RhbERpdigpO1xuICAgIGlmIChtb2RhbERpdkVsZW1lbnQpIHtcbiAgICAgIHJldHVybiBtb2RhbERpdkVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdza3ktbW9kYWwtZnVsbC1wYWdlJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9kYWwgZXhpc3RzLmApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgbW9kYWwuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHNpemUoKTogc3RyaW5nIHtcbiAgICBjb25zdCBtb2RhbERpdkVsZW1lbnQgPSB0aGlzLmdldE1vZGFsRGl2KCk7XG5cbiAgICBpZiAobW9kYWxEaXZFbGVtZW50KSB7XG4gICAgICBjb25zdCBwb3NzaWJsZVNpemVzID0gWydzbWFsbCcsICdtZWRpdW0nLCAnbGFyZ2UnXTtcblxuICAgICAgZm9yIChsZXQgc2l6ZSBvZiBwb3NzaWJsZVNpemVzKSB7XG4gICAgICAgIGlmIChtb2RhbERpdkVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdza3ktbW9kYWwtJyArIHNpemUpKSB7XG4gICAgICAgICAgcmV0dXJuIHNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb2RhbCBleGlzdHMuYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoZSBtb2RhbCBpcyBzZXQgdXAgZm9yIHRpbGVkIGNvbnRlbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHRpbGVkQm9keSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBtb2RhbERpdkVsZW1lbnQgPSB0aGlzLmdldE1vZGFsRGl2KCk7XG4gICAgaWYgKG1vZGFsRGl2RWxlbWVudCkge1xuICAgICAgcmV0dXJuIG1vZGFsRGl2RWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ3NreS1tb2RhbC10aWxlZCcpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vZGFsIGV4aXN0cy5gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIHRoZSBtb2RhbCBoZWFkZXIncyBcImNsb3NlXCIgYnV0dG9uLlxuICAgKi9cbiAgcHVibGljIGNsaWNrSGVhZGVyQ2xvc2VCdXR0b24oKTogdm9pZCB7XG4gICAgY29uc3QgY2xvc2VCdXR0b246IEhUTUxFbGVtZW50ID0gdGhpcy5tb2RhbEVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICcuc2t5LW1vZGFsIC5za3ktbW9kYWwtYnRuLWNsb3NlJ1xuICAgICk7XG5cbiAgICBpZiAoY2xvc2VCdXR0b24pIHtcbiAgICAgIGNsb3NlQnV0dG9uLmNsaWNrKCk7XG4gICAgICB0aGlzLmZpeHR1cmUuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGhlYWRlciBjbG9zZSBidXR0b24gZXhpc3RzLmApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIG1vZGFsIGhlYWRlcidzIFwiaGVscFwiIGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBjbGlja0hlbHBCdXR0b24oKTogdm9pZCB7XG4gICAgY29uc3QgaGVscEJ1dHRvbjogSFRNTEVsZW1lbnQgPSB0aGlzLm1vZGFsRWxlbWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgJy5za3ktbW9kYWwgLnNreS1tb2RhbC1oZWFkZXItYnV0dG9ucyBidXR0b25bbmFtZT1cImhlbHAtYnV0dG9uXCJdJ1xuICAgICk7XG5cbiAgICBpZiAoaGVscEJ1dHRvbikge1xuICAgICAgaGVscEJ1dHRvbi5jbGljaygpO1xuICAgICAgdGhpcy5maXh0dXJlLmRldGVjdENoYW5nZXMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBoZWxwIGJ1dHRvbiBleGlzdHMuYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIG1haW4gbW9kYWwgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBnZXRNb2RhbERpdigpOiBhbnkge1xuICAgIGlmICh0aGlzLm1vZGFsRWxlbWVudCkge1xuICAgICAgcmV0dXJuIHRoaXMubW9kYWxFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5za3ktbW9kYWwnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb2RhbCBleGlzdHMuYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIG1vZGFsJ3MgY29udGVudCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldE1vZGFsQ29udGVudEVsKCk6IGFueSB7XG4gICAgaWYgKHRoaXMubW9kYWxFbGVtZW50KSB7XG4gICAgICByZXR1cm4gdGhpcy5tb2RhbEVsZW1lbnQucXVlcnlTZWxlY3RvcignLnNreS1tb2RhbC1jb250ZW50Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9kYWwgZXhpc3RzLmApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBtb2RhbCdzIGZvb3RlciBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldE1vZGFsRm9vdGVyRWwoKTogYW55IHtcbiAgICBpZiAodGhpcy5tb2RhbEVsZW1lbnQpIHtcbiAgICAgIHJldHVybiB0aGlzLm1vZGFsRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuc2t5LW1vZGFsLWZvb3RlcicpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vZGFsIGV4aXN0cy5gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbW9kYWwncyBoZWFkZXIgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBnZXRNb2RhbEhlYWRlckVsKCk6IGFueSB7XG4gICAgaWYgKHRoaXMubW9kYWxFbGVtZW50KSB7XG4gICAgICByZXR1cm4gdGhpcy5tb2RhbEVsZW1lbnQucXVlcnlTZWxlY3RvcignLnNreS1tb2RhbC1oZWFkZXInKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb2RhbCBleGlzdHMuYCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb2RhbERpYWdsb2dFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICBpZiAodGhpcy5tb2RhbEVsZW1lbnQpIHtcbiAgICAgIHJldHVybiB0aGlzLm1vZGFsRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuc2t5LW1vZGFsLWRpYWxvZycpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vZGFsIGV4aXN0cy5gKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './modal-fixture';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9tb2RhbHMvdGVzdGluZy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tb2RhbC1maXh0dXJlJztcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtbW9kYWxzLXRlc3RpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3Rlc3Rpbmcvc3JjL3NreXV4LW1vZGFscy10ZXN0aW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skyux-modals-testing.mjs","sources":["../../../../../libs/components/modals/testing/src/modal-fixture.ts","../../../../../libs/components/modals/testing/src/skyux-modals-testing.ts"],"sourcesContent":["import { ComponentFixture } from '@angular/core/testing';\n\n/**\n * Allows interaction with a SKY UX modal component.\n */\nexport class SkyModalFixture {\n private modalElement: HTMLElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.modalElement = document.querySelector(\n 'sky-modal[data-sky-id=\"' + skyTestId + '\"]'\n );\n\n if (!this.modalElement) {\n throw new Error(\n `No element was found with a \\`data-sky-id\\` value of \"${skyTestId}\".`\n );\n }\n }\n\n /**\n * The modal component's ARIA describedby attribute.\n */\n public get ariaDescribedBy(): string {\n const modalDialogElement = this.getModalDiaglogElement();\n if (modalDialogElement) {\n return modalDialogElement.getAttribute('aria-describedby') || undefined;\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * The modal component's ARIA labelledby attribute.\n */\n public get ariaLabelledBy(): string {\n const modalDialogElement = this.getModalDiaglogElement();\n if (modalDialogElement) {\n return modalDialogElement.getAttribute('aria-labelledby') || undefined;\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * The modal component's role attribute.\n */\n public get ariaRole(): string {\n const modalDialogElement = this.getModalDiaglogElement();\n if (modalDialogElement) {\n return modalDialogElement.getAttribute('role') || undefined;\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * Whether or not the modal is a full page modal.\n */\n public get fullPage(): boolean {\n const modalDivElement = this.getModalDiv();\n if (modalDivElement) {\n return modalDivElement.classList.contains('sky-modal-full-page');\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * The size of the modal.\n */\n public get size(): string {\n const modalDivElement = this.getModalDiv();\n\n if (modalDivElement) {\n const possibleSizes = ['small', 'medium', 'large'];\n\n for (let size of possibleSizes) {\n if (modalDivElement.classList.contains('sky-modal-' + size)) {\n return size;\n }\n }\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * Whether or not the modal is set up for tiled content.\n */\n public get tiledBody(): boolean {\n const modalDivElement = this.getModalDiv();\n if (modalDivElement) {\n return modalDivElement.classList.contains('sky-modal-tiled');\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * Clicks the modal header's \"close\" button.\n */\n public clickHeaderCloseButton(): void {\n const closeButton: HTMLElement = this.modalElement.querySelector(\n '.sky-modal .sky-modal-btn-close'\n );\n\n if (closeButton) {\n closeButton.click();\n this.fixture.detectChanges();\n } else {\n throw new Error(`No header close button exists.`);\n }\n }\n\n /**\n * Clicks the modal header's \"help\" button.\n */\n public clickHelpButton(): void {\n const helpButton: HTMLElement = this.modalElement.querySelector(\n '.sky-modal .sky-modal-header-buttons button[name=\"help-button\"]'\n );\n\n if (helpButton) {\n helpButton.click();\n this.fixture.detectChanges();\n } else {\n throw new Error(`No help button exists.`);\n }\n }\n\n /**\n * Returns the main modal element.\n */\n public getModalDiv(): any {\n if (this.modalElement) {\n return this.modalElement.querySelector('.sky-modal');\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * Returns the modal's content element.\n */\n public getModalContentEl(): any {\n if (this.modalElement) {\n return this.modalElement.querySelector('.sky-modal-content');\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * Returns the modal's footer element.\n */\n public getModalFooterEl(): any {\n if (this.modalElement) {\n return this.modalElement.querySelector('.sky-modal-footer');\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n /**\n * Returns the modal's header element.\n */\n public getModalHeaderEl(): any {\n if (this.modalElement) {\n return this.modalElement.querySelector('.sky-modal-header');\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n\n private getModalDiaglogElement(): HTMLElement {\n if (this.modalElement) {\n return this.modalElement.querySelector('.sky-modal-dialog');\n } else {\n throw new Error(`No modal exists.`);\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|