@lion/ui 0.6.1 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/core/src/browserDetection.js +27 -17
- package/components/form-core/test-suites/form-group/FormGroupMixin.suite.js +1 -1
- package/components/helpers/src/SbActionLogger.js +1 -0
- package/components/input-amount/src/parsers.js +11 -3
- package/components/input-amount/test/formatters.test.js +11 -0
- package/components/input-amount/test/parsers.test.js +32 -4
- package/components/input-date/src/LionInputDate.js +1 -1
- package/components/input-tel-dropdown/src/LionInputTelDropdown.js +1 -13
- package/components/input-tel-dropdown/test-suites/LionInputTelDropdown.suite.js +2 -0
- package/components/input-tel-dropdown/types/index.ts +1 -0
- package/components/localize/src/date/getDateFormatBasedOnLocale.js +4 -3
- package/components/localize/src/date/parseDate.js +7 -2
- package/components/localize/src/date/utils/sanitizedDateTimeFormat.js +3 -2
- package/components/localize/src/number/formatNumber.js +1 -1
- package/components/localize/test/date/getDateFormatBasedOnLocale.test.js +6 -2
- package/components/localize/test/date/parseDate.test.js +8 -1
- package/components/localize/test/number/formatNumber.test.js +9 -0
- package/components/overlays/test/local-positioning.test.js +13 -21
- package/components/overlays/test/utils-tests/contain-focus.test.js +2 -2
- package/components/overlays/test/utils-tests/deep-contains.test.js +3 -3
- package/components/overlays/test/utils-tests/get-focusable-elements.test.js +1 -1
- package/components/select-rich/src/LionSelectRich.js +8 -1
- package/components/select-rich/test/lion-select-rich-interaction.test.js +27 -41
- package/components/select-rich/test/lion-select-rich.test.js +16 -14
- package/components/select-rich/test-helpers/getSelectRichMembers.js +18 -0
- package/custom-elements.json +531 -463
- package/dist-types/components/core/src/browserDetection.d.ts +3 -3
- package/dist-types/components/core/src/types.d.ts +1 -1
- package/dist-types/components/core/src/types.d.ts.map +1 -1
- package/dist-types/components/core/types/DisabledMixinTypes.d.ts +1 -1
- package/dist-types/components/core/types/DisabledMixinTypes.d.ts.map +1 -1
- package/dist-types/components/core/types/DisabledWithTabIndexMixinTypes.d.ts +1 -1
- package/dist-types/components/core/types/DisabledWithTabIndexMixinTypes.d.ts.map +1 -1
- package/dist-types/components/core/types/SlotMixinTypes.d.ts +4 -4
- package/dist-types/components/core/types/SlotMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/src/registration/FormControlsCollection.d.ts.map +1 -1
- package/dist-types/components/form-core/types/FocusMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/FocusMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/FormControlMixinTypes.d.ts +2 -2
- package/dist-types/components/form-core/types/FormControlMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/FormatMixinTypes.d.ts +2 -2
- package/dist-types/components/form-core/types/FormatMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/InteractionStateMixinTypes.d.ts +2 -2
- package/dist-types/components/form-core/types/InteractionStateMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/NativeTextFieldMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/NativeTextFieldMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/choice-group/ChoiceGroupMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/choice-group/ChoiceGroupMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/choice-group/ChoiceInputMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/choice-group/ChoiceInputMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/choice-group/CustomChoiceGroupMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/choice-group/CustomChoiceGroupMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/form-group/FormGroupMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/form-group/FormGroupMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/registration/FormRegisteringMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/registration/FormRegisteringMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/registration/FormRegistrarMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/registration/FormRegistrarMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/registration/FormRegistrarPortalMixinTypes.d.ts +1 -1
- package/dist-types/components/form-core/types/registration/FormRegistrarPortalMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/utils/SyncUpdatableMixinTypes.d.ts +2 -2
- package/dist-types/components/form-core/types/utils/SyncUpdatableMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/validate/ValidateMixinTypes.d.ts +5 -5
- package/dist-types/components/form-core/types/validate/ValidateMixinTypes.d.ts.map +1 -1
- package/dist-types/components/form-core/types/validate/validate.d.ts +5 -5
- package/dist-types/components/form-core/types/validate/validate.d.ts.map +1 -1
- package/dist-types/components/helpers/src/SbActionLogger.d.ts.map +1 -1
- package/dist-types/components/input-amount/src/parsers.d.ts.map +1 -1
- package/dist-types/components/input-date/src/LionInputDate.d.ts.map +1 -1
- package/dist-types/components/input-file/types/input-file.d.ts +4 -4
- package/dist-types/components/input-file/types/input-file.d.ts.map +1 -1
- package/dist-types/components/input-stepper/src/LionInputStepper.d.ts +0 -1
- package/dist-types/components/input-stepper/src/LionInputStepper.d.ts.map +1 -1
- package/dist-types/components/input-tel/types/index.d.ts +1 -1
- package/dist-types/components/input-tel/types/index.d.ts.map +1 -1
- package/dist-types/components/input-tel-dropdown/src/LionInputTelDropdown.d.ts.map +1 -1
- package/dist-types/components/input-tel-dropdown/test-suites/LionInputTelDropdown.suite.d.ts.map +1 -1
- package/dist-types/components/input-tel-dropdown/types/index.d.ts +6 -5
- package/dist-types/components/input-tel-dropdown/types/index.d.ts.map +1 -1
- package/dist-types/components/listbox/types/ListboxMixinTypes.d.ts +1 -1
- package/dist-types/components/listbox/types/ListboxMixinTypes.d.ts.map +1 -1
- package/dist-types/components/localize/src/date/getDateFormatBasedOnLocale.d.ts +2 -1
- package/dist-types/components/localize/src/date/getDateFormatBasedOnLocale.d.ts.map +1 -1
- package/dist-types/components/localize/src/date/parseDate.d.ts +3 -1
- package/dist-types/components/localize/src/date/parseDate.d.ts.map +1 -1
- package/dist-types/components/localize/src/date/utils/sanitizedDateTimeFormat.d.ts +2 -1
- package/dist-types/components/localize/src/date/utils/sanitizedDateTimeFormat.d.ts.map +1 -1
- package/dist-types/components/localize/types/LocalizeMixinTypes.d.ts +4 -4
- package/dist-types/components/localize/types/LocalizeMixinTypes.d.ts.map +1 -1
- package/dist-types/components/overlays/src/utils/adopt-styles.d.ts +6 -8
- package/dist-types/components/overlays/src/utils/adopt-styles.d.ts.map +1 -1
- package/dist-types/components/overlays/types/ArrowMixinTypes.d.ts +1 -1
- package/dist-types/components/overlays/types/ArrowMixinTypes.d.ts.map +1 -1
- package/dist-types/components/overlays/types/OverlayConfig.d.ts +1 -1
- package/dist-types/components/overlays/types/OverlayConfig.d.ts.map +1 -1
- package/dist-types/components/overlays/types/OverlayMixinTypes.d.ts +1 -1
- package/dist-types/components/overlays/types/OverlayMixinTypes.d.ts.map +1 -1
- package/dist-types/components/select-rich/src/LionSelectRich.d.ts +1 -0
- package/dist-types/components/select-rich/src/LionSelectRich.d.ts.map +1 -1
- package/dist-types/components/select-rich/test/lion-select-rich-interaction.test.d.ts.map +1 -1
- package/dist-types/components/select-rich/test/lion-select-rich.test.d.ts.map +1 -1
- package/dist-types/components/select-rich/test-helpers/getSelectRichMembers.d.ts +19 -0
- package/dist-types/components/select-rich/test-helpers/getSelectRichMembers.d.ts.map +1 -0
- package/dist-types/exports/select-rich-test-helpers.d.ts +2 -0
- package/dist-types/exports/select-rich-test-helpers.d.ts.map +1 -0
- package/dist-types/tsconfig.tsbuildinfo +1 -1
- package/docs/components/checkbox-group/overview.md +2 -2
- package/docs/components/collapsible/overview.md +1 -1
- package/docs/components/combobox/overview.md +1 -1
- package/docs/components/combobox/src/gh-combobox/gh-combobox.js +1 -1
- package/docs/components/combobox/src/google-combobox/google-combobox.js +1 -1
- package/docs/components/combobox/use-cases.md +1 -1
- package/docs/components/dialog/overview.md +1 -1
- package/docs/components/fieldset/overview.md +5 -5
- package/docs/components/form/overview.md +3 -3
- package/docs/components/icon/use-cases.md +1 -1
- package/docs/components/input/overview.md +1 -1
- package/docs/components/input-amount/overview.md +4 -4
- package/docs/components/input-date/overview.md +5 -5
- package/docs/components/input-datepicker/overview.md +5 -5
- package/docs/components/input-email/overview.md +2 -2
- package/docs/components/input-file/overview.md +1 -1
- package/docs/components/input-iban/overview.md +2 -2
- package/docs/components/input-range/overview.md +2 -2
- package/docs/components/input-stepper/overview.md +1 -1
- package/docs/components/input-tel/overview.md +1 -1
- package/docs/components/input-tel/use-cases.md +6 -6
- package/docs/components/input-tel-dropdown/overview.md +1 -1
- package/docs/components/input-tel-dropdown/src/intl-input-tel-dropdown.js +1 -0
- package/docs/components/listbox/use-cases.md +1 -1
- package/docs/components/radio-group/overview.md +3 -3
- package/docs/components/select/use-cases.md +1 -1
- package/docs/components/select-rich/use-cases.md +1 -1
- package/docs/components/tabs/examples.md +1 -1
- package/docs/fundamentals/index.md +4 -4
- package/docs/fundamentals/node-tools/providence-analytics/LocalConfiguration.md +1 -1
- package/docs/fundamentals/node-tools/providence-analytics/QueryResult.md +1 -1
- package/docs/fundamentals/node-tools/providence-analytics/analyzer.md +1 -1
- package/docs/fundamentals/node-tools/providence-analytics/dashboard.md +1 -1
- package/docs/fundamentals/node-tools/providence-analytics/overview.md +3 -3
- package/docs/fundamentals/node-tools/publish-docs/overview.md +3 -3
- package/docs/fundamentals/node-tools/rocket-preset-extend-lion-docs/overview.md +2 -2
- package/docs/fundamentals/rationales/accessibility.md +1 -1
- package/docs/fundamentals/systems/core/SlotMixin.md +1 -1
- package/docs/fundamentals/systems/core/overview.md +1 -1
- package/docs/fundamentals/systems/form/assets/h-output.js +1 -0
- package/docs/fundamentals/systems/form/formatting-and-parsing.md +4 -4
- package/docs/fundamentals/systems/form/interaction-states.md +6 -0
- package/docs/fundamentals/systems/form/model-value.md +10 -1
- package/docs/fundamentals/systems/form/overview.md +28 -28
- package/docs/fundamentals/systems/form/validate.md +2 -2
- package/docs/fundamentals/systems/localize/overview.md +4 -4
- package/docs/fundamentals/systems/overlays/configuration.md +2 -2
- package/docs/fundamentals/systems/overlays/overview.md +5 -5
- package/docs/fundamentals/systems/overlays/use-cases.md +2 -2
- package/docs/fundamentals/tools/helpers/overview.md +1 -1
- package/docs/fundamentals/tools/singleton-manager/overview.md +4 -4
- package/docs/guides/how-to/create-a-custom-field.md +5 -5
- package/docs/guides/how-to/create-a-form.md +4 -4
- package/docs/guides/how-to/extend-a-native-input.md +2 -2
- package/docs/guides/index.md +8 -8
- package/docs/guides/principles/index.md +5 -5
- package/docs/guides/principles/styling.md +1 -1
- package/exports/select-rich-test-helpers.js +1 -0
- package/package.json +1 -1
- package/select-rich-test-helpers.js +1 -0
|
@@ -7,6 +7,7 @@ import '@lion/ui/define/lion-option.js';
|
|
|
7
7
|
|
|
8
8
|
import '@lion/ui/define/lion-listbox.js';
|
|
9
9
|
import '@lion/ui/define/lion-select-rich.js';
|
|
10
|
+
import { getSelectRichMembers } from '@lion/ui/select-rich-test-helpers.js';
|
|
10
11
|
|
|
11
12
|
/**
|
|
12
13
|
* @typedef {import('../src/LionSelectRich.js').LionSelectRich} LionSelectRich
|
|
@@ -23,32 +24,6 @@ function mimicKeyPress(el, key, code = '') {
|
|
|
23
24
|
el.dispatchEvent(new KeyboardEvent('keyup', { key, code }));
|
|
24
25
|
}
|
|
25
26
|
|
|
26
|
-
/**
|
|
27
|
-
* @param {LionSelectRich} lionSelectEl
|
|
28
|
-
*/
|
|
29
|
-
function getNodes(lionSelectEl) {
|
|
30
|
-
const {
|
|
31
|
-
// @ts-ignore protected members allowed in test
|
|
32
|
-
_invokerNode: invoker,
|
|
33
|
-
// @ts-ignore protected members allowed in test
|
|
34
|
-
_feedbackNode: feedback,
|
|
35
|
-
// @ts-ignore protected members allowed in test
|
|
36
|
-
_labelNode: label,
|
|
37
|
-
// @ts-ignore protected members allowed in test
|
|
38
|
-
_helpTextNode: helpText,
|
|
39
|
-
// @ts-ignore protected members allowed in test
|
|
40
|
-
_listboxNode: listbox,
|
|
41
|
-
// @ts-ignore protected members allowed in test
|
|
42
|
-
} = lionSelectEl;
|
|
43
|
-
return {
|
|
44
|
-
invoker,
|
|
45
|
-
feedback,
|
|
46
|
-
label,
|
|
47
|
-
helpText,
|
|
48
|
-
listbox,
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
|
|
52
27
|
describe('lion-select-rich interactions', () => {
|
|
53
28
|
describe('Interaction mode', () => {
|
|
54
29
|
it('autodetects interactionMode if not defined', async () => {
|
|
@@ -131,9 +106,15 @@ describe('lion-select-rich interactions', () => {
|
|
|
131
106
|
});
|
|
132
107
|
}
|
|
133
108
|
|
|
109
|
+
let isTriggeredByUser;
|
|
134
110
|
const el = /** @type {LionSelectRich} */ (
|
|
135
111
|
await fixture(html`
|
|
136
|
-
<lion-select-rich
|
|
112
|
+
<lion-select-rich
|
|
113
|
+
interaction-mode="windows/linux"
|
|
114
|
+
@model-value-changed="${(/** @type {CustomEvent} */ event) => {
|
|
115
|
+
isTriggeredByUser = event.detail.isTriggeredByUser;
|
|
116
|
+
}}"
|
|
117
|
+
>
|
|
137
118
|
<lion-options slot="input">
|
|
138
119
|
<lion-option .choiceValue=${10}>Item 1</lion-option>
|
|
139
120
|
<lion-option .choiceValue=${20}>Item 2</lion-option>
|
|
@@ -150,10 +131,14 @@ describe('lion-select-rich interactions', () => {
|
|
|
150
131
|
el.dispatchEvent(new KeyboardEvent('keyup', { key: 'ArrowDown' }));
|
|
151
132
|
expect(el.checkedIndex).to.equal(1);
|
|
152
133
|
expectOnlyGivenOneOptionToBeChecked(options, 1);
|
|
134
|
+
expect(isTriggeredByUser).to.be.true;
|
|
135
|
+
|
|
136
|
+
isTriggeredByUser = false;
|
|
153
137
|
|
|
154
138
|
el.dispatchEvent(new KeyboardEvent('keyup', { key: 'ArrowUp' }));
|
|
155
139
|
expect(el.checkedIndex).to.equal(0);
|
|
156
140
|
expectOnlyGivenOneOptionToBeChecked(options, 0);
|
|
141
|
+
expect(isTriggeredByUser).to.be.true;
|
|
157
142
|
});
|
|
158
143
|
|
|
159
144
|
it('checkes a value with [character] keys while listbox unopened', async () => {
|
|
@@ -187,8 +172,8 @@ describe('lion-select-rich interactions', () => {
|
|
|
187
172
|
</lion-select-rich>
|
|
188
173
|
`)
|
|
189
174
|
);
|
|
190
|
-
const {
|
|
191
|
-
expect(
|
|
175
|
+
const { _invokerNode } = getSelectRichMembers(el);
|
|
176
|
+
expect(_invokerNode.tabIndex).to.equal(-1);
|
|
192
177
|
});
|
|
193
178
|
|
|
194
179
|
it('cannot be opened via click if disabled', async () => {
|
|
@@ -199,8 +184,9 @@ describe('lion-select-rich interactions', () => {
|
|
|
199
184
|
</lion-select-rich>
|
|
200
185
|
`)
|
|
201
186
|
);
|
|
202
|
-
const {
|
|
203
|
-
|
|
187
|
+
const { _invokerNode, _overlayCtrl } = getSelectRichMembers(el);
|
|
188
|
+
_invokerNode.click();
|
|
189
|
+
await _overlayCtrl._showComplete;
|
|
204
190
|
expect(el.opened).to.be.false;
|
|
205
191
|
});
|
|
206
192
|
|
|
@@ -212,11 +198,11 @@ describe('lion-select-rich interactions', () => {
|
|
|
212
198
|
</lion-select-rich>
|
|
213
199
|
`)
|
|
214
200
|
);
|
|
215
|
-
const {
|
|
216
|
-
expect(
|
|
201
|
+
const { _invokerNode } = getSelectRichMembers(el);
|
|
202
|
+
expect(_invokerNode.hasAttribute('disabled')).to.be.true;
|
|
217
203
|
el.removeAttribute('disabled');
|
|
218
204
|
await el.updateComplete;
|
|
219
|
-
expect(
|
|
205
|
+
expect(_invokerNode.hasAttribute('disabled')).to.be.false;
|
|
220
206
|
});
|
|
221
207
|
});
|
|
222
208
|
|
|
@@ -232,10 +218,10 @@ describe('lion-select-rich interactions', () => {
|
|
|
232
218
|
</lion-select-rich>
|
|
233
219
|
`)
|
|
234
220
|
);
|
|
235
|
-
const {
|
|
221
|
+
const { _invokerNode } = getSelectRichMembers(el);
|
|
236
222
|
expect(el.touched).to.be.false;
|
|
237
|
-
await triggerFocusFor(
|
|
238
|
-
await triggerBlurFor(
|
|
223
|
+
await triggerFocusFor(_invokerNode);
|
|
224
|
+
await triggerBlurFor(_invokerNode);
|
|
239
225
|
expect(el.touched).to.be.true;
|
|
240
226
|
});
|
|
241
227
|
});
|
|
@@ -252,21 +238,21 @@ describe('lion-select-rich interactions', () => {
|
|
|
252
238
|
</lion-select-rich>
|
|
253
239
|
`)
|
|
254
240
|
);
|
|
255
|
-
const {
|
|
241
|
+
const { _invokerNode } = getSelectRichMembers(el);
|
|
256
242
|
const options = el.formElements;
|
|
257
243
|
await el.feedbackComplete;
|
|
258
244
|
await el.updateComplete;
|
|
259
|
-
expect(
|
|
245
|
+
expect(_invokerNode.getAttribute('aria-invalid')).to.equal('false');
|
|
260
246
|
|
|
261
247
|
options[0].checked = true;
|
|
262
248
|
await el.feedbackComplete;
|
|
263
249
|
await el.updateComplete;
|
|
264
|
-
expect(
|
|
250
|
+
expect(_invokerNode.getAttribute('aria-invalid')).to.equal('true');
|
|
265
251
|
|
|
266
252
|
options[1].checked = true;
|
|
267
253
|
await el.feedbackComplete;
|
|
268
254
|
await el.updateComplete;
|
|
269
|
-
expect(
|
|
255
|
+
expect(_invokerNode.getAttribute('aria-invalid')).to.equal('false');
|
|
270
256
|
});
|
|
271
257
|
});
|
|
272
258
|
});
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { LitElement } from 'lit';
|
|
2
2
|
import { LionOption } from '@lion/ui/listbox.js';
|
|
3
|
-
import { getListboxMembers } from '@lion/ui/listbox-test-helpers.js';
|
|
4
3
|
import { OverlayController } from '@lion/ui/overlays.js';
|
|
5
4
|
import { mimicClick } from '@lion/ui/overlays-test-helpers.js';
|
|
6
5
|
import { LionSelectInvoker, LionSelectRich } from '@lion/ui/select-rich.js';
|
|
@@ -17,6 +16,7 @@ import {
|
|
|
17
16
|
nextFrame,
|
|
18
17
|
unsafeStatic,
|
|
19
18
|
} from '@open-wc/testing';
|
|
19
|
+
import { getSelectRichMembers } from '@lion/ui/select-rich-test-helpers.js';
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
22
|
* @typedef {import('../../listbox/src/LionOptions.js').LionOptions} LionOptions
|
|
@@ -24,19 +24,6 @@ import {
|
|
|
24
24
|
* @typedef {import('../../form-core/types/FormControlMixinTypes.js').FormControlHost} FormControlHost
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
/**
|
|
28
|
-
* @param { LionSelectRich } el
|
|
29
|
-
*/
|
|
30
|
-
function getSelectRichMembers(el) {
|
|
31
|
-
const obj = getListboxMembers(el);
|
|
32
|
-
// eslint-disable-next-line no-return-assign
|
|
33
|
-
return {
|
|
34
|
-
...obj,
|
|
35
|
-
// @ts-ignore [allow-protected] in test
|
|
36
|
-
...{ _invokerNode: el._invokerNode, _overlayCtrl: el._overlayCtrl },
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
|
|
40
27
|
/**
|
|
41
28
|
* @typedef {import('lit').TemplateResult} TemplateResult
|
|
42
29
|
*/
|
|
@@ -329,6 +316,21 @@ describe('lion-select-rich', () => {
|
|
|
329
316
|
expect(elSingleoption.opened).to.be.false;
|
|
330
317
|
});
|
|
331
318
|
|
|
319
|
+
it('stays closed with [ArrowUp] or [ArrowDown] key in readonly mode', async () => {
|
|
320
|
+
const elReadOnly = await fixture(html`
|
|
321
|
+
<lion-select-rich readonly>
|
|
322
|
+
<lion-option .choiceValue=${10}>Item 1</lion-option>
|
|
323
|
+
<lion-option .choiceValue=${20} checked>Item 2</lion-option>
|
|
324
|
+
</lion-select-rich>
|
|
325
|
+
`);
|
|
326
|
+
|
|
327
|
+
elReadOnly.dispatchEvent(new KeyboardEvent('keyup', { key: 'ArrowDown' }));
|
|
328
|
+
expect(elReadOnly.opened).to.be.false;
|
|
329
|
+
|
|
330
|
+
elReadOnly.dispatchEvent(new KeyboardEvent('keyup', { key: 'ArrowUp' }));
|
|
331
|
+
expect(elReadOnly.opened).to.be.false;
|
|
332
|
+
});
|
|
333
|
+
|
|
332
334
|
it('sets inheritsReferenceWidth to min by default', async () => {
|
|
333
335
|
const el = await fixture(html`
|
|
334
336
|
<lion-select-rich name="favoriteColor" label="Favorite color">
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { getListboxMembers } from '@lion/ui/listbox-test-helpers.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @typedef {import('../src/LionSelectRich.js').LionSelectRich} LionSelectRich
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @param { LionSelectRich } el
|
|
9
|
+
*/
|
|
10
|
+
export function getSelectRichMembers(el) {
|
|
11
|
+
const obj = getListboxMembers(el);
|
|
12
|
+
// eslint-disable-next-line no-return-assign
|
|
13
|
+
return {
|
|
14
|
+
...obj,
|
|
15
|
+
// @ts-ignore [allow-protected] in test
|
|
16
|
+
...{ _invokerNode: el._invokerNode, _overlayCtrl: el._overlayCtrl },
|
|
17
|
+
};
|
|
18
|
+
}
|