q2-tecton-elements 1.54.5 → 1.54.7

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 (389) hide show
  1. package/dist/bundle-report.json +140 -73
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/q2-action-group.cjs.entry.js +1 -1
  4. package/dist/cjs/q2-action-sheet.cjs.entry.js +1 -1
  5. package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
  6. package/dist/cjs/q2-badge_7.cjs.entry.js +11 -3
  7. package/dist/cjs/q2-badge_7.cjs.entry.js.map +1 -1
  8. package/dist/cjs/q2-carousel-pane.cjs.entry.js +2 -2
  9. package/dist/cjs/q2-chart-area.cjs.entry.js +1 -1
  10. package/dist/cjs/q2-chart-bar.cjs.entry.js +1 -1
  11. package/dist/cjs/q2-chart-donut.cjs.entry.js +1 -1
  12. package/dist/cjs/q2-currency.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-detail.cjs.entry.js +1 -1
  14. package/dist/cjs/q2-dropdown.cjs.entry.js +32 -31
  15. package/dist/cjs/q2-dropdown.cjs.entry.js.map +1 -1
  16. package/dist/cjs/q2-editable-field.cjs.entry.js +6 -7
  17. package/dist/cjs/q2-editable-field.cjs.entry.js.map +1 -1
  18. package/dist/cjs/q2-example.cjs.entry.js +1 -1
  19. package/dist/cjs/q2-formatted-text.cjs.entry.js +1 -1
  20. package/dist/cjs/q2-item_3.cjs.entry.js +2 -2
  21. package/dist/cjs/q2-legend.cjs.entry.js +1 -1
  22. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  23. package/dist/cjs/q2-message.cjs.entry.js +1 -1
  24. package/dist/cjs/q2-month-picker.cjs.entry.js +2 -2
  25. package/dist/cjs/q2-optgroup.cjs.entry.js +1 -1
  26. package/dist/cjs/q2-option-list_2.cjs.entry.js +63 -60
  27. package/dist/cjs/q2-option-list_2.cjs.entry.js.map +1 -1
  28. package/dist/cjs/q2-pagination.cjs.entry.js +3 -3
  29. package/dist/cjs/q2-pill.cjs.entry.js +1 -1
  30. package/dist/cjs/q2-relative-time.cjs.entry.js +1 -1
  31. package/dist/cjs/q2-resize-observer.cjs.entry.js +1 -1
  32. package/dist/cjs/q2-section.cjs.entry.js +2 -2
  33. package/dist/cjs/q2-select.cjs.entry.js +85 -11
  34. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  35. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +1 -1
  36. package/dist/cjs/q2-stepper.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-tag.cjs.entry.js +1 -1
  38. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  39. package/dist/cjs/q2-textarea.cjs.entry.js +2 -1
  40. package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
  41. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -2
  42. package/dist/collection/components/click-elsewhere/click-elsewhere.js.map +1 -1
  43. package/dist/collection/components/click-elsewhere/test/click-elsewhere-test.e2e.js.map +1 -1
  44. package/dist/collection/components/q2-action-group/q2-action-group.js +1 -1
  45. package/dist/collection/components/q2-action-group/q2-action-group.js.map +1 -1
  46. package/dist/collection/components/q2-action-group/test/q2-action-group.e2e.js.map +1 -1
  47. package/dist/collection/components/q2-action-group/test/q2-action-group.spec.js.map +1 -1
  48. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +1 -1
  49. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js.map +1 -1
  50. package/dist/collection/components/q2-action-sheet/test/q2-action-sheet-test.e2e.js.map +1 -1
  51. package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
  52. package/dist/collection/components/q2-avatar/q2-avatar.js.map +1 -1
  53. package/dist/collection/components/q2-avatar/test/q2-avatar-test.e2e.js.map +1 -1
  54. package/dist/collection/components/q2-badge/q2-badge.js.map +1 -1
  55. package/dist/collection/components/q2-badge/test/q2-badge-test.e2e.js.map +1 -1
  56. package/dist/collection/components/q2-btn/q2-btn.js +4 -0
  57. package/dist/collection/components/q2-btn/q2-btn.js.map +1 -1
  58. package/dist/collection/components/q2-btn/test/q2-btn-test.e2e.js.map +1 -1
  59. package/dist/collection/components/q2-calendar/q2-calendar-helpers.js.map +1 -1
  60. package/dist/collection/components/q2-calendar/q2-calendar-types.js.map +1 -1
  61. package/dist/collection/components/q2-calendar/q2-calendar-validation.js.map +1 -1
  62. package/dist/collection/components/q2-calendar/q2-calendar.js.map +1 -1
  63. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  64. package/dist/collection/components/q2-calendar/q2-month-picker.js.map +1 -1
  65. package/dist/collection/components/q2-calendar/test/helpers-test.e2e.js.map +1 -1
  66. package/dist/collection/components/q2-calendar/test/q2-calendar-month-picker-test.e2e.js.map +1 -1
  67. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js +2 -2
  68. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js.map +1 -1
  69. package/dist/collection/components/q2-calendar/test/validation-test.e2e.js.map +1 -1
  70. package/dist/collection/components/q2-card/q2-card.js.map +1 -1
  71. package/dist/collection/components/q2-card/test/q2-card-test.e2e.js.map +1 -1
  72. package/dist/collection/components/q2-carousel/q2-carousel.js.map +1 -1
  73. package/dist/collection/components/q2-carousel/test/q2-carousel-test.e2e.js.map +1 -1
  74. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  75. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js.map +1 -1
  76. package/dist/collection/components/q2-carousel-pane/test/q2-carousel-pane-test.e2e.js.map +1 -1
  77. package/dist/collection/components/q2-carousel-pane/test/q2-carousel-pane-test.spec.js.map +1 -1
  78. package/dist/collection/components/q2-chart-area/q2-chart-area.js +1 -1
  79. package/dist/collection/components/q2-chart-area/q2-chart-area.js.map +1 -1
  80. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js.map +1 -1
  81. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +1 -1
  82. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js.map +1 -1
  83. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.e2e.js.map +1 -1
  84. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +1 -1
  85. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js.map +1 -1
  86. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js.map +1 -1
  87. package/dist/collection/components/q2-checkbox/q2-checkbox.js.map +1 -1
  88. package/dist/collection/components/q2-checkbox/test/q2-checkbox-test.e2e.js.map +1 -1
  89. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js.map +1 -1
  90. package/dist/collection/components/q2-checkbox-group/test/q2-checkbox-group-test.e2e.js.map +1 -1
  91. package/dist/collection/components/q2-currency/q2-currency.js +1 -1
  92. package/dist/collection/components/q2-currency/q2-currency.js.map +1 -1
  93. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js.map +1 -1
  94. package/dist/collection/components/q2-data-table/q2-data-table.js.map +1 -1
  95. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js.map +1 -1
  96. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  97. package/dist/collection/components/q2-detail/q2-detail.js.map +1 -1
  98. package/dist/collection/components/q2-detail/test/q2-detail-test.e2e.js.map +1 -1
  99. package/dist/collection/components/q2-dropdown/q2-dropdown.js +33 -31
  100. package/dist/collection/components/q2-dropdown/q2-dropdown.js.map +1 -1
  101. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js +34 -32
  102. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js.map +1 -1
  103. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js.map +1 -1
  104. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js.map +1 -1
  105. package/dist/collection/components/q2-editable-field/q2-editable-field.js +12 -7
  106. package/dist/collection/components/q2-editable-field/q2-editable-field.js.map +1 -1
  107. package/dist/collection/components/q2-editable-field/test/q2-editable-field-test.e2e.js.map +1 -1
  108. package/dist/collection/components/q2-example/q2-example.js +1 -1
  109. package/dist/collection/components/q2-example/q2-example.js.map +1 -1
  110. package/dist/collection/components/q2-example/test/q2-example.e2e.js.map +1 -1
  111. package/dist/collection/components/q2-example/test/q2-example.spec.js.map +1 -1
  112. package/dist/collection/components/q2-file-picker/q2-file-picker.js.map +1 -1
  113. package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.e2e.js.map +1 -1
  114. package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.spec.js.map +1 -1
  115. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +1 -1
  116. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js.map +1 -1
  117. package/dist/collection/components/q2-formatted-text/test/q2-formatted-text-test.e2e.js.map +1 -1
  118. package/dist/collection/components/q2-icon/q2-icon-types.js.map +1 -1
  119. package/dist/collection/components/q2-icon/q2-icon.js +4 -0
  120. package/dist/collection/components/q2-icon/q2-icon.js.map +1 -1
  121. package/dist/collection/components/q2-icon/test/q2-icon-test.e2e.js.map +1 -1
  122. package/dist/collection/components/q2-input/formatting/alpha.js.map +1 -1
  123. package/dist/collection/components/q2-input/formatting/alpha.spec.js.map +1 -1
  124. package/dist/collection/components/q2-input/formatting/alphanumeric.js.map +1 -1
  125. package/dist/collection/components/q2-input/formatting/alphanumeric.spec.js.map +1 -1
  126. package/dist/collection/components/q2-input/formatting/credit-card.js.map +1 -1
  127. package/dist/collection/components/q2-input/formatting/credit-card.spec.js.map +1 -1
  128. package/dist/collection/components/q2-input/formatting/currency.js.map +1 -1
  129. package/dist/collection/components/q2-input/formatting/currency.spec.js.map +1 -1
  130. package/dist/collection/components/q2-input/formatting/date.js.map +1 -1
  131. package/dist/collection/components/q2-input/formatting/date.spec.js.map +1 -1
  132. package/dist/collection/components/q2-input/formatting/generic.js.map +1 -1
  133. package/dist/collection/components/q2-input/formatting/number.js.map +1 -1
  134. package/dist/collection/components/q2-input/formatting/numeric.js.map +1 -1
  135. package/dist/collection/components/q2-input/formatting/numeric.spec.js.map +1 -1
  136. package/dist/collection/components/q2-input/formatting/phone.js.map +1 -1
  137. package/dist/collection/components/q2-input/formatting/phone.spec.js.map +1 -1
  138. package/dist/collection/components/q2-input/formatting/postal.js.map +1 -1
  139. package/dist/collection/components/q2-input/formatting/postal.spec.js.map +1 -1
  140. package/dist/collection/components/q2-input/formatting/ssn.js.map +1 -1
  141. package/dist/collection/components/q2-input/formatting/ssn.spec.js.map +1 -1
  142. package/dist/collection/components/q2-input/formatting/tin.js.map +1 -1
  143. package/dist/collection/components/q2-input/formatting/tin.spec.js.map +1 -1
  144. package/dist/collection/components/q2-input/q2-input-types.js.map +1 -1
  145. package/dist/collection/components/q2-input/q2-input.js +1 -1
  146. package/dist/collection/components/q2-input/q2-input.js.map +1 -1
  147. package/dist/collection/components/q2-input/test/q2-input-credit-card-test.e2e.js.map +1 -1
  148. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js.map +1 -1
  149. package/dist/collection/components/q2-input/test/q2-input-test.spec.js.map +1 -1
  150. package/dist/collection/components/q2-item/q2-item.js +1 -1
  151. package/dist/collection/components/q2-item/q2-item.js.map +1 -1
  152. package/dist/collection/components/q2-item/test/q2-item-test.e2e.js.map +1 -1
  153. package/dist/collection/components/q2-item/test/q2-item-test.spec.js.map +1 -1
  154. package/dist/collection/components/q2-legend/q2-legend.js +1 -1
  155. package/dist/collection/components/q2-legend/q2-legend.js.map +1 -1
  156. package/dist/collection/components/q2-legend/test/q2-legend-test.e2e.js.map +1 -1
  157. package/dist/collection/components/q2-legend/test/q2-legend-test.spec.js.map +1 -1
  158. package/dist/collection/components/q2-link/q2-link.js.map +1 -1
  159. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js.map +1 -1
  160. package/dist/collection/components/q2-link/test/q2-link-test.spec.js.map +1 -1
  161. package/dist/collection/components/q2-list/q2-list.js +1 -1
  162. package/dist/collection/components/q2-list/q2-list.js.map +1 -1
  163. package/dist/collection/components/q2-list/test/q2-list-test.e2e.js.map +1 -1
  164. package/dist/collection/components/q2-loading/q2-loading.js.map +1 -1
  165. package/dist/collection/components/q2-loading/skeleton/q2-loading-element/index.js.map +1 -1
  166. package/dist/collection/components/q2-loading/skeleton/shapes.js.map +1 -1
  167. package/dist/collection/components/q2-loading/test/q2-loading-element-test.e2e.js.map +1 -1
  168. package/dist/collection/components/q2-loading/test/q2-loading-test.e2e.js.map +1 -1
  169. package/dist/collection/components/q2-loc/q2-loc.js +1 -1
  170. package/dist/collection/components/q2-loc/q2-loc.js.map +1 -1
  171. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js.map +1 -1
  172. package/dist/collection/components/q2-loc/test/q2-loc-test.spec.js.map +1 -1
  173. package/dist/collection/components/q2-message/q2-message.js +1 -1
  174. package/dist/collection/components/q2-message/q2-message.js.map +1 -1
  175. package/dist/collection/components/q2-message/test/q2-message-test.e2e.js.map +1 -1
  176. package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
  177. package/dist/collection/components/q2-optgroup/q2-optgroup.js.map +1 -1
  178. package/dist/collection/components/q2-optgroup/test/q2-optgroup-test.e2e.js.map +1 -1
  179. package/dist/collection/components/q2-option/q2-option.js.map +1 -1
  180. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js.map +1 -1
  181. package/dist/collection/components/q2-option/test/q2-option-test.spec.js.map +1 -1
  182. package/dist/collection/components/q2-option-list/q2-option-list.js.map +1 -1
  183. package/dist/collection/components/q2-option-list/test/q2-option-list-test.e2e.js.map +1 -1
  184. package/dist/collection/components/q2-option-list/test/q2-option-list.spec.js.map +1 -1
  185. package/dist/collection/components/q2-pagination/q2-pagination.js +3 -3
  186. package/dist/collection/components/q2-pagination/q2-pagination.js.map +1 -1
  187. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js +1 -0
  188. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js.map +1 -1
  189. package/dist/collection/components/q2-pill/q2-pill.js +1 -1
  190. package/dist/collection/components/q2-pill/q2-pill.js.map +1 -1
  191. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js.map +1 -1
  192. package/dist/collection/components/q2-popover/q2-popover.css +18 -10
  193. package/dist/collection/components/q2-popover/q2-popover.js +64 -60
  194. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  195. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js +1 -34
  196. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js.map +1 -1
  197. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js +743 -435
  198. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js.map +1 -1
  199. package/dist/collection/components/q2-radio/q2-radio.js.map +1 -1
  200. package/dist/collection/components/q2-radio/test/q2-radio-test.e2e.js.map +1 -1
  201. package/dist/collection/components/q2-radio-group/q2-radio-group.js.map +1 -1
  202. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.e2e.js.map +1 -1
  203. package/dist/collection/components/q2-relative-time/q2-relative-time.js +1 -1
  204. package/dist/collection/components/q2-relative-time/q2-relative-time.js.map +1 -1
  205. package/dist/collection/components/q2-relative-time/test/q2-relative-time-test.e2e.js.map +1 -1
  206. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +1 -1
  207. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js.map +1 -1
  208. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.e2e.js.map +1 -1
  209. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.spec.js.map +1 -1
  210. package/dist/collection/components/q2-section/q2-section.js +2 -2
  211. package/dist/collection/components/q2-section/q2-section.js.map +1 -1
  212. package/dist/collection/components/q2-section/test/q2-section-test.e2e.js.map +1 -1
  213. package/dist/collection/components/q2-select/q2-select.js +107 -14
  214. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  215. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js.map +1 -1
  216. package/dist/collection/components/q2-select/test/q2-select-test.spec.js +412 -0
  217. package/dist/collection/components/q2-select/test/q2-select-test.spec.js.map +1 -0
  218. package/dist/collection/components/q2-stepper/q2-stepper.js +1 -1
  219. package/dist/collection/components/q2-stepper/q2-stepper.js.map +1 -1
  220. package/dist/collection/components/q2-stepper/test/q2-stepper-test.e2e.js.map +1 -1
  221. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js.map +1 -1
  222. package/dist/collection/components/q2-stepper-pane/test/q2-stepper-pane-test.e2e.js.map +1 -1
  223. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
  224. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js.map +1 -1
  225. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js.map +1 -1
  226. package/dist/collection/components/q2-tab-container/q2-tab-container.js +1 -1
  227. package/dist/collection/components/q2-tab-container/q2-tab-container.js.map +1 -1
  228. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.e2e.js.map +1 -1
  229. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.spec.js.map +1 -1
  230. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  231. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js.map +1 -1
  232. package/dist/collection/components/q2-tab-pane/test/q2-tab-pane-test.e2e.js.map +1 -1
  233. package/dist/collection/components/q2-tag/q2-tag.js +1 -1
  234. package/dist/collection/components/q2-tag/q2-tag.js.map +1 -1
  235. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js +5 -0
  236. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js.map +1 -1
  237. package/dist/collection/components/q2-textarea/q2-textarea.js +2 -1
  238. package/dist/collection/components/q2-textarea/q2-textarea.js.map +1 -1
  239. package/dist/collection/components/q2-textarea/test/q2-textarea-test.e2e.js.map +1 -1
  240. package/dist/collection/components/q2-tooltip/q2-tooltip.js.map +1 -1
  241. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.e2e.js.map +1 -1
  242. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane-types.js.map +1 -1
  243. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
  244. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js.map +1 -1
  245. package/dist/collection/components/tecton-tab-pane/test/tecton-tab-pane-test.e2e.js.map +1 -1
  246. package/dist/collection/index.js.map +1 -1
  247. package/dist/collection/utils/action-sheet.js.map +1 -1
  248. package/dist/collection/utils/charting.js.map +1 -1
  249. package/dist/collection/utils/helpers.js.map +1 -1
  250. package/dist/collection/utils/index.js.map +1 -1
  251. package/dist/collection/utils/mirror-emit.js.map +1 -1
  252. package/dist/collection/utils/sanitize-html-string.js.map +1 -1
  253. package/dist/collection/utils/sanitize-regex-string.js.map +1 -1
  254. package/dist/collection/utils/test/action-sheet-test.e2e.js.map +1 -1
  255. package/dist/collection/utils/test/index.spec.js.map +1 -1
  256. package/dist/components/q2-action-group.js +1 -1
  257. package/dist/components/q2-action-sheet.js +1 -1
  258. package/dist/components/q2-avatar2.js +1 -1
  259. package/dist/components/q2-btn2.js +4 -0
  260. package/dist/components/q2-btn2.js.map +1 -1
  261. package/dist/components/q2-carousel-pane.js +2 -2
  262. package/dist/components/q2-chart-area.js +1 -1
  263. package/dist/components/q2-chart-bar.js +1 -1
  264. package/dist/components/q2-chart-donut.js +1 -1
  265. package/dist/components/q2-currency.js +1 -1
  266. package/dist/components/q2-detail.js +1 -1
  267. package/dist/components/q2-dropdown.js +32 -31
  268. package/dist/components/q2-dropdown.js.map +1 -1
  269. package/dist/components/q2-editable-field.js +7 -8
  270. package/dist/components/q2-editable-field.js.map +1 -1
  271. package/dist/components/q2-example.js +1 -1
  272. package/dist/components/q2-formatted-text.js +1 -1
  273. package/dist/components/q2-icon2.js +4 -0
  274. package/dist/components/q2-icon2.js.map +1 -1
  275. package/dist/components/q2-input2.js +1 -1
  276. package/dist/components/q2-item2.js +1 -1
  277. package/dist/components/q2-legend2.js +1 -1
  278. package/dist/components/q2-list2.js +1 -1
  279. package/dist/components/q2-loc.js +1 -1
  280. package/dist/components/q2-message2.js +1 -1
  281. package/dist/components/q2-month-picker.js +2 -2
  282. package/dist/components/q2-optgroup2.js +1 -1
  283. package/dist/components/q2-pagination.js +3 -3
  284. package/dist/components/q2-pill.js +1 -1
  285. package/dist/components/q2-popover2.js +63 -60
  286. package/dist/components/q2-popover2.js.map +1 -1
  287. package/dist/components/q2-relative-time.js +1 -1
  288. package/dist/components/q2-resize-observer2.js +1 -1
  289. package/dist/components/q2-section.js +2 -2
  290. package/dist/components/q2-select2.js +89 -15
  291. package/dist/components/q2-select2.js.map +1 -1
  292. package/dist/components/q2-stepper-vertical.js +1 -1
  293. package/dist/components/q2-stepper.js +1 -1
  294. package/dist/components/q2-tab-container.js +1 -1
  295. package/dist/components/q2-tab-pane.js +1 -1
  296. package/dist/components/q2-tag.js +1 -1
  297. package/dist/components/q2-textarea.js +2 -1
  298. package/dist/components/q2-textarea.js.map +1 -1
  299. package/dist/components/tecton-tab-pane.js +2 -2
  300. package/dist/esm/loader.js +1 -1
  301. package/dist/esm/q2-action-group.entry.js +1 -1
  302. package/dist/esm/q2-action-sheet.entry.js +1 -1
  303. package/dist/esm/q2-avatar.entry.js +1 -1
  304. package/dist/esm/q2-badge_7.entry.js +11 -3
  305. package/dist/esm/q2-badge_7.entry.js.map +1 -1
  306. package/dist/esm/q2-carousel-pane.entry.js +2 -2
  307. package/dist/esm/q2-chart-area.entry.js +1 -1
  308. package/dist/esm/q2-chart-bar.entry.js +1 -1
  309. package/dist/esm/q2-chart-donut.entry.js +1 -1
  310. package/dist/esm/q2-currency.entry.js +1 -1
  311. package/dist/esm/q2-detail.entry.js +1 -1
  312. package/dist/esm/q2-dropdown.entry.js +32 -31
  313. package/dist/esm/q2-dropdown.entry.js.map +1 -1
  314. package/dist/esm/q2-editable-field.entry.js +6 -7
  315. package/dist/esm/q2-editable-field.entry.js.map +1 -1
  316. package/dist/esm/q2-example.entry.js +1 -1
  317. package/dist/esm/q2-formatted-text.entry.js +1 -1
  318. package/dist/esm/q2-item_3.entry.js +2 -2
  319. package/dist/esm/q2-legend.entry.js +1 -1
  320. package/dist/esm/q2-loc.entry.js +1 -1
  321. package/dist/esm/q2-message.entry.js +1 -1
  322. package/dist/esm/q2-month-picker.entry.js +2 -2
  323. package/dist/esm/q2-optgroup.entry.js +1 -1
  324. package/dist/esm/q2-option-list_2.entry.js +63 -60
  325. package/dist/esm/q2-option-list_2.entry.js.map +1 -1
  326. package/dist/esm/q2-pagination.entry.js +3 -3
  327. package/dist/esm/q2-pill.entry.js +1 -1
  328. package/dist/esm/q2-relative-time.entry.js +1 -1
  329. package/dist/esm/q2-resize-observer.entry.js +1 -1
  330. package/dist/esm/q2-section.entry.js +2 -2
  331. package/dist/esm/q2-select.entry.js +87 -13
  332. package/dist/esm/q2-select.entry.js.map +1 -1
  333. package/dist/esm/q2-stepper-vertical.entry.js +1 -1
  334. package/dist/esm/q2-stepper.entry.js +1 -1
  335. package/dist/esm/q2-tag.entry.js +1 -1
  336. package/dist/esm/q2-tecton-elements.js +1 -1
  337. package/dist/esm/q2-textarea.entry.js +2 -1
  338. package/dist/esm/q2-textarea.entry.js.map +1 -1
  339. package/dist/esm/tecton-tab-pane.entry.js +2 -2
  340. package/dist/jest.setup.js +22 -0
  341. package/dist/jest.setup.js.map +1 -0
  342. package/dist/q2-tecton-elements/q2-action-group.entry.js +3 -3
  343. package/dist/q2-tecton-elements/q2-action-sheet.entry.js +33 -33
  344. package/dist/q2-tecton-elements/q2-avatar.entry.js +6 -6
  345. package/dist/q2-tecton-elements/q2-badge_7.entry.js +55 -47
  346. package/dist/q2-tecton-elements/q2-badge_7.entry.js.map +1 -1
  347. package/dist/q2-tecton-elements/q2-carousel-pane.entry.js +20 -20
  348. package/dist/q2-tecton-elements/q2-chart-area.entry.js +2 -2
  349. package/dist/q2-tecton-elements/q2-chart-bar.entry.js +2 -2
  350. package/dist/q2-tecton-elements/q2-chart-donut.entry.js +100 -100
  351. package/dist/q2-tecton-elements/q2-currency.entry.js +6 -6
  352. package/dist/q2-tecton-elements/q2-detail.entry.js +38 -38
  353. package/dist/q2-tecton-elements/q2-dropdown.entry.js +34 -32
  354. package/dist/q2-tecton-elements/q2-dropdown.entry.js.map +1 -1
  355. package/dist/q2-tecton-elements/q2-editable-field.entry.js +26 -17
  356. package/dist/q2-tecton-elements/q2-editable-field.entry.js.map +1 -1
  357. package/dist/q2-tecton-elements/q2-example.entry.js +1 -1
  358. package/dist/q2-tecton-elements/q2-formatted-text.entry.js +2 -2
  359. package/dist/q2-tecton-elements/q2-item_3.entry.js +18 -18
  360. package/dist/q2-tecton-elements/q2-legend.entry.js +2 -2
  361. package/dist/q2-tecton-elements/q2-loc.entry.js +5 -5
  362. package/dist/q2-tecton-elements/q2-message.entry.js +20 -20
  363. package/dist/q2-tecton-elements/q2-month-picker.entry.js +13 -13
  364. package/dist/q2-tecton-elements/q2-optgroup.entry.js +7 -7
  365. package/dist/q2-tecton-elements/q2-option-list_2.entry.js +134 -123
  366. package/dist/q2-tecton-elements/q2-option-list_2.entry.js.map +1 -1
  367. package/dist/q2-tecton-elements/q2-pagination.entry.js +18 -18
  368. package/dist/q2-tecton-elements/q2-pill.entry.js +13 -13
  369. package/dist/q2-tecton-elements/q2-relative-time.entry.js +1 -1
  370. package/dist/q2-tecton-elements/q2-resize-observer.entry.js +1 -1
  371. package/dist/q2-tecton-elements/q2-section.entry.js +19 -19
  372. package/dist/q2-tecton-elements/q2-select.entry.js +151 -89
  373. package/dist/q2-tecton-elements/q2-select.entry.js.map +1 -1
  374. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js +28 -28
  375. package/dist/q2-tecton-elements/q2-stepper.entry.js +28 -28
  376. package/dist/q2-tecton-elements/q2-tag.entry.js +5 -5
  377. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  378. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  379. package/dist/q2-tecton-elements/q2-textarea.entry.js +3 -2
  380. package/dist/q2-tecton-elements/q2-textarea.entry.js.map +1 -1
  381. package/dist/q2-tecton-elements/tecton-tab-pane.entry.js +9 -9
  382. package/dist/types/builds/q2e/development/tecton/tecton/packages/q2-tecton-elements/.stencil/jest.setup.d.ts +1 -0
  383. package/dist/types/components/q2-btn/q2-btn.d.ts +1 -0
  384. package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +7 -8
  385. package/dist/types/components/q2-editable-field/q2-editable-field.d.ts +2 -1
  386. package/dist/types/components/q2-icon/q2-icon.d.ts +1 -0
  387. package/dist/types/components/q2-popover/q2-popover.d.ts +4 -4
  388. package/dist/types/components/q2-select/q2-select.d.ts +19 -0
  389. package/package.json +3 -3
@@ -66,7 +66,7 @@ const Q2Message = class {
66
66
  const addDivForAriaLive = !isFirefox && this.presentToggle;
67
67
  const { description } = this;
68
68
  const messageLabel = index$1.loc(`tecton.element.message.type.${this.type ? this.type : 'info'}`);
69
- return (index.h("div", { key: '862e4f7aa7ae624a695ce6727f72ed8759584173', tabindex: "-1", class: "message", role: description ? undefined : 'alert', "aria-live": description ? undefined : 'assertive', "aria-atomic": description ? undefined : 'true', "aria-relevant": description && addAriaHiddenForAriaLive ? undefined : 'all', "test-id": "messageContainer" }, this.appearance === 'standard' ? this.messageIcon(this.type) : '', addDivForAriaLive && index.h("div", { key: '84084e80aac97b4e4e33a2bcf348094cd88279fb', class: "sr" }), index.h("div", { key: '4a437099dce9df5657a7f5039a55f5b326d2ee58', class: "sr message-label" }, messageLabel), index.h("div", { key: '8bf021fb84aa6d4973546060acaddae5d059d351', class: "message-content", "aria-hidden": addAriaHiddenForAriaLive ? 'true' : undefined }, index.h("slot", { key: '1790d7a0df5758d13c8b76577a4703808cddc832' }))));
69
+ return (index.h("div", { key: '32df9337d60e4cde91b479f7ac2145b490c6e86f', tabindex: "-1", class: "message", role: description ? undefined : 'alert', "aria-live": description ? undefined : 'assertive', "aria-atomic": description ? undefined : 'true', "aria-relevant": description && addAriaHiddenForAriaLive ? undefined : 'all', "test-id": "messageContainer" }, this.appearance === 'standard' ? this.messageIcon(this.type) : '', addDivForAriaLive && index.h("div", { key: '8c85280a31471b39972eaf836eba26e46f8fa384', class: "sr" }), index.h("div", { key: '38197f54a04591a1b059fb84adeaa753e7d75b5a', class: "sr message-label" }, messageLabel), index.h("div", { key: '9cc59dd782ad77089f1e9bd9e19f03f6e2333752', class: "message-content", "aria-hidden": addAriaHiddenForAriaLive ? 'true' : undefined }, index.h("slot", { key: '10589fb202d11974e4a9eddd89646f88f1a38230' }))));
70
70
  }
71
71
  get hostElement() { return index.getElement(this); }
72
72
  };
@@ -145,10 +145,10 @@ const Q2MonthPicker = class {
145
145
  // #endregion
146
146
  // #region Render Methods
147
147
  render() {
148
- return (index.h("div", { key: 'a25f142e55a4b9fa27dd0be8a50a965ba79bb544', class: "month-container", onKeyDown: this.onMonthKeydown }, index.h("div", { key: '14c16da95a5ff20603d87e8f5bec76037d2df0dc', class: "navigation" }, index.h("q2-btn", { key: 'f42fcd35aa88a0fd9455e2b10fa9f71d9e706727', class: "year-btn", onClick: () => this.viewChange.emit({
148
+ return (index.h("div", { key: '86262b17f3ec60dd3790c116fd54b60d38db54d6', class: "month-container", onKeyDown: this.onMonthKeydown }, index.h("div", { key: '618578dd17aff647bbd071f78429f206ba615808', class: "navigation" }, index.h("q2-btn", { key: '65a83ffac1aac5188ac8299fe6cee64eb0ddaae1', class: "year-btn", onClick: () => this.viewChange.emit({
149
149
  view: 'year',
150
150
  selectedYear: this.year,
151
- }) }, index.h("span", { key: '48482c7f65b28b1caa86d06d04f5c0294e4effb4', class: "year" }, this.year), index.h("q2-icon", { key: 'e0dea457dbbeb54609bc75d4b5215893853874bc', class: "year-icon off", type: "chevron-down" })), index.h("div", { key: '24b722a65945224c964e54944ad810da3ae077e3', class: "month-controller" }, index.h("div", { key: 'a101dbfe3b8e3a071e3b835eddc1b39455391ab5', class: "cal-year-prev-next" }, index.h("q2-btn", { key: '8895ef11b257dc13295939d0b8cd2ab933016cd2', label: index$1.loc('tecton.element.calendar.previousYear'), "hide-label": true, class: "cal-nav-btn prev-year", "test-id": "previousYearButton", onClick: () => this.selectYear(this.year - 1) }, index.h("q2-icon", { key: 'af38ef5e10c5754e4a0f57a3131e7c12b6792a89', type: "arrow-left" })), index.h("q2-btn", { key: '03a9b7c64770e77affe5eb60e165e46f63b6d6b6', label: index$1.loc('tecton.element.calendar.nextYear'), "hide-label": true, class: "cal-nav-btn next-year", "test-id": "nextYearButton", onClick: () => this.selectYear(this.year + 1) }, index.h("q2-icon", { key: '951ecf4a0c546878351fef33efbfaa641c451c8e', type: "arrow-right" }))))), index.h("div", { key: '48084e3520d2ab0a3dd0f59387e4d4183d958679', class: "month-list", onClick: this.onMonthSelection }, this.months.map((month, index$1) => (index.h("div", { class: "month" }, index.h("span", { role: "button", class: "month-button", "data-index": index$1, "aria-label": month.label, tabindex: index$1 === this.focusedIndex ? 0 : -1 }, month.abbr))))), this.today && (index.h("div", { key: '5a18fa4aef615742b863fd96c3066964186b8f92', class: "today-label" }, index$1.loc('tecton.element.calendar.today'), ": ", this.today))));
151
+ }) }, index.h("span", { key: 'a45b4604f888d680db4dc17bd0e0e1d2eed3406d', class: "year" }, this.year), index.h("q2-icon", { key: 'cd08dc672c8ad200966339d1df0664ffc711c792', class: "year-icon off", type: "chevron-down" })), index.h("div", { key: 'f42557dd4a8eeeb31bfc256a1508b91dc65d6a05', class: "month-controller" }, index.h("div", { key: '07ff15c4e7073551655b175a29a4251d02dac597', class: "cal-year-prev-next" }, index.h("q2-btn", { key: '969e197aba094a6c021f0917ed40da908630587f', label: index$1.loc('tecton.element.calendar.previousYear'), "hide-label": true, class: "cal-nav-btn prev-year", "test-id": "previousYearButton", onClick: () => this.selectYear(this.year - 1) }, index.h("q2-icon", { key: 'dbcaa8e8ddc32a3a2b376aa43236930617532dad', type: "arrow-left" })), index.h("q2-btn", { key: 'ad254449993df25e5da4ddb57ee7aba0d215ea59', label: index$1.loc('tecton.element.calendar.nextYear'), "hide-label": true, class: "cal-nav-btn next-year", "test-id": "nextYearButton", onClick: () => this.selectYear(this.year + 1) }, index.h("q2-icon", { key: '52e12f42f7ace465672863a0e0ba4df917f7412d', type: "arrow-right" }))))), index.h("div", { key: 'bc1ee824c1ea7123c25f3e8b42adb8618a820d8a', class: "month-list", onClick: this.onMonthSelection }, this.months.map((month, index$1) => (index.h("div", { class: "month" }, index.h("span", { role: "button", class: "month-button", "data-index": index$1, "aria-label": month.label, tabindex: index$1 === this.focusedIndex ? 0 : -1 }, month.abbr))))), this.today && (index.h("div", { key: 'fce1f228472c32f7e72c9d4fa4c25db6996dc09d', class: "today-label" }, index$1.loc('tecton.element.calendar.today'), ": ", this.today))));
152
152
  }
153
153
  get hostElement() { return index.getElement(this); }
154
154
  };
@@ -53,7 +53,7 @@ const Q2Optgroup = class {
53
53
  // #endregion
54
54
  // #region Render Methods
55
55
  render() {
56
- return (index.h("div", { key: '306cf0d06e8664a616974421d45a3083235bc03b', class: "q2-optgroup-container", hidden: this.hidden, "aria-labelledby": this.headerId, role: "group" }, index.h("div", { key: '738affcd788d0f9e2fdf548f4f14d6d98b8a1c7e', class: "q2-optgroup-header", id: this.headerId }, (this.label && index$1.loc(this.label)) || ''), index.h("div", { key: 'cff8fad7e158854df77ad3d9cb85ea578aa0edc5', class: "q2-optgroup-options" }, index.h("slot", { key: 'd5daf0a105b29ace1c1f0daf5b99ec6bc8fc684c' }))));
56
+ return (index.h("div", { key: '979cb6a0423ae7373853b897ae5b48ca6f84b095', class: "q2-optgroup-container", hidden: this.hidden, "aria-labelledby": this.headerId, role: "group" }, index.h("div", { key: '7e62006e32a809308b63379465cc7549af2edd94', class: "q2-optgroup-header", id: this.headerId }, (this.label && index$1.loc(this.label)) || ''), index.h("div", { key: '49a7dece0f48e25d8dcf9104ebd8706e14624ab7', class: "q2-optgroup-options" }, index.h("slot", { key: '0d3418b67fbc0c951561526abc81e91503d5b976' }))));
57
57
  }
58
58
  get hostElement() { return index.getElement(this); }
59
59
  static get watchers() { return {
@@ -587,7 +587,7 @@ const Q2OptionList = class {
587
587
  };
588
588
  Q2OptionList.style = Q2OptionListStyle0;
589
589
 
590
- const q2PopoverCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.container{display:none}.show{display:block;position:fixed;z-index:var(--tct-popover-z-index, 50);margin:0;padding:0;overflow:auto;background:var(--tct-popover-background, var(--app-white, #ffffff));color:var(--tct-popover-font-color, var(--t-text, #4d4d4d));min-width:var(--tct-popover-min-width, 135px);margin-block:var(--tct-popover-margin-block, 0);box-shadow:var(--tct-popover-box-shadow, var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14)));border-width:var(--tct-popover-border-width, 0);border-style:solid;border-color:var(--tct-popover-border-color, transparent);border-radius:var(--tct-popover-border-radius, 0);max-height:var(--comp-pop-max-height);left:var(--comp-pop-left);opacity:var(--comp-pop-opacity, 0);--comp-scrollbar-size:var(--tct-scrollbar-size, var(--t-scrollbar-size, var(--app-scale-1x, 5px)));--comp-scrollbar-border-radius:var(--tct-scrollbar-border-radius, var(--t-scrollbar-border-radius, var(--app-border-radius-1, 4px)));--comp-scrollbar-color:var(--tct-scrollbar-color, var(--t-scrollbar-color, var(--t-a11y-gray-color, #747474)));scrollbar-width:thin;scrollbar-color:var(--comp-scrollbar-color) transparent}:host([block]) .show{right:unset;width:var(--comp-pop-width);min-width:var(--tct-popover-min-width, unset)}:host([align=left]) .show{left:var(--comp-pop-left);right:unset}:host([align=right]) .show{right:var(--comp-pop-right);left:unset}.show.down{top:var(--tct-popover-top, var(--comp-pop-top));bottom:unset}.show.up{top:unset;bottom:var(--comp-pop-bottom)}.show.legacy{position:absolute}.show::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.show::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.show::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}click-elsewhere{position:relative;display:block}";
590
+ const q2PopoverCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.legacy.container{display:none}.legacy.show{display:block;z-index:var(--tct-popover-z-index, 50)}:popover-open,.show{position:absolute;margin:0;padding:0;overflow:auto;background:var(--tct-popover-background, var(--app-white, #ffffff));color:var(--tct-popover-font-color, var(--t-text, #4d4d4d));min-width:var(--tct-popover-min-width, 135px);margin-block:var(--tct-popover-margin-block, 0);box-shadow:var(--tct-popover-box-shadow, var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14)));border-width:var(--tct-popover-border-width, 0);border-style:solid;border-color:var(--tct-popover-border-color, transparent);border-radius:var(--tct-popover-border-radius, 0);max-height:var(--comp-pop-max-height);left:var(--comp-pop-left);opacity:var(--comp-pop-opacity, 0);--comp-scrollbar-size:var(--tct-scrollbar-size, var(--t-scrollbar-size, var(--app-scale-1x, 5px)));--comp-scrollbar-border-radius:var(--tct-scrollbar-border-radius, var(--t-scrollbar-border-radius, var(--app-border-radius-1, 4px)));--comp-scrollbar-color:var(--tct-scrollbar-color, var(--t-scrollbar-color, var(--t-a11y-gray-color, #747474)));scrollbar-width:thin;scrollbar-color:var(--comp-scrollbar-color) transparent}:popover-open.block,.show.block{right:unset;width:var(--comp-pop-width);min-width:var(--tct-popover-min-width, unset)}:popover-open.left,.show.left{left:var(--comp-pop-left);right:unset}:popover-open.right,.show.right{right:var(--comp-pop-right);left:unset}:popover-open.down,.show.down{top:var(--tct-popover-top, var(--comp-pop-top));bottom:unset}:popover-open.up,.show.up{top:unset;bottom:var(--comp-pop-bottom)}:popover-open::-webkit-scrollbar,.show::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}:popover-open::-webkit-scrollbar-thumb,.show::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}:popover-open::-webkit-scrollbar-track,.show::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}click-elsewhere{position:relative;display:block}";
591
591
  const Q2PopoverStyle0 = q2PopoverCss;
592
592
 
593
593
  const Q2Popover = class {
@@ -598,13 +598,15 @@ const Q2Popover = class {
598
598
  * The number of pixels to leave between the popover and the edge of the viewport
599
599
  */
600
600
  this.displayBuffer = 10;
601
- /** remove when Popover API is supported in iOS */
602
601
  this.orientationChanged = false;
603
602
  this.handleMinHeight = () => {
604
603
  if (this.minHeight) {
605
604
  index$1.handleDeprecationWarning(this, 'minHeight', 'prop');
606
605
  }
607
606
  };
607
+ this.handlePopoverToggleEvent = (event) => {
608
+ this.popoverStateChanged.emit({ open: event.newState === 'open' });
609
+ };
608
610
  this.setAbsoluteCSSProperties = async () => {
609
611
  const { controlElement, containerElement, currentDirection, align } = this;
610
612
  if (align === 'right') {
@@ -629,25 +631,42 @@ const Q2Popover = class {
629
631
  await index$1.waitForNextPaint();
630
632
  containerElement.style.setProperty('--comp-pop-opacity', '1');
631
633
  };
632
- this.setFixedCSSProperties = async () => {
633
- var _a, _b;
634
- const { controlElement, containerElement, currentDirection, rootElementRect } = this;
634
+ this.setPopoverAPICSSProperties = async () => {
635
+ var _a, _b, _c, _d, _e, _f;
636
+ const { controlElement, containerElement, currentDirection, isModule, align } = this;
635
637
  const { top: controlTop, bottom: controlBottom, left: controlLeft, right: controlRight, } = (_b = (_a = controlElement === null || controlElement === void 0 ? void 0 : controlElement.getBoundingClientRect) === null || _a === void 0 ? void 0 : _a.call(controlElement)) !== null && _b !== void 0 ? _b : {
636
638
  top: 0,
637
639
  bottom: 0,
638
640
  left: 0,
639
641
  right: 0,
640
642
  };
641
- const popoverLeft = controlLeft - rootElementRect.left;
643
+ const popoverLeft = controlLeft;
644
+ const popoverRight = ((_c = window === null || window === void 0 ? void 0 : window.visualViewport) === null || _c === void 0 ? void 0 : _c.width) - controlRight;
645
+ if (align === 'right') {
646
+ containerElement.style.setProperty('--comp-pop-right', `${popoverRight - window.scrollX}px`);
647
+ containerElement.style.setProperty('--comp-pop-left', 'unset');
648
+ }
649
+ else {
650
+ containerElement.style.setProperty('--comp-pop-left', `${popoverLeft + window.scrollX}px`);
651
+ containerElement.style.setProperty('--comp-pop-right', 'unset');
652
+ }
642
653
  if (this.block)
643
654
  containerElement.style.setProperty('--comp-pop-width', `${(controlElement === null || controlElement === void 0 ? void 0 : controlElement.offsetWidth) || 0}px`);
644
- containerElement.style.setProperty('--comp-pop-left', `${popoverLeft}px`);
645
- containerElement.style.setProperty('--comp-pop-right', `${rootElementRect.width + rootElementRect.left - controlRight}px`);
646
655
  if (currentDirection === 'up') {
647
- containerElement.style.setProperty('--comp-pop-bottom', `${rootElementRect.height + rootElementRect.top - controlTop}px`);
656
+ if (isModule) {
657
+ containerElement.style.setProperty('--comp-pop-bottom', `${window.innerHeight - controlTop}px`);
658
+ }
659
+ else {
660
+ containerElement.style.setProperty('--comp-pop-bottom', `${window.innerHeight - controlTop - ((_d = window === null || window === void 0 ? void 0 : window.visualViewport) === null || _d === void 0 ? void 0 : _d.offsetTop) - window.scrollY}px`);
661
+ }
648
662
  }
649
663
  if (currentDirection === 'down') {
650
- containerElement.style.setProperty('--comp-pop-top', `${controlBottom - rootElementRect.top}px`);
664
+ if (isModule) {
665
+ containerElement.style.setProperty('--comp-pop-top', `${controlBottom}px`);
666
+ }
667
+ else {
668
+ containerElement.style.setProperty('--comp-pop-top', `${controlBottom + ((_f = (_e = window === null || window === void 0 ? void 0 : window.visualViewport) === null || _e === void 0 ? void 0 : _e.offsetTop) !== null && _f !== void 0 ? _f : 0) + window.scrollY}px`);
669
+ }
651
670
  }
652
671
  // Wait for one paint to prevent layout thrashing
653
672
  await index$1.waitForNextPaint();
@@ -664,7 +683,7 @@ const Q2Popover = class {
664
683
  };
665
684
  this.currentDirection = undefined;
666
685
  this.show = false;
667
- this.align = undefined;
686
+ this.align = 'left';
668
687
  this.block = undefined;
669
688
  this.controlElement = undefined;
670
689
  this.direction = undefined;
@@ -677,9 +696,21 @@ const Q2Popover = class {
677
696
  // #region Component Lifecycle Events
678
697
  disconnectedCallback() {
679
698
  this.removeViewportListeners();
699
+ this.containerElement.removeEventListener('toggle', this.handlePopoverToggleEvent);
700
+ this.containerElement = null;
701
+ this.contentElement = null;
702
+ this.controlElement = null;
703
+ }
704
+ componentWillLoad() {
705
+ if (!this.supportsPopoverAPI) {
706
+ console.warn('The Popover API is not supported in this browser. Please update your browser to the latest version. The component will use legacy mode.');
707
+ this.mode = 'legacy';
708
+ }
680
709
  }
681
710
  componentDidLoad() {
682
711
  this.handleMinHeight();
712
+ if (this.supportsPopoverAPI)
713
+ this.containerElement.addEventListener('toggle', this.handlePopoverToggleEvent);
683
714
  if (this.open)
684
715
  this.determinePopDirection();
685
716
  }
@@ -706,7 +737,6 @@ const Q2Popover = class {
706
737
  this.handleMinHeight();
707
738
  }
708
739
  async openChanged(open) {
709
- this.setRootElement();
710
740
  this.popoverStateChanged.emit({ open });
711
741
  if (open) {
712
742
  this.addViewportListeners();
@@ -715,7 +745,12 @@ const Q2Popover = class {
715
745
  else {
716
746
  this.removeViewportListeners();
717
747
  this.currentDirection = undefined;
718
- this.show = false;
748
+ if (this.mode === 'legacy' || !this.supportsPopoverAPI) {
749
+ this.show = false;
750
+ }
751
+ else {
752
+ this.containerElement.hidePopover();
753
+ }
719
754
  await index$1.waitForNextPaint();
720
755
  this.clearCSSProperties();
721
756
  }
@@ -738,6 +773,9 @@ const Q2Popover = class {
738
773
  return undefined;
739
774
  }
740
775
  }
776
+ get supportsPopoverAPI() {
777
+ return Object.hasOwn(HTMLElement.prototype, 'popover');
778
+ }
741
779
  get validatedMaxHeight() {
742
780
  const { maxHeight } = this;
743
781
  return isNaN(maxHeight) ? undefined : maxHeight;
@@ -745,11 +783,10 @@ const Q2Popover = class {
745
783
  addViewportListeners() {
746
784
  var _a;
747
785
  window.addEventListener('resize', this.viewPortOrientationChanged);
748
- // #region remove when Popover API is supported in iOS
786
+ visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.addEventListener('resize', this.viewPortChanged);
749
787
  window.addEventListener('scroll', this.viewPortChanged, { passive: true, capture: true });
750
- (_a = screen === null || screen === void 0 ? void 0 : screen.orientation) === null || _a === void 0 ? void 0 : _a.addEventListener('change', this.viewPortOrientationChanged);
788
+ (_a = screen === null || screen === void 0 ? void 0 : screen.orientation) === null || _a === void 0 ? void 0 : _a.addEventListener('orientationchange', this.viewPortOrientationChanged);
751
789
  window.addEventListener('orientationchange', this.viewPortOrientationChanged);
752
- // #endregion
753
790
  }
754
791
  clearCSSProperties() {
755
792
  this.containerElement.style.removeProperty('--comp-pop-max-height');
@@ -820,72 +857,38 @@ const Q2Popover = class {
820
857
  removeViewportListeners() {
821
858
  var _a;
822
859
  window.removeEventListener('resize', this.viewPortOrientationChanged);
823
- // #region remove when Popover API is supported in iOS
824
- window.removeEventListener('scroll', this.viewPortChanged);
860
+ visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.removeEventListener('resize', this.viewPortChanged);
861
+ window.removeEventListener('scroll', this.viewPortChanged, { capture: true });
825
862
  (_a = screen === null || screen === void 0 ? void 0 : screen.orientation) === null || _a === void 0 ? void 0 : _a.removeEventListener('orientationchange', this.viewPortOrientationChanged);
826
863
  window.removeEventListener('orientationchange', this.viewPortOrientationChanged);
827
- // #endregion
828
864
  }
829
865
  setDirectionAndShow(direction) {
830
- this.setRootElement();
831
866
  // Due to some runtime inconsistency across devices/browsers we need to add one more check here because the
832
867
  // popover can be closed between the time the popover is opened and the time the direction is determined
833
868
  const isOpen = this.open;
834
869
  if (!isOpen)
835
870
  return;
836
871
  this.currentDirection = direction;
837
- this.show = true;
838
- if (this.mode === 'legacy') {
872
+ if (this.mode === 'legacy' || !this.supportsPopoverAPI) {
873
+ this.show = true;
839
874
  this.setAbsoluteCSSProperties();
840
875
  }
841
876
  else {
842
- this.setFixedCSSProperties();
877
+ this.setPopoverAPICSSProperties();
878
+ this.containerElement.showPopover();
843
879
  }
844
880
  }
845
- setRootElement() {
846
- let currentElement = this.hostElement;
847
- while (currentElement && currentElement !== document.documentElement) {
848
- const computedStyle = window.getComputedStyle(currentElement);
849
- // Check if the element has any styles applied that create a new containg block
850
- if (computedStyle.transform !== 'none' ||
851
- computedStyle.filter !== 'none' ||
852
- computedStyle.perspective !== 'none' ||
853
- computedStyle.containerType !== 'normal' ||
854
- ['transform', 'perspective', 'filter'].includes(computedStyle.willChange) ||
855
- ['layout', 'paint', 'strict', 'content'].includes(computedStyle.contain)) {
856
- this.rootElementRect = currentElement.getBoundingClientRect();
857
- return;
858
- }
859
- const rootNode = currentElement.getRootNode();
860
- const isRootNodeWebComponent = typeof ShadowRoot !== 'undefined' &&
861
- rootNode instanceof ShadowRoot &&
862
- rootNode.host instanceof HTMLElement;
863
- if (isRootNodeWebComponent) {
864
- currentElement = rootNode.host;
865
- }
866
- else {
867
- currentElement = currentElement.parentElement;
868
- }
869
- }
870
- // Return the document's bounding rect if no element is found
871
- this.rootElementRect = {
872
- top: 0,
873
- bottom: 0,
874
- left: 0,
875
- right: 0,
876
- height: window.visualViewport.height,
877
- width: window.visualViewport.width,
878
- };
879
- }
880
881
  // #endregion
881
882
  // #region Render Methods
882
883
  render() {
883
- const containerClasses = ['container', this.currentDirection];
884
+ const containerClasses = ['container', this.currentDirection, this.align];
884
885
  if (this.show)
885
886
  containerClasses.push('show');
887
+ if (this.block)
888
+ containerClasses.push('block');
886
889
  if (this.mode === 'legacy')
887
890
  containerClasses.push('legacy');
888
- return (index.h("div", { key: 'ec69329181e23e7c8f46fc2d2f5b9453f0f866d1', ref: el => (this.containerElement = el), class: containerClasses.join(' '), "test-id": "outerContainer", tabIndex: -1 }, index.h("div", { key: '7814ab2ab64fe363d76d1ed34005b7512c877d17', ref: el => (this.contentElement = el), class: "content" }, index.h("slot", { key: '7a3fec41c603d97be3bcaa0d7fd48c0517b92f7c' }))));
891
+ return (index.h("div", { key: 'acaaed8fe34bb4ee949c4032be9a08b61a28b238', ref: el => (this.containerElement = el), class: containerClasses.join(' '), "test-id": "outerContainer", tabIndex: -1, popover: "auto" }, index.h("div", { key: 'b8e93864b158caa9e9e2cde64a84d9ea9288b761', ref: el => (this.contentElement = el), class: "content" }, index.h("slot", { key: 'e43fee80ed07626f26aba98271c8408f9d69a37e' }))));
889
892
  }
890
893
  get hostElement() { return index.getElement(this); }
891
894
  static get watchers() { return {