q2-tecton-elements 1.54.6 → 1.54.8

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 (418) hide show
  1. package/dist/bundle-report.json +266 -209
  2. package/dist/cjs/{index-76f63767.js → index-7aecfed8.js} +33 -1
  3. package/dist/cjs/index-7aecfed8.js.map +1 -0
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/q2-action-group.cjs.entry.js +2 -2
  6. package/dist/cjs/q2-action-sheet.cjs.entry.js +2 -2
  7. package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
  8. package/dist/cjs/q2-badge_7.cjs.entry.js +4 -4
  9. package/dist/cjs/q2-calendar.cjs.entry.js +1 -1
  10. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  11. package/dist/cjs/q2-carousel-pane.cjs.entry.js +3 -3
  12. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-chart-area.cjs.entry.js +2 -2
  14. package/dist/cjs/q2-chart-bar.cjs.entry.js +2 -2
  15. package/dist/cjs/q2-chart-donut.cjs.entry.js +2 -2
  16. package/dist/cjs/q2-checkbox-group.cjs.entry.js +1 -1
  17. package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
  18. package/dist/cjs/q2-currency.cjs.entry.js +1 -1
  19. package/dist/cjs/q2-data-table.cjs.entry.js +1 -1
  20. package/dist/cjs/q2-detail.cjs.entry.js +2 -2
  21. package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
  22. package/dist/cjs/q2-dropdown.cjs.entry.js +27 -22
  23. package/dist/cjs/q2-dropdown.cjs.entry.js.map +1 -1
  24. package/dist/cjs/q2-editable-field.cjs.entry.js +1 -1
  25. package/dist/cjs/q2-example.cjs.entry.js +1 -1
  26. package/dist/cjs/q2-file-picker.cjs.entry.js +1 -1
  27. package/dist/cjs/q2-formatted-text.cjs.entry.js +1 -1
  28. package/dist/cjs/q2-item_3.cjs.entry.js +3 -3
  29. package/dist/cjs/q2-legend.cjs.entry.js +1 -1
  30. package/dist/cjs/q2-loc.cjs.entry.js +2 -2
  31. package/dist/cjs/q2-message.cjs.entry.js +2 -2
  32. package/dist/cjs/q2-month-picker.cjs.entry.js +3 -3
  33. package/dist/cjs/q2-optgroup.cjs.entry.js +2 -2
  34. package/dist/cjs/q2-option-list_2.cjs.entry.js +73 -69
  35. package/dist/cjs/q2-option-list_2.cjs.entry.js.map +1 -1
  36. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-pagination.cjs.entry.js +4 -4
  38. package/dist/cjs/q2-pill.cjs.entry.js +2 -2
  39. package/dist/cjs/q2-radio-group.cjs.entry.js +1 -1
  40. package/dist/cjs/q2-radio.cjs.entry.js +1 -1
  41. package/dist/cjs/q2-relative-time.cjs.entry.js +2 -2
  42. package/dist/cjs/q2-resize-observer.cjs.entry.js +1 -1
  43. package/dist/cjs/q2-section.cjs.entry.js +3 -3
  44. package/dist/cjs/q2-select.cjs.entry.js +127 -13
  45. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  46. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  47. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +2 -2
  48. package/dist/cjs/q2-stepper.cjs.entry.js +2 -2
  49. package/dist/cjs/q2-tag.cjs.entry.js +2 -2
  50. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  51. package/dist/cjs/q2-textarea.cjs.entry.js +2 -2
  52. package/dist/cjs/q2-tooltip.cjs.entry.js +1 -1
  53. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -2
  54. package/dist/collection/components/click-elsewhere/click-elsewhere.js.map +1 -1
  55. package/dist/collection/components/click-elsewhere/test/click-elsewhere-test.e2e.js.map +1 -1
  56. package/dist/collection/components/q2-action-group/q2-action-group.js +1 -1
  57. package/dist/collection/components/q2-action-group/q2-action-group.js.map +1 -1
  58. package/dist/collection/components/q2-action-group/test/q2-action-group.e2e.js.map +1 -1
  59. package/dist/collection/components/q2-action-group/test/q2-action-group.spec.js.map +1 -1
  60. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +1 -1
  61. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js.map +1 -1
  62. package/dist/collection/components/q2-action-sheet/test/q2-action-sheet-test.e2e.js.map +1 -1
  63. package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
  64. package/dist/collection/components/q2-avatar/q2-avatar.js.map +1 -1
  65. package/dist/collection/components/q2-avatar/test/q2-avatar-test.e2e.js.map +1 -1
  66. package/dist/collection/components/q2-badge/q2-badge.js.map +1 -1
  67. package/dist/collection/components/q2-badge/test/q2-badge-test.e2e.js.map +1 -1
  68. package/dist/collection/components/q2-btn/q2-btn.js.map +1 -1
  69. package/dist/collection/components/q2-btn/test/q2-btn-test.e2e.js.map +1 -1
  70. package/dist/collection/components/q2-calendar/q2-calendar-helpers.js.map +1 -1
  71. package/dist/collection/components/q2-calendar/q2-calendar-types.js.map +1 -1
  72. package/dist/collection/components/q2-calendar/q2-calendar-validation.js.map +1 -1
  73. package/dist/collection/components/q2-calendar/q2-calendar.js.map +1 -1
  74. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  75. package/dist/collection/components/q2-calendar/q2-month-picker.js.map +1 -1
  76. package/dist/collection/components/q2-calendar/test/helpers-test.e2e.js.map +1 -1
  77. package/dist/collection/components/q2-calendar/test/q2-calendar-month-picker-test.e2e.js.map +1 -1
  78. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js +2 -2
  79. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js.map +1 -1
  80. package/dist/collection/components/q2-calendar/test/validation-test.e2e.js.map +1 -1
  81. package/dist/collection/components/q2-card/q2-card.js.map +1 -1
  82. package/dist/collection/components/q2-card/test/q2-card-test.e2e.js.map +1 -1
  83. package/dist/collection/components/q2-carousel/q2-carousel.js.map +1 -1
  84. package/dist/collection/components/q2-carousel/test/q2-carousel-test.e2e.js.map +1 -1
  85. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  86. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js.map +1 -1
  87. package/dist/collection/components/q2-carousel-pane/test/q2-carousel-pane-test.e2e.js.map +1 -1
  88. package/dist/collection/components/q2-carousel-pane/test/q2-carousel-pane-test.spec.js.map +1 -1
  89. package/dist/collection/components/q2-chart-area/q2-chart-area.js +1 -1
  90. package/dist/collection/components/q2-chart-area/q2-chart-area.js.map +1 -1
  91. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js.map +1 -1
  92. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +1 -1
  93. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js.map +1 -1
  94. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.e2e.js.map +1 -1
  95. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +1 -1
  96. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js.map +1 -1
  97. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js.map +1 -1
  98. package/dist/collection/components/q2-checkbox/q2-checkbox.js.map +1 -1
  99. package/dist/collection/components/q2-checkbox/test/q2-checkbox-test.e2e.js.map +1 -1
  100. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js.map +1 -1
  101. package/dist/collection/components/q2-checkbox-group/test/q2-checkbox-group-test.e2e.js.map +1 -1
  102. package/dist/collection/components/q2-currency/q2-currency.js +1 -1
  103. package/dist/collection/components/q2-currency/q2-currency.js.map +1 -1
  104. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js.map +1 -1
  105. package/dist/collection/components/q2-data-table/q2-data-table.js.map +1 -1
  106. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js.map +1 -1
  107. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  108. package/dist/collection/components/q2-detail/q2-detail.js.map +1 -1
  109. package/dist/collection/components/q2-detail/test/q2-detail-test.e2e.js.map +1 -1
  110. package/dist/collection/components/q2-dropdown/q2-dropdown.js +27 -21
  111. package/dist/collection/components/q2-dropdown/q2-dropdown.js.map +1 -1
  112. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js +34 -32
  113. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js.map +1 -1
  114. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js.map +1 -1
  115. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js.map +1 -1
  116. package/dist/collection/components/q2-editable-field/q2-editable-field.js.map +1 -1
  117. package/dist/collection/components/q2-editable-field/test/q2-editable-field-test.e2e.js.map +1 -1
  118. package/dist/collection/components/q2-example/q2-example.js +1 -1
  119. package/dist/collection/components/q2-example/q2-example.js.map +1 -1
  120. package/dist/collection/components/q2-example/test/q2-example.e2e.js.map +1 -1
  121. package/dist/collection/components/q2-example/test/q2-example.spec.js.map +1 -1
  122. package/dist/collection/components/q2-file-picker/q2-file-picker.js.map +1 -1
  123. package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.e2e.js.map +1 -1
  124. package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.spec.js.map +1 -1
  125. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +1 -1
  126. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js.map +1 -1
  127. package/dist/collection/components/q2-formatted-text/test/q2-formatted-text-test.e2e.js.map +1 -1
  128. package/dist/collection/components/q2-icon/q2-icon-types.js.map +1 -1
  129. package/dist/collection/components/q2-icon/q2-icon.js.map +1 -1
  130. package/dist/collection/components/q2-icon/test/q2-icon-test.e2e.js.map +1 -1
  131. package/dist/collection/components/q2-input/formatting/alpha.js.map +1 -1
  132. package/dist/collection/components/q2-input/formatting/alpha.spec.js.map +1 -1
  133. package/dist/collection/components/q2-input/formatting/alphanumeric.js.map +1 -1
  134. package/dist/collection/components/q2-input/formatting/alphanumeric.spec.js.map +1 -1
  135. package/dist/collection/components/q2-input/formatting/credit-card.js.map +1 -1
  136. package/dist/collection/components/q2-input/formatting/credit-card.spec.js.map +1 -1
  137. package/dist/collection/components/q2-input/formatting/currency.js.map +1 -1
  138. package/dist/collection/components/q2-input/formatting/currency.spec.js.map +1 -1
  139. package/dist/collection/components/q2-input/formatting/date.js.map +1 -1
  140. package/dist/collection/components/q2-input/formatting/date.spec.js.map +1 -1
  141. package/dist/collection/components/q2-input/formatting/generic.js.map +1 -1
  142. package/dist/collection/components/q2-input/formatting/number.js.map +1 -1
  143. package/dist/collection/components/q2-input/formatting/numeric.js.map +1 -1
  144. package/dist/collection/components/q2-input/formatting/numeric.spec.js.map +1 -1
  145. package/dist/collection/components/q2-input/formatting/phone.js.map +1 -1
  146. package/dist/collection/components/q2-input/formatting/phone.spec.js.map +1 -1
  147. package/dist/collection/components/q2-input/formatting/postal.js.map +1 -1
  148. package/dist/collection/components/q2-input/formatting/postal.spec.js.map +1 -1
  149. package/dist/collection/components/q2-input/formatting/ssn.js.map +1 -1
  150. package/dist/collection/components/q2-input/formatting/ssn.spec.js.map +1 -1
  151. package/dist/collection/components/q2-input/formatting/tin.js.map +1 -1
  152. package/dist/collection/components/q2-input/formatting/tin.spec.js.map +1 -1
  153. package/dist/collection/components/q2-input/q2-input-types.js.map +1 -1
  154. package/dist/collection/components/q2-input/q2-input.js +1 -1
  155. package/dist/collection/components/q2-input/q2-input.js.map +1 -1
  156. package/dist/collection/components/q2-input/test/q2-input-credit-card-test.e2e.js.map +1 -1
  157. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js.map +1 -1
  158. package/dist/collection/components/q2-input/test/q2-input-test.spec.js.map +1 -1
  159. package/dist/collection/components/q2-item/q2-item.js +1 -1
  160. package/dist/collection/components/q2-item/q2-item.js.map +1 -1
  161. package/dist/collection/components/q2-item/test/q2-item-test.e2e.js.map +1 -1
  162. package/dist/collection/components/q2-item/test/q2-item-test.spec.js.map +1 -1
  163. package/dist/collection/components/q2-legend/q2-legend.js +1 -1
  164. package/dist/collection/components/q2-legend/q2-legend.js.map +1 -1
  165. package/dist/collection/components/q2-legend/test/q2-legend-test.e2e.js.map +1 -1
  166. package/dist/collection/components/q2-legend/test/q2-legend-test.spec.js.map +1 -1
  167. package/dist/collection/components/q2-link/q2-link.js.map +1 -1
  168. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js.map +1 -1
  169. package/dist/collection/components/q2-link/test/q2-link-test.spec.js.map +1 -1
  170. package/dist/collection/components/q2-list/q2-list.js +1 -1
  171. package/dist/collection/components/q2-list/q2-list.js.map +1 -1
  172. package/dist/collection/components/q2-list/test/q2-list-test.e2e.js.map +1 -1
  173. package/dist/collection/components/q2-loading/q2-loading.js.map +1 -1
  174. package/dist/collection/components/q2-loading/skeleton/q2-loading-element/index.js.map +1 -1
  175. package/dist/collection/components/q2-loading/skeleton/shapes.js.map +1 -1
  176. package/dist/collection/components/q2-loading/test/q2-loading-element-test.e2e.js.map +1 -1
  177. package/dist/collection/components/q2-loading/test/q2-loading-test.e2e.js.map +1 -1
  178. package/dist/collection/components/q2-loc/q2-loc.js +1 -1
  179. package/dist/collection/components/q2-loc/q2-loc.js.map +1 -1
  180. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js.map +1 -1
  181. package/dist/collection/components/q2-loc/test/q2-loc-test.spec.js.map +1 -1
  182. package/dist/collection/components/q2-message/q2-message.js +1 -1
  183. package/dist/collection/components/q2-message/q2-message.js.map +1 -1
  184. package/dist/collection/components/q2-message/test/q2-message-test.e2e.js.map +1 -1
  185. package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
  186. package/dist/collection/components/q2-optgroup/q2-optgroup.js.map +1 -1
  187. package/dist/collection/components/q2-optgroup/test/q2-optgroup-test.e2e.js.map +1 -1
  188. package/dist/collection/components/q2-option/q2-option.js.map +1 -1
  189. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js.map +1 -1
  190. package/dist/collection/components/q2-option/test/q2-option-test.spec.js.map +1 -1
  191. package/dist/collection/components/q2-option-list/q2-option-list.js.map +1 -1
  192. package/dist/collection/components/q2-option-list/test/q2-option-list-test.e2e.js.map +1 -1
  193. package/dist/collection/components/q2-option-list/test/q2-option-list.spec.js.map +1 -1
  194. package/dist/collection/components/q2-pagination/q2-pagination.js +3 -3
  195. package/dist/collection/components/q2-pagination/q2-pagination.js.map +1 -1
  196. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js +1 -0
  197. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js.map +1 -1
  198. package/dist/collection/components/q2-pill/q2-pill.js +1 -1
  199. package/dist/collection/components/q2-pill/q2-pill.js.map +1 -1
  200. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js.map +1 -1
  201. package/dist/collection/components/q2-popover/q2-popover.css +18 -10
  202. package/dist/collection/components/q2-popover/q2-popover.js +74 -69
  203. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  204. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js +1 -34
  205. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js.map +1 -1
  206. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js +902 -511
  207. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js.map +1 -1
  208. package/dist/collection/components/q2-radio/q2-radio.js.map +1 -1
  209. package/dist/collection/components/q2-radio/test/q2-radio-test.e2e.js.map +1 -1
  210. package/dist/collection/components/q2-radio-group/q2-radio-group.js.map +1 -1
  211. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.e2e.js.map +1 -1
  212. package/dist/collection/components/q2-relative-time/q2-relative-time.js +1 -1
  213. package/dist/collection/components/q2-relative-time/q2-relative-time.js.map +1 -1
  214. package/dist/collection/components/q2-relative-time/test/q2-relative-time-test.e2e.js.map +1 -1
  215. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +1 -1
  216. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js.map +1 -1
  217. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.e2e.js.map +1 -1
  218. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.spec.js.map +1 -1
  219. package/dist/collection/components/q2-section/q2-section.js +2 -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.map +1 -1
  222. package/dist/collection/components/q2-select/q2-select.js +148 -15
  223. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  224. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js.map +1 -1
  225. package/dist/collection/components/q2-select/test/q2-select-test.spec.js +552 -0
  226. package/dist/collection/components/q2-select/test/q2-select-test.spec.js.map +1 -0
  227. package/dist/collection/components/q2-stepper/q2-stepper.js +1 -1
  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.map +1 -1
  230. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js.map +1 -1
  231. package/dist/collection/components/q2-stepper-pane/test/q2-stepper-pane-test.e2e.js.map +1 -1
  232. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
  233. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js.map +1 -1
  234. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js.map +1 -1
  235. package/dist/collection/components/q2-tab-container/q2-tab-container.js +1 -1
  236. package/dist/collection/components/q2-tab-container/q2-tab-container.js.map +1 -1
  237. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.e2e.js.map +1 -1
  238. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.spec.js.map +1 -1
  239. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  240. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js.map +1 -1
  241. package/dist/collection/components/q2-tab-pane/test/q2-tab-pane-test.e2e.js.map +1 -1
  242. package/dist/collection/components/q2-tag/q2-tag.js +1 -1
  243. package/dist/collection/components/q2-tag/q2-tag.js.map +1 -1
  244. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js +5 -0
  245. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js.map +1 -1
  246. package/dist/collection/components/q2-textarea/q2-textarea.js +1 -1
  247. package/dist/collection/components/q2-textarea/q2-textarea.js.map +1 -1
  248. package/dist/collection/components/q2-textarea/test/q2-textarea-test.e2e.js.map +1 -1
  249. package/dist/collection/components/q2-tooltip/q2-tooltip.js.map +1 -1
  250. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.e2e.js.map +1 -1
  251. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane-types.js.map +1 -1
  252. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
  253. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js.map +1 -1
  254. package/dist/collection/components/tecton-tab-pane/test/tecton-tab-pane-test.e2e.js.map +1 -1
  255. package/dist/collection/index.js.map +1 -1
  256. package/dist/collection/utils/action-sheet.js.map +1 -1
  257. package/dist/collection/utils/charting.js.map +1 -1
  258. package/dist/collection/utils/helpers.js.map +1 -1
  259. package/dist/collection/utils/index.js +37 -0
  260. package/dist/collection/utils/index.js.map +1 -1
  261. package/dist/collection/utils/mirror-emit.js.map +1 -1
  262. package/dist/collection/utils/sanitize-html-string.js.map +1 -1
  263. package/dist/collection/utils/sanitize-regex-string.js.map +1 -1
  264. package/dist/collection/utils/test/action-sheet-test.e2e.js.map +1 -1
  265. package/dist/collection/utils/test/index.spec.js.map +1 -1
  266. package/dist/components/index2.js +32 -1
  267. package/dist/components/index2.js.map +1 -1
  268. package/dist/components/q2-action-group.js +1 -1
  269. package/dist/components/q2-action-sheet.js +1 -1
  270. package/dist/components/q2-avatar2.js +1 -1
  271. package/dist/components/q2-carousel-pane.js +2 -2
  272. package/dist/components/q2-chart-area.js +1 -1
  273. package/dist/components/q2-chart-bar.js +1 -1
  274. package/dist/components/q2-chart-donut.js +1 -1
  275. package/dist/components/q2-currency.js +1 -1
  276. package/dist/components/q2-detail.js +1 -1
  277. package/dist/components/q2-dropdown.js +26 -21
  278. package/dist/components/q2-dropdown.js.map +1 -1
  279. package/dist/components/q2-example.js +1 -1
  280. package/dist/components/q2-formatted-text.js +1 -1
  281. package/dist/components/q2-input2.js +1 -1
  282. package/dist/components/q2-item2.js +1 -1
  283. package/dist/components/q2-legend2.js +1 -1
  284. package/dist/components/q2-list2.js +1 -1
  285. package/dist/components/q2-loc.js +1 -1
  286. package/dist/components/q2-message2.js +1 -1
  287. package/dist/components/q2-month-picker.js +2 -2
  288. package/dist/components/q2-optgroup2.js +1 -1
  289. package/dist/components/q2-pagination.js +3 -3
  290. package/dist/components/q2-pill.js +1 -1
  291. package/dist/components/q2-popover2.js +73 -69
  292. package/dist/components/q2-popover2.js.map +1 -1
  293. package/dist/components/q2-relative-time.js +1 -1
  294. package/dist/components/q2-resize-observer2.js +1 -1
  295. package/dist/components/q2-section.js +2 -2
  296. package/dist/components/q2-select2.js +130 -16
  297. package/dist/components/q2-select2.js.map +1 -1
  298. package/dist/components/q2-stepper-vertical.js +1 -1
  299. package/dist/components/q2-stepper.js +1 -1
  300. package/dist/components/q2-tab-container.js +1 -1
  301. package/dist/components/q2-tab-pane.js +1 -1
  302. package/dist/components/q2-tag.js +1 -1
  303. package/dist/components/q2-textarea.js +1 -1
  304. package/dist/components/tecton-tab-pane.js +2 -2
  305. package/dist/esm/{index-504f1a9e.js → index-99c46474.js} +33 -2
  306. package/dist/{cjs/index-76f63767.js.map → esm/index-99c46474.js.map} +1 -1
  307. package/dist/esm/loader.js +1 -1
  308. package/dist/esm/q2-action-group.entry.js +2 -2
  309. package/dist/esm/q2-action-sheet.entry.js +2 -2
  310. package/dist/esm/q2-avatar.entry.js +1 -1
  311. package/dist/esm/q2-badge_7.entry.js +4 -4
  312. package/dist/esm/q2-calendar.entry.js +1 -1
  313. package/dist/esm/q2-card.entry.js +1 -1
  314. package/dist/esm/q2-carousel-pane.entry.js +3 -3
  315. package/dist/esm/q2-carousel.entry.js +1 -1
  316. package/dist/esm/q2-chart-area.entry.js +2 -2
  317. package/dist/esm/q2-chart-bar.entry.js +2 -2
  318. package/dist/esm/q2-chart-donut.entry.js +2 -2
  319. package/dist/esm/q2-checkbox-group.entry.js +1 -1
  320. package/dist/esm/q2-checkbox.entry.js +1 -1
  321. package/dist/esm/q2-currency.entry.js +1 -1
  322. package/dist/esm/q2-data-table.entry.js +1 -1
  323. package/dist/esm/q2-detail.entry.js +2 -2
  324. package/dist/esm/q2-dropdown-item.entry.js +1 -1
  325. package/dist/esm/q2-dropdown.entry.js +27 -22
  326. package/dist/esm/q2-dropdown.entry.js.map +1 -1
  327. package/dist/esm/q2-editable-field.entry.js +1 -1
  328. package/dist/esm/q2-example.entry.js +1 -1
  329. package/dist/esm/q2-file-picker.entry.js +1 -1
  330. package/dist/esm/q2-formatted-text.entry.js +1 -1
  331. package/dist/esm/q2-item_3.entry.js +3 -3
  332. package/dist/esm/q2-legend.entry.js +1 -1
  333. package/dist/esm/q2-loc.entry.js +2 -2
  334. package/dist/esm/q2-message.entry.js +2 -2
  335. package/dist/esm/q2-month-picker.entry.js +3 -3
  336. package/dist/esm/q2-optgroup.entry.js +2 -2
  337. package/dist/esm/q2-option-list_2.entry.js +73 -69
  338. package/dist/esm/q2-option-list_2.entry.js.map +1 -1
  339. package/dist/esm/q2-option.entry.js +1 -1
  340. package/dist/esm/q2-pagination.entry.js +4 -4
  341. package/dist/esm/q2-pill.entry.js +2 -2
  342. package/dist/esm/q2-radio-group.entry.js +1 -1
  343. package/dist/esm/q2-radio.entry.js +1 -1
  344. package/dist/esm/q2-relative-time.entry.js +2 -2
  345. package/dist/esm/q2-resize-observer.entry.js +1 -1
  346. package/dist/esm/q2-section.entry.js +3 -3
  347. package/dist/esm/q2-select.entry.js +128 -14
  348. package/dist/esm/q2-select.entry.js.map +1 -1
  349. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  350. package/dist/esm/q2-stepper-vertical.entry.js +2 -2
  351. package/dist/esm/q2-stepper.entry.js +2 -2
  352. package/dist/esm/q2-tag.entry.js +2 -2
  353. package/dist/esm/q2-tecton-elements.js +1 -1
  354. package/dist/esm/q2-textarea.entry.js +2 -2
  355. package/dist/esm/q2-tooltip.entry.js +1 -1
  356. package/dist/esm/tecton-tab-pane.entry.js +2 -2
  357. package/dist/jest.setup.js +33 -0
  358. package/dist/jest.setup.js.map +1 -0
  359. package/dist/q2-tecton-elements/{index-504f1a9e.js → index-99c46474.js} +76 -51
  360. package/dist/q2-tecton-elements/index-99c46474.js.map +1 -0
  361. package/dist/q2-tecton-elements/q2-action-group.entry.js +4 -4
  362. package/dist/q2-tecton-elements/q2-action-sheet.entry.js +34 -34
  363. package/dist/q2-tecton-elements/q2-avatar.entry.js +6 -6
  364. package/dist/q2-tecton-elements/q2-badge_7.entry.js +17 -17
  365. package/dist/q2-tecton-elements/q2-calendar.entry.js +1 -1
  366. package/dist/q2-tecton-elements/q2-card.entry.js +1 -1
  367. package/dist/q2-tecton-elements/q2-carousel-pane.entry.js +21 -21
  368. package/dist/q2-tecton-elements/q2-carousel.entry.js +1 -1
  369. package/dist/q2-tecton-elements/q2-chart-area.entry.js +3 -3
  370. package/dist/q2-tecton-elements/q2-chart-bar.entry.js +80 -80
  371. package/dist/q2-tecton-elements/q2-chart-donut.entry.js +101 -101
  372. package/dist/q2-tecton-elements/q2-checkbox-group.entry.js +1 -1
  373. package/dist/q2-tecton-elements/q2-checkbox.entry.js +1 -1
  374. package/dist/q2-tecton-elements/q2-currency.entry.js +6 -6
  375. package/dist/q2-tecton-elements/q2-data-table.entry.js +1 -1
  376. package/dist/q2-tecton-elements/q2-detail.entry.js +39 -39
  377. package/dist/q2-tecton-elements/q2-dropdown-item.entry.js +1 -1
  378. package/dist/q2-tecton-elements/q2-dropdown.entry.js +81 -75
  379. package/dist/q2-tecton-elements/q2-dropdown.entry.js.map +1 -1
  380. package/dist/q2-tecton-elements/q2-editable-field.entry.js +1 -1
  381. package/dist/q2-tecton-elements/q2-example.entry.js +1 -1
  382. package/dist/q2-tecton-elements/q2-file-picker.entry.js +1 -1
  383. package/dist/q2-tecton-elements/q2-formatted-text.entry.js +2 -2
  384. package/dist/q2-tecton-elements/q2-item_3.entry.js +19 -19
  385. package/dist/q2-tecton-elements/q2-legend.entry.js +2 -2
  386. package/dist/q2-tecton-elements/q2-loc.entry.js +2 -2
  387. package/dist/q2-tecton-elements/q2-message.entry.js +21 -21
  388. package/dist/q2-tecton-elements/q2-month-picker.entry.js +14 -14
  389. package/dist/q2-tecton-elements/q2-optgroup.entry.js +8 -8
  390. package/dist/q2-tecton-elements/q2-option-list_2.entry.js +150 -140
  391. package/dist/q2-tecton-elements/q2-option-list_2.entry.js.map +1 -1
  392. package/dist/q2-tecton-elements/q2-option.entry.js +1 -1
  393. package/dist/q2-tecton-elements/q2-pagination.entry.js +19 -19
  394. package/dist/q2-tecton-elements/q2-pill.entry.js +14 -14
  395. package/dist/q2-tecton-elements/q2-radio-group.entry.js +5 -5
  396. package/dist/q2-tecton-elements/q2-radio.entry.js +1 -1
  397. package/dist/q2-tecton-elements/q2-relative-time.entry.js +2 -2
  398. package/dist/q2-tecton-elements/q2-resize-observer.entry.js +1 -1
  399. package/dist/q2-tecton-elements/q2-section.entry.js +19 -19
  400. package/dist/q2-tecton-elements/q2-select.entry.js +191 -90
  401. package/dist/q2-tecton-elements/q2-select.entry.js.map +1 -1
  402. package/dist/q2-tecton-elements/q2-stepper-pane.entry.js +1 -1
  403. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js +28 -28
  404. package/dist/q2-tecton-elements/q2-stepper.entry.js +29 -29
  405. package/dist/q2-tecton-elements/q2-tag.entry.js +6 -6
  406. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  407. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  408. package/dist/q2-tecton-elements/q2-textarea.entry.js +3 -3
  409. package/dist/q2-tecton-elements/q2-tooltip.entry.js +1 -1
  410. package/dist/q2-tecton-elements/tecton-tab-pane.entry.js +9 -9
  411. package/dist/types/builds/q2e/development/tecton/tecton/packages/q2-tecton-elements/.stencil/jest.setup.d.ts +10 -0
  412. package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +6 -4
  413. package/dist/types/components/q2-popover/q2-popover.d.ts +4 -4
  414. package/dist/types/components/q2-select/q2-select.d.ts +23 -0
  415. package/dist/types/utils/index.d.ts +3 -0
  416. package/package.json +3 -3
  417. package/dist/esm/index-504f1a9e.js.map +0 -1
  418. package/dist/q2-tecton-elements/index-504f1a9e.js.map +0 -1
@@ -1,16 +1,16 @@
1
- import { r as t, c as e, h as i, H as s, g as o } from "./index-7a5365e2.js";
1
+ import { r as t, c as e, h as i, H as o, g as s } from "./index-7a5365e2.js";
2
2
 
3
- import { n, l as r, o as a, i as h, w as c, v as l, h as p } from "./index-504f1a9e.js";
3
+ import { n, l as r, o as a, i as h, w as c, v as l, h as p, x as d, d as u } from "./index-99c46474.js";
4
4
 
5
5
  function sanitizeRegexString(t) {
6
6
  return t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
7
7
  }
8
8
 
9
- const d = "*{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}:host{position:relative;width:100%;display:block;line-height:var(--tct-option-list-line-height, var(--t-option-list-line-height, var(--app-line-height, 1.428571429em)))}.content{text-align:start}:host([is-sizeable]) .content{display:block;height:auto}";
9
+ const f = "*{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}:host{position:relative;width:100%;display:block;line-height:var(--tct-option-list-line-height, var(--t-option-list-line-height, var(--app-line-height, 1.428571429em)))}.content{text-align:start}:host([is-sizeable]) .content{display:block;height:auto}";
10
10
 
11
- const u = d;
11
+ const b = f;
12
12
 
13
- const f = class {
13
+ const v = class {
14
14
  constructor(i) {
15
15
  t(this, i);
16
16
  this.change = e(this, "change", 7);
@@ -33,14 +33,14 @@ const f = class {
33
33
  };
34
34
  /* tslint:disable:cyclomatic-complexity */ this.externalKeydownHandler = t => {
35
35
  t.stopPropagation();
36
- const {activeIndex: e, customSearch: i, allOptions: s} = this;
37
- const {key: o} = t;
36
+ const {activeIndex: e, customSearch: i, allOptions: o} = this;
37
+ const {key: s} = t;
38
38
  let r;
39
- switch (o) {
39
+ switch (s) {
40
40
  case " ":
41
41
  if (this.searchString) {
42
42
  if (i) break;
43
- this.searchOptions(o, true);
43
+ this.searchOptions(s, true);
44
44
  break;
45
45
  } else if (this.type === "menu") {
46
46
  this.activeIndex = 0;
@@ -88,7 +88,7 @@ const f = class {
88
88
 
89
89
  case "End":
90
90
  t.preventDefault();
91
- this.openDropdownWithActiveElement(s.length - 1);
91
+ this.openDropdownWithActiveElement(o.length - 1);
92
92
  break;
93
93
 
94
94
  case "PageUp":
@@ -98,7 +98,7 @@ const f = class {
98
98
 
99
99
  case "PageDown":
100
100
  t.preventDefault();
101
- this.openDropdownWithActiveElement(Math.min((e || 0) + 10, s.length - 1));
101
+ this.openDropdownWithActiveElement(Math.min((e || 0) + 10, o.length - 1));
102
102
  break;
103
103
 
104
104
  case "Tab":
@@ -119,22 +119,22 @@ const f = class {
119
119
 
120
120
  default:
121
121
  if (i) break;
122
- if (!o.match(/^[\w]$/)) break;
123
- this.searchOptions(o, true);
122
+ if (!s.match(/^[\w]$/)) break;
123
+ this.searchOptions(s, true);
124
124
  break;
125
125
  }
126
126
  };
127
127
  /* tslint:enable:cyclomatic-complexity */ this.focusoutHandler = t => {
128
128
  const {relatedTarget: e} = t;
129
129
  const i = this.allOptions.includes(e);
130
- const s = !i && this.hostElement.contains(e);
131
- if (i || s) {
130
+ const o = !i && this.hostElement.contains(e);
131
+ if (i || o) {
132
132
  t.stopPropagation();
133
133
  }
134
134
  };
135
135
  this.internalKeydownHandler = t => {
136
136
  t.stopPropagation();
137
- const {activeIndex: e, customSearch: i, allOptions: s, allVisibleOptions: o, multiple: n} = this;
137
+ const {activeIndex: e, customSearch: i, allOptions: o, allVisibleOptions: s, multiple: n} = this;
138
138
  const {key: r, shiftKey: a} = t;
139
139
  let h;
140
140
  switch (r) {
@@ -144,7 +144,7 @@ const f = class {
144
144
  this.searchOptions(r, false);
145
145
  break;
146
146
  }
147
- h = s.find((t => t.active));
147
+ h = o.find((t => t.active));
148
148
  if (!h || h.disabled) break;
149
149
  this.selectOption(h);
150
150
  if (n) break;
@@ -159,7 +159,7 @@ const f = class {
159
159
  break;
160
160
 
161
161
  case "Enter":
162
- h = s.find((t => t.active));
162
+ h = o.find((t => t.active));
163
163
  if (!h || h.disabled) break;
164
164
  this.selectOption(h);
165
165
  if (n) break;
@@ -175,7 +175,7 @@ const f = class {
175
175
 
176
176
  case "ArrowUp":
177
177
  t.preventDefault();
178
- const c = o[0];
178
+ const c = s[0];
179
179
  const l = c.active;
180
180
  if (l) break;
181
181
  if (e === undefined) {
@@ -190,7 +190,7 @@ const f = class {
190
190
 
191
191
  case "ArrowDown":
192
192
  t.preventDefault();
193
- const p = o[o.length - 1];
193
+ const p = s[s.length - 1];
194
194
  const d = p.active;
195
195
  if (d) break;
196
196
  if (e === undefined) {
@@ -210,7 +210,7 @@ const f = class {
210
210
 
211
211
  case "End":
212
212
  t.preventDefault();
213
- this.openDropdownWithActiveElement(s.length - 1);
213
+ this.openDropdownWithActiveElement(o.length - 1);
214
214
  break;
215
215
 
216
216
  case "PageUp":
@@ -220,7 +220,7 @@ const f = class {
220
220
 
221
221
  case "PageDown":
222
222
  t.preventDefault();
223
- this.openDropdownWithActiveElement(Math.min(e + 10, s.length - 1));
223
+ this.openDropdownWithActiveElement(Math.min(e + 10, o.length - 1));
224
224
  break;
225
225
 
226
226
  case "Tab":
@@ -233,7 +233,7 @@ const f = class {
233
233
  });
234
234
  break;
235
235
  }
236
- h = s.find((t => t.active));
236
+ h = o.find((t => t.active));
237
237
  if (!h || h.disabled) return;
238
238
  this.selectOption(h);
239
239
  break;
@@ -425,13 +425,13 @@ const f = class {
425
425
  }
426
426
  focusSelectedSibling(t) {
427
427
  const {allVisibleOptions: e, allOptions: i} = this;
428
- const s = e.length < 2;
429
- if (s) {
428
+ const o = e.length < 2;
429
+ if (o) {
430
430
  this.showSelected = false;
431
431
  return;
432
432
  }
433
- const o = e.indexOf(t);
434
- const n = o ? o - 1 : o + 1;
433
+ const s = e.indexOf(t);
434
+ const n = s ? s - 1 : s + 1;
435
435
  const r = e[n];
436
436
  const a = i.indexOf(r);
437
437
  this.activeIndex = a;
@@ -450,9 +450,9 @@ const f = class {
450
450
  return 0;
451
451
  }
452
452
  getNextVisibleIndex(t) {
453
- const {allVisibleOptions: e, allOptions: i, activeIndex: s} = this;
454
- const o = i[s];
455
- const n = e.indexOf(o);
453
+ const {allVisibleOptions: e, allOptions: i, activeIndex: o} = this;
454
+ const s = i[o];
455
+ const n = e.indexOf(s);
456
456
  let r = n + t;
457
457
  if (r < 0) {
458
458
  r = e.length - 1;
@@ -465,12 +465,12 @@ const f = class {
465
465
  getRootSlot(t) {
466
466
  var e;
467
467
  const i = t.querySelector("slot");
468
- const s = (e = i === null || i === void 0 ? void 0 : i.assignedElements()) !== null && e !== void 0 ? e : Array.from(t.children);
469
- const o = !!s.length && s[0].tagName === "SLOT";
470
- if (o) {
471
- return this.getRootSlot(s[0]);
468
+ const o = (e = i === null || i === void 0 ? void 0 : i.assignedElements()) !== null && e !== void 0 ? e : Array.from(t.children);
469
+ const s = !!o.length && o[0].tagName === "SLOT";
470
+ if (s) {
471
+ return this.getRootSlot(o[0]);
472
472
  } else {
473
- return s;
473
+ return o;
474
474
  }
475
475
  }
476
476
  async openDropdownWithActiveElement(t) {
@@ -504,30 +504,30 @@ const f = class {
504
504
  this.searchAndFocus(t, e);
505
505
  }
506
506
  selectOption(t) {
507
- const {multiple: e, noSelect: i, showSelected: s} = this;
507
+ const {multiple: e, noSelect: i, showSelected: o} = this;
508
508
  if (!t || t.disabled || "disabledGroup" in t && t.disabledGroup) return;
509
- const o = t.value;
509
+ const s = t.value;
510
510
  const n = "display" in t && t.display ? t.display : t.innerText.trim();
511
511
  const r = {
512
- value: o,
512
+ value: s,
513
513
  display: n
514
514
  };
515
515
  let a = [];
516
516
  if (e) {
517
517
  const {selectedOptions: e} = this;
518
- const i = e.find((t => t.value === o));
518
+ const i = e.find((t => t.value === s));
519
519
  if (i) {
520
- a = e.filter((({value: t}) => t !== o));
520
+ a = e.filter((({value: t}) => t !== s));
521
521
  } else {
522
522
  a = [ ...e, r ];
523
523
  }
524
- if (s) this.focusSelectedSibling(t);
524
+ if (o) this.focusSelectedSibling(t);
525
525
  } else {
526
526
  a = [ r ];
527
527
  }
528
528
  if (i) this.setActiveElement(null); else this.selectedOptions = a;
529
529
  this.change.emit({
530
- value: o,
530
+ value: s,
531
531
  values: a
532
532
  });
533
533
  }
@@ -555,17 +555,17 @@ const f = class {
555
555
  updateSingleOptionAttrs() {
556
556
  var t;
557
557
  const {allOptions: e, selectedOptions: i} = this;
558
- const s = ((t = i[0]) === null || t === void 0 ? void 0 : t.value) || undefined;
558
+ const o = ((t = i[0]) === null || t === void 0 ? void 0 : t.value) || undefined;
559
559
  if (this.noSelect) return;
560
560
  e.forEach((t => {
561
561
  if (!("selected" in t)) return;
562
- t.selected = t.value === s;
562
+ t.selected = t.value === o;
563
563
  }));
564
564
  }
565
565
  // #endregion
566
566
  // #region Render Methods
567
567
  render() {
568
- return i(s, {
568
+ return i(o, {
569
569
  key: "5708785bddc01b545a3b2a94417ad415c6cba32e"
570
570
  }, i("div", {
571
571
  key: "e6f36e235609824dae19e93edc14d8f8504eb860",
@@ -585,7 +585,7 @@ const f = class {
585
585
  }))));
586
586
  }
587
587
  get hostElement() {
588
- return o(this);
588
+ return s(this);
589
589
  }
590
590
  static get watchers() {
591
591
  return {
@@ -595,28 +595,33 @@ const f = class {
595
595
  }
596
596
  };
597
597
 
598
- f.style = u;
598
+ v.style = b;
599
599
 
600
- const b = "*{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}";
600
+ const w = "*{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}";
601
601
 
602
- const v = b;
602
+ const m = w;
603
603
 
604
- const w = class {
604
+ const g = class {
605
605
  constructor(i) {
606
606
  t(this, i);
607
607
  this.popoverStateChanged = e(this, "popoverStateChanged", 7);
608
608
  /**
609
609
  * The number of pixels to leave between the popover and the edge of the viewport
610
610
  */ this.displayBuffer = 10;
611
- /** remove when Popover API is supported in iOS */ this.orientationChanged = false;
611
+ this.orientationChanged = false;
612
612
  this.handleMinHeight = () => {
613
613
  if (this.minHeight) {
614
614
  p(this, "minHeight", "prop");
615
615
  }
616
616
  };
617
+ this.handlePopoverToggleEvent = t => {
618
+ this.popoverStateChanged.emit({
619
+ open: t.newState === "open"
620
+ });
621
+ };
617
622
  this.setAbsoluteCSSProperties = async () => {
618
- const {controlElement: t, containerElement: e, currentDirection: i, align: s} = this;
619
- if (s === "right") {
623
+ const {controlElement: t, containerElement: e, currentDirection: i, align: o} = this;
624
+ if (o === "right") {
620
625
  e.style.setProperty("--comp-pop-right", "0");
621
626
  e.style.setProperty("--comp-pop-left", "unset");
622
627
  } else {
@@ -628,31 +633,45 @@ const w = class {
628
633
  }
629
634
  if (i === "up") {
630
635
  const i = getComputedStyle(t);
631
- const s = parseInt(i.height || "0") + parseInt(i.borderTopWidth || "0") + parseInt(i.borderBottomWidth || "0");
632
- e.style.setProperty("--comp-pop-bottom", `${s}px`);
636
+ const o = parseInt(i.height || "0") + parseInt(i.borderTopWidth || "0") + parseInt(i.borderBottomWidth || "0");
637
+ e.style.setProperty("--comp-pop-bottom", `${o}px`);
633
638
  }
634
639
  // Wait for one paint to prevent layout thrashing
635
640
  await c();
636
641
  e.style.setProperty("--comp-pop-opacity", "1");
637
642
  };
638
- this.setFixedCSSProperties = async () => {
639
- var t, e;
640
- const {controlElement: i, containerElement: s, currentDirection: o, rootElementRect: n} = this;
641
- const {top: r, bottom: a, left: h, right: l} = (e = (t = i === null || i === void 0 ? void 0 : i.getBoundingClientRect) === null || t === void 0 ? void 0 : t.call(i)) !== null && e !== void 0 ? e : {
643
+ this.setPopoverAPICSSProperties = async () => {
644
+ var t, e, i;
645
+ const {controlElement: o, containerElement: s, currentDirection: n, isModule: r, align: a} = this;
646
+ const {top: h, bottom: l, left: p, right: d} = (e = (t = o === null || o === void 0 ? void 0 : o.getBoundingClientRect) === null || t === void 0 ? void 0 : t.call(o)) !== null && e !== void 0 ? e : {
642
647
  top: 0,
643
648
  bottom: 0,
644
649
  left: 0,
645
650
  right: 0
646
651
  };
647
- const p = h - n.left;
648
- if (this.block) s.style.setProperty("--comp-pop-width", `${(i === null || i === void 0 ? void 0 : i.offsetWidth) || 0}px`);
649
- s.style.setProperty("--comp-pop-left", `${p}px`);
650
- s.style.setProperty("--comp-pop-right", `${n.width + n.left - l}px`);
651
- if (o === "up") {
652
- s.style.setProperty("--comp-pop-bottom", `${n.height + n.top - r}px`);
652
+ const u = p;
653
+ const f = ((i = window === null || window === void 0 ? void 0 : window.visualViewport) === null || i === void 0 ? void 0 : i.width) - d;
654
+ if (a === "right") {
655
+ s.style.setProperty("--comp-pop-right", `${f - window.scrollX}px`);
656
+ s.style.setProperty("--comp-pop-left", "unset");
657
+ } else {
658
+ s.style.setProperty("--comp-pop-left", `${u + window.scrollX}px`);
659
+ s.style.setProperty("--comp-pop-right", "unset");
653
660
  }
654
- if (o === "down") {
655
- s.style.setProperty("--comp-pop-top", `${a - n.top}px`);
661
+ if (this.block) s.style.setProperty("--comp-pop-width", `${(o === null || o === void 0 ? void 0 : o.offsetWidth) || 0}px`);
662
+ if (n === "up") {
663
+ if (r) {
664
+ s.style.setProperty("--comp-pop-bottom", `${window.innerHeight - h}px`);
665
+ } else {
666
+ s.style.setProperty("--comp-pop-bottom", `${window.innerHeight - h - window.scrollY}px`);
667
+ }
668
+ }
669
+ if (n === "down") {
670
+ if (r) {
671
+ s.style.setProperty("--comp-pop-top", `${l}px`);
672
+ } else {
673
+ s.style.setProperty("--comp-pop-top", `${l + window.scrollY}px`);
674
+ }
656
675
  }
657
676
  // Wait for one paint to prevent layout thrashing
658
677
  await c();
@@ -668,7 +687,7 @@ const w = class {
668
687
  };
669
688
  this.currentDirection = undefined;
670
689
  this.show = false;
671
- this.align = undefined;
690
+ this.align = "left";
672
691
  this.block = undefined;
673
692
  this.controlElement = undefined;
674
693
  this.direction = undefined;
@@ -681,13 +700,20 @@ const w = class {
681
700
  // #region Component Lifecycle Events
682
701
  disconnectedCallback() {
683
702
  this.removeViewportListeners();
703
+ this.containerElement.removeEventListener("toggle", this.handlePopoverToggleEvent);
684
704
  this.containerElement = null;
685
705
  this.contentElement = null;
686
706
  this.controlElement = null;
687
- this.rootElementRect = null;
707
+ }
708
+ componentWillLoad() {
709
+ if (!this.supportsPopoverAPI) {
710
+ 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.");
711
+ this.mode = "legacy";
712
+ }
688
713
  }
689
714
  componentDidLoad() {
690
715
  this.handleMinHeight();
716
+ if (this.supportsPopoverAPI) this.containerElement.addEventListener("toggle", this.handlePopoverToggleEvent);
691
717
  if (this.open) this.determinePopDirection();
692
718
  }
693
719
  // #endregion
@@ -712,7 +738,6 @@ const w = class {
712
738
  this.handleMinHeight();
713
739
  }
714
740
  async openChanged(t) {
715
- this.setRootElement();
716
741
  this.popoverStateChanged.emit({
717
742
  open: t
718
743
  });
@@ -722,7 +747,11 @@ const w = class {
722
747
  } else {
723
748
  this.removeViewportListeners();
724
749
  this.currentDirection = undefined;
725
- this.show = false;
750
+ if (this.mode === "legacy" || !this.supportsPopoverAPI) {
751
+ this.show = false;
752
+ } else {
753
+ this.containerElement.hidePopover();
754
+ }
726
755
  await c();
727
756
  this.clearCSSProperties();
728
757
  }
@@ -732,8 +761,8 @@ const w = class {
732
761
  get isModule() {
733
762
  var t, e;
734
763
  const i = window !== window.top;
735
- const s = Object.keys((e = (t = window.Tecton) === null || t === void 0 ? void 0 : t.platformDimensions) !== null && e !== void 0 ? e : {}).length > 0;
736
- return i && s;
764
+ const o = Object.keys((e = (t = window.Tecton) === null || t === void 0 ? void 0 : t.platformDimensions) !== null && e !== void 0 ? e : {}).length > 0;
765
+ return i && o;
737
766
  }
738
767
  get providedDirection() {
739
768
  const {direction: t} = this;
@@ -746,6 +775,9 @@ const w = class {
746
775
  return undefined;
747
776
  }
748
777
  }
778
+ get supportsPopoverAPI() {
779
+ return Object.hasOwn(HTMLElement.prototype, "popover");
780
+ }
749
781
  get validatedMaxHeight() {
750
782
  const {maxHeight: t} = this;
751
783
  return isNaN(t) ? undefined : t;
@@ -753,15 +785,16 @@ const w = class {
753
785
  addViewportListeners() {
754
786
  var t;
755
787
  window.addEventListener("resize", this.viewPortOrientationChanged);
756
- // #region remove when Popover API is supported in iOS
757
- window.addEventListener("scroll", this.viewPortChanged, {
758
- passive: true,
759
- capture: true
760
- });
788
+ visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.addEventListener("resize", this.viewPortChanged);
789
+ if (d(this.hostElement) && !u()) {
790
+ window.addEventListener("scroll", this.viewPortChanged, {
791
+ passive: true,
792
+ capture: true
793
+ });
794
+ }
761
795
  (t = screen === null || screen === void 0 ? void 0 : screen.orientation) === null || t === void 0 ? void 0 : t.addEventListener("orientationchange", this.viewPortOrientationChanged);
762
796
  window.addEventListener("orientationchange", this.viewPortOrientationChanged);
763
- // #endregion
764
- }
797
+ }
765
798
  clearCSSProperties() {
766
799
  this.containerElement.style.removeProperty("--comp-pop-max-height");
767
800
  this.containerElement.style.removeProperty("--comp-pop-top");
@@ -773,11 +806,11 @@ const w = class {
773
806
  }
774
807
  async determinePopDirection() {
775
808
  var t, e, i;
776
- const {containerElement: s, controlElement: o, providedDirection: n, displayBuffer: r} = this;
777
- if (s) s.style.maxHeight = null;
809
+ const {containerElement: o, controlElement: s, providedDirection: n, displayBuffer: r} = this;
810
+ if (o) o.style.maxHeight = null;
778
811
  await c();
779
812
  const {isModule: a} = this;
780
- const {top: h, bottom: l} = (e = (t = o === null || o === void 0 ? void 0 : o.getBoundingClientRect) === null || t === void 0 ? void 0 : t.call(o)) !== null && e !== void 0 ? e : {
813
+ const {top: h, bottom: l} = (e = (t = s === null || s === void 0 ? void 0 : s.getBoundingClientRect) === null || t === void 0 ? void 0 : t.call(s)) !== null && e !== void 0 ? e : {
781
814
  top: 0,
782
815
  bottom: 0
783
816
  };
@@ -785,23 +818,26 @@ const w = class {
785
818
  let d;
786
819
  let u;
787
820
  if (a) {
788
- const {outletOffset: t = 0, innerHeight: e = window.innerHeight} = ((i = window.Tecton) === null || i === void 0 ? void 0 : i.platformDimensions) || {};
789
- const s = window.visualViewport.height - l;
790
- const o = e - (t + l);
791
- const n = s < o;
792
- p = e;
793
- // If the top of the module is below the top of the window we just use the controlTop
794
- // Otherwise we need to add the outletOffset to the controlTop
795
- d = (t > 0 ? h : h + t) - r;
796
- u = n ? s - r : o - r;
821
+ const {outletOffset: t = 0, innerHeight: e = window.innerHeight, top: o = 0, bottom: s = 0} = ((i = window.Tecton) === null || i === void 0 ? void 0 : i.platformDimensions) || {};
822
+ const n = window.innerHeight - l;
823
+ // controlElement position visually on the page
824
+ const a = t > 0 ? h : h + t - o;
825
+ const c = t + l - o;
826
+ // visual space around the controlElement
827
+ const p = a;
828
+ const f = e - s - c;
829
+ // calculate space above and below controlElement
830
+ const b = n < f;
831
+ d = p - r;
832
+ u = b ? n - r : f - r;
797
833
  } else {
798
- p = window.visualViewport.height;
834
+ p = window.innerHeight;
799
835
  d = h - r;
800
836
  u = p - l - r;
801
837
  }
802
838
  const f = d > u ? "up" : "down";
803
839
  // We do not want to update the max height once the popover is open unless the page orientation shifts (resize or mobile use cases)
804
- const b = !s.style.getPropertyValue("--comp-pop-max-height") || this.orientationChanged;
840
+ const b = !o.style.getPropertyValue("--comp-pop-max-height") || this.orientationChanged;
805
841
  // we do not want to constantly update the max-height after an orientation change, so we switch this back to false
806
842
  this.orientationChanged = false;
807
843
  const v = this.currentDirection || n || f;
@@ -810,7 +846,7 @@ const w = class {
810
846
  if (b) {
811
847
  const t = this.validatedMaxHeight || d;
812
848
  const e = Math.min(d, t);
813
- s.style.setProperty("--comp-pop-max-height", `${e}px`);
849
+ o.style.setProperty("--comp-pop-max-height", `${e}px`);
814
850
  }
815
851
  this.setDirectionAndShow("up");
816
852
  break;
@@ -819,7 +855,7 @@ const w = class {
819
855
  if (b) {
820
856
  const t = this.validatedMaxHeight || u;
821
857
  const e = Math.min(u, t);
822
- s.style.setProperty("--comp-pop-max-height", `${e}px`);
858
+ o.style.setProperty("--comp-pop-max-height", `${e}px`);
823
859
  }
824
860
  this.setDirectionAndShow("down");
825
861
  break;
@@ -828,77 +864,51 @@ const w = class {
828
864
  removeViewportListeners() {
829
865
  var t;
830
866
  window.removeEventListener("resize", this.viewPortOrientationChanged);
831
- // #region remove when Popover API is supported in iOS
832
- window.removeEventListener("scroll", this.viewPortChanged, {
867
+ visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.removeEventListener("resize", this.viewPortChanged);
868
+ window.removeEventListener("scroll", this.viewPortChanged, {
833
869
  capture: true
834
870
  });
835
871
  (t = screen === null || screen === void 0 ? void 0 : screen.orientation) === null || t === void 0 ? void 0 : t.removeEventListener("orientationchange", this.viewPortOrientationChanged);
836
872
  window.removeEventListener("orientationchange", this.viewPortOrientationChanged);
837
- // #endregion
838
- }
873
+ }
839
874
  setDirectionAndShow(t) {
840
- this.setRootElement();
841
875
  // Due to some runtime inconsistency across devices/browsers we need to add one more check here because the
842
876
  // popover can be closed between the time the popover is opened and the time the direction is determined
843
- const e = this.open;
877
+ const e = this.open;
844
878
  if (!e) return;
845
879
  this.currentDirection = t;
846
- this.show = true;
847
- if (this.mode === "legacy") {
880
+ if (this.mode === "legacy" || !this.supportsPopoverAPI) {
881
+ this.show = true;
848
882
  this.setAbsoluteCSSProperties();
849
883
  } else {
850
- this.setFixedCSSProperties();
851
- }
852
- }
853
- setRootElement() {
854
- let t = this.hostElement;
855
- while (t && t !== document.documentElement) {
856
- const e = window.getComputedStyle(t);
857
- // Check if the element has any styles applied that create a new containg block
858
- if (e.transform !== "none" || e.filter !== "none" || e.perspective !== "none" || e.containerType !== "normal" || [ "transform", "perspective", "filter" ].includes(e.willChange) || [ "layout", "paint", "strict", "content" ].includes(e.contain)) {
859
- this.rootElementRect = t.getBoundingClientRect();
860
- return;
861
- }
862
- const i = t.getRootNode();
863
- const s = typeof ShadowRoot !== "undefined" && i instanceof ShadowRoot && i.host instanceof HTMLElement;
864
- if (s) {
865
- t = i.host;
866
- } else {
867
- t = t.parentElement;
868
- }
884
+ this.setPopoverAPICSSProperties();
885
+ this.containerElement.showPopover();
869
886
  }
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
887
  }
880
888
  // #endregion
881
889
  // #region Render Methods
882
890
  render() {
883
- const t = [ "container", this.currentDirection ];
891
+ const t = [ "container", this.currentDirection, this.align ];
884
892
  if (this.show) t.push("show");
893
+ if (this.block) t.push("block");
885
894
  if (this.mode === "legacy") t.push("legacy");
886
895
  return i("div", {
887
- key: "294386b6ea2ecfc2f8fe9eb6dad1bc925e2f6349",
896
+ key: "4cd26a6c090a6fb5b56d2fa6464143f74998c215",
888
897
  ref: t => this.containerElement = t,
889
898
  class: t.join(" "),
890
899
  "test-id": "outerContainer",
891
- tabIndex: -1
900
+ tabIndex: -1,
901
+ popover: "manual"
892
902
  }, i("div", {
893
- key: "d2d59287a81a7ce3ef4275a9963a6aa7a71a360e",
903
+ key: "545c376ca96c14e129a8f60fadac3a3264b916cf",
894
904
  ref: t => this.contentElement = t,
895
905
  class: "content"
896
906
  }, i("slot", {
897
- key: "00e78b1984a1bba43766f9d4d663ddd7b97ac667"
907
+ key: "9a2824ab9023f34a2b3a56a76ace4df6a91b5ec6"
898
908
  })));
899
909
  }
900
910
  get hostElement() {
901
- return o(this);
911
+ return s(this);
902
912
  }
903
913
  static get watchers() {
904
914
  return {
@@ -908,7 +918,7 @@ const w = class {
908
918
  }
909
919
  };
910
920
 
911
- w.style = v;
921
+ g.style = m;
912
922
 
913
- export { f as q2_option_list, w as q2_popover };
923
+ export { v as q2_option_list, g as q2_popover };
914
924
  //# sourceMappingURL=q2-option-list_2.entry.js.map