q2-tecton-elements 1.36.0 → 1.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +1 -1
  2. package/dist/cjs/{index-f6545293.js → index-6f9f259c.js} +12 -9
  3. package/dist/cjs/index-6f9f259c.js.map +1 -0
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/q2-action-sheet.cjs.entry.js +2 -2
  6. package/dist/cjs/q2-action-sheet.cjs.entry.js.map +1 -1
  7. package/dist/cjs/q2-btn_2.cjs.entry.js +1 -1
  8. package/dist/cjs/q2-calendar.cjs.entry.js +46 -3
  9. package/dist/cjs/q2-calendar.cjs.entry.js.map +1 -1
  10. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  11. package/dist/cjs/q2-carousel-pane.cjs.entry.js +1 -1
  12. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-chart-area.cjs.entry.js +2 -2
  14. package/dist/cjs/q2-chart-area.cjs.entry.js.map +1 -1
  15. package/dist/cjs/q2-chart-bar.cjs.entry.js +2 -2
  16. package/dist/cjs/q2-chart-bar.cjs.entry.js.map +1 -1
  17. package/dist/cjs/q2-chart-donut.cjs.entry.js +12 -8
  18. package/dist/cjs/q2-chart-donut.cjs.entry.js.map +1 -1
  19. package/dist/cjs/q2-checkbox-group.cjs.entry.js +25 -6
  20. package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
  21. package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
  22. package/dist/cjs/q2-data-table.cjs.entry.js +2 -2
  23. package/dist/cjs/q2-data-table.cjs.entry.js.map +1 -1
  24. package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
  25. package/dist/cjs/q2-dropdown.cjs.entry.js +1 -1
  26. package/dist/cjs/q2-editable-field.cjs.entry.js +34 -6
  27. package/dist/cjs/q2-editable-field.cjs.entry.js.map +1 -1
  28. package/dist/cjs/q2-icon.cjs.entry.js +1 -1
  29. package/dist/cjs/q2-input.cjs.entry.js +17 -10
  30. package/dist/cjs/q2-input.cjs.entry.js.map +1 -1
  31. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  32. package/dist/cjs/q2-message.cjs.entry.js +14 -13
  33. package/dist/cjs/q2-message.cjs.entry.js.map +1 -1
  34. package/dist/cjs/q2-month-picker.cjs.entry.js +1 -1
  35. package/dist/cjs/q2-optgroup_2.cjs.entry.js +1 -1
  36. package/dist/cjs/q2-option-list.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-pagination.cjs.entry.js +1 -1
  38. package/dist/cjs/q2-pill.cjs.entry.js +3 -3
  39. package/dist/cjs/q2-pill.cjs.entry.js.map +1 -1
  40. package/dist/cjs/q2-radio-group.cjs.entry.js +9 -1
  41. package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
  42. package/dist/cjs/q2-radio.cjs.entry.js +12 -3
  43. package/dist/cjs/q2-radio.cjs.entry.js.map +1 -1
  44. package/dist/cjs/q2-section.cjs.entry.js +1 -1
  45. package/dist/cjs/q2-select.cjs.entry.js +54 -5
  46. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  47. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  48. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +1 -1
  49. package/dist/cjs/q2-stepper.cjs.entry.js +1 -1
  50. package/dist/cjs/q2-tab-container.cjs.entry.js +1 -1
  51. package/dist/cjs/q2-tag.cjs.entry.js +1 -1
  52. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  53. package/dist/cjs/q2-textarea.cjs.entry.js +13 -1
  54. package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
  55. package/dist/cjs/q2-tooltip.cjs.entry.js +1 -1
  56. package/dist/collection/components/q2-action-sheet/styles.css +0 -8
  57. package/dist/collection/components/q2-calendar/index.js +120 -2
  58. package/dist/collection/components/q2-calendar/index.js.map +1 -1
  59. package/dist/collection/components/q2-chart-area/index.js +1 -1
  60. package/dist/collection/components/q2-chart-area/index.js.map +1 -1
  61. package/dist/collection/components/q2-chart-bar/index.js +1 -1
  62. package/dist/collection/components/q2-chart-bar/index.js.map +1 -1
  63. package/dist/collection/components/q2-chart-donut/index.js +11 -7
  64. package/dist/collection/components/q2-chart-donut/index.js.map +1 -1
  65. package/dist/collection/components/q2-checkbox-group/index.js +45 -5
  66. package/dist/collection/components/q2-checkbox-group/index.js.map +1 -1
  67. package/dist/collection/components/q2-data-table/styles.css +37 -36
  68. package/dist/collection/components/q2-editable-field/index.js +96 -6
  69. package/dist/collection/components/q2-editable-field/index.js.map +1 -1
  70. package/dist/collection/components/q2-input/index.js +48 -10
  71. package/dist/collection/components/q2-input/index.js.map +1 -1
  72. package/dist/collection/components/q2-message/index.js +14 -13
  73. package/dist/collection/components/q2-message/index.js.map +1 -1
  74. package/dist/collection/components/q2-pill/index.js +2 -2
  75. package/dist/collection/components/q2-pill/index.js.map +1 -1
  76. package/dist/collection/components/q2-radio/index.js +29 -3
  77. package/dist/collection/components/q2-radio/index.js.map +1 -1
  78. package/dist/collection/components/q2-radio-group/index.js +27 -0
  79. package/dist/collection/components/q2-radio-group/index.js.map +1 -1
  80. package/dist/collection/components/q2-select/index.js +127 -5
  81. package/dist/collection/components/q2-select/index.js.map +1 -1
  82. package/dist/collection/components/q2-textarea/index.js +37 -0
  83. package/dist/collection/components/q2-textarea/index.js.map +1 -1
  84. package/dist/collection/utils/index.js +8 -6
  85. package/dist/collection/utils/index.js.map +1 -1
  86. package/dist/components/index11.js +14 -13
  87. package/dist/components/index11.js.map +1 -1
  88. package/dist/components/index16.js +11 -8
  89. package/dist/components/index16.js.map +1 -1
  90. package/dist/components/index9.js +19 -10
  91. package/dist/components/index9.js.map +1 -1
  92. package/dist/components/q2-action-sheet.js +1 -1
  93. package/dist/components/q2-action-sheet.js.map +1 -1
  94. package/dist/components/q2-calendar.js +51 -4
  95. package/dist/components/q2-calendar.js.map +1 -1
  96. package/dist/components/q2-chart-area.js +1 -1
  97. package/dist/components/q2-chart-area.js.map +1 -1
  98. package/dist/components/q2-chart-bar.js +1 -1
  99. package/dist/components/q2-chart-bar.js.map +1 -1
  100. package/dist/components/q2-chart-donut.js +11 -7
  101. package/dist/components/q2-chart-donut.js.map +1 -1
  102. package/dist/components/q2-checkbox-group.js +26 -6
  103. package/dist/components/q2-checkbox-group.js.map +1 -1
  104. package/dist/components/q2-data-table.js +1 -1
  105. package/dist/components/q2-data-table.js.map +1 -1
  106. package/dist/components/q2-editable-field.js +39 -7
  107. package/dist/components/q2-editable-field.js.map +1 -1
  108. package/dist/components/q2-pill.js +2 -2
  109. package/dist/components/q2-pill.js.map +1 -1
  110. package/dist/components/q2-radio-group.js +10 -1
  111. package/dist/components/q2-radio-group.js.map +1 -1
  112. package/dist/components/q2-radio.js +13 -3
  113. package/dist/components/q2-radio.js.map +1 -1
  114. package/dist/components/q2-select.js +59 -6
  115. package/dist/components/q2-select.js.map +1 -1
  116. package/dist/components/q2-textarea.js +15 -2
  117. package/dist/components/q2-textarea.js.map +1 -1
  118. package/dist/docs.json +224 -9
  119. package/dist/esm/click-elsewhere_2.entry.js +1 -1
  120. package/dist/esm/{index-35ff2881.js → index-74a659a5.js} +12 -9
  121. package/dist/esm/index-74a659a5.js.map +1 -0
  122. package/dist/esm/loader.js +1 -1
  123. package/dist/esm/q2-action-sheet.entry.js +2 -2
  124. package/dist/esm/q2-action-sheet.entry.js.map +1 -1
  125. package/dist/esm/q2-btn_2.entry.js +1 -1
  126. package/dist/esm/q2-calendar.entry.js +46 -3
  127. package/dist/esm/q2-calendar.entry.js.map +1 -1
  128. package/dist/esm/q2-card.entry.js +1 -1
  129. package/dist/esm/q2-carousel-pane.entry.js +1 -1
  130. package/dist/esm/q2-carousel.entry.js +1 -1
  131. package/dist/esm/q2-chart-area.entry.js +2 -2
  132. package/dist/esm/q2-chart-area.entry.js.map +1 -1
  133. package/dist/esm/q2-chart-bar.entry.js +2 -2
  134. package/dist/esm/q2-chart-bar.entry.js.map +1 -1
  135. package/dist/esm/q2-chart-donut.entry.js +12 -8
  136. package/dist/esm/q2-chart-donut.entry.js.map +1 -1
  137. package/dist/esm/q2-checkbox-group.entry.js +25 -6
  138. package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
  139. package/dist/esm/q2-checkbox.entry.js +1 -1
  140. package/dist/esm/q2-data-table.entry.js +2 -2
  141. package/dist/esm/q2-data-table.entry.js.map +1 -1
  142. package/dist/esm/q2-dropdown-item.entry.js +1 -1
  143. package/dist/esm/q2-dropdown.entry.js +1 -1
  144. package/dist/esm/q2-editable-field.entry.js +34 -6
  145. package/dist/esm/q2-editable-field.entry.js.map +1 -1
  146. package/dist/esm/q2-icon.entry.js +1 -1
  147. package/dist/esm/q2-input.entry.js +17 -10
  148. package/dist/esm/q2-input.entry.js.map +1 -1
  149. package/dist/esm/q2-loc.entry.js +1 -1
  150. package/dist/esm/q2-message.entry.js +14 -13
  151. package/dist/esm/q2-message.entry.js.map +1 -1
  152. package/dist/esm/q2-month-picker.entry.js +1 -1
  153. package/dist/esm/q2-optgroup_2.entry.js +1 -1
  154. package/dist/esm/q2-option-list.entry.js +1 -1
  155. package/dist/esm/q2-pagination.entry.js +1 -1
  156. package/dist/esm/q2-pill.entry.js +3 -3
  157. package/dist/esm/q2-pill.entry.js.map +1 -1
  158. package/dist/esm/q2-radio-group.entry.js +9 -1
  159. package/dist/esm/q2-radio-group.entry.js.map +1 -1
  160. package/dist/esm/q2-radio.entry.js +12 -3
  161. package/dist/esm/q2-radio.entry.js.map +1 -1
  162. package/dist/esm/q2-section.entry.js +1 -1
  163. package/dist/esm/q2-select.entry.js +54 -5
  164. package/dist/esm/q2-select.entry.js.map +1 -1
  165. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  166. package/dist/esm/q2-stepper-vertical.entry.js +1 -1
  167. package/dist/esm/q2-stepper.entry.js +1 -1
  168. package/dist/esm/q2-tab-container.entry.js +1 -1
  169. package/dist/esm/q2-tag.entry.js +1 -1
  170. package/dist/esm/q2-tecton-elements.js +1 -1
  171. package/dist/esm/q2-textarea.entry.js +13 -1
  172. package/dist/esm/q2-textarea.entry.js.map +1 -1
  173. package/dist/esm/q2-tooltip.entry.js +1 -1
  174. package/dist/q2-tecton-elements/{p-2b91b34e.entry.js → p-077107c1.entry.js} +2 -2
  175. package/dist/q2-tecton-elements/p-09d4b3d3.entry.js +2 -0
  176. package/dist/q2-tecton-elements/p-09d4b3d3.entry.js.map +1 -0
  177. package/dist/q2-tecton-elements/{p-b73e7870.entry.js → p-0d4aec6e.entry.js} +2 -2
  178. package/dist/q2-tecton-elements/p-1c993698.entry.js +2 -0
  179. package/dist/q2-tecton-elements/p-1c993698.entry.js.map +1 -0
  180. package/dist/q2-tecton-elements/{p-0c1b74e9.entry.js → p-252889b7.entry.js} +2 -2
  181. package/dist/q2-tecton-elements/p-252889b7.entry.js.map +1 -0
  182. package/dist/q2-tecton-elements/{p-d4da72f0.entry.js → p-25bd1b18.entry.js} +2 -2
  183. package/dist/q2-tecton-elements/p-25bd1b18.entry.js.map +1 -0
  184. package/dist/q2-tecton-elements/p-2a975246.entry.js +2 -0
  185. package/dist/q2-tecton-elements/p-2a975246.entry.js.map +1 -0
  186. package/dist/q2-tecton-elements/{p-55deaceb.entry.js → p-30facf35.entry.js} +2 -2
  187. package/dist/q2-tecton-elements/p-3798ad96.entry.js +2 -0
  188. package/dist/q2-tecton-elements/p-3798ad96.entry.js.map +1 -0
  189. package/dist/q2-tecton-elements/{p-2325975a.entry.js → p-46287c02.entry.js} +2 -2
  190. package/dist/q2-tecton-elements/{p-2bf5a3bc.entry.js → p-47c60d4a.entry.js} +2 -2
  191. package/dist/q2-tecton-elements/{p-6cc730db.entry.js → p-4abbd0b1.entry.js} +2 -2
  192. package/dist/q2-tecton-elements/{p-dafdb018.entry.js → p-570c1d3d.entry.js} +2 -2
  193. package/dist/q2-tecton-elements/p-570c1d3d.entry.js.map +1 -0
  194. package/dist/q2-tecton-elements/{p-4fb81d03.entry.js → p-578e3f98.entry.js} +2 -2
  195. package/dist/q2-tecton-elements/p-58cdb9c7.entry.js +2 -0
  196. package/dist/q2-tecton-elements/p-58cdb9c7.entry.js.map +1 -0
  197. package/dist/q2-tecton-elements/{p-c3650c2e.entry.js → p-597f8656.entry.js} +2 -2
  198. package/dist/q2-tecton-elements/{p-ce27270b.entry.js → p-59d34a17.entry.js} +2 -2
  199. package/dist/q2-tecton-elements/{p-3c0d391b.entry.js → p-5bc4d94c.entry.js} +2 -2
  200. package/dist/q2-tecton-elements/{p-70a59bf1.entry.js → p-67f33354.entry.js} +2 -2
  201. package/dist/q2-tecton-elements/p-67f33354.entry.js.map +1 -0
  202. package/dist/q2-tecton-elements/{p-c9f32e51.entry.js → p-6cacc879.entry.js} +2 -2
  203. package/dist/q2-tecton-elements/{p-f637136f.entry.js → p-7366d36d.entry.js} +2 -2
  204. package/dist/q2-tecton-elements/{p-e5a8f7ff.entry.js → p-75fd6df5.entry.js} +2 -2
  205. package/dist/q2-tecton-elements/{p-e5a8f7ff.entry.js.map → p-75fd6df5.entry.js.map} +1 -1
  206. package/dist/q2-tecton-elements/{p-68371e6d.entry.js → p-8e7b762a.entry.js} +2 -2
  207. package/dist/q2-tecton-elements/{p-ece07c0d.entry.js → p-9a28b93a.entry.js} +2 -2
  208. package/dist/q2-tecton-elements/{p-d3827468.entry.js → p-9c9a2550.entry.js} +2 -2
  209. package/dist/q2-tecton-elements/{p-15ca5c98.entry.js → p-9d743327.entry.js} +2 -2
  210. package/dist/q2-tecton-elements/{p-8c6f8d06.entry.js → p-9ef2829e.entry.js} +2 -2
  211. package/dist/q2-tecton-elements/{p-8c6f8d06.entry.js.map → p-9ef2829e.entry.js.map} +1 -1
  212. package/dist/q2-tecton-elements/{p-3fd4f83d.entry.js → p-a52371cf.entry.js} +2 -2
  213. package/dist/q2-tecton-elements/{p-f11326c2.entry.js → p-a53e9f1e.entry.js} +2 -2
  214. package/dist/q2-tecton-elements/{p-586c8654.entry.js → p-a60f82c0.entry.js} +2 -2
  215. package/dist/q2-tecton-elements/p-a60f82c0.entry.js.map +1 -0
  216. package/dist/q2-tecton-elements/{p-6e6b160d.entry.js → p-ac82ea35.entry.js} +2 -2
  217. package/dist/q2-tecton-elements/{p-8e8a40ca.entry.js → p-bfd69d42.entry.js} +2 -2
  218. package/dist/q2-tecton-elements/{p-82bda2ff.entry.js → p-db6921fb.entry.js} +2 -2
  219. package/dist/q2-tecton-elements/{p-cfbd2cb1.entry.js → p-e45856f7.entry.js} +2 -2
  220. package/dist/q2-tecton-elements/p-e45856f7.entry.js.map +1 -0
  221. package/dist/q2-tecton-elements/{p-654987bf.entry.js → p-e8858d0d.entry.js} +2 -2
  222. package/dist/q2-tecton-elements/p-e8858d0d.entry.js.map +1 -0
  223. package/dist/q2-tecton-elements/{p-99ab3236.js → p-ef856249.js} +2 -2
  224. package/dist/q2-tecton-elements/p-ef856249.js.map +1 -0
  225. package/dist/q2-tecton-elements/{p-073df9e2.entry.js → p-efbe6c17.entry.js} +2 -2
  226. package/dist/q2-tecton-elements/p-efbe6c17.entry.js.map +1 -0
  227. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  228. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  229. package/dist/test/elements/q2-calendar-test.e2e.js +177 -0
  230. package/dist/test/elements/q2-calendar-test.e2e.js.map +1 -1
  231. package/dist/test/elements/q2-chart-area-test.e2e.js +30 -1
  232. package/dist/test/elements/q2-chart-area-test.e2e.js.map +1 -1
  233. package/dist/test/elements/q2-chart-bar-test.e2e.js +30 -1
  234. package/dist/test/elements/q2-chart-bar-test.e2e.js.map +1 -1
  235. package/dist/test/elements/q2-chart-donut-test.e2e.js +21 -18
  236. package/dist/test/elements/q2-chart-donut-test.e2e.js.map +1 -1
  237. package/dist/test/elements/q2-checkbox-group-test.e2e.js +138 -18
  238. package/dist/test/elements/q2-checkbox-group-test.e2e.js.map +1 -1
  239. package/dist/test/elements/q2-checkbox-test.e2e.js +143 -115
  240. package/dist/test/elements/q2-checkbox-test.e2e.js.map +1 -1
  241. package/dist/test/elements/q2-editable-field-test.e2e.js +149 -28
  242. package/dist/test/elements/q2-editable-field-test.e2e.js.map +1 -1
  243. package/dist/test/elements/q2-input-test.e2e.js +150 -9
  244. package/dist/test/elements/q2-input-test.e2e.js.map +1 -1
  245. package/dist/test/elements/q2-message-test.e2e.js +38 -1
  246. package/dist/test/elements/q2-message-test.e2e.js.map +1 -1
  247. package/dist/test/elements/q2-pill-test.e2e.js +37 -1
  248. package/dist/test/elements/q2-pill-test.e2e.js.map +1 -1
  249. package/dist/test/elements/q2-radio-group-test.e2e.js +148 -186
  250. package/dist/test/elements/q2-radio-group-test.e2e.js.map +1 -1
  251. package/dist/test/elements/q2-radio-test.e2e.js +100 -15
  252. package/dist/test/elements/q2-radio-test.e2e.js.map +1 -1
  253. package/dist/test/elements/q2-select-test.e2e.js +203 -0
  254. package/dist/test/elements/q2-select-test.e2e.js.map +1 -1
  255. package/dist/test/elements/q2-tag-test.e2e.js +5 -0
  256. package/dist/test/elements/q2-tag-test.e2e.js.map +1 -1
  257. package/dist/test/elements/q2-textarea-test.e2e.js +33 -1
  258. package/dist/test/elements/q2-textarea-test.e2e.js.map +1 -1
  259. package/dist/types/components/q2-calendar/index.d.ts +8 -1
  260. package/dist/types/components/q2-chart-donut/index.d.ts +1 -1
  261. package/dist/types/components/q2-checkbox-group/index.d.ts +3 -0
  262. package/dist/types/components/q2-editable-field/index.d.ts +10 -2
  263. package/dist/types/components/q2-input/index.d.ts +2 -0
  264. package/dist/types/components/q2-message/index.d.ts +1 -0
  265. package/dist/types/components/q2-radio/index.d.ts +1 -0
  266. package/dist/types/components/q2-radio-group/index.d.ts +1 -0
  267. package/dist/types/components/q2-select/index.d.ts +9 -1
  268. package/dist/types/components/q2-textarea/index.d.ts +2 -0
  269. package/dist/types/components.d.ts +19 -0
  270. package/package.json +3 -3
  271. package/dist/cjs/index-f6545293.js.map +0 -1
  272. package/dist/esm/index-35ff2881.js.map +0 -1
  273. package/dist/q2-tecton-elements/p-073df9e2.entry.js.map +0 -1
  274. package/dist/q2-tecton-elements/p-0c1b74e9.entry.js.map +0 -1
  275. package/dist/q2-tecton-elements/p-215d5ab4.entry.js +0 -2
  276. package/dist/q2-tecton-elements/p-215d5ab4.entry.js.map +0 -1
  277. package/dist/q2-tecton-elements/p-2987498c.entry.js +0 -2
  278. package/dist/q2-tecton-elements/p-2987498c.entry.js.map +0 -1
  279. package/dist/q2-tecton-elements/p-586c8654.entry.js.map +0 -1
  280. package/dist/q2-tecton-elements/p-654987bf.entry.js.map +0 -1
  281. package/dist/q2-tecton-elements/p-70a59bf1.entry.js.map +0 -1
  282. package/dist/q2-tecton-elements/p-7a6e33d4.entry.js +0 -2
  283. package/dist/q2-tecton-elements/p-7a6e33d4.entry.js.map +0 -1
  284. package/dist/q2-tecton-elements/p-99ab3236.js.map +0 -1
  285. package/dist/q2-tecton-elements/p-ae2fa966.entry.js +0 -2
  286. package/dist/q2-tecton-elements/p-ae2fa966.entry.js.map +0 -1
  287. package/dist/q2-tecton-elements/p-b8d1c16f.entry.js +0 -2
  288. package/dist/q2-tecton-elements/p-b8d1c16f.entry.js.map +0 -1
  289. package/dist/q2-tecton-elements/p-cfbd2cb1.entry.js.map +0 -1
  290. package/dist/q2-tecton-elements/p-d4da72f0.entry.js.map +0 -1
  291. package/dist/q2-tecton-elements/p-dafdb018.entry.js.map +0 -1
  292. /package/dist/q2-tecton-elements/{p-2b91b34e.entry.js.map → p-077107c1.entry.js.map} +0 -0
  293. /package/dist/q2-tecton-elements/{p-b73e7870.entry.js.map → p-0d4aec6e.entry.js.map} +0 -0
  294. /package/dist/q2-tecton-elements/{p-55deaceb.entry.js.map → p-30facf35.entry.js.map} +0 -0
  295. /package/dist/q2-tecton-elements/{p-2325975a.entry.js.map → p-46287c02.entry.js.map} +0 -0
  296. /package/dist/q2-tecton-elements/{p-2bf5a3bc.entry.js.map → p-47c60d4a.entry.js.map} +0 -0
  297. /package/dist/q2-tecton-elements/{p-6cc730db.entry.js.map → p-4abbd0b1.entry.js.map} +0 -0
  298. /package/dist/q2-tecton-elements/{p-4fb81d03.entry.js.map → p-578e3f98.entry.js.map} +0 -0
  299. /package/dist/q2-tecton-elements/{p-c3650c2e.entry.js.map → p-597f8656.entry.js.map} +0 -0
  300. /package/dist/q2-tecton-elements/{p-ce27270b.entry.js.map → p-59d34a17.entry.js.map} +0 -0
  301. /package/dist/q2-tecton-elements/{p-3c0d391b.entry.js.map → p-5bc4d94c.entry.js.map} +0 -0
  302. /package/dist/q2-tecton-elements/{p-c9f32e51.entry.js.map → p-6cacc879.entry.js.map} +0 -0
  303. /package/dist/q2-tecton-elements/{p-f637136f.entry.js.map → p-7366d36d.entry.js.map} +0 -0
  304. /package/dist/q2-tecton-elements/{p-68371e6d.entry.js.map → p-8e7b762a.entry.js.map} +0 -0
  305. /package/dist/q2-tecton-elements/{p-ece07c0d.entry.js.map → p-9a28b93a.entry.js.map} +0 -0
  306. /package/dist/q2-tecton-elements/{p-d3827468.entry.js.map → p-9c9a2550.entry.js.map} +0 -0
  307. /package/dist/q2-tecton-elements/{p-15ca5c98.entry.js.map → p-9d743327.entry.js.map} +0 -0
  308. /package/dist/q2-tecton-elements/{p-3fd4f83d.entry.js.map → p-a52371cf.entry.js.map} +0 -0
  309. /package/dist/q2-tecton-elements/{p-f11326c2.entry.js.map → p-a53e9f1e.entry.js.map} +0 -0
  310. /package/dist/q2-tecton-elements/{p-6e6b160d.entry.js.map → p-ac82ea35.entry.js.map} +0 -0
  311. /package/dist/q2-tecton-elements/{p-8e8a40ca.entry.js.map → p-bfd69d42.entry.js.map} +0 -0
  312. /package/dist/q2-tecton-elements/{p-82bda2ff.entry.js.map → p-db6921fb.entry.js.map} +0 -0
@@ -1,22 +1,28 @@
1
- import { setup, dispatchEvent } from '../helpers';
1
+ import { setup, dispatchEvent, getActiveElementTestId } from '../helpers';
2
2
  describe('q2-radio-group', () => {
3
3
  let page;
4
4
  let radioGroup;
5
- it('renders with label', async function () {
6
- page = await setup({
7
- html: '<q2-radio-group label="test label"></q2-radio-group>',
5
+ const setupPage = async (props = '', numberOfRadios = 3, checkedRadios = []) => {
6
+ props = props ? ` ${props}` : '';
7
+ const radios = Array.from({ length: numberOfRadios }, (_, i) => `<q2-radio value="${i + 1}" label="${i + 1}label"${checkedRadios.includes(i + 1) ? ' checked="true"' : ''}></q2-radio>`).join('');
8
+ const page = await setup({
9
+ html: `
10
+ <q2-radio-group "${props}>
11
+ ${radios}
12
+ </q2-radio-group>
13
+ `,
8
14
  });
15
+ await page.waitForChanges();
16
+ return page;
17
+ };
18
+ it('renders with label', async function () {
19
+ page = await setupPage('label="My Radio Group"', 0);
9
20
  const label = await page.find('q2-radio-group >>> legend');
10
21
  expect(label).not.toBeNull();
11
- expect(label.innerText).toEqual('test label');
22
+ expect(label.innerText).toEqual('My Radio Group');
12
23
  });
13
24
  it('assigns name to all radios and updates if name changes', async function () {
14
- page = await setup({
15
- html: `<q2-radio-group label="test label" name="testname">
16
- <q2-radio value="1" label="1label"></q2-radio>
17
- <q2-radio value="2" label="2label"></q2-radio>
18
- </q2-radio-group>`,
19
- });
25
+ page = await setupPage('label="My Radio Group" name="testname"', 2);
20
26
  let firstRadio = await page.find('q2-radio:nth-child(1)');
21
27
  let secondRadio = await page.find('q2-radio:nth-child(2)');
22
28
  expect(firstRadio.getAttribute('name')).toEqual('testname');
@@ -30,12 +36,7 @@ describe('q2-radio-group', () => {
30
36
  expect(secondRadio.getAttribute('name')).toEqual('newname');
31
37
  });
32
38
  it('assigns checked value on init and whenever value changes', async function () {
33
- page = await setup({
34
- html: `<q2-radio-group label="test label" name="testname" value="2">
35
- <q2-radio value="1" label="1label"></q2-radio>
36
- <q2-radio value="2" label="2label"></q2-radio>
37
- </q2-radio-group>`,
38
- });
39
+ page = await setupPage('label="My Radio Group" name="testname" value="2"', 2);
39
40
  let firstRadio = await page.find('q2-radio:nth-child(1)');
40
41
  let secondRadio = await page.find('q2-radio:nth-child(2)');
41
42
  expect(firstRadio.getAttribute('checked')).toEqual(null);
@@ -49,13 +50,7 @@ describe('q2-radio-group', () => {
49
50
  expect(secondRadio.getAttribute('checked')).toEqual(null);
50
51
  });
51
52
  it('assigns checked value on init for individual radio(s) that have checked atttribute === true, and no value is set for radio-group', async function () {
52
- page = await setup({
53
- html: `<q2-radio-group label="test label" name="testname">
54
- <q2-radio value="1" label="1label"></q2-radio>
55
- <q2-radio value="2" label="2label" checked="true"></q2-radio>
56
- <q2-radio value="3" label="3label" ></q2-radio>
57
- </q2-radio-group>`,
58
- });
53
+ page = await setupPage('label="My Radio Group" name="testname"', 3, [2]);
59
54
  let firstRadio = await page.find('q2-radio:nth-child(1)');
60
55
  let secondRadio = await page.find('q2-radio:nth-child(2)');
61
56
  let thirdRadio = await page.find('q2-radio:nth-child(3)');
@@ -73,13 +68,7 @@ describe('q2-radio-group', () => {
73
68
  expect(thirdRadio.getAttribute('checked')).toEqual('');
74
69
  });
75
70
  it('assigns checked value on init for when radio-group value is set, and ignores / removes checked value individual radio preset checked={true}', async function () {
76
- page = await setup({
77
- html: `<q2-radio-group label="test label" name="testname" value="2">
78
- <q2-radio value="1" label="1label" checked="true" ></q2-radio>
79
- <q2-radio value="2" label="2label" ></q2-radio>
80
- <q2-radio value="3" label="3label" checked="true" ></q2-radio>
81
- </q2-radio-group>`,
82
- });
71
+ page = await setupPage('label="My Radio Group" name="testname" value="2"', 3, [1, 3]);
83
72
  let firstRadio = await page.find('q2-radio:nth-child(1)');
84
73
  let secondRadio = await page.find('q2-radio:nth-child(2)');
85
74
  let thirdRadio = await page.find('q2-radio:nth-child(3)');
@@ -97,13 +86,7 @@ describe('q2-radio-group', () => {
97
86
  expect(thirdRadio.getAttribute('checked')).toEqual('');
98
87
  });
99
88
  it('does not assign "checked" value on init for when radio-group value is not set, or any q2-radio preset checked={true}', async function () {
100
- page = await setup({
101
- html: `<q2-radio-group label="test label" name="testname">
102
- <q2-radio value="1" label="1label" ></q2-radio>
103
- <q2-radio value="2" label="2label" ></q2-radio>
104
- <q2-radio value="3" label="3label" ></q2-radio>
105
- </q2-radio-group>`,
106
- });
89
+ page = await setupPage('label="My Radio Group" name="testname"');
107
90
  let firstRadio = await page.find('q2-radio:nth-child(1)');
108
91
  let secondRadio = await page.find('q2-radio:nth-child(2)');
109
92
  let thirdRadio = await page.find('q2-radio:nth-child(3)');
@@ -121,12 +104,7 @@ describe('q2-radio-group', () => {
121
104
  expect(thirdRadio.getAttribute('checked')).toEqual('');
122
105
  });
123
106
  it('will update name, checked and disabled on new radio if added dynamically (mutation observer)', async function () {
124
- page = await setup({
125
- html: `<q2-radio-group disabled label="test label" name="testname" value="3">
126
- <q2-radio value="1" label="1label"></q2-radio>
127
- <q2-radio value="2" label="2label"></q2-radio>
128
- </q2-radio-group>`,
129
- });
107
+ page = await setupPage('label="My Radio Group" disabled name="testname" value="3"');
130
108
  await page.$eval('q2-radio-group', radioGroup => {
131
109
  const newRadio = document.createElement('q2-radio');
132
110
  newRadio.label = '3label';
@@ -140,13 +118,7 @@ describe('q2-radio-group', () => {
140
118
  expect(await thirdRadio.getProperty('groupDisabled')).toEqual(true);
141
119
  });
142
120
  it('assigns tabIndex value of 0 to first radio in group, and then -1 for all following radios on init, and assigns -1 to all that are not selected there after', async function () {
143
- page = await setup({
144
- html: `<q2-radio-group label="test label" name="testname">
145
- <q2-radio value="1" label="1label" ></q2-radio>
146
- <q2-radio value="2" label="2label" ></q2-radio>
147
- <q2-radio value="3" label="3label" ></q2-radio>
148
- </q2-radio-group>`,
149
- });
121
+ page = await setupPage('label="My Radio Group" name="testname"');
150
122
  const firstRadio = await page.find('q2-radio:nth-child(1)');
151
123
  const secondRadio = await page.find('q2-radio:nth-child(2)');
152
124
  const thirdRadio = await page.find('q2-radio:nth-child(3)');
@@ -166,12 +138,7 @@ describe('q2-radio-group', () => {
166
138
  expect(await thirdRadio.getProperty('tabIndex')).toEqual(0);
167
139
  });
168
140
  it('disables all radios via groupDisable when radio group is disabled', async function () {
169
- page = await setup({
170
- html: `<q2-radio-group label="test label" name="testname" value="2">
171
- <q2-radio value="1" label="1label"></q2-radio>
172
- <q2-radio value="2" label="2label"></q2-radio>
173
- </q2-radio-group>`,
174
- });
141
+ page = await setupPage('label="My Radio Group" name="testname" value="2"', 2);
175
142
  let firstRadioInnerInput = await page.find('q2-radio:nth-child(1) >>> input ');
176
143
  let secondRadioInnerInput = await page.find('q2-radio:nth-child(2) >>> input');
177
144
  expect(firstRadioInnerInput.getAttribute('disabled')).toEqual(null);
@@ -184,117 +151,96 @@ describe('q2-radio-group', () => {
184
151
  expect(firstRadioInnerInput.getAttribute('disabled')).toEqual('');
185
152
  expect(secondRadioInnerInput.getAttribute('disabled')).toEqual('');
186
153
  });
187
- describe('@Props', () => {
154
+ describe('Props', () => {
188
155
  const getActiveElementValue = async (page) => {
189
156
  return page.$eval('body', () => document.activeElement.getAttribute('value'));
190
157
  };
191
158
  describe('tilelayout', () => {
192
159
  it('converts to tileLayout=true when provided', async () => {
193
- page = await setup({
194
- html: `
195
- <q2-radio-group label="My Group" tilelayout>
196
- <q2-radio value="1" label="Option 1"></q2-radio>
197
- <q2-radio value="2" label="Option 2"></q2-radio>
198
- <q2-radio value="3" label="Option 3"></q2-radio>
199
- </q2-radio-group>
200
- `,
201
- });
202
- await page.waitForChanges();
160
+ page = await setupPage('label="My Radio Group" tilelayout');
203
161
  radioGroup = await page.find('q2-radio-group');
204
162
  expect(radioGroup).toHaveAttribute('tile-layout');
205
163
  expect(await radioGroup.getProperty('tilelayout')).toBeUndefined();
206
164
  });
207
165
  it('converts to tileLayout=false when provided as "false"', async () => {
208
- page = await setup({
209
- html: `
210
- <q2-radio-group label="My Group" tilelayout="false">
211
- <q2-radio value="1" label="Option 1"></q2-radio>
212
- <q2-radio value="2" label="Option 2"></q2-radio>
213
- <q2-radio value="3" label="Option 3"></q2-radio>
214
- </q2-radio-group>
215
- `,
216
- });
217
- await page.waitForChanges();
166
+ page = await setupPage('label="My Radio Group" tilelayout="false"');
218
167
  radioGroup = await page.find('q2-radio-group');
219
168
  expect(radioGroup).not.toHaveAttribute('tile-layout');
220
169
  expect(await radioGroup.getProperty('tilelayout')).toBeUndefined();
221
170
  });
222
171
  });
223
172
  describe('readonly', () => {
224
- it('marks all q2-radio elements with groupReadonly', async function () {
225
- page = await setup({
226
- html: `
227
- <q2-radio-group label="Label" value="2">
228
- <q2-radio value="1" label="Label"></q2-radio>
229
- <q2-radio value="2" label="Label"></q2-radio>
230
- <q2-radio value="3" label="Label"></q2-radio>
231
- </q2-radio-group>`,
232
- });
233
- const radioGroup = await page.find('q2-radio-group');
234
- const radios = await page.findAll('q2-radio');
235
- expect(radios.every(async (radio) => (await radio.getProperty('groupReadonly')) === false)).toBe(true);
236
- radioGroup.setProperty('readonly', true);
237
- await page.waitForChanges();
238
- expect(radios.every(async (radio) => (await radio.getProperty('groupReadonly')) === true)).toBe(true);
239
- });
240
- it('allows movement between radio buttons without selecting them', async function () {
241
- page = await setup({
242
- html: `
243
- <q2-radio-group label="Label" value="2" readonly>
244
- <q2-radio value="1" label="Label"></q2-radio>
245
- <q2-radio value="2" label="Label"></q2-radio>
246
- <q2-radio value="3" label="Label"></q2-radio>
247
- </q2-radio-group>`,
173
+ describe('set to true', () => {
174
+ it('on load child q2-radio components are groupReadonly', async function () {
175
+ page = await setupPage('label="My Radio Group" readonly');
176
+ const radios = await page.findAll('q2-radio');
177
+ expect(radios.every(async (radio) => (await radio.getProperty('groupReadonly')) === true)).toBe(true);
248
178
  });
249
- const radioGroup = await page.find('q2-radio-group');
250
- await radioGroup.focus();
251
- expect(await getActiveElementValue(page)).toEqual('2');
252
- await dispatchEvent(page, 'q2-radio[value="2"]', 'keydown', {
253
- key: 'ArrowDown',
254
- bubbles: true,
179
+ it('after load child q2-radio components are groupReadonly', async function () {
180
+ page = await setupPage('label="My Radio Group"');
181
+ const radioGroup = await page.find('q2-radio-group');
182
+ const radios = await page.findAll('q2-radio');
183
+ expect(radios.every(async (radio) => (await radio.getProperty('groupReadonly')) === false)).toBe(true);
184
+ radioGroup.setAttribute('readonly', 'true');
185
+ await page.waitForChanges();
186
+ expect(radios.every(async (radio) => (await radio.getProperty('groupReadonly')) === true)).toBe(true);
255
187
  });
256
- await page.waitForChanges();
257
- expect(await getActiveElementValue(page)).toEqual('3');
258
- expect(await radioGroup.getProperty('value')).toEqual('2');
259
- await dispatchEvent(page, 'q2-radio[value="3"]', 'keydown', {
260
- key: 'ArrowUp',
261
- bubbles: true,
188
+ it('allows movement between radio buttons without selecting them', async function () {
189
+ page = await setupPage('label="My Radio Group" value="2" readonly');
190
+ const radioGroup = await page.find('q2-radio-group');
191
+ await radioGroup.focus();
192
+ expect(await getActiveElementValue(page)).toEqual('2');
193
+ await dispatchEvent(page, 'q2-radio[value="2"]', 'keydown', {
194
+ key: 'ArrowDown',
195
+ bubbles: true,
196
+ });
197
+ await page.waitForChanges();
198
+ expect(await getActiveElementValue(page)).toEqual('3');
199
+ expect(await radioGroup.getProperty('value')).toEqual('2');
200
+ await dispatchEvent(page, 'q2-radio[value="3"]', 'keydown', {
201
+ key: 'ArrowUp',
202
+ bubbles: true,
203
+ });
204
+ await page.waitForChanges();
205
+ expect(await getActiveElementValue(page)).toEqual('2');
206
+ expect(await radioGroup.getProperty('value')).toEqual('2');
207
+ await dispatchEvent(page, 'q2-radio[value="2"]', 'keydown', {
208
+ key: 'ArrowUp',
209
+ bubbles: true,
210
+ });
211
+ await page.waitForChanges();
212
+ expect(await getActiveElementValue(page)).toEqual('1');
213
+ expect(await radioGroup.getProperty('value')).toEqual('2');
262
214
  });
263
- await page.waitForChanges();
264
- expect(await getActiveElementValue(page)).toEqual('2');
265
- expect(await radioGroup.getProperty('value')).toEqual('2');
266
- await dispatchEvent(page, 'q2-radio[value="2"]', 'keydown', {
267
- key: 'ArrowUp',
268
- bubbles: true,
215
+ it('allows clicking radio buttons without selecting them', async function () {
216
+ page = await setupPage('label="My Radio Group" value="2" readonly');
217
+ const radioGroup = await page.find('q2-radio-group');
218
+ const radios = await page.findAll('q2-radio');
219
+ await radios[0].click();
220
+ expect(await getActiveElementValue(page)).toEqual('1');
221
+ expect(await radioGroup.getProperty('value')).toEqual('2');
269
222
  });
270
- await page.waitForChanges();
271
- expect(await getActiveElementValue(page)).toEqual('1');
272
- expect(await radioGroup.getProperty('value')).toEqual('2');
273
223
  });
274
- it('allows clicking radio buttons without selecting them', async function () {
275
- page = await setup({
276
- html: `
277
- <q2-radio-group label="Label" value="2" readonly>
278
- <q2-radio value="1" label="Label"></q2-radio>
279
- <q2-radio value="2" label="Label"></q2-radio>
280
- <q2-radio value="3" label="Label"></q2-radio>
281
- </q2-radio-group>`,
224
+ describe('set to false', () => {
225
+ it('on load child q2-radio components are NOT groupReadonly', async function () {
226
+ page = await setupPage('label="My Radio Group"');
227
+ const radios = await page.findAll('q2-radio');
228
+ expect(radios.every(async (radio) => (await radio.getProperty('groupReadonly')) === false)).toBe(true);
229
+ });
230
+ it('after load child q2-radio components are NOT groupReadonly', async function () {
231
+ page = await setupPage('label="My Radio Group" readonly');
232
+ const radioGroup = await page.find('q2-radio-group');
233
+ const radios = await page.findAll('q2-radio');
234
+ expect(radios.every(async (radio) => (await radio.getProperty('groupReadonly')) === true)).toBe(true);
235
+ radioGroup.setAttribute('groupReadonly', 'false');
236
+ await page.waitForChanges();
237
+ expect(radios.every(async (radio) => (await radio.getProperty('groupReadonly')) === false)).toBe(true);
282
238
  });
283
- const radioGroup = await page.find('q2-radio-group');
284
- const radios = await page.findAll('q2-radio');
285
- await radios[0].click();
286
- expect(await getActiveElementValue(page)).toEqual('1');
287
- expect(await radioGroup.getProperty('value')).toEqual('2');
288
239
  });
289
240
  });
290
241
  });
291
242
  it('when a radio is selected radio group emits change event', async function () {
292
- page = await setup({
293
- html: `<q2-radio-group label="test label" name="testname" value="2">
294
- <q2-radio value="1" label="1label"></q2-radio>
295
- <q2-radio value="2" label="2label"></q2-radio>
296
- </q2-radio-group>`,
297
- });
243
+ page = await setupPage('label="My Radio Group" name="testname" value="2"', 2);
298
244
  const radioGroup = await page.find('q2-radio-group');
299
245
  const changeSpy = await radioGroup.spyOnEvent('change');
300
246
  let value;
@@ -306,12 +252,7 @@ describe('q2-radio-group', () => {
306
252
  expect(value).toEqual('1');
307
253
  });
308
254
  it('can override default on change', async function () {
309
- page = await setup({
310
- html: `<q2-radio-group label="test label" name="testname" value="2">
311
- <q2-radio value="1" label="1label"></q2-radio>
312
- <q2-radio value="2" label="2label"></q2-radio>
313
- </q2-radio-group>`,
314
- });
255
+ page = await setupPage('label="My Radio Group" name="testname" value="2"', 2);
315
256
  const radioGroup = await page.find('q2-radio-group');
316
257
  const changeSpy = await radioGroup.spyOnEvent('change');
317
258
  await page.$eval('q2-radio-group', radioGroup => {
@@ -327,12 +268,7 @@ describe('q2-radio-group', () => {
327
268
  expect(value).toEqual('2');
328
269
  });
329
270
  it('allows spacebar to select first option when focused and no options are selected', async function () {
330
- page = await setup({
331
- html: `<q2-radio-group label="test label" name="testname">
332
- <q2-radio value="1" label="1label"></q2-radio>
333
- <q2-radio value="2" label="2label"></q2-radio>
334
- </q2-radio-group>`,
335
- });
271
+ page = await setupPage('label="My Radio Group" name="testname"', 2);
336
272
  const firstRadio = await page.find('q2-radio');
337
273
  const firstRadioInput = await page.find('q2-radio >>> input');
338
274
  expect(firstRadio.getAttribute('checked')).toEqual(null);
@@ -341,23 +277,13 @@ describe('q2-radio-group', () => {
341
277
  expect(await firstRadio.getProperty('checked')).toEqual(true);
342
278
  });
343
279
  it('should render a localized optional string when the optional attribute is passed', async function () {
344
- page = await setup({
345
- html: `<q2-radio-group label="foo" name="testname" optional>
346
- <q2-radio value="1" label="1label"></q2-radio>
347
- <q2-radio value="2" label="2label"></q2-radio>
348
- </q2-radio-group>`,
349
- });
280
+ page = await setupPage('label="foo" name="testname" optional', 2);
350
281
  const label = await page.find('q2-radio-group >>> legend');
351
282
  // a localized optional is shown in the label
352
283
  expect(label.innerText.trim()).toEqual('footecton.element.input.optional');
353
284
  });
354
285
  it('should show a tile format when tile option is passed', async () => {
355
- page = await setup({
356
- html: `<q2-radio-group label="foo" name="testname">
357
- <q2-radio value="1" label="1label"></q2-radio>
358
- <q2-radio value="2" label="2label"></q2-radio>
359
- </q2-radio-group>`,
360
- });
286
+ page = await setupPage('label="My Radio Group" name="testname"', 2);
361
287
  let svgCheckbox = await page.findAll('q2-radio >>> svg');
362
288
  let firstRadio = await page.find('q2-radio >>> div');
363
289
  expect(svgCheckbox.length).toEqual(2);
@@ -371,12 +297,7 @@ describe('q2-radio-group', () => {
371
297
  expect(firstRadio.classList.contains('radio-tile')).toBeTruthy();
372
298
  });
373
299
  it('handles keyboard navigation', async function () {
374
- page = await setup({
375
- html: `<q2-radio-group label="foo" name="testname" value="1">
376
- <q2-radio value="1" label="1label" checked></q2-radio>
377
- <q2-radio value="2" label="2label"></q2-radio>
378
- </q2-radio-group>`,
379
- });
300
+ page = await setupPage('label="My Radio Group" name="testname" value="1"', 2);
380
301
  let firstRadio = await page.find('q2-radio:nth-child(1)');
381
302
  let secondRadio = await page.find('q2-radio:nth-child(2)');
382
303
  await page.waitForChanges();
@@ -391,12 +312,7 @@ describe('q2-radio-group', () => {
391
312
  expect(secondRadio.getAttribute('checked')).toEqual('');
392
313
  });
393
314
  it('should work with changing checked attribute programmatically', async function () {
394
- page = await setup({
395
- html: `<q2-radio-group label="foo" name="testname" value="1">
396
- <q2-radio value="1" label="1label" checked></q2-radio>
397
- <q2-radio value="2" label="2label"></q2-radio>
398
- </q2-radio-group>`,
399
- });
315
+ page = await setupPage('label="My Radio Group" name="testname" value="1"', 2);
400
316
  const group = await page.find('q2-radio-group');
401
317
  const firstRadio = await page.find('q2-radio:nth-child(1)');
402
318
  const secondRadio = await page.find('q2-radio:nth-child(2)');
@@ -421,14 +337,7 @@ describe('q2-radio-group', () => {
421
337
  let page;
422
338
  let radioGroup;
423
339
  beforeEach(async () => {
424
- page = await setup({
425
- html: `
426
- <q2-radio-group>
427
- <q2-radio value="1" label="1"></q2-radio>
428
- <q2-radio value="2" label="2"></q2-radio>
429
- </q2-radio-group>
430
- `,
431
- });
340
+ page = await setupPage('label="My Radio Group"', 2);
432
341
  radioGroup = await page.find('q2-radio-group');
433
342
  expect(await activeValue(page)).toBeUndefined();
434
343
  });
@@ -475,5 +384,58 @@ describe('q2-radio-group', () => {
475
384
  });
476
385
  });
477
386
  });
387
+ describe('Methods', () => {
388
+ describe('setValue', () => {
389
+ beforeEach(async () => {
390
+ page = await setup({
391
+ html: `
392
+ <q2-radio-group label="My Radio Group">
393
+ <q2-radio value="value-1" label="Radio 1"></q2-radio>
394
+ <q2-radio value="value-2" label="Radio 2"></q2-radio>
395
+ <q2-radio value="value-3" label="Radio 3"></q2-radio>
396
+ <q2-radio value="value-4" label="Radio 3"></q2-radio>
397
+ <q2-radio value="value-5" label="Radio 3"></q2-radio>
398
+ </q2-radio-group>
399
+ `,
400
+ });
401
+ await page.waitForChanges();
402
+ });
403
+ it('selects the radio for the provided value', async () => {
404
+ const radioGroup = await page.find('q2-radio-group');
405
+ const radioGroupChangeSpy = await radioGroup.spyOnEvent('change');
406
+ expect(radioGroupChangeSpy).toHaveReceivedEventTimes(0);
407
+ expect(await getActiveElementTestId(page)).toBeNull();
408
+ await radioGroup.callMethod('setValue', 'value-3');
409
+ await page.waitForChanges();
410
+ expect(radioGroupChangeSpy).toHaveReceivedEventTimes(1);
411
+ expect(radioGroupChangeSpy).toHaveReceivedEventDetail({
412
+ value: 'value-3',
413
+ });
414
+ const allRadios = await page.findAll('q2-radio');
415
+ expect(allRadios[0]).not.toHaveAttribute('checked');
416
+ expect(allRadios[1]).not.toHaveAttribute('checked');
417
+ expect(allRadios[2]).toHaveAttribute('checked');
418
+ expect(allRadios[3]).not.toHaveAttribute('checked');
419
+ expect(allRadios[4]).not.toHaveAttribute('checked');
420
+ expect(await getActiveElementTestId(page)).toEqual('q2RadioInnerRadioBox');
421
+ });
422
+ it('does not select any radio when the provided value is not found', async () => {
423
+ const radioGroup = await page.find('q2-radio-group');
424
+ const radioGroupChangeSpy = await radioGroup.spyOnEvent('change');
425
+ expect(radioGroupChangeSpy).toHaveReceivedEventTimes(0);
426
+ expect(await getActiveElementTestId(page)).toBeNull();
427
+ await radioGroup.callMethod('setValue', 'value-10');
428
+ await page.waitForChanges();
429
+ expect(radioGroupChangeSpy).toHaveReceivedEventTimes(0);
430
+ const allRadios = await page.findAll('q2-radio');
431
+ expect(allRadios[0]).not.toHaveAttribute('checked');
432
+ expect(allRadios[1]).not.toHaveAttribute('checked');
433
+ expect(allRadios[2]).not.toHaveAttribute('checked');
434
+ expect(allRadios[3]).not.toHaveAttribute('checked');
435
+ expect(allRadios[4]).not.toHaveAttribute('checked');
436
+ expect(await getActiveElementTestId(page)).toBeNull();
437
+ });
438
+ });
439
+ });
478
440
  });
479
441
  //# sourceMappingURL=q2-radio-group-test.e2e.js.map