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 +1 @@
1
- {"version":3,"file":"q2-radio-group-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-radio-group-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EElement, E2EPage } from '@stencil/core/testing';\nimport { setup, dispatchEvent } from '../helpers';\n\ndescribe('q2-radio-group', () => {\n let page: E2EPage;\n let radioGroup: E2EElement;\n\n it('renders with label', async function (): Promise<void> {\n page = await setup({\n html: '<q2-radio-group label=\"test label\"></q2-radio-group>',\n });\n const label = await page.find('q2-radio-group >>> legend');\n expect(label).not.toBeNull();\n expect(label.innerText).toEqual('test label');\n });\n\n it('assigns name to all radios and updates if name changes', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('name')).toEqual('testname');\n expect(secondRadio.getAttribute('name')).toEqual('testname');\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('name', 'newname');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('name')).toEqual('newname');\n expect(secondRadio.getAttribute('name')).toEqual('newname');\n });\n\n it('assigns checked value on init and whenever value changes', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\" value=\"2\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '1');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('checked')).toEqual('');\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n });\n\n 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 (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\" checked=\"true\"></q2-radio>\n <q2-radio value=\"3\" label=\"3label\" ></q2-radio>\n </q2-radio-group>`,\n });\n\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n let thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n expect(thirdRadio.getAttribute('checked')).toEqual(null);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '3');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(thirdRadio.getAttribute('checked')).toEqual('');\n });\n\n 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 (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\" value=\"2\">\n <q2-radio value=\"1\" label=\"1label\" checked=\"true\" ></q2-radio>\n <q2-radio value=\"2\" label=\"2label\" ></q2-radio>\n <q2-radio value=\"3\" label=\"3label\" checked=\"true\" ></q2-radio>\n </q2-radio-group>`,\n });\n\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n let thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n expect(thirdRadio.getAttribute('checked')).toEqual(null);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '3');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(thirdRadio.getAttribute('checked')).toEqual('');\n });\n\n 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 (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\">\n <q2-radio value=\"1\" label=\"1label\" ></q2-radio>\n <q2-radio value=\"2\" label=\"2label\" ></q2-radio>\n <q2-radio value=\"3\" label=\"3label\" ></q2-radio>\n </q2-radio-group>`,\n });\n\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n let thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(thirdRadio.getAttribute('checked')).toEqual(null);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '3');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(thirdRadio.getAttribute('checked')).toEqual('');\n });\n\n it('will update name, checked and disabled on new radio if added dynamically (mutation observer)', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group disabled label=\"test label\" name=\"testname\" value=\"3\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n await page.$eval('q2-radio-group', radioGroup => {\n const newRadio = document.createElement('q2-radio');\n newRadio.label = '3label';\n newRadio.value = '3';\n\n radioGroup.appendChild(newRadio);\n });\n\n await page.waitForChanges();\n\n const thirdRadio = await page.find('q2-radio:nth-child(3');\n\n expect(thirdRadio.getAttribute('name')).toEqual('testname');\n expect(thirdRadio.getAttribute('checked')).toEqual('');\n expect(await thirdRadio.getProperty('groupDisabled')).toEqual(true);\n });\n\n 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 (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\">\n <q2-radio value=\"1\" label=\"1label\" ></q2-radio>\n <q2-radio value=\"2\" label=\"2label\" ></q2-radio>\n <q2-radio value=\"3\" label=\"3label\" ></q2-radio>\n </q2-radio-group>`,\n });\n const firstRadio = await page.find('q2-radio:nth-child(1)');\n const secondRadio = await page.find('q2-radio:nth-child(2)');\n const thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(await firstRadio.getProperty('tabIndex')).toEqual(0);\n expect(await secondRadio.getProperty('tabIndex')).toEqual(-1);\n expect(await thirdRadio.getProperty('tabIndex')).toEqual(-1);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '2');\n\n await page.waitForChanges();\n\n expect(await firstRadio.getProperty('tabIndex')).toEqual(-1);\n expect(await secondRadio.getProperty('tabIndex')).toEqual(0);\n expect(await thirdRadio.getProperty('tabIndex')).toEqual(-1);\n\n radioGroup.setProperty('value', '3');\n await page.waitForChanges();\n\n expect(await firstRadio.getProperty('tabIndex')).toEqual(-1);\n expect(await secondRadio.getProperty('tabIndex')).toEqual(-1);\n expect(await thirdRadio.getProperty('tabIndex')).toEqual(0);\n });\n\n it('disables all radios via groupDisable when radio group is disabled', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\" value=\"2\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n let firstRadioInnerInput = await page.find('q2-radio:nth-child(1) >>> input ');\n let secondRadioInnerInput = await page.find('q2-radio:nth-child(2) >>> input');\n\n expect(firstRadioInnerInput.getAttribute('disabled')).toEqual(null);\n expect(secondRadioInnerInput.getAttribute('disabled')).toEqual(null);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('disabled', true);\n\n await page.waitForChanges();\n\n firstRadioInnerInput = await page.find('q2-radio:nth-child(1) >>> input');\n secondRadioInnerInput = await page.find('q2-radio:nth-child(2) >>> input ');\n\n expect(firstRadioInnerInput.getAttribute('disabled')).toEqual('');\n expect(secondRadioInnerInput.getAttribute('disabled')).toEqual('');\n });\n\n describe('@Props', () => {\n const getActiveElementValue = async (page: E2EPage) => {\n return page.$eval('body', () => document.activeElement.getAttribute('value'));\n };\n\n describe('tilelayout', () => {\n it('converts to tileLayout=true when provided', async () => {\n page = await setup({\n html: `\n <q2-radio-group label=\"My Group\" tilelayout>\n <q2-radio value=\"1\" label=\"Option 1\"></q2-radio>\n <q2-radio value=\"2\" label=\"Option 2\"></q2-radio>\n <q2-radio value=\"3\" label=\"Option 3\"></q2-radio>\n </q2-radio-group>\n `,\n });\n await page.waitForChanges();\n radioGroup = await page.find('q2-radio-group');\n\n expect(radioGroup).toHaveAttribute('tile-layout');\n expect(await radioGroup.getProperty('tilelayout')).toBeUndefined();\n });\n\n it('converts to tileLayout=false when provided as \"false\"', async () => {\n page = await setup({\n html: `\n <q2-radio-group label=\"My Group\" tilelayout=\"false\">\n <q2-radio value=\"1\" label=\"Option 1\"></q2-radio>\n <q2-radio value=\"2\" label=\"Option 2\"></q2-radio>\n <q2-radio value=\"3\" label=\"Option 3\"></q2-radio>\n </q2-radio-group>\n `,\n });\n await page.waitForChanges();\n radioGroup = await page.find('q2-radio-group');\n\n expect(radioGroup).not.toHaveAttribute('tile-layout');\n expect(await radioGroup.getProperty('tilelayout')).toBeUndefined();\n });\n });\n\n describe('readonly', () => {\n it('marks all q2-radio elements with groupReadonly', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-radio-group label=\"Label\" value=\"2\">\n <q2-radio value=\"1\" label=\"Label\"></q2-radio>\n <q2-radio value=\"2\" label=\"Label\"></q2-radio>\n <q2-radio value=\"3\" label=\"Label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n const radioGroup = await page.find('q2-radio-group');\n const radios = await page.findAll('q2-radio');\n\n expect(radios.every(async radio => (await radio.getProperty('groupReadonly')) === false)).toBe(true);\n\n radioGroup.setProperty('readonly', true);\n await page.waitForChanges();\n\n expect(radios.every(async radio => (await radio.getProperty('groupReadonly')) === true)).toBe(true);\n });\n\n it('allows movement between radio buttons without selecting them', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-radio-group label=\"Label\" value=\"2\" readonly>\n <q2-radio value=\"1\" label=\"Label\"></q2-radio>\n <q2-radio value=\"2\" label=\"Label\"></q2-radio>\n <q2-radio value=\"3\" label=\"Label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n const radioGroup = await page.find('q2-radio-group');\n await radioGroup.focus();\n\n expect(await getActiveElementValue(page)).toEqual('2');\n await dispatchEvent(page, 'q2-radio[value=\"2\"]', 'keydown', {\n key: 'ArrowDown',\n bubbles: true,\n });\n await page.waitForChanges();\n expect(await getActiveElementValue(page)).toEqual('3');\n expect(await radioGroup.getProperty('value')).toEqual('2');\n\n await dispatchEvent(page, 'q2-radio[value=\"3\"]', 'keydown', {\n key: 'ArrowUp',\n bubbles: true,\n });\n await page.waitForChanges();\n expect(await getActiveElementValue(page)).toEqual('2');\n expect(await radioGroup.getProperty('value')).toEqual('2');\n\n await dispatchEvent(page, 'q2-radio[value=\"2\"]', 'keydown', {\n key: 'ArrowUp',\n bubbles: true,\n });\n await page.waitForChanges();\n expect(await getActiveElementValue(page)).toEqual('1');\n expect(await radioGroup.getProperty('value')).toEqual('2');\n });\n\n it('allows clicking radio buttons without selecting them', async function (): Promise<void> {\n page = await setup({\n html: `\n <q2-radio-group label=\"Label\" value=\"2\" readonly>\n <q2-radio value=\"1\" label=\"Label\"></q2-radio>\n <q2-radio value=\"2\" label=\"Label\"></q2-radio>\n <q2-radio value=\"3\" label=\"Label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n const radioGroup = await page.find('q2-radio-group');\n const radios = await page.findAll('q2-radio');\n\n await radios[0].click();\n\n expect(await getActiveElementValue(page)).toEqual('1');\n expect(await radioGroup.getProperty('value')).toEqual('2');\n });\n });\n });\n\n it('when a radio is selected radio group emits change event', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\" value=\"2\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n const radioGroup = await page.find('q2-radio-group');\n const changeSpy = await radioGroup.spyOnEvent('change');\n let value;\n\n await dispatchEvent(page, ['q2-radio:nth-child(1)', 'label'], 'click');\n\n // change event is fired with appropriate value\n expect(changeSpy).toHaveReceivedEventDetail({ value: '1' });\n\n value = await radioGroup.getProperty('value');\n\n // value automatically updated by default change handler\n expect(value).toEqual('1');\n });\n\n it('can override default on change', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\" value=\"2\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n const radioGroup = await page.find('q2-radio-group');\n const changeSpy = await radioGroup.spyOnEvent('change');\n\n await page.$eval('q2-radio-group', radioGroup => {\n (radioGroup as HTMLQ2RadioGroupElement).onchange = function (event) {\n event.stopPropagation();\n // do nothing\n };\n });\n\n await dispatchEvent(page, ['q2-radio:nth-child(1)', 'label'], 'click');\n\n // change event is fired with appropriate value\n expect(changeSpy).toHaveReceivedEventDetail({ value: '1' });\n\n const value = await radioGroup.getProperty('value');\n\n expect(value).toEqual('2');\n });\n\n it('allows spacebar to select first option when focused and no options are selected', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"test label\" name=\"testname\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n const firstRadio = await page.find('q2-radio');\n const firstRadioInput = await page.find('q2-radio >>> input');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n\n await firstRadioInput.press(' ');\n await page.waitForChanges();\n\n expect(await firstRadio.getProperty('checked')).toEqual(true);\n });\n it('should render a localized optional string when the optional attribute is passed', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"foo\" name=\"testname\" optional>\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n const label = await page.find('q2-radio-group >>> legend');\n\n // a localized optional is shown in the label\n expect(label.innerText.trim()).toEqual('footecton.element.input.optional');\n });\n it('should show a tile format when tile option is passed', async (): Promise<void> => {\n page = await setup({\n html: `<q2-radio-group label=\"foo\" name=\"testname\">\n <q2-radio value=\"1\" label=\"1label\"></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n let svgCheckbox = await page.findAll('q2-radio >>> svg');\n let firstRadio = await page.find('q2-radio >>> div');\n expect(svgCheckbox.length).toEqual(2);\n expect(firstRadio.classList.contains('radio-container')).toBeTruthy();\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setAttribute('tilelayout', 'true');\n await page.waitForChanges();\n\n svgCheckbox = await page.findAll('q2-radio >>> svg');\n firstRadio = await page.find('q2-radio >>> div');\n expect(svgCheckbox.length).toEqual(0);\n expect(firstRadio.classList.contains('radio-tile')).toBeTruthy();\n });\n\n it('handles keyboard navigation', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"foo\" name=\"testname\" value=\"1\">\n <q2-radio value=\"1\" label=\"1label\" checked></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n await page.waitForChanges();\n\n expect(firstRadio.getAttribute('checked')).toEqual('');\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n\n await dispatchEvent(page, ['q2-radio-group'], 'keydown', {\n key: 'ArrowDown',\n });\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n });\n\n it('should work with changing checked attribute programmatically', async function (): Promise<void> {\n page = await setup({\n html: `<q2-radio-group label=\"foo\" name=\"testname\" value=\"1\">\n <q2-radio value=\"1\" label=\"1label\" checked></q2-radio>\n <q2-radio value=\"2\" label=\"2label\"></q2-radio>\n </q2-radio-group>`,\n });\n\n const group = await page.find('q2-radio-group');\n const firstRadio = await page.find('q2-radio:nth-child(1)');\n const secondRadio = await page.find('q2-radio:nth-child(2)');\n await page.waitForChanges();\n\n expect(firstRadio.getAttribute('checked')).toEqual('');\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(await group.getProperty('value')).toEqual('1');\n\n // change to 2\n secondRadio.setAttribute('checked', '');\n await page.waitForChanges();\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n expect(await group.getProperty('value')).toEqual('2');\n\n // change back to 1\n firstRadio.setAttribute('checked', '');\n await page.waitForChanges();\n\n expect(firstRadio.getAttribute('checked')).toEqual('');\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(await group.getProperty('value')).toEqual('1');\n });\n\n describe('focus', () => {\n let page: E2EPage;\n let radioGroup: E2EElement;\n beforeEach(async () => {\n page = await setup({\n html: `\n <q2-radio-group>\n <q2-radio value=\"1\" label=\"1\"></q2-radio>\n <q2-radio value=\"2\" label=\"2\"></q2-radio>\n </q2-radio-group>\n `,\n });\n radioGroup = await page.find('q2-radio-group');\n\n expect(await activeValue(page)).toBeUndefined();\n });\n\n const activeValue = async (page: E2EPage) => {\n return page.evaluate(() => document.activeElement.closest('q2-radio')?.value);\n };\n\n it('focuses inner button when focus event is dispatched', async function (): Promise<void> {\n await radioGroup.triggerEvent('focus');\n await page.waitForChanges();\n\n expect(await activeValue(page)).toEqual('1');\n });\n\n it('focuses inner button when element.focus() is called', async function (): Promise<void> {\n await radioGroup.focus();\n await page.waitForChanges();\n\n expect(await activeValue(page)).toEqual('1');\n });\n });\n\n describe('Regressions', () => {\n describe('TCT-1689', () => {\n let page: E2EPage;\n beforeEach(async () => {\n page = await setup({\n html: `\n <script>\n function changeHandler() {\n window.changeEventCalled = true;\n }\n </script>\n <q2-radio-group value=\"2\" onChange=\"changeHandler()\">\n <q2-radio value=\"1\" label=\"1\"></q2-radio>\n <q2-radio value=\"2\" label=\"2\"></q2-radio>\n </q2-radio-group>\n `,\n });\n });\n\n it('does not emit a change event on initial render if value is set', async () => {\n expect(await page.$eval('body', () => (window as any).changeEventCalled)).toBeUndefined();\n });\n\n it('does emit a change event when an option is selected', async () => {\n const secondRadio = await page.find('q2-radio[value=\"1\"]');\n await secondRadio.setProperty('checked', true);\n await page.waitForChanges();\n\n expect(await page.$eval('body', () => (window as any).changeEventCalled)).toBe(true);\n });\n });\n });\n});\n"]}
1
+ {"version":3,"file":"q2-radio-group-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-radio-group-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EElement, E2EPage } from '@stencil/core/testing';\nimport { setup, dispatchEvent, getActiveElementTestId } from '../helpers';\n\ndescribe('q2-radio-group', () => {\n let page: E2EPage;\n let radioGroup: E2EElement;\n\n const setupPage = async (props: string = '', numberOfRadios: number = 3, checkedRadios: number[] = []) => {\n props = props ? ` ${props}` : '';\n const radios = Array.from(\n { length: numberOfRadios },\n (_, i) =>\n `<q2-radio value=\"${i + 1}\" label=\"${i + 1}label\"${\n checkedRadios.includes(i + 1) ? ' checked=\"true\"' : ''\n }></q2-radio>`\n ).join('');\n const page = await setup({\n html: `\n <q2-radio-group \"${props}>\n ${radios}\n </q2-radio-group>\n `,\n });\n await page.waitForChanges();\n\n return page;\n };\n\n it('renders with label', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\"', 0);\n const label = await page.find('q2-radio-group >>> legend');\n\n expect(label).not.toBeNull();\n expect(label.innerText).toEqual('My Radio Group');\n });\n\n it('assigns name to all radios and updates if name changes', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\"', 2);\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('name')).toEqual('testname');\n expect(secondRadio.getAttribute('name')).toEqual('testname');\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('name', 'newname');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('name')).toEqual('newname');\n expect(secondRadio.getAttribute('name')).toEqual('newname');\n });\n\n it('assigns checked value on init and whenever value changes', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\" value=\"2\"', 2);\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '1');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('checked')).toEqual('');\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n });\n\n 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 (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\"', 3, [2]);\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n let thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n expect(thirdRadio.getAttribute('checked')).toEqual(null);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '3');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(thirdRadio.getAttribute('checked')).toEqual('');\n });\n\n 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 (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\" value=\"2\"', 3, [1, 3]);\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n let thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n expect(thirdRadio.getAttribute('checked')).toEqual(null);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '3');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(thirdRadio.getAttribute('checked')).toEqual('');\n });\n\n 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 (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\"');\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n let thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(thirdRadio.getAttribute('checked')).toEqual(null);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '3');\n\n await page.waitForChanges();\n\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(thirdRadio.getAttribute('checked')).toEqual('');\n });\n\n it('will update name, checked and disabled on new radio if added dynamically (mutation observer)', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" disabled name=\"testname\" value=\"3\"');\n await page.$eval('q2-radio-group', radioGroup => {\n const newRadio = document.createElement('q2-radio');\n newRadio.label = '3label';\n newRadio.value = '3';\n radioGroup.appendChild(newRadio);\n });\n await page.waitForChanges();\n const thirdRadio = await page.find('q2-radio:nth-child(3');\n\n expect(thirdRadio.getAttribute('name')).toEqual('testname');\n expect(thirdRadio.getAttribute('checked')).toEqual('');\n expect(await thirdRadio.getProperty('groupDisabled')).toEqual(true);\n });\n\n 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 (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\"');\n const firstRadio = await page.find('q2-radio:nth-child(1)');\n const secondRadio = await page.find('q2-radio:nth-child(2)');\n const thirdRadio = await page.find('q2-radio:nth-child(3)');\n\n expect(await firstRadio.getProperty('tabIndex')).toEqual(0);\n expect(await secondRadio.getProperty('tabIndex')).toEqual(-1);\n expect(await thirdRadio.getProperty('tabIndex')).toEqual(-1);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('value', '2');\n await page.waitForChanges();\n\n expect(await firstRadio.getProperty('tabIndex')).toEqual(-1);\n expect(await secondRadio.getProperty('tabIndex')).toEqual(0);\n expect(await thirdRadio.getProperty('tabIndex')).toEqual(-1);\n\n radioGroup.setProperty('value', '3');\n await page.waitForChanges();\n\n expect(await firstRadio.getProperty('tabIndex')).toEqual(-1);\n expect(await secondRadio.getProperty('tabIndex')).toEqual(-1);\n expect(await thirdRadio.getProperty('tabIndex')).toEqual(0);\n });\n\n it('disables all radios via groupDisable when radio group is disabled', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\" value=\"2\"', 2);\n let firstRadioInnerInput = await page.find('q2-radio:nth-child(1) >>> input ');\n let secondRadioInnerInput = await page.find('q2-radio:nth-child(2) >>> input');\n\n expect(firstRadioInnerInput.getAttribute('disabled')).toEqual(null);\n expect(secondRadioInnerInput.getAttribute('disabled')).toEqual(null);\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setProperty('disabled', true);\n await page.waitForChanges();\n firstRadioInnerInput = await page.find('q2-radio:nth-child(1) >>> input');\n secondRadioInnerInput = await page.find('q2-radio:nth-child(2) >>> input ');\n\n expect(firstRadioInnerInput.getAttribute('disabled')).toEqual('');\n expect(secondRadioInnerInput.getAttribute('disabled')).toEqual('');\n });\n\n describe('Props', () => {\n const getActiveElementValue = async (page: E2EPage) => {\n return page.$eval('body', () => document.activeElement.getAttribute('value'));\n };\n\n describe('tilelayout', () => {\n it('converts to tileLayout=true when provided', async () => {\n page = await setupPage('label=\"My Radio Group\" tilelayout');\n radioGroup = await page.find('q2-radio-group');\n\n expect(radioGroup).toHaveAttribute('tile-layout');\n expect(await radioGroup.getProperty('tilelayout')).toBeUndefined();\n });\n\n it('converts to tileLayout=false when provided as \"false\"', async () => {\n page = await setupPage('label=\"My Radio Group\" tilelayout=\"false\"');\n radioGroup = await page.find('q2-radio-group');\n\n expect(radioGroup).not.toHaveAttribute('tile-layout');\n expect(await radioGroup.getProperty('tilelayout')).toBeUndefined();\n });\n });\n\n describe('readonly', () => {\n describe('set to true', () => {\n it('on load child q2-radio components are groupReadonly', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" readonly');\n const radios = await page.findAll('q2-radio');\n\n expect(radios.every(async radio => (await radio.getProperty('groupReadonly')) === true)).toBe(true);\n });\n it('after load child q2-radio components are groupReadonly', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\"');\n const radioGroup = await page.find('q2-radio-group');\n const radios = await page.findAll('q2-radio');\n\n expect(radios.every(async radio => (await radio.getProperty('groupReadonly')) === false)).toBe(\n true\n );\n\n radioGroup.setAttribute('readonly', 'true');\n await page.waitForChanges();\n\n expect(radios.every(async radio => (await radio.getProperty('groupReadonly')) === true)).toBe(true);\n });\n it('allows movement between radio buttons without selecting them', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" value=\"2\" readonly');\n const radioGroup = await page.find('q2-radio-group');\n await radioGroup.focus();\n\n expect(await getActiveElementValue(page)).toEqual('2');\n\n await dispatchEvent(page, 'q2-radio[value=\"2\"]', 'keydown', {\n key: 'ArrowDown',\n bubbles: true,\n });\n await page.waitForChanges();\n\n expect(await getActiveElementValue(page)).toEqual('3');\n expect(await radioGroup.getProperty('value')).toEqual('2');\n\n await dispatchEvent(page, 'q2-radio[value=\"3\"]', 'keydown', {\n key: 'ArrowUp',\n bubbles: true,\n });\n await page.waitForChanges();\n\n expect(await getActiveElementValue(page)).toEqual('2');\n expect(await radioGroup.getProperty('value')).toEqual('2');\n\n await dispatchEvent(page, 'q2-radio[value=\"2\"]', 'keydown', {\n key: 'ArrowUp',\n bubbles: true,\n });\n await page.waitForChanges();\n\n expect(await getActiveElementValue(page)).toEqual('1');\n expect(await radioGroup.getProperty('value')).toEqual('2');\n });\n\n it('allows clicking radio buttons without selecting them', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" value=\"2\" readonly');\n const radioGroup = await page.find('q2-radio-group');\n const radios = await page.findAll('q2-radio');\n await radios[0].click();\n\n expect(await getActiveElementValue(page)).toEqual('1');\n expect(await radioGroup.getProperty('value')).toEqual('2');\n });\n });\n describe('set to false', () => {\n it('on load child q2-radio components are NOT groupReadonly', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\"');\n const radios = await page.findAll('q2-radio');\n\n expect(radios.every(async radio => (await radio.getProperty('groupReadonly')) === false)).toBe(\n true\n );\n });\n it('after load child q2-radio components are NOT groupReadonly', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" readonly');\n const radioGroup = await page.find('q2-radio-group');\n const radios = await page.findAll('q2-radio');\n\n expect(radios.every(async radio => (await radio.getProperty('groupReadonly')) === true)).toBe(true);\n\n radioGroup.setAttribute('groupReadonly', 'false');\n await page.waitForChanges();\n\n expect(radios.every(async radio => (await radio.getProperty('groupReadonly')) === false)).toBe(\n true\n );\n });\n });\n });\n });\n\n it('when a radio is selected radio group emits change event', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\" value=\"2\"', 2);\n const radioGroup = await page.find('q2-radio-group');\n const changeSpy = await radioGroup.spyOnEvent('change');\n let value;\n await dispatchEvent(page, ['q2-radio:nth-child(1)', 'label'], 'click');\n\n // change event is fired with appropriate value\n expect(changeSpy).toHaveReceivedEventDetail({ value: '1' });\n\n value = await radioGroup.getProperty('value');\n\n // value automatically updated by default change handler\n expect(value).toEqual('1');\n });\n\n it('can override default on change', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\" value=\"2\"', 2);\n const radioGroup = await page.find('q2-radio-group');\n const changeSpy = await radioGroup.spyOnEvent('change');\n await page.$eval('q2-radio-group', radioGroup => {\n (radioGroup as HTMLQ2RadioGroupElement).onchange = function (event) {\n event.stopPropagation();\n // do nothing\n };\n });\n await dispatchEvent(page, ['q2-radio:nth-child(1)', 'label'], 'click');\n\n // change event is fired with appropriate value\n expect(changeSpy).toHaveReceivedEventDetail({ value: '1' });\n\n const value = await radioGroup.getProperty('value');\n\n expect(value).toEqual('2');\n });\n\n it('allows spacebar to select first option when focused and no options are selected', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\"', 2);\n const firstRadio = await page.find('q2-radio');\n const firstRadioInput = await page.find('q2-radio >>> input');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n\n await firstRadioInput.press(' ');\n await page.waitForChanges();\n\n expect(await firstRadio.getProperty('checked')).toEqual(true);\n });\n it('should render a localized optional string when the optional attribute is passed', async function (): Promise<void> {\n page = await setupPage('label=\"foo\" name=\"testname\" optional', 2);\n const label = await page.find('q2-radio-group >>> legend');\n\n // a localized optional is shown in the label\n expect(label.innerText.trim()).toEqual('footecton.element.input.optional');\n });\n it('should show a tile format when tile option is passed', async (): Promise<void> => {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\"', 2);\n let svgCheckbox = await page.findAll('q2-radio >>> svg');\n let firstRadio = await page.find('q2-radio >>> div');\n\n expect(svgCheckbox.length).toEqual(2);\n expect(firstRadio.classList.contains('radio-container')).toBeTruthy();\n\n const radioGroup = await page.find('q2-radio-group');\n radioGroup.setAttribute('tilelayout', 'true');\n await page.waitForChanges();\n svgCheckbox = await page.findAll('q2-radio >>> svg');\n firstRadio = await page.find('q2-radio >>> div');\n\n expect(svgCheckbox.length).toEqual(0);\n expect(firstRadio.classList.contains('radio-tile')).toBeTruthy();\n });\n\n it('handles keyboard navigation', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\" value=\"1\"', 2);\n let firstRadio = await page.find('q2-radio:nth-child(1)');\n let secondRadio = await page.find('q2-radio:nth-child(2)');\n await page.waitForChanges();\n\n expect(firstRadio.getAttribute('checked')).toEqual('');\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n\n await dispatchEvent(page, ['q2-radio-group'], 'keydown', {\n key: 'ArrowDown',\n });\n firstRadio = await page.find('q2-radio:nth-child(1)');\n secondRadio = await page.find('q2-radio:nth-child(2)');\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n });\n\n it('should work with changing checked attribute programmatically', async function (): Promise<void> {\n page = await setupPage('label=\"My Radio Group\" name=\"testname\" value=\"1\"', 2);\n const group = await page.find('q2-radio-group');\n const firstRadio = await page.find('q2-radio:nth-child(1)');\n const secondRadio = await page.find('q2-radio:nth-child(2)');\n await page.waitForChanges();\n\n expect(firstRadio.getAttribute('checked')).toEqual('');\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(await group.getProperty('value')).toEqual('1');\n\n // change to 2\n secondRadio.setAttribute('checked', '');\n await page.waitForChanges();\n\n expect(firstRadio.getAttribute('checked')).toEqual(null);\n expect(secondRadio.getAttribute('checked')).toEqual('');\n expect(await group.getProperty('value')).toEqual('2');\n\n // change back to 1\n firstRadio.setAttribute('checked', '');\n await page.waitForChanges();\n\n expect(firstRadio.getAttribute('checked')).toEqual('');\n expect(secondRadio.getAttribute('checked')).toEqual(null);\n expect(await group.getProperty('value')).toEqual('1');\n });\n\n describe('focus', () => {\n let page: E2EPage;\n let radioGroup: E2EElement;\n beforeEach(async () => {\n page = await setupPage('label=\"My Radio Group\"', 2);\n radioGroup = await page.find('q2-radio-group');\n\n expect(await activeValue(page)).toBeUndefined();\n });\n\n const activeValue = async (page: E2EPage) => {\n return page.evaluate(() => document.activeElement.closest('q2-radio')?.value);\n };\n\n it('focuses inner button when focus event is dispatched', async function (): Promise<void> {\n await radioGroup.triggerEvent('focus');\n await page.waitForChanges();\n\n expect(await activeValue(page)).toEqual('1');\n });\n\n it('focuses inner button when element.focus() is called', async function (): Promise<void> {\n await radioGroup.focus();\n await page.waitForChanges();\n\n expect(await activeValue(page)).toEqual('1');\n });\n });\n\n describe('Regressions', () => {\n describe('TCT-1689', () => {\n let page: E2EPage;\n beforeEach(async () => {\n page = await setup({\n html: `\n <script>\n function changeHandler() {\n window.changeEventCalled = true;\n }\n </script>\n <q2-radio-group value=\"2\" onChange=\"changeHandler()\">\n <q2-radio value=\"1\" label=\"1\"></q2-radio>\n <q2-radio value=\"2\" label=\"2\"></q2-radio>\n </q2-radio-group>\n `,\n });\n });\n\n it('does not emit a change event on initial render if value is set', async () => {\n expect(await page.$eval('body', () => (window as any).changeEventCalled)).toBeUndefined();\n });\n\n it('does emit a change event when an option is selected', async () => {\n const secondRadio = await page.find('q2-radio[value=\"1\"]');\n await secondRadio.setProperty('checked', true);\n await page.waitForChanges();\n\n expect(await page.$eval('body', () => (window as any).changeEventCalled)).toBe(true);\n });\n });\n });\n\n describe('Methods', () => {\n describe('setValue', () => {\n beforeEach(async () => {\n page = await setup({\n html: `\n <q2-radio-group label=\"My Radio Group\">\n <q2-radio value=\"value-1\" label=\"Radio 1\"></q2-radio>\n <q2-radio value=\"value-2\" label=\"Radio 2\"></q2-radio>\n <q2-radio value=\"value-3\" label=\"Radio 3\"></q2-radio>\n <q2-radio value=\"value-4\" label=\"Radio 3\"></q2-radio>\n <q2-radio value=\"value-5\" label=\"Radio 3\"></q2-radio>\n </q2-radio-group>\n `,\n });\n await page.waitForChanges();\n });\n\n it('selects the radio for the provided value', async () => {\n const radioGroup = await page.find('q2-radio-group');\n const radioGroupChangeSpy = await radioGroup.spyOnEvent('change');\n\n expect(radioGroupChangeSpy).toHaveReceivedEventTimes(0);\n expect(await getActiveElementTestId(page)).toBeNull();\n\n await radioGroup.callMethod('setValue', 'value-3');\n await page.waitForChanges();\n\n expect(radioGroupChangeSpy).toHaveReceivedEventTimes(1);\n expect(radioGroupChangeSpy).toHaveReceivedEventDetail({\n value: 'value-3',\n });\n\n const allRadios = await page.findAll('q2-radio');\n expect(allRadios[0]).not.toHaveAttribute('checked');\n expect(allRadios[1]).not.toHaveAttribute('checked');\n expect(allRadios[2]).toHaveAttribute('checked');\n expect(allRadios[3]).not.toHaveAttribute('checked');\n expect(allRadios[4]).not.toHaveAttribute('checked');\n\n expect(await getActiveElementTestId(page)).toEqual('q2RadioInnerRadioBox');\n });\n\n it('does not select any radio when the provided value is not found', async () => {\n const radioGroup = await page.find('q2-radio-group');\n const radioGroupChangeSpy = await radioGroup.spyOnEvent('change');\n\n expect(radioGroupChangeSpy).toHaveReceivedEventTimes(0);\n expect(await getActiveElementTestId(page)).toBeNull();\n\n await radioGroup.callMethod('setValue', 'value-10');\n await page.waitForChanges();\n\n expect(radioGroupChangeSpy).toHaveReceivedEventTimes(0);\n\n const allRadios = await page.findAll('q2-radio');\n expect(allRadios[0]).not.toHaveAttribute('checked');\n expect(allRadios[1]).not.toHaveAttribute('checked');\n expect(allRadios[2]).not.toHaveAttribute('checked');\n expect(allRadios[3]).not.toHaveAttribute('checked');\n expect(allRadios[4]).not.toHaveAttribute('checked');\n\n expect(await getActiveElementTestId(page)).toBeNull();\n });\n });\n });\n});\n"]}
@@ -1,16 +1,29 @@
1
- import { setup, testDeprecatedAriaLabel } from '../helpers';
1
+ import { getActiveElementTestId, setup, testDeprecatedAriaLabel } from '../helpers';
2
2
  describe('q2-radio', () => {
3
+ let page;
4
+ const setupPage = async (props = '', label = 'My Radio') => {
5
+ props = props ? ` ${props}` : '';
6
+ page = await setup({
7
+ html: `
8
+ <q2-radio label="${label}"${props}></q2-radio>
9
+ `,
10
+ });
11
+ await page.waitForChanges();
12
+ return page;
13
+ };
3
14
  const isChecked = async (page) => {
4
15
  return page.$eval('q2-radio', el => { var _a, _b; return (_b = (_a = el.shadowRoot.querySelector('input')) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false; });
5
16
  };
17
+ const clickRadio = async (page) => {
18
+ await page.$eval('q2-radio', (el) => el.click());
19
+ await page.waitForChanges();
20
+ };
6
21
  it('renders with properties passed to inner input', async function () {
7
- const page = await setup({
8
- html: `<q2-radio label="My Label" value="1" disabled checked name="testName"></q2-radio>`,
9
- });
22
+ page = await setupPage('value="1" disabled checked name="testName"');
10
23
  const radio = await page.find('q2-radio');
11
24
  let radioLabel = await page.find('q2-radio >>> .label-content');
12
25
  const radioInput = await page.find('q2-radio >>> input');
13
- expect(radioLabel).toEqualText('My Label');
26
+ expect(radioLabel).toEqualText('My Radio');
14
27
  expect(radioInput).toEqualAttribute('name', 'testName');
15
28
  expect(radioInput).toHaveAttribute('disabled');
16
29
  expect(await radio.getProperty('hideLabel')).toBeUndefined();
@@ -38,25 +51,98 @@ describe('q2-radio', () => {
38
51
  describe('Methods', () => {
39
52
  describe('click', () => {
40
53
  it('selects the radio when called', async () => {
41
- const page = await setup({
42
- html: `<q2-radio label="Label"></q2-radio>`,
43
- });
54
+ page = await setupPage();
44
55
  const radio = await page.find('q2-radio');
45
56
  expect(await isChecked(page)).toBe(false);
46
57
  expect(radio).not.toHaveAttribute('checked');
47
- await page.$eval('q2-radio', (el) => el.click());
48
- await page.waitForChanges();
58
+ await clickRadio(page);
49
59
  expect(await isChecked(page)).toBe(true);
50
60
  expect(radio).toHaveAttribute('checked');
51
61
  });
62
+ it('does not select the radio when readonly', async () => {
63
+ const page = await setup({
64
+ html: `<q2-radio label="Label" readonly></q2-radio>`,
65
+ });
66
+ const radio = await page.find('q2-radio');
67
+ const innerRadio = await page.find('q2-radio >>> input');
68
+ expect(await getActiveElementTestId(page)).toBeNull();
69
+ expect(radio).not.toHaveAttribute('checked');
70
+ expect(innerRadio).not.toHaveAttribute('checked');
71
+ await page.$eval('q2-radio', el => el.click());
72
+ await page.waitForChanges();
73
+ expect(radio).not.toHaveAttribute('checked');
74
+ expect(innerRadio).not.toHaveAttribute('checked');
75
+ expect(await getActiveElementTestId(page)).toEqual('q2RadioInnerRadioBox');
76
+ });
77
+ it('does not select the radio when disabled', async () => {
78
+ const page = await setup({
79
+ html: `<q2-radio label="Label" disabled></q2-radio>`,
80
+ });
81
+ const radio = await page.find('q2-radio');
82
+ const innerRadio = await page.find('q2-radio >>> input');
83
+ expect(await getActiveElementTestId(page)).toBeNull();
84
+ expect(radio).not.toHaveAttribute('checked');
85
+ expect(innerRadio).not.toHaveAttribute('checked');
86
+ await page.$eval('q2-radio', el => el.click());
87
+ await page.waitForChanges();
88
+ expect(radio).not.toHaveAttribute('checked');
89
+ expect(innerRadio).not.toHaveAttribute('checked');
90
+ expect(await getActiveElementTestId(page)).toBeNull();
91
+ });
92
+ });
93
+ });
94
+ describe('Props', () => {
95
+ describe('groupReadonly', () => {
96
+ describe('set to true', () => {
97
+ it('on load does not check the radio when clicked', async () => {
98
+ page = await setupPage('group-readonly');
99
+ const radio = await page.find('q2-radio');
100
+ expect(await isChecked(page)).toBe(false);
101
+ expect(radio).not.toHaveAttribute('checked');
102
+ await clickRadio(page);
103
+ expect(await isChecked(page)).toBe(false);
104
+ expect(radio).not.toHaveAttribute('checked');
105
+ });
106
+ it('after load does not check the radio when clicked', async () => {
107
+ page = await setupPage();
108
+ const radio = await page.find('q2-radio');
109
+ expect(await isChecked(page)).toBe(false);
110
+ expect(radio).not.toHaveAttribute('checked');
111
+ radio.setProperty('groupReadonly', true);
112
+ await page.waitForChanges();
113
+ await clickRadio(page);
114
+ expect(await isChecked(page)).toBe(false);
115
+ expect(radio).not.toHaveAttribute('checked');
116
+ });
117
+ });
118
+ describe('set to false', () => {
119
+ it('on load checks the radio when clicked', async () => {
120
+ page = await setupPage();
121
+ const radio = await page.find('q2-radio');
122
+ expect(await isChecked(page)).toBe(false);
123
+ expect(radio).not.toHaveAttribute('checked');
124
+ await clickRadio(page);
125
+ expect(await isChecked(page)).toBe(true);
126
+ expect(radio).toHaveAttribute('checked');
127
+ });
128
+ it('after load checks the radio when clicked', async () => {
129
+ page = await setupPage('group-readonly');
130
+ const radio = await page.find('q2-radio');
131
+ expect(await isChecked(page)).toBe(false);
132
+ expect(radio).not.toHaveAttribute('checked');
133
+ radio.setProperty('groupReadonly', false);
134
+ await page.waitForChanges();
135
+ await clickRadio(page);
136
+ expect(await isChecked(page)).toBe(true);
137
+ expect(radio).toHaveAttribute('checked');
138
+ });
139
+ });
52
140
  });
53
141
  });
54
142
  describe('Regressions', () => {
55
143
  it('keeps the svg at 18px wide even with long labels', async function () {
56
144
  const lotsOfText = 'Interdum et malesuada fames ac ante ipsum primis in faucibus. Praesent sed ipsum iaculis, dignissim orci quis, mollis nibh. Pellentesque eget dolor tristique, placerat nibh sollicitudin, vehicula sapien. ';
57
- const page = await setup({
58
- html: `<q2-radio label="${lotsOfText}" value="1" disabled checked name="testName"></q2-radio>`,
59
- });
145
+ page = await setupPage('value="1" disabled checked name="testName"', lotsOfText);
60
146
  const svg = await page.find('q2-radio >>> svg');
61
147
  const svgStyles = await svg.getComputedStyle();
62
148
  expect(svgStyles.width).toEqual('18px');
@@ -65,8 +151,7 @@ describe('q2-radio', () => {
65
151
  describe('Deprecations', () => {
66
152
  it('handles deprecated `ariaLabel` prop', async () => {
67
153
  const label = 'My Label';
68
- const page = await setup({ html: `<q2-radio aria-label="${label}"></q2-radio>` });
69
- await page.waitForChanges();
154
+ page = await setupPage(`aria-label="${label}"`);
70
155
  await testDeprecatedAriaLabel(await page.find('q2-radio'), label);
71
156
  expect(await page.find('q2-radio >>> input')).toEqualAttribute('aria-label', label);
72
157
  });
@@ -1 +1 @@
1
- {"version":3,"file":"q2-radio-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-radio-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage } from '@stencil/core/testing';\nimport { setup, testDeprecatedAriaLabel } from '../helpers';\n\ndescribe('q2-radio', () => {\n const isChecked = async (page: E2EPage) => {\n return page.$eval('q2-radio', el => el.shadowRoot.querySelector('input')?.checked ?? false);\n };\n\n it('renders with properties passed to inner input', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-radio label=\"My Label\" value=\"1\" disabled checked name=\"testName\"></q2-radio>`,\n });\n\n const radio = await page.find('q2-radio');\n let radioLabel = await page.find('q2-radio >>> .label-content');\n const radioInput = await page.find('q2-radio >>> input');\n\n expect(radioLabel).toEqualText('My Label');\n expect(radioInput).toEqualAttribute('name', 'testName');\n expect(radioInput).toHaveAttribute('disabled');\n expect(await radio.getProperty('hideLabel')).toBeUndefined();\n expect(await radio.getProperty('checked')).toEqual(true);\n expect(await radioInput.getProperty('checked')).toEqual(true);\n\n radio.setProperty('ariaLabel', 'My Aria Label');\n await page.waitForChanges();\n radioLabel = await page.find('q2-radio >>> .label-content');\n\n expect(await radio.getProperty('ariaLabel')).toBeUndefined();\n expect(await radio.getProperty('hideLabel')).toEqual(true);\n expect(await radio.getProperty('label')).toEqual('My Aria Label');\n expect(radioInput).toEqualAttribute('aria-label', 'My Aria Label');\n expect(radioLabel).toBeNull();\n\n radio.setProperty('hideLabel', false);\n radio.setProperty('disabled', false);\n\n await page.waitForChanges();\n radioLabel = await page.find('q2-radio >>> .label-content');\n\n expect(radioLabel).toEqualText('My Aria Label');\n expect(radioInput).not.toHaveAttribute('aria-label');\n expect(radioInput).not.toHaveAttribute('disabled');\n\n radio.setProperty('groupDisabled', true);\n await page.waitForChanges();\n\n expect(radioInput).toHaveAttribute('disabled');\n });\n\n describe('Methods', () => {\n describe('click', () => {\n it('selects the radio when called', async () => {\n const page = await setup({\n html: `<q2-radio label=\"Label\"></q2-radio>`,\n });\n const radio = await page.find('q2-radio');\n\n expect(await isChecked(page)).toBe(false);\n expect(radio).not.toHaveAttribute('checked');\n\n await page.$eval('q2-radio', (el: HTMLQ2RadioElement) => el.click());\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(true);\n expect(radio).toHaveAttribute('checked');\n });\n });\n });\n\n describe('Regressions', () => {\n it('keeps the svg at 18px wide even with long labels', async function (): Promise<void> {\n const lotsOfText =\n 'Interdum et malesuada fames ac ante ipsum primis in faucibus. Praesent sed ipsum iaculis, dignissim orci quis, mollis nibh. Pellentesque eget dolor tristique, placerat nibh sollicitudin, vehicula sapien. ';\n const page = await setup({\n html: `<q2-radio label=\"${lotsOfText}\" value=\"1\" disabled checked name=\"testName\"></q2-radio>`,\n });\n\n const svg = await page.find('q2-radio >>> svg');\n const svgStyles = await svg.getComputedStyle();\n expect(svgStyles.width).toEqual('18px');\n });\n });\n\n describe('Deprecations', () => {\n it('handles deprecated `ariaLabel` prop', async () => {\n const label = 'My Label';\n const page = await setup({ html: `<q2-radio aria-label=\"${label}\"></q2-radio>` });\n await page.waitForChanges();\n await testDeprecatedAriaLabel(await page.find('q2-radio'), label);\n expect(await page.find('q2-radio >>> input')).toEqualAttribute('aria-label', label);\n });\n });\n});\n"]}
1
+ {"version":3,"file":"q2-radio-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-radio-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage } from '@stencil/core/testing';\nimport { getActiveElementTestId, setup, testDeprecatedAriaLabel } from '../helpers';\n\ndescribe('q2-radio', () => {\n let page: E2EPage;\n\n const setupPage = async (props: string = '', label: string = 'My Radio') => {\n props = props ? ` ${props}` : '';\n page = await setup({\n html: `\n <q2-radio label=\"${label}\"${props}></q2-radio>\n `,\n });\n await page.waitForChanges();\n\n return page;\n };\n\n const isChecked = async (page: E2EPage) => {\n return page.$eval('q2-radio', el => el.shadowRoot.querySelector('input')?.checked ?? false);\n };\n\n const clickRadio = async (page: E2EPage) => {\n await page.$eval('q2-radio', (el: HTMLQ2RadioElement) => el.click());\n await page.waitForChanges();\n };\n\n it('renders with properties passed to inner input', async function (): Promise<void> {\n page = await setupPage('value=\"1\" disabled checked name=\"testName\"');\n const radio = await page.find('q2-radio');\n let radioLabel = await page.find('q2-radio >>> .label-content');\n const radioInput = await page.find('q2-radio >>> input');\n\n expect(radioLabel).toEqualText('My Radio');\n expect(radioInput).toEqualAttribute('name', 'testName');\n expect(radioInput).toHaveAttribute('disabled');\n expect(await radio.getProperty('hideLabel')).toBeUndefined();\n expect(await radio.getProperty('checked')).toEqual(true);\n expect(await radioInput.getProperty('checked')).toEqual(true);\n\n radio.setProperty('ariaLabel', 'My Aria Label');\n await page.waitForChanges();\n radioLabel = await page.find('q2-radio >>> .label-content');\n\n expect(await radio.getProperty('ariaLabel')).toBeUndefined();\n expect(await radio.getProperty('hideLabel')).toEqual(true);\n expect(await radio.getProperty('label')).toEqual('My Aria Label');\n expect(radioInput).toEqualAttribute('aria-label', 'My Aria Label');\n expect(radioLabel).toBeNull();\n\n radio.setProperty('hideLabel', false);\n radio.setProperty('disabled', false);\n await page.waitForChanges();\n radioLabel = await page.find('q2-radio >>> .label-content');\n\n expect(radioLabel).toEqualText('My Aria Label');\n expect(radioInput).not.toHaveAttribute('aria-label');\n expect(radioInput).not.toHaveAttribute('disabled');\n\n radio.setProperty('groupDisabled', true);\n await page.waitForChanges();\n\n expect(radioInput).toHaveAttribute('disabled');\n });\n\n describe('Methods', () => {\n describe('click', () => {\n it('selects the radio when called', async () => {\n page = await setupPage();\n const radio = await page.find('q2-radio');\n\n expect(await isChecked(page)).toBe(false);\n expect(radio).not.toHaveAttribute('checked');\n\n await clickRadio(page);\n\n expect(await isChecked(page)).toBe(true);\n expect(radio).toHaveAttribute('checked');\n });\n\n it('does not select the radio when readonly', async () => {\n const page = await setup({\n html: `<q2-radio label=\"Label\" readonly></q2-radio>`,\n });\n const radio = await page.find('q2-radio');\n const innerRadio = await page.find('q2-radio >>> input');\n\n expect(await getActiveElementTestId(page)).toBeNull();\n\n expect(radio).not.toHaveAttribute('checked');\n expect(innerRadio).not.toHaveAttribute('checked');\n\n await page.$eval('q2-radio', el => el.click());\n await page.waitForChanges();\n\n expect(radio).not.toHaveAttribute('checked');\n expect(innerRadio).not.toHaveAttribute('checked');\n expect(await getActiveElementTestId(page)).toEqual('q2RadioInnerRadioBox');\n });\n\n it('does not select the radio when disabled', async () => {\n const page = await setup({\n html: `<q2-radio label=\"Label\" disabled></q2-radio>`,\n });\n const radio = await page.find('q2-radio');\n const innerRadio = await page.find('q2-radio >>> input');\n\n expect(await getActiveElementTestId(page)).toBeNull();\n\n expect(radio).not.toHaveAttribute('checked');\n expect(innerRadio).not.toHaveAttribute('checked');\n\n await page.$eval('q2-radio', el => el.click());\n await page.waitForChanges();\n\n expect(radio).not.toHaveAttribute('checked');\n expect(innerRadio).not.toHaveAttribute('checked');\n expect(await getActiveElementTestId(page)).toBeNull();\n });\n });\n });\n\n describe('Props', () => {\n describe('groupReadonly', () => {\n describe('set to true', () => {\n it('on load does not check the radio when clicked', async () => {\n page = await setupPage('group-readonly');\n const radio = await page.find('q2-radio');\n\n expect(await isChecked(page)).toBe(false);\n expect(radio).not.toHaveAttribute('checked');\n\n await clickRadio(page);\n\n expect(await isChecked(page)).toBe(false);\n expect(radio).not.toHaveAttribute('checked');\n });\n it('after load does not check the radio when clicked', async () => {\n page = await setupPage();\n const radio = await page.find('q2-radio');\n\n expect(await isChecked(page)).toBe(false);\n expect(radio).not.toHaveAttribute('checked');\n\n radio.setProperty('groupReadonly', true);\n await page.waitForChanges();\n await clickRadio(page);\n\n expect(await isChecked(page)).toBe(false);\n expect(radio).not.toHaveAttribute('checked');\n });\n });\n describe('set to false', () => {\n it('on load checks the radio when clicked', async () => {\n page = await setupPage();\n const radio = await page.find('q2-radio');\n\n expect(await isChecked(page)).toBe(false);\n expect(radio).not.toHaveAttribute('checked');\n\n await clickRadio(page);\n\n expect(await isChecked(page)).toBe(true);\n expect(radio).toHaveAttribute('checked');\n });\n it('after load checks the radio when clicked', async () => {\n page = await setupPage('group-readonly');\n const radio = await page.find('q2-radio');\n\n expect(await isChecked(page)).toBe(false);\n expect(radio).not.toHaveAttribute('checked');\n\n radio.setProperty('groupReadonly', false);\n await page.waitForChanges();\n await clickRadio(page);\n\n expect(await isChecked(page)).toBe(true);\n expect(radio).toHaveAttribute('checked');\n });\n });\n });\n });\n\n describe('Regressions', () => {\n it('keeps the svg at 18px wide even with long labels', async function (): Promise<void> {\n const lotsOfText =\n 'Interdum et malesuada fames ac ante ipsum primis in faucibus. Praesent sed ipsum iaculis, dignissim orci quis, mollis nibh. Pellentesque eget dolor tristique, placerat nibh sollicitudin, vehicula sapien. ';\n page = await setupPage('value=\"1\" disabled checked name=\"testName\"', lotsOfText);\n const svg = await page.find('q2-radio >>> svg');\n const svgStyles = await svg.getComputedStyle();\n\n expect(svgStyles.width).toEqual('18px');\n });\n });\n\n describe('Deprecations', () => {\n it('handles deprecated `ariaLabel` prop', async () => {\n const label = 'My Label';\n page = await setupPage(`aria-label=\"${label}\"`);\n await testDeprecatedAriaLabel(await page.find('q2-radio'), label);\n\n expect(await page.find('q2-radio >>> input')).toEqualAttribute('aria-label', label);\n });\n });\n});\n"]}