q2-tecton-elements 1.51.1 → 1.52.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (613) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +16 -5
  2. package/dist/cjs/click-elsewhere_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/{index-9aa4a776.js → index-07285783.js} +86 -2
  4. package/dist/cjs/index-07285783.js.map +1 -0
  5. package/dist/cjs/{index-14c3693c.js → index-e7e68b1e.js} +40 -5
  6. package/dist/cjs/index-e7e68b1e.js.map +1 -0
  7. package/dist/cjs/loader.cjs.js +2 -2
  8. package/dist/cjs/q2-action-group.cjs.entry.js +2 -2
  9. package/dist/cjs/q2-action-sheet.cjs.entry.js +3 -3
  10. package/dist/cjs/q2-avatar.cjs.entry.js +2 -2
  11. package/dist/cjs/q2-badge_7.cjs.entry.js +49 -44
  12. package/dist/cjs/q2-badge_7.cjs.entry.js.map +1 -1
  13. package/dist/cjs/q2-calendar.cjs.entry.js +17 -20
  14. package/dist/cjs/q2-calendar.cjs.entry.js.map +1 -1
  15. package/dist/cjs/q2-card.cjs.entry.js +4 -2
  16. package/dist/cjs/q2-card.cjs.entry.js.map +1 -1
  17. package/dist/cjs/q2-carousel-pane.cjs.entry.js +4 -4
  18. package/dist/cjs/q2-carousel.cjs.entry.js +2 -2
  19. package/dist/cjs/q2-chart-area.cjs.entry.js +16 -3
  20. package/dist/cjs/q2-chart-area.cjs.entry.js.map +1 -1
  21. package/dist/cjs/q2-chart-bar.cjs.entry.js +3 -3
  22. package/dist/cjs/q2-chart-donut.cjs.entry.js +19 -3
  23. package/dist/cjs/q2-chart-donut.cjs.entry.js.map +1 -1
  24. package/dist/cjs/q2-checkbox-group.cjs.entry.js +6 -5
  25. package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
  26. package/dist/cjs/q2-checkbox.cjs.entry.js +2 -2
  27. package/dist/cjs/q2-currency.cjs.entry.js +14 -2
  28. package/dist/cjs/q2-currency.cjs.entry.js.map +1 -1
  29. package/dist/cjs/q2-data-table.cjs.entry.js +3 -3
  30. package/dist/cjs/q2-data-table.cjs.entry.js.map +1 -1
  31. package/dist/cjs/q2-detail.cjs.entry.js +3 -3
  32. package/dist/cjs/q2-dropdown-item.cjs.entry.js +12 -14
  33. package/dist/cjs/q2-dropdown-item.cjs.entry.js.map +1 -1
  34. package/dist/cjs/q2-dropdown.cjs.entry.js +7 -5
  35. package/dist/cjs/q2-dropdown.cjs.entry.js.map +1 -1
  36. package/dist/cjs/q2-editable-field.cjs.entry.js +3 -3
  37. package/dist/cjs/q2-example.cjs.entry.js +145 -0
  38. package/dist/cjs/q2-example.cjs.entry.js.map +1 -0
  39. package/dist/cjs/q2-formatted-text.cjs.entry.js +2 -2
  40. package/dist/cjs/q2-item.cjs.entry.js +3 -3
  41. package/dist/cjs/q2-legend.cjs.entry.js +2 -2
  42. package/dist/cjs/q2-link.cjs.entry.js +4 -4
  43. package/dist/cjs/q2-link.cjs.entry.js.map +1 -1
  44. package/dist/cjs/q2-list.cjs.entry.js +6 -7
  45. package/dist/cjs/q2-list.cjs.entry.js.map +1 -1
  46. package/dist/cjs/q2-loading-element.cjs.entry.js +2 -2
  47. package/dist/cjs/q2-loc.cjs.entry.js +52 -3
  48. package/dist/cjs/q2-loc.cjs.entry.js.map +1 -1
  49. package/dist/cjs/q2-message.cjs.entry.js +3 -3
  50. package/dist/cjs/q2-month-picker.cjs.entry.js +4 -4
  51. package/dist/cjs/q2-optgroup.cjs.entry.js +5 -4
  52. package/dist/cjs/q2-optgroup.cjs.entry.js.map +1 -1
  53. package/dist/cjs/q2-option-list.cjs.entry.js +2 -2
  54. package/dist/cjs/q2-option.cjs.entry.js +50 -33
  55. package/dist/cjs/q2-option.cjs.entry.js.map +1 -1
  56. package/dist/cjs/q2-pagination.cjs.entry.js +11 -7
  57. package/dist/cjs/q2-pagination.cjs.entry.js.map +1 -1
  58. package/dist/cjs/q2-pill.cjs.entry.js +19 -18
  59. package/dist/cjs/q2-pill.cjs.entry.js.map +1 -1
  60. package/dist/cjs/q2-radio-group.cjs.entry.js +5 -5
  61. package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
  62. package/dist/cjs/q2-radio.cjs.entry.js +3 -3
  63. package/dist/cjs/q2-relative-time.cjs.entry.js +3 -3
  64. package/dist/cjs/q2-resize-observer.cjs.entry.js +2 -2
  65. package/dist/cjs/q2-section.cjs.entry.js +8 -6
  66. package/dist/cjs/q2-section.cjs.entry.js.map +1 -1
  67. package/dist/cjs/q2-select.cjs.entry.js +6 -5
  68. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  69. package/dist/cjs/q2-stepper-pane.cjs.entry.js +5 -4
  70. package/dist/cjs/q2-stepper-pane.cjs.entry.js.map +1 -1
  71. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +16 -4
  72. package/dist/cjs/q2-stepper-vertical.cjs.entry.js.map +1 -1
  73. package/dist/cjs/q2-stepper.cjs.entry.js +6 -4
  74. package/dist/cjs/q2-stepper.cjs.entry.js.map +1 -1
  75. package/dist/cjs/q2-tag.cjs.entry.js +6 -4
  76. package/dist/cjs/q2-tag.cjs.entry.js.map +1 -1
  77. package/dist/cjs/q2-tecton-elements.cjs.js +2 -2
  78. package/dist/cjs/q2-textarea.cjs.entry.js +3 -3
  79. package/dist/cjs/q2-tooltip.cjs.entry.js +2 -2
  80. package/dist/cjs/{shapes-be198cc0.js → shapes-5d45fc11.js} +2 -2
  81. package/dist/cjs/{shapes-be198cc0.js.map → shapes-5d45fc11.js.map} +1 -1
  82. package/dist/cjs/tecton-tab-pane.cjs.entry.js +3 -3
  83. package/dist/collection/collection-manifest.json +1 -0
  84. package/dist/collection/components/q2-action-group/q2-action-group.js +1 -1
  85. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +1 -1
  86. package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
  87. package/dist/collection/components/q2-calendar/q2-calendar.js +16 -18
  88. package/dist/collection/components/q2-calendar/q2-calendar.js.map +1 -1
  89. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  90. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js +27 -0
  91. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js.map +1 -1
  92. package/dist/collection/components/q2-card/q2-card.js +2 -0
  93. package/dist/collection/components/q2-card/q2-card.js.map +1 -1
  94. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  95. package/dist/collection/components/q2-chart-area/q2-chart-area.js +42 -1
  96. package/dist/collection/components/q2-chart-area/q2-chart-area.js.map +1 -1
  97. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js +15 -0
  98. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js.map +1 -1
  99. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +1 -1
  100. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +41 -1
  101. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js.map +1 -1
  102. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js +11 -0
  103. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js.map +1 -1
  104. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.css +30 -23
  105. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js +4 -3
  106. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js.map +1 -1
  107. package/dist/collection/components/q2-currency/q2-currency.js +37 -1
  108. package/dist/collection/components/q2-currency/q2-currency.js.map +1 -1
  109. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js +34 -23
  110. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js.map +1 -1
  111. package/dist/collection/components/q2-data-table/q2-data-table.js +1 -1
  112. package/dist/collection/components/q2-data-table/q2-data-table.js.map +1 -1
  113. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js +6 -4
  114. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js.map +1 -1
  115. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  116. package/dist/collection/components/q2-dropdown/q2-dropdown.css +5 -0
  117. package/dist/collection/components/q2-dropdown/q2-dropdown.js +10 -4
  118. package/dist/collection/components/q2-dropdown/q2-dropdown.js.map +1 -1
  119. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js +59 -14
  120. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js.map +1 -1
  121. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.css +29 -11
  122. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js +9 -11
  123. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js.map +1 -1
  124. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js +108 -74
  125. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js.map +1 -1
  126. package/dist/collection/components/q2-editable-field/q2-editable-field.js +1 -1
  127. package/dist/collection/components/q2-example/q2-example.css +66 -0
  128. package/dist/collection/components/q2-example/q2-example.js +312 -0
  129. package/dist/collection/components/q2-example/q2-example.js.map +1 -0
  130. package/dist/collection/components/q2-example/test/q2-example.e2e.js +27 -0
  131. package/dist/collection/components/q2-example/test/q2-example.e2e.js.map +1 -0
  132. package/dist/collection/components/q2-example/test/q2-example.spec.js +126 -0
  133. package/dist/collection/components/q2-example/test/q2-example.spec.js.map +1 -0
  134. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +1 -1
  135. package/dist/collection/components/q2-input/formatting/alpha.spec.js +10 -0
  136. package/dist/collection/components/q2-input/formatting/alpha.spec.js.map +1 -0
  137. package/dist/collection/components/q2-input/formatting/alphanumeric.spec.js +7 -0
  138. package/dist/collection/components/q2-input/formatting/alphanumeric.spec.js.map +1 -0
  139. package/dist/collection/components/q2-input/formatting/currency.spec.js +20 -0
  140. package/dist/collection/components/q2-input/formatting/currency.spec.js.map +1 -0
  141. package/dist/collection/components/q2-input/formatting/date.js +1 -1
  142. package/dist/collection/components/q2-input/formatting/date.js.map +1 -1
  143. package/dist/collection/components/q2-input/formatting/date.spec.js +17 -0
  144. package/dist/collection/components/q2-input/formatting/date.spec.js.map +1 -0
  145. package/dist/collection/components/q2-input/formatting/numeric.spec.js +32 -0
  146. package/dist/collection/components/q2-input/formatting/numeric.spec.js.map +1 -0
  147. package/dist/collection/components/q2-input/formatting/phone.spec.js +16 -0
  148. package/dist/collection/components/q2-input/formatting/phone.spec.js.map +1 -0
  149. package/dist/collection/components/q2-input/formatting/postal.js +1 -1
  150. package/dist/collection/components/q2-input/formatting/postal.js.map +1 -1
  151. package/dist/collection/components/q2-input/formatting/postal.spec.js +28 -0
  152. package/dist/collection/components/q2-input/formatting/postal.spec.js.map +1 -0
  153. package/dist/collection/components/q2-input/formatting/ssn.spec.js +7 -0
  154. package/dist/collection/components/q2-input/formatting/ssn.spec.js.map +1 -0
  155. package/dist/collection/components/q2-input/formatting/tin.spec.js +7 -0
  156. package/dist/collection/components/q2-input/formatting/tin.spec.js.map +1 -0
  157. package/dist/collection/components/q2-input/q2-input.js +58 -44
  158. package/dist/collection/components/q2-input/q2-input.js.map +1 -1
  159. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js +259 -2106
  160. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js.map +1 -1
  161. package/dist/collection/components/q2-input/test/q2-input-test.spec.js +4035 -0
  162. package/dist/collection/components/q2-input/test/q2-input-test.spec.js.map +1 -0
  163. package/dist/collection/components/q2-item/q2-item.js +1 -1
  164. package/dist/collection/components/q2-legend/q2-legend.js +1 -1
  165. package/dist/collection/components/q2-link/q2-link.css +17 -20
  166. package/dist/collection/components/q2-link/q2-link.js +2 -2
  167. package/dist/collection/components/q2-link/q2-link.js.map +1 -1
  168. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js +6 -6
  169. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js.map +1 -1
  170. package/dist/collection/components/q2-list/q2-list.js +4 -5
  171. package/dist/collection/components/q2-list/q2-list.js.map +1 -1
  172. package/dist/collection/components/q2-loc/q2-loc.js +66 -4
  173. package/dist/collection/components/q2-loc/q2-loc.js.map +1 -1
  174. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js +19 -30
  175. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js.map +1 -1
  176. package/dist/collection/components/q2-loc/test/q2-loc-test.spec.js +164 -0
  177. package/dist/collection/components/q2-loc/test/q2-loc-test.spec.js.map +1 -0
  178. package/dist/collection/components/q2-message/q2-message.js +1 -1
  179. package/dist/collection/components/q2-optgroup/q2-optgroup.js +3 -2
  180. package/dist/collection/components/q2-optgroup/q2-optgroup.js.map +1 -1
  181. package/dist/collection/components/q2-option/q2-option.css +1 -1
  182. package/dist/collection/components/q2-option/q2-option.js +57 -34
  183. package/dist/collection/components/q2-option/q2-option.js.map +1 -1
  184. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js +110 -106
  185. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js.map +1 -1
  186. package/dist/collection/components/q2-option/test/q2-option-test.spec.js +532 -0
  187. package/dist/collection/components/q2-option/test/q2-option-test.spec.js.map +1 -0
  188. package/dist/collection/components/q2-pagination/q2-pagination.js +9 -5
  189. package/dist/collection/components/q2-pagination/q2-pagination.js.map +1 -1
  190. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js +18 -1
  191. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js.map +1 -1
  192. package/dist/collection/components/q2-pill/q2-pill.js +18 -17
  193. package/dist/collection/components/q2-pill/q2-pill.js.map +1 -1
  194. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js +128 -57
  195. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js.map +1 -1
  196. package/dist/collection/components/q2-popover/q2-popover.js +17 -4
  197. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  198. package/dist/collection/components/q2-radio/q2-radio.js +1 -1
  199. package/dist/collection/components/q2-radio-group/q2-radio-group.css +19 -9
  200. package/dist/collection/components/q2-radio-group/q2-radio-group.js +2 -2
  201. package/dist/collection/components/q2-radio-group/q2-radio-group.js.map +1 -1
  202. package/dist/collection/components/q2-relative-time/q2-relative-time.js +1 -1
  203. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +1 -1
  204. package/dist/collection/components/q2-section/q2-section.js +6 -4
  205. package/dist/collection/components/q2-section/q2-section.js.map +1 -1
  206. package/dist/collection/components/q2-select/q2-select.js +5 -3
  207. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  208. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js +123 -62
  209. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js.map +1 -1
  210. package/dist/collection/components/q2-stepper/q2-stepper.js +4 -2
  211. package/dist/collection/components/q2-stepper/q2-stepper.js.map +1 -1
  212. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +3 -2
  213. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js.map +1 -1
  214. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +46 -2
  215. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js.map +1 -1
  216. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js +26 -0
  217. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js.map +1 -1
  218. package/dist/collection/components/q2-tab-container/q2-tab-container.js +4 -3
  219. package/dist/collection/components/q2-tab-container/q2-tab-container.js.map +1 -1
  220. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  221. package/dist/collection/components/q2-tag/q2-tag.js +5 -2
  222. package/dist/collection/components/q2-tag/q2-tag.js.map +1 -1
  223. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js +55 -4
  224. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js.map +1 -1
  225. package/dist/collection/components/q2-textarea/q2-textarea.js +1 -1
  226. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
  227. package/dist/collection/utils/helpers.js +63 -41
  228. package/dist/collection/utils/helpers.js.map +1 -1
  229. package/dist/collection/utils/index.js +83 -0
  230. package/dist/collection/utils/index.js.map +1 -1
  231. package/dist/components/index.js +2 -0
  232. package/dist/components/index.js.map +1 -1
  233. package/dist/components/index2.js +84 -1
  234. package/dist/components/index2.js.map +1 -1
  235. package/dist/components/q2-action-group.js +1 -1
  236. package/dist/components/q2-action-sheet.js +1 -1
  237. package/dist/components/q2-avatar2.js +1 -1
  238. package/dist/components/q2-calendar.js +16 -18
  239. package/dist/components/q2-calendar.js.map +1 -1
  240. package/dist/components/q2-card.js +2 -0
  241. package/dist/components/q2-card.js.map +1 -1
  242. package/dist/components/q2-carousel-pane.js +2 -2
  243. package/dist/components/q2-chart-area.js +16 -2
  244. package/dist/components/q2-chart-area.js.map +1 -1
  245. package/dist/components/q2-chart-bar.js +1 -1
  246. package/dist/components/q2-chart-donut.js +19 -2
  247. package/dist/components/q2-chart-donut.js.map +1 -1
  248. package/dist/components/q2-checkbox-group.js +5 -4
  249. package/dist/components/q2-checkbox-group.js.map +1 -1
  250. package/dist/components/q2-currency.js +15 -2
  251. package/dist/components/q2-currency.js.map +1 -1
  252. package/dist/components/q2-data-table.js +1 -1
  253. package/dist/components/q2-data-table.js.map +1 -1
  254. package/dist/components/q2-detail.js +1 -1
  255. package/dist/components/q2-dropdown-item2.js +12 -26
  256. package/dist/components/q2-dropdown-item2.js.map +1 -1
  257. package/dist/components/q2-dropdown.js +6 -3
  258. package/dist/components/q2-dropdown.js.map +1 -1
  259. package/dist/components/q2-editable-field.js +1 -1
  260. package/dist/components/q2-example.d.ts +11 -0
  261. package/dist/components/q2-example.js +170 -0
  262. package/dist/components/q2-example.js.map +1 -0
  263. package/dist/components/q2-formatted-text.js +1 -1
  264. package/dist/components/q2-input2.js +41 -37
  265. package/dist/components/q2-input2.js.map +1 -1
  266. package/dist/components/q2-item.js +1 -1
  267. package/dist/components/q2-legend2.js +1 -1
  268. package/dist/components/q2-link.js +3 -3
  269. package/dist/components/q2-link.js.map +1 -1
  270. package/dist/components/q2-list.js +4 -5
  271. package/dist/components/q2-list.js.map +1 -1
  272. package/dist/components/q2-loc.js +55 -2
  273. package/dist/components/q2-loc.js.map +1 -1
  274. package/dist/components/q2-message2.js +1 -1
  275. package/dist/components/q2-month-picker.js +2 -2
  276. package/dist/components/q2-optgroup2.js +3 -2
  277. package/dist/components/q2-optgroup2.js.map +1 -1
  278. package/dist/components/q2-option-list2.js +1 -1
  279. package/dist/components/q2-option2.js +52 -33
  280. package/dist/components/q2-option2.js.map +1 -1
  281. package/dist/components/q2-pagination.js +9 -5
  282. package/dist/components/q2-pagination.js.map +1 -1
  283. package/dist/components/q2-pill.js +18 -17
  284. package/dist/components/q2-pill.js.map +1 -1
  285. package/dist/components/q2-popover2.js +16 -4
  286. package/dist/components/q2-popover2.js.map +1 -1
  287. package/dist/components/q2-radio-group.js +3 -3
  288. package/dist/components/q2-radio-group.js.map +1 -1
  289. package/dist/components/q2-radio.js +1 -1
  290. package/dist/components/q2-relative-time.js +1 -1
  291. package/dist/components/q2-resize-observer2.js +1 -1
  292. package/dist/components/q2-section.js +6 -4
  293. package/dist/components/q2-section.js.map +1 -1
  294. package/dist/components/q2-select2.js +6 -4
  295. package/dist/components/q2-select2.js.map +1 -1
  296. package/dist/components/q2-stepper-pane.js +3 -2
  297. package/dist/components/q2-stepper-pane.js.map +1 -1
  298. package/dist/components/q2-stepper-vertical.js +16 -3
  299. package/dist/components/q2-stepper-vertical.js.map +1 -1
  300. package/dist/components/q2-stepper.js +4 -2
  301. package/dist/components/q2-stepper.js.map +1 -1
  302. package/dist/components/q2-tab-container.js +4 -3
  303. package/dist/components/q2-tab-container.js.map +1 -1
  304. package/dist/components/q2-tab-pane.js +1 -1
  305. package/dist/components/q2-tag.js +5 -2
  306. package/dist/components/q2-tag.js.map +1 -1
  307. package/dist/components/q2-textarea.js +1 -1
  308. package/dist/components/tecton-tab-pane.js +2 -2
  309. package/dist/esm/click-elsewhere_2.entry.js +16 -5
  310. package/dist/esm/click-elsewhere_2.entry.js.map +1 -1
  311. package/dist/esm/{index-1e1ce94e.js → index-7a5365e2.js} +40 -5
  312. package/dist/esm/index-7a5365e2.js.map +1 -0
  313. package/dist/esm/{index-844fc010.js → index-d18e2a20.js} +86 -3
  314. package/dist/esm/index-d18e2a20.js.map +1 -0
  315. package/dist/esm/loader.js +3 -3
  316. package/dist/esm/q2-action-group.entry.js +2 -2
  317. package/dist/esm/q2-action-sheet.entry.js +3 -3
  318. package/dist/esm/q2-avatar.entry.js +2 -2
  319. package/dist/esm/q2-badge_7.entry.js +49 -44
  320. package/dist/esm/q2-badge_7.entry.js.map +1 -1
  321. package/dist/esm/q2-calendar.entry.js +17 -20
  322. package/dist/esm/q2-calendar.entry.js.map +1 -1
  323. package/dist/esm/q2-card.entry.js +4 -2
  324. package/dist/esm/q2-card.entry.js.map +1 -1
  325. package/dist/esm/q2-carousel-pane.entry.js +4 -4
  326. package/dist/esm/q2-carousel.entry.js +2 -2
  327. package/dist/esm/q2-chart-area.entry.js +16 -3
  328. package/dist/esm/q2-chart-area.entry.js.map +1 -1
  329. package/dist/esm/q2-chart-bar.entry.js +3 -3
  330. package/dist/esm/q2-chart-donut.entry.js +19 -3
  331. package/dist/esm/q2-chart-donut.entry.js.map +1 -1
  332. package/dist/esm/q2-checkbox-group.entry.js +6 -5
  333. package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
  334. package/dist/esm/q2-checkbox.entry.js +2 -2
  335. package/dist/esm/q2-currency.entry.js +14 -2
  336. package/dist/esm/q2-currency.entry.js.map +1 -1
  337. package/dist/esm/q2-data-table.entry.js +3 -3
  338. package/dist/esm/q2-data-table.entry.js.map +1 -1
  339. package/dist/esm/q2-detail.entry.js +3 -3
  340. package/dist/esm/q2-dropdown-item.entry.js +12 -14
  341. package/dist/esm/q2-dropdown-item.entry.js.map +1 -1
  342. package/dist/esm/q2-dropdown.entry.js +7 -5
  343. package/dist/esm/q2-dropdown.entry.js.map +1 -1
  344. package/dist/esm/q2-editable-field.entry.js +3 -3
  345. package/dist/esm/q2-example.entry.js +141 -0
  346. package/dist/esm/q2-example.entry.js.map +1 -0
  347. package/dist/esm/q2-formatted-text.entry.js +2 -2
  348. package/dist/esm/q2-item.entry.js +3 -3
  349. package/dist/esm/q2-legend.entry.js +2 -2
  350. package/dist/esm/q2-link.entry.js +4 -4
  351. package/dist/esm/q2-link.entry.js.map +1 -1
  352. package/dist/esm/q2-list.entry.js +6 -7
  353. package/dist/esm/q2-list.entry.js.map +1 -1
  354. package/dist/esm/q2-loading-element.entry.js +2 -2
  355. package/dist/esm/q2-loc.entry.js +52 -3
  356. package/dist/esm/q2-loc.entry.js.map +1 -1
  357. package/dist/esm/q2-message.entry.js +3 -3
  358. package/dist/esm/q2-month-picker.entry.js +4 -4
  359. package/dist/esm/q2-optgroup.entry.js +5 -4
  360. package/dist/esm/q2-optgroup.entry.js.map +1 -1
  361. package/dist/esm/q2-option-list.entry.js +2 -2
  362. package/dist/esm/q2-option.entry.js +50 -33
  363. package/dist/esm/q2-option.entry.js.map +1 -1
  364. package/dist/esm/q2-pagination.entry.js +11 -7
  365. package/dist/esm/q2-pagination.entry.js.map +1 -1
  366. package/dist/esm/q2-pill.entry.js +19 -18
  367. package/dist/esm/q2-pill.entry.js.map +1 -1
  368. package/dist/esm/q2-radio-group.entry.js +5 -5
  369. package/dist/esm/q2-radio-group.entry.js.map +1 -1
  370. package/dist/esm/q2-radio.entry.js +3 -3
  371. package/dist/esm/q2-relative-time.entry.js +3 -3
  372. package/dist/esm/q2-resize-observer.entry.js +2 -2
  373. package/dist/esm/q2-section.entry.js +8 -6
  374. package/dist/esm/q2-section.entry.js.map +1 -1
  375. package/dist/esm/q2-select.entry.js +6 -5
  376. package/dist/esm/q2-select.entry.js.map +1 -1
  377. package/dist/esm/q2-stepper-pane.entry.js +5 -4
  378. package/dist/esm/q2-stepper-pane.entry.js.map +1 -1
  379. package/dist/esm/q2-stepper-vertical.entry.js +16 -4
  380. package/dist/esm/q2-stepper-vertical.entry.js.map +1 -1
  381. package/dist/esm/q2-stepper.entry.js +6 -4
  382. package/dist/esm/q2-stepper.entry.js.map +1 -1
  383. package/dist/esm/q2-tag.entry.js +6 -4
  384. package/dist/esm/q2-tag.entry.js.map +1 -1
  385. package/dist/esm/q2-tecton-elements.js +3 -3
  386. package/dist/esm/q2-textarea.entry.js +3 -3
  387. package/dist/esm/q2-tooltip.entry.js +2 -2
  388. package/dist/esm/{shapes-36183b2a.js → shapes-c7e1a3fa.js} +2 -2
  389. package/dist/esm/{shapes-36183b2a.js.map → shapes-c7e1a3fa.js.map} +1 -1
  390. package/dist/esm/tecton-tab-pane.entry.js +3 -3
  391. package/dist/q2-tecton-elements/action-sheet-e64cb6f7.js +77 -0
  392. package/dist/q2-tecton-elements/{p-b7554a79.js.map → action-sheet-e64cb6f7.js.map} +1 -1
  393. package/dist/q2-tecton-elements/app-globals-0f993ce5.js +4 -0
  394. package/dist/q2-tecton-elements/{p-e1255160.js.map → app-globals-0f993ce5.js.map} +1 -1
  395. package/dist/q2-tecton-elements/charting-1abfb877.js +34872 -0
  396. package/dist/q2-tecton-elements/{p-2941aafa.js.map → charting-1abfb877.js.map} +1 -1
  397. package/dist/q2-tecton-elements/click-elsewhere_2.entry.js +410 -0
  398. package/dist/q2-tecton-elements/click-elsewhere_2.entry.js.map +1 -0
  399. package/dist/q2-tecton-elements/dataSample-7b62e101.js +2602 -0
  400. package/dist/q2-tecton-elements/{p-ad80aef0.js.map → dataSample-7b62e101.js.map} +1 -1
  401. package/dist/q2-tecton-elements/index-3184c760.js +18168 -0
  402. package/dist/q2-tecton-elements/{p-f1e887f5.js.map → index-3184c760.js.map} +1 -1
  403. package/dist/q2-tecton-elements/index-7a5365e2.js +1792 -0
  404. package/dist/q2-tecton-elements/index-7a5365e2.js.map +1 -0
  405. package/dist/q2-tecton-elements/index-d18e2a20.js +323 -0
  406. package/dist/q2-tecton-elements/index-d18e2a20.js.map +1 -0
  407. package/dist/q2-tecton-elements/q2-action-group.entry.js +56 -0
  408. package/dist/q2-tecton-elements/{p-5637c486.entry.js.map → q2-action-group.entry.js.map} +1 -1
  409. package/dist/q2-tecton-elements/q2-action-sheet.entry.js +1480 -0
  410. package/dist/q2-tecton-elements/{p-188eb162.entry.js.map → q2-action-sheet.entry.js.map} +1 -1
  411. package/dist/q2-tecton-elements/q2-avatar.entry.js +101 -0
  412. package/dist/q2-tecton-elements/{p-07d1c3ae.entry.js.map → q2-avatar.entry.js.map} +1 -1
  413. package/dist/q2-tecton-elements/q2-badge_7.entry.js +5449 -0
  414. package/dist/q2-tecton-elements/q2-badge_7.entry.js.map +1 -0
  415. package/dist/q2-tecton-elements/q2-calendar.entry.js +1313 -0
  416. package/dist/q2-tecton-elements/q2-calendar.entry.js.map +1 -0
  417. package/dist/q2-tecton-elements/q2-card.entry.js +170 -0
  418. package/dist/q2-tecton-elements/q2-card.entry.js.map +1 -0
  419. package/dist/q2-tecton-elements/q2-carousel-pane.entry.js +130 -0
  420. package/dist/q2-tecton-elements/{p-7aef0c08.entry.js.map → q2-carousel-pane.entry.js.map} +1 -1
  421. package/dist/q2-tecton-elements/q2-carousel.entry.js +4613 -0
  422. package/dist/q2-tecton-elements/{p-e216ef3f.entry.js.map → q2-carousel.entry.js.map} +1 -1
  423. package/dist/q2-tecton-elements/q2-chart-area.entry.js +4330 -0
  424. package/dist/q2-tecton-elements/q2-chart-area.entry.js.map +1 -0
  425. package/dist/q2-tecton-elements/q2-chart-bar.entry.js +1479 -0
  426. package/dist/q2-tecton-elements/{p-7906f49e.entry.js.map → q2-chart-bar.entry.js.map} +1 -1
  427. package/dist/q2-tecton-elements/q2-chart-donut.entry.js +4537 -0
  428. package/dist/q2-tecton-elements/q2-chart-donut.entry.js.map +1 -0
  429. package/dist/q2-tecton-elements/q2-checkbox-group.entry.js +166 -0
  430. package/dist/q2-tecton-elements/q2-checkbox-group.entry.js.map +1 -0
  431. package/dist/q2-tecton-elements/q2-checkbox.entry.js +223 -0
  432. package/dist/q2-tecton-elements/{p-b7de110e.entry.js.map → q2-checkbox.entry.js.map} +1 -1
  433. package/dist/q2-tecton-elements/q2-currency.entry.js +153 -0
  434. package/dist/q2-tecton-elements/q2-currency.entry.js.map +1 -0
  435. package/dist/q2-tecton-elements/q2-data-table.entry.js +622 -0
  436. package/dist/q2-tecton-elements/{p-7903cd15.entry.js.map → q2-data-table.entry.js.map} +1 -1
  437. package/dist/q2-tecton-elements/q2-detail.entry.js +128 -0
  438. package/dist/q2-tecton-elements/{p-f5f23659.entry.js.map → q2-detail.entry.js.map} +1 -1
  439. package/dist/q2-tecton-elements/q2-dropdown-item.entry.js +146 -0
  440. package/dist/q2-tecton-elements/q2-dropdown-item.entry.js.map +1 -0
  441. package/dist/q2-tecton-elements/q2-dropdown.entry.js +430 -0
  442. package/dist/q2-tecton-elements/q2-dropdown.entry.js.map +1 -0
  443. package/dist/q2-tecton-elements/q2-editable-field.entry.js +296 -0
  444. package/dist/q2-tecton-elements/{p-896c7008.entry.js.map → q2-editable-field.entry.js.map} +1 -1
  445. package/dist/q2-tecton-elements/q2-example.entry.js +152 -0
  446. package/dist/q2-tecton-elements/q2-example.entry.js.map +1 -0
  447. package/dist/q2-tecton-elements/q2-formatted-text.entry.js +73 -0
  448. package/dist/q2-tecton-elements/{p-7c9f8b62.entry.js.map → q2-formatted-text.entry.js.map} +1 -1
  449. package/dist/q2-tecton-elements/q2-item.entry.js +158 -0
  450. package/dist/q2-tecton-elements/{p-7c9a0122.entry.js.map → q2-item.entry.js.map} +1 -1
  451. package/dist/q2-tecton-elements/q2-legend.entry.js +146 -0
  452. package/dist/q2-tecton-elements/{p-ff8f1a32.entry.js.map → q2-legend.entry.js.map} +1 -1
  453. package/dist/q2-tecton-elements/q2-link.entry.js +83 -0
  454. package/dist/q2-tecton-elements/q2-link.entry.js.map +1 -0
  455. package/dist/q2-tecton-elements/q2-list.entry.js +100 -0
  456. package/dist/q2-tecton-elements/q2-list.entry.js.map +1 -0
  457. package/dist/q2-tecton-elements/q2-loading-element.entry.js +36 -0
  458. package/dist/q2-tecton-elements/{p-a068c84c.entry.js.map → q2-loading-element.entry.js.map} +1 -1
  459. package/dist/q2-tecton-elements/q2-loc.entry.js +82 -0
  460. package/dist/q2-tecton-elements/q2-loc.entry.js.map +1 -0
  461. package/dist/q2-tecton-elements/q2-message.entry.js +99 -0
  462. package/dist/q2-tecton-elements/{p-8d2b02e1.entry.js.map → q2-message.entry.js.map} +1 -1
  463. package/dist/q2-tecton-elements/q2-month-picker.entry.js +198 -0
  464. package/dist/q2-tecton-elements/{p-8d07cf91.entry.js.map → q2-month-picker.entry.js.map} +1 -1
  465. package/dist/q2-tecton-elements/q2-optgroup.entry.js +88 -0
  466. package/dist/q2-tecton-elements/q2-optgroup.entry.js.map +1 -0
  467. package/dist/q2-tecton-elements/q2-option-list.entry.js +585 -0
  468. package/dist/q2-tecton-elements/{p-a5d0e252.entry.js.map → q2-option-list.entry.js.map} +1 -1
  469. package/dist/q2-tecton-elements/q2-option.entry.js +110 -0
  470. package/dist/q2-tecton-elements/q2-option.entry.js.map +1 -0
  471. package/dist/q2-tecton-elements/q2-pagination.entry.js +377 -0
  472. package/dist/q2-tecton-elements/q2-pagination.entry.js.map +1 -0
  473. package/dist/q2-tecton-elements/q2-pill.entry.js +434 -0
  474. package/dist/q2-tecton-elements/q2-pill.entry.js.map +1 -0
  475. package/dist/q2-tecton-elements/q2-radio-group.entry.js +227 -0
  476. package/dist/q2-tecton-elements/q2-radio-group.entry.js.map +1 -0
  477. package/dist/q2-tecton-elements/q2-radio.entry.js +144 -0
  478. package/dist/q2-tecton-elements/{p-c235ab3f.entry.js.map → q2-radio.entry.js.map} +1 -1
  479. package/dist/q2-tecton-elements/q2-relative-time.entry.js +162 -0
  480. package/dist/q2-tecton-elements/{p-95a7c042.entry.js.map → q2-relative-time.entry.js.map} +1 -1
  481. package/dist/q2-tecton-elements/q2-resize-observer.entry.js +100 -0
  482. package/dist/q2-tecton-elements/{p-e2c800ef.entry.js.map → q2-resize-observer.entry.js.map} +1 -1
  483. package/dist/q2-tecton-elements/q2-section.entry.js +256 -0
  484. package/dist/q2-tecton-elements/q2-section.entry.js.map +1 -0
  485. package/dist/q2-tecton-elements/q2-select.entry.js +684 -0
  486. package/dist/q2-tecton-elements/q2-select.entry.js.map +1 -0
  487. package/dist/q2-tecton-elements/q2-stepper-pane.entry.js +124 -0
  488. package/dist/q2-tecton-elements/q2-stepper-pane.entry.js.map +1 -0
  489. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js +356 -0
  490. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js.map +1 -0
  491. package/dist/q2-tecton-elements/q2-stepper.entry.js +332 -0
  492. package/dist/q2-tecton-elements/q2-stepper.entry.js.map +1 -0
  493. package/dist/q2-tecton-elements/q2-tag.entry.js +213 -0
  494. package/dist/q2-tecton-elements/q2-tag.entry.js.map +1 -0
  495. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +21 -1
  496. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  497. package/dist/q2-tecton-elements/q2-textarea.entry.js +364 -0
  498. package/dist/q2-tecton-elements/{p-f135b265.entry.js.map → q2-textarea.entry.js.map} +1 -1
  499. package/dist/q2-tecton-elements/q2-tooltip.entry.js +105 -0
  500. package/dist/q2-tecton-elements/{p-c5667d5d.entry.js.map → q2-tooltip.entry.js.map} +1 -1
  501. package/dist/q2-tecton-elements/sectorHelper-183cedd0.js +949 -0
  502. package/dist/q2-tecton-elements/{p-eea5aa01.js.map → sectorHelper-183cedd0.js.map} +1 -1
  503. package/dist/q2-tecton-elements/shapes-c7e1a3fa.js +132 -0
  504. package/dist/q2-tecton-elements/{p-50b425de.js.map → shapes-c7e1a3fa.js.map} +1 -1
  505. package/dist/q2-tecton-elements/tecton-tab-pane.entry.js +134 -0
  506. package/dist/q2-tecton-elements/{p-96b1406c.entry.js.map → tecton-tab-pane.entry.js.map} +1 -1
  507. package/dist/types/components/q2-calendar/q2-calendar.d.ts +4 -5
  508. package/dist/types/components/q2-chart-area/q2-chart-area.d.ts +6 -0
  509. package/dist/types/components/q2-chart-donut/q2-chart-donut.d.ts +6 -0
  510. package/dist/types/components/q2-currency/q2-currency.d.ts +7 -0
  511. package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +1 -1
  512. package/dist/types/components/q2-dropdown-item/q2-dropdown-item.d.ts +2 -2
  513. package/dist/types/components/q2-example/q2-example.d.ts +119 -0
  514. package/dist/types/components/q2-input/formatting/date.d.ts +22 -0
  515. package/dist/types/components/q2-input/formatting/postal.d.ts +197 -0
  516. package/dist/types/components/q2-input/q2-input.d.ts +15 -12
  517. package/dist/types/components/q2-loc/q2-loc.d.ts +15 -1
  518. package/dist/types/components/q2-option/q2-option.d.ts +11 -3
  519. package/dist/types/components/q2-pill/q2-pill.d.ts +3 -3
  520. package/dist/types/components/q2-popover/q2-popover.d.ts +1 -0
  521. package/dist/types/components/q2-select/q2-select.d.ts +1 -1
  522. package/dist/types/components/q2-stepper-vertical/q2-stepper-vertical.d.ts +6 -0
  523. package/dist/types/components/q2-tag/q2-tag.d.ts +1 -1
  524. package/dist/types/components.d.ts +104 -14
  525. package/dist/types/utils/helpers.d.ts +13 -0
  526. package/dist/types/utils/index.d.ts +11 -0
  527. package/package.json +7 -7
  528. package/dist/cjs/index-14c3693c.js.map +0 -1
  529. package/dist/cjs/index-9aa4a776.js.map +0 -1
  530. package/dist/esm/index-1e1ce94e.js.map +0 -1
  531. package/dist/esm/index-844fc010.js.map +0 -1
  532. package/dist/q2-tecton-elements/p-06701928.entry.js +0 -2
  533. package/dist/q2-tecton-elements/p-06701928.entry.js.map +0 -1
  534. package/dist/q2-tecton-elements/p-07d1c3ae.entry.js +0 -2
  535. package/dist/q2-tecton-elements/p-1305f7ca.entry.js +0 -2
  536. package/dist/q2-tecton-elements/p-1305f7ca.entry.js.map +0 -1
  537. package/dist/q2-tecton-elements/p-15ac45d6.js +0 -2
  538. package/dist/q2-tecton-elements/p-15ac45d6.js.map +0 -1
  539. package/dist/q2-tecton-elements/p-16910682.entry.js +0 -2
  540. package/dist/q2-tecton-elements/p-16910682.entry.js.map +0 -1
  541. package/dist/q2-tecton-elements/p-188eb162.entry.js +0 -3
  542. package/dist/q2-tecton-elements/p-1c760a89.entry.js +0 -2
  543. package/dist/q2-tecton-elements/p-1c760a89.entry.js.map +0 -1
  544. package/dist/q2-tecton-elements/p-1c88d057.entry.js +0 -2
  545. package/dist/q2-tecton-elements/p-1c88d057.entry.js.map +0 -1
  546. package/dist/q2-tecton-elements/p-20a3d6ed.entry.js +0 -2
  547. package/dist/q2-tecton-elements/p-20a3d6ed.entry.js.map +0 -1
  548. package/dist/q2-tecton-elements/p-2733583e.entry.js +0 -2
  549. package/dist/q2-tecton-elements/p-2733583e.entry.js.map +0 -1
  550. package/dist/q2-tecton-elements/p-2941aafa.js +0 -39
  551. package/dist/q2-tecton-elements/p-3e428290.entry.js +0 -2
  552. package/dist/q2-tecton-elements/p-3e428290.entry.js.map +0 -1
  553. package/dist/q2-tecton-elements/p-4774e5b3.entry.js +0 -2
  554. package/dist/q2-tecton-elements/p-4774e5b3.entry.js.map +0 -1
  555. package/dist/q2-tecton-elements/p-490ef8e5.entry.js +0 -2
  556. package/dist/q2-tecton-elements/p-490ef8e5.entry.js.map +0 -1
  557. package/dist/q2-tecton-elements/p-4e10550d.entry.js +0 -2
  558. package/dist/q2-tecton-elements/p-4e10550d.entry.js.map +0 -1
  559. package/dist/q2-tecton-elements/p-50b425de.js +0 -2
  560. package/dist/q2-tecton-elements/p-50f7328f.entry.js +0 -2
  561. package/dist/q2-tecton-elements/p-50f7328f.entry.js.map +0 -1
  562. package/dist/q2-tecton-elements/p-5637c486.entry.js +0 -2
  563. package/dist/q2-tecton-elements/p-56df21b0.entry.js +0 -2
  564. package/dist/q2-tecton-elements/p-56df21b0.entry.js.map +0 -1
  565. package/dist/q2-tecton-elements/p-5a834214.entry.js +0 -2
  566. package/dist/q2-tecton-elements/p-5a834214.entry.js.map +0 -1
  567. package/dist/q2-tecton-elements/p-5f99a4a8.entry.js +0 -2
  568. package/dist/q2-tecton-elements/p-5f99a4a8.entry.js.map +0 -1
  569. package/dist/q2-tecton-elements/p-72d948b4.entry.js +0 -2
  570. package/dist/q2-tecton-elements/p-72d948b4.entry.js.map +0 -1
  571. package/dist/q2-tecton-elements/p-7903cd15.entry.js +0 -2
  572. package/dist/q2-tecton-elements/p-7906f49e.entry.js +0 -2
  573. package/dist/q2-tecton-elements/p-7aef0c08.entry.js +0 -2
  574. package/dist/q2-tecton-elements/p-7c9a0122.entry.js +0 -2
  575. package/dist/q2-tecton-elements/p-7c9f8b62.entry.js +0 -2
  576. package/dist/q2-tecton-elements/p-81fbe718.entry.js +0 -2
  577. package/dist/q2-tecton-elements/p-81fbe718.entry.js.map +0 -1
  578. package/dist/q2-tecton-elements/p-896c7008.entry.js +0 -2
  579. package/dist/q2-tecton-elements/p-8d07cf91.entry.js +0 -2
  580. package/dist/q2-tecton-elements/p-8d2b02e1.entry.js +0 -2
  581. package/dist/q2-tecton-elements/p-95a7c042.entry.js +0 -2
  582. package/dist/q2-tecton-elements/p-96b1406c.entry.js +0 -2
  583. package/dist/q2-tecton-elements/p-a068c84c.entry.js +0 -2
  584. package/dist/q2-tecton-elements/p-a47597dd.entry.js +0 -2
  585. package/dist/q2-tecton-elements/p-a47597dd.entry.js.map +0 -1
  586. package/dist/q2-tecton-elements/p-a5d0e252.entry.js +0 -2
  587. package/dist/q2-tecton-elements/p-a5f18e27.js +0 -3
  588. package/dist/q2-tecton-elements/p-a5f18e27.js.map +0 -1
  589. package/dist/q2-tecton-elements/p-ac6aa392.entry.js +0 -2
  590. package/dist/q2-tecton-elements/p-ac6aa392.entry.js.map +0 -1
  591. package/dist/q2-tecton-elements/p-ad057d10.entry.js +0 -2
  592. package/dist/q2-tecton-elements/p-ad057d10.entry.js.map +0 -1
  593. package/dist/q2-tecton-elements/p-ad80aef0.js +0 -2
  594. package/dist/q2-tecton-elements/p-b0e5e9dc.entry.js +0 -2
  595. package/dist/q2-tecton-elements/p-b0e5e9dc.entry.js.map +0 -1
  596. package/dist/q2-tecton-elements/p-b1784be3.entry.js +0 -2
  597. package/dist/q2-tecton-elements/p-b1784be3.entry.js.map +0 -1
  598. package/dist/q2-tecton-elements/p-b7554a79.js +0 -2
  599. package/dist/q2-tecton-elements/p-b7de110e.entry.js +0 -2
  600. package/dist/q2-tecton-elements/p-c235ab3f.entry.js +0 -2
  601. package/dist/q2-tecton-elements/p-c5667d5d.entry.js +0 -2
  602. package/dist/q2-tecton-elements/p-e1255160.js +0 -2
  603. package/dist/q2-tecton-elements/p-e216ef3f.entry.js +0 -2
  604. package/dist/q2-tecton-elements/p-e2c800ef.entry.js +0 -2
  605. package/dist/q2-tecton-elements/p-eea5aa01.js +0 -2
  606. package/dist/q2-tecton-elements/p-f135b265.entry.js +0 -2
  607. package/dist/q2-tecton-elements/p-f1e887f5.js +0 -2
  608. package/dist/q2-tecton-elements/p-f5f23659.entry.js +0 -2
  609. package/dist/q2-tecton-elements/p-f7867f21.entry.js +0 -2
  610. package/dist/q2-tecton-elements/p-f7867f21.entry.js.map +0 -1
  611. package/dist/q2-tecton-elements/p-ff8f1a32.entry.js +0 -2
  612. package/dist/q2-tecton-elements/p-fff01dc1.entry.js +0 -2
  613. package/dist/q2-tecton-elements/p-fff01dc1.entry.js.map +0 -1
@@ -17,10 +17,10 @@ describe('q2-dropdown-item', () => {
17
17
  });
18
18
  itemBtn = await page.find('q2-dropdown-item >>> [test-id="dropdownItem"]');
19
19
  expect(itemBtn).not.toBeNull();
20
- expect(itemBtn.tagName.toLowerCase()).toEqual('q2-btn');
20
+ expect(itemBtn.tagName.toLowerCase()).toEqual('button');
21
21
  expect(itemBtn).toHaveClass('dropdown-item');
22
22
  expect(itemBtn).not.toHaveAttribute('disabled');
23
- expect(await itemBtn.getProperty('_role')).toEqual('menuitem');
23
+ expect(itemBtn).toEqualAttribute('role', 'menuitem');
24
24
  itemSeparator = await page.find('q2-dropdown-item >>> [test-id="dropdownItemSeparator"]');
25
25
  expect(itemSeparator).toBeNull();
26
26
  const itemSlotText = await page.$eval('q2-dropdown-item', (element) => element.shadowRoot.querySelector('slot').assignedNodes()[0].textContent);
@@ -45,28 +45,10 @@ describe('q2-dropdown-item', () => {
45
45
  expect(clickSpy).toHaveReceivedEventTimes(2);
46
46
  expect(clickSpy).toHaveReceivedEventDetail({ type: 'remove', value: 'itemValue' });
47
47
  });
48
- it('item content is the same width as the q2-btn', async function () {
49
- page = await setup({
50
- html: `<q2-dropdown-item>Test</q2-dropdown-item>`,
51
- });
52
- const { btnWidth, contentWidth, btnPadding } = await page.$eval('q2-dropdown-item', (el) => {
53
- const itemBtn = el.shadowRoot.querySelector('.dropdown-item');
54
- const itemContent = el.shadowRoot.querySelector('.dropdown-item-content');
55
- const contentWidth = itemContent.clientWidth;
56
- const btnWidth = itemBtn.clientWidth;
57
- const btnPadding = parseInt(getComputedStyle(itemBtn).getPropertyValue('padding'));
58
- return {
59
- btnWidth,
60
- contentWidth,
61
- btnPadding,
62
- };
63
- });
64
- expect(btnWidth).toEqual(contentWidth + btnPadding * 2);
65
- });
66
48
  describe('Props', () => {
67
49
  describe('label', () => {
68
50
  describe('when provided', () => {
69
- it('applies label to itemDOM() button', async () => {
51
+ it('applies label to the <button>', async () => {
70
52
  page = await setup({
71
53
  html: `
72
54
  <div role="menu">
@@ -75,11 +57,11 @@ describe('q2-dropdown-item', () => {
75
57
  `,
76
58
  });
77
59
  itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
78
- expect(itemBtn.getAttribute('label')).toEqual('item text');
60
+ expect(itemBtn.innerText).toEqual('item text');
79
61
  });
80
62
  });
81
63
  describe('when not provided', () => {
82
- it('tries to use textContent to apply label to itemDOM() button', async () => {
64
+ it('tries to use textContent to apply label to the <button>', async () => {
83
65
  page = await setup({
84
66
  html: `
85
67
  <div role="menu">
@@ -88,9 +70,9 @@ describe('q2-dropdown-item', () => {
88
70
  `,
89
71
  });
90
72
  itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
91
- expect(itemBtn.getAttribute('label')).toEqual('item text');
73
+ expect(itemBtn.innerText).toEqual('item text');
92
74
  });
93
- it('applies label to itemDOM() button when using q2-loc component (TCT-2678)', async () => {
75
+ it('tries to use <q2-loc> component value prop (TCT-2678)', async () => {
94
76
  page = await setup({
95
77
  html: `
96
78
  <div role="menu">
@@ -99,7 +81,18 @@ describe('q2-dropdown-item', () => {
99
81
  `,
100
82
  });
101
83
  itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
102
- expect(itemBtn.getAttribute('label')).toEqual('item text');
84
+ expect(itemBtn.innerText).toEqual('item text');
85
+ });
86
+ it('tries to use <q2-loc> component innerText (TCT-2678)', async () => {
87
+ page = await setup({
88
+ html: `
89
+ <div role="menu">
90
+ <q2-dropdown-item value="itemValue"><q2-loc>item text</q2-loc></q2-dropdown-item>
91
+ </div>
92
+ `,
93
+ });
94
+ itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
95
+ expect(itemBtn.innerText).toEqual('item text');
103
96
  });
104
97
  });
105
98
  });
@@ -129,69 +122,111 @@ describe('q2-dropdown-item', () => {
129
122
  await page.setContent('<q2-dropdown-item value="itemValue" removable></q2-dropdown-item>');
130
123
  await page.waitForChanges();
131
124
  });
132
- it('renders a remove button', async () => {
133
- item = await page.find('q2-dropdown-item');
134
- removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');
135
- expect(removeBtn).not.toBeNull();
136
- expect(removeBtn).not.toHaveAttribute('disabled');
137
- expect(removeBtn).toEqualAttribute('label', 'Remove Option ');
138
- expect(await removeBtn.getProperty('_role')).toEqual('menuitem');
125
+ describe('when provided', () => {
126
+ it('renders a remove button', async () => {
127
+ item = await page.find('q2-dropdown-item');
128
+ removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');
129
+ expect(removeBtn).not.toBeNull();
130
+ expect(removeBtn).not.toHaveAttribute('disabled');
131
+ expect(removeBtn).toEqualAttribute('aria-label', 'Remove Option ');
132
+ });
133
+ it('uses item label in remove button aria-label when provided', async () => {
134
+ item = await page.find('q2-dropdown-item');
135
+ item.setProperty('label', 'Item Text');
136
+ await page.waitForChanges();
137
+ removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');
138
+ expect(removeBtn).not.toBeNull();
139
+ expect(removeBtn).toEqualAttribute('aria-label', 'Remove Option Item Text');
140
+ });
139
141
  });
140
- it('uses item label in remove button label', async () => {
141
- item = await page.find('q2-dropdown-item');
142
- item.setProperty('label', 'Item Text');
143
- await page.waitForChanges();
144
- removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');
145
- expect(removeBtn).not.toBeNull();
146
- expect(removeBtn).toEqualAttribute('label', 'Remove Option Item Text');
142
+ describe('when not provided', () => {
143
+ it('does not render a remove button', async () => {
144
+ item = await page.find('q2-dropdown-item');
145
+ item.setProperty('removable', false);
146
+ await page.waitForChanges();
147
+ removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');
148
+ expect(removeBtn).toBeNull();
149
+ });
147
150
  });
148
151
  });
149
152
  describe('disabled', () => {
150
- it('disables the dropdown item', async () => {
151
- page = await setup({
152
- html: `
153
- <div role="menu">
154
- <q2-dropdown-item value="itemValue" disabled></q2-dropdown-item>
155
- </div>
156
- `,
153
+ describe('when provided', () => {
154
+ it('disables the dropdown item', async () => {
155
+ page = await setup({
156
+ html: `
157
+ <div role="menu">
158
+ <q2-dropdown-item value="itemValue" disabled></q2-dropdown-item>
159
+ </div>
160
+ `,
161
+ });
162
+ itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
163
+ expect(itemBtn).toHaveAttribute('disabled');
164
+ });
165
+ it('disables the remove button', async () => {
166
+ page = await setup({
167
+ html: `
168
+ <div role="menu">
169
+ <q2-dropdown-item value="itemValue" disabled removable></q2-dropdown-item>
170
+ </div>
171
+ `,
172
+ });
173
+ itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
174
+ removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');
175
+ expect(itemBtn).toHaveAttribute('disabled');
176
+ expect(removeBtn).toHaveAttribute('disabled');
157
177
  });
158
- itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
159
- expect(itemBtn).toHaveAttribute('disabled');
160
178
  });
161
- it('disables the remove button when removable', async () => {
162
- page = await setup({
163
- html: `
164
- <div role="menu">
165
- <q2-dropdown-item value="itemValue" disabled removable></q2-dropdown-item>
166
- </div>
167
- `,
179
+ describe('when not provided', () => {
180
+ it('does not disable the dropdown item', async () => {
181
+ page = await setup({
182
+ html: `
183
+ <div role="menu">
184
+ <q2-dropdown-item value="itemValue"></q2-dropdown-item>
185
+ </div>
186
+ `,
187
+ });
188
+ itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
189
+ expect(itemBtn).not.toHaveAttribute('disabled');
190
+ });
191
+ it('does not disable the remove button', async () => {
192
+ page = await setup({
193
+ html: `
194
+ <div role="menu">
195
+ <q2-dropdown-item value="itemValue" removable></q2-dropdown-item>
196
+ </div>
197
+ `,
198
+ });
199
+ itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
200
+ removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');
201
+ expect(itemBtn).not.toHaveAttribute('disabled');
202
+ expect(removeBtn).not.toHaveAttribute('disabled');
168
203
  });
169
- itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
170
- removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');
171
- expect(itemBtn).toHaveAttribute('disabled');
172
- expect(removeBtn).toHaveAttribute('disabled');
173
204
  });
174
205
  });
175
206
  });
176
207
  describe('Focus', () => {
177
- it('does not trigger focus delegator when item or remove btn focused', async function () {
208
+ it('does not trigger component focus delegator when item or remove <button> is focused', async function () {
178
209
  page = await setup({
179
210
  html: `
180
211
  <q2-dropdown-item value="itemValue" removable>item text</q2-dropdown-item>
181
212
  `,
182
213
  });
183
214
  item = await page.find('q2-dropdown-item');
184
- const itemFocusSpy = await item.spyOnEvent('focus');
185
215
  itemBtn = await page.find('q2-dropdown-item >>> [test-id="dropdownItem"]');
216
+ removeBtn = await page.find('q2-dropdown-item >>> [test-id="removeDropdownItem"]');
217
+ const itemFocusSpy = await item.spyOnEvent('focus');
186
218
  const itemBtnFocusSpy = await itemBtn.spyOnEvent('focus');
219
+ const removeBtnFocusSpy = await removeBtn.spyOnEvent('focus');
187
220
  expect(itemFocusSpy).toHaveReceivedEventTimes(0);
188
221
  expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);
222
+ expect(removeBtnFocusSpy).toHaveReceivedEventTimes(0);
189
223
  await dispatchEvent(page, ['q2-dropdown-item', '[test-id="removeDropdownItem"]'], 'focus');
190
224
  expect(itemFocusSpy).toHaveReceivedEventTimes(0);
191
225
  expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);
226
+ expect(removeBtnFocusSpy).toHaveReceivedEventTimes(1);
192
227
  await dispatchEvent(page, ['q2-dropdown-item', '[test-id="dropdownItem"]'], 'focus');
193
228
  expect(itemFocusSpy).toHaveReceivedEventTimes(0);
194
- expect(itemBtnFocusSpy).toHaveReceivedEventTimes(2);
229
+ expect(itemBtnFocusSpy).toHaveReceivedEventTimes(1);
195
230
  });
196
231
  it('handles focus manipulation', async function () {
197
232
  page = await setup({
@@ -200,34 +235,33 @@ describe('q2-dropdown-item', () => {
200
235
  `,
201
236
  });
202
237
  itemBtn = await page.find('q2-dropdown-item >>> [test-id="dropdownItem"]');
203
- const itemBtnFocusSpy = await itemBtn.spyOnEvent('focus');
204
238
  removeBtn = await page.find('q2-dropdown-item >>> [test-id="removeDropdownItem"]');
239
+ const itemBtnFocusSpy = await itemBtn.spyOnEvent('focus');
205
240
  const removeBtnFocusSpy = await removeBtn.spyOnEvent('focus');
206
241
  expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);
207
242
  expect(removeBtnFocusSpy).toHaveReceivedEventTimes(0);
208
243
  await dispatchEvent(page, 'q2-dropdown-item', 'focus');
209
- expect(itemBtnFocusSpy).toHaveReceivedEventTimes(2);
244
+ expect(itemBtnFocusSpy).toHaveReceivedEventTimes(1);
210
245
  await page.keyboard.press('ArrowRight');
211
- expect(removeBtnFocusSpy).toHaveReceivedEventTimes(2);
246
+ expect(removeBtnFocusSpy).toHaveReceivedEventTimes(1);
212
247
  await page.keyboard.press('ArrowLeft');
213
- expect(itemBtnFocusSpy).toHaveReceivedEventTimes(4);
248
+ expect(itemBtnFocusSpy).toHaveReceivedEventTimes(2);
214
249
  await page.keyboard.press('ArrowRight');
215
- expect(removeBtnFocusSpy).toHaveReceivedEventTimes(4);
250
+ expect(removeBtnFocusSpy).toHaveReceivedEventTimes(2);
216
251
  await page.keyboard.press('ArrowLeft');
217
- expect(itemBtnFocusSpy).toHaveReceivedEventTimes(6);
252
+ expect(itemBtnFocusSpy).toHaveReceivedEventTimes(3);
218
253
  });
219
254
  });
220
255
  describe('Deprecations', () => {
221
256
  it('handles deprecated `ariaLabel` prop', async () => {
222
- const label = 'My Label';
257
+ const myLabel = 'My Label';
223
258
  page = await setup({
224
- html: `<q2-dropdown-item aria-label="${label}">Text</q2-dropdown-item>`,
259
+ html: `<q2-dropdown-item aria-label="${myLabel}">Text</q2-dropdown-item>`,
225
260
  });
261
+ await testDeprecatedAriaLabel(await page.find('q2-dropdown-item'), myLabel);
226
262
  await page.waitForChanges();
227
- await testDeprecatedAriaLabel(await page.find('q2-dropdown-item'), label);
228
263
  itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');
229
- expect(itemBtn).toEqualAttribute('label', label);
230
- expect(itemBtn).toHaveAttribute('hide-label');
264
+ expect(itemBtn.innerText).toEqual(myLabel);
231
265
  });
232
266
  });
233
267
  describe('Accessibility', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"q2-dropdown-item-test.e2e.js","sourceRoot":"","sources":["../../../../src/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EElement, E2EPage } from '@stencil/core/testing';\nimport {\n setTestStrings,\n setup,\n dispatchEvent,\n testDeprecatedAriaLabel,\n getListOfStyleCompilationIssues,\n evaluateA11y,\n} from '@/utils/helpers';\n\ndescribe('q2-dropdown-item', () => {\n let page: E2EPage;\n let item: E2EElement;\n let itemBtn: E2EElement;\n let itemSeparator: E2EElement;\n let removeBtn: E2EElement;\n\n it('properly compiles CSS vars and functions', async () => {\n page = await setup({ html: '<q2-dropdown-item></q2-dropdown-item>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-dropdown-item')).toHaveLength(0);\n });\n\n it('renders base state', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\">item text</q2-dropdown-item>\n `,\n });\n\n itemBtn = await page.find('q2-dropdown-item >>> [test-id=\"dropdownItem\"]');\n expect(itemBtn).not.toBeNull();\n expect(itemBtn.tagName.toLowerCase()).toEqual('q2-btn');\n expect(itemBtn).toHaveClass('dropdown-item');\n expect(itemBtn).not.toHaveAttribute('disabled');\n expect(await itemBtn.getProperty('_role')).toEqual('menuitem');\n\n itemSeparator = await page.find('q2-dropdown-item >>> [test-id=\"dropdownItemSeparator\"]');\n expect(itemSeparator).toBeNull();\n\n const itemSlotText = await page.$eval(\n 'q2-dropdown-item',\n (element: HTMLQ2DropdownItemElement) =>\n element.shadowRoot.querySelector('slot').assignedNodes()[0].textContent\n );\n expect(itemSlotText).toEqual('item text');\n\n item = await page.find('q2-dropdown-item');\n item.setProperty('disabled', true);\n await page.waitForChanges();\n\n expect(itemBtn).toHaveAttribute('disabled');\n });\n\n it('correctly emits click event', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\" removable>item text</q2-dropdown-item>\n `,\n });\n\n item = await page.find('q2-dropdown-item');\n const clickSpy = await item.spyOnEvent('click');\n\n await dispatchEvent(page, ['q2-dropdown-item', '[test-id=\"dropdownItem\"]'], 'click');\n expect(clickSpy).toHaveReceivedEventTimes(1);\n expect(clickSpy).toHaveReceivedEventDetail({ type: 'select', value: 'itemValue' });\n\n await dispatchEvent(page, ['q2-dropdown-item', '[test-id=\"removeDropdownItem\"]'], 'click');\n expect(clickSpy).toHaveReceivedEventTimes(2);\n expect(clickSpy).toHaveReceivedEventDetail({ type: 'remove', value: 'itemValue' });\n });\n\n it('item content is the same width as the q2-btn', async function (): Promise<void> {\n page = await setup({\n html: `<q2-dropdown-item>Test</q2-dropdown-item>`,\n });\n\n const { btnWidth, contentWidth, btnPadding } = await page.$eval(\n 'q2-dropdown-item',\n (el: HTMLQ2DropdownItemElement) => {\n const itemBtn = el.shadowRoot.querySelector('.dropdown-item');\n const itemContent = el.shadowRoot.querySelector('.dropdown-item-content');\n const contentWidth = itemContent.clientWidth;\n const btnWidth = itemBtn.clientWidth;\n const btnPadding = parseInt(getComputedStyle(itemBtn).getPropertyValue('padding'));\n return {\n btnWidth,\n contentWidth,\n btnPadding,\n };\n }\n );\n\n expect(btnWidth).toEqual(contentWidth + btnPadding * 2);\n });\n\n describe('Props', () => {\n describe('label', () => {\n describe('when provided', () => {\n it('applies label to itemDOM() button', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\" label=\"item text\"></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn.getAttribute('label')).toEqual('item text');\n });\n });\n describe('when not provided', () => {\n it('tries to use textContent to apply label to itemDOM() button', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\">item text</q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn.getAttribute('label')).toEqual('item text');\n });\n it('applies label to itemDOM() button when using q2-loc component (TCT-2678)', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\"><q2-loc value=\"item text\"/></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn.getAttribute('label')).toEqual('item text');\n });\n });\n });\n\n describe('separator', () => {\n it('renders as a separator', async () => {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\" separator>item text</q2-dropdown-item>\n `,\n });\n\n itemSeparator = await page.find('q2-dropdown-item >>> .dropdown-separator');\n expect(itemSeparator).not.toBeNull();\n expect(itemSeparator).toEqualAttribute('role', 'separator');\n expect(itemSeparator).toHaveClass('dropdown-separator');\n\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn).toBeNull();\n });\n });\n\n describe('removable', () => {\n beforeEach(async () => {\n page = await setup({\n html: ``,\n });\n await setTestStrings(page, {\n 'tecton.element.dropdownItem.remove': 'Remove Option {0}',\n });\n await page.setContent('<q2-dropdown-item value=\"itemValue\" removable></q2-dropdown-item>');\n await page.waitForChanges();\n });\n it('renders a remove button', async () => {\n item = await page.find('q2-dropdown-item');\n removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');\n\n expect(removeBtn).not.toBeNull();\n expect(removeBtn).not.toHaveAttribute('disabled');\n expect(removeBtn).toEqualAttribute('label', 'Remove Option ');\n expect(await removeBtn.getProperty('_role')).toEqual('menuitem');\n });\n\n it('uses item label in remove button label', async () => {\n item = await page.find('q2-dropdown-item');\n item.setProperty('label', 'Item Text');\n await page.waitForChanges();\n removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');\n\n expect(removeBtn).not.toBeNull();\n expect(removeBtn).toEqualAttribute('label', 'Remove Option Item Text');\n });\n });\n\n describe('disabled', () => {\n it('disables the dropdown item', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\" disabled></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n\n expect(itemBtn).toHaveAttribute('disabled');\n });\n\n it('disables the remove button when removable', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\" disabled removable></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');\n expect(itemBtn).toHaveAttribute('disabled');\n expect(removeBtn).toHaveAttribute('disabled');\n });\n });\n });\n\n describe('Focus', () => {\n it('does not trigger focus delegator when item or remove btn focused', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\" removable>item text</q2-dropdown-item>\n `,\n });\n\n item = await page.find('q2-dropdown-item');\n const itemFocusSpy = await item.spyOnEvent('focus');\n\n itemBtn = await page.find('q2-dropdown-item >>> [test-id=\"dropdownItem\"]');\n const itemBtnFocusSpy = await itemBtn.spyOnEvent('focus');\n\n expect(itemFocusSpy).toHaveReceivedEventTimes(0);\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);\n\n await dispatchEvent(page, ['q2-dropdown-item', '[test-id=\"removeDropdownItem\"]'], 'focus');\n expect(itemFocusSpy).toHaveReceivedEventTimes(0);\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);\n\n await dispatchEvent(page, ['q2-dropdown-item', '[test-id=\"dropdownItem\"]'], 'focus');\n expect(itemFocusSpy).toHaveReceivedEventTimes(0);\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(2);\n });\n\n it('handles focus manipulation', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\" removable>item text</q2-dropdown-item>\n `,\n });\n\n itemBtn = await page.find('q2-dropdown-item >>> [test-id=\"dropdownItem\"]');\n const itemBtnFocusSpy = await itemBtn.spyOnEvent('focus');\n removeBtn = await page.find('q2-dropdown-item >>> [test-id=\"removeDropdownItem\"]');\n const removeBtnFocusSpy = await removeBtn.spyOnEvent('focus');\n\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);\n expect(removeBtnFocusSpy).toHaveReceivedEventTimes(0);\n\n await dispatchEvent(page, 'q2-dropdown-item', 'focus');\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(2);\n\n await page.keyboard.press('ArrowRight');\n expect(removeBtnFocusSpy).toHaveReceivedEventTimes(2);\n\n await page.keyboard.press('ArrowLeft');\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(4);\n\n await page.keyboard.press('ArrowRight');\n expect(removeBtnFocusSpy).toHaveReceivedEventTimes(4);\n\n await page.keyboard.press('ArrowLeft');\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(6);\n });\n });\n\n describe('Deprecations', () => {\n it('handles deprecated `ariaLabel` prop', async () => {\n const label = 'My Label';\n page = await setup({\n html: `<q2-dropdown-item aria-label=\"${label}\">Text</q2-dropdown-item>`,\n });\n await page.waitForChanges();\n await testDeprecatedAriaLabel(await page.find('q2-dropdown-item'), label);\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn).toEqualAttribute('label', label);\n expect(itemBtn).toHaveAttribute('hide-label');\n });\n });\n\n describe('Accessibility', () => {\n describe('aXe DevTools', () => {\n it('does not have accessibility violations', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\">item text</q2-dropdown-item>\n </div>\n `,\n });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n describe('Accessibility Tree', () => {});\n describe('Keyboard Controls', () => {});\n describe('Other', () => {});\n });\n});\n"]}
1
+ {"version":3,"file":"q2-dropdown-item-test.e2e.js","sourceRoot":"","sources":["../../../../src/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EElement, E2EPage } from '@stencil/core/testing';\nimport {\n setTestStrings,\n setup,\n dispatchEvent,\n testDeprecatedAriaLabel,\n getListOfStyleCompilationIssues,\n evaluateA11y,\n} from '@/utils/helpers';\n\ndescribe('q2-dropdown-item', () => {\n let page: E2EPage;\n let item: E2EElement;\n let itemBtn: E2EElement;\n let itemSeparator: E2EElement;\n let removeBtn: E2EElement;\n\n it('properly compiles CSS vars and functions', async () => {\n page = await setup({ html: '<q2-dropdown-item></q2-dropdown-item>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-dropdown-item')).toHaveLength(0);\n });\n\n it('renders base state', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\">item text</q2-dropdown-item>\n `,\n });\n\n itemBtn = await page.find('q2-dropdown-item >>> [test-id=\"dropdownItem\"]');\n expect(itemBtn).not.toBeNull();\n expect(itemBtn.tagName.toLowerCase()).toEqual('button');\n expect(itemBtn).toHaveClass('dropdown-item');\n expect(itemBtn).not.toHaveAttribute('disabled');\n expect(itemBtn).toEqualAttribute('role', 'menuitem');\n\n itemSeparator = await page.find('q2-dropdown-item >>> [test-id=\"dropdownItemSeparator\"]');\n expect(itemSeparator).toBeNull();\n\n const itemSlotText = await page.$eval(\n 'q2-dropdown-item',\n (element: HTMLQ2DropdownItemElement) =>\n element.shadowRoot.querySelector('slot').assignedNodes()[0].textContent\n );\n expect(itemSlotText).toEqual('item text');\n\n item = await page.find('q2-dropdown-item');\n item.setProperty('disabled', true);\n await page.waitForChanges();\n\n expect(itemBtn).toHaveAttribute('disabled');\n });\n\n it('correctly emits click event', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\" removable>item text</q2-dropdown-item>\n `,\n });\n\n item = await page.find('q2-dropdown-item');\n const clickSpy = await item.spyOnEvent('click');\n\n await dispatchEvent(page, ['q2-dropdown-item', '[test-id=\"dropdownItem\"]'], 'click');\n expect(clickSpy).toHaveReceivedEventTimes(1);\n expect(clickSpy).toHaveReceivedEventDetail({ type: 'select', value: 'itemValue' });\n\n await dispatchEvent(page, ['q2-dropdown-item', '[test-id=\"removeDropdownItem\"]'], 'click');\n expect(clickSpy).toHaveReceivedEventTimes(2);\n expect(clickSpy).toHaveReceivedEventDetail({ type: 'remove', value: 'itemValue' });\n });\n\n describe('Props', () => {\n describe('label', () => {\n describe('when provided', () => {\n it('applies label to the <button>', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\" label=\"item text\"></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn.innerText).toEqual('item text');\n });\n });\n describe('when not provided', () => {\n it('tries to use textContent to apply label to the <button>', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\">item text</q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn.innerText).toEqual('item text');\n });\n it('tries to use <q2-loc> component value prop (TCT-2678)', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\"><q2-loc value=\"item text\"/></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn.innerText).toEqual('item text');\n });\n it('tries to use <q2-loc> component innerText (TCT-2678)', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\"><q2-loc>item text</q2-loc></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn.innerText).toEqual('item text');\n });\n });\n });\n\n describe('separator', () => {\n it('renders as a separator', async () => {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\" separator>item text</q2-dropdown-item>\n `,\n });\n\n itemSeparator = await page.find('q2-dropdown-item >>> .dropdown-separator');\n expect(itemSeparator).not.toBeNull();\n expect(itemSeparator).toEqualAttribute('role', 'separator');\n expect(itemSeparator).toHaveClass('dropdown-separator');\n\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn).toBeNull();\n });\n });\n\n describe('removable', () => {\n beforeEach(async () => {\n page = await setup({\n html: ``,\n });\n await setTestStrings(page, {\n 'tecton.element.dropdownItem.remove': 'Remove Option {0}',\n });\n await page.setContent('<q2-dropdown-item value=\"itemValue\" removable></q2-dropdown-item>');\n await page.waitForChanges();\n });\n describe('when provided', () => {\n it('renders a remove button', async () => {\n item = await page.find('q2-dropdown-item');\n removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');\n\n expect(removeBtn).not.toBeNull();\n expect(removeBtn).not.toHaveAttribute('disabled');\n expect(removeBtn).toEqualAttribute('aria-label', 'Remove Option ');\n });\n\n it('uses item label in remove button aria-label when provided', async () => {\n item = await page.find('q2-dropdown-item');\n item.setProperty('label', 'Item Text');\n await page.waitForChanges();\n removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');\n\n expect(removeBtn).not.toBeNull();\n expect(removeBtn).toEqualAttribute('aria-label', 'Remove Option Item Text');\n });\n });\n\n describe('when not provided', () => {\n it('does not render a remove button', async () => {\n item = await page.find('q2-dropdown-item');\n item.setProperty('removable', false);\n await page.waitForChanges();\n removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');\n\n expect(removeBtn).toBeNull();\n });\n });\n });\n\n describe('disabled', () => {\n describe('when provided', () => {\n it('disables the dropdown item', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\" disabled></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn).toHaveAttribute('disabled');\n });\n\n it('disables the remove button', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\" disabled removable></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');\n expect(itemBtn).toHaveAttribute('disabled');\n expect(removeBtn).toHaveAttribute('disabled');\n });\n });\n describe('when not provided', () => {\n it('does not disable the dropdown item', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\"></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn).not.toHaveAttribute('disabled');\n });\n\n it('does not disable the remove button', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\" removable></q2-dropdown-item>\n </div>\n `,\n });\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n removeBtn = await page.find('q2-dropdown-item >>> .remove-dropdown-item');\n expect(itemBtn).not.toHaveAttribute('disabled');\n expect(removeBtn).not.toHaveAttribute('disabled');\n });\n });\n });\n });\n\n describe('Focus', () => {\n it('does not trigger component focus delegator when item or remove <button> is focused', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\" removable>item text</q2-dropdown-item>\n `,\n });\n\n item = await page.find('q2-dropdown-item');\n itemBtn = await page.find('q2-dropdown-item >>> [test-id=\"dropdownItem\"]');\n removeBtn = await page.find('q2-dropdown-item >>> [test-id=\"removeDropdownItem\"]');\n\n const itemFocusSpy = await item.spyOnEvent('focus');\n const itemBtnFocusSpy = await itemBtn.spyOnEvent('focus');\n const removeBtnFocusSpy = await removeBtn.spyOnEvent('focus');\n\n expect(itemFocusSpy).toHaveReceivedEventTimes(0);\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);\n expect(removeBtnFocusSpy).toHaveReceivedEventTimes(0);\n\n await dispatchEvent(page, ['q2-dropdown-item', '[test-id=\"removeDropdownItem\"]'], 'focus');\n expect(itemFocusSpy).toHaveReceivedEventTimes(0);\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);\n expect(removeBtnFocusSpy).toHaveReceivedEventTimes(1);\n\n await dispatchEvent(page, ['q2-dropdown-item', '[test-id=\"dropdownItem\"]'], 'focus');\n expect(itemFocusSpy).toHaveReceivedEventTimes(0);\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(1);\n });\n\n it('handles focus manipulation', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-dropdown-item value=\"itemValue\" removable>item text</q2-dropdown-item>\n `,\n });\n\n itemBtn = await page.find('q2-dropdown-item >>> [test-id=\"dropdownItem\"]');\n removeBtn = await page.find('q2-dropdown-item >>> [test-id=\"removeDropdownItem\"]');\n const itemBtnFocusSpy = await itemBtn.spyOnEvent('focus');\n const removeBtnFocusSpy = await removeBtn.spyOnEvent('focus');\n\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(0);\n expect(removeBtnFocusSpy).toHaveReceivedEventTimes(0);\n\n await dispatchEvent(page, 'q2-dropdown-item', 'focus');\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(1);\n\n await page.keyboard.press('ArrowRight');\n expect(removeBtnFocusSpy).toHaveReceivedEventTimes(1);\n\n await page.keyboard.press('ArrowLeft');\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(2);\n\n await page.keyboard.press('ArrowRight');\n expect(removeBtnFocusSpy).toHaveReceivedEventTimes(2);\n\n await page.keyboard.press('ArrowLeft');\n expect(itemBtnFocusSpy).toHaveReceivedEventTimes(3);\n });\n });\n\n describe('Deprecations', () => {\n it('handles deprecated `ariaLabel` prop', async () => {\n const myLabel = 'My Label';\n page = await setup({\n html: `<q2-dropdown-item aria-label=\"${myLabel}\">Text</q2-dropdown-item>`,\n });\n await testDeprecatedAriaLabel(await page.find('q2-dropdown-item'), myLabel);\n await page.waitForChanges();\n itemBtn = await page.find('q2-dropdown-item >>> .dropdown-item');\n expect(itemBtn.innerText).toEqual(myLabel);\n });\n });\n\n describe('Accessibility', () => {\n describe('aXe DevTools', () => {\n it('does not have accessibility violations', async () => {\n page = await setup({\n html: `\n <div role=\"menu\">\n <q2-dropdown-item value=\"itemValue\">item text</q2-dropdown-item>\n </div>\n `,\n });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n describe('Accessibility Tree', () => {});\n describe('Keyboard Controls', () => {});\n describe('Other', () => {});\n });\n});\n"]}
@@ -206,7 +206,7 @@ export class Q2EditableField {
206
206
  // #endregion
207
207
  // #region Render Methods
208
208
  render() {
209
- return (h("div", { key: '5d8bb7b03afcc5c8efe1d9dab03e09e34bcd3148' }, this.generateEditStateDOM(), this.generateReadStateDOM()));
209
+ return (h("div", { key: '255dac3b6e39618e37fc129ef0a743aca1aefc88' }, this.generateEditStateDOM(), this.generateReadStateDOM()));
210
210
  }
211
211
  static get is() { return "q2-editable-field"; }
212
212
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1,66 @@
1
+ * {
2
+ box-sizing: border-box;
3
+ }
4
+
5
+ *:active {
6
+ outline: none;
7
+ }
8
+
9
+ *:focus {
10
+ outline: none;
11
+ box-shadow: var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc);
12
+ }
13
+
14
+ :host {
15
+ box-shadow: none !important;
16
+ }
17
+
18
+ ::-moz-focus-inner {
19
+ border: none;
20
+ }
21
+
22
+ input,
23
+ textarea,
24
+ button {
25
+ font-family: inherit;
26
+ font-size: inherit;
27
+ font-stretch: inherit;
28
+ }
29
+
30
+ :host(.sr),
31
+ :host(.sr) button {
32
+ border: 0;
33
+ clip: rect(0 0 0 0);
34
+ height: 1px;
35
+ margin: -1px;
36
+ overflow: hidden;
37
+ padding: 0;
38
+ position: absolute;
39
+ width: 1px;
40
+ white-space: nowrap;
41
+ }
42
+
43
+ .sr,
44
+ .sr button {
45
+ border: 0;
46
+ clip: rect(0 0 0 0);
47
+ height: 1px;
48
+ margin: -1px;
49
+ overflow: hidden;
50
+ padding: 0;
51
+ position: absolute;
52
+ width: 1px;
53
+ white-space: nowrap;
54
+ }
55
+
56
+ .hidden {
57
+ display: none;
58
+ }
59
+
60
+ :host([hidden]) {
61
+ display: none;
62
+ }
63
+
64
+ .invisible {
65
+ visibility: hidden;
66
+ }