q2-tecton-elements 1.38.2 → 1.39.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 (399) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +1 -1
  2. package/dist/cjs/click-elsewhere_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/{index-09c712ea.js → index-9113a9da.js} +2 -2
  4. package/dist/cjs/{index-09c712ea.js.map → index-9113a9da.js.map} +1 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/q2-action-sheet.cjs.entry.js +1 -1
  7. package/dist/cjs/q2-action-sheet.cjs.entry.js.map +1 -1
  8. package/dist/cjs/q2-btn_2.cjs.entry.js +2 -2
  9. package/dist/cjs/q2-btn_2.cjs.entry.js.map +1 -1
  10. package/dist/cjs/q2-calendar.cjs.entry.js +11 -2
  11. package/dist/cjs/q2-calendar.cjs.entry.js.map +1 -1
  12. package/dist/cjs/q2-card.cjs.entry.js +20 -23
  13. package/dist/cjs/q2-card.cjs.entry.js.map +1 -1
  14. package/dist/cjs/q2-carousel-pane.cjs.entry.js +1 -1
  15. package/dist/cjs/q2-carousel-pane.cjs.entry.js.map +1 -1
  16. package/dist/cjs/q2-carousel.cjs.entry.js +30 -4
  17. package/dist/cjs/q2-carousel.cjs.entry.js.map +1 -1
  18. package/dist/cjs/q2-chart-area.cjs.entry.js +1 -1
  19. package/dist/cjs/q2-chart-area.cjs.entry.js.map +1 -1
  20. package/dist/cjs/q2-chart-bar.cjs.entry.js +1 -1
  21. package/dist/cjs/q2-chart-donut.cjs.entry.js +14 -14
  22. package/dist/cjs/q2-chart-donut.cjs.entry.js.map +1 -1
  23. package/dist/cjs/q2-checkbox-group.cjs.entry.js +1 -1
  24. package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
  25. package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
  26. package/dist/cjs/q2-checkbox.cjs.entry.js.map +1 -1
  27. package/dist/cjs/q2-data-table.cjs.entry.js +43 -21
  28. package/dist/cjs/q2-data-table.cjs.entry.js.map +1 -1
  29. package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
  30. package/dist/cjs/q2-dropdown.cjs.entry.js +1 -1
  31. package/dist/cjs/q2-editable-field.cjs.entry.js +1 -1
  32. package/dist/cjs/q2-editable-field.cjs.entry.js.map +1 -1
  33. package/dist/cjs/q2-icon.cjs.entry.js +1 -1
  34. package/dist/cjs/q2-input.cjs.entry.js +6 -3
  35. package/dist/cjs/q2-input.cjs.entry.js.map +1 -1
  36. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-message.cjs.entry.js +1 -1
  38. package/dist/cjs/q2-month-picker.cjs.entry.js +1 -1
  39. package/dist/cjs/q2-optgroup_2.cjs.entry.js +1 -1
  40. package/dist/cjs/q2-optgroup_2.cjs.entry.js.map +1 -1
  41. package/dist/cjs/q2-option-list.cjs.entry.js +1 -1
  42. package/dist/cjs/q2-option-list.cjs.entry.js.map +1 -1
  43. package/dist/cjs/q2-pagination.cjs.entry.js +1 -1
  44. package/dist/cjs/q2-pagination.cjs.entry.js.map +1 -1
  45. package/dist/cjs/q2-pill.cjs.entry.js +1 -1
  46. package/dist/cjs/q2-pill.cjs.entry.js.map +1 -1
  47. package/dist/cjs/q2-radio-group.cjs.entry.js +1 -1
  48. package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
  49. package/dist/cjs/q2-radio.cjs.entry.js +1 -1
  50. package/dist/cjs/q2-radio.cjs.entry.js.map +1 -1
  51. package/dist/cjs/q2-section.cjs.entry.js +2 -2
  52. package/dist/cjs/q2-section.cjs.entry.js.map +1 -1
  53. package/dist/cjs/q2-select.cjs.entry.js +1 -1
  54. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  55. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  56. package/dist/cjs/q2-stepper-pane.cjs.entry.js.map +1 -1
  57. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +4 -4
  58. package/dist/cjs/q2-stepper-vertical.cjs.entry.js.map +1 -1
  59. package/dist/cjs/q2-stepper.cjs.entry.js +1 -1
  60. package/dist/cjs/q2-stepper.cjs.entry.js.map +1 -1
  61. package/dist/cjs/q2-tab-container.cjs.entry.js +1 -1
  62. package/dist/cjs/q2-tab-container.cjs.entry.js.map +1 -1
  63. package/dist/cjs/q2-tab-pane.cjs.entry.js.map +1 -1
  64. package/dist/cjs/q2-tag.cjs.entry.js +1 -1
  65. package/dist/cjs/q2-tag.cjs.entry.js.map +1 -1
  66. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  67. package/dist/cjs/q2-textarea.cjs.entry.js +1 -1
  68. package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
  69. package/dist/cjs/q2-tooltip.cjs.entry.js +1 -1
  70. package/dist/cjs/tecton-tab-pane.cjs.entry.js.map +1 -1
  71. package/dist/collection/components/click-elsewhere/index.js +1 -1
  72. package/dist/collection/components/click-elsewhere/index.js.map +1 -1
  73. package/dist/collection/components/q2-action-sheet/index.js +6 -3
  74. package/dist/collection/components/q2-action-sheet/index.js.map +1 -1
  75. package/dist/collection/components/q2-btn/styles.css +11 -11
  76. package/dist/collection/components/q2-calendar/index.js +23 -11
  77. package/dist/collection/components/q2-calendar/index.js.map +1 -1
  78. package/dist/collection/components/q2-card/index.js +21 -27
  79. package/dist/collection/components/q2-card/index.js.map +1 -1
  80. package/dist/collection/components/q2-card/styles.css +57 -0
  81. package/dist/collection/components/q2-carousel/index.js +33 -5
  82. package/dist/collection/components/q2-carousel/index.js.map +1 -1
  83. package/dist/collection/components/q2-carousel-pane/index.js +8 -4
  84. package/dist/collection/components/q2-carousel-pane/index.js.map +1 -1
  85. package/dist/collection/components/q2-chart-area/index.js +9 -4
  86. package/dist/collection/components/q2-chart-area/index.js.map +1 -1
  87. package/dist/collection/components/q2-chart-donut/index.js +58 -22
  88. package/dist/collection/components/q2-chart-donut/index.js.map +1 -1
  89. package/dist/collection/components/q2-checkbox/index.js +5 -2
  90. package/dist/collection/components/q2-checkbox/index.js.map +1 -1
  91. package/dist/collection/components/q2-checkbox-group/index.js +12 -5
  92. package/dist/collection/components/q2-checkbox-group/index.js.map +1 -1
  93. package/dist/collection/components/q2-data-table/index.js +73 -29
  94. package/dist/collection/components/q2-data-table/index.js.map +1 -1
  95. package/dist/collection/components/q2-editable-field/index.js +6 -6
  96. package/dist/collection/components/q2-editable-field/index.js.map +1 -1
  97. package/dist/collection/components/q2-input/formatting/phone.js +1 -1
  98. package/dist/collection/components/q2-input/formatting/phone.js.map +1 -1
  99. package/dist/collection/components/q2-input/index.js +23 -19
  100. package/dist/collection/components/q2-input/index.js.map +1 -1
  101. package/dist/collection/components/q2-input/types.js.map +1 -1
  102. package/dist/collection/components/q2-option/index.js +5 -2
  103. package/dist/collection/components/q2-option/index.js.map +1 -1
  104. package/dist/collection/components/q2-option-list/index.js +15 -9
  105. package/dist/collection/components/q2-option-list/index.js.map +1 -1
  106. package/dist/collection/components/q2-pagination/index.js +8 -5
  107. package/dist/collection/components/q2-pagination/index.js.map +1 -1
  108. package/dist/collection/components/q2-pill/index.js +5 -2
  109. package/dist/collection/components/q2-pill/index.js.map +1 -1
  110. package/dist/collection/components/q2-popover/index.js +1 -1
  111. package/dist/collection/components/q2-popover/index.js.map +1 -1
  112. package/dist/collection/components/q2-radio/index.js +3 -3
  113. package/dist/collection/components/q2-radio/index.js.map +1 -1
  114. package/dist/collection/components/q2-radio-group/index.js +7 -4
  115. package/dist/collection/components/q2-radio-group/index.js.map +1 -1
  116. package/dist/collection/components/q2-section/index.js +7 -4
  117. package/dist/collection/components/q2-section/index.js.map +1 -1
  118. package/dist/collection/components/q2-section/styles.css +8 -6
  119. package/dist/collection/components/q2-select/index.js +8 -5
  120. package/dist/collection/components/q2-select/index.js.map +1 -1
  121. package/dist/collection/components/q2-stepper/index.js +5 -2
  122. package/dist/collection/components/q2-stepper/index.js.map +1 -1
  123. package/dist/collection/components/q2-stepper-pane/index.js +11 -8
  124. package/dist/collection/components/q2-stepper-pane/index.js.map +1 -1
  125. package/dist/collection/components/q2-stepper-vertical/index.js +13 -6
  126. package/dist/collection/components/q2-stepper-vertical/index.js.map +1 -1
  127. package/dist/collection/components/q2-tab-container/index.js +14 -8
  128. package/dist/collection/components/q2-tab-container/index.js.map +1 -1
  129. package/dist/collection/components/q2-tab-pane/index.js +5 -2
  130. package/dist/collection/components/q2-tab-pane/index.js.map +1 -1
  131. package/dist/collection/components/q2-tag/index.js +1 -1
  132. package/dist/collection/components/q2-tag/index.js.map +1 -1
  133. package/dist/collection/components/q2-textarea/index.js +14 -8
  134. package/dist/collection/components/q2-textarea/index.js.map +1 -1
  135. package/dist/collection/components/tecton-tab-pane/index.js +5 -2
  136. package/dist/collection/components/tecton-tab-pane/index.js.map +1 -1
  137. package/dist/collection/utils/index.js +1 -1
  138. package/dist/collection/utils/index.js.map +1 -1
  139. package/dist/components/index13.js.map +1 -1
  140. package/dist/components/index14.js.map +1 -1
  141. package/dist/components/index15.js.map +1 -1
  142. package/dist/components/index16.js +1 -1
  143. package/dist/components/index16.js.map +1 -1
  144. package/dist/components/index2.js.map +1 -1
  145. package/dist/components/index5.js +1 -1
  146. package/dist/components/index5.js.map +1 -1
  147. package/dist/components/index6.js.map +1 -1
  148. package/dist/components/index9.js +5 -2
  149. package/dist/components/index9.js.map +1 -1
  150. package/dist/components/q2-action-sheet.js.map +1 -1
  151. package/dist/components/q2-calendar.js +10 -1
  152. package/dist/components/q2-calendar.js.map +1 -1
  153. package/dist/components/q2-card.js +19 -22
  154. package/dist/components/q2-card.js.map +1 -1
  155. package/dist/components/q2-carousel-pane.js.map +1 -1
  156. package/dist/components/q2-carousel.js +32 -4
  157. package/dist/components/q2-carousel.js.map +1 -1
  158. package/dist/components/q2-chart-area.js.map +1 -1
  159. package/dist/components/q2-chart-donut.js +16 -15
  160. package/dist/components/q2-chart-donut.js.map +1 -1
  161. package/dist/components/q2-checkbox-group.js.map +1 -1
  162. package/dist/components/q2-data-table.js +43 -21
  163. package/dist/components/q2-data-table.js.map +1 -1
  164. package/dist/components/q2-editable-field.js.map +1 -1
  165. package/dist/components/q2-pagination.js.map +1 -1
  166. package/dist/components/q2-pill.js.map +1 -1
  167. package/dist/components/q2-radio-group.js.map +1 -1
  168. package/dist/components/q2-radio.js.map +1 -1
  169. package/dist/components/q2-section.js +1 -1
  170. package/dist/components/q2-section.js.map +1 -1
  171. package/dist/components/q2-select.js.map +1 -1
  172. package/dist/components/q2-stepper-pane.js.map +1 -1
  173. package/dist/components/q2-stepper-vertical.js +3 -3
  174. package/dist/components/q2-stepper-vertical.js.map +1 -1
  175. package/dist/components/q2-stepper.js.map +1 -1
  176. package/dist/components/q2-tab-container.js.map +1 -1
  177. package/dist/components/q2-tab-pane.js.map +1 -1
  178. package/dist/components/q2-tag.js.map +1 -1
  179. package/dist/components/q2-textarea.js.map +1 -1
  180. package/dist/components/tecton-tab-pane.js.map +1 -1
  181. package/dist/esm/click-elsewhere_2.entry.js +1 -1
  182. package/dist/esm/click-elsewhere_2.entry.js.map +1 -1
  183. package/dist/esm/{index-84f1034e.js → index-fbe28822.js} +2 -2
  184. package/dist/esm/{index-84f1034e.js.map → index-fbe28822.js.map} +1 -1
  185. package/dist/esm/loader.js +1 -1
  186. package/dist/esm/q2-action-sheet.entry.js +1 -1
  187. package/dist/esm/q2-action-sheet.entry.js.map +1 -1
  188. package/dist/esm/q2-btn_2.entry.js +2 -2
  189. package/dist/esm/q2-btn_2.entry.js.map +1 -1
  190. package/dist/esm/q2-calendar.entry.js +11 -2
  191. package/dist/esm/q2-calendar.entry.js.map +1 -1
  192. package/dist/esm/q2-card.entry.js +20 -23
  193. package/dist/esm/q2-card.entry.js.map +1 -1
  194. package/dist/esm/q2-carousel-pane.entry.js +1 -1
  195. package/dist/esm/q2-carousel-pane.entry.js.map +1 -1
  196. package/dist/esm/q2-carousel.entry.js +30 -4
  197. package/dist/esm/q2-carousel.entry.js.map +1 -1
  198. package/dist/esm/q2-chart-area.entry.js +1 -1
  199. package/dist/esm/q2-chart-area.entry.js.map +1 -1
  200. package/dist/esm/q2-chart-bar.entry.js +1 -1
  201. package/dist/esm/q2-chart-donut.entry.js +14 -14
  202. package/dist/esm/q2-chart-donut.entry.js.map +1 -1
  203. package/dist/esm/q2-checkbox-group.entry.js +1 -1
  204. package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
  205. package/dist/esm/q2-checkbox.entry.js +1 -1
  206. package/dist/esm/q2-checkbox.entry.js.map +1 -1
  207. package/dist/esm/q2-data-table.entry.js +43 -21
  208. package/dist/esm/q2-data-table.entry.js.map +1 -1
  209. package/dist/esm/q2-dropdown-item.entry.js +1 -1
  210. package/dist/esm/q2-dropdown.entry.js +1 -1
  211. package/dist/esm/q2-editable-field.entry.js +1 -1
  212. package/dist/esm/q2-editable-field.entry.js.map +1 -1
  213. package/dist/esm/q2-icon.entry.js +1 -1
  214. package/dist/esm/q2-input.entry.js +6 -3
  215. package/dist/esm/q2-input.entry.js.map +1 -1
  216. package/dist/esm/q2-loc.entry.js +1 -1
  217. package/dist/esm/q2-message.entry.js +1 -1
  218. package/dist/esm/q2-month-picker.entry.js +1 -1
  219. package/dist/esm/q2-optgroup_2.entry.js +1 -1
  220. package/dist/esm/q2-optgroup_2.entry.js.map +1 -1
  221. package/dist/esm/q2-option-list.entry.js +1 -1
  222. package/dist/esm/q2-option-list.entry.js.map +1 -1
  223. package/dist/esm/q2-pagination.entry.js +1 -1
  224. package/dist/esm/q2-pagination.entry.js.map +1 -1
  225. package/dist/esm/q2-pill.entry.js +1 -1
  226. package/dist/esm/q2-pill.entry.js.map +1 -1
  227. package/dist/esm/q2-radio-group.entry.js +1 -1
  228. package/dist/esm/q2-radio-group.entry.js.map +1 -1
  229. package/dist/esm/q2-radio.entry.js +1 -1
  230. package/dist/esm/q2-radio.entry.js.map +1 -1
  231. package/dist/esm/q2-section.entry.js +2 -2
  232. package/dist/esm/q2-section.entry.js.map +1 -1
  233. package/dist/esm/q2-select.entry.js +1 -1
  234. package/dist/esm/q2-select.entry.js.map +1 -1
  235. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  236. package/dist/esm/q2-stepper-pane.entry.js.map +1 -1
  237. package/dist/esm/q2-stepper-vertical.entry.js +4 -4
  238. package/dist/esm/q2-stepper-vertical.entry.js.map +1 -1
  239. package/dist/esm/q2-stepper.entry.js +1 -1
  240. package/dist/esm/q2-stepper.entry.js.map +1 -1
  241. package/dist/esm/q2-tab-container.entry.js +1 -1
  242. package/dist/esm/q2-tab-container.entry.js.map +1 -1
  243. package/dist/esm/q2-tab-pane.entry.js.map +1 -1
  244. package/dist/esm/q2-tag.entry.js +1 -1
  245. package/dist/esm/q2-tag.entry.js.map +1 -1
  246. package/dist/esm/q2-tecton-elements.js +1 -1
  247. package/dist/esm/q2-textarea.entry.js +1 -1
  248. package/dist/esm/q2-textarea.entry.js.map +1 -1
  249. package/dist/esm/q2-tooltip.entry.js +1 -1
  250. package/dist/esm/tecton-tab-pane.entry.js.map +1 -1
  251. package/dist/q2-tecton-elements/p-0253a00b.entry.js +2 -0
  252. package/dist/q2-tecton-elements/p-0253a00b.entry.js.map +1 -0
  253. package/dist/q2-tecton-elements/{p-72b4ecc6.entry.js → p-07229496.entry.js} +2 -2
  254. package/dist/q2-tecton-elements/p-07229496.entry.js.map +1 -0
  255. package/dist/q2-tecton-elements/{p-a6b03db1.entry.js → p-0ecff52c.entry.js} +2 -2
  256. package/dist/q2-tecton-elements/{p-a6b03db1.entry.js.map → p-0ecff52c.entry.js.map} +1 -1
  257. package/dist/q2-tecton-elements/{p-f198f77b.entry.js → p-1179b32c.entry.js} +2 -2
  258. package/dist/q2-tecton-elements/p-1179b32c.entry.js.map +1 -0
  259. package/dist/q2-tecton-elements/{p-311f37e2.entry.js → p-15c69543.entry.js} +2 -2
  260. package/dist/q2-tecton-elements/{p-9220365b.entry.js → p-212c6301.entry.js} +2 -2
  261. package/dist/q2-tecton-elements/p-212c6301.entry.js.map +1 -0
  262. package/dist/q2-tecton-elements/p-3090b655.entry.js +2 -0
  263. package/dist/q2-tecton-elements/p-3090b655.entry.js.map +1 -0
  264. package/dist/q2-tecton-elements/{p-8f8d5362.entry.js → p-3569e648.entry.js} +2 -2
  265. package/dist/q2-tecton-elements/p-3569e648.entry.js.map +1 -0
  266. package/dist/q2-tecton-elements/{p-0cade28b.entry.js → p-36bff57a.entry.js} +2 -2
  267. package/dist/q2-tecton-elements/{p-57e81863.entry.js → p-39e94e12.entry.js} +2 -2
  268. package/dist/q2-tecton-elements/{p-57e81863.entry.js.map → p-39e94e12.entry.js.map} +1 -1
  269. package/dist/q2-tecton-elements/p-3f20d610.entry.js +2 -0
  270. package/dist/q2-tecton-elements/p-3f20d610.entry.js.map +1 -0
  271. package/dist/q2-tecton-elements/{p-29a7ca63.entry.js → p-44c2d7a2.entry.js} +2 -2
  272. package/dist/q2-tecton-elements/{p-29a7ca63.entry.js.map → p-44c2d7a2.entry.js.map} +1 -1
  273. package/dist/q2-tecton-elements/{p-deb773a5.entry.js → p-461dca3d.entry.js} +2 -2
  274. package/dist/q2-tecton-elements/{p-deb773a5.entry.js.map → p-461dca3d.entry.js.map} +1 -1
  275. package/dist/q2-tecton-elements/{p-3d82d94f.entry.js → p-5964fd50.entry.js} +2 -2
  276. package/dist/q2-tecton-elements/{p-3d82d94f.entry.js.map → p-5964fd50.entry.js.map} +1 -1
  277. package/dist/q2-tecton-elements/{p-e98d9cf2.entry.js → p-5b4c30b8.entry.js} +2 -2
  278. package/dist/q2-tecton-elements/p-5b4c30b8.entry.js.map +1 -0
  279. package/dist/q2-tecton-elements/{p-69dcf12e.entry.js → p-5d6c2534.entry.js} +2 -2
  280. package/dist/q2-tecton-elements/p-5d6c2534.entry.js.map +1 -0
  281. package/dist/q2-tecton-elements/{p-a09c90c1.entry.js → p-66bc9475.entry.js} +2 -2
  282. package/dist/q2-tecton-elements/{p-a09c90c1.entry.js.map → p-66bc9475.entry.js.map} +1 -1
  283. package/dist/q2-tecton-elements/{p-e4dadcd7.entry.js → p-6ba6d83e.entry.js} +2 -2
  284. package/dist/q2-tecton-elements/p-6ba6d83e.entry.js.map +1 -0
  285. package/dist/q2-tecton-elements/{p-5843f6c8.entry.js → p-78d5707b.entry.js} +2 -2
  286. package/dist/q2-tecton-elements/p-78d5707b.entry.js.map +1 -0
  287. package/dist/q2-tecton-elements/{p-85dc889e.entry.js → p-7e276297.entry.js} +2 -2
  288. package/dist/q2-tecton-elements/p-7e276297.entry.js.map +1 -0
  289. package/dist/q2-tecton-elements/{p-059ea7c9.entry.js → p-81e36fcd.entry.js} +2 -2
  290. package/dist/q2-tecton-elements/{p-8f273db2.entry.js → p-88b303a7.entry.js} +2 -2
  291. package/dist/q2-tecton-elements/{p-8f273db2.entry.js.map → p-88b303a7.entry.js.map} +1 -1
  292. package/dist/q2-tecton-elements/p-9889692d.entry.js +2 -0
  293. package/dist/q2-tecton-elements/p-9889692d.entry.js.map +1 -0
  294. package/dist/q2-tecton-elements/p-9da0db14.entry.js.map +1 -1
  295. package/dist/q2-tecton-elements/{p-c057134f.entry.js → p-9dff6592.entry.js} +2 -2
  296. package/dist/q2-tecton-elements/p-9dff6592.entry.js.map +1 -0
  297. package/dist/q2-tecton-elements/{p-145849d0.entry.js → p-a5a23edc.entry.js} +2 -2
  298. package/dist/q2-tecton-elements/p-a5a23edc.entry.js.map +1 -0
  299. package/dist/q2-tecton-elements/{p-db3bbfb8.entry.js → p-a9c40d3b.entry.js} +2 -2
  300. package/dist/q2-tecton-elements/p-a9c40d3b.entry.js.map +1 -0
  301. package/dist/q2-tecton-elements/{p-15179d55.entry.js → p-aa96f160.entry.js} +2 -2
  302. package/dist/q2-tecton-elements/{p-5c033ed9.entry.js → p-b3a32a46.entry.js} +2 -2
  303. package/dist/q2-tecton-elements/{p-5c033ed9.entry.js.map → p-b3a32a46.entry.js.map} +1 -1
  304. package/dist/q2-tecton-elements/{p-f3868a77.entry.js → p-b6ed1342.entry.js} +2 -2
  305. package/dist/q2-tecton-elements/{p-f3868a77.entry.js.map → p-b6ed1342.entry.js.map} +1 -1
  306. package/dist/q2-tecton-elements/{p-52132d80.entry.js → p-ba19d09f.entry.js} +2 -2
  307. package/dist/q2-tecton-elements/p-ba19d09f.entry.js.map +1 -0
  308. package/dist/q2-tecton-elements/{p-81b917a5.entry.js → p-cc7ba0cb.entry.js} +2 -2
  309. package/dist/q2-tecton-elements/{p-107f07f2.entry.js → p-ce009987.entry.js} +2 -2
  310. package/dist/q2-tecton-elements/p-d7fb3534.entry.js.map +1 -1
  311. package/dist/q2-tecton-elements/{p-959f47ef.entry.js → p-de7352f5.entry.js} +2 -2
  312. package/dist/q2-tecton-elements/{p-6ae87415.entry.js → p-ef2e2991.entry.js} +2 -2
  313. package/dist/q2-tecton-elements/{p-b83568e7.entry.js → p-f1479052.entry.js} +2 -2
  314. package/dist/q2-tecton-elements/p-f1479052.entry.js.map +1 -0
  315. package/dist/q2-tecton-elements/{p-f34521a4.js → p-fb903495.js} +2 -2
  316. package/dist/q2-tecton-elements/{p-f34521a4.js.map → p-fb903495.js.map} +1 -1
  317. package/dist/q2-tecton-elements/{p-2812f9d2.entry.js → p-ff137358.entry.js} +2 -2
  318. package/dist/q2-tecton-elements/p-ff137358.entry.js.map +1 -0
  319. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  320. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  321. package/dist/test/elements/q2-btn-test.e2e.js +31 -0
  322. package/dist/test/elements/q2-btn-test.e2e.js.map +1 -1
  323. package/dist/test/elements/q2-card-test.e2e.js +69 -11
  324. package/dist/test/elements/q2-card-test.e2e.js.map +1 -1
  325. package/dist/test/elements/q2-carousel-test.e2e.js +41 -3
  326. package/dist/test/elements/q2-carousel-test.e2e.js.map +1 -1
  327. package/dist/test/elements/q2-chart-donut-test.e2e.js +64 -9
  328. package/dist/test/elements/q2-chart-donut-test.e2e.js.map +1 -1
  329. package/dist/test/elements/q2-data-table-test.e2e.js +91 -2
  330. package/dist/test/elements/q2-data-table-test.e2e.js.map +1 -1
  331. package/dist/test/elements/q2-input-test.e2e.js +151 -67
  332. package/dist/test/elements/q2-input-test.e2e.js.map +1 -1
  333. package/dist/test/helpers.js +48 -0
  334. package/dist/test/helpers.js.map +1 -1
  335. package/dist/types/components/click-elsewhere/index.d.ts +3 -0
  336. package/dist/types/components/q2-action-sheet/index.d.ts +7 -0
  337. package/dist/types/components/q2-calendar/index.d.ts +23 -3
  338. package/dist/types/components/q2-card/index.d.ts +14 -4
  339. package/dist/types/components/q2-carousel/index.d.ts +8 -0
  340. package/dist/types/components/q2-carousel-pane/index.d.ts +7 -1
  341. package/dist/types/components/q2-chart-area/index.d.ts +7 -1
  342. package/dist/types/components/q2-chart-donut/index.d.ts +18 -3
  343. package/dist/types/components/q2-checkbox/index.d.ts +4 -0
  344. package/dist/types/components/q2-checkbox-group/index.d.ts +8 -1
  345. package/dist/types/components/q2-data-table/index.d.ts +43 -3
  346. package/dist/types/components/q2-editable-field/index.d.ts +18 -2
  347. package/dist/types/components/q2-input/index.d.ts +19 -2
  348. package/dist/types/components/q2-input/types.d.ts +1 -0
  349. package/dist/types/components/q2-option/index.d.ts +4 -0
  350. package/dist/types/components/q2-option-list/index.d.ts +15 -1
  351. package/dist/types/components/q2-pagination/index.d.ts +8 -2
  352. package/dist/types/components/q2-pill/index.d.ts +4 -0
  353. package/dist/types/components/q2-popover/index.d.ts +3 -0
  354. package/dist/types/components/q2-radio/index.d.ts +6 -1
  355. package/dist/types/components/q2-radio-group/index.d.ts +7 -1
  356. package/dist/types/components/q2-section/index.d.ts +7 -1
  357. package/dist/types/components/q2-select/index.d.ts +16 -1
  358. package/dist/types/components/q2-stepper/index.d.ts +4 -0
  359. package/dist/types/components/q2-stepper-pane/index.d.ts +11 -1
  360. package/dist/types/components/q2-stepper-vertical/index.d.ts +10 -2
  361. package/dist/types/components/q2-tab-container/index.d.ts +12 -2
  362. package/dist/types/components/q2-tab-pane/index.d.ts +4 -0
  363. package/dist/types/components/q2-tag/index.d.ts +5 -0
  364. package/dist/types/components/q2-textarea/index.d.ts +14 -2
  365. package/dist/types/components/tecton-tab-pane/index.d.ts +4 -0
  366. package/dist/types/components.d.ts +223 -27
  367. package/dist/types/workspace/workspace/{tecton-production_release_1.38.x → _Gitlab_tecton-production_master}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +1 -0
  368. package/package.json +4 -3
  369. package/dist/q2-tecton-elements/p-072bda73.entry.js +0 -2
  370. package/dist/q2-tecton-elements/p-072bda73.entry.js.map +0 -1
  371. package/dist/q2-tecton-elements/p-145849d0.entry.js.map +0 -1
  372. package/dist/q2-tecton-elements/p-2812f9d2.entry.js.map +0 -1
  373. package/dist/q2-tecton-elements/p-52132d80.entry.js.map +0 -1
  374. package/dist/q2-tecton-elements/p-5843f6c8.entry.js.map +0 -1
  375. package/dist/q2-tecton-elements/p-69dcf12e.entry.js.map +0 -1
  376. package/dist/q2-tecton-elements/p-72b4ecc6.entry.js.map +0 -1
  377. package/dist/q2-tecton-elements/p-85dc889e.entry.js.map +0 -1
  378. package/dist/q2-tecton-elements/p-8f8d5362.entry.js.map +0 -1
  379. package/dist/q2-tecton-elements/p-9220365b.entry.js.map +0 -1
  380. package/dist/q2-tecton-elements/p-a4017e55.entry.js +0 -2
  381. package/dist/q2-tecton-elements/p-a4017e55.entry.js.map +0 -1
  382. package/dist/q2-tecton-elements/p-af98db79.entry.js +0 -2
  383. package/dist/q2-tecton-elements/p-af98db79.entry.js.map +0 -1
  384. package/dist/q2-tecton-elements/p-b83568e7.entry.js.map +0 -1
  385. package/dist/q2-tecton-elements/p-c0334e63.entry.js +0 -2
  386. package/dist/q2-tecton-elements/p-c0334e63.entry.js.map +0 -1
  387. package/dist/q2-tecton-elements/p-c057134f.entry.js.map +0 -1
  388. package/dist/q2-tecton-elements/p-db3bbfb8.entry.js.map +0 -1
  389. package/dist/q2-tecton-elements/p-e4dadcd7.entry.js.map +0 -1
  390. package/dist/q2-tecton-elements/p-e98d9cf2.entry.js.map +0 -1
  391. package/dist/q2-tecton-elements/p-f198f77b.entry.js.map +0 -1
  392. /package/dist/q2-tecton-elements/{p-311f37e2.entry.js.map → p-15c69543.entry.js.map} +0 -0
  393. /package/dist/q2-tecton-elements/{p-0cade28b.entry.js.map → p-36bff57a.entry.js.map} +0 -0
  394. /package/dist/q2-tecton-elements/{p-059ea7c9.entry.js.map → p-81e36fcd.entry.js.map} +0 -0
  395. /package/dist/q2-tecton-elements/{p-15179d55.entry.js.map → p-aa96f160.entry.js.map} +0 -0
  396. /package/dist/q2-tecton-elements/{p-81b917a5.entry.js.map → p-cc7ba0cb.entry.js.map} +0 -0
  397. /package/dist/q2-tecton-elements/{p-107f07f2.entry.js.map → p-ce009987.entry.js.map} +0 -0
  398. /package/dist/q2-tecton-elements/{p-959f47ef.entry.js.map → p-de7352f5.entry.js.map} +0 -0
  399. /package/dist/q2-tecton-elements/{p-6ae87415.entry.js.map → p-ef2e2991.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-stepper/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Prop,\n h,\n Element,\n ComponentInterface,\n State,\n Watch,\n Listen,\n Event,\n EventEmitter,\n Fragment,\n} from '@stencil/core';\nimport { loc, addSmoothScrollPolyfill, overrideFocus, isEventFromElement } from 'src/utils';\n\naddSmoothScrollPolyfill();\n\n@Component({\n tag: 'q2-stepper',\n shadow: true,\n styleUrl: 'styles.scss',\n})\nexport class Q2Stepper implements ComponentInterface {\n @Prop({ reflect: true, mutable: true }) currentStep: number = 1;\n /**\n * Used to determine the number of steps in the stepper.\n * @private\n */\n @Prop({ mutable: true }) stepCount: number;\n @Prop({ mutable: true }) lastEnabledStep: number;\n\n @Element() hostElement: HTMLElement;\n\n @Event() change: EventEmitter;\n @State() contentChangeTriggerCount: number = 0;\n @State() scrollEnabled: boolean = false;\n @State() showScrollLeft: boolean = false;\n @State() showScrollRight: boolean = false;\n listElement: HTMLUListElement;\n resizeObserver: ResizeObserver;\n scheduledAfterRender: (() => void)[] = [];\n\n ////////// LIFECYCLE HOOKS ////////\n\n componentWillLoad() {\n if (!this.lastEnabledStep) this.lastEnabledStep = this.currentStep || 1;\n this.resizeObserver = new ResizeObserver(() => this.checkScrollState());\n this.checkForPanes();\n }\n\n componentDidLoad() {\n this.resizeObserver.observe(this.listElement);\n this.checkScrollState();\n overrideFocus(this.hostElement);\n setTimeout(() => this.showStep(this.currentStep || 1), 0);\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n }\n\n disconnectedCallback() {\n this.resizeObserver.disconnect();\n }\n\n ////////// WATCHER METHODS ////////\n\n @Watch('currentStep')\n currentStepChanged(stepNumber: number) {\n this.showStep(stepNumber);\n }\n\n ////////// HOST EVENTS ////////\n\n @Listen('change')\n defaultChangeHandler(event: CustomEvent) {\n const { hostElement } = this;\n if (event.target === hostElement && !hostElement.getAttribute('onchange') && !!event.detail) {\n this.currentStep = event.detail.selectedStep;\n }\n }\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n this.focusStep(this.currentStep, true, true);\n }\n\n @Listen('statusChange')\n statusChangeHandler(event: CustomEvent) {\n const index = Array.from(this.allPanes).findIndex(el => event.detail.id === el.id);\n if (index > -1) {\n this.allPanes[index].status = event.detail.status;\n this.renderStepBtn(index);\n }\n }\n\n @Listen('contentChange')\n contentChangeHandler() {\n this.contentChangeTriggerCount += 1;\n }\n\n ////////// GETTER METHODS ////////\n\n get allPanes() {\n return this.hostElement.querySelectorAll<HTMLQ2StepperPaneElement>('q2-stepper-pane');\n }\n\n ////////// EVENT HANDLERS ////////\n\n onSlotChange = () => {\n this.checkForPanes();\n this.checkScrollState();\n };\n\n onScrollBtnClick = (direction: 'left' | 'right') => {\n const scrollAmount = Math.floor(this.listElement.clientWidth / 2);\n\n this.listElement.scrollBy({\n left: direction === 'left' ? -scrollAmount : scrollAmount,\n behavior: 'smooth',\n });\n };\n\n onStepClick = (event, selectedStep: number) => {\n event.stopPropagation();\n const { currentStep, stepCount, lastEnabledStep } = this;\n if (selectedStep > lastEnabledStep || selectedStep === currentStep) return;\n\n this.change.emit({\n selectedStep,\n lastEnabledStep,\n currentStep,\n stepCount,\n });\n };\n\n onStepKeyDown = (event: KeyboardEvent, stepNumber: number) => {\n const { lastEnabledStep, stepCount } = this;\n const { key } = event;\n\n let selectedStep;\n switch (key) {\n case 'ArrowLeft':\n event.preventDefault();\n selectedStep = Math.max(stepNumber - 1, 0);\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n selectedStep = Math.min(stepNumber + 1, stepCount);\n break;\n\n case 'Home':\n event.preventDefault();\n selectedStep = 1;\n break;\n\n case 'End':\n event.preventDefault();\n selectedStep = lastEnabledStep;\n break;\n }\n\n if (!selectedStep) return;\n this.focusStep(selectedStep, true);\n };\n\n ////////// HELPER METHODS ////////\n\n showStep(stepNumber: number) {\n if (stepNumber > this.lastEnabledStep) {\n const { currentStep, stepCount } = this;\n this.lastEnabledStep = stepNumber;\n this.change.emit({\n selectedStep: null,\n lastEnabledStep: stepNumber,\n currentStep,\n stepCount,\n });\n }\n\n this.scheduledAfterRender.push(this.resizeIframe);\n this.showStepPane(stepNumber);\n this.focusStep(stepNumber, this.scrollEnabled);\n }\n\n checkForPanes = () => {\n const { allPanes } = this;\n if (!allPanes.length) return;\n\n this.stepCount = allPanes.length;\n };\n\n checkScrollState = () => {\n if (!this.listElement) return;\n const { scrollLeft, scrollWidth, clientWidth } = this.listElement;\n this.scrollEnabled = scrollWidth > clientWidth;\n this.showScrollLeft = !!scrollLeft;\n this.showScrollRight = scrollWidth !== scrollLeft + clientWidth;\n };\n\n resizeIframe() {\n return window?.TectonElements?.resizeIframe?.();\n }\n\n showStepPane(stepNumber: number) {\n this.allPanes.forEach((pane, index) => {\n pane.isActive = stepNumber === index + 1;\n });\n }\n\n focusStep(stepNumber: number, scrollIntoView?: boolean, forceFocus?: boolean) {\n const stepListItem = this.listElement.children[stepNumber - 1] as HTMLLIElement;\n const isActive = document.activeElement === this.hostElement;\n if (!stepListItem) return;\n if (isActive || forceFocus) {\n (stepListItem.firstElementChild as HTMLButtonElement)?.focus();\n }\n\n if (scrollIntoView) {\n const left = stepListItem.offsetLeft - this.listElement.clientWidth / 2;\n this.listElement.scrollTo({\n left,\n behavior: 'smooth',\n });\n }\n }\n\n ////////// RENDER METHODS ////////\n getPaneSlotOrProperty(pane: HTMLQ2StepperPaneElement, slotName: 'description' | 'label') {\n const slot = pane.querySelector<HTMLElement>(`[slot=\"${slotName}\"]`);\n return slot?.outerHTML ?? loc(pane[slotName]);\n }\n\n renderStepBtn(stepIndex: number) {\n const { allPanes, stepCount, currentStep, lastEnabledStep } = this;\n const pane = allPanes?.[stepIndex] ?? null;\n const { id, status } = pane;\n const label = this.getPaneSlotOrProperty(pane, 'label');\n const description = this.getPaneSlotOrProperty(pane, 'description');\n\n const stepNumber = stepIndex + 1;\n const isCurrentStep = stepNumber === currentStep;\n const labelId = !!label && `label-${id}`;\n const descriptionId = !!label && !!description && `description-${id}`;\n const btnLabel = !label && loc('tecton.element.stepper.number', [`${stepNumber}`, `${stepCount}`]);\n\n let statusIcon;\n if (status === 'complete') statusIcon = 'success-filled';\n else if (status === 'error') statusIcon = 'warning-filled';\n\n const stepClasses = ['step-btn'];\n if (status) stepClasses.push(`status-${status}`);\n const isLocked = status === 'locked';\n const disabled = isLocked || stepNumber > lastEnabledStep;\n\n return (\n <li role=\"presentation\">\n <button\n class={stepClasses.join(' ')}\n type=\"button\"\n aria-labelledby={labelId}\n aria-describedBy={descriptionId}\n aria-label={btnLabel}\n aria-selected={isCurrentStep}\n aria-controls={id}\n aria-disabled={disabled ? 'true' : null}\n role=\"tab\"\n tabIndex={isCurrentStep ? 0 : -1}\n onKeyDown={ev => this.onStepKeyDown(ev, stepNumber)}\n onClick={ev => !isLocked && this.onStepClick(ev, stepNumber)}\n >\n <Fragment>\n {statusIcon ? (\n <div class=\"step-icon\">\n <q2-icon type={statusIcon}></q2-icon>\n </div>\n ) : (\n <div class=\"step-bubble\">{stepNumber}</div>\n )}\n {labelId && (\n <div\n class=\"step-label\"\n id={labelId}\n innerHTML={label}\n ></div>\n )}\n {labelId && descriptionId && (\n <div\n class=\"step-description\"\n id={descriptionId}\n innerHTML={description}\n ></div>\n )}\n </Fragment>\n </button>\n {stepIndex ? <div class=\"step-divider\"></div> : ''}\n </li>\n );\n }\n\n render() {\n const { stepCount, scrollEnabled, showScrollLeft, showScrollRight } = this;\n const containerClasses = ['step-container'];\n if (scrollEnabled) containerClasses.push('has-scroll');\n\n return (\n <Fragment>\n <div class={containerClasses.join(' ')}>\n {scrollEnabled && (\n <Fragment>\n <div\n class=\"gradient-left\"\n hidden={!showScrollLeft}\n ></div>\n <div\n class=\"gradient-right\"\n hidden={!showScrollRight}\n ></div>\n\n <q2-btn\n class=\"btn-left\"\n hidden={!this.showScrollLeft}\n onClick={() => this.onScrollBtnClick('left')}\n >\n <q2-icon type=\"chevron-left\"></q2-icon>\n </q2-btn>\n\n <q2-btn\n class=\"btn-right\"\n hidden={!this.showScrollRight}\n onClick={() => this.onScrollBtnClick('right')}\n >\n <q2-icon type=\"chevron-right\"></q2-icon>\n </q2-btn>\n </Fragment>\n )}\n\n <ul\n onScroll={this.checkScrollState}\n ref={el => (this.listElement = el)}\n role=\"tablist\"\n >\n {stepCount > 0 && [...Array(stepCount).keys()].map(stepIndex => this.renderStepBtn(stepIndex))}\n </ul>\n </div>\n <div>\n <slot onSlotchange={() => this.onSlotChange()} />\n </div>\n </Fragment>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-stepper/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Prop,\n h,\n Element,\n ComponentInterface,\n State,\n Watch,\n Listen,\n Event,\n EventEmitter,\n Fragment,\n} from '@stencil/core';\nimport { loc, addSmoothScrollPolyfill, overrideFocus, isEventFromElement } from 'src/utils';\n\naddSmoothScrollPolyfill();\n\n@Component({\n tag: 'q2-stepper',\n shadow: true,\n styleUrl: 'styles.scss',\n})\nexport class Q2Stepper implements ComponentInterface {\n @Prop({ reflect: true, mutable: true }) currentStep: number = 1;\n /**\n * Used to determine the number of steps in the stepper.\n * @private\n */\n @Prop({ mutable: true }) stepCount: number;\n @Prop({ mutable: true }) lastEnabledStep: number;\n\n @Element() hostElement: HTMLElement;\n\n /**\n * Emitted when the selected step changes.\n * @legacyEvent\n */\n @Event() change: EventEmitter;\n @State() contentChangeTriggerCount: number = 0;\n @State() scrollEnabled: boolean = false;\n @State() showScrollLeft: boolean = false;\n @State() showScrollRight: boolean = false;\n listElement: HTMLUListElement;\n resizeObserver: ResizeObserver;\n scheduledAfterRender: (() => void)[] = [];\n\n ////////// LIFECYCLE HOOKS ////////\n\n componentWillLoad() {\n if (!this.lastEnabledStep) this.lastEnabledStep = this.currentStep || 1;\n this.resizeObserver = new ResizeObserver(() => this.checkScrollState());\n this.checkForPanes();\n }\n\n componentDidLoad() {\n this.resizeObserver.observe(this.listElement);\n this.checkScrollState();\n overrideFocus(this.hostElement);\n setTimeout(() => this.showStep(this.currentStep || 1), 0);\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n }\n\n disconnectedCallback() {\n this.resizeObserver.disconnect();\n }\n\n ////////// WATCHER METHODS ////////\n\n @Watch('currentStep')\n currentStepChanged(stepNumber: number) {\n this.showStep(stepNumber);\n }\n\n ////////// HOST EVENTS ////////\n\n @Listen('change')\n defaultChangeHandler(event: CustomEvent) {\n const { hostElement } = this;\n if (event.target === hostElement && !hostElement.getAttribute('onchange') && !!event.detail) {\n this.currentStep = event.detail.selectedStep;\n }\n }\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n this.focusStep(this.currentStep, true, true);\n }\n\n @Listen('statusChange')\n statusChangeHandler(event: CustomEvent) {\n const index = Array.from(this.allPanes).findIndex(el => event.detail.id === el.id);\n if (index > -1) {\n this.allPanes[index].status = event.detail.status;\n this.renderStepBtn(index);\n }\n }\n\n @Listen('contentChange')\n contentChangeHandler() {\n this.contentChangeTriggerCount += 1;\n }\n\n ////////// GETTER METHODS ////////\n\n get allPanes() {\n return this.hostElement.querySelectorAll<HTMLQ2StepperPaneElement>('q2-stepper-pane');\n }\n\n ////////// EVENT HANDLERS ////////\n\n onSlotChange = () => {\n this.checkForPanes();\n this.checkScrollState();\n };\n\n onScrollBtnClick = (direction: 'left' | 'right') => {\n const scrollAmount = Math.floor(this.listElement.clientWidth / 2);\n\n this.listElement.scrollBy({\n left: direction === 'left' ? -scrollAmount : scrollAmount,\n behavior: 'smooth',\n });\n };\n\n onStepClick = (event, selectedStep: number) => {\n event.stopPropagation();\n const { currentStep, stepCount, lastEnabledStep } = this;\n if (selectedStep > lastEnabledStep || selectedStep === currentStep) return;\n\n this.change.emit({\n selectedStep,\n lastEnabledStep,\n currentStep,\n stepCount,\n });\n };\n\n onStepKeyDown = (event: KeyboardEvent, stepNumber: number) => {\n const { lastEnabledStep, stepCount } = this;\n const { key } = event;\n\n let selectedStep;\n switch (key) {\n case 'ArrowLeft':\n event.preventDefault();\n selectedStep = Math.max(stepNumber - 1, 0);\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n selectedStep = Math.min(stepNumber + 1, stepCount);\n break;\n\n case 'Home':\n event.preventDefault();\n selectedStep = 1;\n break;\n\n case 'End':\n event.preventDefault();\n selectedStep = lastEnabledStep;\n break;\n }\n\n if (!selectedStep) return;\n this.focusStep(selectedStep, true);\n };\n\n ////////// HELPER METHODS ////////\n\n showStep(stepNumber: number) {\n if (stepNumber > this.lastEnabledStep) {\n const { currentStep, stepCount } = this;\n this.lastEnabledStep = stepNumber;\n this.change.emit({\n selectedStep: null,\n lastEnabledStep: stepNumber,\n currentStep,\n stepCount,\n });\n }\n\n this.scheduledAfterRender.push(this.resizeIframe);\n this.showStepPane(stepNumber);\n this.focusStep(stepNumber, this.scrollEnabled);\n }\n\n checkForPanes = () => {\n const { allPanes } = this;\n if (!allPanes.length) return;\n\n this.stepCount = allPanes.length;\n };\n\n checkScrollState = () => {\n if (!this.listElement) return;\n const { scrollLeft, scrollWidth, clientWidth } = this.listElement;\n this.scrollEnabled = scrollWidth > clientWidth;\n this.showScrollLeft = !!scrollLeft;\n this.showScrollRight = scrollWidth !== scrollLeft + clientWidth;\n };\n\n resizeIframe() {\n return window?.TectonElements?.resizeIframe?.();\n }\n\n showStepPane(stepNumber: number) {\n this.allPanes.forEach((pane, index) => {\n pane.isActive = stepNumber === index + 1;\n });\n }\n\n focusStep(stepNumber: number, scrollIntoView?: boolean, forceFocus?: boolean) {\n const stepListItem = this.listElement.children[stepNumber - 1] as HTMLLIElement;\n const isActive = document.activeElement === this.hostElement;\n if (!stepListItem) return;\n if (isActive || forceFocus) {\n (stepListItem.firstElementChild as HTMLButtonElement)?.focus();\n }\n\n if (scrollIntoView) {\n const left = stepListItem.offsetLeft - this.listElement.clientWidth / 2;\n this.listElement.scrollTo({\n left,\n behavior: 'smooth',\n });\n }\n }\n\n ////////// RENDER METHODS ////////\n getPaneSlotOrProperty(pane: HTMLQ2StepperPaneElement, slotName: 'description' | 'label') {\n const slot = pane.querySelector<HTMLElement>(`[slot=\"${slotName}\"]`);\n return slot?.outerHTML ?? loc(pane[slotName]);\n }\n\n renderStepBtn(stepIndex: number) {\n const { allPanes, stepCount, currentStep, lastEnabledStep } = this;\n const pane = allPanes?.[stepIndex] ?? null;\n const { id, status } = pane;\n const label = this.getPaneSlotOrProperty(pane, 'label');\n const description = this.getPaneSlotOrProperty(pane, 'description');\n\n const stepNumber = stepIndex + 1;\n const isCurrentStep = stepNumber === currentStep;\n const labelId = !!label && `label-${id}`;\n const descriptionId = !!label && !!description && `description-${id}`;\n const btnLabel = !label && loc('tecton.element.stepper.number', [`${stepNumber}`, `${stepCount}`]);\n\n let statusIcon;\n if (status === 'complete') statusIcon = 'success-filled';\n else if (status === 'error') statusIcon = 'warning-filled';\n\n const stepClasses = ['step-btn'];\n if (status) stepClasses.push(`status-${status}`);\n const isLocked = status === 'locked';\n const disabled = isLocked || stepNumber > lastEnabledStep;\n\n return (\n <li role=\"presentation\">\n <button\n class={stepClasses.join(' ')}\n type=\"button\"\n aria-labelledby={labelId}\n aria-describedBy={descriptionId}\n aria-label={btnLabel}\n aria-selected={isCurrentStep}\n aria-controls={id}\n aria-disabled={disabled ? 'true' : null}\n role=\"tab\"\n tabIndex={isCurrentStep ? 0 : -1}\n onKeyDown={ev => this.onStepKeyDown(ev, stepNumber)}\n onClick={ev => !isLocked && this.onStepClick(ev, stepNumber)}\n >\n <Fragment>\n {statusIcon ? (\n <div class=\"step-icon\">\n <q2-icon type={statusIcon}></q2-icon>\n </div>\n ) : (\n <div class=\"step-bubble\">{stepNumber}</div>\n )}\n {labelId && (\n <div\n class=\"step-label\"\n id={labelId}\n innerHTML={label}\n ></div>\n )}\n {labelId && descriptionId && (\n <div\n class=\"step-description\"\n id={descriptionId}\n innerHTML={description}\n ></div>\n )}\n </Fragment>\n </button>\n {stepIndex ? <div class=\"step-divider\"></div> : ''}\n </li>\n );\n }\n\n render() {\n const { stepCount, scrollEnabled, showScrollLeft, showScrollRight } = this;\n const containerClasses = ['step-container'];\n if (scrollEnabled) containerClasses.push('has-scroll');\n\n return (\n <Fragment>\n <div class={containerClasses.join(' ')}>\n {scrollEnabled && (\n <Fragment>\n <div\n class=\"gradient-left\"\n hidden={!showScrollLeft}\n ></div>\n <div\n class=\"gradient-right\"\n hidden={!showScrollRight}\n ></div>\n\n <q2-btn\n class=\"btn-left\"\n hidden={!this.showScrollLeft}\n onClick={() => this.onScrollBtnClick('left')}\n >\n <q2-icon type=\"chevron-left\"></q2-icon>\n </q2-btn>\n\n <q2-btn\n class=\"btn-right\"\n hidden={!this.showScrollRight}\n onClick={() => this.onScrollBtnClick('right')}\n >\n <q2-icon type=\"chevron-right\"></q2-icon>\n </q2-btn>\n </Fragment>\n )}\n\n <ul\n onScroll={this.checkScrollState}\n ref={el => (this.listElement = el)}\n role=\"tablist\"\n >\n {stepCount > 0 && [...Array(stepCount).keys()].map(stepIndex => this.renderStepBtn(stepIndex))}\n </ul>\n </div>\n <div>\n <slot onSlotchange={() => this.onSlotChange()} />\n </div>\n </Fragment>\n );\n }\n}\n"]}
@@ -180,7 +180,7 @@ export class Q2StepperPane {
180
180
  "composed": true,
181
181
  "docs": {
182
182
  "tags": [],
183
- "text": ""
183
+ "text": "Emitted when the status of the pane changes."
184
184
  },
185
185
  "complexType": {
186
186
  "original": "IStepperPaneEvent",
@@ -188,7 +188,7 @@ export class Q2StepperPane {
188
188
  "references": {
189
189
  "IStepperPaneEvent": {
190
190
  "location": "local",
191
- "path": "/workspace/workspace/tecton-production_release_1.38.x/packages/q2-tecton-elements/src/components/q2-stepper-pane/index.tsx"
191
+ "path": "/workspace/workspace/_Gitlab_tecton-production_master/packages/q2-tecton-elements/src/components/q2-stepper-pane/index.tsx"
192
192
  }
193
193
  }
194
194
  }
@@ -200,7 +200,7 @@ export class Q2StepperPane {
200
200
  "composed": true,
201
201
  "docs": {
202
202
  "tags": [],
203
- "text": ""
203
+ "text": "Emitted when the active state of the pane changes."
204
204
  },
205
205
  "complexType": {
206
206
  "original": "IStepperPaneEvent",
@@ -208,7 +208,7 @@ export class Q2StepperPane {
208
208
  "references": {
209
209
  "IStepperPaneEvent": {
210
210
  "location": "local",
211
- "path": "/workspace/workspace/tecton-production_release_1.38.x/packages/q2-tecton-elements/src/components/q2-stepper-pane/index.tsx"
211
+ "path": "/workspace/workspace/_Gitlab_tecton-production_master/packages/q2-tecton-elements/src/components/q2-stepper-pane/index.tsx"
212
212
  }
213
213
  }
214
214
  }
@@ -219,12 +219,15 @@ export class Q2StepperPane {
219
219
  "cancelable": true,
220
220
  "composed": true,
221
221
  "docs": {
222
- "tags": [],
223
- "text": ""
222
+ "tags": [{
223
+ "name": "private",
224
+ "text": undefined
225
+ }],
226
+ "text": "Emitted when the content of the pane changes."
224
227
  },
225
228
  "complexType": {
226
- "original": "any",
227
- "resolved": "any",
229
+ "original": "undefined",
230
+ "resolved": "undefined",
228
231
  "references": {}
229
232
  }
230
233
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-stepper-pane/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Prop,\n h,\n Element,\n ComponentInterface,\n Fragment,\n Event,\n Watch,\n EventEmitter,\n Listen,\n State,\n} from '@stencil/core';\nimport { createGuid, loc, nextPaint } from 'src/utils';\n\nexport interface IStepperPaneEvent {\n status: string;\n isActive: boolean;\n id: string;\n host: HTMLElement;\n}\n\n@Component({\n tag: 'q2-stepper-pane',\n shadow: true,\n styleUrl: 'styles.scss',\n})\nexport class Q2StepperPane implements ComponentInterface {\n @Prop({ reflect: true }) label: string;\n @Prop({ reflect: true }) description: string;\n /**\n * Used by q2-stepper and q2-stepper-vertical to determine which pane is active\n * @private\n */\n @Prop({ reflect: true }) isActive: boolean;\n @Prop({ reflect: true }) showWithChildren: boolean;\n @Prop({ reflect: true }) status: 'complete' | 'error' | 'locked';\n\n @State() isChildActive: boolean = false;\n\n @Element() hostElement: HTMLElement;\n @Event() statusChange: EventEmitter<IStepperPaneEvent>;\n @Event() activeChange: EventEmitter<IStepperPaneEvent>;\n @Event({ bubbles: true }) contentChange: EventEmitter;\n\n mutationObserver: MutationObserver;\n\n /// LifeCycle Hooks ///\n connectedCallback() {\n if (!this.hostElement.id) this.hostElement.id = `step-${createGuid()}`;\n }\n\n componentWillLoad() {\n this.checkForActiveChildren();\n }\n\n componentDidLoad() {\n const observer = new MutationObserver(() => {\n this.contentChange.emit();\n });\n observer.observe(this.hostElement, { childList: true, subtree: true, characterData: true });\n this.mutationObserver = observer;\n }\n\n disconnectedCallback() {\n this.mutationObserver.disconnect();\n this.mutationObserver = null;\n }\n\n /// Watchers and Listeners ///\n @Watch('label')\n @Watch('description')\n labelOrDescriptionChanged() {\n this.contentChange.emit();\n }\n\n @Watch('status')\n statusChanged(status) {\n this.statusChange.emit({\n status,\n isActive: !!this.isActive,\n id: this.hostElement.id,\n host: this.hostElement,\n });\n }\n\n @Watch('isActive')\n isActiveChanged(isActive) {\n this.activeChange.emit({\n status: this.status || '',\n isActive,\n id: this.hostElement.id,\n host: this.hostElement,\n });\n }\n\n @Watch('showWithChildren')\n @Listen('activeChange')\n checkForActiveChildren() {\n if (!this.showWithChildren) return;\n nextPaint(() => {\n setTimeout(() => {\n this.isChildActive = !!this.hostElement.querySelector<HTMLQ2StepperPaneElement>(\n \"[slot='children'] > q2-stepper-pane[is-active]\"\n );\n });\n });\n }\n\n /// DOM ///\n render() {\n const { label, isActive } = this;\n return (\n <Fragment>\n <div\n role=\"tabpanel\"\n aria-label={label && loc(label)}\n tabindex=\"0\"\n hidden={!isActive && !(this.isChildActive && this.showWithChildren)}\n >\n <slot />\n </div>\n <div hidden>\n <slot\n name=\"label\"\n onSlotchange={() => this.contentChange.emit()}\n ></slot>\n <slot\n name=\"description\"\n onSlotchange={() => this.contentChange.emit()}\n ></slot>\n </div>\n <slot name=\"children\"></slot>\n </Fragment>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-stepper-pane/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Prop,\n h,\n Element,\n ComponentInterface,\n Fragment,\n Event,\n Watch,\n EventEmitter,\n Listen,\n State,\n} from '@stencil/core';\nimport { createGuid, loc, nextPaint } from 'src/utils';\n\nexport interface IStepperPaneEvent {\n status: string;\n isActive: boolean;\n id: string;\n host: HTMLElement;\n}\n\n@Component({\n tag: 'q2-stepper-pane',\n shadow: true,\n styleUrl: 'styles.scss',\n})\nexport class Q2StepperPane implements ComponentInterface {\n @Prop({ reflect: true }) label: string;\n @Prop({ reflect: true }) description: string;\n /**\n * Used by q2-stepper and q2-stepper-vertical to determine which pane is active\n * @private\n */\n @Prop({ reflect: true }) isActive: boolean;\n @Prop({ reflect: true }) showWithChildren: boolean;\n @Prop({ reflect: true }) status: 'complete' | 'error' | 'locked';\n\n @State() isChildActive: boolean = false;\n\n @Element() hostElement: HTMLElement;\n\n /**\n * Emitted when the status of the pane changes.\n */\n @Event() statusChange: EventEmitter<IStepperPaneEvent>;\n\n /**\n * Emitted when the active state of the pane changes.\n */\n @Event() activeChange: EventEmitter<IStepperPaneEvent>;\n\n /**\n * Emitted when the content of the pane changes.\n * @private\n */\n @Event({ bubbles: true }) contentChange: EventEmitter<undefined>;\n\n mutationObserver: MutationObserver;\n\n /// LifeCycle Hooks ///\n connectedCallback() {\n if (!this.hostElement.id) this.hostElement.id = `step-${createGuid()}`;\n }\n\n componentWillLoad() {\n this.checkForActiveChildren();\n }\n\n componentDidLoad() {\n const observer = new MutationObserver(() => {\n this.contentChange.emit();\n });\n observer.observe(this.hostElement, { childList: true, subtree: true, characterData: true });\n this.mutationObserver = observer;\n }\n\n disconnectedCallback() {\n this.mutationObserver.disconnect();\n this.mutationObserver = null;\n }\n\n /// Watchers and Listeners ///\n @Watch('label')\n @Watch('description')\n labelOrDescriptionChanged() {\n this.contentChange.emit();\n }\n\n @Watch('status')\n statusChanged(status) {\n this.statusChange.emit({\n status,\n isActive: !!this.isActive,\n id: this.hostElement.id,\n host: this.hostElement,\n });\n }\n\n @Watch('isActive')\n isActiveChanged(isActive) {\n this.activeChange.emit({\n status: this.status || '',\n isActive,\n id: this.hostElement.id,\n host: this.hostElement,\n });\n }\n\n @Watch('showWithChildren')\n @Listen('activeChange')\n checkForActiveChildren() {\n if (!this.showWithChildren) return;\n nextPaint(() => {\n setTimeout(() => {\n this.isChildActive = !!this.hostElement.querySelector<HTMLQ2StepperPaneElement>(\n \"[slot='children'] > q2-stepper-pane[is-active]\"\n );\n });\n });\n }\n\n /// DOM ///\n render() {\n const { label, isActive } = this;\n return (\n <Fragment>\n <div\n role=\"tabpanel\"\n aria-label={label && loc(label)}\n tabindex=\"0\"\n hidden={!isActive && !(this.isChildActive && this.showWithChildren)}\n >\n <slot />\n </div>\n <div hidden>\n <slot\n name=\"label\"\n onSlotchange={() => this.contentChange.emit()}\n ></slot>\n <slot\n name=\"description\"\n onSlotchange={() => this.contentChange.emit()}\n ></slot>\n </div>\n <slot name=\"children\"></slot>\n </Fragment>\n );\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import { h, Fragment, } from '@stencil/core';
2
2
  import { loc, overrideFocus, isEventFromElement, createGuid } from 'src/utils';
3
- export class Q2AdvancedStepper {
3
+ export class Q2StepperVertical {
4
4
  constructor() {
5
5
  this.scheduledAfterRender = [];
6
6
  this.determinePaneChanges = (mutations) => {
@@ -314,13 +314,20 @@ export class Q2AdvancedStepper {
314
314
  "cancelable": true,
315
315
  "composed": true,
316
316
  "docs": {
317
- "tags": [],
318
- "text": ""
317
+ "tags": [{
318
+ "name": "legacyEvent",
319
+ "text": undefined
320
+ }],
321
+ "text": "Emitted when the selected step changes."
319
322
  },
320
323
  "complexType": {
321
- "original": "any",
322
- "resolved": "any",
323
- "references": {}
324
+ "original": "{\n selectedStep: HTMLQ2StepperPaneElement;\n selectedStepId: string;\n currentStepId: string;\n }",
325
+ "resolved": "{ selectedStep: HTMLQ2StepperPaneElement; selectedStepId: string; currentStepId: string; }",
326
+ "references": {
327
+ "HTMLQ2StepperPaneElement": {
328
+ "location": "global"
329
+ }
330
+ }
324
331
  }
325
332
  }];
326
333
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-stepper-vertical/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Prop,\n h,\n Element,\n ComponentInterface,\n State,\n Watch,\n Listen,\n Event,\n EventEmitter,\n Fragment,\n} from '@stencil/core';\nimport { loc, overrideFocus, isEventFromElement, createGuid } from 'src/utils';\n\ninterface IBaseStructuredPane {\n id: string;\n label: string;\n description: string;\n isActive: boolean;\n status: string;\n}\n\ninterface IStructuredPane extends IBaseStructuredPane {\n children: IBaseStructuredPane[];\n}\n\n@Component({\n tag: 'q2-stepper-vertical',\n shadow: true,\n styleUrl: 'styles.scss',\n})\nexport class Q2AdvancedStepper implements ComponentInterface {\n @Prop({ reflect: true, mutable: true }) currentStepId: string;\n\n @Element() hostElement: HTMLElement;\n\n @Event() change: EventEmitter;\n @State() structuredPanes: IStructuredPane[] = [];\n mutationObserver: MutationObserver;\n expandedStepChildrenList: HTMLUListElement;\n scheduledAfterRender: (() => void)[] = [];\n\n /// LifeCycle Hooks ///\n componentWillLoad() {\n this.setDefaultPane();\n this.buildPaneList();\n const observer = new MutationObserver(this.determinePaneChanges);\n const observerOptions = {\n childList: true,\n };\n observer.observe(this.hostElement, observerOptions);\n this.allRootPanes.forEach(pane => {\n const childrenSlot = pane.querySelector('[slot=children]');\n if (childrenSlot) observer.observe(childrenSlot, observerOptions);\n });\n this.mutationObserver = observer;\n }\n\n componentDidLoad() {\n overrideFocus(this.hostElement);\n setTimeout(() => this.showStep(this.currentStepId), 0);\n }\n\n componentWillUpdate() {\n this.expandedStepChildrenList = null;\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n\n this.openCurrentStepChildren();\n }\n\n disconnectedCallback() {\n this.mutationObserver.disconnect();\n this.mutationObserver = null;\n }\n\n /// Getters ///\n get allRootPanes() {\n return Array.from(this.hostElement.querySelectorAll<HTMLQ2StepperPaneElement>(':scope > q2-stepper-pane'));\n }\n\n get allPanes() {\n return Array.from(this.hostElement.querySelectorAll<HTMLQ2StepperPaneElement>('q2-stepper-pane'));\n }\n\n /// Helpers ///\n setDefaultPane() {\n if (this.currentStepId) return;\n const firstEnabledStep = this.hostElement.querySelector('q2-stepper-pane');\n if (!firstEnabledStep) return;\n if (!firstEnabledStep.id) firstEnabledStep.id = `step-${createGuid()}`;\n this.currentStepId = firstEnabledStep.id;\n }\n\n determinePaneChanges = (mutations: MutationRecord[]) => {\n mutations.forEach(mutation => {\n if (mutation.type !== 'childList') return;\n if (!mutation.addedNodes.length && !mutation.removedNodes.length) return;\n if (\n mutation.addedNodes[0]?.nodeType !== Node.ELEMENT_NODE &&\n mutation.removedNodes[0]?.nodeType !== Node.ELEMENT_NODE\n )\n return;\n this.buildPaneList();\n });\n };\n\n getStepId(currentStepId: string, goTo: string) {\n const allEnabledStepBtns = Array.from(\n this.hostElement.shadowRoot.querySelectorAll<HTMLQ2StepperPaneElement>(\n 'ul:not([aria-hidden=\"true\"]) > li > button:not([aria-disabled=\"true\"])'\n )\n );\n const currentStepIndex = allEnabledStepBtns.findIndex(\n btn => btn.getAttribute('aria-controls') === currentStepId\n );\n\n let nextStepIndex;\n switch (goTo) {\n case 'prev':\n nextStepIndex = Math.max(currentStepIndex - 1, 0);\n break;\n\n case 'next':\n nextStepIndex = Math.min(currentStepIndex + 1, allEnabledStepBtns.length - 1);\n break;\n\n case 'first':\n nextStepIndex = 0;\n break;\n\n case 'last':\n nextStepIndex = allEnabledStepBtns.length - 1;\n break;\n }\n\n return allEnabledStepBtns[nextStepIndex].getAttribute('aria-controls');\n }\n\n showStep(stepId: string) {\n this.scheduledAfterRender.push(this.resizeIframe);\n this.showStepPane(stepId);\n this.focusStepBtn(stepId);\n }\n\n extractDetails(pane: HTMLQ2StepperPaneElement) {\n const { label, description, status } = pane;\n if (!pane.id) pane.id = `step-${createGuid()}`;\n return {\n id: pane.id,\n label,\n description,\n status,\n };\n }\n\n buildPaneList = () => {\n const { allRootPanes } = this;\n if (!allRootPanes.length) return;\n\n this.structuredPanes = Array.from(allRootPanes).reduce((accum, pane) => {\n const children = Array.from(pane.querySelector('[slot=children]')?.children ?? [])\n .filter(({ tagName }) => tagName === 'Q2-STEPPER-PANE')\n .map(this.extractDetails);\n\n accum.push({ ...this.extractDetails(pane), children });\n return accum;\n }, []);\n };\n\n resizeIframe() {\n return window?.TectonElements?.resizeIframe?.();\n }\n\n openCurrentStepChildren() {\n const { expandedStepChildrenList } = this;\n const allSpacers = this.hostElement.shadowRoot.querySelectorAll<HTMLDivElement>('.spacer');\n allSpacers.forEach(spacer => {\n if (expandedStepChildrenList && spacer.contains(expandedStepChildrenList)) {\n spacer.style.height = `${expandedStepChildrenList.clientHeight}px`;\n if (spacer.classList.contains('is-open')) return;\n spacer.classList.add('is-opening');\n spacer.addEventListener(\n 'transitionend',\n () => {\n spacer.classList.remove('is-opening');\n spacer.classList.add('is-open');\n this.resizeIframe();\n },\n { once: true }\n );\n } else {\n spacer.removeAttribute('style');\n spacer.classList.remove('is-open', 'is-opening');\n }\n });\n }\n\n showStepPane(stepId: string) {\n this.allPanes.forEach(pane => {\n if (pane.isActive || pane.id === stepId) {\n pane.isActive = stepId === pane.id;\n }\n });\n }\n\n focusStepBtn(stepId: string, forceFocus?: boolean) {\n const stepBtn = this.hostElement.shadowRoot.querySelector<HTMLElement>(`button[aria-controls=\"${stepId}\"]`);\n const isComponentActive = document.activeElement === this.hostElement;\n if (!stepBtn) return;\n if (isComponentActive || forceFocus) {\n stepBtn.focus();\n }\n }\n\n /// Listeners ///\n @Listen('change')\n defaultChangeHandler(event: CustomEvent) {\n const { hostElement } = this;\n if (event.target === hostElement && !hostElement.getAttribute('onchange') && !!event.detail) {\n this.currentStepId = event.detail.selectedStepId;\n }\n }\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n this.focusStepBtn(this.currentStepId, true);\n }\n\n @Listen('statusChange')\n statusChangeHandler() {\n this.buildPaneList();\n }\n\n /// Watchers ///\n @Watch('currentStepId')\n currentStepChanged(stepId: string) {\n this.showStep(stepId);\n }\n\n /// Event Handlers ///\n onStepClick = (event, stepId: string) => {\n event.stopPropagation();\n const { currentStepId } = this;\n if (stepId === currentStepId) return;\n const selectedStep = this.allPanes.find(pane => pane.id === stepId);\n\n this.change.emit({\n selectedStep,\n selectedStepId: stepId,\n currentStepId,\n });\n };\n\n onStepKeyDown = (event: KeyboardEvent, stepId: string) => {\n const { key } = event;\n\n let selectedStepId;\n switch (key) {\n case 'ArrowUp':\n case 'ArrowLeft':\n event.preventDefault();\n selectedStepId = this.getStepId(stepId, 'prev');\n break;\n\n case 'ArrowDown':\n case 'ArrowRight':\n event.preventDefault();\n selectedStepId = this.getStepId(stepId, 'next');\n break;\n\n case 'Home':\n event.preventDefault();\n selectedStepId = this.getStepId(stepId, 'first');\n break;\n\n case 'End':\n event.preventDefault();\n selectedStepId = this.getStepId(stepId, 'last');\n break;\n }\n\n if (!selectedStepId) return;\n this.focusStepBtn(selectedStepId, true);\n };\n\n /// DOM ///\n renderStepBtn(pane: IStructuredPane, index: number) {\n const { currentStepId, structuredPanes } = this;\n const isLastStep = index === structuredPanes.length - 1;\n const { id, label, description, status } = pane;\n const stepNumber = index + 1;\n const isCurrentStep = id === currentStepId;\n const labelId = label && `label-${id}`;\n const isLocked = status === 'locked';\n const stepLabel = label && loc(label);\n const descriptionId = label && description && `description-${id}`;\n const btnLabel =\n !label && loc('tecton.element.advancedStepper.number', [`${stepNumber}`, `${structuredPanes.length}`]);\n\n let statusIcon;\n if (status === 'complete') statusIcon = 'success-filled';\n else if (status === 'error') statusIcon = 'warning-filled';\n\n const stepClasses = ['step-btn'];\n if (status) stepClasses.push(`status-${status}`);\n\n const childIds = pane.children.map(child => child.id);\n const isExpanded = isCurrentStep || childIds.includes(currentStepId);\n\n return (\n <li role=\"presentation\">\n <button\n class={stepClasses.join(' ')}\n type=\"button\"\n aria-labelledby={labelId}\n aria-describedBy={descriptionId}\n aria-label={btnLabel}\n aria-selected={`${isCurrentStep}`}\n aria-expanded={!!pane.children.length ? `${isExpanded}` : null}\n aria-controls={id}\n aria-disabled={isLocked ? 'true' : null}\n role=\"tab\"\n tabIndex={isCurrentStep ? 0 : -1}\n onKeyDown={ev => !isLocked && this.onStepKeyDown(ev, id)}\n onClick={ev => !isLocked && this.onStepClick(ev, id)}\n >\n {statusIcon ? (\n <div class=\"step-icon\">\n <q2-icon type={statusIcon}></q2-icon>\n </div>\n ) : (\n <div class=\"step-bubble\">{stepNumber}</div>\n )}\n\n {label && (\n <div>\n <div\n class=\"step-label\"\n id={labelId}\n >\n {stepLabel}\n </div>\n {description && (\n <div\n class=\"step-description\"\n id={descriptionId}\n >\n {loc(description)}\n </div>\n )}\n </div>\n )}\n </button>\n {this.renderSpacer(pane, stepLabel, isExpanded, isLastStep)}\n </li>\n );\n }\n\n renderSpacer(pane: IStructuredPane, stepLabel: string, isExpanded: boolean, isLastStep: boolean) {\n const shouldRender = (isLastStep && !!pane.children.length) || !isLastStep;\n const spacerClasses = ['spacer'];\n if (!isLastStep) spacerClasses.push('has-sibling');\n return (\n shouldRender && (\n <div class={spacerClasses.join(' ')}>\n {!!pane.children.length && (\n <ul\n ref={el => isExpanded && (this.expandedStepChildrenList = el)}\n aria-hidden={`${!isExpanded}`}\n >\n {pane.children.map((child, index, children) =>\n this.renderChildStepBtn(child, index, children.length, stepLabel)\n )}\n </ul>\n )}\n </div>\n )\n );\n }\n\n renderChildStepBtn(pane: IBaseStructuredPane, index: number, children: number, parentLabel: string) {\n const { currentStepId } = this;\n const { id, label, status } = pane;\n const stepNumber = index + 1;\n const labelId = label && `label-${id}`;\n const isCurrentStep = id === currentStepId;\n const isLocked = status === 'locked';\n const btnLabel =\n !label && loc('tecton.element.advancedStepper.childNumber', [`${stepNumber}`, `${children}`, parentLabel]);\n\n let statusIcon;\n if (status === 'error') statusIcon = 'warning-filled';\n\n const stepClasses = ['step-child-btn'];\n if (status) stepClasses.push(`status-${status}`);\n\n return (\n <li role=\"presentation\">\n <button\n class={stepClasses.join(' ')}\n type=\"button\"\n aria-labelledby={labelId}\n aria-label={btnLabel}\n aria-selected={`${isCurrentStep}`}\n aria-controls={id}\n aria-disabled={isLocked ? 'true' : null}\n role=\"tab\"\n tabIndex={isCurrentStep ? 0 : -1}\n onKeyDown={ev => !isLocked && this.onStepKeyDown(ev, id)}\n onClick={ev => !isLocked && this.onStepClick(ev, id)}\n >\n {statusIcon && (\n <div class=\"step-child-icon\">\n <q2-icon type={statusIcon}></q2-icon>\n </div>\n )}\n {label && (\n <div\n class=\"step-child-label\"\n id={labelId}\n >\n {loc(label)}\n </div>\n )}\n </button>\n </li>\n );\n }\n\n render() {\n return (\n <Fragment>\n <ul role=\"tablist\">{this.structuredPanes.map((pane, index) => this.renderStepBtn(pane, index))}</ul>\n <div>\n <slot />\n </div>\n </Fragment>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-stepper-vertical/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EACT,IAAI,EACJ,CAAC,EACD,OAAO,EAEP,KAAK,EACL,KAAK,EACL,MAAM,EACN,KAAK,EAEL,QAAQ,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAmB/E,MAAM,OAAO,iBAAiB;;IAiB1B,yBAAoB,GAAmB,EAAE,CAAC;IAyD1C,yBAAoB,GAAG,CAAC,SAA2B,EAAE,EAAE;MACnD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;;QACzB,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW;UAAE,OAAO;QAC1C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM;UAAE,OAAO;QACzE,IACI,CAAA,MAAA,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,0CAAE,QAAQ,MAAK,IAAI,CAAC,YAAY;UACtD,CAAA,MAAA,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,0CAAE,QAAQ,MAAK,IAAI,CAAC,YAAY;UAExD,OAAO;QACX,IAAI,CAAC,aAAa,EAAE,CAAC;MACzB,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IAmDF,kBAAa,GAAG,GAAG,EAAE;MACjB,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;MAC9B,IAAI,CAAC,YAAY,CAAC,MAAM;QAAE,OAAO;MAEjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;;QACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,MAAA,MAAA,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,0CAAE,QAAQ,mCAAI,EAAE,CAAC;WAC7E,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,KAAK,iBAAiB,CAAC;WACtD,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAE9B,KAAK,CAAC,IAAI,iCAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAE,QAAQ,IAAG,CAAC;QACvD,OAAO,KAAK,CAAC;MACjB,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC;IAyEF,sBAAsB;IACtB,gBAAW,GAAG,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;MACpC,KAAK,CAAC,eAAe,EAAE,CAAC;MACxB,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;MAC/B,IAAI,MAAM,KAAK,aAAa;QAAE,OAAO;MACrC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;MAEpE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACb,YAAY;QACZ,cAAc,EAAE,MAAM;QACtB,aAAa;OAChB,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,kBAAa,GAAG,CAAC,KAAoB,EAAE,MAAc,EAAE,EAAE;MACrD,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;MAEtB,IAAI,cAAc,CAAC;MACnB,QAAQ,GAAG,EAAE;QACT,KAAK,SAAS,CAAC;QACf,KAAK,WAAW;UACZ,KAAK,CAAC,cAAc,EAAE,CAAC;UACvB,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;UAChD,MAAM;QAEV,KAAK,WAAW,CAAC;QACjB,KAAK,YAAY;UACb,KAAK,CAAC,cAAc,EAAE,CAAC;UACvB,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;UAChD,MAAM;QAEV,KAAK,MAAM;UACP,KAAK,CAAC,cAAc,EAAE,CAAC;UACvB,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;UACjD,MAAM;QAEV,KAAK,KAAK;UACN,KAAK,CAAC,cAAc,EAAE,CAAC;UACvB,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;UAChD,MAAM;OACb;MAED,IAAI,CAAC,cAAc;QAAE,OAAO;MAC5B,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC,CAAC;;2BA3P4C,EAAE;;EAKhD,uBAAuB;EACvB,iBAAiB;IACb,IAAI,CAAC,cAAc,EAAE,CAAC;IACtB,IAAI,CAAC,aAAa,EAAE,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACjE,MAAM,eAAe,GAAG;MACpB,SAAS,EAAE,IAAI;KAClB,CAAC;IACF,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IACpD,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;MAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;MAC3D,IAAI,YAAY;QAAE,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;EACrC,CAAC;EAED,gBAAgB;IACZ,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;EAC3D,CAAC;EAED,mBAAmB;IACf,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;EACzC,CAAC;EAED,kBAAkB;IACd,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;IAE/B,IAAI,CAAC,uBAAuB,EAAE,CAAC;EACnC,CAAC;EAED,oBAAoB;IAChB,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;EACjC,CAAC;EAED,eAAe;EACf,IAAI,YAAY;IACZ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAA2B,0BAA0B,CAAC,CAAC,CAAC;EAC/G,CAAC;EAED,IAAI,QAAQ;IACR,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAA2B,iBAAiB,CAAC,CAAC,CAAC;EACtG,CAAC;EAED,eAAe;EACf,cAAc;IACV,IAAI,IAAI,CAAC,aAAa;MAAE,OAAO;IAC/B,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC3E,IAAI,CAAC,gBAAgB;MAAE,OAAO;IAC9B,IAAI,CAAC,gBAAgB,CAAC,EAAE;MAAE,gBAAgB,CAAC,EAAE,GAAG,QAAQ,UAAU,EAAE,EAAE,CAAC;IACvE,IAAI,CAAC,aAAa,GAAG,gBAAgB,CAAC,EAAE,CAAC;EAC7C,CAAC;EAeD,SAAS,CAAC,aAAqB,EAAE,IAAY;IACzC,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CACjC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,gBAAgB,CACxC,wEAAwE,CAC3E,CACJ,CAAC;IACF,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,SAAS,CACjD,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,aAAa,CAC7D,CAAC;IAEF,IAAI,aAAa,CAAC;IAClB,QAAQ,IAAI,EAAE;MACV,KAAK,MAAM;QACP,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM;MAEV,KAAK,MAAM;QACP,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,EAAE,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9E,MAAM;MAEV,KAAK,OAAO;QACR,aAAa,GAAG,CAAC,CAAC;QAClB,MAAM;MAEV,KAAK,MAAM;QACP,aAAa,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;QAC9C,MAAM;KACb;IAED,OAAO,kBAAkB,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;EAC3E,CAAC;EAED,QAAQ,CAAC,MAAc;IACnB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAC1B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;EAC9B,CAAC;EAED,cAAc,CAAC,IAA8B;IACzC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5C,IAAI,CAAC,IAAI,CAAC,EAAE;MAAE,IAAI,CAAC,EAAE,GAAG,QAAQ,UAAU,EAAE,EAAE,CAAC;IAC/C,OAAO;MACH,EAAE,EAAE,IAAI,CAAC,EAAE;MACX,KAAK;MACL,WAAW;MACX,MAAM;KACT,CAAC;EACN,CAAC;EAgBD,YAAY;;IACR,OAAO,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,cAAc,0CAAE,YAAY,kDAAI,CAAC;EACpD,CAAC;EAED,uBAAuB;IACnB,MAAM,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,gBAAgB,CAAiB,SAAS,CAAC,CAAC;IAC3F,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;MACxB,IAAI,wBAAwB,IAAI,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE;QACvE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,wBAAwB,CAAC,YAAY,IAAI,CAAC;QACnE,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;UAAE,OAAO;QACjD,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,CAAC,gBAAgB,CACnB,eAAe,EACf,GAAG,EAAE;UACD,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;UACtC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;UAChC,IAAI,CAAC,YAAY,EAAE,CAAC;QACxB,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACjB,CAAC;OACL;WAAM;QACH,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAChC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;OACpD;IACL,CAAC,CAAC,CAAC;EACP,CAAC;EAED,YAAY,CAAC,MAAc;IACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;MACzB,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE;QACrC,IAAI,CAAC,QAAQ,GAAG,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC;OACtC;IACL,CAAC,CAAC,CAAC;EACP,CAAC;EAED,YAAY,CAAC,MAAc,EAAE,UAAoB;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAc,yBAAyB,MAAM,IAAI,CAAC,CAAC;IAC5G,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,KAAK,IAAI,CAAC,WAAW,CAAC;IACtE,IAAI,CAAC,OAAO;MAAE,OAAO;IACrB,IAAI,iBAAiB,IAAI,UAAU,EAAE;MACjC,OAAO,CAAC,KAAK,EAAE,CAAC;KACnB;EACL,CAAC;EAED,iBAAiB;EAEjB,oBAAoB,CAAC,KAAkB;IACnC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE;MACzF,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC;KACpD;EACL,CAAC;EAGD,aAAa,CAAC,KAAiB;IAC3B,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC;MAAE,OAAO;IACzD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;EAChD,CAAC;EAGD,mBAAmB;IACf,IAAI,CAAC,aAAa,EAAE,CAAC;EACzB,CAAC;EAED,gBAAgB;EAEhB,kBAAkB,CAAC,MAAc;IAC7B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;EAC1B,CAAC;EAgDD,WAAW;EACX,aAAa,CAAC,IAAqB,EAAE,KAAa;IAC9C,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;IAChD,MAAM,UAAU,GAAG,KAAK,KAAK,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IACxD,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAChD,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;IAC7B,MAAM,aAAa,GAAG,EAAE,KAAK,aAAa,CAAC;IAC3C,MAAM,OAAO,GAAG,KAAK,IAAI,SAAS,EAAE,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,KAAK,QAAQ,CAAC;IACrC,MAAM,SAAS,GAAG,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,KAAK,IAAI,WAAW,IAAI,eAAe,EAAE,EAAE,CAAC;IAClE,MAAM,QAAQ,GACV,CAAC,KAAK,IAAI,GAAG,CAAC,uCAAuC,EAAE,CAAC,GAAG,UAAU,EAAE,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAE3G,IAAI,UAAU,CAAC;IACf,IAAI,MAAM,KAAK,UAAU;MAAE,UAAU,GAAG,gBAAgB,CAAC;SACpD,IAAI,MAAM,KAAK,OAAO;MAAE,UAAU,GAAG,gBAAgB,CAAC;IAE3D,MAAM,WAAW,GAAG,CAAC,UAAU,CAAC,CAAC;IACjC,IAAI,MAAM;MAAE,WAAW,CAAC,IAAI,CAAC,UAAU,MAAM,EAAE,CAAC,CAAC;IAEjD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,aAAa,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAErE,OAAO,CACH,UAAI,IAAI,EAAC,cAAc;MACnB,cACI,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAC5B,IAAI,EAAC,QAAQ,qBACI,OAAO,sBACN,aAAa,gBACnB,QAAQ,mBACL,GAAG,aAAa,EAAE,mBAClB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,mBAC/C,EAAE,mBACF,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EACvC,IAAI,EAAC,KAAK,EACV,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAChC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,EACxD,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC;QAEnD,UAAU,CAAC,CAAC,CAAC,CACV,WAAK,KAAK,EAAC,WAAW;UAClB,eAAS,IAAI,EAAE,UAAU,GAAY,CACnC,CACT,CAAC,CAAC,CAAC,CACA,WAAK,KAAK,EAAC,aAAa,IAAE,UAAU,CAAO,CAC9C;QAEA,KAAK,IAAI,CACN;UACI,WACI,KAAK,EAAC,YAAY,EAClB,EAAE,EAAE,OAAO,IAEV,SAAS,CACR;UACL,WAAW,IAAI,CACZ,WACI,KAAK,EAAC,kBAAkB,EACxB,EAAE,EAAE,aAAa,IAEhB,GAAG,CAAC,WAAW,CAAC,CACf,CACT,CACC,CACT,CACI;MACR,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAC1D,CACR,CAAC;EACN,CAAC;EAED,YAAY,CAAC,IAAqB,EAAE,SAAiB,EAAE,UAAmB,EAAE,UAAmB;IAC3F,MAAM,YAAY,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;IAC3E,MAAM,aAAa,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,CAAC,UAAU;MAAE,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACnD,OAAO,CACH,YAAY,IAAI,CACZ,WAAK,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAC9B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CACvB,UACI,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC,iBAChD,GAAG,CAAC,UAAU,EAAE,IAE5B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAC1C,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CACpE,CACA,CACR,CACC,CACT,CACJ,CAAC;EACN,CAAC;EAED,kBAAkB,CAAC,IAAyB,EAAE,KAAa,EAAE,QAAgB,EAAE,WAAmB;IAC9F,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC/B,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACnC,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAG,KAAK,IAAI,SAAS,EAAE,EAAE,CAAC;IACvC,MAAM,aAAa,GAAG,EAAE,KAAK,aAAa,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAM,KAAK,QAAQ,CAAC;IACrC,MAAM,QAAQ,GACV,CAAC,KAAK,IAAI,GAAG,CAAC,4CAA4C,EAAE,CAAC,GAAG,UAAU,EAAE,EAAE,GAAG,QAAQ,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;IAE/G,IAAI,UAAU,CAAC;IACf,IAAI,MAAM,KAAK,OAAO;MAAE,UAAU,GAAG,gBAAgB,CAAC;IAEtD,MAAM,WAAW,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACvC,IAAI,MAAM;MAAE,WAAW,CAAC,IAAI,CAAC,UAAU,MAAM,EAAE,CAAC,CAAC;IAEjD,OAAO,CACH,UAAI,IAAI,EAAC,cAAc;MACnB,cACI,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAC5B,IAAI,EAAC,QAAQ,qBACI,OAAO,gBACZ,QAAQ,mBACL,GAAG,aAAa,EAAE,mBAClB,EAAE,mBACF,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EACvC,IAAI,EAAC,KAAK,EACV,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAChC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,EACxD,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC;QAEnD,UAAU,IAAI,CACX,WAAK,KAAK,EAAC,iBAAiB;UACxB,eAAS,IAAI,EAAE,UAAU,GAAY,CACnC,CACT;QACA,KAAK,IAAI,CACN,WACI,KAAK,EAAC,kBAAkB,EACxB,EAAE,EAAE,OAAO,IAEV,GAAG,CAAC,KAAK,CAAC,CACT,CACT,CACI,CACR,CACR,CAAC;EACN,CAAC;EAED,MAAM;IACF,OAAO,CACH,EAAC,QAAQ;MACL,UAAI,IAAI,EAAC,SAAS,IAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAM;MACpG;QACI,eAAQ,CACN,CACC,CACd,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import {\n Component,\n Prop,\n h,\n Element,\n ComponentInterface,\n State,\n Watch,\n Listen,\n Event,\n EventEmitter,\n Fragment,\n} from '@stencil/core';\nimport { loc, overrideFocus, isEventFromElement, createGuid } from 'src/utils';\n\ninterface IBaseStructuredPane {\n id: string;\n label: string;\n description: string;\n isActive: boolean;\n status: string;\n}\n\ninterface IStructuredPane extends IBaseStructuredPane {\n children: IBaseStructuredPane[];\n}\n\n@Component({\n tag: 'q2-stepper-vertical',\n shadow: true,\n styleUrl: 'styles.scss',\n})\nexport class Q2StepperVertical implements ComponentInterface {\n @Prop({ reflect: true, mutable: true }) currentStepId: string;\n\n @Element() hostElement: HTMLElement;\n\n /**\n * Emitted when the selected step changes.\n * @legacyEvent\n */\n @Event() change: EventEmitter<{\n selectedStep: HTMLQ2StepperPaneElement;\n selectedStepId: string;\n currentStepId: string;\n }>;\n @State() structuredPanes: IStructuredPane[] = [];\n mutationObserver: MutationObserver;\n expandedStepChildrenList: HTMLUListElement;\n scheduledAfterRender: (() => void)[] = [];\n\n /// LifeCycle Hooks ///\n componentWillLoad() {\n this.setDefaultPane();\n this.buildPaneList();\n const observer = new MutationObserver(this.determinePaneChanges);\n const observerOptions = {\n childList: true,\n };\n observer.observe(this.hostElement, observerOptions);\n this.allRootPanes.forEach(pane => {\n const childrenSlot = pane.querySelector('[slot=children]');\n if (childrenSlot) observer.observe(childrenSlot, observerOptions);\n });\n this.mutationObserver = observer;\n }\n\n componentDidLoad() {\n overrideFocus(this.hostElement);\n setTimeout(() => this.showStep(this.currentStepId), 0);\n }\n\n componentWillUpdate() {\n this.expandedStepChildrenList = null;\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n\n this.openCurrentStepChildren();\n }\n\n disconnectedCallback() {\n this.mutationObserver.disconnect();\n this.mutationObserver = null;\n }\n\n /// Getters ///\n get allRootPanes() {\n return Array.from(this.hostElement.querySelectorAll<HTMLQ2StepperPaneElement>(':scope > q2-stepper-pane'));\n }\n\n get allPanes() {\n return Array.from(this.hostElement.querySelectorAll<HTMLQ2StepperPaneElement>('q2-stepper-pane'));\n }\n\n /// Helpers ///\n setDefaultPane() {\n if (this.currentStepId) return;\n const firstEnabledStep = this.hostElement.querySelector('q2-stepper-pane');\n if (!firstEnabledStep) return;\n if (!firstEnabledStep.id) firstEnabledStep.id = `step-${createGuid()}`;\n this.currentStepId = firstEnabledStep.id;\n }\n\n determinePaneChanges = (mutations: MutationRecord[]) => {\n mutations.forEach(mutation => {\n if (mutation.type !== 'childList') return;\n if (!mutation.addedNodes.length && !mutation.removedNodes.length) return;\n if (\n mutation.addedNodes[0]?.nodeType !== Node.ELEMENT_NODE &&\n mutation.removedNodes[0]?.nodeType !== Node.ELEMENT_NODE\n )\n return;\n this.buildPaneList();\n });\n };\n\n getStepId(currentStepId: string, goTo: string) {\n const allEnabledStepBtns = Array.from(\n this.hostElement.shadowRoot.querySelectorAll<HTMLQ2StepperPaneElement>(\n 'ul:not([aria-hidden=\"true\"]) > li > button:not([aria-disabled=\"true\"])'\n )\n );\n const currentStepIndex = allEnabledStepBtns.findIndex(\n btn => btn.getAttribute('aria-controls') === currentStepId\n );\n\n let nextStepIndex;\n switch (goTo) {\n case 'prev':\n nextStepIndex = Math.max(currentStepIndex - 1, 0);\n break;\n\n case 'next':\n nextStepIndex = Math.min(currentStepIndex + 1, allEnabledStepBtns.length - 1);\n break;\n\n case 'first':\n nextStepIndex = 0;\n break;\n\n case 'last':\n nextStepIndex = allEnabledStepBtns.length - 1;\n break;\n }\n\n return allEnabledStepBtns[nextStepIndex].getAttribute('aria-controls');\n }\n\n showStep(stepId: string) {\n this.scheduledAfterRender.push(this.resizeIframe);\n this.showStepPane(stepId);\n this.focusStepBtn(stepId);\n }\n\n extractDetails(pane: HTMLQ2StepperPaneElement) {\n const { label, description, status } = pane;\n if (!pane.id) pane.id = `step-${createGuid()}`;\n return {\n id: pane.id,\n label,\n description,\n status,\n };\n }\n\n buildPaneList = () => {\n const { allRootPanes } = this;\n if (!allRootPanes.length) return;\n\n this.structuredPanes = Array.from(allRootPanes).reduce((accum, pane) => {\n const children = Array.from(pane.querySelector('[slot=children]')?.children ?? [])\n .filter(({ tagName }) => tagName === 'Q2-STEPPER-PANE')\n .map(this.extractDetails);\n\n accum.push({ ...this.extractDetails(pane), children });\n return accum;\n }, []);\n };\n\n resizeIframe() {\n return window?.TectonElements?.resizeIframe?.();\n }\n\n openCurrentStepChildren() {\n const { expandedStepChildrenList } = this;\n const allSpacers = this.hostElement.shadowRoot.querySelectorAll<HTMLDivElement>('.spacer');\n allSpacers.forEach(spacer => {\n if (expandedStepChildrenList && spacer.contains(expandedStepChildrenList)) {\n spacer.style.height = `${expandedStepChildrenList.clientHeight}px`;\n if (spacer.classList.contains('is-open')) return;\n spacer.classList.add('is-opening');\n spacer.addEventListener(\n 'transitionend',\n () => {\n spacer.classList.remove('is-opening');\n spacer.classList.add('is-open');\n this.resizeIframe();\n },\n { once: true }\n );\n } else {\n spacer.removeAttribute('style');\n spacer.classList.remove('is-open', 'is-opening');\n }\n });\n }\n\n showStepPane(stepId: string) {\n this.allPanes.forEach(pane => {\n if (pane.isActive || pane.id === stepId) {\n pane.isActive = stepId === pane.id;\n }\n });\n }\n\n focusStepBtn(stepId: string, forceFocus?: boolean) {\n const stepBtn = this.hostElement.shadowRoot.querySelector<HTMLElement>(`button[aria-controls=\"${stepId}\"]`);\n const isComponentActive = document.activeElement === this.hostElement;\n if (!stepBtn) return;\n if (isComponentActive || forceFocus) {\n stepBtn.focus();\n }\n }\n\n /// Listeners ///\n @Listen('change')\n defaultChangeHandler(event: CustomEvent) {\n const { hostElement } = this;\n if (event.target === hostElement && !hostElement.getAttribute('onchange') && !!event.detail) {\n this.currentStepId = event.detail.selectedStepId;\n }\n }\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n this.focusStepBtn(this.currentStepId, true);\n }\n\n @Listen('statusChange')\n statusChangeHandler() {\n this.buildPaneList();\n }\n\n /// Watchers ///\n @Watch('currentStepId')\n currentStepChanged(stepId: string) {\n this.showStep(stepId);\n }\n\n /// Event Handlers ///\n onStepClick = (event, stepId: string) => {\n event.stopPropagation();\n const { currentStepId } = this;\n if (stepId === currentStepId) return;\n const selectedStep = this.allPanes.find(pane => pane.id === stepId);\n\n this.change.emit({\n selectedStep,\n selectedStepId: stepId,\n currentStepId,\n });\n };\n\n onStepKeyDown = (event: KeyboardEvent, stepId: string) => {\n const { key } = event;\n\n let selectedStepId;\n switch (key) {\n case 'ArrowUp':\n case 'ArrowLeft':\n event.preventDefault();\n selectedStepId = this.getStepId(stepId, 'prev');\n break;\n\n case 'ArrowDown':\n case 'ArrowRight':\n event.preventDefault();\n selectedStepId = this.getStepId(stepId, 'next');\n break;\n\n case 'Home':\n event.preventDefault();\n selectedStepId = this.getStepId(stepId, 'first');\n break;\n\n case 'End':\n event.preventDefault();\n selectedStepId = this.getStepId(stepId, 'last');\n break;\n }\n\n if (!selectedStepId) return;\n this.focusStepBtn(selectedStepId, true);\n };\n\n /// DOM ///\n renderStepBtn(pane: IStructuredPane, index: number) {\n const { currentStepId, structuredPanes } = this;\n const isLastStep = index === structuredPanes.length - 1;\n const { id, label, description, status } = pane;\n const stepNumber = index + 1;\n const isCurrentStep = id === currentStepId;\n const labelId = label && `label-${id}`;\n const isLocked = status === 'locked';\n const stepLabel = label && loc(label);\n const descriptionId = label && description && `description-${id}`;\n const btnLabel =\n !label && loc('tecton.element.advancedStepper.number', [`${stepNumber}`, `${structuredPanes.length}`]);\n\n let statusIcon;\n if (status === 'complete') statusIcon = 'success-filled';\n else if (status === 'error') statusIcon = 'warning-filled';\n\n const stepClasses = ['step-btn'];\n if (status) stepClasses.push(`status-${status}`);\n\n const childIds = pane.children.map(child => child.id);\n const isExpanded = isCurrentStep || childIds.includes(currentStepId);\n\n return (\n <li role=\"presentation\">\n <button\n class={stepClasses.join(' ')}\n type=\"button\"\n aria-labelledby={labelId}\n aria-describedBy={descriptionId}\n aria-label={btnLabel}\n aria-selected={`${isCurrentStep}`}\n aria-expanded={!!pane.children.length ? `${isExpanded}` : null}\n aria-controls={id}\n aria-disabled={isLocked ? 'true' : null}\n role=\"tab\"\n tabIndex={isCurrentStep ? 0 : -1}\n onKeyDown={ev => !isLocked && this.onStepKeyDown(ev, id)}\n onClick={ev => !isLocked && this.onStepClick(ev, id)}\n >\n {statusIcon ? (\n <div class=\"step-icon\">\n <q2-icon type={statusIcon}></q2-icon>\n </div>\n ) : (\n <div class=\"step-bubble\">{stepNumber}</div>\n )}\n\n {label && (\n <div>\n <div\n class=\"step-label\"\n id={labelId}\n >\n {stepLabel}\n </div>\n {description && (\n <div\n class=\"step-description\"\n id={descriptionId}\n >\n {loc(description)}\n </div>\n )}\n </div>\n )}\n </button>\n {this.renderSpacer(pane, stepLabel, isExpanded, isLastStep)}\n </li>\n );\n }\n\n renderSpacer(pane: IStructuredPane, stepLabel: string, isExpanded: boolean, isLastStep: boolean) {\n const shouldRender = (isLastStep && !!pane.children.length) || !isLastStep;\n const spacerClasses = ['spacer'];\n if (!isLastStep) spacerClasses.push('has-sibling');\n return (\n shouldRender && (\n <div class={spacerClasses.join(' ')}>\n {!!pane.children.length && (\n <ul\n ref={el => isExpanded && (this.expandedStepChildrenList = el)}\n aria-hidden={`${!isExpanded}`}\n >\n {pane.children.map((child, index, children) =>\n this.renderChildStepBtn(child, index, children.length, stepLabel)\n )}\n </ul>\n )}\n </div>\n )\n );\n }\n\n renderChildStepBtn(pane: IBaseStructuredPane, index: number, children: number, parentLabel: string) {\n const { currentStepId } = this;\n const { id, label, status } = pane;\n const stepNumber = index + 1;\n const labelId = label && `label-${id}`;\n const isCurrentStep = id === currentStepId;\n const isLocked = status === 'locked';\n const btnLabel =\n !label && loc('tecton.element.advancedStepper.childNumber', [`${stepNumber}`, `${children}`, parentLabel]);\n\n let statusIcon;\n if (status === 'error') statusIcon = 'warning-filled';\n\n const stepClasses = ['step-child-btn'];\n if (status) stepClasses.push(`status-${status}`);\n\n return (\n <li role=\"presentation\">\n <button\n class={stepClasses.join(' ')}\n type=\"button\"\n aria-labelledby={labelId}\n aria-label={btnLabel}\n aria-selected={`${isCurrentStep}`}\n aria-controls={id}\n aria-disabled={isLocked ? 'true' : null}\n role=\"tab\"\n tabIndex={isCurrentStep ? 0 : -1}\n onKeyDown={ev => !isLocked && this.onStepKeyDown(ev, id)}\n onClick={ev => !isLocked && this.onStepClick(ev, id)}\n >\n {statusIcon && (\n <div class=\"step-child-icon\">\n <q2-icon type={statusIcon}></q2-icon>\n </div>\n )}\n {label && (\n <div\n class=\"step-child-label\"\n id={labelId}\n >\n {loc(label)}\n </div>\n )}\n </button>\n </li>\n );\n }\n\n render() {\n return (\n <Fragment>\n <ul role=\"tablist\">{this.structuredPanes.map((pane, index) => this.renderStepBtn(pane, index))}</ul>\n <div>\n <slot />\n </div>\n </Fragment>\n );\n }\n}\n"]}
@@ -354,12 +354,15 @@ export class Q2TabContainer {
354
354
  "cancelable": true,
355
355
  "composed": true,
356
356
  "docs": {
357
- "tags": [],
358
- "text": ""
357
+ "tags": [{
358
+ "name": "legacyEvent",
359
+ "text": undefined
360
+ }],
361
+ "text": "Emitted when the selected tab changes."
359
362
  },
360
363
  "complexType": {
361
- "original": "any",
362
- "resolved": "any",
364
+ "original": "{ value: string }",
365
+ "resolved": "{ value: string; }",
363
366
  "references": {}
364
367
  }
365
368
  }, {
@@ -369,12 +372,15 @@ export class Q2TabContainer {
369
372
  "cancelable": true,
370
373
  "composed": true,
371
374
  "docs": {
372
- "tags": [],
373
- "text": ""
375
+ "tags": [{
376
+ "name": "private",
377
+ "text": undefined
378
+ }],
379
+ "text": "Emitted when the component has finished rendering."
374
380
  },
375
381
  "complexType": {
376
- "original": "any",
377
- "resolved": "any",
382
+ "original": "undefined",
383
+ "resolved": "undefined",
378
384
  "references": {}
379
385
  }
380
386
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-tab-container/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n ComponentInterface,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Listen,\n Watch,\n h,\n Fragment,\n} from '@stencil/core';\nimport { createGuid, loc, addSmoothScrollPolyfill, overrideFocus, isEventFromElement } from 'src/utils';\nimport { JSX } from '../../components';\nimport { Q2Badge } from '../q2-badge';\n\naddSmoothScrollPolyfill();\n\ntype TabPane = {\n label: string;\n value: string;\n badgeCount: number;\n badgeDescription: string;\n badgeTheme: Q2Badge['theme'];\n badgeStatus: Q2Badge['status'];\n};\n\n@Component({\n tag: 'q2-tab-container',\n styleUrl: 'styles.scss',\n shadow: true,\n})\nexport class Q2TabContainer implements ComponentInterface {\n @Prop({ reflect: true, mutable: true }) value: string;\n @Prop({ reflect: true }) type: 'main' | 'section';\n @Prop({ reflect: true }) name: string;\n @Prop({ reflect: true }) color: 'alt' | undefined;\n @Prop({ reflect: true }) noPrint: boolean = false;\n\n @Element() hostElement: HTMLElement;\n\n @Event() change: EventEmitter;\n @Event() settled: EventEmitter;\n\n guid: number = createGuid();\n scheduledAfterRender: (() => void)[] = [];\n listElement: HTMLUListElement;\n mutationObserver: MutationObserver;\n resizeObserver: ResizeObserver;\n lastScrolled: number = new Date(null).getTime();\n @State() hasLeft: boolean = false;\n @State() hasRight: boolean = false;\n @State() scrollEnabled: boolean = false;\n @State() showScrollLeft: boolean = false;\n @State() showScrollRight: boolean = false;\n @State() tabs: TabPane[];\n\n resizeIframe() {\n return window.TectonElements?.resizeIframe?.();\n }\n\n get tabPanes() {\n const tabPanes = this.hostElement.querySelectorAll<HTMLQ2TabPaneElement | HTMLTectonTabPaneElement>(\n 'q2-tab-pane, tecton-tab-pane'\n );\n\n if (tabPanes.length === 0) {\n return [];\n }\n\n return Array.from(tabPanes).filter(pane => pane.name === this.name);\n }\n\n get selectedTabValue() {\n return this.value || this.tabPanes[0].value || '';\n }\n\n get tabList() {\n return this.hostElement.shadowRoot.querySelector('.tab-list');\n }\n\n ///////// Default Handler /////////\n @Listen('change')\n defaultChangeHandler(event: CustomEvent) {\n if (event.target === this.hostElement && !this.hostElement.onchange) {\n this.value = event.detail.value;\n }\n }\n\n @Listen('resize', { target: 'window' })\n onResize() {\n this.checkScrollState();\n }\n\n @Listen('focus')\n onFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n const index = this.tabs.findIndex(el => el.value === this.selectedTabValue);\n this.moveFocus(index);\n }\n\n @Listen('badge')\n onBadge() {\n this.setTabs();\n }\n\n ///////// Lifecycle Hooks /////////\n componentWillLoad() {\n const observer = new MutationObserver(this.updateTabData);\n observer.observe(this.hostElement, { childList: true, attributes: true });\n this.mutationObserver = observer;\n this.resizeObserver = new ResizeObserver(() => this.checkScrollState());\n this.updateTabData();\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n this.settled.emit();\n }\n\n componentDidLoad() {\n this.resizeObserver?.observe(this.listElement);\n this.checkScrollState();\n overrideFocus(this.hostElement);\n const index = this.tabs.findIndex(el => el.value === this.value);\n this.scheduledAfterRender.push(() => {\n const hasTabs = this.tabs.length > 0;\n if (!hasTabs) return;\n const tab = this.moveFocus(Math.max(index, 0));\n this.value = tab.dataset.value;\n tab.blur();\n });\n }\n\n disconnectedCallback() {\n this.resizeObserver.disconnect();\n this.mutationObserver.disconnect();\n this.resizeObserver = null;\n this.mutationObserver = null;\n }\n\n ///////// Observers /////////\n @Watch('value')\n valueObserver() {\n this.updateTabData();\n this.scheduledAfterRender.push(this.resizeIframe);\n const index = this.tabs.findIndex(el => el.value === this.value);\n if (index > -1) {\n this.scheduledAfterRender.push(() => this.moveFocus(index, false));\n }\n }\n\n @Watch('name')\n nameObserver() {\n this.updateTabData();\n }\n\n ///////// Actions /////////\n updateTabData = () => {\n this.updateTabPaneProps();\n this.setTabs();\n };\n\n updateTabPaneProps = () => {\n this.tabPanes.forEach((tab, index) => {\n tab.selected = tab.value === this.selectedTabValue;\n tab.guid = this.guid;\n tab.index = index;\n });\n };\n\n setTabs = () => {\n this.tabs = this.tabPanes.map(({ label, value, badgeCount, badgeDescription, badgeTheme, badgeStatus }) => ({\n label: (label && loc(label)) || '',\n value,\n badgeCount,\n badgeDescription,\n badgeTheme,\n badgeStatus,\n }));\n };\n\n onTabClick = (event: MouseEvent) => {\n const targetValue = ((event.target as HTMLButtonElement).closest('button[role=\"tab\"]') as HTMLButtonElement)\n .dataset.value;\n const isAlreadySelected = this.value === targetValue;\n if (isAlreadySelected) return;\n\n this.change.emit({\n value: targetValue,\n });\n };\n\n onTabKeyDown = (event: KeyboardEvent) => {\n const value = (event.target as HTMLElement).dataset.value;\n switch (event.key) {\n case 'ArrowRight':\n event.preventDefault();\n this.moveToAdjacentTab(value, 'next');\n break;\n\n case 'ArrowLeft':\n event.preventDefault();\n this.moveToAdjacentTab(value, 'prev');\n break;\n\n case 'Home':\n event.preventDefault();\n this.moveToAdjacentTab(value, 'first');\n break;\n\n case 'End':\n event.preventDefault();\n this.moveToAdjacentTab(value, 'last');\n break;\n\n case 'Space':\n case 'Enter':\n event.preventDefault();\n this.change.emit({ value });\n break;\n }\n };\n\n moveToAdjacentTab = (value: string, direction: 'next' | 'prev' | 'first' | 'last') => {\n const index = this.tabs.map(({ value }) => value).indexOf(value);\n\n let newIndex;\n switch (direction) {\n case 'next':\n newIndex = Math.min(index + 1, this.tabs.length - 1);\n break;\n\n case 'prev':\n newIndex = Math.max(index - 1, 0);\n break;\n\n case 'first':\n newIndex = 0;\n break;\n\n case 'last':\n newIndex = this.tabs.length - 1;\n break;\n }\n\n if (index === newIndex) return;\n\n this.moveFocus(newIndex, false);\n };\n\n moveFocus = (index: number, preventScroll: boolean = true) => {\n const focusedValue = this.tabs[index].value;\n const focusedTab = this.listElement.querySelector<HTMLButtonElement>(`[data-value=\"${focusedValue}\"]`);\n focusedTab.focus({ preventScroll });\n\n const left = focusedTab.offsetLeft - this.listElement.clientWidth / 2;\n this.listElement.scrollTo({\n left,\n behavior: 'smooth',\n });\n\n return focusedTab;\n };\n\n checkScrollState = () => {\n if (!this.listElement) return;\n const { scrollLeft, scrollWidth, clientWidth } = this.listElement;\n this.scrollEnabled = scrollWidth > clientWidth;\n this.showScrollLeft = scrollLeft > 0;\n this.showScrollRight = scrollWidth > scrollLeft + clientWidth;\n };\n\n onScrollBtnClick = (direction?: 'left' | 'right') => {\n const { scrollLeft, scrollWidth, clientWidth } = this.listElement;\n const halfWidth = Math.floor(clientWidth / 2);\n let scrollAmount: number = 0;\n if (direction === 'left') {\n scrollAmount = -Math.min(halfWidth, Math.abs(scrollLeft));\n } else {\n scrollAmount = Math.min(halfWidth, Math.abs(scrollWidth - scrollLeft - clientWidth));\n }\n this.listElement.scrollBy({ left: scrollAmount, behavior: 'smooth' });\n };\n\n onSlotChange = () => {\n this.checkScrollState();\n };\n\n ///////// View Methods /////////\n render() {\n return (\n <Fragment>\n <div class=\"tab-container\">\n {this.scrollEnabled && (\n <Fragment>\n <div\n class=\"gradient-left\"\n hidden={!this.showScrollLeft}\n ></div>\n <div\n class=\"gradient-right\"\n hidden={!this.showScrollRight}\n ></div>\n\n <q2-btn\n class=\"btn-left\"\n hidden={!this.showScrollLeft}\n onClick={() => this.onScrollBtnClick('left')}\n >\n <q2-icon\n type=\"chevron-left\"\n label=\"scroll left\"\n ></q2-icon>\n </q2-btn>\n\n <q2-btn\n class=\"btn-right\"\n hidden={!this.showScrollRight}\n onClick={() => this.onScrollBtnClick('right')}\n >\n <q2-icon\n type=\"chevron-right\"\n label=\"scroll right\"\n ></q2-icon>\n </q2-btn>\n </Fragment>\n )}\n\n <ul\n onScroll={this.checkScrollState}\n ref={el => (this.listElement = el)}\n class={this.noPrint ? 'no-print' : null}\n role=\"tablist\"\n >\n {this.tabs.map((tab, index) => this.generateTab(tab, index))}\n </ul>\n </div>\n <div class=\"tab-content\">\n <slot onSlotchange={() => this.onSlotChange()} />\n </div>\n </Fragment>\n );\n }\n\n generateTab(tab: TabPane, index: number): JSX.IntrinsicElements {\n const { label, value } = tab;\n const isSelected = this.selectedTabValue === value;\n return (\n <li role=\"presentation\">\n <button\n id={`tab-${this.guid}-${index}`}\n data-value={value}\n test-id=\"tabLink\"\n tabIndex={isSelected ? 0 : -1}\n role=\"tab\"\n aria-selected={isSelected ? 'true' : 'false'}\n aria-controls={`tab-pane-${this.guid}-${index}`}\n onClick={this.onTabClick}\n onKeyDown={this.onTabKeyDown}\n >\n {tab.badgeCount === undefined ? label : this.generateTabWithBadge(tab, isSelected)}\n </button>\n </li>\n );\n }\n\n generateTabWithBadge(tab: TabPane, isSelected: boolean): JSX.IntrinsicElements {\n let theme;\n if (!tab.badgeStatus && isSelected) theme = tab.badgeTheme || 'primary';\n let description;\n if (tab.badgeDescription) description = loc(tab.badgeDescription);\n else if (tab.badgeStatus) description = loc(`tecton.element.tab.pane.${tab.badgeStatus}`, [tab.badgeCount]);\n else description = loc('tecton.element.tab.pane.new');\n\n return (\n <div\n class=\"tab-pane-badge\"\n aria-label={`${tab.label}, ${tab.badgeCount} ${description}`}\n >\n {tab.label}\n <q2-badge\n value={tab.badgeCount}\n theme={theme}\n status={tab.badgeStatus}\n />\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-tab-container/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n ComponentInterface,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Listen,\n Watch,\n h,\n Fragment,\n} from '@stencil/core';\nimport { createGuid, loc, addSmoothScrollPolyfill, overrideFocus, isEventFromElement } from 'src/utils';\nimport { JSX } from '../../components';\nimport { Q2Badge } from '../q2-badge';\n\naddSmoothScrollPolyfill();\n\ntype TabPane = {\n label: string;\n value: string;\n badgeCount: number;\n badgeDescription: string;\n badgeTheme: Q2Badge['theme'];\n badgeStatus: Q2Badge['status'];\n};\n\n@Component({\n tag: 'q2-tab-container',\n styleUrl: 'styles.scss',\n shadow: true,\n})\nexport class Q2TabContainer implements ComponentInterface {\n @Prop({ reflect: true, mutable: true }) value: string;\n @Prop({ reflect: true }) type: 'main' | 'section';\n @Prop({ reflect: true }) name: string;\n @Prop({ reflect: true }) color: 'alt' | undefined;\n @Prop({ reflect: true }) noPrint: boolean = false;\n\n @Element() hostElement: HTMLElement;\n\n /**\n * Emitted when the selected tab changes.\n * @legacyEvent\n */\n @Event() change: EventEmitter<{ value: string }>;\n\n /**\n * Emitted when the component has finished rendering.\n * @private\n */\n @Event() settled: EventEmitter<undefined>;\n\n guid: number = createGuid();\n scheduledAfterRender: (() => void)[] = [];\n listElement: HTMLUListElement;\n mutationObserver: MutationObserver;\n resizeObserver: ResizeObserver;\n lastScrolled: number = new Date(null).getTime();\n @State() hasLeft: boolean = false;\n @State() hasRight: boolean = false;\n @State() scrollEnabled: boolean = false;\n @State() showScrollLeft: boolean = false;\n @State() showScrollRight: boolean = false;\n @State() tabs: TabPane[];\n\n resizeIframe() {\n return window.TectonElements?.resizeIframe?.();\n }\n\n get tabPanes() {\n const tabPanes = this.hostElement.querySelectorAll<HTMLQ2TabPaneElement | HTMLTectonTabPaneElement>(\n 'q2-tab-pane, tecton-tab-pane'\n );\n\n if (tabPanes.length === 0) {\n return [];\n }\n\n return Array.from(tabPanes).filter(pane => pane.name === this.name);\n }\n\n get selectedTabValue() {\n return this.value || this.tabPanes[0].value || '';\n }\n\n get tabList() {\n return this.hostElement.shadowRoot.querySelector('.tab-list');\n }\n\n ///////// Default Handler /////////\n @Listen('change')\n defaultChangeHandler(event: CustomEvent) {\n if (event.target === this.hostElement && !this.hostElement.onchange) {\n this.value = event.detail.value;\n }\n }\n\n @Listen('resize', { target: 'window' })\n onResize() {\n this.checkScrollState();\n }\n\n @Listen('focus')\n onFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n const index = this.tabs.findIndex(el => el.value === this.selectedTabValue);\n this.moveFocus(index);\n }\n\n @Listen('badge')\n onBadge() {\n this.setTabs();\n }\n\n ///////// Lifecycle Hooks /////////\n componentWillLoad() {\n const observer = new MutationObserver(this.updateTabData);\n observer.observe(this.hostElement, { childList: true, attributes: true });\n this.mutationObserver = observer;\n this.resizeObserver = new ResizeObserver(() => this.checkScrollState());\n this.updateTabData();\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n this.settled.emit();\n }\n\n componentDidLoad() {\n this.resizeObserver?.observe(this.listElement);\n this.checkScrollState();\n overrideFocus(this.hostElement);\n const index = this.tabs.findIndex(el => el.value === this.value);\n this.scheduledAfterRender.push(() => {\n const hasTabs = this.tabs.length > 0;\n if (!hasTabs) return;\n const tab = this.moveFocus(Math.max(index, 0));\n this.value = tab.dataset.value;\n tab.blur();\n });\n }\n\n disconnectedCallback() {\n this.resizeObserver.disconnect();\n this.mutationObserver.disconnect();\n this.resizeObserver = null;\n this.mutationObserver = null;\n }\n\n ///////// Observers /////////\n @Watch('value')\n valueObserver() {\n this.updateTabData();\n this.scheduledAfterRender.push(this.resizeIframe);\n const index = this.tabs.findIndex(el => el.value === this.value);\n if (index > -1) {\n this.scheduledAfterRender.push(() => this.moveFocus(index, false));\n }\n }\n\n @Watch('name')\n nameObserver() {\n this.updateTabData();\n }\n\n ///////// Actions /////////\n updateTabData = () => {\n this.updateTabPaneProps();\n this.setTabs();\n };\n\n updateTabPaneProps = () => {\n this.tabPanes.forEach((tab, index) => {\n tab.selected = tab.value === this.selectedTabValue;\n tab.guid = this.guid;\n tab.index = index;\n });\n };\n\n setTabs = () => {\n this.tabs = this.tabPanes.map(({ label, value, badgeCount, badgeDescription, badgeTheme, badgeStatus }) => ({\n label: (label && loc(label)) || '',\n value,\n badgeCount,\n badgeDescription,\n badgeTheme,\n badgeStatus,\n }));\n };\n\n onTabClick = (event: MouseEvent) => {\n const targetValue = ((event.target as HTMLButtonElement).closest('button[role=\"tab\"]') as HTMLButtonElement)\n .dataset.value;\n const isAlreadySelected = this.value === targetValue;\n if (isAlreadySelected) return;\n\n this.change.emit({\n value: targetValue,\n });\n };\n\n onTabKeyDown = (event: KeyboardEvent) => {\n const value = (event.target as HTMLElement).dataset.value;\n switch (event.key) {\n case 'ArrowRight':\n event.preventDefault();\n this.moveToAdjacentTab(value, 'next');\n break;\n\n case 'ArrowLeft':\n event.preventDefault();\n this.moveToAdjacentTab(value, 'prev');\n break;\n\n case 'Home':\n event.preventDefault();\n this.moveToAdjacentTab(value, 'first');\n break;\n\n case 'End':\n event.preventDefault();\n this.moveToAdjacentTab(value, 'last');\n break;\n\n case 'Space':\n case 'Enter':\n event.preventDefault();\n this.change.emit({ value });\n break;\n }\n };\n\n moveToAdjacentTab = (value: string, direction: 'next' | 'prev' | 'first' | 'last') => {\n const index = this.tabs.map(({ value }) => value).indexOf(value);\n\n let newIndex;\n switch (direction) {\n case 'next':\n newIndex = Math.min(index + 1, this.tabs.length - 1);\n break;\n\n case 'prev':\n newIndex = Math.max(index - 1, 0);\n break;\n\n case 'first':\n newIndex = 0;\n break;\n\n case 'last':\n newIndex = this.tabs.length - 1;\n break;\n }\n\n if (index === newIndex) return;\n\n this.moveFocus(newIndex, false);\n };\n\n moveFocus = (index: number, preventScroll: boolean = true) => {\n const focusedValue = this.tabs[index].value;\n const focusedTab = this.listElement.querySelector<HTMLButtonElement>(`[data-value=\"${focusedValue}\"]`);\n focusedTab.focus({ preventScroll });\n\n const left = focusedTab.offsetLeft - this.listElement.clientWidth / 2;\n this.listElement.scrollTo({\n left,\n behavior: 'smooth',\n });\n\n return focusedTab;\n };\n\n checkScrollState = () => {\n if (!this.listElement) return;\n const { scrollLeft, scrollWidth, clientWidth } = this.listElement;\n this.scrollEnabled = scrollWidth > clientWidth;\n this.showScrollLeft = scrollLeft > 0;\n this.showScrollRight = scrollWidth > scrollLeft + clientWidth;\n };\n\n onScrollBtnClick = (direction?: 'left' | 'right') => {\n const { scrollLeft, scrollWidth, clientWidth } = this.listElement;\n const halfWidth = Math.floor(clientWidth / 2);\n let scrollAmount: number = 0;\n if (direction === 'left') {\n scrollAmount = -Math.min(halfWidth, Math.abs(scrollLeft));\n } else {\n scrollAmount = Math.min(halfWidth, Math.abs(scrollWidth - scrollLeft - clientWidth));\n }\n this.listElement.scrollBy({ left: scrollAmount, behavior: 'smooth' });\n };\n\n onSlotChange = () => {\n this.checkScrollState();\n };\n\n ///////// View Methods /////////\n render() {\n return (\n <Fragment>\n <div class=\"tab-container\">\n {this.scrollEnabled && (\n <Fragment>\n <div\n class=\"gradient-left\"\n hidden={!this.showScrollLeft}\n ></div>\n <div\n class=\"gradient-right\"\n hidden={!this.showScrollRight}\n ></div>\n\n <q2-btn\n class=\"btn-left\"\n hidden={!this.showScrollLeft}\n onClick={() => this.onScrollBtnClick('left')}\n >\n <q2-icon\n type=\"chevron-left\"\n label=\"scroll left\"\n ></q2-icon>\n </q2-btn>\n\n <q2-btn\n class=\"btn-right\"\n hidden={!this.showScrollRight}\n onClick={() => this.onScrollBtnClick('right')}\n >\n <q2-icon\n type=\"chevron-right\"\n label=\"scroll right\"\n ></q2-icon>\n </q2-btn>\n </Fragment>\n )}\n\n <ul\n onScroll={this.checkScrollState}\n ref={el => (this.listElement = el)}\n class={this.noPrint ? 'no-print' : null}\n role=\"tablist\"\n >\n {this.tabs.map((tab, index) => this.generateTab(tab, index))}\n </ul>\n </div>\n <div class=\"tab-content\">\n <slot onSlotchange={() => this.onSlotChange()} />\n </div>\n </Fragment>\n );\n }\n\n generateTab(tab: TabPane, index: number): JSX.IntrinsicElements {\n const { label, value } = tab;\n const isSelected = this.selectedTabValue === value;\n return (\n <li role=\"presentation\">\n <button\n id={`tab-${this.guid}-${index}`}\n data-value={value}\n test-id=\"tabLink\"\n tabIndex={isSelected ? 0 : -1}\n role=\"tab\"\n aria-selected={isSelected ? 'true' : 'false'}\n aria-controls={`tab-pane-${this.guid}-${index}`}\n onClick={this.onTabClick}\n onKeyDown={this.onTabKeyDown}\n >\n {tab.badgeCount === undefined ? label : this.generateTabWithBadge(tab, isSelected)}\n </button>\n </li>\n );\n }\n\n generateTabWithBadge(tab: TabPane, isSelected: boolean): JSX.IntrinsicElements {\n let theme;\n if (!tab.badgeStatus && isSelected) theme = tab.badgeTheme || 'primary';\n let description;\n if (tab.badgeDescription) description = loc(tab.badgeDescription);\n else if (tab.badgeStatus) description = loc(`tecton.element.tab.pane.${tab.badgeStatus}`, [tab.badgeCount]);\n else description = loc('tecton.element.tab.pane.new');\n\n return (\n <div\n class=\"tab-pane-badge\"\n aria-label={`${tab.label}, ${tab.badgeCount} ${description}`}\n >\n {tab.label}\n <q2-badge\n value={tab.badgeCount}\n theme={theme}\n status={tab.badgeStatus}\n />\n </div>\n );\n }\n}\n"]}
@@ -234,8 +234,11 @@ export class Q2TabPane {
234
234
  "cancelable": true,
235
235
  "composed": true,
236
236
  "docs": {
237
- "tags": [],
238
- "text": ""
237
+ "tags": [{
238
+ "name": "private",
239
+ "text": undefined
240
+ }],
241
+ "text": "Emitted when the badge count, description, theme, or status changes."
239
242
  },
240
243
  "complexType": {
241
244
  "original": "boolean",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-tab-pane/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAsB,IAAI,EAAE,KAAK,EAAgB,KAAK,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAQnG,MAAM,OAAO,SAAS;;;;;;;;;;;;;EAkClB,aAAa;IACT,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;EACtB,CAAC;EAED,MAAM;IACF,OAAO,CACH,WACI,EAAE,EAAE,YAAY,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,EACzC,KAAK,EAAE,WAAW,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,EAClD,IAAI,EAAC,UAAU,EACf,QAAQ,EAAC,IAAI,iBACA,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,qBACf,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;MAEjD,eAAQ,CACN,CACT,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, ComponentInterface, Prop, Event, EventEmitter, Watch, h } from '@stencil/core';\nimport { Q2Badge } from '../q2-badge';\n\n@Component({\n tag: 'q2-tab-pane',\n styleUrl: 'styles.scss',\n shadow: true,\n})\nexport class Q2TabPane implements ComponentInterface {\n @Prop({ reflect: true }) value: string;\n @Prop({ reflect: true }) label: string;\n /**\n * Used by q2-tab-container to apply a name to all options in the group\n * @private\n */\n @Prop({ reflect: true }) name: string;\n /**\n * Used by q2-tab-container to indicate the option is selected\n * @private\n */\n @Prop({ reflect: true }) selected: boolean;\n @Prop({ reflect: true }) badgeCount: number;\n @Prop({ reflect: true }) badgeDescription: string;\n @Prop({ reflect: true }) badgeTheme: Q2Badge['theme'];\n @Prop({ reflect: true }) badgeStatus: Q2Badge['status'];\n /**\n * Used by q2-tab-container to indicate the pane's index\n * @private\n */\n @Prop() index: number;\n /**\n * Used by q2-tab-container to apply a unique id to each tab pane\n * @private\n */\n @Prop() guid: number;\n\n @Event({ bubbles: true }) badge: EventEmitter<boolean>;\n\n @Watch('badgeCount')\n @Watch('badgeDescription')\n @Watch('badgeTheme')\n @Watch('badgeStatus')\n badgeObserver() {\n this.badge.emit();\n }\n\n render() {\n return (\n <div\n id={`tab-pane-${this.guid}-${this.index}`}\n class={`tab-pane${this.selected ? '' : ' hidden'}`}\n role=\"tabpanel\"\n tabindex=\"-1\"\n aria-hidden={`${!this.selected}`}\n aria-labelledby={`tab-${this.guid}-${this.index}`}\n >\n <slot />\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/q2-tab-pane/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAsB,IAAI,EAAE,KAAK,EAAgB,KAAK,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAQnG,MAAM,OAAO,SAAS;;;;;;;;;;;;;EAsClB,aAAa;IACT,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;EACtB,CAAC;EAED,MAAM;IACF,OAAO,CACH,WACI,EAAE,EAAE,YAAY,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,EACzC,KAAK,EAAE,WAAW,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,EAClD,IAAI,EAAC,UAAU,EACf,QAAQ,EAAC,IAAI,iBACA,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,qBACf,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;MAEjD,eAAQ,CACN,CACT,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, ComponentInterface, Prop, Event, EventEmitter, Watch, h } from '@stencil/core';\nimport { Q2Badge } from '../q2-badge';\n\n@Component({\n tag: 'q2-tab-pane',\n styleUrl: 'styles.scss',\n shadow: true,\n})\nexport class Q2TabPane implements ComponentInterface {\n @Prop({ reflect: true }) value: string;\n @Prop({ reflect: true }) label: string;\n /**\n * Used by q2-tab-container to apply a name to all options in the group\n * @private\n */\n @Prop({ reflect: true }) name: string;\n /**\n * Used by q2-tab-container to indicate the option is selected\n * @private\n */\n @Prop({ reflect: true }) selected: boolean;\n @Prop({ reflect: true }) badgeCount: number;\n @Prop({ reflect: true }) badgeDescription: string;\n @Prop({ reflect: true }) badgeTheme: Q2Badge['theme'];\n @Prop({ reflect: true }) badgeStatus: Q2Badge['status'];\n /**\n * Used by q2-tab-container to indicate the pane's index\n * @private\n */\n @Prop() index: number;\n /**\n * Used by q2-tab-container to apply a unique id to each tab pane\n * @private\n */\n @Prop() guid: number;\n\n /**\n * Emitted when the badge count, description, theme, or status changes.\n * @private\n */\n @Event({ bubbles: true }) badge: EventEmitter<boolean>;\n\n @Watch('badgeCount')\n @Watch('badgeDescription')\n @Watch('badgeTheme')\n @Watch('badgeStatus')\n badgeObserver() {\n this.badge.emit();\n }\n\n render() {\n return (\n <div\n id={`tab-pane-${this.guid}-${this.index}`}\n class={`tab-pane${this.selected ? '' : ' hidden'}`}\n role=\"tabpanel\"\n tabindex=\"-1\"\n aria-hidden={`${!this.selected}`}\n aria-labelledby={`tab-${this.guid}-${this.index}`}\n >\n <slot />\n </div>\n );\n }\n}\n"]}
@@ -283,7 +283,7 @@ export class Q2Tag {
283
283
  "composed": true,
284
284
  "docs": {
285
285
  "tags": [],
286
- "text": ""
286
+ "text": "Emitted when a provided option is clicked.\n\nRequires at least one option to be provided."
287
287
  },
288
288
  "complexType": {
289
289
  "original": "{ value: string }",