q2-tecton-elements 1.71.4 → 1.73.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. package/dist/bundle-report.json +32564 -26687
  2. package/dist/cjs/{charting-ClN1ldqv.js → charting-CdNTrVBe.js} +80 -0
  3. package/dist/cjs/click-elsewhere_3.cjs.entry.js +85 -20
  4. package/dist/cjs/{dataSample-BYR-wrOn.js → dataSample-B4blhlH4.js} +1 -1
  5. package/dist/cjs/date-picker-helpers-UYvPn98R.js +257 -0
  6. package/dist/cjs/{index-SpDCZABA.js → index-BqyWHpNu.js} +2 -2
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/{q2-action-group_2.cjs.entry.js → q2-action-group.cjs.entry.js} +1 -89
  9. package/dist/cjs/q2-action-sheet.cjs.entry.js +98 -18
  10. package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
  11. package/dist/cjs/q2-badge_2.cjs.entry.js +113 -12
  12. package/dist/cjs/q2-btn_2.cjs.entry.js +2 -2
  13. package/dist/cjs/q2-calendar.cjs.entry.js +14 -7
  14. package/dist/cjs/q2-card-image.cjs.entry.js +4 -4
  15. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  16. package/dist/cjs/q2-carousel-pane.cjs.entry.js +3 -3
  17. package/dist/cjs/q2-carousel.cjs.entry.js +20 -6
  18. package/dist/cjs/q2-chart-area.cjs.entry.js +38 -7
  19. package/dist/cjs/q2-chart-bar.cjs.entry.js +39 -8
  20. package/dist/cjs/q2-chart-donut.cjs.entry.js +31 -13
  21. package/dist/cjs/q2-checkbox-group.cjs.entry.js +3 -3
  22. package/dist/cjs/q2-checkbox_2.cjs.entry.js +9 -6
  23. package/dist/cjs/q2-context.cjs.entry.js +6 -5
  24. package/dist/cjs/q2-currency.cjs.entry.js +1 -1
  25. package/dist/cjs/q2-data-table.cjs.entry.js +7 -7
  26. package/dist/cjs/q2-date-calendar.cjs.entry.js +452 -0
  27. package/dist/cjs/q2-date-picker_2.cjs.entry.js +968 -0
  28. package/dist/cjs/q2-detail.cjs.entry.js +2 -2
  29. package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
  30. package/dist/cjs/q2-dropdown.cjs.entry.js +4 -4
  31. package/dist/cjs/q2-editable-field.cjs.entry.js +51 -37
  32. package/dist/cjs/q2-example.cjs.entry.js +1 -1
  33. package/dist/cjs/q2-file-picker.cjs.entry.js +60 -4
  34. package/dist/cjs/q2-form.cjs.entry.js +1 -1
  35. package/dist/cjs/q2-formatted-text.cjs.entry.js +1 -1
  36. package/dist/cjs/q2-icon.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-item.cjs.entry.js +21 -3
  38. package/dist/cjs/q2-legend.cjs.entry.js +1 -1
  39. package/dist/cjs/q2-link_2.cjs.entry.js +2 -2
  40. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  41. package/dist/cjs/q2-message.cjs.entry.js +3 -3
  42. package/dist/cjs/q2-meter.cjs.entry.js +2 -2
  43. package/dist/cjs/q2-modal.cjs.entry.js +59 -17
  44. package/dist/cjs/q2-month-picker.cjs.entry.js +3 -3
  45. package/dist/cjs/q2-mutation-observer.cjs.entry.js +1 -1
  46. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  47. package/dist/cjs/q2-otp.cjs.entry.js +5 -5
  48. package/dist/cjs/q2-pagination.cjs.entry.js +4 -4
  49. package/dist/cjs/q2-pill.cjs.entry.js +8 -5
  50. package/dist/cjs/q2-radio-group.cjs.entry.js +22 -4
  51. package/dist/cjs/q2-radio.cjs.entry.js +3 -3
  52. package/dist/cjs/q2-relative-time.cjs.entry.js +3 -3
  53. package/dist/cjs/q2-resize-observer.cjs.entry.js +92 -0
  54. package/dist/cjs/q2-search.cjs.entry.js +4 -4
  55. package/dist/cjs/q2-section.cjs.entry.js +7 -7
  56. package/dist/cjs/q2-select.cjs.entry.js +41 -21
  57. package/dist/cjs/q2-stepper-pane.cjs.entry.js +2 -2
  58. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +2 -2
  59. package/dist/cjs/q2-stepper.cjs.entry.js +2 -2
  60. package/dist/cjs/q2-surface.cjs.entry.js +1 -1
  61. package/dist/cjs/q2-tab-container.cjs.entry.js +2 -2
  62. package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
  63. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  64. package/dist/cjs/q2-textarea.cjs.entry.js +2 -2
  65. package/dist/cjs/q2-toast.cjs.entry.js +1 -1
  66. package/dist/cjs/q2-tooltip.cjs.entry.js +1 -1
  67. package/dist/cjs/{sectorHelper-9TWL-3dw.js → sectorHelper-CxhDl5ql.js} +1 -1
  68. package/dist/cjs/tecton-tab-pane.cjs.entry.js +5 -3
  69. package/dist/collection/collection-manifest.json +2 -0
  70. package/dist/collection/components/q2-action-sheet/q2-action-sheet.css +52 -0
  71. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +98 -18
  72. package/dist/collection/components/q2-action-sheet/test/q2-action-sheet-test.vr.js +124 -0
  73. package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
  74. package/dist/collection/components/q2-btn/q2-btn.css +152 -146
  75. package/dist/collection/components/q2-btn/q2-btn.js +10 -4
  76. package/dist/collection/components/q2-btn/test/q2-btn-test.vr.js +229 -20
  77. package/dist/collection/components/q2-calendar/q2-calendar.css +3 -0
  78. package/dist/collection/components/q2-calendar/q2-calendar.js +20 -7
  79. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  80. package/dist/collection/components/q2-calendar/test/q2-calendar-test.vr.js +26 -15
  81. package/dist/collection/components/q2-card/test/q2-card-test.vr.js +4 -0
  82. package/dist/collection/components/q2-card-image/q2-card-image.css +89 -134
  83. package/dist/collection/components/q2-card-image/q2-card-image.js +4 -4
  84. package/dist/collection/components/q2-card-image/test/q2-card-image-test.vr.js +4 -0
  85. package/dist/collection/components/q2-carousel/q2-carousel.js +19 -5
  86. package/dist/collection/components/q2-carousel/test/q2-carousel-test.vr.js +45 -0
  87. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  88. package/dist/collection/components/q2-chart-area/q2-chart-area.css +11 -0
  89. package/dist/collection/components/q2-chart-area/q2-chart-area.js +53 -7
  90. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.vr.js +14 -0
  91. package/dist/collection/components/q2-chart-bar/q2-chart-bar.css +11 -0
  92. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +50 -4
  93. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.vr.js +14 -0
  94. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +30 -10
  95. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.vr.js +25 -0
  96. package/dist/collection/components/q2-checkbox/q2-checkbox.css +2 -2
  97. package/dist/collection/components/q2-checkbox/q2-checkbox.js +6 -3
  98. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.css +2 -0
  99. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js +6 -3
  100. package/dist/collection/components/q2-context/q2-context.css +5 -0
  101. package/dist/collection/components/q2-context/q2-context.js +4 -3
  102. package/dist/collection/components/q2-context/test/q2-context-test.vr.js +14 -4
  103. package/dist/collection/components/q2-currency/q2-currency.js +1 -1
  104. package/dist/collection/components/q2-data-table/q2-data-table.css +6 -0
  105. package/dist/collection/components/q2-data-table/q2-data-table.js +5 -5
  106. package/dist/collection/components/q2-data-table/test/q2-data-table-test.vr.js +52 -0
  107. package/dist/collection/components/q2-date-calendar/q2-date-calendar.css +393 -0
  108. package/dist/collection/components/q2-date-calendar/q2-date-calendar.js +1022 -0
  109. package/dist/collection/components/q2-date-calendar/test/q2-date-calendar-test.vr.js +111 -0
  110. package/dist/collection/components/q2-date-picker/q2-date-picker.css +138 -0
  111. package/dist/collection/components/q2-date-picker/q2-date-picker.js +2010 -0
  112. package/dist/collection/components/q2-date-picker/test/q2-date-picker-test.vr.js +179 -0
  113. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  114. package/dist/collection/components/q2-dropdown/q2-dropdown.css +2 -0
  115. package/dist/collection/components/q2-dropdown/q2-dropdown.js +5 -5
  116. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.vr.js +30 -0
  117. package/dist/collection/components/q2-editable-field/q2-editable-field.css +2 -0
  118. package/dist/collection/components/q2-editable-field/q2-editable-field.js +59 -45
  119. package/dist/collection/components/q2-example/q2-example.js +1 -1
  120. package/dist/collection/components/q2-file-picker/q2-file-picker.css +27 -0
  121. package/dist/collection/components/q2-file-picker/q2-file-picker.js +98 -2
  122. package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.vr.js +22 -0
  123. package/dist/collection/components/q2-form/q2-form.js +1 -1
  124. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +1 -1
  125. package/dist/collection/components/q2-input/q2-input.css +67 -1
  126. package/dist/collection/components/q2-input/q2-input.js +160 -15
  127. package/dist/collection/components/q2-input/test/q2-input-test.vr.js +35 -0
  128. package/dist/collection/components/q2-item/q2-item.css +3 -1
  129. package/dist/collection/components/q2-item/q2-item.js +19 -1
  130. package/dist/collection/components/q2-item/test/q2-item-test.vr.js +8 -2
  131. package/dist/collection/components/q2-legend/q2-legend.js +1 -1
  132. package/dist/collection/components/q2-list/q2-list.js +1 -1
  133. package/dist/collection/components/q2-message/q2-message.css +5 -5
  134. package/dist/collection/components/q2-message/q2-message.js +1 -1
  135. package/dist/collection/components/q2-meter/q2-meter.js +1 -1
  136. package/dist/collection/components/q2-modal/q2-modal.css +40 -3
  137. package/dist/collection/components/q2-modal/q2-modal.js +100 -16
  138. package/dist/collection/components/q2-modal/test/q2-modal-test.vr.js +32 -7
  139. package/dist/collection/components/q2-mutation-observer/q2-mutation-observer.js +1 -1
  140. package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
  141. package/dist/collection/components/q2-option-list/q2-option-list.js +33 -4
  142. package/dist/collection/components/q2-otp/q2-otp.js +4 -4
  143. package/dist/collection/components/q2-pagination/q2-pagination.js +3 -3
  144. package/dist/collection/components/q2-pill/q2-pill.css +2 -2
  145. package/dist/collection/components/q2-pill/q2-pill.js +6 -3
  146. package/dist/collection/components/q2-popover/q2-popover.css +4 -2
  147. package/dist/collection/components/q2-popover/q2-popover.js +50 -14
  148. package/dist/collection/components/q2-radio/q2-radio.css +158 -104
  149. package/dist/collection/components/q2-radio/q2-radio.js +5 -2
  150. package/dist/collection/components/q2-radio/test/q2-radio-test.vr.js +25 -2
  151. package/dist/collection/components/q2-radio-group/q2-radio-group.css +39 -2
  152. package/dist/collection/components/q2-radio-group/q2-radio-group.js +73 -4
  153. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.vr.js +43 -1
  154. package/dist/collection/components/q2-relative-time/q2-relative-time.js +2 -2
  155. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +1 -1
  156. package/dist/collection/components/q2-search/q2-search.css +2 -0
  157. package/dist/collection/components/q2-search/q2-search.js +6 -3
  158. package/dist/collection/components/q2-section/q2-section.css +2 -0
  159. package/dist/collection/components/q2-section/q2-section.js +6 -6
  160. package/dist/collection/components/q2-select/q2-select.css +3 -0
  161. package/dist/collection/components/q2-select/q2-select.js +48 -22
  162. package/dist/collection/components/q2-select/test/q2-select-test.vr.js +13 -0
  163. package/dist/collection/components/q2-stepper/q2-stepper.js +1 -1
  164. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +1 -1
  165. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
  166. package/dist/collection/components/q2-surface/q2-surface.js +1 -1
  167. package/dist/collection/components/q2-surface/test/q2-surface-test.vr.js +2 -2
  168. package/dist/collection/components/q2-tab-container/q2-tab-container.js +1 -1
  169. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  170. package/dist/collection/components/q2-tag/q2-tag.js +6 -3
  171. package/dist/collection/components/q2-textarea/q2-textarea.js +6 -3
  172. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.vr.js +1 -1
  173. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +5 -3
  174. package/dist/collection/utils/chart-keyboard.js +76 -0
  175. package/dist/collection/utils/date-picker/date-picker-helpers.js +239 -0
  176. package/dist/collection/utils/date-picker/date-picker-types.js +1 -0
  177. package/dist/collection/utils/index.js +2 -2
  178. package/dist/collection/utils/test/vr-helpers.js +16 -2
  179. package/dist/components/charting.js +1603 -1532
  180. package/dist/components/dataSample.js +7 -7
  181. package/dist/components/index.js +57 -53
  182. package/dist/components/index2.js +3 -3
  183. package/dist/components/q2-action-sheet.js +224 -103
  184. package/dist/components/q2-avatar2.js +8 -8
  185. package/dist/components/q2-btn2.js +2 -2
  186. package/dist/components/q2-calendar.js +15 -10
  187. package/dist/components/q2-card-image.js +24 -24
  188. package/dist/components/q2-carousel-pane2.js +3 -3
  189. package/dist/components/q2-carousel.js +37 -24
  190. package/dist/components/q2-chart-area.js +415 -369
  191. package/dist/components/q2-chart-bar.js +193 -148
  192. package/dist/components/q2-chart-donut.js +185 -158
  193. package/dist/components/q2-checkbox-group.js +12 -12
  194. package/dist/components/q2-checkbox2.js +12 -12
  195. package/dist/components/q2-context.js +30 -29
  196. package/dist/components/q2-currency.js +9 -9
  197. package/dist/components/q2-data-table.js +111 -111
  198. package/dist/components/q2-date-calendar.d.ts +11 -0
  199. package/dist/components/q2-date-calendar.js +5 -0
  200. package/dist/components/q2-date-calendar2.js +678 -0
  201. package/dist/components/q2-date-picker.d.ts +11 -0
  202. package/dist/components/q2-date-picker.js +5 -0
  203. package/dist/components/q2-date-picker2.js +875 -0
  204. package/dist/components/q2-detail.js +3 -3
  205. package/dist/components/q2-dropdown.js +13 -13
  206. package/dist/components/q2-editable-field.js +45 -36
  207. package/dist/components/q2-example.js +11 -11
  208. package/dist/components/q2-file-picker.js +71 -11
  209. package/dist/components/q2-form.js +6 -6
  210. package/dist/components/q2-formatted-text.js +2 -2
  211. package/dist/components/q2-input2.js +268 -163
  212. package/dist/components/q2-item2.js +33 -23
  213. package/dist/components/q2-legend2.js +7 -7
  214. package/dist/components/q2-list2.js +6 -6
  215. package/dist/components/q2-message2.js +29 -29
  216. package/dist/components/q2-meter.js +7 -7
  217. package/dist/components/q2-modal.js +94 -76
  218. package/dist/components/q2-month-picker.js +17 -17
  219. package/dist/components/q2-mutation-observer.js +1 -1
  220. package/dist/components/q2-optgroup2.js +7 -7
  221. package/dist/components/q2-option-list2.js +52 -32
  222. package/dist/components/q2-otp.js +8 -8
  223. package/dist/components/q2-pagination.js +67 -67
  224. package/dist/components/q2-pill.js +17 -15
  225. package/dist/components/q2-popover2.js +77 -53
  226. package/dist/components/q2-radio-group.js +70 -40
  227. package/dist/components/q2-radio.js +40 -55
  228. package/dist/components/q2-relative-time.js +5 -5
  229. package/dist/components/q2-resize-observer2.js +23 -23
  230. package/dist/components/q2-search.js +6 -6
  231. package/dist/components/q2-section.js +33 -33
  232. package/dist/components/q2-select2.js +47 -40
  233. package/dist/components/q2-stepper-pane.js +17 -13
  234. package/dist/components/q2-stepper-vertical.js +4 -4
  235. package/dist/components/q2-stepper.js +57 -57
  236. package/dist/components/q2-surface.js +3 -3
  237. package/dist/components/q2-tab-container.js +18 -18
  238. package/dist/components/q2-tab-pane.js +2 -2
  239. package/dist/components/q2-tag2.js +8 -6
  240. package/dist/components/q2-textarea.js +3 -3
  241. package/dist/components/sectorHelper.js +78 -78
  242. package/dist/components/tecton-tab-pane.js +12 -11
  243. package/dist/esm/{charting-DOZct-UB.js → charting-DFXJklqs.js} +79 -1
  244. package/dist/esm/click-elsewhere_3.entry.js +85 -20
  245. package/dist/esm/{dataSample-Dm1zpQNi.js → dataSample-CP_VKNqt.js} +1 -1
  246. package/dist/esm/date-picker-helpers-D8QnN_AS.js +242 -0
  247. package/dist/esm/{index-Cps4jSQM.js → index-CP8pXJ-l.js} +2 -2
  248. package/dist/esm/loader.js +1 -1
  249. package/dist/esm/{q2-action-group_2.entry.js → q2-action-group.entry.js} +3 -90
  250. package/dist/esm/q2-action-sheet.entry.js +99 -19
  251. package/dist/esm/q2-avatar.entry.js +1 -1
  252. package/dist/esm/q2-badge_2.entry.js +113 -12
  253. package/dist/esm/q2-btn_2.entry.js +2 -2
  254. package/dist/esm/q2-calendar.entry.js +14 -7
  255. package/dist/esm/q2-card-image.entry.js +4 -4
  256. package/dist/esm/q2-card.entry.js +1 -1
  257. package/dist/esm/q2-carousel-pane.entry.js +3 -3
  258. package/dist/esm/q2-carousel.entry.js +20 -6
  259. package/dist/esm/q2-chart-area.entry.js +38 -7
  260. package/dist/esm/q2-chart-bar.entry.js +39 -8
  261. package/dist/esm/q2-chart-donut.entry.js +31 -13
  262. package/dist/esm/q2-checkbox-group.entry.js +3 -3
  263. package/dist/esm/q2-checkbox_2.entry.js +9 -6
  264. package/dist/esm/q2-context.entry.js +6 -5
  265. package/dist/esm/q2-currency.entry.js +1 -1
  266. package/dist/esm/q2-data-table.entry.js +7 -7
  267. package/dist/esm/q2-date-calendar.entry.js +450 -0
  268. package/dist/esm/q2-date-picker_2.entry.js +965 -0
  269. package/dist/esm/q2-detail.entry.js +2 -2
  270. package/dist/esm/q2-dropdown-item.entry.js +1 -1
  271. package/dist/esm/q2-dropdown.entry.js +4 -4
  272. package/dist/esm/q2-editable-field.entry.js +51 -37
  273. package/dist/esm/q2-example.entry.js +1 -1
  274. package/dist/esm/q2-file-picker.entry.js +60 -4
  275. package/dist/esm/q2-form.entry.js +1 -1
  276. package/dist/esm/q2-formatted-text.entry.js +1 -1
  277. package/dist/esm/q2-icon.entry.js +1 -1
  278. package/dist/esm/q2-item.entry.js +21 -3
  279. package/dist/esm/q2-legend.entry.js +1 -1
  280. package/dist/esm/q2-link_2.entry.js +2 -2
  281. package/dist/esm/q2-loc.entry.js +1 -1
  282. package/dist/esm/q2-message.entry.js +3 -3
  283. package/dist/esm/q2-meter.entry.js +2 -2
  284. package/dist/esm/q2-modal.entry.js +59 -17
  285. package/dist/esm/q2-month-picker.entry.js +3 -3
  286. package/dist/esm/q2-mutation-observer.entry.js +1 -1
  287. package/dist/esm/q2-option.entry.js +1 -1
  288. package/dist/esm/q2-otp.entry.js +5 -5
  289. package/dist/esm/q2-pagination.entry.js +4 -4
  290. package/dist/esm/q2-pill.entry.js +8 -5
  291. package/dist/esm/q2-radio-group.entry.js +22 -4
  292. package/dist/esm/q2-radio.entry.js +3 -3
  293. package/dist/esm/q2-relative-time.entry.js +3 -3
  294. package/dist/esm/q2-resize-observer.entry.js +90 -0
  295. package/dist/esm/q2-search.entry.js +4 -4
  296. package/dist/esm/q2-section.entry.js +7 -7
  297. package/dist/esm/q2-select.entry.js +41 -21
  298. package/dist/esm/q2-stepper-pane.entry.js +2 -2
  299. package/dist/esm/q2-stepper-vertical.entry.js +2 -2
  300. package/dist/esm/q2-stepper.entry.js +2 -2
  301. package/dist/esm/q2-surface.entry.js +1 -1
  302. package/dist/esm/q2-tab-container.entry.js +2 -2
  303. package/dist/esm/q2-tab-pane.entry.js +1 -1
  304. package/dist/esm/q2-tecton-elements.js +1 -1
  305. package/dist/esm/q2-textarea.entry.js +2 -2
  306. package/dist/esm/q2-toast.entry.js +1 -1
  307. package/dist/esm/q2-tooltip.entry.js +1 -1
  308. package/dist/esm/{sectorHelper--RMGWGAy.js → sectorHelper-DBtkWtpl.js} +1 -1
  309. package/dist/esm/tecton-tab-pane.entry.js +5 -3
  310. package/dist/q2-tecton-elements/{charting-DOZct-UB.js → charting-DFXJklqs.js} +1625 -1554
  311. package/dist/q2-tecton-elements/click-elsewhere_3.entry.js +98 -54
  312. package/dist/q2-tecton-elements/{dataSample-Dm1zpQNi.js → dataSample-CP_VKNqt.js} +33 -33
  313. package/dist/q2-tecton-elements/date-picker-helpers-D8QnN_AS.js +153 -0
  314. package/dist/q2-tecton-elements/{index-Cps4jSQM.js → index-CP8pXJ-l.js} +2 -2
  315. package/dist/q2-tecton-elements/{q2-action-group_2.entry.js → q2-action-group.entry.js} +35 -113
  316. package/dist/q2-tecton-elements/q2-action-sheet.entry.js +169 -84
  317. package/dist/q2-tecton-elements/q2-avatar.entry.js +8 -8
  318. package/dist/q2-tecton-elements/q2-badge_2.entry.js +240 -140
  319. package/dist/q2-tecton-elements/q2-btn_2.entry.js +23 -23
  320. package/dist/q2-tecton-elements/q2-calendar.entry.js +18 -13
  321. package/dist/q2-tecton-elements/q2-card-image.entry.js +9 -9
  322. package/dist/q2-tecton-elements/q2-card.entry.js +1 -1
  323. package/dist/q2-tecton-elements/q2-carousel-pane.entry.js +4 -4
  324. package/dist/q2-tecton-elements/q2-carousel.entry.js +24 -11
  325. package/dist/q2-tecton-elements/q2-chart-area.entry.js +190 -144
  326. package/dist/q2-tecton-elements/q2-chart-bar.entry.js +382 -338
  327. package/dist/q2-tecton-elements/q2-chart-donut.entry.js +186 -160
  328. package/dist/q2-tecton-elements/q2-checkbox-group.entry.js +8 -8
  329. package/dist/q2-tecton-elements/q2-checkbox_2.entry.js +21 -19
  330. package/dist/q2-tecton-elements/q2-context.entry.js +18 -17
  331. package/dist/q2-tecton-elements/q2-currency.entry.js +9 -9
  332. package/dist/q2-tecton-elements/q2-data-table.entry.js +38 -38
  333. package/dist/q2-tecton-elements/q2-date-calendar.entry.js +438 -0
  334. package/dist/q2-tecton-elements/q2-date-picker_2.entry.js +792 -0
  335. package/dist/q2-tecton-elements/q2-detail.entry.js +4 -4
  336. package/dist/q2-tecton-elements/q2-dropdown-item.entry.js +1 -1
  337. package/dist/q2-tecton-elements/q2-dropdown.entry.js +10 -10
  338. package/dist/q2-tecton-elements/q2-editable-field.entry.js +50 -41
  339. package/dist/q2-tecton-elements/q2-example.entry.js +1 -1
  340. package/dist/q2-tecton-elements/q2-file-picker.entry.js +62 -7
  341. package/dist/q2-tecton-elements/q2-form.entry.js +2 -2
  342. package/dist/q2-tecton-elements/q2-formatted-text.entry.js +2 -2
  343. package/dist/q2-tecton-elements/q2-icon.entry.js +1 -1
  344. package/dist/q2-tecton-elements/q2-item.entry.js +27 -17
  345. package/dist/q2-tecton-elements/q2-legend.entry.js +2 -2
  346. package/dist/q2-tecton-elements/q2-link_2.entry.js +7 -7
  347. package/dist/q2-tecton-elements/q2-loc.entry.js +1 -1
  348. package/dist/q2-tecton-elements/q2-message.entry.js +30 -30
  349. package/dist/q2-tecton-elements/q2-meter.entry.js +8 -8
  350. package/dist/q2-tecton-elements/q2-modal.entry.js +61 -45
  351. package/dist/q2-tecton-elements/q2-month-picker.entry.js +14 -14
  352. package/dist/q2-tecton-elements/q2-mutation-observer.entry.js +1 -1
  353. package/dist/q2-tecton-elements/q2-option.entry.js +1 -1
  354. package/dist/q2-tecton-elements/q2-otp.entry.js +9 -9
  355. package/dist/q2-tecton-elements/q2-pagination.entry.js +20 -20
  356. package/dist/q2-tecton-elements/q2-pill.entry.js +43 -41
  357. package/dist/q2-tecton-elements/q2-radio-group.entry.js +55 -34
  358. package/dist/q2-tecton-elements/q2-radio.entry.js +38 -53
  359. package/dist/q2-tecton-elements/q2-relative-time.entry.js +11 -11
  360. package/dist/q2-tecton-elements/q2-resize-observer.entry.js +81 -0
  361. package/dist/q2-tecton-elements/q2-search.entry.js +7 -7
  362. package/dist/q2-tecton-elements/q2-section.entry.js +25 -25
  363. package/dist/q2-tecton-elements/q2-select.entry.js +28 -21
  364. package/dist/q2-tecton-elements/q2-stepper-pane.entry.js +19 -15
  365. package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js +9 -9
  366. package/dist/q2-tecton-elements/q2-stepper.entry.js +45 -45
  367. package/dist/q2-tecton-elements/q2-surface.entry.js +3 -3
  368. package/dist/q2-tecton-elements/q2-tab-container.entry.js +15 -15
  369. package/dist/q2-tecton-elements/q2-tab-pane.entry.js +9 -9
  370. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  371. package/dist/q2-tecton-elements/q2-textarea.entry.js +3 -3
  372. package/dist/q2-tecton-elements/q2-toast.entry.js +1 -1
  373. package/dist/q2-tecton-elements/q2-tooltip.entry.js +1 -1
  374. package/dist/q2-tecton-elements/{sectorHelper--RMGWGAy.js → sectorHelper-DBtkWtpl.js} +56 -56
  375. package/dist/q2-tecton-elements/tecton-tab-pane.entry.js +8 -7
  376. package/dist/types/components/q2-action-sheet/q2-action-sheet.d.ts +21 -1
  377. package/dist/types/components/q2-action-sheet/test/q2-action-sheet-test.vr.d.ts +1 -0
  378. package/dist/types/components/q2-btn/q2-btn.d.ts +7 -3
  379. package/dist/types/components/q2-calendar/q2-calendar.d.ts +10 -2
  380. package/dist/types/components/q2-card-image/q2-card-image.d.ts +1 -1
  381. package/dist/types/components/q2-carousel/q2-carousel.d.ts +5 -0
  382. package/dist/types/components/q2-chart-area/q2-chart-area.d.ts +11 -2
  383. package/dist/types/components/q2-chart-bar/q2-chart-bar.d.ts +9 -0
  384. package/dist/types/components/q2-chart-donut/q2-chart-donut.d.ts +1 -0
  385. package/dist/types/components/q2-checkbox/q2-checkbox.d.ts +4 -3
  386. package/dist/types/components/q2-checkbox-group/q2-checkbox-group.d.ts +4 -2
  387. package/dist/types/components/q2-date-calendar/q2-date-calendar.d.ts +122 -0
  388. package/dist/types/components/q2-date-calendar/test/q2-date-calendar-test.vr.d.ts +1 -0
  389. package/dist/types/components/q2-date-picker/q2-date-picker.d.ts +304 -0
  390. package/dist/types/components/q2-date-picker/test/q2-date-picker-test.vr.d.ts +1 -0
  391. package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +3 -3
  392. package/dist/types/components/q2-dropdown/test/q2-dropdown-test.vr.d.ts +1 -0
  393. package/dist/types/components/q2-editable-field/q2-editable-field.d.ts +20 -2
  394. package/dist/types/components/q2-file-picker/q2-file-picker.d.ts +20 -0
  395. package/dist/types/components/q2-input/q2-input.d.ts +32 -4
  396. package/dist/types/components/q2-item/q2-item.d.ts +3 -0
  397. package/dist/types/components/q2-modal/q2-modal.d.ts +10 -1
  398. package/dist/types/components/q2-option-list/q2-option-list.d.ts +1 -0
  399. package/dist/types/components/q2-popover/q2-popover.d.ts +4 -0
  400. package/dist/types/components/q2-radio/q2-radio.d.ts +3 -2
  401. package/dist/types/components/q2-radio-group/q2-radio-group.d.ts +18 -2
  402. package/dist/types/components/q2-search/q2-search.d.ts +3 -1
  403. package/dist/types/components/q2-select/q2-select.d.ts +12 -4
  404. package/dist/types/components/q2-textarea/q2-textarea.d.ts +4 -2
  405. package/dist/types/components.d.ts +1112 -195
  406. package/dist/types/global.d.ts +1 -0
  407. package/dist/types/index.d.ts +1 -0
  408. package/dist/types/utils/chart-keyboard.d.ts +16 -0
  409. package/dist/types/utils/date-picker/date-picker-helpers.d.ts +47 -0
  410. package/dist/types/utils/date-picker/date-picker-types.d.ts +42 -0
  411. package/dist/types/utils/test/vr-helpers.d.ts +2 -0
  412. package/package.json +3 -3
  413. package/dist/cjs/q2-optgroup.cjs.entry.js +0 -70
  414. package/dist/esm/q2-optgroup.entry.js +0 -68
  415. package/dist/q2-tecton-elements/q2-optgroup.entry.js +0 -88
@@ -7,6 +7,7 @@
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
8
  import { ActionSheetData, ActionSheetListCloseData } from "q2-tecton-common/lib/types/action-sheet";
9
9
  import { ChartData, DonutChartData, EventDetail, FilesObject, FormatterValueObject, Q2DataTableHeader, Q2DataTableRow, Q2DataTableSerializedRow, StepperPaneEvent, ValidFileStatus } from "q2-tecton-common/lib/types/elements";
10
+ import { DatePickerChangeDetail, DatePickerCloseDetail, DatePickerDisplayFormat, DatePickerErrorDetail, DatePickerMode, DatePickerMomentLike, DatePickerSuccessDetail, DatePickerValue } from "./utils/date-picker/date-picker-types";
10
11
  import { Q2Input } from "./components/q2-input/q2-input";
11
12
  import { TQ2GridAlignOptions, TQ2GridColumnsOptions, TQ2GridGapOptions, TQ2GridJustifyOptions, TQ2GridRowsOptions } from "./components/q2-grid/q2-grid";
12
13
  import { TQ2GridAreaAlignOptions, TQ2GridAreaColumnSpanOptions, TQ2GridAreaColumnStartOptions, TQ2GridAreaJustifyOptions, TQ2GridAreaRowSpanOptions, TQ2GridAreaRowStartOptions, TQ2GridAreaZIndexOptions } from "./components/q2-grid-area/q2-grid-area";
@@ -18,6 +19,7 @@ import { OptionValue, ValidOptionElements } from "./components/q2-option-list/q2
18
19
  import { OptionValue as OptionValue1 } from "./components/q2-option-list/q2-option-list";
19
20
  export { ActionSheetData, ActionSheetListCloseData } from "q2-tecton-common/lib/types/action-sheet";
20
21
  export { ChartData, DonutChartData, EventDetail, FilesObject, FormatterValueObject, Q2DataTableHeader, Q2DataTableRow, Q2DataTableSerializedRow, StepperPaneEvent, ValidFileStatus } from "q2-tecton-common/lib/types/elements";
22
+ export { DatePickerChangeDetail, DatePickerCloseDetail, DatePickerDisplayFormat, DatePickerErrorDetail, DatePickerMode, DatePickerMomentLike, DatePickerSuccessDetail, DatePickerValue } from "./utils/date-picker/date-picker-types";
21
23
  export { Q2Input } from "./components/q2-input/q2-input";
22
24
  export { TQ2GridAlignOptions, TQ2GridColumnsOptions, TQ2GridGapOptions, TQ2GridJustifyOptions, TQ2GridRowsOptions } from "./components/q2-grid/q2-grid";
23
25
  export { TQ2GridAreaAlignOptions, TQ2GridAreaColumnSpanOptions, TQ2GridAreaColumnStartOptions, TQ2GridAreaJustifyOptions, TQ2GridAreaRowSpanOptions, TQ2GridAreaRowStartOptions, TQ2GridAreaZIndexOptions } from "./components/q2-grid-area/q2-grid-area";
@@ -188,20 +190,26 @@ export namespace Components {
188
190
  "form": string;
189
191
  /**
190
192
  * Hides the `label`, and assigns its value to the `aria-label` attribute on the `<button>` element.
193
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance. Use for icon-only buttons.
191
194
  */
192
195
  "hideLabel": boolean;
193
196
  /**
194
- * Indicates the role of the component in the workflow, which will apply appropriate styling to the component.
197
+ * Indicates the intended action type, which applies the appropriate styling. Use unprefixed values by default. The legacy `workflow-` prefix remains supported for backward compatibility.
195
198
  */
196
199
  "intent": | 'coin'
200
+ | 'destroy'
201
+ | 'escape'
197
202
  | 'neutral-text'
198
203
  | 'neutral'
204
+ | 'primary'
205
+ | 'secondary'
199
206
  | 'workflow-destroy'
200
207
  | 'workflow-escape'
201
208
  | 'workflow-primary'
202
209
  | 'workflow-secondary';
203
210
  /**
204
211
  * Defines the text content of the button if it is not provided in the `<slot>` of the element. Also used for the `aria-label` of the `<button>` element when only displaying an icon.
212
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
205
213
  * @localizable
206
214
  */
207
215
  "label": string;
@@ -291,6 +299,7 @@ export namespace Components {
291
299
  "errors": string[];
292
300
  /**
293
301
  * Hide the input field's ` <label> ` element from view.
302
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
294
303
  */
295
304
  "hideLabel": boolean;
296
305
  /**
@@ -310,6 +319,7 @@ export namespace Components {
310
319
  "invalidDates": string[];
311
320
  /**
312
321
  * The visible label for the `q2-calendar` input field.
322
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
313
323
  */
314
324
  "label": string;
315
325
  /**
@@ -498,7 +508,15 @@ export namespace Components {
498
508
  /**
499
509
  * The status of the card. When set, renders a status banner at the top of the card for card sizes medium and up.
500
510
  */
501
- "cardStatus"?: 'digital' | 'enabled' | 'disabled' | 'locked' | 'damaged' | 'lost' | 'stolen' | 'lost or stolen';
511
+ "cardStatus"?: | 'digital'
512
+ | 'enabled'
513
+ | 'new'
514
+ | 'disabled'
515
+ | 'locked'
516
+ | 'damaged'
517
+ | 'lost'
518
+ | 'stolen'
519
+ | 'lost or stolen';
502
520
  /**
503
521
  * The card type label displayed alongside the expiration date. Not rendered at tiny size.
504
522
  */
@@ -1041,8 +1059,8 @@ export namespace Components {
1041
1059
  */
1042
1060
  "hasError": boolean;
1043
1061
  /**
1044
- * Hide's the field's `<label>` element from view.
1045
- * @warning Only use when a visible label is impractical.
1062
+ * Hides the field's `<label>` element from view.
1063
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
1046
1064
  */
1047
1065
  "hideLabel": boolean;
1048
1066
  /**
@@ -1051,6 +1069,7 @@ export namespace Components {
1051
1069
  "indeterminate": boolean;
1052
1070
  /**
1053
1071
  * The visible label text for the checkbox. Appears to the right of the box for 'default' and 'favorite' checkboxes, and to the left for 'toggle' checkboxes. Yielded content will be adjacent to this text.
1072
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
1054
1073
  * @localizable
1055
1074
  */
1056
1075
  "label": string;
@@ -1090,12 +1109,13 @@ export namespace Components {
1090
1109
  */
1091
1110
  "hasError": boolean;
1092
1111
  /**
1093
- * Hide's the group's `<label>` element from view.
1094
- * @warning Only use when a visible label is impractical.
1112
+ * Hides the group's `<label>` element from view.
1113
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
1095
1114
  */
1096
1115
  "hideLabel": boolean;
1097
1116
  /**
1098
1117
  * The label that displays above all the checkboxes.
1118
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
1099
1119
  * @localizable
1100
1120
  */
1101
1121
  "label": string;
@@ -1292,6 +1312,311 @@ export namespace Components {
1292
1312
  */
1293
1313
  "toggleSelectAllRows": () => Promise<void>;
1294
1314
  }
1315
+ /**
1316
+ * @name Date Calendar
1317
+ * @category Forms
1318
+ * @summary Use for selecting dates from a standalone calendar.
1319
+ */
1320
+ interface Q2DateCalendar {
1321
+ /**
1322
+ * Accessible calendar dialog label.
1323
+ */
1324
+ "accessibleLabel": string;
1325
+ /**
1326
+ * Uses the action-sheet calendar presentation.
1327
+ * @default false
1328
+ */
1329
+ "actionSheet": boolean;
1330
+ /**
1331
+ * Accessible and visible calendar label.
1332
+ */
1333
+ "calendarLabel": string;
1334
+ /**
1335
+ * Specifies a time of day after which a date is no longer valid.
1336
+ */
1337
+ "cutoffTime": string;
1338
+ /**
1339
+ * Defines valid days of the week using calendar checksum values.
1340
+ */
1341
+ "daysOfWeekChecksum": number;
1342
+ /**
1343
+ * Controls whether navigation appears above or below the date grid.
1344
+ * @default 'down'
1345
+ */
1346
+ "direction": 'up' | 'down';
1347
+ /**
1348
+ * Disables calendar interaction.
1349
+ * @default false
1350
+ */
1351
+ "disabled": boolean;
1352
+ /**
1353
+ * Localized disclaimer content.
1354
+ */
1355
+ "disclaimer": string;
1356
+ /**
1357
+ * Controls the date format used in range summaries.
1358
+ */
1359
+ "displayFormat"?: DatePickerDisplayFormat;
1360
+ /**
1361
+ * Defines the last selectable date.
1362
+ */
1363
+ "endDate": string;
1364
+ /**
1365
+ * Moves the visible month to the provided date and focuses that day.
1366
+ */
1367
+ "focusDate": (value: string | Date) => Promise<void>;
1368
+ /**
1369
+ * Defines an explicit date blacklist using ISO date strings.
1370
+ */
1371
+ "invalidDates": string[];
1372
+ /**
1373
+ * Formats calendar and range labels using the provided locale.
1374
+ * @default document.documentElement.lang || 'en-US'
1375
+ */
1376
+ "locale": string | string[];
1377
+ /**
1378
+ * Selects single-date or range calendar behavior.
1379
+ * @default 'single'
1380
+ */
1381
+ "mode": DatePickerMode;
1382
+ /**
1383
+ * Indicates that a new calendar session has opened.
1384
+ * @default false
1385
+ */
1386
+ "open": boolean;
1387
+ /**
1388
+ * The committed range end as an ISO date string.
1389
+ */
1390
+ "rangeEnd": string;
1391
+ /**
1392
+ * The committed range start as an ISO date string.
1393
+ */
1394
+ "rangeStart": string;
1395
+ /**
1396
+ * Prevents calendar selection while retaining calendar visibility.
1397
+ * @default false
1398
+ */
1399
+ "readonly": boolean;
1400
+ /**
1401
+ * Selects the provided date when it satisfies the calendar constraints.
1402
+ */
1403
+ "setValue": (value: string | Date) => Promise<void>;
1404
+ /**
1405
+ * Defines the first selectable date.
1406
+ */
1407
+ "startDate": string;
1408
+ /**
1409
+ * Defines an explicit date whitelist using ISO date strings.
1410
+ */
1411
+ "validDates": string[];
1412
+ /**
1413
+ * The committed single date as an ISO date string.
1414
+ */
1415
+ "value": string;
1416
+ }
1417
+ /**
1418
+ * @name Date Picker
1419
+ * @category Forms
1420
+ * @summary Use for selecting a date or date range with an input and calendar popup.
1421
+ */
1422
+ interface Q2DatePicker {
1423
+ /**
1424
+ * Renders the calendar panel inline with behavior specific to being hosted by `q2-action-sheet`.
1425
+ * @private
1426
+ * @default false
1427
+ */
1428
+ "_actionSheet": boolean;
1429
+ /**
1430
+ * Determines the year for a committed month/day typeable date with no year. `future` selects the next year for dates before today, while `past` selects the prior year for dates after today. Only applies to `single-typeable` mode with a month-first or day-first display format.
1431
+ * @default 'current'
1432
+ */
1433
+ "assume": 'current' | 'future' | 'past';
1434
+ /**
1435
+ * A label shown above the date picker navigation.
1436
+ */
1437
+ "calendarLabel": string;
1438
+ /**
1439
+ * Displays a button in the input field allowing the user to clear the selected date or range.
1440
+ * @default false
1441
+ */
1442
+ "clearable": boolean;
1443
+ /**
1444
+ * Delay in milliseconds before the popover closes after selection. Explicitly undefined or non-positive values close immediately.
1445
+ * @default 400
1446
+ */
1447
+ "closeDelay": number | undefined;
1448
+ /**
1449
+ * Closes the calendar popover if it is open.
1450
+ */
1451
+ "closePopover": () => Promise<void>;
1452
+ /**
1453
+ * Specifies a time of day after which a date is no longer valid.
1454
+ * @warning Must be a valid ISO date string.
1455
+ */
1456
+ "cutoffTime": string;
1457
+ /**
1458
+ * Defines valid days of the week using the calendar checksum values. Sunday begins at `1` and each following day doubles through Saturday at `64`.
1459
+ */
1460
+ "daysOfWeekChecksum": number;
1461
+ /**
1462
+ * Indicates the date picker cannot be focused or interacted with.
1463
+ * @default false
1464
+ */
1465
+ "disabled": boolean;
1466
+ /**
1467
+ * Text displayed as the input placeholder when the field is disabled.
1468
+ */
1469
+ "disabledMsg": string;
1470
+ /**
1471
+ * Text shown below the date grid.
1472
+ */
1473
+ "disclaimer": string;
1474
+ /**
1475
+ * Formats the displayed date using legacy Moment-style tokens. Typeable modes support the numeric formats defined by `DatePickerDisplayFormat` and fall back to `MM/DD/YYYY` for other formats.
1476
+ */
1477
+ "displayFormat"?: string;
1478
+ /**
1479
+ * Defines the last selectable date. ISO date strings are preferred; legacy date strings and timestamps are normalized to their calendar date, without shifting timestamp time zones.
1480
+ */
1481
+ "endDate": string;
1482
+ /**
1483
+ * Consumer-provided error messages displayed below the input field.
1484
+ */
1485
+ "errors": string[];
1486
+ /**
1487
+ * Moves the visible month to the provided date and focuses that day.
1488
+ */
1489
+ "focusDate": (date: Date) => Promise<void>;
1490
+ /**
1491
+ * Hides the input field's visible label while retaining its accessible name.
1492
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
1493
+ * @default false
1494
+ */
1495
+ "hideLabel": boolean;
1496
+ /**
1497
+ * Consumer-provided hint messages displayed below the input field.
1498
+ */
1499
+ "hints": string[];
1500
+ /**
1501
+ * Instructs the component to use the action sheet workflow for displaying its calendar. For more information, see [Action Sheets](https://tecton.q2developer.com/guides/action-sheets/).
1502
+ * @default window.Tecton?.useActionSheets ? true : undefined
1503
+ */
1504
+ "hoist": boolean | undefined;
1505
+ /**
1506
+ * Shows the input field's error visual state.
1507
+ * @default false
1508
+ */
1509
+ "invalid": boolean;
1510
+ /**
1511
+ * Defines an explicit date blacklist. ISO dates, legacy date strings, and timestamps are normalized to calendar dates. Assign a new array when changing this property. Mutating the existing array does not trigger validation updates.
1512
+ */
1513
+ "invalidDates": string[];
1514
+ /**
1515
+ * The visible label for the date picker input field.
1516
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
1517
+ */
1518
+ "label": string;
1519
+ /**
1520
+ * Formats selected dates using the provided locale. Accepts multiple locales in an array as sequential fallbacks.
1521
+ * @default document.documentElement.lang || 'en-US'
1522
+ */
1523
+ "locale": string | string[];
1524
+ /**
1525
+ * Selects calendar or typeable behavior for a single date or date range. Enabling the legacy `typeable` prop uses `single-typeable` when `mode` is left at its default; an explicit mode takes precedence.
1526
+ * @default 'single'
1527
+ */
1528
+ "mode": DatePickerMode;
1529
+ /**
1530
+ * Controls whether the date picker popover is open or closed.
1531
+ * @default false
1532
+ */
1533
+ "open": boolean;
1534
+ /**
1535
+ * Opens the calendar popover if it is closed.
1536
+ */
1537
+ "openPopover": () => Promise<void>;
1538
+ /**
1539
+ * Appends "(optional)" to the input label and marks the field as not required.
1540
+ * @default false
1541
+ */
1542
+ "optional": boolean;
1543
+ /**
1544
+ * Text shown in the input field when no date is selected.
1545
+ */
1546
+ "placeholder": string;
1547
+ /**
1548
+ * Forces the direction of the popover when it opens.
1549
+ * @deprecated Use `popoverDirection` instead.
1550
+ */
1551
+ "popDirection": 'up' | 'down';
1552
+ /**
1553
+ * Aligns the calendar popover to the left or right side of the input field.
1554
+ * @default 'left'
1555
+ */
1556
+ "popoverAlignment": 'left' | 'right';
1557
+ /**
1558
+ * Forces the direction of the popover when it opens. If no value is passed, the popover automatically selects a direction based on available space. Use `up` to place navigation below the date grid.
1559
+ */
1560
+ "popoverDirection": 'up' | 'down';
1561
+ /**
1562
+ * @deprecated Retained for compatibility with `q2-date-picker`.
1563
+ * @default 355
1564
+ */
1565
+ "popoverMinHeight": number;
1566
+ /**
1567
+ * Uses absolute positioning for the popover when set to `legacy`. This compatibility option supports layouts where transformed ancestors interfere with fixed positioning.
1568
+ * @default null
1569
+ */
1570
+ "popoverMode": 'legacy';
1571
+ /**
1572
+ * The selected range end. ISO dates, legacy date strings, and timestamps are accepted.
1573
+ */
1574
+ "rangeEnd": string;
1575
+ /**
1576
+ * The selected range start. ISO dates, legacy date strings, and timestamps are accepted.
1577
+ */
1578
+ "rangeStart": string;
1579
+ /**
1580
+ * The field's content is not editable, but the field remains focusable. Appends "(read only)" to the field label.
1581
+ * @default false
1582
+ */
1583
+ "readonly": boolean;
1584
+ /**
1585
+ * Clears selected values, uncommitted typeable input, and error state without changing configuration props.
1586
+ */
1587
+ "reset": () => Promise<void>;
1588
+ /**
1589
+ * Opens the calendar and selects the provided date when it is valid.
1590
+ */
1591
+ "setValue": (value: string | Date | DatePickerMomentLike) => Promise<void>;
1592
+ /**
1593
+ * Defines the first selectable date. ISO date strings are preferred; legacy date strings and timestamps are normalized to their calendar date, without shifting timestamp time zones.
1594
+ */
1595
+ "startDate": string;
1596
+ /**
1597
+ * Focuses the single typeable input and stages a valid date without committing it.
1598
+ * @warning Only applicable when the effective mode is `single-typeable`.
1599
+ */
1600
+ "typeValue": (value: string | Date) => Promise<void>;
1601
+ /**
1602
+ * Enables the legacy single-date typeable input behavior.
1603
+ * @default false
1604
+ */
1605
+ "typeable": boolean;
1606
+ /**
1607
+ * Shows the input field's success visual state when no errors are active.
1608
+ * @default false
1609
+ */
1610
+ "valid": boolean;
1611
+ /**
1612
+ * Defines an explicit date whitelist. ISO dates, legacy date strings, and timestamps are normalized to calendar dates. Assign a new array when changing this property. Mutating the existing array does not trigger validation updates.
1613
+ */
1614
+ "validDates": string[];
1615
+ /**
1616
+ * The selected date. ISO date strings are preferred; legacy date strings and Moment-like values are normalized to an ISO date string.
1617
+ */
1618
+ "value": DatePickerValue;
1619
+ }
1295
1620
  /**
1296
1621
  * @name Detail
1297
1622
  * @category Display
@@ -1374,8 +1699,8 @@ export namespace Components {
1374
1699
  */
1375
1700
  "fullWidth": boolean;
1376
1701
  /**
1377
- * Hide's the field's `<label>` element from view.
1378
- * @warning Only use when a visible label is impractical.
1702
+ * Hides the dropdown's label text from view.
1703
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
1379
1704
  */
1380
1705
  "hideLabel": boolean;
1381
1706
  /**
@@ -1389,7 +1714,7 @@ export namespace Components {
1389
1714
  "icon": string;
1390
1715
  /**
1391
1716
  * The text that appears within the button.
1392
- * @warning This property should not be used if the `type` is `icon`.
1717
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
1393
1718
  * @localizable
1394
1719
  */
1395
1720
  "label": string;
@@ -1547,7 +1872,8 @@ export namespace Components {
1547
1872
  */
1548
1873
  "formatModifier": string;
1549
1874
  /**
1550
- * Hide's the field's `<label>` element from view.
1875
+ * Hides the field's `<label>` element from view.
1876
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
1551
1877
  */
1552
1878
  "hideLabel": boolean;
1553
1879
  /**
@@ -1556,6 +1882,7 @@ export namespace Components {
1556
1882
  "hints": string[];
1557
1883
  /**
1558
1884
  * The visible descriptor for the element. Serves as the input label while in the edit state and as a decorative label for the read state when `persistentLabel` is `true`.
1885
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
1559
1886
  * @localizable
1560
1887
  * @default ''
1561
1888
  */
@@ -1627,6 +1954,11 @@ export namespace Components {
1627
1954
  * Disables the file picker, preventing user interaction.
1628
1955
  */
1629
1956
  "disabled": boolean;
1957
+ /**
1958
+ * When `false`, the file name renders as-is and may wrap. Otherwise, long file names are middle-ellipsized so the beginning and end of the name remain visible.
1959
+ * @default true
1960
+ */
1961
+ "ellipsizeFileName": boolean;
1630
1962
  /**
1631
1963
  * Allowed file types based on extensions (e.g., ['jpg', 'png', 'pdf'] or 'jpg, png, pdf'). When using the attribute, provide a comma-separated string (e.g., 'jpg, png, pdf'). Arrays can only be set programmatically via JavaScript.
1632
1964
  * @default []
@@ -1647,6 +1979,11 @@ export namespace Components {
1647
1979
  * @default Infinity
1648
1980
  */
1649
1981
  "maxFiles": number;
1982
+ /**
1983
+ * Shows a gradient at the bottom of the file list when more files are available below the visible area.
1984
+ * @default true
1985
+ */
1986
+ "showGradient": boolean;
1650
1987
  /**
1651
1988
  * An array of `ValidFileStatus` objects representing the upload status of files. Each `ValidFileStatus` object contains the following properties: - `name`: The file name. - `status`: The upload status, either `"failed"` or `"uploaded"`. - `message`: (Optional) A custom status message, used only when `status` is `"failed"`. This allows developers to provide more detail about upload failures while ensuring all other file status messages remain consistent with approved design/UX standards. Custom failure messages are limited to a single line.
1652
1989
  * @localizable
@@ -2065,6 +2402,11 @@ export namespace Components {
2065
2402
  * @summary Use for single-line text entry including email, phone, currency, SSN, and password.
2066
2403
  */
2067
2404
  interface Q2Input {
2405
+ /**
2406
+ * Provides additional descriptive text for the native input.
2407
+ * @private
2408
+ */
2409
+ "_ariaDescription": string;
2068
2410
  /**
2069
2411
  * Sets readonly to true on the input without adding the "read only" label. Can be used to prevent user input while still presenting the necessary information for assistive technology.
2070
2412
  * @private
@@ -2151,8 +2493,8 @@ export namespace Components {
2151
2493
  */
2152
2494
  "formatModifier": string;
2153
2495
  /**
2154
- * Hide's the field's `<label>` element from view.
2155
- * @warning Only use when a visible label is impractical.
2496
+ * Hides the field's `<label>` element from view.
2497
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
2156
2498
  */
2157
2499
  "hideLabel": boolean;
2158
2500
  /**
@@ -2175,6 +2517,7 @@ export namespace Components {
2175
2517
  "iconRight": Q2Icon['type'];
2176
2518
  /**
2177
2519
  * The label that appears above the field. This is announced by screen readers when the field is focused.
2520
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
2178
2521
  * @localizable
2179
2522
  */
2180
2523
  "label": string;
@@ -2231,7 +2574,7 @@ export namespace Components {
2231
2574
  "showCount": boolean;
2232
2575
  /**
2233
2576
  * Displays a toggle button at the end of the input field which shows or hides the actual value.
2234
- * @info Only applicable when `type` is `text`, `password`, or `ssn`.
2577
+ * @info Applicable when `type` is `text`, `password`, `ssn`, or `tin`, or when `visibleLastCount` is set.
2235
2578
  * @default false
2236
2579
  */
2237
2580
  "showVisibilityToggle": boolean;
@@ -2241,7 +2584,7 @@ export namespace Components {
2241
2584
  */
2242
2585
  "step": number;
2243
2586
  /**
2244
- * Controls visibility of the value when the type is `text`, `password`, or `ssn`. When the input type is `password`, it will default to `true`, hiding the text.
2587
+ * Controls visibility of the value. When `visibleLastCount` is set, hidden values keep the specified number of trailing characters visible. When the input type is `password`, it will default to `true`, hiding the text.
2245
2588
  */
2246
2589
  "textHidden": boolean;
2247
2590
  /**
@@ -2263,6 +2606,10 @@ export namespace Components {
2263
2606
  * @info The visible value of formatted input fields may not match the element's `value` property. When setting an input's value programmatically (e.g. pre-populating a form), ensure that the supplied value is in a format that can be handled by its consuming logic. `q2-input` updates its own `value` through its default input and change event handlers. In `q2-input` where `type="currency"` - element.value = 1234.56 - visible value: $1,234.56
2264
2607
  */
2265
2608
  "value": string;
2609
+ /**
2610
+ * Controls the number of trailing characters that remain visible when the field value is masked by `textHidden` or the visibility toggle. The element's `value` and emitted event details remain unmasked.
2611
+ */
2612
+ "visibleLastCount": number;
2266
2613
  }
2267
2614
  /**
2268
2615
  * @name Item
@@ -2562,7 +2909,7 @@ export namespace Components {
2562
2909
  */
2563
2910
  interface Q2Modal {
2564
2911
  /**
2565
- * Controls visibility of the close button in the top right corner.
2912
+ * Controls visibility of the close button and whether the modal can be dismissed with the backdrop or Escape key.
2566
2913
  * @default true
2567
2914
  */
2568
2915
  "closable": boolean;
@@ -2575,6 +2922,11 @@ export namespace Components {
2575
2922
  * A plain text description of the modal. Use this to provide context or information to the user.
2576
2923
  */
2577
2924
  "description": string;
2925
+ /**
2926
+ * Whether the action buttons should take up the full width of the modal footer.
2927
+ * @default true
2928
+ */
2929
+ "fullWidthButton": boolean;
2578
2930
  /**
2579
2931
  * The icon to display at the top of the modal. [See Icon documentation](https://tecton.q2developer.com/design-system/q2-icon).
2580
2932
  */
@@ -3125,11 +3477,12 @@ export namespace Components {
3125
3477
  "groupTileLayout": boolean;
3126
3478
  /**
3127
3479
  * Hides the field's `<label>` element from view.
3128
- * @warning Only use when a visible label is impractical.
3480
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
3129
3481
  */
3130
3482
  "hideLabel": boolean;
3131
3483
  /**
3132
3484
  * The text that describes the individual radio option.
3485
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
3133
3486
  * @localizable
3134
3487
  */
3135
3488
  "label": string;
@@ -3169,12 +3522,13 @@ export namespace Components {
3169
3522
  */
3170
3523
  "hasError": boolean;
3171
3524
  /**
3172
- * Hide's the group's `<label>` element from view.
3173
- * @warning Only use when a visible label is impractical.
3525
+ * Hides the group's `<label>` element from view.
3526
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
3174
3527
  */
3175
3528
  "hideLabel": boolean;
3176
3529
  /**
3177
3530
  * Text for the fieldset legend describing the radio group.
3531
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
3178
3532
  * @localizable
3179
3533
  */
3180
3534
  "label": string;
@@ -3186,6 +3540,17 @@ export namespace Components {
3186
3540
  * Appends "(optional)" to the group label, and sets `aria-required` on the nested input tag to `false`.
3187
3541
  */
3188
3542
  "optional": boolean;
3543
+ /**
3544
+ * The layout direction of radio options when `tileLayout` is not enabled.
3545
+ * @default 'vertical'
3546
+ */
3547
+ "orientation": 'vertical' | 'horizontal';
3548
+ /**
3549
+ * The width, in pixels, below which a horizontal non-tile layout displays vertically.
3550
+ * @info The component determines this based on its own width, not the browser window.
3551
+ * @default 440
3552
+ */
3553
+ "orientationThreshold": number;
3189
3554
  /**
3190
3555
  * Determines if all radios in the group can be focused, but not interacted with.
3191
3556
  */
@@ -3317,7 +3682,7 @@ export namespace Components {
3317
3682
  "filter": boolean;
3318
3683
  /**
3319
3684
  * Hides the field's `<label>` element from view.
3320
- * @warning Only use when a visible label is impractical.
3685
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
3321
3686
  * @default false
3322
3687
  */
3323
3688
  "hideLabel": boolean;
@@ -3327,6 +3692,7 @@ export namespace Components {
3327
3692
  "invalid": boolean;
3328
3693
  /**
3329
3694
  * The text that will be used as the label for the field.
3695
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
3330
3696
  * @localizable
3331
3697
  */
3332
3698
  "label": string;
@@ -3512,8 +3878,8 @@ export namespace Components {
3512
3878
  */
3513
3879
  "errors": string[];
3514
3880
  /**
3515
- * Hide's the field's `<label>` element from view.
3516
- * @warning Only use when a visible label is impractical.
3881
+ * Hides the field's `<label>` element from view.
3882
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
3517
3883
  */
3518
3884
  "hideLabel": boolean;
3519
3885
  /**
@@ -3528,6 +3894,7 @@ export namespace Components {
3528
3894
  "invalid": boolean;
3529
3895
  /**
3530
3896
  * The text that will be used as the label for the field.
3897
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
3531
3898
  * @localizable
3532
3899
  */
3533
3900
  "label": string;
@@ -3594,6 +3961,7 @@ export namespace Components {
3594
3961
  "searchOptions": (query: string) => Promise<void>;
3595
3962
  /**
3596
3963
  * Enables search functionality.
3964
+ * @warning `searchable` is not compatible with the `hoist` prop. The action sheet workflow used when `hoist` is `true` does not support in-list search filtering. If both are set, `searchable` has no effect while the action sheet is active.
3597
3965
  * @default false
3598
3966
  */
3599
3967
  "searchable": boolean;
@@ -3934,8 +4302,8 @@ export namespace Components {
3934
4302
  */
3935
4303
  "errors": string[];
3936
4304
  /**
3937
- * Hide's the field's `<label>` element from view.
3938
- * @warning Only use when a visible label is impractical.
4305
+ * Hides the field's `<label>` element from view.
4306
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
3939
4307
  */
3940
4308
  "hideLabel": boolean;
3941
4309
  /**
@@ -3950,6 +4318,7 @@ export namespace Components {
3950
4318
  "hints": string[];
3951
4319
  /**
3952
4320
  * The label that appears above the field. This is announced by screen readers when the field is focused.
4321
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
3953
4322
  * @localizable
3954
4323
  */
3955
4324
  "label": string;
@@ -4169,6 +4538,14 @@ export interface Q2DataTableCustomEvent<T> extends CustomEvent<T> {
4169
4538
  detail: T;
4170
4539
  target: HTMLQ2DataTableElement;
4171
4540
  }
4541
+ export interface Q2DateCalendarCustomEvent<T> extends CustomEvent<T> {
4542
+ detail: T;
4543
+ target: HTMLQ2DateCalendarElement;
4544
+ }
4545
+ export interface Q2DatePickerCustomEvent<T> extends CustomEvent<T> {
4546
+ detail: T;
4547
+ target: HTMLQ2DatePickerElement;
4548
+ }
4172
4549
  export interface Q2DropdownItemCustomEvent<T> extends CustomEvent<T> {
4173
4550
  detail: T;
4174
4551
  target: HTMLQ2DropdownItemElement;
@@ -4706,19 +5083,74 @@ declare global {
4706
5083
  prototype: HTMLQ2DataTableElement;
4707
5084
  new (): HTMLQ2DataTableElement;
4708
5085
  };
4709
- /**
4710
- * @name Detail
4711
- * @category Display
4712
- * @summary Use for displaying label-value pairs like account details or miscellaneous info.
4713
- */
4714
- interface HTMLQ2DetailElement extends Components.Q2Detail, HTMLStencilElement {
5086
+ interface HTMLQ2DateCalendarElementEventMap {
5087
+ "tctCalendarCancel": void;
5088
+ "tctCalendarCommit": DatePickerChangeDetail;
5089
+ "tctCalendarDismiss": void;
5090
+ "tctCalendarError": string;
5091
+ "tctChange": DatePickerChangeDetail;
4715
5092
  }
4716
- var HTMLQ2DetailElement: {
4717
- prototype: HTMLQ2DetailElement;
4718
- new (): HTMLQ2DetailElement;
4719
- };
4720
5093
  /**
4721
- * @name Dropdown
5094
+ * @name Date Calendar
5095
+ * @category Forms
5096
+ * @summary Use for selecting dates from a standalone calendar.
5097
+ */
5098
+ interface HTMLQ2DateCalendarElement extends Components.Q2DateCalendar, HTMLStencilElement {
5099
+ addEventListener<K extends keyof HTMLQ2DateCalendarElementEventMap>(type: K, listener: (this: HTMLQ2DateCalendarElement, ev: Q2DateCalendarCustomEvent<HTMLQ2DateCalendarElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
5100
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
5101
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
5102
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
5103
+ removeEventListener<K extends keyof HTMLQ2DateCalendarElementEventMap>(type: K, listener: (this: HTMLQ2DateCalendarElement, ev: Q2DateCalendarCustomEvent<HTMLQ2DateCalendarElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
5104
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
5105
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
5106
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
5107
+ }
5108
+ var HTMLQ2DateCalendarElement: {
5109
+ prototype: HTMLQ2DateCalendarElement;
5110
+ new (): HTMLQ2DateCalendarElement;
5111
+ };
5112
+ interface HTMLQ2DatePickerElementEventMap {
5113
+ "change": DatePickerChangeDetail;
5114
+ "error": DatePickerErrorDetail;
5115
+ "success": DatePickerSuccessDetail;
5116
+ "tctCancel": void;
5117
+ "tctChange": DatePickerChangeDetail;
5118
+ "tctClose": DatePickerCloseDetail | void;
5119
+ "tctError": DatePickerErrorDetail;
5120
+ "tctSuccess": DatePickerSuccessDetail;
5121
+ }
5122
+ /**
5123
+ * @name Date Picker
5124
+ * @category Forms
5125
+ * @summary Use for selecting a date or date range with an input and calendar popup.
5126
+ */
5127
+ interface HTMLQ2DatePickerElement extends Components.Q2DatePicker, HTMLStencilElement {
5128
+ addEventListener<K extends keyof HTMLQ2DatePickerElementEventMap>(type: K, listener: (this: HTMLQ2DatePickerElement, ev: Q2DatePickerCustomEvent<HTMLQ2DatePickerElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
5129
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
5130
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
5131
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
5132
+ removeEventListener<K extends keyof HTMLQ2DatePickerElementEventMap>(type: K, listener: (this: HTMLQ2DatePickerElement, ev: Q2DatePickerCustomEvent<HTMLQ2DatePickerElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
5133
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
5134
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
5135
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
5136
+ }
5137
+ var HTMLQ2DatePickerElement: {
5138
+ prototype: HTMLQ2DatePickerElement;
5139
+ new (): HTMLQ2DatePickerElement;
5140
+ };
5141
+ /**
5142
+ * @name Detail
5143
+ * @category Display
5144
+ * @summary Use for displaying label-value pairs like account details or miscellaneous info.
5145
+ */
5146
+ interface HTMLQ2DetailElement extends Components.Q2Detail, HTMLStencilElement {
5147
+ }
5148
+ var HTMLQ2DetailElement: {
5149
+ prototype: HTMLQ2DetailElement;
5150
+ new (): HTMLQ2DetailElement;
5151
+ };
5152
+ /**
5153
+ * @name Dropdown
4722
5154
  * @category Display
4723
5155
  * @summary Use for menus of contextual actions triggered by a button click.
4724
5156
  */
@@ -5035,6 +5467,7 @@ declare global {
5035
5467
  new (): HTMLQ2MeterElement;
5036
5468
  };
5037
5469
  interface HTMLQ2ModalElementEventMap {
5470
+ "tctBackdropClick": undefined;
5038
5471
  "tctClick": any;
5039
5472
  "tctClose": any;
5040
5473
  "tctOpen": any;
@@ -5682,6 +6115,8 @@ declare global {
5682
6115
  "q2-context": HTMLQ2ContextElement;
5683
6116
  "q2-currency": HTMLQ2CurrencyElement;
5684
6117
  "q2-data-table": HTMLQ2DataTableElement;
6118
+ "q2-date-calendar": HTMLQ2DateCalendarElement;
6119
+ "q2-date-picker": HTMLQ2DatePickerElement;
5685
6120
  "q2-detail": HTMLQ2DetailElement;
5686
6121
  "q2-dropdown": HTMLQ2DropdownElement;
5687
6122
  "q2-dropdown-item": HTMLQ2DropdownItemElement;
@@ -5911,20 +6346,26 @@ declare namespace LocalJSX {
5911
6346
  "form"?: string;
5912
6347
  /**
5913
6348
  * Hides the `label`, and assigns its value to the `aria-label` attribute on the `<button>` element.
6349
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance. Use for icon-only buttons.
5914
6350
  */
5915
6351
  "hideLabel"?: boolean;
5916
6352
  /**
5917
- * Indicates the role of the component in the workflow, which will apply appropriate styling to the component.
6353
+ * Indicates the intended action type, which applies the appropriate styling. Use unprefixed values by default. The legacy `workflow-` prefix remains supported for backward compatibility.
5918
6354
  */
5919
6355
  "intent"?: | 'coin'
6356
+ | 'destroy'
6357
+ | 'escape'
5920
6358
  | 'neutral-text'
5921
6359
  | 'neutral'
6360
+ | 'primary'
6361
+ | 'secondary'
5922
6362
  | 'workflow-destroy'
5923
6363
  | 'workflow-escape'
5924
6364
  | 'workflow-primary'
5925
6365
  | 'workflow-secondary';
5926
6366
  /**
5927
6367
  * Defines the text content of the button if it is not provided in the `<slot>` of the element. Also used for the `aria-label` of the `<button>` element when only displaying an icon.
6368
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
5928
6369
  * @localizable
5929
6370
  */
5930
6371
  "label"?: string;
@@ -6013,6 +6454,7 @@ declare namespace LocalJSX {
6013
6454
  "errors"?: string[];
6014
6455
  /**
6015
6456
  * Hide the input field's ` <label> ` element from view.
6457
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
6016
6458
  */
6017
6459
  "hideLabel"?: boolean;
6018
6460
  /**
@@ -6032,6 +6474,7 @@ declare namespace LocalJSX {
6032
6474
  "invalidDates"?: string[];
6033
6475
  /**
6034
6476
  * The visible label for the `q2-calendar` input field.
6477
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
6035
6478
  */
6036
6479
  "label"?: string;
6037
6480
  /**
@@ -6254,7 +6697,15 @@ declare namespace LocalJSX {
6254
6697
  /**
6255
6698
  * The status of the card. When set, renders a status banner at the top of the card for card sizes medium and up.
6256
6699
  */
6257
- "cardStatus"?: 'digital' | 'enabled' | 'disabled' | 'locked' | 'damaged' | 'lost' | 'stolen' | 'lost or stolen';
6700
+ "cardStatus"?: | 'digital'
6701
+ | 'enabled'
6702
+ | 'new'
6703
+ | 'disabled'
6704
+ | 'locked'
6705
+ | 'damaged'
6706
+ | 'lost'
6707
+ | 'stolen'
6708
+ | 'lost or stolen';
6258
6709
  /**
6259
6710
  * The card type label displayed alongside the expiration date. Not rendered at tiny size.
6260
6711
  */
@@ -6541,7 +6992,7 @@ declare namespace LocalJSX {
6541
6992
  */
6542
6993
  "offsetDataValues"?: boolean;
6543
6994
  /**
6544
- * Emitted when a data point is clicked.
6995
+ * Emitted when a data point is explored using the chart pointer or keyboard.
6545
6996
  * @deprecated Use 'tctChange' instead
6546
6997
  */
6547
6998
  "onChange"?: (event: Q2ChartAreaCustomEvent<{
@@ -6549,7 +7000,7 @@ declare namespace LocalJSX {
6549
7000
  data: ChartData;
6550
7001
  }>) => void;
6551
7002
  /**
6552
- * Emitted when a data point is clicked.
7003
+ * Emitted when a data point is explored using the chart pointer or keyboard.
6553
7004
  */
6554
7005
  "onTctChange"?: (event: Q2ChartAreaCustomEvent<{
6555
7006
  index: number;
@@ -6822,8 +7273,8 @@ declare namespace LocalJSX {
6822
7273
  */
6823
7274
  "hasError"?: boolean;
6824
7275
  /**
6825
- * Hide's the field's `<label>` element from view.
6826
- * @warning Only use when a visible label is impractical.
7276
+ * Hides the field's `<label>` element from view.
7277
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
6827
7278
  */
6828
7279
  "hideLabel"?: boolean;
6829
7280
  /**
@@ -6832,6 +7283,7 @@ declare namespace LocalJSX {
6832
7283
  "indeterminate"?: boolean;
6833
7284
  /**
6834
7285
  * The visible label text for the checkbox. Appears to the right of the box for 'default' and 'favorite' checkboxes, and to the left for 'toggle' checkboxes. Yielded content will be adjacent to this text.
7286
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
6835
7287
  * @localizable
6836
7288
  */
6837
7289
  "label"?: string;
@@ -6882,229 +7334,558 @@ declare namespace LocalJSX {
6882
7334
  */
6883
7335
  "hasError"?: boolean;
6884
7336
  /**
6885
- * Hide's the group's `<label>` element from view.
6886
- * @warning Only use when a visible label is impractical.
7337
+ * Hides the group's `<label>` element from view.
7338
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
6887
7339
  */
6888
7340
  "hideLabel"?: boolean;
6889
7341
  /**
6890
7342
  * The label that displays above all the checkboxes.
7343
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
6891
7344
  * @localizable
6892
7345
  */
6893
- "label"?: string;
7346
+ "label"?: string;
7347
+ /**
7348
+ * Emitted when the checkbox selection changes.
7349
+ * @deprecated Use 'tctChange' instead
7350
+ */
7351
+ "onChange"?: (event: Q2CheckboxGroupCustomEvent<any>) => void;
7352
+ /**
7353
+ * Emitted when the checkbox selection changes.
7354
+ */
7355
+ "onTctChange"?: (event: Q2CheckboxGroupCustomEvent<any>) => void;
7356
+ /**
7357
+ * Determines if the component is marked as `optional`.
7358
+ */
7359
+ "optional"?: boolean;
7360
+ /**
7361
+ * Determines if all the checkboxes are marked as `readonly`.
7362
+ */
7363
+ "readonly"?: boolean;
7364
+ /**
7365
+ * Can be used to get and set the checked status of each `<q2-checkbox>` element contained within the group. **Example:**
7366
+ * @snippet element.value = { 'checkbox-value-1': true, 'checkbox-value-2': false, 'checkbox-value-3': true, }; // Also accepts partial values element.value = { 'checkbox-value-2': false, }
7367
+ */
7368
+ "value"?: object;
7369
+ }
7370
+ /**
7371
+ * @name Context
7372
+ * @category Display
7373
+ * @summary Use for displaying supplementary information or hints alongside content.
7374
+ */
7375
+ interface Q2Context {
7376
+ /**
7377
+ * Renders a horizontal line between the description and the action-group/footer slots.
7378
+ */
7379
+ "separator"?: boolean;
7380
+ }
7381
+ /**
7382
+ * @name Currency
7383
+ * @category Text
7384
+ * @summary Use for displaying formatted monetary amounts with proper locale.
7385
+ */
7386
+ interface Q2Currency {
7387
+ /**
7388
+ * The amount you want formatted.
7389
+ */
7390
+ "amount"?: number;
7391
+ /**
7392
+ * Formats the `amount` to a specific currency.
7393
+ * @default 'USD'
7394
+ */
7395
+ "currency"?: string;
7396
+ /**
7397
+ * Formats to the language provided. Accepts multiple locales in an array as sequential fallbacks.
7398
+ * @default document.documentElement.lang || 'en-US'
7399
+ */
7400
+ "locale"?: string | string[];
7401
+ /**
7402
+ * Determine how the positive or negative sign should display. Behavior: - `accounting`: No sign displays for positive amounts and parentheses wrap negative amounts. - `always`: Always display the sign. - `auto`: Sign displays for negative amounts only, including negative zero. - `exceptZero`: Sign displays for positive and negative amounts, but not zero. - `never`: Never display the sign.
7403
+ * @default 'auto'
7404
+ */
7405
+ "signDisplay"?: 'accounting' | 'always' | 'auto' | 'exceptZero' | 'never';
7406
+ /**
7407
+ * Applies styling based on the size provided. If no size is provided, it will display as inline text.
7408
+ */
7409
+ "size"?: 'small' | 'medium' | 'large';
7410
+ /**
7411
+ * @private Inherited from q2-detail when slotted to match styling of q2-detail and q2-currency texts.
7412
+ */
7413
+ "slotSize"?: string;
7414
+ /**
7415
+ * The variant controls how the currency is colored and exposes unique CSS overrides. The `debit` and `credit` variants align styling with common practices for coloring debit and credit accounts. The `masked` variant exposes the ability to use gradients and images to color the currency.
7416
+ */
7417
+ "variant"?: 'debit' | 'credit' | 'masked';
7418
+ }
7419
+ /**
7420
+ * @name Data Table
7421
+ * @category Display
7422
+ * @summary Use for displaying large datasets with sorting, filtering, and selecting.
7423
+ */
7424
+ interface Q2DataTable {
7425
+ /**
7426
+ * Adds borders between rows and/or columns in the table.
7427
+ */
7428
+ "bordered"?: boolean | 'horizontal' | 'vertical' | 'grid';
7429
+ /**
7430
+ * Provides a caption for the data table.
7431
+ */
7432
+ "caption"?: string;
7433
+ /**
7434
+ * Adds the ability to click a row and have the table emit an event with the selected row's data.
7435
+ */
7436
+ "clickable"?: boolean;
7437
+ /**
7438
+ * Determines the amount of padding for each of the cells in the table.
7439
+ */
7440
+ "density"?: 'compact' | 'normal' | 'comfortable';
7441
+ /**
7442
+ * Determines the `q2-icon` that will display when `rows` has no value.
7443
+ * @default 'inbox'
7444
+ */
7445
+ "emptyIcon"?: string;
7446
+ /**
7447
+ * Determines the message that will display when `rows` has no value.
7448
+ * @localizable
7449
+ * @default 'tecton.element.dataTable.emptyMessage'
7450
+ */
7451
+ "emptyMessage"?: string;
7452
+ /**
7453
+ * Defines the headers of the table. **Example:**
7454
+ * @snippet element.headers = [ { title: 'Day of the Week', key: 'day', }, { title: 'Sales', key: 'sales', align: 'end', } ]
7455
+ */
7456
+ "headers"?: Q2DataTableHeader[];
7457
+ /**
7458
+ * Hides the caption from view, but still makes it available to screen readers for accessibility purposes.
7459
+ */
7460
+ "hideCaption"?: boolean;
7461
+ /**
7462
+ * Visually hides the `Select` button that displays when `clickable=true`. It will still be discoverable by assistive technologies.
7463
+ * @info Use of this property requires `clickable` to be set to `true`.
7464
+ */
7465
+ "hideClickable"?: boolean;
7466
+ /**
7467
+ * Displays a loading state on the table to indicate background activity.
7468
+ */
7469
+ "loading"?: boolean;
7470
+ /**
7471
+ * Emitted when a row is clicked. Requires the `clickable` prop to be set to `true`. Call `event.preventDefault()` to prevent the default click behavior.
7472
+ * @deprecated Use 'tctClick' instead
7473
+ */
7474
+ "onClick"?: (event: Q2DataTableCustomEvent<{ row: Q2DataTableSerializedRow }>) => void;
7475
+ /**
7476
+ * Emitted when a row is selected. Requires the `selectable` prop to be set to `true`. Call `event.preventDefault()` to prevent the default selection behavior.
7477
+ * @deprecated Use 'tctSelect' instead
7478
+ */
7479
+ "onSelect"?: (event: Q2DataTableCustomEvent<{
7480
+ row: Q2DataTableSerializedRow;
7481
+ rows: Q2DataTableSerializedRow[];
7482
+ allSelected: boolean;
7483
+ }>) => void;
7484
+ /**
7485
+ * Emitted when the select-all checkbox is toggled. Requires the `selectable` prop to be set to `true` and the `selectMode` prop to be set to `multiple`. Call `event.preventDefault()` to prevent the default behavior.
7486
+ * @deprecated Use 'tctSelectAllRows' instead
7487
+ */
7488
+ "onSelectAllRows"?: (event: Q2DataTableCustomEvent<{ checked: boolean }>) => void;
7489
+ /**
7490
+ * Emitted when a column is sorted. Requires the `sortable` prop to be set to `true` on the column. Call `event.preventDefault()` to prevent the default sorting behavior.
7491
+ * @deprecated Use 'tctSort' instead
7492
+ */
7493
+ "onSort"?: (event: Q2DataTableCustomEvent<{ header: Q2DataTableHeader; direction: 'ASC' | 'DESC' }>) => void;
7494
+ /**
7495
+ * Emitted when a row is clicked. Requires the `clickable` prop to be set to `true`. Call `event.preventDefault()` to prevent the default click behavior.
7496
+ */
7497
+ "onTctClick"?: (event: Q2DataTableCustomEvent<{ row: Q2DataTableSerializedRow }>) => void;
7498
+ /**
7499
+ * Emitted when a row is selected. Requires the `selectable` prop to be set to `true`. Call `event.preventDefault()` to prevent the default selection behavior.
7500
+ */
7501
+ "onTctSelect"?: (event: Q2DataTableCustomEvent<{
7502
+ row: Q2DataTableSerializedRow;
7503
+ rows: Q2DataTableSerializedRow[];
7504
+ allSelected: boolean;
7505
+ }>) => void;
7506
+ /**
7507
+ * Emitted when the select-all checkbox is toggled. Requires the `selectable` prop to be set to `true` and the `selectMode` prop to be set to `multiple`. Call `event.preventDefault()` to prevent the default behavior.
7508
+ */
7509
+ "onTctSelectAllRows"?: (event: Q2DataTableCustomEvent<{ checked: boolean }>) => void;
7510
+ /**
7511
+ * Emitted when a column is sorted. Requires the `sortable` prop to be set to `true` on the column. Call `event.preventDefault()` to prevent the default sorting behavior.
7512
+ */
7513
+ "onTctSort"?: (event: Q2DataTableCustomEvent<{ header: Q2DataTableHeader; direction: 'ASC' | 'DESC' }>) => void;
7514
+ /**
7515
+ * Emitted when an expandable row is toggled. Requires content in the `row-{id}-expandable-content` slot. Call `event.preventDefault()` to prevent the default toggling behavior.
7516
+ */
7517
+ "onTctToggle"?: (event: Q2DataTableCustomEvent<{ row: Q2DataTableSerializedRow }>) => void;
7518
+ /**
7519
+ * Emitted when an expandable row is toggled. Requires content in the `row-{id}-expandable-content` slot. Call `event.preventDefault()` to prevent the default toggling behavior.
7520
+ * @deprecated Use 'tctToggle' instead
7521
+ */
7522
+ "onToggle"?: (event: Q2DataTableCustomEvent<{ row: Q2DataTableSerializedRow }>) => void;
7523
+ /**
7524
+ * Defines the rows of the table. **Example:**
7525
+ * @snippet element.rows = [ { id: 1, cells: { day: 'Monday', sales: 93 } }, { id: 2, cells: { day: 'Tuesday', sales: 127 } }, { id: 3, cells: { day: 'Wednesday', sales: 121 } ]
7526
+ */
7527
+ "rows"?: Q2DataTableRow[];
7528
+ /**
7529
+ * Controls the position of the checkbox column when `selectable` is true. When set to 'right', the checkbox column will appear on the right side of the table.
7530
+ * @warning Use of this property requires `selectable` to be set to `true`.
7531
+ * @default 'left'
7532
+ */
7533
+ "selectAlign"?: 'left' | 'right';
7534
+ /**
7535
+ * Determines if the selectable checkboxes allow for multi-select or not. If set to "single", once a row is selected, all other rows will be disabled. See the documentation on the `select` event for how to handle selections.
7536
+ * @warning Use of this property requires `selectable` to be set to `true`.
7537
+ * @default 'multiple'
7538
+ */
7539
+ "selectMode"?: 'multiple' | 'single';
7540
+ /**
7541
+ * Adds a checkbox to each row of the table making it selectable.
7542
+ */
7543
+ "selectable"?: boolean;
7544
+ /**
7545
+ * Returns selected rows.
7546
+ * @readonly
7547
+ */
7548
+ "selectedRows"?: Q2DataTableRow[];
7549
+ /**
7550
+ * Adds a shadow to the table
7551
+ */
7552
+ "shadowed"?: boolean;
7553
+ /**
7554
+ * Makes table header sticky
7555
+ */
7556
+ "sticky"?: boolean;
7557
+ /**
7558
+ * Enables alternating background colors for the table rows
7559
+ */
7560
+ "striped"?: boolean;
7561
+ }
7562
+ /**
7563
+ * @name Date Calendar
7564
+ * @category Forms
7565
+ * @summary Use for selecting dates from a standalone calendar.
7566
+ */
7567
+ interface Q2DateCalendar {
7568
+ /**
7569
+ * Accessible calendar dialog label.
7570
+ */
7571
+ "accessibleLabel"?: string;
7572
+ /**
7573
+ * Uses the action-sheet calendar presentation.
7574
+ * @default false
7575
+ */
7576
+ "actionSheet"?: boolean;
7577
+ /**
7578
+ * Accessible and visible calendar label.
7579
+ */
7580
+ "calendarLabel"?: string;
7581
+ /**
7582
+ * Specifies a time of day after which a date is no longer valid.
7583
+ */
7584
+ "cutoffTime"?: string;
7585
+ /**
7586
+ * Defines valid days of the week using calendar checksum values.
7587
+ */
7588
+ "daysOfWeekChecksum"?: number;
7589
+ /**
7590
+ * Controls whether navigation appears above or below the date grid.
7591
+ * @default 'down'
7592
+ */
7593
+ "direction"?: 'up' | 'down';
7594
+ /**
7595
+ * Disables calendar interaction.
7596
+ * @default false
7597
+ */
7598
+ "disabled"?: boolean;
7599
+ /**
7600
+ * Localized disclaimer content.
7601
+ */
7602
+ "disclaimer"?: string;
7603
+ /**
7604
+ * Controls the date format used in range summaries.
7605
+ */
7606
+ "displayFormat"?: DatePickerDisplayFormat;
7607
+ /**
7608
+ * Defines the last selectable date.
7609
+ */
7610
+ "endDate"?: string;
7611
+ /**
7612
+ * Defines an explicit date blacklist using ISO date strings.
7613
+ */
7614
+ "invalidDates"?: string[];
7615
+ /**
7616
+ * Formats calendar and range labels using the provided locale.
7617
+ * @default document.documentElement.lang || 'en-US'
7618
+ */
7619
+ "locale"?: string | string[];
7620
+ /**
7621
+ * Selects single-date or range calendar behavior.
7622
+ * @default 'single'
7623
+ */
7624
+ "mode"?: DatePickerMode;
7625
+ /**
7626
+ * Emitted when the user cancels range selection.
7627
+ */
7628
+ "onTctCalendarCancel"?: (event: Q2DateCalendarCustomEvent<void>) => void;
7629
+ /**
7630
+ * Emitted when the user commits a single date or date range.
7631
+ */
7632
+ "onTctCalendarCommit"?: (event: Q2DateCalendarCustomEvent<DatePickerChangeDetail>) => void;
7633
+ /**
7634
+ * Emitted when the calendar asks its container to dismiss it.
7635
+ */
7636
+ "onTctCalendarDismiss"?: (event: Q2DateCalendarCustomEvent<void>) => void;
7637
+ /**
7638
+ * Emitted when range confirmation validation changes.
7639
+ */
7640
+ "onTctCalendarError"?: (event: Q2DateCalendarCustomEvent<string>) => void;
7641
+ /**
7642
+ * Emitted with the committed date or range for standalone consumers and framework models.
7643
+ */
7644
+ "onTctChange"?: (event: Q2DateCalendarCustomEvent<DatePickerChangeDetail>) => void;
7645
+ /**
7646
+ * Indicates that a new calendar session has opened.
7647
+ * @default false
7648
+ */
7649
+ "open"?: boolean;
7650
+ /**
7651
+ * The committed range end as an ISO date string.
7652
+ */
7653
+ "rangeEnd"?: string;
7654
+ /**
7655
+ * The committed range start as an ISO date string.
7656
+ */
7657
+ "rangeStart"?: string;
7658
+ /**
7659
+ * Prevents calendar selection while retaining calendar visibility.
7660
+ * @default false
7661
+ */
7662
+ "readonly"?: boolean;
7663
+ /**
7664
+ * Defines the first selectable date.
7665
+ */
7666
+ "startDate"?: string;
7667
+ /**
7668
+ * Defines an explicit date whitelist using ISO date strings.
7669
+ */
7670
+ "validDates"?: string[];
7671
+ /**
7672
+ * The committed single date as an ISO date string.
7673
+ */
7674
+ "value"?: string;
7675
+ }
7676
+ /**
7677
+ * @name Date Picker
7678
+ * @category Forms
7679
+ * @summary Use for selecting a date or date range with an input and calendar popup.
7680
+ */
7681
+ interface Q2DatePicker {
7682
+ /**
7683
+ * Renders the calendar panel inline with behavior specific to being hosted by `q2-action-sheet`.
7684
+ * @private
7685
+ * @default false
7686
+ */
7687
+ "_actionSheet"?: boolean;
7688
+ /**
7689
+ * Determines the year for a committed month/day typeable date with no year. `future` selects the next year for dates before today, while `past` selects the prior year for dates after today. Only applies to `single-typeable` mode with a month-first or day-first display format.
7690
+ * @default 'current'
7691
+ */
7692
+ "assume"?: 'current' | 'future' | 'past';
7693
+ /**
7694
+ * A label shown above the date picker navigation.
7695
+ */
7696
+ "calendarLabel"?: string;
7697
+ /**
7698
+ * Displays a button in the input field allowing the user to clear the selected date or range.
7699
+ * @default false
7700
+ */
7701
+ "clearable"?: boolean;
6894
7702
  /**
6895
- * Emitted when the checkbox selection changes.
6896
- * @deprecated Use 'tctChange' instead
7703
+ * Delay in milliseconds before the popover closes after selection. Explicitly undefined or non-positive values close immediately.
7704
+ * @default 400
6897
7705
  */
6898
- "onChange"?: (event: Q2CheckboxGroupCustomEvent<any>) => void;
7706
+ "closeDelay"?: number | undefined;
6899
7707
  /**
6900
- * Emitted when the checkbox selection changes.
7708
+ * Specifies a time of day after which a date is no longer valid.
7709
+ * @warning Must be a valid ISO date string.
6901
7710
  */
6902
- "onTctChange"?: (event: Q2CheckboxGroupCustomEvent<any>) => void;
7711
+ "cutoffTime"?: string;
6903
7712
  /**
6904
- * Determines if the component is marked as `optional`.
7713
+ * Defines valid days of the week using the calendar checksum values. Sunday begins at `1` and each following day doubles through Saturday at `64`.
6905
7714
  */
6906
- "optional"?: boolean;
7715
+ "daysOfWeekChecksum"?: number;
6907
7716
  /**
6908
- * Determines if all the checkboxes are marked as `readonly`.
7717
+ * Indicates the date picker cannot be focused or interacted with.
7718
+ * @default false
6909
7719
  */
6910
- "readonly"?: boolean;
7720
+ "disabled"?: boolean;
6911
7721
  /**
6912
- * Can be used to get and set the checked status of each `<q2-checkbox>` element contained within the group. **Example:**
6913
- * @snippet element.value = { 'checkbox-value-1': true, 'checkbox-value-2': false, 'checkbox-value-3': true, }; // Also accepts partial values element.value = { 'checkbox-value-2': false, }
7722
+ * Text displayed as the input placeholder when the field is disabled.
6914
7723
  */
6915
- "value"?: object;
6916
- }
6917
- /**
6918
- * @name Context
6919
- * @category Display
6920
- * @summary Use for displaying supplementary information or hints alongside content.
6921
- */
6922
- interface Q2Context {
7724
+ "disabledMsg"?: string;
6923
7725
  /**
6924
- * Renders a horizontal line between the description and the action-group/footer slots.
7726
+ * Text shown below the date grid.
6925
7727
  */
6926
- "separator"?: boolean;
6927
- }
6928
- /**
6929
- * @name Currency
6930
- * @category Text
6931
- * @summary Use for displaying formatted monetary amounts with proper locale.
6932
- */
6933
- interface Q2Currency {
7728
+ "disclaimer"?: string;
6934
7729
  /**
6935
- * The amount you want formatted.
7730
+ * Formats the displayed date using legacy Moment-style tokens. Typeable modes support the numeric formats defined by `DatePickerDisplayFormat` and fall back to `MM/DD/YYYY` for other formats.
6936
7731
  */
6937
- "amount"?: number;
7732
+ "displayFormat"?: string;
6938
7733
  /**
6939
- * Formats the `amount` to a specific currency.
6940
- * @default 'USD'
7734
+ * Defines the last selectable date. ISO date strings are preferred; legacy date strings and timestamps are normalized to their calendar date, without shifting timestamp time zones.
6941
7735
  */
6942
- "currency"?: string;
7736
+ "endDate"?: string;
6943
7737
  /**
6944
- * Formats to the language provided. Accepts multiple locales in an array as sequential fallbacks.
6945
- * @default document.documentElement.lang || 'en-US'
7738
+ * Consumer-provided error messages displayed below the input field.
6946
7739
  */
6947
- "locale"?: string | string[];
7740
+ "errors"?: string[];
6948
7741
  /**
6949
- * Determine how the positive or negative sign should display. Behavior: - `accounting`: No sign displays for positive amounts and parentheses wrap negative amounts. - `always`: Always display the sign. - `auto`: Sign displays for negative amounts only, including negative zero. - `exceptZero`: Sign displays for positive and negative amounts, but not zero. - `never`: Never display the sign.
6950
- * @default 'auto'
7742
+ * Hides the input field's visible label while retaining its accessible name.
7743
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
7744
+ * @default false
6951
7745
  */
6952
- "signDisplay"?: 'accounting' | 'always' | 'auto' | 'exceptZero' | 'never';
7746
+ "hideLabel"?: boolean;
6953
7747
  /**
6954
- * Applies styling based on the size provided. If no size is provided, it will display as inline text.
7748
+ * Consumer-provided hint messages displayed below the input field.
6955
7749
  */
6956
- "size"?: 'small' | 'medium' | 'large';
7750
+ "hints"?: string[];
6957
7751
  /**
6958
- * @private Inherited from q2-detail when slotted to match styling of q2-detail and q2-currency texts.
7752
+ * Instructs the component to use the action sheet workflow for displaying its calendar. For more information, see [Action Sheets](https://tecton.q2developer.com/guides/action-sheets/).
7753
+ * @default window.Tecton?.useActionSheets ? true : undefined
6959
7754
  */
6960
- "slotSize"?: string;
7755
+ "hoist"?: boolean | undefined;
6961
7756
  /**
6962
- * The variant controls how the currency is colored and exposes unique CSS overrides. The `debit` and `credit` variants align styling with common practices for coloring debit and credit accounts. The `masked` variant exposes the ability to use gradients and images to color the currency.
7757
+ * Shows the input field's error visual state.
7758
+ * @default false
6963
7759
  */
6964
- "variant"?: 'debit' | 'credit' | 'masked';
6965
- }
6966
- /**
6967
- * @name Data Table
6968
- * @category Display
6969
- * @summary Use for displaying large datasets with sorting, filtering, and selecting.
6970
- */
6971
- interface Q2DataTable {
7760
+ "invalid"?: boolean;
6972
7761
  /**
6973
- * Adds borders between rows and/or columns in the table.
7762
+ * Defines an explicit date blacklist. ISO dates, legacy date strings, and timestamps are normalized to calendar dates. Assign a new array when changing this property. Mutating the existing array does not trigger validation updates.
6974
7763
  */
6975
- "bordered"?: boolean | 'horizontal' | 'vertical' | 'grid';
7764
+ "invalidDates"?: string[];
6976
7765
  /**
6977
- * Provides a caption for the data table.
7766
+ * The visible label for the date picker input field.
7767
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
6978
7768
  */
6979
- "caption"?: string;
7769
+ "label"?: string;
6980
7770
  /**
6981
- * Adds the ability to click a row and have the table emit an event with the selected row's data.
7771
+ * Formats selected dates using the provided locale. Accepts multiple locales in an array as sequential fallbacks.
7772
+ * @default document.documentElement.lang || 'en-US'
6982
7773
  */
6983
- "clickable"?: boolean;
7774
+ "locale"?: string | string[];
6984
7775
  /**
6985
- * Determines the amount of padding for each of the cells in the table.
7776
+ * Selects calendar or typeable behavior for a single date or date range. Enabling the legacy `typeable` prop uses `single-typeable` when `mode` is left at its default; an explicit mode takes precedence.
7777
+ * @default 'single'
6986
7778
  */
6987
- "density"?: 'compact' | 'normal' | 'comfortable';
7779
+ "mode"?: DatePickerMode;
6988
7780
  /**
6989
- * Determines the `q2-icon` that will display when `rows` has no value.
6990
- * @default 'inbox'
7781
+ * Emitted when a date is selected.
7782
+ * @legacyEvent
7783
+ * @deprecated Use `tctChange` instead.
6991
7784
  */
6992
- "emptyIcon"?: string;
7785
+ "onChange"?: (event: Q2DatePickerCustomEvent<DatePickerChangeDetail>) => void;
6993
7786
  /**
6994
- * Determines the message that will display when `rows` has no value.
6995
- * @localizable
6996
- * @default 'tecton.element.dataTable.emptyMessage'
7787
+ * Emitted when an invalid single date is entered or assigned.
7788
+ * @deprecated Use `tctError` instead.
6997
7789
  */
6998
- "emptyMessage"?: string;
7790
+ "onError"?: (event: Q2DatePickerCustomEvent<DatePickerErrorDetail>) => void;
6999
7791
  /**
7000
- * Defines the headers of the table. **Example:**
7001
- * @snippet element.headers = [ { title: 'Day of the Week', key: 'day', }, { title: 'Sales', key: 'sales', align: 'end', } ]
7792
+ * Emitted when a valid single date is entered, selected, or assigned.
7793
+ * @deprecated Use `tctSuccess` instead.
7002
7794
  */
7003
- "headers"?: Q2DataTableHeader[];
7795
+ "onSuccess"?: (event: Q2DatePickerCustomEvent<DatePickerSuccessDetail>) => void;
7004
7796
  /**
7005
- * Hides the caption from view, but still makes it available to screen readers for accessibility purposes.
7797
+ * Emitted when an action-sheet date range is cancelled.
7006
7798
  */
7007
- "hideCaption"?: boolean;
7799
+ "onTctCancel"?: (event: Q2DatePickerCustomEvent<void>) => void;
7008
7800
  /**
7009
- * Visually hides the `Select` button that displays when `clickable=true`. It will still be discoverable by assistive technologies.
7010
- * @info Use of this property requires `clickable` to be set to `true`.
7801
+ * Emitted when a date is selected.
7011
7802
  */
7012
- "hideClickable"?: boolean;
7803
+ "onTctChange"?: (event: Q2DatePickerCustomEvent<DatePickerChangeDetail>) => void;
7013
7804
  /**
7014
- * Displays a loading state on the table to indicate background activity.
7805
+ * Emitted when the picker closes after confirmation. Includes validation details when confirmation fails.
7015
7806
  */
7016
- "loading"?: boolean;
7807
+ "onTctClose"?: (event: Q2DatePickerCustomEvent<DatePickerCloseDetail | void>) => void;
7017
7808
  /**
7018
- * Emitted when a row is clicked. Requires the `clickable` prop to be set to `true`. Call `event.preventDefault()` to prevent the default click behavior.
7019
- * @deprecated Use 'tctClick' instead
7809
+ * Emitted when an invalid single date is entered or assigned.
7020
7810
  */
7021
- "onClick"?: (event: Q2DataTableCustomEvent<{ row: Q2DataTableSerializedRow }>) => void;
7811
+ "onTctError"?: (event: Q2DatePickerCustomEvent<DatePickerErrorDetail>) => void;
7022
7812
  /**
7023
- * Emitted when a row is selected. Requires the `selectable` prop to be set to `true`. Call `event.preventDefault()` to prevent the default selection behavior.
7024
- * @deprecated Use 'tctSelect' instead
7813
+ * Emitted when a valid single date is entered, selected, or assigned.
7025
7814
  */
7026
- "onSelect"?: (event: Q2DataTableCustomEvent<{
7027
- row: Q2DataTableSerializedRow;
7028
- rows: Q2DataTableSerializedRow[];
7029
- allSelected: boolean;
7030
- }>) => void;
7815
+ "onTctSuccess"?: (event: Q2DatePickerCustomEvent<DatePickerSuccessDetail>) => void;
7031
7816
  /**
7032
- * Emitted when the select-all checkbox is toggled. Requires the `selectable` prop to be set to `true` and the `selectMode` prop to be set to `multiple`. Call `event.preventDefault()` to prevent the default behavior.
7033
- * @deprecated Use 'tctSelectAllRows' instead
7817
+ * Controls whether the date picker popover is open or closed.
7818
+ * @default false
7034
7819
  */
7035
- "onSelectAllRows"?: (event: Q2DataTableCustomEvent<{ checked: boolean }>) => void;
7820
+ "open"?: boolean;
7036
7821
  /**
7037
- * Emitted when a column is sorted. Requires the `sortable` prop to be set to `true` on the column. Call `event.preventDefault()` to prevent the default sorting behavior.
7038
- * @deprecated Use 'tctSort' instead
7822
+ * Appends "(optional)" to the input label and marks the field as not required.
7823
+ * @default false
7039
7824
  */
7040
- "onSort"?: (event: Q2DataTableCustomEvent<{ header: Q2DataTableHeader; direction: 'ASC' | 'DESC' }>) => void;
7825
+ "optional"?: boolean;
7041
7826
  /**
7042
- * Emitted when a row is clicked. Requires the `clickable` prop to be set to `true`. Call `event.preventDefault()` to prevent the default click behavior.
7827
+ * Text shown in the input field when no date is selected.
7043
7828
  */
7044
- "onTctClick"?: (event: Q2DataTableCustomEvent<{ row: Q2DataTableSerializedRow }>) => void;
7829
+ "placeholder"?: string;
7045
7830
  /**
7046
- * Emitted when a row is selected. Requires the `selectable` prop to be set to `true`. Call `event.preventDefault()` to prevent the default selection behavior.
7831
+ * Forces the direction of the popover when it opens.
7832
+ * @deprecated Use `popoverDirection` instead.
7047
7833
  */
7048
- "onTctSelect"?: (event: Q2DataTableCustomEvent<{
7049
- row: Q2DataTableSerializedRow;
7050
- rows: Q2DataTableSerializedRow[];
7051
- allSelected: boolean;
7052
- }>) => void;
7834
+ "popDirection"?: 'up' | 'down';
7053
7835
  /**
7054
- * Emitted when the select-all checkbox is toggled. Requires the `selectable` prop to be set to `true` and the `selectMode` prop to be set to `multiple`. Call `event.preventDefault()` to prevent the default behavior.
7836
+ * Aligns the calendar popover to the left or right side of the input field.
7837
+ * @default 'left'
7055
7838
  */
7056
- "onTctSelectAllRows"?: (event: Q2DataTableCustomEvent<{ checked: boolean }>) => void;
7839
+ "popoverAlignment"?: 'left' | 'right';
7057
7840
  /**
7058
- * Emitted when a column is sorted. Requires the `sortable` prop to be set to `true` on the column. Call `event.preventDefault()` to prevent the default sorting behavior.
7841
+ * Forces the direction of the popover when it opens. If no value is passed, the popover automatically selects a direction based on available space. Use `up` to place navigation below the date grid.
7059
7842
  */
7060
- "onTctSort"?: (event: Q2DataTableCustomEvent<{ header: Q2DataTableHeader; direction: 'ASC' | 'DESC' }>) => void;
7843
+ "popoverDirection"?: 'up' | 'down';
7061
7844
  /**
7062
- * Emitted when an expandable row is toggled. Requires content in the `row-{id}-expandable-content` slot. Call `event.preventDefault()` to prevent the default toggling behavior.
7845
+ * @deprecated Retained for compatibility with `q2-date-picker`.
7846
+ * @default 355
7063
7847
  */
7064
- "onTctToggle"?: (event: Q2DataTableCustomEvent<{ row: Q2DataTableSerializedRow }>) => void;
7848
+ "popoverMinHeight"?: number;
7065
7849
  /**
7066
- * Emitted when an expandable row is toggled. Requires content in the `row-{id}-expandable-content` slot. Call `event.preventDefault()` to prevent the default toggling behavior.
7067
- * @deprecated Use 'tctToggle' instead
7850
+ * Uses absolute positioning for the popover when set to `legacy`. This compatibility option supports layouts where transformed ancestors interfere with fixed positioning.
7851
+ * @default null
7068
7852
  */
7069
- "onToggle"?: (event: Q2DataTableCustomEvent<{ row: Q2DataTableSerializedRow }>) => void;
7853
+ "popoverMode"?: 'legacy';
7070
7854
  /**
7071
- * Defines the rows of the table. **Example:**
7072
- * @snippet element.rows = [ { id: 1, cells: { day: 'Monday', sales: 93 } }, { id: 2, cells: { day: 'Tuesday', sales: 127 } }, { id: 3, cells: { day: 'Wednesday', sales: 121 } ]
7855
+ * The selected range end. ISO dates, legacy date strings, and timestamps are accepted.
7073
7856
  */
7074
- "rows"?: Q2DataTableRow[];
7857
+ "rangeEnd"?: string;
7075
7858
  /**
7076
- * Controls the position of the checkbox column when `selectable` is true. When set to 'right', the checkbox column will appear on the right side of the table.
7077
- * @warning Use of this property requires `selectable` to be set to `true`.
7078
- * @default 'left'
7859
+ * The selected range start. ISO dates, legacy date strings, and timestamps are accepted.
7079
7860
  */
7080
- "selectAlign"?: 'left' | 'right';
7861
+ "rangeStart"?: string;
7081
7862
  /**
7082
- * Determines if the selectable checkboxes allow for multi-select or not. If set to "single", once a row is selected, all other rows will be disabled. See the documentation on the `select` event for how to handle selections.
7083
- * @warning Use of this property requires `selectable` to be set to `true`.
7084
- * @default 'multiple'
7863
+ * The field's content is not editable, but the field remains focusable. Appends "(read only)" to the field label.
7864
+ * @default false
7085
7865
  */
7086
- "selectMode"?: 'multiple' | 'single';
7866
+ "readonly"?: boolean;
7087
7867
  /**
7088
- * Adds a checkbox to each row of the table making it selectable.
7868
+ * Defines the first selectable date. ISO date strings are preferred; legacy date strings and timestamps are normalized to their calendar date, without shifting timestamp time zones.
7089
7869
  */
7090
- "selectable"?: boolean;
7870
+ "startDate"?: string;
7091
7871
  /**
7092
- * Returns selected rows.
7093
- * @readonly
7872
+ * Enables the legacy single-date typeable input behavior.
7873
+ * @default false
7094
7874
  */
7095
- "selectedRows"?: Q2DataTableRow[];
7875
+ "typeable"?: boolean;
7096
7876
  /**
7097
- * Adds a shadow to the table
7877
+ * Shows the input field's success visual state when no errors are active.
7878
+ * @default false
7098
7879
  */
7099
- "shadowed"?: boolean;
7880
+ "valid"?: boolean;
7100
7881
  /**
7101
- * Makes table header sticky
7882
+ * Defines an explicit date whitelist. ISO dates, legacy date strings, and timestamps are normalized to calendar dates. Assign a new array when changing this property. Mutating the existing array does not trigger validation updates.
7102
7883
  */
7103
- "sticky"?: boolean;
7884
+ "validDates"?: string[];
7104
7885
  /**
7105
- * Enables alternating background colors for the table rows
7886
+ * The selected date. ISO date strings are preferred; legacy date strings and Moment-like values are normalized to an ISO date string.
7106
7887
  */
7107
- "striped"?: boolean;
7888
+ "value"?: DatePickerValue;
7108
7889
  }
7109
7890
  /**
7110
7891
  * @name Detail
@@ -7179,8 +7960,8 @@ declare namespace LocalJSX {
7179
7960
  */
7180
7961
  "fullWidth"?: boolean;
7181
7962
  /**
7182
- * Hide's the field's `<label>` element from view.
7183
- * @warning Only use when a visible label is impractical.
7963
+ * Hides the dropdown's label text from view.
7964
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
7184
7965
  */
7185
7966
  "hideLabel"?: boolean;
7186
7967
  /**
@@ -7194,7 +7975,7 @@ declare namespace LocalJSX {
7194
7975
  "icon"?: string;
7195
7976
  /**
7196
7977
  * The text that appears within the button.
7197
- * @warning This property should not be used if the `type` is `icon`.
7978
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
7198
7979
  * @localizable
7199
7980
  */
7200
7981
  "label"?: string;
@@ -7331,7 +8112,8 @@ declare namespace LocalJSX {
7331
8112
  */
7332
8113
  "formatModifier"?: string;
7333
8114
  /**
7334
- * Hide's the field's `<label>` element from view.
8115
+ * Hides the field's `<label>` element from view.
8116
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
7335
8117
  */
7336
8118
  "hideLabel"?: boolean;
7337
8119
  /**
@@ -7340,6 +8122,7 @@ declare namespace LocalJSX {
7340
8122
  "hints"?: string[];
7341
8123
  /**
7342
8124
  * The visible descriptor for the element. Serves as the input label while in the edit state and as a decorative label for the read state when `persistentLabel` is `true`.
8125
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
7343
8126
  * @localizable
7344
8127
  * @default ''
7345
8128
  */
@@ -7349,7 +8132,7 @@ declare namespace LocalJSX {
7349
8132
  */
7350
8133
  "maxlength"?: number;
7351
8134
  /**
7352
- * Emitted when the 'Edit', 'Cancel', or 'Save' buttons are clicked. The event detail will not include a `value` or `formattedValue` if the event name is 'edit' or 'cancel'.
8135
+ * Emitted when the 'Edit', 'Cancel', or 'Save' buttons are clicked. The event detail will not include a `value` or `formattedValue` if the event name is 'edit' or 'cancel'. Call `event.preventDefault()` to prevent the default behavior (the component's internal `editing` and `value` updates).
7353
8136
  * @info If you are utilizing events to provide input validation, it is recommended you use the `input` event, not the `change` event.
7354
8137
  * @deprecated Use 'tctChange' instead
7355
8138
  */
@@ -7365,7 +8148,7 @@ declare namespace LocalJSX {
7365
8148
  */
7366
8149
  "onInput"?: (event: Q2EditableFieldCustomEvent<{ formattedValue: string; value: string }>) => void;
7367
8150
  /**
7368
- * Emitted when the 'Edit', 'Cancel', or 'Save' buttons are clicked. The event detail will not include a `value` or `formattedValue` if the event name is 'edit' or 'cancel'.
8151
+ * Emitted when the 'Edit', 'Cancel', or 'Save' buttons are clicked. The event detail will not include a `value` or `formattedValue` if the event name is 'edit' or 'cancel'. Call `event.preventDefault()` to prevent the default behavior (the component's internal `editing` and `value` updates).
7369
8152
  * @info If you are utilizing events to provide input validation, it is recommended you use the `input` event, not the `change` event.
7370
8153
  */
7371
8154
  "onTctChange"?: (event: Q2EditableFieldCustomEvent<{
@@ -7438,6 +8221,11 @@ declare namespace LocalJSX {
7438
8221
  * Disables the file picker, preventing user interaction.
7439
8222
  */
7440
8223
  "disabled"?: boolean;
8224
+ /**
8225
+ * When `false`, the file name renders as-is and may wrap. Otherwise, long file names are middle-ellipsized so the beginning and end of the name remain visible.
8226
+ * @default true
8227
+ */
8228
+ "ellipsizeFileName"?: boolean;
7441
8229
  /**
7442
8230
  * Allowed file types based on extensions (e.g., ['jpg', 'png', 'pdf'] or 'jpg, png, pdf'). When using the attribute, provide a comma-separated string (e.g., 'jpg, png, pdf'). Arrays can only be set programmatically via JavaScript.
7443
8231
  * @default []
@@ -7462,6 +8250,11 @@ declare namespace LocalJSX {
7462
8250
  * Custom event dispatched when the user selects files. The event detail contains an object representing the selected files with two properties: - `invalidFiles`: An array of `InvalidFileStatus` objects representing files that failed validation. - `validFiles`: An array of `File` objects representing files that passed validation. Each `InvalidFileStatus` object includes the following properties: - `file`: The `File` object. - `status`: The validation status, which can be `"invalid-type"` (invalid file type), `"over-size-limit"` (file exceeds the size limit), or `"over-max-files-limit"` (total exceeds the max files limit).
7463
8251
  */
7464
8252
  "onTctChange"?: (event: Q2FilePickerCustomEvent<FilesObject>) => void;
8253
+ /**
8254
+ * Shows a gradient at the bottom of the file list when more files are available below the visible area.
8255
+ * @default true
8256
+ */
8257
+ "showGradient"?: boolean;
7465
8258
  /**
7466
8259
  * An array of `ValidFileStatus` objects representing the upload status of files. Each `ValidFileStatus` object contains the following properties: - `name`: The file name. - `status`: The upload status, either `"failed"` or `"uploaded"`. - `message`: (Optional) A custom status message, used only when `status` is `"failed"`. This allows developers to provide more detail about upload failures while ensuring all other file status messages remain consistent with approved design/UX standards. Custom failure messages are limited to a single line.
7467
8260
  * @localizable
@@ -7880,6 +8673,11 @@ declare namespace LocalJSX {
7880
8673
  * @summary Use for single-line text entry including email, phone, currency, SSN, and password.
7881
8674
  */
7882
8675
  interface Q2Input {
8676
+ /**
8677
+ * Provides additional descriptive text for the native input.
8678
+ * @private
8679
+ */
8680
+ "_ariaDescription"?: string;
7883
8681
  /**
7884
8682
  * Sets readonly to true on the input without adding the "read only" label. Can be used to prevent user input while still presenting the necessary information for assistive technology.
7885
8683
  * @private
@@ -7956,8 +8754,8 @@ declare namespace LocalJSX {
7956
8754
  */
7957
8755
  "formatModifier"?: string;
7958
8756
  /**
7959
- * Hide's the field's `<label>` element from view.
7960
- * @warning Only use when a visible label is impractical.
8757
+ * Hides the field's `<label>` element from view.
8758
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
7961
8759
  */
7962
8760
  "hideLabel"?: boolean;
7963
8761
  /**
@@ -7980,6 +8778,7 @@ declare namespace LocalJSX {
7980
8778
  "iconRight"?: Q2Icon['type'];
7981
8779
  /**
7982
8780
  * The label that appears above the field. This is announced by screen readers when the field is focused.
8781
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
7983
8782
  * @localizable
7984
8783
  */
7985
8784
  "label"?: string;
@@ -8082,7 +8881,7 @@ declare namespace LocalJSX {
8082
8881
  "showCount"?: boolean;
8083
8882
  /**
8084
8883
  * Displays a toggle button at the end of the input field which shows or hides the actual value.
8085
- * @info Only applicable when `type` is `text`, `password`, or `ssn`.
8884
+ * @info Applicable when `type` is `text`, `password`, `ssn`, or `tin`, or when `visibleLastCount` is set.
8086
8885
  * @default false
8087
8886
  */
8088
8887
  "showVisibilityToggle"?: boolean;
@@ -8092,7 +8891,7 @@ declare namespace LocalJSX {
8092
8891
  */
8093
8892
  "step"?: number;
8094
8893
  /**
8095
- * Controls visibility of the value when the type is `text`, `password`, or `ssn`. When the input type is `password`, it will default to `true`, hiding the text.
8894
+ * Controls visibility of the value. When `visibleLastCount` is set, hidden values keep the specified number of trailing characters visible. When the input type is `password`, it will default to `true`, hiding the text.
8096
8895
  */
8097
8896
  "textHidden"?: boolean;
8098
8897
  /**
@@ -8114,6 +8913,10 @@ declare namespace LocalJSX {
8114
8913
  * @info The visible value of formatted input fields may not match the element's `value` property. When setting an input's value programmatically (e.g. pre-populating a form), ensure that the supplied value is in a format that can be handled by its consuming logic. `q2-input` updates its own `value` through its default input and change event handlers. In `q2-input` where `type="currency"` - element.value = 1234.56 - visible value: $1,234.56
8115
8914
  */
8116
8915
  "value"?: string;
8916
+ /**
8917
+ * Controls the number of trailing characters that remain visible when the field value is masked by `textHidden` or the visibility toggle. The element's `value` and emitted event details remain unmasked.
8918
+ */
8919
+ "visibleLastCount"?: number;
8117
8920
  }
8118
8921
  /**
8119
8922
  * @name Item
@@ -8436,7 +9239,7 @@ declare namespace LocalJSX {
8436
9239
  */
8437
9240
  interface Q2Modal {
8438
9241
  /**
8439
- * Controls visibility of the close button in the top right corner.
9242
+ * Controls visibility of the close button and whether the modal can be dismissed with the backdrop or Escape key.
8440
9243
  * @default true
8441
9244
  */
8442
9245
  "closable"?: boolean;
@@ -8448,6 +9251,11 @@ declare namespace LocalJSX {
8448
9251
  * A plain text description of the modal. Use this to provide context or information to the user.
8449
9252
  */
8450
9253
  "description"?: string;
9254
+ /**
9255
+ * Whether the action buttons should take up the full width of the modal footer.
9256
+ * @default true
9257
+ */
9258
+ "fullWidthButton"?: boolean;
8451
9259
  /**
8452
9260
  * The icon to display at the top of the modal. [See Icon documentation](https://tecton.q2developer.com/design-system/q2-icon).
8453
9261
  */
@@ -8456,6 +9264,10 @@ declare namespace LocalJSX {
8456
9264
  * An image URL to be displayed beneath the title. It renders with 100% width.
8457
9265
  */
8458
9266
  "imageSrc"?: string;
9267
+ /**
9268
+ * Emitted when the modal backdrop is clicked.
9269
+ */
9270
+ "onTctBackdropClick"?: (event: Q2ModalCustomEvent<undefined>) => void;
8459
9271
  /**
8460
9272
  * Emitted when one of action buttons is clicked.
8461
9273
  */
@@ -9035,11 +9847,12 @@ declare namespace LocalJSX {
9035
9847
  "groupTileLayout"?: boolean;
9036
9848
  /**
9037
9849
  * Hides the field's `<label>` element from view.
9038
- * @warning Only use when a visible label is impractical.
9850
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
9039
9851
  */
9040
9852
  "hideLabel"?: boolean;
9041
9853
  /**
9042
9854
  * The text that describes the individual radio option.
9855
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
9043
9856
  * @localizable
9044
9857
  */
9045
9858
  "label"?: string;
@@ -9088,12 +9901,13 @@ declare namespace LocalJSX {
9088
9901
  */
9089
9902
  "hasError"?: boolean;
9090
9903
  /**
9091
- * Hide's the group's `<label>` element from view.
9092
- * @warning Only use when a visible label is impractical.
9904
+ * Hides the group's `<label>` element from view.
9905
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
9093
9906
  */
9094
9907
  "hideLabel"?: boolean;
9095
9908
  /**
9096
9909
  * Text for the fieldset legend describing the radio group.
9910
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
9097
9911
  * @localizable
9098
9912
  */
9099
9913
  "label"?: string;
@@ -9116,6 +9930,17 @@ declare namespace LocalJSX {
9116
9930
  * Appends "(optional)" to the group label, and sets `aria-required` on the nested input tag to `false`.
9117
9931
  */
9118
9932
  "optional"?: boolean;
9933
+ /**
9934
+ * The layout direction of radio options when `tileLayout` is not enabled.
9935
+ * @default 'vertical'
9936
+ */
9937
+ "orientation"?: 'vertical' | 'horizontal';
9938
+ /**
9939
+ * The width, in pixels, below which a horizontal non-tile layout displays vertically.
9940
+ * @info The component determines this based on its own width, not the browser window.
9941
+ * @default 440
9942
+ */
9943
+ "orientationThreshold"?: number;
9119
9944
  /**
9120
9945
  * Determines if all radios in the group can be focused, but not interacted with.
9121
9946
  */
@@ -9225,7 +10050,7 @@ declare namespace LocalJSX {
9225
10050
  "filter"?: boolean;
9226
10051
  /**
9227
10052
  * Hides the field's `<label>` element from view.
9228
- * @warning Only use when a visible label is impractical.
10053
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
9229
10054
  * @default false
9230
10055
  */
9231
10056
  "hideLabel"?: boolean;
@@ -9235,6 +10060,7 @@ declare namespace LocalJSX {
9235
10060
  "invalid"?: boolean;
9236
10061
  /**
9237
10062
  * The text that will be used as the label for the field.
10063
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
9238
10064
  * @localizable
9239
10065
  */
9240
10066
  "label"?: string;
@@ -9413,8 +10239,8 @@ declare namespace LocalJSX {
9413
10239
  */
9414
10240
  "errors"?: string[];
9415
10241
  /**
9416
- * Hide's the field's `<label>` element from view.
9417
- * @warning Only use when a visible label is impractical.
10242
+ * Hides the field's `<label>` element from view.
10243
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
9418
10244
  */
9419
10245
  "hideLabel"?: boolean;
9420
10246
  /**
@@ -9429,6 +10255,7 @@ declare namespace LocalJSX {
9429
10255
  "invalid"?: boolean;
9430
10256
  /**
9431
10257
  * The text that will be used as the label for the field.
10258
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
9432
10259
  * @localizable
9433
10260
  */
9434
10261
  "label"?: string;
@@ -9504,6 +10331,7 @@ declare namespace LocalJSX {
9504
10331
  "readonly"?: boolean;
9505
10332
  /**
9506
10333
  * Enables search functionality.
10334
+ * @warning `searchable` is not compatible with the `hoist` prop. The action sheet workflow used when `hoist` is `true` does not support in-list search filtering. If both are set, `searchable` has no effect while the action sheet is active.
9507
10335
  * @default false
9508
10336
  */
9509
10337
  "searchable"?: boolean;
@@ -9890,8 +10718,8 @@ declare namespace LocalJSX {
9890
10718
  */
9891
10719
  "errors"?: string[];
9892
10720
  /**
9893
- * Hide's the field's `<label>` element from view.
9894
- * @warning Only use when a visible label is impractical.
10721
+ * Hides the field's `<label>` element from view.
10722
+ * @warning Hides the label visually. `label` text is still required for screenreader compliance.
9895
10723
  */
9896
10724
  "hideLabel"?: boolean;
9897
10725
  /**
@@ -9906,6 +10734,7 @@ declare namespace LocalJSX {
9906
10734
  "hints"?: string[];
9907
10735
  /**
9908
10736
  * The label that appears above the field. This is announced by screen readers when the field is focused.
10737
+ * @warning Required for screen reader compliance even when `hideLabel` is `true`.
9909
10738
  * @localizable
9910
10739
  */
9911
10740
  "label"?: string;
@@ -10139,8 +10968,12 @@ declare namespace LocalJSX {
10139
10968
  "form": string;
10140
10969
  "hideLabel": boolean;
10141
10970
  "intent": | 'coin'
10971
+ | 'destroy'
10972
+ | 'escape'
10142
10973
  | 'neutral-text'
10143
10974
  | 'neutral'
10975
+ | 'primary'
10976
+ | 'secondary'
10144
10977
  | 'workflow-destroy'
10145
10978
  | 'workflow-escape'
10146
10979
  | 'workflow-primary'
@@ -10201,7 +11034,15 @@ declare namespace LocalJSX {
10201
11034
  "cardHolder": string;
10202
11035
  "cardHolderLabel": boolean;
10203
11036
  "cardNumber": string;
10204
- "cardStatus": 'digital' | 'enabled' | 'disabled' | 'locked' | 'damaged' | 'lost' | 'stolen' | 'lost or stolen';
11037
+ "cardStatus": | 'digital'
11038
+ | 'enabled'
11039
+ | 'new'
11040
+ | 'disabled'
11041
+ | 'locked'
11042
+ | 'damaged'
11043
+ | 'lost'
11044
+ | 'stolen'
11045
+ | 'lost or stolen';
10205
11046
  "cardType": 'atm' | 'debit';
10206
11047
  "cardTypeColor": 'black' | 'white';
10207
11048
  "chip": 'gold' | 'silver';
@@ -10355,6 +11196,61 @@ declare namespace LocalJSX {
10355
11196
  "sticky": boolean;
10356
11197
  "striped": boolean;
10357
11198
  }
11199
+ interface Q2DateCalendarAttributes {
11200
+ "accessibleLabel": string;
11201
+ "actionSheet": boolean;
11202
+ "calendarLabel": string;
11203
+ "cutoffTime": string;
11204
+ "daysOfWeekChecksum": number;
11205
+ "direction": 'up' | 'down';
11206
+ "disabled": boolean;
11207
+ "disclaimer": string;
11208
+ "displayFormat": DatePickerDisplayFormat;
11209
+ "endDate": string;
11210
+ "locale": string | string[];
11211
+ "mode": DatePickerMode;
11212
+ "open": boolean;
11213
+ "rangeEnd": string;
11214
+ "rangeStart": string;
11215
+ "readonly": boolean;
11216
+ "startDate": string;
11217
+ "value": string;
11218
+ }
11219
+ interface Q2DatePickerAttributes {
11220
+ "_actionSheet": boolean;
11221
+ "assume": 'current' | 'future' | 'past';
11222
+ "calendarLabel": string;
11223
+ "clearable": boolean;
11224
+ "closeDelay": number | undefined;
11225
+ "cutoffTime": string;
11226
+ "daysOfWeekChecksum": number;
11227
+ "disabled": boolean;
11228
+ "disabledMsg": string;
11229
+ "disclaimer": string;
11230
+ "displayFormat": string;
11231
+ "endDate": string;
11232
+ "hideLabel": boolean;
11233
+ "hoist": boolean | undefined;
11234
+ "invalid": boolean;
11235
+ "label": string;
11236
+ "locale": string | string[];
11237
+ "mode": DatePickerMode;
11238
+ "open": boolean;
11239
+ "optional": boolean;
11240
+ "placeholder": string;
11241
+ "popDirection": 'up' | 'down';
11242
+ "popoverAlignment": 'left' | 'right';
11243
+ "popoverDirection": 'up' | 'down';
11244
+ "popoverMinHeight": number;
11245
+ "popoverMode": 'legacy';
11246
+ "rangeEnd": string;
11247
+ "rangeStart": string;
11248
+ "readonly": boolean;
11249
+ "startDate": string;
11250
+ "typeable": boolean;
11251
+ "valid": boolean;
11252
+ "value": DatePickerValue;
11253
+ }
10358
11254
  interface Q2DetailAttributes {
10359
11255
  "align": 'left' | 'right' | 'center';
10360
11256
  "alignment": 'left' | 'right' | 'center';
@@ -10420,10 +11316,12 @@ declare namespace LocalJSX {
10420
11316
  "buttonSize": 'none' | 'small' | 'medium' | 'large';
10421
11317
  "description": string;
10422
11318
  "disabled": boolean;
11319
+ "ellipsizeFileName": boolean;
10423
11320
  "fileTypes": string[] | string;
10424
11321
  "label": string;
10425
11322
  "maxFiles": number;
10426
11323
  "maxFileSize": number;
11324
+ "showGradient": boolean;
10427
11325
  "variant": 'browse' | 'browse-drop';
10428
11326
  }
10429
11327
  interface Q2FormAttributes {
@@ -10522,6 +11420,7 @@ declare namespace LocalJSX {
10522
11420
  "type": string;
10523
11421
  }
10524
11422
  interface Q2InputAttributes {
11423
+ "_ariaDescription": string;
10525
11424
  "_preventEntry": boolean;
10526
11425
  "_role": 'combobox' | undefined;
10527
11426
  "_updateValueOnInput": boolean;
@@ -10562,6 +11461,7 @@ declare namespace LocalJSX {
10562
11461
  "type": InputType;
10563
11462
  "valid": boolean;
10564
11463
  "value": string;
11464
+ "visibleLastCount": number;
10565
11465
  }
10566
11466
  interface Q2ItemAttributes {
10567
11467
  "clickable": boolean;
@@ -10635,6 +11535,7 @@ declare namespace LocalJSX {
10635
11535
  "closable": boolean;
10636
11536
  "customMarkup": string;
10637
11537
  "description": string;
11538
+ "fullWidthButton": boolean;
10638
11539
  "icon": string;
10639
11540
  "imageSrc": string;
10640
11541
  "title": string;
@@ -10757,6 +11658,8 @@ declare namespace LocalJSX {
10757
11658
  "label": string;
10758
11659
  "name": string;
10759
11660
  "optional": boolean;
11661
+ "orientation": 'vertical' | 'horizontal';
11662
+ "orientationThreshold": number;
10760
11663
  "readonly": boolean;
10761
11664
  "tileAlignment": 'left' | 'center' | 'right';
10762
11665
  "tilelayout": boolean;
@@ -10965,6 +11868,8 @@ declare namespace LocalJSX {
10965
11868
  "q2-context": Omit<Q2Context, keyof Q2ContextAttributes> & { [K in keyof Q2Context & keyof Q2ContextAttributes]?: Q2Context[K] } & { [K in keyof Q2Context & keyof Q2ContextAttributes as `attr:${K}`]?: Q2ContextAttributes[K] } & { [K in keyof Q2Context & keyof Q2ContextAttributes as `prop:${K}`]?: Q2Context[K] };
10966
11869
  "q2-currency": Omit<Q2Currency, keyof Q2CurrencyAttributes> & { [K in keyof Q2Currency & keyof Q2CurrencyAttributes]?: Q2Currency[K] } & { [K in keyof Q2Currency & keyof Q2CurrencyAttributes as `attr:${K}`]?: Q2CurrencyAttributes[K] } & { [K in keyof Q2Currency & keyof Q2CurrencyAttributes as `prop:${K}`]?: Q2Currency[K] };
10967
11870
  "q2-data-table": Omit<Q2DataTable, keyof Q2DataTableAttributes> & { [K in keyof Q2DataTable & keyof Q2DataTableAttributes]?: Q2DataTable[K] } & { [K in keyof Q2DataTable & keyof Q2DataTableAttributes as `attr:${K}`]?: Q2DataTableAttributes[K] } & { [K in keyof Q2DataTable & keyof Q2DataTableAttributes as `prop:${K}`]?: Q2DataTable[K] };
11871
+ "q2-date-calendar": Omit<Q2DateCalendar, keyof Q2DateCalendarAttributes> & { [K in keyof Q2DateCalendar & keyof Q2DateCalendarAttributes]?: Q2DateCalendar[K] } & { [K in keyof Q2DateCalendar & keyof Q2DateCalendarAttributes as `attr:${K}`]?: Q2DateCalendarAttributes[K] } & { [K in keyof Q2DateCalendar & keyof Q2DateCalendarAttributes as `prop:${K}`]?: Q2DateCalendar[K] };
11872
+ "q2-date-picker": Omit<Q2DatePicker, keyof Q2DatePickerAttributes> & { [K in keyof Q2DatePicker & keyof Q2DatePickerAttributes]?: Q2DatePicker[K] } & { [K in keyof Q2DatePicker & keyof Q2DatePickerAttributes as `attr:${K}`]?: Q2DatePickerAttributes[K] } & { [K in keyof Q2DatePicker & keyof Q2DatePickerAttributes as `prop:${K}`]?: Q2DatePicker[K] };
10968
11873
  "q2-detail": Omit<Q2Detail, keyof Q2DetailAttributes> & { [K in keyof Q2Detail & keyof Q2DetailAttributes]?: Q2Detail[K] } & { [K in keyof Q2Detail & keyof Q2DetailAttributes as `attr:${K}`]?: Q2DetailAttributes[K] } & { [K in keyof Q2Detail & keyof Q2DetailAttributes as `prop:${K}`]?: Q2Detail[K] };
10969
11874
  "q2-dropdown": Omit<Q2Dropdown, keyof Q2DropdownAttributes> & { [K in keyof Q2Dropdown & keyof Q2DropdownAttributes]?: Q2Dropdown[K] } & { [K in keyof Q2Dropdown & keyof Q2DropdownAttributes as `attr:${K}`]?: Q2DropdownAttributes[K] } & { [K in keyof Q2Dropdown & keyof Q2DropdownAttributes as `prop:${K}`]?: Q2Dropdown[K] };
10970
11875
  "q2-dropdown-item": Omit<Q2DropdownItem, keyof Q2DropdownItemAttributes> & { [K in keyof Q2DropdownItem & keyof Q2DropdownItemAttributes]?: Q2DropdownItem[K] } & { [K in keyof Q2DropdownItem & keyof Q2DropdownItemAttributes as `attr:${K}`]?: Q2DropdownItemAttributes[K] } & { [K in keyof Q2DropdownItem & keyof Q2DropdownItemAttributes as `prop:${K}`]?: Q2DropdownItem[K] };
@@ -11131,6 +12036,18 @@ declare module "@stencil/core" {
11131
12036
  * @summary Use for displaying large datasets with sorting, filtering, and selecting.
11132
12037
  */
11133
12038
  "q2-data-table": LocalJSX.IntrinsicElements["q2-data-table"] & JSXBase.HTMLAttributes<HTMLQ2DataTableElement>;
12039
+ /**
12040
+ * @name Date Calendar
12041
+ * @category Forms
12042
+ * @summary Use for selecting dates from a standalone calendar.
12043
+ */
12044
+ "q2-date-calendar": LocalJSX.IntrinsicElements["q2-date-calendar"] & JSXBase.HTMLAttributes<HTMLQ2DateCalendarElement>;
12045
+ /**
12046
+ * @name Date Picker
12047
+ * @category Forms
12048
+ * @summary Use for selecting a date or date range with an input and calendar popup.
12049
+ */
12050
+ "q2-date-picker": LocalJSX.IntrinsicElements["q2-date-picker"] & JSXBase.HTMLAttributes<HTMLQ2DatePickerElement>;
11134
12051
  /**
11135
12052
  * @name Detail
11136
12053
  * @category Display