@skyux/modals 11.22.0 → 11.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/documentation.json +492 -417
- package/esm2022/testing/legacy/modal-fixture.mjs +143 -0
- package/esm2022/testing/modules/confirm/confirm-button-harness-filters.mjs +2 -0
- package/esm2022/testing/modules/confirm/confirm-button-harness.mjs +52 -0
- package/esm2022/testing/modules/confirm/confirm-harness.mjs +90 -0
- package/esm2022/testing/modules/confirm/confirm-testing.controller.mjs +7 -0
- package/esm2022/testing/{confirm → modules/confirm}/confirm-testing.module.mjs +1 -1
- package/esm2022/testing/modules/confirm/confirm-testing.service.mjs +101 -0
- package/esm2022/testing/modules/confirm/provide-confirm-testing.mjs +20 -0
- package/esm2022/testing/modules/modal/controller/modal-testing.controller.mjs +8 -0
- package/esm2022/testing/{modal → modules/modal}/controller/modal-testing.module.mjs +1 -1
- package/esm2022/testing/modules/modal/controller/modal-testing.service.mjs +60 -0
- package/esm2022/testing/modules/modal/controller/provide-modal-testing.mjs +20 -0
- package/esm2022/testing/modules/modal/modal-harness-filters.mjs +2 -0
- package/esm2022/testing/modules/modal/modal-harness.mjs +110 -0
- package/esm2022/testing/public-api.mjs +9 -9
- package/fesm2022/skyux-modals-testing.mjs +22 -16
- package/fesm2022/skyux-modals-testing.mjs.map +1 -1
- package/package.json +7 -7
- package/testing/public-api.d.ts +10 -10
- package/esm2022/testing/confirm/confirm-button-harness-filters.mjs +0 -2
- package/esm2022/testing/confirm/confirm-button-harness.mjs +0 -46
- package/esm2022/testing/confirm/confirm-harness.mjs +0 -90
- package/esm2022/testing/confirm/confirm-testing.controller.mjs +0 -7
- package/esm2022/testing/confirm/confirm-testing.service.mjs +0 -101
- package/esm2022/testing/confirm/provide-confirm-testing.mjs +0 -20
- package/esm2022/testing/modal/controller/modal-testing.controller.mjs +0 -8
- package/esm2022/testing/modal/controller/modal-testing.service.mjs +0 -60
- package/esm2022/testing/modal/controller/provide-modal-testing.mjs +0 -20
- package/esm2022/testing/modal/modal-harness-filters.mjs +0 -2
- package/esm2022/testing/modal/modal-harness.mjs +0 -110
- package/esm2022/testing/modal-fixture.mjs +0 -143
- /package/testing/{modal-fixture.d.ts → legacy/modal-fixture.d.ts} +0 -0
- /package/testing/{confirm → modules/confirm}/confirm-button-harness-filters.d.ts +0 -0
- /package/testing/{confirm → modules/confirm}/confirm-button-harness.d.ts +0 -0
- /package/testing/{confirm → modules/confirm}/confirm-harness.d.ts +0 -0
- /package/testing/{confirm → modules/confirm}/confirm-testing.controller.d.ts +0 -0
- /package/testing/{confirm → modules/confirm}/confirm-testing.module.d.ts +0 -0
- /package/testing/{confirm → modules/confirm}/confirm-testing.service.d.ts +0 -0
- /package/testing/{confirm → modules/confirm}/provide-confirm-testing.d.ts +0 -0
- /package/testing/{modal → modules/modal}/controller/modal-testing.controller.d.ts +0 -0
- /package/testing/{modal → modules/modal}/controller/modal-testing.module.d.ts +0 -0
- /package/testing/{modal → modules/modal}/controller/modal-testing.service.d.ts +0 -0
- /package/testing/{modal → modules/modal}/controller/provide-modal-testing.d.ts +0 -0
- /package/testing/{modal → modules/modal}/modal-harness-filters.d.ts +0 -0
- /package/testing/{modal → modules/modal}/modal-harness.d.ts +0 -0
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { SkyComponentHarness } from '@skyux/core/testing';
|
|
2
|
-
import { SkyConfirmType } from '@skyux/modals';
|
|
3
|
-
import { SkyConfirmButtonHarness } from './confirm-button-harness';
|
|
4
|
-
/**
|
|
5
|
-
* Harness for interacting with a confirm component in tests.
|
|
6
|
-
*/
|
|
7
|
-
export class SkyConfirmHarness extends SkyComponentHarness {
|
|
8
|
-
static { this.hostSelector = 'sky-confirm'; }
|
|
9
|
-
#getBodyEl = this.locatorForOptional('.sky-confirm-body');
|
|
10
|
-
#getButtons = this.locatorForAll(SkyConfirmButtonHarness);
|
|
11
|
-
#getConfirmEl = this.locatorFor('.sky-confirm');
|
|
12
|
-
#getMessageEl = this.locatorFor('.sky-confirm-message');
|
|
13
|
-
/**
|
|
14
|
-
* Clicks a confirm button.
|
|
15
|
-
*/
|
|
16
|
-
async clickCustomButton(filters) {
|
|
17
|
-
const buttons = await this.getCustomButtons(filters);
|
|
18
|
-
if (buttons.length > 1) {
|
|
19
|
-
if (filters.text instanceof RegExp) {
|
|
20
|
-
filters.text = filters.text.toString();
|
|
21
|
-
}
|
|
22
|
-
throw new Error(`More than one button matches the filter(s): ${JSON.stringify(filters)}.`);
|
|
23
|
-
}
|
|
24
|
-
await buttons[0].click();
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Clicks a confirm button.
|
|
28
|
-
*/
|
|
29
|
-
async clickOkButton() {
|
|
30
|
-
const type = await this.getType();
|
|
31
|
-
if (type === SkyConfirmType.Custom) {
|
|
32
|
-
throw new Error('Cannot click OK button on a confirm of type custom.');
|
|
33
|
-
}
|
|
34
|
-
const buttons = await this.#getButtons();
|
|
35
|
-
await buttons[0].click();
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Gets the body of the confirm component.
|
|
39
|
-
*/
|
|
40
|
-
async getBodyText() {
|
|
41
|
-
return (await this.#getBodyEl())?.text();
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Gets the confirm component's custom buttons.
|
|
45
|
-
*/
|
|
46
|
-
async getCustomButtons(filters) {
|
|
47
|
-
const confirmType = await this.getType();
|
|
48
|
-
if (confirmType === SkyConfirmType.OK) {
|
|
49
|
-
throw new Error('Cannot get custom buttons for confirm of type OK.');
|
|
50
|
-
}
|
|
51
|
-
const harnesses = await this.#queryHarnesses(SkyConfirmButtonHarness.with(filters || {}));
|
|
52
|
-
if (filters && harnesses.length === 0) {
|
|
53
|
-
// Stringify the regular expression so that it's readable in the console log.
|
|
54
|
-
if (filters.text instanceof RegExp) {
|
|
55
|
-
filters.text = filters.text.toString();
|
|
56
|
-
}
|
|
57
|
-
throw new Error(`Could not find buttons matching filter(s): ${JSON.stringify(filters)}.`);
|
|
58
|
-
}
|
|
59
|
-
return harnesses;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Gets the message of the confirm component.
|
|
63
|
-
*/
|
|
64
|
-
async getMessageText() {
|
|
65
|
-
return (await this.#getMessageEl()).text();
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Gets the type of the confirm component.
|
|
69
|
-
*/
|
|
70
|
-
async getType() {
|
|
71
|
-
const confirmEl = await this.#getConfirmEl();
|
|
72
|
-
if (await confirmEl.hasClass('sky-confirm-type-ok')) {
|
|
73
|
-
return SkyConfirmType.OK;
|
|
74
|
-
}
|
|
75
|
-
return SkyConfirmType.Custom;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Whether the whitespace is preserved on the confirm component.
|
|
79
|
-
*/
|
|
80
|
-
async isWhiteSpacePreserved() {
|
|
81
|
-
return (await this.#getMessageEl()).hasClass('sky-confirm-preserve-white-space');
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Returns child harnesses.
|
|
85
|
-
*/
|
|
86
|
-
async #queryHarnesses(harness) {
|
|
87
|
-
return this.locatorForAll(harness)();
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy90ZXN0aW5nL3NyYy9jb25maXJtL2NvbmZpcm0taGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR25FOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGlCQUFrQixTQUFRLG1CQUFtQjthQUMxQyxpQkFBWSxHQUFHLGFBQWEsQ0FBQztJQUUzQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDMUQsV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUMxRCxhQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNoRCxhQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBRXhEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGlCQUFpQixDQUM1QixPQUF1QztRQUV2QyxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVyRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdkIsSUFBSSxPQUFPLENBQUMsSUFBSSxZQUFZLE1BQU0sRUFBRSxDQUFDO2dCQUNuQyxPQUFPLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDekMsQ0FBQztZQUNELE1BQU0sSUFBSSxLQUFLLENBQ2IsK0NBQStDLElBQUksQ0FBQyxTQUFTLENBQzNELE9BQU8sQ0FDUixHQUFHLENBQ0wsQ0FBQztRQUNKLENBQUM7UUFDRCxNQUFNLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsYUFBYTtRQUN4QixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVsQyxJQUFJLElBQUksS0FBSyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO1FBQ3pFLENBQUM7UUFDRCxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN6QyxNQUFNLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsV0FBVztRQUN0QixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZ0JBQWdCLENBQzNCLE9BQXdDO1FBRXhDLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRXpDLElBQUksV0FBVyxLQUFLLGNBQWMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7UUFDdkUsQ0FBQztRQUVELE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FDMUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FDNUMsQ0FBQztRQUVGLElBQUksT0FBTyxJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdEMsNkVBQTZFO1lBQzdFLElBQUksT0FBTyxDQUFDLElBQUksWUFBWSxNQUFNLEVBQUUsQ0FBQztnQkFDbkMsT0FBTyxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLENBQUM7WUFFRCxNQUFNLElBQUksS0FBSyxDQUNiLDhDQUE4QyxJQUFJLENBQUMsU0FBUyxDQUMxRCxPQUFPLENBQ1IsR0FBRyxDQUNMLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGNBQWM7UUFDekIsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE9BQU87UUFDbEIsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0MsSUFBSSxNQUFNLFNBQVMsQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsRUFBRSxDQUFDO1lBQ3BELE9BQU8sY0FBYyxDQUFDLEVBQUUsQ0FBQztRQUMzQixDQUFDO1FBRUQsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxxQkFBcUI7UUFDaEMsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUMxQyxrQ0FBa0MsQ0FDbkMsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxlQUFlLENBQ25CLE9BQXdCO1FBRXhCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzLCBIYXJuZXNzUXVlcnkgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQgeyBTa3lDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5pbXBvcnQgeyBTa3lDb25maXJtVHlwZSB9IGZyb20gJ0Bza3l1eC9tb2RhbHMnO1xuXG5pbXBvcnQgeyBTa3lDb25maXJtQnV0dG9uSGFybmVzcyB9IGZyb20gJy4vY29uZmlybS1idXR0b24taGFybmVzcyc7XG5pbXBvcnQgeyBTa3lDb25maXJtQnV0dG9uSGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL2NvbmZpcm0tYnV0dG9uLWhhcm5lc3MtZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhIGNvbmZpcm0gY29tcG9uZW50IGluIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgU2t5Q29uZmlybUhhcm5lc3MgZXh0ZW5kcyBTa3lDb21wb25lbnRIYXJuZXNzIHtcbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnc2t5LWNvbmZpcm0nO1xuXG4gICNnZXRCb2R5RWwgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbCgnLnNreS1jb25maXJtLWJvZHknKTtcbiAgI2dldEJ1dHRvbnMgPSB0aGlzLmxvY2F0b3JGb3JBbGwoU2t5Q29uZmlybUJ1dHRvbkhhcm5lc3MpO1xuICAjZ2V0Q29uZmlybUVsID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWNvbmZpcm0nKTtcbiAgI2dldE1lc3NhZ2VFbCA9IHRoaXMubG9jYXRvckZvcignLnNreS1jb25maXJtLW1lc3NhZ2UnKTtcblxuICAvKipcbiAgICogQ2xpY2tzIGEgY29uZmlybSBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tDdXN0b21CdXR0b24oXG4gICAgZmlsdGVyczogU2t5Q29uZmlybUJ1dHRvbkhhcm5lc3NGaWx0ZXJzLFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBidXR0b25zID0gYXdhaXQgdGhpcy5nZXRDdXN0b21CdXR0b25zKGZpbHRlcnMpO1xuXG4gICAgaWYgKGJ1dHRvbnMubGVuZ3RoID4gMSkge1xuICAgICAgaWYgKGZpbHRlcnMudGV4dCBpbnN0YW5jZW9mIFJlZ0V4cCkge1xuICAgICAgICBmaWx0ZXJzLnRleHQgPSBmaWx0ZXJzLnRleHQudG9TdHJpbmcoKTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYE1vcmUgdGhhbiBvbmUgYnV0dG9uIG1hdGNoZXMgdGhlIGZpbHRlcihzKTogJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICBmaWx0ZXJzLFxuICAgICAgICApfS5gLFxuICAgICAgKTtcbiAgICB9XG4gICAgYXdhaXQgYnV0dG9uc1swXS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyBhIGNvbmZpcm0gYnV0dG9uLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrT2tCdXR0b24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgdHlwZSA9IGF3YWl0IHRoaXMuZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHR5cGUgPT09IFNreUNvbmZpcm1UeXBlLkN1c3RvbSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgY2xpY2sgT0sgYnV0dG9uIG9uIGEgY29uZmlybSBvZiB0eXBlIGN1c3RvbS4nKTtcbiAgICB9XG4gICAgY29uc3QgYnV0dG9ucyA9IGF3YWl0IHRoaXMuI2dldEJ1dHRvbnMoKTtcbiAgICBhd2FpdCBidXR0b25zWzBdLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgYm9keSBvZiB0aGUgY29uZmlybSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0Qm9keVRleHQoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldEJvZHlFbCgpKT8udGV4dCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGNvbmZpcm0gY29tcG9uZW50J3MgY3VzdG9tIGJ1dHRvbnMuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0Q3VzdG9tQnV0dG9ucyhcbiAgICBmaWx0ZXJzPzogU2t5Q29uZmlybUJ1dHRvbkhhcm5lc3NGaWx0ZXJzLFxuICApOiBQcm9taXNlPFNreUNvbmZpcm1CdXR0b25IYXJuZXNzW10+IHtcbiAgICBjb25zdCBjb25maXJtVHlwZSA9IGF3YWl0IHRoaXMuZ2V0VHlwZSgpO1xuXG4gICAgaWYgKGNvbmZpcm1UeXBlID09PSBTa3lDb25maXJtVHlwZS5PSykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZ2V0IGN1c3RvbSBidXR0b25zIGZvciBjb25maXJtIG9mIHR5cGUgT0suJyk7XG4gICAgfVxuXG4gICAgY29uc3QgaGFybmVzc2VzID0gYXdhaXQgdGhpcy4jcXVlcnlIYXJuZXNzZXMoXG4gICAgICBTa3lDb25maXJtQnV0dG9uSGFybmVzcy53aXRoKGZpbHRlcnMgfHwge30pLFxuICAgICk7XG5cbiAgICBpZiAoZmlsdGVycyAmJiBoYXJuZXNzZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAvLyBTdHJpbmdpZnkgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiBzbyB0aGF0IGl0J3MgcmVhZGFibGUgaW4gdGhlIGNvbnNvbGUgbG9nLlxuICAgICAgaWYgKGZpbHRlcnMudGV4dCBpbnN0YW5jZW9mIFJlZ0V4cCkge1xuICAgICAgICBmaWx0ZXJzLnRleHQgPSBmaWx0ZXJzLnRleHQudG9TdHJpbmcoKTtcbiAgICAgIH1cblxuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgQ291bGQgbm90IGZpbmQgYnV0dG9ucyBtYXRjaGluZyBmaWx0ZXIocyk6ICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgZmlsdGVycyxcbiAgICAgICAgKX0uYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGhhcm5lc3NlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBtZXNzYWdlIG9mIHRoZSBjb25maXJtIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRNZXNzYWdlVGV4dCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0TWVzc2FnZUVsKCkpLnRleHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB0eXBlIG9mIHRoZSBjb25maXJtIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRUeXBlKCk6IFByb21pc2U8U2t5Q29uZmlybVR5cGU+IHtcbiAgICBjb25zdCBjb25maXJtRWwgPSBhd2FpdCB0aGlzLiNnZXRDb25maXJtRWwoKTtcbiAgICBpZiAoYXdhaXQgY29uZmlybUVsLmhhc0NsYXNzKCdza3ktY29uZmlybS10eXBlLW9rJykpIHtcbiAgICAgIHJldHVybiBTa3lDb25maXJtVHlwZS5PSztcbiAgICB9XG5cbiAgICByZXR1cm4gU2t5Q29uZmlybVR5cGUuQ3VzdG9tO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHdoaXRlc3BhY2UgaXMgcHJlc2VydmVkIG9uIHRoZSBjb25maXJtIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc1doaXRlU3BhY2VQcmVzZXJ2ZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRNZXNzYWdlRWwoKSkuaGFzQ2xhc3MoXG4gICAgICAnc2t5LWNvbmZpcm0tcHJlc2VydmUtd2hpdGUtc3BhY2UnLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBjaGlsZCBoYXJuZXNzZXMuXG4gICAqL1xuICBhc3luYyAjcXVlcnlIYXJuZXNzZXM8VCBleHRlbmRzIENvbXBvbmVudEhhcm5lc3M+KFxuICAgIGhhcm5lc3M6IEhhcm5lc3NRdWVyeTxUPixcbiAgKTogUHJvbWlzZTxUW10+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhdG9yRm9yQWxsKGhhcm5lc3MpKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A controller to be injected into tests, which mocks the confirm service
|
|
3
|
-
* and handles interactions with confirm dialogs.
|
|
4
|
-
*/
|
|
5
|
-
export class SkyConfirmTestingController {
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS10ZXN0aW5nLmNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3Rlc3Rpbmcvc3JjL2NvbmZpcm0vY29uZmlybS10ZXN0aW5nLmNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7OztHQUdHO0FBQ0gsTUFBTSxPQUFnQiwyQkFBMkI7Q0FzQmhEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5Q29uZmlybUNsb3NlRXZlbnRBcmdzLCBTa3lDb25maXJtQ29uZmlnIH0gZnJvbSAnQHNreXV4L21vZGFscyc7XG5cbi8qKlxuICogQSBjb250cm9sbGVyIHRvIGJlIGluamVjdGVkIGludG8gdGVzdHMsIHdoaWNoIG1vY2tzIHRoZSBjb25maXJtIHNlcnZpY2VcbiAqIGFuZCBoYW5kbGVzIGludGVyYWN0aW9ucyB3aXRoIGNvbmZpcm0gZGlhbG9ncy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNreUNvbmZpcm1UZXN0aW5nQ29udHJvbGxlciB7XG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIGNvbmZpcm0gZGlhbG9nIHdpdGggdGhlIFwiY2FuY2VsXCIgYWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGNhbmNlbCgpOiB2b2lkO1xuICAvKipcbiAgICogVGhyb3dzIGlmIGEgY29uZmlybSBkaWFsb2cgaXMgb3Blbi5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBleHBlY3ROb25lKCk6IHZvaWQ7XG4gIC8qKlxuICAgKiBUaHJvd3MgaWYgdGhlIG9wZW4gY29uZmlybSBkaWFsb2cgZG9lcyBub3QgbWF0Y2ggdGhlIHByb3ZpZGVkIGNvbmZpZ3VyYXRpb24uXG4gICAqIEBwYXJhbSBjb25maWdcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBleHBlY3RPcGVuKGNvbmZpZzogU2t5Q29uZmlybUNvbmZpZyk6IHZvaWQ7XG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIGNvbmZpcm0gZGlhbG9nIHdpdGggdGhlIHByb3ZpZGVkIGFjdGlvbi5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBjbG9zZShhcmdzOiBTa3lDb25maXJtQ2xvc2VFdmVudEFyZ3MpOiB2b2lkO1xuICAvKipcbiAgICogQ2xvc2VzIHRoZSBjb25maXJtIGRpYWxvZyB3aXRoIHRoZSBcIm9rXCIgYWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IG9rKCk6IHZvaWQ7XG59XG4iXX0=
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { SkyConfirmInstance, SkyConfirmType, } from '@skyux/modals';
|
|
2
|
-
import { SkyConfirmTestingController } from './confirm-testing.controller';
|
|
3
|
-
function assertConfirmOpen(value) {
|
|
4
|
-
if (value === undefined) {
|
|
5
|
-
throw new Error('A confirm dialog is expected to be open but is closed.');
|
|
6
|
-
}
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
function assertConfirmClosed(value) {
|
|
10
|
-
if (value !== undefined) {
|
|
11
|
-
throw new Error('A confirm dialog is expected to be closed but is open.');
|
|
12
|
-
}
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
function isButtonConfigArray(val) {
|
|
16
|
-
return (Array.isArray(val) && (val.length === 0 || val[0].action !== undefined));
|
|
17
|
-
}
|
|
18
|
-
function buttonConfigMatches(actual, expected) {
|
|
19
|
-
return (expected.action === actual.action &&
|
|
20
|
-
expected.text === actual.text &&
|
|
21
|
-
expected.styleType === actual.styleType);
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* @internal
|
|
25
|
-
*/
|
|
26
|
-
export class SkyConfirmTestingService extends SkyConfirmTestingController {
|
|
27
|
-
#testSubject;
|
|
28
|
-
cancel() {
|
|
29
|
-
this.close({ action: 'cancel' });
|
|
30
|
-
}
|
|
31
|
-
ok() {
|
|
32
|
-
this.close({ action: 'ok' });
|
|
33
|
-
}
|
|
34
|
-
close(args) {
|
|
35
|
-
assertConfirmOpen(this.#testSubject);
|
|
36
|
-
const isActionPermitted = this.#testSubject?.buttons.some((b) => b.action === args.action);
|
|
37
|
-
if (isActionPermitted) {
|
|
38
|
-
this.#testSubject.instance.close(args);
|
|
39
|
-
this.#testSubject = undefined;
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
throw new Error(`The confirm dialog does not have a button configured for the "${args.action}" action.`);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
expectNone() {
|
|
46
|
-
assertConfirmClosed(this.#testSubject);
|
|
47
|
-
}
|
|
48
|
-
expectOpen(expectedConfig) {
|
|
49
|
-
assertConfirmOpen(this.#testSubject);
|
|
50
|
-
const actualConfig = this.#testSubject.config;
|
|
51
|
-
for (const [key, expectedValue] of Object.entries(expectedConfig)) {
|
|
52
|
-
const k = key;
|
|
53
|
-
const actualValue = actualConfig[k];
|
|
54
|
-
if (isButtonConfigArray(expectedValue) &&
|
|
55
|
-
isButtonConfigArray(actualValue)) {
|
|
56
|
-
if (expectedValue.length !== actualValue.length)
|
|
57
|
-
throwDetailedError();
|
|
58
|
-
expectedValue.forEach((expectedButton, index) => {
|
|
59
|
-
if (!buttonConfigMatches(expectedButton, actualValue[index])) {
|
|
60
|
-
throwDetailedError();
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
else if (actualValue !== expectedValue) {
|
|
65
|
-
throwDetailedError();
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
function throwDetailedError() {
|
|
69
|
-
throw new Error(`Expected a confirm dialog to be open with a specific configuration.
|
|
70
|
-
Expected:
|
|
71
|
-
${JSON.stringify(expectedConfig, undefined, 2)}
|
|
72
|
-
Actual:
|
|
73
|
-
${JSON.stringify(actualConfig, undefined, 2)}
|
|
74
|
-
`);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
open(config) {
|
|
78
|
-
assertConfirmClosed(this.#testSubject);
|
|
79
|
-
const instance = new SkyConfirmInstance();
|
|
80
|
-
const testSubject = {
|
|
81
|
-
buttons: [],
|
|
82
|
-
config,
|
|
83
|
-
instance,
|
|
84
|
-
};
|
|
85
|
-
switch (config.type) {
|
|
86
|
-
case SkyConfirmType.Custom:
|
|
87
|
-
config.buttons?.forEach((b) => {
|
|
88
|
-
testSubject.buttons.push({ action: b.action, text: b.text });
|
|
89
|
-
});
|
|
90
|
-
break;
|
|
91
|
-
case SkyConfirmType.OK:
|
|
92
|
-
default:
|
|
93
|
-
testSubject.buttons.push({ action: 'ok', text: 'Ok' });
|
|
94
|
-
testSubject.buttons.push({ action: 'cancel', text: 'Cancel' });
|
|
95
|
-
break;
|
|
96
|
-
}
|
|
97
|
-
this.#testSubject = testSubject;
|
|
98
|
-
return instance;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS10ZXN0aW5nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3Rlc3Rpbmcvc3JjL2NvbmZpcm0vY29uZmlybS10ZXN0aW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUlMLGtCQUFrQixFQUVsQixjQUFjLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFRM0UsU0FBUyxpQkFBaUIsQ0FDeEIsS0FBOEI7SUFFOUIsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxPQUFPO0FBQ1QsQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQzFCLEtBQThCO0lBRTlCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsT0FBTztBQUNULENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLEdBQVk7SUFDdkMsT0FBTyxDQUNMLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUN4RSxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQzFCLE1BQThCLEVBQzlCLFFBQWdDO0lBRWhDLE9BQU8sQ0FDTCxRQUFRLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxNQUFNO1FBQ2pDLFFBQVEsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLElBQUk7UUFDN0IsUUFBUSxDQUFDLFNBQVMsS0FBSyxNQUFNLENBQUMsU0FBUyxDQUN4QyxDQUFDO0FBQ0osQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUNYLFNBQVEsMkJBQTJCO0lBR25DLFlBQVksQ0FBMEI7SUFFL0IsTUFBTTtRQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU0sRUFBRTtRQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU0sS0FBSyxDQUFDLElBQThCO1FBQ3pDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVyQyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FDdkQsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FDaEMsQ0FBQztRQUVGLElBQUksaUJBQWlCLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkMsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7UUFDaEMsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUNiLGlFQUFpRSxJQUFJLENBQUMsTUFBTSxXQUFXLENBQ3hGLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVNLFVBQVU7UUFDZixtQkFBbUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVNLFVBQVUsQ0FBQyxjQUFnQztRQUNoRCxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFckMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFFOUMsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUNsRSxNQUFNLENBQUMsR0FBRyxHQUFrQyxDQUFDO1lBQzdDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVwQyxJQUNFLG1CQUFtQixDQUFDLGFBQWEsQ0FBQztnQkFDbEMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLEVBQ2hDLENBQUM7Z0JBQ0QsSUFBSSxhQUFhLENBQUMsTUFBTSxLQUFLLFdBQVcsQ0FBQyxNQUFNO29CQUFFLGtCQUFrQixFQUFFLENBQUM7Z0JBRXRFLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxjQUFjLEVBQUUsS0FBSyxFQUFFLEVBQUU7b0JBQzlDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDN0Qsa0JBQWtCLEVBQUUsQ0FBQztvQkFDdkIsQ0FBQztnQkFDSCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7aUJBQU0sSUFBSSxXQUFXLEtBQUssYUFBYSxFQUFFLENBQUM7Z0JBQ3pDLGtCQUFrQixFQUFFLENBQUM7WUFDdkIsQ0FBQztRQUNILENBQUM7UUFFRCxTQUFTLGtCQUFrQjtZQUN6QixNQUFNLElBQUksS0FBSyxDQUFDOztFQUVwQixJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDOztFQUU1QyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0NBQzNDLENBQUMsQ0FBQztRQUNDLENBQUM7SUFDSCxDQUFDO0lBRU0sSUFBSSxDQUFDLE1BQXdCO1FBQ2xDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUV2QyxNQUFNLFFBQVEsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDMUMsTUFBTSxXQUFXLEdBQWdCO1lBQy9CLE9BQU8sRUFBRSxFQUFFO1lBQ1gsTUFBTTtZQUNOLFFBQVE7U0FDVCxDQUFDO1FBRUYsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEIsS0FBSyxjQUFjLENBQUMsTUFBTTtnQkFDeEIsTUFBTSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDNUIsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQy9ELENBQUMsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFFUixLQUFLLGNBQWMsQ0FBQyxFQUFFLENBQUM7WUFDdkI7Z0JBQ0UsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUN2RCxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7Z0JBQy9ELE1BQU07UUFDVixDQUFDO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7UUFFaEMsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2t5Q29uZmlybUJ1dHRvbkNvbmZpZyxcbiAgU2t5Q29uZmlybUNsb3NlRXZlbnRBcmdzLFxuICBTa3lDb25maXJtQ29uZmlnLFxuICBTa3lDb25maXJtSW5zdGFuY2UsXG4gIFNreUNvbmZpcm1TZXJ2aWNlSW50ZXJmYWNlLFxuICBTa3lDb25maXJtVHlwZSxcbn0gZnJvbSAnQHNreXV4L21vZGFscyc7XG5cbmltcG9ydCB7IFNreUNvbmZpcm1UZXN0aW5nQ29udHJvbGxlciB9IGZyb20gJy4vY29uZmlybS10ZXN0aW5nLmNvbnRyb2xsZXInO1xuXG5pbnRlcmZhY2UgVGVzdFN1YmplY3Qge1xuICBidXR0b25zOiBTa3lDb25maXJtQnV0dG9uQ29uZmlnW107XG4gIGNvbmZpZzogU2t5Q29uZmlybUNvbmZpZztcbiAgaW5zdGFuY2U6IFNreUNvbmZpcm1JbnN0YW5jZTtcbn1cblxuZnVuY3Rpb24gYXNzZXJ0Q29uZmlybU9wZW4oXG4gIHZhbHVlOiBUZXN0U3ViamVjdCB8IHVuZGVmaW5lZCxcbik6IGFzc2VydHMgdmFsdWUgaXMgVGVzdFN1YmplY3Qge1xuICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignQSBjb25maXJtIGRpYWxvZyBpcyBleHBlY3RlZCB0byBiZSBvcGVuIGJ1dCBpcyBjbG9zZWQuJyk7XG4gIH1cblxuICByZXR1cm47XG59XG5cbmZ1bmN0aW9uIGFzc2VydENvbmZpcm1DbG9zZWQoXG4gIHZhbHVlOiBUZXN0U3ViamVjdCB8IHVuZGVmaW5lZCxcbik6IGFzc2VydHMgdmFsdWUgaXMgdW5kZWZpbmVkIHtcbiAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0EgY29uZmlybSBkaWFsb2cgaXMgZXhwZWN0ZWQgdG8gYmUgY2xvc2VkIGJ1dCBpcyBvcGVuLicpO1xuICB9XG5cbiAgcmV0dXJuO1xufVxuXG5mdW5jdGlvbiBpc0J1dHRvbkNvbmZpZ0FycmF5KHZhbDogdW5rbm93bik6IHZhbCBpcyBTa3lDb25maXJtQnV0dG9uQ29uZmlnW10ge1xuICByZXR1cm4gKFxuICAgIEFycmF5LmlzQXJyYXkodmFsKSAmJiAodmFsLmxlbmd0aCA9PT0gMCB8fCB2YWxbMF0uYWN0aW9uICE9PSB1bmRlZmluZWQpXG4gICk7XG59XG5cbmZ1bmN0aW9uIGJ1dHRvbkNvbmZpZ01hdGNoZXMoXG4gIGFjdHVhbDogU2t5Q29uZmlybUJ1dHRvbkNvbmZpZyxcbiAgZXhwZWN0ZWQ6IFNreUNvbmZpcm1CdXR0b25Db25maWcsXG4pOiBib29sZWFuIHtcbiAgcmV0dXJuIChcbiAgICBleHBlY3RlZC5hY3Rpb24gPT09IGFjdHVhbC5hY3Rpb24gJiZcbiAgICBleHBlY3RlZC50ZXh0ID09PSBhY3R1YWwudGV4dCAmJlxuICAgIGV4cGVjdGVkLnN0eWxlVHlwZSA9PT0gYWN0dWFsLnN0eWxlVHlwZVxuICApO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgU2t5Q29uZmlybVRlc3RpbmdTZXJ2aWNlXG4gIGV4dGVuZHMgU2t5Q29uZmlybVRlc3RpbmdDb250cm9sbGVyXG4gIGltcGxlbWVudHMgU2t5Q29uZmlybVNlcnZpY2VJbnRlcmZhY2VcbntcbiAgI3Rlc3RTdWJqZWN0OiBUZXN0U3ViamVjdCB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgY2FuY2VsKCk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2UoeyBhY3Rpb246ICdjYW5jZWwnIH0pO1xuICB9XG5cbiAgcHVibGljIG9rKCk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2UoeyBhY3Rpb246ICdvaycgfSk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoYXJnczogU2t5Q29uZmlybUNsb3NlRXZlbnRBcmdzKTogdm9pZCB7XG4gICAgYXNzZXJ0Q29uZmlybU9wZW4odGhpcy4jdGVzdFN1YmplY3QpO1xuXG4gICAgY29uc3QgaXNBY3Rpb25QZXJtaXR0ZWQgPSB0aGlzLiN0ZXN0U3ViamVjdD8uYnV0dG9ucy5zb21lKFxuICAgICAgKGIpID0+IGIuYWN0aW9uID09PSBhcmdzLmFjdGlvbixcbiAgICApO1xuXG4gICAgaWYgKGlzQWN0aW9uUGVybWl0dGVkKSB7XG4gICAgICB0aGlzLiN0ZXN0U3ViamVjdC5pbnN0YW5jZS5jbG9zZShhcmdzKTtcbiAgICAgIHRoaXMuI3Rlc3RTdWJqZWN0ID0gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUaGUgY29uZmlybSBkaWFsb2cgZG9lcyBub3QgaGF2ZSBhIGJ1dHRvbiBjb25maWd1cmVkIGZvciB0aGUgXCIke2FyZ3MuYWN0aW9ufVwiIGFjdGlvbi5gLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZXhwZWN0Tm9uZSgpOiB2b2lkIHtcbiAgICBhc3NlcnRDb25maXJtQ2xvc2VkKHRoaXMuI3Rlc3RTdWJqZWN0KTtcbiAgfVxuXG4gIHB1YmxpYyBleHBlY3RPcGVuKGV4cGVjdGVkQ29uZmlnOiBTa3lDb25maXJtQ29uZmlnKTogdm9pZCB7XG4gICAgYXNzZXJ0Q29uZmlybU9wZW4odGhpcy4jdGVzdFN1YmplY3QpO1xuXG4gICAgY29uc3QgYWN0dWFsQ29uZmlnID0gdGhpcy4jdGVzdFN1YmplY3QuY29uZmlnO1xuXG4gICAgZm9yIChjb25zdCBba2V5LCBleHBlY3RlZFZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhleHBlY3RlZENvbmZpZykpIHtcbiAgICAgIGNvbnN0IGsgPSBrZXkgYXMga2V5b2YgdHlwZW9mIGV4cGVjdGVkQ29uZmlnO1xuICAgICAgY29uc3QgYWN0dWFsVmFsdWUgPSBhY3R1YWxDb25maWdba107XG5cbiAgICAgIGlmIChcbiAgICAgICAgaXNCdXR0b25Db25maWdBcnJheShleHBlY3RlZFZhbHVlKSAmJlxuICAgICAgICBpc0J1dHRvbkNvbmZpZ0FycmF5KGFjdHVhbFZhbHVlKVxuICAgICAgKSB7XG4gICAgICAgIGlmIChleHBlY3RlZFZhbHVlLmxlbmd0aCAhPT0gYWN0dWFsVmFsdWUubGVuZ3RoKSB0aHJvd0RldGFpbGVkRXJyb3IoKTtcblxuICAgICAgICBleHBlY3RlZFZhbHVlLmZvckVhY2goKGV4cGVjdGVkQnV0dG9uLCBpbmRleCkgPT4ge1xuICAgICAgICAgIGlmICghYnV0dG9uQ29uZmlnTWF0Y2hlcyhleHBlY3RlZEJ1dHRvbiwgYWN0dWFsVmFsdWVbaW5kZXhdKSkge1xuICAgICAgICAgICAgdGhyb3dEZXRhaWxlZEVycm9yKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAoYWN0dWFsVmFsdWUgIT09IGV4cGVjdGVkVmFsdWUpIHtcbiAgICAgICAgdGhyb3dEZXRhaWxlZEVycm9yKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdGhyb3dEZXRhaWxlZEVycm9yKCk6IG5ldmVyIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgYSBjb25maXJtIGRpYWxvZyB0byBiZSBvcGVuIHdpdGggYSBzcGVjaWZpYyBjb25maWd1cmF0aW9uLlxuRXhwZWN0ZWQ6XG4ke0pTT04uc3RyaW5naWZ5KGV4cGVjdGVkQ29uZmlnLCB1bmRlZmluZWQsIDIpfVxuQWN0dWFsOlxuJHtKU09OLnN0cmluZ2lmeShhY3R1YWxDb25maWcsIHVuZGVmaW5lZCwgMil9XG5gKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3Blbihjb25maWc6IFNreUNvbmZpcm1Db25maWcpOiBTa3lDb25maXJtSW5zdGFuY2Uge1xuICAgIGFzc2VydENvbmZpcm1DbG9zZWQodGhpcy4jdGVzdFN1YmplY3QpO1xuXG4gICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgU2t5Q29uZmlybUluc3RhbmNlKCk7XG4gICAgY29uc3QgdGVzdFN1YmplY3Q6IFRlc3RTdWJqZWN0ID0ge1xuICAgICAgYnV0dG9uczogW10sXG4gICAgICBjb25maWcsXG4gICAgICBpbnN0YW5jZSxcbiAgICB9O1xuXG4gICAgc3dpdGNoIChjb25maWcudHlwZSkge1xuICAgICAgY2FzZSBTa3lDb25maXJtVHlwZS5DdXN0b206XG4gICAgICAgIGNvbmZpZy5idXR0b25zPy5mb3JFYWNoKChiKSA9PiB7XG4gICAgICAgICAgdGVzdFN1YmplY3QuYnV0dG9ucy5wdXNoKHsgYWN0aW9uOiBiLmFjdGlvbiwgdGV4dDogYi50ZXh0IH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5Q29uZmlybVR5cGUuT0s6XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0ZXN0U3ViamVjdC5idXR0b25zLnB1c2goeyBhY3Rpb246ICdvaycsIHRleHQ6ICdPaycgfSk7XG4gICAgICAgIHRlc3RTdWJqZWN0LmJ1dHRvbnMucHVzaCh7IGFjdGlvbjogJ2NhbmNlbCcsIHRleHQ6ICdDYW5jZWwnIH0pO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICB0aGlzLiN0ZXN0U3ViamVjdCA9IHRlc3RTdWJqZWN0O1xuXG4gICAgcmV0dXJuIGluc3RhbmNlO1xuICB9XG59XG4iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { SkyConfirmService } from '@skyux/modals';
|
|
2
|
-
import { SkyConfirmTestingController } from './confirm-testing.controller';
|
|
3
|
-
import { SkyConfirmTestingService } from './confirm-testing.service';
|
|
4
|
-
/**
|
|
5
|
-
* @internal
|
|
6
|
-
*/
|
|
7
|
-
export function provideConfirmTesting() {
|
|
8
|
-
return [
|
|
9
|
-
SkyConfirmTestingService,
|
|
10
|
-
{
|
|
11
|
-
provide: SkyConfirmService,
|
|
12
|
-
useExisting: SkyConfirmTestingService,
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
provide: SkyConfirmTestingController,
|
|
16
|
-
useExisting: SkyConfirmTestingService,
|
|
17
|
-
},
|
|
18
|
-
];
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1jb25maXJtLXRlc3RpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3Rlc3Rpbmcvc3JjL2NvbmZpcm0vcHJvdmlkZS1jb25maXJtLXRlc3RpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXJFOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQjtJQUNuQyxPQUFPO1FBQ0wsd0JBQXdCO1FBQ3hCO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsd0JBQXdCO1NBQ3RDO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsMkJBQTJCO1lBQ3BDLFdBQVcsRUFBRSx3QkFBd0I7U0FDdEM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lDb25maXJtU2VydmljZSB9IGZyb20gJ0Bza3l1eC9tb2RhbHMnO1xuXG5pbXBvcnQgeyBTa3lDb25maXJtVGVzdGluZ0NvbnRyb2xsZXIgfSBmcm9tICcuL2NvbmZpcm0tdGVzdGluZy5jb250cm9sbGVyJztcbmltcG9ydCB7IFNreUNvbmZpcm1UZXN0aW5nU2VydmljZSB9IGZyb20gJy4vY29uZmlybS10ZXN0aW5nLnNlcnZpY2UnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUNvbmZpcm1UZXN0aW5nKCk6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW1xuICAgIFNreUNvbmZpcm1UZXN0aW5nU2VydmljZSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBTa3lDb25maXJtU2VydmljZSxcbiAgICAgIHVzZUV4aXN0aW5nOiBTa3lDb25maXJtVGVzdGluZ1NlcnZpY2UsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBTa3lDb25maXJtVGVzdGluZ0NvbnRyb2xsZXIsXG4gICAgICB1c2VFeGlzdGluZzogU2t5Q29uZmlybVRlc3RpbmdTZXJ2aWNlLFxuICAgIH0sXG4gIF07XG59XG4iXX0=
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A controller to be injected into tests, which mocks the modal service
|
|
3
|
-
* and handles interactions with modal instances. For testing interactions
|
|
4
|
-
* with the modal component itself, use the `SkyModalHarness`.
|
|
5
|
-
*/
|
|
6
|
-
export class SkyModalTestingController {
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtdGVzdGluZy5jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy90ZXN0aW5nL3NyYy9tb2RhbC9jb250cm9sbGVyL21vZGFsLXRlc3RpbmcuY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQTs7OztHQUlHO0FBQ0gsTUFBTSxPQUFnQix5QkFBeUI7Q0FxQjlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TW9kYWxDbG9zZUFyZ3MgfSBmcm9tICdAc2t5dXgvbW9kYWxzJztcblxuLyoqXG4gKiBBIGNvbnRyb2xsZXIgdG8gYmUgaW5qZWN0ZWQgaW50byB0ZXN0cywgd2hpY2ggbW9ja3MgdGhlIG1vZGFsIHNlcnZpY2VcbiAqIGFuZCBoYW5kbGVzIGludGVyYWN0aW9ucyB3aXRoIG1vZGFsIGluc3RhbmNlcy4gRm9yIHRlc3RpbmcgaW50ZXJhY3Rpb25zXG4gKiB3aXRoIHRoZSBtb2RhbCBjb21wb25lbnQgaXRzZWxmLCB1c2UgdGhlIGBTa3lNb2RhbEhhcm5lc3NgLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2t5TW9kYWxUZXN0aW5nQ29udHJvbGxlciB7XG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIHRvcG1vc3QgbW9kYWwgd2l0aCB0aGUgcHJvdmlkZWQgYXJndW1lbnRzLlxuICAgKiBAcGFyYW0gYXJncyBBcmd1bWVudHMgdG8gcGFzcyB0byB0aGUgbW9kYWwncyBjbG9zZSBldmVudC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBjbG9zZVRvcE1vZGFsKGFyZ3M/OiBTa3lNb2RhbENsb3NlQXJncyk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFRocm93cyBpZiB0aGUgcHJvdmlkZWQgdmFsdWUgZG9lcyBub3QgbWF0Y2ggdGhlIG51bWJlciBvZiBvcGVuIG1vZGFscy5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBleHBlY3RDb3VudCh2YWx1ZTogbnVtYmVyKTogdm9pZDtcblxuICAvKipcbiAgICogVGhyb3dzIGlmIG1vZGFscyBhcmUgb3Blbi5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBleHBlY3ROb25lKCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFRocm93cyBpZiB0aGUgZ2l2ZW4gY3JpdGVyaWEgZG9lcyBub3QgbWF0Y2ggdGhlIHRvcG1vc3Qgb3BlbiBtb2RhbC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBleHBlY3RPcGVuPFRDb21wb25lbnQ+KGNvbXBvbmVudDogVHlwZTxUQ29tcG9uZW50Pik6IHZvaWQ7XG59XG4iXX0=
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { SkyModalInstance, } from '@skyux/modals';
|
|
3
|
-
import { SkyModalTestingController } from './modal-testing.controller';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* @internal
|
|
7
|
-
*/
|
|
8
|
-
export class SkyModalTestingService extends SkyModalTestingController {
|
|
9
|
-
#modals = new Map();
|
|
10
|
-
ngOnDestroy() {
|
|
11
|
-
for (const instance of this.#modals.keys()) {
|
|
12
|
-
instance.close();
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
closeTopModal(args) {
|
|
16
|
-
const modal = this.#getTopmostModal();
|
|
17
|
-
if (!modal) {
|
|
18
|
-
throw new Error('Expected to close the topmost modal, but no modals are open.');
|
|
19
|
-
}
|
|
20
|
-
modal.instance.close(args?.data, args?.reason);
|
|
21
|
-
}
|
|
22
|
-
expectCount(value) {
|
|
23
|
-
const count = this.#modals.size;
|
|
24
|
-
if (count !== value) {
|
|
25
|
-
throw new Error(`Expected ${value} open ${value === 1 ? 'modal' : 'modals'}, but ${count} ${count === 1 ? 'is' : 'are'} open.`);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
expectNone() {
|
|
29
|
-
const count = this.#modals.size;
|
|
30
|
-
if (count > 0) {
|
|
31
|
-
throw new Error(`Expected no modals to be open, but there ${count === 1 ? 'is' : 'are'} ${count} open.`);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
expectOpen(component) {
|
|
35
|
-
const modal = this.#getTopmostModal();
|
|
36
|
-
if (!modal) {
|
|
37
|
-
throw new Error('A modal is expected to be open, but no modals are open.');
|
|
38
|
-
}
|
|
39
|
-
if (modal.component !== component) {
|
|
40
|
-
throw new Error(`Expected the topmost modal to be of type ${component.name}, but it is of type ${modal.component.name}.`);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
open(component, config) {
|
|
44
|
-
const instance = new SkyModalInstance();
|
|
45
|
-
instance.closed.subscribe(() => {
|
|
46
|
-
this.#modals.delete(instance);
|
|
47
|
-
});
|
|
48
|
-
this.#modals.set(instance, { component, config, instance });
|
|
49
|
-
return instance;
|
|
50
|
-
}
|
|
51
|
-
#getTopmostModal() {
|
|
52
|
-
return Array.from(this.#modals.values()).pop();
|
|
53
|
-
}
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyModalTestingService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
55
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyModalTestingService }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyModalTestingService, decorators: [{
|
|
58
|
-
type: Injectable
|
|
59
|
-
}] });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtdGVzdGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy90ZXN0aW5nL3NyYy9tb2RhbC9jb250cm9sbGVyL21vZGFsLXRlc3Rpbmcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFtQyxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBR0wsZ0JBQWdCLEdBRWpCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQVF2RTs7R0FFRztBQUVILE1BQU0sT0FBTyxzQkFDWCxTQUFRLHlCQUF5QjtJQUd4QixPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQWlDLENBQUM7SUFFckQsV0FBVztRQUNoQixLQUFLLE1BQU0sUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUMzQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7SUFFTSxhQUFhLENBQUMsSUFBd0I7UUFDM0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDdEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FDYiw4REFBOEQsQ0FDL0QsQ0FBQztRQUNKLENBQUM7UUFFRCxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRU0sV0FBVyxDQUFDLEtBQWE7UUFDOUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDaEMsSUFBSSxLQUFLLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FDYixZQUFZLEtBQUssU0FBUyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsU0FBUyxLQUFLLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsQ0FDL0csQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRU0sVUFBVTtRQUNmLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQ2hDLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ2QsTUFBTSxJQUFJLEtBQUssQ0FDYiw0Q0FBNEMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksS0FBSyxRQUFRLENBQ3hGLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVNLFVBQVUsQ0FBYSxTQUEyQjtRQUN2RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxNQUFNLElBQUksS0FBSyxDQUNiLHlEQUF5RCxDQUMxRCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksS0FBSyxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNsQyxNQUFNLElBQUksS0FBSyxDQUNiLDRDQUE0QyxTQUFTLENBQUMsSUFBSSx1QkFBdUIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FDekcsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRU0sSUFBSSxDQUNULFNBQTJCLEVBQzNCLE1BQTBEO1FBRTFELE1BQU0sUUFBUSxHQUFHLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztRQUV4QyxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFFNUQsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDakQsQ0FBQzs4R0F6RVUsc0JBQXNCO2tIQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIFN0YXRpY1Byb3ZpZGVyLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTa3lNb2RhbENsb3NlQXJncyxcbiAgU2t5TW9kYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlLFxuICBTa3lNb2RhbEluc3RhbmNlLFxuICBTa3lNb2RhbFNlcnZpY2VJbnRlcmZhY2UsXG59IGZyb20gJ0Bza3l1eC9tb2RhbHMnO1xuXG5pbXBvcnQgeyBTa3lNb2RhbFRlc3RpbmdDb250cm9sbGVyIH0gZnJvbSAnLi9tb2RhbC10ZXN0aW5nLmNvbnRyb2xsZXInO1xuXG5pbnRlcmZhY2UgVGVzdFN1YmplY3Q8VCA9IHVua25vd24+IHtcbiAgY29tcG9uZW50OiBUeXBlPFQ+O1xuICBjb25maWc6IFNreU1vZGFsQ29uZmlndXJhdGlvbkludGVyZmFjZSB8IFN0YXRpY1Byb3ZpZGVyW10gfCB1bmRlZmluZWQ7XG4gIGluc3RhbmNlOiBTa3lNb2RhbEluc3RhbmNlO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2t5TW9kYWxUZXN0aW5nU2VydmljZVxuICBleHRlbmRzIFNreU1vZGFsVGVzdGluZ0NvbnRyb2xsZXJcbiAgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIFNreU1vZGFsU2VydmljZUludGVyZmFjZVxue1xuICByZWFkb25seSAjbW9kYWxzID0gbmV3IE1hcDxTa3lNb2RhbEluc3RhbmNlLCBUZXN0U3ViamVjdD4oKTtcblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBpbnN0YW5jZSBvZiB0aGlzLiNtb2RhbHMua2V5cygpKSB7XG4gICAgICBpbnN0YW5jZS5jbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbG9zZVRvcE1vZGFsKGFyZ3M/OiBTa3lNb2RhbENsb3NlQXJncyk6IHZvaWQge1xuICAgIGNvbnN0IG1vZGFsID0gdGhpcy4jZ2V0VG9wbW9zdE1vZGFsKCk7XG4gICAgaWYgKCFtb2RhbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnRXhwZWN0ZWQgdG8gY2xvc2UgdGhlIHRvcG1vc3QgbW9kYWwsIGJ1dCBubyBtb2RhbHMgYXJlIG9wZW4uJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgbW9kYWwuaW5zdGFuY2UuY2xvc2UoYXJncz8uZGF0YSwgYXJncz8ucmVhc29uKTtcbiAgfVxuXG4gIHB1YmxpYyBleHBlY3RDb3VudCh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgY291bnQgPSB0aGlzLiNtb2RhbHMuc2l6ZTtcbiAgICBpZiAoY291bnQgIT09IHZhbHVlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBFeHBlY3RlZCAke3ZhbHVlfSBvcGVuICR7dmFsdWUgPT09IDEgPyAnbW9kYWwnIDogJ21vZGFscyd9LCBidXQgJHtjb3VudH0gJHtjb3VudCA9PT0gMSA/ICdpcycgOiAnYXJlJ30gb3Blbi5gLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZXhwZWN0Tm9uZSgpOiB2b2lkIHtcbiAgICBjb25zdCBjb3VudCA9IHRoaXMuI21vZGFscy5zaXplO1xuICAgIGlmIChjb3VudCA+IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEV4cGVjdGVkIG5vIG1vZGFscyB0byBiZSBvcGVuLCBidXQgdGhlcmUgJHtjb3VudCA9PT0gMSA/ICdpcycgOiAnYXJlJ30gJHtjb3VudH0gb3Blbi5gLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZXhwZWN0T3BlbjxUQ29tcG9uZW50Pihjb21wb25lbnQ6IFR5cGU8VENvbXBvbmVudD4pOiB2b2lkIHtcbiAgICBjb25zdCBtb2RhbCA9IHRoaXMuI2dldFRvcG1vc3RNb2RhbCgpO1xuICAgIGlmICghbW9kYWwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0EgbW9kYWwgaXMgZXhwZWN0ZWQgdG8gYmUgb3BlbiwgYnV0IG5vIG1vZGFscyBhcmUgb3Blbi4nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAobW9kYWwuY29tcG9uZW50ICE9PSBjb21wb25lbnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEV4cGVjdGVkIHRoZSB0b3Btb3N0IG1vZGFsIHRvIGJlIG9mIHR5cGUgJHtjb21wb25lbnQubmFtZX0sIGJ1dCBpdCBpcyBvZiB0eXBlICR7bW9kYWwuY29tcG9uZW50Lm5hbWV9LmAsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvcGVuPFRDb21wb25lbnQ+KFxuICAgIGNvbXBvbmVudDogVHlwZTxUQ29tcG9uZW50PixcbiAgICBjb25maWc/OiBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2UgfCBTdGF0aWNQcm92aWRlcltdLFxuICApOiBTa3lNb2RhbEluc3RhbmNlIHtcbiAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBTa3lNb2RhbEluc3RhbmNlKCk7XG5cbiAgICBpbnN0YW5jZS5jbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuI21vZGFscy5kZWxldGUoaW5zdGFuY2UpO1xuICAgIH0pO1xuXG4gICAgdGhpcy4jbW9kYWxzLnNldChpbnN0YW5jZSwgeyBjb21wb25lbnQsIGNvbmZpZywgaW5zdGFuY2UgfSk7XG5cbiAgICByZXR1cm4gaW5zdGFuY2U7XG4gIH1cblxuICAjZ2V0VG9wbW9zdE1vZGFsKCk6IFRlc3RTdWJqZWN0IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLiNtb2RhbHMudmFsdWVzKCkpLnBvcCgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { SkyModalService } from '@skyux/modals';
|
|
2
|
-
import { SkyModalTestingController } from './modal-testing.controller';
|
|
3
|
-
import { SkyModalTestingService } from './modal-testing.service';
|
|
4
|
-
/**
|
|
5
|
-
* @internal
|
|
6
|
-
*/
|
|
7
|
-
export function provideModalTesting() {
|
|
8
|
-
return [
|
|
9
|
-
SkyModalTestingService,
|
|
10
|
-
{
|
|
11
|
-
provide: SkyModalService,
|
|
12
|
-
useExisting: SkyModalTestingService,
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
provide: SkyModalTestingController,
|
|
16
|
-
useExisting: SkyModalTestingService,
|
|
17
|
-
},
|
|
18
|
-
];
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1tb2RhbC10ZXN0aW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy90ZXN0aW5nL3NyYy9tb2RhbC9jb250cm9sbGVyL3Byb3ZpZGUtbW9kYWwtdGVzdGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQjtJQUNqQyxPQUFPO1FBQ0wsc0JBQXNCO1FBQ3RCO1lBQ0UsT0FBTyxFQUFFLGVBQWU7WUFDeEIsV0FBVyxFQUFFLHNCQUFzQjtTQUNwQztRQUNEO1lBQ0UsT0FBTyxFQUFFLHlCQUF5QjtZQUNsQyxXQUFXLEVBQUUsc0JBQXNCO1NBQ3BDO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TW9kYWxTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L21vZGFscyc7XG5cbmltcG9ydCB7IFNreU1vZGFsVGVzdGluZ0NvbnRyb2xsZXIgfSBmcm9tICcuL21vZGFsLXRlc3RpbmcuY29udHJvbGxlcic7XG5pbXBvcnQgeyBTa3lNb2RhbFRlc3RpbmdTZXJ2aWNlIH0gZnJvbSAnLi9tb2RhbC10ZXN0aW5nLnNlcnZpY2UnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZU1vZGFsVGVzdGluZygpOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFtcbiAgICBTa3lNb2RhbFRlc3RpbmdTZXJ2aWNlLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNreU1vZGFsU2VydmljZSxcbiAgICAgIHVzZUV4aXN0aW5nOiBTa3lNb2RhbFRlc3RpbmdTZXJ2aWNlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogU2t5TW9kYWxUZXN0aW5nQ29udHJvbGxlcixcbiAgICAgIHVzZUV4aXN0aW5nOiBTa3lNb2RhbFRlc3RpbmdTZXJ2aWNlLFxuICAgIH0sXG4gIF07XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy90ZXN0aW5nL3NyYy9tb2RhbC9tb2RhbC1oYXJuZXNzLWZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbi8qKlxuICogQSBzZXQgb2YgY3JpdGVyaWEgdGhhdCBjYW4gYmUgdXNlZCB0byBmaWx0ZXIgYSBsaXN0IG9mIFNreU1vZGFsSGFybmVzcyBpbnN0YW5jZXMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktb2JqZWN0LXR5cGVcbmV4cG9ydCBpbnRlcmZhY2UgU2t5TW9kYWxIYXJuZXNzRmlsdGVycyBleHRlbmRzIFNreUhhcm5lc3NGaWx0ZXJzIHt9XG4iXX0=
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import { SkyComponentHarness } from '@skyux/core/testing';
|
|
2
|
-
import { SkyHelpInlineHarness } from '@skyux/help-inline/testing';
|
|
3
|
-
/**
|
|
4
|
-
* Harness for interacting with a modal component in tests.
|
|
5
|
-
*/
|
|
6
|
-
export class SkyModalHarness extends SkyComponentHarness {
|
|
7
|
-
/**
|
|
8
|
-
* @internal
|
|
9
|
-
*/
|
|
10
|
-
static { this.hostSelector = 'sky-modal'; }
|
|
11
|
-
#getModal = this.locatorFor('.sky-modal');
|
|
12
|
-
#getModalDialog = this.locatorFor('.sky-modal-dialog');
|
|
13
|
-
#getModalHeading = this.locatorFor('.sky-modal-heading');
|
|
14
|
-
/**
|
|
15
|
-
* Gets a `HarnessPredicate` that can be used to search for a
|
|
16
|
-
* `SkyModalHarness` that meets certain criteria
|
|
17
|
-
*/
|
|
18
|
-
static with(filters) {
|
|
19
|
-
return SkyModalHarness.getDataSkyIdPredicate(filters);
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Clicks the help inline button.
|
|
23
|
-
*/
|
|
24
|
-
async clickHelpInline() {
|
|
25
|
-
return (await this.#getHelpInline()).click();
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Gets the aria-describedBy property of the modal.
|
|
29
|
-
* @deprecated
|
|
30
|
-
*/
|
|
31
|
-
async getAriaDescribedBy() {
|
|
32
|
-
return (await this.#getModalDialog()).getAttribute('aria-describedby');
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Gets the aria-labelledBy property of the modal.
|
|
36
|
-
* @deprecated
|
|
37
|
-
*/
|
|
38
|
-
async getAriaLabelledBy() {
|
|
39
|
-
return (await this.#getModalDialog()).getAttribute('aria-labelledby');
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Gets the role of the modal.
|
|
43
|
-
*/
|
|
44
|
-
async getAriaRole() {
|
|
45
|
-
return (await this.#getModalDialog()).getAttribute('role');
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Gets the modal's heading text.
|
|
49
|
-
*/
|
|
50
|
-
async getHeadingText() {
|
|
51
|
-
return (await this.#getModalHeading()).text();
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Gets the help popover content.
|
|
55
|
-
*/
|
|
56
|
-
async getHelpPopoverContent() {
|
|
57
|
-
return (await this.#getHelpInline()).getPopoverContent();
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Gets the help popover title.
|
|
61
|
-
*/
|
|
62
|
-
async getHelpPopoverTitle() {
|
|
63
|
-
return (await this.#getHelpInline()).getPopoverTitle();
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Gets the modal size.
|
|
67
|
-
*/
|
|
68
|
-
async getSize() {
|
|
69
|
-
if (await this.isFullPage()) {
|
|
70
|
-
throw new Error('Size cannot be determined because size property is overridden when modal is full page');
|
|
71
|
-
}
|
|
72
|
-
const modal = await this.#getModal();
|
|
73
|
-
if (await modal.hasClass('sky-modal-small')) {
|
|
74
|
-
return 'small';
|
|
75
|
-
}
|
|
76
|
-
if (await modal.hasClass('sky-modal-large')) {
|
|
77
|
-
return 'large';
|
|
78
|
-
}
|
|
79
|
-
return 'medium';
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Gets the wrapper class of the modal.
|
|
83
|
-
*/
|
|
84
|
-
async getWrapperClass() {
|
|
85
|
-
return await (await this.host()).getProperty('className');
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Whether the modal is full page.
|
|
89
|
-
*/
|
|
90
|
-
async isFullPage() {
|
|
91
|
-
const modal = this.#getModal();
|
|
92
|
-
return (await modal).hasClass('sky-modal-full-page');
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Whether the modal has {@link SkyModalIsDirtyDirective.isDirty} set to dirty.
|
|
96
|
-
*/
|
|
97
|
-
async isDirty() {
|
|
98
|
-
const modalHost = await this.host();
|
|
99
|
-
const isDirtyAttribute = await modalHost.getAttribute('data-sky-modal-is-dirty');
|
|
100
|
-
return isDirtyAttribute === 'true';
|
|
101
|
-
}
|
|
102
|
-
async #getHelpInline() {
|
|
103
|
-
const harness = await this.locatorForOptional(SkyHelpInlineHarness)();
|
|
104
|
-
if (harness) {
|
|
105
|
-
return harness;
|
|
106
|
-
}
|
|
107
|
-
throw Error('No help inline found.');
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9tb2RhbHMvdGVzdGluZy9zcmMvbW9kYWwvbW9kYWwtaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUlsRTs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFnQixTQUFRLG1CQUFtQjtJQUN0RDs7T0FFRzthQUNXLGlCQUFZLEdBQUcsV0FBVyxDQUFDO0lBRXpDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFDLGVBQWUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdkQsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRXpEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQ2hCLE9BQStCO1FBRS9CLE9BQU8sZUFBZSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxlQUFlO1FBQzFCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLLENBQUMsa0JBQWtCO1FBQzdCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLLENBQUMsaUJBQWlCO1FBQzVCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxXQUFXO1FBQ3RCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsY0FBYztRQUN6QixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxxQkFBcUI7UUFHaEMsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsbUJBQW1CO1FBQzlCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLElBQUksTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztZQUM1QixNQUFNLElBQUksS0FBSyxDQUNiLHVGQUF1RixDQUN4RixDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBRXJDLElBQUksTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztZQUM1QyxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO1FBRUQsSUFBSSxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO1lBQzVDLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZUFBZTtRQUMxQixPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsVUFBVTtRQUNyQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDL0IsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE9BQU87UUFDbEIsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEMsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLFNBQVMsQ0FBQyxZQUFZLENBQ25ELHlCQUF5QixDQUMxQixDQUFDO1FBQ0YsT0FBTyxnQkFBZ0IsS0FBSyxNQUFNLENBQUM7SUFDckMsQ0FBQztJQUVELEtBQUssQ0FBQyxjQUFjO1FBQ2xCLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQztRQUV0RSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUVELE1BQU0sS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDdkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhcm5lc3NQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5Q29tcG9uZW50SGFybmVzcyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuaW1wb3J0IHsgU2t5SGVscElubGluZUhhcm5lc3MgfSBmcm9tICdAc2t5dXgvaGVscC1pbmxpbmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreU1vZGFsSGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL21vZGFsLWhhcm5lc3MtZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhIG1vZGFsIGNvbXBvbmVudCBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreU1vZGFsSGFybmVzcyBleHRlbmRzIFNreUNvbXBvbmVudEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdza3ktbW9kYWwnO1xuXG4gICNnZXRNb2RhbCA9IHRoaXMubG9jYXRvckZvcignLnNreS1tb2RhbCcpO1xuICAjZ2V0TW9kYWxEaWFsb2cgPSB0aGlzLmxvY2F0b3JGb3IoJy5za3ktbW9kYWwtZGlhbG9nJyk7XG4gICNnZXRNb2RhbEhlYWRpbmcgPSB0aGlzLmxvY2F0b3JGb3IoJy5za3ktbW9kYWwtaGVhZGluZycpO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhXG4gICAqIGBTa3lNb2RhbEhhcm5lc3NgIHRoYXQgbWVldHMgY2VydGFpbiBjcml0ZXJpYVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB3aXRoKFxuICAgIGZpbHRlcnM6IFNreU1vZGFsSGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5TW9kYWxIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreU1vZGFsSGFybmVzcy5nZXREYXRhU2t5SWRQcmVkaWNhdGUoZmlsdGVycyk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIHRoZSBoZWxwIGlubGluZSBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tIZWxwSW5saW5lKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0SGVscElubGluZSgpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGFyaWEtZGVzY3JpYmVkQnkgcHJvcGVydHkgb2YgdGhlIG1vZGFsLlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEFyaWFEZXNjcmliZWRCeSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldE1vZGFsRGlhbG9nKCkpLmdldEF0dHJpYnV0ZSgnYXJpYS1kZXNjcmliZWRieScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGFyaWEtbGFiZWxsZWRCeSBwcm9wZXJ0eSBvZiB0aGUgbW9kYWwuXG4gICAqIEBkZXByZWNhdGVkXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0QXJpYUxhYmVsbGVkQnkoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRNb2RhbERpYWxvZygpKS5nZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWxsZWRieScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHJvbGUgb2YgdGhlIG1vZGFsLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEFyaWFSb2xlKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0TW9kYWxEaWFsb2coKSkuZ2V0QXR0cmlidXRlKCdyb2xlJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgbW9kYWwncyBoZWFkaW5nIHRleHQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SGVhZGluZ1RleHQoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldE1vZGFsSGVhZGluZygpKS50ZXh0KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaGVscCBwb3BvdmVyIGNvbnRlbnQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SGVscFBvcG92ZXJDb250ZW50KCk6IFByb21pc2U8XG4gICAgVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBzdHJpbmcgfCB1bmRlZmluZWRcbiAgPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRIZWxwSW5saW5lKCkpLmdldFBvcG92ZXJDb250ZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaGVscCBwb3BvdmVyIHRpdGxlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhlbHBQb3BvdmVyVGl0bGUoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldEhlbHBJbmxpbmUoKSkuZ2V0UG9wb3ZlclRpdGxlKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgbW9kYWwgc2l6ZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRTaXplKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgaWYgKGF3YWl0IHRoaXMuaXNGdWxsUGFnZSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdTaXplIGNhbm5vdCBiZSBkZXRlcm1pbmVkIGJlY2F1c2Ugc2l6ZSBwcm9wZXJ0eSBpcyBvdmVycmlkZGVuIHdoZW4gbW9kYWwgaXMgZnVsbCBwYWdlJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgbW9kYWwgPSBhd2FpdCB0aGlzLiNnZXRNb2RhbCgpO1xuXG4gICAgaWYgKGF3YWl0IG1vZGFsLmhhc0NsYXNzKCdza3ktbW9kYWwtc21hbGwnKSkge1xuICAgICAgcmV0dXJuICdzbWFsbCc7XG4gICAgfVxuXG4gICAgaWYgKGF3YWl0IG1vZGFsLmhhc0NsYXNzKCdza3ktbW9kYWwtbGFyZ2UnKSkge1xuICAgICAgcmV0dXJuICdsYXJnZSc7XG4gICAgfVxuXG4gICAgcmV0dXJuICdtZWRpdW0nO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHdyYXBwZXIgY2xhc3Mgb2YgdGhlIG1vZGFsLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFdyYXBwZXJDbGFzcygpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLmdldFByb3BlcnR5KCdjbGFzc05hbWUnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBtb2RhbCBpcyBmdWxsIHBhZ2UuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNGdWxsUGFnZSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBtb2RhbCA9IHRoaXMuI2dldE1vZGFsKCk7XG4gICAgcmV0dXJuIChhd2FpdCBtb2RhbCkuaGFzQ2xhc3MoJ3NreS1tb2RhbC1mdWxsLXBhZ2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBtb2RhbCBoYXMge0BsaW5rIFNreU1vZGFsSXNEaXJ0eURpcmVjdGl2ZS5pc0RpcnR5fSBzZXQgdG8gZGlydHkuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNEaXJ0eSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBtb2RhbEhvc3QgPSBhd2FpdCB0aGlzLmhvc3QoKTtcbiAgICBjb25zdCBpc0RpcnR5QXR0cmlidXRlID0gYXdhaXQgbW9kYWxIb3N0LmdldEF0dHJpYnV0ZShcbiAgICAgICdkYXRhLXNreS1tb2RhbC1pcy1kaXJ0eScsXG4gICAgKTtcbiAgICByZXR1cm4gaXNEaXJ0eUF0dHJpYnV0ZSA9PT0gJ3RydWUnO1xuICB9XG5cbiAgYXN5bmMgI2dldEhlbHBJbmxpbmUoKTogUHJvbWlzZTxTa3lIZWxwSW5saW5lSGFybmVzcz4ge1xuICAgIGNvbnN0IGhhcm5lc3MgPSBhd2FpdCB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChTa3lIZWxwSW5saW5lSGFybmVzcykoKTtcblxuICAgIGlmIChoYXJuZXNzKSB7XG4gICAgICByZXR1cm4gaGFybmVzcztcbiAgICB9XG5cbiAgICB0aHJvdyBFcnJvcignTm8gaGVscCBpbmxpbmUgZm91bmQuJyk7XG4gIH1cbn1cbiJdfQ==
|