@lion/ui 0.17.0-menu-system.1 → 0.17.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.
Files changed (221) hide show
  1. package/collapsible.js +0 -1
  2. package/components/button/src/LionButton.js +0 -4
  3. package/components/button/test-suites/LionButton.suite.js +0 -1
  4. package/components/calendar/src/LionCalendar.js +0 -2
  5. package/components/combobox/test/lion-combobox.test.js +0 -1
  6. package/components/form-core/src/form-group/FormGroupMixin.js +0 -7
  7. package/components/form-core/src/registration/FormRegistrarMixin.js +0 -11
  8. package/components/form-core/test/FormControlMixin.test.js +0 -1
  9. package/components/form-core/test/validate/Validator.test.js +0 -2
  10. package/components/form-core/test-suites/ValidateMixin.suite.js +0 -2
  11. package/components/form-core/test-suites/ValidateMixinFeedbackPart.suite.js +0 -1
  12. package/components/input-datepicker/src/localizeNamespaceLoader.js +0 -1
  13. package/components/input-datepicker/test/lion-input-datepicker.test.js +6 -5
  14. package/components/localize/test/date/formatDate.test.js +0 -1
  15. package/components/overlays/src/OverlayController.js +111 -244
  16. package/components/overlays/src/OverlayMixin.js +11 -58
  17. package/components/overlays/src/OverlaysManager.js +2 -2
  18. package/components/overlays/src/configurations/withDropdownConfig.js +2 -22
  19. package/components/overlays/src/configurations/withPopoverConfig.js +32 -0
  20. package/components/overlays/src/utils/adopt-styles.js +1 -2
  21. package/components/overlays/src/utils/get-focusable-elements.js +0 -4
  22. package/components/overlays/src/utils/is-equal-config.js +6 -10
  23. package/components/overlays/test/OverlayController.test.js +3 -5
  24. package/components/overlays/test/utils-tests/is-equal-config.test.js +1 -1
  25. package/components/overlays/test-suites/OverlayMixin.suite.js +8 -8
  26. package/components/overlays/types/OverlayConfig.ts +5 -16
  27. package/components/select-rich/test/lion-select-rich.test.js +0 -3
  28. package/custom-elements.json +1891 -13818
  29. package/dist-types/components/button/src/LionButton.d.ts +0 -1
  30. package/dist-types/components/button/src/LionButton.d.ts.map +1 -1
  31. package/dist-types/components/button/test-suites/LionButton.suite.d.ts.map +1 -1
  32. package/dist-types/components/calendar/src/LionCalendar.d.ts.map +1 -1
  33. package/dist-types/components/dialog/src/LionDialog.d.ts +1 -3
  34. package/dist-types/components/dialog/src/LionDialog.d.ts.map +1 -1
  35. package/dist-types/components/form-core/src/form-group/FormGroupMixin.d.ts.map +1 -1
  36. package/dist-types/components/form-core/src/registration/FormRegistrarMixin.d.ts.map +1 -1
  37. package/dist-types/components/form-core/test-suites/ValidateMixin.suite.d.ts.map +1 -1
  38. package/dist-types/components/form-core/test-suites/ValidateMixinFeedbackPart.suite.d.ts.map +1 -1
  39. package/dist-types/components/input-datepicker/src/localizeNamespaceLoader.d.ts.map +1 -1
  40. package/dist-types/components/overlays/src/OverlayController.d.ts +13 -9
  41. package/dist-types/components/overlays/src/OverlayController.d.ts.map +1 -1
  42. package/dist-types/components/overlays/src/OverlayMixin.d.ts.map +1 -1
  43. package/dist-types/components/overlays/src/configurations/withDropdownConfig.d.ts +0 -1
  44. package/dist-types/components/overlays/src/configurations/withDropdownConfig.d.ts.map +1 -1
  45. package/dist-types/components/overlays/src/configurations/withPopoverConfig.d.ts +6 -0
  46. package/dist-types/components/overlays/src/configurations/withPopoverConfig.d.ts.map +1 -0
  47. package/dist-types/components/overlays/src/utils/get-focusable-elements.d.ts.map +1 -1
  48. package/dist-types/components/overlays/src/utils/is-equal-config.d.ts.map +1 -1
  49. package/dist-types/components/overlays/types/OverlayConfig.d.ts +2 -10
  50. package/dist-types/components/overlays/types/OverlayConfig.d.ts.map +1 -1
  51. package/dist-types/components/select-rich/src/LionSelectRich.d.ts +2 -8
  52. package/dist-types/components/select-rich/src/LionSelectRich.d.ts.map +1 -1
  53. package/dist-types/exports/overlays.d.ts +1 -3
  54. package/dist-types/exports/overlays.d.ts.map +1 -1
  55. package/dist-types/tsconfig.tsbuildinfo +1 -1
  56. package/docs/components/checkbox-group/overview.md +2 -2
  57. package/docs/components/collapsible/overview.md +1 -1
  58. package/docs/components/combobox/api-table.md +8 -21
  59. package/docs/components/combobox/overview.md +1 -1
  60. package/docs/components/combobox/use-cases.md +1 -1
  61. package/docs/components/dialog/api-table.md +6 -31
  62. package/docs/components/dialog/overview.md +1 -1
  63. package/docs/components/fieldset/overview.md +5 -5
  64. package/docs/components/form/overview.md +3 -3
  65. package/docs/components/form/use-cases.md +2 -2
  66. package/docs/components/icon/use-cases.md +1 -1
  67. package/docs/components/input/overview.md +1 -1
  68. package/docs/components/input-amount/overview.md +3 -3
  69. package/docs/components/input-date/overview.md +3 -3
  70. package/docs/components/input-datepicker/api-table.md +4 -21
  71. package/docs/components/input-datepicker/overview.md +5 -5
  72. package/docs/components/input-email/overview.md +2 -2
  73. package/docs/components/input-file/overview.md +1 -1
  74. package/docs/components/input-iban/overview.md +2 -2
  75. package/docs/components/input-range/overview.md +2 -2
  76. package/docs/components/input-stepper/overview.md +1 -1
  77. package/docs/components/input-tel/overview.md +1 -1
  78. package/docs/components/input-tel/use-cases.md +6 -6
  79. package/docs/components/input-tel-dropdown/overview.md +1 -1
  80. package/docs/components/listbox/use-cases.md +1 -1
  81. package/docs/components/radio-group/overview.md +3 -3
  82. package/docs/components/select/use-cases.md +1 -1
  83. package/docs/components/select-rich/api-table.md +5 -21
  84. package/docs/components/select-rich/use-cases.md +2 -2
  85. package/docs/components/tabs/examples.md +1 -1
  86. package/docs/components/tooltip/api-table.md +11 -36
  87. package/docs/fundamentals/index.md +4 -4
  88. package/docs/fundamentals/node-tools/publish-docs/overview.md +3 -3
  89. package/docs/fundamentals/node-tools/rocket-preset-extend-lion-docs/overview.md +2 -2
  90. package/docs/fundamentals/rationales/accessibility.md +1 -1
  91. package/docs/fundamentals/systems/core/SlotMixin.md +1 -1
  92. package/docs/fundamentals/systems/core/overview.md +1 -1
  93. package/docs/fundamentals/systems/form/formatting-and-parsing.md +4 -4
  94. package/docs/fundamentals/systems/form/model-value.md +1 -1
  95. package/docs/fundamentals/systems/form/overview.md +28 -28
  96. package/docs/fundamentals/systems/form/validate.md +2 -2
  97. package/docs/fundamentals/systems/localize/overview.md +4 -4
  98. package/docs/fundamentals/systems/overlays/api-table.md +34 -34
  99. package/docs/fundamentals/systems/overlays/configuration.md +2 -2
  100. package/docs/fundamentals/systems/overlays/overview.md +5 -5
  101. package/docs/fundamentals/systems/overlays/use-cases.md +2 -2
  102. package/docs/fundamentals/tools/helpers/overview.md +1 -1
  103. package/docs/fundamentals/tools/singleton-manager/overview.md +4 -4
  104. package/docs/guides/how-to/create-a-custom-field.md +5 -5
  105. package/docs/guides/how-to/create-a-form.md +4 -4
  106. package/docs/guides/how-to/extend-a-native-input.md +2 -2
  107. package/docs/guides/how-to/index.md +1 -1
  108. package/docs/guides/index.md +8 -8
  109. package/docs/guides/principles/index.md +5 -5
  110. package/docs/guides/principles/styling.md +1 -1
  111. package/exports/collapsible.js +0 -1
  112. package/exports/overlays.js +1 -6
  113. package/overlays.js +1 -6
  114. package/package.json +1 -1
  115. package/components/collapsible/src/DisclosureMixin.js +0 -313
  116. package/components/collapsible/types/DisclosureMixinTypes.ts +0 -48
  117. package/components/menu/CHANGELOG.md +0 -37
  118. package/components/menu/README.md +0 -335
  119. package/components/menu/index.js +0 -2
  120. package/components/menu/lion-menu-overlay.js +0 -3
  121. package/components/menu/lion-menu.js +0 -3
  122. package/components/menu/lion-spinbutton.js +0 -3
  123. package/components/menu/lion-toolbar.js +0 -3
  124. package/components/menu/lion-tree.js +0 -3
  125. package/components/menu/package.json +0 -46
  126. package/components/menu/requirements.temp.md +0 -12
  127. package/components/menu/src/InteractiveListMixin.js +0 -796
  128. package/components/menu/src/LionMenu.js +0 -250
  129. package/components/menu/src/LionMenuHybrid.js +0 -46
  130. package/components/menu/src/LionMenuOverlay.js +0 -155
  131. package/components/menu/src/LionSpinbutton.js +0 -213
  132. package/components/menu/src/LionToolbar.js +0 -94
  133. package/components/menu/src/LionTree.js +0 -52
  134. package/components/menu/src/MultiLevelListMixin.js +0 -274
  135. package/components/menu/src/utils/isInView.js +0 -26
  136. package/components/menu/src/utils/listItemInteractions.js +0 -104
  137. package/components/menu/src/utils/uuid.js +0 -3
  138. package/components/menu/test/lion-menu.test.js +0 -3
  139. package/components/menu/test-suites/InteractiveListMixin.suite.js +0 -142
  140. package/components/menu/types/InteractiveListMixinTypes.d.ts +0 -82
  141. package/components/navigation-bar/README.md +0 -1
  142. package/components/navigation-bar/src/LionNavigationBar.js +0 -422
  143. package/components/navigation-bar/src/types.js +0 -41
  144. package/components/overlays/NEXT.md +0 -49
  145. package/dist-types/components/collapsible/src/DisclosureMixin.d.ts +0 -3
  146. package/dist-types/components/collapsible/src/DisclosureMixin.d.ts.map +0 -1
  147. package/dist-types/components/collapsible/types/DisclosureMixinTypes.d.ts +0 -24
  148. package/dist-types/components/collapsible/types/DisclosureMixinTypes.d.ts.map +0 -1
  149. package/dist-types/components/menu/index.d.ts +0 -3
  150. package/dist-types/components/menu/index.d.ts.map +0 -1
  151. package/dist-types/components/menu/lion-menu-overlay.d.ts +0 -2
  152. package/dist-types/components/menu/lion-menu-overlay.d.ts.map +0 -1
  153. package/dist-types/components/menu/lion-menu.d.ts +0 -2
  154. package/dist-types/components/menu/lion-menu.d.ts.map +0 -1
  155. package/dist-types/components/menu/lion-spinbutton.d.ts +0 -2
  156. package/dist-types/components/menu/lion-spinbutton.d.ts.map +0 -1
  157. package/dist-types/components/menu/lion-toolbar.d.ts +0 -2
  158. package/dist-types/components/menu/lion-toolbar.d.ts.map +0 -1
  159. package/dist-types/components/menu/lion-tree.d.ts +0 -2
  160. package/dist-types/components/menu/lion-tree.d.ts.map +0 -1
  161. package/dist-types/components/menu/src/InteractiveListMixin.d.ts +0 -611
  162. package/dist-types/components/menu/src/InteractiveListMixin.d.ts.map +0 -1
  163. package/dist-types/components/menu/src/LionMenu.d.ts +0 -563
  164. package/dist-types/components/menu/src/LionMenu.d.ts.map +0 -1
  165. package/dist-types/components/menu/src/LionMenuHybrid.d.ts +0 -19
  166. package/dist-types/components/menu/src/LionMenuHybrid.d.ts.map +0 -1
  167. package/dist-types/components/menu/src/LionMenuOverlay.d.ts +0 -1007
  168. package/dist-types/components/menu/src/LionMenuOverlay.d.ts.map +0 -1
  169. package/dist-types/components/menu/src/LionSpinbutton.d.ts +0 -58
  170. package/dist-types/components/menu/src/LionSpinbutton.d.ts.map +0 -1
  171. package/dist-types/components/menu/src/LionToolbar.d.ts +0 -8
  172. package/dist-types/components/menu/src/LionToolbar.d.ts.map +0 -1
  173. package/dist-types/components/menu/src/LionTree.d.ts +0 -445
  174. package/dist-types/components/menu/src/LionTree.d.ts.map +0 -1
  175. package/dist-types/components/menu/src/MultiLevelListMixin.d.ts +0 -493
  176. package/dist-types/components/menu/src/MultiLevelListMixin.d.ts.map +0 -1
  177. package/dist-types/components/menu/src/utils/isInView.d.ts +0 -9
  178. package/dist-types/components/menu/src/utils/isInView.d.ts.map +0 -1
  179. package/dist-types/components/menu/src/utils/listItemInteractions.d.ts +0 -42
  180. package/dist-types/components/menu/src/utils/listItemInteractions.d.ts.map +0 -1
  181. package/dist-types/components/menu/src/utils/uuid.d.ts +0 -2
  182. package/dist-types/components/menu/src/utils/uuid.d.ts.map +0 -1
  183. package/dist-types/components/menu/test/lion-menu.test.d.ts +0 -2
  184. package/dist-types/components/menu/test/lion-menu.test.d.ts.map +0 -1
  185. package/dist-types/components/menu/test-suites/InteractiveListMixin.suite.d.ts +0 -13
  186. package/dist-types/components/menu/test-suites/InteractiveListMixin.suite.d.ts.map +0 -1
  187. package/dist-types/components/navigation-bar/src/LionNavigationBar.d.ts +0 -238
  188. package/dist-types/components/navigation-bar/src/LionNavigationBar.d.ts.map +0 -1
  189. package/dist-types/components/navigation-bar/src/types.d.ts +0 -85
  190. package/dist-types/components/navigation-bar/src/types.d.ts.map +0 -1
  191. package/dist-types/exports/define/lion-item.d.ts +0 -2
  192. package/dist-types/exports/define/lion-item.d.ts.map +0 -1
  193. package/dist-types/exports/define/lion-menu-overlay.d.ts +0 -2
  194. package/dist-types/exports/define/lion-menu-overlay.d.ts.map +0 -1
  195. package/dist-types/exports/define/lion-menu.d.ts +0 -2
  196. package/dist-types/exports/define/lion-menu.d.ts.map +0 -1
  197. package/dist-types/exports/define/lion-navigation-bar.d.ts +0 -2
  198. package/dist-types/exports/define/lion-navigation-bar.d.ts.map +0 -1
  199. package/dist-types/exports/define/lion-toolbar.d.ts +0 -2
  200. package/dist-types/exports/define/lion-toolbar.d.ts.map +0 -1
  201. package/dist-types/exports/define/lion-tree.d.ts +0 -2
  202. package/dist-types/exports/define/lion-tree.d.ts.map +0 -1
  203. package/dist-types/exports/menu.d.ts +0 -7
  204. package/dist-types/exports/menu.d.ts.map +0 -1
  205. package/dist-types/exports/navigation-bar.d.ts +0 -2
  206. package/dist-types/exports/navigation-bar.d.ts.map +0 -1
  207. package/docs/components/menu/api-table.md +0 -450
  208. package/docs/components/menu/applyMenuDemoStyles.js +0 -173
  209. package/docs/components/menu/extensions.md +0 -216
  210. package/docs/components/menu/index.md +0 -13
  211. package/docs/components/menu/overview.md +0 -422
  212. package/exports/define/lion-item.js +0 -3
  213. package/exports/define/lion-menu-overlay.js +0 -3
  214. package/exports/define/lion-menu.js +0 -3
  215. package/exports/define/lion-navigation-bar.js +0 -3
  216. package/exports/define/lion-toolbar.js +0 -3
  217. package/exports/define/lion-tree.js +0 -3
  218. package/exports/menu.js +0 -6
  219. package/exports/navigation-bar.js +0 -1
  220. package/menu.js +0 -6
  221. package/navigation-bar.js +0 -1
@@ -1,335 +0,0 @@
1
- # Menu
2
-
3
- A menu is a widget that offers a list of choices to the user, such as a set of actions or functions. A menu is usually opened, or made visible, by activating a menu button, choosing an item in a menu that opens a sub menu, or by invoking a command, such as Shift + F10 in Windows, that opens a context specific menu. When a user activates a choice in a menu, the menu usually closes unless the choice opened a submenu.
4
-
5
- A menu that is visually persistent is a menubar. A menubar is typically horizontal and is often used to create a menu bar similar to those found near the top of the window in many desktop applications, offering the user quick access to a consistent set of commands.
6
-
7
- A common convention for indicating that a menu item launches a dialog box is to append "…" (ellipsis) to the menu item label, e.g., "Save as …".
8
-
9
- > From [menu wai-aria best practices](https://www.w3.org/TR/wai-aria-practices/#menu)
10
-
11
- ```js script
12
- import { html } from 'lit-html';
13
- import './lion-menu.js';
14
- import './lion-menu-overlay.js';
15
- import './lion-tree.js';
16
- import './lion-toolbar.js';
17
- import './lion-spinbutton.js';
18
- import { applyMenuDemoStyles } from './applyMenuDemoStyles.js';
19
-
20
- applyMenuDemoStyles();
21
-
22
- export default {
23
- title: 'Navigation/Menu',
24
- };
25
- ```
26
-
27
- ```js preview-story
28
- export const menuButton = () => html`
29
- <nav>
30
- <button data-invoker>Open menu</button>
31
- <lion-menu>
32
- <div role="menuitem">Go to Definition</div>
33
- <div role="menuitem">Go to Type Definition</div>
34
- <div>
35
- <div role="menuitem" data-invoker>Peek</div>
36
- <lion-menu>
37
- <div role="menuitem">Peek Call Hierarchy</div>
38
- <div role="separator"></div>
39
- <div role="menuitem">Peek Definition</div>
40
- </lion-menu>
41
- </div>
42
- <div role="separator"></div>
43
- <div role="menuitem">Find all References</div>
44
- </lion-menu>
45
- </nav>
46
- `;
47
- ```
48
-
49
- ```js preview-story
50
- export const menuButtonZ = () => html`
51
- <nav>
52
- <button data-invoker for="menu">Open menu</button>
53
- <lion-menu id="menu">
54
- <lion-menuitem> Go to Definition </lion-menuitem>
55
- <lion-menuitem> Go to Type Definition </lion-menuitem>
56
- <lion-menuitem>
57
- <button slot="invoker">Peek</button>
58
- <lion-menu>
59
- <lion-menuitem type="radio"> Peek Call Hierarchy </lion-menuitem>
60
- <div role="separator"></div>
61
- <lion-menuitem type="radio"> Peek Definition </lion-menuitem>
62
- </lion-menu>
63
- </lion-menuitem>
64
- <div role="separator"></div>
65
- <lion-menuitem type="checkbox"> Find all References </lion-menuitem>
66
- </lion-menu>
67
- </nav>
68
- `;
69
- ```
70
-
71
- ## Groups, menuitemradios and menuitemcheckboxes
72
-
73
- From [wai aria menu fragment](https://www.w3.org/TR/wai-aria-practices-1.1/examples/menubar/menubar-2/menubar-2.html)
74
-
75
- ```js preview-story
76
- export const groups = () => html`
77
- <lion-menu bar invoker-interaction="hover">
78
- <div>
79
- <div role="menuitem">Font</div>
80
- <lion-menu-overlay aria-label="Font">
81
- <div role="menuitemradio">Sans-serif</div>
82
- <div role="menuitemradio">Serif</div>
83
- <div role="menuitemradio">Monospace</div>
84
- <div role="menuitemradio">Fantasy</div>
85
- </lion-menu-overlay>
86
- </div>
87
- <div>
88
- <div role="menuitem">Style/Color</div>
89
- <lion-menu-overlay aria-label="Style/Color">
90
- <div role="menuitemcheckbox" aria-checked="true">Bold</div>
91
- <div role="menuitemcheckbox" aria-checked="true">Italic</div>
92
- <div role="separator"></div>
93
- <div role="group" aria-label="Text Color">
94
- <div role="menuitemradio" aria-checked="false">Black</div>
95
- <div role="menuitemradio" aria-checked="false">Blue</div>
96
- <div role="menuitemradio" aria-checked="true">Red</div>
97
- <div role="menuitemradio" aria-checked="false">Green</div>
98
- </div>
99
- <div role="separator"></div>
100
- <div role="group" aria-label="Text Decoration">
101
- <div role="menuitemradio" aria-checked="true">None</div>
102
- <div role="menuitemradio" aria-checked="false">Overline</div>
103
- <div role="menuitemradio" aria-checked="false">Line-through</div>
104
- <div role="menuitemradio" aria-checked="false">Underline</div>
105
- </div>
106
- </lion-menu-overlay>
107
- </div>
108
- </lion-menu>
109
- `;
110
- ```
111
-
112
- ## Tree
113
-
114
- ```js preview-story
115
- export const tree = () => html`
116
- <lion-tree>
117
- <div>
118
- <div role="treeitem">Fruits</div>
119
- <lion-tree>
120
- <div role="treeitem">Peek Call Hierarchy</div>
121
- <div role="treeitem">Peek Definition</div>
122
- </lion-tree>
123
- </div>
124
- <div>
125
- <div role="treeitem">Vegetables</div>
126
- <lion-tree>
127
- <div role="treeitem">Peek Call Hierarchy</div>
128
- <div>
129
- <div role="treeitem">Peek</div>
130
- <lion-tree>
131
- <div role="treeitem">Peek Call Hierarchy</div>
132
- <div role="treeitem">Peek Definition</div>
133
- </lion-tree>
134
- </div>
135
- </lion-tree>
136
- </div>
137
- <div>
138
- <div role="treeitem">Grains</div>
139
- <lion-tree>
140
- <div role="treeitem">Peek Call Hierarchy</div>
141
- <div role="treeitem">Peek Definition</div>
142
- </lion-tree>
143
- </div>
144
- </lion-tree>
145
- `;
146
- ```
147
-
148
- ## Disclosure menu
149
-
150
- See https://www.w3.org/TR/wai-aria-practices-1.1/examples/disclosure/disclosure-navigation.html
151
-
152
- ```js preview-story
153
- export const disclosureMenu = () => html`
154
- <nav aria-label="Mythical University">
155
- <lion-menu bar>
156
- <div role="listitem">
157
- <button data-invoker>About</button>
158
- <lion-menu>
159
- <div role="listitem">
160
- <a href="#mythical-page-content">Overview</a>
161
- </div>
162
- <div role="listitem">
163
- <a href="#mythical-page-content">Administration</a>
164
- </div>
165
- <div role="listitem">
166
- <a href="#mythical-page-content">Facts</a>
167
- </div>
168
- <div role="listitem">
169
- <a href="#mythical-page-content">Campus Tours</a>
170
- </div>
171
- </ul>
172
- </div>
173
- <div role="listitem">
174
- <button data-invoker>
175
- Admissions
176
- </button>
177
- <lion-menu id="id_admissions_menu">
178
- <div role="listitem">
179
- <a href="#mythical-page-content">Apply</a>
180
- </div>
181
- <div role="listitem">
182
- <a href="#mythical-page-content">Tuition</a>
183
- </div>
184
- <div role="listitem">
185
- <a href="#mythical-page-content">Sign Up</a>
186
- </div>
187
- <div role="listitem">
188
- <a href="#mythical-page-content">Visit</a>
189
- </div>
190
- <div role="listitem">
191
- <a href="#mythical-page-content">Photo Tour</a>
192
- </div>
193
- <div role="listitem">
194
- <a href="#mythical-page-content">Connect</a>
195
- </div>
196
- </ul>
197
- </div>
198
- <div role="listitem">
199
- <button data-invoker>Academics</button>
200
- <lion-menu>
201
- <div role="listitem">
202
- <a href="#mythical-page-content">Colleges & Schools</a>
203
- </div>
204
- <div role="listitem">
205
- <a href="#mythical-page-content">Programs of Study</a>
206
- </div>
207
- <div role="listitem">
208
- <a href="#mythical-page-content">Honors Programs</a>
209
- </div>
210
- <div role="listitem">
211
- <a href="#mythical-page-content">Online Courses</a>
212
- </div>
213
- <div role="listitem">
214
- <a href="#mythical-page-content">Course Explorer</a>
215
- </div>
216
- <div role="listitem">
217
- <a href="#mythical-page-content">Register for Class</a>
218
- </div>
219
- <div role="listitem">
220
- <a href="#mythical-page-content">Academic Calendar</a>
221
- </div>
222
- <div role="listitem">
223
- <a href="#mythical-page-content">Transcripts</a>
224
- </div>
225
- </ul>
226
- </div>
227
- </ul>
228
- </nav>
229
- `;
230
- ```
231
-
232
- ## Toolbar
233
-
234
- From [wai aria toolbar](https://www.w3.org/TR/wai-aria-practices-1.2/examples/toolbar/toolbar.html)
235
-
236
- ```js preview-story
237
- export const toolbar = () => html`
238
- <lion-toolbar>
239
- <div>
240
- <button data-item title="bold" aria-label="Bold">
241
- <span class="fas fa-bold" aria-hidden="true"></span>
242
- </button>
243
- <button data-item title="italic" aria-label="Italic">
244
- <span class="fas fa-italic" aria-hidden="true"></span>
245
- </button>
246
- <button data-item title="underline" aria-label="Underline">
247
- <span class="fas fa-underline" aria-hidden="true"></span>
248
- </button>
249
- </div>
250
- <div role="separator"></div>
251
- <div role="radiogroup" aria-label="Text Alignment">
252
- <button data-item role="radio" aria-label="Text Align Left">
253
- <span class="fas fa-align-left" aria-hidden="true"></span>
254
- </button>
255
- <button data-item role="radio" aria-label="Text Align Center">
256
- <span class="fas fa-align-center" aria-hidden="true"></span>
257
- </button>
258
- <button data-item role="radio" aria-label="Text Align Right">
259
- <span class="fas fa-align-right" aria-hidden="true"></span>
260
- </button>
261
- </div>
262
- <div role="separator"></div>
263
-
264
- <lion-spinbutton data-item now="20" min="12" max="40" unit="px"></lion-spinbutton>
265
- <div role="separator"></div>
266
-
267
- <div>
268
- <div role="menuitem">Font</div>
269
- <lion-menu-overlay aria-label="Font">
270
- <div role="menuitemradio">Sans-serif</div>
271
- <div role="menuitemradio">Serif</div>
272
- <div role="menuitemradio">Monospace</div>
273
- <div role="menuitemradio">Fantasy</div>
274
- </lion-menu-overlay>
275
- </div>
276
- <div>
277
- <div role="menuitem">Style/Color</div>
278
- <lion-menu-overlay aria-label="Style/Color">
279
- <div role="menuitemcheckbox" aria-checked="true">Bold</div>
280
- <div role="menuitemcheckbox" aria-checked="true">Italic</div>
281
- <div role="separator"></div>
282
- <div role="group" aria-label="Text Color">
283
- <div role="menuitemradio" aria-checked="false">Black</div>
284
- <div role="menuitemradio" aria-checked="false">Blue</div>
285
- <div role="menuitemradio" aria-checked="true">Red</div>
286
- <div role="menuitemradio" aria-checked="false">Green</div>
287
- </div>
288
- <div role="separator"></div>
289
- <div role="group" aria-label="Text Decoration">
290
- <div role="menuitemradio" aria-checked="true">None</div>
291
- <div role="menuitemradio" aria-checked="false">Overline</div>
292
- <div role="menuitemradio" aria-checked="false">Line-through</div>
293
- <div role="menuitemradio" aria-checked="false">Underline</div>
294
- </div>
295
- </lion-menu-overlay>
296
- </div>
297
- </lion-toolbar>
298
- `;
299
- ```
300
-
301
- ## Tree lion-item
302
-
303
- ```js preview-storyb
304
- export const tree = () => html`
305
- <lion-tree>
306
- <lion-item>
307
- <div>Fruits</div>
308
- <lion-tree>
309
- <lion-item>Peek Call Hierarchy</lion-item>
310
- <lion-item>Peek Definition</lion-item>
311
- </lion-tree>
312
- </lion-item>
313
- <lion-item>
314
- <div>Vegetables</div>
315
- <lion-tree>
316
- <lion-item>Peek Call Hierarchy</lion-item>
317
- <lion-item>
318
- <div>Peek</div>
319
- <lion-tree>
320
- <lion-item>Peek Call Hierarchy</lion-item>
321
- <lion-item>Peek Definition</lion-item>
322
- </lion-tree>
323
- </lion-item>
324
- </lion-tree>
325
- </lion-item>
326
- <lion-item>
327
- <div>Grains</div>
328
- <lion-tree>
329
- <lion-item>Peek Call Hierarchy</lion-item>
330
- <lion-item>Peek Definition</lion-item>
331
- </lion-tree>
332
- </lion-item>
333
- </lion-tree>
334
- `;
335
- ```
@@ -1,2 +0,0 @@
1
- export { LionMenu } from './src/LionMenu.js';
2
- export { InteractiveListMixin } from './src/InteractiveListMixin.js';
@@ -1,3 +0,0 @@
1
- import { LionMenuOverlay } from './src/LionMenuOverlay.js';
2
-
3
- customElements.define('lion-menu-overlay', LionMenuOverlay);
@@ -1,3 +0,0 @@
1
- import { LionMenu } from './src/LionMenu.js';
2
-
3
- customElements.define('lion-menu', LionMenu);
@@ -1,3 +0,0 @@
1
- import { LionSpinbutton } from './src/LionSpinbutton.js';
2
-
3
- customElements.define('lion-spinbutton', LionSpinbutton);
@@ -1,3 +0,0 @@
1
- import { LionToolbar } from './src/LionToolbar.js';
2
-
3
- customElements.define('lion-toolbar', LionToolbar);
@@ -1,3 +0,0 @@
1
- import { LionTree } from './src/LionTree.js';
2
-
3
- customElements.define('lion-tree', LionTree);
@@ -1,46 +0,0 @@
1
- {
2
- "name": "@lion/menu",
3
- "version": "0.0.0",
4
- "description": "A menu is a widget that offers a list of choices to the user, such as a set of actions or functions",
5
- "license": "MIT",
6
- "author": "ing-bank",
7
- "homepage": "https://github.com/ing-bank/lion/",
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/ing-bank/lion.git",
11
- "directory": "packages/menu"
12
- },
13
- "type": "module",
14
- "main": "index.js",
15
- "module": "index.js",
16
- "files": [
17
- "*.d.ts",
18
- "*.js",
19
- "docs",
20
- "src",
21
- "test",
22
- "test-suites",
23
- "translations",
24
- "types"
25
- ],
26
- "scripts": {
27
- "prepublishOnly": "../../scripts/npm-prepublish.js",
28
- "test": "cd ../../ && yarn test:browser --grep \"packages/menu/test/**/*.test.js\"",
29
- "test:watch": "cd ../../ && yarn test:browser:watch --grep \"packages/menu/test/**/*.test.js\""
30
- },
31
- "sideEffects": [
32
- "lion-menu.js"
33
- ],
34
- "dependencies": {
35
- "@lion/core": "0.11.0",
36
- "@lion/form-core": "0.6.0"
37
- },
38
- "keywords": [
39
- "lion",
40
- "menu",
41
- "web-components"
42
- ],
43
- "publishConfig": {
44
- "access": "public"
45
- }
46
- }
@@ -1,12 +0,0 @@
1
- ## Menu
2
-
3
- ### Assumptions
4
-
5
- 1. Menus are not always overlays (same holds for selects and comboboxes).Although often an overlay, a menu can be defined in the document flow as well: - a menu inside a left dialog sheet/ sidebar - a combobox like: <https://lion-web-components.netlify.app/?path=/docs/forms-combobox-extensions--whatsapp>Concretely, this means that the disclosure
6
-
7
- 2. The api for a menu should follow platform and community standards as closely as possible- for instance: dialog / details / new popup spec (invoker is sibling of collapsible menu)
8
-
9
- 3. It should be possible to add ‘lightweight’ menu items (like a div with [role=menuitemradio] or [role=separator])
10
-
11
- 4. We want to reuse existing interaction patterns for all ‘’interactive lists’ (horizontal and vertical): listbox/select/combobox/menu/toolbar/tree
12
- - Deprecated menu spec (with the exception that menu items should always allow html (avoid label and icon attrs)