@lion/ui 0.21.1-menu-system.0 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/button/src/LionButton.js +0 -4
- package/components/form/test/lion-form.test.js +4 -3
- package/components/form-core/src/form-group/FormGroupMixin.js +37 -0
- package/components/form-core/test-suites/form-group/FormGroupMixin.suite.js +25 -0
- package/components/input-amount-dropdown/src/LionInputAmountDropdown.js +2 -2
- package/components/input-amount-dropdown/test/lion-input-amount-dropdown-integrations.test.js +12 -3
- package/components/input-amount-dropdown/test-suites/LionInputAmountDropdown.suite.js +10 -3
- package/components/overlays/src/OverlayController.js +111 -296
- package/components/overlays/src/OverlayMixin.js +17 -76
- package/components/overlays/src/utils/adopt-styles.js +1 -1
- package/components/overlays/src/utils/is-equal-config.js +6 -15
- package/components/overlays/test/OverlayController.test.js +24 -144
- package/components/overlays/test-suites/OverlayMixin.suite.js +8 -8
- package/components/overlays/types/ArrowMixinTypes.ts +3 -1
- package/components/overlays/types/OverlayConfig.ts +5 -20
- package/components/overlays/types/OverlayMixinTypes.ts +0 -2
- package/custom-elements.json +6260 -13587
- package/dist-types/components/button/src/LionButton.d.ts +0 -1
- package/dist-types/components/button/src/LionButton.d.ts.map +1 -1
- package/dist-types/components/combobox/src/LionCombobox.d.ts +1 -1
- package/dist-types/components/dialog/src/LionDialog.d.ts +2 -6
- package/dist-types/components/dialog/src/LionDialog.d.ts.map +1 -1
- package/dist-types/components/form-core/src/form-group/FormGroupMixin.d.ts +1 -0
- package/dist-types/components/form-core/src/form-group/FormGroupMixin.d.ts.map +1 -1
- package/dist-types/components/form-core/test-suites/form-group/FormGroupMixin.suite.d.ts.map +1 -1
- package/dist-types/components/input-amount-dropdown/test-suites/LionInputAmountDropdown.suite.d.ts.map +1 -1
- package/dist-types/components/input-datepicker/src/LionInputDatepicker.d.ts +1 -1
- package/dist-types/components/overlays/src/OverlayController.d.ts +5 -22
- package/dist-types/components/overlays/src/OverlayController.d.ts.map +1 -1
- package/dist-types/components/overlays/src/OverlayMixin.d.ts.map +1 -1
- package/dist-types/components/overlays/src/utils/is-equal-config.d.ts.map +1 -1
- package/dist-types/components/overlays/types/ArrowMixinTypes.d.ts.map +1 -1
- package/dist-types/components/overlays/types/OverlayConfig.d.ts +2 -12
- package/dist-types/components/overlays/types/OverlayConfig.d.ts.map +1 -1
- package/dist-types/components/overlays/types/OverlayMixinTypes.d.ts +0 -1
- package/dist-types/components/overlays/types/OverlayMixinTypes.d.ts.map +1 -1
- package/dist-types/components/select-rich/src/LionSelectRich.d.ts +2 -6
- package/dist-types/components/select-rich/src/LionSelectRich.d.ts.map +1 -1
- package/dist-types/components/tooltip/src/LionTooltip.d.ts +1 -1
- package/dist-types/exports/overlays.d.ts +0 -6
- package/dist-types/exports/overlays.d.ts.map +1 -1
- 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/api-table.md +39 -53
- package/docs/components/combobox/overview.md +1 -1
- package/docs/components/combobox/use-cases.md +1 -1
- package/docs/components/dialog/api-table.md +6 -32
- 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/form/use-cases.md +2 -2
- package/docs/components/icon/use-cases.md +1 -1
- package/docs/components/input/overview.md +1 -1
- package/docs/components/input-amount/overview.md +3 -3
- package/docs/components/input-date/overview.md +3 -3
- package/docs/components/input-datepicker/api-table.md +45 -63
- 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/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/api-table.md +33 -50
- package/docs/components/select-rich/use-cases.md +2 -2
- package/docs/components/tabs/examples.md +1 -1
- package/docs/components/tooltip/api-table.md +7 -33
- package/docs/fundamentals/index.md +4 -4
- 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/formatting-and-parsing.md +4 -4
- package/docs/fundamentals/systems/form/model-value.md +1 -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/api-table.md +43 -46
- 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/how-to/index.md +1 -1
- 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/overlays.js +0 -6
- package/overlays.js +0 -6
- package/package.json +6 -2
- package/vscode.css-custom-data.json +5 -0
- package/vscode.html-custom-data.json +789 -0
- package/web-types.json +2016 -0
- package/components/menu/CHANGELOG.md +0 -37
- package/components/menu/README.md +0 -334
- package/components/menu/index.js +0 -2
- package/components/menu/lion-menu.js +0 -3
- package/components/menu/package.json +0 -46
- package/components/menu/requirements.temp.md +0 -12
- package/components/menu/src/InteractiveListMixin.js +0 -840
- package/components/menu/src/LionMenu.js +0 -421
- package/components/menu/src/MoreButtonMenuMixin.js +0 -278
- package/components/menu/src/MultiLevelListMixin.js +0 -305
- package/components/menu/src/utils/isInView.js +0 -26
- package/components/menu/src/utils/listItemInteractions.js +0 -124
- package/components/menu/test/InteractiveListMixin.test.js +0 -3
- package/components/menu/test/MoreButtonMenuMixin.test.js +0 -4
- package/components/menu/test/MultiLevelListMixin.test.js +0 -3
- package/components/menu/test/lion-menu-interactions.test.js +0 -3
- package/components/menu/test/lion-menu.test.js +0 -14
- package/components/menu/test-helpers/mimicKeyPress.js +0 -9
- package/components/menu/test-suites/InteractiveListMixin.suite.js +0 -454
- package/components/menu/test-suites/LionMenu.suite.js +0 -114
- package/components/menu/test-suites/LionMenuInteractions.suite.js +0 -583
- package/components/menu/test-suites/MoreButtonMenuMixin.suite.js +0 -372
- package/components/menu/test-suites/MultiLevelListMixin.suite.js +0 -303
- package/components/menu/types/InteractiveListMixinTypes.d.ts +0 -84
- package/components/overlays/NEXT.md +0 -49
- package/dist-types/components/menu/index.d.ts +0 -3
- package/dist-types/components/menu/index.d.ts.map +0 -1
- package/dist-types/components/menu/lion-menu.d.ts +0 -2
- package/dist-types/components/menu/lion-menu.d.ts.map +0 -1
- package/dist-types/components/menu/src/MoreButtonMenuMixin.d.ts +0 -39
- package/dist-types/components/menu/src/MoreButtonMenuMixin.d.ts.map +0 -1
- package/dist-types/components/menu/src/utils/isInView.d.ts +0 -9
- package/dist-types/components/menu/src/utils/isInView.d.ts.map +0 -1
- package/dist-types/components/menu/src/utils/listItemInteractions.d.ts +0 -48
- package/dist-types/components/menu/src/utils/listItemInteractions.d.ts.map +0 -1
- package/dist-types/components/menu/test/InteractiveListMixin.test.d.ts +0 -2
- package/dist-types/components/menu/test/InteractiveListMixin.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/MoreButtonMenuMixin.test.d.ts +0 -2
- package/dist-types/components/menu/test/MoreButtonMenuMixin.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/MultiLevelListMixin.test.d.ts +0 -2
- package/dist-types/components/menu/test/MultiLevelListMixin.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/lion-menu-interactions.test.d.ts +0 -2
- package/dist-types/components/menu/test/lion-menu-interactions.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/lion-menu.test.d.ts +0 -2
- package/dist-types/components/menu/test/lion-menu.test.d.ts.map +0 -1
- package/dist-types/components/menu/test-helpers/mimicKeyPress.d.ts +0 -7
- package/dist-types/components/menu/test-helpers/mimicKeyPress.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/InteractiveListMixin.suite.d.ts +0 -11
- package/dist-types/components/menu/test-suites/InteractiveListMixin.suite.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/LionMenu.suite.d.ts +0 -9
- package/dist-types/components/menu/test-suites/LionMenu.suite.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/LionMenuInteractions.suite.d.ts +0 -5
- package/dist-types/components/menu/test-suites/LionMenuInteractions.suite.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/MoreButtonMenuMixin.suite.d.ts +0 -11
- package/dist-types/components/menu/test-suites/MoreButtonMenuMixin.suite.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/MultiLevelListMixin.suite.d.ts +0 -11
- package/dist-types/components/menu/test-suites/MultiLevelListMixin.suite.d.ts.map +0 -1
- package/dist-types/exports/define/lion-item.d.ts +0 -2
- package/dist-types/exports/define/lion-item.d.ts.map +0 -1
- package/dist-types/exports/define/lion-menu.d.ts +0 -2
- package/dist-types/exports/define/lion-menu.d.ts.map +0 -1
- package/dist-types/exports/menu-test-suites.d.ts +0 -4
- package/dist-types/exports/menu-test-suites.d.ts.map +0 -1
- package/dist-types/exports/menu.d.ts +0 -3
- package/dist-types/exports/menu.d.ts.map +0 -1
- package/docs/components/menu/api-table.md +0 -121
- package/docs/components/menu/applyMenuDemoStyles.js +0 -173
- package/docs/components/menu/extensions.md +0 -262
- package/docs/components/menu/index.md +0 -13
- package/docs/components/menu/overview.md +0 -422
- package/docs/components/menu/src/DemoNavigationBar.js +0 -441
- package/docs/components/menu/src/DemoSpinButton.js +0 -215
- package/docs/components/menu/src/DemoToolbar.js +0 -101
- package/docs/components/menu/src/DemoTree.js +0 -55
- package/docs/components/menu/src/navigation-bar-types.js +0 -41
- package/docs/components/menu/use-cases.md +0 -74
- package/exports/define/lion-item.js +0 -3
- package/exports/define/lion-menu.js +0 -3
- package/exports/menu-test-suites.js +0 -4
- package/exports/menu.js +0 -3
- package/menu-test-suites.js +0 -4
- package/menu.js +0 -3
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import/no-extraneous-dependencies */
|
|
2
|
-
/* eslint-disable import/no-relative-packages */
|
|
3
|
-
import { LionMenu } from '@lion/ui/menu.js';
|
|
4
|
-
import {
|
|
5
|
-
setChecked,
|
|
6
|
-
toggleChecked,
|
|
7
|
-
} from '../../../../packages/ui/components/menu/src/utils/listItemInteractions.js';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* @typedef {import('../../../../packages/ui/components/menu/types/InteractiveListMixinTypes.js').InteractiveListItemRole} InteractiveListItemRole
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
// @ts-ignore - class extension properties mismatch at the OverlayWithListInvokerMixin boundary
|
|
14
|
-
export class DemoToolbar extends LionMenu {
|
|
15
|
-
constructor() {
|
|
16
|
-
super();
|
|
17
|
-
|
|
18
|
-
this._listRole = 'toolbar';
|
|
19
|
-
this.bar = true;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Allows groups ([role=radiogroup|checkboxgroup]) within one level.
|
|
24
|
-
* In case we deal with [role=checkbox], we treat it as multiple choice group
|
|
25
|
-
* @override InteractiveListMixin
|
|
26
|
-
* @param {number} index
|
|
27
|
-
*/
|
|
28
|
-
setCheckedIndex(index) {
|
|
29
|
-
const item = this.listItems[index];
|
|
30
|
-
if (item) {
|
|
31
|
-
// @ts-ignore - InteractiveListItemRole type
|
|
32
|
-
const role = /** @type {InteractiveListItemRole} */ (item.getAttribute('role'));
|
|
33
|
-
let listItemsWithinGroup = this.listItems;
|
|
34
|
-
let multiple = this.multipleChoice;
|
|
35
|
-
if (role === 'radio' || role === 'checkbox') {
|
|
36
|
-
/**
|
|
37
|
-
* If index = 1 (radio 'Red'), closest group will be div[role=radiogroup]
|
|
38
|
-
* @example
|
|
39
|
-
* <demo-toolbar>
|
|
40
|
-
* <div role="radiogroup" aria-label="Text Color">
|
|
41
|
-
* <button role="radio" aria-checked="false">Blue</button>
|
|
42
|
-
* <button role="radio" aria-checked="true">Red</button>
|
|
43
|
-
* <button role="radio" aria-checked="false">Green</button>
|
|
44
|
-
* </div>
|
|
45
|
-
* <div role="separator"></div>
|
|
46
|
-
* <div role="checkboxgroup" aria-label="Text Color">
|
|
47
|
-
* <button role="checkbox" aria-checked="false">Blue</button>
|
|
48
|
-
* <button role="checkbox" aria-checked="true">Red</button>
|
|
49
|
-
* <button role="checkbox" aria-checked="false">Green</button>
|
|
50
|
-
* </div>
|
|
51
|
-
* </demo-toolbar>
|
|
52
|
-
*/
|
|
53
|
-
let closestGroup;
|
|
54
|
-
if (role === 'radio') {
|
|
55
|
-
closestGroup = item.closest('[role="radiogroup"]');
|
|
56
|
-
} else if (role === 'checkbox') {
|
|
57
|
-
closestGroup = item.closest('[role="checkboxgroup"]');
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
const group = closestGroup && this.contains(closestGroup) ? closestGroup : this;
|
|
61
|
-
listItemsWithinGroup = this.listItems.filter(listItem => group.contains(listItem));
|
|
62
|
-
multiple = role === 'checkbox';
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
if (!multiple) {
|
|
66
|
-
// Uncheck all
|
|
67
|
-
listItemsWithinGroup.forEach(listItem => {
|
|
68
|
-
setChecked(listItem, true);
|
|
69
|
-
});
|
|
70
|
-
setChecked(this.listItems[index]);
|
|
71
|
-
} else {
|
|
72
|
-
toggleChecked(this.listItems[index]);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* @param {*} newItems
|
|
79
|
-
*/
|
|
80
|
-
_initListItems(newItems) {
|
|
81
|
-
super._initListItems(newItems);
|
|
82
|
-
|
|
83
|
-
// @ts-ignore - forEach parameter
|
|
84
|
-
newItems.forEach(item => {
|
|
85
|
-
if (
|
|
86
|
-
item.getAttribute('role') === 'button' ||
|
|
87
|
-
(item.tagName === 'BUTTON' && !item.hasAttribute('role'))
|
|
88
|
-
) {
|
|
89
|
-
const initialAriaPressed = item.getAttribute('aria-pressed');
|
|
90
|
-
item.setAttribute('aria-pressed', initialAriaPressed || 'false');
|
|
91
|
-
|
|
92
|
-
item.addEventListener('click', () => {
|
|
93
|
-
const ariaPressed = item.getAttribute('aria-pressed') === 'true';
|
|
94
|
-
item.setAttribute('aria-pressed', `${!ariaPressed}`);
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
customElements.define('demo-toolbar', DemoToolbar);
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import/no-extraneous-dependencies */
|
|
2
|
-
/* eslint-disable import/no-relative-packages */
|
|
3
|
-
import { LitElement } from 'lit';
|
|
4
|
-
import { MultiLevelListMixin } from '../../../../packages/ui/components/menu/src/MultiLevelListMixin.js';
|
|
5
|
-
|
|
6
|
-
// @ts-ignore - class extension with mixin
|
|
7
|
-
export class DemoTree extends MultiLevelListMixin(LitElement) {
|
|
8
|
-
constructor() {
|
|
9
|
-
super();
|
|
10
|
-
|
|
11
|
-
/** @configure InteractiveListMixin */
|
|
12
|
-
this._listRole = 'tree';
|
|
13
|
-
/** @configure InteractiveListMixin */
|
|
14
|
-
this._activateOnTypedChars = true;
|
|
15
|
-
/** @configure DisclosureMixin */
|
|
16
|
-
this.invokerInteraction = 'click';
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* @param {*} changedProperties
|
|
21
|
-
*/
|
|
22
|
-
updated(changedProperties) {
|
|
23
|
-
super.updated(changedProperties);
|
|
24
|
-
|
|
25
|
-
if (changedProperties.has('level')) {
|
|
26
|
-
if (this.level > 1) {
|
|
27
|
-
this._listNode.setAttribute('role', 'group');
|
|
28
|
-
}
|
|
29
|
-
this.__setAriaLevelForListItems();
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* @param {*} newItems
|
|
35
|
-
*/
|
|
36
|
-
_initListItems(newItems) {
|
|
37
|
-
// @ts-ignore - parameter types
|
|
38
|
-
super._initListItems(newItems);
|
|
39
|
-
|
|
40
|
-
this.__setAriaLevelForListItems();
|
|
41
|
-
// @ts-ignore - forEach parameters
|
|
42
|
-
newItems.forEach((item, index) => {
|
|
43
|
-
item.setAttribute('aria-posinset', `${index + 1}`);
|
|
44
|
-
item.setAttribute('aria-setsize', `${this.listItems.length}`);
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
__setAriaLevelForListItems() {
|
|
49
|
-
this.listItems.forEach(item => {
|
|
50
|
-
item.setAttribute?.('aria-level', `${this.level + 1}`);
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
customElements.define('demo-tree', DemoTree);
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @typedef {'mobile' | 'desktop'} NavBarResponsiveMode
|
|
3
|
-
* Responsive mode for the navigation bar
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* @typedef {Object} MenuItem
|
|
8
|
-
* Navigation menu item
|
|
9
|
-
* @property {string} [id] - Optional unique identifier
|
|
10
|
-
* @property {string} title - Display title of the menu item
|
|
11
|
-
* @property {string} [link] - URL for the menu item (for leaf items)
|
|
12
|
-
* @property {MenuItem[]} [sub] - Submenu items (for parent items)
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @typedef {Object} CtaLink
|
|
17
|
-
* Call-to-action link
|
|
18
|
-
* @property {string} [id] - Optional unique identifier
|
|
19
|
-
* @property {string} [href] - URL for the CTA
|
|
20
|
-
* @property {string} [text] - Display text for the CTA
|
|
21
|
-
* @property {string} [label] - Accessible label for the CTA
|
|
22
|
-
*/
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* @typedef {Object} Logo
|
|
26
|
-
* Logo configuration for the navigation bar
|
|
27
|
-
* @property {string} type - Logo type (e.g., 'ing')
|
|
28
|
-
* @property {string} alt - Alternative text for the logo
|
|
29
|
-
* @property {string} href - URL the logo links to
|
|
30
|
-
* @property {string} [src] - Optional custom logo source URL
|
|
31
|
-
*/
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* @typedef {Object} LevelConfig
|
|
35
|
-
* Configuration for a menu level
|
|
36
|
-
* @property {boolean} [isBar] - Whether this level is displayed as a bar
|
|
37
|
-
* @property {boolean} [hasFullWidthFlyout] - Whether this level has a full-width flyout
|
|
38
|
-
* @property {object} [openableConfig] - Configuration for the openable overlay
|
|
39
|
-
*/
|
|
40
|
-
|
|
41
|
-
export {};
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: 'Menu: Overview'
|
|
3
|
-
parts:
|
|
4
|
-
- Menu
|
|
5
|
-
- Use Cases
|
|
6
|
-
eleventyNavigation:
|
|
7
|
-
key: 'Menu: Use Cases'
|
|
8
|
-
order: 20
|
|
9
|
-
parent: Menu
|
|
10
|
-
title: Use Cases
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
# Use Cases
|
|
14
|
-
|
|
15
|
-
```js script
|
|
16
|
-
import { html } from 'lit';
|
|
17
|
-
import '@lion/ui/define/lion-item.js';
|
|
18
|
-
import '@lion/ui/define/lion-menu.js';
|
|
19
|
-
import { applyMenuDemoStyles } from './applyMenuDemoStyles.js';
|
|
20
|
-
|
|
21
|
-
applyMenuDemoStyles();
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## Default
|
|
25
|
-
|
|
26
|
-
```html preview-story
|
|
27
|
-
<nav>
|
|
28
|
-
<button data-invoker>Open menu</button>
|
|
29
|
-
<lion-menu>
|
|
30
|
-
<div role="menuitem">Go to Definition</div>
|
|
31
|
-
<div role="menuitem">Go to Type Definition</div>
|
|
32
|
-
<div>
|
|
33
|
-
<button role="menuitem" data-invoker>Peek</button>
|
|
34
|
-
<lion-menu>
|
|
35
|
-
<div role="menuitem">Peek Call Hierarchy</div>
|
|
36
|
-
<div role="separator"></div>
|
|
37
|
-
<div role="menuitem">Peek Definition</div>
|
|
38
|
-
</lion-menu>
|
|
39
|
-
</div>
|
|
40
|
-
<div role="separator"></div>
|
|
41
|
-
<div role="menuitem">Find all References</div>
|
|
42
|
-
</lion-menu>
|
|
43
|
-
</nav>
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
## Overflow
|
|
47
|
-
|
|
48
|
-
## Attributes & Properties
|
|
49
|
-
|
|
50
|
-
### Bar
|
|
51
|
-
|
|
52
|
-
By adding the `bar` attribute the orientation will be set to horizontal and the role will be set to menubar.
|
|
53
|
-
|
|
54
|
-
```html preview-story
|
|
55
|
-
<nav>
|
|
56
|
-
<lion-menu bar>
|
|
57
|
-
<div>
|
|
58
|
-
<a role="menuitem" data-invoker href="#home">home</a>
|
|
59
|
-
</div>
|
|
60
|
-
<div role="menuitem">Go to Definition</div>
|
|
61
|
-
<div role="menuitem">Go to Type Definition</div>
|
|
62
|
-
<div>
|
|
63
|
-
<button role="menuitem" data-invoker>Details</button>
|
|
64
|
-
<lion-menu>
|
|
65
|
-
<div role="menuitem">Peek Call Hierarchy</div>
|
|
66
|
-
<div role="separator"></div>
|
|
67
|
-
<div role="menuitem">Peek Definition</div>
|
|
68
|
-
</lion-menu>
|
|
69
|
-
</div>
|
|
70
|
-
<div role="separator"></div>
|
|
71
|
-
<div role="menuitem">Find all References</div>
|
|
72
|
-
</lion-menu>
|
|
73
|
-
</nav>
|
|
74
|
-
```
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import/no-relative-packages */
|
|
2
|
-
export { runInteractiveListMixinSuite } from '../components/menu/test-suites/InteractiveListMixin.suite.js';
|
|
3
|
-
export { runMultiLevelListMixinSuite } from '../components/menu/test-suites/MultiLevelListMixin.suite.js';
|
|
4
|
-
export { runLionMenuInteractionsSuite } from '../components/menu/test-suites/LionMenuInteractions.suite.js';
|
package/exports/menu.js
DELETED
package/menu-test-suites.js
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import/no-relative-packages */
|
|
2
|
-
export { runInteractiveListMixinSuite } from './components/menu/test-suites/InteractiveListMixin.suite.js';
|
|
3
|
-
export { runMultiLevelListMixinSuite } from './components/menu/test-suites/MultiLevelListMixin.suite.js';
|
|
4
|
-
export { runLionMenuInteractionsSuite } from './components/menu/test-suites/LionMenuInteractions.suite.js';
|
package/menu.js
DELETED