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
@@ -100,7 +100,7 @@ export class Q2Item {
100
100
  // #region Render Methods
101
101
  render() {
102
102
  const { clickable } = this;
103
- return (h("div", { key: '2511d34e01575fe19d4a9becdce7a44ccc8736e7', "test-id": "itemContainer", class: this.itemClasses, ref: el => (this.itemElement = el), role: clickable ? 'button' : undefined, tabIndex: clickable ? 0 : undefined }, this.hasBulletSlotContent && (h("div", { key: '47595ae0c96465a0524c4b08f7c77997fa5ad012', class: this.bulletClasses }, h("slot", { key: '0e446493744bdc304336f20e5bab89864b430cec', name: "bullet" }))), h("div", { key: '061814832dc71b7bbe239cddb2e474f7ea91558c', class: this.mainClasses }, this.hasHeaderSlotContent && (h("div", { key: '9f27b6fa63241088951935cff169385ef23b55e4', class: "header" }, h("slot", { key: '9c99e37648c9c4c5a8b981aa16ec8a7b42a1887a', name: "header" }))), this.hasBodySlotContent && (h("div", { key: 'e8a788366c10d06fef823b9be88c40fba65d4e71', class: "body" }, h("slot", { key: '617965a59d689b0679e920794ebf9a36848f4eab', name: "body" })))), this.hasActionSlotContent && (h("div", { key: '38c6a30f60c6a8bc8c953ed4b74a3687a0ba03a1', class: this.actionClasses }, h("slot", { key: '76efb6ba1377adcb3fc850d8966ecc49b55896b5', name: "action" }))), this.hasFooterSlotContent && (h("div", { key: '9a9bf0234ebac99487797bc93afa6e73097f1e68', class: this.footerClasses }, h("slot", { key: '91abd31668cff2657ecf57ce8b9d6f63e8d375ae', name: "footer" })))));
103
+ return (h("div", { key: '0829fd5b35d9479ab8a7dae744e8a09e90a1a128', "test-id": "itemContainer", class: this.itemClasses, ref: el => (this.itemElement = el), role: clickable ? 'button' : undefined, tabIndex: clickable ? 0 : undefined }, this.hasBulletSlotContent && (h("div", { key: '6fba2ecbbe6fe30121f15cda9cc5026a5c5468c2', class: this.bulletClasses }, h("slot", { key: '9bd9880d99124c1102725b5ce6ca49ac1e229cf9', name: "bullet" }))), h("div", { key: '0c184236511ba043c91a009c93680858e34de545', class: this.mainClasses }, this.hasHeaderSlotContent && (h("div", { key: '2570b5fd60955dbbc97f5f3d941a5d653785fb0e', class: "header" }, h("slot", { key: 'a438cafe8aeded03ee814f736ae897852a9f1415', name: "header" }))), this.hasBodySlotContent && (h("div", { key: '270585a7a4ca111aedd4baeab101c353814aa72c', class: "body" }, h("slot", { key: 'cc95afec425e06c0a9edccedb0420207ccab88a0', name: "body" })))), this.hasActionSlotContent && (h("div", { key: 'c6a32baa731bd79c57a625d615058442a5bc764a', class: this.actionClasses }, h("slot", { key: '2b3104f1e0b4eed5e605c5784468f608240a881b', name: "action" }))), this.hasFooterSlotContent && (h("div", { key: '0a989b6ec5ca51e55fb44d0e90f57fe792a6bf35', class: this.footerClasses }, h("slot", { key: '76ae62c0b433f78b187853da2cf40394f7ca315e', name: "footer" })))));
104
104
  }
105
105
  static get is() { return "q2-item"; }
106
106
  static get encapsulation() { return "shadow"; }
@@ -94,7 +94,7 @@ export class Q2Legend {
94
94
  // #endregion
95
95
  // #region Render Methods
96
96
  render() {
97
- return (h("click-elsewhere", { key: '14c2b27428cc8a8e95bf8df62aac0c235bd65606', onChange: () => this.onClickElsewhere(this) }, h("ul", { key: 'b597b625d0abb353d7752a9ca6ccedc9dc4eea6a' }, this.dataWithClasses.map(item => (h("li", { class: "item" }, h("button", { "test-id": "item", "aria-label": `${item.name} ${this.formatValue(item.value)}`, class: item.classes, onClick: event => this.onClick(event, item), onMouseEnter: event => this.onMouseEnter(event, item), onMouseLeave: event => this.onMouseLeave(event, item) }, h("span", { "test-id": "itemColor", class: "item-color-indicator", style: { backgroundColor: item.color }, "aria-hidden": "true" }), h("span", { "test-id": "itemName", class: "item-name" }, item.name), h("span", { id: `item-${item.id}`, "test-id": "itemValue", class: "item-value" }, this.formatValue(item.value)))))))));
97
+ return (h("click-elsewhere", { key: 'b80e97d61b66d2a3950c0e680d8f6fdf0594391a', onChange: () => this.onClickElsewhere(this) }, h("ul", { key: '14dc772fa9b1608e415573e90d4c2780c12adef5' }, this.dataWithClasses.map(item => (h("li", { class: "item" }, h("button", { "test-id": "item", "aria-label": `${item.name} ${this.formatValue(item.value)}`, class: item.classes, onClick: event => this.onClick(event, item), onMouseEnter: event => this.onMouseEnter(event, item), onMouseLeave: event => this.onMouseLeave(event, item) }, h("span", { "test-id": "itemColor", class: "item-color-indicator", style: { backgroundColor: item.color }, "aria-hidden": "true" }), h("span", { "test-id": "itemName", class: "item-name" }, item.name), h("span", { id: `item-${item.id}`, "test-id": "itemValue", class: "item-value" }, this.formatValue(item.value)))))))));
98
98
  }
99
99
  static get is() { return "q2-legend"; }
100
100
  static get encapsulation() { return "shadow"; }
@@ -73,74 +73,71 @@ button {
73
73
  box-shadow: none;
74
74
  }
75
75
 
76
- .link {
76
+ .link-container {
77
77
  --comp-link-font-bold-stroke-width: 0.5px;
78
78
  background: transparent;
79
79
  border: none;
80
- color: var(--tct-link-color, var(--t-primary, inherit));
81
80
  font-size: var(--tct-link-font-size, inherit);
82
81
  font-weight: var(--tct-link-font-weight, inherit);
83
82
  }
84
- .link a {
83
+ .link-container.standalone {
84
+ --comp-icon-stroke: var(--tct-link-icon-stroke-width, 1.5);
85
+ }
86
+ .link-container.standalone .link {
87
+ color: var(--tct-link-color-standalone, var(--t-primary));
85
88
  height: var(--tct-link-height, 24px);
86
89
  display: flex;
87
90
  align-items: center;
88
91
  --tct-icon-size: 16px;
89
92
  text-decoration: none;
90
93
  }
91
- .link a q2-icon {
94
+ .link-container.standalone .link q2-icon {
92
95
  margin-left: var(--tct-link-label-icon-gap, 6px);
93
96
  }
94
- .link.standalone {
95
- display: flex;
96
- align-items: center;
97
- color: var(--tct-link-color-standalone, var(--t-primary));
98
- --comp-icon-stroke: var(--tct-link-icon-stroke-width, 1.5);
99
- }
100
- .link.standalone:hover {
97
+ .link-container.standalone:hover {
101
98
  text-decoration: underline;
102
99
  -webkit-text-stroke-width: var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));
103
100
  text-stroke-width: var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));
104
101
  --tct-icon-stroke-width: calc(var(--comp-icon-stroke) + 0.5);
105
102
  }
106
- .link.standalone:active:hover {
103
+ .link-container.standalone:active:hover {
107
104
  text-decoration: underline;
108
105
  -webkit-text-stroke-width: var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));
109
106
  text-stroke-width: var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));
110
107
  --tct-icon-stroke-width: calc(var(--comp-icon-stroke) + 0.5);
111
108
  }
112
- .link.standalone:active:hover a {
109
+ .link-container.standalone:active:hover .link {
113
110
  color: var(--tct-link-color-standalone-active, var(--t-primary-d2));
114
111
  box-shadow: none;
115
112
  }
116
- .link.standalone.disabled a {
113
+ .link-container.standalone.disabled .link {
117
114
  cursor: not-allowed;
118
115
  color: var(--tct-link-color-standalone-disabled, var(--t-primary));
119
116
  opacity: 0.5;
120
117
  text-decoration: none;
121
118
  }
122
- .link.standalone.disabled:hover {
119
+ .link-container.standalone.disabled:hover {
123
120
  text-decoration: none;
124
121
  }
125
- .link.inline {
122
+ .link-container.inline {
126
123
  margin: 0 var(--tct-link-side-margin, 6px);
127
124
  text-decoration: underline;
128
125
  color: var(--tct-link-color-inline, var(--t-primary));
129
126
  }
130
- .link.inline:hover {
127
+ .link-container.inline:hover {
131
128
  -webkit-text-stroke-width: var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));
132
129
  text-stroke-width: var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));
133
130
  }
134
- .link.inline:active:hover {
131
+ .link-container.inline:active:hover {
135
132
  -webkit-text-stroke-width: var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));
136
133
  text-stroke-width: var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));
137
134
  color: var(--tct-link-color-inline-active, var(--t-primary-d2));
138
135
  box-shadow: none;
139
136
  }
140
- .link.inline.disabled {
137
+ .link-container.inline.disabled {
141
138
  cursor: not-allowed;
142
139
  opacity: 0.5;
143
140
  }
144
- .link.inline:focus-visible .link.inline {
141
+ .link-container.inline:focus-visible .link-container.inline {
145
142
  box-shadow: var(--const-double-focus-ring);
146
143
  }
@@ -23,7 +23,7 @@ export class Q2Link {
23
23
  // #endregion
24
24
  // #region Local Methods
25
25
  get classes() {
26
- const list = ['link'];
26
+ const list = ['link-container'];
27
27
  if (this.variant)
28
28
  list.push(this.variant);
29
29
  if (!!this.disabled)
@@ -43,7 +43,7 @@ export class Q2Link {
43
43
  // #endregion
44
44
  // #region Render Methods
45
45
  render() {
46
- return this.variant === 'standalone' ? (h("div", { class: this.classes, "aria-label": this.label }, h("a", { onClick: e => this.handleClick(e), href: !!this.disabled ? undefined : this.href, target: this.target || '_self', referrerPolicy: this.referrerpolicy || undefined, title: this.tctTitle || undefined, "test-id": "linkAnchor" }, h("span", { class: "label" }, this.label), h("q2-icon", { type: "chevron-right" })))) : (h("a", { class: this.classes, onClick: e => this.handleClick(e), href: !!this.disabled ? undefined : this.href, target: this.target || '_self', referrerPolicy: this.referrerpolicy || undefined, title: this.tctTitle || undefined, "test-id": "linkAnchor" }, this.label));
46
+ return this.variant === 'standalone' ? (h("div", { class: this.classes, "aria-label": this.label }, h("a", { class: "link", onClick: e => this.handleClick(e), href: !!this.disabled ? undefined : this.href, target: this.target || '_self', referrerPolicy: this.referrerpolicy || undefined, title: this.tctTitle || undefined, "test-id": "linkAnchor" }, h("span", { class: "label" }, this.label), h("q2-icon", { type: "chevron-right" })))) : (h("a", { class: this.classes, onClick: e => this.handleClick(e), href: !!this.disabled ? undefined : this.href, target: this.target || '_self', referrerPolicy: this.referrerpolicy || undefined, title: this.tctTitle || undefined, "test-id": "linkAnchor" }, this.label));
47
47
  }
48
48
  static get is() { return "q2-link"; }
49
49
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"q2-link.js","sourceRoot":"","sources":["../../../src/components/q2-link/q2-link.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAsB,OAAO,EAAE,KAAK,EAAgB,MAAM,EAAE,MAAM,eAAe,CAAC;AAE7G,MAAM,OAAO,MAAM;;wBAWK,KAAK;oBAIV,GAAG;;;;;uBAoBA,QAAQ;;IAY1B,aAAa;IACb,6BAA6B;IAE7B;;;;OAIG;IAEH,KAAK,CAAC,SAAS;QACX,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAClF,MAA4B,aAA5B,MAAM,uBAAN,MAAM,CAAwB,KAAK,EAAE,CAAC;IAC3C,CAAC;IAED,aAAa;IACb,wBAAwB;IAExB,IAAI,OAAO;QACP,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,WAAW,CAAC,KAAiB;QACzB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC,CAAC;IACP,CAAC;IAED,aAAa;IACb,yBAAyB;IAEzB,MAAM;QACF,OAAO,IAAI,CAAC,OAAO,KAAK,YAAY,CAAC,CAAC,CAAC,CACnC,WACI,KAAK,EAAE,IAAI,CAAC,OAAO,gBACP,IAAI,CAAC,KAAK;YAEtB,SACI,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EACjC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAC7C,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,OAAO,EAC9B,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,SAAS,EAChD,KAAK,EAAE,IAAI,CAAC,QAAQ,IAAI,SAAS,aACzB,YAAY;gBAEpB,YAAM,KAAK,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ;gBACvC,eAAS,IAAI,EAAC,eAAe,GAAW,CACxC,CACF,CACT,CAAC,CAAC,CAAC,CACA,SACI,KAAK,EAAE,IAAI,CAAC,OAAO,EACnB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EACjC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAC7C,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,OAAO,EAC9B,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,SAAS,EAChD,KAAK,EAAE,IAAI,CAAC,QAAQ,IAAI,SAAS,aACzB,YAAY,IAEnB,IAAI,CAAC,KAAK,CACX,CACP,CAAC;IACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGJ","sourcesContent":["import { Component, Prop, h, ComponentInterface, Element, Event, EventEmitter, Method } from '@stencil/core';\n@Component({ tag: 'q2-link', shadow: true, styleUrl: 'q2-link.scss' })\nexport class Q2Link implements ComponentInterface {\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region Public Property API\n\n /** The disabled. */\n @Prop({ reflect: true })\n disabled: boolean = false;\n\n /** The link when clicked. */\n @Prop({ reflect: true })\n href: string = '#';\n\n /** The label to display. */\n @Prop({ reflect: true })\n label: string;\n\n /** The [referrerpolicy](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#referrerpolicy) */\n @Prop({ reflect: true })\n referrerpolicy: ReferrerPolicy;\n\n /** The target. */\n @Prop({ reflect: true })\n target: string; // _self | _blank\n\n /** The title attribute on a tag in shadowRoot. */\n @Prop({ reflect: true })\n tctTitle: string;\n\n /** The value link to display. */\n @Prop({ reflect: true })\n variant: string = 'inline';\n\n // #endregion\n // #region Events\n\n /**\n * Emitted when the link is clicked.\n * @legacyEvent\n */\n @Event()\n tctClick: EventEmitter<{ target: string; referrerpolicy: string; href: string }>;\n\n // #endregion\n // #region Public Methods API\n\n /**\n * A method for click.\n *\n * @testOnly\n */\n @Method()\n async clickLink() {\n const anchor = this.hostElement.shadowRoot.querySelector(`[test-id=\"linkAnchor\"]`);\n (anchor as HTMLAnchorElement)?.click();\n }\n\n // #endregion\n // #region Local Methods\n\n get classes() {\n const list = ['link'];\n if (this.variant) list.push(this.variant);\n if (!!this.disabled) list.push('disabled');\n return list.join(' ');\n }\n\n handleClick(event: MouseEvent) {\n event.stopPropagation();\n if (this.disabled) return;\n this.tctClick.emit({\n target: this.target,\n referrerpolicy: this.referrerpolicy,\n href: this.href,\n });\n }\n\n // #endregion\n // #region Render Methods\n\n render() {\n return this.variant === 'standalone' ? (\n <div\n class={this.classes}\n aria-label={this.label}\n >\n <a\n onClick={e => this.handleClick(e)}\n href={!!this.disabled ? undefined : this.href}\n target={this.target || '_self'}\n referrerPolicy={this.referrerpolicy || undefined}\n title={this.tctTitle || undefined}\n test-id=\"linkAnchor\"\n >\n <span class=\"label\">{this.label}</span>\n <q2-icon type=\"chevron-right\"></q2-icon>\n </a>\n </div>\n ) : (\n <a\n class={this.classes}\n onClick={e => this.handleClick(e)}\n href={!!this.disabled ? undefined : this.href}\n target={this.target || '_self'}\n referrerPolicy={this.referrerpolicy || undefined}\n title={this.tctTitle || undefined}\n test-id=\"linkAnchor\"\n >\n {this.label}\n </a>\n );\n }\n\n // #endregion\n}\n"]}
1
+ {"version":3,"file":"q2-link.js","sourceRoot":"","sources":["../../../src/components/q2-link/q2-link.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, h, ComponentInterface, Element, Event, EventEmitter, Method } from '@stencil/core';\n@Component({ tag: 'q2-link', shadow: true, styleUrl: 'q2-link.scss' })\nexport class Q2Link implements ComponentInterface {\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region Public Property API\n\n /** The disabled. */\n @Prop({ reflect: true })\n disabled: boolean = false;\n\n /** The link when clicked. */\n @Prop({ reflect: true })\n href: string = '#';\n\n /** The label to display. */\n @Prop({ reflect: true })\n label: string;\n\n /** The [referrerpolicy](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#referrerpolicy) */\n @Prop({ reflect: true })\n referrerpolicy: ReferrerPolicy;\n\n /** The target. */\n @Prop({ reflect: true })\n target: string; // _self | _blank\n\n /** The title attribute on a tag in shadowRoot. */\n @Prop({ reflect: true })\n tctTitle: string;\n\n /** The value link to display. */\n @Prop({ reflect: true })\n variant: string = 'inline';\n\n // #endregion\n // #region Events\n\n /**\n * Emitted when the link is clicked.\n * @legacyEvent\n */\n @Event()\n tctClick: EventEmitter<{ target: string; referrerpolicy: string; href: string }>;\n\n // #endregion\n // #region Public Methods API\n\n /**\n * A method for click.\n *\n * @testOnly\n */\n @Method()\n async clickLink() {\n const anchor = this.hostElement.shadowRoot.querySelector(`[test-id=\"linkAnchor\"]`);\n (anchor as HTMLAnchorElement)?.click();\n }\n\n // #endregion\n // #region Local Methods\n\n get classes() {\n const list = ['link-container'];\n if (this.variant) list.push(this.variant);\n if (!!this.disabled) list.push('disabled');\n return list.join(' ');\n }\n\n handleClick(event: MouseEvent) {\n event.stopPropagation();\n if (this.disabled) return;\n this.tctClick.emit({\n target: this.target,\n referrerpolicy: this.referrerpolicy,\n href: this.href,\n });\n }\n\n // #endregion\n // #region Render Methods\n\n render() {\n return this.variant === 'standalone' ? (\n <div\n class={this.classes}\n aria-label={this.label}\n >\n <a\n class=\"link\"\n onClick={e => this.handleClick(e)}\n href={!!this.disabled ? undefined : this.href}\n target={this.target || '_self'}\n referrerPolicy={this.referrerpolicy || undefined}\n title={this.tctTitle || undefined}\n test-id=\"linkAnchor\"\n >\n <span class=\"label\">{this.label}</span>\n <q2-icon type=\"chevron-right\"></q2-icon>\n </a>\n </div>\n ) : (\n <a\n class={this.classes}\n onClick={e => this.handleClick(e)}\n href={!!this.disabled ? undefined : this.href}\n target={this.target || '_self'}\n referrerPolicy={this.referrerpolicy || undefined}\n title={this.tctTitle || undefined}\n test-id=\"linkAnchor\"\n >\n {this.label}\n </a>\n );\n }\n\n // #endregion\n}\n"]}
@@ -55,8 +55,8 @@ describe('q2-link', () => {
55
55
  expect(page.root).toEqualHtml(`
56
56
  <q2-link label="Click me" href="https://q2.com" variant="standalone">
57
57
  <mock:shadow-root>
58
- <div aria-label="Click me" class="link standalone">
59
- <a href="https://q2.com" target="_self" test-id="linkAnchor">
58
+ <div aria-label="Click me" class="link-container standalone">
59
+ <a class="link" href="https://q2.com" target="_self" test-id="linkAnchor">
60
60
  <span class="label">Click me</span>
61
61
  <q2-icon type="chevron-right"></q2-icon>
62
62
  </a>
@@ -92,8 +92,8 @@ describe('q2-link', () => {
92
92
  expect(page.root).toEqualHtml(`
93
93
  <q2-link label="Click me" href="https://q2.com" variant="standalone" target="_blank" referrerpolicy="no-referrer">
94
94
  <mock:shadow-root>
95
- <div aria-label="Click me" class="link standalone">
96
- <a href="https://q2.com" target="_blank" referrerpolicy="no-referrer" test-id="linkAnchor">
95
+ <div aria-label="Click me" class="link-container standalone">
96
+ <a class="link" href="https://q2.com" target="_blank" referrerpolicy="no-referrer" test-id="linkAnchor">
97
97
  <span class="label">Click me</span>
98
98
  <q2-icon type="chevron-right"></q2-icon>
99
99
  </a>
@@ -113,7 +113,7 @@ describe('q2-link', () => {
113
113
  expect(page.root).toEqualHtml(`
114
114
  <q2-link label="Click me" href="https://q2.com" variant="inline" target="_blank" referrerpolicy="no-referrer">
115
115
  <mock:shadow-root>
116
- <a href="https://q2.com" target="_blank" class="link inline" referrerpolicy="no-referrer" test-id="linkAnchor">
116
+ <a href="https://q2.com" target="_blank" class="link-container inline" referrerpolicy="no-referrer" test-id="linkAnchor">
117
117
  Click me
118
118
  </a>
119
119
  </mock:shadow-root>
@@ -130,7 +130,7 @@ describe('q2-link', () => {
130
130
  variant="inline"
131
131
  target="_blank"
132
132
  referrerpolicy="no-referrer">
133
- </q2-data-table>
133
+ </q2-link>
134
134
  `,
135
135
  });
136
136
  await page.waitForChanges();
@@ -1 +1 @@
1
- {"version":3,"file":"q2-link-test.e2e.js","sourceRoot":"","sources":["../../../../src/components/q2-link/test/q2-link-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { SpecPage, newSpecPage } from '@stencil/core/testing';\nimport { setup, evaluateA11y, getListOfStyleCompilationIssues } from '@/utils/helpers';\nimport { Q2Link } from '../q2-link';\n\nfunction createNewSpecPage(props: {\n label?: string;\n href?: string;\n target?: string;\n variant?: string;\n referrerpolicy?: string;\n disabled?: boolean;\n}) {\n let htmlProps: string = '';\n if (!!props.label) {\n htmlProps += ` label=\"${props.label}\"`;\n }\n if (!!props.href) {\n htmlProps += ` href=\"${props.href}\"`;\n }\n if (!!props.target) {\n htmlProps += ` target=\"${props.target}\"`;\n }\n if (!!props.variant) {\n htmlProps += ` variant=\"${props.variant || 'inline'}\"`;\n }\n if (!!props.referrerpolicy) {\n htmlProps += ` referrerpolicy=\"${props.referrerpolicy}\"`;\n }\n if (!!props.disabled) {\n htmlProps += ` disabled=\"\"`;\n }\n\n return newSpecPage({\n components: [Q2Link],\n html: `<q2-link ${htmlProps}></q2-link>`,\n });\n}\n\ndescribe('q2-link', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-link></q2-link>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-link')).toHaveLength(0);\n });\n\n describe('[A11y] guideline compliance', () => {\n it('Does not have accessibility violations for inline variant(default)', async () => {\n const page = await setup({ html: `<q2-link label=\"Click me\" href=\"https://q2.com\" />` });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n it('Does not have accessibility violations for standalone variant', async () => {\n const page = await setup({\n html: `<q2-link label=\"Click me\" href=\"https://q2.com\" variant=\"standalone\" />`,\n });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n\n let page: SpecPage;\n\n it('renders', async () => {\n page = await createNewSpecPage({\n label: 'Click me',\n href: 'https://q2.com',\n variant: 'standalone',\n });\n\n expect(page.root).toEqualHtml(`\n <q2-link label=\"Click me\" href=\"https://q2.com\" variant=\"standalone\">\n <mock:shadow-root>\n <div aria-label=\"Click me\" class=\"link standalone\">\n <a href=\"https://q2.com\" target=\"_self\" test-id=\"linkAnchor\">\n <span class=\"label\">Click me</span>\n <q2-icon type=\"chevron-right\"></q2-icon>\n </a>\n </div>\n </mock:shadow-root>\n </q2-link>\n `);\n });\n\n describe('Props', () => {\n it('should render with properties', async () => {\n page = await createNewSpecPage({\n label: 'Click me',\n href: 'https://q2.com',\n target: '_blank',\n referrerpolicy: 'no-referrer',\n variant: 'standalone',\n });\n expect(page.root.label).toBe('Click me');\n expect(page.root.href).toBe('https://q2.com');\n expect(page.root.target).toBe('_blank');\n expect(page.root.variant).toBe('standalone');\n expect(page.root.referrerpolicy).toBe('no-referrer');\n });\n it('should render with standalone variant', async () => {\n page = await createNewSpecPage({\n label: 'Click me',\n href: 'https://q2.com',\n target: '_blank',\n referrerpolicy: 'no-referrer',\n variant: 'standalone',\n });\n expect(page.root.label).toBe('Click me');\n expect(page.root).toEqualHtml(`\n <q2-link label=\"Click me\" href=\"https://q2.com\" variant=\"standalone\" target=\"_blank\" referrerpolicy=\"no-referrer\">\n <mock:shadow-root>\n <div aria-label=\"Click me\" class=\"link standalone\">\n <a href=\"https://q2.com\" target=\"_blank\" referrerpolicy=\"no-referrer\" test-id=\"linkAnchor\">\n <span class=\"label\">Click me</span>\n <q2-icon type=\"chevron-right\"></q2-icon>\n </a>\n </div>\n </mock:shadow-root>\n </q2-link>\n `);\n });\n it('should render with inline variant', async () => {\n page = await createNewSpecPage({\n label: 'Click me',\n href: 'https://q2.com',\n target: '_blank',\n referrerpolicy: 'no-referrer',\n });\n expect(page.root.label).toBe('Click me');\n expect(page.root).toEqualHtml(`\n <q2-link label=\"Click me\" href=\"https://q2.com\" variant=\"inline\" target=\"_blank\" referrerpolicy=\"no-referrer\">\n <mock:shadow-root>\n <a href=\"https://q2.com\" target=\"_blank\" class=\"link inline\" referrerpolicy=\"no-referrer\" test-id=\"linkAnchor\">\n Click me\n </a>\n </mock:shadow-root>\n </q2-link>\n `);\n });\n });\n\n describe('Test methods', () => {\n it('clickLink()', async () => {\n const page = await setup({\n html: `\n <q2-link label=\"Click me\"\n href=\"https://q2.com\"\n variant=\"inline\"\n target=\"_blank\"\n referrerpolicy=\"no-referrer\">\n </q2-data-table>\n `,\n });\n await page.waitForChanges();\n const sortSpy = await page.spyOnEvent('tctClick');\n const link = await page.find('q2-link');\n await link.callMethod('clickLink');\n await page.waitForChanges();\n expect(sortSpy).toHaveReceivedEventTimes(1);\n });\n });\n});\n"]}
1
+ {"version":3,"file":"q2-link-test.e2e.js","sourceRoot":"","sources":["../../../../src/components/q2-link/test/q2-link-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { SpecPage, newSpecPage } from '@stencil/core/testing';\nimport { setup, evaluateA11y, getListOfStyleCompilationIssues } from '@/utils/helpers';\nimport { Q2Link } from '../q2-link';\n\nfunction createNewSpecPage(props: {\n label?: string;\n href?: string;\n target?: string;\n variant?: string;\n referrerpolicy?: string;\n disabled?: boolean;\n}) {\n let htmlProps: string = '';\n if (!!props.label) {\n htmlProps += ` label=\"${props.label}\"`;\n }\n if (!!props.href) {\n htmlProps += ` href=\"${props.href}\"`;\n }\n if (!!props.target) {\n htmlProps += ` target=\"${props.target}\"`;\n }\n if (!!props.variant) {\n htmlProps += ` variant=\"${props.variant || 'inline'}\"`;\n }\n if (!!props.referrerpolicy) {\n htmlProps += ` referrerpolicy=\"${props.referrerpolicy}\"`;\n }\n if (!!props.disabled) {\n htmlProps += ` disabled=\"\"`;\n }\n\n return newSpecPage({\n components: [Q2Link],\n html: `<q2-link ${htmlProps}></q2-link>`,\n });\n}\n\ndescribe('q2-link', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-link></q2-link>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-link')).toHaveLength(0);\n });\n\n describe('[A11y] guideline compliance', () => {\n it('Does not have accessibility violations for inline variant(default)', async () => {\n const page = await setup({ html: `<q2-link label=\"Click me\" href=\"https://q2.com\" />` });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n it('Does not have accessibility violations for standalone variant', async () => {\n const page = await setup({\n html: `<q2-link label=\"Click me\" href=\"https://q2.com\" variant=\"standalone\" />`,\n });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n\n let page: SpecPage;\n\n it('renders', async () => {\n page = await createNewSpecPage({\n label: 'Click me',\n href: 'https://q2.com',\n variant: 'standalone',\n });\n\n expect(page.root).toEqualHtml(`\n <q2-link label=\"Click me\" href=\"https://q2.com\" variant=\"standalone\">\n <mock:shadow-root>\n <div aria-label=\"Click me\" class=\"link-container standalone\">\n <a class=\"link\" href=\"https://q2.com\" target=\"_self\" test-id=\"linkAnchor\">\n <span class=\"label\">Click me</span>\n <q2-icon type=\"chevron-right\"></q2-icon>\n </a>\n </div>\n </mock:shadow-root>\n </q2-link>\n `);\n });\n\n describe('Props', () => {\n it('should render with properties', async () => {\n page = await createNewSpecPage({\n label: 'Click me',\n href: 'https://q2.com',\n target: '_blank',\n referrerpolicy: 'no-referrer',\n variant: 'standalone',\n });\n expect(page.root.label).toBe('Click me');\n expect(page.root.href).toBe('https://q2.com');\n expect(page.root.target).toBe('_blank');\n expect(page.root.variant).toBe('standalone');\n expect(page.root.referrerpolicy).toBe('no-referrer');\n });\n it('should render with standalone variant', async () => {\n page = await createNewSpecPage({\n label: 'Click me',\n href: 'https://q2.com',\n target: '_blank',\n referrerpolicy: 'no-referrer',\n variant: 'standalone',\n });\n expect(page.root.label).toBe('Click me');\n expect(page.root).toEqualHtml(`\n <q2-link label=\"Click me\" href=\"https://q2.com\" variant=\"standalone\" target=\"_blank\" referrerpolicy=\"no-referrer\">\n <mock:shadow-root>\n <div aria-label=\"Click me\" class=\"link-container standalone\">\n <a class=\"link\" href=\"https://q2.com\" target=\"_blank\" referrerpolicy=\"no-referrer\" test-id=\"linkAnchor\">\n <span class=\"label\">Click me</span>\n <q2-icon type=\"chevron-right\"></q2-icon>\n </a>\n </div>\n </mock:shadow-root>\n </q2-link>\n `);\n });\n it('should render with inline variant', async () => {\n page = await createNewSpecPage({\n label: 'Click me',\n href: 'https://q2.com',\n target: '_blank',\n referrerpolicy: 'no-referrer',\n });\n expect(page.root.label).toBe('Click me');\n expect(page.root).toEqualHtml(`\n <q2-link label=\"Click me\" href=\"https://q2.com\" variant=\"inline\" target=\"_blank\" referrerpolicy=\"no-referrer\">\n <mock:shadow-root>\n <a href=\"https://q2.com\" target=\"_blank\" class=\"link-container inline\" referrerpolicy=\"no-referrer\" test-id=\"linkAnchor\">\n Click me\n </a>\n </mock:shadow-root>\n </q2-link>\n `);\n });\n });\n\n describe('Test methods', () => {\n it('clickLink()', async () => {\n const page = await setup({\n html: `\n <q2-link label=\"Click me\"\n href=\"https://q2.com\"\n variant=\"inline\"\n target=\"_blank\"\n referrerpolicy=\"no-referrer\">\n </q2-link>\n `,\n });\n await page.waitForChanges();\n const sortSpy = await page.spyOnEvent('tctClick');\n const link = await page.find('q2-link');\n await link.callMethod('clickLink');\n await page.waitForChanges();\n expect(sortSpy).toHaveReceivedEventTimes(1);\n });\n });\n});\n"]}
@@ -19,10 +19,9 @@ export class Q2List {
19
19
  // #endregion
20
20
  // #region Component Lifecycle Events
21
21
  disconnectedCallback() {
22
- if (this.mutationObserver) {
23
- this.mutationObserver.disconnect();
24
- this.mutationObserver = null;
25
- }
22
+ var _a;
23
+ (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
24
+ this.mutationObserver = null;
26
25
  }
27
26
  componentDidLoad() {
28
27
  if (typeof MutationObserver === 'undefined')
@@ -64,7 +63,7 @@ export class Q2List {
64
63
  // #endregion
65
64
  // #region Render Methods
66
65
  render() {
67
- return (h("div", { key: 'f6b93c87dbc86ff0522ef0827e3f60f9b28993e3', class: this.listClasses, ref: el => (this.listElement = el) }, (this.hasFilterSlot || this.hasLabelContent) && (h("div", { key: '39973ea29515746cbf0ce22029084b0530ae5af6', class: this.headerClasses }, h("div", { key: 'bcd3fb06ee6879f3b0558301b7d9ff31699be9b6', class: "label" }, this.label), this.hasFilterSlot && h("slot", { key: '9229cd8da2c0c362627e9ee7e8f04cddbc3f26a2', name: "filter" }))), h("div", { key: 'e1ee3f55a2b896770e1041239e70a91df434cc68', role: "list" }, h("slot", { key: '0c621e0bd3d9ee7382754f8be92231983bc91562' }))));
66
+ return (h("div", { key: 'e4371faae59ae85dee324d6d6783a4b93c23f67f', class: this.listClasses, ref: el => (this.listElement = el) }, (this.hasFilterSlot || this.hasLabelContent) && (h("div", { key: '59cc98b62d2581a66a9ed127189fb23364c49bff', class: this.headerClasses }, h("div", { key: '568b6fab57c7552d5a577d19bd31760f6d1aa461', class: "label" }, this.label), this.hasFilterSlot && h("slot", { key: 'd27e785788847cf1a422568383bfe5d986764b2b', name: "filter" }))), h("div", { key: '7a00add6911167d7a27008f10f5d44cfae5d80b2', role: "list" }, h("slot", { key: 'dd5a0290091b0f1cb00a14cde43bab36e87573d2' }))));
68
67
  }
69
68
  static get is() { return "q2-list"; }
70
69
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"q2-list.js","sourceRoot":"","sources":["../../../src/components/q2-list/q2-list.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, h, State, Prop } from '@stencil/core';\nimport { hasSlotContent } from 'src/utils';\n\n@Component({\n tag: 'q2-list',\n styleUrl: 'q2-list.scss',\n shadow: true,\n})\nexport class Q2List {\n // #region Own Properties\n\n listElement: HTMLDivElement;\n mutationObserver: MutationObserver;\n scheduledAfterRender: (() => void)[] = [];\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n renderTrigger: number = 0;\n\n // #endregion\n // #region Public Property API\n\n /** Adds a border between each items */\n @Prop({ mutable: true, reflect: true })\n bordered: boolean;\n\n /** label text on header area */\n @Prop({ reflect: true })\n label: string;\n\n // #endregion\n // #region Component Lifecycle Events\n\n disconnectedCallback() {\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n this.mutationObserver = null;\n }\n }\n\n componentDidLoad() {\n if (typeof MutationObserver === 'undefined') return;\n const observer = new MutationObserver(this.onMutationObserved);\n observer.observe(this.hostElement, { childList: true, subtree: true });\n this.mutationObserver = observer;\n this.onMutationObserved();\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n }\n\n // #endregion\n // #region Local Methods\n\n get hasFilterSlot() {\n return !!this.hostElement.querySelector('q2-pill') || hasSlotContent(this.hostElement, 'pill');\n }\n\n get hasLabelContent() {\n return !!this.label;\n }\n\n get headerClasses() {\n const classes = ['header'];\n if (this.hasLabelContent && this.hasFilterSlot) {\n classes.push('header-spacebetween');\n } else if (this.hasLabelContent && !this.hasFilterSlot) {\n classes.push('header-start');\n } else if (!this.hasLabelContent && this.hasFilterSlot) {\n classes.push('header-end');\n }\n return classes.join(' ');\n }\n\n get listClasses() {\n const classes = ['list'];\n return classes.join(' ');\n }\n\n onMutationObserved = () => {\n this.renderTrigger += 1;\n this.scheduledAfterRender.push(() => {\n Array.from(this.hostElement.children).forEach(child => {\n if (child.tagName === 'Q2-ITEM') child.role = 'listitem';\n });\n });\n };\n\n // #endregion\n // #region Render Methods\n\n render() {\n return (\n <div\n class={this.listClasses}\n ref={el => (this.listElement = el)}\n >\n {(this.hasFilterSlot || this.hasLabelContent) && (\n <div class={this.headerClasses}>\n <div class=\"label\">{this.label}</div>\n {this.hasFilterSlot && <slot name=\"filter\" />}\n </div>\n )}\n <div role=\"list\">\n <slot />\n </div>\n </div>\n );\n }\n\n // #endregion\n}\n"]}
1
+ {"version":3,"file":"q2-list.js","sourceRoot":"","sources":["../../../src/components/q2-list/q2-list.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, h, State, Prop } from '@stencil/core';\nimport { hasSlotContent } from 'src/utils';\n\n@Component({\n tag: 'q2-list',\n styleUrl: 'q2-list.scss',\n shadow: true,\n})\nexport class Q2List {\n // #region Own Properties\n\n listElement: HTMLDivElement;\n mutationObserver: MutationObserver;\n scheduledAfterRender: (() => void)[] = [];\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n renderTrigger: number = 0;\n\n // #endregion\n // #region Public Property API\n\n /** Adds a border between each items */\n @Prop({ mutable: true, reflect: true })\n bordered: boolean;\n\n /** label text on header area */\n @Prop({ reflect: true })\n label: string;\n\n // #endregion\n // #region Component Lifecycle Events\n\n disconnectedCallback() {\n this.mutationObserver?.disconnect();\n this.mutationObserver = null;\n }\n\n componentDidLoad() {\n if (typeof MutationObserver === 'undefined') return;\n const observer = new MutationObserver(this.onMutationObserved);\n observer.observe(this.hostElement, { childList: true, subtree: true });\n this.mutationObserver = observer;\n this.onMutationObserved();\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n }\n\n // #endregion\n // #region Local Methods\n\n get hasFilterSlot() {\n return !!this.hostElement.querySelector('q2-pill') || hasSlotContent(this.hostElement, 'pill');\n }\n\n get hasLabelContent() {\n return !!this.label;\n }\n\n get headerClasses() {\n const classes = ['header'];\n if (this.hasLabelContent && this.hasFilterSlot) {\n classes.push('header-spacebetween');\n } else if (this.hasLabelContent && !this.hasFilterSlot) {\n classes.push('header-start');\n } else if (!this.hasLabelContent && this.hasFilterSlot) {\n classes.push('header-end');\n }\n return classes.join(' ');\n }\n\n get listClasses() {\n const classes = ['list'];\n return classes.join(' ');\n }\n\n onMutationObserved = () => {\n this.renderTrigger += 1;\n this.scheduledAfterRender.push(() => {\n Array.from(this.hostElement.children).forEach(child => {\n if (child.tagName === 'Q2-ITEM') child.role = 'listitem';\n });\n });\n };\n\n // #endregion\n // #region Render Methods\n\n render() {\n return (\n <div\n class={this.listClasses}\n ref={el => (this.listElement = el)}\n >\n {(this.hasFilterSlot || this.hasLabelContent) && (\n <div class={this.headerClasses}>\n <div class=\"label\">{this.label}</div>\n {this.hasFilterSlot && <slot name=\"filter\" />}\n </div>\n )}\n <div role=\"list\">\n <slot />\n </div>\n </div>\n );\n }\n\n // #endregion\n}\n"]}
@@ -2,13 +2,57 @@ import { h } from "@stencil/core";
2
2
  import { loc } from "../../utils/index";
3
3
  export class Q2Loc {
4
4
  constructor() {
5
+ // #endregion
6
+ // #region Local Methods
7
+ this.initMutationObserver = () => {
8
+ const observer = new MutationObserver(this.mutationHandler);
9
+ observer.observe(this.hostElement, { childList: true, subtree: true, characterData: true });
10
+ this.mutationObserver = observer;
11
+ };
12
+ this.initValue = async () => {
13
+ const textContent = this.hostElement.textContent.trim();
14
+ if (!this.value && textContent) {
15
+ this.value = textContent;
16
+ this.hostElement.textContent = null;
17
+ }
18
+ else {
19
+ this.propHandler();
20
+ }
21
+ };
22
+ this.mutationHandler = async () => {
23
+ const textContent = this.hostElement.textContent.trim();
24
+ if (textContent && this.value !== textContent) {
25
+ this.value = textContent;
26
+ this.hostElement.textContent = null;
27
+ }
28
+ };
29
+ this.displayValue = undefined;
5
30
  this.substitutions = undefined;
6
31
  this.value = undefined;
7
32
  }
8
33
  // #endregion
34
+ // #region Component Lifecycle Events
35
+ disconnectedCallback() {
36
+ var _a;
37
+ (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
38
+ this.mutationObserver = null;
39
+ }
40
+ componentWillLoad() {
41
+ this.initValue();
42
+ }
43
+ componentDidLoad() {
44
+ if ('MutationObserver' in window)
45
+ this.initMutationObserver();
46
+ }
47
+ // #endregion
48
+ // #region Watchers
49
+ propHandler() {
50
+ this.displayValue = loc(this.value, this.substitutions);
51
+ }
52
+ // #endregion
9
53
  // #region Render Methods
10
54
  render() {
11
- return h("span", { key: 'e003f2f988be6050e7f80f0d0b2a9fbd587a66eb' }, loc(this.value, this.substitutions));
55
+ return h("span", { key: '8774b0a4bfb39826f6d7be0640c7a0244ab22a09' }, this.displayValue);
12
56
  }
13
57
  static get is() { return "q2-loc"; }
14
58
  static get encapsulation() { return "shadow"; }
@@ -41,7 +85,7 @@ export class Q2Loc {
41
85
  },
42
86
  "value": {
43
87
  "type": "string",
44
- "mutable": false,
88
+ "mutable": true,
45
89
  "complexType": {
46
90
  "original": "string",
47
91
  "resolved": "string",
@@ -50,13 +94,31 @@ export class Q2Loc {
50
94
  "required": false,
51
95
  "optional": false,
52
96
  "docs": {
53
- "tags": [],
54
- "text": "The reference to the localization key you would like to display the localized output of."
97
+ "tags": [{
98
+ "name": "localizable",
99
+ "text": undefined
100
+ }],
101
+ "text": "The reference to the localization key you would like to display the localized output of.\nIf no value is provided, any text inside the element will be used as a fallback."
55
102
  },
56
103
  "attribute": "value",
57
104
  "reflect": true
58
105
  }
59
106
  };
60
107
  }
108
+ static get states() {
109
+ return {
110
+ "displayValue": {}
111
+ };
112
+ }
113
+ static get elementRef() { return "hostElement"; }
114
+ static get watchers() {
115
+ return [{
116
+ "propName": "value",
117
+ "methodName": "propHandler"
118
+ }, {
119
+ "propName": "substitutions",
120
+ "methodName": "propHandler"
121
+ }];
122
+ }
61
123
  }
62
124
  //# sourceMappingURL=q2-loc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"q2-loc.js","sourceRoot":"","sources":["../../../src/components/q2-loc/q2-loc.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAGhC,MAAM,OAAO,KAAK;;;;;IAWd,aAAa;IACb,yBAAyB;IAEzB,MAAM;QACF,OAAO,+DAAO,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAQ,CAAC;IAC9D,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGJ","sourcesContent":["import { Component, Prop, h } from '@stencil/core';\nimport { loc } from 'src/utils';\n\n@Component({ tag: 'q2-loc', shadow: true, styleUrl: 'q2-loc.scss' })\nexport class Q2Loc {\n // #region Public Property API\n\n /** Any substitutions you would like to pass into the localization string. */\n @Prop()\n substitutions: string[];\n\n /** The reference to the localization key you would like to display the localized output of. */\n @Prop({ reflect: true })\n value: string;\n\n // #endregion\n // #region Render Methods\n\n render() {\n return <span>{loc(this.value, this.substitutions)}</span>;\n }\n\n // #endregion\n}\n"]}
1
+ {"version":3,"file":"q2-loc.js","sourceRoot":"","sources":["../../../src/components/q2-loc/q2-loc.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAGhC,MAAM,OAAO,KAAK;;QAyDd,aAAa;QACb,wBAAwB;QAExB,yBAAoB,GAAG,GAAG,EAAE;YACxB,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC5D,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;QACrC,CAAC,CAAC;QAEF,cAAS,GAAG,KAAK,IAAI,EAAE;YACnB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,WAAW,EAAE,CAAC;gBAC7B,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;gBACzB,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,CAAC;QACL,CAAC,CAAC;QAEF,oBAAe,GAAG,KAAK,IAAI,EAAE;YACzB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YACxD,IAAI,WAAW,IAAI,IAAI,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;gBAC5C,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;gBACzB,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;YACxC,CAAC;QACL,CAAC,CAAC;;;;;IAlDF,aAAa;IACb,qCAAqC;IAErC,oBAAoB;;QAChB,MAAA,IAAI,CAAC,gBAAgB,0CAAE,UAAU,EAAE,CAAC;QACpC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;IACjC,CAAC;IAED,iBAAiB;QACb,IAAI,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;IAED,gBAAgB;QACZ,IAAI,kBAAkB,IAAI,MAAM;YAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAClE,CAAC;IAED,aAAa;IACb,mBAAmB;IAInB,WAAW;QACP,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC;IA6BD,aAAa;IACb,yBAAyB;IAEzB,MAAM;QACF,OAAO,+DAAO,IAAI,CAAC,YAAY,CAAQ,CAAC;IAC5C,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGJ","sourcesContent":["import { Element, Component, Prop, State, Watch, h } from '@stencil/core';\nimport { loc } from 'src/utils';\n\n@Component({ tag: 'q2-loc', shadow: true, styleUrl: 'q2-loc.scss' })\nexport class Q2Loc {\n // #region Own Properties\n\n mutationObserver: MutationObserver;\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n displayValue: string;\n\n // #endregion\n // #region Public Property API\n\n /** Any substitutions you would like to pass into the localization string. */\n @Prop()\n substitutions: string[];\n\n /**\n * The reference to the localization key you would like to display the localized output of.\n * If no value is provided, any text inside the element will be used as a fallback.\n * @localizable\n */\n @Prop({ reflect: true, mutable: true })\n value: string;\n\n // #endregion\n // #region Component Lifecycle Events\n\n disconnectedCallback() {\n this.mutationObserver?.disconnect();\n this.mutationObserver = null;\n }\n\n componentWillLoad() {\n this.initValue();\n }\n\n componentDidLoad() {\n if ('MutationObserver' in window) this.initMutationObserver();\n }\n\n // #endregion\n // #region Watchers\n\n @Watch('value')\n @Watch('substitutions')\n propHandler() {\n this.displayValue = loc(this.value, this.substitutions);\n }\n\n // #endregion\n // #region Local Methods\n\n initMutationObserver = () => {\n const observer = new MutationObserver(this.mutationHandler);\n observer.observe(this.hostElement, { childList: true, subtree: true, characterData: true });\n this.mutationObserver = observer;\n };\n\n initValue = async () => {\n const textContent = this.hostElement.textContent.trim();\n if (!this.value && textContent) {\n this.value = textContent;\n this.hostElement.textContent = null;\n } else {\n this.propHandler();\n }\n };\n\n mutationHandler = async () => {\n const textContent = this.hostElement.textContent.trim();\n if (textContent && this.value !== textContent) {\n this.value = textContent;\n this.hostElement.textContent = null;\n }\n };\n\n // #endregion\n // #region Render Methods\n\n render() {\n return <span>{this.displayValue}</span>;\n }\n\n // #endregion\n}\n"]}
@@ -1,37 +1,26 @@
1
1
  import { evaluateA11y, getListOfStyleCompilationIssues, setTestStrings, setup } from "../../../utils/helpers";
2
2
  describe('q2-loc', () => {
3
- it('properly compiles CSS vars and functions', async () => {
4
- const page = await setup({ html: '<q2-loc></q2-loc>' });
5
- expect(await getListOfStyleCompilationIssues(page, 'q2-loc')).toHaveLength(0);
6
- });
7
- it('localizes provided string and renders the text in its shadowDOM', async function () {
8
- const page = await setup({ html: `<q2-loc></q2-loc>` });
9
- await setTestStrings(page, { 'tecton.element.loc.test': 'Test String' });
10
- const q2Loc = await page.find('q2-loc');
11
- q2Loc.setProperty('value', 'tecton.element.loc.test');
12
- await page.waitForChanges();
13
- // the component renders
14
- expect(q2Loc.tagName).toEqual('Q2-LOC');
15
- const innerContent = await page.find('q2-loc >>> span');
16
- // nested span renders with localized text
17
- expect(innerContent.innerText).toEqual('Test String');
18
- });
19
- it('localizes provided string with substitutions and renders the text in its shadowDOM', async function () {
20
- const page = await setup({ html: `<q2-loc id="unique-id"></q2-loc>` });
21
- await setTestStrings(page, {
22
- 'tecton.element.loc.test.substitutions': 'Test String with {0} and {1}',
3
+ describe('Initialization', () => {
4
+ it('properly compiles CSS vars and functions', async () => {
5
+ const page = await setup({ html: '<q2-loc></q2-loc>' });
6
+ expect(await getListOfStyleCompilationIssues(page, 'q2-loc')).toHaveLength(0);
23
7
  });
24
- const q2Loc = await page.find('q2-loc');
25
- q2Loc.setProperty('value', 'tecton.element.loc.test.substitutions');
26
- await page.$eval('q2-loc', (element) => {
27
- element.substitutions = ['Jane', 'Doe'];
8
+ });
9
+ describe('Accessibility', () => {
10
+ describe('aXe DevTools', () => {
11
+ it('does not have accessibility violations', async () => {
12
+ const page = await setup({ html: `<q2-loc></q2-loc>` });
13
+ await setTestStrings(page, { 'tecton.element.loc.test': 'Test String' });
14
+ const q2Loc = await page.find('q2-loc');
15
+ q2Loc.setProperty('value', 'tecton.element.loc.test');
16
+ await page.waitForChanges();
17
+ const hasViolations = await evaluateA11y(page);
18
+ expect(hasViolations).toBe(false);
19
+ });
28
20
  });
29
- await page.waitForChanges();
30
- // the component renders
31
- expect(q2Loc.tagName).toEqual('Q2-LOC');
32
- const innerContent = await page.find('q2-loc >>> span');
33
- // nested span renders with localized text
34
- expect(innerContent.innerText).toEqual('Test String with Jane and Doe');
21
+ describe('Accessibility Tree', () => { });
22
+ describe('Keyboard Controls', () => { });
23
+ describe('Other', () => { });
35
24
  });
36
25
  describe('Accessibility', () => {
37
26
  describe('aXe DevTools', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"q2-loc-test.e2e.js","sourceRoot":"","sources":["../../../../src/components/q2-loc/test/q2-loc-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { evaluateA11y, getListOfStyleCompilationIssues, setTestStrings, setup } from '@/utils/helpers';\n\ndescribe('q2-loc', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-loc></q2-loc>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-loc')).toHaveLength(0);\n });\n\n it('localizes provided string and renders the text in its shadowDOM', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loc></q2-loc>` });\n await setTestStrings(page, { 'tecton.element.loc.test': 'Test String' });\n\n const q2Loc = await page.find('q2-loc');\n\n q2Loc.setProperty('value', 'tecton.element.loc.test');\n\n await page.waitForChanges();\n\n // the component renders\n expect(q2Loc.tagName).toEqual('Q2-LOC');\n\n const innerContent = await page.find('q2-loc >>> span');\n\n // nested span renders with localized text\n expect(innerContent.innerText).toEqual('Test String');\n });\n\n it('localizes provided string with substitutions and renders the text in its shadowDOM', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loc id=\"unique-id\"></q2-loc>` });\n await setTestStrings(page, {\n 'tecton.element.loc.test.substitutions': 'Test String with {0} and {1}',\n });\n\n const q2Loc = await page.find('q2-loc');\n q2Loc.setProperty('value', 'tecton.element.loc.test.substitutions');\n\n await page.$eval('q2-loc', (element: HTMLQ2LocElement) => {\n element.substitutions = ['Jane', 'Doe'];\n });\n\n await page.waitForChanges();\n\n // the component renders\n expect(q2Loc.tagName).toEqual('Q2-LOC');\n\n const innerContent = await page.find('q2-loc >>> span');\n\n // nested span renders with localized text\n expect(innerContent.innerText).toEqual('Test String with Jane and Doe');\n });\n\n describe('Accessibility', () => {\n describe('aXe DevTools', () => {\n it('does not have accessibility violations', async () => {\n const page = await setup({ html: `<q2-loc></q2-loc>` });\n await setTestStrings(page, { 'tecton.element.loc.test': 'Test String' });\n const q2Loc = await page.find('q2-loc');\n q2Loc.setProperty('value', 'tecton.element.loc.test');\n await page.waitForChanges();\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-loc-test.e2e.js","sourceRoot":"","sources":["../../../../src/components/q2-loc/test/q2-loc-test.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,+BAA+B,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEvG,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACpB,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACtD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;YACxD,MAAM,CAAC,MAAM,+BAA+B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC3B,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;YAC1B,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;gBACpD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;gBACxD,MAAM,cAAc,CAAC,IAAI,EAAE,EAAE,yBAAyB,EAAE,aAAa,EAAE,CAAC,CAAC;gBACzE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACxC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;gBACtD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC5B,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC/C,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACzC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACxC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC3B,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;YAC1B,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;gBACpD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;gBACxD,MAAM,cAAc,CAAC,IAAI,EAAE,EAAE,yBAAyB,EAAE,aAAa,EAAE,CAAC,CAAC;gBACzE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACxC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;gBACtD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC5B,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC/C,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACzC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACxC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC","sourcesContent":["import { evaluateA11y, getListOfStyleCompilationIssues, setTestStrings, setup } from '@/utils/helpers';\n\ndescribe('q2-loc', () => {\n describe('Initialization', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-loc></q2-loc>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-loc')).toHaveLength(0);\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-loc></q2-loc>` });\n await setTestStrings(page, { 'tecton.element.loc.test': 'Test String' });\n const q2Loc = await page.find('q2-loc');\n q2Loc.setProperty('value', 'tecton.element.loc.test');\n await page.waitForChanges();\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 describe('Accessibility', () => {\n describe('aXe DevTools', () => {\n it('does not have accessibility violations', async () => {\n const page = await setup({ html: `<q2-loc></q2-loc>` });\n await setTestStrings(page, { 'tecton.element.loc.test': 'Test String' });\n const q2Loc = await page.find('q2-loc');\n q2Loc.setProperty('value', 'tecton.element.loc.test');\n await page.waitForChanges();\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"]}