@lion/ui 0.24.0 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (789) hide show
  1. package/README.md +25 -7
  2. package/accordion-test-suites.js +2 -0
  3. package/collapsible-test-suites.js +1 -0
  4. package/combobox-test-suites.js +2 -0
  5. package/components/accordion/test/lion-accordion.test.js +2 -565
  6. package/components/accordion/test-suites/lion-accordion.suite.js +596 -0
  7. package/components/button/test-suites/LionButton.suite.js +13 -11
  8. package/components/button/test-suites/LionButtonReset.suite.js +11 -3
  9. package/components/button/test-suites/LionButtonSubmit.suite.js +11 -3
  10. package/components/calendar/test/lion-calendar.test.js +1 -1570
  11. package/components/calendar/test-suites/LionCalendar.suite.js +1617 -5
  12. package/components/checkbox-group/test/lion-checkbox-group-integrations.test.js +5 -2
  13. package/components/checkbox-group/test/lion-checkbox-indeterminate-integrations.test.js +13 -4
  14. package/components/checkbox-group/test/lion-checkbox-integrations.test.js +4 -1
  15. package/components/checkbox-group/test-suites/CheckboxIndeterminate.suite.js +54 -54
  16. package/components/collapsible/test/lion-collapsible.test.js +2 -126
  17. package/components/collapsible/test-suites/LionCollapsible.suite.js +147 -0
  18. package/components/combobox/test/lion-combobox-integrations.test.js +11 -4
  19. package/components/combobox/test/lion-combobox.test.js +2 -3622
  20. package/components/combobox/test-suites/lion-combobox.suite.js +3665 -0
  21. package/components/core/src/ScopedElementsMixin.js +16 -1
  22. package/components/core/test-helpers/isElementVisible.js +21 -0
  23. package/components/core/test-helpers/resolveSuiteTag.js +97 -0
  24. package/components/core/types/TestSuiteTypes.ts +43 -0
  25. package/components/dialog/test/lion-dialog.integration.test.js +9 -10
  26. package/components/dialog/test/lion-dialog.test.js +2 -399
  27. package/components/dialog/test-suites/lion-dialog.suite.js +412 -0
  28. package/components/drawer/test/lion-drawer.test.js +2 -84
  29. package/components/drawer/test-suites/LionDrawer.suite.js +108 -0
  30. package/components/fieldset/test/lion-fieldset.test.js +7 -2
  31. package/components/form/test/lion-form.test.js +2 -348
  32. package/components/form/test-suites/lion-form.suite.js +398 -0
  33. package/components/form-core/test/FormatMixin.test.js +4 -1
  34. package/components/form-core/test/choice-group/CustomChoiceGroupMixin.integrations.test.js +13 -0
  35. package/components/form-core/test-suites/FormRegistrationMixins.suite.js +21 -26
  36. package/components/form-core/test-suites/FormatMixin.suite.js +45 -43
  37. package/components/form-core/test-suites/InteractionStateMixin.suite.js +19 -15
  38. package/components/form-core/test-suites/NativeTextFieldMixin.suite.js +8 -9
  39. package/components/form-core/test-suites/ValidateMixin.suite.js +14 -10
  40. package/components/form-core/test-suites/ValidateMixinFeedbackPart.suite.js +15 -2
  41. package/components/form-core/test-suites/choice-group/ChoiceGroupMixin.suite.js +55 -33
  42. package/components/form-core/test-suites/choice-group/ChoiceInputMixin.suite.js +7 -6
  43. package/components/form-core/test-suites/choice-group/CustomChoiceGroupMixin.suite.js +19 -22
  44. package/components/form-core/test-suites/form-group/FormGroupMixin-input.suite.js +14 -5
  45. package/components/form-core/test-suites/form-group/FormGroupMixin.suite.js +13 -4
  46. package/components/icon/test/lion-icon.test.js +2 -188
  47. package/components/icon/test-suites/lion-icon.suite.js +206 -0
  48. package/components/input/test/input-integrations.test.js +18 -15
  49. package/components/input/test/lion-input-integrations.test.js +7 -3
  50. package/components/input/test/lion-input.test.js +2 -198
  51. package/components/input/test-suites/lion-input.suite.js +214 -0
  52. package/components/input-amount/src/parsers.js +5 -1
  53. package/components/input-amount/test/lion-input-amount-integrations.test.js +7 -3
  54. package/components/input-amount/test/lion-input-amount.test.js +2 -421
  55. package/components/input-amount/test/parsers.test.js +12 -0
  56. package/components/input-amount/test-suites/lion-input-amount.suite.js +418 -0
  57. package/components/input-amount-dropdown/test/LionInputAmountDropdown.test.js +3 -2
  58. package/components/input-amount-dropdown/test/lion-input-amount-dropdown-integrations.test.js +4 -2
  59. package/components/input-amount-dropdown/test-suites/LionInputAmountDropdown.suite.js +6 -4
  60. package/components/input-date/test/lion-input-date-integrations.test.js +7 -3
  61. package/components/input-date/test/lion-input-date.test.js +2 -177
  62. package/components/input-date/test-suites/lion-input-date.suite.js +195 -0
  63. package/components/input-datepicker/test/lion-input-datepicker-integrations.test.js +7 -3
  64. package/components/input-datepicker/test/lion-input-datepicker.test.js +1 -844
  65. package/components/input-datepicker/test-helpers/DatepickerInputObject.js +26 -0
  66. package/components/input-datepicker/test-suites/LionInputDatepicker.suite.js +899 -14
  67. package/components/input-email/test/lion-input-email-integrations.test.js +4 -2
  68. package/components/input-email/test/lion-input-email.test.js +2 -46
  69. package/components/input-email/test-suites/lion-input-email.suite.js +63 -0
  70. package/components/input-file/test/lion-input-file.test.js +2 -1274
  71. package/components/input-file/test-suites/lion-input-file.suite.js +1505 -0
  72. package/components/input-iban/test/lion-input-iban-integrations.test.js +4 -2
  73. package/components/input-iban/test/lion-input-iban.test.js +2 -73
  74. package/components/input-iban/test-suites/lion-input-iban.suite.js +88 -0
  75. package/components/input-range/test/lion-input-range.test.js +2 -176
  76. package/components/input-range/test-suites/lion-input-range.suite.js +195 -0
  77. package/components/input-stepper/test-suites/lion-input-stepper.integration.suite.js +14 -3
  78. package/components/input-stepper/test-suites/lion-input-stepper.suite.js +14 -10
  79. package/components/input-tel/test/LionInputTel.test.js +3 -1
  80. package/components/input-tel/test/parsers.test.js +87 -0
  81. package/components/input-tel/test-helpers/mockPhoneUtilManager.js +14 -3
  82. package/components/input-tel/test-suites/LionInputTel.suite.js +9 -4
  83. package/components/input-tel-dropdown/test/LionInputTelDropdown.test.js +6 -4
  84. package/components/input-tel-dropdown/test-suites/LionInputTelDropdown--parentheses.suite.js +10 -13
  85. package/components/input-tel-dropdown/test-suites/LionInputTelDropdown.suite.js +6 -5
  86. package/components/listbox/src/LionListbox.js +1 -1
  87. package/components/listbox/test-suites/ListboxMixin.suite.js +19 -19
  88. package/components/menu/test-suites/InteractiveListMixin.suite.js +6 -9
  89. package/components/menu/test-suites/LionMenu.suite.js +6 -10
  90. package/components/menu/test-suites/LionMenuInteractions.suite.js +13 -4
  91. package/components/menu/test-suites/MoreButtonMenuMixin.suite.js +6 -9
  92. package/components/menu/test-suites/MultiLevelListMixin.suite.js +15 -11
  93. package/components/overlays/src/OverlayController.js +7 -2
  94. package/components/overlays/src/OverlayMixin.js +3 -6
  95. package/components/overlays/test/OverlayController.test.js +37 -1
  96. package/components/overlays/test/invoker-compatibility.test.js +37 -0
  97. package/components/overlays/test-suites/OverlayMixin.suite.js +3 -5
  98. package/components/pagination/test/lion-pagination.test.js +2 -176
  99. package/components/pagination/test-suites/LionPagination.suite.js +201 -0
  100. package/components/progress-indicator/test/lion-progress-indicator.test.js +2 -203
  101. package/components/progress-indicator/test-suites/lion-progress-indicator.suite.js +214 -0
  102. package/components/radio-group/test/lion-radio-group.test.js +2 -162
  103. package/components/radio-group/test/lion-radio.test.js +2 -54
  104. package/components/radio-group/test-suites/lion-radio-group.suite.js +173 -0
  105. package/components/radio-group/test-suites/lion-radio.suite.js +70 -0
  106. package/components/select/test/lion-select.test.js +2 -79
  107. package/components/select/test-suites/LionSelect.suite.js +94 -0
  108. package/components/select-rich/src/LionSelectRich.js +2 -1
  109. package/components/select-rich/test/lion-select-invoker.test.js +2 -86
  110. package/components/select-rich/test/lion-select-rich-interaction.test.js +2 -430
  111. package/components/select-rich/test/lion-select-rich.test.js +2 -1193
  112. package/components/select-rich/test-suites/lion-select-invoker.suite.js +98 -0
  113. package/components/select-rich/test-suites/lion-select-rich-interaction.suite.js +452 -0
  114. package/components/select-rich/test-suites/lion-select-rich.suite.js +1236 -0
  115. package/components/steps/test/lion-step.test.js +2 -97
  116. package/components/steps/test/lion-steps.test.js +2 -433
  117. package/components/steps/test-suites/lion-step.suite.js +113 -0
  118. package/components/steps/test-suites/lion-steps.suite.js +445 -0
  119. package/components/switch/test/lion-switch.test.js +2 -232
  120. package/components/switch/test-suites/lion-switch.suite.js +450 -0
  121. package/components/tabs/test/lion-tabs.test.js +2 -596
  122. package/components/tabs/test-suites/lion-tabs.suite.js +617 -0
  123. package/components/textarea/src/LionTextarea.js +5 -2
  124. package/components/textarea/test/lion-textarea.test.js +2 -159
  125. package/components/textarea/test-suites/lion-textarea.suite.js +192 -0
  126. package/components/tooltip/test/lion-tooltip.test.js +2 -393
  127. package/components/tooltip/test-suites/lion-tooltip.suite.js +409 -0
  128. package/custom-elements.json +14890 -10187
  129. package/dialog-test-suites.js +2 -0
  130. package/dist-types/components/accordion/test/lion-accordion.test.d.ts +1 -2
  131. package/dist-types/components/accordion/test/lion-accordion.test.d.ts.map +1 -1
  132. package/dist-types/components/accordion/test-suites/lion-accordion.suite.d.ts +18 -0
  133. package/dist-types/components/accordion/test-suites/lion-accordion.suite.d.ts.map +1 -0
  134. package/dist-types/components/button/test-suites/LionButton.suite.d.ts +10 -4
  135. package/dist-types/components/button/test-suites/LionButton.suite.d.ts.map +1 -1
  136. package/dist-types/components/button/test-suites/LionButtonReset.suite.d.ts +10 -4
  137. package/dist-types/components/button/test-suites/LionButtonReset.suite.d.ts.map +1 -1
  138. package/dist-types/components/button/test-suites/LionButtonSubmit.suite.d.ts +10 -4
  139. package/dist-types/components/button/test-suites/LionButtonSubmit.suite.d.ts.map +1 -1
  140. package/dist-types/components/calendar/test/lion-calendar.test.d.ts +1 -3
  141. package/dist-types/components/calendar/test/lion-calendar.test.d.ts.map +1 -1
  142. package/dist-types/components/calendar/test-suites/LionCalendar.suite.d.ts +13 -4
  143. package/dist-types/components/calendar/test-suites/LionCalendar.suite.d.ts.map +1 -1
  144. package/dist-types/components/checkbox-group/test/lion-checkbox-group-integrations.test.d.ts.map +1 -1
  145. package/dist-types/components/checkbox-group/test/lion-checkbox-integrations.test.d.ts.map +1 -1
  146. package/dist-types/components/checkbox-group/test-suites/CheckboxIndeterminate.suite.d.ts +12 -9
  147. package/dist-types/components/checkbox-group/test-suites/CheckboxIndeterminate.suite.d.ts.map +1 -1
  148. package/dist-types/components/collapsible/test/lion-collapsible.test.d.ts +1 -3
  149. package/dist-types/components/collapsible/test/lion-collapsible.test.d.ts.map +1 -1
  150. package/dist-types/components/collapsible/test-suites/LionCollapsible.suite.d.ts +18 -0
  151. package/dist-types/components/collapsible/test-suites/LionCollapsible.suite.d.ts.map +1 -0
  152. package/dist-types/components/combobox/test/lion-combobox.test.d.ts +1 -5
  153. package/dist-types/components/combobox/test/lion-combobox.test.d.ts.map +1 -1
  154. package/dist-types/components/combobox/test-suites/lion-combobox.suite.d.ts +17 -0
  155. package/dist-types/components/combobox/test-suites/lion-combobox.suite.d.ts.map +1 -0
  156. package/dist-types/components/core/src/ScopedElementsMixin.d.ts.map +1 -1
  157. package/dist-types/components/core/test-helpers/isElementVisible.d.ts +12 -0
  158. package/dist-types/components/core/test-helpers/isElementVisible.d.ts.map +1 -0
  159. package/dist-types/components/core/test-helpers/resolveSuiteTag.d.ts +29 -0
  160. package/dist-types/components/core/test-helpers/resolveSuiteTag.d.ts.map +1 -0
  161. package/dist-types/components/core/types/TestSuiteTypes.d.ts +40 -0
  162. package/dist-types/components/core/types/TestSuiteTypes.d.ts.map +1 -0
  163. package/dist-types/components/dialog/test/lion-dialog.integration.test.d.ts.map +1 -1
  164. package/dist-types/components/dialog/test/lion-dialog.test.d.ts +1 -5
  165. package/dist-types/components/dialog/test/lion-dialog.test.d.ts.map +1 -1
  166. package/dist-types/components/dialog/test-suites/lion-dialog.suite.d.ts +19 -0
  167. package/dist-types/components/dialog/test-suites/lion-dialog.suite.d.ts.map +1 -0
  168. package/dist-types/components/drawer/test/lion-drawer.test.d.ts +1 -3
  169. package/dist-types/components/drawer/test/lion-drawer.test.d.ts.map +1 -1
  170. package/dist-types/components/drawer/test-suites/LionDrawer.suite.d.ts +20 -0
  171. package/dist-types/components/drawer/test-suites/LionDrawer.suite.d.ts.map +1 -0
  172. package/dist-types/components/fieldset/test/lion-fieldset.test.d.ts.map +1 -1
  173. package/dist-types/components/form/test/lion-form.test.d.ts +1 -12
  174. package/dist-types/components/form/test/lion-form.test.d.ts.map +1 -1
  175. package/dist-types/components/form/test-suites/lion-form.suite.d.ts +39 -0
  176. package/dist-types/components/form/test-suites/lion-form.suite.d.ts.map +1 -0
  177. package/dist-types/components/form-core/test-suites/FormRegistrationMixins.suite.d.ts +14 -17
  178. package/dist-types/components/form-core/test-suites/FormRegistrationMixins.suite.d.ts.map +1 -1
  179. package/dist-types/components/form-core/test-suites/FormatMixin.suite.d.ts +22 -38
  180. package/dist-types/components/form-core/test-suites/FormatMixin.suite.d.ts.map +1 -1
  181. package/dist-types/components/form-core/test-suites/InteractionStateMixin.suite.d.ts +11 -5
  182. package/dist-types/components/form-core/test-suites/InteractionStateMixin.suite.d.ts.map +1 -1
  183. package/dist-types/components/form-core/test-suites/NativeTextFieldMixin.suite.d.ts +9 -4
  184. package/dist-types/components/form-core/test-suites/NativeTextFieldMixin.suite.d.ts.map +1 -1
  185. package/dist-types/components/form-core/test-suites/ValidateMixin.suite.d.ts +9 -4
  186. package/dist-types/components/form-core/test-suites/ValidateMixin.suite.d.ts.map +1 -1
  187. package/dist-types/components/form-core/test-suites/ValidateMixinFeedbackPart.suite.d.ts +10 -1
  188. package/dist-types/components/form-core/test-suites/ValidateMixinFeedbackPart.suite.d.ts.map +1 -1
  189. package/dist-types/components/form-core/test-suites/choice-group/ChoiceGroupMixin.suite.d.ts +17 -6
  190. package/dist-types/components/form-core/test-suites/choice-group/ChoiceGroupMixin.suite.d.ts.map +1 -1
  191. package/dist-types/components/form-core/test-suites/choice-group/ChoiceInputMixin.suite.d.ts +5 -2
  192. package/dist-types/components/form-core/test-suites/choice-group/ChoiceInputMixin.suite.d.ts.map +1 -1
  193. package/dist-types/components/form-core/test-suites/choice-group/CustomChoiceGroupMixin.suite.d.ts +10 -5
  194. package/dist-types/components/form-core/test-suites/choice-group/CustomChoiceGroupMixin.suite.d.ts.map +1 -1
  195. package/dist-types/components/form-core/test-suites/form-group/FormGroupMixin-input.suite.d.ts +10 -5
  196. package/dist-types/components/form-core/test-suites/form-group/FormGroupMixin-input.suite.d.ts.map +1 -1
  197. package/dist-types/components/form-core/test-suites/form-group/FormGroupMixin.suite.d.ts +10 -5
  198. package/dist-types/components/form-core/test-suites/form-group/FormGroupMixin.suite.d.ts.map +1 -1
  199. package/dist-types/components/icon/test/lion-icon.test.d.ts +1 -4
  200. package/dist-types/components/icon/test/lion-icon.test.d.ts.map +1 -1
  201. package/dist-types/components/icon/test-suites/lion-icon.suite.d.ts +16 -0
  202. package/dist-types/components/icon/test-suites/lion-icon.suite.d.ts.map +1 -0
  203. package/dist-types/components/input/test/lion-input-integrations.test.d.ts.map +1 -1
  204. package/dist-types/components/input/test/lion-input.test.d.ts +1 -2
  205. package/dist-types/components/input/test/lion-input.test.d.ts.map +1 -1
  206. package/dist-types/components/input/test-suites/lion-input.suite.d.ts +17 -0
  207. package/dist-types/components/input/test-suites/lion-input.suite.d.ts.map +1 -0
  208. package/dist-types/components/input-amount/src/parsers.d.ts.map +1 -1
  209. package/dist-types/components/input-amount/test/lion-input-amount-integrations.test.d.ts.map +1 -1
  210. package/dist-types/components/input-amount/test/lion-input-amount.test.d.ts +1 -2
  211. package/dist-types/components/input-amount/test/lion-input-amount.test.d.ts.map +1 -1
  212. package/dist-types/components/input-amount/test-suites/lion-input-amount.suite.d.ts +19 -0
  213. package/dist-types/components/input-amount/test-suites/lion-input-amount.suite.d.ts.map +1 -0
  214. package/dist-types/components/input-amount-dropdown/test/lion-input-amount-dropdown-integrations.test.d.ts.map +1 -1
  215. package/dist-types/components/input-amount-dropdown/test-suites/LionInputAmountDropdown.suite.d.ts +7 -3
  216. package/dist-types/components/input-amount-dropdown/test-suites/LionInputAmountDropdown.suite.d.ts.map +1 -1
  217. package/dist-types/components/input-date/test/lion-input-date-integrations.test.d.ts.map +1 -1
  218. package/dist-types/components/input-date/test/lion-input-date.test.d.ts +1 -3
  219. package/dist-types/components/input-date/test/lion-input-date.test.d.ts.map +1 -1
  220. package/dist-types/components/input-date/test-suites/lion-input-date.suite.d.ts +15 -0
  221. package/dist-types/components/input-date/test-suites/lion-input-date.suite.d.ts.map +1 -0
  222. package/dist-types/components/input-datepicker/test/lion-input-datepicker-integrations.test.d.ts.map +1 -1
  223. package/dist-types/components/input-datepicker/test/lion-input-datepicker.test.d.ts +1 -2
  224. package/dist-types/components/input-datepicker/test/lion-input-datepicker.test.d.ts.map +1 -1
  225. package/dist-types/components/input-datepicker/test-helpers/DatepickerInputObject.d.ts +8 -0
  226. package/dist-types/components/input-datepicker/test-helpers/DatepickerInputObject.d.ts.map +1 -1
  227. package/dist-types/components/input-datepicker/test-suites/LionInputDatepicker.suite.d.ts +15 -5
  228. package/dist-types/components/input-datepicker/test-suites/LionInputDatepicker.suite.d.ts.map +1 -1
  229. package/dist-types/components/input-email/test/lion-input-email-integrations.test.d.ts.map +1 -1
  230. package/dist-types/components/input-email/test/lion-input-email.test.d.ts +1 -3
  231. package/dist-types/components/input-email/test/lion-input-email.test.d.ts.map +1 -1
  232. package/dist-types/components/input-email/test-suites/lion-input-email.suite.d.ts +15 -0
  233. package/dist-types/components/input-email/test-suites/lion-input-email.suite.d.ts.map +1 -0
  234. package/dist-types/components/input-file/test/lion-input-file.test.d.ts +1 -5
  235. package/dist-types/components/input-file/test/lion-input-file.test.d.ts.map +1 -1
  236. package/dist-types/components/input-file/test-suites/lion-input-file.suite.d.ts +19 -0
  237. package/dist-types/components/input-file/test-suites/lion-input-file.suite.d.ts.map +1 -0
  238. package/dist-types/components/input-iban/test/lion-input-iban-integrations.test.d.ts.map +1 -1
  239. package/dist-types/components/input-iban/test/lion-input-iban.test.d.ts +1 -3
  240. package/dist-types/components/input-iban/test/lion-input-iban.test.d.ts.map +1 -1
  241. package/dist-types/components/input-iban/test-suites/lion-input-iban.suite.d.ts +15 -0
  242. package/dist-types/components/input-iban/test-suites/lion-input-iban.suite.d.ts.map +1 -0
  243. package/dist-types/components/input-range/test/lion-input-range.test.d.ts +1 -3
  244. package/dist-types/components/input-range/test/lion-input-range.test.d.ts.map +1 -1
  245. package/dist-types/components/input-range/test-suites/lion-input-range.suite.d.ts +15 -0
  246. package/dist-types/components/input-range/test-suites/lion-input-range.suite.d.ts.map +1 -0
  247. package/dist-types/components/input-stepper/test-suites/lion-input-stepper.integration.suite.d.ts +10 -2
  248. package/dist-types/components/input-stepper/test-suites/lion-input-stepper.integration.suite.d.ts.map +1 -1
  249. package/dist-types/components/input-stepper/test-suites/lion-input-stepper.suite.d.ts +10 -2
  250. package/dist-types/components/input-stepper/test-suites/lion-input-stepper.suite.d.ts.map +1 -1
  251. package/dist-types/components/input-tel/test-helpers/mockPhoneUtilManager.d.ts +5 -0
  252. package/dist-types/components/input-tel/test-helpers/mockPhoneUtilManager.d.ts.map +1 -1
  253. package/dist-types/components/input-tel/test-suites/LionInputTel.suite.d.ts +6 -4
  254. package/dist-types/components/input-tel/test-suites/LionInputTel.suite.d.ts.map +1 -1
  255. package/dist-types/components/input-tel-dropdown/test-suites/LionInputTelDropdown--parentheses.suite.d.ts +7 -3
  256. package/dist-types/components/input-tel-dropdown/test-suites/LionInputTelDropdown--parentheses.suite.d.ts.map +1 -1
  257. package/dist-types/components/input-tel-dropdown/test-suites/LionInputTelDropdown.suite.d.ts +7 -3
  258. package/dist-types/components/input-tel-dropdown/test-suites/LionInputTelDropdown.suite.d.ts.map +1 -1
  259. package/dist-types/components/listbox/src/LionListbox.d.ts +2 -2
  260. package/dist-types/components/listbox/src/LionListbox.d.ts.map +1 -1
  261. package/dist-types/components/listbox/test-suites/ListboxMixin.suite.d.ts +3 -4
  262. package/dist-types/components/listbox/test-suites/ListboxMixin.suite.d.ts.map +1 -1
  263. package/dist-types/components/menu/test-suites/InteractiveListMixin.suite.d.ts +6 -5
  264. package/dist-types/components/menu/test-suites/InteractiveListMixin.suite.d.ts.map +1 -1
  265. package/dist-types/components/menu/test-suites/LionMenu.suite.d.ts +6 -5
  266. package/dist-types/components/menu/test-suites/LionMenu.suite.d.ts.map +1 -1
  267. package/dist-types/components/menu/test-suites/LionMenuInteractions.suite.d.ts +10 -4
  268. package/dist-types/components/menu/test-suites/LionMenuInteractions.suite.d.ts.map +1 -1
  269. package/dist-types/components/menu/test-suites/MoreButtonMenuMixin.suite.d.ts +6 -5
  270. package/dist-types/components/menu/test-suites/MoreButtonMenuMixin.suite.d.ts.map +1 -1
  271. package/dist-types/components/menu/test-suites/MultiLevelListMixin.suite.d.ts +7 -6
  272. package/dist-types/components/menu/test-suites/MultiLevelListMixin.suite.d.ts.map +1 -1
  273. package/dist-types/components/overlays/src/OverlayController.d.ts +3 -1
  274. package/dist-types/components/overlays/src/OverlayController.d.ts.map +1 -1
  275. package/dist-types/components/overlays/src/OverlayMixin.d.ts.map +1 -1
  276. package/dist-types/components/overlays/test/invoker-compatibility.test.d.ts +3 -0
  277. package/dist-types/components/overlays/test/invoker-compatibility.test.d.ts.map +1 -0
  278. package/dist-types/components/overlays/test-suites/OverlayMixin.suite.d.ts.map +1 -1
  279. package/dist-types/components/pagination/test/lion-pagination.test.d.ts +1 -3
  280. package/dist-types/components/pagination/test/lion-pagination.test.d.ts.map +1 -1
  281. package/dist-types/components/pagination/test-suites/LionPagination.suite.d.ts +18 -0
  282. package/dist-types/components/pagination/test-suites/LionPagination.suite.d.ts.map +1 -0
  283. package/dist-types/components/progress-indicator/test/lion-progress-indicator.test.d.ts +1 -3
  284. package/dist-types/components/progress-indicator/test/lion-progress-indicator.test.d.ts.map +1 -1
  285. package/dist-types/components/progress-indicator/test-suites/lion-progress-indicator.suite.d.ts +15 -0
  286. package/dist-types/components/progress-indicator/test-suites/lion-progress-indicator.suite.d.ts.map +1 -0
  287. package/dist-types/components/radio-group/test/lion-radio-group.test.d.ts +1 -5
  288. package/dist-types/components/radio-group/test/lion-radio-group.test.d.ts.map +1 -1
  289. package/dist-types/components/radio-group/test/lion-radio.test.d.ts +1 -2
  290. package/dist-types/components/radio-group/test/lion-radio.test.d.ts.map +1 -1
  291. package/dist-types/components/radio-group/test-suites/lion-radio-group.suite.d.ts +19 -0
  292. package/dist-types/components/radio-group/test-suites/lion-radio-group.suite.d.ts.map +1 -0
  293. package/dist-types/components/radio-group/test-suites/lion-radio.suite.d.ts +17 -0
  294. package/dist-types/components/radio-group/test-suites/lion-radio.suite.d.ts.map +1 -0
  295. package/dist-types/components/select/test/lion-select.test.d.ts +1 -2
  296. package/dist-types/components/select/test/lion-select.test.d.ts.map +1 -1
  297. package/dist-types/components/select/test-suites/LionSelect.suite.d.ts +16 -0
  298. package/dist-types/components/select/test-suites/LionSelect.suite.d.ts.map +1 -0
  299. package/dist-types/components/select-rich/src/LionSelectRich.d.ts +5 -4
  300. package/dist-types/components/select-rich/src/LionSelectRich.d.ts.map +1 -1
  301. package/dist-types/components/select-rich/test/lion-select-invoker.test.d.ts +1 -2
  302. package/dist-types/components/select-rich/test/lion-select-invoker.test.d.ts.map +1 -1
  303. package/dist-types/components/select-rich/test/lion-select-rich-interaction.test.d.ts +1 -5
  304. package/dist-types/components/select-rich/test/lion-select-rich-interaction.test.d.ts.map +1 -1
  305. package/dist-types/components/select-rich/test/lion-select-rich.test.d.ts +1 -8
  306. package/dist-types/components/select-rich/test/lion-select-rich.test.d.ts.map +1 -1
  307. package/dist-types/components/select-rich/test-suites/lion-select-invoker.suite.d.ts +19 -0
  308. package/dist-types/components/select-rich/test-suites/lion-select-invoker.suite.d.ts.map +1 -0
  309. package/dist-types/components/select-rich/test-suites/lion-select-rich-interaction.suite.d.ts +19 -0
  310. package/dist-types/components/select-rich/test-suites/lion-select-rich-interaction.suite.d.ts.map +1 -0
  311. package/dist-types/components/select-rich/test-suites/lion-select-rich.suite.d.ts +21 -0
  312. package/dist-types/components/select-rich/test-suites/lion-select-rich.suite.d.ts.map +1 -0
  313. package/dist-types/components/steps/test/lion-step.test.d.ts +1 -2
  314. package/dist-types/components/steps/test/lion-step.test.d.ts.map +1 -1
  315. package/dist-types/components/steps/test/lion-steps.test.d.ts +1 -8
  316. package/dist-types/components/steps/test/lion-steps.test.d.ts.map +1 -1
  317. package/dist-types/components/steps/test-suites/lion-step.suite.d.ts +17 -0
  318. package/dist-types/components/steps/test-suites/lion-step.suite.d.ts.map +1 -0
  319. package/dist-types/components/steps/test-suites/lion-steps.suite.d.ts +22 -0
  320. package/dist-types/components/steps/test-suites/lion-steps.suite.d.ts.map +1 -0
  321. package/dist-types/components/switch/test/lion-switch.test.d.ts +1 -4
  322. package/dist-types/components/switch/test/lion-switch.test.d.ts.map +1 -1
  323. package/dist-types/components/switch/test-suites/lion-switch.suite.d.ts +17 -0
  324. package/dist-types/components/switch/test-suites/lion-switch.suite.d.ts.map +1 -0
  325. package/dist-types/components/tabs/test/lion-tabs.test.d.ts +1 -5
  326. package/dist-types/components/tabs/test/lion-tabs.test.d.ts.map +1 -1
  327. package/dist-types/components/tabs/test-suites/lion-tabs.suite.d.ts +17 -0
  328. package/dist-types/components/tabs/test-suites/lion-tabs.suite.d.ts.map +1 -0
  329. package/dist-types/components/textarea/src/LionTextarea.d.ts.map +1 -1
  330. package/dist-types/components/textarea/test/lion-textarea.test.d.ts +1 -3
  331. package/dist-types/components/textarea/test/lion-textarea.test.d.ts.map +1 -1
  332. package/dist-types/components/textarea/test-suites/lion-textarea.suite.d.ts +15 -0
  333. package/dist-types/components/textarea/test-suites/lion-textarea.suite.d.ts.map +1 -0
  334. package/dist-types/components/tooltip/test/lion-tooltip.test.d.ts +1 -3
  335. package/dist-types/components/tooltip/test/lion-tooltip.test.d.ts.map +1 -1
  336. package/dist-types/components/tooltip/test-suites/lion-tooltip.suite.d.ts +19 -0
  337. package/dist-types/components/tooltip/test-suites/lion-tooltip.suite.d.ts.map +1 -0
  338. package/dist-types/exports/accordion-test-suites.d.ts +2 -0
  339. package/dist-types/exports/accordion-test-suites.d.ts.map +1 -0
  340. package/dist-types/exports/collapsible-test-suites.d.ts +2 -0
  341. package/dist-types/exports/collapsible-test-suites.d.ts.map +1 -0
  342. package/dist-types/exports/combobox-test-suites.d.ts +2 -0
  343. package/dist-types/exports/combobox-test-suites.d.ts.map +1 -0
  344. package/dist-types/exports/dialog-test-suites.d.ts +2 -0
  345. package/dist-types/exports/dialog-test-suites.d.ts.map +1 -0
  346. package/dist-types/exports/drawer-test-suites.d.ts +2 -0
  347. package/dist-types/exports/drawer-test-suites.d.ts.map +1 -0
  348. package/dist-types/exports/form-test-suites.d.ts +2 -0
  349. package/dist-types/exports/form-test-suites.d.ts.map +1 -0
  350. package/dist-types/exports/icon-test-suites.d.ts +2 -0
  351. package/dist-types/exports/icon-test-suites.d.ts.map +1 -0
  352. package/dist-types/exports/input-amount-test-suites.d.ts +2 -0
  353. package/dist-types/exports/input-amount-test-suites.d.ts.map +1 -0
  354. package/dist-types/exports/input-date-test-suites.d.ts +2 -0
  355. package/dist-types/exports/input-date-test-suites.d.ts.map +1 -0
  356. package/dist-types/exports/input-email-test-suites.d.ts +2 -0
  357. package/dist-types/exports/input-email-test-suites.d.ts.map +1 -0
  358. package/dist-types/exports/input-file-test-suites.d.ts +2 -0
  359. package/dist-types/exports/input-file-test-suites.d.ts.map +1 -0
  360. package/dist-types/exports/input-iban-test-suites.d.ts +2 -0
  361. package/dist-types/exports/input-iban-test-suites.d.ts.map +1 -0
  362. package/dist-types/exports/input-range-test-suites.d.ts +2 -0
  363. package/dist-types/exports/input-range-test-suites.d.ts.map +1 -0
  364. package/dist-types/exports/input-stepper-suites.d.ts +7 -2
  365. package/dist-types/exports/input-stepper-suites.d.ts.map +1 -1
  366. package/dist-types/exports/input-test-suites.d.ts +2 -0
  367. package/dist-types/exports/input-test-suites.d.ts.map +1 -0
  368. package/dist-types/exports/menu-test-suites.d.ts.map +1 -1
  369. package/dist-types/exports/pagination-test-suites.d.ts +2 -0
  370. package/dist-types/exports/pagination-test-suites.d.ts.map +1 -0
  371. package/dist-types/exports/progress-indicator-test-suites.d.ts +2 -0
  372. package/dist-types/exports/progress-indicator-test-suites.d.ts.map +1 -0
  373. package/dist-types/exports/radio-group-test-suites.d.ts +3 -0
  374. package/dist-types/exports/radio-group-test-suites.d.ts.map +1 -0
  375. package/dist-types/exports/select-rich-test-suites.d.ts +4 -0
  376. package/dist-types/exports/select-rich-test-suites.d.ts.map +1 -0
  377. package/dist-types/exports/select-test-suites.d.ts +2 -0
  378. package/dist-types/exports/select-test-suites.d.ts.map +1 -0
  379. package/dist-types/exports/steps-test-suites.d.ts +3 -0
  380. package/dist-types/exports/steps-test-suites.d.ts.map +1 -0
  381. package/dist-types/exports/switch-test-suites.d.ts +2 -0
  382. package/dist-types/exports/switch-test-suites.d.ts.map +1 -0
  383. package/dist-types/exports/tabs-test-suites.d.ts +2 -0
  384. package/dist-types/exports/tabs-test-suites.d.ts.map +1 -0
  385. package/dist-types/exports/textarea-test-suites.d.ts +2 -0
  386. package/dist-types/exports/textarea-test-suites.d.ts.map +1 -0
  387. package/dist-types/exports/tooltip-test-suites.d.ts +2 -0
  388. package/dist-types/exports/tooltip-test-suites.d.ts.map +1 -0
  389. package/dist-types/exports/types/test-suites.d.ts +4 -0
  390. package/dist-types/exports/types/test-suites.d.ts.map +1 -0
  391. package/dist-types/tsconfig.tsbuildinfo +1 -1
  392. package/drawer-test-suites.js +1 -0
  393. package/exports/accordion-test-suites.js +2 -0
  394. package/exports/collapsible-test-suites.js +1 -0
  395. package/exports/combobox-test-suites.js +2 -0
  396. package/exports/dialog-test-suites.js +2 -0
  397. package/exports/drawer-test-suites.js +1 -0
  398. package/exports/form-test-suites.js +2 -0
  399. package/exports/icon-test-suites.js +2 -0
  400. package/exports/input-amount-test-suites.js +2 -0
  401. package/exports/input-date-test-suites.js +2 -0
  402. package/exports/input-email-test-suites.js +2 -0
  403. package/exports/input-file-test-suites.js +2 -0
  404. package/exports/input-iban-test-suites.js +2 -0
  405. package/exports/input-range-test-suites.js +2 -0
  406. package/exports/input-stepper-suites.js +18 -4
  407. package/exports/input-test-suites.js +2 -0
  408. package/exports/menu-test-suites.js +3 -0
  409. package/exports/pagination-test-suites.js +1 -0
  410. package/exports/progress-indicator-test-suites.js +2 -0
  411. package/exports/radio-group-test-suites.js +3 -0
  412. package/exports/select-rich-test-suites.js +4 -0
  413. package/exports/select-test-suites.js +1 -0
  414. package/exports/steps-test-suites.js +3 -0
  415. package/exports/switch-test-suites.js +2 -0
  416. package/exports/tabs-test-suites.js +2 -0
  417. package/exports/textarea-test-suites.js +2 -0
  418. package/exports/tooltip-test-suites.js +2 -0
  419. package/exports/types/test-suites.ts +3 -0
  420. package/form-test-suites.js +2 -0
  421. package/generated/awesome-phonenumber/provenance.json +1 -1
  422. package/icon-test-suites.js +2 -0
  423. package/input-amount-test-suites.js +2 -0
  424. package/input-date-test-suites.js +2 -0
  425. package/input-email-test-suites.js +2 -0
  426. package/input-file-test-suites.js +2 -0
  427. package/input-iban-test-suites.js +2 -0
  428. package/input-range-test-suites.js +2 -0
  429. package/input-stepper-suites.js +18 -4
  430. package/input-test-suites.js +2 -0
  431. package/menu-test-suites.js +3 -0
  432. package/package.json +11 -7
  433. package/pagination-test-suites.js +1 -0
  434. package/progress-indicator-test-suites.js +2 -0
  435. package/radio-group-test-suites.js +3 -0
  436. package/select-rich-test-suites.js +4 -0
  437. package/select-test-suites.js +1 -0
  438. package/steps-test-suites.js +3 -0
  439. package/switch-test-suites.js +2 -0
  440. package/tabs-test-suites.js +2 -0
  441. package/textarea-test-suites.js +2 -0
  442. package/tooltip-test-suites.js +2 -0
  443. package/vscode.html-custom-data.json +60 -5
  444. package/web-types.json +219 -1
  445. package/components/button/test/demos.screenshots-test.js +0 -100
  446. package/components/calendar/test/demos.screenshots-test.js +0 -118
  447. package/components/input-file/test/lion-selected-file-list.test.js +0 -199
  448. package/components/select-rich/test/demos.screenshots-test.js +0 -168
  449. package/components/switch/test/lion-switch-button.test.js +0 -204
  450. package/dist-types/components/button/test/demos.screenshots-test.d.ts +0 -2
  451. package/dist-types/components/button/test/demos.screenshots-test.d.ts.map +0 -1
  452. package/dist-types/components/calendar/test/demos.screenshots-test.d.ts +0 -2
  453. package/dist-types/components/calendar/test/demos.screenshots-test.d.ts.map +0 -1
  454. package/dist-types/components/input-file/test/lion-selected-file-list.test.d.ts +0 -5
  455. package/dist-types/components/input-file/test/lion-selected-file-list.test.d.ts.map +0 -1
  456. package/dist-types/components/select-rich/test/demos.screenshots-test.d.ts +0 -2
  457. package/dist-types/components/select-rich/test/demos.screenshots-test.d.ts.map +0 -1
  458. package/dist-types/components/switch/test/lion-switch-button.test.d.ts +0 -4
  459. package/dist-types/components/switch/test/lion-switch-button.test.d.ts.map +0 -1
  460. package/docs/components/accordion/api-table.md +0 -53
  461. package/docs/components/accordion/index.md +0 -13
  462. package/docs/components/accordion/overview.md +0 -141
  463. package/docs/components/accordion/reference.md +0 -59
  464. package/docs/components/accordion/use-cases.md +0 -303
  465. package/docs/components/button/api-table.md +0 -84
  466. package/docs/components/button/assets/bootstrap-button.js +0 -245
  467. package/docs/components/button/examples.md +0 -42
  468. package/docs/components/button/extensions.md +0 -42
  469. package/docs/components/button/index.md +0 -13
  470. package/docs/components/button/overview.md +0 -42
  471. package/docs/components/button/src/icon.svg.js +0 -5
  472. package/docs/components/button/use-cases.md +0 -121
  473. package/docs/components/calendar/api-table.md +0 -56
  474. package/docs/components/calendar/index.md +0 -13
  475. package/docs/components/calendar/overview.md +0 -61
  476. package/docs/components/calendar/use-cases.md +0 -243
  477. package/docs/components/checkbox-group/api-table.md +0 -117
  478. package/docs/components/checkbox-group/index.md +0 -13
  479. package/docs/components/checkbox-group/overview.md +0 -51
  480. package/docs/components/checkbox-group/use-cases.md +0 -192
  481. package/docs/components/collapsible/api-table.md +0 -55
  482. package/docs/components/collapsible/assets/CustomCollapsible.js +0 -117
  483. package/docs/components/collapsible/assets/applyDemoCollapsibleStyles.js +0 -41
  484. package/docs/components/collapsible/examples.md +0 -95
  485. package/docs/components/collapsible/index.md +0 -13
  486. package/docs/components/collapsible/overview.md +0 -51
  487. package/docs/components/collapsible/use-cases.md +0 -91
  488. package/docs/components/combobox/api-table.md +0 -122
  489. package/docs/components/combobox/extensions.md +0 -174
  490. package/docs/components/combobox/index.md +0 -13
  491. package/docs/components/combobox/overview.md +0 -74
  492. package/docs/components/combobox/src/LinkMixin.js +0 -60
  493. package/docs/components/combobox/src/demo-selection-display.js +0 -164
  494. package/docs/components/combobox/src/gh-combobox/gh-button.js +0 -71
  495. package/docs/components/combobox/src/gh-combobox/gh-combobox.js +0 -515
  496. package/docs/components/combobox/src/google-combobox/assets/google-clear-icon.js +0 -9
  497. package/docs/components/combobox/src/google-combobox/assets/google-search-icon.js +0 -9
  498. package/docs/components/combobox/src/google-combobox/assets/google-voice-search-icon.js +0 -19
  499. package/docs/components/combobox/src/google-combobox/google-combobox.js +0 -461
  500. package/docs/components/combobox/src/lazyRender.js +0 -29
  501. package/docs/components/combobox/src/levenshtein.js +0 -95
  502. package/docs/components/combobox/src/md-combobox/MdFieldMixin.js +0 -345
  503. package/docs/components/combobox/src/md-combobox/md-combobox.js +0 -91
  504. package/docs/components/combobox/src/md-combobox/md-input.js +0 -5
  505. package/docs/components/combobox/src/md-combobox/style/load-roboto.js +0 -6
  506. package/docs/components/combobox/src/md-combobox/style/md-ripple.js +0 -82
  507. package/docs/components/combobox/src/wa-combobox/wa-combobox.js +0 -375
  508. package/docs/components/combobox/use-cases.md +0 -561
  509. package/docs/components/dialog/api-table.md +0 -61
  510. package/docs/components/dialog/index.md +0 -13
  511. package/docs/components/dialog/overview.md +0 -71
  512. package/docs/components/dialog/src/demoStyle.js +0 -57
  513. package/docs/components/dialog/src/external-dialog.js +0 -32
  514. package/docs/components/dialog/src/slots-dialog-content.js +0 -32
  515. package/docs/components/dialog/src/styled-dialog-content.js +0 -38
  516. package/docs/components/dialog/use-cases.md +0 -199
  517. package/docs/components/drawer/api-table.md +0 -64
  518. package/docs/components/drawer/index.md +0 -13
  519. package/docs/components/drawer/overview.md +0 -80
  520. package/docs/components/drawer/src/demoStyle.js +0 -71
  521. package/docs/components/drawer/use-cases.md +0 -206
  522. package/docs/components/fieldset/api-table.md +0 -24
  523. package/docs/components/fieldset/index.md +0 -13
  524. package/docs/components/fieldset/overview.md +0 -61
  525. package/docs/components/fieldset/use-cases.md +0 -203
  526. package/docs/components/form/api-table.md +0 -12
  527. package/docs/components/form/index.md +0 -13
  528. package/docs/components/form/overview.md +0 -66
  529. package/docs/components/form/use-cases.md +0 -230
  530. package/docs/components/icon/api-table.md +0 -41
  531. package/docs/components/icon/assets/bugs/bug01.svg.js +0 -2
  532. package/docs/components/icon/assets/bugs/bug02.svg.js +0 -2
  533. package/docs/components/icon/assets/bugs/bug05.svg.js +0 -2
  534. package/docs/components/icon/assets/bugs/bug06.svg.js +0 -2
  535. package/docs/components/icon/assets/bugs/bug08.svg.js +0 -2
  536. package/docs/components/icon/assets/bugs/bug12.svg.js +0 -2
  537. package/docs/components/icon/assets/bugs/bug19.svg.js +0 -2
  538. package/docs/components/icon/assets/bugs/bug23.svg.js +0 -2
  539. package/docs/components/icon/assets/bugs/bug24.svg.js +0 -2
  540. package/docs/components/icon/assets/iconset-bugs.js +0 -11
  541. package/docs/components/icon/assets/iconset-misc.js +0 -3
  542. package/docs/components/icon/assets/iconset-space.js +0 -31
  543. package/docs/components/icon/assets/misc/arrowLeft.svg.js +0 -6
  544. package/docs/components/icon/assets/space/aliens-spaceship.svg.js +0 -2
  545. package/docs/components/icon/assets/space/meteor.svg.js +0 -2
  546. package/docs/components/icon/assets/space/moon-flag.svg.js +0 -2
  547. package/docs/components/icon/assets/space/moon.svg.js +0 -2
  548. package/docs/components/icon/assets/space/night.svg.js +0 -2
  549. package/docs/components/icon/assets/space/orbit.svg.js +0 -2
  550. package/docs/components/icon/assets/space/planet.svg.js +0 -2
  551. package/docs/components/icon/assets/space/robot.svg.js +0 -2
  552. package/docs/components/icon/assets/space/rocket.svg.js +0 -2
  553. package/docs/components/icon/assets/space/satellite.svg.js +0 -2
  554. package/docs/components/icon/assets/space/signal.svg.js +0 -2
  555. package/docs/components/icon/assets/space/space-helmet.svg.js +0 -2
  556. package/docs/components/icon/assets/space/sun.svg.js +0 -2
  557. package/docs/components/icon/assets/space/telescope.svg.js +0 -2
  558. package/docs/components/icon/index.md +0 -13
  559. package/docs/components/icon/overview.md +0 -52
  560. package/docs/components/icon/use-cases.md +0 -92
  561. package/docs/components/index.md +0 -17
  562. package/docs/components/input/api-table.md +0 -52
  563. package/docs/components/input/index.md +0 -13
  564. package/docs/components/input/overview.md +0 -48
  565. package/docs/components/input/use-cases.md +0 -90
  566. package/docs/components/input-amount/api-table.md +0 -66
  567. package/docs/components/input-amount/index.md +0 -13
  568. package/docs/components/input-amount/overview.md +0 -61
  569. package/docs/components/input-amount/use-cases.md +0 -147
  570. package/docs/components/input-amount-dropdown/api-table.md +0 -87
  571. package/docs/components/input-amount-dropdown/index.md +0 -13
  572. package/docs/components/input-amount-dropdown/use-cases.md +0 -103
  573. package/docs/components/input-date/api-table.md +0 -58
  574. package/docs/components/input-date/index.md +0 -13
  575. package/docs/components/input-date/overview.md +0 -51
  576. package/docs/components/input-date/use-cases.md +0 -96
  577. package/docs/components/input-datepicker/api-table.md +0 -99
  578. package/docs/components/input-datepicker/index.md +0 -13
  579. package/docs/components/input-datepicker/overview.md +0 -54
  580. package/docs/components/input-datepicker/use-cases.md +0 -117
  581. package/docs/components/input-email/api-table.md +0 -53
  582. package/docs/components/input-email/index.md +0 -13
  583. package/docs/components/input-email/overview.md +0 -44
  584. package/docs/components/input-email/use-cases.md +0 -60
  585. package/docs/components/input-file/api-table.md +0 -157
  586. package/docs/components/input-file/index.md +0 -13
  587. package/docs/components/input-file/overview.md +0 -44
  588. package/docs/components/input-file/use-cases.md +0 -454
  589. package/docs/components/input-iban/api-table.md +0 -54
  590. package/docs/components/input-iban/index.md +0 -13
  591. package/docs/components/input-iban/overview.md +0 -49
  592. package/docs/components/input-iban/use-cases.md +0 -114
  593. package/docs/components/input-range/api-table.md +0 -71
  594. package/docs/components/input-range/index.md +0 -13
  595. package/docs/components/input-range/overview.md +0 -44
  596. package/docs/components/input-range/use-cases.md +0 -126
  597. package/docs/components/input-stepper/api-table.md +0 -74
  598. package/docs/components/input-stepper/index.md +0 -13
  599. package/docs/components/input-stepper/overview.md +0 -48
  600. package/docs/components/input-stepper/use-cases.md +0 -155
  601. package/docs/components/input-tel/api-table.md +0 -77
  602. package/docs/components/input-tel/index.md +0 -13
  603. package/docs/components/input-tel/overview.md +0 -74
  604. package/docs/components/input-tel/src/h-region-code-table.js +0 -109
  605. package/docs/components/input-tel/use-cases.md +0 -319
  606. package/docs/components/input-tel-dropdown/api-table.md +0 -85
  607. package/docs/components/input-tel-dropdown/extensions.md +0 -44
  608. package/docs/components/input-tel-dropdown/index.md +0 -13
  609. package/docs/components/input-tel-dropdown/overview.md +0 -50
  610. package/docs/components/input-tel-dropdown/src/intl-input-tel-dropdown.js +0 -138
  611. package/docs/components/input-tel-dropdown/use-cases.md +0 -171
  612. package/docs/components/listbox/api-table.md +0 -65
  613. package/docs/components/listbox/index.md +0 -13
  614. package/docs/components/listbox/overview.md +0 -54
  615. package/docs/components/listbox/src/listboxData.js +0 -131
  616. package/docs/components/listbox/use-cases.md +0 -154
  617. package/docs/components/menu/api-table.md +0 -44
  618. package/docs/components/menu/applyMenuDemoStyles.js +0 -173
  619. package/docs/components/menu/extensions.md +0 -262
  620. package/docs/components/menu/index.md +0 -13
  621. package/docs/components/menu/migration.md +0 -129
  622. package/docs/components/menu/overview.md +0 -448
  623. package/docs/components/menu/src/DemoNavigationBar.js +0 -441
  624. package/docs/components/menu/src/DemoSpinButton.js +0 -215
  625. package/docs/components/menu/src/DemoToolbar.js +0 -101
  626. package/docs/components/menu/src/DemoTree.js +0 -55
  627. package/docs/components/menu/src/navigation-bar-types.js +0 -41
  628. package/docs/components/menu/use-cases.md +0 -74
  629. package/docs/components/pagination/api-table.md +0 -45
  630. package/docs/components/pagination/index.md +0 -13
  631. package/docs/components/pagination/overview.md +0 -41
  632. package/docs/components/pagination/use-cases.md +0 -113
  633. package/docs/components/progress-indicator/api-table.md +0 -48
  634. package/docs/components/progress-indicator/assets/my-determinate-progress-bar.js +0 -30
  635. package/docs/components/progress-indicator/assets/my-indeterminate-progress-spinner.js +0 -55
  636. package/docs/components/progress-indicator/examples.md +0 -137
  637. package/docs/components/progress-indicator/index.md +0 -13
  638. package/docs/components/progress-indicator/overview.md +0 -48
  639. package/docs/components/radio-group/api-table.md +0 -63
  640. package/docs/components/radio-group/index.md +0 -13
  641. package/docs/components/radio-group/overview.md +0 -58
  642. package/docs/components/radio-group/use-cases.md +0 -146
  643. package/docs/components/select/api-table.md +0 -51
  644. package/docs/components/select/index.md +0 -13
  645. package/docs/components/select/overview.md +0 -56
  646. package/docs/components/select/use-cases.md +0 -128
  647. package/docs/components/select-rich/api-table.md +0 -123
  648. package/docs/components/select-rich/examples.md +0 -43
  649. package/docs/components/select-rich/index.md +0 -13
  650. package/docs/components/select-rich/overview.md +0 -55
  651. package/docs/components/select-rich/src/flagStyles.js +0 -1250
  652. package/docs/components/select-rich/src/intl-select-rich.js +0 -194
  653. package/docs/components/select-rich/src/regionMetaList.js +0 -1717
  654. package/docs/components/select-rich/use-cases.md +0 -387
  655. package/docs/components/steps/api-table.md +0 -92
  656. package/docs/components/steps/index.md +0 -13
  657. package/docs/components/steps/overview.md +0 -77
  658. package/docs/components/steps/use-cases.md +0 -181
  659. package/docs/components/switch/api-table.md +0 -82
  660. package/docs/components/switch/index.md +0 -13
  661. package/docs/components/switch/overview.md +0 -87
  662. package/docs/components/switch/reference.md +0 -51
  663. package/docs/components/switch/use-cases.md +0 -88
  664. package/docs/components/tabs/api-table.md +0 -51
  665. package/docs/components/tabs/examples.md +0 -35
  666. package/docs/components/tabs/index.md +0 -13
  667. package/docs/components/tabs/overview.md +0 -60
  668. package/docs/components/tabs/src/lea-tab-panel.js +0 -26
  669. package/docs/components/tabs/src/lea-tab.js +0 -50
  670. package/docs/components/tabs/src/lea-tabs.js +0 -28
  671. package/docs/components/tabs/use-cases.md +0 -231
  672. package/docs/components/textarea/api-table.md +0 -57
  673. package/docs/components/textarea/index.md +0 -13
  674. package/docs/components/textarea/overview.md +0 -47
  675. package/docs/components/textarea/use-cases.md +0 -107
  676. package/docs/components/tooltip/api-table.md +0 -62
  677. package/docs/components/tooltip/examples.md +0 -51
  678. package/docs/components/tooltip/index.md +0 -13
  679. package/docs/components/tooltip/overview.md +0 -56
  680. package/docs/components/tooltip/use-cases.md +0 -275
  681. package/docs/fundamentals/index.md +0 -19
  682. package/docs/fundamentals/node-tools/babel-plugin-extend-docs/index.md +0 -13
  683. package/docs/fundamentals/node-tools/babel-plugin-extend-docs/overview.md +0 -246
  684. package/docs/fundamentals/node-tools/index.md +0 -11
  685. package/docs/fundamentals/node-tools/providence-analytics/index.md +0 -13
  686. package/docs/fundamentals/node-tools/providence-analytics/overview.md +0 -108
  687. package/docs/fundamentals/node-tools/publish-docs/index.md +0 -13
  688. package/docs/fundamentals/node-tools/publish-docs/overview.md +0 -149
  689. package/docs/fundamentals/node-tools/remark-extend/index.md +0 -13
  690. package/docs/fundamentals/node-tools/remark-extend/overview.md +0 -287
  691. package/docs/fundamentals/node-tools/rocket-preset-extend-lion-docs/index.md +0 -13
  692. package/docs/fundamentals/node-tools/rocket-preset-extend-lion-docs/overview.md +0 -298
  693. package/docs/fundamentals/rationales/TypeScript.md +0 -123
  694. package/docs/fundamentals/rationales/accessibility.md +0 -40
  695. package/docs/fundamentals/rationales/index.md +0 -11
  696. package/docs/fundamentals/rationales/side-effects.md +0 -215
  697. package/docs/fundamentals/rationales/versioning.md +0 -47
  698. package/docs/fundamentals/systems/core/SlotMixin.md +0 -168
  699. package/docs/fundamentals/systems/core/api-table.md +0 -43
  700. package/docs/fundamentals/systems/core/index.md +0 -15
  701. package/docs/fundamentals/systems/core/overview.md +0 -98
  702. package/docs/fundamentals/systems/form/api-table.md +0 -40
  703. package/docs/fundamentals/systems/form/assets/h-output.js +0 -156
  704. package/docs/fundamentals/systems/form/formatting-and-parsing.md +0 -258
  705. package/docs/fundamentals/systems/form/index.md +0 -15
  706. package/docs/fundamentals/systems/form/interaction-states.md +0 -195
  707. package/docs/fundamentals/systems/form/model-value.md +0 -57
  708. package/docs/fundamentals/systems/form/overview.md +0 -95
  709. package/docs/fundamentals/systems/form/styling.md +0 -92
  710. package/docs/fundamentals/systems/form/use-cases.md +0 -187
  711. package/docs/fundamentals/systems/form/validate.md +0 -985
  712. package/docs/fundamentals/systems/icon/index.md +0 -15
  713. package/docs/fundamentals/systems/icon/overview.md +0 -137
  714. package/docs/fundamentals/systems/index.md +0 -11
  715. package/docs/fundamentals/systems/localize/api-table.md +0 -72
  716. package/docs/fundamentals/systems/localize/assets/all-locales.js +0 -437
  717. package/docs/fundamentals/systems/localize/assets/en-AU.js +0 -6
  718. package/docs/fundamentals/systems/localize/assets/en-GB.js +0 -6
  719. package/docs/fundamentals/systems/localize/assets/en-US.js +0 -6
  720. package/docs/fundamentals/systems/localize/assets/en.js +0 -4
  721. package/docs/fundamentals/systems/localize/assets/nl-BE.js +0 -6
  722. package/docs/fundamentals/systems/localize/assets/nl-NL.js +0 -6
  723. package/docs/fundamentals/systems/localize/assets/nl.js +0 -4
  724. package/docs/fundamentals/systems/localize/dates.md +0 -208
  725. package/docs/fundamentals/systems/localize/index.md +0 -15
  726. package/docs/fundamentals/systems/localize/numbers.md +0 -230
  727. package/docs/fundamentals/systems/localize/overview.md +0 -61
  728. package/docs/fundamentals/systems/localize/rationale.md +0 -75
  729. package/docs/fundamentals/systems/localize/text.md +0 -139
  730. package/docs/fundamentals/systems/localize/use-cases.md +0 -334
  731. package/docs/fundamentals/systems/overlays/_configuration-positioning.md +0 -118
  732. package/docs/fundamentals/systems/overlays/_edge-cases.md +0 -149
  733. package/docs/fundamentals/systems/overlays/api-table.md +0 -174
  734. package/docs/fundamentals/systems/overlays/assets/applyDemoOverlayStyles.js +0 -23
  735. package/docs/fundamentals/systems/overlays/assets/demo-el-using-overlaymixin.js +0 -104
  736. package/docs/fundamentals/systems/overlays/assets/demo-overlay-backdrop.js +0 -47
  737. package/docs/fundamentals/systems/overlays/assets/demo-overlay-positioning.mjs +0 -537
  738. package/docs/fundamentals/systems/overlays/assets/umbrella-form.js +0 -140
  739. package/docs/fundamentals/systems/overlays/configuration.md +0 -516
  740. package/docs/fundamentals/systems/overlays/index.md +0 -15
  741. package/docs/fundamentals/systems/overlays/overview.md +0 -126
  742. package/docs/fundamentals/systems/overlays/rationale.md +0 -242
  743. package/docs/fundamentals/systems/overlays/use-cases.md +0 -717
  744. package/docs/fundamentals/tools/ajax/index.md +0 -15
  745. package/docs/fundamentals/tools/ajax/overview.md +0 -269
  746. package/docs/fundamentals/tools/ajax/use-cases.md +0 -469
  747. package/docs/fundamentals/tools/helpers/action-logger.md +0 -175
  748. package/docs/fundamentals/tools/helpers/index.md +0 -15
  749. package/docs/fundamentals/tools/helpers/overview.md +0 -43
  750. package/docs/fundamentals/tools/index.md +0 -11
  751. package/docs/fundamentals/tools/singleton-manager/example-complex/demo-app.js +0 -95
  752. package/docs/fundamentals/tools/singleton-manager/example-complex/index.md +0 -34
  753. package/docs/fundamentals/tools/singleton-manager/example-complex/node_modules/overlays/index.js +0 -30
  754. package/docs/fundamentals/tools/singleton-manager/example-complex/node_modules/overlays/instance.js +0 -4
  755. package/docs/fundamentals/tools/singleton-manager/example-complex/node_modules/page-a/page-a.js +0 -35
  756. package/docs/fundamentals/tools/singleton-manager/example-complex/node_modules/page-b/node_modules/overlays/index.js +0 -30
  757. package/docs/fundamentals/tools/singleton-manager/example-complex/node_modules/page-b/node_modules/overlays/instance.js +0 -4
  758. package/docs/fundamentals/tools/singleton-manager/example-complex/node_modules/page-b/page-b.js +0 -49
  759. package/docs/fundamentals/tools/singleton-manager/example-complex/overlayCompatibility.js +0 -69
  760. package/docs/fundamentals/tools/singleton-manager/example-fail/demo-app.js +0 -93
  761. package/docs/fundamentals/tools/singleton-manager/example-fail/index.md +0 -32
  762. package/docs/fundamentals/tools/singleton-manager/example-fail/node_modules/overlays/index.js +0 -30
  763. package/docs/fundamentals/tools/singleton-manager/example-fail/node_modules/overlays/instance.js +0 -3
  764. package/docs/fundamentals/tools/singleton-manager/example-fail/node_modules/page-c/page-c.js +0 -34
  765. package/docs/fundamentals/tools/singleton-manager/example-fail/node_modules/page-d/node_modules/overlays/index.js +0 -30
  766. package/docs/fundamentals/tools/singleton-manager/example-fail/node_modules/page-d/node_modules/overlays/instance.js +0 -3
  767. package/docs/fundamentals/tools/singleton-manager/example-fail/node_modules/page-d/page-d.js +0 -34
  768. package/docs/fundamentals/tools/singleton-manager/example-success/demo-app.js +0 -95
  769. package/docs/fundamentals/tools/singleton-manager/example-success/index.md +0 -31
  770. package/docs/fundamentals/tools/singleton-manager/example-success/node_modules/overlays/index.js +0 -30
  771. package/docs/fundamentals/tools/singleton-manager/example-success/node_modules/overlays/instance.js +0 -4
  772. package/docs/fundamentals/tools/singleton-manager/example-success/node_modules/page-e/page-e.js +0 -33
  773. package/docs/fundamentals/tools/singleton-manager/example-success/node_modules/page-f/node_modules/overlays/index.js +0 -30
  774. package/docs/fundamentals/tools/singleton-manager/example-success/node_modules/page-f/node_modules/overlays/instance.js +0 -4
  775. package/docs/fundamentals/tools/singleton-manager/example-success/node_modules/page-f/page-f.js +0 -34
  776. package/docs/fundamentals/tools/singleton-manager/example-success/overlayCompatibility.js +0 -23
  777. package/docs/fundamentals/tools/singleton-manager/index.md +0 -15
  778. package/docs/fundamentals/tools/singleton-manager/overview.md +0 -317
  779. package/docs/guides/how-to/create-a-custom-field.md +0 -212
  780. package/docs/guides/how-to/create-a-form.md +0 -101
  781. package/docs/guides/how-to/extend-a-native-input.md +0 -78
  782. package/docs/guides/how-to/get-started.md +0 -116
  783. package/docs/guides/how-to/index.md +0 -25
  784. package/docs/guides/index.md +0 -44
  785. package/docs/guides/principles/definitions-and-terms.md +0 -53
  786. package/docs/guides/principles/index.md +0 -36
  787. package/docs/guides/principles/scoped-elements.md +0 -119
  788. package/docs/guides/principles/styling.md +0 -43
  789. package/docs/guides/principles/subclasser-apis.md +0 -40
@@ -1,561 +0,0 @@
1
- ---
2
- title: 'Use Cases'
3
- parts:
4
- - Combobox
5
- - Use Cases
6
- eleventyNavigation:
7
- key: 'Combobox: Use Cases'
8
- order: 20
9
- parent: Combobox
10
- title: Use Cases
11
- ---
12
-
13
- # Use Cases
14
-
15
- A combobox is a widget made up of the combination of two distinct elements:
16
-
17
- - a single-line textbox
18
- - an associated listbox overlay
19
-
20
- Based on the combobox configuration and entered textbox value, options in the listbox will be
21
- filtered, checked, focused and the textbox value may be autocompleted.
22
- Optionally the combobox contains a graphical button adjacent to the textbox, indicating the
23
- availability of the popup.
24
-
25
- > Fore more information, consult [Combobox wai-aria design pattern](https://www.w3.org/TR/wai-aria-practices/#combobox)
26
-
27
- ```js script
28
- import { LitElement, html, repeat } from '@mdjs/mdjs-preview';
29
- import { listboxData, listboxComplexData } from '../listbox/src/listboxData.js';
30
- import { LionCombobox } from '@lion/ui/combobox.js';
31
- import { Required } from '@lion/ui/form-core.js';
32
- import '@lion/ui/define/lion-button.js';
33
- import '@lion/ui/define/lion-combobox.js';
34
- import '@lion/ui/define/lion-option.js';
35
- import './src/demo-selection-display.js';
36
- import { lazyRender } from './src/lazyRender.js';
37
- import levenshtein from './src/levenshtein.js';
38
- import { loadDefaultFeedbackMessages } from '@lion/ui/validate-messages.js';
39
- loadDefaultFeedbackMessages();
40
- ```
41
-
42
- ## Require option match
43
-
44
- By default `requireOptionMatch` is set to true, which means that the listbox is leading. The textbox is a helping aid to quickly select an option/options. Unmatching input values become Unparseable, with the `MatchesOption` set as a default validator.
45
-
46
- When `requireOptionMatch` is set to false the textbox is leading, with the listbox as an aid to supply suggestions, e.g. a search input. This means that all input values are allowed.
47
-
48
- ```js preview-story
49
- export const optionMatch = () => html`
50
- <lion-combobox name="search" label="Search" .requireOptionMatch="${false}">
51
- ${lazyRender(
52
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
53
- )}
54
- </lion-combobox>
55
- `;
56
- ```
57
-
58
- ## Autocomplete
59
-
60
- Below you will find an overview of all possible `autocomplete` behaviors and how they correspond
61
- to the configurable values `none`, `list`, `inline` and `both`.
62
-
63
- | | list | filter | focus | check | complete |
64
- | -----: | :--: | :----: | :---: | :---: | :------: |
65
- | none | ✓ | | | | |
66
- | list | ✓ | ✓ | ✓ | ✓ | |
67
- | inline | ✓ | | ✓ | ✓ | ✓ |
68
- | both | ✓ | ✓ | ✓ | ✓ | ✓ |
69
-
70
- - **list** shows a list on keydown character press
71
- - **filter** filters list of potential matches according to `matchmode` or provided `matchCondition`
72
- - **focus** automatically focuses closest match (makes it the activedescendant)
73
- - **check** automatically checks/selects closest match when `selection-follows-focus` is enabled (this is the default configuration)
74
- - **complete** completes the textbox value inline (the 'missing characters' will be added as selected text)
75
-
76
- When `autocomplete="none"` is configured, the suggested options in the overlay are not filtered
77
- based on the characters typed in the textbox.
78
- Selection will happen manually by the user.
79
-
80
- ```js preview-story
81
- export const autocompleteNone = () => html`
82
- <lion-combobox name="combo" label="Autocomplete 'none'" autocomplete="none">
83
- ${lazyRender(
84
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
85
- )}
86
- </lion-combobox>
87
- `;
88
- ```
89
-
90
- When `autocomplete="list"` is configured, it will filter listbox suggestions based on textbox value.
91
-
92
- ```js preview-story
93
- export const autocompleteList = () => html`
94
- <lion-combobox name="combo" label="Autocomplete 'list'" autocomplete="list">
95
- ${lazyRender(
96
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
97
- )}
98
- </lion-combobox>
99
- `;
100
- ```
101
-
102
- When `autocomplete="inline"` is configured, it will present a value completion prediction inside the text input itself.
103
- It does NOT filter list of potential matches.
104
-
105
- ```js preview-story
106
- export const autocompleteInline = () => html`
107
- <lion-combobox name="combo" label="Autocomplete 'inline'" autocomplete="inline">
108
- ${lazyRender(
109
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
110
- )}
111
- </lion-combobox>
112
- `;
113
- ```
114
-
115
- When `autocomplete="both"` is configured, it combines the filtered list from `'list'` with the text input value completion prediction from `'inline'`.
116
- This is the default value for `autocomplete`.
117
-
118
- ```js preview-story
119
- export const autocompleteBoth = () => html`
120
- <lion-combobox name="combo" label="Autocomplete 'both'" autocomplete="both">
121
- ${lazyRender(
122
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
123
- )}
124
- </lion-combobox>
125
- `;
126
- ```
127
-
128
- ## Match Mode
129
-
130
- When `match-mode="begin"` is applied, the entered text in the textbox only filters
131
- options whose values begin with the entered text. For instance, the entered text 'ch' will match
132
- with value 'Chard', but not with 'Artichoke'.
133
- By default `match-mode="all"` is applied. This will also match parts of a word.
134
- So 'ch' will both match 'Chard' and 'Artichoke'.
135
-
136
- ```js preview-story
137
- export const matchModeBegin = () => html`
138
- <lion-combobox name="combo" label="Match Mode 'begin'" match-mode="begin">
139
- ${lazyRender(
140
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
141
- )}
142
- </lion-combobox>
143
- `;
144
- ```
145
-
146
- ```js preview-story
147
- export const matchModeAll = () => html`
148
- <lion-combobox name="combo" label="Match Mode 'all'" match-mode="all">
149
- ${lazyRender(
150
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
151
- )}
152
- </lion-combobox>
153
- `;
154
- ```
155
-
156
- When the preconfigurable `match-mode` conditions are not sufficient,
157
- one can define a custom matching function.
158
- The example below matches when the Levenshtein distance is below 3 (including some other conditions).
159
-
160
- ```js preview-story
161
- export const customMatchCondition = () => html`
162
- <lion-combobox
163
- name="combo"
164
- label="Custom Match Mode 'levenshtein'"
165
- help-text="Spelling mistakes will be forgiven. Try typing 'Aple' instead of 'Apple'"
166
- .matchCondition="${({ choiceValue }, textboxValue) => {
167
- const oVal = choiceValue.toLowerCase();
168
- const tVal = textboxValue.toLowerCase();
169
- const t = 1; // treshold
170
- return oVal.slice(0, t) === tVal.slice(0, t) && levenshtein(oVal, tVal) < 3;
171
- }}"
172
- >
173
- ${lazyRender(
174
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
175
- )}
176
- </lion-combobox>
177
- `;
178
- ```
179
-
180
- ## Disabled option
181
-
182
- ```js preview-story
183
- class DemoDisabledState extends LitElement {
184
- static get properties() {
185
- return { disabled: { type: Boolean } };
186
- }
187
-
188
- constructor() {
189
- super();
190
- /** @type {string[]} */
191
- this.disabled = true;
192
- }
193
-
194
- get combobox() {
195
- return /** @type {LionCombobox} */ (this.shadowRoot?.querySelector('#combobox'));
196
- }
197
-
198
- /**
199
- * @param {InputEvent & {target: HTMLInputElement}} e
200
- */
201
- toggleDisabled(e) {
202
- this.disabled = !this.disabled;
203
- this.requestUpdate();
204
- }
205
-
206
- render() {
207
- return html`
208
- <lion-button @click=${this.toggleDisabled}>Toggle disabled</lion-button> Disabled state:
209
- ${this.disabled}
210
- <lion-combobox name="search" label="Search" ?disabled=${this.disabled}>
211
- ${lazyRender(
212
- listboxData.map(
213
- entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `,
214
- ),
215
- )}
216
- </lion-combobox>
217
- `;
218
- }
219
- }
220
- customElements.define('demo-disabled-state', DemoDisabledState);
221
- export const disabledState = () => html`<demo-disabled-state></demo-disabled-state>`;
222
- ```
223
-
224
- ## Readonly option
225
-
226
- ```js preview-story
227
- class DemoReadonlyState extends LitElement {
228
- static get properties() {
229
- return { readOnly: { type: Boolean } };
230
- }
231
-
232
- constructor() {
233
- super();
234
- /** @type {string[]} */
235
- this.readOnly = true;
236
- }
237
-
238
- get combobox() {
239
- return /** @type {LionCombobox} */ (this.shadowRoot?.querySelector('#combobox'));
240
- }
241
-
242
- /**
243
- * @param {InputEvent & {target: HTMLInputElement}} e
244
- */
245
- toggleReadonly(e) {
246
- this.readOnly = !this.readOnly;
247
- this.requestUpdate();
248
- }
249
-
250
- render() {
251
- return html`
252
- <lion-button @click=${this.toggleReadonly}>Toggle readonly</lion-button> ReadOnly state:
253
- ${this.readOnly}
254
- <lion-combobox name="search" label="Search" ?readOnly=${this.readOnly}>
255
- ${lazyRender(
256
- listboxData.map(
257
- entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `,
258
- ),
259
- )}
260
- </lion-combobox>
261
- `;
262
- }
263
- }
264
- customElements.define('demo-readonly-state', DemoReadonlyState);
265
- export const readonlyState = () => html`<demo-readonly-state></demo-readonly-state>`;
266
- ```
267
-
268
- ## Options
269
-
270
- ```js preview-story
271
- export const showAllOnEmpty = () => html`
272
- <lion-combobox
273
- name="combo"
274
- label="Show all on empty"
275
- help-text="Shows all (options) on empty (textbox has no value)"
276
- show-all-on-empty
277
- >
278
- ${lazyRender(
279
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
280
- )}
281
- </lion-combobox>
282
- `;
283
- ```
284
-
285
- ### Changing defaults
286
-
287
- By default `selection-follows-focus` will be true (aligned with the
288
- wai-aria examples and the native `<datalist>`).
289
- It is possible to disable this behavior, so the active/focused and checked/selected values
290
- will be kept track of independently.
291
-
292
- > Note that, (just like in a listbox), selection-follows-focus will never be applicable for
293
- > multiselect comboboxes.
294
-
295
- ```js preview-story
296
- export const noSelectionFollowsFocus = () => html`
297
- <lion-combobox name="combo" label="No Selection Follows focus" .selectionFollowsFocus="${false}">
298
- ${lazyRender(
299
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
300
- )}
301
- </lion-combobox>
302
- `;
303
- ```
304
-
305
- By default `rotate-keyboard-navigation` will be true (aligned with the
306
- wai-aria examples and the natve `<datalist>`).
307
- It is possible to disable this behavior, see example below
308
-
309
- ```js preview-story
310
- export const noRotateKeyboardNavigation = () => html`
311
- <lion-combobox
312
- name="combo"
313
- label="No Rotate Keyboard Navigation"
314
- .rotateKeyboardNavigation="${false}"
315
- >
316
- ${lazyRender(
317
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
318
- )}
319
- </lion-combobox>
320
- `;
321
- ```
322
-
323
- ## Multiple choice
324
-
325
- Add `multiple-choice` flag to allow multiple values to be selected.
326
- This will:
327
-
328
- - keep the listbox overlay open on click of an option
329
- - display a list of selected option representations next to the text box
330
- - make the value of type `Array` instead of `String`
331
-
332
- > Please note that the lion-combobox-selection-display below is not exposed and only serves
333
- > as an example. The selection part of a multiselect combobox is not yet accessible. Please keep
334
- > in mind that for now, as a Subclasser, you would have to take care of this part yourself.
335
- > Also keep in mind that the combobox organizes the selected list by its original index in the option list
336
-
337
- ```js preview-story
338
- export const multipleChoice = () => html`
339
- <lion-combobox name="combo" label="Multiple" multiple-choice>
340
- <demo-selection-display
341
- slot="selection-display"
342
- style="display: contents;"
343
- ></demo-selection-display>
344
- ${lazyRender(
345
- listboxData.map(
346
- (entry, i) => html`
347
- <lion-option .choiceValue="${entry}" ?checked="${i === 0}">${entry}</lion-option>
348
- `,
349
- ),
350
- )}
351
- </lion-combobox>
352
- `;
353
- ```
354
-
355
- Alternatively, the multi-choice flag can be combined with .requireMultipleMatch=false to allow users to enter their own options.
356
-
357
- > Note that the non-matching items will be displayed in the end of the list in the order that were entered. Since those have no index
358
- > in the option list, they don't have a representing value in the checkedIndex property.
359
-
360
- ```js preview-story
361
- export const multipleCustomizableChoice = () => html`
362
- <lion-combobox name="combo" label="Multiple" .requireOptionMatch="${false}" multiple-choice>
363
- <demo-selection-display
364
- slot="selection-display"
365
- style="display: contents;"
366
- ></demo-selection-display>
367
- ${lazyRender(
368
- listboxData.map(
369
- (entry, i) => html`
370
- <lion-option .choiceValue="${entry}" ?checked="${i === 0}">${entry}</lion-option>
371
- `,
372
- ),
373
- )}
374
- </lion-combobox>
375
- `;
376
- ```
377
-
378
- ## Validation
379
-
380
- The combobox works with a `Required` validator to check if it is empty.
381
-
382
- By default the a check is made which makes sure the value matches an option. This only works if `requireOptionMatch` is set to true.
383
-
384
- ```js preview-story
385
- export const validation = () => html`
386
- <lion-combobox name="combo" label="Validation" .validators="${[new Required()]}">
387
- ${lazyRender(
388
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
389
- )}
390
- </lion-combobox>
391
- `;
392
- ```
393
-
394
- ## Invoker button
395
-
396
- ```js preview-story
397
- export const invokerButton = () => html`
398
- <lion-combobox
399
- .modelValue="${listboxData[1]}"
400
- autocomplete="none"
401
- name="combo"
402
- label="Invoker Button"
403
- @click="${({ currentTarget: el }) => {
404
- el.opened = !el.opened;
405
- }}"
406
- >
407
- <button slot="suffix" type="button" tabindex="-1">▼</button>
408
- ${lazyRender(
409
- listboxData.map(entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `),
410
- )}
411
- </lion-combobox>
412
- `;
413
- ```
414
-
415
- ## Server interaction
416
-
417
- It's possible to fetch data from server side. When options are rerendered into the combobox,
418
- the autocompletion (highlighting/selecting etc.) functionality of the combobox is triggered.
419
-
420
- ```js preview-story
421
- const comboboxData = ['lorem', 'ipsum', 'dolor', 'sit', 'amet'];
422
- let rejectPrev;
423
- /**
424
- * @param {string} val
425
- */
426
- function fetchMyData(val) {
427
- if (rejectPrev) {
428
- rejectPrev();
429
- }
430
- const results = listboxData.filter(item => item.toLowerCase().includes(val.toLowerCase()));
431
- return new Promise((resolve, reject) => {
432
- rejectPrev = reject;
433
- setTimeout(() => {
434
- resolve(results);
435
- }, 1000);
436
- });
437
- }
438
- class DemoServerSide extends LitElement {
439
- static get properties() {
440
- return { options: { type: Array } };
441
- }
442
-
443
- constructor() {
444
- super();
445
- /** @type {string[]} */
446
- this.options = [];
447
- }
448
-
449
- get combobox() {
450
- return /** @type {LionCombobox} */ (this.shadowRoot?.querySelector('#combobox'));
451
- }
452
-
453
- /**
454
- * @param {InputEvent & {target: HTMLInputElement}} e
455
- */
456
- async fetchMyDataAndRender(e) {
457
- this.loading = true;
458
- this.requestUpdate();
459
- try {
460
- this.options = await fetchMyData(e.target.value);
461
- this.loading = false;
462
- this.requestUpdate();
463
- } catch (_) {}
464
- }
465
-
466
- render() {
467
- return html`
468
- <lion-combobox
469
- .showAllOnEmpty="${true}"
470
- id="combobox"
471
- @input="${this.fetchMyDataAndRender}"
472
- .helpText="Returned from server: [${this.options.join(', ')}]"
473
- >
474
- <label slot="label" aria-live="polite"
475
- >Server side completion
476
- ${this.loading ? html`<span style="font-style: italic;">(loading...)</span>` : ''}</label
477
- >
478
- ${repeat(
479
- this.options,
480
- entry => entry,
481
- entry => html` <lion-option .choiceValue="${entry}">${entry}</lion-option> `,
482
- )}
483
- </lion-combobox>
484
- `;
485
- }
486
- }
487
- customElements.define('demo-server-side', DemoServerSide);
488
- export const serverSideCompletion = () => html`<demo-server-side></demo-server-side>`;
489
- ```
490
-
491
- ## Complex options
492
-
493
- For performance reasons a complex object in the choiceValue property is unwanted. But it is possible to create more complex options.
494
-
495
- To highlight the correct elements of the option, each element should be tagged with a `data-key` attribute. Which will be used in the `_onFilterMatch` and `_onFilterUnmatch` functions.
496
-
497
- ```js preview-story
498
- class ComplexObjectCombobox extends LionCombobox {
499
- /**
500
- * @overridable
501
- * @param {LionOption & {__originalInnerHTML?:string}} option
502
- * @param {string} matchingString
503
- * @protected
504
- */
505
- _onFilterMatch(option, matchingString) {
506
- Array.from(option.children).forEach(child => {
507
- if (child.hasAttribute('data-key')) {
508
- this._highlightMatchedOption(child, matchingString);
509
- }
510
- });
511
- // Alternatively, an extension can add an animation here
512
- option.style.display = '';
513
- }
514
-
515
- /**
516
- * @overridable
517
- * @param {LionOption & {__originalInnerHTML?:string}} option
518
- * @param {string} [curValue]
519
- * @param {string} [prevValue]
520
- * @protected
521
- */
522
- _onFilterUnmatch(option, curValue, prevValue) {
523
- Array.from(option.children).forEach(child => {
524
- if (child.hasAttribute('data-key')) {
525
- this._unhighlightMatchedOption(child);
526
- }
527
- });
528
- // Alternatively, an extension can add an animation here
529
- option.style.display = 'none';
530
- }
531
- }
532
-
533
- customElements.define('complex-object-combobox', ComplexObjectCombobox);
534
-
535
- const onModelValueChanged = event => {
536
- console.log(`event.target.modelValue: ${JSON.stringify(event.target.modelValue)}`);
537
- };
538
-
539
- export const complexObjectChoiceValue = () =>
540
- html` <complex-object-combobox
541
- name="combo"
542
- label="Display only the label once selected"
543
- @model-value-changed="${onModelValueChanged}"
544
- >
545
- ${lazyRender(
546
- listboxComplexData.map(
547
- entry => html`
548
- <lion-option .choiceValue="${entry.label}">
549
- <div data-key>${entry.label}</div>
550
- <small>${entry.description}</small>
551
- </lion-option>
552
- `,
553
- ),
554
- )}
555
- </complex-object-combobox>`;
556
- ```
557
-
558
- ## Listbox compatibility
559
-
560
- All configurations that can be applied to `lion-listbox`, can be applied to `lion-combobox` as well.
561
- See the [listbox documentation](https://github.com/ing-bank/lion/blob/bc7530702f41df90a4ca3059cfb9edb08e27f742/docs/components/listbox/overview.md) for more information.
@@ -1,61 +0,0 @@
1
- ---
2
- parts:
3
- - API Table
4
- - Dialog
5
- title: 'Dialog: API Table'
6
- eleventyNavigation:
7
- key: API Table >> Dialog
8
- title: API Table
9
- order: 90
10
- parent: Dialog
11
- ---
12
- # Dialog: API Table
13
-
14
-
15
- ## class: `LionDialog`, `lion-dialog`
16
-
17
- ### Fields
18
-
19
- | Name | Privacy | Type | Default | Description | Inherited From |
20
- | ---------------------------- | --------- | ------------------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
21
- | `config` | public | `Partial<OverlayConfig>` | `{}` | Configure the many options of the \`OverlayController\` | OverlayMixin |
22
- | `isAlertDialog` | public | `boolean` | `false` | | |
23
- | `opened` | public | `boolean` | `false` | If you add the opened attribute a dialog will be opened on page load. The invoker can be left out&#xA;in case the user does not need to be able to reopen the dialog. | OverlayMixin |
24
- | `_overlayBackdropNode` | protected | | | | OverlayMixin |
25
- | `_overlayContentNode` | protected | | | | OverlayMixin |
26
- | `_overlayContentWrapperNode` | protected | | | | OverlayMixin |
27
- | `_overlayInvokerNode` | protected | | | The node that opens/closes this overlay.&#xA;&#xA;Resolved in a stable, declarative way (independent of the exact DOM order)&#xA;by looking, in order, for:&#xA;1\. a child with \`\[slot="invoker"]\`&#xA;2\. any element in the same root that opts in via \`\[data-invoker]\` and&#xA; references this host by id (\`for="\<id>"\`)&#xA;3\. a preceding sibling that opts in via \`\[data-invoker]\` | OverlayMixin |
28
- | `_overlayReferenceNode` | protected | | | | OverlayMixin |
29
-
30
- ### Methods
31
-
32
- | Name | Privacy | Description | Parameters | Return | Inherited From |
33
- | ---------------------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | ------------------- | -------------- |
34
- | `close` | public | Hides the overlay | | | OverlayMixin |
35
- | `open` | public | Shows the overlay | | | OverlayMixin |
36
- | `repositionOverlay` | public | Sometimes it's needed to recompute Popper position of an overlay, for instance when we have&#xA;an opened combobox and the surrounding context changes (the space consumed by the textbox&#xA;increases vertically) | | | OverlayMixin |
37
- | `toggle` | public | Toggles the overlay | | | OverlayMixin |
38
- | `_defineOverlay` | protected | | `{ contentNode, invokerNode, referenceNode, backdropNode, contentWrapperNode }, config: DefineOverlayConfig` | `OverlayController` | OverlayMixin |
39
- | `_defineOverlayConfig` | protected | | | `OverlayConfig` | OverlayMixin |
40
- | `_getInvokerNode` | protected | | | `Element\|null` | OverlayMixin |
41
- | `_isPermanentlyDisconnected` | protected | When we're moving around in dom, disconnectedCallback gets called.&#xA;Before we decide to teardown, let's wait to see if we were not just moving nodes around. | | `Promise<boolean>` | OverlayMixin |
42
- | `_setOpenedWithoutPropertyEffects` | protected | When the opened state is changed by an Application Developer,cthe OverlayController is&#xA;requested to show/hide. It might happen that this request is not honoured&#xA;(intercepted in before-hide for instance), so that we need to sync the controller state&#xA;to this webcomponent again, preventing eternal loops. | `newOpened: boolean` | | OverlayMixin |
43
- | `_setupOpenCloseListeners` | protected | | | | OverlayMixin |
44
- | `_setupOverlayCtrl` | protected | | | | OverlayMixin |
45
- | `_teardownOpenCloseListeners` | protected | | | | OverlayMixin |
46
- | `_teardownOverlayCtrl` | protected | | | | OverlayMixin |
47
-
48
- ### Events
49
-
50
- | Name | Type | Description | Inherited From |
51
- | ---------------- | ------------- | ----------- | -------------- |
52
- | `opened-changed` | `CustomEvent` | | OverlayMixin |
53
-
54
- ### Attributes
55
-
56
- | Name | Field | Inherited From |
57
- | ----------------- | ------------- | -------------- |
58
- | `is-alert-dialog` | isAlertDialog | |
59
- | `opened` | opened | OverlayMixin |
60
-
61
- <hr/>
@@ -1,13 +0,0 @@
1
- ---
2
- title: Dialog
3
- parts:
4
- - Dialog
5
- eleventyNavigation:
6
- key: Dialog
7
- order: 20
8
- title: Dialog
9
- ---
10
-
11
- # Dialog
12
-
13
- -> go to Overview