@dialpad/dialtone-vue 2.127.0 → 2.127.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (422) hide show
  1. package/dist/chunks/_plugin-vue2_normalizer-1aBeR4AK.js +59 -0
  2. package/dist/chunks/_plugin-vue2_normalizer-1aBeR4AK.js.map +1 -0
  3. package/dist/chunks/_plugin-vue2_normalizer-sOSkiPF3.js +60 -0
  4. package/dist/chunks/_plugin-vue2_normalizer-sOSkiPF3.js.map +1 -0
  5. package/dist/chunks/{dropdown-SMWaTWyF.js → dropdown-DTtcQEFC.js} +131 -84
  6. package/dist/chunks/{dropdown-SMWaTWyF.js.map → dropdown-DTtcQEFC.js.map} +1 -1
  7. package/dist/chunks/dropdown-IaLNHmVd.js +403 -0
  8. package/dist/chunks/{dropdown-zhMEz3bn.js.map → dropdown-IaLNHmVd.js.map} +1 -1
  9. package/dist/chunks/dropdown_constants-2pGCXy7m.js +8 -0
  10. package/dist/chunks/dropdown_constants-2pGCXy7m.js.map +1 -0
  11. package/dist/chunks/dropdown_constants-w1MXGC3Z.js +9 -0
  12. package/dist/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -0
  13. package/dist/chunks/{icon_constants-OpYAAKwF.js → icon_constants-Dy4MEUJL.js} +7 -6
  14. package/dist/chunks/{icon_constants-2S_OSQ1t.js.map → icon_constants-Dy4MEUJL.js.map} +1 -1
  15. package/dist/chunks/icon_constants-QYpmdE0R.js +16 -0
  16. package/dist/chunks/{icon_constants-OpYAAKwF.js.map → icon_constants-QYpmdE0R.js.map} +1 -1
  17. package/dist/chunks/index-DUr1xHR0.js +442 -0
  18. package/dist/chunks/{index-2jPosQBn.js.map → index-DUr1xHR0.js.map} +1 -1
  19. package/dist/chunks/index-IA-Z8fgm.js +441 -0
  20. package/dist/chunks/{index-nIyl_PL6.js.map → index-IA-Z8fgm.js.map} +1 -1
  21. package/dist/chunks/{input-1tm09l_-.js → input-6kbd8Pju.js} +83 -60
  22. package/dist/chunks/{input-o-fc1X4b.js.map → input-6kbd8Pju.js.map} +1 -1
  23. package/dist/chunks/input-Axw-wFj2.js +295 -0
  24. package/dist/chunks/{input-1tm09l_-.js.map → input-Axw-wFj2.js.map} +1 -1
  25. package/dist/chunks/input_group-m3cWYUfI.js +143 -0
  26. package/dist/chunks/{input_group-zcAq3DQl.js.map → input_group-m3cWYUfI.js.map} +1 -1
  27. package/dist/chunks/{input_group-zcAq3DQl.js → input_group-qVZaS5Bb.js} +27 -24
  28. package/dist/chunks/{input_group-j2gTtc1C.js.map → input_group-qVZaS5Bb.js.map} +1 -1
  29. package/dist/chunks/keyboard_list_navigation-ScXhrxya.js +284 -0
  30. package/dist/chunks/{keyboard_list_navigation-N74Bpdq7.js.map → keyboard_list_navigation-ScXhrxya.js.map} +1 -1
  31. package/dist/chunks/keyboard_list_navigation-fJnl_Iox.js +283 -0
  32. package/dist/chunks/{keyboard_list_navigation-F0O8nht0.js.map → keyboard_list_navigation-fJnl_Iox.js.map} +1 -1
  33. package/dist/chunks/link_constants-Huj7D_hm.js +22 -0
  34. package/dist/chunks/{link_constants-Kn6kP4i1.js.map → link_constants-Huj7D_hm.js.map} +1 -1
  35. package/dist/chunks/link_constants-nWVlXQBs.js +23 -0
  36. package/dist/chunks/{link_constants-vIUB92L4.js.map → link_constants-nWVlXQBs.js.map} +1 -1
  37. package/dist/chunks/list_item_constants-EiqkqZvP.js +13 -0
  38. package/dist/chunks/{list_item_constants-Tsz5CO1m.js.map → list_item_constants-EiqkqZvP.js.map} +1 -1
  39. package/dist/chunks/list_item_constants-u1xcN9Dd.js +14 -0
  40. package/dist/chunks/{list_item_constants-LTUc74pD.js.map → list_item_constants-u1xcN9Dd.js.map} +1 -1
  41. package/dist/chunks/modal-VgxXAQFP.js +105 -0
  42. package/dist/chunks/{modal-qEzlo0Sj.js.map → modal-VgxXAQFP.js.map} +1 -1
  43. package/dist/chunks/modal-XOr4kiNZ.js +106 -0
  44. package/dist/chunks/{modal-VuMFkZFH.js.map → modal-XOr4kiNZ.js.map} +1 -1
  45. package/dist/chunks/notice_action-IRUoLX2d.js +196 -0
  46. package/dist/chunks/{notice_action-u3ZKIhit.js.map → notice_action-IRUoLX2d.js.map} +1 -1
  47. package/dist/chunks/notice_action-P6uDyE9x.js +195 -0
  48. package/dist/chunks/{notice_action-9NmtQRai.js.map → notice_action-P6uDyE9x.js.map} +1 -1
  49. package/dist/chunks/notice_constants-7Qt2CQEY.js +7 -0
  50. package/dist/chunks/{notice_constants-mC6al2Dm.js.map → notice_constants-7Qt2CQEY.js.map} +1 -1
  51. package/dist/chunks/notice_constants-UXo9e3bS.js +6 -0
  52. package/dist/chunks/{notice_constants-c--hBFQw.js.map → notice_constants-UXo9e3bS.js.map} +1 -1
  53. package/dist/chunks/popover_constants-JwBF9h1Z.js +143 -0
  54. package/dist/chunks/{popover_constants-hOEhklvr.js.map → popover_constants-JwBF9h1Z.js.map} +1 -1
  55. package/dist/chunks/popover_constants-Qkpb0yh2.js +144 -0
  56. package/dist/chunks/{popover_constants-qjlEkroB.js.map → popover_constants-Qkpb0yh2.js.map} +1 -1
  57. package/dist/chunks/sr_only_close_button-81bHIpPu.js +95 -0
  58. package/dist/chunks/{sr_only_close_button-ErijKGYR.js.map → sr_only_close_button-81bHIpPu.js.map} +1 -1
  59. package/dist/chunks/sr_only_close_button-ZaGdAHz7.js +94 -0
  60. package/dist/chunks/{sr_only_close_button-JGole5Xi.js.map → sr_only_close_button-ZaGdAHz7.js.map} +1 -1
  61. package/dist/chunks/stack_constants-HraCekPm.js +15 -0
  62. package/dist/chunks/{stack_constants-m9Ickqw0.js.map → stack_constants-HraCekPm.js.map} +1 -1
  63. package/dist/chunks/stack_constants-SMzMWnAQ.js +14 -0
  64. package/dist/chunks/{stack_constants-u7tNqGtc.js.map → stack_constants-SMzMWnAQ.js.map} +1 -1
  65. package/dist/chunks/tab-FcsV5VmK.js +386 -0
  66. package/dist/chunks/{tab-7hJQSLFx.js.map → tab-FcsV5VmK.js.map} +1 -1
  67. package/dist/chunks/tab-V4cb44Ry.js +387 -0
  68. package/dist/chunks/{tab-Qm9LVkYj.js.map → tab-V4cb44Ry.js.map} +1 -1
  69. package/dist/common/constants.cjs +60 -0
  70. package/dist/{lib → common}/constants.cjs.map +1 -1
  71. package/dist/{lib → common}/constants.js +25 -18
  72. package/dist/{lib → common}/constants.js.map +1 -1
  73. package/dist/common/dates.cjs +72 -0
  74. package/dist/{lib → common}/dates.cjs.map +1 -1
  75. package/dist/common/dates.js +72 -0
  76. package/dist/{lib → common}/dates.js.map +1 -1
  77. package/dist/common/emoji.cjs +163 -0
  78. package/dist/common/emoji.cjs.map +1 -0
  79. package/dist/common/emoji.js +168 -0
  80. package/dist/common/emoji.js.map +1 -0
  81. package/dist/common/mixins.cjs +17 -0
  82. package/dist/{lib → common}/mixins.cjs.map +1 -1
  83. package/dist/common/mixins.js +17 -0
  84. package/dist/common/utils.cjs +237 -0
  85. package/dist/{lib → common}/utils.cjs.map +1 -1
  86. package/dist/common/utils.js +237 -0
  87. package/dist/{lib → common}/utils.js.map +1 -1
  88. package/dist/common/validators.cjs +23 -0
  89. package/dist/{lib → common}/validators.cjs.map +1 -1
  90. package/dist/common/validators.js +23 -0
  91. package/dist/{lib → common}/validators.js.map +1 -1
  92. package/dist/dialtone-vue.cjs +372 -1
  93. package/dist/dialtone-vue.cjs.map +1 -1
  94. package/dist/dialtone-vue.js +325 -324
  95. package/dist/dialtone-vue.js.map +1 -1
  96. package/dist/lib/attachment-carousel.cjs +260 -1
  97. package/dist/lib/attachment-carousel.cjs.map +1 -1
  98. package/dist/lib/attachment-carousel.js +96 -84
  99. package/dist/lib/attachment-carousel.js.map +1 -1
  100. package/dist/lib/avatar.cjs +399 -1
  101. package/dist/lib/avatar.cjs.map +1 -1
  102. package/dist/lib/avatar.js +111 -79
  103. package/dist/lib/avatar.js.map +1 -1
  104. package/dist/lib/badge.cjs +182 -1
  105. package/dist/lib/badge.cjs.map +1 -1
  106. package/dist/lib/badge.js +53 -38
  107. package/dist/lib/badge.js.map +1 -1
  108. package/dist/lib/banner.cjs +209 -2
  109. package/dist/lib/banner.cjs.map +1 -1
  110. package/dist/lib/banner.js +58 -47
  111. package/dist/lib/banner.js.map +1 -1
  112. package/dist/lib/breadcrumbs.cjs +146 -1
  113. package/dist/lib/breadcrumbs.cjs.map +1 -1
  114. package/dist/lib/breadcrumbs.js +57 -48
  115. package/dist/lib/breadcrumbs.js.map +1 -1
  116. package/dist/lib/button-group.cjs +47 -1
  117. package/dist/lib/button-group.cjs.map +1 -1
  118. package/dist/lib/button-group.js +21 -18
  119. package/dist/lib/button-group.js.map +1 -1
  120. package/dist/lib/button.cjs +349 -1
  121. package/dist/lib/button.cjs.map +1 -1
  122. package/dist/lib/button.js +98 -76
  123. package/dist/lib/button.js.map +1 -1
  124. package/dist/lib/callbar-button-with-popover.cjs +249 -1
  125. package/dist/lib/callbar-button-with-popover.cjs.map +1 -1
  126. package/dist/lib/callbar-button-with-popover.js +66 -50
  127. package/dist/lib/callbar-button-with-popover.js.map +1 -1
  128. package/dist/lib/callbar-button.cjs +182 -1
  129. package/dist/lib/callbar-button.cjs.map +1 -1
  130. package/dist/lib/callbar-button.js +42 -34
  131. package/dist/lib/callbar-button.js.map +1 -1
  132. package/dist/lib/callbox.cjs +146 -1
  133. package/dist/lib/callbox.cjs.map +1 -1
  134. package/dist/lib/callbox.js +38 -32
  135. package/dist/lib/callbox.js.map +1 -1
  136. package/dist/lib/card.cjs +73 -1
  137. package/dist/lib/card.cjs.map +1 -1
  138. package/dist/lib/card.js +22 -20
  139. package/dist/lib/card.js.map +1 -1
  140. package/dist/lib/checkbox-group.cjs +129 -1
  141. package/dist/lib/checkbox-group.cjs.map +1 -1
  142. package/dist/lib/checkbox-group.js +42 -29
  143. package/dist/lib/checkbox-group.js.map +1 -1
  144. package/dist/lib/checkbox.cjs +127 -1
  145. package/dist/lib/checkbox.cjs.map +1 -1
  146. package/dist/lib/checkbox.js +46 -35
  147. package/dist/lib/checkbox.js.map +1 -1
  148. package/dist/lib/chip.cjs +198 -1
  149. package/dist/lib/chip.cjs.map +1 -1
  150. package/dist/lib/chip.js +59 -45
  151. package/dist/lib/chip.js.map +1 -1
  152. package/dist/lib/codeblock.cjs +29 -2
  153. package/dist/lib/codeblock.cjs.map +1 -1
  154. package/dist/lib/codeblock.js +15 -14
  155. package/dist/lib/codeblock.js.map +1 -1
  156. package/dist/lib/collapsible.cjs +334 -1
  157. package/dist/lib/collapsible.cjs.map +1 -1
  158. package/dist/lib/collapsible.js +91 -68
  159. package/dist/lib/collapsible.js.map +1 -1
  160. package/dist/lib/combobox-multi-select.cjs +519 -1
  161. package/dist/lib/combobox-multi-select.cjs.map +1 -1
  162. package/dist/lib/combobox-multi-select.js +223 -136
  163. package/dist/lib/combobox-multi-select.js.map +1 -1
  164. package/dist/lib/combobox-with-popover.cjs +384 -1
  165. package/dist/lib/combobox-with-popover.cjs.map +1 -1
  166. package/dist/lib/combobox-with-popover.js +130 -86
  167. package/dist/lib/combobox-with-popover.js.map +1 -1
  168. package/dist/lib/combobox.cjs +18 -1
  169. package/dist/lib/combobox.cjs.map +1 -1
  170. package/dist/lib/combobox.js +9 -9
  171. package/dist/lib/contact-info.cjs +145 -1
  172. package/dist/lib/contact-info.cjs.map +1 -1
  173. package/dist/lib/contact-info.js +34 -32
  174. package/dist/lib/contact-info.js.map +1 -1
  175. package/dist/lib/contact-row.cjs +205 -1
  176. package/dist/lib/contact-row.cjs.map +1 -1
  177. package/dist/lib/contact-row.js +42 -39
  178. package/dist/lib/contact-row.js.map +1 -1
  179. package/dist/lib/datepicker.cjs +662 -1
  180. package/dist/lib/datepicker.cjs.map +1 -1
  181. package/dist/lib/datepicker.js +330 -218
  182. package/dist/lib/datepicker.js.map +1 -1
  183. package/dist/lib/description-list.cjs +114 -1
  184. package/dist/lib/description-list.cjs.map +1 -1
  185. package/dist/lib/description-list.js +51 -19
  186. package/dist/lib/description-list.js.map +1 -1
  187. package/dist/lib/dropdown.cjs +45 -1
  188. package/dist/lib/dropdown.cjs.map +1 -1
  189. package/dist/lib/dropdown.js +27 -25
  190. package/dist/lib/dropdown.js.map +1 -1
  191. package/dist/lib/editor.cjs +555 -1
  192. package/dist/lib/editor.cjs.map +1 -1
  193. package/dist/lib/editor.js +191 -162
  194. package/dist/lib/editor.js.map +1 -1
  195. package/dist/lib/emoji-picker.cjs +1063 -1
  196. package/dist/lib/emoji-picker.cjs.map +1 -1
  197. package/dist/lib/emoji-picker.js +638 -374
  198. package/dist/lib/emoji-picker.js.map +1 -1
  199. package/dist/lib/emoji-row.cjs +88 -1
  200. package/dist/lib/emoji-row.cjs.map +1 -1
  201. package/dist/lib/emoji-row.js +46 -40
  202. package/dist/lib/emoji-row.js.map +1 -1
  203. package/dist/lib/emoji-text-wrapper.cjs +109 -1
  204. package/dist/lib/emoji-text-wrapper.cjs.map +1 -1
  205. package/dist/lib/emoji-text-wrapper.js +49 -35
  206. package/dist/lib/emoji-text-wrapper.js.map +1 -1
  207. package/dist/lib/emoji.cjs +145 -1
  208. package/dist/lib/emoji.cjs.map +1 -1
  209. package/dist/lib/emoji.js +140 -5
  210. package/dist/lib/emoji.js.map +1 -1
  211. package/dist/lib/feed-item-row.cjs +213 -1
  212. package/dist/lib/feed-item-row.cjs.map +1 -1
  213. package/dist/lib/feed-item-row.js +71 -63
  214. package/dist/lib/feed-item-row.js.map +1 -1
  215. package/dist/lib/feed-pill.cjs +149 -1
  216. package/dist/lib/feed-pill.cjs.map +1 -1
  217. package/dist/lib/feed-pill.js +60 -51
  218. package/dist/lib/feed-pill.js.map +1 -1
  219. package/dist/lib/general-row.cjs +405 -1
  220. package/dist/lib/general-row.cjs.map +1 -1
  221. package/dist/lib/general-row.js +133 -106
  222. package/dist/lib/general-row.js.map +1 -1
  223. package/dist/lib/group-row.cjs +117 -1
  224. package/dist/lib/group-row.cjs.map +1 -1
  225. package/dist/lib/group-row.js +33 -30
  226. package/dist/lib/group-row.js.map +1 -1
  227. package/dist/lib/grouped-chip.cjs +45 -1
  228. package/dist/lib/grouped-chip.cjs.map +1 -1
  229. package/dist/lib/grouped-chip.js +28 -26
  230. package/dist/lib/grouped-chip.js.map +1 -1
  231. package/dist/lib/hovercard.cjs +227 -1
  232. package/dist/lib/hovercard.cjs.map +1 -1
  233. package/dist/lib/hovercard.js +98 -63
  234. package/dist/lib/hovercard.js.map +1 -1
  235. package/dist/lib/icon.cjs +59 -1
  236. package/dist/lib/icon.cjs.map +1 -1
  237. package/dist/lib/icon.js +22 -20
  238. package/dist/lib/icon.js.map +1 -1
  239. package/dist/lib/image-viewer.cjs +190 -1
  240. package/dist/lib/image-viewer.cjs.map +1 -1
  241. package/dist/lib/image-viewer.js +83 -62
  242. package/dist/lib/image-viewer.js.map +1 -1
  243. package/dist/lib/input-group.cjs +91 -1
  244. package/dist/lib/input-group.cjs.map +1 -1
  245. package/dist/lib/input-group.js +29 -27
  246. package/dist/lib/input-group.js.map +1 -1
  247. package/dist/lib/input.cjs +492 -1
  248. package/dist/lib/input.cjs.map +1 -1
  249. package/dist/lib/input.js +127 -89
  250. package/dist/lib/input.js.map +1 -1
  251. package/dist/lib/item-layout.cjs +40 -1
  252. package/dist/lib/item-layout.cjs.map +1 -1
  253. package/dist/lib/item-layout.js +15 -13
  254. package/dist/lib/item-layout.js.map +1 -1
  255. package/dist/lib/ivr-node.cjs +209 -1
  256. package/dist/lib/ivr-node.cjs.map +1 -1
  257. package/dist/lib/ivr-node.js +115 -99
  258. package/dist/lib/ivr-node.js.map +1 -1
  259. package/dist/lib/keyboard-shortcut.cjs +106 -1
  260. package/dist/lib/keyboard-shortcut.cjs.map +1 -1
  261. package/dist/lib/keyboard-shortcut.js +42 -34
  262. package/dist/lib/keyboard-shortcut.js.map +1 -1
  263. package/dist/lib/lazy-show.cjs +80 -1
  264. package/dist/lib/lazy-show.cjs.map +1 -1
  265. package/dist/lib/lazy-show.js +20 -16
  266. package/dist/lib/lazy-show.js.map +1 -1
  267. package/dist/lib/link.cjs +70 -1
  268. package/dist/lib/link.cjs.map +1 -1
  269. package/dist/lib/link.js +22 -20
  270. package/dist/lib/link.js.map +1 -1
  271. package/dist/lib/list-item-group.cjs +60 -1
  272. package/dist/lib/list-item-group.cjs.map +1 -1
  273. package/dist/lib/list-item-group.js +19 -17
  274. package/dist/lib/list-item-group.js.map +1 -1
  275. package/dist/lib/list-item.cjs +204 -1
  276. package/dist/lib/list-item.cjs.map +1 -1
  277. package/dist/lib/list-item.js +67 -56
  278. package/dist/lib/list-item.js.map +1 -1
  279. package/dist/lib/message-input.cjs +554 -1
  280. package/dist/lib/message-input.cjs.map +1 -1
  281. package/dist/lib/message-input.js +174 -152
  282. package/dist/lib/message-input.js.map +1 -1
  283. package/dist/lib/modal.cjs +350 -2
  284. package/dist/lib/modal.cjs.map +1 -1
  285. package/dist/lib/modal.js +118 -90
  286. package/dist/lib/modal.js.map +1 -1
  287. package/dist/lib/notice.cjs +159 -1
  288. package/dist/lib/notice.cjs.map +1 -1
  289. package/dist/lib/notice.js +46 -43
  290. package/dist/lib/notice.js.map +1 -1
  291. package/dist/lib/pagination.cjs +152 -1
  292. package/dist/lib/pagination.cjs.map +1 -1
  293. package/dist/lib/pagination.js +60 -48
  294. package/dist/lib/pagination.js.map +1 -1
  295. package/dist/lib/popover.cjs +956 -1
  296. package/dist/lib/popover.cjs.map +1 -1
  297. package/dist/lib/popover.js +401 -221
  298. package/dist/lib/popover.js.map +1 -1
  299. package/dist/lib/presence.cjs +65 -1
  300. package/dist/lib/presence.cjs.map +1 -1
  301. package/dist/lib/presence.js +32 -26
  302. package/dist/lib/presence.js.map +1 -1
  303. package/dist/lib/radio-group.cjs +98 -1
  304. package/dist/lib/radio-group.cjs.map +1 -1
  305. package/dist/lib/radio-group.js +24 -22
  306. package/dist/lib/radio-group.js.map +1 -1
  307. package/dist/lib/radio.cjs +118 -1
  308. package/dist/lib/radio.cjs.map +1 -1
  309. package/dist/lib/radio.js +43 -35
  310. package/dist/lib/radio.js.map +1 -1
  311. package/dist/lib/rich-text-editor.cjs +1138 -1
  312. package/dist/lib/rich-text-editor.cjs.map +1 -1
  313. package/dist/lib/rich-text-editor.js +574 -387
  314. package/dist/lib/rich-text-editor.js.map +1 -1
  315. package/dist/lib/root-layout.cjs +130 -1
  316. package/dist/lib/root-layout.cjs.map +1 -1
  317. package/dist/lib/root-layout.js +28 -24
  318. package/dist/lib/root-layout.js.map +1 -1
  319. package/dist/lib/select-menu.cjs +282 -1
  320. package/dist/lib/select-menu.cjs.map +1 -1
  321. package/dist/lib/select-menu.js +101 -61
  322. package/dist/lib/select-menu.js.map +1 -1
  323. package/dist/lib/settings-menu-button.cjs +65 -1
  324. package/dist/lib/settings-menu-button.cjs.map +1 -1
  325. package/dist/lib/settings-menu-button.js +26 -24
  326. package/dist/lib/settings-menu-button.js.map +1 -1
  327. package/dist/lib/skeleton.cjs +612 -1
  328. package/dist/lib/skeleton.cjs.map +1 -1
  329. package/dist/lib/skeleton.js +174 -135
  330. package/dist/lib/skeleton.js.map +1 -1
  331. package/dist/lib/stack.cjs +127 -1
  332. package/dist/lib/stack.cjs.map +1 -1
  333. package/dist/lib/stack.js +66 -56
  334. package/dist/lib/stack.js.map +1 -1
  335. package/dist/lib/tabs.cjs +99 -1
  336. package/dist/lib/tabs.cjs.map +1 -1
  337. package/dist/lib/tabs.js +42 -35
  338. package/dist/lib/tabs.js.map +1 -1
  339. package/dist/lib/time-pill.cjs +47 -1
  340. package/dist/lib/time-pill.cjs.map +1 -1
  341. package/dist/lib/time-pill.js +21 -16
  342. package/dist/lib/time-pill.js.map +1 -1
  343. package/dist/lib/toast.cjs +247 -1
  344. package/dist/lib/toast.cjs.map +1 -1
  345. package/dist/lib/toast.js +78 -55
  346. package/dist/lib/toast.js.map +1 -1
  347. package/dist/lib/toggle.cjs +177 -1
  348. package/dist/lib/toggle.cjs.map +1 -1
  349. package/dist/lib/toggle.js +46 -37
  350. package/dist/lib/toggle.js.map +1 -1
  351. package/dist/lib/tooltip-directive.cjs +87 -1
  352. package/dist/lib/tooltip-directive.cjs.map +1 -1
  353. package/dist/lib/tooltip-directive.js +55 -41
  354. package/dist/lib/tooltip-directive.js.map +1 -1
  355. package/dist/lib/tooltip.cjs +436 -1
  356. package/dist/lib/tooltip.cjs.map +1 -1
  357. package/dist/lib/tooltip.js +152 -90
  358. package/dist/lib/tooltip.js.map +1 -1
  359. package/dist/lib/top-banner-info.cjs +63 -1
  360. package/dist/lib/top-banner-info.cjs.map +1 -1
  361. package/dist/lib/top-banner-info.js +22 -18
  362. package/dist/lib/top-banner-info.js.map +1 -1
  363. package/dist/lib/unread-pill.cjs +63 -1
  364. package/dist/lib/unread-pill.cjs.map +1 -1
  365. package/dist/lib/unread-pill.js +25 -21
  366. package/dist/lib/unread-pill.js.map +1 -1
  367. package/dist/lib/validation-messages.cjs +85 -1
  368. package/dist/lib/validation-messages.cjs.map +1 -1
  369. package/dist/lib/validation-messages.js +32 -29
  370. package/dist/lib/validation-messages.js.map +1 -1
  371. package/dist/style.css +1214 -1
  372. package/dist/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +2 -2
  373. package/dist/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +2 -2
  374. package/package.json +31 -30
  375. package/dist/chunks/_plugin-vue2_normalizer-ZK80B3OL.js +0 -2
  376. package/dist/chunks/_plugin-vue2_normalizer-ZK80B3OL.js.map +0 -1
  377. package/dist/chunks/_plugin-vue2_normalizer-u6G_3nkj.js +0 -33
  378. package/dist/chunks/_plugin-vue2_normalizer-u6G_3nkj.js.map +0 -1
  379. package/dist/chunks/dropdown-zhMEz3bn.js +0 -2
  380. package/dist/chunks/dropdown_constants-EUcDxBrX.js +0 -9
  381. package/dist/chunks/dropdown_constants-EUcDxBrX.js.map +0 -1
  382. package/dist/chunks/dropdown_constants-KHFvVI2L.js +0 -2
  383. package/dist/chunks/dropdown_constants-KHFvVI2L.js.map +0 -1
  384. package/dist/chunks/icon_constants-2S_OSQ1t.js +0 -2
  385. package/dist/chunks/index-2jPosQBn.js +0 -3
  386. package/dist/chunks/index-YkSDT8-g.js +0 -244
  387. package/dist/chunks/index-YkSDT8-g.js.map +0 -1
  388. package/dist/chunks/index-nIyl_PL6.js +0 -372
  389. package/dist/chunks/index-sdfB7Aok.js +0 -2
  390. package/dist/chunks/index-sdfB7Aok.js.map +0 -1
  391. package/dist/chunks/input-o-fc1X4b.js +0 -2
  392. package/dist/chunks/input_group-j2gTtc1C.js +0 -2
  393. package/dist/chunks/keyboard_list_navigation-F0O8nht0.js +0 -197
  394. package/dist/chunks/keyboard_list_navigation-N74Bpdq7.js +0 -2
  395. package/dist/chunks/link_constants-Kn6kP4i1.js +0 -2
  396. package/dist/chunks/link_constants-vIUB92L4.js +0 -16
  397. package/dist/chunks/list_item_constants-LTUc74pD.js +0 -13
  398. package/dist/chunks/list_item_constants-Tsz5CO1m.js +0 -2
  399. package/dist/chunks/modal-VuMFkZFH.js +0 -82
  400. package/dist/chunks/modal-qEzlo0Sj.js +0 -2
  401. package/dist/chunks/notice_action-9NmtQRai.js +0 -182
  402. package/dist/chunks/notice_action-u3ZKIhit.js +0 -2
  403. package/dist/chunks/notice_constants-c--hBFQw.js +0 -6
  404. package/dist/chunks/notice_constants-mC6al2Dm.js +0 -2
  405. package/dist/chunks/popover_constants-hOEhklvr.js +0 -2
  406. package/dist/chunks/popover_constants-qjlEkroB.js +0 -114
  407. package/dist/chunks/sr_only_close_button-ErijKGYR.js +0 -3
  408. package/dist/chunks/sr_only_close_button-JGole5Xi.js +0 -86
  409. package/dist/chunks/stack_constants-m9Ickqw0.js +0 -2
  410. package/dist/chunks/stack_constants-u7tNqGtc.js +0 -13
  411. package/dist/chunks/tab-7hJQSLFx.js +0 -2
  412. package/dist/chunks/tab-Qm9LVkYj.js +0 -346
  413. package/dist/lib/constants.cjs +0 -2
  414. package/dist/lib/dates.cjs +0 -2
  415. package/dist/lib/dates.js +0 -57
  416. package/dist/lib/mixins.cjs +0 -2
  417. package/dist/lib/mixins.js +0 -17
  418. package/dist/lib/utils.cjs +0 -2
  419. package/dist/lib/utils.js +0 -175
  420. package/dist/lib/validators.cjs +0 -2
  421. package/dist/lib/validators.js +0 -12
  422. /package/dist/{lib → common}/mixins.js.map +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"tab-7hJQSLFx.js","sources":["../../components/tabs/tabs_constants.js","../../components/tabs/tab_group.vue","../../components/tabs/tab.vue"],"sourcesContent":["export const TAB_LIST_SIZES = ['default', 'sm'];\n\nexport const TAB_LIST_SIZE_MODIFIERS = {\n sm: 'd-tablist--sm',\n};\n\nexport const TAB_LIST_KIND_MODIFIERS = {\n inverted: 'd-tablist--inverted',\n};\n\nexport const TAB_LIST_IMPORTANCE_MODIFIERS = {\n borderless: 'd-tablist--no-border',\n};\n\nexport const TAB_IMPORTANCE_MODIFIERS = {\n selected: 'd-tab--selected',\n};\n","<template>\n <div\n data-qa=\"dt-tab-group\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->\n <div\n :class=\"[\n 'd-tablist',\n TAB_LIST_SIZE_MODIFIERS[size],\n {\n [TAB_LIST_KIND_MODIFIERS.inverted]: inverted,\n [TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: borderless,\n },\n tabListClass,\n ]\"\n v-bind=\"tabListChildProps\"\n role=\"tablist\"\n :aria-label=\"label\"\n @keyup.left=\"tabLeft\"\n @keyup.right=\"tabRight\"\n @keyup.enter=\"selectTab\"\n @keyup.space=\"selectTab\"\n @keydown.home=\"onHomeButton\"\n @keydown.end=\"onEndButton\"\n >\n <!-- @slot Slot for Tabs -->\n <slot name=\"tabs\" />\n </div>\n <!-- @slot Default slot for Panel -->\n <slot />\n </div>\n</template>\n\n<script>\nimport {\n TAB_LIST_SIZES,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n TAB_LIST_SIZE_MODIFIERS,\n} from './tabs_constants';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTabGroup',\n\n provide () {\n return {\n groupContext: this.provideObj,\n changeContentPanel: this.changeContentPanel,\n setFocus: this.setFocus,\n };\n },\n\n props: {\n /**\n * Identifies the tab group\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * The id of the selected tab panel which should be displayed\n */\n selected: {\n type: String,\n default: '',\n },\n\n /**\n * If true, disables the tab group\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies inverted styles to the tab group\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies borderless styles to the tab group\n * @values true, false\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If provided, applies size styles to the tab group\n * @values default, sm\n */\n size: {\n type: String,\n default: 'default',\n validate (size) {\n return TAB_LIST_SIZES.includes(size);\n },\n },\n\n /**\n * Pass through classes, used to customize the tab list\n */\n tabListClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Pass through props, used to customize the tab list\n */\n tabListChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Change tab event with the arguments: selected id of the current tab and disabled value\n *\n * @event change\n * @type {Object}\n */\n 'change',\n ],\n\n data () {\n return {\n provideObj: {\n selected: '', // the currently displayed tab id\n disabled: false, // disable group\n },\n\n focusId: null,\n tabs: [],\n TAB_LIST_SIZE_MODIFIERS,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n };\n },\n\n watch: {\n disabled: {\n immediate: true,\n handler () {\n this.provideObj.disabled = this.disabled;\n },\n },\n\n selected: {\n immediate: true,\n handler () {\n this.provideObj.selected = this.selected;\n },\n },\n },\n\n mounted () {\n this.updateSelected();\n },\n\n beforeUpdate () {\n this.updateSelected();\n },\n\n methods: {\n updateSelected () {\n /**\n * Prevent override tab selected by default\n */\n if (!this.provideObj.selected) {\n this.provideObj.selected = this.selected;\n }\n this.tabs = this.getTabChildren();\n },\n\n setFocus (focusId) {\n this.focusId = focusId;\n },\n\n getTabChildren () {\n return Array.from(this.$el.querySelectorAll('.d-tab'))\n .map(el => {\n return ({\n context: el,\n panelId: el.getAttribute('aria-controls')?.replace('dt-panel-', ''),\n id: el.getAttribute('id')?.replace('dt-tab-', ''),\n isSelected: el.getAttribute('aria-selected') === 'true',\n });\n });\n },\n\n onChange () {\n this.$emit('change', { ...this.provideObj });\n },\n\n changeContentPanel ({ selected, selectOverride }) {\n this.provideObj.selected = selected;\n if (!selectOverride) {\n this.onChange();\n }\n },\n\n tabLeft () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n tabRight () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n\n const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n selectFocusOnTab (index, tabs) {\n const { context } = tabs[index];\n context.focus();\n },\n\n selectTab () {\n const { tabs, index } = this.getIndexAndTabs();\n this.selectTabByIndex(index, tabs);\n },\n\n selectTabByIndex (index, tabs) {\n const { context, panelId } = tabs[index];\n this.provideObj.selected = panelId;\n context.focus();\n },\n\n getIndexAndTabs () {\n const index = this.tabs.findIndex((context) =>\n this.focusId ? context.id === `${this.focusId}` : context.isSelected);\n return {\n tabs: this.tabs,\n index,\n };\n },\n\n onHomeButton () {\n if (this.tabs.length === 0) return;\n this.tabs[0]?.context?.focus();\n },\n\n onEndButton () {\n if (this.tabs.length === 0) return;\n this.tabs[this.tabs.length - 1]?.context?.focus();\n },\n },\n};\n</script>\n","<template>\n <dt-button\n :id=\"`dt-tab-${id}`\"\n :class=\"[\n 'd-tab',\n {\n [TAB_IMPORTANCE_MODIFIERS.selected]: isSelected,\n },\n tabClass,\n ]\"\n role=\"tab\"\n :aria-selected=\"`${isSelected}`\"\n :aria-controls=\"`dt-panel-${panelId}`\"\n :aria-label=\"label\"\n data-qa=\"dt-tab\"\n :tabindex=\"isSelected ? '0' : '-1'\"\n :disabled=\"groupContext.disabled || disabled\"\n v-bind=\"$attrs\"\n v-on=\"tabListeners\"\n >\n <!-- @slot default slot, defaults contains dt-button -->\n <slot />\n </dt-button>\n</template>\n\n<script>\nimport { TAB_IMPORTANCE_MODIFIERS } from './tabs_constants';\nimport { DtButton } from '../button';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTab',\n components: {\n DtButton,\n },\n\n inject: ['changeContentPanel', 'groupContext', 'setFocus'],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Id of the tab\n */\n id: {\n type: String,\n required: true,\n },\n\n /**\n * Id of the associated content panel\n */\n panelId: {\n type: String,\n required: true,\n },\n\n /**\n * Describes the tab\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Controls the state of the tab\n * @values true, false\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, disables the tab\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Used to customize the tab element\n */\n tabClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n TAB_IMPORTANCE_MODIFIERS,\n };\n },\n\n computed: {\n isSelected () {\n return this.groupContext.selected === this.panelId;\n },\n\n tabListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n this.selectPanel();\n this.$emit('click', event);\n },\n\n focus: event => {\n this.setFocus(this.id);\n this.$emit('focus', event);\n },\n };\n },\n },\n\n mounted () {\n this.setSelectedPanelByDefault();\n },\n\n methods: {\n setSelectedPanelByDefault () {\n if (this.selected) {\n this.selectPanel(true);\n }\n },\n\n selectPanel (selectOverride = false) {\n this.changeContentPanel({\n selected: this.panelId,\n selectOverride,\n });\n },\n },\n};\n</script>\n"],"names":["TAB_LIST_SIZES","TAB_LIST_SIZE_MODIFIERS","TAB_LIST_KIND_MODIFIERS","TAB_LIST_IMPORTANCE_MODIFIERS","TAB_IMPORTANCE_MODIFIERS","_sfc_main","size","focusId","el","_a","_b","selected","selectOverride","index","tabs","indexElement","context","panelId","DtButton","event"],"mappings":"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"}
1
+ {"version":3,"file":"tab-FcsV5VmK.js","sources":["../../components/tabs/tabs_constants.js","../../components/tabs/tab_group.vue","../../components/tabs/tab.vue"],"sourcesContent":["export const TAB_LIST_SIZES = ['default', 'sm'];\n\nexport const TAB_LIST_SIZE_MODIFIERS = {\n sm: 'd-tablist--sm',\n};\n\nexport const TAB_LIST_KIND_MODIFIERS = {\n inverted: 'd-tablist--inverted',\n};\n\nexport const TAB_LIST_IMPORTANCE_MODIFIERS = {\n borderless: 'd-tablist--no-border',\n};\n\nexport const TAB_IMPORTANCE_MODIFIERS = {\n selected: 'd-tab--selected',\n};\n","<template>\n <div\n data-qa=\"dt-tab-group\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->\n <div\n :class=\"[\n 'd-tablist',\n TAB_LIST_SIZE_MODIFIERS[size],\n {\n [TAB_LIST_KIND_MODIFIERS.inverted]: inverted,\n [TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: borderless,\n },\n tabListClass,\n ]\"\n v-bind=\"tabListChildProps\"\n role=\"tablist\"\n :aria-label=\"label\"\n @keyup.left=\"tabLeft\"\n @keyup.right=\"tabRight\"\n @keyup.enter=\"selectTab\"\n @keyup.space=\"selectTab\"\n @keydown.home=\"onHomeButton\"\n @keydown.end=\"onEndButton\"\n >\n <!-- @slot Slot for Tabs -->\n <slot name=\"tabs\" />\n </div>\n <!-- @slot Default slot for Panel -->\n <slot />\n </div>\n</template>\n\n<script>\nimport {\n TAB_LIST_SIZES,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n TAB_LIST_SIZE_MODIFIERS,\n} from './tabs_constants';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTabGroup',\n\n provide () {\n return {\n groupContext: this.provideObj,\n changeContentPanel: this.changeContentPanel,\n setFocus: this.setFocus,\n };\n },\n\n props: {\n /**\n * Identifies the tab group\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * The id of the selected tab panel which should be displayed\n */\n selected: {\n type: String,\n default: '',\n },\n\n /**\n * If true, disables the tab group\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies inverted styles to the tab group\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies borderless styles to the tab group\n * @values true, false\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If provided, applies size styles to the tab group\n * @values default, sm\n */\n size: {\n type: String,\n default: 'default',\n validate (size) {\n return TAB_LIST_SIZES.includes(size);\n },\n },\n\n /**\n * Pass through classes, used to customize the tab list\n */\n tabListClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Pass through props, used to customize the tab list\n */\n tabListChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Change tab event with the arguments: selected id of the current tab and disabled value\n *\n * @event change\n * @type {Object}\n */\n 'change',\n ],\n\n data () {\n return {\n provideObj: {\n selected: '', // the currently displayed tab id\n disabled: false, // disable group\n },\n\n focusId: null,\n tabs: [],\n TAB_LIST_SIZE_MODIFIERS,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n };\n },\n\n watch: {\n disabled: {\n immediate: true,\n handler () {\n this.provideObj.disabled = this.disabled;\n },\n },\n\n selected: {\n immediate: true,\n handler () {\n this.provideObj.selected = this.selected;\n },\n },\n },\n\n mounted () {\n this.updateSelected();\n },\n\n beforeUpdate () {\n this.updateSelected();\n },\n\n methods: {\n updateSelected () {\n /**\n * Prevent override tab selected by default\n */\n if (!this.provideObj.selected) {\n this.provideObj.selected = this.selected;\n }\n this.tabs = this.getTabChildren();\n },\n\n setFocus (focusId) {\n this.focusId = focusId;\n },\n\n getTabChildren () {\n return Array.from(this.$el.querySelectorAll('.d-tab'))\n .map(el => {\n return ({\n context: el,\n panelId: el.getAttribute('aria-controls')?.replace('dt-panel-', ''),\n id: el.getAttribute('id')?.replace('dt-tab-', ''),\n isSelected: el.getAttribute('aria-selected') === 'true',\n });\n });\n },\n\n onChange () {\n this.$emit('change', { ...this.provideObj });\n },\n\n changeContentPanel ({ selected, selectOverride }) {\n this.provideObj.selected = selected;\n if (!selectOverride) {\n this.onChange();\n }\n },\n\n tabLeft () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n tabRight () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n\n const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n selectFocusOnTab (index, tabs) {\n const { context } = tabs[index];\n context.focus();\n },\n\n selectTab () {\n const { tabs, index } = this.getIndexAndTabs();\n this.selectTabByIndex(index, tabs);\n },\n\n selectTabByIndex (index, tabs) {\n const { context, panelId } = tabs[index];\n this.provideObj.selected = panelId;\n context.focus();\n },\n\n getIndexAndTabs () {\n const index = this.tabs.findIndex((context) =>\n this.focusId ? context.id === `${this.focusId}` : context.isSelected);\n return {\n tabs: this.tabs,\n index,\n };\n },\n\n onHomeButton () {\n if (this.tabs.length === 0) return;\n this.tabs[0]?.context?.focus();\n },\n\n onEndButton () {\n if (this.tabs.length === 0) return;\n this.tabs[this.tabs.length - 1]?.context?.focus();\n },\n },\n};\n</script>\n","<template>\n <dt-button\n :id=\"`dt-tab-${id}`\"\n :class=\"[\n 'd-tab',\n {\n [TAB_IMPORTANCE_MODIFIERS.selected]: isSelected,\n },\n tabClass,\n ]\"\n role=\"tab\"\n :aria-selected=\"`${isSelected}`\"\n :aria-controls=\"`dt-panel-${panelId}`\"\n :aria-label=\"label\"\n data-qa=\"dt-tab\"\n :tabindex=\"isSelected ? '0' : '-1'\"\n :disabled=\"groupContext.disabled || disabled\"\n v-bind=\"$attrs\"\n v-on=\"tabListeners\"\n >\n <!-- @slot default slot, defaults contains dt-button -->\n <slot />\n </dt-button>\n</template>\n\n<script>\nimport { TAB_IMPORTANCE_MODIFIERS } from './tabs_constants';\nimport { DtButton } from '../button';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTab',\n components: {\n DtButton,\n },\n\n inject: ['changeContentPanel', 'groupContext', 'setFocus'],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Id of the tab\n */\n id: {\n type: String,\n required: true,\n },\n\n /**\n * Id of the associated content panel\n */\n panelId: {\n type: String,\n required: true,\n },\n\n /**\n * Describes the tab\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Controls the state of the tab\n * @values true, false\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, disables the tab\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Used to customize the tab element\n */\n tabClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n TAB_IMPORTANCE_MODIFIERS,\n };\n },\n\n computed: {\n isSelected () {\n return this.groupContext.selected === this.panelId;\n },\n\n tabListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n this.selectPanel();\n this.$emit('click', event);\n },\n\n focus: event => {\n this.setFocus(this.id);\n this.$emit('focus', event);\n },\n };\n },\n },\n\n mounted () {\n this.setSelectedPanelByDefault();\n },\n\n methods: {\n setSelectedPanelByDefault () {\n if (this.selected) {\n this.selectPanel(true);\n }\n },\n\n selectPanel (selectOverride = false) {\n this.changeContentPanel({\n selected: this.panelId,\n selectOverride,\n });\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton"],"mappings":"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"}
@@ -0,0 +1,387 @@
1
+ import { normalizeComponent } from "./_plugin-vue2_normalizer-sOSkiPF3.js";
2
+ import { DtButton } from "../lib/button.js";
3
+ const TAB_LIST_SIZES = ["default", "sm"];
4
+ const TAB_LIST_SIZE_MODIFIERS = {
5
+ sm: "d-tablist--sm"
6
+ };
7
+ const TAB_LIST_KIND_MODIFIERS = {
8
+ inverted: "d-tablist--inverted"
9
+ };
10
+ const TAB_LIST_IMPORTANCE_MODIFIERS = {
11
+ borderless: "d-tablist--no-border"
12
+ };
13
+ const TAB_IMPORTANCE_MODIFIERS = {
14
+ selected: "d-tab--selected"
15
+ };
16
+ const _sfc_main$1 = {
17
+ name: "DtTabGroup",
18
+ provide() {
19
+ return {
20
+ groupContext: this.provideObj,
21
+ changeContentPanel: this.changeContentPanel,
22
+ setFocus: this.setFocus
23
+ };
24
+ },
25
+ props: {
26
+ /**
27
+ * Identifies the tab group
28
+ */
29
+ label: {
30
+ type: String,
31
+ default: ""
32
+ },
33
+ /**
34
+ * The id of the selected tab panel which should be displayed
35
+ */
36
+ selected: {
37
+ type: String,
38
+ default: ""
39
+ },
40
+ /**
41
+ * If true, disables the tab group
42
+ * @values true, false
43
+ */
44
+ disabled: {
45
+ type: Boolean,
46
+ default: false
47
+ },
48
+ /**
49
+ * If true, applies inverted styles to the tab group
50
+ * @values true, false
51
+ */
52
+ inverted: {
53
+ type: Boolean,
54
+ default: false
55
+ },
56
+ /**
57
+ * If true, applies borderless styles to the tab group
58
+ * @values true, false
59
+ */
60
+ borderless: {
61
+ type: Boolean,
62
+ default: false
63
+ },
64
+ /**
65
+ * If provided, applies size styles to the tab group
66
+ * @values default, sm
67
+ */
68
+ size: {
69
+ type: String,
70
+ default: "default",
71
+ validate(size) {
72
+ return TAB_LIST_SIZES.includes(size);
73
+ }
74
+ },
75
+ /**
76
+ * Pass through classes, used to customize the tab list
77
+ */
78
+ tabListClass: {
79
+ type: [String, Array, Object],
80
+ default: ""
81
+ },
82
+ /**
83
+ * Pass through props, used to customize the tab list
84
+ */
85
+ tabListChildProps: {
86
+ type: Object,
87
+ default: () => ({})
88
+ }
89
+ },
90
+ emits: [
91
+ /**
92
+ * Change tab event with the arguments: selected id of the current tab and disabled value
93
+ *
94
+ * @event change
95
+ * @type {Object}
96
+ */
97
+ "change"
98
+ ],
99
+ data() {
100
+ return {
101
+ provideObj: {
102
+ selected: "",
103
+ // the currently displayed tab id
104
+ disabled: false
105
+ // disable group
106
+ },
107
+ focusId: null,
108
+ tabs: [],
109
+ TAB_LIST_SIZE_MODIFIERS,
110
+ TAB_LIST_KIND_MODIFIERS,
111
+ TAB_LIST_IMPORTANCE_MODIFIERS
112
+ };
113
+ },
114
+ watch: {
115
+ disabled: {
116
+ immediate: true,
117
+ handler() {
118
+ this.provideObj.disabled = this.disabled;
119
+ }
120
+ },
121
+ selected: {
122
+ immediate: true,
123
+ handler() {
124
+ this.provideObj.selected = this.selected;
125
+ }
126
+ }
127
+ },
128
+ mounted() {
129
+ this.updateSelected();
130
+ },
131
+ beforeUpdate() {
132
+ this.updateSelected();
133
+ },
134
+ methods: {
135
+ updateSelected() {
136
+ if (!this.provideObj.selected) {
137
+ this.provideObj.selected = this.selected;
138
+ }
139
+ this.tabs = this.getTabChildren();
140
+ },
141
+ setFocus(focusId) {
142
+ this.focusId = focusId;
143
+ },
144
+ getTabChildren() {
145
+ return Array.from(this.$el.querySelectorAll(".d-tab")).map((el) => {
146
+ var _a, _b;
147
+ return {
148
+ context: el,
149
+ panelId: (_a = el.getAttribute("aria-controls")) == null ? void 0 : _a.replace("dt-panel-", ""),
150
+ id: (_b = el.getAttribute("id")) == null ? void 0 : _b.replace("dt-tab-", ""),
151
+ isSelected: el.getAttribute("aria-selected") === "true"
152
+ };
153
+ });
154
+ },
155
+ onChange() {
156
+ this.$emit("change", { ...this.provideObj });
157
+ },
158
+ changeContentPanel({ selected, selectOverride }) {
159
+ this.provideObj.selected = selected;
160
+ if (!selectOverride) {
161
+ this.onChange();
162
+ }
163
+ },
164
+ tabLeft() {
165
+ const { index, tabs } = this.getIndexAndTabs();
166
+ if (index === -1)
167
+ return;
168
+ const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;
169
+ this.selectFocusOnTab(indexElement, tabs);
170
+ },
171
+ tabRight() {
172
+ const { index, tabs } = this.getIndexAndTabs();
173
+ if (index === -1)
174
+ return;
175
+ const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;
176
+ this.selectFocusOnTab(indexElement, tabs);
177
+ },
178
+ selectFocusOnTab(index, tabs) {
179
+ const { context } = tabs[index];
180
+ context.focus();
181
+ },
182
+ selectTab() {
183
+ const { tabs, index } = this.getIndexAndTabs();
184
+ this.selectTabByIndex(index, tabs);
185
+ },
186
+ selectTabByIndex(index, tabs) {
187
+ const { context, panelId } = tabs[index];
188
+ this.provideObj.selected = panelId;
189
+ context.focus();
190
+ },
191
+ getIndexAndTabs() {
192
+ const index = this.tabs.findIndex((context) => this.focusId ? context.id === `${this.focusId}` : context.isSelected);
193
+ return {
194
+ tabs: this.tabs,
195
+ index
196
+ };
197
+ },
198
+ onHomeButton() {
199
+ var _a, _b;
200
+ if (this.tabs.length === 0)
201
+ return;
202
+ (_b = (_a = this.tabs[0]) == null ? void 0 : _a.context) == null ? void 0 : _b.focus();
203
+ },
204
+ onEndButton() {
205
+ var _a, _b;
206
+ if (this.tabs.length === 0)
207
+ return;
208
+ (_b = (_a = this.tabs[this.tabs.length - 1]) == null ? void 0 : _a.context) == null ? void 0 : _b.focus();
209
+ }
210
+ }
211
+ };
212
+ var _sfc_render$1 = function render() {
213
+ var _vm = this, _c = _vm._self._c;
214
+ return _c("div", { attrs: { "data-qa": "dt-tab-group" } }, [_c("div", _vm._b({ class: [
215
+ "d-tablist",
216
+ _vm.TAB_LIST_SIZE_MODIFIERS[_vm.size],
217
+ {
218
+ [_vm.TAB_LIST_KIND_MODIFIERS.inverted]: _vm.inverted,
219
+ [_vm.TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: _vm.borderless
220
+ },
221
+ _vm.tabListClass
222
+ ], attrs: { "role": "tablist", "aria-label": _vm.label }, on: { "keyup": [function($event) {
223
+ if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "left", 37, $event.key, ["Left", "ArrowLeft"]))
224
+ return null;
225
+ if ("button" in $event && $event.button !== 0)
226
+ return null;
227
+ return _vm.tabLeft.apply(null, arguments);
228
+ }, function($event) {
229
+ if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "right", 39, $event.key, ["Right", "ArrowRight"]))
230
+ return null;
231
+ if ("button" in $event && $event.button !== 2)
232
+ return null;
233
+ return _vm.tabRight.apply(null, arguments);
234
+ }, function($event) {
235
+ if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter"))
236
+ return null;
237
+ return _vm.selectTab.apply(null, arguments);
238
+ }, function($event) {
239
+ if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "space", 32, $event.key, [" ", "Spacebar"]))
240
+ return null;
241
+ return _vm.selectTab.apply(null, arguments);
242
+ }], "keydown": [function($event) {
243
+ if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "home", void 0, $event.key, void 0))
244
+ return null;
245
+ return _vm.onHomeButton.apply(null, arguments);
246
+ }, function($event) {
247
+ if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "end", void 0, $event.key, void 0))
248
+ return null;
249
+ return _vm.onEndButton.apply(null, arguments);
250
+ }] } }, "div", _vm.tabListChildProps, false), [_vm._t("tabs")], 2), _vm._t("default")], 2);
251
+ };
252
+ var _sfc_staticRenderFns$1 = [];
253
+ var __component__$1 = /* @__PURE__ */ normalizeComponent(
254
+ _sfc_main$1,
255
+ _sfc_render$1,
256
+ _sfc_staticRenderFns$1,
257
+ false,
258
+ null,
259
+ null,
260
+ null,
261
+ null
262
+ );
263
+ const DtTabGroup = __component__$1.exports;
264
+ const _sfc_main = {
265
+ name: "DtTab",
266
+ components: {
267
+ DtButton
268
+ },
269
+ inject: ["changeContentPanel", "groupContext", "setFocus"],
270
+ inheritAttrs: false,
271
+ props: {
272
+ /**
273
+ * Id of the tab
274
+ */
275
+ id: {
276
+ type: String,
277
+ required: true
278
+ },
279
+ /**
280
+ * Id of the associated content panel
281
+ */
282
+ panelId: {
283
+ type: String,
284
+ required: true
285
+ },
286
+ /**
287
+ * Describes the tab
288
+ */
289
+ label: {
290
+ type: String,
291
+ default: ""
292
+ },
293
+ /**
294
+ * Controls the state of the tab
295
+ * @values true, false
296
+ */
297
+ selected: {
298
+ type: Boolean,
299
+ default: false
300
+ },
301
+ /**
302
+ * If true, disables the tab
303
+ * @values true, false
304
+ */
305
+ disabled: {
306
+ type: Boolean,
307
+ default: false
308
+ },
309
+ /**
310
+ * Used to customize the tab element
311
+ */
312
+ tabClass: {
313
+ type: [String, Array, Object],
314
+ default: ""
315
+ }
316
+ },
317
+ data() {
318
+ return {
319
+ TAB_IMPORTANCE_MODIFIERS
320
+ };
321
+ },
322
+ computed: {
323
+ isSelected() {
324
+ return this.groupContext.selected === this.panelId;
325
+ },
326
+ tabListeners() {
327
+ return {
328
+ ...this.$listeners,
329
+ click: (event) => {
330
+ this.selectPanel();
331
+ this.$emit("click", event);
332
+ },
333
+ focus: (event) => {
334
+ this.setFocus(this.id);
335
+ this.$emit("focus", event);
336
+ }
337
+ };
338
+ }
339
+ },
340
+ mounted() {
341
+ this.setSelectedPanelByDefault();
342
+ },
343
+ methods: {
344
+ setSelectedPanelByDefault() {
345
+ if (this.selected) {
346
+ this.selectPanel(true);
347
+ }
348
+ },
349
+ selectPanel(selectOverride = false) {
350
+ this.changeContentPanel({
351
+ selected: this.panelId,
352
+ selectOverride
353
+ });
354
+ }
355
+ }
356
+ };
357
+ var _sfc_render = function render2() {
358
+ var _vm = this, _c = _vm._self._c;
359
+ return _c("dt-button", _vm._g(_vm._b({ class: [
360
+ "d-tab",
361
+ {
362
+ [_vm.TAB_IMPORTANCE_MODIFIERS.selected]: _vm.isSelected
363
+ },
364
+ _vm.tabClass
365
+ ], attrs: { "id": `dt-tab-${_vm.id}`, "role": "tab", "aria-selected": `${_vm.isSelected}`, "aria-controls": `dt-panel-${_vm.panelId}`, "aria-label": _vm.label, "data-qa": "dt-tab", "tabindex": _vm.isSelected ? "0" : "-1", "disabled": _vm.groupContext.disabled || _vm.disabled } }, "dt-button", _vm.$attrs, false), _vm.tabListeners), [_vm._t("default")], 2);
366
+ };
367
+ var _sfc_staticRenderFns = [];
368
+ var __component__ = /* @__PURE__ */ normalizeComponent(
369
+ _sfc_main,
370
+ _sfc_render,
371
+ _sfc_staticRenderFns,
372
+ false,
373
+ null,
374
+ null,
375
+ null,
376
+ null
377
+ );
378
+ const DtTab = __component__.exports;
379
+ export {
380
+ DtTab,
381
+ DtTabGroup,
382
+ TAB_IMPORTANCE_MODIFIERS,
383
+ TAB_LIST_IMPORTANCE_MODIFIERS,
384
+ TAB_LIST_KIND_MODIFIERS,
385
+ TAB_LIST_SIZES
386
+ };
387
+ //# sourceMappingURL=tab-V4cb44Ry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-Qm9LVkYj.js","sources":["../../components/tabs/tabs_constants.js","../../components/tabs/tab_group.vue","../../components/tabs/tab.vue"],"sourcesContent":["export const TAB_LIST_SIZES = ['default', 'sm'];\n\nexport const TAB_LIST_SIZE_MODIFIERS = {\n sm: 'd-tablist--sm',\n};\n\nexport const TAB_LIST_KIND_MODIFIERS = {\n inverted: 'd-tablist--inverted',\n};\n\nexport const TAB_LIST_IMPORTANCE_MODIFIERS = {\n borderless: 'd-tablist--no-border',\n};\n\nexport const TAB_IMPORTANCE_MODIFIERS = {\n selected: 'd-tab--selected',\n};\n","<template>\n <div\n data-qa=\"dt-tab-group\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->\n <div\n :class=\"[\n 'd-tablist',\n TAB_LIST_SIZE_MODIFIERS[size],\n {\n [TAB_LIST_KIND_MODIFIERS.inverted]: inverted,\n [TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: borderless,\n },\n tabListClass,\n ]\"\n v-bind=\"tabListChildProps\"\n role=\"tablist\"\n :aria-label=\"label\"\n @keyup.left=\"tabLeft\"\n @keyup.right=\"tabRight\"\n @keyup.enter=\"selectTab\"\n @keyup.space=\"selectTab\"\n @keydown.home=\"onHomeButton\"\n @keydown.end=\"onEndButton\"\n >\n <!-- @slot Slot for Tabs -->\n <slot name=\"tabs\" />\n </div>\n <!-- @slot Default slot for Panel -->\n <slot />\n </div>\n</template>\n\n<script>\nimport {\n TAB_LIST_SIZES,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n TAB_LIST_SIZE_MODIFIERS,\n} from './tabs_constants';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTabGroup',\n\n provide () {\n return {\n groupContext: this.provideObj,\n changeContentPanel: this.changeContentPanel,\n setFocus: this.setFocus,\n };\n },\n\n props: {\n /**\n * Identifies the tab group\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * The id of the selected tab panel which should be displayed\n */\n selected: {\n type: String,\n default: '',\n },\n\n /**\n * If true, disables the tab group\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies inverted styles to the tab group\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies borderless styles to the tab group\n * @values true, false\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If provided, applies size styles to the tab group\n * @values default, sm\n */\n size: {\n type: String,\n default: 'default',\n validate (size) {\n return TAB_LIST_SIZES.includes(size);\n },\n },\n\n /**\n * Pass through classes, used to customize the tab list\n */\n tabListClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Pass through props, used to customize the tab list\n */\n tabListChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Change tab event with the arguments: selected id of the current tab and disabled value\n *\n * @event change\n * @type {Object}\n */\n 'change',\n ],\n\n data () {\n return {\n provideObj: {\n selected: '', // the currently displayed tab id\n disabled: false, // disable group\n },\n\n focusId: null,\n tabs: [],\n TAB_LIST_SIZE_MODIFIERS,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n };\n },\n\n watch: {\n disabled: {\n immediate: true,\n handler () {\n this.provideObj.disabled = this.disabled;\n },\n },\n\n selected: {\n immediate: true,\n handler () {\n this.provideObj.selected = this.selected;\n },\n },\n },\n\n mounted () {\n this.updateSelected();\n },\n\n beforeUpdate () {\n this.updateSelected();\n },\n\n methods: {\n updateSelected () {\n /**\n * Prevent override tab selected by default\n */\n if (!this.provideObj.selected) {\n this.provideObj.selected = this.selected;\n }\n this.tabs = this.getTabChildren();\n },\n\n setFocus (focusId) {\n this.focusId = focusId;\n },\n\n getTabChildren () {\n return Array.from(this.$el.querySelectorAll('.d-tab'))\n .map(el => {\n return ({\n context: el,\n panelId: el.getAttribute('aria-controls')?.replace('dt-panel-', ''),\n id: el.getAttribute('id')?.replace('dt-tab-', ''),\n isSelected: el.getAttribute('aria-selected') === 'true',\n });\n });\n },\n\n onChange () {\n this.$emit('change', { ...this.provideObj });\n },\n\n changeContentPanel ({ selected, selectOverride }) {\n this.provideObj.selected = selected;\n if (!selectOverride) {\n this.onChange();\n }\n },\n\n tabLeft () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n tabRight () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n\n const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n selectFocusOnTab (index, tabs) {\n const { context } = tabs[index];\n context.focus();\n },\n\n selectTab () {\n const { tabs, index } = this.getIndexAndTabs();\n this.selectTabByIndex(index, tabs);\n },\n\n selectTabByIndex (index, tabs) {\n const { context, panelId } = tabs[index];\n this.provideObj.selected = panelId;\n context.focus();\n },\n\n getIndexAndTabs () {\n const index = this.tabs.findIndex((context) =>\n this.focusId ? context.id === `${this.focusId}` : context.isSelected);\n return {\n tabs: this.tabs,\n index,\n };\n },\n\n onHomeButton () {\n if (this.tabs.length === 0) return;\n this.tabs[0]?.context?.focus();\n },\n\n onEndButton () {\n if (this.tabs.length === 0) return;\n this.tabs[this.tabs.length - 1]?.context?.focus();\n },\n },\n};\n</script>\n","<template>\n <dt-button\n :id=\"`dt-tab-${id}`\"\n :class=\"[\n 'd-tab',\n {\n [TAB_IMPORTANCE_MODIFIERS.selected]: isSelected,\n },\n tabClass,\n ]\"\n role=\"tab\"\n :aria-selected=\"`${isSelected}`\"\n :aria-controls=\"`dt-panel-${panelId}`\"\n :aria-label=\"label\"\n data-qa=\"dt-tab\"\n :tabindex=\"isSelected ? '0' : '-1'\"\n :disabled=\"groupContext.disabled || disabled\"\n v-bind=\"$attrs\"\n v-on=\"tabListeners\"\n >\n <!-- @slot default slot, defaults contains dt-button -->\n <slot />\n </dt-button>\n</template>\n\n<script>\nimport { TAB_IMPORTANCE_MODIFIERS } from './tabs_constants';\nimport { DtButton } from '../button';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTab',\n components: {\n DtButton,\n },\n\n inject: ['changeContentPanel', 'groupContext', 'setFocus'],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Id of the tab\n */\n id: {\n type: String,\n required: true,\n },\n\n /**\n * Id of the associated content panel\n */\n panelId: {\n type: String,\n required: true,\n },\n\n /**\n * Describes the tab\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Controls the state of the tab\n * @values true, false\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, disables the tab\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Used to customize the tab element\n */\n tabClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n TAB_IMPORTANCE_MODIFIERS,\n };\n },\n\n computed: {\n isSelected () {\n return this.groupContext.selected === this.panelId;\n },\n\n tabListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n this.selectPanel();\n this.$emit('click', event);\n },\n\n focus: event => {\n this.setFocus(this.id);\n this.$emit('focus', event);\n },\n };\n },\n },\n\n mounted () {\n this.setSelectedPanelByDefault();\n },\n\n methods: {\n setSelectedPanelByDefault () {\n if (this.selected) {\n this.selectPanel(true);\n }\n },\n\n selectPanel (selectOverride = false) {\n this.changeContentPanel({\n selected: this.panelId,\n selectOverride,\n });\n },\n },\n};\n</script>\n"],"names":["TAB_LIST_SIZES","TAB_LIST_SIZE_MODIFIERS","TAB_LIST_KIND_MODIFIERS","TAB_LIST_IMPORTANCE_MODIFIERS","TAB_IMPORTANCE_MODIFIERS","_sfc_main","size","focusId","el","_a","_b","selected","selectOverride","index","tabs","indexElement","context","panelId","DtButton","event"],"mappings":"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"}
1
+ {"version":3,"file":"tab-V4cb44Ry.js","sources":["../../components/tabs/tabs_constants.js","../../components/tabs/tab_group.vue","../../components/tabs/tab.vue"],"sourcesContent":["export const TAB_LIST_SIZES = ['default', 'sm'];\n\nexport const TAB_LIST_SIZE_MODIFIERS = {\n sm: 'd-tablist--sm',\n};\n\nexport const TAB_LIST_KIND_MODIFIERS = {\n inverted: 'd-tablist--inverted',\n};\n\nexport const TAB_LIST_IMPORTANCE_MODIFIERS = {\n borderless: 'd-tablist--no-border',\n};\n\nexport const TAB_IMPORTANCE_MODIFIERS = {\n selected: 'd-tab--selected',\n};\n","<template>\n <div\n data-qa=\"dt-tab-group\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->\n <div\n :class=\"[\n 'd-tablist',\n TAB_LIST_SIZE_MODIFIERS[size],\n {\n [TAB_LIST_KIND_MODIFIERS.inverted]: inverted,\n [TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: borderless,\n },\n tabListClass,\n ]\"\n v-bind=\"tabListChildProps\"\n role=\"tablist\"\n :aria-label=\"label\"\n @keyup.left=\"tabLeft\"\n @keyup.right=\"tabRight\"\n @keyup.enter=\"selectTab\"\n @keyup.space=\"selectTab\"\n @keydown.home=\"onHomeButton\"\n @keydown.end=\"onEndButton\"\n >\n <!-- @slot Slot for Tabs -->\n <slot name=\"tabs\" />\n </div>\n <!-- @slot Default slot for Panel -->\n <slot />\n </div>\n</template>\n\n<script>\nimport {\n TAB_LIST_SIZES,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n TAB_LIST_SIZE_MODIFIERS,\n} from './tabs_constants';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTabGroup',\n\n provide () {\n return {\n groupContext: this.provideObj,\n changeContentPanel: this.changeContentPanel,\n setFocus: this.setFocus,\n };\n },\n\n props: {\n /**\n * Identifies the tab group\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * The id of the selected tab panel which should be displayed\n */\n selected: {\n type: String,\n default: '',\n },\n\n /**\n * If true, disables the tab group\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies inverted styles to the tab group\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies borderless styles to the tab group\n * @values true, false\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If provided, applies size styles to the tab group\n * @values default, sm\n */\n size: {\n type: String,\n default: 'default',\n validate (size) {\n return TAB_LIST_SIZES.includes(size);\n },\n },\n\n /**\n * Pass through classes, used to customize the tab list\n */\n tabListClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Pass through props, used to customize the tab list\n */\n tabListChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Change tab event with the arguments: selected id of the current tab and disabled value\n *\n * @event change\n * @type {Object}\n */\n 'change',\n ],\n\n data () {\n return {\n provideObj: {\n selected: '', // the currently displayed tab id\n disabled: false, // disable group\n },\n\n focusId: null,\n tabs: [],\n TAB_LIST_SIZE_MODIFIERS,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n };\n },\n\n watch: {\n disabled: {\n immediate: true,\n handler () {\n this.provideObj.disabled = this.disabled;\n },\n },\n\n selected: {\n immediate: true,\n handler () {\n this.provideObj.selected = this.selected;\n },\n },\n },\n\n mounted () {\n this.updateSelected();\n },\n\n beforeUpdate () {\n this.updateSelected();\n },\n\n methods: {\n updateSelected () {\n /**\n * Prevent override tab selected by default\n */\n if (!this.provideObj.selected) {\n this.provideObj.selected = this.selected;\n }\n this.tabs = this.getTabChildren();\n },\n\n setFocus (focusId) {\n this.focusId = focusId;\n },\n\n getTabChildren () {\n return Array.from(this.$el.querySelectorAll('.d-tab'))\n .map(el => {\n return ({\n context: el,\n panelId: el.getAttribute('aria-controls')?.replace('dt-panel-', ''),\n id: el.getAttribute('id')?.replace('dt-tab-', ''),\n isSelected: el.getAttribute('aria-selected') === 'true',\n });\n });\n },\n\n onChange () {\n this.$emit('change', { ...this.provideObj });\n },\n\n changeContentPanel ({ selected, selectOverride }) {\n this.provideObj.selected = selected;\n if (!selectOverride) {\n this.onChange();\n }\n },\n\n tabLeft () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n tabRight () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n\n const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n selectFocusOnTab (index, tabs) {\n const { context } = tabs[index];\n context.focus();\n },\n\n selectTab () {\n const { tabs, index } = this.getIndexAndTabs();\n this.selectTabByIndex(index, tabs);\n },\n\n selectTabByIndex (index, tabs) {\n const { context, panelId } = tabs[index];\n this.provideObj.selected = panelId;\n context.focus();\n },\n\n getIndexAndTabs () {\n const index = this.tabs.findIndex((context) =>\n this.focusId ? context.id === `${this.focusId}` : context.isSelected);\n return {\n tabs: this.tabs,\n index,\n };\n },\n\n onHomeButton () {\n if (this.tabs.length === 0) return;\n this.tabs[0]?.context?.focus();\n },\n\n onEndButton () {\n if (this.tabs.length === 0) return;\n this.tabs[this.tabs.length - 1]?.context?.focus();\n },\n },\n};\n</script>\n","<template>\n <dt-button\n :id=\"`dt-tab-${id}`\"\n :class=\"[\n 'd-tab',\n {\n [TAB_IMPORTANCE_MODIFIERS.selected]: isSelected,\n },\n tabClass,\n ]\"\n role=\"tab\"\n :aria-selected=\"`${isSelected}`\"\n :aria-controls=\"`dt-panel-${panelId}`\"\n :aria-label=\"label\"\n data-qa=\"dt-tab\"\n :tabindex=\"isSelected ? '0' : '-1'\"\n :disabled=\"groupContext.disabled || disabled\"\n v-bind=\"$attrs\"\n v-on=\"tabListeners\"\n >\n <!-- @slot default slot, defaults contains dt-button -->\n <slot />\n </dt-button>\n</template>\n\n<script>\nimport { TAB_IMPORTANCE_MODIFIERS } from './tabs_constants';\nimport { DtButton } from '../button';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTab',\n components: {\n DtButton,\n },\n\n inject: ['changeContentPanel', 'groupContext', 'setFocus'],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Id of the tab\n */\n id: {\n type: String,\n required: true,\n },\n\n /**\n * Id of the associated content panel\n */\n panelId: {\n type: String,\n required: true,\n },\n\n /**\n * Describes the tab\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Controls the state of the tab\n * @values true, false\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, disables the tab\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Used to customize the tab element\n */\n tabClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n TAB_IMPORTANCE_MODIFIERS,\n };\n },\n\n computed: {\n isSelected () {\n return this.groupContext.selected === this.panelId;\n },\n\n tabListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n this.selectPanel();\n this.$emit('click', event);\n },\n\n focus: event => {\n this.setFocus(this.id);\n this.$emit('focus', event);\n },\n };\n },\n },\n\n mounted () {\n this.setSelectedPanelByDefault();\n },\n\n methods: {\n setSelectedPanelByDefault () {\n if (this.selected) {\n this.selectPanel(true);\n }\n },\n\n selectPanel (selectOverride = false) {\n this.changeContentPanel({\n selected: this.panelId,\n selectOverride,\n });\n },\n },\n};\n</script>\n"],"names":["_sfc_main"],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const VALIDATION_MESSAGE_TYPES = {
4
+ ERROR: "error",
5
+ WARNING: "warning",
6
+ SUCCESS: "success"
7
+ };
8
+ const DESCRIPTION_SIZE_TYPES = {
9
+ LARGE: "lg",
10
+ EXTRA_LARGE: "xl"
11
+ };
12
+ const DESCRIPTION_SIZE_MODIFIERS = {
13
+ xs: "",
14
+ sm: "",
15
+ md: "",
16
+ lg: "d-description--lg",
17
+ xl: "d-description--xl"
18
+ };
19
+ const LABEL_SIZE_MODIFIERS = {
20
+ xs: "d-label--xs",
21
+ sm: "d-label--sm",
22
+ md: "",
23
+ lg: "d-label--lg",
24
+ xl: "d-label--xl"
25
+ };
26
+ const EVENT_KEYNAMES = {
27
+ esc: "Esc",
28
+ escape: "Escape",
29
+ tab: "Tab",
30
+ enter: "Enter",
31
+ space: "Space",
32
+ spacebar: "Spacebar",
33
+ up: "Up",
34
+ arrowup: "ArrowUp",
35
+ left: "Left",
36
+ arrowleft: "ArrowLeft",
37
+ right: "Right",
38
+ arrowright: "ArrowRight",
39
+ down: "Down",
40
+ arrowdown: "ArrowDown",
41
+ home: "Home",
42
+ end: "End"
43
+ };
44
+ const DEFAULT_VALIDATION_MESSAGE_TYPE = VALIDATION_MESSAGE_TYPES.ERROR;
45
+ const DEFAULT_PREFIX = "dt";
46
+ const index = {
47
+ VALIDATION_MESSAGE_TYPES,
48
+ DESCRIPTION_SIZE_TYPES,
49
+ DEFAULT_VALIDATION_MESSAGE_TYPE,
50
+ DEFAULT_PREFIX
51
+ };
52
+ exports.DEFAULT_PREFIX = DEFAULT_PREFIX;
53
+ exports.DEFAULT_VALIDATION_MESSAGE_TYPE = DEFAULT_VALIDATION_MESSAGE_TYPE;
54
+ exports.DESCRIPTION_SIZE_MODIFIERS = DESCRIPTION_SIZE_MODIFIERS;
55
+ exports.DESCRIPTION_SIZE_TYPES = DESCRIPTION_SIZE_TYPES;
56
+ exports.EVENT_KEYNAMES = EVENT_KEYNAMES;
57
+ exports.LABEL_SIZE_MODIFIERS = LABEL_SIZE_MODIFIERS;
58
+ exports.VALIDATION_MESSAGE_TYPES = VALIDATION_MESSAGE_TYPES;
59
+ exports.default = index;
60
+ //# sourceMappingURL=constants.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.cjs","sources":["../../common/constants/index.js"],"sourcesContent":["/* TODO: Move and sort these in a constants directory\n\nExample:\n constants/\n forms.js\n defaults.js\n ...\n*/\n\n// Types of messages, also dictates what is the current state of the input.\nexport const VALIDATION_MESSAGE_TYPES = {\n ERROR: 'error',\n WARNING: 'warning',\n SUCCESS: 'success',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_TYPES = {\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_MODIFIERS = {\n xs: '',\n sm: '',\n md: '',\n lg: 'd-description--lg',\n xl: 'd-description--xl',\n};\n\n// Label size variants\nexport const LABEL_SIZE_MODIFIERS = {\n xs: 'd-label--xs',\n sm: 'd-label--sm',\n md: '',\n lg: 'd-label--lg',\n xl: 'd-label--xl',\n};\n\nexport const EVENT_KEYNAMES = {\n esc: 'Esc',\n escape: 'Escape',\n tab: 'Tab',\n enter: 'Enter',\n space: 'Space',\n spacebar: 'Spacebar',\n up: 'Up',\n arrowup: 'ArrowUp',\n left: 'Left',\n arrowleft: 'ArrowLeft',\n right: 'Right',\n arrowright: 'ArrowRight',\n down: 'Down',\n arrowdown: 'ArrowDown',\n home: 'Home',\n end: 'End',\n};\n\n/*\n * Any string message or message object in the messages prop that do not specify\n * a 'type' attributes will default to 'DEFAULT_MESSAGE_TYPE'.\n */\nexport const DEFAULT_VALIDATION_MESSAGE_TYPE = VALIDATION_MESSAGE_TYPES.ERROR;\n\n// Default prefix used for ids\nexport const DEFAULT_PREFIX = 'dt';\n\nexport default {\n VALIDATION_MESSAGE_TYPES,\n DESCRIPTION_SIZE_TYPES,\n DEFAULT_VALIDATION_MESSAGE_TYPE,\n DEFAULT_PREFIX,\n};\n"],"names":["VALIDATION_MESSAGE_TYPES","DESCRIPTION_SIZE_TYPES","DESCRIPTION_SIZE_MODIFIERS","LABEL_SIZE_MODIFIERS","EVENT_KEYNAMES","DEFAULT_VALIDATION_MESSAGE_TYPE","DEFAULT_PREFIX","index"],"mappings":"4GAUY,MAACA,EAA2B,CACtC,MAAO,QACP,QAAS,UACT,QAAS,SACX,EAGaC,EAAyB,CACpC,MAAO,KACP,YAAa,IACf,EAGaC,EAA6B,CACxC,GAAI,GACJ,GAAI,GACJ,GAAI,GACJ,GAAI,oBACJ,GAAI,mBACN,EAGaC,EAAuB,CAClC,GAAI,cACJ,GAAI,cACJ,GAAI,GACJ,GAAI,cACJ,GAAI,aACN,EAEaC,EAAiB,CAC5B,IAAK,MACL,OAAQ,SACR,IAAK,MACL,MAAO,QACP,MAAO,QACP,SAAU,WACV,GAAI,KACJ,QAAS,UACT,KAAM,OACN,UAAW,YACX,MAAO,QACP,WAAY,aACZ,KAAM,OACN,UAAW,YACX,KAAM,OACN,IAAK,KACP,EAMaC,EAAkCL,EAAyB,MAG3DM,EAAiB,KAEfC,EAAA,CACb,yBAAAP,EACA,uBAAAC,EACA,gCAAAI,EACA,eAAAC,CACF"}
1
+ {"version":3,"file":"constants.cjs","sources":["../../common/constants/index.js"],"sourcesContent":["/* TODO: Move and sort these in a constants directory\n\nExample:\n constants/\n forms.js\n defaults.js\n ...\n*/\n\n// Types of messages, also dictates what is the current state of the input.\nexport const VALIDATION_MESSAGE_TYPES = {\n ERROR: 'error',\n WARNING: 'warning',\n SUCCESS: 'success',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_TYPES = {\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_MODIFIERS = {\n xs: '',\n sm: '',\n md: '',\n lg: 'd-description--lg',\n xl: 'd-description--xl',\n};\n\n// Label size variants\nexport const LABEL_SIZE_MODIFIERS = {\n xs: 'd-label--xs',\n sm: 'd-label--sm',\n md: '',\n lg: 'd-label--lg',\n xl: 'd-label--xl',\n};\n\nexport const EVENT_KEYNAMES = {\n esc: 'Esc',\n escape: 'Escape',\n tab: 'Tab',\n enter: 'Enter',\n space: 'Space',\n spacebar: 'Spacebar',\n up: 'Up',\n arrowup: 'ArrowUp',\n left: 'Left',\n arrowleft: 'ArrowLeft',\n right: 'Right',\n arrowright: 'ArrowRight',\n down: 'Down',\n arrowdown: 'ArrowDown',\n home: 'Home',\n end: 'End',\n};\n\n/*\n * Any string message or message object in the messages prop that do not specify\n * a 'type' attributes will default to 'DEFAULT_MESSAGE_TYPE'.\n */\nexport const DEFAULT_VALIDATION_MESSAGE_TYPE = VALIDATION_MESSAGE_TYPES.ERROR;\n\n// Default prefix used for ids\nexport const DEFAULT_PREFIX = 'dt';\n\nexport default {\n VALIDATION_MESSAGE_TYPES,\n DESCRIPTION_SIZE_TYPES,\n DEFAULT_VALIDATION_MESSAGE_TYPE,\n DEFAULT_PREFIX,\n};\n"],"names":[],"mappings":";;AAUY,MAAC,2BAA2B;AAAA,EACtC,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AACX;AAGY,MAAC,yBAAyB;AAAA,EACpC,OAAO;AAAA,EACP,aAAa;AACf;AAGY,MAAC,6BAA6B;AAAA,EACxC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAGY,MAAC,uBAAuB;AAAA,EAClC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEY,MAAC,iBAAiB;AAAA,EAC5B,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,KAAK;AAAA,EACL,OAAO;AAAA,EACP,OAAO;AAAA,EACP,UAAU;AAAA,EACV,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,MAAM;AAAA,EACN,WAAW;AAAA,EACX,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,WAAW;AAAA,EACX,MAAM;AAAA,EACN,KAAK;AACP;AAMY,MAAC,kCAAkC,yBAAyB;AAG5D,MAAC,iBAAiB;AAE9B,MAAe,QAAA;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;;;;;;;"}
@@ -1,23 +1,27 @@
1
- const E = {
1
+ const VALIDATION_MESSAGE_TYPES = {
2
2
  ERROR: "error",
3
3
  WARNING: "warning",
4
4
  SUCCESS: "success"
5
- }, e = {
5
+ };
6
+ const DESCRIPTION_SIZE_TYPES = {
6
7
  LARGE: "lg",
7
8
  EXTRA_LARGE: "xl"
8
- }, s = {
9
+ };
10
+ const DESCRIPTION_SIZE_MODIFIERS = {
9
11
  xs: "",
10
12
  sm: "",
11
13
  md: "",
12
14
  lg: "d-description--lg",
13
15
  xl: "d-description--xl"
14
- }, t = {
16
+ };
17
+ const LABEL_SIZE_MODIFIERS = {
15
18
  xs: "d-label--xs",
16
19
  sm: "d-label--sm",
17
20
  md: "",
18
21
  lg: "d-label--lg",
19
22
  xl: "d-label--xl"
20
- }, a = {
23
+ };
24
+ const EVENT_KEYNAMES = {
21
25
  esc: "Esc",
22
26
  escape: "Escape",
23
27
  tab: "Tab",
@@ -34,20 +38,23 @@ const E = {
34
38
  arrowdown: "ArrowDown",
35
39
  home: "Home",
36
40
  end: "End"
37
- }, r = E.ERROR, o = "dt", l = {
38
- VALIDATION_MESSAGE_TYPES: E,
39
- DESCRIPTION_SIZE_TYPES: e,
40
- DEFAULT_VALIDATION_MESSAGE_TYPE: r,
41
- DEFAULT_PREFIX: o
41
+ };
42
+ const DEFAULT_VALIDATION_MESSAGE_TYPE = VALIDATION_MESSAGE_TYPES.ERROR;
43
+ const DEFAULT_PREFIX = "dt";
44
+ const index = {
45
+ VALIDATION_MESSAGE_TYPES,
46
+ DESCRIPTION_SIZE_TYPES,
47
+ DEFAULT_VALIDATION_MESSAGE_TYPE,
48
+ DEFAULT_PREFIX
42
49
  };
43
50
  export {
44
- o as DEFAULT_PREFIX,
45
- r as DEFAULT_VALIDATION_MESSAGE_TYPE,
46
- s as DESCRIPTION_SIZE_MODIFIERS,
47
- e as DESCRIPTION_SIZE_TYPES,
48
- a as EVENT_KEYNAMES,
49
- t as LABEL_SIZE_MODIFIERS,
50
- E as VALIDATION_MESSAGE_TYPES,
51
- l as default
51
+ DEFAULT_PREFIX,
52
+ DEFAULT_VALIDATION_MESSAGE_TYPE,
53
+ DESCRIPTION_SIZE_MODIFIERS,
54
+ DESCRIPTION_SIZE_TYPES,
55
+ EVENT_KEYNAMES,
56
+ LABEL_SIZE_MODIFIERS,
57
+ VALIDATION_MESSAGE_TYPES,
58
+ index as default
52
59
  };
53
60
  //# sourceMappingURL=constants.js.map