q2-tecton-elements 1.66.2 → 1.67.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 (681) hide show
  1. package/dist/bundle-report.json +3496 -3360
  2. package/dist/cjs/action-sheet-D71RSc-w.js.map +1 -1
  3. package/dist/cjs/click-elsewhere.q2-option-list.q2-popover.entry.cjs.js.map +1 -0
  4. package/dist/cjs/{q2-option-list_2.cjs.entry.js → click-elsewhere_3.cjs.entry.js} +131 -10
  5. package/dist/cjs/click-elsewhere_3.cjs.entry.js.map +1 -0
  6. package/dist/cjs/{index-DyAq0y0v.js → index-YvKoRT-t.js} +61 -21
  7. package/dist/cjs/index-YvKoRT-t.js.map +1 -0
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/q2-action-group_2.cjs.entry.js +2 -2
  10. package/dist/cjs/q2-action-sheet.cjs.entry.js +2 -2
  11. package/dist/cjs/q2-avatar.cjs.entry.js +33 -2
  12. package/dist/cjs/q2-avatar.cjs.entry.js.map +1 -1
  13. package/dist/cjs/q2-avatar.entry.cjs.js.map +1 -1
  14. package/dist/cjs/q2-badge.cjs.entry.js +1 -1
  15. package/dist/cjs/q2-btn.q2-loading.entry.cjs.js.map +1 -1
  16. package/dist/cjs/q2-btn_2.cjs.entry.js +18 -6
  17. package/dist/cjs/q2-btn_2.cjs.entry.js.map +1 -1
  18. package/dist/cjs/q2-calendar.cjs.entry.js +3 -3
  19. package/dist/cjs/q2-calendar.cjs.entry.js.map +1 -1
  20. package/dist/cjs/q2-calendar.entry.cjs.js.map +1 -1
  21. package/dist/cjs/q2-card-image.cjs.entry.js +3 -3
  22. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  23. package/dist/cjs/q2-carousel-pane.cjs.entry.js +4 -4
  24. package/dist/cjs/q2-carousel-pane.cjs.entry.js.map +1 -1
  25. package/dist/cjs/q2-carousel-pane.entry.cjs.js.map +1 -1
  26. package/dist/cjs/q2-carousel.cjs.entry.js +67 -42
  27. package/dist/cjs/q2-carousel.cjs.entry.js.map +1 -1
  28. package/dist/cjs/q2-carousel.entry.cjs.js.map +1 -1
  29. package/dist/cjs/q2-chart-area.cjs.entry.js +4 -2
  30. package/dist/cjs/q2-chart-area.cjs.entry.js.map +1 -1
  31. package/dist/cjs/q2-chart-area.entry.cjs.js.map +1 -1
  32. package/dist/cjs/q2-chart-bar.cjs.entry.js +4 -2
  33. package/dist/cjs/q2-chart-bar.cjs.entry.js.map +1 -1
  34. package/dist/cjs/q2-chart-bar.entry.cjs.js.map +1 -1
  35. package/dist/cjs/q2-chart-donut.cjs.entry.js +7 -3
  36. package/dist/cjs/q2-chart-donut.cjs.entry.js.map +1 -1
  37. package/dist/cjs/q2-chart-donut.entry.cjs.js.map +1 -1
  38. package/dist/cjs/q2-checkbox-group.cjs.entry.js +2 -2
  39. package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
  40. package/dist/cjs/q2-checkbox-group.entry.cjs.js.map +1 -1
  41. package/dist/cjs/q2-checkbox.q2-tag.entry.cjs.js.map +1 -0
  42. package/dist/cjs/q2-checkbox_2.cjs.entry.js +322 -0
  43. package/dist/cjs/q2-checkbox_2.cjs.entry.js.map +1 -0
  44. package/dist/cjs/q2-context.cjs.entry.js +2 -2
  45. package/dist/cjs/q2-currency.cjs.entry.js +1 -1
  46. package/dist/cjs/q2-data-table.cjs.entry.js +13 -16
  47. package/dist/cjs/q2-data-table.cjs.entry.js.map +1 -1
  48. package/dist/cjs/q2-data-table.entry.cjs.js.map +1 -1
  49. package/dist/cjs/q2-detail.cjs.entry.js +2 -2
  50. package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
  51. package/dist/cjs/q2-dropdown.cjs.entry.js +1 -1
  52. package/dist/cjs/q2-editable-field.cjs.entry.js +2 -2
  53. package/dist/cjs/q2-editable-field.cjs.entry.js.map +1 -1
  54. package/dist/cjs/q2-editable-field.entry.cjs.js.map +1 -1
  55. package/dist/cjs/q2-example.cjs.entry.js +1 -1
  56. package/dist/cjs/q2-file-picker.cjs.entry.js +1 -1
  57. package/dist/cjs/q2-file-picker.cjs.entry.js.map +1 -1
  58. package/dist/cjs/q2-file-picker.entry.cjs.js.map +1 -1
  59. package/dist/cjs/q2-form.cjs.entry.js +1 -1
  60. package/dist/cjs/q2-formatted-text.cjs.entry.js +1 -1
  61. package/dist/cjs/q2-icon.cjs.entry.js +11 -1
  62. package/dist/cjs/q2-icon.cjs.entry.js.map +1 -1
  63. package/dist/cjs/q2-icon.entry.cjs.js.map +1 -1
  64. package/dist/cjs/q2-input.cjs.entry.js +2 -2
  65. package/dist/cjs/q2-input.cjs.entry.js.map +1 -1
  66. package/dist/cjs/q2-input.entry.cjs.js.map +1 -1
  67. package/dist/cjs/q2-item.cjs.entry.js +3 -3
  68. package/dist/cjs/q2-item.cjs.entry.js.map +1 -1
  69. package/dist/cjs/q2-item.entry.cjs.js.map +1 -1
  70. package/dist/cjs/q2-legend.cjs.entry.js +2 -2
  71. package/dist/cjs/q2-legend.cjs.entry.js.map +1 -1
  72. package/dist/cjs/q2-legend.entry.cjs.js.map +1 -1
  73. package/dist/cjs/q2-link.q2-list.entry.cjs.js.map +1 -1
  74. package/dist/cjs/q2-link_2.cjs.entry.js +14 -6
  75. package/dist/cjs/q2-link_2.cjs.entry.js.map +1 -1
  76. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  77. package/dist/cjs/q2-message.cjs.entry.js +3 -3
  78. package/dist/cjs/q2-message.cjs.entry.js.map +1 -1
  79. package/dist/cjs/q2-message.entry.cjs.js.map +1 -1
  80. package/dist/cjs/q2-meter.cjs.entry.js +2 -2
  81. package/dist/cjs/q2-modal.cjs.entry.js +4 -21
  82. package/dist/cjs/q2-modal.cjs.entry.js.map +1 -1
  83. package/dist/cjs/q2-modal.entry.cjs.js.map +1 -1
  84. package/dist/cjs/q2-month-picker.cjs.entry.js +3 -3
  85. package/dist/cjs/q2-mutation-observer.cjs.entry.js +1 -1
  86. package/dist/cjs/q2-optgroup.cjs.entry.js +2 -2
  87. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  88. package/dist/cjs/q2-pagination.cjs.entry.js +12 -7
  89. package/dist/cjs/q2-pagination.cjs.entry.js.map +1 -1
  90. package/dist/cjs/q2-pagination.entry.cjs.js.map +1 -1
  91. package/dist/cjs/q2-pill.cjs.entry.js +3 -3
  92. package/dist/cjs/q2-pill.cjs.entry.js.map +1 -1
  93. package/dist/cjs/q2-pill.entry.cjs.js.map +1 -1
  94. package/dist/cjs/q2-radio-group.cjs.entry.js +2 -2
  95. package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
  96. package/dist/cjs/q2-radio-group.entry.cjs.js.map +1 -1
  97. package/dist/cjs/q2-radio.cjs.entry.js +2 -2
  98. package/dist/cjs/q2-radio.cjs.entry.js.map +1 -1
  99. package/dist/cjs/q2-radio.entry.cjs.js.map +1 -1
  100. package/dist/cjs/q2-relative-time.cjs.entry.js +2 -2
  101. package/dist/cjs/q2-section.cjs.entry.js +3 -3
  102. package/dist/cjs/q2-select.cjs.entry.js +22 -8
  103. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  104. package/dist/cjs/q2-select.entry.cjs.js.map +1 -1
  105. package/dist/cjs/q2-stepper-pane.cjs.entry.js +7 -6
  106. package/dist/cjs/q2-stepper-pane.cjs.entry.js.map +1 -1
  107. package/dist/cjs/q2-stepper-pane.entry.cjs.js.map +1 -1
  108. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +16 -8
  109. package/dist/cjs/q2-stepper-vertical.cjs.entry.js.map +1 -1
  110. package/dist/cjs/q2-stepper-vertical.entry.cjs.js.map +1 -1
  111. package/dist/cjs/q2-stepper.cjs.entry.js +7 -4
  112. package/dist/cjs/q2-stepper.cjs.entry.js.map +1 -1
  113. package/dist/cjs/q2-stepper.entry.cjs.js.map +1 -1
  114. package/dist/cjs/q2-tab-container.cjs.entry.js +3 -3
  115. package/dist/cjs/q2-tab-container.cjs.entry.js.map +1 -1
  116. package/dist/cjs/q2-tab-container.entry.cjs.js.map +1 -1
  117. package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
  118. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  119. package/dist/cjs/q2-textarea.cjs.entry.js +2 -2
  120. package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
  121. package/dist/cjs/q2-textarea.entry.cjs.js.map +1 -1
  122. package/dist/cjs/q2-toast.cjs.entry.js +1 -1
  123. package/dist/cjs/q2-tooltip.cjs.entry.js +33 -3
  124. package/dist/cjs/q2-tooltip.cjs.entry.js.map +1 -1
  125. package/dist/cjs/q2-tooltip.entry.cjs.js.map +1 -1
  126. package/dist/cjs/{sanitize-html-string-C2iwHNz5.js → sanitize-html-string-CW6y5624.js} +27 -17
  127. package/dist/cjs/sanitize-html-string-CW6y5624.js.map +1 -0
  128. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -2
  129. package/dist/collection/__mocks__/echarts.js +12 -0
  130. package/dist/collection/__mocks__/echarts.js.map +1 -0
  131. package/dist/collection/components/q2-avatar/q2-avatar.css +84 -89
  132. package/dist/collection/components/q2-avatar/q2-avatar.js +35 -1
  133. package/dist/collection/components/q2-avatar/q2-avatar.js.map +1 -1
  134. package/dist/collection/components/q2-btn/q2-btn.css +10 -3
  135. package/dist/collection/components/q2-btn/q2-btn.js +38 -4
  136. package/dist/collection/components/q2-btn/q2-btn.js.map +1 -1
  137. package/dist/collection/components/q2-calendar/q2-calendar-helpers.js.map +1 -1
  138. package/dist/collection/components/q2-calendar/q2-calendar-types.js.map +1 -1
  139. package/dist/collection/components/q2-calendar/q2-calendar-validation.js.map +1 -1
  140. package/dist/collection/components/q2-calendar/q2-calendar.css +4 -1
  141. package/dist/collection/components/q2-calendar/q2-calendar.js +1 -1
  142. package/dist/collection/components/q2-calendar/q2-calendar.js.map +1 -1
  143. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  144. package/dist/collection/components/q2-card-image/q2-card-image.js +2 -2
  145. package/dist/collection/components/q2-carousel/q2-carousel.css +143 -13
  146. package/dist/collection/components/q2-carousel/q2-carousel.js +90 -42
  147. package/dist/collection/components/q2-carousel/q2-carousel.js.map +1 -1
  148. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.css +2 -11
  149. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  150. package/dist/collection/components/q2-chart-area/q2-chart-area.js +18 -16
  151. package/dist/collection/components/q2-chart-area/q2-chart-area.js.map +1 -1
  152. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +8 -6
  153. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js.map +1 -1
  154. package/dist/collection/components/q2-chart-donut/q2-chart-donut.css +4 -1
  155. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +30 -26
  156. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js.map +1 -1
  157. package/dist/collection/components/q2-checkbox/q2-checkbox.css +4 -1
  158. package/dist/collection/components/q2-checkbox/q2-checkbox.js +38 -1
  159. package/dist/collection/components/q2-checkbox/q2-checkbox.js.map +1 -1
  160. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.css +1 -1
  161. package/dist/collection/components/q2-context/q2-context.js +1 -1
  162. package/dist/collection/components/q2-currency/q2-currency.js +1 -1
  163. package/dist/collection/components/q2-data-table/q2-data-table.css +14 -0
  164. package/dist/collection/components/q2-data-table/q2-data-table.js +47 -50
  165. package/dist/collection/components/q2-data-table/q2-data-table.js.map +1 -1
  166. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  167. package/dist/collection/components/q2-editable-field/q2-editable-field.js +1 -1
  168. package/dist/collection/components/q2-editable-field/q2-editable-field.js.map +1 -1
  169. package/dist/collection/components/q2-example/q2-example.js +1 -1
  170. package/dist/collection/components/q2-file-picker/q2-file-picker.js +9 -9
  171. package/dist/collection/components/q2-file-picker/q2-file-picker.js.map +1 -1
  172. package/dist/collection/components/q2-form/q2-form.js +1 -1
  173. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +1 -1
  174. package/dist/collection/components/q2-grid/q2-grid.js +30 -30
  175. package/dist/collection/components/q2-grid-area/q2-grid-area.js +42 -42
  176. package/dist/collection/components/q2-icon/assets/brand.symbol.svg +1 -1
  177. package/dist/collection/components/q2-icon/assets/browsersos.symbol.svg +1 -1
  178. package/dist/collection/components/q2-icon/assets/cards.symbol.svg +1 -1
  179. package/dist/collection/components/q2-icon/assets/communication.symbol.svg +1 -1
  180. package/dist/collection/components/q2-icon/assets/currencies.symbol.svg +1 -1
  181. package/dist/collection/components/q2-icon/assets/devices.symbol.svg +1 -1
  182. package/dist/collection/components/q2-icon/assets/filetypes.symbol.svg +1 -1
  183. package/dist/collection/components/q2-icon/assets/gestures.symbol.svg +1 -1
  184. package/dist/collection/components/q2-icon/assets/icon-list.json +1 -1
  185. package/dist/collection/components/q2-icon/assets/icon-map.json +1 -1
  186. package/dist/collection/components/q2-icon/assets/legacy.symbol.svg +1 -1
  187. package/dist/collection/components/q2-icon/assets/mobile.symbol.svg +1 -1
  188. package/dist/collection/components/q2-icon/assets/standard.symbol.svg +1 -1
  189. package/dist/collection/components/q2-icon/assets/status.symbol.svg +1 -1
  190. package/dist/collection/components/q2-icon/q2-icon.js +8 -0
  191. package/dist/collection/components/q2-icon/q2-icon.js.map +1 -1
  192. package/dist/collection/components/q2-input/formatting/credit-card.js.map +1 -1
  193. package/dist/collection/components/q2-input/formatting/currency.js.map +1 -1
  194. package/dist/collection/components/q2-input/formatting/generic.js.map +1 -1
  195. package/dist/collection/components/q2-input/formatting/number.js.map +1 -1
  196. package/dist/collection/components/q2-input/formatting/numeric.js.map +1 -1
  197. package/dist/collection/components/q2-input/formatting/phone.js.map +1 -1
  198. package/dist/collection/components/q2-input/q2-input-types.js.map +1 -1
  199. package/dist/collection/components/q2-input/q2-input.js +42 -42
  200. package/dist/collection/components/q2-input/q2-input.js.map +1 -1
  201. package/dist/collection/components/q2-item/q2-item.css +4 -0
  202. package/dist/collection/components/q2-item/q2-item.js +1 -1
  203. package/dist/collection/components/q2-legend/q2-legend.css +3 -0
  204. package/dist/collection/components/q2-legend/q2-legend.js +36 -36
  205. package/dist/collection/components/q2-legend/q2-legend.js.map +1 -1
  206. package/dist/collection/components/q2-link/q2-link.css +5 -2
  207. package/dist/collection/components/q2-link/q2-link.js +33 -3
  208. package/dist/collection/components/q2-link/q2-link.js.map +1 -1
  209. package/dist/collection/components/q2-list/q2-list.js +1 -1
  210. package/dist/collection/components/q2-message/q2-message.css +19 -16
  211. package/dist/collection/components/q2-message/q2-message.js +1 -1
  212. package/dist/collection/components/q2-message/q2-message.js.map +1 -1
  213. package/dist/collection/components/q2-meter/q2-meter.js +1 -1
  214. package/dist/collection/components/q2-modal/q2-modal.css +3 -3
  215. package/dist/collection/components/q2-modal/q2-modal.js +1 -94
  216. package/dist/collection/components/q2-modal/q2-modal.js.map +1 -1
  217. package/dist/collection/components/q2-mutation-observer/q2-mutation-observer.js +1 -1
  218. package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
  219. package/dist/collection/components/q2-option-list/q2-option-list.js +18 -18
  220. package/dist/collection/components/q2-option-list/q2-option-list.js.map +1 -1
  221. package/dist/collection/components/q2-pagination/q2-pagination.js +15 -10
  222. package/dist/collection/components/q2-pagination/q2-pagination.js.map +1 -1
  223. package/dist/collection/components/q2-pill/q2-pill.css +9 -0
  224. package/dist/collection/components/q2-pill/q2-pill.js +13 -13
  225. package/dist/collection/components/q2-pill/q2-pill.js.map +1 -1
  226. package/dist/collection/components/q2-popover/q2-popover.css +66 -1
  227. package/dist/collection/components/q2-popover/q2-popover.js +57 -4
  228. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  229. package/dist/collection/components/q2-radio/q2-radio.css +4 -3
  230. package/dist/collection/components/q2-radio-group/q2-radio-group.css +1 -1
  231. package/dist/collection/components/q2-relative-time/q2-relative-time.js +1 -1
  232. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +1 -1
  233. package/dist/collection/components/q2-section/q2-section.js +2 -2
  234. package/dist/collection/components/q2-select/q2-select.js +23 -7
  235. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  236. package/dist/collection/components/q2-stepper/q2-stepper.css +9 -2
  237. package/dist/collection/components/q2-stepper/q2-stepper.js +5 -2
  238. package/dist/collection/components/q2-stepper/q2-stepper.js.map +1 -1
  239. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +52 -30
  240. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js.map +1 -1
  241. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.css +11 -2
  242. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +20 -6
  243. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js.map +1 -1
  244. package/dist/collection/components/q2-tab-container/q2-tab-container.css +7 -1
  245. package/dist/collection/components/q2-tab-container/q2-tab-container.js +1 -1
  246. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  247. package/dist/collection/components/q2-tag/q2-tag.css +3 -0
  248. package/dist/collection/components/q2-tag/q2-tag.js +1 -1
  249. package/dist/collection/components/q2-textarea/q2-textarea.css +1 -0
  250. package/dist/collection/components/q2-tooltip/q2-tooltip.css +1 -1
  251. package/dist/collection/components/q2-tooltip/q2-tooltip.js +34 -1
  252. package/dist/collection/components/q2-tooltip/q2-tooltip.js.map +1 -1
  253. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
  254. package/dist/collection/index.js +1 -0
  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/index.js +59 -19
  258. package/dist/collection/utils/index.js.map +1 -1
  259. package/dist/components/action-sheet.js.map +1 -1
  260. package/dist/components/index2.js +59 -19
  261. package/dist/components/index2.js.map +1 -1
  262. package/dist/components/q2-avatar2.js +34 -2
  263. package/dist/components/q2-avatar2.js.map +1 -1
  264. package/dist/components/q2-btn2.js +18 -5
  265. package/dist/components/q2-btn2.js.map +1 -1
  266. package/dist/components/q2-calendar.js +2 -2
  267. package/dist/components/q2-calendar.js.map +1 -1
  268. package/dist/components/q2-card-image.js +2 -2
  269. package/dist/components/q2-carousel-pane.js +3 -3
  270. package/dist/components/q2-carousel-pane.js.map +1 -1
  271. package/dist/components/q2-carousel.js +69 -55
  272. package/dist/components/q2-carousel.js.map +1 -1
  273. package/dist/components/q2-chart-area.js +3 -1
  274. package/dist/components/q2-chart-area.js.map +1 -1
  275. package/dist/components/q2-chart-bar.js +3 -1
  276. package/dist/components/q2-chart-bar.js.map +1 -1
  277. package/dist/components/q2-chart-donut.js +6 -2
  278. package/dist/components/q2-chart-donut.js.map +1 -1
  279. package/dist/components/q2-checkbox-group.js +1 -1
  280. package/dist/components/q2-checkbox-group.js.map +1 -1
  281. package/dist/components/q2-checkbox2.js +13 -2
  282. package/dist/components/q2-checkbox2.js.map +1 -1
  283. package/dist/components/q2-context.js +1 -1
  284. package/dist/components/q2-currency.js +1 -1
  285. package/dist/components/q2-data-table.js +46 -25
  286. package/dist/components/q2-data-table.js.map +1 -1
  287. package/dist/components/q2-detail.js +1 -1
  288. package/dist/components/q2-editable-field.js +1 -1
  289. package/dist/components/q2-editable-field.js.map +1 -1
  290. package/dist/components/q2-example.js +1 -1
  291. package/dist/components/q2-file-picker.js.map +1 -1
  292. package/dist/components/q2-form.js +1 -1
  293. package/dist/components/q2-formatted-text.js +1 -1
  294. package/dist/components/q2-icon2.js +10 -0
  295. package/dist/components/q2-icon2.js.map +1 -1
  296. package/dist/components/q2-input2.js +1 -1
  297. package/dist/components/q2-input2.js.map +1 -1
  298. package/dist/components/q2-item2.js +2 -2
  299. package/dist/components/q2-item2.js.map +1 -1
  300. package/dist/components/q2-legend2.js +2 -2
  301. package/dist/components/q2-legend2.js.map +1 -1
  302. package/dist/components/q2-link2.js +13 -4
  303. package/dist/components/q2-link2.js.map +1 -1
  304. package/dist/components/q2-list2.js +1 -1
  305. package/dist/components/q2-message2.js +2 -2
  306. package/dist/components/q2-message2.js.map +1 -1
  307. package/dist/components/q2-meter.js +1 -1
  308. package/dist/components/q2-modal.js +2 -23
  309. package/dist/components/q2-modal.js.map +1 -1
  310. package/dist/components/q2-month-picker.js +2 -2
  311. package/dist/components/q2-mutation-observer.js +1 -1
  312. package/dist/components/q2-optgroup2.js +1 -1
  313. package/dist/components/q2-option-list2.js +1 -1
  314. package/dist/components/q2-option-list2.js.map +1 -1
  315. package/dist/components/q2-pagination.js +11 -6
  316. package/dist/components/q2-pagination.js.map +1 -1
  317. package/dist/components/q2-pill.js +2 -2
  318. package/dist/components/q2-pill.js.map +1 -1
  319. package/dist/components/q2-popover2.js +39 -5
  320. package/dist/components/q2-popover2.js.map +1 -1
  321. package/dist/components/q2-radio-group.js +1 -1
  322. package/dist/components/q2-radio-group.js.map +1 -1
  323. package/dist/components/q2-radio.js +1 -1
  324. package/dist/components/q2-radio.js.map +1 -1
  325. package/dist/components/q2-relative-time.js +1 -1
  326. package/dist/components/q2-resize-observer2.js +1 -1
  327. package/dist/components/q2-section.js +2 -2
  328. package/dist/components/q2-select2.js +23 -8
  329. package/dist/components/q2-select2.js.map +1 -1
  330. package/dist/components/q2-stepper-pane.js +9 -6
  331. package/dist/components/q2-stepper-pane.js.map +1 -1
  332. package/dist/components/q2-stepper-vertical.js +16 -8
  333. package/dist/components/q2-stepper-vertical.js.map +1 -1
  334. package/dist/components/q2-stepper.js +6 -3
  335. package/dist/components/q2-stepper.js.map +1 -1
  336. package/dist/components/q2-tab-container.js +2 -2
  337. package/dist/components/q2-tab-container.js.map +1 -1
  338. package/dist/components/q2-tab-pane.js +1 -1
  339. package/dist/components/q2-tag.js +1 -257
  340. package/dist/components/q2-tag.js.map +1 -1
  341. package/dist/{esm/q2-tag.entry.js → components/q2-tag2.js} +68 -15
  342. package/dist/components/q2-tag2.js.map +1 -0
  343. package/dist/components/q2-textarea.js +1 -1
  344. package/dist/components/q2-textarea.js.map +1 -1
  345. package/dist/components/q2-tooltip2.js +35 -3
  346. package/dist/components/q2-tooltip2.js.map +1 -1
  347. package/dist/components/sanitize-html-string.js +25 -15
  348. package/dist/components/sanitize-html-string.js.map +1 -1
  349. package/dist/components/tecton-tab-pane.js +2 -2
  350. package/dist/esm/action-sheet-B7adb3xs.js.map +1 -1
  351. package/dist/esm/click-elsewhere.q2-option-list.q2-popover.entry.js.map +1 -0
  352. package/dist/esm/{q2-option-list_2.entry.js → click-elsewhere_3.entry.js} +132 -12
  353. package/dist/esm/click-elsewhere_3.entry.js.map +1 -0
  354. package/dist/esm/{index-B4WYBDS9.js → index-C4PILj1_.js} +61 -21
  355. package/dist/esm/index-C4PILj1_.js.map +1 -0
  356. package/dist/esm/loader.js +1 -1
  357. package/dist/esm/q2-action-group_2.entry.js +2 -2
  358. package/dist/esm/q2-action-sheet.entry.js +2 -2
  359. package/dist/esm/q2-avatar.entry.js +33 -2
  360. package/dist/esm/q2-avatar.entry.js.map +1 -1
  361. package/dist/esm/q2-badge.entry.js +1 -1
  362. package/dist/esm/q2-btn.q2-loading.entry.js.map +1 -1
  363. package/dist/esm/q2-btn_2.entry.js +18 -6
  364. package/dist/esm/q2-btn_2.entry.js.map +1 -1
  365. package/dist/esm/q2-calendar.entry.js +3 -3
  366. package/dist/esm/q2-calendar.entry.js.map +1 -1
  367. package/dist/esm/q2-card-image.entry.js +3 -3
  368. package/dist/esm/q2-card.entry.js +1 -1
  369. package/dist/esm/q2-carousel-pane.entry.js +4 -4
  370. package/dist/esm/q2-carousel-pane.entry.js.map +1 -1
  371. package/dist/esm/q2-carousel.entry.js +67 -42
  372. package/dist/esm/q2-carousel.entry.js.map +1 -1
  373. package/dist/esm/q2-chart-area.entry.js +4 -2
  374. package/dist/esm/q2-chart-area.entry.js.map +1 -1
  375. package/dist/esm/q2-chart-bar.entry.js +4 -2
  376. package/dist/esm/q2-chart-bar.entry.js.map +1 -1
  377. package/dist/esm/q2-chart-donut.entry.js +7 -3
  378. package/dist/esm/q2-chart-donut.entry.js.map +1 -1
  379. package/dist/esm/q2-checkbox-group.entry.js +2 -2
  380. package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
  381. package/dist/esm/q2-checkbox.q2-tag.entry.js.map +1 -0
  382. package/dist/esm/q2-checkbox_2.entry.js +319 -0
  383. package/dist/esm/q2-checkbox_2.entry.js.map +1 -0
  384. package/dist/esm/q2-context.entry.js +2 -2
  385. package/dist/esm/q2-currency.entry.js +1 -1
  386. package/dist/esm/q2-data-table.entry.js +13 -16
  387. package/dist/esm/q2-data-table.entry.js.map +1 -1
  388. package/dist/esm/q2-detail.entry.js +2 -2
  389. package/dist/esm/q2-dropdown-item.entry.js +1 -1
  390. package/dist/esm/q2-dropdown.entry.js +1 -1
  391. package/dist/esm/q2-editable-field.entry.js +2 -2
  392. package/dist/esm/q2-editable-field.entry.js.map +1 -1
  393. package/dist/esm/q2-example.entry.js +1 -1
  394. package/dist/esm/q2-file-picker.entry.js +1 -1
  395. package/dist/esm/q2-file-picker.entry.js.map +1 -1
  396. package/dist/esm/q2-form.entry.js +1 -1
  397. package/dist/esm/q2-formatted-text.entry.js +1 -1
  398. package/dist/esm/q2-icon.entry.js +11 -1
  399. package/dist/esm/q2-icon.entry.js.map +1 -1
  400. package/dist/esm/q2-input.entry.js +2 -2
  401. package/dist/esm/q2-input.entry.js.map +1 -1
  402. package/dist/esm/q2-item.entry.js +3 -3
  403. package/dist/esm/q2-item.entry.js.map +1 -1
  404. package/dist/esm/q2-legend.entry.js +2 -2
  405. package/dist/esm/q2-legend.entry.js.map +1 -1
  406. package/dist/esm/q2-link.q2-list.entry.js.map +1 -1
  407. package/dist/esm/q2-link_2.entry.js +14 -6
  408. package/dist/esm/q2-link_2.entry.js.map +1 -1
  409. package/dist/esm/q2-loc.entry.js +1 -1
  410. package/dist/esm/q2-message.entry.js +3 -3
  411. package/dist/esm/q2-message.entry.js.map +1 -1
  412. package/dist/esm/q2-meter.entry.js +2 -2
  413. package/dist/esm/q2-modal.entry.js +4 -21
  414. package/dist/esm/q2-modal.entry.js.map +1 -1
  415. package/dist/esm/q2-month-picker.entry.js +3 -3
  416. package/dist/esm/q2-mutation-observer.entry.js +1 -1
  417. package/dist/esm/q2-optgroup.entry.js +2 -2
  418. package/dist/esm/q2-option.entry.js +1 -1
  419. package/dist/esm/q2-pagination.entry.js +12 -7
  420. package/dist/esm/q2-pagination.entry.js.map +1 -1
  421. package/dist/esm/q2-pill.entry.js +3 -3
  422. package/dist/esm/q2-pill.entry.js.map +1 -1
  423. package/dist/esm/q2-radio-group.entry.js +2 -2
  424. package/dist/esm/q2-radio-group.entry.js.map +1 -1
  425. package/dist/esm/q2-radio.entry.js +2 -2
  426. package/dist/esm/q2-radio.entry.js.map +1 -1
  427. package/dist/esm/q2-relative-time.entry.js +2 -2
  428. package/dist/esm/q2-section.entry.js +3 -3
  429. package/dist/esm/q2-select.entry.js +22 -8
  430. package/dist/esm/q2-select.entry.js.map +1 -1
  431. package/dist/esm/q2-stepper-pane.entry.js +7 -6
  432. package/dist/esm/q2-stepper-pane.entry.js.map +1 -1
  433. package/dist/esm/q2-stepper-vertical.entry.js +16 -8
  434. package/dist/esm/q2-stepper-vertical.entry.js.map +1 -1
  435. package/dist/esm/q2-stepper.entry.js +7 -4
  436. package/dist/esm/q2-stepper.entry.js.map +1 -1
  437. package/dist/esm/q2-tab-container.entry.js +3 -3
  438. package/dist/esm/q2-tab-container.entry.js.map +1 -1
  439. package/dist/esm/q2-tab-pane.entry.js +1 -1
  440. package/dist/esm/q2-tecton-elements.js +1 -1
  441. package/dist/esm/q2-textarea.entry.js +2 -2
  442. package/dist/esm/q2-textarea.entry.js.map +1 -1
  443. package/dist/esm/q2-toast.entry.js +1 -1
  444. package/dist/esm/q2-tooltip.entry.js +33 -3
  445. package/dist/esm/q2-tooltip.entry.js.map +1 -1
  446. package/dist/esm/{sanitize-html-string-BPwFpYg-.js → sanitize-html-string-B35VmRc9.js} +27 -17
  447. package/dist/esm/sanitize-html-string-B35VmRc9.js.map +1 -0
  448. package/dist/esm/tecton-tab-pane.entry.js +2 -2
  449. package/dist/q2-tecton-elements/action-sheet-B7adb3xs.js.map +1 -1
  450. package/dist/q2-tecton-elements/assets/brand.symbol.svg +1 -1
  451. package/dist/q2-tecton-elements/assets/browsersos.symbol.svg +1 -1
  452. package/dist/q2-tecton-elements/assets/cards.symbol.svg +1 -1
  453. package/dist/q2-tecton-elements/assets/communication.symbol.svg +1 -1
  454. package/dist/q2-tecton-elements/assets/currencies.symbol.svg +1 -1
  455. package/dist/q2-tecton-elements/assets/devices.symbol.svg +1 -1
  456. package/dist/q2-tecton-elements/assets/filetypes.symbol.svg +1 -1
  457. package/dist/q2-tecton-elements/assets/gestures.symbol.svg +1 -1
  458. package/dist/q2-tecton-elements/assets/icon-list.json +1 -1
  459. package/dist/q2-tecton-elements/assets/icon-map.json +1 -1
  460. package/dist/q2-tecton-elements/assets/legacy.symbol.svg +1 -1
  461. package/dist/q2-tecton-elements/assets/mobile.symbol.svg +1 -1
  462. package/dist/q2-tecton-elements/assets/standard.symbol.svg +1 -1
  463. package/dist/q2-tecton-elements/assets/status.symbol.svg +1 -1
  464. package/dist/q2-tecton-elements/click-elsewhere.q2-option-list.q2-popover.entry.esm.js.map +1 -0
  465. package/dist/q2-tecton-elements/{q2-option-list_2.entry.js → click-elsewhere_3.entry.js} +205 -91
  466. package/dist/q2-tecton-elements/click-elsewhere_3.entry.js.map +1 -0
  467. package/dist/q2-tecton-elements/{index-B4WYBDS9.js → index-C4PILj1_.js} +53 -14
  468. package/dist/q2-tecton-elements/index-C4PILj1_.js.map +1 -0
  469. package/dist/q2-tecton-elements/q2-action-group_2.entry.js +2 -2
  470. package/dist/q2-tecton-elements/q2-action-sheet.entry.js +2 -2
  471. package/dist/q2-tecton-elements/q2-avatar.entry.esm.js.map +1 -1
  472. package/dist/q2-tecton-elements/q2-avatar.entry.js +68 -30
  473. package/dist/q2-tecton-elements/q2-avatar.entry.js.map +1 -1
  474. package/dist/q2-tecton-elements/q2-badge.entry.js +1 -1
  475. package/dist/q2-tecton-elements/q2-btn.q2-loading.entry.esm.js.map +1 -1
  476. package/dist/q2-tecton-elements/q2-btn_2.entry.js +26 -19
  477. package/dist/q2-tecton-elements/q2-btn_2.entry.js.map +1 -1
  478. package/dist/q2-tecton-elements/q2-calendar.entry.esm.js.map +1 -1
  479. package/dist/q2-tecton-elements/q2-calendar.entry.js +4 -4
  480. package/dist/q2-tecton-elements/q2-calendar.entry.js.map +1 -1
  481. package/dist/q2-tecton-elements/q2-card-image.entry.js +3 -3
  482. package/dist/q2-tecton-elements/q2-card.entry.js +1 -1
  483. package/dist/q2-tecton-elements/q2-carousel-pane.entry.esm.js.map +1 -1
  484. package/dist/q2-tecton-elements/q2-carousel-pane.entry.js +17 -17
  485. package/dist/q2-tecton-elements/q2-carousel-pane.entry.js.map +1 -1
  486. package/dist/q2-tecton-elements/q2-carousel.entry.esm.js.map +1 -1
  487. package/dist/q2-tecton-elements/q2-carousel.entry.js +269 -242
  488. package/dist/q2-tecton-elements/q2-carousel.entry.js.map +1 -1
  489. package/dist/q2-tecton-elements/q2-chart-area.entry.esm.js.map +1 -1
  490. package/dist/q2-tecton-elements/q2-chart-area.entry.js +6 -5
  491. package/dist/q2-tecton-elements/q2-chart-area.entry.js.map +1 -1
  492. package/dist/q2-tecton-elements/q2-chart-bar.entry.esm.js.map +1 -1
  493. package/dist/q2-tecton-elements/q2-chart-bar.entry.js +4 -3
  494. package/dist/q2-tecton-elements/q2-chart-bar.entry.js.map +1 -1
  495. package/dist/q2-tecton-elements/q2-chart-donut.entry.esm.js.map +1 -1
  496. package/dist/q2-tecton-elements/q2-chart-donut.entry.js +21 -19
  497. package/dist/q2-tecton-elements/q2-chart-donut.entry.js.map +1 -1
  498. package/dist/q2-tecton-elements/q2-checkbox-group.entry.esm.js.map +1 -1
  499. package/dist/q2-tecton-elements/q2-checkbox-group.entry.js +2 -2
  500. package/dist/q2-tecton-elements/q2-checkbox-group.entry.js.map +1 -1
  501. package/dist/q2-tecton-elements/q2-checkbox.q2-tag.entry.esm.js.map +1 -0
  502. package/dist/q2-tecton-elements/q2-checkbox_2.entry.js +482 -0
  503. package/dist/q2-tecton-elements/q2-checkbox_2.entry.js.map +1 -0
  504. package/dist/q2-tecton-elements/q2-context.entry.js +12 -12
  505. package/dist/q2-tecton-elements/q2-currency.entry.js +11 -11
  506. package/dist/q2-tecton-elements/q2-data-table.entry.esm.js.map +1 -1
  507. package/dist/q2-tecton-elements/q2-data-table.entry.js +26 -28
  508. package/dist/q2-tecton-elements/q2-data-table.entry.js.map +1 -1
  509. package/dist/q2-tecton-elements/q2-detail.entry.js +4 -4
  510. package/dist/q2-tecton-elements/q2-dropdown-item.entry.js +1 -1
  511. package/dist/q2-tecton-elements/q2-dropdown.entry.js +1 -1
  512. package/dist/q2-tecton-elements/q2-editable-field.entry.esm.js.map +1 -1
  513. package/dist/q2-tecton-elements/q2-editable-field.entry.js +2 -2
  514. package/dist/q2-tecton-elements/q2-editable-field.entry.js.map +1 -1
  515. package/dist/q2-tecton-elements/q2-example.entry.js +1 -1
  516. package/dist/q2-tecton-elements/q2-file-picker.entry.esm.js.map +1 -1
  517. package/dist/q2-tecton-elements/q2-file-picker.entry.js +1 -1
  518. package/dist/q2-tecton-elements/q2-file-picker.entry.js.map +1 -1
  519. package/dist/q2-tecton-elements/q2-form.entry.js +2 -2
  520. package/dist/q2-tecton-elements/q2-formatted-text.entry.js +2 -2
  521. package/dist/q2-tecton-elements/q2-icon.entry.esm.js.map +1 -1
  522. package/dist/q2-tecton-elements/q2-icon.entry.js +122 -111
  523. package/dist/q2-tecton-elements/q2-icon.entry.js.map +1 -1
  524. package/dist/q2-tecton-elements/q2-input.entry.esm.js.map +1 -1
  525. package/dist/q2-tecton-elements/q2-input.entry.js +7 -7
  526. package/dist/q2-tecton-elements/q2-input.entry.js.map +1 -1
  527. package/dist/q2-tecton-elements/q2-item.entry.esm.js.map +1 -1
  528. package/dist/q2-tecton-elements/q2-item.entry.js +34 -34
  529. package/dist/q2-tecton-elements/q2-item.entry.js.map +1 -1
  530. package/dist/q2-tecton-elements/q2-legend.entry.esm.js.map +1 -1
  531. package/dist/q2-tecton-elements/q2-legend.entry.js +3 -3
  532. package/dist/q2-tecton-elements/q2-legend.entry.js.map +1 -1
  533. package/dist/q2-tecton-elements/q2-link.q2-list.entry.esm.js.map +1 -1
  534. package/dist/q2-tecton-elements/q2-link_2.entry.js +24 -18
  535. package/dist/q2-tecton-elements/q2-link_2.entry.js.map +1 -1
  536. package/dist/q2-tecton-elements/q2-loc.entry.js +1 -1
  537. package/dist/q2-tecton-elements/q2-message.entry.esm.js.map +1 -1
  538. package/dist/q2-tecton-elements/q2-message.entry.js +29 -25
  539. package/dist/q2-tecton-elements/q2-message.entry.js.map +1 -1
  540. package/dist/q2-tecton-elements/q2-meter.entry.js +14 -14
  541. package/dist/q2-tecton-elements/q2-modal.entry.esm.js.map +1 -1
  542. package/dist/q2-tecton-elements/q2-modal.entry.js +65 -79
  543. package/dist/q2-tecton-elements/q2-modal.entry.js.map +1 -1
  544. package/dist/q2-tecton-elements/q2-month-picker.entry.js +81 -81
  545. package/dist/q2-tecton-elements/q2-mutation-observer.entry.js +1 -1
  546. package/dist/q2-tecton-elements/q2-optgroup.entry.js +5 -5
  547. package/dist/q2-tecton-elements/q2-option.entry.js +1 -1
  548. package/dist/q2-tecton-elements/q2-pagination.entry.esm.js.map +1 -1
  549. package/dist/q2-tecton-elements/q2-pagination.entry.js +43 -32
  550. package/dist/q2-tecton-elements/q2-pagination.entry.js.map +1 -1
  551. package/dist/q2-tecton-elements/q2-pill.entry.esm.js.map +1 -1
  552. package/dist/q2-tecton-elements/q2-pill.entry.js +17 -17
  553. package/dist/q2-tecton-elements/q2-pill.entry.js.map +1 -1
  554. package/dist/q2-tecton-elements/q2-radio-group.entry.esm.js.map +1 -1
  555. package/dist/q2-tecton-elements/q2-radio-group.entry.js +2 -2
  556. package/dist/q2-tecton-elements/q2-radio-group.entry.js.map +1 -1
  557. package/dist/q2-tecton-elements/q2-radio.entry.esm.js.map +1 -1
  558. package/dist/q2-tecton-elements/q2-radio.entry.js +15 -15
  559. package/dist/q2-tecton-elements/q2-radio.entry.js.map +1 -1
  560. package/dist/q2-tecton-elements/q2-relative-time.entry.js +2 -2
  561. package/dist/q2-tecton-elements/q2-section.entry.js +22 -22
  562. package/dist/q2-tecton-elements/q2-select.entry.esm.js.map +1 -1
  563. package/dist/q2-tecton-elements/q2-select.entry.js +21 -8
  564. package/dist/q2-tecton-elements/q2-select.entry.js.map +1 -1
  565. package/dist/q2-tecton-elements/q2-stepper-pane.entry.esm.js.map +1 -1
  566. package/dist/q2-tecton-elements/q2-stepper-pane.entry.js +14 -13
  567. package/dist/q2-tecton-elements/q2-stepper-pane.entry.js.map +1 -1
  568. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.esm.js.map +1 -1
  569. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js +73 -67
  570. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js.map +1 -1
  571. package/dist/q2-tecton-elements/q2-stepper.entry.esm.js.map +1 -1
  572. package/dist/q2-tecton-elements/q2-stepper.entry.js +46 -44
  573. package/dist/q2-tecton-elements/q2-stepper.entry.js.map +1 -1
  574. package/dist/q2-tecton-elements/q2-tab-container.entry.esm.js.map +1 -1
  575. package/dist/q2-tecton-elements/q2-tab-container.entry.js +19 -19
  576. package/dist/q2-tecton-elements/q2-tab-container.entry.js.map +1 -1
  577. package/dist/q2-tecton-elements/q2-tab-pane.entry.js +2 -2
  578. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  579. package/dist/q2-tecton-elements/q2-textarea.entry.esm.js.map +1 -1
  580. package/dist/q2-tecton-elements/q2-textarea.entry.js +2 -2
  581. package/dist/q2-tecton-elements/q2-textarea.entry.js.map +1 -1
  582. package/dist/q2-tecton-elements/q2-toast.entry.js +1 -1
  583. package/dist/q2-tecton-elements/q2-tooltip.entry.esm.js.map +1 -1
  584. package/dist/q2-tecton-elements/q2-tooltip.entry.js +41 -5
  585. package/dist/q2-tecton-elements/q2-tooltip.entry.js.map +1 -1
  586. package/dist/q2-tecton-elements/{sanitize-html-string-BPwFpYg-.js → sanitize-html-string-B35VmRc9.js} +118 -109
  587. package/dist/q2-tecton-elements/sanitize-html-string-B35VmRc9.js.map +1 -0
  588. package/dist/q2-tecton-elements/tecton-tab-pane.entry.js +6 -6
  589. package/dist/scripts/docs-generator/index.js +1 -1
  590. package/dist/scripts/docs-generator/index.js.map +1 -1
  591. package/dist/types/__mocks__/echarts.d.ts +16 -0
  592. package/dist/types/components/q2-avatar/q2-avatar.d.ts +9 -0
  593. package/dist/types/components/q2-btn/q2-btn.d.ts +6 -0
  594. package/dist/types/components/q2-calendar/q2-calendar-helpers.d.ts +3 -3
  595. package/dist/types/components/q2-calendar/q2-calendar-types.d.ts +2 -2
  596. package/dist/types/components/q2-calendar/q2-calendar-validation.d.ts +5 -5
  597. package/dist/types/components/q2-calendar/q2-calendar.d.ts +8 -8
  598. package/dist/types/components/q2-carousel/q2-carousel.d.ts +6 -0
  599. package/dist/types/components/q2-chart-area/q2-chart-area.d.ts +4 -4
  600. package/dist/types/components/q2-chart-bar/q2-chart-bar.d.ts +3 -3
  601. package/dist/types/components/q2-chart-donut/q2-chart-donut.d.ts +9 -9
  602. package/dist/types/components/q2-checkbox/q2-checkbox.d.ts +11 -0
  603. package/dist/types/components/q2-data-table/q2-data-table.d.ts +8 -41
  604. package/dist/types/components/q2-editable-field/q2-editable-field.d.ts +4 -4
  605. package/dist/types/components/q2-file-picker/q2-file-picker.d.ts +1 -13
  606. package/dist/types/components/q2-input/formatting/alpha.d.ts +1 -1
  607. package/dist/types/components/q2-input/formatting/alphanumeric.d.ts +1 -1
  608. package/dist/types/components/q2-input/formatting/cif.d.ts +1 -1
  609. package/dist/types/components/q2-input/formatting/clabe.d.ts +1 -1
  610. package/dist/types/components/q2-input/formatting/credit-card.d.ts +2 -2
  611. package/dist/types/components/q2-input/formatting/currency.d.ts +2 -2
  612. package/dist/types/components/q2-input/formatting/generic.d.ts +2 -2
  613. package/dist/types/components/q2-input/formatting/iban.d.ts +1 -1
  614. package/dist/types/components/q2-input/formatting/number.d.ts +3 -2
  615. package/dist/types/components/q2-input/formatting/numeric.d.ts +2 -2
  616. package/dist/types/components/q2-input/formatting/phone.d.ts +2 -2
  617. package/dist/types/components/q2-input/formatting/postal.d.ts +1 -1
  618. package/dist/types/components/q2-input/formatting/routingnumber.d.ts +1 -1
  619. package/dist/types/components/q2-input/formatting/ssn.d.ts +1 -1
  620. package/dist/types/components/q2-input/formatting/swift.d.ts +1 -1
  621. package/dist/types/components/q2-input/formatting/tin.d.ts +1 -1
  622. package/dist/types/components/q2-input/q2-input-types.d.ts +2 -22
  623. package/dist/types/components/q2-input/q2-input.d.ts +16 -15
  624. package/dist/types/components/q2-legend/q2-legend.d.ts +11 -11
  625. package/dist/types/components/q2-link/q2-link.d.ts +6 -0
  626. package/dist/types/components/q2-modal/q2-modal.d.ts +0 -17
  627. package/dist/types/components/q2-option-list/q2-option-list.d.ts +4 -4
  628. package/dist/types/components/q2-pagination/q2-pagination.d.ts +2 -0
  629. package/dist/types/components/q2-pill/q2-pill.d.ts +5 -5
  630. package/dist/types/components/q2-popover/q2-popover.d.ts +7 -0
  631. package/dist/types/components/q2-select/q2-select.d.ts +9 -6
  632. package/dist/types/components/q2-stepper-pane/q2-stepper-pane.d.ts +8 -11
  633. package/dist/types/components/q2-stepper-vertical/q2-stepper-vertical.d.ts +10 -7
  634. package/dist/types/components/q2-tooltip/q2-tooltip.d.ts +4 -0
  635. package/dist/types/components.d.ts +148 -118
  636. package/dist/types/global.d.ts +2 -2
  637. package/dist/types/index.d.ts +1 -0
  638. package/dist/types/utils/action-sheet.d.ts +5 -5
  639. package/dist/types/utils/index.d.ts +13 -0
  640. package/package.json +69 -72
  641. package/dist/cjs/click-elsewhere.cjs.entry.js +0 -97
  642. package/dist/cjs/click-elsewhere.cjs.entry.js.map +0 -1
  643. package/dist/cjs/click-elsewhere.entry.cjs.js.map +0 -1
  644. package/dist/cjs/index-DyAq0y0v.js.map +0 -1
  645. package/dist/cjs/q2-checkbox.cjs.entry.js +0 -110
  646. package/dist/cjs/q2-checkbox.cjs.entry.js.map +0 -1
  647. package/dist/cjs/q2-checkbox.entry.cjs.js.map +0 -1
  648. package/dist/cjs/q2-option-list.q2-popover.entry.cjs.js.map +0 -1
  649. package/dist/cjs/q2-option-list_2.cjs.entry.js.map +0 -1
  650. package/dist/cjs/q2-tag.cjs.entry.js +0 -211
  651. package/dist/cjs/q2-tag.cjs.entry.js.map +0 -1
  652. package/dist/cjs/q2-tag.entry.cjs.js.map +0 -1
  653. package/dist/cjs/sanitize-html-string-C2iwHNz5.js.map +0 -1
  654. package/dist/esm/click-elsewhere.entry.js +0 -95
  655. package/dist/esm/click-elsewhere.entry.js.map +0 -1
  656. package/dist/esm/index-B4WYBDS9.js.map +0 -1
  657. package/dist/esm/q2-checkbox.entry.js +0 -108
  658. package/dist/esm/q2-checkbox.entry.js.map +0 -1
  659. package/dist/esm/q2-option-list.q2-popover.entry.js.map +0 -1
  660. package/dist/esm/q2-option-list_2.entry.js.map +0 -1
  661. package/dist/esm/q2-tag.entry.js.map +0 -1
  662. package/dist/esm/sanitize-html-string-BPwFpYg-.js.map +0 -1
  663. package/dist/q2-tecton-elements/click-elsewhere.entry.esm.js.map +0 -1
  664. package/dist/q2-tecton-elements/click-elsewhere.entry.js +0 -94
  665. package/dist/q2-tecton-elements/click-elsewhere.entry.js.map +0 -1
  666. package/dist/q2-tecton-elements/index-B4WYBDS9.js.map +0 -1
  667. package/dist/q2-tecton-elements/q2-checkbox.entry.esm.js.map +0 -1
  668. package/dist/q2-tecton-elements/q2-checkbox.entry.js +0 -228
  669. package/dist/q2-tecton-elements/q2-checkbox.entry.js.map +0 -1
  670. package/dist/q2-tecton-elements/q2-option-list.q2-popover.entry.esm.js.map +0 -1
  671. package/dist/q2-tecton-elements/q2-option-list_2.entry.js.map +0 -1
  672. package/dist/q2-tecton-elements/q2-tag.entry.esm.js.map +0 -1
  673. package/dist/q2-tecton-elements/q2-tag.entry.js +0 -256
  674. package/dist/q2-tecton-elements/q2-tag.entry.js.map +0 -1
  675. package/dist/q2-tecton-elements/sanitize-html-string-BPwFpYg-.js.map +0 -1
  676. /package/dist/types/{builds/q2e/development/tecton/tecton → Users/kvanhouten/Documents/Work/tecton_extra}/packages/q2-tecton-elements/.stencil/jest.e2e-coverage.d.ts +0 -0
  677. /package/dist/types/{builds/q2e/development/tecton/tecton → Users/kvanhouten/Documents/Work/tecton_extra}/packages/q2-tecton-elements/.stencil/jest.setup.d.ts +0 -0
  678. /package/dist/types/{builds/q2e/development/tecton/tecton → Users/kvanhouten/Documents/Work/tecton_extra}/packages/q2-tecton-elements/.stencil/scripts/docs-generator/index.d.ts +0 -0
  679. /package/dist/types/{builds/q2e/development/tecton/tecton → Users/kvanhouten/Documents/Work/tecton_extra}/packages/q2-tecton-elements/.stencil/scripts/docs-generator/markdown-generator.d.ts +0 -0
  680. /package/dist/types/{builds/q2e/development/tecton/tecton → Users/kvanhouten/Documents/Work/tecton_extra}/packages/q2-tecton-elements/.stencil/scripts/docs-generator/tag-handlers.d.ts +0 -0
  681. /package/dist/types/{builds/q2e/development/tecton/tecton → Users/kvanhouten/Documents/Work/tecton_extra}/packages/q2-tecton-elements/.stencil/scripts/docs-generator/types.d.ts +0 -0
@@ -1,260 +1,4 @@
1
- import { proxyCustomElement, HTMLElement, createEvent, h, Host, Fragment } from '@stencil/core/internal/client';
2
- import { o as overrideFocus, i as isEventFromElement, w as waitForNextPaint, l as loc } from './index2.js';
3
- import { m as mirrorEmit } from './mirror-emit.js';
4
- import { s as shouldShowActionSheet, a as showActionSheetList } from './action-sheet.js';
5
- import { d as defineCustomElement$5 } from './click-elsewhere2.js';
6
- import { d as defineCustomElement$4 } from './q2-icon2.js';
7
- import { d as defineCustomElement$3 } from './q2-option-list2.js';
8
- import { d as defineCustomElement$2 } from './q2-popover2.js';
9
-
10
- const q2TagCss = "*{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}:host{display:inline-block;position:relative;line-height:0}:host(:not(:last-child)){margin-inline-end:var(--tct-tag-margin, var(--t-tag-margin, var(--app-scale-2x, 10px)))}.tag-wrapper{--comp-tag-btn-size:var(--tct-tag-btn-size, var(--t-tag-btn-size, var(--app-scale-6x, 30px)));--comp-tag-background:var(--tct-tag-background, var(--t-tag-background, var(--t-gray-13, #e6e6e6)));--comp-tag-color:var(--tct-tag-color, var(--t-tag-color, var(--t-gray-3, #262626)));--comp-tag-border-color:var(--tct-tag-border-color, transparent);background:var(--comp-tag-background);color:var(--comp-tag-color);border-radius:var(--tct-tag-border-radius, var(--t-tag-border-radius, var(--app-border-radius-1, 4px)));border-width:var(--tct-tag-border-width, 0);border-style:var(--tct-tag-border-style, 0);border-color:var(--comp-tag-border-color);font-size:var(--tct-tag-font-size, inherit);font-weight:var(--tct-tag-font-weight, inherit);position:relative}:host([theme=primary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-primary-background, var(--t-primary, #0079c1));--comp-tag-color:var(--tct-tag-primary-font-color, var(--t-primary-text, #ffffff));--comp-tag-border-color:var(--tct-tag-primary-border-color, var(--t-primary, #0079c1))}:host([theme=secondary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-secondary-background, var(--t-secondary, #b3c2cc));--comp-tag-color:var(--tct-tag-secondary-font-color, var(--t-secondary-text, #141414));--comp-tag-border-color:var(--tct-tag-secondary-border-color, var(--t-secondary, #b3c2cc))}:host([theme=tertiary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-tertiary-background, var(--t-tertiary, #e8f5fc));--comp-tag-color:var(--tct-tag-tertiary-font-color, var(--t-tertiary-text, #141414));--comp-tag-border-color:var(--tct-tag-tertiary-border-color, var(--t-tertiary, #e8f5fc))}.tag{display:flex;align-items:center;width:max-content;gap:6px;height:var(--tct-tag-height, var(--t-tag-height, var(--app-scale-6x, 30px)));line-height:var(--tct-tag-height, var(--t-tag-height, var(--app-scale-6x, 30px)));padding-inline:var(--tct-tag-padding-inline, var(--t-tag-padding-inline, var(--app-scale-3x, 15px)))}.tag ::slotted(q2-icon[slot=decorator]){--tct-icon-size:1em;--tct-icon-stroke-primary:var(--tct-tag-decorator-icon-primary-stroke);--tct-icon-stroke-secondary:var(--tct-tag-decorator-icon-secondary-stroke)}:host([theme=primary]) .tag ::slotted(q2-icon[slot=decorator]){--tct-icon-stroke-primary:var(--tct-tag-primary-decorator-icon-primary-stroke);--tct-icon-stroke-secondary:var(--tct-tag-primary-decorator-icon-secondary-stroke)}.tag ::slotted(q2-badge[slot=decorator]){--tct-badge-height:1em;--tct-badge-line-height:30px}.tag.has-options{padding-right:6px}.btn-wrapper{--comp-tag-clickable-size:var(--tct-tag-clickable-size, var(--t-tag-clickable-size, 44px));--comp-tag-btn-offset:calc(calc(calc(var(--comp-tag-clickable-size) - var(--comp-tag-btn-size)) / 2) * -1);--comp-tag-background:var(--tct-tag-background, var(--t-tag-background, var(--t-gray-13, #e6e6e6)));height:var(--comp-tag-clickable-size);display:flex;align-items:center;justify-content:center;position:relative;right:var(--comp-tag-btn-offset);top:var(--comp-tag-btn-offset);cursor:pointer}button{height:var(--comp-tag-btn-size);stroke:var(--comp-tag-color);--tct-icon-stroke-primary:var(--comp-tag-color);cursor:pointer;border:0;background:transparent;display:flex;align-items:center;justify-content:center;padding:0;padding-right:6px;--tct-icon-size:18px}";
11
-
12
- const Q2Tag$1 = /*@__PURE__*/ proxyCustomElement(class Q2Tag extends HTMLElement {
13
- constructor() {
14
- super();
15
- this.__registerHost();
16
- this.__attachShadow();
17
- this.click = createEvent(this, "click", 7);
18
- this.tctClick = createEvent(this, "tctClick", 7);
19
- var _a;
20
- // #endregion
21
- // #region Public Property API
22
- /**
23
- * Instructs the component to use the action sheet workflow for displaying its options.
24
- *
25
- * For more information, see [Action Sheets](https://tecton.q2developer.com/guides/action-sheets/).
26
- */
27
- this.hoist = !!((_a = window.Tecton) === null || _a === void 0 ? void 0 : _a.useActionSheets);
28
- /** Determines the label that is applied to the option list for accessibility purposes. */
29
- this.optionListLabel = 'options';
30
- /** Aligns the popover dropdown to the left or right side of the input field. */
31
- this.popoverAlignment = 'right';
32
- this.determineOptionCount = () => {
33
- const numberOfOptions = this.hostElement.querySelectorAll('q2-option').length;
34
- this.optionCount = numberOfOptions;
35
- };
36
- this.filterSlottedElements = () => {
37
- if (!('HTMLSlotElement' in window))
38
- return;
39
- const slot = this.hostElement.shadowRoot.querySelector('slot[name="decorator"]');
40
- const assignedElements = Array.from((slot === null || slot === void 0 ? void 0 : slot.assignedElements()) || []);
41
- if (!assignedElements.length)
42
- return;
43
- const approvedElements = ['Q2-ICON', 'Q2-BADGE'];
44
- assignedElements.forEach((element, index) => {
45
- if (!approvedElements.includes(element.tagName) || index > 0) {
46
- element.remove();
47
- }
48
- });
49
- };
50
- this.handleButtonFocusout = async (event) => {
51
- var _a;
52
- const relatedTarget = event.relatedTarget;
53
- if ((_a = this.popoverElement) === null || _a === void 0 ? void 0 : _a.contains(relatedTarget))
54
- return;
55
- if (this.hostElement.contains(relatedTarget))
56
- return;
57
- this.open = false;
58
- };
59
- this.handleChange = event => {
60
- event.stopPropagation();
61
- if (!this.optionCount)
62
- return;
63
- const { value } = event.detail;
64
- mirrorEmit(this, ['click', 'tctClick'], { value });
65
- };
66
- this.handleClick = async (event) => {
67
- event.stopPropagation();
68
- this.popoverElement.controlElement = this.dropdownBtn;
69
- if (shouldShowActionSheet(this)) {
70
- const { value } = await showActionSheetList(this, event);
71
- this.dropdownBtn.focus();
72
- mirrorEmit(this, ['click', 'tctClick'], { value });
73
- }
74
- else {
75
- await this.popoverElement.toggle();
76
- }
77
- };
78
- this.handleKeydown = async (event) => {
79
- const isTabMetaOrCtrl = event.metaKey || event.ctrlKey || event.key === 'Tab';
80
- if (isTabMetaOrCtrl)
81
- return;
82
- event.preventDefault();
83
- this.popoverElement.controlElement = this.dropdownBtn;
84
- if (shouldShowActionSheet(this, event)) {
85
- const { value } = await showActionSheetList(this, event);
86
- this.dropdownBtn.focus();
87
- mirrorEmit(this, ['click', 'tctClick'], { value });
88
- }
89
- else {
90
- this.optionList.handleExternalKeydown(event);
91
- }
92
- };
93
- this.handleWrapperClick = () => {
94
- this.dropdownBtn.focus();
95
- this.dropdownBtn.click();
96
- };
97
- this.initMutationObserver = () => {
98
- if (!('MutationObserver' in window))
99
- return;
100
- const observer = new MutationObserver(this.onMutationObserved);
101
- observer.observe(this.hostElement, { childList: true, attributes: true });
102
- this.mutationObserver = observer;
103
- };
104
- this.onClickElsewhere = (event) => {
105
- const target = event.target;
106
- if (target.localName === 'click-elsewhere') {
107
- event.stopPropagation();
108
- const { popoverElement } = this;
109
- if (!popoverElement)
110
- return;
111
- popoverElement.open = false;
112
- }
113
- };
114
- this.onMutationObserved = () => {
115
- this.determineOptionCount();
116
- this.filterSlottedElements();
117
- };
118
- }
119
- // #endregion
120
- // #region Component Lifecycle Events
121
- disconnectedCallback() {
122
- var _a;
123
- (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
124
- this.mutationObserver = null;
125
- }
126
- componentWillLoad() {
127
- this.initMutationObserver();
128
- this.determineOptionCount();
129
- }
130
- componentDidLoad() {
131
- overrideFocus(this.hostElement);
132
- this.filterSlottedElements();
133
- }
134
- // #endregion
135
- // #region Listeners
136
- delegateFocus(event) {
137
- if (!isEventFromElement(event, this.hostElement))
138
- return;
139
- if (!this.optionCount)
140
- return;
141
- this.dropdownBtn.focus();
142
- }
143
- popoverStateHandler({ detail: { open } }) {
144
- if (this.open !== open)
145
- this.open = open;
146
- if (open)
147
- return;
148
- this.optionList.setActiveElement(null);
149
- }
150
- // #endregion
151
- // #region Public Methods API
152
- /**
153
- * Emulates clicking the tag to close the popover when options are provided and the popover is open.
154
- * @testonly
155
- */
156
- async closePopover() {
157
- if (!this.optionCount || !this.open)
158
- return;
159
- this._togglePopover();
160
- }
161
- /**
162
- * Emulates clicking the tag to open the popover when options are provided and the popover is closed.
163
- * @testonly
164
- */
165
- async openPopover() {
166
- if (!this.optionCount || this.open)
167
- return;
168
- this._togglePopover();
169
- }
170
- /**
171
- * Emulates selecting an option matching the passed value.
172
- *
173
- * If the popover is closed, this will open it before selecting the option.
174
- *
175
- * If there are not options, or the passed value does not match any option's value, this method does nothing.
176
- * @testonly
177
- */
178
- async selectOption(value) {
179
- if (!this.optionCount)
180
- return;
181
- await this.openPopover();
182
- await waitForNextPaint();
183
- const allOptions = await this.optionList.getOptions();
184
- const desiredOption = allOptions.find(option => option.value === value);
185
- desiredOption === null || desiredOption === void 0 ? void 0 : desiredOption.click();
186
- }
187
- // #endregion
188
- // #region Local Methods
189
- _togglePopover() {
190
- const { dropdownBtn } = this;
191
- dropdownBtn === null || dropdownBtn === void 0 ? void 0 : dropdownBtn.click();
192
- dropdownBtn === null || dropdownBtn === void 0 ? void 0 : dropdownBtn.focus();
193
- dropdownBtn.dispatchEvent(new FocusEvent('focus'));
194
- }
195
- // #endregion
196
- // #region Render Methods
197
- renderHiddenElement() {
198
- return (h("div", { id: "option-description", class: "sr", "aria-hidden": "true" }, loc('tecton.element.optionList.optionCount', [this.optionCount])));
199
- }
200
- render() {
201
- const { open } = this;
202
- const wrapperClassNames = ['tag'];
203
- if (this.optionCount)
204
- wrapperClassNames.push('has-options');
205
- const shouldShowOptions = this.optionCount > 0;
206
- return (h(Host, { key: '2ce592e9fc8db8d547cad71623270837ec0539d6' }, h("click-elsewhere", { key: 'b0a0ad314e84ccae1e06b197bc6fec8f1c333349', onChange: this.onClickElsewhere }, shouldShowOptions ? (h(Fragment, null, h("div", { class: "btn-wrapper", onClick: this.handleWrapperClick }, h("button", { class: "tag-wrapper", ref: el => (this.dropdownBtn = el), "test-id": "btn-control", type: "button", role: "combobox", onClick: this.handleClick, onKeyDown: this.handleKeydown, onFocusout: this.handleButtonFocusout, "aria-controls": "option-list", "aria-expanded": open ? 'true' : 'false', "aria-describedby": "option-description", "aria-label": loc(this.label) }, h("div", { class: wrapperClassNames.join(' ') }, loc(this.label)), h("q2-icon", { type: "options" }))), this.renderHiddenElement())) : (h("div", { class: "tag-wrapper", onClick: e => e.stopPropagation() }, h("div", { class: wrapperClassNames.join(' ') }, h("slot", { name: "decorator" }), loc(this.label)))), shouldShowOptions && (h("q2-popover", { key: 'd67e1d087a62530ef3c013f070ae522531acd508', ref: el => (this.popoverElement = el), controlElement: this.dropdownBtn, open: this.open, maxHeight: this.popoverMaxHeight, minHeight: this.popoverMinHeight, direction: this.popoverDirection, align: this.popoverAlignment }, h("q2-option-list", { key: '6c2484d7110eeff81dfebef4c05dec99adffe935', id: "option-list", ref: el => (this.optionList = el), onChange: this.handleChange, type: "menu", align: "right", label: loc('tecton.element.optionList.label', [this.optionListLabel]), "no-select": true }, h("slot", { key: 'db0c912240b4e2425c16bce894abb8be42ab67e2' })))))));
207
- }
208
- get hostElement() { return this; }
209
- static get style() { return q2TagCss; }
210
- }, [1, "q2-tag", {
211
- "hoist": [4],
212
- "label": [513],
213
- "open": [1540],
214
- "optionListLabel": [1, "option-list-label"],
215
- "popoverAlignment": [1025, "popover-alignment"],
216
- "popoverDirection": [1, "popover-direction"],
217
- "popoverMaxHeight": [2, "popover-max-height"],
218
- "popoverMinHeight": [2, "popover-min-height"],
219
- "theme": [513],
220
- "optionCount": [32],
221
- "closePopover": [64],
222
- "openPopover": [64],
223
- "selectOption": [64]
224
- }, [[0, "focus", "delegateFocus"], [0, "popoverStateChanged", "popoverStateHandler"]]]);
225
- function defineCustomElement$1() {
226
- if (typeof customElements === "undefined") {
227
- return;
228
- }
229
- const components = ["q2-tag", "click-elsewhere", "q2-icon", "q2-option-list", "q2-popover"];
230
- components.forEach(tagName => { switch (tagName) {
231
- case "q2-tag":
232
- if (!customElements.get(tagName)) {
233
- customElements.define(tagName, Q2Tag$1);
234
- }
235
- break;
236
- case "click-elsewhere":
237
- if (!customElements.get(tagName)) {
238
- defineCustomElement$5();
239
- }
240
- break;
241
- case "q2-icon":
242
- if (!customElements.get(tagName)) {
243
- defineCustomElement$4();
244
- }
245
- break;
246
- case "q2-option-list":
247
- if (!customElements.get(tagName)) {
248
- defineCustomElement$3();
249
- }
250
- break;
251
- case "q2-popover":
252
- if (!customElements.get(tagName)) {
253
- defineCustomElement$2();
254
- }
255
- break;
256
- } });
257
- }
1
+ import { Q as Q2Tag$1, d as defineCustomElement$1 } from './q2-tag2.js';
258
2
 
259
3
  const Q2Tag = Q2Tag$1;
260
4
  const defineCustomElement = defineCustomElement$1;
@@ -1 +1 @@
1
- {"file":"q2-tag.js","mappings":"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","names":["Q2Tag","__stencil_proxyCustomElement"],"sources":["src/components/q2-tag/q2-tag.scss?tag=q2-tag&encapsulation=shadow","src/components/q2-tag/q2-tag.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n\n:host {\n display: inline-block;\n position: relative;\n line-height: 0;\n}\n\n:host(:not(:last-child)) {\n margin-inline-end: var-list(var-prefixer(tag-margin), --app-scale-2x, 10px);\n}\n\n.tag-wrapper {\n --comp-tag-btn-size: #{var-list(var-prefixer(tag-btn-size), --app-scale-6x, 30px)};\n --comp-tag-background: #{var-list(var-prefixer(tag-background), --t-gray-13, #e6e6e6)};\n --comp-tag-color: #{var-list(var-prefixer(tag-color), --t-gray-3, #262626)};\n --comp-tag-border-color: #{var-list(--tct-tag-border-color, transparent)};\n background: var(--comp-tag-background);\n color: var(--comp-tag-color);\n border-radius: var-list(var-prefixer(tag-border-radius), --app-border-radius-1, 4px);\n border-width: var-list(--tct-tag-border-width, 0);\n border-style: var-list(--tct-tag-border-style, 0);\n border-color: var(--comp-tag-border-color);\n font-size: var(--tct-tag-font-size, inherit);\n font-weight: var(--tct-tag-font-weight, inherit);\n position: relative;\n\n :host([theme='primary']) & {\n --comp-tag-background: #{var-list(--tct-tag-primary-background, --t-primary, #0079c1)};\n --comp-tag-color: #{var-list(--tct-tag-primary-font-color, --t-primary-text, #ffffff)};\n --comp-tag-border-color: #{var-list(--tct-tag-primary-border-color, --t-primary, #0079c1)};\n }\n\n :host([theme='secondary']) & {\n --comp-tag-background: #{var-list(--tct-tag-secondary-background, --t-secondary, #b3c2cc)};\n --comp-tag-color: #{var-list(--tct-tag-secondary-font-color, --t-secondary-text, #141414)};\n --comp-tag-border-color: #{var-list(--tct-tag-secondary-border-color, --t-secondary, #b3c2cc)};\n }\n\n :host([theme='tertiary']) & {\n --comp-tag-background: #{var-list(--tct-tag-tertiary-background, --t-tertiary, #e8f5fc)};\n --comp-tag-color: #{var-list(--tct-tag-tertiary-font-color, --t-tertiary-text, #141414)};\n --comp-tag-border-color: #{var-list(--tct-tag-tertiary-border-color, --t-tertiary, #e8f5fc)};\n }\n}\n\n.tag {\n display: flex;\n align-items: center;\n width: max-content;\n gap: 6px;\n height: var-list(var-prefixer(tag-height), --app-scale-6x, 30px);\n line-height: var-list(var-prefixer(tag-height), --app-scale-6x, 30px);\n padding-inline: var-list(var-prefixer(tag-padding-inline), --app-scale-3x, 15px);\n\n ::slotted(q2-icon[slot='decorator']) {\n --tct-icon-size: 1em;\n --tct-icon-stroke-primary: var(--tct-tag-decorator-icon-primary-stroke);\n --tct-icon-stroke-secondary: var(--tct-tag-decorator-icon-secondary-stroke);\n }\n\n :host([theme=\"primary\"]) & ::slotted(q2-icon[slot='decorator']) {\n --tct-icon-stroke-primary: var(--tct-tag-primary-decorator-icon-primary-stroke);\n --tct-icon-stroke-secondary: var(--tct-tag-primary-decorator-icon-secondary-stroke);\n }\n\n ::slotted(q2-badge[slot='decorator']) {\n --tct-badge-height: 1em;\n --tct-badge-line-height: 30px;\n }\n}\n\n.tag.has-options {\n padding-right: 6px;\n}\n\n.btn-wrapper {\n --comp-tag-clickable-size: #{var-list(var-prefixer(tag-clickable-size), 44px)};\n --comp-tag-btn-offset: calc(calc(calc(var(--comp-tag-clickable-size) - var(--comp-tag-btn-size)) / 2) * -1);\n --comp-tag-background: #{var-list(var-prefixer(tag-background), --t-gray-13, #e6e6e6)};\n height: var(--comp-tag-clickable-size);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n right: var(--comp-tag-btn-offset);\n top: var(--comp-tag-btn-offset);\n cursor: pointer;\n}\n\nbutton {\n height: var(--comp-tag-btn-size);\n stroke: var(--comp-tag-color);\n --tct-icon-stroke-primary: var(--comp-tag-color);\n cursor: pointer;\n border: 0;\n background: transparent;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n padding-right: 6px;\n --tct-icon-size: 18px;\n}\n","import {\n Component,\n State,\n Prop,\n h,\n ComponentInterface,\n Host,\n Listen,\n Method,\n Element,\n EventEmitter,\n Event,\n Fragment,\n} from '@stencil/core';\nimport { isEventFromElement, loc, overrideFocus, waitForNextPaint } from 'src/utils';\nimport mirrorEmit from '@/utils/mirror-emit';\nimport { shouldShowActionSheet, showActionSheetList } from 'src/utils/action-sheet';\n\n/**\n * @name Tag\n * @category Display\n * @summary Use for displaying metadata labels or categories on content.\n * @slot decorator - An optional slot that supports either an [Icon](https://tecton.q2developer.com/design-system/q2-icon) or [Badge](https://tecton.q2developer.com/design-system/q2-badge) to be displayed with the tag content.\n * This is **not** available when using [Multiple Options](https://tecton.q2developer.com/design-system/q2-tag#multiple-options).\n */\n@Component({ tag: 'q2-tag', shadow: true, styleUrl: 'q2-tag.scss' })\nexport class Q2Tag implements ComponentInterface {\n // #region Own Properties\n\n dropdownBtn: HTMLButtonElement;\n mutationObserver: MutationObserver;\n optionList: HTMLQ2OptionListElement;\n popoverElement: HTMLQ2PopoverElement;\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n optionCount: number;\n\n // #endregion\n // #region Public Property API\n\n /**\n * Instructs the component to use the action sheet workflow for displaying its options.\n *\n * For more information, see [Action Sheets](https://tecton.q2developer.com/guides/action-sheets/).\n */\n @Prop()\n hoist: boolean = !!window.Tecton?.useActionSheets;\n\n /**\n * The text that populates the label.\n * @localizable\n */\n @Prop({ reflect: true })\n label: string;\n\n /**\n * Determine whether the popover is open or closed.\n *\n * @readonly\n */\n @Prop({ reflect: true, mutable: true })\n open: boolean;\n\n /** Determines the label that is applied to the option list for accessibility purposes. */\n @Prop()\n optionListLabel: string = 'options';\n\n /** Aligns the popover dropdown to the left or right side of the input field. */\n @Prop({ mutable: true })\n popoverAlignment: 'left' | 'right' = 'right';\n\n /**\n * Force the direction of the popover dropdown when it opens.\n * If no value is passed, the component will auto-detect the direction based on available space.\n */\n @Prop()\n popoverDirection: 'up' | 'down';\n\n /**\n * Force the maximum height of the popover. This value will be interpreted as pixels.\n * If no value is passed, or the value exceeds available space, the component will auto-detect the maximum height based on available space.\n */\n @Prop()\n popoverMaxHeight: number;\n\n /** @deprecated */\n @Prop()\n popoverMinHeight: number;\n\n /** The color of the element. */\n @Prop({ reflect: true })\n theme: 'primary' | 'secondary' | 'tertiary';\n\n // #endregion\n // #region Events\n\n /**\n * Emitted when a provided option is clicked.\n *\n * Requires at least one option to be provided.\n * @deprecated Use 'tctClick' instead\n */\n @Event()\n click: EventEmitter<{ value: string }>;\n\n /**\n * Emitted when a provided option is clicked.\n *\n * Requires at least one option to be provided.\n */\n @Event()\n tctClick: EventEmitter<{ value: string }>;\n\n // #endregion\n // #region Component Lifecycle Events\n\n disconnectedCallback() {\n this.mutationObserver?.disconnect();\n this.mutationObserver = null;\n }\n\n componentWillLoad() {\n this.initMutationObserver();\n this.determineOptionCount();\n }\n\n componentDidLoad(): void {\n overrideFocus(this.hostElement);\n this.filterSlottedElements();\n }\n\n // #endregion\n // #region Listeners\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n if (!this.optionCount) return;\n this.dropdownBtn.focus();\n }\n\n @Listen('popoverStateChanged')\n popoverStateHandler({ detail: { open } }: CustomEvent<{ open: boolean }>) {\n if (this.open !== open) this.open = open;\n if (open) return;\n this.optionList.setActiveElement(null);\n }\n\n // #endregion\n // #region Public Methods API\n\n /**\n * Emulates clicking the tag to close the popover when options are provided and the popover is open.\n * @testonly\n */\n @Method()\n async closePopover() {\n if (!this.optionCount || !this.open) return;\n this._togglePopover();\n }\n\n /**\n * Emulates clicking the tag to open the popover when options are provided and the popover is closed.\n * @testonly\n */\n @Method()\n async openPopover() {\n if (!this.optionCount || this.open) return;\n this._togglePopover();\n }\n\n /**\n * Emulates selecting an option matching the passed value.\n *\n * If the popover is closed, this will open it before selecting the option.\n *\n * If there are not options, or the passed value does not match any option's value, this method does nothing.\n * @testonly\n */\n @Method()\n async selectOption(value) {\n if (!this.optionCount) return;\n await this.openPopover();\n await waitForNextPaint();\n const allOptions = await this.optionList.getOptions();\n const desiredOption = allOptions.find(option => option.value === value);\n desiredOption?.click();\n }\n\n // #endregion\n // #region Local Methods\n\n _togglePopover() {\n const { dropdownBtn } = this;\n dropdownBtn?.click();\n dropdownBtn?.focus();\n dropdownBtn.dispatchEvent(new FocusEvent('focus'));\n }\n\n determineOptionCount = () => {\n const numberOfOptions = this.hostElement.querySelectorAll('q2-option').length;\n this.optionCount = numberOfOptions;\n };\n\n filterSlottedElements = () => {\n if (!('HTMLSlotElement' in window)) return;\n const slot: HTMLSlotElement = this.hostElement.shadowRoot.querySelector('slot[name=\"decorator\"]');\n const assignedElements = Array.from(slot?.assignedElements() || []);\n if (!assignedElements.length) return;\n\n const approvedElements = ['Q2-ICON', 'Q2-BADGE'];\n assignedElements.forEach((element, index) => {\n if (!approvedElements.includes(element.tagName) || index > 0) {\n element.remove();\n }\n });\n };\n\n handleButtonFocusout = async (event: FocusEvent) => {\n const relatedTarget = event.relatedTarget as HTMLElement;\n if (this.popoverElement?.contains(relatedTarget)) return;\n if (this.hostElement.contains(relatedTarget)) return;\n this.open = false;\n };\n\n handleChange = event => {\n event.stopPropagation();\n if (!this.optionCount) return;\n const { value } = event.detail;\n\n mirrorEmit(this, ['click', 'tctClick'], { value });\n };\n\n handleClick = async (event: MouseEvent) => {\n event.stopPropagation();\n this.popoverElement.controlElement = this.dropdownBtn;\n if (shouldShowActionSheet(this)) {\n const { value } = await showActionSheetList(this, event);\n this.dropdownBtn.focus();\n mirrorEmit(this, ['click', 'tctClick'], { value });\n } else {\n await this.popoverElement.toggle();\n }\n };\n\n handleKeydown = async (event: KeyboardEvent) => {\n const isTabMetaOrCtrl = event.metaKey || event.ctrlKey || event.key === 'Tab';\n if (isTabMetaOrCtrl) return;\n\n event.preventDefault();\n this.popoverElement.controlElement = this.dropdownBtn;\n if (shouldShowActionSheet(this, event)) {\n const { value } = await showActionSheetList(this, event);\n this.dropdownBtn.focus();\n mirrorEmit(this, ['click', 'tctClick'], { value });\n } else {\n this.optionList.handleExternalKeydown(event);\n }\n };\n\n handleWrapperClick = () => {\n this.dropdownBtn.focus();\n this.dropdownBtn.click();\n };\n\n initMutationObserver = () => {\n if (!('MutationObserver' in window)) return;\n const observer = new MutationObserver(this.onMutationObserved);\n observer.observe(this.hostElement, { childList: true, attributes: true });\n this.mutationObserver = observer;\n };\n\n onClickElsewhere = (event: CustomEvent) => {\n const target = event.target as HTMLClickElsewhereElement;\n if (target.localName === 'click-elsewhere') {\n event.stopPropagation();\n const { popoverElement } = this;\n if (!popoverElement) return;\n popoverElement.open = false;\n }\n };\n\n onMutationObserved = () => {\n this.determineOptionCount();\n this.filterSlottedElements();\n };\n\n // #endregion\n // #region Render Methods\n\n renderHiddenElement() {\n return (\n <div\n id=\"option-description\"\n class=\"sr\"\n aria-hidden=\"true\"\n >\n {loc('tecton.element.optionList.optionCount', [this.optionCount])}\n </div>\n );\n }\n\n render() {\n const { open } = this;\n const wrapperClassNames = ['tag'];\n if (this.optionCount) wrapperClassNames.push('has-options');\n const shouldShowOptions = this.optionCount > 0;\n\n return (\n <Host>\n <click-elsewhere onChange={this.onClickElsewhere}>\n {shouldShowOptions ? (\n <Fragment>\n <div\n class=\"btn-wrapper\"\n onClick={this.handleWrapperClick}\n >\n <button\n class=\"tag-wrapper\"\n ref={el => (this.dropdownBtn = el)}\n test-id=\"btn-control\"\n type=\"button\"\n role=\"combobox\"\n onClick={this.handleClick}\n onKeyDown={this.handleKeydown}\n onFocusout={this.handleButtonFocusout}\n aria-controls=\"option-list\"\n aria-expanded={open ? 'true' : 'false'}\n aria-describedby=\"option-description\"\n aria-label={loc(this.label)}\n >\n <div class={wrapperClassNames.join(' ')}>{loc(this.label)}</div>\n <q2-icon type=\"options\"></q2-icon>\n </button>\n </div>\n {this.renderHiddenElement()}\n </Fragment>\n ) : (\n <div\n class=\"tag-wrapper\"\n onClick={e => e.stopPropagation()}\n >\n <div class={wrapperClassNames.join(' ')}>\n <slot name=\"decorator\" />\n {loc(this.label)}\n </div>\n </div>\n )}\n\n {shouldShowOptions && (\n <q2-popover\n ref={el => (this.popoverElement = el)}\n controlElement={this.dropdownBtn}\n open={this.open}\n maxHeight={this.popoverMaxHeight}\n minHeight={this.popoverMinHeight}\n direction={this.popoverDirection}\n align={this.popoverAlignment}\n >\n <q2-option-list\n id=\"option-list\"\n ref={el => (this.optionList = el)}\n onChange={this.handleChange}\n type=\"menu\"\n align=\"right\"\n label={loc('tecton.element.optionList.label', [this.optionListLabel])}\n no-select\n >\n <slot />\n </q2-option-list>\n </q2-popover>\n )}\n </click-elsewhere>\n </Host>\n );\n }\n\n // #endregion\n}\n"],"version":3}
1
+ {"file":"q2-tag.js","mappings":";;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
@@ -1,13 +1,19 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, g as getElement } from './index-CGkHOjh1.js';
2
- import { o as overrideFocus, i as isEventFromElement, w as waitForNextPaint, l as loc } from './index-B4WYBDS9.js';
3
- import { m as mirrorEmit } from './mirror-emit-DUjY_ucm.js';
4
- import { s as shouldShowActionSheet, a as showActionSheetList } from './action-sheet-B7adb3xs.js';
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host, Fragment } from '@stencil/core/internal/client';
2
+ import { o as overrideFocus, i as isEventFromElement, w as waitForNextPaint, l as loc } from './index2.js';
3
+ import { m as mirrorEmit } from './mirror-emit.js';
4
+ import { s as shouldShowActionSheet, a as showActionSheetList } from './action-sheet.js';
5
+ import { d as defineCustomElement$4 } from './click-elsewhere2.js';
6
+ import { d as defineCustomElement$3 } from './q2-icon2.js';
7
+ import { d as defineCustomElement$2 } from './q2-option-list2.js';
8
+ import { d as defineCustomElement$1 } from './q2-popover2.js';
5
9
 
6
- const q2TagCss = "*{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}:host{display:inline-block;position:relative;line-height:0}:host(:not(:last-child)){margin-inline-end:var(--tct-tag-margin, var(--t-tag-margin, var(--app-scale-2x, 10px)))}.tag-wrapper{--comp-tag-btn-size:var(--tct-tag-btn-size, var(--t-tag-btn-size, var(--app-scale-6x, 30px)));--comp-tag-background:var(--tct-tag-background, var(--t-tag-background, var(--t-gray-13, #e6e6e6)));--comp-tag-color:var(--tct-tag-color, var(--t-tag-color, var(--t-gray-3, #262626)));--comp-tag-border-color:var(--tct-tag-border-color, transparent);background:var(--comp-tag-background);color:var(--comp-tag-color);border-radius:var(--tct-tag-border-radius, var(--t-tag-border-radius, var(--app-border-radius-1, 4px)));border-width:var(--tct-tag-border-width, 0);border-style:var(--tct-tag-border-style, 0);border-color:var(--comp-tag-border-color);font-size:var(--tct-tag-font-size, inherit);font-weight:var(--tct-tag-font-weight, inherit);position:relative}:host([theme=primary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-primary-background, var(--t-primary, #0079c1));--comp-tag-color:var(--tct-tag-primary-font-color, var(--t-primary-text, #ffffff));--comp-tag-border-color:var(--tct-tag-primary-border-color, var(--t-primary, #0079c1))}:host([theme=secondary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-secondary-background, var(--t-secondary, #b3c2cc));--comp-tag-color:var(--tct-tag-secondary-font-color, var(--t-secondary-text, #141414));--comp-tag-border-color:var(--tct-tag-secondary-border-color, var(--t-secondary, #b3c2cc))}:host([theme=tertiary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-tertiary-background, var(--t-tertiary, #e8f5fc));--comp-tag-color:var(--tct-tag-tertiary-font-color, var(--t-tertiary-text, #141414));--comp-tag-border-color:var(--tct-tag-tertiary-border-color, var(--t-tertiary, #e8f5fc))}.tag{display:flex;align-items:center;width:max-content;gap:6px;height:var(--tct-tag-height, var(--t-tag-height, var(--app-scale-6x, 30px)));line-height:var(--tct-tag-height, var(--t-tag-height, var(--app-scale-6x, 30px)));padding-inline:var(--tct-tag-padding-inline, var(--t-tag-padding-inline, var(--app-scale-3x, 15px)))}.tag ::slotted(q2-icon[slot=decorator]){--tct-icon-size:1em;--tct-icon-stroke-primary:var(--tct-tag-decorator-icon-primary-stroke);--tct-icon-stroke-secondary:var(--tct-tag-decorator-icon-secondary-stroke)}:host([theme=primary]) .tag ::slotted(q2-icon[slot=decorator]){--tct-icon-stroke-primary:var(--tct-tag-primary-decorator-icon-primary-stroke);--tct-icon-stroke-secondary:var(--tct-tag-primary-decorator-icon-secondary-stroke)}.tag ::slotted(q2-badge[slot=decorator]){--tct-badge-height:1em;--tct-badge-line-height:30px}.tag.has-options{padding-right:6px}.btn-wrapper{--comp-tag-clickable-size:var(--tct-tag-clickable-size, var(--t-tag-clickable-size, 44px));--comp-tag-btn-offset:calc(calc(calc(var(--comp-tag-clickable-size) - var(--comp-tag-btn-size)) / 2) * -1);--comp-tag-background:var(--tct-tag-background, var(--t-tag-background, var(--t-gray-13, #e6e6e6)));height:var(--comp-tag-clickable-size);display:flex;align-items:center;justify-content:center;position:relative;right:var(--comp-tag-btn-offset);top:var(--comp-tag-btn-offset);cursor:pointer}button{height:var(--comp-tag-btn-size);stroke:var(--comp-tag-color);--tct-icon-stroke-primary:var(--comp-tag-color);cursor:pointer;border:0;background:transparent;display:flex;align-items:center;justify-content:center;padding:0;padding-right:6px;--tct-icon-size:18px}";
10
+ const q2TagCss = "*{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}:host{display:inline-block;position:relative;line-height:0}:host(:not(:last-child)){margin-inline-end:var(--tct-tag-margin, var(--t-tag-margin, var(--app-scale-2x, 10px)))}.tag-wrapper{--comp-tag-btn-size:var(--tct-tag-btn-size, var(--t-tag-btn-size, var(--app-scale-6x, 30px)));--comp-tag-background:var(--tct-tag-background, var(--t-tag-background, var(--t-gray-13, #e6e6e6)));--comp-tag-color:var(--tct-tag-color, var(--t-tag-color, var(--t-gray-3, #262626)));--comp-tag-border-color:var(--tct-tag-border-color, transparent);background:var(--comp-tag-background);color:var(--comp-tag-color);border-radius:var(--tct-tag-border-radius, var(--t-tag-border-radius, var(--app-border-radius-1, 4px)));border-width:var(--tct-tag-border-width, 0);border-style:var(--tct-tag-border-style, 0);border-color:var(--comp-tag-border-color);font-size:var(--tct-tag-font-size, inherit);font-weight:var(--tct-tag-font-weight, inherit);position:relative}:host([theme=primary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-primary-background, var(--t-primary, #0079c1));--comp-tag-color:var(--tct-tag-primary-font-color, var(--t-primary-text, #ffffff));--comp-tag-border-color:var(--tct-tag-primary-border-color, var(--t-primary, #0079c1))}:host([theme=secondary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-secondary-background, var(--t-secondary, #b3c2cc));--comp-tag-color:var(--tct-tag-secondary-font-color, var(--t-secondary-text, #141414));--comp-tag-border-color:var(--tct-tag-secondary-border-color, var(--t-secondary, #b3c2cc))}:host([theme=tertiary]) .tag-wrapper{--comp-tag-background:var(--tct-tag-tertiary-background, var(--t-tertiary, #e8f5fc));--comp-tag-color:var(--tct-tag-tertiary-font-color, var(--t-tertiary-text, #141414));--comp-tag-border-color:var(--tct-tag-tertiary-border-color, var(--t-tertiary, #e8f5fc))}.tag-wrapper:focus-visible{box-shadow:var(--tct-tag-focus-visible-box-shadow, var(--const-double-focus-ring))}.tag{display:flex;align-items:center;width:max-content;gap:6px;height:var(--tct-tag-height, var(--t-tag-height, var(--app-scale-6x, 30px)));line-height:var(--tct-tag-height, var(--t-tag-height, var(--app-scale-6x, 30px)));padding-inline:var(--tct-tag-padding-inline, var(--t-tag-padding-inline, var(--app-scale-3x, 15px)))}.tag ::slotted(q2-icon[slot=decorator]){--tct-icon-size:1em;--tct-icon-stroke-primary:var(--tct-tag-decorator-icon-primary-stroke);--tct-icon-stroke-secondary:var(--tct-tag-decorator-icon-secondary-stroke)}:host([theme=primary]) .tag ::slotted(q2-icon[slot=decorator]){--tct-icon-stroke-primary:var(--tct-tag-primary-decorator-icon-primary-stroke);--tct-icon-stroke-secondary:var(--tct-tag-primary-decorator-icon-secondary-stroke)}.tag ::slotted(q2-badge[slot=decorator]){--tct-badge-height:1em;--tct-badge-line-height:30px}.tag.has-options{padding-right:6px}.btn-wrapper{--comp-tag-clickable-size:var(--tct-tag-clickable-size, var(--t-tag-clickable-size, 44px));--comp-tag-btn-offset:calc(calc(calc(var(--comp-tag-clickable-size) - var(--comp-tag-btn-size)) / 2) * -1);--comp-tag-background:var(--tct-tag-background, var(--t-tag-background, var(--t-gray-13, #e6e6e6)));height:var(--comp-tag-clickable-size);display:flex;align-items:center;justify-content:center;position:relative;right:var(--comp-tag-btn-offset);top:var(--comp-tag-btn-offset);cursor:pointer}button{height:var(--comp-tag-btn-size);stroke:var(--comp-tag-color);--tct-icon-stroke-primary:var(--comp-tag-color);cursor:pointer;border:0;background:transparent;display:flex;align-items:center;justify-content:center;padding:0;padding-right:6px;--tct-icon-size:18px}";
7
11
 
8
- const Q2Tag = class {
9
- constructor(hostRef) {
10
- registerInstance(this, hostRef);
12
+ const Q2Tag = /*@__PURE__*/ proxyCustomElement(class Q2Tag extends HTMLElement {
13
+ constructor() {
14
+ super();
15
+ this.__registerHost();
16
+ this.__attachShadow();
11
17
  this.click = createEvent(this, "click", 7);
12
18
  this.tctClick = createEvent(this, "tctClick", 7);
13
19
  var _a;
@@ -197,13 +203,60 @@ const Q2Tag = class {
197
203
  if (this.optionCount)
198
204
  wrapperClassNames.push('has-options');
199
205
  const shouldShowOptions = this.optionCount > 0;
200
- return (h(Host, { key: '2ce592e9fc8db8d547cad71623270837ec0539d6' }, h("click-elsewhere", { key: 'b0a0ad314e84ccae1e06b197bc6fec8f1c333349', onChange: this.onClickElsewhere }, shouldShowOptions ? (h(Fragment, null, h("div", { class: "btn-wrapper", onClick: this.handleWrapperClick }, h("button", { class: "tag-wrapper", ref: el => (this.dropdownBtn = el), "test-id": "btn-control", type: "button", role: "combobox", onClick: this.handleClick, onKeyDown: this.handleKeydown, onFocusout: this.handleButtonFocusout, "aria-controls": "option-list", "aria-expanded": open ? 'true' : 'false', "aria-describedby": "option-description", "aria-label": loc(this.label) }, h("div", { class: wrapperClassNames.join(' ') }, loc(this.label)), h("q2-icon", { type: "options" }))), this.renderHiddenElement())) : (h("div", { class: "tag-wrapper", onClick: e => e.stopPropagation() }, h("div", { class: wrapperClassNames.join(' ') }, h("slot", { name: "decorator" }), loc(this.label)))), shouldShowOptions && (h("q2-popover", { key: 'd67e1d087a62530ef3c013f070ae522531acd508', ref: el => (this.popoverElement = el), controlElement: this.dropdownBtn, open: this.open, maxHeight: this.popoverMaxHeight, minHeight: this.popoverMinHeight, direction: this.popoverDirection, align: this.popoverAlignment }, h("q2-option-list", { key: '6c2484d7110eeff81dfebef4c05dec99adffe935', id: "option-list", ref: el => (this.optionList = el), onChange: this.handleChange, type: "menu", align: "right", label: loc('tecton.element.optionList.label', [this.optionListLabel]), "no-select": true }, h("slot", { key: 'db0c912240b4e2425c16bce894abb8be42ab67e2' })))))));
206
+ return (h(Host, { key: '664af4451fdb556b1746ec0f1a0a66de86642a7a' }, h("click-elsewhere", { key: '8da25535a510070733d25fa1d63dedfa0865b7ab', onChange: this.onClickElsewhere }, shouldShowOptions ? (h(Fragment, null, h("div", { class: "btn-wrapper", onClick: this.handleWrapperClick }, h("button", { class: "tag-wrapper", ref: el => (this.dropdownBtn = el), "test-id": "btn-control", type: "button", role: "combobox", onClick: this.handleClick, onKeyDown: this.handleKeydown, onFocusout: this.handleButtonFocusout, "aria-controls": "option-list", "aria-expanded": open ? 'true' : 'false', "aria-describedby": "option-description", "aria-label": loc(this.label) }, h("div", { class: wrapperClassNames.join(' ') }, loc(this.label)), h("q2-icon", { type: "options" }))), this.renderHiddenElement())) : (h("div", { class: "tag-wrapper", onClick: e => e.stopPropagation() }, h("div", { class: wrapperClassNames.join(' ') }, h("slot", { name: "decorator" }), loc(this.label)))), shouldShowOptions && (h("q2-popover", { key: '28397ef79ce03d335959ad993a4de4278073a9ba', ref: el => (this.popoverElement = el), controlElement: this.dropdownBtn, open: this.open, maxHeight: this.popoverMaxHeight, minHeight: this.popoverMinHeight, direction: this.popoverDirection, align: this.popoverAlignment }, h("q2-option-list", { key: '3379d0003bde9036485c06ff696a2f08fc599451', id: "option-list", ref: el => (this.optionList = el), onChange: this.handleChange, type: "menu", align: "right", label: loc('tecton.element.optionList.label', [this.optionListLabel]), "no-select": true }, h("slot", { key: '1cf6372351972e02563e74ba1e9cc79e261a9a2a' })))))));
201
207
  }
202
- get hostElement() { return getElement(this); }
203
- };
204
- Q2Tag.style = q2TagCss;
208
+ get hostElement() { return this; }
209
+ static get style() { return q2TagCss; }
210
+ }, [1, "q2-tag", {
211
+ "hoist": [4],
212
+ "label": [513],
213
+ "open": [1540],
214
+ "optionListLabel": [1, "option-list-label"],
215
+ "popoverAlignment": [1025, "popover-alignment"],
216
+ "popoverDirection": [1, "popover-direction"],
217
+ "popoverMaxHeight": [2, "popover-max-height"],
218
+ "popoverMinHeight": [2, "popover-min-height"],
219
+ "theme": [513],
220
+ "optionCount": [32],
221
+ "closePopover": [64],
222
+ "openPopover": [64],
223
+ "selectOption": [64]
224
+ }, [[0, "focus", "delegateFocus"], [0, "popoverStateChanged", "popoverStateHandler"]]]);
225
+ function defineCustomElement() {
226
+ if (typeof customElements === "undefined") {
227
+ return;
228
+ }
229
+ const components = ["q2-tag", "click-elsewhere", "q2-icon", "q2-option-list", "q2-popover"];
230
+ components.forEach(tagName => { switch (tagName) {
231
+ case "q2-tag":
232
+ if (!customElements.get(tagName)) {
233
+ customElements.define(tagName, Q2Tag);
234
+ }
235
+ break;
236
+ case "click-elsewhere":
237
+ if (!customElements.get(tagName)) {
238
+ defineCustomElement$4();
239
+ }
240
+ break;
241
+ case "q2-icon":
242
+ if (!customElements.get(tagName)) {
243
+ defineCustomElement$3();
244
+ }
245
+ break;
246
+ case "q2-option-list":
247
+ if (!customElements.get(tagName)) {
248
+ defineCustomElement$2();
249
+ }
250
+ break;
251
+ case "q2-popover":
252
+ if (!customElements.get(tagName)) {
253
+ defineCustomElement$1();
254
+ }
255
+ break;
256
+ } });
257
+ }
205
258
 
206
- export { Q2Tag as q2_tag };
207
- //# sourceMappingURL=q2-tag.entry.js.map
259
+ export { Q2Tag as Q, defineCustomElement as d };
260
+ //# sourceMappingURL=q2-tag2.js.map
208
261
 
209
- //# sourceMappingURL=q2-tag.entry.js.map
262
+ //# sourceMappingURL=q2-tag2.js.map
@@ -0,0 +1 @@
1
+ {"file":"q2-tag2.js","mappings":"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","names":["__stencil_proxyCustomElement"],"sources":["src/components/q2-tag/q2-tag.scss?tag=q2-tag&encapsulation=shadow","src/components/q2-tag/q2-tag.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n\n:host {\n display: inline-block;\n position: relative;\n line-height: 0;\n}\n\n:host(:not(:last-child)) {\n margin-inline-end: var-list(var-prefixer(tag-margin), --app-scale-2x, 10px);\n}\n\n.tag-wrapper {\n --comp-tag-btn-size: #{var-list(var-prefixer(tag-btn-size), --app-scale-6x, 30px)};\n --comp-tag-background: #{var-list(var-prefixer(tag-background), --t-gray-13, #e6e6e6)};\n --comp-tag-color: #{var-list(var-prefixer(tag-color), --t-gray-3, #262626)};\n --comp-tag-border-color: #{var-list(--tct-tag-border-color, transparent)};\n background: var(--comp-tag-background);\n color: var(--comp-tag-color);\n border-radius: var-list(var-prefixer(tag-border-radius), --app-border-radius-1, 4px);\n border-width: var-list(--tct-tag-border-width, 0);\n border-style: var-list(--tct-tag-border-style, 0);\n border-color: var(--comp-tag-border-color);\n font-size: var(--tct-tag-font-size, inherit);\n font-weight: var(--tct-tag-font-weight, inherit);\n position: relative;\n\n :host([theme='primary']) & {\n --comp-tag-background: #{var-list(--tct-tag-primary-background, --t-primary, #0079c1)};\n --comp-tag-color: #{var-list(--tct-tag-primary-font-color, --t-primary-text, #ffffff)};\n --comp-tag-border-color: #{var-list(--tct-tag-primary-border-color, --t-primary, #0079c1)};\n }\n\n :host([theme='secondary']) & {\n --comp-tag-background: #{var-list(--tct-tag-secondary-background, --t-secondary, #b3c2cc)};\n --comp-tag-color: #{var-list(--tct-tag-secondary-font-color, --t-secondary-text, #141414)};\n --comp-tag-border-color: #{var-list(--tct-tag-secondary-border-color, --t-secondary, #b3c2cc)};\n }\n\n :host([theme='tertiary']) & {\n --comp-tag-background: #{var-list(--tct-tag-tertiary-background, --t-tertiary, #e8f5fc)};\n --comp-tag-color: #{var-list(--tct-tag-tertiary-font-color, --t-tertiary-text, #141414)};\n --comp-tag-border-color: #{var-list(--tct-tag-tertiary-border-color, --t-tertiary, #e8f5fc)};\n }\n\n &:focus-visible {\n box-shadow: var-list(--tct-tag-focus-visible-box-shadow, --const-double-focus-ring);\n }\n}\n\n.tag {\n display: flex;\n align-items: center;\n width: max-content;\n gap: 6px;\n height: var-list(var-prefixer(tag-height), --app-scale-6x, 30px);\n line-height: var-list(var-prefixer(tag-height), --app-scale-6x, 30px);\n padding-inline: var-list(var-prefixer(tag-padding-inline), --app-scale-3x, 15px);\n\n ::slotted(q2-icon[slot='decorator']) {\n --tct-icon-size: 1em;\n --tct-icon-stroke-primary: var(--tct-tag-decorator-icon-primary-stroke);\n --tct-icon-stroke-secondary: var(--tct-tag-decorator-icon-secondary-stroke);\n }\n\n :host([theme=\"primary\"]) & ::slotted(q2-icon[slot='decorator']) {\n --tct-icon-stroke-primary: var(--tct-tag-primary-decorator-icon-primary-stroke);\n --tct-icon-stroke-secondary: var(--tct-tag-primary-decorator-icon-secondary-stroke);\n }\n\n ::slotted(q2-badge[slot='decorator']) {\n --tct-badge-height: 1em;\n --tct-badge-line-height: 30px;\n }\n}\n\n.tag.has-options {\n padding-right: 6px;\n}\n\n.btn-wrapper {\n --comp-tag-clickable-size: #{var-list(var-prefixer(tag-clickable-size), 44px)};\n --comp-tag-btn-offset: calc(calc(calc(var(--comp-tag-clickable-size) - var(--comp-tag-btn-size)) / 2) * -1);\n --comp-tag-background: #{var-list(var-prefixer(tag-background), --t-gray-13, #e6e6e6)};\n height: var(--comp-tag-clickable-size);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n right: var(--comp-tag-btn-offset);\n top: var(--comp-tag-btn-offset);\n cursor: pointer;\n}\n\nbutton {\n height: var(--comp-tag-btn-size);\n stroke: var(--comp-tag-color);\n --tct-icon-stroke-primary: var(--comp-tag-color);\n cursor: pointer;\n border: 0;\n background: transparent;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n padding-right: 6px;\n --tct-icon-size: 18px;\n}\n","import {\n Component,\n State,\n Prop,\n h,\n ComponentInterface,\n Host,\n Listen,\n Method,\n Element,\n EventEmitter,\n Event,\n Fragment,\n} from '@stencil/core';\nimport { isEventFromElement, loc, overrideFocus, waitForNextPaint } from 'src/utils';\nimport mirrorEmit from '@/utils/mirror-emit';\nimport { shouldShowActionSheet, showActionSheetList } from 'src/utils/action-sheet';\n\n/**\n * @name Tag\n * @category Display\n * @summary Use for displaying metadata labels or categories on content.\n * @slot decorator - An optional slot that supports either an [Icon](https://tecton.q2developer.com/design-system/q2-icon) or [Badge](https://tecton.q2developer.com/design-system/q2-badge) to be displayed with the tag content.\n * This is **not** available when using [Multiple Options](https://tecton.q2developer.com/design-system/q2-tag#multiple-options).\n */\n@Component({ tag: 'q2-tag', shadow: true, styleUrl: 'q2-tag.scss' })\nexport class Q2Tag implements ComponentInterface {\n // #region Own Properties\n\n dropdownBtn: HTMLButtonElement;\n mutationObserver: MutationObserver;\n optionList: HTMLQ2OptionListElement;\n popoverElement: HTMLQ2PopoverElement;\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n optionCount: number;\n\n // #endregion\n // #region Public Property API\n\n /**\n * Instructs the component to use the action sheet workflow for displaying its options.\n *\n * For more information, see [Action Sheets](https://tecton.q2developer.com/guides/action-sheets/).\n */\n @Prop()\n hoist: boolean = !!window.Tecton?.useActionSheets;\n\n /**\n * The text that populates the label.\n * @localizable\n */\n @Prop({ reflect: true })\n label: string;\n\n /**\n * Determine whether the popover is open or closed.\n *\n * @readonly\n */\n @Prop({ reflect: true, mutable: true })\n open: boolean;\n\n /** Determines the label that is applied to the option list for accessibility purposes. */\n @Prop()\n optionListLabel: string = 'options';\n\n /** Aligns the popover dropdown to the left or right side of the input field. */\n @Prop({ mutable: true })\n popoverAlignment: 'left' | 'right' = 'right';\n\n /**\n * Force the direction of the popover dropdown when it opens.\n * If no value is passed, the component will auto-detect the direction based on available space.\n */\n @Prop()\n popoverDirection: 'up' | 'down';\n\n /**\n * Force the maximum height of the popover. This value will be interpreted as pixels.\n * If no value is passed, or the value exceeds available space, the component will auto-detect the maximum height based on available space.\n */\n @Prop()\n popoverMaxHeight: number;\n\n /** @deprecated */\n @Prop()\n popoverMinHeight: number;\n\n /** The color of the element. */\n @Prop({ reflect: true })\n theme: 'primary' | 'secondary' | 'tertiary';\n\n // #endregion\n // #region Events\n\n /**\n * Emitted when a provided option is clicked.\n *\n * Requires at least one option to be provided.\n * @deprecated Use 'tctClick' instead\n */\n @Event()\n click: EventEmitter<{ value: string }>;\n\n /**\n * Emitted when a provided option is clicked.\n *\n * Requires at least one option to be provided.\n */\n @Event()\n tctClick: EventEmitter<{ value: string }>;\n\n // #endregion\n // #region Component Lifecycle Events\n\n disconnectedCallback() {\n this.mutationObserver?.disconnect();\n this.mutationObserver = null;\n }\n\n componentWillLoad() {\n this.initMutationObserver();\n this.determineOptionCount();\n }\n\n componentDidLoad(): void {\n overrideFocus(this.hostElement);\n this.filterSlottedElements();\n }\n\n // #endregion\n // #region Listeners\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n if (!this.optionCount) return;\n this.dropdownBtn.focus();\n }\n\n @Listen('popoverStateChanged')\n popoverStateHandler({ detail: { open } }: CustomEvent<{ open: boolean }>) {\n if (this.open !== open) this.open = open;\n if (open) return;\n this.optionList.setActiveElement(null);\n }\n\n // #endregion\n // #region Public Methods API\n\n /**\n * Emulates clicking the tag to close the popover when options are provided and the popover is open.\n * @testonly\n */\n @Method()\n async closePopover() {\n if (!this.optionCount || !this.open) return;\n this._togglePopover();\n }\n\n /**\n * Emulates clicking the tag to open the popover when options are provided and the popover is closed.\n * @testonly\n */\n @Method()\n async openPopover() {\n if (!this.optionCount || this.open) return;\n this._togglePopover();\n }\n\n /**\n * Emulates selecting an option matching the passed value.\n *\n * If the popover is closed, this will open it before selecting the option.\n *\n * If there are not options, or the passed value does not match any option's value, this method does nothing.\n * @testonly\n */\n @Method()\n async selectOption(value) {\n if (!this.optionCount) return;\n await this.openPopover();\n await waitForNextPaint();\n const allOptions = await this.optionList.getOptions();\n const desiredOption = allOptions.find(option => option.value === value);\n desiredOption?.click();\n }\n\n // #endregion\n // #region Local Methods\n\n _togglePopover() {\n const { dropdownBtn } = this;\n dropdownBtn?.click();\n dropdownBtn?.focus();\n dropdownBtn.dispatchEvent(new FocusEvent('focus'));\n }\n\n determineOptionCount = () => {\n const numberOfOptions = this.hostElement.querySelectorAll('q2-option').length;\n this.optionCount = numberOfOptions;\n };\n\n filterSlottedElements = () => {\n if (!('HTMLSlotElement' in window)) return;\n const slot: HTMLSlotElement = this.hostElement.shadowRoot.querySelector('slot[name=\"decorator\"]');\n const assignedElements = Array.from(slot?.assignedElements() || []);\n if (!assignedElements.length) return;\n\n const approvedElements = ['Q2-ICON', 'Q2-BADGE'];\n assignedElements.forEach((element, index) => {\n if (!approvedElements.includes(element.tagName) || index > 0) {\n element.remove();\n }\n });\n };\n\n handleButtonFocusout = async (event: FocusEvent) => {\n const relatedTarget = event.relatedTarget as HTMLElement;\n if (this.popoverElement?.contains(relatedTarget)) return;\n if (this.hostElement.contains(relatedTarget)) return;\n this.open = false;\n };\n\n handleChange = event => {\n event.stopPropagation();\n if (!this.optionCount) return;\n const { value } = event.detail;\n\n mirrorEmit(this, ['click', 'tctClick'], { value });\n };\n\n handleClick = async (event: MouseEvent) => {\n event.stopPropagation();\n this.popoverElement.controlElement = this.dropdownBtn;\n if (shouldShowActionSheet(this)) {\n const { value } = await showActionSheetList(this, event);\n this.dropdownBtn.focus();\n mirrorEmit(this, ['click', 'tctClick'], { value });\n } else {\n await this.popoverElement.toggle();\n }\n };\n\n handleKeydown = async (event: KeyboardEvent) => {\n const isTabMetaOrCtrl = event.metaKey || event.ctrlKey || event.key === 'Tab';\n if (isTabMetaOrCtrl) return;\n\n event.preventDefault();\n this.popoverElement.controlElement = this.dropdownBtn;\n if (shouldShowActionSheet(this, event)) {\n const { value } = await showActionSheetList(this, event);\n this.dropdownBtn.focus();\n mirrorEmit(this, ['click', 'tctClick'], { value });\n } else {\n this.optionList.handleExternalKeydown(event);\n }\n };\n\n handleWrapperClick = () => {\n this.dropdownBtn.focus();\n this.dropdownBtn.click();\n };\n\n initMutationObserver = () => {\n if (!('MutationObserver' in window)) return;\n const observer = new MutationObserver(this.onMutationObserved);\n observer.observe(this.hostElement, { childList: true, attributes: true });\n this.mutationObserver = observer;\n };\n\n onClickElsewhere = (event: CustomEvent) => {\n const target = event.target as HTMLClickElsewhereElement;\n if (target.localName === 'click-elsewhere') {\n event.stopPropagation();\n const { popoverElement } = this;\n if (!popoverElement) return;\n popoverElement.open = false;\n }\n };\n\n onMutationObserved = () => {\n this.determineOptionCount();\n this.filterSlottedElements();\n };\n\n // #endregion\n // #region Render Methods\n\n renderHiddenElement() {\n return (\n <div\n id=\"option-description\"\n class=\"sr\"\n aria-hidden=\"true\"\n >\n {loc('tecton.element.optionList.optionCount', [this.optionCount])}\n </div>\n );\n }\n\n render() {\n const { open } = this;\n const wrapperClassNames = ['tag'];\n if (this.optionCount) wrapperClassNames.push('has-options');\n const shouldShowOptions = this.optionCount > 0;\n\n return (\n <Host>\n <click-elsewhere onChange={this.onClickElsewhere}>\n {shouldShowOptions ? (\n <Fragment>\n <div\n class=\"btn-wrapper\"\n onClick={this.handleWrapperClick}\n >\n <button\n class=\"tag-wrapper\"\n ref={el => (this.dropdownBtn = el)}\n test-id=\"btn-control\"\n type=\"button\"\n role=\"combobox\"\n onClick={this.handleClick}\n onKeyDown={this.handleKeydown}\n onFocusout={this.handleButtonFocusout}\n aria-controls=\"option-list\"\n aria-expanded={open ? 'true' : 'false'}\n aria-describedby=\"option-description\"\n aria-label={loc(this.label)}\n >\n <div class={wrapperClassNames.join(' ')}>{loc(this.label)}</div>\n <q2-icon type=\"options\"></q2-icon>\n </button>\n </div>\n {this.renderHiddenElement()}\n </Fragment>\n ) : (\n <div\n class=\"tag-wrapper\"\n onClick={e => e.stopPropagation()}\n >\n <div class={wrapperClassNames.join(' ')}>\n <slot name=\"decorator\" />\n {loc(this.label)}\n </div>\n </div>\n )}\n\n {shouldShowOptions && (\n <q2-popover\n ref={el => (this.popoverElement = el)}\n controlElement={this.dropdownBtn}\n open={this.open}\n maxHeight={this.popoverMaxHeight}\n minHeight={this.popoverMinHeight}\n direction={this.popoverDirection}\n align={this.popoverAlignment}\n >\n <q2-option-list\n id=\"option-list\"\n ref={el => (this.optionList = el)}\n onChange={this.handleChange}\n type=\"menu\"\n align=\"right\"\n label={loc('tecton.element.optionList.label', [this.optionListLabel])}\n no-select\n >\n <slot />\n </q2-option-list>\n </q2-popover>\n )}\n </click-elsewhere>\n </Host>\n );\n }\n\n // #endregion\n}\n"],"version":3}
@@ -3,7 +3,7 @@ import { f as debounce, c as createGuid, s as setMessageHeight, o as overrideFoc
3
3
  import { m as mirrorEmit } from './mirror-emit.js';
4
4
  import { d as defineCustomElement$2 } from './q2-icon2.js';
5
5
 
6
- const q2TextareaCss = "*{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}:host{--comp-default-textarea-margin:var(--tct-textarea-margin-top, var(--t-textarea-margin-top, var(--app-scale-5x, 25px))) 0 var(--tct-textarea-margin-bottom, var(--t-textarea-margin-bottom, var(--app-scale-5x, 25px)));display:block;margin:var(--tct-textarea-margin, var(--comp-default-textarea-margin));font-size:var(--tct-textarea-font-size, var(--t-textarea-font-size, var(--app-font-size, inherit)));font-weight:var(--tct-textarea-font-weight, var(--t-textarea-font-weight, 400))}:host([hidden]){display:none}label{--comp-label-padding:var(--tct-textarea-label-padding, 0 var(--tct-textarea-label-padding-right, var(--t-textarea-label-padding-right, 0)) 0 var(--tct-textarea-label-padding-left, var(--t-textarea-label-padding-left, 0)));--comp-label-margin:var(--tct-textarea-label-margin, var(--tct-textarea-label-margin-top, var(--t-textarea-label-margin-top, 0)) 0 var(--tct-textarea-label-margin-bottom, var(--t-textarea-label-margin-bottom, var(--tct-scale-1x, var(--app-scale-1x, 5px)))));display:block;padding:var(--comp-label-padding);margin:var(--comp-label-margin);color:var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit));font-size:var(--tct-textarea-label-font-size, var(--t-textarea-label-font-size, inherit));font-weight:var(--tct-textarea-label-font-weight, var(--t-textarea-label-font-weight, 600));text-transform:var(--tct-textarea-label-text-transform, var(--t-textarea-label-text-transform, none));letter-spacing:var(--tct-textarea-label-letter-spacing, var(--t-textarea-label-letter-spacing, inherit));transition:color var(--tct-textarea-tween, var(--t-textarea-tween, var(--tct-tween-2, var(--app-tween-2, 0.4s ease))))}.has-error label{color:var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-label-font-color, inherit)))}:hover label{color:var(--tct-textarea-hover-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit)))}.has-error :hover label{color:var(--tct-textarea-error-hover-label-font-color, var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-hover-label-font-color, var(--tct-textarea-label-font-color, inherit)))))}:host(:focus-within) label{color:var(--tct-textarea-focus-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit)))}:host(:focus-within) .has-error label{color:var(--tct-textarea-error-focus-label-font-color, var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-focus-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit))))))}.optional-tag{--comp-label-optional-margin:var(--tct-textarea-label-optional-margin, 0 0 0 var(--tct-textarea-label-optional-margin-left, var(--t-textarea-label-optional-margin-left, var(--tct-scale-1x, var(--app-scale-1x, 5px)))));margin:var(--comp-label-optional-margin);color:var(--tct-textarea-label-optional-font-color, var(--t-textarea-label-optional-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77)))));font-size:var(--tct-textarea-label-optional-font-size, var(--t-textarea-label-optional-font-size, 12px));font-weight:var(--tct-textarea-label-optional-font-weight, var(--t-textarea-label-optional-font-weight, 400))}.input-container{min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));height:100%;--comp-default-border-radius:var(--tct-border-radius-1, var(--app-border-radius-1, 4px));--comp-textarea-border-top-left-radius:var(--tct-textarea-border-top-left-radius, var(--t-textarea-border-top-left-radius, var(--comp-default-border-radius)));--comp-textarea-border-top-right-radius:var(--tct-textarea-border-top-right-radius, var(--t-textarea-border-top-right-radius, var(--comp-default-border-radius)));--comp-textarea-border-bottom-right-radius:var(--tct-textarea-border-bottom-right-radius, var(--t-textarea-border-bottom-right-radius, var(--comp-default-border-radius)));--comp-textarea-border-bottom-left-radius:var(--tct-textarea-border-bottom-left-radius, var(--t-textarea-border-bottom-left-radius, var(--comp-default-border-radius)));--comp-textarea-border-radius:var(--comp-textarea-border-top-left-radius)\n var(--comp-textarea-border-top-right-radius) var(--comp-textarea-border-bottom-right-radius)\n var(--comp-textarea-border-bottom-left-radius);--comp-textarea-border-width:var(--tct-textarea-border-top-width, var(--t-textarea-border-top-width, 1px)) var(--tct-textarea-border-right-width, var(--t-textarea-border-right-width, 1px)) var(--tct-textarea-border-bottom-width, var(--t-textarea-border-bottom-width, 1px)) var(--tct-textarea-border-left-width, var(--t-textarea-border-left-width, 1px));--comp-textarea-icon-clearance:34px}:host([disabled]) .input-container{cursor:not-allowed;opacity:var(--tct-textarea-disabled-opacity, var(--t-textarea-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))));backdrop-filter:var(--tct-textarea-disabled-backdrop-filter, var(--comp-input-backdrop-filter))}.content-container{--comp-textarea-min-height:46px;--comp-textarea-min-width:150px;position:relative;display:inline-block;min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));min-width:var(--tct-textarea-min-width, var(--t-textarea-min-width, var(--comp-textarea-min-width)))}:host(:not([cols])) .content-container{width:100%}textarea{--comp-textarea-padding:var(--tct-textarea-padding, var(--tct-textarea-vertical-padding, var(--t-textarea-vertical-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px)))) var(--tct-textarea-horizontal-padding, var(--t-textarea-horizontal-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px)))));--comp-textarea-backdrop-filter:var(--tct-textarea-backdrop-filter, none);--comp-textarea-border-color:var(--tct-textarea-border-color, var(--t-textarea-border-color, var(--tct-input-border-color, var(--t-input-border-color, var(--t-a11y-gray-color-AA, #949494)))));--comp-textarea-background:var(--tct-textarea-background, var(--tct-textarea-bg, var(--t-textarea-bg, var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--t-gray-14, #fcfcfd)))))));--comp-textarea-hover-ring-color:var(--tct-textarea-hover-ring-color);--comp-textarea-hover-ring:0 0 0 2px var(--t-base), 0 0 0 4px var(--comp-textarea-hover-ring-color), var(--tct-textarea-hover-box-shadow, 0 0 transparent);font-size:var(--tct-textarea-font-size, inherit);resize:none;height:100%;-webkit-appearance:none;appearance:none;display:block;box-sizing:border-box;min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));padding:var(--comp-textarea-padding);backdrop-filter:var(--comp-textarea-backdrop-filter);background:var(--comp-textarea-background);color:var(--tct-textarea-font-color, var(--t-textarea-font-color, var(--t-input-font-color, inherit)));border-width:var(--comp-textarea-border-width);border-style:solid;border-color:var(--comp-textarea-border-color);border-radius:var(--comp-textarea-border-radius);box-shadow:var(--tct-textarea-box-shadow, var(--t-textarea-box-shadow, none));scrollbar-width:thin;scrollbar-color:var(--t-a11y-gray-color) transparent;--comp-textarea-tween:var(--tct-textarea-tween, var(--t-textarea-tween, var(--tct-tween-2, var(--app-tween-2, 0.4s ease))));transition:background var(--comp-textarea-tween), backdrop-filter var(--comp-textarea-tween), border-width var(--comp-textarea-tween), border-color var(--comp-textarea-tween), box-shadow var(--comp-textarea-tween)}textarea::-webkit-scrollbar{width:var(--app-scale-1x);height:var(--app-scale-1x);margin:var(--app-scale-1x)}textarea::-webkit-scrollbar-thumb{background:var(--t-a11y-gray-color);border-radius:2px}textarea::-webkit-scrollbar-track{background:transparent}textarea:not([cols]){width:100%}.has-error textarea{padding-right:var(--comp-textarea-icon-clearance);backdrop-filter:var(--tct-textarea-error-backdrop-filter, var(--comp-textarea-backdrop-filter));border-color:var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)));background:var(--tct-textarea-error-background, var(--comp-textarea-background))}textarea:hover{border-color:var(--tct-textarea-hover-border-color, var(--comp-textarea-border-color));backdrop-filter:var(--tct-textarea-hover-backdrop-filter, var(--comp-textarea-backdrop-filter));background:var(--tct-textarea-hover-background, var(--comp-textarea-background));box-shadow:var(--tct-textarea-hover-box-shadow, var(--comp-textarea-hover-ring))}.has-error textarea:hover{border-color:var(--tct-textarea-error-hover-border-color, var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a))));backdrop-filter:var(--tct-textarea-error-hover-backdrop-filter, var(--tct-textarea-error-backdrop-filter, var(--tct-textarea-hover-backdrop-filter, var(--comp-textarea-backdrop-filter))));background:var(--tct-textarea-error-hover-background, var(--tct-textarea-error-background, var(--comp-textarea-background)));box-shadow:var(--tct-textarea-error-hover-box-shadow, var(--tct-textarea-error-box-shadow, var(--tct-textarea-hover-box-shadow, var(--comp-textarea-hover-ring))))}textarea:focus{border-color:var(--tct-textarea-focus-border-color, var(--comp-textarea-border-color));backdrop-filter:var(--tct-textarea-focus-backdrop-filter, var(--comp-textarea-backdrop-filter));background:var(--tct-textarea-focus-background, var(--comp-textarea-background))}.has-error textarea:focus{border-color:var(--tct-textarea-error-focus-border-color, var(--tct-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)));backdrop-filter:var(--tct-textarea-error-focus-backdrop-filter, var(--tct-textarea-error-backdrop-filter, var(--tct-textarea-focus-backdrop-filter, var(--comp-textarea-backdrop-filter))));background:var(--tct-textarea-error-focus-background, var(--tct-textarea-error-background, var(--tct-textarea-focus-background, var(--comp-textarea-background))));box-shadow:var(--tct-textarea-error-focus-box-shadow, var(--tct-textarea-error-box-shadow, var(--tct-textarea-focus-box-shadow, var(--const-double-focus-ring))))}textarea:focus-visible{box-shadow:var(--tct-textarea-focus-box-shadow, var(--const-double-focus-ring))}textarea::placeholder{color:var(--tct-textarea-placeholder-font-color, var(--t-textarea-placeholder-font-color, var(--t-input-placeholder-font-color, var(--tct-gray-7, var(--app-gray-7, var(--tct-gray-d1, var(--app-gray-d1, #666666)))))))}textarea[disabled]{cursor:not-allowed}textarea.resize-vertical-auto{overflow:hidden}.has-error textarea{padding-right:var(--comp-textarea-icon-clearance)}.has-error textarea:not(:focus){border-color:var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)))}q2-icon{margin-top:calc(var(--tct-textarea-border-top-width, var(--t-textarea-border-top-width, 1px)) / 2);margin-bottom:calc(var(--tct-textarea-border-bottom-width, var(--t-textarea-border-bottom-width, 1px)) / 2);pointer-events:none;position:absolute;top:var(--tct-textarea-vertical-padding, var(--t-textarea-vertical-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px))));color:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--app-gray-9, var(--tct-gray, var(--app-gray, #999999)))));right:0;margin-right:var(--tct-scale-2x, var(--app-scale-2x, 10px));--tct-icon-stroke-primary:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))));--t-icon-stroke-primary:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))))}.icon-error{color:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));--tct-icon-stroke-primary:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));--t-icon-stroke-primary:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a))}.messages-container{height:0px;overflow:hidden;background:var(--tct-message-background, var(--tct-message-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l3, var(--app-gray-l3, #f2f2f2))))));box-shadow:var(--tct-textarea-message-box-shadow, var(--t-textarea-message-box-shadow, var(--tct-box-shadow-1, var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14)))));transition:height var(--tct-textarea-messages-tween, var(--t-textarea-messages-tween, var(--tct-tween-1, var(--app-tween-1, 0.2s ease))));margin-top:var(--tct-textarea-messages-margin-top, 2px);z-index:1;position:absolute;width:100%;color:var(--tct-textarea-messages-font-color, var(--t-textarea-messages-font-color, inherit))}.max-length{color:var(--tct-textarea-max-length-color, var(--t-textarea-max-length-color, var(--t-textA, rgba(77, 77, 77, 0.77))));font-size:var(--tct-textarea-max-length-font-size, var(--t-textarea-max-length-font-size, var(--tct-font-size-small, var(--app-font-size-small, 12px))));position:absolute;right:0}.btn-resize{--tct-textarea-resize-icon-padding:calc(\n calc(\n var(--tct-textarea-resize-btn-width, var(--t-textarea-resize-btn-width, var(--tct-btn-icon-width, 44px))) - var(--tct-textarea-resize-icon-size, var(--t-textarea-resize-icon-size, 12px))\n ) / 2\n );width:var(--tct-textarea-resize-btn-width, var(--t-textarea-resize-btn-width, var(--tct-btn-icon-width, 44px)));height:var(--tct-textarea-resize-btn-height, var(--t-textarea-resize-btn-height, var(--tct-btn-icon-height, 44px)));background:var(--tct-textarea-resize-btn-background, var(--t-textarea-resize-btn-background, transparent));stroke:var(--tct-textarea-resize-color, var(--t-textarea-resize-color, var(--t-textA, rgba(77, 77, 77, 0.77))));stroke-width:var(--tct-textarea-resize-stroke-width, var(--t-textarea-resize-stroke-width, 1));border:0;position:absolute;right:var(--tct-textarea-resize-right, calc(var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding)) * -1 + 2px));bottom:var(--tct-textarea-resize-bottom, calc(var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding)) * -1 + 2px));display:block;padding:var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding));font-size:0}.btn-resize:focus{outline:none;box-shadow:none}:host([resize=both]) .btn-resize{cursor:se-resize}:host([resize=vertical]) .btn-resize,:host([resize=vertical-auto]) .btn-resize{cursor:s-resize}:host([resize=horizontal]) .btn-resize{cursor:e-resize}";
6
+ const q2TextareaCss = "*{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}:host{--comp-default-textarea-margin:var(--tct-textarea-margin-top, var(--t-textarea-margin-top, var(--app-scale-5x, 25px))) 0 var(--tct-textarea-margin-bottom, var(--t-textarea-margin-bottom, var(--app-scale-5x, 25px)));display:block;margin:var(--tct-textarea-margin, var(--comp-default-textarea-margin));font-size:var(--tct-textarea-font-size, var(--t-textarea-font-size, var(--app-font-size, inherit)));font-weight:var(--tct-textarea-font-weight, var(--t-textarea-font-weight, 400))}:host([hidden]){display:none}label{--comp-label-padding:var(--tct-textarea-label-padding, 0 var(--tct-textarea-label-padding-right, var(--t-textarea-label-padding-right, 0)) 0 var(--tct-textarea-label-padding-left, var(--t-textarea-label-padding-left, 0)));--comp-label-margin:var(--tct-textarea-label-margin, var(--tct-textarea-label-margin-top, var(--t-textarea-label-margin-top, 0)) 0 var(--tct-textarea-label-margin-bottom, var(--t-textarea-label-margin-bottom, var(--tct-scale-1x, var(--app-scale-1x, 5px)))));display:block;padding:var(--comp-label-padding);margin:var(--comp-label-margin);color:var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit));font-size:var(--tct-textarea-label-font-size, var(--t-textarea-label-font-size, inherit));font-weight:var(--tct-textarea-label-font-weight, var(--t-textarea-label-font-weight, 600));text-transform:var(--tct-textarea-label-text-transform, var(--t-textarea-label-text-transform, none));letter-spacing:var(--tct-textarea-label-letter-spacing, var(--t-textarea-label-letter-spacing, inherit));transition:color var(--tct-textarea-tween, var(--t-textarea-tween, var(--tct-tween-2, var(--app-tween-2, 0.4s ease))))}.has-error label{color:var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-label-font-color, inherit)))}:hover label{color:var(--tct-textarea-hover-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit)))}.has-error :hover label{color:var(--tct-textarea-error-hover-label-font-color, var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-hover-label-font-color, var(--tct-textarea-label-font-color, inherit)))))}:host(:focus-within) label{color:var(--tct-textarea-focus-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit)))}:host(:focus-within) .has-error label{color:var(--tct-textarea-error-focus-label-font-color, var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-focus-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit))))))}.optional-tag{--comp-label-optional-margin:var(--tct-textarea-label-optional-margin, 0 0 0 var(--tct-textarea-label-optional-margin-left, var(--t-textarea-label-optional-margin-left, var(--tct-scale-1x, var(--app-scale-1x, 5px)))));margin:var(--comp-label-optional-margin);color:var(--tct-textarea-label-optional-font-color, var(--t-textarea-label-optional-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77)))));font-size:var(--tct-textarea-label-optional-font-size, var(--t-textarea-label-optional-font-size, 12px));font-weight:var(--tct-textarea-label-optional-font-weight, var(--t-textarea-label-optional-font-weight, 400))}.input-container{min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));height:100%;--comp-default-border-radius:var(--tct-border-radius-1, var(--app-border-radius-1, 4px));--comp-textarea-border-top-left-radius:var(--tct-textarea-border-top-left-radius, var(--t-textarea-border-top-left-radius, var(--comp-default-border-radius)));--comp-textarea-border-top-right-radius:var(--tct-textarea-border-top-right-radius, var(--t-textarea-border-top-right-radius, var(--comp-default-border-radius)));--comp-textarea-border-bottom-right-radius:var(--tct-textarea-border-bottom-right-radius, var(--t-textarea-border-bottom-right-radius, var(--comp-default-border-radius)));--comp-textarea-border-bottom-left-radius:var(--tct-textarea-border-bottom-left-radius, var(--t-textarea-border-bottom-left-radius, var(--comp-default-border-radius)));--comp-textarea-border-radius:var(--comp-textarea-border-top-left-radius)\n var(--comp-textarea-border-top-right-radius) var(--comp-textarea-border-bottom-right-radius)\n var(--comp-textarea-border-bottom-left-radius);--comp-textarea-border-width:var(--tct-textarea-border-top-width, var(--t-textarea-border-top-width, 1px)) var(--tct-textarea-border-right-width, var(--t-textarea-border-right-width, 1px)) var(--tct-textarea-border-bottom-width, var(--t-textarea-border-bottom-width, 1px)) var(--tct-textarea-border-left-width, var(--t-textarea-border-left-width, 1px));--comp-textarea-icon-clearance:34px}:host([disabled]) .input-container{cursor:not-allowed;opacity:var(--tct-textarea-disabled-opacity, var(--t-textarea-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))));backdrop-filter:var(--tct-textarea-disabled-backdrop-filter, var(--comp-input-backdrop-filter))}.content-container{--comp-textarea-min-height:46px;--comp-textarea-min-width:150px;position:relative;display:inline-block;min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));min-width:var(--tct-textarea-min-width, var(--t-textarea-min-width, var(--comp-textarea-min-width)))}:host(:not([cols])) .content-container{width:100%}textarea{--comp-textarea-padding:var(--tct-textarea-padding, var(--tct-textarea-vertical-padding, var(--t-textarea-vertical-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px)))) var(--tct-textarea-horizontal-padding, var(--t-textarea-horizontal-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px)))));--comp-textarea-backdrop-filter:var(--tct-textarea-backdrop-filter, none);--comp-textarea-border-color:var(--tct-textarea-border-color, var(--t-textarea-border-color, var(--tct-input-border-color, var(--t-input-border-color, var(--t-a11y-gray-color-AA, #949494)))));--comp-textarea-background:var(--tct-textarea-background, var(--tct-textarea-bg, var(--t-textarea-bg, var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--t-gray-14, #fcfcfd)))))));--comp-textarea-hover-ring-color:var(--tct-textarea-hover-ring-color);--comp-textarea-hover-ring:0 0 0 2px var(--t-base), 0 0 0 4px var(--comp-textarea-hover-ring-color), var(--tct-textarea-hover-box-shadow, 0 0 transparent);font-size:var(--tct-textarea-font-size, inherit);resize:none;height:100%;-webkit-appearance:none;appearance:none;display:block;box-sizing:border-box;min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));padding:var(--comp-textarea-padding);backdrop-filter:var(--comp-textarea-backdrop-filter);background:var(--comp-textarea-background);color:var(--tct-textarea-font-color, var(--t-textarea-font-color, var(--t-input-font-color, inherit)));border-width:var(--comp-textarea-border-width);border-style:solid;border-color:var(--comp-textarea-border-color);border-radius:var(--comp-textarea-border-radius);box-shadow:var(--tct-textarea-box-shadow, var(--t-textarea-box-shadow, none));scrollbar-width:thin;scrollbar-color:var(--t-a11y-gray-color) transparent;--comp-textarea-tween:var(--tct-textarea-tween, var(--t-textarea-tween, var(--tct-tween-2, var(--app-tween-2, 0.4s ease))));transition:background var(--comp-textarea-tween), backdrop-filter var(--comp-textarea-tween), border-width var(--comp-textarea-tween), border-color var(--comp-textarea-tween), box-shadow var(--comp-textarea-tween)}textarea::-webkit-scrollbar{width:var(--app-scale-1x);height:var(--app-scale-1x);margin:var(--app-scale-1x)}textarea::-webkit-scrollbar-thumb{background:var(--t-a11y-gray-color);border-radius:2px}textarea::-webkit-scrollbar-track{background:transparent}textarea:not([cols]){width:100%}.has-error textarea{padding-right:var(--comp-textarea-icon-clearance);backdrop-filter:var(--tct-textarea-error-backdrop-filter, var(--comp-textarea-backdrop-filter));border-color:var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)));background:var(--tct-textarea-error-background, var(--comp-textarea-background));box-shadow:var(--tct-textarea-error-box-shadow, var(--tct-textarea-box-shadow, var(--t-textarea-box-shadow, none)))}textarea:hover{border-color:var(--tct-textarea-hover-border-color, var(--comp-textarea-border-color));backdrop-filter:var(--tct-textarea-hover-backdrop-filter, var(--comp-textarea-backdrop-filter));background:var(--tct-textarea-hover-background, var(--comp-textarea-background));box-shadow:var(--tct-textarea-hover-box-shadow, var(--comp-textarea-hover-ring))}.has-error textarea:hover{border-color:var(--tct-textarea-error-hover-border-color, var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a))));backdrop-filter:var(--tct-textarea-error-hover-backdrop-filter, var(--tct-textarea-error-backdrop-filter, var(--tct-textarea-hover-backdrop-filter, var(--comp-textarea-backdrop-filter))));background:var(--tct-textarea-error-hover-background, var(--tct-textarea-error-background, var(--comp-textarea-background)));box-shadow:var(--tct-textarea-error-hover-box-shadow, var(--tct-textarea-error-box-shadow, var(--tct-textarea-hover-box-shadow, var(--comp-textarea-hover-ring))))}textarea:focus{border-color:var(--tct-textarea-focus-border-color, var(--comp-textarea-border-color));backdrop-filter:var(--tct-textarea-focus-backdrop-filter, var(--comp-textarea-backdrop-filter));background:var(--tct-textarea-focus-background, var(--comp-textarea-background))}.has-error textarea:focus{border-color:var(--tct-textarea-error-focus-border-color, var(--tct-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)));backdrop-filter:var(--tct-textarea-error-focus-backdrop-filter, var(--tct-textarea-error-backdrop-filter, var(--tct-textarea-focus-backdrop-filter, var(--comp-textarea-backdrop-filter))));background:var(--tct-textarea-error-focus-background, var(--tct-textarea-error-background, var(--tct-textarea-focus-background, var(--comp-textarea-background))));box-shadow:var(--tct-textarea-error-focus-box-shadow, var(--tct-textarea-error-box-shadow, var(--tct-textarea-focus-box-shadow, var(--const-double-focus-ring))))}textarea:focus-visible{box-shadow:var(--tct-textarea-focus-box-shadow, var(--const-double-focus-ring))}textarea::placeholder{color:var(--tct-textarea-placeholder-font-color, var(--t-textarea-placeholder-font-color, var(--t-input-placeholder-font-color, var(--tct-gray-7, var(--app-gray-7, var(--tct-gray-d1, var(--app-gray-d1, #666666)))))))}textarea[disabled]{cursor:not-allowed}textarea.resize-vertical-auto{overflow:hidden}.has-error textarea{padding-right:var(--comp-textarea-icon-clearance)}.has-error textarea:not(:focus){border-color:var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)))}q2-icon{margin-top:calc(var(--tct-textarea-border-top-width, var(--t-textarea-border-top-width, 1px)) / 2);margin-bottom:calc(var(--tct-textarea-border-bottom-width, var(--t-textarea-border-bottom-width, 1px)) / 2);pointer-events:none;position:absolute;top:var(--tct-textarea-vertical-padding, var(--t-textarea-vertical-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px))));color:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--app-gray-9, var(--tct-gray, var(--app-gray, #999999)))));right:0;margin-right:var(--tct-scale-2x, var(--app-scale-2x, 10px));--tct-icon-stroke-primary:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))));--t-icon-stroke-primary:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))))}.icon-error{color:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));--tct-icon-stroke-primary:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));--t-icon-stroke-primary:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a))}.messages-container{height:0px;overflow:hidden;background:var(--tct-message-background, var(--tct-message-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l3, var(--app-gray-l3, #f2f2f2))))));box-shadow:var(--tct-textarea-message-box-shadow, var(--t-textarea-message-box-shadow, var(--tct-box-shadow-1, var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14)))));transition:height var(--tct-textarea-messages-tween, var(--t-textarea-messages-tween, var(--tct-tween-1, var(--app-tween-1, 0.2s ease))));margin-top:var(--tct-textarea-messages-margin-top, 2px);z-index:1;position:absolute;width:100%;color:var(--tct-textarea-messages-font-color, var(--t-textarea-messages-font-color, inherit))}.max-length{color:var(--tct-textarea-max-length-color, var(--t-textarea-max-length-color, var(--t-textA, rgba(77, 77, 77, 0.77))));font-size:var(--tct-textarea-max-length-font-size, var(--t-textarea-max-length-font-size, var(--tct-font-size-small, var(--app-font-size-small, 12px))));position:absolute;right:0}.btn-resize{--tct-textarea-resize-icon-padding:calc(\n calc(\n var(--tct-textarea-resize-btn-width, var(--t-textarea-resize-btn-width, var(--tct-btn-icon-width, 44px))) - var(--tct-textarea-resize-icon-size, var(--t-textarea-resize-icon-size, 12px))\n ) / 2\n );width:var(--tct-textarea-resize-btn-width, var(--t-textarea-resize-btn-width, var(--tct-btn-icon-width, 44px)));height:var(--tct-textarea-resize-btn-height, var(--t-textarea-resize-btn-height, var(--tct-btn-icon-height, 44px)));background:var(--tct-textarea-resize-btn-background, var(--t-textarea-resize-btn-background, transparent));stroke:var(--tct-textarea-resize-color, var(--t-textarea-resize-color, var(--t-textA, rgba(77, 77, 77, 0.77))));stroke-width:var(--tct-textarea-resize-stroke-width, var(--t-textarea-resize-stroke-width, 1));border:0;position:absolute;right:var(--tct-textarea-resize-right, calc(var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding)) * -1 + 2px));bottom:var(--tct-textarea-resize-bottom, calc(var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding)) * -1 + 2px));display:block;padding:var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding));font-size:0}.btn-resize:focus{outline:none;box-shadow:none}:host([resize=both]) .btn-resize{cursor:se-resize}:host([resize=vertical]) .btn-resize,:host([resize=vertical-auto]) .btn-resize{cursor:s-resize}:host([resize=horizontal]) .btn-resize{cursor:e-resize}";
7
7
 
8
8
  const Q2Textarea$1 = /*@__PURE__*/ proxyCustomElement(class Q2Textarea extends HTMLElement {
9
9
  constructor() {