q2-tecton-elements 1.71.1 → 1.72.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/dist/bundle-report.json +1282 -594
  2. package/dist/cjs/click-elsewhere_3.cjs.entry.js +10 -9
  3. package/dist/cjs/{index-SpDCZABA.js → index-BY3aao8R.js} +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{q2-action-group_2.cjs.entry.js → q2-action-group.cjs.entry.js} +1 -89
  6. package/dist/cjs/q2-action-sheet.cjs.entry.js +1 -1
  7. package/dist/cjs/q2-badge_2.cjs.entry.js +113 -12
  8. package/dist/cjs/q2-btn_2.cjs.entry.js +2 -2
  9. package/dist/cjs/q2-calendar.cjs.entry.js +7 -5
  10. package/dist/cjs/q2-card-image.cjs.entry.js +4 -4
  11. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  12. package/dist/cjs/q2-carousel-pane.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  14. package/dist/cjs/q2-chart-area.cjs.entry.js +1 -1
  15. package/dist/cjs/q2-chart-bar.cjs.entry.js +1 -1
  16. package/dist/cjs/q2-chart-donut.cjs.entry.js +1 -1
  17. package/dist/cjs/q2-checkbox-group.cjs.entry.js +2 -2
  18. package/dist/cjs/q2-checkbox_2.cjs.entry.js +3 -3
  19. package/dist/cjs/q2-context.cjs.entry.js +4 -3
  20. package/dist/cjs/q2-data-table.cjs.entry.js +2 -2
  21. package/dist/cjs/q2-detail.cjs.entry.js +1 -1
  22. package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
  23. package/dist/cjs/q2-dropdown.cjs.entry.js +3 -3
  24. package/dist/cjs/q2-editable-field.cjs.entry.js +38 -37
  25. package/dist/cjs/q2-file-picker.cjs.entry.js +60 -4
  26. package/dist/cjs/q2-icon.cjs.entry.js +1 -1
  27. package/dist/cjs/q2-item.cjs.entry.js +2 -2
  28. package/dist/cjs/q2-link_2.cjs.entry.js +1 -1
  29. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  30. package/dist/cjs/q2-message.cjs.entry.js +2 -2
  31. package/dist/cjs/q2-meter.cjs.entry.js +1 -1
  32. package/dist/cjs/q2-modal.cjs.entry.js +59 -17
  33. package/dist/cjs/q2-month-picker.cjs.entry.js +1 -1
  34. package/dist/cjs/q2-optgroup.cjs.entry.js +1 -1
  35. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  36. package/dist/cjs/q2-otp.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-pagination.cjs.entry.js +1 -1
  38. package/dist/cjs/q2-pill.cjs.entry.js +2 -2
  39. package/dist/cjs/q2-radio-group.cjs.entry.js +22 -4
  40. package/dist/cjs/q2-radio.cjs.entry.js +3 -3
  41. package/dist/cjs/q2-relative-time.cjs.entry.js +3 -3
  42. package/dist/cjs/q2-resize-observer.cjs.entry.js +92 -0
  43. package/dist/cjs/q2-search.cjs.entry.js +13 -4
  44. package/dist/cjs/q2-section.cjs.entry.js +7 -7
  45. package/dist/cjs/q2-select.cjs.entry.js +39 -20
  46. package/dist/cjs/q2-stepper-pane.cjs.entry.js +2 -2
  47. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +2 -2
  48. package/dist/cjs/q2-stepper.cjs.entry.js +1 -1
  49. package/dist/cjs/q2-surface.cjs.entry.js +1 -1
  50. package/dist/cjs/q2-tab-container.cjs.entry.js +2 -2
  51. package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
  52. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  53. package/dist/cjs/q2-textarea.cjs.entry.js +1 -1
  54. package/dist/cjs/q2-toast.cjs.entry.js +1 -1
  55. package/dist/cjs/q2-tooltip.cjs.entry.js +1 -1
  56. package/dist/cjs/tecton-tab-pane.cjs.entry.js +5 -3
  57. package/dist/collection/components/q2-btn/q2-btn.css +79 -21
  58. package/dist/collection/components/q2-btn/test/q2-btn-test.vr.js +156 -3
  59. package/dist/collection/components/q2-calendar/q2-calendar.css +3 -0
  60. package/dist/collection/components/q2-calendar/q2-calendar.js +5 -3
  61. package/dist/collection/components/q2-calendar/test/q2-calendar-test.vr.js +23 -2
  62. package/dist/collection/components/q2-card/test/q2-card-test.vr.js +4 -0
  63. package/dist/collection/components/q2-card-image/q2-card-image.css +89 -134
  64. package/dist/collection/components/q2-card-image/q2-card-image.js +4 -4
  65. package/dist/collection/components/q2-card-image/test/q2-card-image-test.vr.js +4 -0
  66. package/dist/collection/components/q2-carousel/test/q2-carousel-test.vr.js +13 -0
  67. package/dist/collection/components/q2-checkbox/q2-checkbox.css +2 -2
  68. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.css +2 -0
  69. package/dist/collection/components/q2-context/q2-context.css +5 -0
  70. package/dist/collection/components/q2-context/q2-context.js +2 -1
  71. package/dist/collection/components/q2-context/test/q2-context-test.vr.js +11 -1
  72. package/dist/collection/components/q2-data-table/q2-data-table.css +3 -0
  73. package/dist/collection/components/q2-data-table/test/q2-data-table-test.vr.js +5 -0
  74. package/dist/collection/components/q2-dropdown/q2-dropdown.css +2 -0
  75. package/dist/collection/components/q2-dropdown/q2-dropdown.js +1 -1
  76. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.vr.js +30 -0
  77. package/dist/collection/components/q2-editable-field/q2-editable-field.css +2 -0
  78. package/dist/collection/components/q2-editable-field/q2-editable-field.js +38 -43
  79. package/dist/collection/components/q2-file-picker/q2-file-picker.css +27 -0
  80. package/dist/collection/components/q2-file-picker/q2-file-picker.js +98 -2
  81. package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.vr.js +22 -0
  82. package/dist/collection/components/q2-input/q2-input.css +67 -1
  83. package/dist/collection/components/q2-input/q2-input.js +155 -13
  84. package/dist/collection/components/q2-input/test/q2-input-test.vr.js +35 -0
  85. package/dist/collection/components/q2-item/q2-item.css +3 -1
  86. package/dist/collection/components/q2-item/test/q2-item-test.vr.js +6 -0
  87. package/dist/collection/components/q2-message/q2-message.css +5 -5
  88. package/dist/collection/components/q2-modal/q2-modal.css +40 -3
  89. package/dist/collection/components/q2-modal/q2-modal.js +100 -16
  90. package/dist/collection/components/q2-modal/test/q2-modal-test.vr.js +25 -0
  91. package/dist/collection/components/q2-pill/q2-pill.css +2 -2
  92. package/dist/collection/components/q2-popover/q2-popover.css +3 -2
  93. package/dist/collection/components/q2-popover/q2-popover.js +8 -7
  94. package/dist/collection/components/q2-radio/q2-radio.css +158 -104
  95. package/dist/collection/components/q2-radio/q2-radio.js +1 -1
  96. package/dist/collection/components/q2-radio/test/q2-radio-test.vr.js +25 -2
  97. package/dist/collection/components/q2-radio-group/q2-radio-group.css +39 -2
  98. package/dist/collection/components/q2-radio-group/q2-radio-group.js +68 -2
  99. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.vr.js +43 -1
  100. package/dist/collection/components/q2-relative-time/q2-relative-time.js +2 -2
  101. package/dist/collection/components/q2-search/q2-search.css +2 -0
  102. package/dist/collection/components/q2-search/q2-search.js +11 -2
  103. package/dist/collection/components/q2-section/q2-section.css +2 -0
  104. package/dist/collection/components/q2-section/q2-section.js +6 -6
  105. package/dist/collection/components/q2-select/q2-select.css +3 -0
  106. package/dist/collection/components/q2-select/q2-select.js +41 -19
  107. package/dist/collection/components/q2-select/test/q2-select-test.vr.js +13 -0
  108. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +1 -1
  109. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
  110. package/dist/collection/components/q2-surface/q2-surface.js +1 -1
  111. package/dist/collection/components/q2-tab-container/q2-tab-container.js +1 -1
  112. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  113. package/dist/collection/components/q2-tag/q2-tag.js +1 -1
  114. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +5 -3
  115. package/dist/collection/utils/index.js +1 -1
  116. package/dist/collection/utils/test/vr-helpers.js +16 -2
  117. package/dist/components/index2.js +1 -1
  118. package/dist/components/q2-btn2.js +1 -1
  119. package/dist/components/q2-calendar.js +11 -9
  120. package/dist/components/q2-card-image.js +24 -24
  121. package/dist/components/q2-checkbox-group.js +6 -6
  122. package/dist/components/q2-checkbox2.js +1 -1
  123. package/dist/components/q2-context.js +27 -26
  124. package/dist/components/q2-data-table.js +1 -1
  125. package/dist/components/q2-dropdown.js +21 -21
  126. package/dist/components/q2-editable-field.js +33 -35
  127. package/dist/components/q2-file-picker.js +70 -10
  128. package/dist/components/q2-input2.js +268 -163
  129. package/dist/components/q2-item2.js +1 -1
  130. package/dist/components/q2-message2.js +24 -24
  131. package/dist/components/q2-modal.js +96 -78
  132. package/dist/components/q2-pill.js +1 -1
  133. package/dist/components/q2-popover2.js +29 -26
  134. package/dist/components/q2-radio-group.js +70 -40
  135. package/dist/components/q2-radio.js +40 -55
  136. package/dist/components/q2-relative-time.js +5 -5
  137. package/dist/components/q2-search.js +17 -12
  138. package/dist/components/q2-section.js +33 -33
  139. package/dist/components/q2-select2.js +49 -42
  140. package/dist/components/q2-stepper-pane.js +15 -11
  141. package/dist/components/q2-stepper-vertical.js +4 -4
  142. package/dist/components/q2-surface.js +3 -3
  143. package/dist/components/q2-tab-container.js +21 -21
  144. package/dist/components/q2-tab-pane.js +2 -2
  145. package/dist/components/q2-tag2.js +5 -5
  146. package/dist/components/tecton-tab-pane.js +8 -7
  147. package/dist/esm/click-elsewhere_3.entry.js +10 -9
  148. package/dist/esm/{index-Cps4jSQM.js → index-DJw6Feh0.js} +1 -1
  149. package/dist/esm/loader.js +1 -1
  150. package/dist/esm/{q2-action-group_2.entry.js → q2-action-group.entry.js} +3 -90
  151. package/dist/esm/q2-action-sheet.entry.js +1 -1
  152. package/dist/esm/q2-badge_2.entry.js +113 -12
  153. package/dist/esm/q2-btn_2.entry.js +2 -2
  154. package/dist/esm/q2-calendar.entry.js +7 -5
  155. package/dist/esm/q2-card-image.entry.js +4 -4
  156. package/dist/esm/q2-card.entry.js +1 -1
  157. package/dist/esm/q2-carousel-pane.entry.js +1 -1
  158. package/dist/esm/q2-carousel.entry.js +1 -1
  159. package/dist/esm/q2-chart-area.entry.js +1 -1
  160. package/dist/esm/q2-chart-bar.entry.js +1 -1
  161. package/dist/esm/q2-chart-donut.entry.js +1 -1
  162. package/dist/esm/q2-checkbox-group.entry.js +2 -2
  163. package/dist/esm/q2-checkbox_2.entry.js +3 -3
  164. package/dist/esm/q2-context.entry.js +4 -3
  165. package/dist/esm/q2-data-table.entry.js +2 -2
  166. package/dist/esm/q2-detail.entry.js +1 -1
  167. package/dist/esm/q2-dropdown-item.entry.js +1 -1
  168. package/dist/esm/q2-dropdown.entry.js +3 -3
  169. package/dist/esm/q2-editable-field.entry.js +38 -37
  170. package/dist/esm/q2-file-picker.entry.js +60 -4
  171. package/dist/esm/q2-icon.entry.js +1 -1
  172. package/dist/esm/q2-item.entry.js +2 -2
  173. package/dist/esm/q2-link_2.entry.js +1 -1
  174. package/dist/esm/q2-loc.entry.js +1 -1
  175. package/dist/esm/q2-message.entry.js +2 -2
  176. package/dist/esm/q2-meter.entry.js +1 -1
  177. package/dist/esm/q2-modal.entry.js +59 -17
  178. package/dist/esm/q2-month-picker.entry.js +1 -1
  179. package/dist/esm/q2-optgroup.entry.js +1 -1
  180. package/dist/esm/q2-option.entry.js +1 -1
  181. package/dist/esm/q2-otp.entry.js +1 -1
  182. package/dist/esm/q2-pagination.entry.js +1 -1
  183. package/dist/esm/q2-pill.entry.js +2 -2
  184. package/dist/esm/q2-radio-group.entry.js +22 -4
  185. package/dist/esm/q2-radio.entry.js +3 -3
  186. package/dist/esm/q2-relative-time.entry.js +3 -3
  187. package/dist/esm/q2-resize-observer.entry.js +90 -0
  188. package/dist/esm/q2-search.entry.js +13 -4
  189. package/dist/esm/q2-section.entry.js +7 -7
  190. package/dist/esm/q2-select.entry.js +39 -20
  191. package/dist/esm/q2-stepper-pane.entry.js +2 -2
  192. package/dist/esm/q2-stepper-vertical.entry.js +2 -2
  193. package/dist/esm/q2-stepper.entry.js +1 -1
  194. package/dist/esm/q2-surface.entry.js +1 -1
  195. package/dist/esm/q2-tab-container.entry.js +2 -2
  196. package/dist/esm/q2-tab-pane.entry.js +1 -1
  197. package/dist/esm/q2-tecton-elements.js +1 -1
  198. package/dist/esm/q2-textarea.entry.js +1 -1
  199. package/dist/esm/q2-toast.entry.js +1 -1
  200. package/dist/esm/q2-tooltip.entry.js +1 -1
  201. package/dist/esm/tecton-tab-pane.entry.js +5 -3
  202. package/dist/q2-tecton-elements/click-elsewhere_3.entry.js +32 -29
  203. package/dist/q2-tecton-elements/{index-Cps4jSQM.js → index-DJw6Feh0.js} +1 -1
  204. package/dist/q2-tecton-elements/{q2-action-group_2.entry.js → q2-action-group.entry.js} +35 -113
  205. package/dist/q2-tecton-elements/q2-action-sheet.entry.js +1 -1
  206. package/dist/q2-tecton-elements/q2-badge_2.entry.js +240 -140
  207. package/dist/q2-tecton-elements/q2-btn_2.entry.js +2 -2
  208. package/dist/q2-tecton-elements/q2-calendar.entry.js +14 -12
  209. package/dist/q2-tecton-elements/q2-card-image.entry.js +9 -9
  210. package/dist/q2-tecton-elements/q2-card.entry.js +1 -1
  211. package/dist/q2-tecton-elements/q2-carousel-pane.entry.js +1 -1
  212. package/dist/q2-tecton-elements/q2-carousel.entry.js +1 -1
  213. package/dist/q2-tecton-elements/q2-chart-area.entry.js +31 -31
  214. package/dist/q2-tecton-elements/q2-chart-bar.entry.js +16 -16
  215. package/dist/q2-tecton-elements/q2-chart-donut.entry.js +6 -6
  216. package/dist/q2-tecton-elements/q2-checkbox-group.entry.js +2 -2
  217. package/dist/q2-tecton-elements/q2-checkbox_2.entry.js +7 -7
  218. package/dist/q2-tecton-elements/q2-context.entry.js +22 -21
  219. package/dist/q2-tecton-elements/q2-data-table.entry.js +34 -34
  220. package/dist/q2-tecton-elements/q2-detail.entry.js +1 -1
  221. package/dist/q2-tecton-elements/q2-dropdown-item.entry.js +1 -1
  222. package/dist/q2-tecton-elements/q2-dropdown.entry.js +15 -15
  223. package/dist/q2-tecton-elements/q2-editable-field.entry.js +38 -40
  224. package/dist/q2-tecton-elements/q2-file-picker.entry.js +61 -6
  225. package/dist/q2-tecton-elements/q2-icon.entry.js +1 -1
  226. package/dist/q2-tecton-elements/q2-item.entry.js +2 -2
  227. package/dist/q2-tecton-elements/q2-link_2.entry.js +1 -1
  228. package/dist/q2-tecton-elements/q2-loc.entry.js +1 -1
  229. package/dist/q2-tecton-elements/q2-message.entry.js +24 -24
  230. package/dist/q2-tecton-elements/q2-meter.entry.js +1 -1
  231. package/dist/q2-tecton-elements/q2-modal.entry.js +61 -45
  232. package/dist/q2-tecton-elements/q2-month-picker.entry.js +1 -1
  233. package/dist/q2-tecton-elements/q2-optgroup.entry.js +11 -11
  234. package/dist/q2-tecton-elements/q2-option.entry.js +1 -1
  235. package/dist/q2-tecton-elements/q2-otp.entry.js +1 -1
  236. package/dist/q2-tecton-elements/q2-pagination.entry.js +1 -1
  237. package/dist/q2-tecton-elements/q2-pill.entry.js +2 -2
  238. package/dist/q2-tecton-elements/q2-radio-group.entry.js +55 -34
  239. package/dist/q2-tecton-elements/q2-radio.entry.js +38 -53
  240. package/dist/q2-tecton-elements/q2-relative-time.entry.js +12 -12
  241. package/dist/q2-tecton-elements/q2-resize-observer.entry.js +81 -0
  242. package/dist/q2-tecton-elements/q2-search.entry.js +23 -18
  243. package/dist/q2-tecton-elements/q2-section.entry.js +33 -33
  244. package/dist/q2-tecton-elements/q2-select.entry.js +30 -23
  245. package/dist/q2-tecton-elements/q2-stepper-pane.entry.js +20 -16
  246. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js +5 -5
  247. package/dist/q2-tecton-elements/q2-stepper.entry.js +1 -1
  248. package/dist/q2-tecton-elements/q2-surface.entry.js +3 -3
  249. package/dist/q2-tecton-elements/q2-tab-container.entry.js +20 -20
  250. package/dist/q2-tecton-elements/q2-tab-pane.entry.js +4 -4
  251. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  252. package/dist/q2-tecton-elements/q2-textarea.entry.js +1 -1
  253. package/dist/q2-tecton-elements/q2-toast.entry.js +1 -1
  254. package/dist/q2-tecton-elements/q2-tooltip.entry.js +1 -1
  255. package/dist/q2-tecton-elements/tecton-tab-pane.entry.js +8 -7
  256. package/dist/types/components/q2-card-image/q2-card-image.d.ts +1 -1
  257. package/dist/types/components/q2-dropdown/test/q2-dropdown-test.vr.d.ts +1 -0
  258. package/dist/types/components/q2-editable-field/q2-editable-field.d.ts +6 -1
  259. package/dist/types/components/q2-file-picker/q2-file-picker.d.ts +20 -0
  260. package/dist/types/components/q2-input/q2-input.d.ts +28 -2
  261. package/dist/types/components/q2-modal/q2-modal.d.ts +10 -1
  262. package/dist/types/components/q2-radio-group/q2-radio-group.d.ts +14 -0
  263. package/dist/types/components/q2-search/q2-search.d.ts +1 -0
  264. package/dist/types/components/q2-select/q2-select.d.ts +8 -2
  265. package/dist/types/components.d.ts +119 -11
  266. package/dist/types/utils/test/vr-helpers.d.ts +2 -0
  267. package/package.json +3 -3
@@ -25,7 +25,7 @@ const f = t(class extends e {
25
25
  this.tctOpen = i(this, "tctOpen", 7),
26
26
  // #region Own Properties
27
27
  // Viewport edge buffer (px) — popover falls back to input-width when it would otherwise overflow.
28
- this.displayBuffer = 10, this.popoverWidthWarned = !1,
28
+ this.displayBuffer = 10, this.optionFingerprint = "", this.popoverWidthWarned = !1,
29
29
  // #endregion
30
30
  // #region State Properties
31
31
  this.hasEmptySlot = !1, this.hasOptions = !1, this.hasPopoverBottom = !1, this.hasPopoverTop = !1,
@@ -158,15 +158,20 @@ const f = t(class extends e {
158
158
  }, this.onClickElsewhere = t => {
159
159
  "click-elsewhere" === t.target.localName && (t.stopPropagation(), "#document-fragment" !== this.hostElement.getRootNode().nodeName && this.closeDropdown());
160
160
  }, this.onMutationObserved = () => {
161
- var t, e, i;
162
- const s = this.hostElement.shadowRoot;
163
- if (!s) return;
164
- const o = s.querySelector('slot[name="popover-top"]'), n = s.querySelector('slot[name="popover-bottom"]'), r = s.querySelector('slot[name="empty"]'), l = (null !== (t = null == o ? void 0 : o.assignedNodes().length) && void 0 !== t ? t : 0) > 0, a = (null !== (e = null == n ? void 0 : n.assignedNodes().length) && void 0 !== e ? e : 0) > 0, h = (null !== (i = null == r ? void 0 : r.assignedNodes().length) && void 0 !== i ? i : 0) > 0, c = this.optionElements.length > 0;
165
- this.hasPopoverTop !== l && (this.hasPopoverTop = l), this.hasPopoverBottom !== a && (this.hasPopoverBottom = a),
166
- this.hasEmptySlot !== h && (this.hasEmptySlot = h), this.hasOptions !== c && (this.hasOptions = c),
161
+ var t, e, i, s;
162
+ const o = this.hostElement.shadowRoot;
163
+ if (!o) return;
164
+ const n = o.querySelector('slot[name="popover-top"]'), r = o.querySelector('slot[name="popover-bottom"]'), l = o.querySelector('slot[name="empty"]'), a = (null !== (t = null == n ? void 0 : n.assignedNodes().length) && void 0 !== t ? t : 0) > 0, h = (null !== (e = null == r ? void 0 : r.assignedNodes().length) && void 0 !== e ? e : 0) > 0, c = (null !== (i = null == l ? void 0 : l.assignedNodes().length) && void 0 !== i ? i : 0) > 0, d = this.optionElements.length > 0;
165
+ this.hasPopoverTop !== a && (this.hasPopoverTop = a), this.hasPopoverBottom !== h && (this.hasPopoverBottom = h),
166
+ this.hasEmptySlot !== c && (this.hasEmptySlot = c), this.hasOptions !== d && (this.hasOptions = d),
167
167
  // If input-only mode just turned on while popover was open, close it.
168
168
  this.open && this.isInputOnlyMode && this.closeDropdown(), this.checkSelectedOptions(),
169
169
  this.multilineOptions && this.applyMultilineOptions();
170
+ // Reset the option list's active index whenever the slotted option set changes so that
171
+ // the next ArrowDown/ArrowUp always starts from the first visible item rather than a
172
+ // stale position left over from a previous, different options list.
173
+ const p = this.optionElements.map((t => t.value)).join("\0");
174
+ p !== this.optionFingerprint && (this.optionFingerprint = p, null === (s = this.optionList) || void 0 === s || s.setActiveElement(void 0));
170
175
  }, this.onOptionListChange = t => {
171
176
  t.stopPropagation(), this.handleSelectionChanges(t.detail);
172
177
  }, this.onSelectedDisplayMousedown = t => {
@@ -613,20 +618,20 @@ const f = t(class extends e {
613
618
  }
614
619
  render() {
615
620
  return s(o, {
616
- key: "7639a6dccbd55360c35c03c357fd64552dd9d2ba"
621
+ key: "78ce7b735d59271600debb18ab2f0f5cf315e465"
617
622
  }, s("div", {
618
- key: "bf893491af923c9c2dc404a137df754297bd3ad5",
623
+ key: "d3e9a713581842cc62969a0df9556733edf6e378",
619
624
  "aria-live": "polite",
620
625
  "aria-atomic": "true",
621
626
  role: "status",
622
627
  class: "sr"
623
628
  }, this.statusMessage), s("click-elsewhere", {
624
- key: "73e0045d7fc40c5d57fe26ed2993da24d5d42a04",
629
+ key: "6912af1d8f31af8de7c7ffb28786756819c57afc",
625
630
  class: this.wrapperClasses,
626
631
  role: "presentation",
627
632
  onChange: this.onClickElsewhere
628
633
  }, s("q2-input", {
629
- key: "5328d7d706f2f8bf3e8433d90c32e51b6abf4122",
634
+ key: "95a5397765aab6d3279b3d81cc31215f235aefc2",
630
635
  ref: t => this.inputField = t,
631
636
  class: "q2-search-input",
632
637
  label: this.label && h(this.label) || "",
@@ -677,7 +682,7 @@ const f = t(class extends e {
677
682
  };
678
683
  }
679
684
  static get style() {
680
- return '*{box-sizing:border-box}*:active{outline:none}*:focus-visible{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 style(--t-prefers-motion: "reduced"){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}@container (not style(--t-prefers-motion: "normal")) and (not style(--t-prefers-motion: "reduced")){@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}}.q2-element-dropdown{display:none;position:absolute;background-color:var(--app-white, #ffffff);color:var(--t-text, #4d4d4d);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14));height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1, 0.2s ease);border-radius:var(--tct-dropdown-border-radius, --t-dropdown-border-radius, 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}.q2-element-dropdown::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.q2-element-dropdown::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown.sizable{display:block;height:auto}.dropdown-open .q2-element-dropdown{display:block;height:auto;overflow:auto;opacity:1;visibility:visible}:host([alignment=right]) .q2-element-dropdown{left:auto;right:0}:host([block]) q2-btn,:host([block]){display:block}:host{display:block;margin:var(--tct-search-margin, var(--tct-search-margin-top, var(--app-scale-5x, 25px)) 0 var(--tct-search-margin-bottom, var(--app-scale-5x, 25px)))}::slotted([slot=_selected-display]){width:100%;min-height:var(--comp-selected-display-height, 44px)}.q2-search-container{display:block;position:relative}.q2-search-input{margin:0;--tct-input-min-height:var(--tct-search-input-min-height, initial);--tct-input-max-height:var(--tct-search-input-max-height, none);--tct-input-horizontal-gap:var(--tct-search-input-horizontal-gap, var(--app-scale-2x, 10px));--tct-input-icon-container-icon-min-width:var(--tct-search-icon-min-width, fit-content)}.popover-content{display:flex;flex-direction:column}.popover-content[data-loading=true]{min-height:var(--tct-search-loading-popover-height, var(--app-scale-12x, 60px));position:relative}.popover-content[data-loading=true] .loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.popover-content[data-loading=true] .loading-overlay q2-loading{--tct-loading-spinner-size:var(--tct-search-loading-spinner-size, var(--app-scale-8x, 40px));width:1em;height:1em}.popover-top-container[hidden],.popover-bottom-container[hidden]{display:none}.popover-top-container{position:sticky;top:0;z-index:5}.popover-top-container .multi-select-header{padding:var(--tct-search-multi-select-header-padding, var(--app-scale-2x, 10px));background:var(--tct-search-multi-select-header-background, var(--t-base, #ffffff));display:flex;gap:var(--app-scale-2x, 10px);align-items:center}.popover-top-container .multi-select-header fieldset{margin:0;padding:0;border:0;display:flex;gap:var(--app-scale-2x, 10px)}.popover-top-container .multi-select-header legend{padding:0;float:left}.popover-top-container .multi-select-header label{cursor:pointer;padding:var(--tct-search-multi-select-option-padding, 2px 5px);font-size:var(--tct-search-multi-select-option-font-size, inherit);border-radius:var(--tct-search-multi-select-option-border-radius, var(--app-border-radius-1, 4px));background:var(--tct-search-multi-select-option-background, transparent);color:var(--tct-search-multi-select-option-font-color, inherit)}.popover-top-container .multi-select-header label:hover{background:var(--tct-search-multi-select-option-hover-background, var(--t-gray-14, #f2f2f2));color:var(--tct-search-multi-select-option-hover-font-color, var(--t-gray-5, #404040))}.popover-top-container .multi-select-header input:checked+label,.popover-top-container .multi-select-header input:checked+label:enabled:hover{background:var(--tct-search-multi-select-option-active-background, var(--t-gray-4, #333333));color:var(--tct-search-multi-select-option-active-font-color, var(--t-base, #ffffff))}.popover-top-container .multi-select-header input:disabled+label{opacity:var(--tct-search-multi-select-option-disabled-opacity, var(--app-disabled-opacity, 0.4));cursor:not-allowed}.popover-top-container .multi-select-header input:focus-visible+label{box-shadow:var(--const-double-focus-ring)}.no-results{padding:var(--tct-search-no-results-padding, var(--app-scale-3x, 15px));color:var(--tct-search-no-results-font-color, var(--t-textA, rgba(77, 77, 77, 0.77)));text-align:center}';
685
+ return '*{box-sizing:border-box}*:active{outline:none}*:focus-visible{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 style(--t-prefers-motion: "reduced"){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}@container (not style(--t-prefers-motion: "normal")) and (not style(--t-prefers-motion: "reduced")){@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}}.q2-element-dropdown{display:none;position:absolute;background-color:var(--app-white, #ffffff);color:var(--t-text, #4d4d4d);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14));height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1, 0.2s ease);border-radius:var(--tct-dropdown-border-radius, --t-dropdown-border-radius, 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}.q2-element-dropdown::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.q2-element-dropdown::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown.sizable{display:block;height:auto}.dropdown-open .q2-element-dropdown{display:block;height:auto;overflow:auto;opacity:1;visibility:visible}:host([alignment=right]) .q2-element-dropdown{left:auto;right:0}:host([block]) q2-btn,:host([block]){display:block}:host{display:block;margin:var(--tct-search-margin, var(--tct-search-margin-top, var(--app-scale-5x, 25px)) 0 var(--tct-search-margin-bottom, var(--app-scale-5x, 25px)))}::slotted([slot=_selected-display]){width:100%;min-height:var(--comp-selected-display-height, 44px)}.q2-search-container{display:block;position:relative}.q2-search-input{--tct-input-icon-size:var(--tct-search-icon-size, var(--const-px-18, 18px));margin:0;--tct-input-min-height:var(--tct-search-input-min-height, initial);--tct-input-max-height:var(--tct-search-input-max-height, none);--tct-input-horizontal-gap:var(--tct-search-input-horizontal-gap, var(--app-scale-2x, 10px));--tct-input-icon-container-icon-min-width:var(--tct-search-icon-min-width, fit-content)}.popover-content{display:flex;flex-direction:column}.popover-content[data-loading=true]{min-height:var(--tct-search-loading-popover-height, var(--app-scale-12x, 60px));position:relative}.popover-content[data-loading=true] .loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.popover-content[data-loading=true] .loading-overlay q2-loading{--tct-loading-spinner-size:var(--tct-search-loading-spinner-size, var(--app-scale-8x, 40px));width:1em;height:1em}.popover-top-container[hidden],.popover-bottom-container[hidden]{display:none}.popover-top-container{position:sticky;top:0;z-index:5}.popover-top-container .multi-select-header{padding:var(--tct-search-multi-select-header-padding, var(--app-scale-2x, 10px));background:var(--tct-search-multi-select-header-background, var(--t-base, #ffffff));display:flex;gap:var(--app-scale-2x, 10px);align-items:center}.popover-top-container .multi-select-header fieldset{margin:0;padding:0;border:0;display:flex;gap:var(--app-scale-2x, 10px)}.popover-top-container .multi-select-header legend{padding:0;float:left}.popover-top-container .multi-select-header label{cursor:pointer;padding:var(--tct-search-multi-select-option-padding, 2px 5px);font-size:var(--tct-search-multi-select-option-font-size, inherit);border-radius:var(--tct-search-multi-select-option-border-radius, var(--app-border-radius-1, 4px));background:var(--tct-search-multi-select-option-background, transparent);color:var(--tct-search-multi-select-option-font-color, inherit)}.popover-top-container .multi-select-header label:hover{background:var(--tct-search-multi-select-option-hover-background, var(--t-gray-14, #f2f2f2));color:var(--tct-search-multi-select-option-hover-font-color, var(--t-gray-5, #404040))}.popover-top-container .multi-select-header input:checked+label,.popover-top-container .multi-select-header input:checked+label:enabled:hover{background:var(--tct-search-multi-select-option-active-background, var(--t-gray-4, #333333));color:var(--tct-search-multi-select-option-active-font-color, var(--t-base, #ffffff))}.popover-top-container .multi-select-header input:disabled+label{opacity:var(--tct-search-multi-select-option-disabled-opacity, var(--app-disabled-opacity, 0.4));cursor:not-allowed}.popover-top-container .multi-select-header input:focus-visible+label{box-shadow:var(--const-double-focus-ring)}.no-results{padding:var(--tct-search-no-results-padding, var(--app-scale-3x, 15px));color:var(--tct-search-no-results-font-color, var(--t-textA, rgba(77, 77, 77, 0.77)));text-align:center}';
681
686
  }
682
687
  }, [ 257, "q2-search", {
683
688
  clearable: [ 516 ],
@@ -1,16 +1,16 @@
1
1
  import { proxyCustomElement as t, HTMLElement as e, createEvent as i, h as n, transformTag as a } from "@stencil/core/internal/client";
2
2
 
3
- import { e as s, o, i as r, n as c, l as d } from "./index2.js";
3
+ import { e as s, b as o, o as r, i as c, n as d, l as h } from "./index2.js";
4
4
 
5
- import { m as h } from "./mirror-emit.js";
5
+ import { m as p } from "./mirror-emit.js";
6
6
 
7
- import { d as p } from "./q2-btn2.js";
7
+ import { d as l } from "./q2-btn2.js";
8
8
 
9
- import { d as l } from "./q2-icon2.js";
9
+ import { d as b } from "./q2-icon2.js";
10
10
 
11
- import { d as f } from "./q2-loading2.js";
11
+ import { d as m } from "./q2-loading2.js";
12
12
 
13
- const b = t(class extends e {
13
+ const v = t(class extends e {
14
14
  constructor(t) {
15
15
  super(), !1 !== t && this.__registerHost(), this.__attachShadow(), this.change = i(this, "change", 7),
16
16
  this.tctChange = i(this, "tctChange", 7), this.contentId = "content", this.titleId = "title",
@@ -30,12 +30,12 @@ const b = t(class extends e {
30
30
  }, this.clearResizeInterval = () => {
31
31
  this.resizerFn && clearInterval(this.resizerFn);
32
32
  }, this.onHeaderClick = () => {
33
- h(this, [ "change", "tctChange" ], {
33
+ p(this, [ "change", "tctChange" ], {
34
34
  expanded: !this.expanded
35
35
  });
36
36
  }, this.onHeaderSlotChange = () => {
37
- const t = !!this.hostElement.querySelector('[slot="q2-section-header"]');
38
- this.hasYieldedHeader !== t && (this.hasYieldedHeader = !!t);
37
+ const t = o(this.hostElement, "q2-section-header");
38
+ this.hasYieldedHeader !== t && (this.hasYieldedHeader = t);
39
39
  }, this.onTransitionEnd = () => {
40
40
  this.expanded ? this.contentHeight = void 0 : this.hideContent = !0, setTimeout((() => {
41
41
  // This gives enough time for all values to get passed over
@@ -62,7 +62,7 @@ const b = t(class extends e {
62
62
  this.contentHeight = t && e ? void 0 : "0px", this.hideContent = !e;
63
63
  }
64
64
  componentDidLoad() {
65
- this.addHeaderSlotListener(), this.addContentSlotListener(), o(this.hostElement);
65
+ this.addHeaderSlotListener(), this.addContentSlotListener(), r(this.hostElement);
66
66
  }
67
67
  // #endregion
68
68
  // #region Listeners
@@ -70,7 +70,7 @@ const b = t(class extends e {
70
70
  t.target === this.hostElement && !this.hostElement.onchange && t.detail && (this.expanded = t.detail.expanded);
71
71
  }
72
72
  delegateFocus(t) {
73
- r(t, this.hostElement) && this.contentContainer.focus();
73
+ c(t, this.hostElement) && this.contentContainer.focus();
74
74
  }
75
75
  // #endregion
76
76
  // #region Public Methods API
@@ -111,12 +111,12 @@ const b = t(class extends e {
111
111
  return t ? e ? this.contentContainerHeight : "0" : null;
112
112
  }
113
113
  async collapseSection() {
114
- this.contentHeight = this.contentContainerHeight, await c((() => {
114
+ this.contentHeight = this.contentContainerHeight, await d((() => {
115
115
  this.contentHeight = this.currentHeight;
116
116
  }));
117
117
  }
118
118
  async expandSection() {
119
- this.hideContent = !1, await c((() => {
119
+ this.hideContent = !1, await d((() => {
120
120
  this.contentHeight = this.currentHeight;
121
121
  }));
122
122
  }
@@ -127,40 +127,40 @@ const b = t(class extends e {
127
127
  i && (a ? e.push("is-closed") : s && e.push("is-transitioning"));
128
128
  const o = !this.hasYieldedHeader && !!this.label;
129
129
  return n("section", {
130
- key: "5dbed551d8571ef48b81fe7fc40b0c56db2d685a",
130
+ key: "1614590b2058a69ebaee5a59455ec5c8bfa30bde",
131
131
  class: "wrapper"
132
132
  }, n("header", {
133
- key: "dfc3bc20a49856a2fcdee6b5cae1626e32ff5416",
133
+ key: "e52e3037b59ac3443e812299114850dd6ed8810b",
134
134
  class: t ? "has-header" : ""
135
135
  }, n("div", {
136
- key: "b9073b701f1006f8048cac33b4cae9e44888c8e2",
136
+ key: "2066c8ff48cb4c6445068207533b3b6b808e9dd7",
137
137
  class: "header-content",
138
138
  id: this.titleId,
139
139
  onClick: this.collapsible && this.onHeaderClick
140
140
  }, o && n("h2", {
141
- key: "d701205c1808c6eaf2b7f3739c7488d934cf1cc0",
141
+ key: "a159d8b6bc29e10711b603aef2ce6c1419f4b7ae",
142
142
  class: "title"
143
- }, d(this.label)), n("div", {
144
- key: "5428fcecafd6e84a884783c0cc1223cb91160f69",
143
+ }, h(this.label)), n("div", {
144
+ key: "829f24123711551a6e3792cb66a2759386d6bec8",
145
145
  ref: t => this.headerSlotWrapper = t,
146
146
  class: "header-slot-wrapper"
147
147
  }, n("slot", {
148
- key: "f7d873afc6f319c259e11db10e7cf2d3010ca3c6",
148
+ key: "22c2518c55bf5f6160917beea8ab2c523bf76169",
149
149
  ref: t => this.headerSlot = t,
150
150
  name: "q2-section-header"
151
151
  }))), this.collapsible && !this.noCollapseIcon && n("q2-btn", {
152
- key: "6143342070b00156a36db039dee5e19a1a6cbe2f",
153
- label: d(this.label || "tecton.element.section.defaultToggleLabel"),
152
+ key: "950c09ccfad31453393a52cd21321338d53ac03b",
153
+ label: h(this.label || "tecton.element.section.defaultToggleLabel"),
154
154
  ariaExpanded: "" + !!this.expanded,
155
155
  ariaControls: this.contentId,
156
156
  "test-id": "toggleButton",
157
157
  "hide-label": !0,
158
158
  onClick: this.onHeaderClick
159
159
  }, n("q2-icon", {
160
- key: "297304e09f1b60c2a3e4d8146ff7b75f14d64e5c",
160
+ key: "a962ea4f0f5c0ba761d3c3eafd31a16f0338c8da",
161
161
  type: "chevron-up"
162
162
  }))), n("div", {
163
- key: "3a78d8a8ffde28f5e006fd988f6d01463758c4c1",
163
+ key: "45a1762386b7bf88fcaa50c18c1ac059b93d2e59",
164
164
  class: e.join(" "),
165
165
  id: this.contentId,
166
166
  "aria-labelledby": this.titleId,
@@ -170,12 +170,12 @@ const b = t(class extends e {
170
170
  height: this.contentHeight
171
171
  }
172
172
  }, n("div", {
173
- key: "0c7019101641ae7d05772a9ec4e8c16ca40e1112",
173
+ key: "80508c39608fa4bf3d6f1911ff592f04e5115014",
174
174
  ref: t => this.contentContainer = t,
175
175
  class: "content",
176
176
  tabindex: "-1"
177
177
  }, n("slot", {
178
- key: "49a17e0cd8279255eec0dc2d7344dc0fa260dc46",
178
+ key: "c88062ea0a59b62143e22c8492a8d06826a27a83",
179
179
  ref: t => this.contentSlot = t
180
180
  }))));
181
181
  }
@@ -193,7 +193,7 @@ const b = t(class extends e {
193
193
  };
194
194
  }
195
195
  static get style() {
196
- return '*{box-sizing:border-box}*:active{outline:none}*:focus-visible{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 style(--t-prefers-motion: "reduced"){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}@container (not style(--t-prefers-motion: "normal")) and (not style(--t-prefers-motion: "reduced")){@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}}:host{display:block;background:var(--tct-section-background, var(--tct-section-background-color, var(--t-section-background-color, var(--tct-section-bg, var(--t-section-bg, var(--app-white, #ffffff))))));color:var(--tct-section-font-color, var(--t-section-font-color, inherit));border-radius:var(--tct-section-border-radius, var(--t-section-border-radius, var(--app-border-radius-1, 4px)));margin:var(--tct-section-margin, var(--t-section-margin, var(--app-scale-3x, 15px)));border-width:var(--tct-section-border-width, 0);border-style:var(--tct-section-border-style, solid);border-color:var(--tct-section-border-color, none)}@media screen and (max-width: 767px){:host{--comp-default-margin:var(--app-scale-3x, 15px) 0;margin:var(--tct-section-margin, var(--t-section-margin, var(--comp-default-margin)))}}@media print{:host{--comp-default-print-margin:var(--app-scale-3x, 15px) 0;margin:var(--tct-section-print-margin, var(--comp-default-print-margin))}}.wrapper{--comp-tween:var(--tct-section-tween, var(--t-section-tween, var(--app-tween-1, 0.2s ease)));--comp-default-wrapper-padding:var(--app-scale-1x, 5px) 0;border-radius:var(--tct-section-border-radius, var(--t-section-border-radius, var(--app-border-radius-1, 4px)));display:block;padding:var(--tct-section-wrapper-padding, var(--t-section-wrapper-padding, var(--comp-default-wrapper-padding)))}.wrapper:hover{box-shadow:var(--tct-section-wrapper-hover-box-shadow, var(--t-section-wrapper-hover-box-shadow, inherit))}:host([collapsible]) .wrapper{--comp-tween:var(--tct-section-tween, var(--t-section-tween, var(--app-tween-2, 0.4s ease)))}header{--comp-default-header-padding:0 var(--app-scale-3x, 15px);padding:var(--tct-section-header-padding, var(--t-section-header-padding, var(--comp-default-header-padding)));display:flex}@media print{header{padding:var(--tct-section-header-print-padding, 0)}}header.has-header{min-height:var(--tct-section-header-min-height, var(--t-section-header-min-height, 44px))}.header-content{flex:1 1 100%;min-width:0;align-self:center}:host([collapsible]) .header-content{cursor:pointer}.title{margin:var(--tct-section-title-margin, 0);font-size:var(--tct-section-title-font-size, var(--const-px-20, 20px));font-weight:var(--tct-section-title-font-weight, 600);text-transform:var(--tct-section-title-text-transform, none);letter-spacing:var(--tct-section-title-letter-spacing, inherit)}q2-icon{transition:transform var(--comp-tween)}:host(:not([expanded])) q2-icon,:host([expanded=false]) q2-icon{transform:rotate(180deg)}.content-wrapper{height:auto}.content-wrapper.is-closed{display:none;overflow:hidden}.content-wrapper.is-transitioning{overflow:hidden}:host([collapsible]) .content-wrapper{transition:height var(--comp-tween)}.content{--comp-default-content-padding:var(--app-scale-2x, 10px) var(--app-scale-3x, 15px);padding:var(--tct-section-content-padding, var(--t-section-content-padding, var(--comp-default-content-padding)))}@media print{.content{padding:var(--tct-section-content-print-padding, 0)}}.content:focus{box-shadow:none}:host([collapsible]) :host(:not([expanded])) .content{visibility:hidden}q2-btn{--tct-btn-icon-hover-background:var(--tct-section-btn-hover-background, var(--app-gray-l3, #f2f2f2));--tct-icon-stroke-primary:var(--tct-section-btn-icon-stroke-primary, var(--app-gray, #747474));--tct-icon-stroke-secondary:var(--tct-section-btn-icon-stroke-secondary, var(--app-gray, #747474))}';
196
+ return '*{box-sizing:border-box}*:active{outline:none}*:focus-visible{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 style(--t-prefers-motion: "reduced"){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}@container (not style(--t-prefers-motion: "normal")) and (not style(--t-prefers-motion: "reduced")){@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}}:host{display:block;background:var(--tct-section-background, var(--tct-section-background-color, var(--t-section-background-color, var(--tct-section-bg, var(--t-section-bg, var(--app-white, #ffffff))))));color:var(--tct-section-font-color, var(--t-section-font-color, inherit));border-radius:var(--tct-section-border-radius, var(--t-section-border-radius, var(--app-border-radius-1, 4px)));margin:var(--tct-section-margin, var(--t-section-margin, var(--app-scale-3x, 15px)));border-width:var(--tct-section-border-width, 0);border-style:var(--tct-section-border-style, solid);border-color:var(--tct-section-border-color, none)}@media screen and (max-width: 767px){:host{--comp-default-margin:var(--app-scale-3x, 15px) 0;margin:var(--tct-section-margin, var(--t-section-margin, var(--comp-default-margin)))}}@media print{:host{--comp-default-print-margin:var(--app-scale-3x, 15px) 0;margin:var(--tct-section-print-margin, var(--comp-default-print-margin))}}.wrapper{--comp-tween:var(--tct-section-tween, var(--t-section-tween, var(--app-tween-1, 0.2s ease)));--comp-default-wrapper-padding:var(--app-scale-1x, 5px) 0;border-radius:var(--tct-section-border-radius, var(--t-section-border-radius, var(--app-border-radius-1, 4px)));display:block;padding:var(--tct-section-wrapper-padding, var(--t-section-wrapper-padding, var(--comp-default-wrapper-padding)))}.wrapper:hover{box-shadow:var(--tct-section-wrapper-hover-box-shadow, var(--t-section-wrapper-hover-box-shadow, inherit))}:host([collapsible]) .wrapper{--comp-tween:var(--tct-section-tween, var(--t-section-tween, var(--app-tween-2, 0.4s ease)))}header{--comp-default-header-padding:0 var(--app-scale-3x, 15px);padding:var(--tct-section-header-padding, var(--t-section-header-padding, var(--comp-default-header-padding)));display:flex}@media print{header{padding:var(--tct-section-header-print-padding, 0)}}header.has-header{min-height:var(--tct-section-header-min-height, var(--t-section-header-min-height, 44px))}.header-content{flex:1 1 100%;min-width:0;align-self:center}:host([collapsible]) .header-content{cursor:pointer}.title{margin:var(--tct-section-title-margin, 0);font-size:var(--tct-section-title-font-size, var(--const-px-20, 20px));font-weight:var(--tct-section-title-font-weight, 600);text-transform:var(--tct-section-title-text-transform, none);letter-spacing:var(--tct-section-title-letter-spacing, inherit)}q2-icon{--tct-icon-size:var(--tct-section-icon-size, var(--const-px-18, 18px));transition:transform var(--comp-tween)}:host(:not([expanded])) q2-icon,:host([expanded=false]) q2-icon{transform:rotate(180deg)}.content-wrapper{height:auto}.content-wrapper.is-closed{display:none;overflow:hidden}.content-wrapper.is-transitioning{overflow:hidden}:host([collapsible]) .content-wrapper{transition:height var(--comp-tween)}.content{--comp-default-content-padding:var(--app-scale-2x, 10px) var(--app-scale-3x, 15px);padding:var(--tct-section-content-padding, var(--t-section-content-padding, var(--comp-default-content-padding)))}@media print{.content{padding:var(--tct-section-content-print-padding, 0)}}.content:focus{box-shadow:none}:host([collapsible]) :host(:not([expanded])) .content{visibility:hidden}q2-btn{--tct-btn-icon-hover-background:var(--tct-section-btn-hover-background, var(--app-gray-l3, #f2f2f2));--tct-icon-stroke-primary:var(--tct-section-btn-icon-stroke-primary, var(--app-gray, #747474));--tct-icon-stroke-secondary:var(--tct-section-btn-icon-stroke-secondary, var(--app-gray, #747474))}';
197
197
  }
198
198
  }, [ 257, "q2-section", {
199
199
  collapsible: [ 516 ],
@@ -214,26 +214,26 @@ const b = t(class extends e {
214
214
  } ]
215
215
  } ]);
216
216
 
217
- const m = b, defineCustomElement = function() {
217
+ const f = v, defineCustomElement = function() {
218
218
  if ("undefined" == typeof customElements) return;
219
219
  [ "q2-section", "q2-btn", "q2-icon", "q2-loading" ].forEach((t => {
220
220
  switch (t) {
221
221
  case "q2-section":
222
- customElements.get(a(t)) || customElements.define(a(t), b);
222
+ customElements.get(a(t)) || customElements.define(a(t), v);
223
223
  break;
224
224
 
225
225
  case "q2-btn":
226
- customElements.get(a(t)) || p();
226
+ customElements.get(a(t)) || l();
227
227
  break;
228
228
 
229
229
  case "q2-icon":
230
- customElements.get(a(t)) || l();
230
+ customElements.get(a(t)) || b();
231
231
  break;
232
232
 
233
233
  case "q2-loading":
234
- customElements.get(a(t)) || f();
234
+ customElements.get(a(t)) || m();
235
235
  }
236
236
  }));
237
237
  };
238
238
 
239
- export { m as Q2Section, defineCustomElement }
239
+ export { f as Q2Section, defineCustomElement }
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement as t, HTMLElement as e, createEvent as i, h as s, Fragment as o, transformTag as l } from "@stencil/core/internal/client";
2
2
 
3
- import { c as a, l as n, d as r, h as c, o as h, i as d, x as p, y as u, w as v } from "./index2.js";
3
+ import { c as n, l as a, d as r, h as c, o as h, i as d, x as p, y as u, w as v } from "./index2.js";
4
4
 
5
5
  import { m } from "./mirror-emit.js";
6
6
 
@@ -28,8 +28,8 @@ const O = t(class extends e {
28
28
  // #region Own Properties
29
29
  super(), !1 !== t && this.__registerHost(), this.__attachShadow(), this.change = i(this, "change", 7),
30
30
  this.input = i(this, "input", 7), this.tctChange = i(this, "tctChange", 7), this.tctInput = i(this, "tctInput", 7),
31
- this.guid = a(), this.isOrientationUpdate = !1, this.lastTouchWasInPopover = !1,
32
- this.scheduledAfterRender = [],
31
+ this.guid = n(), this.isOrientationUpdate = !1, this.lastTouchWasInPopover = !1,
32
+ this.removingSelectedDisplay = !1, this.scheduledAfterRender = [],
33
33
  // #endregion
34
34
  // #region State Properties
35
35
  this.hasCustomDisplay = !1, this.hasPopoverBottom = !1, this.hasPopoverTop = !1,
@@ -56,7 +56,7 @@ const O = t(class extends e {
56
56
  * Determines the label that is applied to the option list for accessibility purposes.
57
57
  * @localizable
58
58
  */
59
- this.listLabel = n("tecton.element.select.listLabel"),
59
+ this.listLabel = a("tecton.element.select.listLabel"),
60
60
  /** The minimum number of rows the component will try to display below or above the component when opened. */
61
61
  this.minRows = 3,
62
62
  /** Enables text wrapping for `q2-option` elements. When `false`, the text truncates and does not wrap. */
@@ -81,7 +81,12 @@ const O = t(class extends e {
81
81
  * Takes priority over `optional` if both are `true`.
82
82
  */
83
83
  this.readonly = !1,
84
- /** Enables search functionality. */
84
+ /**
85
+ * Enables search functionality.
86
+ * @warning
87
+ * `searchable` is not compatible with the `hoist` prop. The action sheet workflow used when `hoist` is `true` does not support in-list search filtering.
88
+ * If both are set, `searchable` has no effect while the action sheet is active.
89
+ */
85
90
  this.searchable = !1,
86
91
  /**
87
92
  * Each item in this array should correspond to the value of a `q2-option` element.
@@ -144,8 +149,8 @@ const O = t(class extends e {
144
149
  }, this.inputInputHandler = t => {
145
150
  t.stopPropagation();
146
151
  const e = t.detail.value;
147
- !!this.value && this.clearValue(), this.open || this.openDropdownWithoutActiveElement(),
148
- this.prioritizeSearch = !0, this.searchText = e, m(this, [ "input", "tctInput" ], {
152
+ this.open || this.openDropdownWithoutActiveElement(), this.prioritizeSearch = !0,
153
+ this.searchText = e, m(this, [ "input", "tctInput" ], {
149
154
  query: e
150
155
  });
151
156
  }, this.inputKeydownHandler = t => {
@@ -153,7 +158,7 @@ const O = t(class extends e {
153
158
  const {key: e, shiftKey: i} = t, s = "Tab" === e && i, o = this.hasPopoverTop || this.hasPopoverBottom;
154
159
  if ((o || this.multiple) && ("Tab" === e || s)) return;
155
160
  // slots are incompatible with action sheet
156
- if (b(this, t) && !o) return this.executeActionSheet(t);
161
+ if (b(this, t) && !o) return t.preventDefault(), t.stopPropagation(), this.executeActionSheet(t);
157
162
  !this.searchable || " " !== e && "Enter" !== e || "" != this.inputField.value || (t.preventDefault(),
158
163
  this.open || this.openDropdownWithoutActiveElement()), this.searchable && ![ "ArrowDown", "ArrowUp", "PageDown", "PageUp", "Home", "End", "Escape", "Tab" ].includes(e) || (this.shouldClearSearchText(t) && this.clearSearchText(),
159
164
  // Prevent click event from firing when spacebar is pressed
@@ -162,8 +167,8 @@ const O = t(class extends e {
162
167
  t.stopPropagation(), this.focusInput(), this.toggleDropdown();
163
168
  }, this.onMutationObserved = () => {
164
169
  var t, e, i;
165
- const {hostElement: s, hasPopoverTop: o, hasPopoverBottom: l} = this, a = null === (t = s.shadowRoot) || void 0 === t ? void 0 : t.querySelector('slot[name="q2-select-display"]'), n = (null == a ? void 0 : a.assignedNodes().length) > 0;
166
- this.hasCustomDisplay !== n && (this.hasCustomDisplay = n);
170
+ const {hostElement: s, hasPopoverTop: o, hasPopoverBottom: l} = this, n = null === (t = s.shadowRoot) || void 0 === t ? void 0 : t.querySelector('slot[name="q2-select-display"]'), a = (null == n ? void 0 : n.assignedNodes().length) > 0;
171
+ this.hasCustomDisplay !== a && (this.hasCustomDisplay = a);
167
172
  const r = null === (e = s.shadowRoot) || void 0 === e ? void 0 : e.querySelector('slot[name="popover-top"]'), c = (null == r ? void 0 : r.assignedNodes().length) > 0;
168
173
  o !== c && (this.hasPopoverTop = c);
169
174
  const h = null === (i = s.shadowRoot) || void 0 === i ? void 0 : i.querySelector('slot[name="popover-bottom"]'), d = (null == h ? void 0 : h.assignedNodes().length) > 0;
@@ -177,9 +182,10 @@ const O = t(class extends e {
177
182
  t && !this.searchText || ("select" !== e && this.optionList.setActiveElement(null),
178
183
  this.inputField.focus()), this.open !== t && (this.open = t);
179
184
  }, this.onSelectedDisplayClick = t => {
185
+ var e, i;
180
186
  // Stop click from bubbling to q2-input's onClick (which would toggle the dropdown)
181
- t.stopPropagation(), this.open || (this.prioritizeSearch = this.searchable, this.clearSelectedDisplay(),
182
- this.openDropdownWithoutActiveElement()), this.focusInput();
187
+ t.stopPropagation(), this.open ? null === (e = this.innerInputField) || void 0 === e || e.focus() : (null === (i = this.innerInputField) || void 0 === i || i.focus(),
188
+ this.prioritizeSearch = this.searchable, this.openDropdownWithoutActiveElement());
183
189
  }, this.onSelectedDisplayMousedown = t => {
184
190
  // Prevent focus shift away from the hidden input
185
191
  t.preventDefault();
@@ -228,22 +234,23 @@ const O = t(class extends e {
228
234
  }
229
235
  onClearHandler(t) {
230
236
  var e;
237
+ this.readonly || this.disabled || this.multiple && this.searchable && "input" === (null === (e = null == t ? void 0 : t.detail) || void 0 === e ? void 0 : e.source) || this.clearValue();
231
238
  // when multiple & searchable, it should not fire clearValue() if the type is `input` (cleared by key input) which is emitted from q2-input's handleDataInput
232
- this.multiple && this.searchable && "input" === (null === (e = null == t ? void 0 : t.detail) || void 0 === e ? void 0 : e.source) || this.clearValue();
233
- }
239
+ }
234
240
  handleSelectedDisplay(t) {
235
241
  !this.multiple && this.value && this.value === t.detail.value && (this.inputField.value = t.detail.display);
236
242
  }
237
243
  delegateFocus(t) {
238
- var e;
244
+ var e, i;
239
245
  // Always delegate focus from host to inner input (fixes programmatic focus)
240
246
  d(t, this.hostElement) && (null === (e = this.innerInputField) || void 0 === e || e.focus());
241
- // Manage display state for searchable selects (preserves existing behavior)
242
- const i = p(t, this.hostElement);
243
- this.prioritizeSearch = i && this.searchable, this.prioritizeSearch && this.clearSelectedDisplay();
247
+ const s = p(t, this.hostElement), o = !!this.selectedDisplaySlot || this.multilineOptions && !!this.firstSelectedOptionElement && !this.firstSelectedOptionElement.display;
248
+ this.prioritizeSearch = s && this.searchable && (this.multiple || o), this.prioritizeSearch ? this.clearSelectedDisplay() : s && this.searchable && this.value && (null === (i = this.innerInputField) || void 0 === i || i.select());
244
249
  }
245
250
  handleFocusout(t) {
246
251
  var e;
252
+ // Removing the robust display while opening search can emit a focusout without a destination.
253
+ if (!t.relatedTarget && (this.removingSelectedDisplay || this.open && this.prioritizeSearch)) return;
247
254
  const i = t.relatedTarget, s = !(null === (e = this.popoverElement) || void 0 === e ? void 0 : e.contains(i)) && !this.hostElement.contains(i);
248
255
  s && this.closeDropdown(), this.prioritizeSearch = !s && this.searchable;
249
256
  }
@@ -265,14 +272,14 @@ const O = t(class extends e {
265
272
  e.forEach((t => {
266
273
  var e;
267
274
  if ("" === i) return void (t.hidden = !1);
268
- const o = "Q2-CARD" === (null === (e = t.firstElementChild) || void 0 === e ? void 0 : e.tagName) ? t.firstElementChild.title : null, {display: l = "", innerText: a = ""} = t, n = [ l, o, a ].some((t => {
275
+ const o = "Q2-CARD" === (null === (e = t.firstElementChild) || void 0 === e ? void 0 : e.tagName) ? t.firstElementChild.title : null, {display: l = "", innerText: n = ""} = t, a = [ l, o, n ].some((t => {
269
276
  var e;
270
277
  return null !== (e = null == t ? void 0 : t.toLocaleLowerCase().includes(i)) && void 0 !== e && e;
271
278
  }));
272
- t.hidden = !n, n && s++;
279
+ t.hidden = !a, a && s++;
273
280
  }));
274
281
  const o = i ? "tecton.element.select.searchable.results" : "tecton.element.select.allOptions", l = i ? s : e.length;
275
- this.setStatusMessage(n(o, [ l ]));
282
+ this.setStatusMessage(a(o, [ l ]));
276
283
  }
277
284
  // #endregion
278
285
  // #region Public Methods API
@@ -327,10 +334,9 @@ const O = t(class extends e {
327
334
  handleMultilineOptionsUpdate(t, e) {
328
335
  t !== e && this.optionElements.forEach((e => e.multiline = t));
329
336
  }
330
- openChanged(t) {
331
- t ? this.addTouchEventListeners() : (this.removeTouchEventListeners(),
332
- // Reset prioritizeSearch when dropdown closes to ensure selected display can be restored
333
- this.prioritizeSearch = !1), this.scheduledAfterRender.push((async () => {
337
+ openChanged(t, e) {
338
+ t ? this.addTouchEventListeners() : (this.removeTouchEventListeners(), e && (this.prioritizeSearch = !1)),
339
+ this.scheduledAfterRender.push((async () => {
334
340
  await v();
335
341
  const {popoverTopContainer: e, popoverElement: i} = this, s = t && (null == e ? void 0 : e.offsetHeight) || 0;
336
342
  s ? i.style.setProperty("--comp-popover-top-container-height", `${s}px`) : i.style.removeProperty("--comp-popover-top-container-height");
@@ -409,17 +415,17 @@ const O = t(class extends e {
409
415
  calculateMultiSelectSelectedDisplay() {
410
416
  var t, e, i;
411
417
  const {firstSelectedOptionElement: s, firstSelectedValue: o, multilineOptions: l} = this;
412
- return o ? (null == s ? void 0 : s.display) ? n(s.display) : l && this.searchable ? this.searchText : l ? "" : null !== (i = null !== (e = null === (t = null == s ? void 0 : s.textContent) || void 0 === t ? void 0 : t.trim()) && void 0 !== e ? e : null == s ? void 0 : s.value) && void 0 !== i ? i : o : "";
418
+ return o ? (null == s ? void 0 : s.display) ? a(s.display) : l && this.searchable ? this.searchText : l ? "" : null !== (i = null !== (e = null === (t = null == s ? void 0 : s.textContent) || void 0 === t ? void 0 : t.trim()) && void 0 !== e ? e : null == s ? void 0 : s.value) && void 0 !== i ? i : o : "";
413
419
  }
414
420
  calculateSingleSelectSelectedDisplay() {
415
421
  var t;
416
422
  const {firstSelectedOptionElement: e, multilineOptions: i} = this;
417
- return i ? (null == e ? void 0 : e.display) && n(e.display) || this.value || "" : (null == e ? void 0 : e.display) && n(e.display) || (null === (t = null == e ? void 0 : e.textContent) || void 0 === t ? void 0 : t.trim()) || this.value || "";
423
+ return i ? (null == e ? void 0 : e.display) && a(e.display) || this.value || "" : (null == e ? void 0 : e.display) && a(e.display) || (null === (t = null == e ? void 0 : e.textContent) || void 0 === t ? void 0 : t.trim()) || this.value || "";
418
424
  }
419
425
  checkSelectedDisplay() {
420
426
  let t = this.selectedDisplaySlot;
421
- const {value: e, multiple: i, selectedOptions: s, multilineOptions: o, firstSelectedOptionElement: l, prioritizeSearch: a} = this, n = !e && i && !(null == s ? void 0 : s.length);
422
- if (a || !o || n) return this.clearSelectedDisplay();
427
+ const {value: e, multiple: i, selectedOptions: s, multilineOptions: o, firstSelectedOptionElement: l, prioritizeSearch: n} = this, a = !e && i && !(null == s ? void 0 : s.length);
428
+ if (n || !o || a) return this.clearSelectedDisplay();
423
429
  if (!l || l.display) return this.clearSelectedDisplay();
424
430
  // Clone selected option and remove elements with hide-on-select attribute
425
431
  const r = l.firstElementChild.cloneNode(!0);
@@ -450,7 +456,7 @@ const O = t(class extends e {
450
456
  clearSelectedDisplay() {
451
457
  const t = this.selectedDisplaySlot;
452
458
  t && (t.removeEventListener("mousedown", this.onSelectedDisplayMousedown), t.removeEventListener("click", this.onSelectedDisplayClick),
453
- t.remove());
459
+ this.removingSelectedDisplay = !0, t.remove(), setTimeout((() => this.removingSelectedDisplay = !1), 0));
454
460
  }
455
461
  clearValue() {
456
462
  const {multiple: t} = this;
@@ -550,7 +556,7 @@ const O = t(class extends e {
550
556
  })));
551
557
  }
552
558
  renderSelectField() {
553
- var t;
559
+ var t, e;
554
560
  return s(o, null, s("div", {
555
561
  "aria-live": "polite",
556
562
  "aria-atomic": "true",
@@ -559,10 +565,10 @@ const O = t(class extends e {
559
565
  }, this.statusMessage), s("q2-input", {
560
566
  ref: t => this.inputField = t,
561
567
  class: "q2-select-input",
562
- label: this.label && n(this.label) || "",
568
+ label: this.label && a(this.label) || "",
563
569
  value: this.selectedDisplay,
564
- clearable: this.clearable && (!!this.value || !!(null === (t = this.selectedOptions) || void 0 === t ? void 0 : t.length)) || void 0,
565
- errors: Array.isArray(this.errors) && this.errors.length > 0 && this.errors.map((t => n(t))) || this.invalid && [ "tecton.element.select.invalid" ] || [],
570
+ clearable: !this.disabled && this.clearable && (!!this.value || !!(null === (t = this.selectedOptions) || void 0 === t ? void 0 : t.length)) || void 0,
571
+ errors: Array.isArray(this.errors) && this.errors.length > 0 && this.errors.map((t => a(t))) || this.invalid && [ "tecton.element.select.invalid" ] || [],
566
572
  disabled: this.disabled,
567
573
  optional: this.optional,
568
574
  readonly: !!this.readonly,
@@ -585,6 +591,7 @@ const O = t(class extends e {
585
591
  onTctChange: this.inputChangeHandler,
586
592
  badgeValue: this.badgeValue,
587
593
  badgeTheme: this.inputFocused ? "primary" : void 0,
594
+ _ariaDescription: this.multiple && (null === (e = this.selectedOptions) || void 0 === e ? void 0 : e.length) ? a("tecton.element.select.selectionCount", [ this.selectedOptions.length ]) : void 0,
588
595
  _role: "combobox",
589
596
  _preventEntry: !this.searchable
590
597
  }, this.renderCustomDisplay()), s("div", {
@@ -601,39 +608,39 @@ const O = t(class extends e {
601
608
  return s("div", {
602
609
  class: "multi-select-header"
603
610
  }, s("fieldset", null, s("legend", {
604
- "aria-label": n("tecton.element.select.multiHeader.showing")
605
- }, n("tecton.element.select.multiHeader.showing")), s("div", null, s("input", {
611
+ "aria-label": a("tecton.element.select.multiHeader.showing")
612
+ }, a("tecton.element.select.multiHeader.showing")), s("div", null, s("input", {
606
613
  class: "sr",
607
614
  type: "radio",
608
615
  id: "all",
609
616
  name: "viewDisplay",
610
617
  value: "all",
611
618
  checked: !o,
612
- "aria-label": n("tecton.element.select.multiHeader.allAriaLabel"),
619
+ "aria-label": a("tecton.element.select.multiHeader.allAriaLabel"),
613
620
  "test-id": "allOptionsButton",
614
621
  onClick: this.showAllOptions,
615
622
  onKeyDown: this.visibilityToggleKeyDown
616
623
  }), s("label", {
617
624
  htmlFor: "all"
618
- }, n("tecton.element.select.multiHeader.all"))), s("div", null, s("input", {
625
+ }, a("tecton.element.select.multiHeader.all"))), s("div", null, s("input", {
619
626
  class: "sr",
620
627
  type: "radio",
621
628
  id: "selected",
622
629
  disabled: 0 === i,
623
630
  name: "viewDisplay",
624
631
  value: "selected",
625
- "aria-label": n("tecton.element.select.multiHeader.selectedAriaLabel", [ i ]),
632
+ "aria-label": a("tecton.element.select.multiHeader.selectedAriaLabel", [ i ]),
626
633
  checked: o,
627
634
  "test-id": "selectedOptionsButton",
628
635
  onClick: this.showSelectedOptions,
629
636
  onKeyDown: this.visibilityToggleKeyDown
630
637
  }), s("label", {
631
638
  htmlFor: "selected"
632
- }, n("tecton.element.select.multiHeader.selected", [ i ])))));
639
+ }, a("tecton.element.select.multiHeader.selected", [ i ])))));
633
640
  }
634
641
  render() {
635
642
  return s("click-elsewhere", {
636
- key: "a08e10cf8bd4e2d3f210d36003417f2a1dec4b21",
643
+ key: "5c9a6d681aedcebfbadd6b1249f7bcd96c27809c",
637
644
  class: this.wrapperClasses,
638
645
  role: "presentation",
639
646
  onChange: this.clickedElsewhere
@@ -667,7 +674,7 @@ const O = t(class extends e {
667
674
  };
668
675
  }
669
676
  static get style() {
670
- return '*{box-sizing:border-box}*:active{outline:none}*:focus-visible{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 style(--t-prefers-motion: "reduced"){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}@container (not style(--t-prefers-motion: "normal")) and (not style(--t-prefers-motion: "reduced")){@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}}.q2-element-dropdown{display:none;position:absolute;background-color:var(--app-white, #ffffff);color:var(--t-text, #4d4d4d);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14));height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1, 0.2s ease);border-radius:var(--tct-dropdown-border-radius, --t-dropdown-border-radius, 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}.q2-element-dropdown::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.q2-element-dropdown::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown.sizable{display:block;height:auto}.dropdown-open .q2-element-dropdown{display:block;height:auto;overflow:auto;opacity:1;visibility:visible}:host([alignment=right]) .q2-element-dropdown{left:auto;right:0}:host([block]) q2-btn,:host([block]){display:block}:host{--comp-default-select-margin:var(--tct-select-margin-top, var(--t-select-margin-top, var(--app-scale-5x, 25px))) 0 var(--tct-select-margin-bottom, var(--t-select-margin-bottom, var(--app-scale-5x, 25px)));display:block;margin:var(--tct-select-margin, var(--comp-default-select-margin))}.q2-select-container{position:relative;display:block}.q2-select-input{margin:0;--tct-input-min-height:var(--tct-select-input-min-height, var(--t-select-input-min-height));--tct-input-max-height:var(--tct-select-input-max-height, var(--t-select-input-max-height, none))}::slotted([slot=_selected-display]){width:100%;min-height:var(--comp-selected-display-height, 44px);padding-top:var(--tct-select-selected-display-padding, var(--app-scale-2x, 10px));padding-bottom:var(--tct-select-selected-display-padding, var(--app-scale-2x, 10px))}.custom-display-content{position:absolute;bottom:0;left:calc(var(--tct-scale-2, var(--app-scale-2x, 10px)) + 1px);height:44px;width:calc(100% - 34px - var(--tct-scale-3, var(--app-scale-3x, 15px)));overflow:hidden;cursor:pointer;transition:left var(--tct-tween-2, var(--app-tween-1, 0.2s ease))}.custom-display-content:not([hidden]){display:flex;align-items:center}.is-searchable.is-focused .custom-display-content,.is-searchable .custom-display-content:active{left:calc(var(--tct-scale-3, var(--app-scale-3x, 15px)) + 1px)}.has-error .custom-display-content{width:calc(100% - 68px - var(--tct-scale-3, var(--app-scale-3x, 15px)))}.popover-content{display:flex;flex-direction:column-reverse}.popover-bottom-container{position:sticky;bottom:0;z-index:5}.popover-top-container{position:sticky;top:0;z-index:5}.popover-top-container .multi-select-header{padding:var(--tct-scale-2, var(--app-scale-2x, 10px)) var(--tct-scale-2, var(--app-scale-2x, 10px));background:var(--app-white);display:flex;gap:var(--app-scale-2x, 10px);align-items:center}.popover-top-container .multi-select-header fieldset{margin:0;padding:0;border:0;display:flex;gap:var(--app-scale-2x, 10px)}.popover-top-container .multi-select-header legend{padding:0;float:left}.popover-top-container .multi-select-header label{cursor:pointer;padding:var(--tct-select-multi-select-option-padding, var(--t-select-multi-select-option-padding, var(--tct-btn-badge-padding, var(--t-btn-badge-padding, 2px 5px))));font-size:var(--tct-select-multi-select-option-font-size, var(--t-select-multi-select-option-font-size, var(--tct-btn-badge-font-size, var(--t-btn-badge-font-size, inherit))));border-radius:var(--tct-select-multi-select-option-radius, var(--t-select-multi-select-option-radius, var(--tct-btn-badge-border-radius, var(--t-btn-badge-border-radius, var(--app-border-radius-1, 4px)))));background:var(--tct-select-multi-select-option-background, var(--tct-select-multi-select-option-bg, var(--t-select-multi-select-option-bg, var(--tct-badge-background, var(--tct-btn-badge-bg, var(--t-btn-badge-bg, transparent))))));color:var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-font-color, var(--t-btn-badge-font-color, inherit))))}.popover-top-container .multi-select-header label:hover{background:var(--tct-select-multi-select-option-hover-background, var(--tct-select-multi-select-option-hover-background-color, var(--t-select-multi-select-option-hover-background-color, var(--tct-btn-badge-hover-bg, var(--t-btn-badge-hover-bg, var(--tct-gray-14, var(--t-gray-14, var(--app-gray-l3, #f2f2f2))))))));color:var(--tct-select-multi-select-option-hover-color, var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-hover-font-color, var(--t-btn-badge-hover-font-color, var(--tct-gray-5, var(--t-gray-5, var(--app-gray-d2, #404040))))))))}.popover-top-container .multi-select-header input:checked+label,.popover-top-container .multi-select-header input:checked+label:enabled:hover{background:var(--tct-select-multi-select-option-active-background, var(--tct-select-multi-select-option-active-background-color, var(--t-select-multi-select-option-active-background-color, var(--tct-btn-primary-bg, var(--t-btn-primary-bg, #2e2e2e)))));color:var(--tct-select-multi-select-option-active-color, var(--t-select-multi-select-option-active-color, var(--tct-btn-primary-font-color, var(--t-btn-primary-font-color, var(--app-white, #ffffff)))))}.popover-top-container .multi-select-header input:disabled+label{opacity:var(--tct-select-multi-select-option-disabled-opacity, var(--t-select-multi-select-option-disabled-opacity, var(--tct-btn-disabled-opacity, var(--t-btn-disabled-opacity, var(--app-disabled-opacity, 0.4)))));cursor:not-allowed}.popover-top-container .multi-select-header input:focus-visible+label{box-shadow:var(--const-double-focus-ring)}';
677
+ return '*{box-sizing:border-box}*:active{outline:none}*:focus-visible{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 style(--t-prefers-motion: "reduced"){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}@container (not style(--t-prefers-motion: "normal")) and (not style(--t-prefers-motion: "reduced")){@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;animation-delay:0ms !important;transition-delay:0ms !important}}}.q2-element-dropdown{display:none;position:absolute;background-color:var(--app-white, #ffffff);color:var(--t-text, #4d4d4d);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14));height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1, 0.2s ease);border-radius:var(--tct-dropdown-border-radius, --t-dropdown-border-radius, 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}.q2-element-dropdown::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.q2-element-dropdown::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown.sizable{display:block;height:auto}.dropdown-open .q2-element-dropdown{display:block;height:auto;overflow:auto;opacity:1;visibility:visible}:host([alignment=right]) .q2-element-dropdown{left:auto;right:0}:host([block]) q2-btn,:host([block]){display:block}:host{--comp-default-select-margin:var(--tct-select-margin-top, var(--t-select-margin-top, var(--app-scale-5x, 25px))) 0 var(--tct-select-margin-bottom, var(--t-select-margin-bottom, var(--app-scale-5x, 25px)));display:block;margin:var(--tct-select-margin, var(--comp-default-select-margin))}.q2-select-container{position:relative;display:block}.q2-select-input{margin:0;letter-spacing:inherit;--tct-input-icon-size:var(--tct-select-icon-size, var(--const-px-18, 18px));--tct-input-min-height:var(--tct-select-input-min-height, var(--t-select-input-min-height));--tct-input-max-height:var(--tct-select-input-max-height, var(--t-select-input-max-height, none))}::slotted([slot=_selected-display]){width:100%;min-height:var(--comp-selected-display-height, 44px);padding-top:var(--tct-select-selected-display-padding, var(--app-scale-2x, 10px));padding-bottom:var(--tct-select-selected-display-padding, var(--app-scale-2x, 10px))}.custom-display-content{position:absolute;bottom:0;left:calc(var(--tct-scale-2, var(--app-scale-2x, 10px)) + 1px);height:44px;width:calc(100% - 34px - var(--tct-scale-3, var(--app-scale-3x, 15px)));overflow:hidden;cursor:pointer;transition:left var(--tct-tween-2, var(--app-tween-1, 0.2s ease))}.custom-display-content:not([hidden]){display:flex;align-items:center}.is-searchable.is-focused .custom-display-content,.is-searchable .custom-display-content:active{left:calc(var(--tct-scale-3, var(--app-scale-3x, 15px)) + 1px)}.has-error .custom-display-content{width:calc(100% - 68px - var(--tct-scale-3, var(--app-scale-3x, 15px)))}.popover-content{display:flex;flex-direction:column-reverse}.popover-bottom-container{position:sticky;bottom:0;z-index:5}.popover-top-container{position:sticky;top:0;z-index:5}.popover-top-container .multi-select-header{padding:var(--tct-scale-2, var(--app-scale-2x, 10px)) var(--tct-scale-2, var(--app-scale-2x, 10px));background:var(--app-white);display:flex;gap:var(--app-scale-2x, 10px);align-items:center}.popover-top-container .multi-select-header fieldset{margin:0;padding:0;border:0;display:flex;gap:var(--app-scale-2x, 10px)}.popover-top-container .multi-select-header legend{padding:0;float:left}.popover-top-container .multi-select-header label{cursor:pointer;padding:var(--tct-select-multi-select-option-padding, var(--t-select-multi-select-option-padding, var(--tct-btn-badge-padding, var(--t-btn-badge-padding, 2px 5px))));font-size:var(--tct-select-multi-select-option-font-size, var(--t-select-multi-select-option-font-size, var(--tct-btn-badge-font-size, var(--t-btn-badge-font-size, inherit))));border-radius:var(--tct-select-multi-select-option-radius, var(--t-select-multi-select-option-radius, var(--tct-btn-badge-border-radius, var(--t-btn-badge-border-radius, var(--app-border-radius-1, 4px)))));background:var(--tct-select-multi-select-option-background, var(--tct-select-multi-select-option-bg, var(--t-select-multi-select-option-bg, var(--tct-badge-background, var(--tct-btn-badge-bg, var(--t-btn-badge-bg, transparent))))));color:var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-font-color, var(--t-btn-badge-font-color, inherit))))}.popover-top-container .multi-select-header label:hover{background:var(--tct-select-multi-select-option-hover-background, var(--tct-select-multi-select-option-hover-background-color, var(--t-select-multi-select-option-hover-background-color, var(--tct-btn-badge-hover-bg, var(--t-btn-badge-hover-bg, var(--tct-gray-14, var(--t-gray-14, var(--app-gray-l3, #f2f2f2))))))));color:var(--tct-select-multi-select-option-hover-color, var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-hover-font-color, var(--t-btn-badge-hover-font-color, var(--tct-gray-5, var(--t-gray-5, var(--app-gray-d2, #404040))))))))}.popover-top-container .multi-select-header input:checked+label,.popover-top-container .multi-select-header input:checked+label:enabled:hover{background:var(--tct-select-multi-select-option-active-background, var(--tct-select-multi-select-option-active-background-color, var(--t-select-multi-select-option-active-background-color, var(--tct-btn-primary-bg, var(--t-btn-primary-bg, #2e2e2e)))));color:var(--tct-select-multi-select-option-active-color, var(--t-select-multi-select-option-active-color, var(--tct-btn-primary-font-color, var(--t-btn-primary-font-color, var(--app-white, #ffffff)))))}.popover-top-container .multi-select-header input:disabled+label{opacity:var(--tct-select-multi-select-option-disabled-opacity, var(--t-select-multi-select-option-disabled-opacity, var(--tct-btn-disabled-opacity, var(--t-btn-disabled-opacity, var(--app-disabled-opacity, 0.4)))));cursor:not-allowed}.popover-top-container .multi-select-header input:focus-visible+label{box-shadow:var(--const-double-focus-ring)}';
671
678
  }
672
679
  }, [ 257, "q2-select", {
673
680
  ariaLabel: [ 1537, "aria-label" ],