q2-tecton-elements 1.50.1 → 1.51.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 (578) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +21 -12
  2. package/dist/cjs/click-elsewhere_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/index-9aa4a776.js +235 -0
  4. package/dist/cjs/index-9aa4a776.js.map +1 -0
  5. package/dist/cjs/{index-43010ce4.js → index-f69742cf.js} +1 -1
  6. package/dist/cjs/{index-43010ce4.js.map → index-f69742cf.js.map} +1 -1
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/q2-action-group.cjs.entry.js +50 -0
  9. package/dist/cjs/q2-action-group.cjs.entry.js.map +1 -0
  10. package/dist/cjs/q2-action-sheet.cjs.entry.js +1364 -3
  11. package/dist/cjs/q2-action-sheet.cjs.entry.js.map +1 -1
  12. package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-badge_7.cjs.entry.js +23 -13
  14. package/dist/cjs/q2-badge_7.cjs.entry.js.map +1 -1
  15. package/dist/cjs/q2-calendar.cjs.entry.js +2 -2
  16. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  17. package/dist/cjs/q2-carousel-pane.cjs.entry.js +3 -3
  18. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  19. package/dist/cjs/q2-chart-area.cjs.entry.js +2 -2
  20. package/dist/cjs/q2-chart-area.cjs.entry.js.map +1 -1
  21. package/dist/cjs/q2-chart-bar.cjs.entry.js +2 -2
  22. package/dist/cjs/q2-chart-bar.cjs.entry.js.map +1 -1
  23. package/dist/cjs/q2-chart-donut.cjs.entry.js +16 -16
  24. package/dist/cjs/q2-chart-donut.cjs.entry.js.map +1 -1
  25. package/dist/cjs/q2-checkbox-group.cjs.entry.js +2 -2
  26. package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
  27. package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
  28. package/dist/cjs/q2-currency.cjs.entry.js +1 -1
  29. package/dist/cjs/q2-data-table.cjs.entry.js +62 -62
  30. package/dist/cjs/q2-data-table.cjs.entry.js.map +1 -1
  31. package/dist/cjs/q2-detail.cjs.entry.js +2 -2
  32. package/dist/cjs/q2-dropdown-item.cjs.entry.js +2 -2
  33. package/dist/cjs/q2-dropdown-item.cjs.entry.js.map +1 -1
  34. package/dist/cjs/q2-dropdown.cjs.entry.js +79 -7
  35. package/dist/cjs/q2-dropdown.cjs.entry.js.map +1 -1
  36. package/dist/cjs/q2-editable-field.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-formatted-text.cjs.entry.js +72 -0
  38. package/dist/cjs/q2-formatted-text.cjs.entry.js.map +1 -0
  39. package/dist/cjs/q2-item.cjs.entry.js +2 -2
  40. package/dist/cjs/q2-legend.cjs.entry.js +2 -2
  41. package/dist/cjs/q2-legend.cjs.entry.js.map +1 -1
  42. package/dist/cjs/q2-link.cjs.entry.js +64 -0
  43. package/dist/cjs/q2-link.cjs.entry.js.map +1 -0
  44. package/dist/cjs/q2-list.cjs.entry.js +2 -2
  45. package/dist/cjs/q2-loc.cjs.entry.js +2 -2
  46. package/dist/cjs/q2-message.cjs.entry.js +2 -2
  47. package/dist/cjs/q2-month-picker.cjs.entry.js +3 -3
  48. package/dist/cjs/q2-optgroup.cjs.entry.js +2 -2
  49. package/dist/cjs/q2-option-list.cjs.entry.js +9 -4
  50. package/dist/cjs/q2-option-list.cjs.entry.js.map +1 -1
  51. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  52. package/dist/cjs/q2-pagination.cjs.entry.js +90 -9
  53. package/dist/cjs/q2-pagination.cjs.entry.js.map +1 -1
  54. package/dist/cjs/q2-pill.cjs.entry.js +26 -5
  55. package/dist/cjs/q2-pill.cjs.entry.js.map +1 -1
  56. package/dist/cjs/q2-radio-group.cjs.entry.js +2 -2
  57. package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/q2-radio.cjs.entry.js +1 -1
  59. package/dist/cjs/q2-relative-time.cjs.entry.js +3 -3
  60. package/dist/cjs/q2-resize-observer.cjs.entry.js +96 -0
  61. package/dist/cjs/q2-resize-observer.cjs.entry.js.map +1 -0
  62. package/dist/cjs/q2-section.cjs.entry.js +27 -3
  63. package/dist/cjs/q2-section.cjs.entry.js.map +1 -1
  64. package/dist/cjs/q2-select.cjs.entry.js +7 -6
  65. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  66. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  67. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +2 -2
  68. package/dist/cjs/q2-stepper.cjs.entry.js +39 -3
  69. package/dist/cjs/q2-stepper.cjs.entry.js.map +1 -1
  70. package/dist/cjs/q2-tag.cjs.entry.js +3 -2
  71. package/dist/cjs/q2-tag.cjs.entry.js.map +1 -1
  72. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  73. package/dist/cjs/q2-textarea.cjs.entry.js +46 -11
  74. package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
  75. package/dist/cjs/q2-tooltip.cjs.entry.js +2 -2
  76. package/dist/cjs/q2-tooltip.cjs.entry.js.map +1 -1
  77. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -2
  78. package/dist/collection/collection-manifest.json +4 -0
  79. package/dist/collection/components/q2-action-group/q2-action-group.css +99 -0
  80. package/dist/collection/components/q2-action-group/q2-action-group.js +120 -0
  81. package/dist/collection/components/q2-action-group/q2-action-group.js.map +1 -0
  82. package/dist/collection/components/q2-action-group/test/q2-action-group.e2e.js +30 -0
  83. package/dist/collection/components/q2-action-group/test/q2-action-group.e2e.js.map +1 -0
  84. package/dist/collection/components/q2-action-group/test/q2-action-group.spec.js +156 -0
  85. package/dist/collection/components/q2-action-group/test/q2-action-group.spec.js.map +1 -0
  86. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +3 -2
  87. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js.map +1 -1
  88. package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
  89. package/dist/collection/components/q2-avatar/test/q2-avatar-test.e2e.js +14 -9
  90. package/dist/collection/components/q2-avatar/test/q2-avatar-test.e2e.js.map +1 -1
  91. package/dist/collection/components/q2-badge/test/q2-badge-test.e2e.js +14 -9
  92. package/dist/collection/components/q2-badge/test/q2-badge-test.e2e.js.map +1 -1
  93. package/dist/collection/components/q2-btn/test/q2-btn-test.e2e.js +14 -9
  94. package/dist/collection/components/q2-btn/test/q2-btn-test.e2e.js.map +1 -1
  95. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  96. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js +227 -223
  97. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js.map +1 -1
  98. package/dist/collection/components/q2-card/test/q2-card-test.e2e.js +12 -7
  99. package/dist/collection/components/q2-card/test/q2-card-test.e2e.js.map +1 -1
  100. package/dist/collection/components/q2-carousel/test/q2-carousel-test.e2e.js +49 -45
  101. package/dist/collection/components/q2-carousel/test/q2-carousel-test.e2e.js.map +1 -1
  102. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  103. package/dist/collection/components/q2-chart-area/q2-chart-area.js +2 -2
  104. package/dist/collection/components/q2-chart-area/q2-chart-area.js.map +1 -1
  105. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js +12 -7
  106. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js.map +1 -1
  107. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +2 -2
  108. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js.map +1 -1
  109. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.e2e.js +16 -11
  110. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.e2e.js.map +1 -1
  111. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +15 -15
  112. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js.map +1 -1
  113. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js +32 -26
  114. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js.map +1 -1
  115. package/dist/collection/components/q2-checkbox/test/q2-checkbox-test.e2e.js +12 -7
  116. package/dist/collection/components/q2-checkbox/test/q2-checkbox-test.e2e.js.map +1 -1
  117. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js +2 -2
  118. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js.map +1 -1
  119. package/dist/collection/components/q2-checkbox-group/test/q2-checkbox-group-test.e2e.js +22 -17
  120. package/dist/collection/components/q2-checkbox-group/test/q2-checkbox-group-test.e2e.js.map +1 -1
  121. package/dist/collection/components/q2-currency/q2-currency.js +1 -1
  122. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js +12 -7
  123. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js.map +1 -1
  124. package/dist/collection/components/q2-data-table/q2-data-table.js +104 -104
  125. package/dist/collection/components/q2-data-table/q2-data-table.js.map +1 -1
  126. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js +42 -24
  127. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js.map +1 -1
  128. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  129. package/dist/collection/components/q2-detail/test/q2-detail-test.e2e.js +12 -7
  130. package/dist/collection/components/q2-detail/test/q2-detail-test.e2e.js.map +1 -1
  131. package/dist/collection/components/q2-dropdown/q2-dropdown.js +207 -7
  132. package/dist/collection/components/q2-dropdown/q2-dropdown.js.map +1 -1
  133. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js +297 -135
  134. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js.map +1 -1
  135. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js +1 -1
  136. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js.map +1 -1
  137. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js +18 -13
  138. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js.map +1 -1
  139. package/dist/collection/components/q2-editable-field/test/q2-editable-field-test.e2e.js +14 -18
  140. package/dist/collection/components/q2-editable-field/test/q2-editable-field-test.e2e.js.map +1 -1
  141. package/dist/collection/components/q2-formatted-text/q2-formatted-text.css +94 -0
  142. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +230 -0
  143. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js.map +1 -0
  144. package/dist/collection/components/q2-formatted-text/test/q2-formatted-text-test.e2e.js +430 -0
  145. package/dist/collection/components/q2-formatted-text/test/q2-formatted-text-test.e2e.js.map +1 -0
  146. package/dist/collection/components/q2-icon/test/q2-icon-test.e2e.js +14 -9
  147. package/dist/collection/components/q2-icon/test/q2-icon-test.e2e.js.map +1 -1
  148. package/dist/collection/components/q2-input/q2-input.css +9 -0
  149. package/dist/collection/components/q2-input/q2-input.js +7 -8
  150. package/dist/collection/components/q2-input/q2-input.js.map +1 -1
  151. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js +50 -33
  152. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js.map +1 -1
  153. package/dist/collection/components/q2-item/q2-item.js +1 -1
  154. package/dist/collection/components/q2-item/test/q2-item-test.e2e.js +32 -7
  155. package/dist/collection/components/q2-item/test/q2-item-test.e2e.js.map +1 -1
  156. package/dist/collection/components/q2-legend/q2-legend.css +1 -1
  157. package/dist/collection/components/q2-legend/q2-legend.js +1 -1
  158. package/dist/collection/components/q2-legend/test/q2-legend-test.e2e.js +13 -8
  159. package/dist/collection/components/q2-legend/test/q2-legend-test.e2e.js.map +1 -1
  160. package/dist/collection/components/q2-link/q2-link.css +146 -0
  161. package/dist/collection/components/q2-link/q2-link.js +242 -0
  162. package/dist/collection/components/q2-link/q2-link.js.map +1 -0
  163. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js +145 -0
  164. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js.map +1 -0
  165. package/dist/collection/components/q2-list/q2-list.js +1 -1
  166. package/dist/collection/components/q2-list/test/q2-list-test.e2e.js +12 -7
  167. package/dist/collection/components/q2-list/test/q2-list-test.e2e.js.map +1 -1
  168. package/dist/collection/components/q2-loading/test/q2-loading-element-test.e2e.js +14 -9
  169. package/dist/collection/components/q2-loading/test/q2-loading-element-test.e2e.js.map +1 -1
  170. package/dist/collection/components/q2-loading/test/q2-loading-test.e2e.js +14 -9
  171. package/dist/collection/components/q2-loading/test/q2-loading-test.e2e.js.map +1 -1
  172. package/dist/collection/components/q2-loc/q2-loc.js +1 -1
  173. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js +16 -11
  174. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js.map +1 -1
  175. package/dist/collection/components/q2-message/q2-message.js +1 -1
  176. package/dist/collection/components/q2-message/test/q2-message-test.e2e.js +14 -9
  177. package/dist/collection/components/q2-message/test/q2-message-test.e2e.js.map +1 -1
  178. package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
  179. package/dist/collection/components/q2-optgroup/test/q2-optgroup-test.e2e.js +20 -13
  180. package/dist/collection/components/q2-optgroup/test/q2-optgroup-test.e2e.js.map +1 -1
  181. package/dist/collection/components/q2-option/q2-option.js +1 -1
  182. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js +28 -12
  183. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js.map +1 -1
  184. package/dist/collection/components/q2-option-list/q2-option-list.js +7 -5
  185. package/dist/collection/components/q2-option-list/q2-option-list.js.map +1 -1
  186. package/dist/collection/components/q2-option-list/test/q2-option-list-test.e2e.js +415 -405
  187. package/dist/collection/components/q2-option-list/test/q2-option-list-test.e2e.js.map +1 -1
  188. package/dist/collection/components/q2-pagination/q2-pagination.js +230 -14
  189. package/dist/collection/components/q2-pagination/q2-pagination.js.map +1 -1
  190. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js +138 -15
  191. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js.map +1 -1
  192. package/dist/collection/components/q2-pill/q2-pill.css +12 -0
  193. package/dist/collection/components/q2-pill/q2-pill.js +43 -3
  194. package/dist/collection/components/q2-pill/q2-pill.js.map +1 -1
  195. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js +412 -212
  196. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js.map +1 -1
  197. package/dist/collection/components/q2-popover/q2-popover.js +37 -11
  198. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  199. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js +296 -236
  200. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js.map +1 -1
  201. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js +3 -3
  202. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js.map +1 -1
  203. package/dist/collection/components/q2-radio/test/q2-radio-test.e2e.js +21 -7
  204. package/dist/collection/components/q2-radio/test/q2-radio-test.e2e.js.map +1 -1
  205. package/dist/collection/components/q2-radio-group/q2-radio-group.js +2 -2
  206. package/dist/collection/components/q2-radio-group/q2-radio-group.js.map +1 -1
  207. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.e2e.js +32 -26
  208. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.e2e.js.map +1 -1
  209. package/dist/collection/components/q2-relative-time/q2-relative-time.js +1 -1
  210. package/dist/collection/components/q2-relative-time/test/q2-relative-time-test.e2e.js +12 -7
  211. package/dist/collection/components/q2-relative-time/test/q2-relative-time-test.e2e.js.map +1 -1
  212. package/dist/collection/components/q2-resize-observer/q2-resize-observer.css +71 -0
  213. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +166 -0
  214. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js.map +1 -0
  215. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.e2e.js +83 -0
  216. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.e2e.js.map +1 -0
  217. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.spec.js +66 -0
  218. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.spec.js.map +1 -0
  219. package/dist/collection/components/q2-section/q2-section.js +78 -2
  220. package/dist/collection/components/q2-section/q2-section.js.map +1 -1
  221. package/dist/collection/components/q2-section/test/q2-section-test.e2e.js +39 -9
  222. package/dist/collection/components/q2-section/test/q2-section-test.e2e.js.map +1 -1
  223. package/dist/collection/components/q2-select/q2-select.js +23 -5
  224. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  225. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js +695 -676
  226. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js.map +1 -1
  227. package/dist/collection/components/q2-stepper/q2-stepper.js +76 -2
  228. package/dist/collection/components/q2-stepper/q2-stepper.js.map +1 -1
  229. package/dist/collection/components/q2-stepper/test/q2-stepper-test.e2e.js +183 -87
  230. package/dist/collection/components/q2-stepper/test/q2-stepper-test.e2e.js.map +1 -1
  231. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +2 -2
  232. package/dist/collection/components/q2-stepper-pane/test/q2-stepper-pane-test.e2e.js +20 -9
  233. package/dist/collection/components/q2-stepper-pane/test/q2-stepper-pane-test.e2e.js.map +1 -1
  234. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
  235. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js +71 -67
  236. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js.map +1 -1
  237. package/dist/collection/components/q2-tab-container/q2-tab-container.js +50 -7
  238. package/dist/collection/components/q2-tab-container/q2-tab-container.js.map +1 -1
  239. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.e2e.js +89 -65
  240. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.e2e.js.map +1 -1
  241. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  242. package/dist/collection/components/q2-tab-pane/test/q2-tab-pane-test.e2e.js +14 -9
  243. package/dist/collection/components/q2-tab-pane/test/q2-tab-pane-test.e2e.js.map +1 -1
  244. package/dist/collection/components/q2-tag/q2-tag.js +19 -1
  245. package/dist/collection/components/q2-tag/q2-tag.js.map +1 -1
  246. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js +47 -28
  247. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js.map +1 -1
  248. package/dist/collection/components/q2-textarea/q2-textarea.js +51 -13
  249. package/dist/collection/components/q2-textarea/q2-textarea.js.map +1 -1
  250. package/dist/collection/components/q2-textarea/test/q2-textarea-test.e2e.js +31 -10
  251. package/dist/collection/components/q2-textarea/test/q2-textarea-test.e2e.js.map +1 -1
  252. package/dist/collection/components/q2-tooltip/q2-tooltip.css +5 -2
  253. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.e2e.js +51 -13
  254. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.e2e.js.map +1 -1
  255. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
  256. package/dist/collection/components/tecton-tab-pane/test/tecton-tab-pane-test.e2e.js +18 -13
  257. package/dist/collection/components/tecton-tab-pane/test/tecton-tab-pane-test.e2e.js.map +1 -1
  258. package/dist/collection/utils/helpers.js +65 -0
  259. package/dist/collection/utils/helpers.js.map +1 -1
  260. package/dist/collection/utils/index.js +11 -11
  261. package/dist/collection/utils/index.js.map +1 -1
  262. package/dist/collection/utils/sanitize-html-string.js +10 -0
  263. package/dist/collection/utils/sanitize-html-string.js.map +1 -0
  264. package/dist/collection/utils/sanitize-regex-string.js +4 -0
  265. package/dist/collection/utils/sanitize-regex-string.js.map +1 -0
  266. package/dist/components/index.js +8 -0
  267. package/dist/components/index.js.map +1 -1
  268. package/dist/components/index2.js +11 -1356
  269. package/dist/components/index2.js.map +1 -1
  270. package/dist/components/q2-action-group.d.ts +11 -0
  271. package/dist/components/q2-action-group.js +75 -0
  272. package/dist/components/q2-action-group.js.map +1 -0
  273. package/dist/components/q2-action-sheet.js +1363 -2
  274. package/dist/components/q2-action-sheet.js.map +1 -1
  275. package/dist/components/q2-avatar2.js +1 -1
  276. package/dist/components/q2-btn2.js +1 -1
  277. package/dist/components/q2-carousel-pane.js +2 -2
  278. package/dist/components/q2-chart-area.js +1 -1
  279. package/dist/components/q2-chart-area.js.map +1 -1
  280. package/dist/components/q2-chart-bar.js +1 -1
  281. package/dist/components/q2-chart-bar.js.map +1 -1
  282. package/dist/components/q2-chart-donut.js +15 -15
  283. package/dist/components/q2-chart-donut.js.map +1 -1
  284. package/dist/components/q2-checkbox-group.js +2 -2
  285. package/dist/components/q2-checkbox-group.js.map +1 -1
  286. package/dist/components/q2-currency.js +1 -1
  287. package/dist/components/q2-data-table.js +64 -64
  288. package/dist/components/q2-data-table.js.map +1 -1
  289. package/dist/components/q2-detail.js +1 -1
  290. package/dist/components/q2-dropdown-item2.js +1 -1
  291. package/dist/components/q2-dropdown-item2.js.map +1 -1
  292. package/dist/components/q2-dropdown.js +84 -7
  293. package/dist/components/q2-dropdown.js.map +1 -1
  294. package/dist/components/q2-formatted-text.d.ts +11 -0
  295. package/dist/components/q2-formatted-text.js +101 -0
  296. package/dist/components/q2-formatted-text.js.map +1 -0
  297. package/dist/components/q2-input2.js +4 -5
  298. package/dist/components/q2-input2.js.map +1 -1
  299. package/dist/components/q2-item.js +1 -1
  300. package/dist/components/q2-legend2.js +2 -2
  301. package/dist/components/q2-legend2.js.map +1 -1
  302. package/dist/components/q2-link.d.ts +11 -0
  303. package/dist/components/q2-link.js +93 -0
  304. package/dist/components/q2-link.js.map +1 -0
  305. package/dist/components/q2-list.js +1 -1
  306. package/dist/components/q2-loc.js +1 -1
  307. package/dist/components/q2-message2.js +1 -1
  308. package/dist/components/q2-month-picker.js +2 -2
  309. package/dist/components/q2-optgroup2.js +1 -1
  310. package/dist/components/q2-option-list2.js +8 -3
  311. package/dist/components/q2-option-list2.js.map +1 -1
  312. package/dist/components/q2-option2.js +1 -1
  313. package/dist/components/q2-pagination.js +97 -10
  314. package/dist/components/q2-pagination.js.map +1 -1
  315. package/dist/components/q2-pill.js +29 -5
  316. package/dist/components/q2-pill.js.map +1 -1
  317. package/dist/components/q2-popover2.js +22 -12
  318. package/dist/components/q2-popover2.js.map +1 -1
  319. package/dist/components/q2-radio-group.js +2 -2
  320. package/dist/components/q2-radio-group.js.map +1 -1
  321. package/dist/components/q2-relative-time.js +1 -1
  322. package/dist/components/q2-resize-observer.d.ts +11 -0
  323. package/dist/components/q2-resize-observer.js +8 -0
  324. package/dist/components/q2-resize-observer.js.map +1 -0
  325. package/dist/components/q2-resize-observer2.js +112 -0
  326. package/dist/components/q2-resize-observer2.js.map +1 -0
  327. package/dist/components/q2-section.js +30 -4
  328. package/dist/components/q2-section.js.map +1 -1
  329. package/dist/components/q2-select2.js +7 -5
  330. package/dist/components/q2-select2.js.map +1 -1
  331. package/dist/components/q2-stepper-vertical.js +1 -1
  332. package/dist/components/q2-stepper.js +40 -3
  333. package/dist/components/q2-stepper.js.map +1 -1
  334. package/dist/components/q2-tab-container.js +20 -8
  335. package/dist/components/q2-tab-container.js.map +1 -1
  336. package/dist/components/q2-tab-pane.js +1 -1
  337. package/dist/components/q2-tag.js +3 -1
  338. package/dist/components/q2-tag.js.map +1 -1
  339. package/dist/components/q2-textarea.js +49 -12
  340. package/dist/components/q2-textarea.js.map +1 -1
  341. package/dist/components/q2-tooltip.js +1 -1
  342. package/dist/components/q2-tooltip.js.map +1 -1
  343. package/dist/components/tecton-tab-pane.js +2 -2
  344. package/dist/esm/click-elsewhere_2.entry.js +21 -12
  345. package/dist/esm/click-elsewhere_2.entry.js.map +1 -1
  346. package/dist/esm/{index-c6d74f10.js → index-3184c760.js} +1 -1
  347. package/dist/esm/{index-c6d74f10.js.map → index-3184c760.js.map} +1 -1
  348. package/dist/esm/index-844fc010.js +211 -0
  349. package/dist/esm/index-844fc010.js.map +1 -0
  350. package/dist/esm/loader.js +1 -1
  351. package/dist/esm/q2-action-group.entry.js +46 -0
  352. package/dist/esm/q2-action-group.entry.js.map +1 -0
  353. package/dist/esm/q2-action-sheet.entry.js +1363 -2
  354. package/dist/esm/q2-action-sheet.entry.js.map +1 -1
  355. package/dist/esm/q2-avatar.entry.js +1 -1
  356. package/dist/esm/q2-badge_7.entry.js +23 -13
  357. package/dist/esm/q2-badge_7.entry.js.map +1 -1
  358. package/dist/esm/q2-calendar.entry.js +2 -2
  359. package/dist/esm/q2-card.entry.js +1 -1
  360. package/dist/esm/q2-carousel-pane.entry.js +3 -3
  361. package/dist/esm/q2-carousel.entry.js +1 -1
  362. package/dist/esm/q2-chart-area.entry.js +2 -2
  363. package/dist/esm/q2-chart-area.entry.js.map +1 -1
  364. package/dist/esm/q2-chart-bar.entry.js +2 -2
  365. package/dist/esm/q2-chart-bar.entry.js.map +1 -1
  366. package/dist/esm/q2-chart-donut.entry.js +16 -16
  367. package/dist/esm/q2-chart-donut.entry.js.map +1 -1
  368. package/dist/esm/q2-checkbox-group.entry.js +2 -2
  369. package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
  370. package/dist/esm/q2-checkbox.entry.js +1 -1
  371. package/dist/esm/q2-currency.entry.js +1 -1
  372. package/dist/esm/q2-data-table.entry.js +62 -62
  373. package/dist/esm/q2-data-table.entry.js.map +1 -1
  374. package/dist/esm/q2-detail.entry.js +2 -2
  375. package/dist/esm/q2-dropdown-item.entry.js +2 -2
  376. package/dist/esm/q2-dropdown-item.entry.js.map +1 -1
  377. package/dist/esm/q2-dropdown.entry.js +79 -7
  378. package/dist/esm/q2-dropdown.entry.js.map +1 -1
  379. package/dist/esm/q2-editable-field.entry.js +1 -1
  380. package/dist/esm/q2-formatted-text.entry.js +68 -0
  381. package/dist/esm/q2-formatted-text.entry.js.map +1 -0
  382. package/dist/esm/q2-item.entry.js +2 -2
  383. package/dist/esm/q2-legend.entry.js +2 -2
  384. package/dist/esm/q2-legend.entry.js.map +1 -1
  385. package/dist/esm/q2-link.entry.js +60 -0
  386. package/dist/esm/q2-link.entry.js.map +1 -0
  387. package/dist/esm/q2-list.entry.js +2 -2
  388. package/dist/esm/q2-loc.entry.js +2 -2
  389. package/dist/esm/q2-message.entry.js +2 -2
  390. package/dist/esm/q2-month-picker.entry.js +3 -3
  391. package/dist/esm/q2-optgroup.entry.js +2 -2
  392. package/dist/esm/q2-option-list.entry.js +9 -4
  393. package/dist/esm/q2-option-list.entry.js.map +1 -1
  394. package/dist/esm/q2-option.entry.js +1 -1
  395. package/dist/esm/q2-pagination.entry.js +90 -9
  396. package/dist/esm/q2-pagination.entry.js.map +1 -1
  397. package/dist/esm/q2-pill.entry.js +26 -5
  398. package/dist/esm/q2-pill.entry.js.map +1 -1
  399. package/dist/esm/q2-radio-group.entry.js +2 -2
  400. package/dist/esm/q2-radio-group.entry.js.map +1 -1
  401. package/dist/esm/q2-radio.entry.js +1 -1
  402. package/dist/esm/q2-relative-time.entry.js +3 -3
  403. package/dist/esm/q2-resize-observer.entry.js +92 -0
  404. package/dist/esm/q2-resize-observer.entry.js.map +1 -0
  405. package/dist/esm/q2-section.entry.js +27 -3
  406. package/dist/esm/q2-section.entry.js.map +1 -1
  407. package/dist/esm/q2-select.entry.js +7 -6
  408. package/dist/esm/q2-select.entry.js.map +1 -1
  409. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  410. package/dist/esm/q2-stepper-vertical.entry.js +2 -2
  411. package/dist/esm/q2-stepper.entry.js +39 -3
  412. package/dist/esm/q2-stepper.entry.js.map +1 -1
  413. package/dist/esm/q2-tag.entry.js +3 -2
  414. package/dist/esm/q2-tag.entry.js.map +1 -1
  415. package/dist/esm/q2-tecton-elements.js +1 -1
  416. package/dist/esm/q2-textarea.entry.js +47 -12
  417. package/dist/esm/q2-textarea.entry.js.map +1 -1
  418. package/dist/esm/q2-tooltip.entry.js +2 -2
  419. package/dist/esm/q2-tooltip.entry.js.map +1 -1
  420. package/dist/esm/tecton-tab-pane.entry.js +2 -2
  421. package/dist/q2-tecton-elements/{p-0a3a804a.entry.js → p-06701928.entry.js} +2 -2
  422. package/dist/q2-tecton-elements/{p-0a3a804a.entry.js.map → p-06701928.entry.js.map} +1 -1
  423. package/dist/q2-tecton-elements/{p-5d936af5.entry.js → p-07d1c3ae.entry.js} +2 -2
  424. package/dist/q2-tecton-elements/p-1305f7ca.entry.js +2 -0
  425. package/dist/q2-tecton-elements/p-1305f7ca.entry.js.map +1 -0
  426. package/dist/q2-tecton-elements/p-15ac45d6.js +2 -0
  427. package/dist/q2-tecton-elements/p-15ac45d6.js.map +1 -0
  428. package/dist/q2-tecton-elements/{p-ce4e6b41.entry.js → p-16910682.entry.js} +2 -2
  429. package/dist/q2-tecton-elements/p-16910682.entry.js.map +1 -0
  430. package/dist/q2-tecton-elements/p-188eb162.entry.js +3 -0
  431. package/dist/q2-tecton-elements/p-188eb162.entry.js.map +1 -0
  432. package/dist/q2-tecton-elements/{p-58cafc0d.entry.js → p-1c760a89.entry.js} +2 -2
  433. package/dist/q2-tecton-elements/{p-074ae80c.entry.js → p-1c88d057.entry.js} +2 -2
  434. package/dist/q2-tecton-elements/{p-3b0d3cd4.entry.js → p-20a3d6ed.entry.js} +2 -2
  435. package/dist/q2-tecton-elements/p-20a3d6ed.entry.js.map +1 -0
  436. package/dist/q2-tecton-elements/{p-77a0cc0c.entry.js → p-2733583e.entry.js} +2 -2
  437. package/dist/q2-tecton-elements/{p-4116579f.entry.js → p-3e428290.entry.js} +2 -2
  438. package/dist/q2-tecton-elements/p-3e428290.entry.js.map +1 -0
  439. package/dist/q2-tecton-elements/{p-072c5877.entry.js → p-4774e5b3.entry.js} +2 -2
  440. package/dist/q2-tecton-elements/{p-77272c4c.entry.js → p-490ef8e5.entry.js} +2 -2
  441. package/dist/q2-tecton-elements/{p-0a1dff75.entry.js → p-4e10550d.entry.js} +2 -2
  442. package/dist/q2-tecton-elements/p-4e10550d.entry.js.map +1 -0
  443. package/dist/q2-tecton-elements/{p-2ca6d44f.entry.js → p-50f7328f.entry.js} +2 -2
  444. package/dist/q2-tecton-elements/p-5637c486.entry.js +2 -0
  445. package/dist/q2-tecton-elements/p-5637c486.entry.js.map +1 -0
  446. package/dist/q2-tecton-elements/p-56df21b0.entry.js +2 -0
  447. package/dist/q2-tecton-elements/p-56df21b0.entry.js.map +1 -0
  448. package/dist/q2-tecton-elements/{p-34856c71.entry.js → p-5a834214.entry.js} +2 -2
  449. package/dist/q2-tecton-elements/{p-34856c71.entry.js.map → p-5a834214.entry.js.map} +1 -1
  450. package/dist/q2-tecton-elements/p-5f99a4a8.entry.js +2 -0
  451. package/dist/q2-tecton-elements/p-5f99a4a8.entry.js.map +1 -0
  452. package/dist/q2-tecton-elements/p-72d948b4.entry.js +2 -0
  453. package/dist/q2-tecton-elements/p-72d948b4.entry.js.map +1 -0
  454. package/dist/q2-tecton-elements/{p-3c7be0bb.entry.js → p-7903cd15.entry.js} +2 -2
  455. package/dist/q2-tecton-elements/p-7903cd15.entry.js.map +1 -0
  456. package/dist/q2-tecton-elements/{p-d2e1631a.entry.js → p-7906f49e.entry.js} +2 -2
  457. package/dist/q2-tecton-elements/{p-d2e1631a.entry.js.map → p-7906f49e.entry.js.map} +1 -1
  458. package/dist/q2-tecton-elements/{p-2fcaf2d6.entry.js → p-7aef0c08.entry.js} +2 -2
  459. package/dist/q2-tecton-elements/{p-8a4b106d.entry.js → p-7c9a0122.entry.js} +2 -2
  460. package/dist/q2-tecton-elements/p-7c9f8b62.entry.js +2 -0
  461. package/dist/q2-tecton-elements/p-7c9f8b62.entry.js.map +1 -0
  462. package/dist/q2-tecton-elements/{p-cf32b5db.entry.js → p-81fbe718.entry.js} +2 -2
  463. package/dist/q2-tecton-elements/p-81fbe718.entry.js.map +1 -0
  464. package/dist/q2-tecton-elements/{p-6237c775.entry.js → p-896c7008.entry.js} +2 -2
  465. package/dist/q2-tecton-elements/{p-395904b4.entry.js → p-8d07cf91.entry.js} +2 -2
  466. package/dist/q2-tecton-elements/{p-fffb54e9.entry.js → p-8d2b02e1.entry.js} +2 -2
  467. package/dist/q2-tecton-elements/{p-6e6d9793.entry.js → p-95a7c042.entry.js} +2 -2
  468. package/dist/q2-tecton-elements/{p-45407ecc.entry.js → p-96b1406c.entry.js} +2 -2
  469. package/dist/q2-tecton-elements/{p-cb3f48de.entry.js → p-a47597dd.entry.js} +2 -2
  470. package/dist/q2-tecton-elements/p-a47597dd.entry.js.map +1 -0
  471. package/dist/q2-tecton-elements/p-a5d0e252.entry.js +2 -0
  472. package/dist/q2-tecton-elements/p-a5d0e252.entry.js.map +1 -0
  473. package/dist/q2-tecton-elements/{p-2c26295e.entry.js → p-ac6aa392.entry.js} +2 -2
  474. package/dist/q2-tecton-elements/{p-376a0589.entry.js → p-ad057d10.entry.js} +2 -2
  475. package/dist/q2-tecton-elements/{p-ad998f71.entry.js → p-b0e5e9dc.entry.js} +2 -2
  476. package/dist/q2-tecton-elements/p-b0e5e9dc.entry.js.map +1 -0
  477. package/dist/q2-tecton-elements/{p-34696e3f.entry.js → p-b1784be3.entry.js} +2 -2
  478. package/dist/q2-tecton-elements/{p-259b728a.entry.js → p-b7de110e.entry.js} +2 -2
  479. package/dist/q2-tecton-elements/{p-8111547c.entry.js → p-c235ab3f.entry.js} +2 -2
  480. package/dist/q2-tecton-elements/p-c5667d5d.entry.js +2 -0
  481. package/dist/q2-tecton-elements/p-c5667d5d.entry.js.map +1 -0
  482. package/dist/q2-tecton-elements/{p-c81d299a.entry.js → p-e216ef3f.entry.js} +2 -2
  483. package/dist/q2-tecton-elements/p-e2c800ef.entry.js +2 -0
  484. package/dist/q2-tecton-elements/p-e2c800ef.entry.js.map +1 -0
  485. package/dist/q2-tecton-elements/p-f135b265.entry.js +2 -0
  486. package/dist/q2-tecton-elements/p-f135b265.entry.js.map +1 -0
  487. package/dist/q2-tecton-elements/{p-721365be.js → p-f1e887f5.js} +1 -1
  488. package/dist/q2-tecton-elements/{p-6b7c53a8.entry.js → p-f5f23659.entry.js} +2 -2
  489. package/dist/q2-tecton-elements/p-f7867f21.entry.js +2 -0
  490. package/dist/q2-tecton-elements/p-f7867f21.entry.js.map +1 -0
  491. package/dist/q2-tecton-elements/p-ff8f1a32.entry.js +2 -0
  492. package/dist/q2-tecton-elements/p-ff8f1a32.entry.js.map +1 -0
  493. package/dist/q2-tecton-elements/p-fff01dc1.entry.js +2 -0
  494. package/dist/q2-tecton-elements/p-fff01dc1.entry.js.map +1 -0
  495. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  496. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  497. package/dist/types/components/q2-action-group/q2-action-group.d.ts +30 -0
  498. package/dist/types/components/q2-chart-area/q2-chart-area.d.ts +1 -1
  499. package/dist/types/components/q2-chart-bar/q2-chart-bar.d.ts +1 -1
  500. package/dist/types/components/q2-chart-donut/q2-chart-donut.d.ts +2 -0
  501. package/dist/types/components/q2-data-table/q2-data-table.d.ts +15 -13
  502. package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +41 -2
  503. package/dist/types/components/q2-formatted-text/q2-formatted-text.d.ts +34 -0
  504. package/dist/types/components/q2-input/q2-input.d.ts +10 -9
  505. package/dist/types/components/q2-legend/q2-legend.d.ts +1 -0
  506. package/dist/types/components/q2-link/q2-link.d.ts +36 -0
  507. package/dist/types/components/q2-pagination/q2-pagination.d.ts +60 -3
  508. package/dist/types/components/q2-pill/q2-pill.d.ts +11 -0
  509. package/dist/types/components/q2-popover/q2-popover.d.ts +7 -1
  510. package/dist/types/components/q2-resize-observer/q2-resize-observer.d.ts +28 -0
  511. package/dist/types/components/q2-section/q2-section.d.ts +12 -0
  512. package/dist/types/components/q2-select/q2-select.d.ts +5 -0
  513. package/dist/types/components/q2-stepper/q2-stepper.d.ts +10 -1
  514. package/dist/types/components/q2-tab-container/q2-tab-container.d.ts +8 -2
  515. package/dist/types/components/q2-tag/q2-tag.d.ts +5 -0
  516. package/dist/types/components/q2-textarea/q2-textarea.d.ts +8 -3
  517. package/dist/types/components.d.ts +396 -18
  518. package/dist/types/utils/helpers.d.ts +28 -0
  519. package/dist/types/utils/index.d.ts +3 -3
  520. package/dist/types/utils/sanitize-html-string.d.ts +1 -0
  521. package/dist/types/utils/sanitize-regex-string.d.ts +1 -0
  522. package/package.json +4 -4
  523. package/dist/cjs/index-64d8b839.js +0 -1580
  524. package/dist/cjs/index-64d8b839.js.map +0 -1
  525. package/dist/esm/index-4a80972c.js +0 -1556
  526. package/dist/esm/index-4a80972c.js.map +0 -1
  527. package/dist/q2-tecton-elements/p-0a1dff75.entry.js.map +0 -1
  528. package/dist/q2-tecton-elements/p-3b0d3cd4.entry.js.map +0 -1
  529. package/dist/q2-tecton-elements/p-3c7be0bb.entry.js.map +0 -1
  530. package/dist/q2-tecton-elements/p-403bf3d4.entry.js +0 -2
  531. package/dist/q2-tecton-elements/p-403bf3d4.entry.js.map +0 -1
  532. package/dist/q2-tecton-elements/p-4116579f.entry.js.map +0 -1
  533. package/dist/q2-tecton-elements/p-661ed976.entry.js +0 -2
  534. package/dist/q2-tecton-elements/p-661ed976.entry.js.map +0 -1
  535. package/dist/q2-tecton-elements/p-9a1a4bc0.js +0 -3
  536. package/dist/q2-tecton-elements/p-9a1a4bc0.js.map +0 -1
  537. package/dist/q2-tecton-elements/p-a7a0b8aa.entry.js +0 -2
  538. package/dist/q2-tecton-elements/p-a7a0b8aa.entry.js.map +0 -1
  539. package/dist/q2-tecton-elements/p-aa57b657.entry.js +0 -2
  540. package/dist/q2-tecton-elements/p-aa57b657.entry.js.map +0 -1
  541. package/dist/q2-tecton-elements/p-ad998f71.entry.js.map +0 -1
  542. package/dist/q2-tecton-elements/p-adec9275.entry.js +0 -2
  543. package/dist/q2-tecton-elements/p-adec9275.entry.js.map +0 -1
  544. package/dist/q2-tecton-elements/p-adf0a7c9.entry.js +0 -2
  545. package/dist/q2-tecton-elements/p-adf0a7c9.entry.js.map +0 -1
  546. package/dist/q2-tecton-elements/p-b72fd065.entry.js +0 -2
  547. package/dist/q2-tecton-elements/p-b72fd065.entry.js.map +0 -1
  548. package/dist/q2-tecton-elements/p-c0c658d1.entry.js +0 -2
  549. package/dist/q2-tecton-elements/p-c0c658d1.entry.js.map +0 -1
  550. package/dist/q2-tecton-elements/p-cb3f48de.entry.js.map +0 -1
  551. package/dist/q2-tecton-elements/p-ce4e6b41.entry.js.map +0 -1
  552. package/dist/q2-tecton-elements/p-cf32b5db.entry.js.map +0 -1
  553. package/dist/q2-tecton-elements/p-cf966a0f.entry.js +0 -2
  554. package/dist/q2-tecton-elements/p-cf966a0f.entry.js.map +0 -1
  555. package/dist/q2-tecton-elements/p-dc77bf66.entry.js +0 -2
  556. package/dist/q2-tecton-elements/p-dc77bf66.entry.js.map +0 -1
  557. /package/dist/q2-tecton-elements/{p-5d936af5.entry.js.map → p-07d1c3ae.entry.js.map} +0 -0
  558. /package/dist/q2-tecton-elements/{p-58cafc0d.entry.js.map → p-1c760a89.entry.js.map} +0 -0
  559. /package/dist/q2-tecton-elements/{p-074ae80c.entry.js.map → p-1c88d057.entry.js.map} +0 -0
  560. /package/dist/q2-tecton-elements/{p-77a0cc0c.entry.js.map → p-2733583e.entry.js.map} +0 -0
  561. /package/dist/q2-tecton-elements/{p-072c5877.entry.js.map → p-4774e5b3.entry.js.map} +0 -0
  562. /package/dist/q2-tecton-elements/{p-77272c4c.entry.js.map → p-490ef8e5.entry.js.map} +0 -0
  563. /package/dist/q2-tecton-elements/{p-2ca6d44f.entry.js.map → p-50f7328f.entry.js.map} +0 -0
  564. /package/dist/q2-tecton-elements/{p-2fcaf2d6.entry.js.map → p-7aef0c08.entry.js.map} +0 -0
  565. /package/dist/q2-tecton-elements/{p-8a4b106d.entry.js.map → p-7c9a0122.entry.js.map} +0 -0
  566. /package/dist/q2-tecton-elements/{p-6237c775.entry.js.map → p-896c7008.entry.js.map} +0 -0
  567. /package/dist/q2-tecton-elements/{p-395904b4.entry.js.map → p-8d07cf91.entry.js.map} +0 -0
  568. /package/dist/q2-tecton-elements/{p-fffb54e9.entry.js.map → p-8d2b02e1.entry.js.map} +0 -0
  569. /package/dist/q2-tecton-elements/{p-6e6d9793.entry.js.map → p-95a7c042.entry.js.map} +0 -0
  570. /package/dist/q2-tecton-elements/{p-45407ecc.entry.js.map → p-96b1406c.entry.js.map} +0 -0
  571. /package/dist/q2-tecton-elements/{p-2c26295e.entry.js.map → p-ac6aa392.entry.js.map} +0 -0
  572. /package/dist/q2-tecton-elements/{p-376a0589.entry.js.map → p-ad057d10.entry.js.map} +0 -0
  573. /package/dist/q2-tecton-elements/{p-34696e3f.entry.js.map → p-b1784be3.entry.js.map} +0 -0
  574. /package/dist/q2-tecton-elements/{p-259b728a.entry.js.map → p-b7de110e.entry.js.map} +0 -0
  575. /package/dist/q2-tecton-elements/{p-8111547c.entry.js.map → p-c235ab3f.entry.js.map} +0 -0
  576. /package/dist/q2-tecton-elements/{p-c81d299a.entry.js.map → p-e216ef3f.entry.js.map} +0 -0
  577. /package/dist/q2-tecton-elements/{p-721365be.js.map → p-f1e887f5.js.map} +0 -0
  578. /package/dist/q2-tecton-elements/{p-6b7c53a8.entry.js.map → p-f5f23659.entry.js.map} +0 -0
@@ -22,21 +22,6 @@ describe('q2-option-list', () => {
22
22
  const page = await setup({ html: '<q2-option-list></q2-option-list>' });
23
23
  expect(await getListOfStyleCompilationIssues(page, 'q2-option-list')).toHaveLength(0);
24
24
  });
25
- describe('[A11y] guideline compliance', () => {
26
- it('Does not have accessibility violations with only label', async () => {
27
- const page = await setup({
28
- html: `
29
- <q2-option-list>
30
- <q2-option value="1">Option 1</q2-option>
31
- <q2-option value="2">Option 2</q2-option>
32
- <q2-option value="3">Option 3</q2-option>
33
- </q2-option-list>
34
- `,
35
- });
36
- const hasViolations = await evaluateA11y(page);
37
- expect(hasViolations).toBe(false);
38
- });
39
- });
40
25
  describe('Selecting options', () => {
41
26
  it('emits change event and selects option', async function () {
42
27
  page = await setup({
@@ -495,445 +480,470 @@ describe('q2-option-list', () => {
495
480
  expect(await getFocusedValue(page)).toEqual('1');
496
481
  });
497
482
  });
498
- describe('Keyboard', () => {
499
- beforeEach(async () => {
500
- page = await setup({
501
- html: `
483
+ describe('Accessibility', () => {
484
+ describe('aXe DevTools', () => {
485
+ it('does not have accessibility violations', async () => {
486
+ const page = await setup({
487
+ html: `
502
488
  <q2-option-list>
503
- <q2-option display="Nebraska" value="NE">Nebraska</q2-option>
504
- <q2-option display="Nevada" value="NV">Nevada</q2-option>
505
- <q2-option display="New Hampshire" value="NH">New Hampshire</q2-option>
506
- <q2-option display="New Jersey" value="NJ">New Jersey</q2-option>
507
- <q2-option display="New Mexico" value="NM">New Mexico</q2-option>
508
- <q2-option display="New York" value="NY">New York</q2-option>
509
- <q2-option display="North Carolina" value="NC">North Carolina</q2-option>
510
- <q2-option display="North Dakota" value="ND">North Dakota</q2-option>
511
- <q2-option display="Ohio" value="OH">Ohio</q2-option>
512
- <q2-option display="Oklahoma" value="OK">Oklahoma</q2-option>
513
- <q2-option display="Oregon" value="OR">Oregon</q2-option>
514
- <q2-option display="Pennsylvania" value="PA">Pennsylvania</q2-option>
515
- <q2-option display="Rhode Island" value="RI">Rhode Island</q2-option>
489
+ <q2-option value="1">Option 1</q2-option>
490
+ <q2-option value="2">Option 2</q2-option>
491
+ <q2-option value="3">Option 3</q2-option>
516
492
  </q2-option-list>
517
- <button value="control">Control</button>
518
493
  `,
494
+ });
495
+ const hasViolations = await evaluateA11y(page);
496
+ expect(hasViolations).toBe(false);
519
497
  });
520
- optionList = await page.find('q2-option-list');
521
- optionsContainer = await page.find('q2-option-list >>> .options');
522
- options = await page.findAll('q2-option');
523
- popoverStateSpy = await optionList.spyOnEvent('popoverState');
524
- changeSpy = await optionList.spyOnEvent('change');
525
498
  });
526
- describe('externalKeydownHandler', () => {
527
- let controlBtn;
499
+ describe('Accessibility Tree', () => { });
500
+ describe('Keyboard Controls', () => {
528
501
  beforeEach(async () => {
529
- controlBtn = await page.find('button');
530
- await controlBtn.focus();
531
- await page.$eval('body', el => {
532
- const e = el.querySelector('button');
533
- const opt = el.querySelector('q2-option-list');
534
- e.addEventListener('keydown', e => {
535
- opt.handleExternalKeydown(e);
536
- });
502
+ page = await setup({
503
+ html: `
504
+ <q2-option-list>
505
+ <q2-option display="Nebraska" value="NE">Nebraska</q2-option>
506
+ <q2-option display="Nevada" value="NV">Nevada</q2-option>
507
+ <q2-option display="New Hampshire" value="NH">New Hampshire</q2-option>
508
+ <q2-option display="New Jersey" value="NJ">New Jersey</q2-option>
509
+ <q2-option display="New Mexico" value="NM">New Mexico</q2-option>
510
+ <q2-option display="New York" value="NY">New York</q2-option>
511
+ <q2-option display="North Carolina" value="NC">North Carolina</q2-option>
512
+ <q2-option display="North Dakota" value="ND">North Dakota</q2-option>
513
+ <q2-option display="Ohio" value="OH">Ohio</q2-option>
514
+ <q2-option display="Oklahoma" value="OK">Oklahoma</q2-option>
515
+ <q2-option display="Oregon" value="OR">Oregon</q2-option>
516
+ <q2-option display="Pennsylvania" value="PA">Pennsylvania</q2-option>
517
+ <q2-option display="Rhode Island" value="RI">Rhode Island</q2-option>
518
+ </q2-option-list>
519
+ <button value="control">Control</button>
520
+ `,
537
521
  });
538
- expect(await getFocusedValue(page)).toBe('control');
539
- });
540
- it('does not set the value, or dispatch state event to close container on Space', async () => {
541
- await optionsContainer.press(' ');
542
- expect(await optionList.getProperty('selectedOptions')).toEqual([]);
543
- expect(popoverStateSpy).toHaveReceivedEventDetail({ open: true, action: 'open' });
544
- expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
545
- });
546
- it('does not set the value, or dispatch state event to close container on Enter', async () => {
547
- await optionsContainer.press('Enter');
548
- expect(await optionList.getProperty('selectedOptions')).toEqual([]);
549
- expect(popoverStateSpy).toHaveReceivedEventDetail({ open: true, action: 'open' });
550
- expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
551
- });
552
- it('focuses last option, then previous option on ArrowUp', async () => {
553
- await optionsContainer.press('ArrowUp');
554
- expect(options[12]).toHaveAttribute('active');
555
- expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
556
- await optionsContainer.press('ArrowUp');
557
- expect(options[11]).toHaveAttribute('active');
558
- expect(await getFocusedValue(page)).toBe(options[11].getAttribute('value'));
559
- });
560
- it('focuses first option, then next option on ArrowDown', async () => {
561
- await optionsContainer.press('ArrowDown');
562
- expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
563
- await optionsContainer.press('ArrowDown');
564
- expect(await getFocusedValue(page)).toBe(options[1].getAttribute('value'));
565
- });
566
- it('focuses first option on Home', async () => {
567
- await optionsContainer.press('End');
568
- expect(options[12]).toHaveAttribute('active');
569
- await optionsContainer.press('Home');
570
- expect(options[0]).toHaveAttribute('active');
571
- expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
572
- });
573
- it('focuses last option on End', async () => {
574
- await optionsContainer.press('ArrowDown');
575
- expect(options[0]).toHaveAttribute('active');
576
- await optionsContainer.press('End');
577
- expect(options[12]).toHaveAttribute('active');
578
- expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
579
- });
580
- it('jumps focus back 10 options on PageUp', async () => {
581
- await optionsContainer.press('End');
582
- expect(options[12]).toHaveAttribute('active');
583
- await optionsContainer.press('PageUp');
584
- expect(options[2]).toHaveAttribute('active');
585
- await optionsContainer.press('PageUp');
586
- expect(options[0]).toHaveAttribute('active');
587
- });
588
- it('jumps focus forward 10 options on PageDown', async () => {
589
- await optionsContainer.press('PageDown');
590
- expect(options[10]).toHaveAttribute('active');
591
- await optionsContainer.press('PageDown');
592
- expect(options[12]).toHaveAttribute('active');
593
- });
594
- it('does not set the value, and dispatches state event to close container on Tab', async () => {
595
- await optionsContainer.press('Tab');
596
- expect(await optionList.getProperty('selectedOptions')).toEqual([]);
597
- expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'close' });
598
- });
599
- it('dispatches state event to close container on Escape', async () => {
600
- await optionsContainer.press('Escape');
601
- expect(await optionList.getProperty('selectedOptions')).toEqual([]);
602
- expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'close' });
522
+ optionList = await page.find('q2-option-list');
523
+ optionsContainer = await page.find('q2-option-list >>> .options');
524
+ options = await page.findAll('q2-option');
525
+ popoverStateSpy = await optionList.spyOnEvent('popoverState');
526
+ changeSpy = await optionList.spyOnEvent('change');
603
527
  });
604
- describe('pseudo-search', () => {
605
- it('emits change event if next matching option is found when printable character is pressed', async () => {
606
- await optionsContainer.press('o');
607
- await page.waitForChanges();
608
- expect(changeSpy).toHaveReceivedEventTimes(1);
609
- expect(changeSpy).toHaveReceivedEventDetail({
610
- value: 'OH',
611
- values: [{ value: 'OH', display: 'Ohio' }],
528
+ describe('externalKeydownHandler', () => {
529
+ let controlBtn;
530
+ beforeEach(async () => {
531
+ controlBtn = await page.find('button');
532
+ await controlBtn.focus();
533
+ await page.$eval('body', el => {
534
+ const e = el.querySelector('button');
535
+ const opt = el.querySelector('q2-option-list');
536
+ e.addEventListener('keydown', e => {
537
+ opt.handleExternalKeydown(e);
538
+ });
612
539
  });
613
540
  expect(await getFocusedValue(page)).toBe('control');
614
- await optionsContainer.press('o');
615
- expect(changeSpy).toHaveReceivedEventTimes(2);
616
- expect(changeSpy).toHaveReceivedEventDetail({
617
- value: 'OK',
618
- values: [{ value: 'OK', display: 'Oklahoma' }],
541
+ });
542
+ it('does not set the value, or dispatch state event to close container on Space', async () => {
543
+ await optionsContainer.press(' ');
544
+ expect(await optionList.getProperty('selectedOptions')).toEqual([]);
545
+ expect(popoverStateSpy).toHaveReceivedEventDetail({ open: true, action: 'open' });
546
+ expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
547
+ });
548
+ it('does not set the value, or dispatch state event to close container on Enter', async () => {
549
+ await optionsContainer.press('Enter');
550
+ expect(await optionList.getProperty('selectedOptions')).toEqual([]);
551
+ expect(popoverStateSpy).toHaveReceivedEventDetail({ open: true, action: 'open' });
552
+ expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
553
+ });
554
+ it('focuses last option, then previous option on ArrowUp', async () => {
555
+ await optionsContainer.press('ArrowUp');
556
+ expect(options[12]).toHaveAttribute('active');
557
+ expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
558
+ await optionsContainer.press('ArrowUp');
559
+ expect(options[11]).toHaveAttribute('active');
560
+ expect(await getFocusedValue(page)).toBe(options[11].getAttribute('value'));
561
+ });
562
+ it('focuses first option, then next option on ArrowDown', async () => {
563
+ await optionsContainer.press('ArrowDown');
564
+ expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
565
+ await optionsContainer.press('ArrowDown');
566
+ expect(await getFocusedValue(page)).toBe(options[1].getAttribute('value'));
567
+ });
568
+ it('focuses first option on Home', async () => {
569
+ await optionsContainer.press('End');
570
+ expect(options[12]).toHaveAttribute('active');
571
+ await optionsContainer.press('Home');
572
+ expect(options[0]).toHaveAttribute('active');
573
+ expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
574
+ });
575
+ it('focuses last option on End', async () => {
576
+ await optionsContainer.press('ArrowDown');
577
+ expect(options[0]).toHaveAttribute('active');
578
+ await optionsContainer.press('End');
579
+ expect(options[12]).toHaveAttribute('active');
580
+ expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
581
+ });
582
+ it('jumps focus back 10 options on PageUp', async () => {
583
+ await optionsContainer.press('End');
584
+ expect(options[12]).toHaveAttribute('active');
585
+ await optionsContainer.press('PageUp');
586
+ expect(options[2]).toHaveAttribute('active');
587
+ await optionsContainer.press('PageUp');
588
+ expect(options[0]).toHaveAttribute('active');
589
+ });
590
+ it('jumps focus forward 10 options on PageDown', async () => {
591
+ await optionsContainer.press('PageDown');
592
+ expect(options[10]).toHaveAttribute('active');
593
+ await optionsContainer.press('PageDown');
594
+ expect(options[12]).toHaveAttribute('active');
595
+ });
596
+ it('does not set the value, and dispatches state event to close container on Tab', async () => {
597
+ await optionsContainer.press('Tab');
598
+ expect(await optionList.getProperty('selectedOptions')).toEqual([]);
599
+ expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'close' });
600
+ });
601
+ it('dispatches state event to close container on Escape', async () => {
602
+ await optionsContainer.press('Escape');
603
+ expect(await optionList.getProperty('selectedOptions')).toEqual([]);
604
+ expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'close' });
605
+ });
606
+ describe('pseudo-search', () => {
607
+ it('emits change event if next matching option is found when printable character is pressed', async () => {
608
+ await optionsContainer.press('o');
609
+ await page.waitForChanges();
610
+ expect(changeSpy).toHaveReceivedEventTimes(1);
611
+ expect(changeSpy).toHaveReceivedEventDetail({
612
+ value: 'OH',
613
+ values: [{ value: 'OH', display: 'Ohio' }],
614
+ });
615
+ expect(await getFocusedValue(page)).toBe('control');
616
+ await optionsContainer.press('o');
617
+ expect(changeSpy).toHaveReceivedEventTimes(2);
618
+ expect(changeSpy).toHaveReceivedEventDetail({
619
+ value: 'OK',
620
+ values: [{ value: 'OK', display: 'Oklahoma' }],
621
+ });
622
+ expect(await getFocusedValue(page)).toBe('control');
623
+ await page.waitForTimeout(2000);
624
+ await optionsContainer.type('New J');
625
+ expect(changeSpy).toHaveReceivedEventTimes(7);
626
+ expect(changeSpy).toHaveReceivedEventDetail({
627
+ value: 'NJ',
628
+ values: [{ value: 'NJ', display: 'New Jersey' }],
629
+ });
630
+ expect(await getFocusedValue(page)).toBe('control');
619
631
  });
620
- expect(await getFocusedValue(page)).toBe('control');
621
- await page.waitForTimeout(2000);
622
- await optionsContainer.type('New J');
623
- expect(changeSpy).toHaveReceivedEventTimes(7);
624
- expect(changeSpy).toHaveReceivedEventDetail({
625
- value: 'NJ',
626
- values: [{ value: 'NJ', display: 'New Jersey' }],
632
+ it('emit change event if next option is found when same character is pressed 3 times', async () => {
633
+ await optionsContainer.press('o');
634
+ await page.waitForChanges();
635
+ expect(changeSpy).toHaveReceivedEventTimes(1);
636
+ expect(changeSpy).toHaveReceivedEventDetail({
637
+ value: 'OH',
638
+ values: [{ value: 'OH', display: 'Ohio' }],
639
+ });
640
+ expect(await getFocusedValue(page)).toBe('control');
641
+ await optionsContainer.press('o');
642
+ await page.waitForChanges();
643
+ expect(changeSpy).toHaveReceivedEventTimes(2);
644
+ expect(await getFocusedValue(page)).toBe('control');
645
+ await optionsContainer.press('o');
646
+ await page.waitForChanges();
647
+ expect(changeSpy).toHaveReceivedEventTimes(3);
648
+ expect(await getFocusedValue(page)).toBe('control');
627
649
  });
628
- expect(await getFocusedValue(page)).toBe('control');
629
650
  });
630
- it('emit change event if next option is found when same character is pressed 3 times', async () => {
631
- await optionsContainer.press('o');
632
- await page.waitForChanges();
633
- expect(changeSpy).toHaveReceivedEventTimes(1);
634
- expect(changeSpy).toHaveReceivedEventDetail({
635
- value: 'OH',
636
- values: [{ value: 'OH', display: 'Ohio' }],
651
+ describe('when multiselect', () => {
652
+ beforeEach(async () => {
653
+ await optionList.setProperty('multiple', true);
654
+ await page.waitForChanges();
655
+ await setDefaultActiveElement(page);
656
+ await page.waitForChanges();
657
+ changeSpy = await optionList.spyOnEvent('change');
658
+ expect(options[0]).toHaveAttribute('active');
659
+ });
660
+ const selectAndDeselectMultipleOptions = async (key) => {
661
+ // Selecting second option
662
+ await optionsContainer.press('ArrowDown');
663
+ expect(options[1]).toHaveAttribute('active');
664
+ expect(options[1]).not.toHaveAttribute('selected');
665
+ await optionsContainer.press(key);
666
+ expect(options[1]).toHaveAttribute('selected');
667
+ expect(changeSpy).toHaveReceivedEventDetail({
668
+ value: 'NV',
669
+ values: [{ display: 'Nevada', value: 'NV' }],
670
+ });
671
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
672
+ { display: 'Nevada', value: 'NV' },
673
+ ]);
674
+ // Selecting fourth option
675
+ await optionsContainer.press('ArrowDown');
676
+ await optionsContainer.press('ArrowDown');
677
+ expect(options[3]).toHaveAttribute('active');
678
+ expect(options[3]).not.toHaveAttribute('selected');
679
+ await optionsContainer.press(key);
680
+ expect(options[3]).toHaveAttribute('selected');
681
+ expect(changeSpy).toHaveReceivedEventDetail({
682
+ value: 'NJ',
683
+ values: [
684
+ { display: 'Nevada', value: 'NV' },
685
+ { display: 'New Jersey', value: 'NJ' },
686
+ ],
687
+ });
688
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
689
+ { display: 'Nevada', value: 'NV' },
690
+ { display: 'New Jersey', value: 'NJ' },
691
+ ]);
692
+ // Deselecting fourth option
693
+ await optionsContainer.press(key);
694
+ expect(options[3]).not.toHaveAttribute('selected');
695
+ expect(changeSpy).toHaveReceivedEventDetail({
696
+ value: 'NJ',
697
+ values: [{ display: 'Nevada', value: 'NV' }],
698
+ });
699
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
700
+ { display: 'Nevada', value: 'NV' },
701
+ ]);
702
+ // Selecting fifth option
703
+ await optionsContainer.press('ArrowDown');
704
+ expect(options[4]).not.toHaveAttribute('selected');
705
+ await optionsContainer.press(key);
706
+ expect(options[4]).toHaveAttribute('selected');
707
+ expect(changeSpy).toHaveReceivedEventDetail({
708
+ value: 'NM',
709
+ values: [
710
+ { display: 'Nevada', value: 'NV' },
711
+ { display: 'New Mexico', value: 'NM' },
712
+ ],
713
+ });
714
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
715
+ { display: 'Nevada', value: 'NV' },
716
+ { display: 'New Mexico', value: 'NM' },
717
+ ]);
718
+ };
719
+ it('can select and deselect multiple options via Space without closing list', async () => {
720
+ await selectAndDeselectMultipleOptions('Space');
721
+ });
722
+ it('selects and deselects option on Enter, without closing list', async () => {
723
+ await selectAndDeselectMultipleOptions('Enter');
637
724
  });
638
- expect(await getFocusedValue(page)).toBe('control');
639
- await optionsContainer.press('o');
640
- await page.waitForChanges();
641
- expect(changeSpy).toHaveReceivedEventTimes(2);
642
- expect(await getFocusedValue(page)).toBe('control');
643
- await optionsContainer.press('o');
644
- await page.waitForChanges();
645
- expect(changeSpy).toHaveReceivedEventTimes(3);
646
- expect(await getFocusedValue(page)).toBe('control');
647
725
  });
648
726
  });
649
- describe('when multiselect', () => {
727
+ describe('internalKeydownHandler', () => {
650
728
  beforeEach(async () => {
651
- await optionList.setProperty('multiple', true);
652
- await page.waitForChanges();
653
729
  await setDefaultActiveElement(page);
654
730
  await page.waitForChanges();
655
- changeSpy = await optionList.spyOnEvent('change');
656
731
  expect(options[0]).toHaveAttribute('active');
657
- });
658
- const selectAndDeselectMultipleOptions = async (key) => {
659
- // Selecting second option
660
- await optionsContainer.press('ArrowDown');
661
- expect(options[1]).toHaveAttribute('active');
662
- expect(options[1]).not.toHaveAttribute('selected');
663
- await optionsContainer.press(key);
664
- expect(options[1]).toHaveAttribute('selected');
665
- expect(changeSpy).toHaveReceivedEventDetail({
666
- value: 'NV',
667
- values: [{ display: 'Nevada', value: 'NV' }],
732
+ expect(await getFocusedValue(page)).toEqual('NE');
733
+ });
734
+ describe("when role is 'menu'", () => {
735
+ it('focuses first option on Enter', async () => {
736
+ await optionsContainer.press('Enter');
737
+ expect(options[0]).toHaveAttribute('active');
738
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
739
+ { display: 'Nebraska', value: 'NE' },
740
+ ]);
741
+ expect(await getFocusedOptionValue(page)).toBe(options[0].getAttribute('value'));
668
742
  });
669
- expect(await optionList.getProperty('selectedOptions')).toEqual([
670
- { display: 'Nevada', value: 'NV' },
671
- ]);
672
- // Selecting fourth option
673
- await optionsContainer.press('ArrowDown');
674
- await optionsContainer.press('ArrowDown');
675
- expect(options[3]).toHaveAttribute('active');
676
- expect(options[3]).not.toHaveAttribute('selected');
677
- await optionsContainer.press(key);
678
- expect(options[3]).toHaveAttribute('selected');
679
- expect(changeSpy).toHaveReceivedEventDetail({
680
- value: 'NJ',
681
- values: [
682
- { display: 'Nevada', value: 'NV' },
683
- { display: 'New Jersey', value: 'NJ' },
684
- ],
743
+ it('focuses first option on Space', async () => {
744
+ await optionsContainer.press(' ');
745
+ expect(options[0]).toHaveAttribute('active');
746
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
747
+ { display: 'Nebraska', value: 'NE' },
748
+ ]);
749
+ expect(await getFocusedOptionValue(page)).toBe(options[0].getAttribute('value'));
685
750
  });
751
+ });
752
+ it('sets the value, and dispatches state event to close container on Space', async () => {
753
+ await optionsContainer.press(' ');
754
+ await page.waitForChanges();
686
755
  expect(await optionList.getProperty('selectedOptions')).toEqual([
687
- { display: 'Nevada', value: 'NV' },
688
- { display: 'New Jersey', value: 'NJ' },
756
+ { display: 'Nebraska', value: 'NE' },
689
757
  ]);
690
- // Deselecting fourth option
691
- await optionsContainer.press(key);
692
- expect(options[3]).not.toHaveAttribute('selected');
693
- expect(changeSpy).toHaveReceivedEventDetail({
694
- value: 'NJ',
695
- values: [{ display: 'Nevada', value: 'NV' }],
696
- });
758
+ expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'select' });
759
+ });
760
+ it('sets the value, and dispatches state event to close container on Enter', async () => {
761
+ await optionsContainer.press('Enter');
697
762
  expect(await optionList.getProperty('selectedOptions')).toEqual([
698
- { display: 'Nevada', value: 'NV' },
763
+ { display: 'Nebraska', value: 'NE' },
699
764
  ]);
700
- // Selecting fifth option
765
+ expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'select' });
766
+ });
767
+ it('focuses previous option on ArrowUp', async () => {
701
768
  await optionsContainer.press('ArrowDown');
702
- expect(options[4]).not.toHaveAttribute('selected');
703
- await optionsContainer.press(key);
704
- expect(options[4]).toHaveAttribute('selected');
705
- expect(changeSpy).toHaveReceivedEventDetail({
706
- value: 'NM',
707
- values: [
708
- { display: 'Nevada', value: 'NV' },
709
- { display: 'New Mexico', value: 'NM' },
710
- ],
711
- });
712
- expect(await optionList.getProperty('selectedOptions')).toEqual([
713
- { display: 'Nevada', value: 'NV' },
714
- { display: 'New Mexico', value: 'NM' },
715
- ]);
716
- };
717
- it('can select and deselect multiple options via Space without closing list', async () => {
718
- await selectAndDeselectMultipleOptions('Space');
769
+ expect(options[1]).toHaveAttribute('active');
770
+ await optionsContainer.press('ArrowUp');
771
+ expect(options[0]).toHaveAttribute('active');
772
+ expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
719
773
  });
720
- it('selects and deselects option on Enter, without closing list', async () => {
721
- await selectAndDeselectMultipleOptions('Enter');
774
+ it('focuses next option on ArrowDown', async () => {
775
+ await optionsContainer.press('ArrowDown');
776
+ expect(await getFocusedValue(page)).toBe(options[1].getAttribute('value'));
722
777
  });
723
- });
724
- });
725
- describe('internalKeydownHandler', () => {
726
- beforeEach(async () => {
727
- await setDefaultActiveElement(page);
728
- await page.waitForChanges();
729
- expect(options[0]).toHaveAttribute('active');
730
- expect(await getFocusedValue(page)).toEqual('NE');
731
- });
732
- describe("when role is 'menu'", () => {
733
- it('focuses first option on Enter', async () => {
734
- await optionsContainer.press('Enter');
778
+ it('focuses first option on Home', async () => {
779
+ await optionsContainer.press('ArrowDown');
780
+ expect(options[1]).toHaveAttribute('active');
781
+ await optionsContainer.press('Home');
735
782
  expect(options[0]).toHaveAttribute('active');
736
- expect(await optionList.getProperty('selectedOptions')).toEqual([
737
- { display: 'Nebraska', value: 'NE' },
738
- ]);
739
- expect(await getFocusedOptionValue(page)).toBe(options[0].getAttribute('value'));
783
+ expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
740
784
  });
741
- it('focuses first option on Space', async () => {
742
- await optionsContainer.press(' ');
785
+ it('focuses last option on End', async () => {
786
+ await optionsContainer.press('ArrowDown');
787
+ expect(options[1]).toHaveAttribute('active');
788
+ await optionsContainer.press('End');
789
+ expect(options[12]).toHaveAttribute('active');
790
+ expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
791
+ });
792
+ it('jumps focus back 10 options on PageUp', async () => {
793
+ await optionsContainer.press('End');
794
+ expect(options[12]).toHaveAttribute('active');
795
+ await optionsContainer.press('PageUp');
796
+ expect(options[2]).toHaveAttribute('active');
797
+ await optionsContainer.press('PageUp');
743
798
  expect(options[0]).toHaveAttribute('active');
799
+ });
800
+ it('jumps focus forward 10 options on PageDown', async () => {
801
+ await optionsContainer.press('PageDown');
802
+ expect(options[10]).toHaveAttribute('active');
803
+ await optionsContainer.press('PageDown');
804
+ expect(options[12]).toHaveAttribute('active');
805
+ });
806
+ it('sets the value and moves focus away from the q2-option-list on Tab ', async () => {
807
+ await optionsContainer.press('Tab');
744
808
  expect(await optionList.getProperty('selectedOptions')).toEqual([
745
809
  { display: 'Nebraska', value: 'NE' },
746
810
  ]);
747
- expect(await getFocusedOptionValue(page)).toBe(options[0].getAttribute('value'));
811
+ expect(await getFocusedValue(page)).toEqual('control');
748
812
  });
749
- });
750
- it('sets the value, and dispatches state event to close container on Space', async () => {
751
- await optionsContainer.press(' ');
752
- await page.waitForChanges();
753
- expect(await optionList.getProperty('selectedOptions')).toEqual([{ display: 'Nebraska', value: 'NE' }]);
754
- expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'select' });
755
- });
756
- it('sets the value, and dispatches state event to close container on Enter', async () => {
757
- await optionsContainer.press('Enter');
758
- expect(await optionList.getProperty('selectedOptions')).toEqual([{ display: 'Nebraska', value: 'NE' }]);
759
- expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'select' });
760
- });
761
- it('focuses previous option on ArrowUp', async () => {
762
- await optionsContainer.press('ArrowDown');
763
- expect(options[1]).toHaveAttribute('active');
764
- await optionsContainer.press('ArrowUp');
765
- expect(options[0]).toHaveAttribute('active');
766
- expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
767
- });
768
- it('focuses next option on ArrowDown', async () => {
769
- await optionsContainer.press('ArrowDown');
770
- expect(await getFocusedValue(page)).toBe(options[1].getAttribute('value'));
771
- });
772
- it('focuses first option on Home', async () => {
773
- await optionsContainer.press('ArrowDown');
774
- expect(options[1]).toHaveAttribute('active');
775
- await optionsContainer.press('Home');
776
- expect(options[0]).toHaveAttribute('active');
777
- expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
778
- });
779
- it('focuses last option on End', async () => {
780
- await optionsContainer.press('ArrowDown');
781
- expect(options[1]).toHaveAttribute('active');
782
- await optionsContainer.press('End');
783
- expect(options[12]).toHaveAttribute('active');
784
- expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
785
- });
786
- it('jumps focus back 10 options on PageUp', async () => {
787
- await optionsContainer.press('End');
788
- expect(options[12]).toHaveAttribute('active');
789
- await optionsContainer.press('PageUp');
790
- expect(options[2]).toHaveAttribute('active');
791
- await optionsContainer.press('PageUp');
792
- expect(options[0]).toHaveAttribute('active');
793
- });
794
- it('jumps focus forward 10 options on PageDown', async () => {
795
- await optionsContainer.press('PageDown');
796
- expect(options[10]).toHaveAttribute('active');
797
- await optionsContainer.press('PageDown');
798
- expect(options[12]).toHaveAttribute('active');
799
- });
800
- it('sets the value and moves focus away from the q2-option-list on Tab ', async () => {
801
- await optionsContainer.press('Tab');
802
- expect(await optionList.getProperty('selectedOptions')).toEqual([{ display: 'Nebraska', value: 'NE' }]);
803
- expect(await getFocusedValue(page)).toEqual('control');
804
- });
805
- it('dispatches state event to close container on Escape', async () => {
806
- await optionsContainer.press('Escape');
807
- expect(await optionList.getProperty('selectedOptions')).toEqual([]);
808
- expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'close' });
809
- });
810
- it('stays on first option on ArrowUp if already on first option', async () => {
811
- await optionsContainer.press('Home');
812
- expect(options[0]).toHaveAttribute('active');
813
- expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
814
- await optionsContainer.press('ArrowUp');
815
- expect(options[0]).toHaveAttribute('active');
816
- expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
817
- });
818
- it('stays on last option on ArrowDown if already on last option', async () => {
819
- await optionsContainer.press('End');
820
- expect(options[12]).toHaveAttribute('active');
821
- expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
822
- await optionsContainer.press('ArrowDown');
823
- expect(options[12]).toHaveAttribute('active');
824
- expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
825
- });
826
- describe('pseudo-search', () => {
827
- it('searches for option if printable character is pressed', async () => {
828
- await optionsContainer.press('o');
829
- await page.waitForChanges();
830
- expect(await getFocusedValue(page)).toEqual('OH');
831
- expect(changeSpy).toHaveReceivedEventTimes(0);
832
- // doesn't change focus if no match
833
- await optionsContainer.press('o');
834
- expect(await getFocusedValue(page)).toEqual('OK');
835
- expect(changeSpy).toHaveReceivedEventTimes(0);
836
- await page.waitForTimeout(2000);
837
- await optionsContainer.type('New J');
838
- expect(await getFocusedValue(page)).toEqual('NJ');
839
- expect(changeSpy).toHaveReceivedEventTimes(0);
840
- });
841
- it('searches for next option if same character is pressed 3 times', async () => {
842
- await optionsContainer.press('o');
843
- await page.waitForChanges();
844
- expect(await getFocusedValue(page)).toEqual('OH');
845
- expect(changeSpy).toHaveReceivedEventTimes(0);
846
- await optionsContainer.press('o');
847
- await page.waitForChanges();
848
- expect(await getFocusedValue(page)).toEqual('OK');
849
- expect(changeSpy).toHaveReceivedEventTimes(0);
850
- await optionsContainer.press('o');
851
- await page.waitForChanges();
852
- expect(await getFocusedValue(page)).toEqual('OR');
853
- expect(changeSpy).toHaveReceivedEventTimes(0);
813
+ it('dispatches state event to close container on Escape', async () => {
814
+ await optionsContainer.press('Escape');
815
+ expect(await optionList.getProperty('selectedOptions')).toEqual([]);
816
+ expect(popoverStateSpy).toHaveReceivedEventDetail({ open: false, action: 'close' });
854
817
  });
855
- });
856
- describe('when multiselect', () => {
857
- beforeEach(async () => {
858
- await optionList.setProperty('multiple', true);
859
- await page.waitForChanges();
860
- await setDefaultActiveElement(page);
861
- await page.waitForChanges();
862
- changeSpy = await optionList.spyOnEvent('change');
818
+ it('stays on first option on ArrowUp if already on first option', async () => {
819
+ await optionsContainer.press('Home');
863
820
  expect(options[0]).toHaveAttribute('active');
821
+ expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
822
+ await optionsContainer.press('ArrowUp');
823
+ expect(options[0]).toHaveAttribute('active');
824
+ expect(await getFocusedValue(page)).toBe(options[0].getAttribute('value'));
864
825
  });
865
- const selectAndDeselectMultipleOptions = async (key) => {
866
- // Selecting second option
826
+ it('stays on last option on ArrowDown if already on last option', async () => {
827
+ await optionsContainer.press('End');
828
+ expect(options[12]).toHaveAttribute('active');
829
+ expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
867
830
  await optionsContainer.press('ArrowDown');
868
- expect(options[1]).toHaveAttribute('active');
869
- expect(options[1]).not.toHaveAttribute('selected');
870
- await optionsContainer.press(key);
871
- expect(options[1]).toHaveAttribute('selected');
872
- expect(changeSpy).toHaveReceivedEventDetail({
873
- value: 'NV',
874
- values: [{ display: 'Nevada', value: 'NV' }],
831
+ expect(options[12]).toHaveAttribute('active');
832
+ expect(await getFocusedValue(page)).toBe(options[12].getAttribute('value'));
833
+ });
834
+ describe('pseudo-search', () => {
835
+ it('searches for option if printable character is pressed', async () => {
836
+ await optionsContainer.press('o');
837
+ await page.waitForChanges();
838
+ expect(await getFocusedValue(page)).toEqual('OH');
839
+ expect(changeSpy).toHaveReceivedEventTimes(0);
840
+ // doesn't change focus if no match
841
+ await optionsContainer.press('o');
842
+ expect(await getFocusedValue(page)).toEqual('OK');
843
+ expect(changeSpy).toHaveReceivedEventTimes(0);
844
+ await page.waitForTimeout(2000);
845
+ await optionsContainer.type('New J');
846
+ expect(await getFocusedValue(page)).toEqual('NJ');
847
+ expect(changeSpy).toHaveReceivedEventTimes(0);
875
848
  });
876
- expect(await optionList.getProperty('selectedOptions')).toEqual([
877
- { display: 'Nevada', value: 'NV' },
878
- ]);
879
- // Selecting fourth option
880
- await optionsContainer.press('ArrowDown');
881
- await optionsContainer.press('ArrowDown');
882
- expect(options[3]).toHaveAttribute('active');
883
- expect(options[3]).not.toHaveAttribute('selected');
884
- await optionsContainer.press(key);
885
- expect(options[3]).toHaveAttribute('selected');
886
- expect(changeSpy).toHaveReceivedEventDetail({
887
- value: 'NJ',
888
- values: [
889
- { display: 'Nevada', value: 'NV' },
890
- { display: 'New Jersey', value: 'NJ' },
891
- ],
849
+ it('searches for next option if same character is pressed 3 times', async () => {
850
+ await optionsContainer.press('o');
851
+ await page.waitForChanges();
852
+ expect(await getFocusedValue(page)).toEqual('OH');
853
+ expect(changeSpy).toHaveReceivedEventTimes(0);
854
+ await optionsContainer.press('o');
855
+ await page.waitForChanges();
856
+ expect(await getFocusedValue(page)).toEqual('OK');
857
+ expect(changeSpy).toHaveReceivedEventTimes(0);
858
+ await optionsContainer.press('o');
859
+ await page.waitForChanges();
860
+ expect(await getFocusedValue(page)).toEqual('OR');
861
+ expect(changeSpy).toHaveReceivedEventTimes(0);
892
862
  });
893
- expect(await optionList.getProperty('selectedOptions')).toEqual([
894
- { display: 'Nevada', value: 'NV' },
895
- { display: 'New Jersey', value: 'NJ' },
896
- ]);
897
- // Deselecting fourth option
898
- await optionsContainer.press(key);
899
- expect(options[3]).not.toHaveAttribute('selected');
900
- expect(changeSpy).toHaveReceivedEventDetail({
901
- value: 'NJ',
902
- values: [{ display: 'Nevada', value: 'NV' }],
863
+ });
864
+ describe('when multiselect', () => {
865
+ beforeEach(async () => {
866
+ await optionList.setProperty('multiple', true);
867
+ await page.waitForChanges();
868
+ await setDefaultActiveElement(page);
869
+ await page.waitForChanges();
870
+ changeSpy = await optionList.spyOnEvent('change');
871
+ expect(options[0]).toHaveAttribute('active');
903
872
  });
904
- expect(await optionList.getProperty('selectedOptions')).toEqual([
905
- { display: 'Nevada', value: 'NV' },
906
- ]);
907
- // Selecting fifth option
908
- await optionsContainer.press('ArrowDown');
909
- expect(options[4]).not.toHaveAttribute('selected');
910
- await optionsContainer.press(key);
911
- expect(options[4]).toHaveAttribute('selected');
912
- expect(changeSpy).toHaveReceivedEventDetail({
913
- value: 'NM',
914
- values: [
873
+ const selectAndDeselectMultipleOptions = async (key) => {
874
+ // Selecting second option
875
+ await optionsContainer.press('ArrowDown');
876
+ expect(options[1]).toHaveAttribute('active');
877
+ expect(options[1]).not.toHaveAttribute('selected');
878
+ await optionsContainer.press(key);
879
+ expect(options[1]).toHaveAttribute('selected');
880
+ expect(changeSpy).toHaveReceivedEventDetail({
881
+ value: 'NV',
882
+ values: [{ display: 'Nevada', value: 'NV' }],
883
+ });
884
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
885
+ { display: 'Nevada', value: 'NV' },
886
+ ]);
887
+ // Selecting fourth option
888
+ await optionsContainer.press('ArrowDown');
889
+ await optionsContainer.press('ArrowDown');
890
+ expect(options[3]).toHaveAttribute('active');
891
+ expect(options[3]).not.toHaveAttribute('selected');
892
+ await optionsContainer.press(key);
893
+ expect(options[3]).toHaveAttribute('selected');
894
+ expect(changeSpy).toHaveReceivedEventDetail({
895
+ value: 'NJ',
896
+ values: [
897
+ { display: 'Nevada', value: 'NV' },
898
+ { display: 'New Jersey', value: 'NJ' },
899
+ ],
900
+ });
901
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
902
+ { display: 'Nevada', value: 'NV' },
903
+ { display: 'New Jersey', value: 'NJ' },
904
+ ]);
905
+ // Deselecting fourth option
906
+ await optionsContainer.press(key);
907
+ expect(options[3]).not.toHaveAttribute('selected');
908
+ expect(changeSpy).toHaveReceivedEventDetail({
909
+ value: 'NJ',
910
+ values: [{ display: 'Nevada', value: 'NV' }],
911
+ });
912
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
913
+ { display: 'Nevada', value: 'NV' },
914
+ ]);
915
+ // Selecting fifth option
916
+ await optionsContainer.press('ArrowDown');
917
+ expect(options[4]).not.toHaveAttribute('selected');
918
+ await optionsContainer.press(key);
919
+ expect(options[4]).toHaveAttribute('selected');
920
+ expect(changeSpy).toHaveReceivedEventDetail({
921
+ value: 'NM',
922
+ values: [
923
+ { display: 'Nevada', value: 'NV' },
924
+ { display: 'New Mexico', value: 'NM' },
925
+ ],
926
+ });
927
+ expect(await optionList.getProperty('selectedOptions')).toEqual([
915
928
  { display: 'Nevada', value: 'NV' },
916
929
  { display: 'New Mexico', value: 'NM' },
917
- ],
930
+ ]);
931
+ };
932
+ it('can select and deselect multiple options via Space, without closing list', async () => {
933
+ await selectAndDeselectMultipleOptions('Space');
934
+ });
935
+ it('selects and deselects option on Enter, without closing list', async () => {
936
+ await selectAndDeselectMultipleOptions('Enter');
937
+ });
938
+ it('does not set the value or dispatch state event to close container on Tab when role equals "listbox"', async () => {
939
+ await optionsContainer.press('Tab');
940
+ expect(await optionList.getProperty('selectedOptions')).toEqual([]);
941
+ expect(popoverStateSpy).not.toHaveReceivedEvent();
918
942
  });
919
- expect(await optionList.getProperty('selectedOptions')).toEqual([
920
- { display: 'Nevada', value: 'NV' },
921
- { display: 'New Mexico', value: 'NM' },
922
- ]);
923
- };
924
- it('can select and deselect multiple options via Space, without closing list', async () => {
925
- await selectAndDeselectMultipleOptions('Space');
926
- });
927
- it('selects and deselects option on Enter, without closing list', async () => {
928
- await selectAndDeselectMultipleOptions('Enter');
929
- });
930
- it('does not set the value or dispatch state event to close container on Tab when role equals "listbox"', async () => {
931
- await optionsContainer.press('Tab');
932
- expect(await optionList.getProperty('selectedOptions')).toEqual([]);
933
- expect(popoverStateSpy).not.toHaveReceivedEvent();
934
943
  });
935
944
  });
936
945
  });
946
+ describe('Other', () => { });
937
947
  });
938
948
  });
939
949
  //# sourceMappingURL=q2-option-list-test.e2e.js.map