@skyux/forms 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.
Files changed (88) hide show
  1. package/documentation.json +2925 -1719
  2. package/esm2022/lib/modules/checkbox/checkbox-group.component.mjs +2 -2
  3. package/esm2022/lib/modules/field-group/field-group.component.mjs +2 -2
  4. package/esm2022/lib/modules/file-attachment/file-attachment/file-attachment.component.mjs +3 -5
  5. package/esm2022/lib/modules/input-box/input-box.component.mjs +2 -2
  6. package/esm2022/lib/modules/radio/radio-group.component.mjs +2 -2
  7. package/esm2022/lib/modules/radio/radio.component.mjs +2 -2
  8. package/esm2022/lib/modules/toggle-switch/toggle-switch.component.mjs +3 -7
  9. package/esm2022/testing/legacy/checkbox-fixture.mjs +92 -0
  10. package/esm2022/testing/legacy/radio-fixture.mjs +85 -0
  11. package/esm2022/testing/modules/character-counter/character-counter-indicator-harness-filters.mjs +2 -0
  12. package/esm2022/testing/modules/character-counter/character-counter-indicator-harness.mjs +53 -0
  13. package/esm2022/testing/modules/checkbox/checkbox-group-harness-filters.mjs +2 -0
  14. package/esm2022/testing/modules/checkbox/checkbox-group-harness.mjs +158 -0
  15. package/esm2022/testing/modules/checkbox/checkbox-harness-filters.mjs +2 -0
  16. package/esm2022/testing/modules/checkbox/checkbox-harness.mjs +196 -0
  17. package/esm2022/testing/modules/checkbox/checkbox-label-harness.mjs +19 -0
  18. package/esm2022/testing/modules/checkbox/checkbox-label-text-label.harness.mjs +19 -0
  19. package/esm2022/testing/modules/field-group/field-group-harness-filters.mjs +2 -0
  20. package/esm2022/testing/modules/field-group/field-group-harness.mjs +92 -0
  21. package/esm2022/testing/modules/file-attachment/file-drop/file-drop-harness-filters.mjs +2 -0
  22. package/esm2022/testing/modules/file-attachment/file-drop/file-drop-harness.mjs +45 -0
  23. package/esm2022/testing/modules/form-error/form-error-harness.filters.mjs +2 -0
  24. package/esm2022/testing/modules/form-error/form-error-harness.mjs +21 -0
  25. package/esm2022/testing/modules/form-error/form-errors-harness.filters.mjs +2 -0
  26. package/esm2022/testing/modules/form-error/form-errors-harness.mjs +34 -0
  27. package/esm2022/testing/modules/input-box/input-box-harness-filters.mjs +2 -0
  28. package/esm2022/testing/modules/input-box/input-box-harness.mjs +188 -0
  29. package/esm2022/testing/modules/radio/radio-group-harness-filters.mjs +2 -0
  30. package/esm2022/testing/modules/radio/radio-group-harness.mjs +156 -0
  31. package/esm2022/testing/modules/radio/radio-harness-filters.mjs +2 -0
  32. package/esm2022/testing/modules/radio/radio-harness.mjs +147 -0
  33. package/esm2022/testing/modules/radio/radio-label-harness.mjs +19 -0
  34. package/esm2022/testing/public-api.mjs +15 -14
  35. package/fesm2022/skyux-forms-testing.mjs +144 -54
  36. package/fesm2022/skyux-forms-testing.mjs.map +1 -1
  37. package/fesm2022/skyux-forms.mjs +14 -20
  38. package/fesm2022/skyux-forms.mjs.map +1 -1
  39. package/package.json +9 -9
  40. package/testing/{radio-fixture.d.ts → legacy/radio-fixture.d.ts} +1 -0
  41. package/testing/modules/field-group/field-group-harness-filters.d.ts +7 -0
  42. package/testing/modules/field-group/field-group-harness.d.ts +57 -0
  43. package/testing/public-api.d.ts +24 -22
  44. package/esm2022/testing/character-counter/character-counter-indicator-harness-filters.mjs +0 -2
  45. package/esm2022/testing/character-counter/character-counter-indicator-harness.mjs +0 -53
  46. package/esm2022/testing/checkbox/checkbox-group-harness-filters.mjs +0 -2
  47. package/esm2022/testing/checkbox/checkbox-group-harness.mjs +0 -158
  48. package/esm2022/testing/checkbox/checkbox-harness-filters.mjs +0 -2
  49. package/esm2022/testing/checkbox/checkbox-harness.mjs +0 -196
  50. package/esm2022/testing/checkbox/checkbox-label-harness.mjs +0 -19
  51. package/esm2022/testing/checkbox/checkbox-label-text-label.harness.mjs +0 -19
  52. package/esm2022/testing/checkbox-fixture.mjs +0 -92
  53. package/esm2022/testing/file-drop/file-drop-harness-filters.mjs +0 -2
  54. package/esm2022/testing/file-drop/file-drop-harness.mjs +0 -45
  55. package/esm2022/testing/form-error/form-error-harness.filters.mjs +0 -2
  56. package/esm2022/testing/form-error/form-error-harness.mjs +0 -21
  57. package/esm2022/testing/form-error/form-errors-harness.filters.mjs +0 -2
  58. package/esm2022/testing/form-error/form-errors-harness.mjs +0 -34
  59. package/esm2022/testing/input-box/input-box-harness-filters.mjs +0 -2
  60. package/esm2022/testing/input-box/input-box-harness.mjs +0 -188
  61. package/esm2022/testing/radio/radio-group-harness-filters.mjs +0 -2
  62. package/esm2022/testing/radio/radio-group-harness.mjs +0 -157
  63. package/esm2022/testing/radio/radio-harness-filters.mjs +0 -2
  64. package/esm2022/testing/radio/radio-harness.mjs +0 -147
  65. package/esm2022/testing/radio/radio-label-harness.mjs +0 -19
  66. package/esm2022/testing/radio-fixture.mjs +0 -84
  67. /package/testing/{checkbox-fixture.d.ts → legacy/checkbox-fixture.d.ts} +0 -0
  68. /package/testing/{character-counter → modules/character-counter}/character-counter-indicator-harness-filters.d.ts +0 -0
  69. /package/testing/{character-counter → modules/character-counter}/character-counter-indicator-harness.d.ts +0 -0
  70. /package/testing/{checkbox → modules/checkbox}/checkbox-group-harness-filters.d.ts +0 -0
  71. /package/testing/{checkbox → modules/checkbox}/checkbox-group-harness.d.ts +0 -0
  72. /package/testing/{checkbox → modules/checkbox}/checkbox-harness-filters.d.ts +0 -0
  73. /package/testing/{checkbox → modules/checkbox}/checkbox-harness.d.ts +0 -0
  74. /package/testing/{checkbox → modules/checkbox}/checkbox-label-harness.d.ts +0 -0
  75. /package/testing/{checkbox → modules/checkbox}/checkbox-label-text-label.harness.d.ts +0 -0
  76. /package/testing/{file-drop → modules/file-attachment/file-drop}/file-drop-harness-filters.d.ts +0 -0
  77. /package/testing/{file-drop → modules/file-attachment/file-drop}/file-drop-harness.d.ts +0 -0
  78. /package/testing/{form-error → modules/form-error}/form-error-harness.d.ts +0 -0
  79. /package/testing/{form-error → modules/form-error}/form-error-harness.filters.d.ts +0 -0
  80. /package/testing/{form-error → modules/form-error}/form-errors-harness.d.ts +0 -0
  81. /package/testing/{form-error → modules/form-error}/form-errors-harness.filters.d.ts +0 -0
  82. /package/testing/{input-box → modules/input-box}/input-box-harness-filters.d.ts +0 -0
  83. /package/testing/{input-box → modules/input-box}/input-box-harness.d.ts +0 -0
  84. /package/testing/{radio → modules/radio}/radio-group-harness-filters.d.ts +0 -0
  85. /package/testing/{radio → modules/radio}/radio-group-harness.d.ts +0 -0
  86. /package/testing/{radio → modules/radio}/radio-harness-filters.d.ts +0 -0
  87. /package/testing/{radio → modules/radio}/radio-harness.d.ts +0 -0
  88. /package/testing/{radio → modules/radio}/radio-label-harness.d.ts +0 -0
@@ -0,0 +1,158 @@
1
+ import { SkyComponentHarness } from '@skyux/core/testing';
2
+ import { SkyHelpInlineHarness } from '@skyux/help-inline/testing';
3
+ import { SkyFormErrorsHarness } from '../form-error/form-errors-harness';
4
+ import { SkyCheckboxHarness } from './checkbox-harness';
5
+ /**
6
+ * Harness for interacting with a checkbox group component in tests.
7
+ */
8
+ export class SkyCheckboxGroupHarness extends SkyComponentHarness {
9
+ /**
10
+ * @internal
11
+ */
12
+ static { this.hostSelector = 'sky-checkbox-group'; }
13
+ #getCheckboxes = this.locatorForAll(SkyCheckboxHarness);
14
+ #getHeading = this.locatorFor('.sky-checkbox-group-heading');
15
+ #getHeadingWrapper = this.locatorFor('.sky-checkbox-group-legend');
16
+ #getHintText = this.locatorForOptional('.sky-checkbox-group-hint-text');
17
+ #getLegendDefault = this.locatorForOptional('legend .sky-checkbox-group-heading-text');
18
+ #getLegendH3 = this.locatorForOptional('legend h3');
19
+ #getLegendH4 = this.locatorForOptional('legend h4');
20
+ #getLegendH5 = this.locatorForOptional('legend h5');
21
+ #getLegendHeading = this.locatorFor('legend h3,h4,h5,.sky-checkbox-group-heading-text');
22
+ /**
23
+ * Gets a `HarnessPredicate` that can be used to search for a
24
+ * `SkyCheckboxGroupHarness` that meets certain criteria.
25
+ */
26
+ static with(filters) {
27
+ return SkyCheckboxGroupHarness.getDataSkyIdPredicate(filters);
28
+ }
29
+ /**
30
+ * Clicks the help inline button.
31
+ */
32
+ async clickHelpInline() {
33
+ await (await this.#getHelpInline()).click();
34
+ }
35
+ /**
36
+ * Gets an array of harnesses for the checkboxes in the checkbox group.
37
+ */
38
+ async getCheckboxes() {
39
+ return await this.#getCheckboxes();
40
+ }
41
+ /**
42
+ * Gets the help popover content.
43
+ */
44
+ async getHelpPopoverContent() {
45
+ const content = await (await this.#getHelpInline()).getPopoverContent();
46
+ return content;
47
+ }
48
+ /**
49
+ * Gets the help popover title.
50
+ */
51
+ async getHelpPopoverTitle() {
52
+ return await (await this.#getHelpInline()).getPopoverTitle();
53
+ }
54
+ /**
55
+ * Gets the checkbox group's heading text. If `headingHidden` is true,
56
+ * the text will still be returned.
57
+ */
58
+ async getHeadingText() {
59
+ return await (await this.#getLegendHeading()).text();
60
+ }
61
+ /**
62
+ * Gets the checkbox group's hint text.
63
+ */
64
+ async getHintText() {
65
+ const hintText = await this.#getHintText();
66
+ return (await hintText?.text())?.trim() ?? '';
67
+ }
68
+ /**
69
+ * Whether the heading is hidden.
70
+ */
71
+ async getHeadingHidden() {
72
+ return await (await this.#getHeadingWrapper()).hasClass('sky-screen-reader-only');
73
+ }
74
+ /**
75
+ * The semantic heading level used for the checkbox group. Returns undefined if heading level is not set.
76
+ */
77
+ async getHeadingLevel() {
78
+ const heading = await this.#getLegendHeading();
79
+ const h3 = await heading.matchesSelector('h3');
80
+ const h4 = await heading.matchesSelector('h4');
81
+ const h5 = await heading.matchesSelector('h5');
82
+ if (h3) {
83
+ return 3;
84
+ }
85
+ else if (h4) {
86
+ return 4;
87
+ }
88
+ else if (h5) {
89
+ return 5;
90
+ }
91
+ else {
92
+ return undefined;
93
+ }
94
+ }
95
+ /**
96
+ * The heading style used for the checkbox group.
97
+ */
98
+ async getHeadingStyle() {
99
+ const heading = await this.#getLegendHeading();
100
+ const isHeadingStyle3 = await heading.hasClass('sky-font-heading-3');
101
+ const isHeadingStyle4 = await heading.hasClass('sky-font-heading-4');
102
+ if (isHeadingStyle3) {
103
+ return 3;
104
+ }
105
+ else if (isHeadingStyle4) {
106
+ return 4;
107
+ }
108
+ else {
109
+ return 5;
110
+ }
111
+ }
112
+ /**
113
+ * Whether the checkbox group is required.
114
+ */
115
+ async getRequired() {
116
+ const heading = await this.#getHeading();
117
+ return await heading.hasClass('sky-control-label-required');
118
+ }
119
+ /**
120
+ * Whether the checkbox group is stacked.
121
+ */
122
+ async getStacked() {
123
+ const host = await this.host();
124
+ const heading = (await this.#getLegendH3()) ||
125
+ (await this.#getLegendH4()) ||
126
+ (await this.#getLegendH5());
127
+ const label = await this.#getLegendDefault();
128
+ return (((await host.hasClass('sky-form-field-stacked')) && !!label) ||
129
+ ((await host.hasClass('sky-field-group-stacked')) && !!heading));
130
+ }
131
+ /**
132
+ * Whether all the checkboxes in a required group are unchecked.
133
+ */
134
+ async hasRequiredError() {
135
+ return await (await this.#getFormErrors()).hasError('required');
136
+ }
137
+ /**
138
+ * Whether the checkbox group has errors.
139
+ */
140
+ async hasError(errorName) {
141
+ return await (await this.#getFormErrors()).hasError(errorName);
142
+ }
143
+ async #getFormErrors() {
144
+ return await this.locatorFor(SkyFormErrorsHarness.with({
145
+ dataSkyId: 'checkbox-group-form-errors',
146
+ }))();
147
+ }
148
+ async #getHelpInline() {
149
+ const harness = await this.locatorForOptional(SkyHelpInlineHarness.with({
150
+ ancestor: '.sky-checkbox-group > .sky-checkbox-group-legend',
151
+ }))();
152
+ if (harness) {
153
+ return harness;
154
+ }
155
+ throw Error('No help inline found.');
156
+ }
157
+ }
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy90ZXN0aW5nL3NyYy9tb2R1bGVzL2NoZWNrYm94L2NoZWNrYm94LWdyb3VwLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFLMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFeEQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsbUJBQW1CO0lBQzlEOztPQUVHO2FBQ1csaUJBQVksR0FBRyxvQkFBb0IsQ0FBQztJQUVsRCxjQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3hELFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLDZCQUE2QixDQUFDLENBQUM7SUFDN0Qsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQ25FLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUN4RSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQ3pDLHlDQUF5QyxDQUMxQyxDQUFDO0lBQ0YsWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNwRCxZQUFZLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3BELFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7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QU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYztRQUNsQixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FDMUIsb0JBQW9CLENBQUMsSUFBSSxDQUFDO1lBQ3hCLFNBQVMsRUFBRSw0QkFBNEI7U0FDeEMsQ0FBQyxDQUNILEVBQUUsQ0FBQztJQUNOLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYztRQUNsQixNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FDM0Msb0JBQW9CLENBQUMsSUFBSSxDQUFDO1lBQ3hCLFFBQVEsRUFBRSxrREFBa0Q7U0FDN0QsQ0FBQyxDQUNILEVBQUUsQ0FBQztRQUVKLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO1FBRUQsTUFBTSxLQUFLLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreUNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcbmltcG9ydCB7XG4gIFNreUNoZWNrYm94R3JvdXBIZWFkaW5nTGV2ZWwsXG4gIFNreUNoZWNrYm94R3JvdXBIZWFkaW5nU3R5bGUsXG59IGZyb20gJ0Bza3l1eC9mb3Jtcyc7XG5pbXBvcnQgeyBTa3lIZWxwSW5saW5lSGFybmVzcyB9IGZyb20gJ0Bza3l1eC9oZWxwLWlubGluZS90ZXN0aW5nJztcblxuaW1wb3J0IHsgU2t5Rm9ybUVycm9yc0hhcm5lc3MgfSBmcm9tICcuLi9mb3JtLWVycm9yL2Zvcm0tZXJyb3JzLWhhcm5lc3MnO1xuXG5pbXBvcnQgeyBTa3lDaGVja2JveEdyb3VwSGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL2NoZWNrYm94LWdyb3VwLWhhcm5lc3MtZmlsdGVycyc7XG5pbXBvcnQgeyBTa3lDaGVja2JveEhhcm5lc3MgfSBmcm9tICcuL2NoZWNrYm94LWhhcm5lc3MnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYSBjaGVja2JveCBncm91cCBjb21wb25lbnQgaW4gdGVzdHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lDaGVja2JveEdyb3VwSGFybmVzcyBleHRlbmRzIFNreUNvbXBvbmVudEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdza3ktY2hlY2tib3gtZ3JvdXAnO1xuXG4gICNnZXRDaGVja2JveGVzID0gdGhpcy5sb2NhdG9yRm9yQWxsKFNreUNoZWNrYm94SGFybmVzcyk7XG4gICNnZXRIZWFkaW5nID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWNoZWNrYm94LWdyb3VwLWhlYWRpbmcnKTtcbiAgI2dldEhlYWRpbmdXcmFwcGVyID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWNoZWNrYm94LWdyb3VwLWxlZ2VuZCcpO1xuICAjZ2V0SGludFRleHQgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbCgnLnNreS1jaGVja2JveC1ncm91cC1oaW50LXRleHQnKTtcbiAgI2dldExlZ2VuZERlZmF1bHQgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChcbiAgICAnbGVnZW5kIC5za3ktY2hlY2tib3gtZ3JvdXAtaGVhZGluZy10ZXh0JyxcbiAgKTtcbiAgI2dldExlZ2VuZEgzID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJ2xlZ2VuZCBoMycpO1xuICAjZ2V0TGVnZW5kSDQgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbCgnbGVnZW5kIGg0Jyk7XG4gICNnZXRMZWdlbmRINSA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKCdsZWdlbmQgaDUnKTtcbiAgI2dldExlZ2VuZEhlYWRpbmcgPSB0aGlzLmxvY2F0b3JGb3IoXG4gICAgJ2xlZ2VuZCBoMyxoNCxoNSwuc2t5LWNoZWNrYm94LWdyb3VwLWhlYWRpbmctdGV4dCcsXG4gICk7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreUNoZWNrYm94R3JvdXBIYXJuZXNzYCB0aGF0IG1lZXRzIGNlcnRhaW4gY3JpdGVyaWEuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGgoXG4gICAgZmlsdGVyczogU2t5Q2hlY2tib3hHcm91cEhhcm5lc3NGaWx0ZXJzLFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFNreUNoZWNrYm94R3JvdXBIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreUNoZWNrYm94R3JvdXBIYXJuZXNzLmdldERhdGFTa3lJZFByZWRpY2F0ZShmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIGhlbHAgaW5saW5lIGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja0hlbHBJbmxpbmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuI2dldEhlbHBJbmxpbmUoKSkuY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFuIGFycmF5IG9mIGhhcm5lc3NlcyBmb3IgdGhlIGNoZWNrYm94ZXMgaW4gdGhlIGNoZWNrYm94IGdyb3VwLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldENoZWNrYm94ZXMoKTogUHJvbWlzZTxTa3lDaGVja2JveEhhcm5lc3NbXT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLiNnZXRDaGVja2JveGVzKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaGVscCBwb3BvdmVyIGNvbnRlbnQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SGVscFBvcG92ZXJDb250ZW50KCk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgY29udGVudCA9IGF3YWl0IChhd2FpdCB0aGlzLiNnZXRIZWxwSW5saW5lKCkpLmdldFBvcG92ZXJDb250ZW50KCk7XG5cbiAgICByZXR1cm4gY29udGVudCBhcyBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaGVscCBwb3BvdmVyIHRpdGxlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhlbHBQb3BvdmVyVGl0bGUoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldEhlbHBJbmxpbmUoKSkuZ2V0UG9wb3ZlclRpdGxlKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY2hlY2tib3ggZ3JvdXAncyBoZWFkaW5nIHRleHQuIElmIGBoZWFkaW5nSGlkZGVuYCBpcyB0cnVlLFxuICAgKiB0aGUgdGV4dCB3aWxsIHN0aWxsIGJlIHJldHVybmVkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhlYWRpbmdUZXh0KCk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRMZWdlbmRIZWFkaW5nKCkpLnRleHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjaGVja2JveCBncm91cCdzIGhpbnQgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIaW50VGV4dCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGhpbnRUZXh0ID0gYXdhaXQgdGhpcy4jZ2V0SGludFRleHQoKTtcblxuICAgIHJldHVybiAoYXdhaXQgaGludFRleHQ/LnRleHQoKSk/LnRyaW0oKSA/PyAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBoZWFkaW5nIGlzIGhpZGRlbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIZWFkaW5nSGlkZGVuKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBhd2FpdCAoXG4gICAgICBhd2FpdCB0aGlzLiNnZXRIZWFkaW5nV3JhcHBlcigpXG4gICAgKS5oYXNDbGFzcygnc2t5LXNjcmVlbi1yZWFkZXItb25seScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzZW1hbnRpYyBoZWFkaW5nIGxldmVsIHVzZWQgZm9yIHRoZSBjaGVja2JveCBncm91cC4gUmV0dXJucyB1bmRlZmluZWQgaWYgaGVhZGluZyBsZXZlbCBpcyBub3Qgc2V0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhlYWRpbmdMZXZlbCgpOiBQcm9taXNlPFxuICAgIFNreUNoZWNrYm94R3JvdXBIZWFkaW5nTGV2ZWwgfCB1bmRlZmluZWRcbiAgPiB7XG4gICAgY29uc3QgaGVhZGluZyA9IGF3YWl0IHRoaXMuI2dldExlZ2VuZEhlYWRpbmcoKTtcbiAgICBjb25zdCBoMyA9IGF3YWl0IGhlYWRpbmcubWF0Y2hlc1NlbGVjdG9yKCdoMycpO1xuICAgIGNvbnN0IGg0ID0gYXdhaXQgaGVhZGluZy5tYXRjaGVzU2VsZWN0b3IoJ2g0Jyk7XG4gICAgY29uc3QgaDUgPSBhd2FpdCBoZWFkaW5nLm1hdGNoZXNTZWxlY3RvcignaDUnKTtcblxuICAgIGlmIChoMykge1xuICAgICAgcmV0dXJuIDM7XG4gICAgfSBlbHNlIGlmIChoNCkge1xuICAgICAgcmV0dXJuIDQ7XG4gICAgfSBlbHNlIGlmIChoNSkge1xuICAgICAgcmV0dXJuIDU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBoZWFkaW5nIHN0eWxlIHVzZWQgZm9yIHRoZSBjaGVja2JveCBncm91cC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIZWFkaW5nU3R5bGUoKTogUHJvbWlzZTxTa3lDaGVja2JveEdyb3VwSGVhZGluZ1N0eWxlPiB7XG4gICAgY29uc3QgaGVhZGluZyA9IGF3YWl0IHRoaXMuI2dldExlZ2VuZEhlYWRpbmcoKTtcblxuICAgIGNvbnN0IGlzSGVhZGluZ1N0eWxlMyA9IGF3YWl0IGhlYWRpbmcuaGFzQ2xhc3MoJ3NreS1mb250LWhlYWRpbmctMycpO1xuICAgIGNvbnN0IGlzSGVhZGluZ1N0eWxlNCA9IGF3YWl0IGhlYWRpbmcuaGFzQ2xhc3MoJ3NreS1mb250LWhlYWRpbmctNCcpO1xuXG4gICAgaWYgKGlzSGVhZGluZ1N0eWxlMykge1xuICAgICAgcmV0dXJuIDM7XG4gICAgfSBlbHNlIGlmIChpc0hlYWRpbmdTdHlsZTQpIHtcbiAgICAgIHJldHVybiA0O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gNTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgY2hlY2tib3ggZ3JvdXAgaXMgcmVxdWlyZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0UmVxdWlyZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgaGVhZGluZyA9IGF3YWl0IHRoaXMuI2dldEhlYWRpbmcoKTtcblxuICAgIHJldHVybiBhd2FpdCBoZWFkaW5nLmhhc0NsYXNzKCdza3ktY29udHJvbC1sYWJlbC1yZXF1aXJlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGdyb3VwIGlzIHN0YWNrZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0U3RhY2tlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBob3N0ID0gYXdhaXQgdGhpcy5ob3N0KCk7XG4gICAgY29uc3QgaGVhZGluZyA9XG4gICAgICAoYXdhaXQgdGhpcy4jZ2V0TGVnZW5kSDMoKSkgfHxcbiAgICAgIChhd2FpdCB0aGlzLiNnZXRMZWdlbmRINCgpKSB8fFxuICAgICAgKGF3YWl0IHRoaXMuI2dldExlZ2VuZEg1KCkpO1xuICAgIGNvbnN0IGxhYmVsID0gYXdhaXQgdGhpcy4jZ2V0TGVnZW5kRGVmYXVsdCgpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgICgoYXdhaXQgaG9zdC5oYXNDbGFzcygnc2t5LWZvcm0tZmllbGQtc3RhY2tlZCcpKSAmJiAhIWxhYmVsKSB8fFxuICAgICAgKChhd2FpdCBob3N0Lmhhc0NsYXNzKCdza3ktZmllbGQtZ3JvdXAtc3RhY2tlZCcpKSAmJiAhIWhlYWRpbmcpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGFsbCB0aGUgY2hlY2tib3hlcyBpbiBhIHJlcXVpcmVkIGdyb3VwIGFyZSB1bmNoZWNrZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaGFzUmVxdWlyZWRFcnJvcigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldEZvcm1FcnJvcnMoKSkuaGFzRXJyb3IoJ3JlcXVpcmVkJyk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgY2hlY2tib3ggZ3JvdXAgaGFzIGVycm9ycy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBoYXNFcnJvcihlcnJvck5hbWU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0Rm9ybUVycm9ycygpKS5oYXNFcnJvcihlcnJvck5hbWUpO1xuICB9XG5cbiAgYXN5bmMgI2dldEZvcm1FcnJvcnMoKTogUHJvbWlzZTxTa3lGb3JtRXJyb3JzSGFybmVzcz4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmxvY2F0b3JGb3IoXG4gICAgICBTa3lGb3JtRXJyb3JzSGFybmVzcy53aXRoKHtcbiAgICAgICAgZGF0YVNreUlkOiAnY2hlY2tib3gtZ3JvdXAtZm9ybS1lcnJvcnMnLFxuICAgICAgfSksXG4gICAgKSgpO1xuICB9XG5cbiAgYXN5bmMgI2dldEhlbHBJbmxpbmUoKTogUHJvbWlzZTxTa3lIZWxwSW5saW5lSGFybmVzcz4ge1xuICAgIGNvbnN0IGhhcm5lc3MgPSBhd2FpdCB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChcbiAgICAgIFNreUhlbHBJbmxpbmVIYXJuZXNzLndpdGgoe1xuICAgICAgICBhbmNlc3RvcjogJy5za3ktY2hlY2tib3gtZ3JvdXAgPiAuc2t5LWNoZWNrYm94LWdyb3VwLWxlZ2VuZCcsXG4gICAgICB9KSxcbiAgICApKCk7XG5cbiAgICBpZiAoaGFybmVzcykge1xuICAgICAgcmV0dXJuIGhhcm5lc3M7XG4gICAgfVxuXG4gICAgdGhyb3cgRXJyb3IoJ05vIGhlbHAgaW5saW5lIGZvdW5kLicpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Zvcm1zL3Rlc3Rpbmcvc3JjL21vZHVsZXMvY2hlY2tib3gvY2hlY2tib3gtaGFybmVzcy1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBgU2t5Q2hlY2tib3hIYXJuZXNzYCBpbnN0YW5jZXMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2UsIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZVxuZXhwb3J0IGludGVyZmFjZSBTa3lDaGVja2JveEhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgU2t5SGFybmVzc0ZpbHRlcnMge31cbiJdfQ==
@@ -0,0 +1,196 @@
1
+ import { SkyComponentHarness } from '@skyux/core/testing';
2
+ import { SkyHelpInlineHarness } from '@skyux/help-inline/testing';
3
+ import { SkyFormErrorsHarness } from '../form-error/form-errors-harness';
4
+ import { SkyCheckboxLabelHarness } from './checkbox-label-harness';
5
+ import { SkyCheckboxLabelTextLabelHarness } from './checkbox-label-text-label.harness';
6
+ /**
7
+ * Harness for interacting with a checkbox component in tests.
8
+ */
9
+ export class SkyCheckboxHarness extends SkyComponentHarness {
10
+ /**
11
+ * @internal
12
+ */
13
+ static { this.hostSelector = 'sky-checkbox'; }
14
+ #getHintText = this.locatorForOptional('.sky-checkbox-hint-text');
15
+ #getInput = this.locatorFor('input.sky-checkbox-input');
16
+ #getLabel = this.locatorForOptional(SkyCheckboxLabelHarness);
17
+ #getLabelTextLabel = this.locatorForOptional(SkyCheckboxLabelTextLabelHarness);
18
+ /**
19
+ * Gets a `HarnessPredicate` that can be used to search for a
20
+ * `SkyCheckboxHarness` that meets certain criteria.
21
+ */
22
+ static with(filters) {
23
+ return SkyCheckboxHarness.getDataSkyIdPredicate(filters);
24
+ }
25
+ /**
26
+ * Blurs the checkbox.
27
+ */
28
+ async blur() {
29
+ await (await this.#getInput()).blur();
30
+ }
31
+ /**
32
+ * Clicks the help inline button.
33
+ */
34
+ async clickHelpInline() {
35
+ await (await this.#getHelpInline()).click();
36
+ }
37
+ /**
38
+ * Puts the checkbox in a checked state by toggling it if it is currently unchecked, or doing nothing if it is already checked.
39
+ */
40
+ async check() {
41
+ if (!(await this.isChecked())) {
42
+ await this.#toggle();
43
+ }
44
+ }
45
+ /**
46
+ * Focuses the checkbox.
47
+ */
48
+ async focus() {
49
+ await (await this.#getInput()).focus();
50
+ }
51
+ /**
52
+ * Gets the checkbox's aria-label.
53
+ */
54
+ async getAriaLabel() {
55
+ return await (await this.#getInput()).getAttribute('aria-label');
56
+ }
57
+ /**
58
+ * Gets the checkbox's aria-labelledby.
59
+ */
60
+ async getAriaLabelledby() {
61
+ return await (await this.#getInput()).getAttribute('aria-labelledby');
62
+ }
63
+ /**
64
+ * Gets the help popover content.
65
+ */
66
+ async getHelpPopoverContent() {
67
+ const content = await (await this.#getHelpInline()).getPopoverContent();
68
+ return content;
69
+ }
70
+ /**
71
+ * Gets the help popover title.
72
+ */
73
+ async getHelpPopoverTitle() {
74
+ return await (await this.#getHelpInline()).getPopoverTitle();
75
+ }
76
+ /**
77
+ * Gets the checkbox's label text. If the label is set via `labelText` and `labelHidden` is true,
78
+ * the text will still be returned.
79
+ */
80
+ async getLabelText() {
81
+ const labelTextLabel = await this.#getLabelTextLabel();
82
+ const label = await this.#getLabel();
83
+ if (labelTextLabel) {
84
+ const text = await labelTextLabel.getText();
85
+ const ariaLabel = await this.getAriaLabel();
86
+ // if labelText is set, ariaLabel will never return null
87
+ return text || ariaLabel;
88
+ }
89
+ else {
90
+ return await label?.getText();
91
+ }
92
+ }
93
+ /**
94
+ * Whether the label is hidden. Only supported when using the `labelText` input to set the label.
95
+ */
96
+ async getLabelHidden() {
97
+ const labelTextLabel = await this.#getLabelTextLabel();
98
+ const label = await this.#getLabel();
99
+ if (label) {
100
+ throw new Error('`labelIsHidden` is only supported when setting the checkbox label via the `labelText` input.');
101
+ }
102
+ else {
103
+ return !(await labelTextLabel?.getText());
104
+ }
105
+ }
106
+ /**
107
+ * Gets the checkbox's hint text.
108
+ */
109
+ async getHintText() {
110
+ const hintText = await this.#getHintText();
111
+ return (await hintText?.text())?.trim() ?? '';
112
+ }
113
+ /**
114
+ * Gets the checkbox's name.
115
+ */
116
+ async getName() {
117
+ return await (await this.#getInput()).getAttribute('name');
118
+ }
119
+ /**
120
+ * Gets the checkbox's value.
121
+ */
122
+ async getValue() {
123
+ return await (await this.#getInput()).getProperty('value');
124
+ }
125
+ /**
126
+ * Whether the checkbox displays custom error.
127
+ */
128
+ async hasCustomError(errorName) {
129
+ return await (await this.#getFormErrors()).hasError(errorName);
130
+ }
131
+ /**
132
+ * Whether the checkbox displays an error that it is required.
133
+ */
134
+ async hasRequiredError() {
135
+ return await (await this.#getFormErrors()).hasError('required');
136
+ }
137
+ /**
138
+ * Whether the checkbox is checked.
139
+ */
140
+ async isChecked() {
141
+ return await (await this.#getInput()).getProperty('checked');
142
+ }
143
+ /**
144
+ * Whether the checkbox is disabled.
145
+ */
146
+ async isDisabled() {
147
+ const disabled = await (await this.#getInput()).getAttribute('disabled');
148
+ return disabled !== null;
149
+ }
150
+ /**
151
+ * Whether the checkbox is focused.
152
+ */
153
+ async isFocused() {
154
+ return await (await this.#getInput()).isFocused();
155
+ }
156
+ /**
157
+ * Whether the checkbox is required.
158
+ */
159
+ async isRequired() {
160
+ const value = await (await this.#getInput()).getAttribute('required');
161
+ return value !== null;
162
+ }
163
+ /**
164
+ * Whether the checkbox is stacked.
165
+ */
166
+ async isStacked() {
167
+ return await (await this.host()).hasClass('sky-form-field-stacked');
168
+ }
169
+ /**
170
+ * Puts the checkbox in an unchecked state by toggling it if it is currently checked, or doing nothing if it is already unchecked.
171
+ */
172
+ async uncheck() {
173
+ if (await this.isChecked()) {
174
+ await this.#toggle();
175
+ }
176
+ }
177
+ async #getFormErrors() {
178
+ return await this.locatorFor(SkyFormErrorsHarness)();
179
+ }
180
+ async #getHelpInline() {
181
+ const harness = await this.locatorForOptional(SkyHelpInlineHarness)();
182
+ if (harness) {
183
+ return harness;
184
+ }
185
+ throw Error('No help inline found.');
186
+ }
187
+ async #toggle() {
188
+ if (await this.isDisabled()) {
189
+ throw new Error('Could not toggle the checkbox because it is disabled.');
190
+ }
191
+ else {
192
+ await (await this.#getInput()).click();
193
+ }
194
+ }
195
+ }
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy90ZXN0aW5nL3NyYy9tb2R1bGVzL2NoZWNrYm94L2NoZWNrYm94LWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHekUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFdkY7O0dBRUc7QUFDSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsbUJBQW1CO0lBQ3pEOztPQUVHO2FBQ1csaUJBQVksR0FBRyxjQUFjLENBQUM7SUFFNUMsWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBRWxFLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFFeEQsU0FBUyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBRTdELGtCQUFrQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FDMUMsZ0NBQWdDLENBQ2pDLENBQUM7SUFFRjs7O09BR0c7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUNoQixPQUFrQztRQUVsQyxPQUFPLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxJQUFJO1FBQ2YsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFD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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreUNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcbmltcG9ydCB7IFNreUhlbHBJbmxpbmVIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2hlbHAtaW5saW5lL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBTa3lGb3JtRXJyb3JzSGFybmVzcyB9IGZyb20gJy4uL2Zvcm0tZXJyb3IvZm9ybS1lcnJvcnMtaGFybmVzcyc7XG5cbmltcG9ydCB7IFNreUNoZWNrYm94SGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL2NoZWNrYm94LWhhcm5lc3MtZmlsdGVycyc7XG5pbXBvcnQgeyBTa3lDaGVja2JveExhYmVsSGFybmVzcyB9IGZyb20gJy4vY2hlY2tib3gtbGFiZWwtaGFybmVzcyc7XG5pbXBvcnQgeyBTa3lDaGVja2JveExhYmVsVGV4dExhYmVsSGFybmVzcyB9IGZyb20gJy4vY2hlY2tib3gtbGFiZWwtdGV4dC1sYWJlbC5oYXJuZXNzJztcblxuLyoqXG4gKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgY2hlY2tib3ggY29tcG9uZW50IGluIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgU2t5Q2hlY2tib3hIYXJuZXNzIGV4dGVuZHMgU2t5Q29tcG9uZW50SGFybmVzcyB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ3NreS1jaGVja2JveCc7XG5cbiAgI2dldEhpbnRUZXh0ID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJy5za3ktY2hlY2tib3gtaGludC10ZXh0Jyk7XG5cbiAgI2dldElucHV0ID0gdGhpcy5sb2NhdG9yRm9yKCdpbnB1dC5za3ktY2hlY2tib3gtaW5wdXQnKTtcblxuICAjZ2V0TGFiZWwgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChTa3lDaGVja2JveExhYmVsSGFybmVzcyk7XG5cbiAgI2dldExhYmVsVGV4dExhYmVsID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoXG4gICAgU2t5Q2hlY2tib3hMYWJlbFRleHRMYWJlbEhhcm5lc3MsXG4gICk7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreUNoZWNrYm94SGFybmVzc2AgdGhhdCBtZWV0cyBjZXJ0YWluIGNyaXRlcmlhLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB3aXRoKFxuICAgIGZpbHRlcnM6IFNreUNoZWNrYm94SGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5Q2hlY2tib3hIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreUNoZWNrYm94SGFybmVzcy5nZXREYXRhU2t5SWRQcmVkaWNhdGUoZmlsdGVycyk7XG4gIH1cblxuICAvKipcbiAgICogQmx1cnMgdGhlIGNoZWNrYm94LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGJsdXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmJsdXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIGhlbHAgaW5saW5lIGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja0hlbHBJbmxpbmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuI2dldEhlbHBJbmxpbmUoKSkuY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQdXRzIHRoZSBjaGVja2JveCBpbiBhIGNoZWNrZWQgc3RhdGUgYnkgdG9nZ2xpbmcgaXQgaWYgaXQgaXMgY3VycmVudGx5IHVuY2hlY2tlZCwgb3IgZG9pbmcgbm90aGluZyBpZiBpdCBpcyBhbHJlYWR5IGNoZWNrZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2hlY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCEoYXdhaXQgdGhpcy5pc0NoZWNrZWQoKSkpIHtcbiAgICAgIGF3YWl0IHRoaXMuI3RvZ2dsZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBGb2N1c2VzIHRoZSBjaGVja2JveC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBmb2N1cygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZm9jdXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjaGVja2JveCdzIGFyaWEtbGFiZWwuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0QXJpYUxhYmVsKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZ2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY2hlY2tib3gncyBhcmlhLWxhYmVsbGVkYnkuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0QXJpYUxhYmVsbGVkYnkoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRJbnB1dCgpKS5nZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWxsZWRieScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhlbHAgcG9wb3ZlciBjb250ZW50LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhlbHBQb3BvdmVyQ29udGVudCgpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgIGNvbnN0IGNvbnRlbnQgPSBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SGVscElubGluZSgpKS5nZXRQb3BvdmVyQ29udGVudCgpO1xuXG4gICAgcmV0dXJuIGNvbnRlbnQgYXMgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhlbHAgcG9wb3ZlciB0aXRsZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIZWxwUG9wb3ZlclRpdGxlKCk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRIZWxwSW5saW5lKCkpLmdldFBvcG92ZXJUaXRsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGNoZWNrYm94J3MgbGFiZWwgdGV4dC4gSWYgdGhlIGxhYmVsIGlzIHNldCB2aWEgYGxhYmVsVGV4dGAgYW5kIGBsYWJlbEhpZGRlbmAgaXMgdHJ1ZSxcbiAgICogdGhlIHRleHQgd2lsbCBzdGlsbCBiZSByZXR1cm5lZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRMYWJlbFRleHQoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICBjb25zdCBsYWJlbFRleHRMYWJlbCA9IGF3YWl0IHRoaXMuI2dldExhYmVsVGV4dExhYmVsKCk7XG4gICAgY29uc3QgbGFiZWwgPSBhd2FpdCB0aGlzLiNnZXRMYWJlbCgpO1xuXG4gICAgaWYgKGxhYmVsVGV4dExhYmVsKSB7XG4gICAgICBjb25zdCB0ZXh0ID0gYXdhaXQgbGFiZWxUZXh0TGFiZWwuZ2V0VGV4dCgpO1xuICAgICAgY29uc3QgYXJpYUxhYmVsID0gYXdhaXQgdGhpcy5nZXRBcmlhTGFiZWwoKTtcblxuICAgICAgLy8gaWYgbGFiZWxUZXh0IGlzIHNldCwgYXJpYUxhYmVsIHdpbGwgbmV2ZXIgcmV0dXJuIG51bGxcbiAgICAgIHJldHVybiB0ZXh0IHx8IGFyaWFMYWJlbCE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBhd2FpdCBsYWJlbD8uZ2V0VGV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBsYWJlbCBpcyBoaWRkZW4uIE9ubHkgc3VwcG9ydGVkIHdoZW4gdXNpbmcgdGhlIGBsYWJlbFRleHRgIGlucHV0IHRvIHNldCB0aGUgbGFiZWwuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0TGFiZWxIaWRkZW4oKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgbGFiZWxUZXh0TGFiZWwgPSBhd2FpdCB0aGlzLiNnZXRMYWJlbFRleHRMYWJlbCgpO1xuICAgIGNvbnN0IGxhYmVsID0gYXdhaXQgdGhpcy4jZ2V0TGFiZWwoKTtcblxuICAgIGlmIChsYWJlbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnYGxhYmVsSXNIaWRkZW5gIGlzIG9ubHkgc3VwcG9ydGVkIHdoZW4gc2V0dGluZyB0aGUgY2hlY2tib3ggbGFiZWwgdmlhIHRoZSBgbGFiZWxUZXh0YCBpbnB1dC4nLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICEoYXdhaXQgbGFiZWxUZXh0TGFiZWw/LmdldFRleHQoKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGNoZWNrYm94J3MgaGludCB0ZXh0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhpbnRUZXh0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgaGludFRleHQgPSBhd2FpdCB0aGlzLiNnZXRIaW50VGV4dCgpO1xuXG4gICAgcmV0dXJuIChhd2FpdCBoaW50VGV4dD8udGV4dCgpKT8udHJpbSgpID8/ICcnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGNoZWNrYm94J3MgbmFtZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXROYW1lKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZ2V0QXR0cmlidXRlKCduYW1lJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY2hlY2tib3gncyB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRWYWx1ZSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmdldFByb3BlcnR5PHN0cmluZyB8IG51bGw+KCd2YWx1ZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGRpc3BsYXlzIGN1c3RvbSBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBoYXNDdXN0b21FcnJvcihlcnJvck5hbWU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0Rm9ybUVycm9ycygpKS5oYXNFcnJvcihlcnJvck5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGRpc3BsYXlzIGFuIGVycm9yIHRoYXQgaXQgaXMgcmVxdWlyZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaGFzUmVxdWlyZWRFcnJvcigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldEZvcm1FcnJvcnMoKSkuaGFzRXJyb3IoJ3JlcXVpcmVkJyk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgY2hlY2tib3ggaXMgY2hlY2tlZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc0NoZWNrZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRJbnB1dCgpKS5nZXRQcm9wZXJ0eTxib29sZWFuPignY2hlY2tlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIGRpc2FibGVkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzRGlzYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgZGlzYWJsZWQgPSBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZ2V0QXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgIHJldHVybiBkaXNhYmxlZCAhPT0gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBjaGVja2JveCBpcyBmb2N1c2VkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzRm9jdXNlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmlzRm9jdXNlZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIHJlcXVpcmVkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzUmVxdWlyZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgdmFsdWUgPSBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZ2V0QXR0cmlidXRlKCdyZXF1aXJlZCcpO1xuICAgIHJldHVybiB2YWx1ZSAhPT0gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBjaGVja2JveCBpcyBzdGFja2VkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzU3RhY2tlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuaG9zdCgpKS5oYXNDbGFzcygnc2t5LWZvcm0tZmllbGQtc3RhY2tlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFB1dHMgdGhlIGNoZWNrYm94IGluIGFuIHVuY2hlY2tlZCBzdGF0ZSBieSB0b2dnbGluZyBpdCBpZiBpdCBpcyBjdXJyZW50bHkgY2hlY2tlZCwgb3IgZG9pbmcgbm90aGluZyBpZiBpdCBpcyBhbHJlYWR5IHVuY2hlY2tlZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyB1bmNoZWNrKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChhd2FpdCB0aGlzLmlzQ2hlY2tlZCgpKSB7XG4gICAgICBhd2FpdCB0aGlzLiN0b2dnbGUoKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyAjZ2V0Rm9ybUVycm9ycygpOiBQcm9taXNlPFNreUZvcm1FcnJvcnNIYXJuZXNzPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMubG9jYXRvckZvcihTa3lGb3JtRXJyb3JzSGFybmVzcykoKTtcbiAgfVxuXG4gIGFzeW5jICNnZXRIZWxwSW5saW5lKCk6IFByb21pc2U8U2t5SGVscElubGluZUhhcm5lc3M+IHtcbiAgICBjb25zdCBoYXJuZXNzID0gYXdhaXQgdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoU2t5SGVscElubGluZUhhcm5lc3MpKCk7XG5cbiAgICBpZiAoaGFybmVzcykge1xuICAgICAgcmV0dXJuIGhhcm5lc3M7XG4gICAgfVxuXG4gICAgdGhyb3cgRXJyb3IoJ05vIGhlbHAgaW5saW5lIGZvdW5kLicpO1xuICB9XG5cbiAgYXN5bmMgI3RvZ2dsZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoYXdhaXQgdGhpcy5pc0Rpc2FibGVkKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IHRvZ2dsZSB0aGUgY2hlY2tib3ggYmVjYXVzZSBpdCBpcyBkaXNhYmxlZC4nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXdhaXQgKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmNsaWNrKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { ComponentHarness } from '@angular/cdk/testing';
2
+ /**
3
+ * Harness for interacting with a checkbox label component in tests.
4
+ * @internal
5
+ */
6
+ export class SkyCheckboxLabelHarness extends ComponentHarness {
7
+ /**
8
+ * @internal
9
+ */
10
+ static { this.hostSelector = 'sky-checkbox-label'; }
11
+ #getLabelContent = this.locatorFor('.sky-switch-label');
12
+ /**
13
+ * Gets the text content of the checkbox label.
14
+ */
15
+ async getText() {
16
+ return await (await this.#getLabelContent()).text();
17
+ }
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtbGFiZWwtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy90ZXN0aW5nL3NyYy9tb2R1bGVzL2NoZWNrYm94L2NoZWNrYm94LWxhYmVsLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGdCQUFnQjtJQUMzRDs7T0FFRzthQUNXLGlCQUFZLEdBQUcsb0JBQW9CLENBQUM7SUFFbEQsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBRXhEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE9BQU87UUFDbEIsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYSBjaGVja2JveCBsYWJlbCBjb21wb25lbnQgaW4gdGVzdHMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIFNreUNoZWNrYm94TGFiZWxIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ3NreS1jaGVja2JveC1sYWJlbCc7XG5cbiAgI2dldExhYmVsQ29udGVudCA9IHRoaXMubG9jYXRvckZvcignLnNreS1zd2l0Y2gtbGFiZWwnKTtcblxuICAvKipcbiAgICogR2V0cyB0aGUgdGV4dCBjb250ZW50IG9mIHRoZSBjaGVja2JveCBsYWJlbC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRUZXh0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRMYWJlbENvbnRlbnQoKSkudGV4dCgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { ComponentHarness } from '@angular/cdk/testing';
2
+ /**
3
+ * Harness for interacting with a `labelText` checkbox label component in tests.
4
+ * @internal
5
+ */
6
+ export class SkyCheckboxLabelTextLabelHarness extends ComponentHarness {
7
+ /**
8
+ * @internal
9
+ */
10
+ static { this.hostSelector = 'sky-checkbox-label-text-label'; }
11
+ #getLabelContent = this.locatorForOptional('.sky-switch-label');
12
+ /**
13
+ * Gets the text content of the `labelText` checkbox label.
14
+ */
15
+ async getText() {
16
+ return await (await this.#getLabelContent())?.text();
17
+ }
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtbGFiZWwtdGV4dC1sYWJlbC5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Zvcm1zL3Rlc3Rpbmcvc3JjL21vZHVsZXMvY2hlY2tib3gvY2hlY2tib3gtbGFiZWwtdGV4dC1sYWJlbC5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSxnQkFBZ0I7SUFDcEU7O09BRUc7YUFDVyxpQkFBWSxHQUFHLCtCQUErQixDQUFDO0lBRTdELGdCQUFnQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBRWhFOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE9BQU87UUFDbEIsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3ZELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYSBgbGFiZWxUZXh0YCBjaGVja2JveCBsYWJlbCBjb21wb25lbnQgaW4gdGVzdHMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIFNreUNoZWNrYm94TGFiZWxUZXh0TGFiZWxIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ3NreS1jaGVja2JveC1sYWJlbC10ZXh0LWxhYmVsJztcblxuICAjZ2V0TGFiZWxDb250ZW50ID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJy5za3ktc3dpdGNoLWxhYmVsJyk7XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHRleHQgY29udGVudCBvZiB0aGUgYGxhYmVsVGV4dGAgY2hlY2tib3ggbGFiZWwuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0VGV4dCgpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0TGFiZWxDb250ZW50KCkpPy50ZXh0KCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZ3JvdXAtaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Zvcm1zL3Rlc3Rpbmcvc3JjL21vZHVsZXMvZmllbGQtZ3JvdXAvZmllbGQtZ3JvdXAtaGFybmVzcy1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBgU2t5RmllbGRHcm91cEhhcm5lc3NgIGluc3RhbmNlcy5cbiAqIEBpbnRlcm5hbFxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZSwgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LW9iamVjdC10eXBlXG5leHBvcnQgaW50ZXJmYWNlIFNreUZpZWxkR3JvdXBIYXJuZXNzRmlsdGVycyBleHRlbmRzIFNreUhhcm5lc3NGaWx0ZXJzIHt9XG4iXX0=
@@ -0,0 +1,92 @@
1
+ import { SkyComponentHarness } from '@skyux/core/testing';
2
+ import { SkyHelpInlineHarness } from '@skyux/help-inline/testing';
3
+ /**
4
+ * Harness for interacting with a field group component in tests.
5
+ */
6
+ export class SkyFieldGroupHarness extends SkyComponentHarness {
7
+ /**
8
+ * @internal
9
+ */
10
+ static { this.hostSelector = 'sky-field-group'; }
11
+ #getLegend = this.locatorFor('legend');
12
+ #getLegendH3 = this.locatorForOptional('legend h3');
13
+ #getLegendH4 = this.locatorForOptional('legend h4');
14
+ #getLegendHeading = this.locatorFor('legend h3,h4');
15
+ #getHintText = this.locatorForOptional('.sky-field-group-hint-text');
16
+ /**
17
+ * Gets a `HarnessPredicate` that can be used to search for a
18
+ * `SkyFieldGroupHarness` that meets certain criteria.
19
+ */
20
+ static with(filters) {
21
+ return SkyFieldGroupHarness.getDataSkyIdPredicate(filters);
22
+ }
23
+ /**
24
+ * Gets the field group's heading text. If `headingHidden` is true,
25
+ * the text will still be returned.
26
+ */
27
+ async getHeadingText() {
28
+ return await (await this.#getLegendHeading()).text();
29
+ }
30
+ /**
31
+ * Gets the field group's hint text.
32
+ */
33
+ async getHintText() {
34
+ const hintText = await this.#getHintText();
35
+ return (await hintText?.text())?.trim() ?? '';
36
+ }
37
+ /**
38
+ * Whether the heading is hidden.
39
+ */
40
+ async getHeadingHidden() {
41
+ return await (await this.#getLegend()).hasClass('sky-screen-reader-only');
42
+ }
43
+ /**
44
+ * Whether the field group is stacked.
45
+ */
46
+ async getStacked() {
47
+ const host = await this.host();
48
+ return await host.hasClass('sky-margin-stacked-xl');
49
+ }
50
+ /**
51
+ * The semantic heading level used for the field group.
52
+ */
53
+ async getHeadingLevel() {
54
+ const h3 = await this.#getLegendH3();
55
+ return h3 ? 3 : 4;
56
+ }
57
+ /**
58
+ * The heading style used for the field group.
59
+ */
60
+ async getHeadingStyle() {
61
+ const heading = (await this.#getLegendH3()) || (await this.#getLegendH4());
62
+ return (await heading?.hasClass('sky-font-heading-3')) ? 3 : 4;
63
+ }
64
+ /**
65
+ * Clicks the help inline button.
66
+ */
67
+ async clickHelpInline() {
68
+ await (await this.#getHelpInline()).click();
69
+ }
70
+ /**
71
+ * Gets the help popover content.
72
+ */
73
+ async getHelpPopoverContent() {
74
+ return await (await this.#getHelpInline()).getPopoverContent();
75
+ }
76
+ /**
77
+ * Gets the help popover title.
78
+ */
79
+ async getHelpPopoverTitle() {
80
+ return await (await this.#getHelpInline()).getPopoverTitle();
81
+ }
82
+ async #getHelpInline() {
83
+ const harness = await this.locatorForOptional(SkyHelpInlineHarness.with({
84
+ ancestor: '.sky-field-group > .sky-field-group-legend',
85
+ }))();
86
+ if (harness) {
87
+ return harness;
88
+ }
89
+ throw Error('No help inline found.');
90
+ }
91
+ }
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZ3JvdXAtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy90ZXN0aW5nL3NyYy9tb2R1bGVzL2ZpZWxkLWdyb3VwL2ZpZWxkLWdyb3VwLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFLMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJbEU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsbUJBQW1CO0lBQzNEOztPQUVHO2FBQ1csaUJBQVksR0FBRyxpQkFBaUIsQ0FBQztJQUUvQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxZQUFZLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3BELFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDcEQsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNwRCxZQUFZLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFFckU7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FDaEIsT0FBb0M7UUFFcEMsT0FBTyxvQkFBb0IsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksS0FBSyxDQUFDLGNBQWM7UUFDekIsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxXQUFXO1FBQ3RCLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRTNDLE9BQU8sQ0FBQyxNQUFNLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZ0JBQWdCO1FBQzNCLE9BQU8sTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFVBQVU7UUFDckIsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFL0IsT0FBTyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZUFBZTtRQUMxQixNQUFNLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVyQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGVBQWU7UUFDMUIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUUzRSxPQUFPLENBQUMsTUFBTSxPQUFPLEVBQUUsUUFBUSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGVBQWU7UUFDMUIsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLHFCQUFxQjtRQUdoQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDakUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLG1CQUFtQjtRQUM5QixPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYztRQUNsQixNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FDM0Msb0JBQW9CLENBQUMsSUFBSSxDQUFDO1lBQ3hCLFFBQVEsRUFBRSw0Q0FBNEM7U0FDdkQsQ0FBQyxDQUNILEVBQUUsQ0FBQztRQUVKLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO1FBQ0QsTUFBTSxLQUFLLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5pbXBvcnQge1xuICBTa3lGaWVsZEdyb3VwSGVhZGluZ0xldmVsLFxuICBTa3lGaWVsZEdyb3VwSGVhZGluZ1N0eWxlLFxufSBmcm9tICdAc2t5dXgvZm9ybXMnO1xuaW1wb3J0IHsgU2t5SGVscElubGluZUhhcm5lc3MgfSBmcm9tICdAc2t5dXgvaGVscC1pbmxpbmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreUZpZWxkR3JvdXBIYXJuZXNzRmlsdGVycyB9IGZyb20gJy4vZmllbGQtZ3JvdXAtaGFybmVzcy1maWx0ZXJzJztcblxuLyoqXG4gKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgZmllbGQgZ3JvdXAgY29tcG9uZW50IGluIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgU2t5RmllbGRHcm91cEhhcm5lc3MgZXh0ZW5kcyBTa3lDb21wb25lbnRIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnc2t5LWZpZWxkLWdyb3VwJztcblxuICAjZ2V0TGVnZW5kID0gdGhpcy5sb2NhdG9yRm9yKCdsZWdlbmQnKTtcbiAgI2dldExlZ2VuZEgzID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJ2xlZ2VuZCBoMycpO1xuICAjZ2V0TGVnZW5kSDQgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbCgnbGVnZW5kIGg0Jyk7XG4gICNnZXRMZWdlbmRIZWFkaW5nID0gdGhpcy5sb2NhdG9yRm9yKCdsZWdlbmQgaDMsaDQnKTtcbiAgI2dldEhpbnRUZXh0ID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJy5za3ktZmllbGQtZ3JvdXAtaGludC10ZXh0Jyk7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreUZpZWxkR3JvdXBIYXJuZXNzYCB0aGF0IG1lZXRzIGNlcnRhaW4gY3JpdGVyaWEuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGgoXG4gICAgZmlsdGVyczogU2t5RmllbGRHcm91cEhhcm5lc3NGaWx0ZXJzLFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFNreUZpZWxkR3JvdXBIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreUZpZWxkR3JvdXBIYXJuZXNzLmdldERhdGFTa3lJZFByZWRpY2F0ZShmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBmaWVsZCBncm91cCdzIGhlYWRpbmcgdGV4dC4gSWYgYGhlYWRpbmdIaWRkZW5gIGlzIHRydWUsXG4gICAqIHRoZSB0ZXh0IHdpbGwgc3RpbGwgYmUgcmV0dXJuZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SGVhZGluZ1RleHQoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldExlZ2VuZEhlYWRpbmcoKSkudGV4dCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGZpZWxkIGdyb3VwJ3MgaGludCB0ZXh0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhpbnRUZXh0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgaGludFRleHQgPSBhd2FpdCB0aGlzLiNnZXRIaW50VGV4dCgpO1xuXG4gICAgcmV0dXJuIChhd2FpdCBoaW50VGV4dD8udGV4dCgpKT8udHJpbSgpID8/ICcnO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGhlYWRpbmcgaXMgaGlkZGVuLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhlYWRpbmdIaWRkZW4oKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRMZWdlbmQoKSkuaGFzQ2xhc3MoJ3NreS1zY3JlZW4tcmVhZGVyLW9ubHknKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBmaWVsZCBncm91cCBpcyBzdGFja2VkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFN0YWNrZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgaG9zdCA9IGF3YWl0IHRoaXMuaG9zdCgpO1xuXG4gICAgcmV0dXJuIGF3YWl0IGhvc3QuaGFzQ2xhc3MoJ3NreS1tYXJnaW4tc3RhY2tlZC14bCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzZW1hbnRpYyBoZWFkaW5nIGxldmVsIHVzZWQgZm9yIHRoZSBmaWVsZCBncm91cC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIZWFkaW5nTGV2ZWwoKTogUHJvbWlzZTxTa3lGaWVsZEdyb3VwSGVhZGluZ0xldmVsPiB7XG4gICAgY29uc3QgaDMgPSBhd2FpdCB0aGlzLiNnZXRMZWdlbmRIMygpO1xuXG4gICAgcmV0dXJuIGgzID8gMyA6IDQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGhlYWRpbmcgc3R5bGUgdXNlZCBmb3IgdGhlIGZpZWxkIGdyb3VwLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhlYWRpbmdTdHlsZSgpOiBQcm9taXNlPFNreUZpZWxkR3JvdXBIZWFkaW5nU3R5bGU+IHtcbiAgICBjb25zdCBoZWFkaW5nID0gKGF3YWl0IHRoaXMuI2dldExlZ2VuZEgzKCkpIHx8IChhd2FpdCB0aGlzLiNnZXRMZWdlbmRINCgpKTtcblxuICAgIHJldHVybiAoYXdhaXQgaGVhZGluZz8uaGFzQ2xhc3MoJ3NreS1mb250LWhlYWRpbmctMycpKSA/IDMgOiA0O1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgaGVscCBpbmxpbmUgYnV0dG9uLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrSGVscElubGluZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SGVscElubGluZSgpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhlbHAgcG9wb3ZlciBjb250ZW50LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEhlbHBQb3BvdmVyQ29udGVudCgpOiBQcm9taXNlPFxuICAgIFRlbXBsYXRlUmVmPHVua25vd24+IHwgc3RyaW5nIHwgdW5kZWZpbmVkXG4gID4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SGVscElubGluZSgpKS5nZXRQb3BvdmVyQ29udGVudCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhlbHAgcG9wb3ZlciB0aXRsZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIZWxwUG9wb3ZlclRpdGxlKCk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRIZWxwSW5saW5lKCkpLmdldFBvcG92ZXJUaXRsZSgpO1xuICB9XG5cbiAgYXN5bmMgI2dldEhlbHBJbmxpbmUoKTogUHJvbWlzZTxTa3lIZWxwSW5saW5lSGFybmVzcz4ge1xuICAgIGNvbnN0IGhhcm5lc3MgPSBhd2FpdCB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChcbiAgICAgIFNreUhlbHBJbmxpbmVIYXJuZXNzLndpdGgoe1xuICAgICAgICBhbmNlc3RvcjogJy5za3ktZmllbGQtZ3JvdXAgPiAuc2t5LWZpZWxkLWdyb3VwLWxlZ2VuZCcsXG4gICAgICB9KSxcbiAgICApKCk7XG5cbiAgICBpZiAoaGFybmVzcykge1xuICAgICAgcmV0dXJuIGhhcm5lc3M7XG4gICAgfVxuICAgIHRocm93IEVycm9yKCdObyBoZWxwIGlubGluZSBmb3VuZC4nKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1kcm9wLWhhcm5lc3MtZmlsdGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy90ZXN0aW5nL3NyYy9tb2R1bGVzL2ZpbGUtYXR0YWNobWVudC9maWxlLWRyb3AvZmlsZS1kcm9wLWhhcm5lc3MtZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5SGFybmVzc0ZpbHRlcnMgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuLyoqXG4gKiBBIHNldCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbHRlciBhIGxpc3Qgb2YgYFNreUZpbGVEcm9wSGFybmVzc2AgaW5zdGFuY2VzLlxuICogQGludGVybmFsXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktb2JqZWN0LXR5cGVcbmV4cG9ydCBpbnRlcmZhY2UgU2t5RmlsZURyb3BIYXJuZXNzRmlsdGVycyBleHRlbmRzIFNreUhhcm5lc3NGaWx0ZXJzIHt9XG4iXX0=
@@ -0,0 +1,45 @@
1
+ import { SkyComponentHarness } from '@skyux/core/testing';
2
+ /**
3
+ * Harness for interacting with a file drop component in tests.
4
+ * @internal
5
+ */
6
+ export class SkyFileDropHarness extends SkyComponentHarness {
7
+ /**
8
+ * @internal
9
+ */
10
+ static { this.hostSelector = 'sky-file-drop'; }
11
+ #getDropTarget = this.locatorFor('.sky-file-drop-target');
12
+ /**
13
+ * Gets a `HarnessPredicate` that can be used to search for a
14
+ * `SkyFileDropHarness` that meets certain criteria.
15
+ */
16
+ static with(filters) {
17
+ return SkyFileDropHarness.getDataSkyIdPredicate(filters);
18
+ }
19
+ /**
20
+ * Drops a file onto the component's drop target.
21
+ */
22
+ async dropFile(file) {
23
+ await this.#dropFiles([file]);
24
+ }
25
+ // Consider making this public when we finalize this harness's public API.
26
+ async #dropFiles(files) {
27
+ const dropTarget = await this.#getDropTarget();
28
+ const fileList = {
29
+ item: (index) => files[index],
30
+ length: files.length,
31
+ };
32
+ dropTarget.dispatchEvent('drop', {
33
+ dataTransfer: {
34
+ files: fileList,
35
+ },
36
+ });
37
+ // The file drop component's `filesChanged` event happens asynchronously as the
38
+ // result of an event handler which is outside of the test harness async logic,
39
+ // so get in the queue after the event handler, then resolve.
40
+ return await new Promise((resolve) => {
41
+ setTimeout(() => resolve(), 100);
42
+ });
43
+ }
44
+ }
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1kcm9wLWhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZm9ybXMvdGVzdGluZy9zcmMvbW9kdWxlcy9maWxlLWF0dGFjaG1lbnQvZmlsZS1kcm9wL2ZpbGUtZHJvcC1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSTFEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxtQkFBbUI7SUFDekQ7O09BRUc7YUFDVyxpQkFBWSxHQUFHLGVBQWUsQ0FBQztJQUU3QyxjQUFjLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBRTFEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQ2hCLE9BQWtDO1FBRWxDLE9BQU8sa0JBQWtCLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFVO1FBQzlCLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELDBFQUEwRTtJQUMxRSxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQWE7UUFDNUIsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFL0MsTUFBTSxRQUFRLEdBQUc7WUFDZixJQUFJLEVBQUUsQ0FBQyxLQUFhLEVBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDM0MsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1NBQ3JCLENBQUM7UUFFRixVQUFVLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRTtZQUMvQixZQUFZLEVBQUU7Z0JBQ1osS0FBSyxFQUFFLFFBQWdDO2FBQ3hDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSw2REFBNkQ7UUFDN0QsT0FBTyxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDbkMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RGF0YSwgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreUNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IHsgU2t5RmlsZURyb3BIYXJuZXNzRmlsdGVycyB9IGZyb20gJy4vZmlsZS1kcm9wLWhhcm5lc3MtZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhIGZpbGUgZHJvcCBjb21wb25lbnQgaW4gdGVzdHMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIFNreUZpbGVEcm9wSGFybmVzcyBleHRlbmRzIFNreUNvbXBvbmVudEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdza3ktZmlsZS1kcm9wJztcblxuICAjZ2V0RHJvcFRhcmdldCA9IHRoaXMubG9jYXRvckZvcignLnNreS1maWxlLWRyb3AtdGFyZ2V0Jyk7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreUZpbGVEcm9wSGFybmVzc2AgdGhhdCBtZWV0cyBjZXJ0YWluIGNyaXRlcmlhLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB3aXRoKFxuICAgIGZpbHRlcnM6IFNreUZpbGVEcm9wSGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5RmlsZURyb3BIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreUZpbGVEcm9wSGFybmVzcy5nZXREYXRhU2t5SWRQcmVkaWNhdGUoZmlsdGVycyk7XG4gIH1cblxuICAvKipcbiAgICogRHJvcHMgYSBmaWxlIG9udG8gdGhlIGNvbXBvbmVudCdzIGRyb3AgdGFyZ2V0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGRyb3BGaWxlKGZpbGU6IEZpbGUpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLiNkcm9wRmlsZXMoW2ZpbGVdKTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIG1ha2luZyB0aGlzIHB1YmxpYyB3aGVuIHdlIGZpbmFsaXplIHRoaXMgaGFybmVzcydzIHB1YmxpYyBBUEkuXG4gIGFzeW5jICNkcm9wRmlsZXMoZmlsZXM6IEZpbGVbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGRyb3BUYXJnZXQgPSBhd2FpdCB0aGlzLiNnZXREcm9wVGFyZ2V0KCk7XG5cbiAgICBjb25zdCBmaWxlTGlzdCA9IHtcbiAgICAgIGl0ZW06IChpbmRleDogbnVtYmVyKTogRmlsZSA9PiBmaWxlc1tpbmRleF0sXG4gICAgICBsZW5ndGg6IGZpbGVzLmxlbmd0aCxcbiAgICB9O1xuXG4gICAgZHJvcFRhcmdldC5kaXNwYXRjaEV2ZW50KCdkcm9wJywge1xuICAgICAgZGF0YVRyYW5zZmVyOiB7XG4gICAgICAgIGZpbGVzOiBmaWxlTGlzdCBhcyB1bmtub3duIGFzIEV2ZW50RGF0YSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICAvLyBUaGUgZmlsZSBkcm9wIGNvbXBvbmVudCdzIGBmaWxlc0NoYW5nZWRgIGV2ZW50IGhhcHBlbnMgYXN5bmNocm9ub3VzbHkgYXMgdGhlXG4gICAgLy8gcmVzdWx0IG9mIGFuIGV2ZW50IGhhbmRsZXIgd2hpY2ggaXMgb3V0c2lkZSBvZiB0aGUgdGVzdCBoYXJuZXNzIGFzeW5jIGxvZ2ljLFxuICAgIC8vIHNvIGdldCBpbiB0aGUgcXVldWUgYWZ0ZXIgdGhlIGV2ZW50IGhhbmRsZXIsIHRoZW4gcmVzb2x2ZS5cbiAgICByZXR1cm4gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gcmVzb2x2ZSgpLCAxMDApO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvci1oYXJuZXNzLmZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZm9ybXMvdGVzdGluZy9zcmMvbW9kdWxlcy9mb3JtLWVycm9yL2Zvcm0tZXJyb3ItaGFybmVzcy5maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBgU2t5Rm9ybUVycm9ySGFybmVzc2AgaW5zdGFuY2VzLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZSwgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LW9iamVjdC10eXBlXG5leHBvcnQgaW50ZXJmYWNlIFNreUZvcm1FcnJvckhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgU2t5SGFybmVzc0ZpbHRlcnMge31cbiJdfQ==