q2-tecton-elements 1.50.1 → 1.51.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 (578) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +21 -12
  2. package/dist/cjs/click-elsewhere_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/index-9aa4a776.js +235 -0
  4. package/dist/cjs/index-9aa4a776.js.map +1 -0
  5. package/dist/cjs/{index-43010ce4.js → index-f69742cf.js} +1 -1
  6. package/dist/cjs/{index-43010ce4.js.map → index-f69742cf.js.map} +1 -1
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/q2-action-group.cjs.entry.js +50 -0
  9. package/dist/cjs/q2-action-group.cjs.entry.js.map +1 -0
  10. package/dist/cjs/q2-action-sheet.cjs.entry.js +1364 -3
  11. package/dist/cjs/q2-action-sheet.cjs.entry.js.map +1 -1
  12. package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-badge_7.cjs.entry.js +23 -13
  14. package/dist/cjs/q2-badge_7.cjs.entry.js.map +1 -1
  15. package/dist/cjs/q2-calendar.cjs.entry.js +2 -2
  16. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  17. package/dist/cjs/q2-carousel-pane.cjs.entry.js +3 -3
  18. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  19. package/dist/cjs/q2-chart-area.cjs.entry.js +2 -2
  20. package/dist/cjs/q2-chart-area.cjs.entry.js.map +1 -1
  21. package/dist/cjs/q2-chart-bar.cjs.entry.js +2 -2
  22. package/dist/cjs/q2-chart-bar.cjs.entry.js.map +1 -1
  23. package/dist/cjs/q2-chart-donut.cjs.entry.js +16 -16
  24. package/dist/cjs/q2-chart-donut.cjs.entry.js.map +1 -1
  25. package/dist/cjs/q2-checkbox-group.cjs.entry.js +2 -2
  26. package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
  27. package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
  28. package/dist/cjs/q2-currency.cjs.entry.js +1 -1
  29. package/dist/cjs/q2-data-table.cjs.entry.js +62 -62
  30. package/dist/cjs/q2-data-table.cjs.entry.js.map +1 -1
  31. package/dist/cjs/q2-detail.cjs.entry.js +2 -2
  32. package/dist/cjs/q2-dropdown-item.cjs.entry.js +2 -2
  33. package/dist/cjs/q2-dropdown-item.cjs.entry.js.map +1 -1
  34. package/dist/cjs/q2-dropdown.cjs.entry.js +77 -5
  35. package/dist/cjs/q2-dropdown.cjs.entry.js.map +1 -1
  36. package/dist/cjs/q2-editable-field.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-formatted-text.cjs.entry.js +72 -0
  38. package/dist/cjs/q2-formatted-text.cjs.entry.js.map +1 -0
  39. package/dist/cjs/q2-item.cjs.entry.js +2 -2
  40. package/dist/cjs/q2-legend.cjs.entry.js +2 -2
  41. package/dist/cjs/q2-legend.cjs.entry.js.map +1 -1
  42. package/dist/cjs/q2-link.cjs.entry.js +64 -0
  43. package/dist/cjs/q2-link.cjs.entry.js.map +1 -0
  44. package/dist/cjs/q2-list.cjs.entry.js +2 -2
  45. package/dist/cjs/q2-loc.cjs.entry.js +2 -2
  46. package/dist/cjs/q2-message.cjs.entry.js +2 -2
  47. package/dist/cjs/q2-month-picker.cjs.entry.js +3 -3
  48. package/dist/cjs/q2-optgroup.cjs.entry.js +2 -2
  49. package/dist/cjs/q2-option-list.cjs.entry.js +9 -4
  50. package/dist/cjs/q2-option-list.cjs.entry.js.map +1 -1
  51. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  52. package/dist/cjs/q2-pagination.cjs.entry.js +90 -9
  53. package/dist/cjs/q2-pagination.cjs.entry.js.map +1 -1
  54. package/dist/cjs/q2-pill.cjs.entry.js +26 -5
  55. package/dist/cjs/q2-pill.cjs.entry.js.map +1 -1
  56. package/dist/cjs/q2-radio-group.cjs.entry.js +2 -2
  57. package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/q2-radio.cjs.entry.js +1 -1
  59. package/dist/cjs/q2-relative-time.cjs.entry.js +3 -3
  60. package/dist/cjs/q2-resize-observer.cjs.entry.js +96 -0
  61. package/dist/cjs/q2-resize-observer.cjs.entry.js.map +1 -0
  62. package/dist/cjs/q2-section.cjs.entry.js +27 -3
  63. package/dist/cjs/q2-section.cjs.entry.js.map +1 -1
  64. package/dist/cjs/q2-select.cjs.entry.js +7 -6
  65. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  66. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  67. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +2 -2
  68. package/dist/cjs/q2-stepper.cjs.entry.js +39 -3
  69. package/dist/cjs/q2-stepper.cjs.entry.js.map +1 -1
  70. package/dist/cjs/q2-tag.cjs.entry.js +3 -2
  71. package/dist/cjs/q2-tag.cjs.entry.js.map +1 -1
  72. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  73. package/dist/cjs/q2-textarea.cjs.entry.js +46 -11
  74. package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
  75. package/dist/cjs/q2-tooltip.cjs.entry.js +2 -2
  76. package/dist/cjs/q2-tooltip.cjs.entry.js.map +1 -1
  77. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -2
  78. package/dist/collection/collection-manifest.json +4 -0
  79. package/dist/collection/components/q2-action-group/q2-action-group.css +99 -0
  80. package/dist/collection/components/q2-action-group/q2-action-group.js +120 -0
  81. package/dist/collection/components/q2-action-group/q2-action-group.js.map +1 -0
  82. package/dist/collection/components/q2-action-group/test/q2-action-group.e2e.js +30 -0
  83. package/dist/collection/components/q2-action-group/test/q2-action-group.e2e.js.map +1 -0
  84. package/dist/collection/components/q2-action-group/test/q2-action-group.spec.js +156 -0
  85. package/dist/collection/components/q2-action-group/test/q2-action-group.spec.js.map +1 -0
  86. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +3 -2
  87. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js.map +1 -1
  88. package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
  89. package/dist/collection/components/q2-avatar/test/q2-avatar-test.e2e.js +14 -9
  90. package/dist/collection/components/q2-avatar/test/q2-avatar-test.e2e.js.map +1 -1
  91. package/dist/collection/components/q2-badge/test/q2-badge-test.e2e.js +14 -9
  92. package/dist/collection/components/q2-badge/test/q2-badge-test.e2e.js.map +1 -1
  93. package/dist/collection/components/q2-btn/test/q2-btn-test.e2e.js +14 -9
  94. package/dist/collection/components/q2-btn/test/q2-btn-test.e2e.js.map +1 -1
  95. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  96. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js +227 -223
  97. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js.map +1 -1
  98. package/dist/collection/components/q2-card/test/q2-card-test.e2e.js +12 -7
  99. package/dist/collection/components/q2-card/test/q2-card-test.e2e.js.map +1 -1
  100. package/dist/collection/components/q2-carousel/test/q2-carousel-test.e2e.js +49 -45
  101. package/dist/collection/components/q2-carousel/test/q2-carousel-test.e2e.js.map +1 -1
  102. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  103. package/dist/collection/components/q2-chart-area/q2-chart-area.js +2 -2
  104. package/dist/collection/components/q2-chart-area/q2-chart-area.js.map +1 -1
  105. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js +12 -7
  106. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js.map +1 -1
  107. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +2 -2
  108. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js.map +1 -1
  109. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.e2e.js +16 -11
  110. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.e2e.js.map +1 -1
  111. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +15 -15
  112. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js.map +1 -1
  113. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js +32 -26
  114. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js.map +1 -1
  115. package/dist/collection/components/q2-checkbox/test/q2-checkbox-test.e2e.js +12 -7
  116. package/dist/collection/components/q2-checkbox/test/q2-checkbox-test.e2e.js.map +1 -1
  117. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js +2 -2
  118. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js.map +1 -1
  119. package/dist/collection/components/q2-checkbox-group/test/q2-checkbox-group-test.e2e.js +22 -17
  120. package/dist/collection/components/q2-checkbox-group/test/q2-checkbox-group-test.e2e.js.map +1 -1
  121. package/dist/collection/components/q2-currency/q2-currency.js +1 -1
  122. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js +12 -7
  123. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js.map +1 -1
  124. package/dist/collection/components/q2-data-table/q2-data-table.js +104 -104
  125. package/dist/collection/components/q2-data-table/q2-data-table.js.map +1 -1
  126. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js +42 -24
  127. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js.map +1 -1
  128. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  129. package/dist/collection/components/q2-detail/test/q2-detail-test.e2e.js +12 -7
  130. package/dist/collection/components/q2-detail/test/q2-detail-test.e2e.js.map +1 -1
  131. package/dist/collection/components/q2-dropdown/q2-dropdown.js +201 -4
  132. package/dist/collection/components/q2-dropdown/q2-dropdown.js.map +1 -1
  133. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js +305 -124
  134. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js.map +1 -1
  135. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js +1 -1
  136. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js.map +1 -1
  137. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js +18 -13
  138. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js.map +1 -1
  139. package/dist/collection/components/q2-editable-field/test/q2-editable-field-test.e2e.js +14 -18
  140. package/dist/collection/components/q2-editable-field/test/q2-editable-field-test.e2e.js.map +1 -1
  141. package/dist/collection/components/q2-formatted-text/q2-formatted-text.css +94 -0
  142. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +230 -0
  143. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js.map +1 -0
  144. package/dist/collection/components/q2-formatted-text/test/q2-formatted-text-test.e2e.js +430 -0
  145. package/dist/collection/components/q2-formatted-text/test/q2-formatted-text-test.e2e.js.map +1 -0
  146. package/dist/collection/components/q2-icon/test/q2-icon-test.e2e.js +14 -9
  147. package/dist/collection/components/q2-icon/test/q2-icon-test.e2e.js.map +1 -1
  148. package/dist/collection/components/q2-input/q2-input.css +9 -0
  149. package/dist/collection/components/q2-input/q2-input.js +7 -8
  150. package/dist/collection/components/q2-input/q2-input.js.map +1 -1
  151. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js +50 -33
  152. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js.map +1 -1
  153. package/dist/collection/components/q2-item/q2-item.js +1 -1
  154. package/dist/collection/components/q2-item/test/q2-item-test.e2e.js +32 -7
  155. package/dist/collection/components/q2-item/test/q2-item-test.e2e.js.map +1 -1
  156. package/dist/collection/components/q2-legend/q2-legend.css +1 -1
  157. package/dist/collection/components/q2-legend/q2-legend.js +1 -1
  158. package/dist/collection/components/q2-legend/test/q2-legend-test.e2e.js +13 -8
  159. package/dist/collection/components/q2-legend/test/q2-legend-test.e2e.js.map +1 -1
  160. package/dist/collection/components/q2-link/q2-link.css +146 -0
  161. package/dist/collection/components/q2-link/q2-link.js +242 -0
  162. package/dist/collection/components/q2-link/q2-link.js.map +1 -0
  163. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js +145 -0
  164. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js.map +1 -0
  165. package/dist/collection/components/q2-list/q2-list.js +1 -1
  166. package/dist/collection/components/q2-list/test/q2-list-test.e2e.js +12 -7
  167. package/dist/collection/components/q2-list/test/q2-list-test.e2e.js.map +1 -1
  168. package/dist/collection/components/q2-loading/test/q2-loading-element-test.e2e.js +14 -9
  169. package/dist/collection/components/q2-loading/test/q2-loading-element-test.e2e.js.map +1 -1
  170. package/dist/collection/components/q2-loading/test/q2-loading-test.e2e.js +14 -9
  171. package/dist/collection/components/q2-loading/test/q2-loading-test.e2e.js.map +1 -1
  172. package/dist/collection/components/q2-loc/q2-loc.js +1 -1
  173. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js +16 -11
  174. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js.map +1 -1
  175. package/dist/collection/components/q2-message/q2-message.js +1 -1
  176. package/dist/collection/components/q2-message/test/q2-message-test.e2e.js +14 -9
  177. package/dist/collection/components/q2-message/test/q2-message-test.e2e.js.map +1 -1
  178. package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
  179. package/dist/collection/components/q2-optgroup/test/q2-optgroup-test.e2e.js +20 -13
  180. package/dist/collection/components/q2-optgroup/test/q2-optgroup-test.e2e.js.map +1 -1
  181. package/dist/collection/components/q2-option/q2-option.js +1 -1
  182. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js +28 -12
  183. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js.map +1 -1
  184. package/dist/collection/components/q2-option-list/q2-option-list.js +7 -5
  185. package/dist/collection/components/q2-option-list/q2-option-list.js.map +1 -1
  186. package/dist/collection/components/q2-option-list/test/q2-option-list-test.e2e.js +415 -405
  187. package/dist/collection/components/q2-option-list/test/q2-option-list-test.e2e.js.map +1 -1
  188. package/dist/collection/components/q2-pagination/q2-pagination.js +230 -14
  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 +138 -15
  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.css +12 -0
  193. package/dist/collection/components/q2-pill/q2-pill.js +43 -3
  194. package/dist/collection/components/q2-pill/q2-pill.js.map +1 -1
  195. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js +412 -212
  196. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js.map +1 -1
  197. package/dist/collection/components/q2-popover/q2-popover.js +37 -11
  198. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  199. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js +296 -236
  200. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js.map +1 -1
  201. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js +3 -3
  202. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js.map +1 -1
  203. package/dist/collection/components/q2-radio/test/q2-radio-test.e2e.js +21 -7
  204. package/dist/collection/components/q2-radio/test/q2-radio-test.e2e.js.map +1 -1
  205. package/dist/collection/components/q2-radio-group/q2-radio-group.js +2 -2
  206. package/dist/collection/components/q2-radio-group/q2-radio-group.js.map +1 -1
  207. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.e2e.js +32 -26
  208. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.e2e.js.map +1 -1
  209. package/dist/collection/components/q2-relative-time/q2-relative-time.js +1 -1
  210. package/dist/collection/components/q2-relative-time/test/q2-relative-time-test.e2e.js +12 -7
  211. package/dist/collection/components/q2-relative-time/test/q2-relative-time-test.e2e.js.map +1 -1
  212. package/dist/collection/components/q2-resize-observer/q2-resize-observer.css +71 -0
  213. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +166 -0
  214. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js.map +1 -0
  215. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.e2e.js +83 -0
  216. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.e2e.js.map +1 -0
  217. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.spec.js +66 -0
  218. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.spec.js.map +1 -0
  219. package/dist/collection/components/q2-section/q2-section.js +78 -2
  220. package/dist/collection/components/q2-section/q2-section.js.map +1 -1
  221. package/dist/collection/components/q2-section/test/q2-section-test.e2e.js +39 -9
  222. package/dist/collection/components/q2-section/test/q2-section-test.e2e.js.map +1 -1
  223. package/dist/collection/components/q2-select/q2-select.js +23 -5
  224. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  225. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js +695 -676
  226. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js.map +1 -1
  227. package/dist/collection/components/q2-stepper/q2-stepper.js +76 -2
  228. package/dist/collection/components/q2-stepper/q2-stepper.js.map +1 -1
  229. package/dist/collection/components/q2-stepper/test/q2-stepper-test.e2e.js +183 -87
  230. package/dist/collection/components/q2-stepper/test/q2-stepper-test.e2e.js.map +1 -1
  231. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +2 -2
  232. package/dist/collection/components/q2-stepper-pane/test/q2-stepper-pane-test.e2e.js +20 -9
  233. package/dist/collection/components/q2-stepper-pane/test/q2-stepper-pane-test.e2e.js.map +1 -1
  234. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
  235. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js +71 -67
  236. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js.map +1 -1
  237. package/dist/collection/components/q2-tab-container/q2-tab-container.js +50 -7
  238. package/dist/collection/components/q2-tab-container/q2-tab-container.js.map +1 -1
  239. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.e2e.js +89 -65
  240. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.e2e.js.map +1 -1
  241. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  242. package/dist/collection/components/q2-tab-pane/test/q2-tab-pane-test.e2e.js +14 -9
  243. package/dist/collection/components/q2-tab-pane/test/q2-tab-pane-test.e2e.js.map +1 -1
  244. package/dist/collection/components/q2-tag/q2-tag.js +19 -1
  245. package/dist/collection/components/q2-tag/q2-tag.js.map +1 -1
  246. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js +47 -28
  247. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js.map +1 -1
  248. package/dist/collection/components/q2-textarea/q2-textarea.js +51 -13
  249. package/dist/collection/components/q2-textarea/q2-textarea.js.map +1 -1
  250. package/dist/collection/components/q2-textarea/test/q2-textarea-test.e2e.js +31 -10
  251. package/dist/collection/components/q2-textarea/test/q2-textarea-test.e2e.js.map +1 -1
  252. package/dist/collection/components/q2-tooltip/q2-tooltip.css +5 -2
  253. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.e2e.js +51 -13
  254. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.e2e.js.map +1 -1
  255. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
  256. package/dist/collection/components/tecton-tab-pane/test/tecton-tab-pane-test.e2e.js +18 -13
  257. package/dist/collection/components/tecton-tab-pane/test/tecton-tab-pane-test.e2e.js.map +1 -1
  258. package/dist/collection/utils/helpers.js +65 -0
  259. package/dist/collection/utils/helpers.js.map +1 -1
  260. package/dist/collection/utils/index.js +11 -11
  261. package/dist/collection/utils/index.js.map +1 -1
  262. package/dist/collection/utils/sanitize-html-string.js +10 -0
  263. package/dist/collection/utils/sanitize-html-string.js.map +1 -0
  264. package/dist/collection/utils/sanitize-regex-string.js +4 -0
  265. package/dist/collection/utils/sanitize-regex-string.js.map +1 -0
  266. package/dist/components/index.js +8 -0
  267. package/dist/components/index.js.map +1 -1
  268. package/dist/components/index2.js +11 -1356
  269. package/dist/components/index2.js.map +1 -1
  270. package/dist/components/q2-action-group.d.ts +11 -0
  271. package/dist/components/q2-action-group.js +75 -0
  272. package/dist/components/q2-action-group.js.map +1 -0
  273. package/dist/components/q2-action-sheet.js +1363 -2
  274. package/dist/components/q2-action-sheet.js.map +1 -1
  275. package/dist/components/q2-avatar2.js +1 -1
  276. package/dist/components/q2-btn2.js +1 -1
  277. package/dist/components/q2-carousel-pane.js +2 -2
  278. package/dist/components/q2-chart-area.js +1 -1
  279. package/dist/components/q2-chart-area.js.map +1 -1
  280. package/dist/components/q2-chart-bar.js +1 -1
  281. package/dist/components/q2-chart-bar.js.map +1 -1
  282. package/dist/components/q2-chart-donut.js +15 -15
  283. package/dist/components/q2-chart-donut.js.map +1 -1
  284. package/dist/components/q2-checkbox-group.js +2 -2
  285. package/dist/components/q2-checkbox-group.js.map +1 -1
  286. package/dist/components/q2-currency.js +1 -1
  287. package/dist/components/q2-data-table.js +64 -64
  288. package/dist/components/q2-data-table.js.map +1 -1
  289. package/dist/components/q2-detail.js +1 -1
  290. package/dist/components/q2-dropdown-item2.js +1 -1
  291. package/dist/components/q2-dropdown-item2.js.map +1 -1
  292. package/dist/components/q2-dropdown.js +82 -5
  293. package/dist/components/q2-dropdown.js.map +1 -1
  294. package/dist/components/q2-formatted-text.d.ts +11 -0
  295. package/dist/components/q2-formatted-text.js +101 -0
  296. package/dist/components/q2-formatted-text.js.map +1 -0
  297. package/dist/components/q2-input2.js +4 -5
  298. package/dist/components/q2-input2.js.map +1 -1
  299. package/dist/components/q2-item.js +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-link.d.ts +11 -0
  303. package/dist/components/q2-link.js +93 -0
  304. package/dist/components/q2-link.js.map +1 -0
  305. package/dist/components/q2-list.js +1 -1
  306. package/dist/components/q2-loc.js +1 -1
  307. package/dist/components/q2-message2.js +1 -1
  308. package/dist/components/q2-month-picker.js +2 -2
  309. package/dist/components/q2-optgroup2.js +1 -1
  310. package/dist/components/q2-option-list2.js +8 -3
  311. package/dist/components/q2-option-list2.js.map +1 -1
  312. package/dist/components/q2-option2.js +1 -1
  313. package/dist/components/q2-pagination.js +97 -10
  314. package/dist/components/q2-pagination.js.map +1 -1
  315. package/dist/components/q2-pill.js +29 -5
  316. package/dist/components/q2-pill.js.map +1 -1
  317. package/dist/components/q2-popover2.js +22 -12
  318. package/dist/components/q2-popover2.js.map +1 -1
  319. package/dist/components/q2-radio-group.js +2 -2
  320. package/dist/components/q2-radio-group.js.map +1 -1
  321. package/dist/components/q2-relative-time.js +1 -1
  322. package/dist/components/q2-resize-observer.d.ts +11 -0
  323. package/dist/components/q2-resize-observer.js +8 -0
  324. package/dist/components/q2-resize-observer.js.map +1 -0
  325. package/dist/components/q2-resize-observer2.js +112 -0
  326. package/dist/components/q2-resize-observer2.js.map +1 -0
  327. package/dist/components/q2-section.js +30 -4
  328. package/dist/components/q2-section.js.map +1 -1
  329. package/dist/components/q2-select2.js +7 -5
  330. package/dist/components/q2-select2.js.map +1 -1
  331. package/dist/components/q2-stepper-vertical.js +1 -1
  332. package/dist/components/q2-stepper.js +40 -3
  333. package/dist/components/q2-stepper.js.map +1 -1
  334. package/dist/components/q2-tab-container.js +20 -8
  335. package/dist/components/q2-tab-container.js.map +1 -1
  336. package/dist/components/q2-tab-pane.js +1 -1
  337. package/dist/components/q2-tag.js +3 -1
  338. package/dist/components/q2-tag.js.map +1 -1
  339. package/dist/components/q2-textarea.js +49 -12
  340. package/dist/components/q2-textarea.js.map +1 -1
  341. package/dist/components/q2-tooltip.js +1 -1
  342. package/dist/components/q2-tooltip.js.map +1 -1
  343. package/dist/components/tecton-tab-pane.js +2 -2
  344. package/dist/esm/click-elsewhere_2.entry.js +21 -12
  345. package/dist/esm/click-elsewhere_2.entry.js.map +1 -1
  346. package/dist/esm/{index-c6d74f10.js → index-3184c760.js} +1 -1
  347. package/dist/esm/{index-c6d74f10.js.map → index-3184c760.js.map} +1 -1
  348. package/dist/esm/index-844fc010.js +211 -0
  349. package/dist/esm/index-844fc010.js.map +1 -0
  350. package/dist/esm/loader.js +1 -1
  351. package/dist/esm/q2-action-group.entry.js +46 -0
  352. package/dist/esm/q2-action-group.entry.js.map +1 -0
  353. package/dist/esm/q2-action-sheet.entry.js +1363 -2
  354. package/dist/esm/q2-action-sheet.entry.js.map +1 -1
  355. package/dist/esm/q2-avatar.entry.js +1 -1
  356. package/dist/esm/q2-badge_7.entry.js +23 -13
  357. package/dist/esm/q2-badge_7.entry.js.map +1 -1
  358. package/dist/esm/q2-calendar.entry.js +2 -2
  359. package/dist/esm/q2-card.entry.js +1 -1
  360. package/dist/esm/q2-carousel-pane.entry.js +3 -3
  361. package/dist/esm/q2-carousel.entry.js +1 -1
  362. package/dist/esm/q2-chart-area.entry.js +2 -2
  363. package/dist/esm/q2-chart-area.entry.js.map +1 -1
  364. package/dist/esm/q2-chart-bar.entry.js +2 -2
  365. package/dist/esm/q2-chart-bar.entry.js.map +1 -1
  366. package/dist/esm/q2-chart-donut.entry.js +16 -16
  367. package/dist/esm/q2-chart-donut.entry.js.map +1 -1
  368. package/dist/esm/q2-checkbox-group.entry.js +2 -2
  369. package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
  370. package/dist/esm/q2-checkbox.entry.js +1 -1
  371. package/dist/esm/q2-currency.entry.js +1 -1
  372. package/dist/esm/q2-data-table.entry.js +62 -62
  373. package/dist/esm/q2-data-table.entry.js.map +1 -1
  374. package/dist/esm/q2-detail.entry.js +2 -2
  375. package/dist/esm/q2-dropdown-item.entry.js +2 -2
  376. package/dist/esm/q2-dropdown-item.entry.js.map +1 -1
  377. package/dist/esm/q2-dropdown.entry.js +77 -5
  378. package/dist/esm/q2-dropdown.entry.js.map +1 -1
  379. package/dist/esm/q2-editable-field.entry.js +1 -1
  380. package/dist/esm/q2-formatted-text.entry.js +68 -0
  381. package/dist/esm/q2-formatted-text.entry.js.map +1 -0
  382. package/dist/esm/q2-item.entry.js +2 -2
  383. package/dist/esm/q2-legend.entry.js +2 -2
  384. package/dist/esm/q2-legend.entry.js.map +1 -1
  385. package/dist/esm/q2-link.entry.js +60 -0
  386. package/dist/esm/q2-link.entry.js.map +1 -0
  387. package/dist/esm/q2-list.entry.js +2 -2
  388. package/dist/esm/q2-loc.entry.js +2 -2
  389. package/dist/esm/q2-message.entry.js +2 -2
  390. package/dist/esm/q2-month-picker.entry.js +3 -3
  391. package/dist/esm/q2-optgroup.entry.js +2 -2
  392. package/dist/esm/q2-option-list.entry.js +9 -4
  393. package/dist/esm/q2-option-list.entry.js.map +1 -1
  394. package/dist/esm/q2-option.entry.js +1 -1
  395. package/dist/esm/q2-pagination.entry.js +90 -9
  396. package/dist/esm/q2-pagination.entry.js.map +1 -1
  397. package/dist/esm/q2-pill.entry.js +26 -5
  398. package/dist/esm/q2-pill.entry.js.map +1 -1
  399. package/dist/esm/q2-radio-group.entry.js +2 -2
  400. package/dist/esm/q2-radio-group.entry.js.map +1 -1
  401. package/dist/esm/q2-radio.entry.js +1 -1
  402. package/dist/esm/q2-relative-time.entry.js +3 -3
  403. package/dist/esm/q2-resize-observer.entry.js +92 -0
  404. package/dist/esm/q2-resize-observer.entry.js.map +1 -0
  405. package/dist/esm/q2-section.entry.js +27 -3
  406. package/dist/esm/q2-section.entry.js.map +1 -1
  407. package/dist/esm/q2-select.entry.js +7 -6
  408. package/dist/esm/q2-select.entry.js.map +1 -1
  409. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  410. package/dist/esm/q2-stepper-vertical.entry.js +2 -2
  411. package/dist/esm/q2-stepper.entry.js +39 -3
  412. package/dist/esm/q2-stepper.entry.js.map +1 -1
  413. package/dist/esm/q2-tag.entry.js +3 -2
  414. package/dist/esm/q2-tag.entry.js.map +1 -1
  415. package/dist/esm/q2-tecton-elements.js +1 -1
  416. package/dist/esm/q2-textarea.entry.js +47 -12
  417. package/dist/esm/q2-textarea.entry.js.map +1 -1
  418. package/dist/esm/q2-tooltip.entry.js +2 -2
  419. package/dist/esm/q2-tooltip.entry.js.map +1 -1
  420. package/dist/esm/tecton-tab-pane.entry.js +2 -2
  421. package/dist/q2-tecton-elements/{p-0a3a804a.entry.js → p-06701928.entry.js} +2 -2
  422. package/dist/q2-tecton-elements/{p-0a3a804a.entry.js.map → p-06701928.entry.js.map} +1 -1
  423. package/dist/q2-tecton-elements/{p-5d936af5.entry.js → p-07d1c3ae.entry.js} +2 -2
  424. package/dist/q2-tecton-elements/p-15ac45d6.js +2 -0
  425. package/dist/q2-tecton-elements/p-15ac45d6.js.map +1 -0
  426. package/dist/q2-tecton-elements/{p-ce4e6b41.entry.js → p-16910682.entry.js} +2 -2
  427. package/dist/q2-tecton-elements/p-16910682.entry.js.map +1 -0
  428. package/dist/q2-tecton-elements/p-188eb162.entry.js +3 -0
  429. package/dist/q2-tecton-elements/p-188eb162.entry.js.map +1 -0
  430. package/dist/q2-tecton-elements/{p-58cafc0d.entry.js → p-1c760a89.entry.js} +2 -2
  431. package/dist/q2-tecton-elements/{p-074ae80c.entry.js → p-1c88d057.entry.js} +2 -2
  432. package/dist/q2-tecton-elements/{p-3b0d3cd4.entry.js → p-20a3d6ed.entry.js} +2 -2
  433. package/dist/q2-tecton-elements/p-20a3d6ed.entry.js.map +1 -0
  434. package/dist/q2-tecton-elements/{p-77a0cc0c.entry.js → p-2733583e.entry.js} +2 -2
  435. package/dist/q2-tecton-elements/{p-4116579f.entry.js → p-3e428290.entry.js} +2 -2
  436. package/dist/q2-tecton-elements/p-3e428290.entry.js.map +1 -0
  437. package/dist/q2-tecton-elements/{p-072c5877.entry.js → p-4774e5b3.entry.js} +2 -2
  438. package/dist/q2-tecton-elements/{p-77272c4c.entry.js → p-490ef8e5.entry.js} +2 -2
  439. package/dist/q2-tecton-elements/{p-0a1dff75.entry.js → p-4e10550d.entry.js} +2 -2
  440. package/dist/q2-tecton-elements/p-4e10550d.entry.js.map +1 -0
  441. package/dist/q2-tecton-elements/{p-2ca6d44f.entry.js → p-50f7328f.entry.js} +2 -2
  442. package/dist/q2-tecton-elements/p-5637c486.entry.js +2 -0
  443. package/dist/q2-tecton-elements/p-5637c486.entry.js.map +1 -0
  444. package/dist/q2-tecton-elements/p-56df21b0.entry.js +2 -0
  445. package/dist/q2-tecton-elements/p-56df21b0.entry.js.map +1 -0
  446. package/dist/q2-tecton-elements/{p-34856c71.entry.js → p-5a834214.entry.js} +2 -2
  447. package/dist/q2-tecton-elements/{p-34856c71.entry.js.map → p-5a834214.entry.js.map} +1 -1
  448. package/dist/q2-tecton-elements/p-5f99a4a8.entry.js +2 -0
  449. package/dist/q2-tecton-elements/p-5f99a4a8.entry.js.map +1 -0
  450. package/dist/q2-tecton-elements/p-72d948b4.entry.js +2 -0
  451. package/dist/q2-tecton-elements/p-72d948b4.entry.js.map +1 -0
  452. package/dist/q2-tecton-elements/{p-3c7be0bb.entry.js → p-7903cd15.entry.js} +2 -2
  453. package/dist/q2-tecton-elements/p-7903cd15.entry.js.map +1 -0
  454. package/dist/q2-tecton-elements/{p-d2e1631a.entry.js → p-7906f49e.entry.js} +2 -2
  455. package/dist/q2-tecton-elements/{p-d2e1631a.entry.js.map → p-7906f49e.entry.js.map} +1 -1
  456. package/dist/q2-tecton-elements/{p-2fcaf2d6.entry.js → p-7aef0c08.entry.js} +2 -2
  457. package/dist/q2-tecton-elements/{p-8a4b106d.entry.js → p-7c9a0122.entry.js} +2 -2
  458. package/dist/q2-tecton-elements/p-7c9f8b62.entry.js +2 -0
  459. package/dist/q2-tecton-elements/p-7c9f8b62.entry.js.map +1 -0
  460. package/dist/q2-tecton-elements/{p-cf32b5db.entry.js → p-81fbe718.entry.js} +2 -2
  461. package/dist/q2-tecton-elements/p-81fbe718.entry.js.map +1 -0
  462. package/dist/q2-tecton-elements/{p-6237c775.entry.js → p-896c7008.entry.js} +2 -2
  463. package/dist/q2-tecton-elements/{p-395904b4.entry.js → p-8d07cf91.entry.js} +2 -2
  464. package/dist/q2-tecton-elements/{p-fffb54e9.entry.js → p-8d2b02e1.entry.js} +2 -2
  465. package/dist/q2-tecton-elements/{p-6e6d9793.entry.js → p-95a7c042.entry.js} +2 -2
  466. package/dist/q2-tecton-elements/{p-45407ecc.entry.js → p-96b1406c.entry.js} +2 -2
  467. package/dist/q2-tecton-elements/{p-cb3f48de.entry.js → p-a47597dd.entry.js} +2 -2
  468. package/dist/q2-tecton-elements/p-a47597dd.entry.js.map +1 -0
  469. package/dist/q2-tecton-elements/p-a5d0e252.entry.js +2 -0
  470. package/dist/q2-tecton-elements/p-a5d0e252.entry.js.map +1 -0
  471. package/dist/q2-tecton-elements/{p-2c26295e.entry.js → p-ac6aa392.entry.js} +2 -2
  472. package/dist/q2-tecton-elements/{p-376a0589.entry.js → p-ad057d10.entry.js} +2 -2
  473. package/dist/q2-tecton-elements/p-ad798287.entry.js +2 -0
  474. package/dist/q2-tecton-elements/p-ad798287.entry.js.map +1 -0
  475. package/dist/q2-tecton-elements/{p-ad998f71.entry.js → p-b0e5e9dc.entry.js} +2 -2
  476. package/dist/q2-tecton-elements/p-b0e5e9dc.entry.js.map +1 -0
  477. package/dist/q2-tecton-elements/{p-34696e3f.entry.js → p-b1784be3.entry.js} +2 -2
  478. package/dist/q2-tecton-elements/{p-259b728a.entry.js → p-b7de110e.entry.js} +2 -2
  479. package/dist/q2-tecton-elements/{p-8111547c.entry.js → p-c235ab3f.entry.js} +2 -2
  480. package/dist/q2-tecton-elements/p-c5667d5d.entry.js +2 -0
  481. package/dist/q2-tecton-elements/p-c5667d5d.entry.js.map +1 -0
  482. package/dist/q2-tecton-elements/{p-c81d299a.entry.js → p-e216ef3f.entry.js} +2 -2
  483. package/dist/q2-tecton-elements/p-e2c800ef.entry.js +2 -0
  484. package/dist/q2-tecton-elements/p-e2c800ef.entry.js.map +1 -0
  485. package/dist/q2-tecton-elements/p-f135b265.entry.js +2 -0
  486. package/dist/q2-tecton-elements/p-f135b265.entry.js.map +1 -0
  487. package/dist/q2-tecton-elements/{p-721365be.js → p-f1e887f5.js} +1 -1
  488. package/dist/q2-tecton-elements/{p-6b7c53a8.entry.js → p-f5f23659.entry.js} +2 -2
  489. package/dist/q2-tecton-elements/p-f7867f21.entry.js +2 -0
  490. package/dist/q2-tecton-elements/p-f7867f21.entry.js.map +1 -0
  491. package/dist/q2-tecton-elements/p-ff8f1a32.entry.js +2 -0
  492. package/dist/q2-tecton-elements/p-ff8f1a32.entry.js.map +1 -0
  493. package/dist/q2-tecton-elements/p-fff01dc1.entry.js +2 -0
  494. package/dist/q2-tecton-elements/p-fff01dc1.entry.js.map +1 -0
  495. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  496. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  497. package/dist/types/components/q2-action-group/q2-action-group.d.ts +30 -0
  498. package/dist/types/components/q2-chart-area/q2-chart-area.d.ts +1 -1
  499. package/dist/types/components/q2-chart-bar/q2-chart-bar.d.ts +1 -1
  500. package/dist/types/components/q2-chart-donut/q2-chart-donut.d.ts +2 -0
  501. package/dist/types/components/q2-data-table/q2-data-table.d.ts +15 -13
  502. package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +36 -0
  503. package/dist/types/components/q2-formatted-text/q2-formatted-text.d.ts +34 -0
  504. package/dist/types/components/q2-input/q2-input.d.ts +10 -9
  505. package/dist/types/components/q2-legend/q2-legend.d.ts +1 -0
  506. package/dist/types/components/q2-link/q2-link.d.ts +36 -0
  507. package/dist/types/components/q2-pagination/q2-pagination.d.ts +60 -3
  508. package/dist/types/components/q2-pill/q2-pill.d.ts +11 -0
  509. package/dist/types/components/q2-popover/q2-popover.d.ts +7 -1
  510. package/dist/types/components/q2-resize-observer/q2-resize-observer.d.ts +28 -0
  511. package/dist/types/components/q2-section/q2-section.d.ts +12 -0
  512. package/dist/types/components/q2-select/q2-select.d.ts +5 -0
  513. package/dist/types/components/q2-stepper/q2-stepper.d.ts +10 -1
  514. package/dist/types/components/q2-tab-container/q2-tab-container.d.ts +8 -2
  515. package/dist/types/components/q2-tag/q2-tag.d.ts +5 -0
  516. package/dist/types/components/q2-textarea/q2-textarea.d.ts +8 -3
  517. package/dist/types/components.d.ts +394 -18
  518. package/dist/types/utils/helpers.d.ts +28 -0
  519. package/dist/types/utils/index.d.ts +3 -3
  520. package/dist/types/utils/sanitize-html-string.d.ts +1 -0
  521. package/dist/types/utils/sanitize-regex-string.d.ts +1 -0
  522. package/package.json +4 -4
  523. package/dist/cjs/index-64d8b839.js +0 -1580
  524. package/dist/cjs/index-64d8b839.js.map +0 -1
  525. package/dist/esm/index-4a80972c.js +0 -1556
  526. package/dist/esm/index-4a80972c.js.map +0 -1
  527. package/dist/q2-tecton-elements/p-0a1dff75.entry.js.map +0 -1
  528. package/dist/q2-tecton-elements/p-3b0d3cd4.entry.js.map +0 -1
  529. package/dist/q2-tecton-elements/p-3c7be0bb.entry.js.map +0 -1
  530. package/dist/q2-tecton-elements/p-403bf3d4.entry.js +0 -2
  531. package/dist/q2-tecton-elements/p-403bf3d4.entry.js.map +0 -1
  532. package/dist/q2-tecton-elements/p-4116579f.entry.js.map +0 -1
  533. package/dist/q2-tecton-elements/p-661ed976.entry.js +0 -2
  534. package/dist/q2-tecton-elements/p-661ed976.entry.js.map +0 -1
  535. package/dist/q2-tecton-elements/p-9a1a4bc0.js +0 -3
  536. package/dist/q2-tecton-elements/p-9a1a4bc0.js.map +0 -1
  537. package/dist/q2-tecton-elements/p-a7a0b8aa.entry.js +0 -2
  538. package/dist/q2-tecton-elements/p-a7a0b8aa.entry.js.map +0 -1
  539. package/dist/q2-tecton-elements/p-aa57b657.entry.js +0 -2
  540. package/dist/q2-tecton-elements/p-aa57b657.entry.js.map +0 -1
  541. package/dist/q2-tecton-elements/p-ad998f71.entry.js.map +0 -1
  542. package/dist/q2-tecton-elements/p-adec9275.entry.js +0 -2
  543. package/dist/q2-tecton-elements/p-adec9275.entry.js.map +0 -1
  544. package/dist/q2-tecton-elements/p-adf0a7c9.entry.js +0 -2
  545. package/dist/q2-tecton-elements/p-adf0a7c9.entry.js.map +0 -1
  546. package/dist/q2-tecton-elements/p-b72fd065.entry.js +0 -2
  547. package/dist/q2-tecton-elements/p-b72fd065.entry.js.map +0 -1
  548. package/dist/q2-tecton-elements/p-c0c658d1.entry.js +0 -2
  549. package/dist/q2-tecton-elements/p-c0c658d1.entry.js.map +0 -1
  550. package/dist/q2-tecton-elements/p-cb3f48de.entry.js.map +0 -1
  551. package/dist/q2-tecton-elements/p-ce4e6b41.entry.js.map +0 -1
  552. package/dist/q2-tecton-elements/p-cf32b5db.entry.js.map +0 -1
  553. package/dist/q2-tecton-elements/p-cf966a0f.entry.js +0 -2
  554. package/dist/q2-tecton-elements/p-cf966a0f.entry.js.map +0 -1
  555. package/dist/q2-tecton-elements/p-dc77bf66.entry.js +0 -2
  556. package/dist/q2-tecton-elements/p-dc77bf66.entry.js.map +0 -1
  557. /package/dist/q2-tecton-elements/{p-5d936af5.entry.js.map → p-07d1c3ae.entry.js.map} +0 -0
  558. /package/dist/q2-tecton-elements/{p-58cafc0d.entry.js.map → p-1c760a89.entry.js.map} +0 -0
  559. /package/dist/q2-tecton-elements/{p-074ae80c.entry.js.map → p-1c88d057.entry.js.map} +0 -0
  560. /package/dist/q2-tecton-elements/{p-77a0cc0c.entry.js.map → p-2733583e.entry.js.map} +0 -0
  561. /package/dist/q2-tecton-elements/{p-072c5877.entry.js.map → p-4774e5b3.entry.js.map} +0 -0
  562. /package/dist/q2-tecton-elements/{p-77272c4c.entry.js.map → p-490ef8e5.entry.js.map} +0 -0
  563. /package/dist/q2-tecton-elements/{p-2ca6d44f.entry.js.map → p-50f7328f.entry.js.map} +0 -0
  564. /package/dist/q2-tecton-elements/{p-2fcaf2d6.entry.js.map → p-7aef0c08.entry.js.map} +0 -0
  565. /package/dist/q2-tecton-elements/{p-8a4b106d.entry.js.map → p-7c9a0122.entry.js.map} +0 -0
  566. /package/dist/q2-tecton-elements/{p-6237c775.entry.js.map → p-896c7008.entry.js.map} +0 -0
  567. /package/dist/q2-tecton-elements/{p-395904b4.entry.js.map → p-8d07cf91.entry.js.map} +0 -0
  568. /package/dist/q2-tecton-elements/{p-fffb54e9.entry.js.map → p-8d2b02e1.entry.js.map} +0 -0
  569. /package/dist/q2-tecton-elements/{p-6e6d9793.entry.js.map → p-95a7c042.entry.js.map} +0 -0
  570. /package/dist/q2-tecton-elements/{p-45407ecc.entry.js.map → p-96b1406c.entry.js.map} +0 -0
  571. /package/dist/q2-tecton-elements/{p-2c26295e.entry.js.map → p-ac6aa392.entry.js.map} +0 -0
  572. /package/dist/q2-tecton-elements/{p-376a0589.entry.js.map → p-ad057d10.entry.js.map} +0 -0
  573. /package/dist/q2-tecton-elements/{p-34696e3f.entry.js.map → p-b1784be3.entry.js.map} +0 -0
  574. /package/dist/q2-tecton-elements/{p-259b728a.entry.js.map → p-b7de110e.entry.js.map} +0 -0
  575. /package/dist/q2-tecton-elements/{p-8111547c.entry.js.map → p-c235ab3f.entry.js.map} +0 -0
  576. /package/dist/q2-tecton-elements/{p-c81d299a.entry.js.map → p-e216ef3f.entry.js.map} +0 -0
  577. /package/dist/q2-tecton-elements/{p-721365be.js.map → p-f1e887f5.js.map} +0 -0
  578. /package/dist/q2-tecton-elements/{p-6b7c53a8.entry.js.map → p-f5f23659.entry.js.map} +0 -0
@@ -4,13 +4,6 @@ describe('q2-card', () => {
4
4
  const page = await setup({ html: '<q2-card></q2-card>' });
5
5
  expect(await getListOfStyleCompilationIssues(page, 'q2-card')).toHaveLength(0);
6
6
  });
7
- describe('[A11y] guideline compliance', () => {
8
- it('Does not have accessibility violations', async () => {
9
- const page = await setup({ html: '<q2-card title="Card Title"></q2-card>' });
10
- const hasViolations = await evaluateA11y(page);
11
- expect(hasViolations).toBe(false);
12
- });
13
- });
14
7
  describe('focus', () => {
15
8
  let page;
16
9
  beforeEach(async () => {
@@ -486,6 +479,18 @@ describe('q2-card', () => {
486
479
  });
487
480
  });
488
481
  });
482
+ describe('Accessibility', () => {
483
+ describe('aXe DevTools', () => {
484
+ it('does not have accessibility violations', async () => {
485
+ const page = await setup({ html: '<q2-card title="Card Title"></q2-card>' });
486
+ const hasViolations = await evaluateA11y(page);
487
+ expect(hasViolations).toBe(false);
488
+ });
489
+ });
490
+ describe('Accessibility Tree', () => { });
491
+ describe('Keyboard Controls', () => { });
492
+ describe('Other', () => { });
493
+ });
489
494
  });
490
495
  // content?
491
496
  // mobile?
@@ -1 +1 @@
1
- {"version":3,"file":"q2-card-test.e2e.js","sourceRoot":"","sources":["../../../../src/components/q2-card/test/q2-card-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EElement, E2EPage, EventSpy } from '@stencil/core/testing';\nimport {\n setup,\n dispatchEvent,\n getActiveElementTestId,\n base64Image,\n getNestedElementStyle,\n getListOfStyleCompilationIssues,\n evaluateA11y,\n} from '@/utils/helpers';\n\ndescribe('q2-card', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-card></q2-card>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-card')).toHaveLength(0);\n });\n\n describe('[A11y] guideline compliance', () => {\n it('Does not have accessibility violations', async () => {\n const page = await setup({ html: '<q2-card title=\"Card Title\"></q2-card>' });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n\n describe('focus', () => {\n let page: E2EPage;\n beforeEach(async () => {\n page = await setup({ html: `<q2-card></q2-card>` });\n\n expect(await getActiveElementTestId(page)).toBeNull();\n });\n\n it('focuses inner button when focus event is dispatched', async () => {\n await dispatchEvent(page, 'q2-card', 'focus');\n await page.waitForChanges();\n\n expect(await getActiveElementTestId(page)).toEqual('clickableElement');\n });\n\n it('focuses inner button when element.focus() is called', async function (): Promise<void> {\n const card = await page.find('q2-card');\n await card.focus();\n await page.waitForChanges();\n\n expect(await getActiveElementTestId(page)).toEqual('clickableElement');\n });\n });\n\n describe('auto detecting touch devices', () => {\n let page: E2EPage;\n beforeEach(async () => {\n page = await setup({ html: `` });\n await page.evaluate(() => ((window.ontouchstart as any) = true));\n page.setContent(`<q2-card></q2-card>`);\n await page.waitForChanges();\n });\n\n it('automatically adds is-touch class to clickableElement on render', async () => {\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n expect(clickableElement.className).toContain('is-touch');\n });\n });\n\n describe('auto detecting small devices', () => {\n let page: E2EPage;\n beforeEach(async () => {\n page = await setup({ html: `<q2-card title=\"Test\"></q2-card>` });\n await page.setViewport({ width: 200, height: 800 });\n await page.waitForChanges();\n });\n\n it('automatically adds is-small class to clickableElement on render', async () => {\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.className).toContain('is-small');\n });\n\n it('automatically toggles on viewport resize', async () => {\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.className).toContain('is-small');\n\n await page.setViewport({ width: 800, height: 800 });\n await page.waitForChanges();\n\n expect(clickableElement.className).not.toContain('is-small');\n });\n });\n\n describe('Events', () => {\n describe('click', () => {\n let page: E2EPage;\n let card: E2EElement;\n let clickSpy: EventSpy;\n\n beforeEach(async () => {\n page = await setup({ html: `<q2-card></q2-card>` });\n card = await page.find('q2-card');\n clickSpy = await card.spyOnEvent('click');\n });\n\n it('emits event when clickableElement is clicked', async () => {\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n await clickableElement.click();\n\n expect(clickSpy).toHaveReceivedEvent();\n });\n\n it('emits event when event is dispatched', async () => {\n await dispatchEvent(page, 'q2-card', 'click');\n\n expect(clickSpy).toHaveReceivedEvent();\n });\n\n it('emits event when click is called on q2-card', async () => {\n await card.click();\n\n expect(clickSpy).toHaveReceivedEvent();\n });\n });\n });\n\n describe('Props', () => {\n describe('isStatic', () => {\n describe('when not provided', () => {\n it('adds padding', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const container = await page.find('q2-card >>> .container');\n const containerStyles = await container.getComputedStyle();\n\n expect(containerStyles.padding).toEqual('20px');\n expect(containerStyles.boxShadow).toEqual(\n 'rgba(0, 0, 0, 0.12) 0px 0px 2px 0px, rgba(0, 0, 0, 0.14) 0px 4px 8px 0px'\n );\n expect(containerStyles.borderRadius).toEqual('4px');\n expect(containerStyles.cursor).toEqual('pointer');\n });\n });\n\n describe('when provided', () => {\n it('removes padding', async () => {\n const page = await setup({\n html: `<q2-card is-static></q2-card>`,\n });\n const container = await page.find('q2-card >>> .container');\n const containerStyles = await container.getComputedStyle();\n\n expect(containerStyles.padding).toEqual('0px');\n expect(containerStyles.boxShadow).toEqual('none');\n expect(containerStyles.borderRadius).toEqual('0px');\n expect(containerStyles.cursor).toEqual('auto');\n });\n\n describe('when bar is provided', () => {\n it('adds left padding', async () => {\n const page = await setup({\n html: `<q2-card is-static bar=\"primary\"></q2-card>`,\n });\n const container = await page.find('q2-card >>> .container');\n const containerStyles = await container.getComputedStyle();\n\n expect(containerStyles.padding).toEqual('0px 0px 0px 20px');\n expect(containerStyles.boxShadow).toEqual('none');\n expect(containerStyles.borderRadius).toEqual('0px');\n expect(containerStyles.cursor).toEqual('auto');\n });\n });\n });\n });\n\n describe('bar', () => {\n describe('when not provided', () => {\n it('does not render the bar element', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const bar = await page.find('q2-card >>> [test-id=bar]');\n\n expect(bar).toBeNull();\n });\n });\n\n describe('when provided', () => {\n const getBarColor = async (page: E2EPage) =>\n page.$eval('q2-card', element => {\n const bar = element.shadowRoot.querySelector<HTMLElement>('.bar');\n return bar.style.getPropertyValue('--comp-bar-color');\n });\n it('renders the bar element', async () => {\n const page = await setup({\n html: `<q2-card bar=\"primary\"></q2-card>`,\n });\n const bar = await page.find('q2-card >>> [test-id=bar]');\n\n expect(bar).toBeTruthy();\n });\n\n const constantColors = [\n { propValue: 'info', expectedColor: 'rgb(0, 0, 1)' },\n { propValue: 'success', expectedColor: 'rgb(0, 0, 2)' },\n { propValue: 'warning', expectedColor: 'rgb(0, 0, 3)' },\n { propValue: 'alert', expectedColor: 'rgb(0, 0, 4)' },\n ];\n\n const themeColors = [\n { propValue: 'primary', expectedColor: 'rgb(0, 0, 5)' },\n { propValue: 'secondary', expectedColor: 'rgb(0, 0, 6)' },\n { propValue: 'tertiary', expectedColor: 'rgb(0, 0, 7)' },\n { propValue: 'accent-1', expectedColor: 'rgb(0, 0, 8)' },\n { propValue: 'accent-2', expectedColor: 'rgb(0, 0, 9)' },\n { propValue: 'accent-3', expectedColor: 'rgb(0, 0, 10)' },\n { propValue: 'accent-4', expectedColor: 'rgb(0, 0, 11)' },\n { propValue: 'accent-5', expectedColor: 'rgb(0, 0, 12)' },\n { propValue: 'accent-6', expectedColor: 'rgb(0, 0, 13)' },\n { propValue: 'accent-7', expectedColor: 'rgb(0, 0, 14)' },\n { propValue: 'accent-8', expectedColor: 'rgb(0, 0, 15)' },\n { propValue: 'accent-9', expectedColor: 'rgb(0, 0, 16)' },\n { propValue: 'accent-10', expectedColor: 'rgb(0, 0, 17)' },\n { propValue: 'accent-11', expectedColor: 'rgb(0, 0, 18)' },\n { propValue: 'accent-12', expectedColor: 'rgb(0, 0, 19)' },\n ];\n\n const predefinedColors = [...constantColors, ...themeColors];\n\n predefinedColors.forEach(color => {\n const { propValue, expectedColor } = color;\n\n it(`on load accepts predefined ${propValue} color`, async () => {\n const page = await setup({\n html: `\n <q2-card bar=\"${propValue}\" style=\"--tct-card-bar-color-${propValue}: ${expectedColor}\"></q2-card>\n `,\n });\n const barBackgroundColor = await getNestedElementStyle(\n page,\n ['q2-card', '[test-id=bar]'],\n 'backgroundColor'\n );\n\n expect(barBackgroundColor).toEqual(expectedColor);\n });\n\n it(`after load accepts predefined ${propValue} color`, async () => {\n const page = await setup({\n html: `\n <q2-card style=\"--tct-card-bar-color-${propValue}: ${expectedColor}\"></q2-card>\n `,\n });\n const card = await page.find('q2-card');\n card.setAttribute('bar', propValue);\n await page.waitForChanges();\n const barBackgroundColor = await getNestedElementStyle(\n page,\n ['q2-card', '[test-id=bar]'],\n 'backgroundColor'\n );\n\n expect(barBackgroundColor).toEqual(expectedColor);\n });\n });\n\n constantColors.forEach(color => {\n it(`predefined color ${color.propValue} falls back to --const-stoplight-${color.propValue}`, async () => {\n const page = await setup({\n html: `\n <q2-card bar=\"${color.propValue}\" style=\"--const-stoplight-${color.propValue}: ${color.expectedColor}\"></q2-card>\n `,\n });\n const barBackgroundColor = await getNestedElementStyle(\n page,\n ['q2-card', '[test-id=bar]'],\n 'backgroundColor'\n );\n\n expect(barBackgroundColor).toEqual(color.expectedColor);\n });\n });\n\n themeColors.forEach(color => {\n it(`predefined color ${color.propValue} falls back to --t-${color.propValue}`, async () => {\n const page = await setup({\n html: `\n <q2-card bar=\"${color.propValue}\" style=\"--t-${color.propValue}: ${color.expectedColor}\"></q2-card>\n `,\n });\n const barBackgroundColor = await getNestedElementStyle(\n page,\n ['q2-card', '[test-id=bar]'],\n 'backgroundColor'\n );\n\n expect(barBackgroundColor).toEqual(color.expectedColor);\n });\n });\n\n it('accepts hex value', async () => {\n const page = await setup({\n html: `<q2-card bar=\"#000000\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('#000000');\n });\n\n it('accepts hsl value', async () => {\n const page = await setup({\n html: `<q2-card bar=\"hsl(0deg 0% 0%)\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('hsl(0deg 0% 0%)');\n });\n\n it('accepts rgb value', async () => {\n const page = await setup({\n html: `<q2-card bar=\"rgb(0, 0, 0)\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('rgb(0, 0, 0)');\n });\n\n it('accepts rgba value', async () => {\n const page = await setup({\n html: `<q2-card bar=\"rgba(0, 0, 0, 0.5)\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('rgba(0, 0, 0, 0.5)');\n });\n\n it('accepts named colors', async () => {\n const page = await setup({\n html: `<q2-card bar=\"red\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('red');\n });\n });\n });\n\n describe('title', () => {\n describe('when not provided', () => {\n it('does not render the title', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const title = await page.find('q2-card >>> [test-id=description]');\n\n expect(title).toBeNull();\n });\n });\n\n describe('when provided', () => {\n it('renders the title', async () => {\n const page = await setup({\n html: `<q2-card title=\"Checking\"></q2-card>`,\n });\n const title = await page.find('q2-card >>> [test-id=title]');\n\n expect(title.textContent).toEqual('Checking');\n });\n });\n });\n\n describe('description', () => {\n describe('when not provided', () => {\n it('does not render the description', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const description = await page.find('q2-card >>> [test-id=description]');\n\n expect(description).toBeNull();\n });\n });\n\n describe('when provided', () => {\n it('renders the description', async () => {\n const page = await setup({\n html: `<q2-card description=\"This account is empty\"></q2-card>`,\n });\n const description = await page.find('q2-card >>> [test-id=description]');\n\n expect(description.textContent).toEqual('This account is empty');\n });\n });\n });\n\n describe('avatar props', () => {\n describe('when no avatar props are provided', () => {\n it('does not render avatar or add the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toBeNull();\n expect(clickableElement.className).not.toContain('has-avatar');\n });\n });\n\n describe('avatarName', () => {\n describe('when provided', () => {\n it('renders the avatar and adds the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card avatar-name=\"John Doe\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toEqualAttribute('name', 'John Doe');\n expect(clickableElement.className).toContain('has-avatar');\n });\n });\n });\n\n describe('avatarInitials', () => {\n describe('when provided', () => {\n it('renders the avatar and adds the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card avatar-initials=\"JD\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toEqualAttribute('initials', 'JD');\n expect(clickableElement.className).toContain('has-avatar');\n });\n });\n });\n\n describe('avatarIcon', () => {\n describe('when provided', () => {\n it('renders the avatar and adds the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card avatar-icon=\"star\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toEqualAttribute('type', 'star');\n expect(clickableElement.className).toContain('has-avatar');\n });\n });\n });\n\n describe('avatarSrc', () => {\n describe('when provided', () => {\n it('renders the avatar and adds the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card avatar-src=${base64Image}></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toEqualAttribute('src', base64Image);\n expect(clickableElement.className).toContain('has-avatar');\n });\n });\n });\n });\n\n describe('isSmall', () => {\n describe('when not provided', () => {\n it('does not add is-small class to clickableElement', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.className).not.toContain('is-small');\n });\n });\n\n describe('when provided', () => {\n it('adds is-small class to clickableElement', async () => {\n const page = await setup({\n html: `<q2-card is-small></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.className).toContain('is-small');\n });\n });\n });\n\n describe('isTouch', () => {\n describe('when not provided', () => {\n it('does not render touch indicator icon', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const touchIndicator = await page.find('q2-card >>> [test-id=touchIndicator]');\n\n expect(touchIndicator).toBeNull();\n expect(clickableElement.className).not.toContain('is-touch');\n });\n });\n\n describe('when provided', () => {\n it('renders touch indicator icon', async () => {\n const page = await setup({\n html: `<q2-card is-touch></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const touchIndicator = await page.find('q2-card >>> [test-id=touchIndicator]');\n\n expect(touchIndicator).toBeTruthy();\n expect(clickableElement.className).toContain('is-touch');\n });\n });\n });\n\n describe('url', () => {\n describe('when not provided', () => {\n it('renders a button', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.tagName).toEqual('BUTTON');\n });\n });\n\n describe('when provided', () => {\n it('renders a link', async () => {\n const page = await setup({\n html: `<q2-card url=\"https://www.google.com/\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.tagName).toEqual('A');\n expect(clickableElement).toEqualAttribute('href', 'https://www.google.com/');\n });\n });\n });\n\n describe('target', () => {\n describe('when not provided', () => {\n it('does not add the target attribute to link', async () => {\n const page = await setup({\n html: `<q2-card url=\"https://www.google.com/\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.tagName).toEqual('A');\n expect(clickableElement).not.toHaveAttribute('target');\n });\n });\n\n describe('when provided', () => {\n it('adds target attribute to link', async () => {\n const page = await setup({\n html: `<q2-card url=\"https://www.google.com/\" target=\"_blank\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.tagName).toEqual('A');\n expect(clickableElement).toEqualAttribute('target', '_blank');\n });\n });\n });\n\n describe('non-clickable', () => {\n let page: E2EPage;\n let card: E2EElement;\n let element: E2EElement;\n describe('when provided', () => {\n beforeEach(async () => {\n page = await setup({\n html: `<q2-card type=\"non-clickable\"></q2-card>`,\n });\n card = await page.find('q2-card');\n element = await page.find('q2-card >>> [test-id=clickableElement]');\n });\n\n it('renders a <div>', () => {\n expect(element.tagName).toEqual('DIV');\n });\n it('has non-clickable attribute on q2-card', () => {\n expect(card).toEqualAttribute('type', 'non-clickable');\n });\n it('has non-clickable class name on div', () => {\n expect(element.getAttribute('class')).toContain('non-clickable');\n });\n });\n describe('when not provided', () => {\n beforeEach(async () => {\n page = await setup({\n html: `<q2-card></q2-card>`,\n });\n card = await page.find('q2-card');\n element = await page.find('q2-card >>> [test-id=clickableElement]');\n });\n\n it('renders a <button>', () => {\n expect(element.tagName).toEqual('BUTTON');\n });\n it('has clickable attribute on q2-card', () => {\n expect(card).toEqualAttribute('type', 'clickable');\n });\n it('has clickable class name on button', () => {\n expect(element.getAttribute('class')).toContain('clickable');\n });\n });\n });\n });\n});\n\n// content?\n// mobile?\n"]}
1
+ {"version":3,"file":"q2-card-test.e2e.js","sourceRoot":"","sources":["../../../../src/components/q2-card/test/q2-card-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EElement, E2EPage, EventSpy } from '@stencil/core/testing';\nimport {\n setup,\n dispatchEvent,\n getActiveElementTestId,\n base64Image,\n getNestedElementStyle,\n getListOfStyleCompilationIssues,\n evaluateA11y,\n} from '@/utils/helpers';\n\ndescribe('q2-card', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-card></q2-card>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-card')).toHaveLength(0);\n });\n\n describe('focus', () => {\n let page: E2EPage;\n beforeEach(async () => {\n page = await setup({ html: `<q2-card></q2-card>` });\n\n expect(await getActiveElementTestId(page)).toBeNull();\n });\n\n it('focuses inner button when focus event is dispatched', async () => {\n await dispatchEvent(page, 'q2-card', 'focus');\n await page.waitForChanges();\n\n expect(await getActiveElementTestId(page)).toEqual('clickableElement');\n });\n\n it('focuses inner button when element.focus() is called', async function (): Promise<void> {\n const card = await page.find('q2-card');\n await card.focus();\n await page.waitForChanges();\n\n expect(await getActiveElementTestId(page)).toEqual('clickableElement');\n });\n });\n\n describe('auto detecting touch devices', () => {\n let page: E2EPage;\n beforeEach(async () => {\n page = await setup({ html: `` });\n await page.evaluate(() => ((window.ontouchstart as any) = true));\n page.setContent(`<q2-card></q2-card>`);\n await page.waitForChanges();\n });\n\n it('automatically adds is-touch class to clickableElement on render', async () => {\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n expect(clickableElement.className).toContain('is-touch');\n });\n });\n\n describe('auto detecting small devices', () => {\n let page: E2EPage;\n beforeEach(async () => {\n page = await setup({ html: `<q2-card title=\"Test\"></q2-card>` });\n await page.setViewport({ width: 200, height: 800 });\n await page.waitForChanges();\n });\n\n it('automatically adds is-small class to clickableElement on render', async () => {\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.className).toContain('is-small');\n });\n\n it('automatically toggles on viewport resize', async () => {\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.className).toContain('is-small');\n\n await page.setViewport({ width: 800, height: 800 });\n await page.waitForChanges();\n\n expect(clickableElement.className).not.toContain('is-small');\n });\n });\n\n describe('Events', () => {\n describe('click', () => {\n let page: E2EPage;\n let card: E2EElement;\n let clickSpy: EventSpy;\n\n beforeEach(async () => {\n page = await setup({ html: `<q2-card></q2-card>` });\n card = await page.find('q2-card');\n clickSpy = await card.spyOnEvent('click');\n });\n\n it('emits event when clickableElement is clicked', async () => {\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n await clickableElement.click();\n\n expect(clickSpy).toHaveReceivedEvent();\n });\n\n it('emits event when event is dispatched', async () => {\n await dispatchEvent(page, 'q2-card', 'click');\n\n expect(clickSpy).toHaveReceivedEvent();\n });\n\n it('emits event when click is called on q2-card', async () => {\n await card.click();\n\n expect(clickSpy).toHaveReceivedEvent();\n });\n });\n });\n\n describe('Props', () => {\n describe('isStatic', () => {\n describe('when not provided', () => {\n it('adds padding', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const container = await page.find('q2-card >>> .container');\n const containerStyles = await container.getComputedStyle();\n\n expect(containerStyles.padding).toEqual('20px');\n expect(containerStyles.boxShadow).toEqual(\n 'rgba(0, 0, 0, 0.12) 0px 0px 2px 0px, rgba(0, 0, 0, 0.14) 0px 4px 8px 0px'\n );\n expect(containerStyles.borderRadius).toEqual('4px');\n expect(containerStyles.cursor).toEqual('pointer');\n });\n });\n\n describe('when provided', () => {\n it('removes padding', async () => {\n const page = await setup({\n html: `<q2-card is-static></q2-card>`,\n });\n const container = await page.find('q2-card >>> .container');\n const containerStyles = await container.getComputedStyle();\n\n expect(containerStyles.padding).toEqual('0px');\n expect(containerStyles.boxShadow).toEqual('none');\n expect(containerStyles.borderRadius).toEqual('0px');\n expect(containerStyles.cursor).toEqual('auto');\n });\n\n describe('when bar is provided', () => {\n it('adds left padding', async () => {\n const page = await setup({\n html: `<q2-card is-static bar=\"primary\"></q2-card>`,\n });\n const container = await page.find('q2-card >>> .container');\n const containerStyles = await container.getComputedStyle();\n\n expect(containerStyles.padding).toEqual('0px 0px 0px 20px');\n expect(containerStyles.boxShadow).toEqual('none');\n expect(containerStyles.borderRadius).toEqual('0px');\n expect(containerStyles.cursor).toEqual('auto');\n });\n });\n });\n });\n\n describe('bar', () => {\n describe('when not provided', () => {\n it('does not render the bar element', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const bar = await page.find('q2-card >>> [test-id=bar]');\n\n expect(bar).toBeNull();\n });\n });\n\n describe('when provided', () => {\n const getBarColor = async (page: E2EPage) =>\n page.$eval('q2-card', element => {\n const bar = element.shadowRoot.querySelector<HTMLElement>('.bar');\n return bar.style.getPropertyValue('--comp-bar-color');\n });\n it('renders the bar element', async () => {\n const page = await setup({\n html: `<q2-card bar=\"primary\"></q2-card>`,\n });\n const bar = await page.find('q2-card >>> [test-id=bar]');\n\n expect(bar).toBeTruthy();\n });\n\n const constantColors = [\n { propValue: 'info', expectedColor: 'rgb(0, 0, 1)' },\n { propValue: 'success', expectedColor: 'rgb(0, 0, 2)' },\n { propValue: 'warning', expectedColor: 'rgb(0, 0, 3)' },\n { propValue: 'alert', expectedColor: 'rgb(0, 0, 4)' },\n ];\n\n const themeColors = [\n { propValue: 'primary', expectedColor: 'rgb(0, 0, 5)' },\n { propValue: 'secondary', expectedColor: 'rgb(0, 0, 6)' },\n { propValue: 'tertiary', expectedColor: 'rgb(0, 0, 7)' },\n { propValue: 'accent-1', expectedColor: 'rgb(0, 0, 8)' },\n { propValue: 'accent-2', expectedColor: 'rgb(0, 0, 9)' },\n { propValue: 'accent-3', expectedColor: 'rgb(0, 0, 10)' },\n { propValue: 'accent-4', expectedColor: 'rgb(0, 0, 11)' },\n { propValue: 'accent-5', expectedColor: 'rgb(0, 0, 12)' },\n { propValue: 'accent-6', expectedColor: 'rgb(0, 0, 13)' },\n { propValue: 'accent-7', expectedColor: 'rgb(0, 0, 14)' },\n { propValue: 'accent-8', expectedColor: 'rgb(0, 0, 15)' },\n { propValue: 'accent-9', expectedColor: 'rgb(0, 0, 16)' },\n { propValue: 'accent-10', expectedColor: 'rgb(0, 0, 17)' },\n { propValue: 'accent-11', expectedColor: 'rgb(0, 0, 18)' },\n { propValue: 'accent-12', expectedColor: 'rgb(0, 0, 19)' },\n ];\n\n const predefinedColors = [...constantColors, ...themeColors];\n\n predefinedColors.forEach(color => {\n const { propValue, expectedColor } = color;\n\n it(`on load accepts predefined ${propValue} color`, async () => {\n const page = await setup({\n html: `\n <q2-card bar=\"${propValue}\" style=\"--tct-card-bar-color-${propValue}: ${expectedColor}\"></q2-card>\n `,\n });\n const barBackgroundColor = await getNestedElementStyle(\n page,\n ['q2-card', '[test-id=bar]'],\n 'backgroundColor'\n );\n\n expect(barBackgroundColor).toEqual(expectedColor);\n });\n\n it(`after load accepts predefined ${propValue} color`, async () => {\n const page = await setup({\n html: `\n <q2-card style=\"--tct-card-bar-color-${propValue}: ${expectedColor}\"></q2-card>\n `,\n });\n const card = await page.find('q2-card');\n card.setAttribute('bar', propValue);\n await page.waitForChanges();\n const barBackgroundColor = await getNestedElementStyle(\n page,\n ['q2-card', '[test-id=bar]'],\n 'backgroundColor'\n );\n\n expect(barBackgroundColor).toEqual(expectedColor);\n });\n });\n\n constantColors.forEach(color => {\n it(`predefined color ${color.propValue} falls back to --const-stoplight-${color.propValue}`, async () => {\n const page = await setup({\n html: `\n <q2-card bar=\"${color.propValue}\" style=\"--const-stoplight-${color.propValue}: ${color.expectedColor}\"></q2-card>\n `,\n });\n const barBackgroundColor = await getNestedElementStyle(\n page,\n ['q2-card', '[test-id=bar]'],\n 'backgroundColor'\n );\n\n expect(barBackgroundColor).toEqual(color.expectedColor);\n });\n });\n\n themeColors.forEach(color => {\n it(`predefined color ${color.propValue} falls back to --t-${color.propValue}`, async () => {\n const page = await setup({\n html: `\n <q2-card bar=\"${color.propValue}\" style=\"--t-${color.propValue}: ${color.expectedColor}\"></q2-card>\n `,\n });\n const barBackgroundColor = await getNestedElementStyle(\n page,\n ['q2-card', '[test-id=bar]'],\n 'backgroundColor'\n );\n\n expect(barBackgroundColor).toEqual(color.expectedColor);\n });\n });\n\n it('accepts hex value', async () => {\n const page = await setup({\n html: `<q2-card bar=\"#000000\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('#000000');\n });\n\n it('accepts hsl value', async () => {\n const page = await setup({\n html: `<q2-card bar=\"hsl(0deg 0% 0%)\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('hsl(0deg 0% 0%)');\n });\n\n it('accepts rgb value', async () => {\n const page = await setup({\n html: `<q2-card bar=\"rgb(0, 0, 0)\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('rgb(0, 0, 0)');\n });\n\n it('accepts rgba value', async () => {\n const page = await setup({\n html: `<q2-card bar=\"rgba(0, 0, 0, 0.5)\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('rgba(0, 0, 0, 0.5)');\n });\n\n it('accepts named colors', async () => {\n const page = await setup({\n html: `<q2-card bar=\"red\"></q2-card>`,\n });\n\n expect(await getBarColor(page)).toEqual('red');\n });\n });\n });\n\n describe('title', () => {\n describe('when not provided', () => {\n it('does not render the title', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const title = await page.find('q2-card >>> [test-id=description]');\n\n expect(title).toBeNull();\n });\n });\n\n describe('when provided', () => {\n it('renders the title', async () => {\n const page = await setup({\n html: `<q2-card title=\"Checking\"></q2-card>`,\n });\n const title = await page.find('q2-card >>> [test-id=title]');\n\n expect(title.textContent).toEqual('Checking');\n });\n });\n });\n\n describe('description', () => {\n describe('when not provided', () => {\n it('does not render the description', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const description = await page.find('q2-card >>> [test-id=description]');\n\n expect(description).toBeNull();\n });\n });\n\n describe('when provided', () => {\n it('renders the description', async () => {\n const page = await setup({\n html: `<q2-card description=\"This account is empty\"></q2-card>`,\n });\n const description = await page.find('q2-card >>> [test-id=description]');\n\n expect(description.textContent).toEqual('This account is empty');\n });\n });\n });\n\n describe('avatar props', () => {\n describe('when no avatar props are provided', () => {\n it('does not render avatar or add the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toBeNull();\n expect(clickableElement.className).not.toContain('has-avatar');\n });\n });\n\n describe('avatarName', () => {\n describe('when provided', () => {\n it('renders the avatar and adds the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card avatar-name=\"John Doe\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toEqualAttribute('name', 'John Doe');\n expect(clickableElement.className).toContain('has-avatar');\n });\n });\n });\n\n describe('avatarInitials', () => {\n describe('when provided', () => {\n it('renders the avatar and adds the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card avatar-initials=\"JD\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toEqualAttribute('initials', 'JD');\n expect(clickableElement.className).toContain('has-avatar');\n });\n });\n });\n\n describe('avatarIcon', () => {\n describe('when provided', () => {\n it('renders the avatar and adds the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card avatar-icon=\"star\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toEqualAttribute('type', 'star');\n expect(clickableElement.className).toContain('has-avatar');\n });\n });\n });\n\n describe('avatarSrc', () => {\n describe('when provided', () => {\n it('renders the avatar and adds the has-avatar class', async () => {\n const page = await setup({\n html: `<q2-card avatar-src=${base64Image}></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const avatar = await page.find('q2-card >>> [test-id=avatar]');\n\n expect(avatar).toEqualAttribute('src', base64Image);\n expect(clickableElement.className).toContain('has-avatar');\n });\n });\n });\n });\n\n describe('isSmall', () => {\n describe('when not provided', () => {\n it('does not add is-small class to clickableElement', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.className).not.toContain('is-small');\n });\n });\n\n describe('when provided', () => {\n it('adds is-small class to clickableElement', async () => {\n const page = await setup({\n html: `<q2-card is-small></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.className).toContain('is-small');\n });\n });\n });\n\n describe('isTouch', () => {\n describe('when not provided', () => {\n it('does not render touch indicator icon', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const touchIndicator = await page.find('q2-card >>> [test-id=touchIndicator]');\n\n expect(touchIndicator).toBeNull();\n expect(clickableElement.className).not.toContain('is-touch');\n });\n });\n\n describe('when provided', () => {\n it('renders touch indicator icon', async () => {\n const page = await setup({\n html: `<q2-card is-touch></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n const touchIndicator = await page.find('q2-card >>> [test-id=touchIndicator]');\n\n expect(touchIndicator).toBeTruthy();\n expect(clickableElement.className).toContain('is-touch');\n });\n });\n });\n\n describe('url', () => {\n describe('when not provided', () => {\n it('renders a button', async () => {\n const page = await setup({\n html: `<q2-card></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.tagName).toEqual('BUTTON');\n });\n });\n\n describe('when provided', () => {\n it('renders a link', async () => {\n const page = await setup({\n html: `<q2-card url=\"https://www.google.com/\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.tagName).toEqual('A');\n expect(clickableElement).toEqualAttribute('href', 'https://www.google.com/');\n });\n });\n });\n\n describe('target', () => {\n describe('when not provided', () => {\n it('does not add the target attribute to link', async () => {\n const page = await setup({\n html: `<q2-card url=\"https://www.google.com/\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.tagName).toEqual('A');\n expect(clickableElement).not.toHaveAttribute('target');\n });\n });\n\n describe('when provided', () => {\n it('adds target attribute to link', async () => {\n const page = await setup({\n html: `<q2-card url=\"https://www.google.com/\" target=\"_blank\"></q2-card>`,\n });\n const clickableElement = await page.find('q2-card >>> [test-id=clickableElement]');\n\n expect(clickableElement.tagName).toEqual('A');\n expect(clickableElement).toEqualAttribute('target', '_blank');\n });\n });\n });\n\n describe('non-clickable', () => {\n let page: E2EPage;\n let card: E2EElement;\n let element: E2EElement;\n describe('when provided', () => {\n beforeEach(async () => {\n page = await setup({\n html: `<q2-card type=\"non-clickable\"></q2-card>`,\n });\n card = await page.find('q2-card');\n element = await page.find('q2-card >>> [test-id=clickableElement]');\n });\n\n it('renders a <div>', () => {\n expect(element.tagName).toEqual('DIV');\n });\n it('has non-clickable attribute on q2-card', () => {\n expect(card).toEqualAttribute('type', 'non-clickable');\n });\n it('has non-clickable class name on div', () => {\n expect(element.getAttribute('class')).toContain('non-clickable');\n });\n });\n describe('when not provided', () => {\n beforeEach(async () => {\n page = await setup({\n html: `<q2-card></q2-card>`,\n });\n card = await page.find('q2-card');\n element = await page.find('q2-card >>> [test-id=clickableElement]');\n });\n\n it('renders a <button>', () => {\n expect(element.tagName).toEqual('BUTTON');\n });\n it('has clickable attribute on q2-card', () => {\n expect(card).toEqualAttribute('type', 'clickable');\n });\n it('has clickable class name on button', () => {\n expect(element.getAttribute('class')).toContain('clickable');\n });\n });\n });\n });\n\n describe('Accessibility', () => {\n describe('aXe DevTools', () => {\n it('does not have accessibility violations', async () => {\n const page = await setup({ html: '<q2-card title=\"Card Title\"></q2-card>' });\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\n// content?\n// mobile?\n"]}
@@ -25,15 +25,6 @@ describe('q2-carousel', () => {
25
25
  return document.activeElement.className;
26
26
  });
27
27
  };
28
- describe('[A11y] guideline compliance', () => {
29
- it('Does not have accessibility violations', async () => {
30
- const page = await setup({
31
- html: renderCarousel(3),
32
- });
33
- const hasViolations = await evaluateA11y(page);
34
- expect(hasViolations).toBe(false);
35
- });
36
- });
37
28
  it('renders with default properties', async function () {
38
29
  const page = await setup({
39
30
  html: renderCarousel(3),
@@ -64,42 +55,6 @@ describe('q2-carousel', () => {
64
55
  expect(await carousel.getProperty('hidePagination')).toEqual(false);
65
56
  expect(await carousel.getProperty('showNavigationArrows')).toEqual(false);
66
57
  });
67
- describe('Keyboard', () => {
68
- it('can advance the carousel using keys', async () => {
69
- const page = await setup({
70
- html: renderCarousel(6),
71
- });
72
- const carouselPanes = await page.findAll('q2-carousel q2-carousel-pane');
73
- await carouselPanes[0].focus();
74
- expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
75
- expect(carouselPanes[0]).toHaveClass('swiper-slide-active');
76
- await page.keyboard.press('ArrowRight');
77
- await page.waitForChanges();
78
- expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
79
- expect(carouselPanes[1]).toHaveClass('swiper-slide-active');
80
- expect(await isPaneFocused(page, 1)).toEqual(true);
81
- await page.keyboard.press('ArrowRight');
82
- await page.waitForChanges();
83
- expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
84
- expect(carouselPanes[2]).toHaveClass('swiper-slide-active');
85
- expect(await isPaneFocused(page, 2)).toEqual(true);
86
- await page.keyboard.press('ArrowLeft');
87
- await page.waitForChanges();
88
- expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
89
- expect(carouselPanes[1]).toHaveClass('swiper-slide-active');
90
- expect(await isPaneFocused(page, 1)).toEqual(true);
91
- await page.keyboard.press('End');
92
- await page.waitForChanges();
93
- expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
94
- expect(carouselPanes[5]).toHaveClass('swiper-slide-active');
95
- expect(await isPaneFocused(page, 5)).toEqual(true);
96
- await page.keyboard.press('Home');
97
- await page.waitForChanges();
98
- expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
99
- expect(carouselPanes[0]).toHaveClass('swiper-slide-active');
100
- expect(await isPaneFocused(page, 0)).toEqual(true);
101
- });
102
- });
103
58
  describe('Pagination', () => {
104
59
  it('pagination dots and navigation arrows can make the carousel advance or go back in order', async function () {
105
60
  const page = await setup({
@@ -672,5 +627,54 @@ describe('q2-carousel', () => {
672
627
  expect(container).toEqualAttribute('aria-label', label);
673
628
  });
674
629
  });
630
+ describe('Accessibility', () => {
631
+ describe('aXe DevTools', () => {
632
+ it('does not have accessibility violations', async () => {
633
+ const page = await setup({
634
+ html: renderCarousel(3),
635
+ });
636
+ const hasViolations = await evaluateA11y(page);
637
+ expect(hasViolations).toBe(false);
638
+ });
639
+ });
640
+ describe('Accessibility Tree', () => { });
641
+ describe('Keyboard Controls', () => {
642
+ it('can advance the carousel using keys', async () => {
643
+ const page = await setup({
644
+ html: renderCarousel(6),
645
+ });
646
+ const carouselPanes = await page.findAll('q2-carousel q2-carousel-pane');
647
+ await carouselPanes[0].focus();
648
+ expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
649
+ expect(carouselPanes[0]).toHaveClass('swiper-slide-active');
650
+ await page.keyboard.press('ArrowRight');
651
+ await page.waitForChanges();
652
+ expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
653
+ expect(carouselPanes[1]).toHaveClass('swiper-slide-active');
654
+ expect(await isPaneFocused(page, 1)).toEqual(true);
655
+ await page.keyboard.press('ArrowRight');
656
+ await page.waitForChanges();
657
+ expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
658
+ expect(carouselPanes[2]).toHaveClass('swiper-slide-active');
659
+ expect(await isPaneFocused(page, 2)).toEqual(true);
660
+ await page.keyboard.press('ArrowLeft');
661
+ await page.waitForChanges();
662
+ expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
663
+ expect(carouselPanes[1]).toHaveClass('swiper-slide-active');
664
+ expect(await isPaneFocused(page, 1)).toEqual(true);
665
+ await page.keyboard.press('End');
666
+ await page.waitForChanges();
667
+ expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
668
+ expect(carouselPanes[5]).toHaveClass('swiper-slide-active');
669
+ expect(await isPaneFocused(page, 5)).toEqual(true);
670
+ await page.keyboard.press('Home');
671
+ await page.waitForChanges();
672
+ expect(carouselPanes.filter(pane => !pane.classList.contains('swiper-slide-active'))).toHaveLength(5);
673
+ expect(carouselPanes[0]).toHaveClass('swiper-slide-active');
674
+ expect(await isPaneFocused(page, 0)).toEqual(true);
675
+ });
676
+ });
677
+ describe('Other', () => { });
678
+ });
675
679
  });
676
680
  //# sourceMappingURL=q2-carousel-test.e2e.js.map