q2-tecton-elements 1.48.1-alpha.0 → 1.48.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +73 -28
  2. package/dist/cjs/click-elsewhere_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/{index-c9a86a33.js → index-f69742cf.js} +1 -1
  4. package/dist/cjs/{index-c9a86a33.js.map → index-f69742cf.js.map} +1 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/q2-action-sheet.cjs.entry.js +1 -1
  7. package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
  8. package/dist/cjs/q2-calendar.cjs.entry.js +3 -3
  9. package/dist/cjs/q2-calendar.cjs.entry.js.map +1 -1
  10. package/dist/cjs/q2-carousel-pane.cjs.entry.js +2 -2
  11. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  12. package/dist/cjs/q2-chart-area.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-chart-bar.cjs.entry.js +1 -1
  14. package/dist/cjs/q2-chart-donut.cjs.entry.js +1 -1
  15. package/dist/cjs/q2-checkbox-group.cjs.entry.js +2 -2
  16. package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
  17. package/dist/cjs/q2-checkbox.cjs.entry.js +2 -2
  18. package/dist/cjs/q2-checkbox.cjs.entry.js.map +1 -1
  19. package/dist/cjs/q2-currency.cjs.entry.js +1 -1
  20. package/dist/cjs/q2-data-table.cjs.entry.js +1 -1
  21. package/dist/cjs/q2-detail.cjs.entry.js +1 -1
  22. package/dist/cjs/q2-dropdown.cjs.entry.js +1 -1
  23. package/dist/cjs/q2-editable-field.cjs.entry.js +1 -1
  24. package/dist/cjs/q2-input.cjs.entry.js +2 -2
  25. package/dist/cjs/q2-input.cjs.entry.js.map +1 -1
  26. package/dist/cjs/q2-item.cjs.entry.js +1 -1
  27. package/dist/cjs/q2-legend.cjs.entry.js +1 -1
  28. package/dist/cjs/q2-list.cjs.entry.js +1 -1
  29. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  30. package/dist/cjs/q2-message.cjs.entry.js +1 -1
  31. package/dist/cjs/q2-month-picker.cjs.entry.js +2 -2
  32. package/dist/cjs/q2-optgroup.cjs.entry.js +1 -1
  33. package/dist/cjs/q2-option-list.cjs.entry.js +1 -1
  34. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  35. package/dist/cjs/q2-pagination.cjs.entry.js +2 -2
  36. package/dist/cjs/q2-pill.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-radio-group.cjs.entry.js +2 -2
  38. package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
  39. package/dist/cjs/q2-radio.cjs.entry.js +1 -1
  40. package/dist/cjs/q2-relative-time.cjs.entry.js +2 -2
  41. package/dist/cjs/q2-section.cjs.entry.js +2 -2
  42. package/dist/cjs/q2-select.cjs.entry.js +56 -8
  43. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  44. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  45. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +1 -1
  46. package/dist/cjs/q2-stepper.cjs.entry.js +1 -1
  47. package/dist/cjs/q2-tab-container.cjs.entry.js +1 -1
  48. package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
  49. package/dist/cjs/q2-tag.cjs.entry.js +1 -1
  50. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  51. package/dist/cjs/q2-textarea.cjs.entry.js +2 -2
  52. package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
  53. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -2
  54. package/dist/collection/collection-manifest.json +5 -6
  55. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +1 -1
  56. package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
  57. package/dist/collection/components/q2-calendar/q2-calendar.css +0 -2
  58. package/dist/collection/components/q2-calendar/q2-calendar.js +1 -1
  59. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  60. package/dist/collection/components/q2-carousel/q2-carousel.js +1 -1
  61. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  62. package/dist/collection/components/q2-chart-area/q2-chart-area.js +1 -1
  63. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +1 -1
  64. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +1 -1
  65. package/dist/collection/components/q2-checkbox/q2-checkbox.css +0 -2
  66. package/dist/collection/components/q2-checkbox/q2-checkbox.js +1 -1
  67. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.css +1 -7
  68. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js +1 -1
  69. package/dist/collection/components/q2-currency/q2-currency.js +1 -1
  70. package/dist/collection/components/q2-data-table/q2-data-table.js +7 -7
  71. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  72. package/dist/collection/components/q2-dropdown/q2-dropdown.js +1 -1
  73. package/dist/collection/components/q2-editable-field/q2-editable-field.js +1 -1
  74. package/dist/collection/components/q2-input/q2-input.css +1 -1
  75. package/dist/collection/components/q2-input/q2-input.js +2 -2
  76. package/dist/collection/components/q2-item/q2-item.js +1 -1
  77. package/dist/collection/components/q2-legend/q2-legend.js +1 -1
  78. package/dist/collection/components/q2-list/q2-list.js +1 -1
  79. package/dist/collection/components/q2-loc/q2-loc.js +1 -1
  80. package/dist/collection/components/q2-message/q2-message.js +1 -1
  81. package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
  82. package/dist/collection/components/q2-option/q2-option.js +1 -1
  83. package/dist/collection/components/q2-option-list/q2-option-list.js +4 -4
  84. package/dist/collection/components/q2-pagination/q2-pagination.js +2 -2
  85. package/dist/collection/components/q2-pill/q2-pill.js +1 -1
  86. package/dist/collection/components/q2-popover/q2-popover.css +19 -11
  87. package/dist/collection/components/q2-popover/q2-popover.js +74 -28
  88. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  89. package/dist/collection/components/q2-radio/q2-radio.js +1 -1
  90. package/dist/collection/components/q2-radio-group/q2-radio-group.css +2 -4
  91. package/dist/collection/components/q2-radio-group/q2-radio-group.js +1 -1
  92. package/dist/collection/components/q2-relative-time/q2-relative-time.js +1 -1
  93. package/dist/collection/components/q2-section/q2-section.js +2 -2
  94. package/dist/collection/components/q2-select/q2-select.css +2 -2
  95. package/dist/collection/components/q2-select/q2-select.js +64 -9
  96. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  97. package/dist/collection/components/q2-stepper/q2-stepper.js +1 -1
  98. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +3 -3
  99. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
  100. package/dist/collection/components/q2-tab-container/q2-tab-container.js +1 -1
  101. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  102. package/dist/collection/components/q2-tag/q2-tag.js +1 -1
  103. package/dist/collection/components/q2-textarea/q2-textarea.css +2 -2
  104. package/dist/collection/components/q2-textarea/q2-textarea.js +1 -1
  105. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
  106. package/dist/components/index.js +0 -2
  107. package/dist/components/index.js.map +1 -1
  108. package/dist/components/q2-action-sheet.js +1 -1
  109. package/dist/components/q2-avatar2.js +1 -1
  110. package/dist/components/q2-calendar.js +2 -2
  111. package/dist/components/q2-calendar.js.map +1 -1
  112. package/dist/components/q2-carousel-pane.js +2 -2
  113. package/dist/components/q2-carousel.js +1 -1
  114. package/dist/components/q2-chart-area.js +1 -1
  115. package/dist/components/q2-chart-bar.js +1 -1
  116. package/dist/components/q2-chart-donut.js +1 -1
  117. package/dist/components/q2-checkbox-group.js +2 -2
  118. package/dist/components/q2-checkbox-group.js.map +1 -1
  119. package/dist/components/q2-checkbox2.js +2 -2
  120. package/dist/components/q2-checkbox2.js.map +1 -1
  121. package/dist/components/q2-currency.js +1 -1
  122. package/dist/components/q2-data-table.js +1 -1
  123. package/dist/components/q2-detail.js +1 -1
  124. package/dist/components/q2-dropdown.js +1 -1
  125. package/dist/components/q2-editable-field.js +1 -1
  126. package/dist/components/q2-input2.js +2 -2
  127. package/dist/components/q2-input2.js.map +1 -1
  128. package/dist/components/q2-item.js +1 -1
  129. package/dist/components/q2-legend2.js +1 -1
  130. package/dist/components/q2-list.js +1 -1
  131. package/dist/components/q2-loc.js +1 -1
  132. package/dist/components/q2-message2.js +1 -1
  133. package/dist/components/q2-month-picker.js +2 -2
  134. package/dist/components/q2-optgroup2.js +1 -1
  135. package/dist/components/q2-option-list2.js +1 -1
  136. package/dist/components/q2-option2.js +1 -1
  137. package/dist/components/q2-pagination.js +2 -2
  138. package/dist/components/q2-pill.js +1 -1
  139. package/dist/components/q2-popover2.js +73 -28
  140. package/dist/components/q2-popover2.js.map +1 -1
  141. package/dist/components/q2-radio-group.js +2 -2
  142. package/dist/components/q2-radio-group.js.map +1 -1
  143. package/dist/components/q2-radio.js +1 -1
  144. package/dist/components/q2-relative-time.js +1 -1
  145. package/dist/components/q2-section.js +2 -2
  146. package/dist/components/q2-select2.js +58 -10
  147. package/dist/components/q2-select2.js.map +1 -1
  148. package/dist/components/q2-stepper-pane.js +1 -1
  149. package/dist/components/q2-stepper-vertical.js +1 -1
  150. package/dist/components/q2-stepper.js +1 -1
  151. package/dist/components/q2-tab-container.js +1 -1
  152. package/dist/components/q2-tab-pane.js +1 -1
  153. package/dist/components/q2-tag.js +1 -1
  154. package/dist/components/q2-textarea.js +2 -2
  155. package/dist/components/q2-textarea.js.map +1 -1
  156. package/dist/components/tecton-tab-pane.js +2 -2
  157. package/dist/esm/click-elsewhere_2.entry.js +73 -28
  158. package/dist/esm/click-elsewhere_2.entry.js.map +1 -1
  159. package/dist/esm/{index-8582f46d.js → index-3184c760.js} +1 -1
  160. package/dist/esm/{index-8582f46d.js.map → index-3184c760.js.map} +1 -1
  161. package/dist/esm/loader.js +1 -1
  162. package/dist/esm/q2-action-sheet.entry.js +1 -1
  163. package/dist/esm/q2-avatar.entry.js +1 -1
  164. package/dist/esm/q2-calendar.entry.js +3 -3
  165. package/dist/esm/q2-calendar.entry.js.map +1 -1
  166. package/dist/esm/q2-carousel-pane.entry.js +2 -2
  167. package/dist/esm/q2-carousel.entry.js +1 -1
  168. package/dist/esm/q2-chart-area.entry.js +1 -1
  169. package/dist/esm/q2-chart-bar.entry.js +1 -1
  170. package/dist/esm/q2-chart-donut.entry.js +1 -1
  171. package/dist/esm/q2-checkbox-group.entry.js +2 -2
  172. package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
  173. package/dist/esm/q2-checkbox.entry.js +2 -2
  174. package/dist/esm/q2-checkbox.entry.js.map +1 -1
  175. package/dist/esm/q2-currency.entry.js +1 -1
  176. package/dist/esm/q2-data-table.entry.js +1 -1
  177. package/dist/esm/q2-detail.entry.js +1 -1
  178. package/dist/esm/q2-dropdown.entry.js +1 -1
  179. package/dist/esm/q2-editable-field.entry.js +1 -1
  180. package/dist/esm/q2-input.entry.js +2 -2
  181. package/dist/esm/q2-input.entry.js.map +1 -1
  182. package/dist/esm/q2-item.entry.js +1 -1
  183. package/dist/esm/q2-legend.entry.js +1 -1
  184. package/dist/esm/q2-list.entry.js +1 -1
  185. package/dist/esm/q2-loc.entry.js +1 -1
  186. package/dist/esm/q2-message.entry.js +1 -1
  187. package/dist/esm/q2-month-picker.entry.js +2 -2
  188. package/dist/esm/q2-optgroup.entry.js +1 -1
  189. package/dist/esm/q2-option-list.entry.js +1 -1
  190. package/dist/esm/q2-option.entry.js +1 -1
  191. package/dist/esm/q2-pagination.entry.js +2 -2
  192. package/dist/esm/q2-pill.entry.js +1 -1
  193. package/dist/esm/q2-radio-group.entry.js +2 -2
  194. package/dist/esm/q2-radio-group.entry.js.map +1 -1
  195. package/dist/esm/q2-radio.entry.js +1 -1
  196. package/dist/esm/q2-relative-time.entry.js +2 -2
  197. package/dist/esm/q2-section.entry.js +2 -2
  198. package/dist/esm/q2-select.entry.js +57 -9
  199. package/dist/esm/q2-select.entry.js.map +1 -1
  200. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  201. package/dist/esm/q2-stepper-vertical.entry.js +1 -1
  202. package/dist/esm/q2-stepper.entry.js +1 -1
  203. package/dist/esm/q2-tab-container.entry.js +1 -1
  204. package/dist/esm/q2-tab-pane.entry.js +1 -1
  205. package/dist/esm/q2-tag.entry.js +1 -1
  206. package/dist/esm/q2-tecton-elements.js +1 -1
  207. package/dist/esm/q2-textarea.entry.js +2 -2
  208. package/dist/esm/q2-textarea.entry.js.map +1 -1
  209. package/dist/esm/tecton-tab-pane.entry.js +2 -2
  210. package/dist/jest.setup.js +22 -0
  211. package/dist/jest.setup.js.map +1 -0
  212. package/dist/q2-tecton-elements/{p-7dafc5da.entry.js → p-044b8914.entry.js} +2 -2
  213. package/dist/q2-tecton-elements/{p-d35de465.entry.js → p-07f40176.entry.js} +2 -2
  214. package/dist/q2-tecton-elements/p-0a211fb4.entry.js +2 -0
  215. package/dist/q2-tecton-elements/p-0a211fb4.entry.js.map +1 -0
  216. package/dist/q2-tecton-elements/{p-e793a82c.entry.js → p-0d73466a.entry.js} +2 -2
  217. package/dist/q2-tecton-elements/{p-4008aceb.entry.js → p-11982614.entry.js} +2 -2
  218. package/dist/q2-tecton-elements/{p-35cc1039.entry.js → p-132005d2.entry.js} +2 -2
  219. package/dist/q2-tecton-elements/{p-fcffc029.entry.js → p-149044cd.entry.js} +2 -2
  220. package/dist/q2-tecton-elements/p-1a628982.entry.js +2 -0
  221. package/dist/q2-tecton-elements/p-1a628982.entry.js.map +1 -0
  222. package/dist/q2-tecton-elements/{p-828850c1.entry.js → p-1d824cdf.entry.js} +2 -2
  223. package/dist/q2-tecton-elements/p-25a0f807.entry.js +2 -0
  224. package/dist/q2-tecton-elements/p-25a0f807.entry.js.map +1 -0
  225. package/dist/q2-tecton-elements/{p-9b65cc28.entry.js → p-28b0de1c.entry.js} +2 -2
  226. package/dist/q2-tecton-elements/{p-ced89010.entry.js → p-3dff9fb0.entry.js} +2 -2
  227. package/dist/q2-tecton-elements/{p-d32f8e53.entry.js → p-432532fe.entry.js} +2 -2
  228. package/dist/q2-tecton-elements/{p-2d6a9a94.entry.js → p-46085a34.entry.js} +2 -2
  229. package/dist/q2-tecton-elements/{p-1b89b9c3.entry.js → p-4740e969.entry.js} +2 -2
  230. package/dist/q2-tecton-elements/{p-258f8c9c.entry.js → p-502af427.entry.js} +2 -2
  231. package/dist/q2-tecton-elements/{p-dfa489ba.entry.js → p-5214296a.entry.js} +2 -2
  232. package/dist/q2-tecton-elements/{p-32130845.entry.js → p-572805fc.entry.js} +2 -2
  233. package/dist/q2-tecton-elements/{p-6e313705.entry.js → p-644d5b2e.entry.js} +2 -2
  234. package/dist/q2-tecton-elements/{p-30d70f4a.entry.js → p-68276771.entry.js} +2 -2
  235. package/dist/q2-tecton-elements/{p-43236cac.entry.js → p-6af21a10.entry.js} +2 -2
  236. package/dist/q2-tecton-elements/{p-f57c4448.entry.js → p-6be0e333.entry.js} +2 -2
  237. package/dist/q2-tecton-elements/{p-400f6071.entry.js → p-77e6704d.entry.js} +2 -2
  238. package/dist/q2-tecton-elements/{p-400f6071.entry.js.map → p-77e6704d.entry.js.map} +1 -1
  239. package/dist/q2-tecton-elements/{p-9a5695db.entry.js → p-7deda459.entry.js} +2 -2
  240. package/dist/q2-tecton-elements/{p-3f665c56.entry.js → p-84fc61f5.entry.js} +2 -2
  241. package/dist/q2-tecton-elements/{p-d75e4752.entry.js → p-85a7b1ab.entry.js} +2 -2
  242. package/dist/q2-tecton-elements/{p-4f7e6e79.entry.js → p-8734e1cb.entry.js} +2 -2
  243. package/dist/q2-tecton-elements/{p-7cbb989e.entry.js → p-a2caa101.entry.js} +2 -2
  244. package/dist/q2-tecton-elements/{p-49ecdf18.entry.js → p-ca17f7ca.entry.js} +2 -2
  245. package/dist/q2-tecton-elements/{p-30296b0e.entry.js → p-cfabf5d1.entry.js} +2 -2
  246. package/dist/q2-tecton-elements/{p-0d6edd2a.entry.js → p-d5776227.entry.js} +2 -2
  247. package/dist/q2-tecton-elements/{p-56dd051a.entry.js → p-d5c182d8.entry.js} +2 -2
  248. package/dist/q2-tecton-elements/{p-bc73f69c.entry.js → p-d6c8d94d.entry.js} +2 -2
  249. package/dist/q2-tecton-elements/{p-861e83de.entry.js → p-de2f3111.entry.js} +2 -2
  250. package/dist/q2-tecton-elements/p-def9be7b.entry.js +2 -0
  251. package/dist/q2-tecton-elements/p-def9be7b.entry.js.map +1 -0
  252. package/dist/q2-tecton-elements/{p-aed969d4.entry.js → p-e654d2d6.entry.js} +2 -2
  253. package/dist/q2-tecton-elements/p-e786ba03.entry.js +2 -0
  254. package/dist/q2-tecton-elements/p-e786ba03.entry.js.map +1 -0
  255. package/dist/q2-tecton-elements/p-eb45704f.entry.js +2 -0
  256. package/dist/q2-tecton-elements/p-eb45704f.entry.js.map +1 -0
  257. package/dist/q2-tecton-elements/{p-b6bcef6a.js → p-f1e887f5.js} +1 -1
  258. package/dist/q2-tecton-elements/p-fe1f1ff4.entry.js +2 -0
  259. package/dist/q2-tecton-elements/p-fe1f1ff4.entry.js.map +1 -0
  260. package/dist/q2-tecton-elements/{p-4b47816d.entry.js → p-fe2fd83b.entry.js} +2 -2
  261. package/dist/q2-tecton-elements/{p-366a92d9.entry.js → p-ff39ba49.entry.js} +2 -2
  262. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  263. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  264. package/dist/test/elements/q2-calendar-test.e2e.js +2 -2
  265. package/dist/test/elements/q2-calendar-test.e2e.js.map +1 -1
  266. package/dist/test/elements/q2-dropdown-test.e2e.js +2 -14
  267. package/dist/test/elements/q2-dropdown-test.e2e.js.map +1 -1
  268. package/dist/test/elements/q2-pill-test.e2e.js +1 -1
  269. package/dist/test/elements/q2-pill-test.e2e.js.map +1 -1
  270. package/dist/test/elements/q2-popover-test.e2e.js +1 -34
  271. package/dist/test/elements/q2-popover-test.e2e.js.map +1 -1
  272. package/dist/test/elements/q2-popover-test.spec.js +750 -435
  273. package/dist/test/elements/q2-popover-test.spec.js.map +1 -1
  274. package/dist/test/elements/q2-relative-time-test.e2e.js.map +1 -1
  275. package/dist/test/elements/q2-select-test.e2e.js +1 -1
  276. package/dist/test/elements/q2-select-test.e2e.js.map +1 -1
  277. package/dist/test/elements/q2-select-test.spec.js +412 -0
  278. package/dist/test/elements/q2-select-test.spec.js.map +1 -0
  279. package/dist/test/elements/q2-tag-test.e2e.js +1 -1
  280. package/dist/test/elements/q2-tag-test.e2e.js.map +1 -1
  281. package/dist/types/builds/q2e/development/tecton/tecton/packages/q2-tecton-elements/.stencil/jest.setup.d.ts +1 -0
  282. package/dist/types/components/q2-action-sheet/q2-action-sheet.d.ts +60 -0
  283. package/dist/types/components/q2-calendar/q2-calendar.d.ts +324 -0
  284. package/dist/types/components/q2-carousel/q2-carousel.d.ts +2 -2
  285. package/dist/types/components/q2-data-table/q2-data-table.d.ts +223 -0
  286. package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +130 -0
  287. package/dist/types/components/q2-dropdown-item/q2-dropdown-item.d.ts +50 -0
  288. package/dist/types/components/q2-editable-field/q2-editable-field.d.ts +140 -0
  289. package/dist/types/components/q2-loading/skeleton/shapes.d.ts +1 -0
  290. package/dist/types/components/q2-optgroup/q2-optgroup.d.ts +1 -1
  291. package/dist/types/components/q2-option-list/q2-option-list.d.ts +99 -0
  292. package/dist/types/components/q2-pagination/q2-pagination.d.ts +60 -0
  293. package/dist/types/components/q2-pill/q2-pill.d.ts +102 -0
  294. package/dist/types/components/q2-popover/q2-popover.d.ts +5 -3
  295. package/dist/types/components/q2-select/q2-select.d.ts +239 -0
  296. package/dist/types/components/q2-stepper/q2-stepper.d.ts +52 -0
  297. package/dist/types/components/q2-stepper-vertical/q2-stepper-vertical.d.ts +62 -0
  298. package/dist/types/components/q2-tab-container/q2-tab-container.d.ts +2 -2
  299. package/dist/types/components/q2-tag/q2-tag.d.ts +59 -0
  300. package/dist/types/components.d.ts +0 -21
  301. package/dist/types/utils/action-sheet.d.ts +12 -0
  302. package/package.json +5 -5
  303. package/dist/cjs/q2-form.cjs.entry.js +0 -23
  304. package/dist/cjs/q2-form.cjs.entry.js.map +0 -1
  305. package/dist/collection/components/q2-form/q2-form.css +0 -92
  306. package/dist/collection/components/q2-form/q2-form.js +0 -44
  307. package/dist/collection/components/q2-form/q2-form.js.map +0 -1
  308. package/dist/components/q2-form.d.ts +0 -11
  309. package/dist/components/q2-form.js +0 -39
  310. package/dist/components/q2-form.js.map +0 -1
  311. package/dist/esm/q2-form.entry.js +0 -19
  312. package/dist/esm/q2-form.entry.js.map +0 -1
  313. package/dist/q2-tecton-elements/p-19da46dc.entry.js +0 -2
  314. package/dist/q2-tecton-elements/p-19da46dc.entry.js.map +0 -1
  315. package/dist/q2-tecton-elements/p-2878a662.entry.js +0 -2
  316. package/dist/q2-tecton-elements/p-2878a662.entry.js.map +0 -1
  317. package/dist/q2-tecton-elements/p-2a8de00d.entry.js +0 -2
  318. package/dist/q2-tecton-elements/p-2a8de00d.entry.js.map +0 -1
  319. package/dist/q2-tecton-elements/p-79696bef.entry.js +0 -2
  320. package/dist/q2-tecton-elements/p-79696bef.entry.js.map +0 -1
  321. package/dist/q2-tecton-elements/p-8a8d51f1.entry.js +0 -2
  322. package/dist/q2-tecton-elements/p-8a8d51f1.entry.js.map +0 -1
  323. package/dist/q2-tecton-elements/p-8e60bcaa.entry.js +0 -2
  324. package/dist/q2-tecton-elements/p-8e60bcaa.entry.js.map +0 -1
  325. package/dist/q2-tecton-elements/p-fde11d9c.entry.js +0 -2
  326. package/dist/q2-tecton-elements/p-fde11d9c.entry.js.map +0 -1
  327. package/dist/q2-tecton-elements/p-fec9edc8.entry.js +0 -2
  328. package/dist/q2-tecton-elements/p-fec9edc8.entry.js.map +0 -1
  329. package/dist/test/elements/q2-form-test.e2e.js +0 -93
  330. package/dist/test/elements/q2-form-test.e2e.js.map +0 -1
  331. package/dist/types/components/q2-form/q2-form.d.ts +0 -6
  332. /package/dist/q2-tecton-elements/{p-7dafc5da.entry.js.map → p-044b8914.entry.js.map} +0 -0
  333. /package/dist/q2-tecton-elements/{p-d35de465.entry.js.map → p-07f40176.entry.js.map} +0 -0
  334. /package/dist/q2-tecton-elements/{p-e793a82c.entry.js.map → p-0d73466a.entry.js.map} +0 -0
  335. /package/dist/q2-tecton-elements/{p-4008aceb.entry.js.map → p-11982614.entry.js.map} +0 -0
  336. /package/dist/q2-tecton-elements/{p-35cc1039.entry.js.map → p-132005d2.entry.js.map} +0 -0
  337. /package/dist/q2-tecton-elements/{p-fcffc029.entry.js.map → p-149044cd.entry.js.map} +0 -0
  338. /package/dist/q2-tecton-elements/{p-828850c1.entry.js.map → p-1d824cdf.entry.js.map} +0 -0
  339. /package/dist/q2-tecton-elements/{p-9b65cc28.entry.js.map → p-28b0de1c.entry.js.map} +0 -0
  340. /package/dist/q2-tecton-elements/{p-ced89010.entry.js.map → p-3dff9fb0.entry.js.map} +0 -0
  341. /package/dist/q2-tecton-elements/{p-d32f8e53.entry.js.map → p-432532fe.entry.js.map} +0 -0
  342. /package/dist/q2-tecton-elements/{p-2d6a9a94.entry.js.map → p-46085a34.entry.js.map} +0 -0
  343. /package/dist/q2-tecton-elements/{p-1b89b9c3.entry.js.map → p-4740e969.entry.js.map} +0 -0
  344. /package/dist/q2-tecton-elements/{p-258f8c9c.entry.js.map → p-502af427.entry.js.map} +0 -0
  345. /package/dist/q2-tecton-elements/{p-dfa489ba.entry.js.map → p-5214296a.entry.js.map} +0 -0
  346. /package/dist/q2-tecton-elements/{p-32130845.entry.js.map → p-572805fc.entry.js.map} +0 -0
  347. /package/dist/q2-tecton-elements/{p-6e313705.entry.js.map → p-644d5b2e.entry.js.map} +0 -0
  348. /package/dist/q2-tecton-elements/{p-30d70f4a.entry.js.map → p-68276771.entry.js.map} +0 -0
  349. /package/dist/q2-tecton-elements/{p-43236cac.entry.js.map → p-6af21a10.entry.js.map} +0 -0
  350. /package/dist/q2-tecton-elements/{p-f57c4448.entry.js.map → p-6be0e333.entry.js.map} +0 -0
  351. /package/dist/q2-tecton-elements/{p-9a5695db.entry.js.map → p-7deda459.entry.js.map} +0 -0
  352. /package/dist/q2-tecton-elements/{p-3f665c56.entry.js.map → p-84fc61f5.entry.js.map} +0 -0
  353. /package/dist/q2-tecton-elements/{p-d75e4752.entry.js.map → p-85a7b1ab.entry.js.map} +0 -0
  354. /package/dist/q2-tecton-elements/{p-4f7e6e79.entry.js.map → p-8734e1cb.entry.js.map} +0 -0
  355. /package/dist/q2-tecton-elements/{p-7cbb989e.entry.js.map → p-a2caa101.entry.js.map} +0 -0
  356. /package/dist/q2-tecton-elements/{p-49ecdf18.entry.js.map → p-ca17f7ca.entry.js.map} +0 -0
  357. /package/dist/q2-tecton-elements/{p-30296b0e.entry.js.map → p-cfabf5d1.entry.js.map} +0 -0
  358. /package/dist/q2-tecton-elements/{p-0d6edd2a.entry.js.map → p-d5776227.entry.js.map} +0 -0
  359. /package/dist/q2-tecton-elements/{p-56dd051a.entry.js.map → p-d5c182d8.entry.js.map} +0 -0
  360. /package/dist/q2-tecton-elements/{p-bc73f69c.entry.js.map → p-d6c8d94d.entry.js.map} +0 -0
  361. /package/dist/q2-tecton-elements/{p-861e83de.entry.js.map → p-de2f3111.entry.js.map} +0 -0
  362. /package/dist/q2-tecton-elements/{p-aed969d4.entry.js.map → p-e654d2d6.entry.js.map} +0 -0
  363. /package/dist/q2-tecton-elements/{p-b6bcef6a.js.map → p-f1e887f5.js.map} +0 -0
  364. /package/dist/q2-tecton-elements/{p-4b47816d.entry.js.map → p-fe2fd83b.entry.js.map} +0 -0
  365. /package/dist/q2-tecton-elements/{p-366a92d9.entry.js.map → p-ff39ba49.entry.js.map} +0 -0
  366. /package/dist/types/{workspace/workspace/on-production_release_1.48.0-pre → builds/q2e/development/tecton/tecton}/packages/q2-tecton-elements/.stencil/test/elements/q2-detail/slot-component.d.ts +0 -0
  367. /package/dist/types/{workspace/workspace/on-production_release_1.48.0-pre → builds/q2e/development/tecton/tecton}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +0 -0
@@ -107,7 +107,7 @@ const Q2Item = class {
107
107
  // #region Render methods
108
108
  render() {
109
109
  const { clickable } = this;
110
- return (index.h("div", { key: '15663fca18a49a00d09c42acad45642691b23480', "test-id": "itemContainer", class: this.itemClasses, ref: el => (this.itemElement = el), role: clickable ? 'button' : undefined, tabIndex: clickable ? 0 : undefined }, this.hasBulletSlotContent && (index.h("div", { key: 'efe2ef2a8746e4cc4c06501d9ed4bdc7686746d1', class: this.bulletClasses }, index.h("slot", { key: '94c0d433073704018831a3d38735117830a26221', name: "bullet" }))), index.h("div", { key: 'c4860f9929d6e0a8ed8034bdd748c10689df68da', class: this.mainClasses }, this.hasHeaderSlotContent && (index.h("div", { key: 'b9119afb497965ea8b3f709404a4183045656081', class: "header" }, index.h("slot", { key: '0d85755369ff21ef1ae6def940cca219e254f424', name: "header" }))), this.hasBodySlotContent && (index.h("div", { key: '8514bc7a25b25b8d8d7c62f780c8bf876a241dcd', class: "body" }, index.h("slot", { key: 'ae2be69dc36f50e9fe765dec9748436f75a27206', name: "body" })))), this.hasActionSlotContent && (index.h("div", { key: '796b1f0aa2956c6794a3f8e4c628a3a403864177', class: this.actionClasses }, index.h("slot", { key: '637373b0e55b5819f3dbf1e21fe7847660ed2184', name: "action" }))), this.hasFooterSlotContent && (index.h("div", { key: 'e6ed0072a2906675ea3ce83edb7b3185a93b3e04', class: this.footerClasses }, index.h("slot", { key: 'db5d606d84d61c217ef5d97d756fe38f0044200a', name: "footer" })))));
110
+ return (index.h("div", { key: 'f69b991449d96d104dc6c43b11e10df54a1527e7', "test-id": "itemContainer", class: this.itemClasses, ref: el => (this.itemElement = el), role: clickable ? 'button' : undefined, tabIndex: clickable ? 0 : undefined }, this.hasBulletSlotContent && (index.h("div", { key: 'baddf236e22f36ce876f58e782f22e01e60c13db', class: this.bulletClasses }, index.h("slot", { key: '279c943ce1fd95f7257680e79ea6d043540fba1a', name: "bullet" }))), index.h("div", { key: '8d6e754680517434dda6b268865a0c8c5f3294ec', class: this.mainClasses }, this.hasHeaderSlotContent && (index.h("div", { key: '6e3cfb19fb9fecae91525e065e3b99cfcd90b969', class: "header" }, index.h("slot", { key: '367c35a42e95350f5c606f3dab3738dbc7aa2287', name: "header" }))), this.hasBodySlotContent && (index.h("div", { key: '6f155f0d3e4b06748dd4e130999be571df96d8f9', class: "body" }, index.h("slot", { key: 'c8158b2d6b8c5877756404dafe8421b3754f992a', name: "body" })))), this.hasActionSlotContent && (index.h("div", { key: '3d9f72340d671442e25f2cd9c7cbe8ad9695b386', class: this.actionClasses }, index.h("slot", { key: 'c0e49f50574786b679531f7228a8126289da0cc5', name: "action" }))), this.hasFooterSlotContent && (index.h("div", { key: 'c2bae2908f4c70d9fc11805176a27c23e2c3f3b9', class: this.footerClasses }, index.h("slot", { key: '3fdcf609c8729acc45549fca09ad090ad4f009a7', name: "footer" })))));
111
111
  }
112
112
  get hostElement() { return index.getElement(this); }
113
113
  };
@@ -104,7 +104,7 @@ const Q2Legend = class {
104
104
  // #endregion
105
105
  // #region Render methods
106
106
  render() {
107
- return (index.h("click-elsewhere", { key: '69ffafe23460f7a65f034d5369cb9d77bb379868', onChange: () => this.onClickElsewhere(this) }, index.h("ul", { key: 'd9fd700ec042ca39e9d3316145fb1137e4051a31' }, this.dataWithClasses.map(item => (index.h("li", { class: "item" }, index.h("button", { "test-id": "item", "aria-label": `${item.name} ${this.formatValue(item.value)}`, class: item.classes, onClick: event => this.onClick(event, item), onMouseEnter: event => this.onMouseEnter(event, item), onMouseLeave: event => this.onMouseLeave(event, item) }, index.h("span", { "test-id": "itemColor", class: "item-color-indicator", style: { backgroundColor: item.color }, "aria-hidden": "true" }), index.h("span", { "test-id": "itemName", class: "item-name" }, item.name), index.h("span", { id: `item-${item.id}`, "test-id": "itemValue", class: "item-value" }, this.formatValue(item.value)))))))));
107
+ return (index.h("click-elsewhere", { key: 'd55155e36588eddb86941a8a85c68fd04c880ac1', onChange: () => this.onClickElsewhere(this) }, index.h("ul", { key: '25c948213b4d6645741ef22e013149ee63a19e21' }, this.dataWithClasses.map(item => (index.h("li", { class: "item" }, index.h("button", { "test-id": "item", "aria-label": `${item.name} ${this.formatValue(item.value)}`, class: item.classes, onClick: event => this.onClick(event, item), onMouseEnter: event => this.onMouseEnter(event, item), onMouseLeave: event => this.onMouseLeave(event, item) }, index.h("span", { "test-id": "itemColor", class: "item-color-indicator", style: { backgroundColor: item.color }, "aria-hidden": "true" }), index.h("span", { "test-id": "itemName", class: "item-name" }, item.name), index.h("span", { id: `item-${item.id}`, "test-id": "itemValue", class: "item-value" }, this.formatValue(item.value)))))))));
108
108
  }
109
109
  static get watchers() { return {
110
110
  "hoveredItemId": ["watchHoveredItemId"],
@@ -73,7 +73,7 @@ const Q2List = class {
73
73
  // #endregion
74
74
  // #region Render methods
75
75
  render() {
76
- return (index.h("div", { key: '03d62cc3436abd29994c02efef17db29f3043371', class: this.listClasses, ref: el => (this.listElement = el) }, (this.hasFilterSlot || this.hasLabelContent) && (index.h("div", { key: '62aa472c52425d9bd8474c9927ff1f018a94f588', class: this.headerClasses }, index.h("div", { key: 'a288af4640d75ae48443d390bd5a5b591f61732a', class: "label" }, this.label), this.hasFilterSlot && index.h("slot", { key: '44a788d43c1390890b6c1e1bce642fc9d252e517', name: "filter" }))), index.h("div", { key: '6dff69032b9f6b6d5cc9ed2e032a757a9690dc9d', role: "list" }, index.h("slot", { key: 'd1ae622b365cf5f071ea6b2ed1df6c700a977a64' }))));
76
+ return (index.h("div", { key: '4c5bdc8bf48c1f1dcbdada246bd021cfb4d52696', class: this.listClasses, ref: el => (this.listElement = el) }, (this.hasFilterSlot || this.hasLabelContent) && (index.h("div", { key: '691bf182d8abf74b9469d96969ae4a975df68f87', class: this.headerClasses }, index.h("div", { key: '1a3a06cdfe9445b4bf7b4f77c41b47ccc61b64a4', class: "label" }, this.label), this.hasFilterSlot && index.h("slot", { key: '9b7c05d747434e4cf24d123158edcb54517a2040', name: "filter" }))), index.h("div", { key: 'c7ba0cc52b865093eca667ed9003d52ebfa12f64', role: "list" }, index.h("slot", { key: '1b64bc65aca20e41fd50543df9b1217716a3becd' }))));
77
77
  }
78
78
  get hostElement() { return index.getElement(this); }
79
79
  };
@@ -15,7 +15,7 @@ const Q2Loc = class {
15
15
  this.value = undefined;
16
16
  }
17
17
  render() {
18
- return index.h("span", { key: 'e7e33263161d55ee672b136957687f7c4efba94e' }, index$1.loc(this.value, this.substitutions));
18
+ return index.h("span", { key: 'a983e0108524632f36c67d59ca55046889e959a1' }, index$1.loc(this.value, this.substitutions));
19
19
  }
20
20
  };
21
21
  Q2Loc.style = Q2LocStyle0;
@@ -45,7 +45,7 @@ const Q2Message = class {
45
45
  const addDivForAriaLive = !isFirefox && this.presentToggle;
46
46
  const { description } = this;
47
47
  const messageLabel = index$1.loc(`tecton.element.message.type.${this.type ? this.type : 'info'}`);
48
- return (index.h("div", { key: 'e733984931d1a0b29f9a4fa9b8ad959b4814e6e1', tabindex: "-1", class: "message", role: description ? undefined : 'alert', "aria-live": description ? undefined : 'assertive', "aria-atomic": description ? undefined : 'true', "aria-relevant": description && addAriaHiddenForAriaLive ? undefined : 'all', "test-id": "messageContainer" }, this.appearance === 'standard' ? this.messageIcon(this.type) : '', addDivForAriaLive && index.h("div", { key: 'dd2c61b98c765148c351890975196facac5b5812', class: "sr" }), index.h("div", { key: 'cacf7152fc0e80ec76d24bec492d2826015f058b', class: "sr message-label" }, messageLabel), index.h("div", { key: '346f2b6a286682bc6da14794796de9beb4a3bcfa', class: "message-content", "aria-hidden": addAriaHiddenForAriaLive ? 'true' : undefined }, index.h("slot", { key: 'b51e48efb416326b0bb539a1e051be1897bcc580' }))));
48
+ return (index.h("div", { key: '7803d7b21356ca0c70883387b8add4a6babd192c', tabindex: "-1", class: "message", role: description ? undefined : 'alert', "aria-live": description ? undefined : 'assertive', "aria-atomic": description ? undefined : 'true', "aria-relevant": description && addAriaHiddenForAriaLive ? undefined : 'all', "test-id": "messageContainer" }, this.appearance === 'standard' ? this.messageIcon(this.type) : '', addDivForAriaLive && index.h("div", { key: '18bc8892294dc16d5668a2c10b80e2b3c21bf94c', class: "sr" }), index.h("div", { key: '00c9adcd0ce6a0021baf03041443a12d3673908a', class: "sr message-label" }, messageLabel), index.h("div", { key: '6d697ed20f5ceef552d819f2b22212ee750f06a6', class: "message-content", "aria-hidden": addAriaHiddenForAriaLive ? 'true' : undefined }, index.h("slot", { key: '789fd82fdd39c79b1ca48f3e353c7ebd3abe82b7' }))));
49
49
  }
50
50
  messageIcon(type) {
51
51
  const iconMap = {
@@ -138,10 +138,10 @@ const Q2MonthPicker = class {
138
138
  index$1.overrideFocus(this.hostElement);
139
139
  }
140
140
  render() {
141
- return (index.h("div", { key: '9a58edaff34f92a675f9df129f843c21cb0d271d', class: "month-container", onKeyDown: this.onMonthKeydown }, index.h("div", { key: '0903f95ddacd18a43ca7219bc4cf610dd6386304', class: "navigation" }, index.h("q2-btn", { key: '54df6360507c598ab40592eb63e2412e8f571fb3', class: "year-btn", onClick: () => this.viewChange.emit({
141
+ return (index.h("div", { key: '39600ab8497f7c9763dbed6308cd2377168bdb63', class: "month-container", onKeyDown: this.onMonthKeydown }, index.h("div", { key: 'd250c850de8a4e501a7136e32b72d55c81c95b39', class: "navigation" }, index.h("q2-btn", { key: '36caef4e3cde69d0666cedc50014604d17d8b450', class: "year-btn", onClick: () => this.viewChange.emit({
142
142
  view: 'year',
143
143
  selectedYear: this.year,
144
- }) }, index.h("span", { key: 'bbb1a38a4e5a7a22a449700d2b9cb1ceadf52c29', class: "year" }, this.year), index.h("q2-icon", { key: 'eeccf64f25a569491e1a02f248e160e9ff8e769b', class: "year-icon off", type: "chevron-down" })), index.h("div", { key: 'de47dff959e5f3459c716e2f5d54aa911007e97e', class: "month-controller" }, index.h("div", { key: '5f8fcd7cce3a14e3f4edb0b060ba72d429a44cea', class: "cal-year-prev-next" }, index.h("q2-btn", { key: '18482f30f6905d858f59f00a073622b3fe40d45c', label: index$1.loc('tecton.element.calendar.previousYear'), "hide-label": true, class: "cal-nav-btn prev-year", "test-id": "previousYearButton", onClick: () => this.selectYear(this.year - 1) }, index.h("q2-icon", { key: '5daeea35c3a1af290bc65468f3f423b4765eb624', type: "arrow-left" })), index.h("q2-btn", { key: 'a2ea40ba55c61c7a80e50fc205e12940f40dd3e8', label: index$1.loc('tecton.element.calendar.nextYear'), "hide-label": true, class: "cal-nav-btn next-year", "test-id": "nextYearButton", onClick: () => this.selectYear(this.year + 1) }, index.h("q2-icon", { key: '05df41c89607c8efa7d645108c0ac6101a35f114', type: "arrow-right" }))))), index.h("div", { key: 'd46cba38180a70b7f1468fa34bafd6c04c5dd487', class: "month-list", onClick: this.onMonthSelection }, this.months.map((month, index$1) => (index.h("div", { class: "month" }, index.h("span", { role: "button", class: "month-button", "data-index": index$1, "aria-label": month.label, tabindex: index$1 === this.focusedIndex ? 0 : -1 }, month.abbr))))), this.today && (index.h("div", { key: '24a1512f07d15a78ca900e6e5625fed2eda76ab7', class: "today-label" }, index$1.loc('tecton.element.calendar.today'), ": ", this.today))));
144
+ }) }, index.h("span", { key: '2ba93fdffa23e3d6749206562cba9ac95e1b0654', class: "year" }, this.year), index.h("q2-icon", { key: 'b510bccf4b540e745dc00f05715c2cdd51e7b784', class: "year-icon off", type: "chevron-down" })), index.h("div", { key: '34f887c634adbd14b864efa5e6aede7548092690', class: "month-controller" }, index.h("div", { key: '9cda711f14d714201bf1c41f3568cda25fb213f4', class: "cal-year-prev-next" }, index.h("q2-btn", { key: '2c5a3b53cc659ea1829f65811d253f66ca98d7f7', label: index$1.loc('tecton.element.calendar.previousYear'), "hide-label": true, class: "cal-nav-btn prev-year", "test-id": "previousYearButton", onClick: () => this.selectYear(this.year - 1) }, index.h("q2-icon", { key: '59105784727939d1683292686c7e4ad240e584bd', type: "arrow-left" })), index.h("q2-btn", { key: '8177788039df074a5dd64b158b78dd99dfca283b', label: index$1.loc('tecton.element.calendar.nextYear'), "hide-label": true, class: "cal-nav-btn next-year", "test-id": "nextYearButton", onClick: () => this.selectYear(this.year + 1) }, index.h("q2-icon", { key: '744017aa8f2b90d5b1e4ad41583fd61e290dfe78', type: "arrow-right" }))))), index.h("div", { key: 'd2d1223744da022129a5895def3608ff2680dd9d', class: "month-list", onClick: this.onMonthSelection }, this.months.map((month, index$1) => (index.h("div", { class: "month" }, index.h("span", { role: "button", class: "month-button", "data-index": index$1, "aria-label": month.label, tabindex: index$1 === this.focusedIndex ? 0 : -1 }, month.abbr))))), this.today && (index.h("div", { key: '43e728ceda906af8a418f7c47a5e6214dacbdcf1', class: "today-label" }, index$1.loc('tecton.element.calendar.today'), ": ", this.today))));
145
145
  }
146
146
  get hostElement() { return index.getElement(this); }
147
147
  };
@@ -45,7 +45,7 @@ const Q2Optgroup = class {
45
45
  });
46
46
  }
47
47
  render() {
48
- return (index.h("div", { key: 'b8965c37e06ab4982edb4caa426806cf8485ce53', class: "q2-optgroup-container", hidden: this.hidden, "aria-labelledby": this.headerId, role: "group" }, index.h("div", { key: '85968a9f908e48d9529f4a1008b699e62aa0efb6', class: "q2-optgroup-header", id: this.headerId }, (this.label && index$1.loc(this.label)) || ''), index.h("div", { key: 'e38bc428fd9391c5be43688e8d352ae1639b6b5e', class: "q2-optgroup-options" }, index.h("slot", { key: '34ade8fcca59370ae20efc44678cadd417ceb3c7' }))));
48
+ return (index.h("div", { key: '7296e98c4ba1bf5b7d43a7a41bd71674b6a29786', class: "q2-optgroup-container", hidden: this.hidden, "aria-labelledby": this.headerId, role: "group" }, index.h("div", { key: '9f6acc6efc59b09550b809b2a47b2e8680ba8857', class: "q2-optgroup-header", id: this.headerId }, (this.label && index$1.loc(this.label)) || ''), index.h("div", { key: 'b2b13e828cf5974f021047dc08006d389518c7bc', class: "q2-optgroup-options" }, index.h("slot", { key: 'e0eb0eb5889abb67a65c514a4fd8054625fa3901' }))));
49
49
  }
50
50
  get hostElement() { return index.getElement(this); }
51
51
  static get watchers() { return {
@@ -539,7 +539,7 @@ const Q2OptionList = class {
539
539
  }
540
540
  /// DOM ///
541
541
  render() {
542
- return (index.h(index.Host, { key: '2a470de268f16262aa675475fd2425bd50b4edad' }, index.h("div", { key: '549deb2fbe009ea6cef0444a4867710b4ad1abf6', class: "content", ref: el => (this.contentElement = el), onFocusout: this.focusoutHandler }, index.h("div", { key: '0f5857df5db8f073ef28e2a6760d6d798ab3d1fd', class: "options", "aria-label": index$1.loc('tecton.element.optionList.label', [this.label]), "aria-multiselectable": `${!!this.multiple}`, role: this.type || 'listbox', onKeyDown: this.internalKeydownHandler, onClick: this.clickHandler }, index.h("slot", { key: 'cbee273a92302a2b8c9302d65444534a6c04b42f' })))));
542
+ return (index.h(index.Host, { key: '38a759a0589e0f90af160e0c5cd2bd21e29a44f1' }, index.h("div", { key: '0090c64f7fc14feb4dfece413f571da46417b40d', class: "content", ref: el => (this.contentElement = el), onFocusout: this.focusoutHandler }, index.h("div", { key: '90a3fdd55f2a0823ee5b0654a25bb1c80278091e', class: "options", "aria-label": index$1.loc('tecton.element.optionList.label', [this.label]), "aria-multiselectable": `${!!this.multiple}`, role: this.type || 'listbox', onKeyDown: this.internalKeydownHandler, onClick: this.clickHandler }, index.h("slot", { key: 'de7bc5452f74aeed9c0c45f1228defbeef6a7bba' })))));
543
543
  }
544
544
  get hostElement() { return index.getElement(this); }
545
545
  static get watchers() { return {
@@ -60,7 +60,7 @@ const Q2Option = class {
60
60
  render() {
61
61
  const { disabled, disabledGroup, selected, _multiSelectHidden } = this;
62
62
  const isDisabled = disabled || disabledGroup;
63
- return (index.h(index.Host, { key: 'd599e64ff4a1bac697748b0e7a16e8e7affbf183', tabindex: "-1", "aria-disabled": isDisabled ? 'true' : undefined, "aria-selected": `${!!selected}`, "aria-hidden": _multiSelectHidden ? 'true' : undefined, display: this.display }, this.selected && index.h("q2-icon", { key: 'fef1b2ef83c5688cbefdaf45d4333019504b8fc8', type: "checkmark" }), index.h("div", { key: '099582624892111f8b2e76075380b734ea30e799', class: "content" }, index.h("slot", { key: '69ef106032c733081d9d382e1277072431d86826' }))));
63
+ return (index.h(index.Host, { key: 'f151dcc4f6c384ed57f161201e4f47130c9352bf', tabindex: "-1", "aria-disabled": isDisabled ? 'true' : undefined, "aria-selected": `${!!selected}`, "aria-hidden": _multiSelectHidden ? 'true' : undefined, display: this.display }, this.selected && index.h("q2-icon", { key: '999146b64cc2827794339665aa3d4a91468bb07f', type: "checkmark" }), index.h("div", { key: '8fe4f1e3d064ce8b2b0c834ba3b2a5896a8f3d66', class: "content" }, index.h("slot", { key: '4c95a66a6b32b5b388a69fd235febcefda232772' }))));
64
64
  }
65
65
  get hostElement() { return index.getElement(this); }
66
66
  };
@@ -179,7 +179,7 @@ const Q2Pagination = class {
179
179
  total,
180
180
  });
181
181
  }
182
- return (index.h("nav", { key: 'eb5ae2f034170459a8a9e55ed8319eec524e00d9', class: "container", ref: el => (this.containerElement = el), "aria-label": index$1.loc('tecton.element.pagination.title') }, index.h("div", { key: '8a2fd2b864d1781d52002e14551f7535ab69c382', class: "description", "test-id": "description" }, pagesOnly
182
+ return (index.h("nav", { key: '492ad7b6180eec733d0a21266b4f21b5f032e1a7', class: "container", ref: el => (this.containerElement = el), "aria-label": index$1.loc('tecton.element.pagination.title') }, index.h("div", { key: '30c1287dccf3a2da6a32f17529075e4ce07ec3ed', class: "description", "test-id": "description" }, pagesOnly
183
183
  ? index$1.loc('tecton.element.pagination.pages', {
184
184
  current: page,
185
185
  total: totalPages,
@@ -188,7 +188,7 @@ const Q2Pagination = class {
188
188
  range: currentRange,
189
189
  recordType: recordType.toLowerCase(),
190
190
  total: total.toLocaleString(),
191
- })), index.h("div", { key: '05266028eca03d46f3a1819bd6a8a070abfb3041', class: "btn-group" }, index.h("q2-btn", { key: '1ac49814e049309efe1a7b78e2dd244faa1199f0', label: index$1.loc('tecton.element.pagination.goToFirstPage'), disabled: onFirstPage, hidden: isFullViewHidden, onClick: () => this.handlePageChange(1), "test-id": "firstPageBtn", "hide-label": true }, index.h("q2-icon", { key: '938f0fb35c70c9795da1b27d07e3af4c6d9c7139', type: "chevron-double-left" })), index.h("q2-btn", { key: '52fbe1e8b33eed594b085a9cddfd3bf307ae6357', label: prevButtonLabel, disabled: onFirstPage, onClick: () => this.handlePageChange(page - 1), "test-id": "prevPageBtn", "hide-label": true }, index.h("q2-icon", { key: '8f032b0f98c409c54d39fda98dd79ae57cf1b9e8', type: "chevron-left" }))), index.h("div", { key: '330475f9f4e0d1a299146e5036183b79a7166f9e', class: "controls", hidden: isFullViewHidden, "test-id": "controls" }, index.h("span", { key: '1990bfc109c5d8d1600428a4c599cb8740188475', "aria-hidden": "true" }, index$1.loc('tecton.element.pagination.page')), index.h("div", { key: '3d9283ef551b4ece77e8087419a6f781ad18ff42', class: "input-wrapper", onClick: () => this.inputField.dispatchEvent(new FocusEvent('focus')) }, index.h("q2-input", { key: 'de9b80971137a1a00be8725fb2fbc82b066c627b', type: "number", value: `${page}`, min: 1, max: this.totalPages, hideLabel: true, optional: true, label: `${index$1.loc('tecton.element.pagination.page')} (${index$1.loc('tecton.element.pagination.ofPages', [totalPages.toLocaleString()])})`, onChange: event => this.handlePageChange(event.detail.value), "test-id": "pageInput", current: "page", ref: el => (this.inputField = el) })), index.h("span", { key: 'cad1410f606909ed08cd777749cd96350a0bd399', "aria-hidden": "true" }, index$1.loc('tecton.element.pagination.ofPages', [totalPages.toLocaleString()]))), index.h("div", { key: 'ce9f8dbbabc33ae3378010436c18c732a19fad79', class: "btn-group" }, index.h("q2-btn", { key: '0bc9878a7c58fead916e1a42b21aa9bb83454c30', label: nextButtonLabel, disabled: onLastPage, onClick: () => this.handlePageChange(page + 1), "test-id": "nextPageBtn", "hide-label": true }, index.h("q2-icon", { key: '27aec5617e575319127d4623769674fffab16290', type: "chevron-right" })), index.h("q2-btn", { key: '323affc87fea734ddf09aaafabd5ce6d34604b16', label: "tecton.element.pagination.goToLastPage", disabled: onLastPage, hidden: isFullViewHidden, onClick: () => this.handlePageChange(totalPages), "test-id": "lastPageBtn", "hide-label": true }, index.h("q2-icon", { key: 'cf951c67f49f8bed81e6c034fc6dabb33f3245ff', type: "chevron-double-right" }))), index.h("div", { key: 'e6d9edb327eb879d236dae0233320c0d2baac501', class: "per-page", hidden: isFullViewHidden || !((_a = this.perPageIncrements) === null || _a === void 0 ? void 0 : _a.length) }, this.renderPerPage())));
191
+ })), index.h("div", { key: '1e255884140a5fbb7ba51cb8046727ab8cb602a5', class: "btn-group" }, index.h("q2-btn", { key: '48fc8c61b04e0005b98cbffbc3320e4dd4f0855e', label: index$1.loc('tecton.element.pagination.goToFirstPage'), disabled: onFirstPage, hidden: isFullViewHidden, onClick: () => this.handlePageChange(1), "test-id": "firstPageBtn", "hide-label": true }, index.h("q2-icon", { key: '9c454decc6feadc6bbd3f21044c7bebd46d5a55a', type: "chevron-double-left" })), index.h("q2-btn", { key: '9214aee00653c2417a284292c5df431bcf9cdceb', label: prevButtonLabel, disabled: onFirstPage, onClick: () => this.handlePageChange(page - 1), "test-id": "prevPageBtn", "hide-label": true }, index.h("q2-icon", { key: '9761ca7c383a5ece9582fb07b30f0fb70eceba17', type: "chevron-left" }))), index.h("div", { key: 'd0749351d1ac3d1193a05a0f4b6f55860f98a220', class: "controls", hidden: isFullViewHidden, "test-id": "controls" }, index.h("span", { key: '2a160fdc5453904fcfb330b95ae548ab2df2a06a', "aria-hidden": "true" }, index$1.loc('tecton.element.pagination.page')), index.h("div", { key: '250476d5c0e4e4bb90065764c4e27bb49bf79076', class: "input-wrapper", onClick: () => this.inputField.dispatchEvent(new FocusEvent('focus')) }, index.h("q2-input", { key: '079e89b7938ae91ebf690d42a9ea0a6191decadc', type: "number", value: `${page}`, min: 1, max: this.totalPages, hideLabel: true, optional: true, label: `${index$1.loc('tecton.element.pagination.page')} (${index$1.loc('tecton.element.pagination.ofPages', [totalPages.toLocaleString()])})`, onChange: event => this.handlePageChange(event.detail.value), "test-id": "pageInput", current: "page", ref: el => (this.inputField = el) })), index.h("span", { key: 'f943840d83883da0908eed6cad0b0bbeeccee0a2', "aria-hidden": "true" }, index$1.loc('tecton.element.pagination.ofPages', [totalPages.toLocaleString()]))), index.h("div", { key: '8aa10edcf80ce32fb0252c133f28304cfbb0ccc9', class: "btn-group" }, index.h("q2-btn", { key: '2b97474ae891322efd074dae86881b09dac6eb62', label: nextButtonLabel, disabled: onLastPage, onClick: () => this.handlePageChange(page + 1), "test-id": "nextPageBtn", "hide-label": true }, index.h("q2-icon", { key: '47b3882a0c232fbe6737e8633adf8f4a0ad27b8d', type: "chevron-right" })), index.h("q2-btn", { key: '40604303f9479091821ee3390681d22c3d4507d0', label: "tecton.element.pagination.goToLastPage", disabled: onLastPage, hidden: isFullViewHidden, onClick: () => this.handlePageChange(totalPages), "test-id": "lastPageBtn", "hide-label": true }, index.h("q2-icon", { key: 'ecf929fe7b18bcd19c7e9045c82245d8c4764251', type: "chevron-double-right" }))), index.h("div", { key: '30c078a5b0224753dd5daaf0f83ca7efbe5fbaec', class: "per-page", hidden: isFullViewHidden || !((_a = this.perPageIncrements) === null || _a === void 0 ? void 0 : _a.length) }, this.renderPerPage())));
192
192
  }
193
193
  get hostElement() { return index.getElement(this); }
194
194
  static get watchers() { return {
@@ -264,7 +264,7 @@ const Q2Pill = class {
264
264
  wrapperClassNames.push('has-icon');
265
265
  if (optionCount)
266
266
  wrapperClassNames.push('has-options');
267
- return (index.h("click-elsewhere", { key: 'f5bdb5a03edf9a51c98e96501252bdcfd6d381c8', onChange: this.onClickElsewhere }, index.h("div", { key: '8ba85c9fe953b029a6c163ab848b32b64e22e723', class: wrapperClassNames.join(' ') }, index.h("div", { key: 'cfb9465fc470956de4bcde213db63a2e96438006', class: "btn-height-wrapper", ref: el => (this.primaryBtnWrapper = el), onClick: this.handleWrapperClick, tabIndex: -1 }, index.h("button", { key: 'dbf923d8bdf4b84116f61ebbbd0519c4fe6df222', class: "btn-primary", "test-id": "btn-control", type: "button", role: (optionCount && 'combobox') || undefined, ref: el => (this.primaryBtn = el), onClick: this.handleClick, onKeyDown: this.handleKeydown, onFocusout: this.handleButtonFocusout, disabled: this.disabled, "aria-roledescription": !optionCount && 'filter', "aria-controls": (optionCount && 'option-list') || undefined, "aria-expanded": (optionCount && `${!!open}`) || undefined, "aria-label": this.buttonContent, "aria-describedby": (optionCount && 'option-description') || undefined }, this.truncatedButtonContent, !optionCount && active && index.h("span", { key: '973751830801c9da9bf316a0fc90b85d4c9dba0a', class: "sr" }, "(", index$1.loc('tecton.element.pill.active'), ")"))), this.generateIcon(), this.generateHiddenElement()), this.optionCount > 0 && (index.h("q2-popover", { key: 'a1286fe6dad6546d8f8573616a3c515ae2098d15', ref: el => (this.popoverElement = el), controlElement: this.primaryBtn, open: this.open, minHeight: this.popoverMinHeight, direction: this.popoverDirection, align: this.popoverAlignment }, index.h("q2-option-list", { key: '9e12ba61e5171c4f7269196f19d9a693fbd25523', type: "listbox", ref: el => (this.optionList = el), id: "option-list", onChange: this.handleChange, multiple: this.multiple, selectedOptions: this.selectedOptions, onReady: () => this.updateSelectedOptionElements(), label: index$1.loc('tecton.element.optionList.label', [this.optionListLabel]) }, index.h("slot", { key: 'c715c3f42233416bb59554630e3f5ef831a94f62' }))))));
267
+ return (index.h("click-elsewhere", { key: 'ca6bd41d2351dc05ba4e0ed87b69e335a11a4fe3', onChange: this.onClickElsewhere }, index.h("div", { key: 'cd9186c0d5f5b32f19f9221a7ba7f495c4a5a3fd', class: wrapperClassNames.join(' ') }, index.h("div", { key: '14d3658c8abe24567f42ffb82082ef1073326aa2', class: "btn-height-wrapper", ref: el => (this.primaryBtnWrapper = el), onClick: this.handleWrapperClick, tabIndex: -1 }, index.h("button", { key: '2e64deb6bc1caaa4f3b831060103532886f2d8a6', class: "btn-primary", "test-id": "btn-control", type: "button", role: (optionCount && 'combobox') || undefined, ref: el => (this.primaryBtn = el), onClick: this.handleClick, onKeyDown: this.handleKeydown, onFocusout: this.handleButtonFocusout, disabled: this.disabled, "aria-roledescription": !optionCount && 'filter', "aria-controls": (optionCount && 'option-list') || undefined, "aria-expanded": (optionCount && `${!!open}`) || undefined, "aria-label": this.buttonContent, "aria-describedby": (optionCount && 'option-description') || undefined }, this.truncatedButtonContent, !optionCount && active && index.h("span", { key: '42b583abcc318ab1027f7fb5a5cbd437291f8cb4', class: "sr" }, "(", index$1.loc('tecton.element.pill.active'), ")"))), this.generateIcon(), this.generateHiddenElement()), this.optionCount > 0 && (index.h("q2-popover", { key: '0c197bbe3f080cc5c8ef78df88d635848e7910e0', ref: el => (this.popoverElement = el), controlElement: this.primaryBtn, open: this.open, minHeight: this.popoverMinHeight, direction: this.popoverDirection, align: this.popoverAlignment }, index.h("q2-option-list", { key: 'd1d84d56b201242986c8de169fce79e64dd978ab', type: "listbox", ref: el => (this.optionList = el), id: "option-list", onChange: this.handleChange, multiple: this.multiple, selectedOptions: this.selectedOptions, onReady: () => this.updateSelectedOptionElements(), label: index$1.loc('tecton.element.optionList.label', [this.optionListLabel]) }, index.h("slot", { key: '4ed0fe54a2b3b2bc969bf2f2466633148ad20ad0' }))))));
268
268
  }
269
269
  get hostElement() { return index.getElement(this); }
270
270
  static get watchers() { return {
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-14c3693c.js');
6
6
  const index$1 = require('./index-a93362ed.js');
7
7
 
8
- const q2RadioGroupCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{--comp-default-radio-group-margin:var(--tct-radio-group-margin-top, var(--t-radio-group-margin-top, var(--app-scale-5x, 25px))) 0 var(--tct-radio-group-margin-bottom, var(--t-radio-group-margin-bottom, var(--app-scale-5x, 25px)));display:block;margin:var(--tct-radio-group-margin, var(--comp-default-radio-group-margin))}fieldset{padding:0;margin:0;border:0;position:relative}.label-row{display:grid;grid-template-columns:1fr 24px;grid-template-areas:\"label icon\";gap:var(--app-scale-1x, 5px)}.label-row q2-icon{grid-area:icon;margin-top:-2px;margin-bottom:-2px}.group-legend{font-weight:600}.optional-tag{margin-left:var(--tct-input-label-optional-margin-left, var(--t-input-label-optional-margin-left, var(--tct-scale-1, var(--app-scale-1x, 5px))));color:var(--tct-input-label-optional-font-color, var(--t-input-label-optional-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77)))));font-size:var(--tct-input-label-optional-font-size, var(--t-input-label-optional-font-size, 12px));font-weight:var(--tct-input-label-optional-font-weight, var(--t-input-label-optional-font-weight, 400))}.tile-container,.tile-container .options-container{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;flex-grow:1}.options-container{--comp-default-margin:var(--app-scale-1x, 5px) 0;--comp-options-margin:var(--tct-radio-group-options-margin, var(--t-radio-group-options-margin, var(--comp-default-margin, 5px 0)));margin:var(--comp-options-margin);padding:var(--tct-radio-group-options-padding, var(--t-radio-group-options-padding, var(--app-scale-0x, 0px)));border-width:1px;border-color:transparent;border-style:solid;border-radius:var(--tct-border-radius-1, var(--app-border-radius-1, 2px))}:host([has-error]) .options-container{border-color:var(--tct-input-error-border-color, var(--const-stoplight-alert, #d20a0a))}:host([has-error=false]) .options-container{border-color:transparent}.tile-container.left{justify-content:start}.tile-container.right{justify-content:end}.tile-container .options-container{gap:var(--tct-radio-group-tile-gap, var(--t-radio-group-tile-gap, var(--app-scale-2x, 10px)));justify-content:inherit}";
8
+ const q2RadioGroupCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{margin-top:var(--tct-scale-2, var(--app-scale-2x, 10px))}fieldset{padding:0;margin:0;border:0;position:relative}.label-row{display:grid;grid-template-columns:1fr 24px;grid-template-areas:\"label icon\";gap:var(--app-scale-1x, 5px)}.label-row q2-icon{grid-area:icon;margin-top:-2px;margin-bottom:-2px}.group-legend{font-weight:600}.optional-tag{margin-left:var(--tct-input-label-optional-margin-left, var(--t-input-label-optional-margin-left, var(--tct-scale-1, var(--app-scale-1x, 5px))));color:var(--tct-input-label-optional-font-color, var(--t-input-label-optional-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77)))));font-size:var(--tct-input-label-optional-font-size, var(--t-input-label-optional-font-size, 12px));font-weight:var(--tct-input-label-optional-font-weight, var(--t-input-label-optional-font-weight, 400))}.tile-container,.tile-container .options-container{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;flex-grow:1}.options-container{--comp-default-margin:var(--app-scale-1x, 5px) 0;--comp-options-margin:var(--tct-radio-group-options-margin, var(--t-radio-group-options-margin, var(--comp-default-margin, 5px 0)));margin:var(--comp-options-margin);padding:var(--tct-radio-group-options-padding, var(--t-radio-group-options-padding, var(--app-scale-1x, 5px)));border-width:1px;border-color:transparent;border-style:solid;border-radius:var(--tct-border-radius-1, var(--app-border-radius-1, 2px))}:host([has-error]) .options-container{border-color:var(--tct-input-error-border-color, var(--const-stoplight-alert, #d20a0a))}:host([has-error=false]) .options-container{border-color:transparent}.tile-container.left{justify-content:start}.tile-container.right{justify-content:end}.tile-container .options-container{gap:var(--tct-radio-group-tile-gap, var(--t-radio-group-tile-gap, var(--app-scale-2x, 10px)));justify-content:inherit}";
9
9
  const Q2RadioGroupStyle0 = q2RadioGroupCss;
10
10
 
11
11
  const Q2RadioGroup = class {
@@ -164,7 +164,7 @@ const Q2RadioGroup = class {
164
164
  const showLabel = this.label || this.optional || this.readonly;
165
165
  const { hasError } = this;
166
166
  const showLabelRow = showLabel || hasError;
167
- return (index.h(index.Fragment, { key: '5fc0ba8dc6df9631a891e6997e520e663671dbf8' }, showLabelRow && (index.h("div", { key: 'd65d48917b4dfa90b498467baf1b0d546f57df1b', class: "label-row" }, showLabel && index.h("div", { key: '43e5db86c270d7e0822c1683d1eca97cb64e72c2', class: "group-legend" }, index$1.labelDOM(this)), hasError && (index.h("q2-icon", { key: 'f57ca3a0da21160ac81d00cac3c85a069fd3d9e5', type: "error", "test-id": "iconError" })))), index.h("fieldset", { key: 'e85a89714c71b43670d392ba311d436a4c73038b', onChange: this.onInnerRadioChange, "aria-invalid": `${this.hasError}` }, showLabel && index.h("legend", { key: '701af7a401c2871f9cbc472ffa27edac8b3e109e', class: "sr" }, index$1.labelDOM(this)), this.inputDom())));
167
+ return (index.h(index.Fragment, { key: '89b900da542fcef23c5b83f79a5f9d0a94c46b94' }, showLabelRow && (index.h("div", { key: 'c8b042825052f086c86daeea2a4785a935e89669', class: "label-row" }, showLabel && index.h("div", { key: '0b76b8f8da79ef43aaaac6fb9dbd55deb98ae4f0', class: "group-legend" }, index$1.labelDOM(this)), hasError && (index.h("q2-icon", { key: '114c828a9a38c6e967f309a9cc33e36b81c6688f', type: "error", "test-id": "iconError" })))), index.h("fieldset", { key: '08ea4a163a783340e50f9cb7c89b30fb1cd1e8a7', onChange: this.onInnerRadioChange, "aria-invalid": `${this.hasError}` }, showLabel && index.h("legend", { key: '668f4d97c9b8e8056589260ebac95d060709f490', class: "sr" }, index$1.labelDOM(this)), this.inputDom())));
168
168
  }
169
169
  inputDom() {
170
170
  if (this.tileLayout) {
@@ -1 +1 @@
1
- {"file":"q2-radio-group.entry.cjs.js","mappings":"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","names":["createGuid","overrideFocus","isEventFromElement","h","Fragment","labelDOM"],"sources":["src/components/q2-radio-group/q2-radio-group.scss?tag=q2-radio-group&encapsulation=shadow","src/components/q2-radio-group/q2-radio-group.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n\n:host {\n --comp-default-radio-group-margin: #{var-list(var-prefixer(radio-group-margin-top), --app-scale-5x, 25px) 0\n var-list(var-prefixer(radio-group-margin-bottom), --app-scale-5x, 25px)};\n display: block;\n margin: var-list(--tct-radio-group-margin, --comp-default-radio-group-margin);\n}\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n position: relative;\n}\n\n.label-row {\n display: grid;\n grid-template-columns: 1fr 24px;\n grid-template-areas: 'label icon';\n gap: var-list(--app-scale-1x, 5px);\n\n q2-icon {\n grid-area: icon;\n margin-top: -2px;\n margin-bottom: -2px;\n }\n}\n\n.group-legend {\n font-weight: 600;\n}\n\n.optional-tag {\n margin-left: var-list(var-prefixer(input-label-optional-margin-left), --tct-scale-1, --app-scale-1x, 5px);\n color: var-list(\n var-prefixer(input-label-optional-font-color),\n --t-textA,\n --t-a11y-gray-color,\n rgba(77, 77, 77, 0.77)\n );\n font-size: var-list(var-prefixer(input-label-optional-font-size), 12px);\n font-weight: var-list(var-prefixer(input-label-optional-font-weight), 400);\n}\n\n.tile-container {\n &,\n .options-container {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-wrap: wrap;\n flex-grow: 1;\n }\n}\n\n.options-container {\n --comp-default-margin: #{var-list(--app-scale-1x, 5px)} 0;\n --comp-options-margin: #{var-list(var-prefixer(radio-group-options-margin), --comp-default-margin, unquote('5px 0'))};\n margin: var(--comp-options-margin);\n padding: var-list(var-prefixer(radio-group-options-padding), --app-scale-0x, 0px);\n border-width: 1px;\n border-color: transparent;\n border-style: solid;\n border-radius: var-list(--tct-border-radius-1, --app-border-radius-1, 2px);\n\n :host([has-error]) & {\n border-color: var-list(--tct-input-error-border-color, --const-stoplight-alert, #d20a0a);\n }\n :host([has-error='false']) & {\n border-color: transparent;\n }\n}\n\n.tile-container {\n &.left {\n justify-content: start;\n }\n &.right {\n justify-content: end;\n }\n\n .options-container {\n gap: var-list(var-prefixer(radio-group-tile-gap), --app-scale-2x, 10px);\n justify-content: inherit;\n }\n}\n","import {\n Component,\n Prop,\n Element,\n h,\n Listen,\n EventEmitter,\n Event,\n ComponentInterface,\n Watch,\n Fragment,\n Method,\n} from '@stencil/core';\nimport { createGuid, isEventFromElement, overrideFocus, labelDOM } from 'src/utils';\n\n@Component({ tag: 'q2-radio-group', shadow: true, styleUrl: 'q2-radio-group.scss' })\nexport class Q2RadioGroup implements ComponentInterface {\n /** Determines if all radios in the group are put into a `disabled` state. */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Determines if the component should display in an errant state. */\n @Prop({ reflect: true }) hasError: boolean = false;\n\n /**\n * Hide's the group's `<label>` element from view.\n * @warning\n * Only use when a visible label is impractical.\n */\n @Prop({ reflect: true, mutable: true }) hideLabel: boolean;\n\n /**\n * Text for the fieldset legend describing the radio group.\n * @localizable\n */\n @Prop({ reflect: true }) label: string;\n\n /** Identifier which ties all radios together for accessibility and DOM selection. */\n @Prop({ reflect: true }) name: string;\n\n /** Appends \"(optional)\" to the group label, and sets `aria-required` on the nested input tag to `false`. */\n @Prop({ reflect: true }) optional: boolean;\n\n /** Determines if all radios in the group can be focused, but not interacted with. */\n @Prop({ reflect: true }) readonly: boolean;\n\n /** Provides alignment direction for tile-style radio group. */\n @Prop({ reflect: true }) tileAlignment: 'left' | 'center' | 'right' = 'center';\n\n /** Show the radio group as a horizontal set of tiles. */\n @Prop({ reflect: true, mutable: true }) tileLayout: boolean;\n\n /** The `value` of the currently selected `q2-radio` within the `q2-radio-group`. */\n @Prop({ mutable: true }) value: string;\n\n /** @deprecated */\n @Prop({ reflect: true, mutable: true }) tilelayout: boolean;\n\n @Element() hostElement: HTMLElement;\n _id: string = `radio-group-${createGuid()}`;\n mutationObserver: MutationObserver;\n\n get inputId() {\n return this._id;\n }\n\n get radioElements() {\n return Array.from(this.hostElement.querySelectorAll('q2-radio')) as HTMLQ2RadioElement[];\n }\n\n onMutationObserved = () => {\n this.valueUpdated(this.value);\n this.nameUpdated();\n this.disabledUpdated();\n this.readonlyUpdated();\n this.tileLayoutUpdated(this.tileLayout);\n };\n\n onInnerRadioChange = (event: CustomEvent) => {\n event.stopImmediatePropagation();\n if (this.readonly) return;\n\n this.change.emit({ value: event.detail.value });\n };\n\n checkedRadioExists = () => {\n // Returns first checked individual q2-radio or undefined if none are set to checked={true}\n const firstCheckedRadio = this.radioElements.find(radio => radio.checked === true) || undefined;\n\n // Changes radio-group[\"value\"] if inital value is not set and if a any individual q2-radio is checked\n if (!this.value && !!firstCheckedRadio) {\n this.value = firstCheckedRadio.value;\n } else if (!this.value && !firstCheckedRadio) {\n // if no radios are meant to be checked, then assign first radio tabIndex of 0\n if (this.radioElements.length) this.radioElements[0].tabIndex = 0;\n }\n };\n\n /////// LIFECYCLE HOOK ///////\n componentWillLoad() {\n this.checkedRadioExists();\n this.onMutationObserved();\n this.handleDeprecatedTilelayout(this.tilelayout);\n }\n\n componentDidLoad() {\n const observer = new MutationObserver(this.onMutationObserved);\n observer.observe(this.hostElement, { childList: true });\n this.mutationObserver = observer;\n overrideFocus(this.hostElement);\n this.checkedRadioExists();\n }\n\n /////// OBSERVERS ///////\n\n @Watch('value')\n valueUpdated(newVal: string) {\n this.radioElements.forEach(radio => {\n radio.checked = newVal === radio.value;\n // Removes checked attribute from trailing radios, if multiple individual radio's are intially checked (checked={true}) at componentDidLoad\n if (!radio.checked) {\n radio.removeAttribute('checked');\n radio.tabIndex = -1;\n } else if (radio.checked) {\n radio.tabIndex = 0;\n }\n });\n }\n\n @Watch('name')\n nameUpdated() {\n this.radioElements.forEach(radio => {\n radio.name = this.name || this._id;\n });\n }\n\n @Watch('disabled')\n disabledUpdated() {\n this.radioElements.forEach(radio => {\n radio.groupDisabled = this.disabled;\n });\n }\n\n @Watch('readonly')\n readonlyUpdated() {\n const readonly = this.readonly;\n this.radioElements.forEach(radio => (radio.groupReadonly = readonly));\n }\n\n @Watch('tilelayout')\n handleDeprecatedTilelayout(tilelayout: boolean) {\n if (typeof tilelayout !== 'boolean') return;\n this.tileLayout = tilelayout;\n this.tilelayout = undefined;\n }\n\n @Watch('tileLayout')\n tileLayoutUpdated(tileLayout: boolean) {\n this.radioElements.forEach(radio => {\n radio.groupTileLayout = tileLayout;\n });\n }\n\n /// Methods ///\n /**\n * Emulates clicking the `<q2-radio>` option with the provided value.\n *\n * @testOnly\n */\n @Method()\n setValue(value: string) {\n this.radioElements.forEach(radio => {\n if (value !== radio.value) return;\n radio.click();\n });\n }\n\n /////// HOST ELEMENT EVENTS ///////\n\n /**\n * Emitted when the value of the radio group changes.\n * @legacyEvent\n */\n @Event() change: EventEmitter<{ value: string }>;\n\n @Listen('change')\n onHostElementChange(event: CustomEvent) {\n if (event.target === this.hostElement) {\n if (!this.hostElement.onchange) {\n this.value = event.detail.value;\n }\n }\n }\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n const radio = this.hostElement.querySelector('q2-radio[checked]') || this.hostElement.querySelector('q2-radio');\n radio?.dispatchEvent(new FocusEvent('focus'));\n }\n\n @Listen('keydown')\n keydownHandler(event: KeyboardEvent) {\n const currentValue = (event.target as HTMLElement).getAttribute('value') || this.value;\n let index = this.radioElements.findIndex(\n el => el === event.target || (el as HTMLElement).getAttribute('value') === currentValue\n );\n let sign = 0;\n switch (event.key) {\n case 'ArrowLeft':\n case 'ArrowUp':\n sign = -1;\n break;\n\n case 'ArrowRight':\n case 'ArrowDown':\n sign = 1;\n break;\n }\n\n if (index === -1 || sign === 0) {\n return;\n }\n index += sign;\n index = sign < 0 ? Math.max(0, index) : Math.min(this.radioElements.length - 1, index);\n event.preventDefault();\n if (!this.readonly) {\n this.value = this.radioElements[index].value;\n }\n this.radioElements[index].dispatchEvent(new FocusEvent('focus'));\n }\n\n render() {\n const showLabel = this.label || this.optional || this.readonly;\n const { hasError } = this;\n const showLabelRow = showLabel || hasError;\n return (\n <Fragment>\n {showLabelRow && (\n <div class=\"label-row\">\n {showLabel && <div class=\"group-legend\">{labelDOM(this)}</div>}\n {hasError && (\n <q2-icon\n type=\"error\"\n test-id=\"iconError\"\n ></q2-icon>\n )}\n </div>\n )}\n <fieldset\n onChange={this.onInnerRadioChange}\n aria-invalid={`${this.hasError}`}\n >\n {showLabel && <legend class=\"sr\">{labelDOM(this)}</legend>}\n {this.inputDom()}\n </fieldset>\n </Fragment>\n );\n }\n\n inputDom() {\n if (this.tileLayout) {\n const { tileAlignment } = this;\n const alignment = ['left', 'center', 'right'].includes(tileAlignment) ? tileAlignment : 'center';\n return (\n <div class={`tile-container ${alignment}`}>\n <div class=\"options-container\">\n <slot />\n </div>\n </div>\n );\n } else {\n return (\n <div class=\"options-container\">\n <slot />\n </div>\n );\n }\n }\n}\n"],"version":3}
1
+ {"file":"q2-radio-group.entry.cjs.js","mappings":"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","names":["createGuid","overrideFocus","isEventFromElement","h","Fragment","labelDOM"],"sources":["src/components/q2-radio-group/q2-radio-group.scss?tag=q2-radio-group&encapsulation=shadow","src/components/q2-radio-group/q2-radio-group.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n\n:host {\n margin-top: var-list(--tct-scale-2, --app-scale-2x, 10px);\n}\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n position: relative;\n}\n\n.label-row {\n display: grid;\n grid-template-columns: 1fr 24px;\n grid-template-areas: 'label icon';\n gap: var-list(--app-scale-1x, 5px);\n\n q2-icon {\n grid-area: icon;\n margin-top: -2px;\n margin-bottom: -2px;\n }\n}\n\n.group-legend {\n font-weight: 600;\n}\n\n.optional-tag {\n margin-left: var-list(var-prefixer(input-label-optional-margin-left), --tct-scale-1, --app-scale-1x, 5px);\n color: var-list(\n var-prefixer(input-label-optional-font-color),\n --t-textA,\n --t-a11y-gray-color,\n rgba(77, 77, 77, 0.77)\n );\n font-size: var-list(var-prefixer(input-label-optional-font-size), 12px);\n font-weight: var-list(var-prefixer(input-label-optional-font-weight), 400);\n}\n\n.tile-container {\n &,\n .options-container {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-wrap: wrap;\n flex-grow: 1;\n }\n}\n\n.options-container {\n --comp-default-margin: #{var-list(--app-scale-1x, 5px)} 0;\n --comp-options-margin: #{var-list(var-prefixer(radio-group-options-margin), --comp-default-margin, unquote('5px 0'))};\n margin: var(--comp-options-margin);\n padding: var-list(var-prefixer(radio-group-options-padding), --app-scale-1x, 5px);\n border-width: 1px;\n border-color: transparent;\n border-style: solid;\n border-radius: var-list(--tct-border-radius-1, --app-border-radius-1, 2px);\n\n :host([has-error]) & {\n border-color: var-list(--tct-input-error-border-color, --const-stoplight-alert, #d20a0a);\n }\n :host([has-error='false']) & {\n border-color: transparent;\n }\n}\n\n.tile-container {\n &.left {\n justify-content: start;\n }\n &.right {\n justify-content: end;\n }\n\n .options-container {\n gap: var-list(var-prefixer(radio-group-tile-gap), --app-scale-2x, 10px);\n justify-content: inherit;\n }\n}\n","import {\n Component,\n Prop,\n Element,\n h,\n Listen,\n EventEmitter,\n Event,\n ComponentInterface,\n Watch,\n Fragment,\n Method,\n} from '@stencil/core';\nimport { createGuid, isEventFromElement, overrideFocus, labelDOM } from 'src/utils';\n\n@Component({ tag: 'q2-radio-group', shadow: true, styleUrl: 'q2-radio-group.scss' })\nexport class Q2RadioGroup implements ComponentInterface {\n /** Determines if all radios in the group are put into a `disabled` state. */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Determines if the component should display in an errant state. */\n @Prop({ reflect: true }) hasError: boolean = false;\n\n /**\n * Hide's the group's `<label>` element from view.\n * @warning\n * Only use when a visible label is impractical.\n */\n @Prop({ reflect: true, mutable: true }) hideLabel: boolean;\n\n /**\n * Text for the fieldset legend describing the radio group.\n * @localizable\n */\n @Prop({ reflect: true }) label: string;\n\n /** Identifier which ties all radios together for accessibility and DOM selection. */\n @Prop({ reflect: true }) name: string;\n\n /** Appends \"(optional)\" to the group label, and sets `aria-required` on the nested input tag to `false`. */\n @Prop({ reflect: true }) optional: boolean;\n\n /** Determines if all radios in the group can be focused, but not interacted with. */\n @Prop({ reflect: true }) readonly: boolean;\n\n /** Provides alignment direction for tile-style radio group. */\n @Prop({ reflect: true }) tileAlignment: 'left' | 'center' | 'right' = 'center';\n\n /** Show the radio group as a horizontal set of tiles. */\n @Prop({ reflect: true, mutable: true }) tileLayout: boolean;\n\n /** The `value` of the currently selected `q2-radio` within the `q2-radio-group`. */\n @Prop({ mutable: true }) value: string;\n\n /** @deprecated */\n @Prop({ reflect: true, mutable: true }) tilelayout: boolean;\n\n @Element() hostElement: HTMLElement;\n _id: string = `radio-group-${createGuid()}`;\n mutationObserver: MutationObserver;\n\n get inputId() {\n return this._id;\n }\n\n get radioElements() {\n return Array.from(this.hostElement.querySelectorAll('q2-radio')) as HTMLQ2RadioElement[];\n }\n\n onMutationObserved = () => {\n this.valueUpdated(this.value);\n this.nameUpdated();\n this.disabledUpdated();\n this.readonlyUpdated();\n this.tileLayoutUpdated(this.tileLayout);\n };\n\n onInnerRadioChange = (event: CustomEvent) => {\n event.stopImmediatePropagation();\n if (this.readonly) return;\n\n this.change.emit({ value: event.detail.value });\n };\n\n checkedRadioExists = () => {\n // Returns first checked individual q2-radio or undefined if none are set to checked={true}\n const firstCheckedRadio = this.radioElements.find(radio => radio.checked === true) || undefined;\n\n // Changes radio-group[\"value\"] if inital value is not set and if a any individual q2-radio is checked\n if (!this.value && !!firstCheckedRadio) {\n this.value = firstCheckedRadio.value;\n } else if (!this.value && !firstCheckedRadio) {\n // if no radios are meant to be checked, then assign first radio tabIndex of 0\n if (this.radioElements.length) this.radioElements[0].tabIndex = 0;\n }\n };\n\n /////// LIFECYCLE HOOK ///////\n componentWillLoad() {\n this.checkedRadioExists();\n this.onMutationObserved();\n this.handleDeprecatedTilelayout(this.tilelayout);\n }\n\n componentDidLoad() {\n const observer = new MutationObserver(this.onMutationObserved);\n observer.observe(this.hostElement, { childList: true });\n this.mutationObserver = observer;\n overrideFocus(this.hostElement);\n this.checkedRadioExists();\n }\n\n /////// OBSERVERS ///////\n\n @Watch('value')\n valueUpdated(newVal: string) {\n this.radioElements.forEach(radio => {\n radio.checked = newVal === radio.value;\n // Removes checked attribute from trailing radios, if multiple individual radio's are intially checked (checked={true}) at componentDidLoad\n if (!radio.checked) {\n radio.removeAttribute('checked');\n radio.tabIndex = -1;\n } else if (radio.checked) {\n radio.tabIndex = 0;\n }\n });\n }\n\n @Watch('name')\n nameUpdated() {\n this.radioElements.forEach(radio => {\n radio.name = this.name || this._id;\n });\n }\n\n @Watch('disabled')\n disabledUpdated() {\n this.radioElements.forEach(radio => {\n radio.groupDisabled = this.disabled;\n });\n }\n\n @Watch('readonly')\n readonlyUpdated() {\n const readonly = this.readonly;\n this.radioElements.forEach(radio => (radio.groupReadonly = readonly));\n }\n\n @Watch('tilelayout')\n handleDeprecatedTilelayout(tilelayout: boolean) {\n if (typeof tilelayout !== 'boolean') return;\n this.tileLayout = tilelayout;\n this.tilelayout = undefined;\n }\n\n @Watch('tileLayout')\n tileLayoutUpdated(tileLayout: boolean) {\n this.radioElements.forEach(radio => {\n radio.groupTileLayout = tileLayout;\n });\n }\n\n /// Methods ///\n /**\n * Emulates clicking the `<q2-radio>` option with the provided value.\n *\n * @testOnly\n */\n @Method()\n setValue(value: string) {\n this.radioElements.forEach(radio => {\n if (value !== radio.value) return;\n radio.click();\n });\n }\n\n /////// HOST ELEMENT EVENTS ///////\n\n /**\n * Emitted when the value of the radio group changes.\n * @legacyEvent\n */\n @Event() change: EventEmitter<{ value: string }>;\n\n @Listen('change')\n onHostElementChange(event: CustomEvent) {\n if (event.target === this.hostElement) {\n if (!this.hostElement.onchange) {\n this.value = event.detail.value;\n }\n }\n }\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n const radio = this.hostElement.querySelector('q2-radio[checked]') || this.hostElement.querySelector('q2-radio');\n radio?.dispatchEvent(new FocusEvent('focus'));\n }\n\n @Listen('keydown')\n keydownHandler(event: KeyboardEvent) {\n const currentValue = (event.target as HTMLElement).getAttribute('value') || this.value;\n let index = this.radioElements.findIndex(\n el => el === event.target || (el as HTMLElement).getAttribute('value') === currentValue\n );\n let sign = 0;\n switch (event.key) {\n case 'ArrowLeft':\n case 'ArrowUp':\n sign = -1;\n break;\n\n case 'ArrowRight':\n case 'ArrowDown':\n sign = 1;\n break;\n }\n\n if (index === -1 || sign === 0) {\n return;\n }\n index += sign;\n index = sign < 0 ? Math.max(0, index) : Math.min(this.radioElements.length - 1, index);\n event.preventDefault();\n if (!this.readonly) {\n this.value = this.radioElements[index].value;\n }\n this.radioElements[index].dispatchEvent(new FocusEvent('focus'));\n }\n\n render() {\n const showLabel = this.label || this.optional || this.readonly;\n const { hasError } = this;\n const showLabelRow = showLabel || hasError;\n return (\n <Fragment>\n {showLabelRow && (\n <div class=\"label-row\">\n {showLabel && <div class=\"group-legend\">{labelDOM(this)}</div>}\n {hasError && (\n <q2-icon\n type=\"error\"\n test-id=\"iconError\"\n ></q2-icon>\n )}\n </div>\n )}\n <fieldset\n onChange={this.onInnerRadioChange}\n aria-invalid={`${this.hasError}`}\n >\n {showLabel && <legend class=\"sr\">{labelDOM(this)}</legend>}\n {this.inputDom()}\n </fieldset>\n </Fragment>\n );\n }\n\n inputDom() {\n if (this.tileLayout) {\n const { tileAlignment } = this;\n const alignment = ['left', 'center', 'right'].includes(tileAlignment) ? tileAlignment : 'center';\n return (\n <div class={`tile-container ${alignment}`}>\n <div class=\"options-container\">\n <slot />\n </div>\n </div>\n );\n } else {\n return (\n <div class=\"options-container\">\n <slot />\n </div>\n );\n }\n }\n}\n"],"version":3}
@@ -77,7 +77,7 @@ const Q2Radio = class {
77
77
  }
78
78
  }
79
79
  render() {
80
- return (index.h("div", { key: '747de74f65700a44bec6fb7fbaf6e910685897e4', class: this.groupTileLayout ? 'radio-tile' : 'radio-container' }, index.h("input", { key: '4727b651cdc7e2fa095c8b4a1050463ef1aeca1d', ref: el => (this.inputField = el), class: "sr", id: this._id, type: "radio", name: this.name, value: this.value, disabled: this.disabled || this.groupDisabled, checked: this.checked, "aria-label": this.label && this.hideLabel ? index$1.loc(this.label) : undefined, onChange: this.inputChange, "test-id": "q2RadioInnerRadioBox" }), index.h("label", { key: 'bc37d7119b83407f93dabf4d75be15e3d31be876', htmlFor: this._id, class: this.hideLabel ? 'label-hidden' : undefined, "test-id": "radioButton" }, !this.groupTileLayout && (index.h("svg", { key: '197549ba1fcfe3d509a00f3c5e45f36fab4c4ff2', viewBox: "0 0 18 18" }, index.h("circle", { key: '206836e8921b866e27fadbdc8354b305acad2c0d', stroke: "none", fill: "none", cx: "9", cy: "9", r: "8" }), index.h("circle", { key: '50ef8f9239754be1d153df0e38bc55a663e0c12c', stroke: "none", fill: "none", cx: "9", cy: "9", r: "4" }))), !this.hideLabel && (index.h("div", { key: '5a2d36332cc8231daaa08eb5c3db99598d921f08', class: "label-content" }, (this.label && index$1.loc(this.label)) || '', index.h("slot", { key: '3b3b5c2e89a82092dc8b727e5cfc15609aaba27e' }))))));
80
+ return (index.h("div", { key: '11d52f8240d6022946c837b15afb173c44eb8962', class: this.groupTileLayout ? 'radio-tile' : 'radio-container' }, index.h("input", { key: '640bea7973f39132323acab2877d7995110c17d7', ref: el => (this.inputField = el), class: "sr", id: this._id, type: "radio", name: this.name, value: this.value, disabled: this.disabled || this.groupDisabled, checked: this.checked, "aria-label": this.label && this.hideLabel ? index$1.loc(this.label) : undefined, onChange: this.inputChange, "test-id": "q2RadioInnerRadioBox" }), index.h("label", { key: 'e198013184a88d97d76997c5f6e4c6c2784639b5', htmlFor: this._id, class: this.hideLabel ? 'label-hidden' : undefined, "test-id": "radioButton" }, !this.groupTileLayout && (index.h("svg", { key: 'cf8114adaf788f34a482c577c0f236e37d49e1ec', viewBox: "0 0 18 18" }, index.h("circle", { key: 'ccbd318974b142dc6bb8d86500c015bbb181bf6e', stroke: "none", fill: "none", cx: "9", cy: "9", r: "8" }), index.h("circle", { key: '07514318a21df53b3a85714b4a6e586ca2c5ad05', stroke: "none", fill: "none", cx: "9", cy: "9", r: "4" }))), !this.hideLabel && (index.h("div", { key: 'a77b401809a6a1f7adeb5f118efeaa2a238ebbf9', class: "label-content" }, (this.label && index$1.loc(this.label)) || '', index.h("slot", { key: '884d312374997e55428215c5f302b55dded2ed0f' }))))));
81
81
  }
82
82
  get hostElement() { return index.getElement(this); }
83
83
  static get watchers() { return {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-14c3693c.js');
6
- const index$1 = require('./index-c9a86a33.js');
6
+ const index$1 = require('./index-f69742cf.js');
7
7
  const index$2 = require('./index-a93362ed.js');
8
8
 
9
9
  const q2RelativeTimeCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:inline}";
@@ -140,7 +140,7 @@ const Q2RelativeTime = class {
140
140
  /// DOM ///
141
141
  render() {
142
142
  const { shouldShow, displayedMessage } = this;
143
- return index.h(index.Fragment, { key: '441a46ba1701a606f87b53120a7dc8a696dc85e1' }, shouldShow ? index.h("time", { dateTime: displayedMessage }, displayedMessage) : null);
143
+ return index.h(index.Fragment, { key: '395ab095d5167c217b92461697cd7283c5dc4fd3' }, shouldShow ? index.h("time", { dateTime: displayedMessage }, displayedMessage) : null);
144
144
  }
145
145
  get hostElement() { return index.getElement(this); }
146
146
  static get watchers() { return {
@@ -163,9 +163,9 @@ const Q2Section = class {
163
163
  wrapperClasses.push('is-transitioning');
164
164
  }
165
165
  const showDefaultHeader = !this.hasYieldedHeader && !!this.label;
166
- return (index.h("section", { key: '6e12bfbe36ad6c268079c32b6c39a7618ff12b1d', class: "wrapper" }, index.h("header", { key: '91f7c8a2655170d49b7729efc60a77eb28ad1d45', class: hasHeader ? 'has-header' : '' }, index.h("div", { key: '9edb887a2a8730794793674f46542cbd630e2a89', class: "header-content", id: this.titleId, onClick: this.collapsible && this.onHeaderClick }, showDefaultHeader && index.h("h2", { key: 'a6cb6d0c520d66b5bb35ab726c0e84bd55e0d25a', class: "title" }, index$1.loc(this.label)), index.h("div", { key: '1b01d8e62560f2a0cdf0627aa512a516edd48e62', ref: el => (this.headerSlotWrapper = el), class: "header-slot-wrapper" }, index.h("slot", { key: 'fbcddb1a7282460a939785da9fdaf2c59b56668e', ref: (el) => (this.headerSlot = el), name: "q2-section-header" }))), this.collapsible && !this.noCollapseIcon && (index.h("q2-btn", { key: '172089a013090bd461f66847e636aab0a3c477cd', label: index$1.loc(this.label || 'tecton.element.section.defaultToggleLabel'), ariaExpanded: `${!!this.expanded}`, ariaControls: this.contentId, "test-id": "toggleButton", "hide-label": true, onClick: this.onHeaderClick }, index.h("q2-icon", { key: '40e45aefe27e0ee9e1fe15de552b89c298b6a609', type: "chevron-up" })))), index.h("div", { key: 'f1673a5d32dd9bb781faae906d524091a2aa04a9', class: wrapperClasses.join(' '), id: this.contentId, "aria-labelledby": this.titleId, role: "region", onTransitionEnd: this.onTransitionEnd, style: this.collapsible && {
166
+ return (index.h("section", { key: '0695a7b89ad4ceef47ca676b788c2df60341a6a5', class: "wrapper" }, index.h("header", { key: '9e41fbda9d627bbabb1cefa365a32c4e5247edbe', class: hasHeader ? 'has-header' : '' }, index.h("div", { key: '38c6b5a831216380321e807042822b7141748007', class: "header-content", id: this.titleId, onClick: this.collapsible && this.onHeaderClick }, showDefaultHeader && index.h("h2", { key: 'de29539ff32219bfc2d1a4e20a50b664f3dd7205', class: "title" }, index$1.loc(this.label)), index.h("div", { key: '59be5e8e726f258496afbaa020bc71d3d0fff4a2', ref: el => (this.headerSlotWrapper = el), class: "header-slot-wrapper" }, index.h("slot", { key: '018055951b87d3ecf663d9b2af8a7d72f6d56f4d', ref: (el) => (this.headerSlot = el), name: "q2-section-header" }))), this.collapsible && !this.noCollapseIcon && (index.h("q2-btn", { key: '089581eafb2042e5739ed428bc527ee8a08f5f1d', label: index$1.loc(this.label || 'tecton.element.section.defaultToggleLabel'), ariaExpanded: `${!!this.expanded}`, ariaControls: this.contentId, "test-id": "toggleButton", "hide-label": true, onClick: this.onHeaderClick }, index.h("q2-icon", { key: '177ff80a371b2271f505c9a589dacd2c6422df66', type: "chevron-up" })))), index.h("div", { key: 'de3563448d7c3dcc6b577a0e5adc31a34945db59', class: wrapperClasses.join(' '), id: this.contentId, "aria-labelledby": this.titleId, role: "region", onTransitionEnd: this.onTransitionEnd, style: this.collapsible && {
167
167
  height: this.contentHeight,
168
- } }, index.h("div", { key: 'dbd1ceb839713c3be27407ebe6ba2f9a6a104fbb', ref: el => (this.contentContainer = el), class: "content", tabindex: "-1" }, index.h("slot", { key: '9692d272736fb8bd861f9e13e398af42489dc403', ref: (el) => (this.contentSlot = el) })))));
168
+ } }, index.h("div", { key: '39150c3c6cbc0fd3248c7ae63541b73ba41ba246', ref: el => (this.contentContainer = el), class: "content", tabindex: "-1" }, index.h("slot", { key: '71f8528ad70a3d2f41e8c78d34b34a05841faae6', ref: (el) => (this.contentSlot = el) })))));
169
169
  }
170
170
  get hostElement() { return index.getElement(this); }
171
171
  static get watchers() { return {
@@ -6,7 +6,7 @@ const index = require('./index-14c3693c.js');
6
6
  const index$1 = require('./index-a93362ed.js');
7
7
  const actionSheet = require('./action-sheet-d32c41ae.js');
8
8
 
9
- const q2SelectCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.q2-element-dropdown{display:none;position:absolute;background-color:var(--app-white, #ffffff);color:var(--t-text, #4d4d4d);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3));height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1, 0.2s ease);border-radius:var(--tct-dropdown-border-radius, --t-dropdown-border-radius, 0);--comp-scrollbar-size:var(--tct-scrollbar-size, var(--t-scrollbar-size, var(--app-scale-1x, 5px)));--comp-scrollbar-border-radius:var(--tct-scrollbar-border-radius, var(--t-scrollbar-border-radius, var(--app-border-radius-1, 3px)));--comp-scrollbar-color:var(--tct-scrollbar-color, var(--t-scrollbar-color, var(--t-a11y-gray-color, #747474)));scrollbar-width:thin;scrollbar-color:var(--comp-scrollbar-color) transparent}.q2-element-dropdown::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.q2-element-dropdown::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown.sizable{display:block;height:auto}.dropdown-open .q2-element-dropdown{display:block;height:auto;overflow:auto;opacity:1;visibility:visible}:host([alignment=right]) .q2-element-dropdown{left:auto;right:0}:host([block]) q2-btn,:host([block]){display:block}:host{--comp-default-select-margin:var(--tct-select-margin-top, var(--t-select-margin-top, var(--app-scale-5x, 25px))) 0 var(--tct-select-margin-bottom, var(--t-select-margin-bottom, var(--app-scale-5x, 25px)));display:block;margin:var(--tct-select-margin, var(--comp-default-select-margin))}.q2-select-container{position:relative;display:block}.q2-select-input{margin:0;--tct-input-min-height:var(--tct-select-input-min-height, var(--t-select-input-min-height));--tct-input-max-height:var(--tct-select-input-max-height, var(--t-select-input-max-height, none))}::slotted([slot=_selected-display]){width:100%;min-height:var(--comp-selected-display-height, 44px)}.custom-display-content{position:absolute;bottom:0;left:calc(var(--tct-scale-2, var(--app-scale-2x, 10px)) + 1px);height:44px;width:calc(100% - 34px - var(--tct-scale-3, var(--app-scale-3x, 15px)));overflow:hidden;cursor:pointer;transition:left var(--tct-tween-2, var(--app-tween-1, 0.2s ease))}.custom-display-content:not([hidden]){display:flex;align-items:center}.is-searchable.is-focused .custom-display-content,.is-searchable .custom-display-content:active{left:calc(var(--tct-scale-3, var(--app-scale-3x, 15px)) + 1px)}.has-error .custom-display-content{width:calc(100% - 68px - var(--tct-scale-3, var(--app-scale-3x, 15px)))}.popover-content{display:flex;flex-direction:column-reverse}.popover-bottom-container{position:sticky;bottom:0;z-index:5}.popover-top-container{position:sticky;top:0;z-index:5}.popover-top-container .multi-select-header{padding:var(--tct-scale-2, var(--app-scale-2x, 10px)) var(--tct-scale-2, var(--app-scale-2x, 10px));background:var(--app-white);display:flex;gap:var(--app-scale-2x, 10px);align-items:center}.popover-top-container .multi-select-header fieldset{margin:0;padding:0;border:0;display:flex;gap:var(--app-scale-2x, 10px)}.popover-top-container .multi-select-header legend{padding:0;float:left}.popover-top-container .multi-select-header label{cursor:pointer;padding:var(--tct-select-multi-select-option-padding, var(--t-select-multi-select-option-padding, var(--tct-btn-badge-padding, var(--t-btn-badge-padding, 2px 5px))));font-size:var(--tct-select-multi-select-option-font-size, var(--t-select-multi-select-option-font-size, var(--tct-btn-badge-font-size, var(--t-btn-badge-font-size, inherit))));border-radius:var(--tct-select-multi-select-option-radius, var(--t-select-multi-select-option-radius, var(--tct-btn-badge-border-radius, var(--t-btn-badge-border-radius, var(--app-border-radius-1, 3px)))));background:var(--tct-select-multi-select-option-background, var(--tct-select-multi-select-option-bg, var(--t-select-multi-select-option-bg, var(--tct-badge-background, var(--tct-btn-badge-bg, var(--t-btn-badge-bg, transparent))))));color:var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-font-color, var(--t-btn-badge-font-color, inherit))))}.popover-top-container .multi-select-header label:hover{background:var(--tct-select-multi-select-option-hover-background, var(--tct-select-multi-select-option-hover-background-color, var(--t-select-multi-select-option-hover-background-color, var(--tct-btn-badge-hover-bg, var(--t-btn-badge-hover-bg, var(--tct-gray-14, var(--t-gray-14, var(--app-gray-l3, #f2f2f2))))))));color:var(--tct-select-multi-select-option-hover-color, var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-hover-font-color, var(--t-btn-badge-hover-font-color, var(--tct-gray-5, var(--t-gray-5, var(--app-gray-d2, #404040))))))))}.popover-top-container .multi-select-header input:checked+label,.popover-top-container .multi-select-header input:checked+label:enabled:hover{background:var(--tct-select-multi-select-option-active-background, var(--tct-select-multi-select-option-active-background-color, var(--t-select-multi-select-option-active-background-color, var(--tct-btn-primary-bg, var(--t-btn-primary-bg, #2e2e2e)))));color:var(--tct-select-multi-select-option-active-color, var(--t-select-multi-select-option-active-color, var(--tct-btn-primary-font-color, var(--t-btn-primary-font-color, var(--app-white, #ffffff)))))}.popover-top-container .multi-select-header input:disabled+label{opacity:var(--tct-select-multi-select-option-disabled-opacity, var(--t-select-multi-select-option-disabled-opacity, var(--tct-btn-disabled-opacity, var(--t-btn-disabled-opacity, var(--app-disabled-opacity, 0.4)))));cursor:not-allowed}.popover-top-container .multi-select-header input:focus+label{box-shadow:var(--const-double-focus-ring)}";
9
+ const q2SelectCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.q2-element-dropdown{display:none;position:absolute;background-color:var(--app-white, #ffffff);color:var(--t-text, #4d4d4d);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3));height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1, 0.2s ease);border-radius:var(--tct-dropdown-border-radius, --t-dropdown-border-radius, 0);--comp-scrollbar-size:var(--tct-scrollbar-size, var(--t-scrollbar-size, var(--app-scale-1x, 5px)));--comp-scrollbar-border-radius:var(--tct-scrollbar-border-radius, var(--t-scrollbar-border-radius, var(--app-border-radius-1, 3px)));--comp-scrollbar-color:var(--tct-scrollbar-color, var(--t-scrollbar-color, var(--t-a11y-gray-color, #747474)));scrollbar-width:thin;scrollbar-color:var(--comp-scrollbar-color) transparent}.q2-element-dropdown::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.q2-element-dropdown::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown.sizable{display:block;height:auto}.dropdown-open .q2-element-dropdown{display:block;height:auto;overflow:auto;opacity:1;visibility:visible}:host([alignment=right]) .q2-element-dropdown{left:auto;right:0}:host([block]) q2-btn,:host([block]){display:block}:host{--comp-select-margin:var(--tct-select-margin, var(--tct-select-margin-top, var(--t-select-margin-top, var(--app-scale-4, 30px))) 0 var(--tct-select-margin-bottom, var(--t-select-margin-bottom, var(--app-scale-4, 30px))));display:block;margin:var(--comp-select-margin)}.q2-select-container{position:relative;display:block}.q2-select-input{margin:0;--tct-input-min-height:var(--tct-select-input-min-height, var(--t-select-input-min-height));--tct-input-max-height:var(--tct-select-input-max-height, var(--t-select-input-max-height, none))}::slotted([slot=_selected-display]){width:100%;min-height:var(--comp-selected-display-height, 44px)}.custom-display-content{position:absolute;bottom:0;left:calc(var(--tct-scale-2, var(--app-scale-2x, 10px)) + 1px);height:44px;width:calc(100% - 34px - var(--tct-scale-3, var(--app-scale-3x, 15px)));overflow:hidden;cursor:pointer;transition:left var(--tct-tween-2, var(--app-tween-1, 0.2s ease))}.custom-display-content:not([hidden]){display:flex;align-items:center}.is-searchable.is-focused .custom-display-content,.is-searchable .custom-display-content:active{left:calc(var(--tct-scale-3, var(--app-scale-3x, 15px)) + 1px)}.has-error .custom-display-content{width:calc(100% - 68px - var(--tct-scale-3, var(--app-scale-3x, 15px)))}.popover-content{display:flex;flex-direction:column-reverse}.popover-bottom-container{position:sticky;bottom:0;z-index:5}.popover-top-container{position:sticky;top:0;z-index:5}.popover-top-container .multi-select-header{padding:var(--tct-scale-2, var(--app-scale-2x, 10px)) var(--tct-scale-2, var(--app-scale-2x, 10px));background:var(--app-white);display:flex;gap:var(--app-scale-2x, 10px);align-items:center}.popover-top-container .multi-select-header fieldset{margin:0;padding:0;border:0;display:flex;gap:var(--app-scale-2x, 10px)}.popover-top-container .multi-select-header legend{padding:0;float:left}.popover-top-container .multi-select-header label{cursor:pointer;padding:var(--tct-select-multi-select-option-padding, var(--t-select-multi-select-option-padding, var(--tct-btn-badge-padding, var(--t-btn-badge-padding, 2px 5px))));font-size:var(--tct-select-multi-select-option-font-size, var(--t-select-multi-select-option-font-size, var(--tct-btn-badge-font-size, var(--t-btn-badge-font-size, inherit))));border-radius:var(--tct-select-multi-select-option-radius, var(--t-select-multi-select-option-radius, var(--tct-btn-badge-border-radius, var(--t-btn-badge-border-radius, var(--app-border-radius-1, 3px)))));background:var(--tct-select-multi-select-option-background, var(--tct-select-multi-select-option-bg, var(--t-select-multi-select-option-bg, var(--tct-badge-background, var(--tct-btn-badge-bg, var(--t-btn-badge-bg, transparent))))));color:var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-font-color, var(--t-btn-badge-font-color, inherit))))}.popover-top-container .multi-select-header label:hover{background:var(--tct-select-multi-select-option-hover-background, var(--tct-select-multi-select-option-hover-background-color, var(--t-select-multi-select-option-hover-background-color, var(--tct-btn-badge-hover-bg, var(--t-btn-badge-hover-bg, var(--tct-gray-14, var(--t-gray-14, var(--app-gray-l3, #f2f2f2))))))));color:var(--tct-select-multi-select-option-hover-color, var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-hover-font-color, var(--t-btn-badge-hover-font-color, var(--tct-gray-5, var(--t-gray-5, var(--app-gray-d2, #404040))))))))}.popover-top-container .multi-select-header input:checked+label,.popover-top-container .multi-select-header input:checked+label:enabled:hover{background:var(--tct-select-multi-select-option-active-background, var(--tct-select-multi-select-option-active-background-color, var(--t-select-multi-select-option-active-background-color, var(--tct-btn-primary-bg, var(--t-btn-primary-bg, #2e2e2e)))));color:var(--tct-select-multi-select-option-active-color, var(--t-select-multi-select-option-active-color, var(--tct-btn-primary-font-color, var(--t-btn-primary-font-color, var(--app-white, #ffffff)))))}.popover-top-container .multi-select-header input:disabled+label{opacity:var(--tct-select-multi-select-option-disabled-opacity, var(--t-select-multi-select-option-disabled-opacity, var(--tct-btn-disabled-opacity, var(--t-btn-disabled-opacity, var(--app-disabled-opacity, 0.4)))));cursor:not-allowed}.popover-top-container .multi-select-header input:focus+label{box-shadow:var(--const-double-focus-ring)}";
10
10
  const Q2SelectStyle0 = q2SelectCss;
11
11
 
12
12
  const Q2Select = class {
@@ -16,6 +16,20 @@ const Q2Select = class {
16
16
  this.input = index.createEvent(this, "input", 7);
17
17
  var _a;
18
18
  this.scheduledAfterRender = [];
19
+ this.initEventListeners = () => {
20
+ var _a;
21
+ if (!index$1.isMobile())
22
+ return;
23
+ (_a = screen === null || screen === void 0 ? void 0 : screen.orientation) === null || _a === void 0 ? void 0 : _a.addEventListener('change', this.handleOrientationChange);
24
+ window.addEventListener('resize', this.handleOrientationChange);
25
+ visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.addEventListener('resize', this.handleOrientationChange);
26
+ };
27
+ this.initMutationObserver = () => {
28
+ const observer = new MutationObserver(this.onMutationObserved);
29
+ observer.observe(this.hostElement, { childList: true, subtree: true });
30
+ this.mutationObserver = observer;
31
+ this.onMutationObserved();
32
+ };
19
33
  this.showSelectedOptions = () => {
20
34
  this.showSelected = true;
21
35
  };
@@ -51,6 +65,30 @@ const Q2Select = class {
51
65
  this.showAllOptions();
52
66
  this.handleSelectionChanges(event.detail);
53
67
  };
68
+ this.destroyEventListeners = () => {
69
+ var _a;
70
+ if (!index$1.isMobile())
71
+ return;
72
+ (_a = screen === null || screen === void 0 ? void 0 : screen.orientation) === null || _a === void 0 ? void 0 : _a.removeEventListener('change', this.handleOrientationChange);
73
+ window.removeEventListener('resize', this.handleOrientationChange);
74
+ visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.removeEventListener('resize', this.handleOrientationChange);
75
+ };
76
+ this.handleOrientationChange = () => {
77
+ var _a, _b, _c;
78
+ if (!index$1.isMobile())
79
+ return;
80
+ let isLandscape;
81
+ if (this.isModule) {
82
+ isLandscape = (_a = window.Tecton) === null || _a === void 0 ? void 0 : _a.platformDimensions.orientationType.includes('landscape');
83
+ }
84
+ else {
85
+ isLandscape = (_c = (_b = screen === null || screen === void 0 ? void 0 : screen.orientation) === null || _b === void 0 ? void 0 : _b.type) === null || _c === void 0 ? void 0 : _c.includes('landscape');
86
+ }
87
+ if (isLandscape && this.searchable)
88
+ this.searchable = false;
89
+ if (!isLandscape)
90
+ this.searchable = this.originalSearchable;
91
+ };
54
92
  /// Event handlers ///
55
93
  this.onPopoverState = ({ detail: { open, action }, }) => {
56
94
  if (!open || this.searchText) {
@@ -96,7 +134,7 @@ const Q2Select = class {
96
134
  // Prevent click event from firing when spacebar is pressed
97
135
  if (key === ' ')
98
136
  event.preventDefault();
99
- this.optionList.handleExternalKeydown(event);
137
+ this.handleOptionListExternalKeydown(event);
100
138
  };
101
139
  this.visibilityToggleKeyDown = (event) => {
102
140
  const key = event.key;
@@ -185,15 +223,15 @@ const Q2Select = class {
185
223
  }
186
224
  /// Lifecycle Hooks ///
187
225
  componentWillLoad() {
226
+ this.originalSearchable = this.searchable;
188
227
  index$1.handleAriaLabel(this);
228
+ this.handleOrientationChange();
189
229
  this.buildStructuredSelectedOptions();
190
230
  this.handleMultilineOptionsUpdate(this.multilineOptions, false);
191
231
  }
192
232
  componentDidLoad() {
193
- const observer = new MutationObserver(this.onMutationObserved);
194
- observer.observe(this.hostElement, { childList: true, subtree: true });
195
- this.mutationObserver = observer;
196
- this.onMutationObserved();
233
+ this.initMutationObserver();
234
+ this.initEventListeners();
197
235
  index$1.overrideFocus(this.hostElement);
198
236
  setTimeout(() => this.checkSelectedDisplay(), 0);
199
237
  }
@@ -207,8 +245,15 @@ const Q2Select = class {
207
245
  var _a;
208
246
  (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
209
247
  this.mutationObserver = null;
248
+ this.destroyEventListeners();
210
249
  }
211
250
  /// Getters ///
251
+ get isModule() {
252
+ var _a, _b;
253
+ const isIframe = window !== window.top;
254
+ const hasPlatformDimensions = Object.keys((_b = (_a = window.Tecton) === null || _a === void 0 ? void 0 : _a.platformDimensions) !== null && _b !== void 0 ? _b : {}).length > 0;
255
+ return isIframe && hasPlatformDimensions;
256
+ }
212
257
  get innerInputField() {
213
258
  var _a, _b;
214
259
  return (_b = (_a = this.inputField) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.input-field');
@@ -522,6 +567,9 @@ const Q2Select = class {
522
567
  var _a;
523
568
  (_a = this.inputField) === null || _a === void 0 ? void 0 : _a.dispatchEvent(new FocusEvent('focus'));
524
569
  }
570
+ handleOptionListExternalKeydown(event) {
571
+ this.optionList.handleExternalKeydown(event);
572
+ }
525
573
  setStatusMessage(message) {
526
574
  clearTimeout(this.statusMessageTimer);
527
575
  this.statusMessage = '';
@@ -589,11 +637,11 @@ const Q2Select = class {
589
637
  }
590
638
  render() {
591
639
  var _a;
592
- return (index.h("click-elsewhere", { key: '421fc4811bdf2f8cfb899ee9823ce20e3301032c', class: this.wrapperClasses, onChange: this.clickedElsewhere }, index.h("div", { key: '1a2b96c2e6dbacfa7dcc8918ff4acab71046dc8d', "aria-live": "polite", "aria-atomic": "true", role: "status", class: "sr" }, this.statusMessage), index.h("q2-input", { key: 'fd678010a8f0d53a4d93c265204bedf72679221a', ref: el => (this.inputField = el), class: "q2-select-input", label: (this.label && index$1.loc(this.label)) || '', value: this.selectedDisplay, clearable: (this.clearable && (!!this.value || !!((_a = this.selectedOptions) === null || _a === void 0 ? void 0 : _a.length))) || undefined, errors: (Array.isArray(this.errors) &&
640
+ return (index.h("click-elsewhere", { key: '8ebc1321a912ccded52c4df30a2b7e2c31e29d1a', class: this.wrapperClasses, onChange: this.clickedElsewhere }, index.h("div", { key: '985db8cd1cdf9fded3d55359d66e9205736d8159', "aria-live": "polite", "aria-atomic": "true", role: "status", class: "sr" }, this.statusMessage), index.h("q2-input", { key: '0a7a08dd904fcbf1c6322fecba1a43c42dcc98c1', ref: el => (this.inputField = el), class: "q2-select-input", label: (this.label && index$1.loc(this.label)) || '', value: this.selectedDisplay, clearable: (this.clearable && (!!this.value || !!((_a = this.selectedOptions) === null || _a === void 0 ? void 0 : _a.length))) || undefined, errors: (Array.isArray(this.errors) &&
593
641
  this.errors.length > 0 &&
594
642
  this.errors.map(error => index$1.loc(error))) ||
595
643
  (this.invalid && ['tecton.element.select.invalid']) ||
596
- [], disabled: this.disabled, optional: this.optional, readonly: !!this.readonly, placeholder: this.placeholder || undefined, hideLabel: this.hideLabel, ariaExpanded: `${this.open}`, ariaControls: "option-list", ariaHaspopup: "listbox", "test-id": "toggleDropdown", "hide-messages": true, iconRight: "chevron-down", onClick: this.inputClickHandler, onInput: this.inputInputHandler, onKeyDown: this.inputKeydownHandler, onFocus: this.inputFocusHandler, onBlur: this.inputBlurHandler, onChange: this.inputChangeHandler, badgeValue: this.badgeValue, badgeTheme: this.inputFocused ? 'primary' : undefined, _role: "combobox", _preventEntry: !this.searchable }, this.renderCustomDisplay()), index.h("div", { key: '26f8c78fb455e7fc9451018ed2745ab53018c270', class: "custom-display-content", hidden: !this.hasCustomDisplay || !!this.searchText, onClick: this.onCustomDisplayClick }, index.h("slot", { key: '4f76ab176fbd88b99aab88ad9e9a3cb87ccb943b', name: "q2-select-display" })), this.optionsDropdown()));
644
+ [], disabled: this.disabled, optional: this.optional, readonly: !!this.readonly, placeholder: this.placeholder || undefined, hideLabel: this.hideLabel, ariaExpanded: `${this.open}`, ariaControls: "option-list", ariaHaspopup: "listbox", "test-id": "toggleDropdown", "hide-messages": true, iconRight: "chevron-down", onClick: this.inputClickHandler, onInput: this.inputInputHandler, onKeyDown: this.inputKeydownHandler, onFocus: this.inputFocusHandler, onBlur: this.inputBlurHandler, onChange: this.inputChangeHandler, badgeValue: this.badgeValue, badgeTheme: this.inputFocused ? 'primary' : undefined, _role: "combobox", _preventEntry: !this.searchable }, this.renderCustomDisplay()), index.h("div", { key: '760710c9728ab45b80ba33a12f3f9e21dcb9cf93', class: "custom-display-content", hidden: !this.hasCustomDisplay || !!this.searchText, onClick: this.onCustomDisplayClick }, index.h("slot", { key: 'b17fbba02901d715f283bcbc7ec602c83dfa3c2f', name: "q2-select-display" })), this.optionsDropdown()));
597
645
  }
598
646
  optionsDropdown() {
599
647
  return (index.h("q2-popover", { ref: el => (this.popoverElement = el), controlElement: this.innerInputContainer, open: this.open, minHeight: this.popoverMinHeight, direction: this.popDirection, mode: this.popoverMode || undefined, block: true }, index.h("div", { class: "popover-content" }, index.h("q2-option-list", { onPopoverState: this.onPopoverState, ref: el => (this.optionList = el), type: "listbox", id: "option-list", "show-selected": this.showSelected, label: this.listLabel, multiple: this.multiple, selectedOptions: this.structuredSelectedOptions, onChange: this.onOptionListChange }, index.h("slot", null)), index.h("div", { class: "popover-top-container", ref: el => (this.popoverTopContainer = el), hidden: !this.multiple && !this.hasPopoverTop, tabindex: "-1" }, index.h("slot", { name: "popover-top" }), this.multiple && this.visibilityToggle())), index.h("div", { class: "popover-bottom-container", hidden: !this.hasPopoverBottom, tabindex: "-1" }, index.h("slot", { name: "popover-bottom" }))));