@skbkontur/playwright-react-ui-components 1.13.2 → 1.14.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/src/assertions/AutocompleteAssertions.js +10 -10
- package/build/src/assertions/BaseComponentAssertions.js +11 -11
- package/build/src/assertions/ButtonAssertions.js +9 -9
- package/build/src/assertions/CheckboxAssertions.js +13 -13
- package/build/src/assertions/ComboBoxAssertions.js +17 -111
- package/build/src/assertions/ComponentListAssertions.js +6 -6
- package/build/src/assertions/CurrencyInputAssertions.js +11 -61
- package/build/src/assertions/DateInputAssertions.js +9 -9
- package/build/src/assertions/DatePickerAssertions.js +9 -9
- package/build/src/assertions/DateRangePickerAssertions.js +4 -25
- package/build/src/assertions/DropdownAssertions.js +13 -63
- package/build/src/assertions/DropdownMenuAssertions.js +11 -61
- package/build/src/assertions/FileUploaderAssertions.d.ts +1 -3
- package/build/src/assertions/FileUploaderAssertions.js +5 -22
- package/build/src/assertions/FxInputAssertions.js +11 -14
- package/build/src/assertions/InputAssertions.js +10 -10
- package/build/src/assertions/KebabAssertions.js +7 -58
- package/build/src/assertions/LabelAssertions.js +7 -7
- package/build/src/assertions/LinkAssertions.js +11 -12
- package/build/src/assertions/LoaderAssertions.js +2 -2
- package/build/src/assertions/MenuItemAssertations.js +5 -5
- package/build/src/assertions/PagingAssertions.js +5 -40
- package/build/src/assertions/PortalAssertions.js +3 -3
- package/build/src/assertions/RadioAssertions.js +13 -13
- package/build/src/assertions/RadioGroupAssertions.js +10 -81
- package/build/src/assertions/SelectAssertions.js +15 -64
- package/build/src/assertions/SpinnerAssertions.js +2 -2
- package/build/src/assertions/TabAssertions.js +11 -12
- package/build/src/assertions/TabsAssertions.js +4 -32
- package/build/src/assertions/TextareaAssertions.js +9 -9
- package/build/src/assertions/ToastAssertions.js +2 -2
- package/build/src/assertions/ToggleAssertions.js +11 -11
- package/build/src/assertions/TokenAssertions.js +8 -14
- package/build/src/assertions/TokenInputAssertions.js +8 -28
- package/build/src/assertions/TooltipAssertions.js +5 -5
- package/build/src/components/Autocomplete.d.ts +4 -0
- package/build/src/components/Autocomplete.js +52 -50
- package/build/src/components/BaseComponent.d.ts +4 -0
- package/build/src/components/BaseComponent.js +37 -30
- package/build/src/components/Button.d.ts +4 -0
- package/build/src/components/Button.js +25 -19
- package/build/src/components/Checkbox.d.ts +6 -0
- package/build/src/components/Checkbox.js +28 -36
- package/build/src/components/ComboBox.d.ts +8 -2
- package/build/src/components/ComboBox.js +67 -54
- package/build/src/components/ComponentList.d.ts +6 -3
- package/build/src/components/ComponentList.js +39 -50
- package/build/src/components/CurrencyInput.d.ts +4 -0
- package/build/src/components/CurrencyInput.js +39 -37
- package/build/src/components/DateInput.d.ts +4 -0
- package/build/src/components/DateInput.js +34 -32
- package/build/src/components/DatePicker.d.ts +4 -0
- package/build/src/components/DatePicker.js +35 -33
- package/build/src/components/DateRangePicker.d.ts +2 -0
- package/build/src/components/DateRangePicker.js +14 -10
- package/build/src/components/Dropdown.d.ts +7 -2
- package/build/src/components/Dropdown.js +68 -65
- package/build/src/components/DropdownMenu.d.ts +6 -2
- package/build/src/components/DropdownMenu.js +67 -65
- package/build/src/components/FileUploader.d.ts +3 -1
- package/build/src/components/FileUploader.js +39 -39
- package/build/src/components/FxInput.d.ts +4 -0
- package/build/src/components/FxInput.js +44 -42
- package/build/src/components/Input.d.ts +4 -0
- package/build/src/components/Input.js +37 -35
- package/build/src/components/Kebab.d.ts +5 -2
- package/build/src/components/Kebab.js +49 -48
- package/build/src/components/Label.d.ts +2 -0
- package/build/src/components/Label.js +9 -13
- package/build/src/components/Link.d.ts +4 -0
- package/build/src/components/Link.js +19 -25
- package/build/src/components/Loader.d.ts +2 -0
- package/build/src/components/Loader.js +15 -10
- package/build/src/components/MenuComponent.d.ts +10 -0
- package/build/src/components/MenuComponent.js +79 -0
- package/build/src/components/MenuItem.d.ts +2 -0
- package/build/src/components/MenuItem.js +7 -3
- package/build/src/components/Paging.d.ts +2 -0
- package/build/src/components/Paging.js +59 -52
- package/build/src/components/Portal.d.ts +2 -0
- package/build/src/components/Portal.js +14 -10
- package/build/src/components/Radio.d.ts +6 -0
- package/build/src/components/Radio.js +31 -27
- package/build/src/components/RadioGroup.d.ts +2 -0
- package/build/src/components/RadioGroup.js +51 -47
- package/build/src/components/Select.d.ts +5 -0
- package/build/src/components/Select.js +92 -76
- package/build/src/components/Spinner.d.ts +2 -0
- package/build/src/components/Spinner.js +13 -9
- package/build/src/components/Tab.d.ts +4 -0
- package/build/src/components/Tab.js +17 -27
- package/build/src/components/Textarea.d.ts +4 -0
- package/build/src/components/Textarea.js +33 -39
- package/build/src/components/Toast.d.ts +2 -0
- package/build/src/components/Toast.js +7 -3
- package/build/src/components/Toggle.d.ts +5 -0
- package/build/src/components/Toggle.js +24 -33
- package/build/src/components/Token.d.ts +3 -0
- package/build/src/components/Token.js +14 -9
- package/build/src/components/TokenInput.d.ts +4 -0
- package/build/src/components/TokenInput.js +61 -59
- package/build/src/components/Tooltip.d.ts +2 -0
- package/build/src/components/Tooltip.js +9 -9
- package/build/src/components/index.d.ts +1 -0
- package/build/src/components/index.js +3 -1
- package/build/src/extensions/index.d.ts +1 -0
- package/build/src/extensions/index.js +17 -0
- package/build/src/extensions/mergedExpects.d.ts +5 -0
- package/build/src/extensions/mergedExpects.js +7 -0
- package/build/src/index.d.ts +2 -0
- package/build/src/index.js +2 -0
- package/build/src/matchers/component/LocatorSymbols.d.ts +43 -0
- package/build/src/matchers/component/LocatorSymbols.js +13 -0
- package/build/src/matchers/component/toBeActiveTab.d.ts +3 -0
- package/build/src/matchers/component/toBeActiveTab.js +56 -0
- package/build/src/matchers/component/toBeAutoMode.d.ts +3 -0
- package/build/src/matchers/component/toBeAutoMode.js +62 -0
- package/build/src/matchers/component/toBeCheckedByIndex.d.ts +3 -0
- package/build/src/matchers/component/toBeCheckedByIndex.js +62 -0
- package/build/src/matchers/component/toBeCheckedByText.d.ts +3 -0
- package/build/src/matchers/component/toBeCheckedByText.js +62 -0
- package/build/src/matchers/component/toBeCheckedByValue.d.ts +3 -0
- package/build/src/matchers/component/toBeCheckedByValue.js +62 -0
- package/build/src/matchers/component/toBeCheckedEx.d.ts +3 -0
- package/build/src/matchers/component/toBeCheckedEx.js +56 -0
- package/build/src/matchers/component/toBeDisabledEx.d.ts +3 -0
- package/build/src/matchers/component/toBeDisabledEx.js +171 -0
- package/build/src/matchers/component/toBeEmptyEx.d.ts +3 -0
- package/build/src/matchers/component/toBeEmptyEx.js +136 -0
- package/build/src/matchers/component/toBeEnabledEx.d.ts +3 -0
- package/build/src/matchers/component/toBeEnabledEx.js +196 -0
- package/build/src/matchers/component/toBeFocusedEx.d.ts +3 -0
- package/build/src/matchers/component/toBeFocusedEx.js +56 -0
- package/build/src/matchers/component/toBeHiddenEx.d.ts +3 -0
- package/build/src/matchers/component/toBeHiddenEx.js +67 -0
- package/build/src/matchers/component/toBeInactiveTab.d.ts +3 -0
- package/build/src/matchers/component/toBeInactiveTab.js +56 -0
- package/build/src/matchers/component/toBeUnchecked.d.ts +3 -0
- package/build/src/matchers/component/toBeUnchecked.js +56 -0
- package/build/src/matchers/component/toBeUncheckedByIndex.d.ts +3 -0
- package/build/src/matchers/component/toBeUncheckedByIndex.js +62 -0
- package/build/src/matchers/component/toBeUncheckedByText.d.ts +3 -0
- package/build/src/matchers/component/toBeUncheckedByText.js +57 -0
- package/build/src/matchers/component/toBeUncheckedByValue.d.ts +3 -0
- package/build/src/matchers/component/toBeUncheckedByValue.js +57 -0
- package/build/src/matchers/component/toBeVisibleEx.d.ts +3 -0
- package/build/src/matchers/component/toBeVisibleEx.js +67 -0
- package/build/src/matchers/component/toContainFormattedText.d.ts +3 -0
- package/build/src/matchers/component/toContainFormattedText.js +55 -0
- package/build/src/matchers/component/toContainItem.d.ts +4 -0
- package/build/src/matchers/component/toContainItem.js +78 -0
- package/build/src/matchers/component/toContainItems.d.ts +3 -0
- package/build/src/matchers/component/toContainItems.js +63 -0
- package/build/src/matchers/component/toContainSelectValue.d.ts +3 -0
- package/build/src/matchers/component/toContainSelectValue.js +55 -0
- package/build/src/matchers/component/toContainTabs.d.ts +3 -0
- package/build/src/matchers/component/toContainTabs.js +80 -0
- package/build/src/matchers/component/toContainTextEx.d.ts +3 -0
- package/build/src/matchers/component/toContainTextEx.js +56 -0
- package/build/src/matchers/component/toContainTokens.d.ts +4 -0
- package/build/src/matchers/component/toContainTokens.js +80 -0
- package/build/src/matchers/component/toContainUploadedFiles.d.ts +4 -0
- package/build/src/matchers/component/toContainUploadedFiles.js +75 -0
- package/build/src/matchers/component/toHaveActivePage.d.ts +4 -0
- package/build/src/matchers/component/toHaveActivePage.js +78 -0
- package/build/src/matchers/component/toHaveActiveTab.d.ts +2 -0
- package/build/src/matchers/component/toHaveActiveTab.js +62 -0
- package/build/src/matchers/component/toHaveAttributeEx.d.ts +3 -0
- package/build/src/matchers/component/toHaveAttributeEx.js +62 -0
- package/build/src/matchers/component/toHaveCountEx.d.ts +3 -0
- package/build/src/matchers/component/toHaveCountEx.js +56 -0
- package/build/src/matchers/component/toHaveError.d.ts +3 -0
- package/build/src/matchers/component/toHaveError.js +57 -0
- package/build/src/matchers/component/toHaveFormattedText.d.ts +3 -0
- package/build/src/matchers/component/toHaveFormattedText.js +56 -0
- package/build/src/matchers/component/toHaveFormattedValue.d.ts +3 -0
- package/build/src/matchers/component/toHaveFormattedValue.js +56 -0
- package/build/src/matchers/component/toHaveHref.d.ts +3 -0
- package/build/src/matchers/component/toHaveHref.js +55 -0
- package/build/src/matchers/component/toHaveItems.d.ts +3 -0
- package/build/src/matchers/component/toHaveItems.js +63 -0
- package/build/src/matchers/component/toHavePageCount.d.ts +4 -0
- package/build/src/matchers/component/toHavePageCount.js +71 -0
- package/build/src/matchers/component/toHaveTextEx.d.ts +3 -0
- package/build/src/matchers/component/toHaveTextEx.js +56 -0
- package/build/src/matchers/component/toHaveValueEx.d.ts +6 -0
- package/build/src/matchers/component/toHaveValueEx.js +197 -0
- package/build/src/matchers/component/toHaveWarning.d.ts +3 -0
- package/build/src/matchers/component/toHaveWarning.js +57 -0
- package/build/src/matchers/componentMatchers.d.ts +104 -0
- package/build/src/matchers/componentMatchers.js +89 -0
- package/build/src/matchers/createAsyncMatcher.d.ts +72 -0
- package/build/src/matchers/createAsyncMatcher.js +180 -0
- package/build/src/matchers/formattedMatchers.d.ts +15 -31
- package/build/src/matchers/formattedMatchers.js +19 -15
- package/build/src/matchers/index.d.ts +1 -1
- package/build/src/matchers/index.js +1 -3
- package/build/src/utils/getMarcherResult.d.ts +13 -0
- package/build/src/utils/getMarcherResult.js +13 -0
- package/build/src/utils/index.d.ts +3 -0
- package/build/src/utils/index.js +3 -0
- package/build/src/utils/makeMatcher.d.ts +5 -0
- package/build/src/utils/makeMatcher.js +65 -0
- package/build/src/utils/toMatchMessage.d.ts +23 -0
- package/build/src/utils/toMatchMessage.js +89 -0
- package/package.json +1 -1
- package/build/src/matchers/mergedExpects.d.ts +0 -15
- package/build/src/matchers/mergedExpects.js +0 -6
|
@@ -61,6 +61,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
61
61
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
|
+
var _a, _b, _c;
|
|
64
65
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
65
66
|
exports.DatePicker = void 0;
|
|
66
67
|
var test_1 = require("@playwright/test");
|
|
@@ -69,11 +70,15 @@ var BaseComponent_1 = require("./BaseComponent");
|
|
|
69
70
|
var utils_1 = require("../utils");
|
|
70
71
|
var assertions_1 = require("../assertions");
|
|
71
72
|
var dataTidSelector_1 = require("../utils/dataTidSelector");
|
|
73
|
+
var LocatorSymbols_1 = require("../matchers/component/LocatorSymbols");
|
|
72
74
|
var DatePicker = /** @class */ (function (_super) {
|
|
73
75
|
__extends(DatePicker, _super);
|
|
74
76
|
function DatePicker(rootLocator) {
|
|
75
77
|
var _this = _super.call(this, rootLocator) || this;
|
|
76
78
|
_this.rootLocator = rootLocator;
|
|
79
|
+
_this[_a] = function () { return _this.nativeInputLocator; };
|
|
80
|
+
_this[_b] = function () { return _this.nativeInputLocator; };
|
|
81
|
+
_this[_c] = function () { return _this.datePickerInputLocator; };
|
|
77
82
|
_this.nativeInputLocator = rootLocator.locator('input');
|
|
78
83
|
_this.datePickerInputLocator = rootLocator
|
|
79
84
|
.locator((0, dataTidSelector_1.getDataTidSelector)(react_ui_1.DatePickerDataTids.input))
|
|
@@ -83,37 +88,37 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
83
88
|
}
|
|
84
89
|
DatePicker.prototype.isDisabled = function (options) {
|
|
85
90
|
return __awaiter(this, void 0, void 0, function () {
|
|
86
|
-
return __generator(this, function (
|
|
87
|
-
switch (
|
|
91
|
+
return __generator(this, function (_d) {
|
|
92
|
+
switch (_d.label) {
|
|
88
93
|
case 0: return [4 /*yield*/, this.nativeInputLocator.isDisabled(options)];
|
|
89
|
-
case 1: return [2 /*return*/,
|
|
94
|
+
case 1: return [2 /*return*/, _d.sent()];
|
|
90
95
|
}
|
|
91
96
|
});
|
|
92
97
|
});
|
|
93
98
|
};
|
|
94
99
|
DatePicker.prototype.getValue = function (options) {
|
|
95
100
|
return __awaiter(this, void 0, void 0, function () {
|
|
96
|
-
return __generator(this, function (
|
|
97
|
-
switch (
|
|
101
|
+
return __generator(this, function (_d) {
|
|
102
|
+
switch (_d.label) {
|
|
98
103
|
case 0: return [4 /*yield*/, this.nativeInputLocator.inputValue(options)];
|
|
99
|
-
case 1: return [2 /*return*/,
|
|
104
|
+
case 1: return [2 /*return*/, _d.sent()];
|
|
100
105
|
}
|
|
101
106
|
});
|
|
102
107
|
});
|
|
103
108
|
};
|
|
104
109
|
DatePicker.prototype.fill = function (value, options) {
|
|
105
110
|
return __awaiter(this, void 0, void 0, function () {
|
|
106
|
-
return __generator(this, function (
|
|
107
|
-
switch (
|
|
111
|
+
return __generator(this, function (_d) {
|
|
112
|
+
switch (_d.label) {
|
|
108
113
|
case 0: return [4 /*yield*/, this.clear()];
|
|
109
114
|
case 1:
|
|
110
|
-
|
|
115
|
+
_d.sent();
|
|
111
116
|
return [4 /*yield*/, this.nativeInputLocator.pressSequentially(value, options)];
|
|
112
117
|
case 2:
|
|
113
|
-
|
|
118
|
+
_d.sent();
|
|
114
119
|
return [4 /*yield*/, this.blur()];
|
|
115
120
|
case 3:
|
|
116
|
-
|
|
121
|
+
_d.sent();
|
|
117
122
|
return [2 /*return*/];
|
|
118
123
|
}
|
|
119
124
|
});
|
|
@@ -121,20 +126,20 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
121
126
|
};
|
|
122
127
|
DatePicker.prototype.clear = function (options) {
|
|
123
128
|
return __awaiter(this, void 0, void 0, function () {
|
|
124
|
-
return __generator(this, function (
|
|
125
|
-
switch (
|
|
129
|
+
return __generator(this, function (_d) {
|
|
130
|
+
switch (_d.label) {
|
|
126
131
|
case 0: return [4 /*yield*/, this.focus()];
|
|
127
132
|
case 1:
|
|
128
|
-
|
|
133
|
+
_d.sent();
|
|
129
134
|
return [4 /*yield*/, this.nativeInputLocator.press('Control+A', options)];
|
|
130
135
|
case 2:
|
|
131
|
-
|
|
136
|
+
_d.sent();
|
|
132
137
|
return [4 /*yield*/, this.nativeInputLocator.press('Meta+A', options)];
|
|
133
138
|
case 3:
|
|
134
|
-
|
|
139
|
+
_d.sent();
|
|
135
140
|
return [4 /*yield*/, this.nativeInputLocator.press('Backspace', options)];
|
|
136
141
|
case 4:
|
|
137
|
-
|
|
142
|
+
_d.sent();
|
|
138
143
|
return [2 /*return*/];
|
|
139
144
|
}
|
|
140
145
|
});
|
|
@@ -142,14 +147,14 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
142
147
|
};
|
|
143
148
|
DatePicker.prototype.focus = function (options) {
|
|
144
149
|
return __awaiter(this, void 0, void 0, function () {
|
|
145
|
-
return __generator(this, function (
|
|
146
|
-
switch (
|
|
150
|
+
return __generator(this, function (_d) {
|
|
151
|
+
switch (_d.label) {
|
|
147
152
|
case 0: return [4 /*yield*/, (0, test_1.expect)(this.nativeInputLocator).toBeEnabled()];
|
|
148
153
|
case 1:
|
|
149
|
-
|
|
154
|
+
_d.sent();
|
|
150
155
|
return [4 /*yield*/, this.datePickerInputLocator.focus(options)];
|
|
151
156
|
case 2:
|
|
152
|
-
|
|
157
|
+
_d.sent();
|
|
153
158
|
return [2 /*return*/];
|
|
154
159
|
}
|
|
155
160
|
});
|
|
@@ -157,11 +162,11 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
157
162
|
};
|
|
158
163
|
DatePicker.prototype.blur = function (options) {
|
|
159
164
|
return __awaiter(this, void 0, void 0, function () {
|
|
160
|
-
return __generator(this, function (
|
|
161
|
-
switch (
|
|
165
|
+
return __generator(this, function (_d) {
|
|
166
|
+
switch (_d.label) {
|
|
162
167
|
case 0: return [4 /*yield*/, this.datePickerInputLocator.blur(options)];
|
|
163
168
|
case 1:
|
|
164
|
-
|
|
169
|
+
_d.sent();
|
|
165
170
|
return [2 /*return*/];
|
|
166
171
|
}
|
|
167
172
|
});
|
|
@@ -169,14 +174,14 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
169
174
|
};
|
|
170
175
|
DatePicker.prototype.click = function (options) {
|
|
171
176
|
return __awaiter(this, void 0, void 0, function () {
|
|
172
|
-
return __generator(this, function (
|
|
173
|
-
switch (
|
|
177
|
+
return __generator(this, function (_d) {
|
|
178
|
+
switch (_d.label) {
|
|
174
179
|
case 0:
|
|
175
180
|
// NOTE: rootLocator всегда в состоянии enabled, даже если DatePicker disabled
|
|
176
181
|
return [4 /*yield*/, (0, test_1.expect)(this.nativeInputLocator).toBeEnabled()];
|
|
177
182
|
case 1:
|
|
178
183
|
// NOTE: rootLocator всегда в состоянии enabled, даже если DatePicker disabled
|
|
179
|
-
|
|
184
|
+
_d.sent();
|
|
180
185
|
// NOTE: обычный клик по rootLocator может кликать в середину DatePicker, в результате курсор оказывается во второй ячейке
|
|
181
186
|
return [4 /*yield*/, this.rootLocator
|
|
182
187
|
.locator('span[data-fragment]')
|
|
@@ -184,18 +189,14 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
184
189
|
.click(__assign(__assign({}, options), { force: true }))];
|
|
185
190
|
case 2:
|
|
186
191
|
// NOTE: обычный клик по rootLocator может кликать в середину DatePicker, в результате курсор оказывается во второй ячейке
|
|
187
|
-
|
|
192
|
+
_d.sent();
|
|
188
193
|
return [2 /*return*/];
|
|
189
194
|
}
|
|
190
195
|
});
|
|
191
196
|
});
|
|
192
197
|
};
|
|
193
198
|
DatePicker.prototype.getTooltip = function (type) {
|
|
194
|
-
return
|
|
195
|
-
return __generator(this, function (_a) {
|
|
196
|
-
return [2 /*return*/, (0, utils_1.getTooltip)(type, this)];
|
|
197
|
-
});
|
|
198
|
-
});
|
|
199
|
+
return (0, utils_1.getTooltip)(type, this);
|
|
199
200
|
};
|
|
200
201
|
DatePicker.prototype.expect = function () {
|
|
201
202
|
return new assertions_1.DatePickerAssertions(this);
|
|
@@ -203,3 +204,4 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
203
204
|
return DatePicker;
|
|
204
205
|
}(BaseComponent_1.BaseComponent));
|
|
205
206
|
exports.DatePicker = DatePicker;
|
|
207
|
+
_a = LocatorSymbols_1.toControlElementLocator, _b = LocatorSymbols_1.toValueElementLocator, _c = LocatorSymbols_1.toFocusableElementLocator;
|
|
@@ -3,10 +3,12 @@ import { BaseComponent } from './BaseComponent';
|
|
|
3
3
|
import { DatePicker } from './DatePicker';
|
|
4
4
|
import { DateRangePickerAssertions } from '../assertions';
|
|
5
5
|
import type { ClearOptions } from '../options';
|
|
6
|
+
import { toValueElementLocator } from '../matchers/component/LocatorSymbols';
|
|
6
7
|
export declare class DateRangePicker extends BaseComponent {
|
|
7
8
|
readonly rootLocator: Locator;
|
|
8
9
|
readonly datePickerStart: DatePicker;
|
|
9
10
|
readonly datePickerEnd: DatePicker;
|
|
11
|
+
readonly [toValueElementLocator]: () => Locator;
|
|
10
12
|
constructor(rootLocator: Locator);
|
|
11
13
|
fill(values: {
|
|
12
14
|
start: string;
|
|
@@ -50,17 +50,20 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
50
50
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
|
+
var _a;
|
|
53
54
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
55
|
exports.DateRangePicker = void 0;
|
|
55
56
|
var BaseComponent_1 = require("./BaseComponent");
|
|
56
57
|
var DatePicker_1 = require("./DatePicker");
|
|
57
58
|
var assertions_1 = require("../assertions");
|
|
58
59
|
var dataTidSelector_1 = require("../utils/dataTidSelector");
|
|
60
|
+
var LocatorSymbols_1 = require("../matchers/component/LocatorSymbols");
|
|
59
61
|
var DateRangePicker = /** @class */ (function (_super) {
|
|
60
62
|
__extends(DateRangePicker, _super);
|
|
61
63
|
function DateRangePicker(rootLocator) {
|
|
62
64
|
var _this = _super.call(this, rootLocator) || this;
|
|
63
65
|
_this.rootLocator = rootLocator;
|
|
66
|
+
_this[_a] = function () { return _this.rootLocator; };
|
|
64
67
|
_this.datePickerStart = new DatePicker_1.DatePicker(rootLocator.locator((0, dataTidSelector_1.getDataTidSelector)('DateRangePicker__start')));
|
|
65
68
|
_this.datePickerEnd = new DatePicker_1.DatePicker(rootLocator.locator((0, dataTidSelector_1.getDataTidSelector)('DateRangePicker__end')));
|
|
66
69
|
return _this;
|
|
@@ -68,21 +71,21 @@ var DateRangePicker = /** @class */ (function (_super) {
|
|
|
68
71
|
DateRangePicker.prototype.fill = function (values) {
|
|
69
72
|
return __awaiter(this, void 0, void 0, function () {
|
|
70
73
|
var start, end;
|
|
71
|
-
return __generator(this, function (
|
|
72
|
-
switch (
|
|
74
|
+
return __generator(this, function (_b) {
|
|
75
|
+
switch (_b.label) {
|
|
73
76
|
case 0:
|
|
74
77
|
start = values.start, end = values.end;
|
|
75
78
|
if (!start) return [3 /*break*/, 2];
|
|
76
79
|
return [4 /*yield*/, this.datePickerStart.fill(start)];
|
|
77
80
|
case 1:
|
|
78
|
-
|
|
79
|
-
|
|
81
|
+
_b.sent();
|
|
82
|
+
_b.label = 2;
|
|
80
83
|
case 2:
|
|
81
84
|
if (!end) return [3 /*break*/, 4];
|
|
82
85
|
return [4 /*yield*/, this.datePickerEnd.fill(end)];
|
|
83
86
|
case 3:
|
|
84
|
-
|
|
85
|
-
|
|
87
|
+
_b.sent();
|
|
88
|
+
_b.label = 4;
|
|
86
89
|
case 4: return [2 /*return*/];
|
|
87
90
|
}
|
|
88
91
|
});
|
|
@@ -90,14 +93,14 @@ var DateRangePicker = /** @class */ (function (_super) {
|
|
|
90
93
|
};
|
|
91
94
|
DateRangePicker.prototype.clear = function (options) {
|
|
92
95
|
return __awaiter(this, void 0, void 0, function () {
|
|
93
|
-
return __generator(this, function (
|
|
94
|
-
switch (
|
|
96
|
+
return __generator(this, function (_b) {
|
|
97
|
+
switch (_b.label) {
|
|
95
98
|
case 0: return [4 /*yield*/, this.datePickerStart.clear(options)];
|
|
96
99
|
case 1:
|
|
97
|
-
|
|
100
|
+
_b.sent();
|
|
98
101
|
return [4 /*yield*/, this.datePickerEnd.clear(options)];
|
|
99
102
|
case 2:
|
|
100
|
-
|
|
103
|
+
_b.sent();
|
|
101
104
|
return [2 /*return*/];
|
|
102
105
|
}
|
|
103
106
|
});
|
|
@@ -109,3 +112,4 @@ var DateRangePicker = /** @class */ (function (_super) {
|
|
|
109
112
|
return DateRangePicker;
|
|
110
113
|
}(BaseComponent_1.BaseComponent));
|
|
111
114
|
exports.DateRangePicker = DateRangePicker;
|
|
115
|
+
_a = LocatorSymbols_1.toValueElementLocator;
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
import { type Locator } from '@playwright/test';
|
|
2
|
-
import { BaseComponent } from './BaseComponent';
|
|
3
2
|
import { type TooltipType } from '../utils';
|
|
4
3
|
import { DropdownAssertions } from '../assertions';
|
|
5
4
|
import { ComponentList } from './ComponentList';
|
|
6
5
|
import { MenuItem } from './MenuItem';
|
|
7
6
|
import type { BlurOptions, ClickOptions, FocusOptions, InnerTextOptions, IsDisabledOptions } from '../options';
|
|
8
|
-
|
|
7
|
+
import { MenuComponent } from './MenuComponent';
|
|
8
|
+
import { toControlElementLocator, toFocusableElementLocator, toItemsElementLocator, toTextElementLocator } from '../matchers/component/LocatorSymbols';
|
|
9
|
+
export declare class Dropdown extends MenuComponent {
|
|
9
10
|
readonly rootLocator: Locator;
|
|
10
11
|
readonly buttonLocator: Locator;
|
|
11
12
|
private readonly portal;
|
|
13
|
+
readonly [toControlElementLocator]: () => Locator;
|
|
14
|
+
readonly [toTextElementLocator]: () => Locator;
|
|
15
|
+
readonly [toItemsElementLocator]: () => Promise<Locator>;
|
|
16
|
+
readonly [toFocusableElementLocator]: () => Locator;
|
|
12
17
|
constructor(rootLocator: Locator);
|
|
13
18
|
isDisabled(options?: IsDisabledOptions): Promise<boolean>;
|
|
14
19
|
isMenuOpened(): Promise<boolean>;
|
|
@@ -50,56 +50,62 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
50
50
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
|
+
var _a, _b, _c, _d;
|
|
53
54
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
55
|
exports.Dropdown = void 0;
|
|
55
56
|
var test_1 = require("@playwright/test");
|
|
56
57
|
var react_ui_1 = require("@skbkontur/react-ui");
|
|
57
58
|
var MenuFooter_1 = require("@skbkontur/react-ui/components/MenuFooter");
|
|
58
|
-
var BaseComponent_1 = require("./BaseComponent");
|
|
59
59
|
var Portal_1 = require("./Portal");
|
|
60
60
|
var utils_1 = require("../utils");
|
|
61
61
|
var assertions_1 = require("../assertions");
|
|
62
62
|
var ComponentList_1 = require("./ComponentList");
|
|
63
63
|
var MenuItem_1 = require("./MenuItem");
|
|
64
64
|
var dataTidSelector_1 = require("../utils/dataTidSelector");
|
|
65
|
+
var MenuComponent_1 = require("./MenuComponent");
|
|
66
|
+
var LocatorSymbols_1 = require("../matchers/component/LocatorSymbols");
|
|
65
67
|
var Dropdown = /** @class */ (function (_super) {
|
|
66
68
|
__extends(Dropdown, _super);
|
|
67
69
|
function Dropdown(rootLocator) {
|
|
68
70
|
var _this = _super.call(this, rootLocator) || this;
|
|
69
71
|
_this.rootLocator = rootLocator;
|
|
72
|
+
_this[_a] = function () { return _this.buttonLocator; };
|
|
73
|
+
_this[_b] = function () { return _this.buttonLocator; };
|
|
74
|
+
_this[_c] = function () { return _this.getItemsLocator(); };
|
|
75
|
+
_this[_d] = function () { return _this.buttonLocator; };
|
|
70
76
|
_this.buttonLocator = rootLocator.locator('button');
|
|
71
77
|
_this.portal = new Portal_1.Portal(rootLocator.locator('noscript'));
|
|
72
78
|
return _this;
|
|
73
79
|
}
|
|
74
80
|
Dropdown.prototype.isDisabled = function (options) {
|
|
75
81
|
return __awaiter(this, void 0, void 0, function () {
|
|
76
|
-
return __generator(this, function (
|
|
77
|
-
switch (
|
|
82
|
+
return __generator(this, function (_e) {
|
|
83
|
+
switch (_e.label) {
|
|
78
84
|
case 0: return [4 /*yield*/, this.buttonLocator.isDisabled(options)];
|
|
79
|
-
case 1: return [2 /*return*/,
|
|
85
|
+
case 1: return [2 /*return*/, _e.sent()];
|
|
80
86
|
}
|
|
81
87
|
});
|
|
82
88
|
});
|
|
83
89
|
};
|
|
84
90
|
Dropdown.prototype.isMenuOpened = function () {
|
|
85
91
|
return __awaiter(this, void 0, void 0, function () {
|
|
86
|
-
return __generator(this, function (
|
|
87
|
-
switch (
|
|
92
|
+
return __generator(this, function (_e) {
|
|
93
|
+
switch (_e.label) {
|
|
88
94
|
case 0: return [4 /*yield*/, this.waitFor()];
|
|
89
95
|
case 1:
|
|
90
|
-
|
|
96
|
+
_e.sent();
|
|
91
97
|
return [4 /*yield*/, this.portal.isVisible()];
|
|
92
|
-
case 2: return [2 /*return*/,
|
|
98
|
+
case 2: return [2 /*return*/, _e.sent()];
|
|
93
99
|
}
|
|
94
100
|
});
|
|
95
101
|
});
|
|
96
102
|
};
|
|
97
103
|
Dropdown.prototype.getText = function (options) {
|
|
98
104
|
return __awaiter(this, void 0, void 0, function () {
|
|
99
|
-
return __generator(this, function (
|
|
100
|
-
switch (
|
|
105
|
+
return __generator(this, function (_e) {
|
|
106
|
+
switch (_e.label) {
|
|
101
107
|
case 0: return [4 /*yield*/, this.buttonLocator.innerText(options)];
|
|
102
|
-
case 1: return [2 /*return*/,
|
|
108
|
+
case 1: return [2 /*return*/, _e.sent()];
|
|
103
109
|
}
|
|
104
110
|
});
|
|
105
111
|
});
|
|
@@ -107,19 +113,19 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
107
113
|
Dropdown.prototype.selectFirstByText = function (text, options) {
|
|
108
114
|
return __awaiter(this, void 0, void 0, function () {
|
|
109
115
|
var items;
|
|
110
|
-
return __generator(this, function (
|
|
111
|
-
switch (
|
|
116
|
+
return __generator(this, function (_e) {
|
|
117
|
+
switch (_e.label) {
|
|
112
118
|
case 0: return [4 /*yield*/, this.getMenuItemsLocator(text)];
|
|
113
119
|
case 1:
|
|
114
|
-
items =
|
|
120
|
+
items = _e.sent();
|
|
115
121
|
return [4 /*yield*/, items.first().click(options)];
|
|
116
122
|
case 2:
|
|
117
|
-
|
|
123
|
+
_e.sent();
|
|
118
124
|
// note: ожидание закрытия меню, чтобы не было гонок
|
|
119
125
|
return [4 /*yield*/, this.portal.expect().toBeHidden()];
|
|
120
126
|
case 3:
|
|
121
127
|
// note: ожидание закрытия меню, чтобы не было гонок
|
|
122
|
-
|
|
128
|
+
_e.sent();
|
|
123
129
|
return [2 /*return*/];
|
|
124
130
|
}
|
|
125
131
|
});
|
|
@@ -128,19 +134,19 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
128
134
|
Dropdown.prototype.selectByIndex = function (index, options) {
|
|
129
135
|
return __awaiter(this, void 0, void 0, function () {
|
|
130
136
|
var items;
|
|
131
|
-
return __generator(this, function (
|
|
132
|
-
switch (
|
|
137
|
+
return __generator(this, function (_e) {
|
|
138
|
+
switch (_e.label) {
|
|
133
139
|
case 0: return [4 /*yield*/, this.getMenuItemsLocator()];
|
|
134
140
|
case 1:
|
|
135
|
-
items =
|
|
141
|
+
items = _e.sent();
|
|
136
142
|
return [4 /*yield*/, items.nth(index).click(options)];
|
|
137
143
|
case 2:
|
|
138
|
-
|
|
144
|
+
_e.sent();
|
|
139
145
|
// note: ожидание закрытия меню, чтобы не было гонок
|
|
140
146
|
return [4 /*yield*/, this.portal.expect().toBeHidden()];
|
|
141
147
|
case 3:
|
|
142
148
|
// note: ожидание закрытия меню, чтобы не было гонок
|
|
143
|
-
|
|
149
|
+
_e.sent();
|
|
144
150
|
return [2 /*return*/];
|
|
145
151
|
}
|
|
146
152
|
});
|
|
@@ -149,25 +155,25 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
149
155
|
Dropdown.prototype.selectByDataTid = function (dataTid, options) {
|
|
150
156
|
return __awaiter(this, void 0, void 0, function () {
|
|
151
157
|
var container, item;
|
|
152
|
-
return __generator(this, function (
|
|
153
|
-
switch (
|
|
158
|
+
return __generator(this, function (_e) {
|
|
159
|
+
switch (_e.label) {
|
|
154
160
|
case 0: return [4 /*yield*/, this.getPortalContainer()];
|
|
155
161
|
case 1:
|
|
156
|
-
container =
|
|
162
|
+
container = _e.sent();
|
|
157
163
|
item = container.locator((0, dataTidSelector_1.getDataTidSelector)(dataTid));
|
|
158
164
|
return [4 /*yield*/, item.count()];
|
|
159
165
|
case 2:
|
|
160
|
-
if ((
|
|
166
|
+
if ((_e.sent()) > 1) {
|
|
161
167
|
throw Error('DataTid должен быть уникальным');
|
|
162
168
|
}
|
|
163
169
|
return [4 /*yield*/, item.click(options)];
|
|
164
170
|
case 3:
|
|
165
|
-
|
|
171
|
+
_e.sent();
|
|
166
172
|
// note: ожидание закрытия меню, чтобы не было гонок
|
|
167
173
|
return [4 /*yield*/, this.portal.expect().toBeHidden()];
|
|
168
174
|
case 4:
|
|
169
175
|
// note: ожидание закрытия меню, чтобы не было гонок
|
|
170
|
-
|
|
176
|
+
_e.sent();
|
|
171
177
|
return [2 /*return*/];
|
|
172
178
|
}
|
|
173
179
|
});
|
|
@@ -175,33 +181,29 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
175
181
|
};
|
|
176
182
|
Dropdown.prototype.click = function (options) {
|
|
177
183
|
return __awaiter(this, void 0, void 0, function () {
|
|
178
|
-
return __generator(this, function (
|
|
179
|
-
switch (
|
|
184
|
+
return __generator(this, function (_e) {
|
|
185
|
+
switch (_e.label) {
|
|
180
186
|
case 0: return [4 /*yield*/, this.buttonLocator.click(options)];
|
|
181
187
|
case 1:
|
|
182
|
-
|
|
188
|
+
_e.sent();
|
|
183
189
|
return [2 /*return*/];
|
|
184
190
|
}
|
|
185
191
|
});
|
|
186
192
|
});
|
|
187
193
|
};
|
|
188
194
|
Dropdown.prototype.getTooltip = function (type) {
|
|
189
|
-
return
|
|
190
|
-
return __generator(this, function (_a) {
|
|
191
|
-
return [2 /*return*/, (0, utils_1.getTooltip)(type, this)];
|
|
192
|
-
});
|
|
193
|
-
});
|
|
195
|
+
return (0, utils_1.getTooltip)(type, this);
|
|
194
196
|
};
|
|
195
197
|
Dropdown.prototype.focus = function (options) {
|
|
196
198
|
return __awaiter(this, void 0, void 0, function () {
|
|
197
|
-
return __generator(this, function (
|
|
198
|
-
switch (
|
|
199
|
+
return __generator(this, function (_e) {
|
|
200
|
+
switch (_e.label) {
|
|
199
201
|
case 0: return [4 /*yield*/, (0, test_1.expect)(this.buttonLocator).toBeEnabled()];
|
|
200
202
|
case 1:
|
|
201
|
-
|
|
203
|
+
_e.sent();
|
|
202
204
|
return [4 /*yield*/, this.buttonLocator.focus(options)];
|
|
203
205
|
case 2:
|
|
204
|
-
|
|
206
|
+
_e.sent();
|
|
205
207
|
return [2 /*return*/];
|
|
206
208
|
}
|
|
207
209
|
});
|
|
@@ -209,11 +211,11 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
209
211
|
};
|
|
210
212
|
Dropdown.prototype.blur = function (options) {
|
|
211
213
|
return __awaiter(this, void 0, void 0, function () {
|
|
212
|
-
return __generator(this, function (
|
|
213
|
-
switch (
|
|
214
|
+
return __generator(this, function (_e) {
|
|
215
|
+
switch (_e.label) {
|
|
214
216
|
case 0: return [4 /*yield*/, this.buttonLocator.blur(options)];
|
|
215
217
|
case 1:
|
|
216
|
-
|
|
218
|
+
_e.sent();
|
|
217
219
|
return [2 /*return*/];
|
|
218
220
|
}
|
|
219
221
|
});
|
|
@@ -228,14 +230,14 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
228
230
|
Dropdown.prototype.getMenuItems = function () {
|
|
229
231
|
return __awaiter(this, void 0, void 0, function () {
|
|
230
232
|
var container;
|
|
231
|
-
return __generator(this, function (
|
|
232
|
-
switch (
|
|
233
|
+
return __generator(this, function (_e) {
|
|
234
|
+
switch (_e.label) {
|
|
233
235
|
case 0: return [4 /*yield*/, this.getPortalContainer()];
|
|
234
236
|
case 1:
|
|
235
|
-
container =
|
|
237
|
+
container = _e.sent();
|
|
236
238
|
return [4 /*yield*/, container.locator((0, dataTidSelector_1.getDataTidSelector)(react_ui_1.SpinnerDataTids.root)).waitFor({ state: 'hidden' })];
|
|
237
239
|
case 2:
|
|
238
|
-
|
|
240
|
+
_e.sent();
|
|
239
241
|
return [2 /*return*/, new ComponentList_1.ComponentList(container, function (locator) {
|
|
240
242
|
return locator
|
|
241
243
|
.locator((0, dataTidSelector_1.getDataTidSelector)(react_ui_1.MenuItemDataTids.root))
|
|
@@ -250,23 +252,23 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
250
252
|
return __awaiter(this, void 0, void 0, function () {
|
|
251
253
|
var items;
|
|
252
254
|
var _this = this;
|
|
253
|
-
return __generator(this, function (
|
|
254
|
-
switch (
|
|
255
|
+
return __generator(this, function (_e) {
|
|
256
|
+
switch (_e.label) {
|
|
255
257
|
case 0: return [4 /*yield*/, this.getMenuItems()];
|
|
256
258
|
case 1:
|
|
257
|
-
items =
|
|
259
|
+
items = _e.sent();
|
|
258
260
|
return [4 /*yield*/, items.getFirstItemByPredicate(function (item) { return __awaiter(_this, void 0, void 0, function () {
|
|
259
261
|
var itemText;
|
|
260
|
-
return __generator(this, function (
|
|
261
|
-
switch (
|
|
262
|
+
return __generator(this, function (_e) {
|
|
263
|
+
switch (_e.label) {
|
|
262
264
|
case 0: return [4 /*yield*/, item.getText()];
|
|
263
265
|
case 1:
|
|
264
|
-
itemText =
|
|
266
|
+
itemText = _e.sent();
|
|
265
267
|
return [2 /*return*/, itemText.toLowerCase() === text.toLowerCase()];
|
|
266
268
|
}
|
|
267
269
|
});
|
|
268
270
|
}); })];
|
|
269
|
-
case 2: return [2 /*return*/,
|
|
271
|
+
case 2: return [2 /*return*/, _e.sent()];
|
|
270
272
|
}
|
|
271
273
|
});
|
|
272
274
|
});
|
|
@@ -274,11 +276,11 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
274
276
|
Dropdown.prototype.getMenuItemByIndex = function (index) {
|
|
275
277
|
return __awaiter(this, void 0, void 0, function () {
|
|
276
278
|
var items;
|
|
277
|
-
return __generator(this, function (
|
|
278
|
-
switch (
|
|
279
|
+
return __generator(this, function (_e) {
|
|
280
|
+
switch (_e.label) {
|
|
279
281
|
case 0: return [4 /*yield*/, this.getMenuItems()];
|
|
280
282
|
case 1:
|
|
281
|
-
items =
|
|
283
|
+
items = _e.sent();
|
|
282
284
|
return [2 /*return*/, items.getItemByIndex(index)];
|
|
283
285
|
}
|
|
284
286
|
});
|
|
@@ -290,11 +292,11 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
290
292
|
Dropdown.prototype.getMenuItemsLocator = function (byText) {
|
|
291
293
|
return __awaiter(this, void 0, void 0, function () {
|
|
292
294
|
var container, items;
|
|
293
|
-
return __generator(this, function (
|
|
294
|
-
switch (
|
|
295
|
+
return __generator(this, function (_e) {
|
|
296
|
+
switch (_e.label) {
|
|
295
297
|
case 0: return [4 /*yield*/, this.getPortalContainer()];
|
|
296
298
|
case 1:
|
|
297
|
-
container =
|
|
299
|
+
container = _e.sent();
|
|
298
300
|
items = container.locator((0, dataTidSelector_1.getDataTidSelector)(react_ui_1.MenuItemDataTids.root));
|
|
299
301
|
return [2 /*return*/, !byText ? items : items.getByText(byText)];
|
|
300
302
|
}
|
|
@@ -303,20 +305,21 @@ var Dropdown = /** @class */ (function (_super) {
|
|
|
303
305
|
};
|
|
304
306
|
Dropdown.prototype.getPortalContainer = function () {
|
|
305
307
|
return __awaiter(this, void 0, void 0, function () {
|
|
306
|
-
return __generator(this, function (
|
|
307
|
-
switch (
|
|
308
|
+
return __generator(this, function (_e) {
|
|
309
|
+
switch (_e.label) {
|
|
308
310
|
case 0: return [4 /*yield*/, this.isMenuOpened()];
|
|
309
311
|
case 1:
|
|
310
|
-
if (!!(
|
|
312
|
+
if (!!(_e.sent())) return [3 /*break*/, 3];
|
|
311
313
|
return [4 /*yield*/, this.buttonLocator.click()];
|
|
312
314
|
case 2:
|
|
313
|
-
|
|
314
|
-
|
|
315
|
+
_e.sent();
|
|
316
|
+
_e.label = 3;
|
|
315
317
|
case 3: return [2 /*return*/, this.portal.getContainer()];
|
|
316
318
|
}
|
|
317
319
|
});
|
|
318
320
|
});
|
|
319
321
|
};
|
|
320
322
|
return Dropdown;
|
|
321
|
-
}(
|
|
323
|
+
}(MenuComponent_1.MenuComponent));
|
|
322
324
|
exports.Dropdown = Dropdown;
|
|
325
|
+
_a = LocatorSymbols_1.toControlElementLocator, _b = LocatorSymbols_1.toTextElementLocator, _c = LocatorSymbols_1.toItemsElementLocator, _d = LocatorSymbols_1.toFocusableElementLocator;
|
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import type { Locator } from '@playwright/test';
|
|
2
|
-
import { BaseComponent } from './BaseComponent';
|
|
3
2
|
import type { TooltipType } from '../utils';
|
|
4
3
|
import { DropdownMenuAssertions } from '../assertions';
|
|
5
4
|
import { ComponentList } from './ComponentList';
|
|
6
5
|
import { MenuItem } from './MenuItem';
|
|
7
6
|
import type { BlurOptions, ClickOptions, FocusOptions, InnerTextOptions } from '../options';
|
|
8
|
-
|
|
7
|
+
import { MenuComponent } from './MenuComponent';
|
|
8
|
+
import { toFocusableElementLocator, toItemsElementLocator, toTextElementLocator } from '../matchers/component/LocatorSymbols';
|
|
9
|
+
export declare class DropdownMenu extends MenuComponent {
|
|
9
10
|
readonly rootLocator: Locator;
|
|
10
11
|
readonly buttonLocator: Locator;
|
|
11
12
|
private readonly portal;
|
|
13
|
+
readonly [toTextElementLocator]: () => Locator;
|
|
14
|
+
readonly [toItemsElementLocator]: () => Promise<Locator>;
|
|
15
|
+
readonly [toFocusableElementLocator]: () => Locator;
|
|
12
16
|
constructor(rootLocator: Locator);
|
|
13
17
|
getText(options?: InnerTextOptions): Promise<string>;
|
|
14
18
|
isMenuOpened(): Promise<boolean>;
|