@dialpad/dialtone 9.66.0 → 9.67.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 (801) hide show
  1. package/README.md +17 -0
  2. package/dist/tokens/doc.json +13063 -13063
  3. package/dist/vue2/chunks/{dropdown-YdCyJ5Dq.js → dropdown-6UoczdUY.js} +41 -77
  4. package/dist/vue2/chunks/{dropdown-YdCyJ5Dq.js.map → dropdown-6UoczdUY.js.map} +1 -1
  5. package/dist/vue2/chunks/{dropdown-mjrYu_mK.js → dropdown-pHxnQPzT.js} +41 -77
  6. package/dist/vue2/chunks/{dropdown-mjrYu_mK.js.map → dropdown-pHxnQPzT.js.map} +1 -1
  7. package/dist/vue2/chunks/dropdown_constants-2pGCXy7m.js.map +1 -1
  8. package/dist/vue2/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -1
  9. package/dist/vue2/chunks/{icon_constants-TdxqLsS2.js → icon_constants-Dy4MEUJL.js} +2 -3
  10. package/dist/vue2/chunks/icon_constants-Dy4MEUJL.js.map +1 -0
  11. package/dist/vue2/chunks/{icon_constants-VEA0wI5C.js → icon_constants-QYpmdE0R.js} +2 -3
  12. package/dist/vue2/chunks/icon_constants-QYpmdE0R.js.map +1 -0
  13. package/dist/vue2/chunks/{index-i65YVk-U.js → index-ODod4Oj_.js} +13 -5
  14. package/dist/vue2/chunks/{index-i65YVk-U.js.map → index-ODod4Oj_.js.map} +1 -1
  15. package/dist/vue2/chunks/{index-NYFNZeHH.js → index-anN_sx1F.js} +13 -5
  16. package/dist/vue2/chunks/{index-NYFNZeHH.js.map → index-anN_sx1F.js.map} +1 -1
  17. package/dist/vue2/chunks/{index-mBWay1Qb.js → index-eJ-WWRdf.js} +87 -122
  18. package/dist/vue2/chunks/{index-mBWay1Qb.js.map → index-eJ-WWRdf.js.map} +1 -1
  19. package/dist/vue2/chunks/{index-DyqUqjvI.js → index-gj1jEXP4.js} +87 -122
  20. package/dist/vue2/chunks/{index-DyqUqjvI.js.map → index-gj1jEXP4.js.map} +1 -1
  21. package/dist/vue2/chunks/{input-PhJeBN6r.js → input-6kbd8Pju.js} +9 -3
  22. package/dist/vue2/chunks/{input-PhJeBN6r.js.map → input-6kbd8Pju.js.map} +1 -1
  23. package/dist/vue2/chunks/{input-Hqw33WBe.js → input-Axw-wFj2.js} +9 -3
  24. package/dist/vue2/chunks/{input-Hqw33WBe.js.map → input-Axw-wFj2.js.map} +1 -1
  25. package/dist/vue2/chunks/{input_group-pE6ec9R3.js → input_group-m3cWYUfI.js} +2 -4
  26. package/dist/vue2/chunks/{input_group-ZI7aVGEp.js.map → input_group-m3cWYUfI.js.map} +1 -1
  27. package/dist/vue2/chunks/{input_group-ZI7aVGEp.js → input_group-qVZaS5Bb.js} +2 -4
  28. package/dist/vue2/chunks/{input_group-pE6ec9R3.js.map → input_group-qVZaS5Bb.js.map} +1 -1
  29. package/dist/vue2/chunks/{keyboard_list_navigation-YIqTuw1W.js → keyboard_list_navigation-ScXhrxya.js} +5 -6
  30. package/dist/{vue3/chunks/keyboard_list_navigation-x3D6RcC7.js.map → vue2/chunks/keyboard_list_navigation-ScXhrxya.js.map} +1 -1
  31. package/dist/vue2/chunks/{keyboard_list_navigation-x3D6RcC7.js → keyboard_list_navigation-fJnl_Iox.js} +5 -6
  32. package/dist/{vue3/chunks/keyboard_list_navigation-YIqTuw1W.js.map → vue2/chunks/keyboard_list_navigation-fJnl_Iox.js.map} +1 -1
  33. package/dist/vue2/chunks/link_constants-AfTWrr-n.js.map +1 -1
  34. package/dist/vue2/chunks/link_constants-x8NwdqmA.js.map +1 -1
  35. package/dist/vue2/chunks/list_item_constants-EiqkqZvP.js.map +1 -1
  36. package/dist/vue2/chunks/list_item_constants-u1xcN9Dd.js.map +1 -1
  37. package/dist/vue2/chunks/{modal-OaWxzqNt.js → modal-VgxXAQFP.js} +2 -4
  38. package/dist/vue2/chunks/{modal-OaWxzqNt.js.map → modal-VgxXAQFP.js.map} +1 -1
  39. package/dist/vue2/chunks/{modal-8X6poIZW.js → modal-XOr4kiNZ.js} +2 -4
  40. package/dist/{vue3/chunks/modal-OaWxzqNt.js.map → vue2/chunks/modal-XOr4kiNZ.js.map} +1 -1
  41. package/dist/vue2/chunks/{notice_action-qQr3K2TC.js → notice_action-IRUoLX2d.js} +46 -71
  42. package/dist/vue2/chunks/{notice_action-qQr3K2TC.js.map → notice_action-IRUoLX2d.js.map} +1 -1
  43. package/dist/vue2/chunks/{notice_action-tEvvMg7Q.js → notice_action-P6uDyE9x.js} +46 -71
  44. package/dist/vue2/chunks/{notice_action-tEvvMg7Q.js.map → notice_action-P6uDyE9x.js.map} +1 -1
  45. package/dist/vue2/chunks/notice_constants-7Qt2CQEY.js.map +1 -1
  46. package/dist/vue2/chunks/notice_constants-UXo9e3bS.js.map +1 -1
  47. package/dist/vue2/chunks/{popover_constants-6YkPPbnk.js → popover_constants-WsOUIY-m.js} +47 -26
  48. package/dist/{vue3/chunks/popover_constants-6YkPPbnk.js.map → vue2/chunks/popover_constants-WsOUIY-m.js.map} +1 -1
  49. package/dist/{vue3/chunks/popover_constants-h9MD6WUt.js → vue2/chunks/popover_constants-XnGWXaxX.js} +47 -26
  50. package/dist/vue2/chunks/{popover_constants-6YkPPbnk.js.map → popover_constants-XnGWXaxX.js.map} +1 -1
  51. package/dist/vue2/chunks/{sr_only_close_button-IjMVfBDE.js → sr_only_close_button-81bHIpPu.js} +18 -24
  52. package/dist/vue2/chunks/{sr_only_close_button-IjMVfBDE.js.map → sr_only_close_button-81bHIpPu.js.map} +1 -1
  53. package/dist/vue2/chunks/{sr_only_close_button-2Q9Ny1Nc.js → sr_only_close_button-ZaGdAHz7.js} +18 -24
  54. package/dist/vue2/chunks/{sr_only_close_button-2Q9Ny1Nc.js.map → sr_only_close_button-ZaGdAHz7.js.map} +1 -1
  55. package/dist/vue2/chunks/stack_constants-HraCekPm.js.map +1 -1
  56. package/dist/vue2/chunks/stack_constants-SMzMWnAQ.js.map +1 -1
  57. package/dist/vue2/chunks/{tab-79yMX6m6.js → tab-FcsV5VmK.js} +68 -86
  58. package/dist/vue2/chunks/{tab-muPOS7JE.js.map → tab-FcsV5VmK.js.map} +1 -1
  59. package/dist/vue2/chunks/{tab-muPOS7JE.js → tab-V4cb44Ry.js} +68 -86
  60. package/dist/vue2/chunks/{tab-79yMX6m6.js.map → tab-V4cb44Ry.js.map} +1 -1
  61. package/dist/vue2/common/constants.cjs.map +1 -1
  62. package/dist/vue2/common/constants.js.map +1 -1
  63. package/dist/vue2/common/dates.cjs +1 -3
  64. package/dist/vue2/common/dates.cjs.map +1 -1
  65. package/dist/vue2/common/dates.js +1 -3
  66. package/dist/vue2/common/dates.js.map +1 -1
  67. package/dist/vue2/common/emoji.cjs +1 -1
  68. package/dist/vue2/common/emoji.js +1 -1
  69. package/dist/vue2/common/mixins.cjs +3 -3
  70. package/dist/vue2/common/mixins.js +3 -3
  71. package/dist/vue2/common/utils.cjs +44 -8
  72. package/dist/vue2/common/utils.cjs.map +1 -1
  73. package/dist/vue2/common/utils.js +44 -8
  74. package/dist/vue2/common/utils.js.map +1 -1
  75. package/dist/vue2/common/validators.cjs.map +1 -1
  76. package/dist/vue2/common/validators.js.map +1 -1
  77. package/dist/vue2/component-documentation.json +1 -1
  78. package/dist/vue2/dialtone-vue.cjs +12 -12
  79. package/dist/vue2/dialtone-vue.js +12 -12
  80. package/dist/vue2/lib/attachment-carousel.cjs +48 -172
  81. package/dist/vue2/lib/attachment-carousel.cjs.map +1 -1
  82. package/dist/vue2/lib/attachment-carousel.js +48 -172
  83. package/dist/vue2/lib/attachment-carousel.js.map +1 -1
  84. package/dist/vue2/lib/avatar.cjs +58 -75
  85. package/dist/vue2/lib/avatar.cjs.map +1 -1
  86. package/dist/vue2/lib/avatar.js +58 -75
  87. package/dist/vue2/lib/avatar.js.map +1 -1
  88. package/dist/vue2/lib/badge.cjs +20 -31
  89. package/dist/vue2/lib/badge.cjs.map +1 -1
  90. package/dist/vue2/lib/badge.js +20 -31
  91. package/dist/vue2/lib/badge.js.map +1 -1
  92. package/dist/vue2/lib/banner.cjs +29 -53
  93. package/dist/vue2/lib/banner.cjs.map +1 -1
  94. package/dist/vue2/lib/banner.js +29 -53
  95. package/dist/vue2/lib/banner.js.map +1 -1
  96. package/dist/vue2/lib/breadcrumbs.cjs +30 -36
  97. package/dist/vue2/lib/breadcrumbs.cjs.map +1 -1
  98. package/dist/vue2/lib/breadcrumbs.js +30 -36
  99. package/dist/vue2/lib/breadcrumbs.js.map +1 -1
  100. package/dist/vue2/lib/button-group.cjs +14 -7
  101. package/dist/vue2/lib/button-group.cjs.map +1 -1
  102. package/dist/vue2/lib/button-group.js +14 -7
  103. package/dist/vue2/lib/button-group.js.map +1 -1
  104. package/dist/vue2/lib/button.cjs +62 -55
  105. package/dist/vue2/lib/button.cjs.map +1 -1
  106. package/dist/vue2/lib/button.js +62 -55
  107. package/dist/vue2/lib/button.js.map +1 -1
  108. package/dist/vue2/lib/callbar-button-with-popover.cjs +23 -91
  109. package/dist/vue2/lib/callbar-button-with-popover.cjs.map +1 -1
  110. package/dist/vue2/lib/callbar-button-with-popover.js +23 -91
  111. package/dist/vue2/lib/callbar-button-with-popover.js.map +1 -1
  112. package/dist/vue2/lib/callbar-button.cjs +33 -49
  113. package/dist/vue2/lib/callbar-button.cjs.map +1 -1
  114. package/dist/vue2/lib/callbar-button.js +33 -49
  115. package/dist/vue2/lib/callbar-button.js.map +1 -1
  116. package/dist/vue2/lib/callbox.cjs +15 -78
  117. package/dist/vue2/lib/callbox.cjs.map +1 -1
  118. package/dist/vue2/lib/callbox.js +15 -78
  119. package/dist/vue2/lib/callbox.js.map +1 -1
  120. package/dist/vue2/lib/card.cjs +23 -16
  121. package/dist/vue2/lib/card.cjs.map +1 -1
  122. package/dist/vue2/lib/card.js +23 -16
  123. package/dist/vue2/lib/card.js.map +1 -1
  124. package/dist/vue2/lib/checkbox-group.cjs +15 -3
  125. package/dist/vue2/lib/checkbox-group.cjs.map +1 -1
  126. package/dist/vue2/lib/checkbox-group.js +15 -3
  127. package/dist/vue2/lib/checkbox-group.js.map +1 -1
  128. package/dist/vue2/lib/checkbox.cjs +16 -52
  129. package/dist/vue2/lib/checkbox.cjs.map +1 -1
  130. package/dist/vue2/lib/checkbox.js +16 -52
  131. package/dist/vue2/lib/checkbox.js.map +1 -1
  132. package/dist/vue2/lib/chip.cjs +26 -58
  133. package/dist/vue2/lib/chip.cjs.map +1 -1
  134. package/dist/vue2/lib/chip.js +26 -58
  135. package/dist/vue2/lib/chip.js.map +1 -1
  136. package/dist/vue2/lib/codeblock.cjs +11 -4
  137. package/dist/vue2/lib/codeblock.cjs.map +1 -1
  138. package/dist/vue2/lib/codeblock.js +11 -4
  139. package/dist/vue2/lib/codeblock.js.map +1 -1
  140. package/dist/vue2/lib/collapsible.cjs +34 -91
  141. package/dist/vue2/lib/collapsible.cjs.map +1 -1
  142. package/dist/vue2/lib/collapsible.js +34 -91
  143. package/dist/vue2/lib/collapsible.js.map +1 -1
  144. package/dist/vue2/lib/combobox-multi-select.cjs +38 -131
  145. package/dist/vue2/lib/combobox-multi-select.cjs.map +1 -1
  146. package/dist/vue2/lib/combobox-multi-select.js +38 -131
  147. package/dist/vue2/lib/combobox-multi-select.js.map +1 -1
  148. package/dist/vue2/lib/combobox-with-popover.cjs +39 -130
  149. package/dist/vue2/lib/combobox-with-popover.cjs.map +1 -1
  150. package/dist/vue2/lib/combobox-with-popover.js +39 -130
  151. package/dist/vue2/lib/combobox-with-popover.js.map +1 -1
  152. package/dist/vue2/lib/combobox.cjs +3 -3
  153. package/dist/vue2/lib/combobox.js +3 -3
  154. package/dist/vue2/lib/contact-centers-row.cjs +29 -86
  155. package/dist/vue2/lib/contact-centers-row.cjs.map +1 -1
  156. package/dist/vue2/lib/contact-centers-row.js +29 -86
  157. package/dist/vue2/lib/contact-centers-row.js.map +1 -1
  158. package/dist/vue2/lib/contact-info.cjs +31 -95
  159. package/dist/vue2/lib/contact-info.cjs.map +1 -1
  160. package/dist/vue2/lib/contact-info.js +31 -95
  161. package/dist/vue2/lib/contact-info.js.map +1 -1
  162. package/dist/vue2/lib/contact-row.cjs +18 -61
  163. package/dist/vue2/lib/contact-row.cjs.map +1 -1
  164. package/dist/vue2/lib/contact-row.js +18 -61
  165. package/dist/vue2/lib/contact-row.js.map +1 -1
  166. package/dist/vue2/lib/datepicker.cjs +102 -361
  167. package/dist/vue2/lib/datepicker.cjs.map +1 -1
  168. package/dist/vue2/lib/datepicker.js +102 -361
  169. package/dist/vue2/lib/datepicker.js.map +1 -1
  170. package/dist/vue2/lib/description-list.cjs +12 -11
  171. package/dist/vue2/lib/description-list.cjs.map +1 -1
  172. package/dist/vue2/lib/description-list.js +12 -11
  173. package/dist/vue2/lib/description-list.js.map +1 -1
  174. package/dist/vue2/lib/dropdown.cjs +17 -13
  175. package/dist/vue2/lib/dropdown.cjs.map +1 -1
  176. package/dist/vue2/lib/dropdown.js +17 -13
  177. package/dist/vue2/lib/dropdown.js.map +1 -1
  178. package/dist/vue2/lib/editor.cjs +109 -409
  179. package/dist/vue2/lib/editor.cjs.map +1 -1
  180. package/dist/vue2/lib/editor.js +109 -409
  181. package/dist/vue2/lib/editor.js.map +1 -1
  182. package/dist/vue2/lib/emoji-picker.cjs +234 -512
  183. package/dist/vue2/lib/emoji-picker.cjs.map +1 -1
  184. package/dist/vue2/lib/emoji-picker.js +234 -512
  185. package/dist/vue2/lib/emoji-picker.js.map +1 -1
  186. package/dist/vue2/lib/emoji-row.cjs +31 -69
  187. package/dist/vue2/lib/emoji-row.cjs.map +1 -1
  188. package/dist/vue2/lib/emoji-row.js +31 -69
  189. package/dist/vue2/lib/emoji-row.js.map +1 -1
  190. package/dist/vue2/lib/emoji-text-wrapper.cjs +22 -14
  191. package/dist/vue2/lib/emoji-text-wrapper.cjs.map +1 -1
  192. package/dist/vue2/lib/emoji-text-wrapper.js +22 -14
  193. package/dist/vue2/lib/emoji-text-wrapper.js.map +1 -1
  194. package/dist/vue2/lib/emoji.cjs +13 -40
  195. package/dist/vue2/lib/emoji.cjs.map +1 -1
  196. package/dist/vue2/lib/emoji.js +13 -40
  197. package/dist/vue2/lib/emoji.js.map +1 -1
  198. package/dist/vue2/lib/empty-state.cjs +12 -27
  199. package/dist/vue2/lib/empty-state.cjs.map +1 -1
  200. package/dist/vue2/lib/empty-state.js +12 -27
  201. package/dist/vue2/lib/empty-state.js.map +1 -1
  202. package/dist/vue2/lib/feed-item-row.cjs +27 -106
  203. package/dist/vue2/lib/feed-item-row.cjs.map +1 -1
  204. package/dist/vue2/lib/feed-item-row.js +27 -106
  205. package/dist/vue2/lib/feed-item-row.js.map +1 -1
  206. package/dist/vue2/lib/feed-pill.cjs +35 -90
  207. package/dist/vue2/lib/feed-pill.cjs.map +1 -1
  208. package/dist/vue2/lib/feed-pill.js +35 -90
  209. package/dist/vue2/lib/feed-pill.js.map +1 -1
  210. package/dist/vue2/lib/general-row.cjs +75 -184
  211. package/dist/vue2/lib/general-row.cjs.map +1 -1
  212. package/dist/vue2/lib/general-row.js +75 -184
  213. package/dist/vue2/lib/general-row.js.map +1 -1
  214. package/dist/vue2/lib/group-row.cjs +16 -27
  215. package/dist/vue2/lib/group-row.cjs.map +1 -1
  216. package/dist/vue2/lib/group-row.js +16 -27
  217. package/dist/vue2/lib/group-row.js.map +1 -1
  218. package/dist/vue2/lib/grouped-chip.cjs +20 -68
  219. package/dist/vue2/lib/grouped-chip.cjs.map +1 -1
  220. package/dist/vue2/lib/grouped-chip.js +20 -68
  221. package/dist/vue2/lib/grouped-chip.js.map +1 -1
  222. package/dist/vue2/lib/hovercard.cjs +41 -71
  223. package/dist/vue2/lib/hovercard.cjs.map +1 -1
  224. package/dist/vue2/lib/hovercard.js +41 -71
  225. package/dist/vue2/lib/hovercard.js.map +1 -1
  226. package/dist/vue2/lib/icon.cjs +12 -10
  227. package/dist/vue2/lib/icon.cjs.map +1 -1
  228. package/dist/vue2/lib/icon.js +12 -10
  229. package/dist/vue2/lib/icon.js.map +1 -1
  230. package/dist/vue2/lib/illustration.cjs +12 -9
  231. package/dist/vue2/lib/illustration.cjs.map +1 -1
  232. package/dist/vue2/lib/illustration.js +12 -9
  233. package/dist/vue2/lib/illustration.js.map +1 -1
  234. package/dist/vue2/lib/image-viewer.cjs +23 -88
  235. package/dist/vue2/lib/image-viewer.cjs.map +1 -1
  236. package/dist/vue2/lib/image-viewer.js +23 -88
  237. package/dist/vue2/lib/image-viewer.js.map +1 -1
  238. package/dist/vue2/lib/input-group.cjs +14 -24
  239. package/dist/vue2/lib/input-group.cjs.map +1 -1
  240. package/dist/vue2/lib/input-group.js +14 -24
  241. package/dist/vue2/lib/input-group.js.map +1 -1
  242. package/dist/vue2/lib/input.cjs +47 -109
  243. package/dist/vue2/lib/input.cjs.map +1 -1
  244. package/dist/vue2/lib/input.js +47 -109
  245. package/dist/vue2/lib/input.js.map +1 -1
  246. package/dist/vue2/lib/item-layout.cjs +11 -42
  247. package/dist/vue2/lib/item-layout.cjs.map +1 -1
  248. package/dist/vue2/lib/item-layout.js +11 -42
  249. package/dist/vue2/lib/item-layout.js.map +1 -1
  250. package/dist/vue2/lib/ivr-node.cjs +47 -135
  251. package/dist/vue2/lib/ivr-node.cjs.map +1 -1
  252. package/dist/vue2/lib/ivr-node.js +47 -135
  253. package/dist/vue2/lib/ivr-node.js.map +1 -1
  254. package/dist/vue2/lib/keyboard-shortcut.cjs +23 -35
  255. package/dist/vue2/lib/keyboard-shortcut.cjs.map +1 -1
  256. package/dist/vue2/lib/keyboard-shortcut.js +23 -35
  257. package/dist/vue2/lib/keyboard-shortcut.js.map +1 -1
  258. package/dist/vue2/lib/lazy-show.cjs +11 -15
  259. package/dist/vue2/lib/lazy-show.cjs.map +1 -1
  260. package/dist/vue2/lib/lazy-show.js +11 -15
  261. package/dist/vue2/lib/lazy-show.js.map +1 -1
  262. package/dist/vue2/lib/link.cjs +15 -9
  263. package/dist/vue2/lib/link.cjs.map +1 -1
  264. package/dist/vue2/lib/link.js +15 -9
  265. package/dist/vue2/lib/link.js.map +1 -1
  266. package/dist/vue2/lib/list-item-group.cjs +11 -17
  267. package/dist/vue2/lib/list-item-group.cjs.map +1 -1
  268. package/dist/vue2/lib/list-item-group.js +11 -17
  269. package/dist/vue2/lib/list-item-group.js.map +1 -1
  270. package/dist/vue2/lib/list-item.cjs +23 -42
  271. package/dist/vue2/lib/list-item.cjs.map +1 -1
  272. package/dist/vue2/lib/list-item.js +23 -42
  273. package/dist/vue2/lib/list-item.js.map +1 -1
  274. package/dist/vue2/lib/message-input.cjs +97 -360
  275. package/dist/vue2/lib/message-input.cjs.map +1 -1
  276. package/dist/vue2/lib/message-input.js +97 -360
  277. package/dist/vue2/lib/message-input.js.map +1 -1
  278. package/dist/vue2/lib/modal.cjs +36 -94
  279. package/dist/vue2/lib/modal.cjs.map +1 -1
  280. package/dist/vue2/lib/modal.js +36 -94
  281. package/dist/vue2/lib/modal.js.map +1 -1
  282. package/dist/vue2/lib/notice.cjs +21 -40
  283. package/dist/vue2/lib/notice.cjs.map +1 -1
  284. package/dist/vue2/lib/notice.js +21 -40
  285. package/dist/vue2/lib/notice.js.map +1 -1
  286. package/dist/vue2/lib/pagination.cjs +20 -81
  287. package/dist/vue2/lib/pagination.cjs.map +1 -1
  288. package/dist/vue2/lib/pagination.js +20 -81
  289. package/dist/vue2/lib/pagination.js.map +1 -1
  290. package/dist/vue2/lib/popover.cjs +75 -194
  291. package/dist/vue2/lib/popover.cjs.map +1 -1
  292. package/dist/vue2/lib/popover.js +76 -195
  293. package/dist/vue2/lib/popover.js.map +1 -1
  294. package/dist/vue2/lib/presence.cjs +22 -23
  295. package/dist/vue2/lib/presence.cjs.map +1 -1
  296. package/dist/vue2/lib/presence.js +22 -23
  297. package/dist/vue2/lib/presence.js.map +1 -1
  298. package/dist/vue2/lib/radio-group.cjs +11 -2
  299. package/dist/vue2/lib/radio-group.cjs.map +1 -1
  300. package/dist/vue2/lib/radio-group.js +11 -2
  301. package/dist/vue2/lib/radio-group.js.map +1 -1
  302. package/dist/vue2/lib/radio.cjs +15 -47
  303. package/dist/vue2/lib/radio.cjs.map +1 -1
  304. package/dist/vue2/lib/radio.js +15 -47
  305. package/dist/vue2/lib/radio.js.map +1 -1
  306. package/dist/vue2/lib/rich-text-editor.cjs +317 -336
  307. package/dist/vue2/lib/rich-text-editor.cjs.map +1 -1
  308. package/dist/vue2/lib/rich-text-editor.js +317 -336
  309. package/dist/vue2/lib/rich-text-editor.js.map +1 -1
  310. package/dist/vue2/lib/root-layout.cjs +15 -33
  311. package/dist/vue2/lib/root-layout.cjs.map +1 -1
  312. package/dist/vue2/lib/root-layout.js +15 -33
  313. package/dist/vue2/lib/root-layout.js.map +1 -1
  314. package/dist/vue2/lib/scrollbar-directive.cjs +422 -388
  315. package/dist/vue2/lib/scrollbar-directive.cjs.map +1 -1
  316. package/dist/vue2/lib/scrollbar-directive.js +422 -388
  317. package/dist/vue2/lib/scrollbar-directive.js.map +1 -1
  318. package/dist/vue2/lib/select-menu.cjs +33 -52
  319. package/dist/vue2/lib/select-menu.cjs.map +1 -1
  320. package/dist/vue2/lib/select-menu.js +33 -52
  321. package/dist/vue2/lib/select-menu.js.map +1 -1
  322. package/dist/vue2/lib/settings-menu-button.cjs +16 -42
  323. package/dist/vue2/lib/settings-menu-button.cjs.map +1 -1
  324. package/dist/vue2/lib/settings-menu-button.js +16 -42
  325. package/dist/vue2/lib/settings-menu-button.js.map +1 -1
  326. package/dist/vue2/lib/skeleton.cjs +93 -118
  327. package/dist/vue2/lib/skeleton.cjs.map +1 -1
  328. package/dist/vue2/lib/skeleton.js +93 -118
  329. package/dist/vue2/lib/skeleton.js.map +1 -1
  330. package/dist/vue2/lib/split-button.cjs +64 -164
  331. package/dist/vue2/lib/split-button.cjs.map +1 -1
  332. package/dist/vue2/lib/split-button.js +64 -164
  333. package/dist/vue2/lib/split-button.js.map +1 -1
  334. package/dist/vue2/lib/stack.cjs +33 -21
  335. package/dist/vue2/lib/stack.cjs.map +1 -1
  336. package/dist/vue2/lib/stack.js +33 -21
  337. package/dist/vue2/lib/stack.js.map +1 -1
  338. package/dist/vue2/lib/tabs.cjs +13 -20
  339. package/dist/vue2/lib/tabs.cjs.map +1 -1
  340. package/dist/vue2/lib/tabs.js +13 -20
  341. package/dist/vue2/lib/tabs.js.map +1 -1
  342. package/dist/vue2/lib/time-pill.cjs +11 -8
  343. package/dist/vue2/lib/time-pill.cjs.map +1 -1
  344. package/dist/vue2/lib/time-pill.js +11 -8
  345. package/dist/vue2/lib/time-pill.js.map +1 -1
  346. package/dist/vue2/lib/toast.cjs +21 -42
  347. package/dist/vue2/lib/toast.cjs.map +1 -1
  348. package/dist/vue2/lib/toast.js +21 -42
  349. package/dist/vue2/lib/toast.js.map +1 -1
  350. package/dist/vue2/lib/toggle.cjs +24 -28
  351. package/dist/vue2/lib/toggle.cjs.map +1 -1
  352. package/dist/vue2/lib/toggle.js +24 -28
  353. package/dist/vue2/lib/toggle.js.map +1 -1
  354. package/dist/vue2/lib/tooltip-directive.cjs +26 -32
  355. package/dist/vue2/lib/tooltip-directive.cjs.map +1 -1
  356. package/dist/vue2/lib/tooltip-directive.js +26 -32
  357. package/dist/vue2/lib/tooltip-directive.js.map +1 -1
  358. package/dist/vue2/lib/tooltip.cjs +21 -31
  359. package/dist/vue2/lib/tooltip.cjs.map +1 -1
  360. package/dist/vue2/lib/tooltip.js +22 -32
  361. package/dist/vue2/lib/tooltip.js.map +1 -1
  362. package/dist/vue2/lib/top-banner-info.cjs +21 -18
  363. package/dist/vue2/lib/top-banner-info.cjs.map +1 -1
  364. package/dist/vue2/lib/top-banner-info.js +21 -18
  365. package/dist/vue2/lib/top-banner-info.js.map +1 -1
  366. package/dist/vue2/lib/unread-pill.cjs +12 -18
  367. package/dist/vue2/lib/unread-pill.cjs.map +1 -1
  368. package/dist/vue2/lib/unread-pill.js +12 -18
  369. package/dist/vue2/lib/unread-pill.js.map +1 -1
  370. package/dist/vue2/lib/validation-messages.cjs +16 -23
  371. package/dist/vue2/lib/validation-messages.cjs.map +1 -1
  372. package/dist/vue2/lib/validation-messages.js +16 -23
  373. package/dist/vue2/lib/validation-messages.js.map +1 -1
  374. package/dist/vue2/style.css +9 -9
  375. package/dist/vue2/types/common/emoji/index.d.ts +59236 -2
  376. package/dist/vue2/types/common/emoji/index.d.ts.map +1 -1
  377. package/dist/vue2/types/components/button/button.vue.d.ts +1 -1
  378. package/dist/vue2/types/components/chip/chip.vue.d.ts +1 -1
  379. package/dist/vue2/types/components/combobox/combobox.vue.d.ts +1 -1
  380. package/dist/vue2/types/components/icon/icon.vue.d.ts +2 -2
  381. package/dist/vue2/types/components/icon/icon_constants.d.ts +1 -1
  382. package/dist/vue2/types/components/icon/icon_constants.d.ts.map +1 -1
  383. package/dist/vue2/types/components/illustration/illustration.vue.d.ts +2 -2
  384. package/dist/vue2/types/components/illustration/illustration_constants.d.ts +1 -1
  385. package/dist/vue2/types/components/illustration/illustration_constants.d.ts.map +1 -1
  386. package/dist/vue2/types/components/input/input.vue.d.ts +3 -2
  387. package/dist/vue2/types/components/input/input.vue.d.ts.map +1 -1
  388. package/dist/vue2/types/components/modal/modal.vue.d.ts +1 -1
  389. package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts +1 -1
  390. package/dist/vue2/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
  391. package/dist/vue2/types/components/toast/toast.vue.d.ts +1 -1
  392. package/dist/vue2/types/components/tooltip/tooltip.vue.d.ts +1 -1
  393. package/dist/vue2/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +1 -1
  394. package/dist/vue2/types/recipes/conversation_view/editor/editor.vue.d.ts +1 -1
  395. package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  396. package/dist/vue2/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +15 -0
  397. package/dist/vue2/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
  398. package/dist/vue3/chunks/{dropdown-6HXkh24e.js → dropdown-oA-_Gotg.js} +45 -40
  399. package/dist/vue3/chunks/{dropdown-6HXkh24e.js.map → dropdown-oA-_Gotg.js.map} +1 -1
  400. package/dist/vue3/chunks/{dropdown-QNvAb160.js → dropdown-p-Azgwov.js} +45 -40
  401. package/dist/vue3/chunks/{dropdown-QNvAb160.js.map → dropdown-p-Azgwov.js.map} +1 -1
  402. package/dist/vue3/chunks/dropdown_constants-2pGCXy7m.js.map +1 -1
  403. package/dist/vue3/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -1
  404. package/dist/vue3/chunks/{icon_constants-gIQj4mf7.js → icon_constants-Dy4MEUJL.js} +2 -3
  405. package/dist/vue3/chunks/icon_constants-Dy4MEUJL.js.map +1 -0
  406. package/dist/vue3/chunks/{icon_constants-bvhFNOPu.js → icon_constants-QYpmdE0R.js} +2 -3
  407. package/dist/vue3/chunks/icon_constants-QYpmdE0R.js.map +1 -0
  408. package/dist/vue3/chunks/{index-ouh7Bvm-.js → index-4qgKeErp.js} +84 -71
  409. package/dist/vue3/chunks/{index-T15rAIdX.js.map → index-4qgKeErp.js.map} +1 -1
  410. package/dist/vue3/chunks/{index-dfdrE-3M.js → index-GVD15GIB.js} +12 -3
  411. package/dist/vue3/chunks/{index-dfdrE-3M.js.map → index-GVD15GIB.js.map} +1 -1
  412. package/dist/vue3/chunks/{index-T15rAIdX.js → index-b_MgDylR.js} +84 -71
  413. package/dist/vue3/chunks/{index-ouh7Bvm-.js.map → index-b_MgDylR.js.map} +1 -1
  414. package/dist/vue3/chunks/{index-fEp0B-5Z.js → index-lu2o2f4r.js} +12 -3
  415. package/dist/vue3/chunks/{index-fEp0B-5Z.js.map → index-lu2o2f4r.js.map} +1 -1
  416. package/dist/vue3/chunks/{input-HIysg24t.js → input-NmYDD5bn.js} +9 -3
  417. package/dist/vue3/chunks/{input-HIysg24t.js.map → input-NmYDD5bn.js.map} +1 -1
  418. package/dist/vue3/chunks/{input-dLLo3Wtg.js → input-ttnte8zB.js} +9 -3
  419. package/dist/vue3/chunks/{input-dLLo3Wtg.js.map → input-ttnte8zB.js.map} +1 -1
  420. package/dist/vue3/chunks/{input_group-rE6nhye8.js → input_group-M-D25pOJ.js} +2 -4
  421. package/dist/vue3/chunks/{input_group-hV1WT2it.js.map → input_group-M-D25pOJ.js.map} +1 -1
  422. package/dist/vue3/chunks/{input_group-hV1WT2it.js → input_group-jWnq2DJT.js} +2 -4
  423. package/dist/vue3/chunks/{input_group-rE6nhye8.js.map → input_group-jWnq2DJT.js.map} +1 -1
  424. package/dist/vue3/chunks/{keyboard_list_navigation-YIqTuw1W.js → keyboard_list_navigation-ScXhrxya.js} +5 -6
  425. package/dist/{vue2/chunks/keyboard_list_navigation-x3D6RcC7.js.map → vue3/chunks/keyboard_list_navigation-ScXhrxya.js.map} +1 -1
  426. package/dist/vue3/chunks/{keyboard_list_navigation-x3D6RcC7.js → keyboard_list_navigation-fJnl_Iox.js} +5 -6
  427. package/dist/{vue2/chunks/keyboard_list_navigation-YIqTuw1W.js.map → vue3/chunks/keyboard_list_navigation-fJnl_Iox.js.map} +1 -1
  428. package/dist/vue3/chunks/link_constants-AfTWrr-n.js.map +1 -1
  429. package/dist/vue3/chunks/link_constants-x8NwdqmA.js.map +1 -1
  430. package/dist/vue3/chunks/list_item_constants-EiqkqZvP.js.map +1 -1
  431. package/dist/vue3/chunks/list_item_constants-u1xcN9Dd.js.map +1 -1
  432. package/dist/vue3/chunks/{modal-OaWxzqNt.js → modal-VgxXAQFP.js} +2 -4
  433. package/dist/{vue2/chunks/modal-8X6poIZW.js.map → vue3/chunks/modal-VgxXAQFP.js.map} +1 -1
  434. package/dist/vue3/chunks/{modal-8X6poIZW.js → modal-XOr4kiNZ.js} +2 -4
  435. package/dist/vue3/chunks/{modal-8X6poIZW.js.map → modal-XOr4kiNZ.js.map} +1 -1
  436. package/dist/vue3/chunks/{notice_action-3ed0uIMN.js → notice_action-WTucGhvr.js} +61 -40
  437. package/dist/vue3/chunks/{notice_action-e08Lw5W6.js.map → notice_action-WTucGhvr.js.map} +1 -1
  438. package/dist/vue3/chunks/{notice_action-e08Lw5W6.js → notice_action-p-ePanW_.js} +61 -40
  439. package/dist/vue3/chunks/{notice_action-3ed0uIMN.js.map → notice_action-p-ePanW_.js.map} +1 -1
  440. package/dist/vue3/chunks/notice_constants-7Qt2CQEY.js.map +1 -1
  441. package/dist/vue3/chunks/notice_constants-UXo9e3bS.js.map +1 -1
  442. package/dist/vue3/chunks/{popover_constants-6YkPPbnk.js → popover_constants-WsOUIY-m.js} +47 -26
  443. package/dist/vue3/chunks/{popover_constants-h9MD6WUt.js.map → popover_constants-WsOUIY-m.js.map} +1 -1
  444. package/dist/{vue2/chunks/popover_constants-h9MD6WUt.js → vue3/chunks/popover_constants-XnGWXaxX.js} +47 -26
  445. package/dist/{vue2/chunks/popover_constants-h9MD6WUt.js.map → vue3/chunks/popover_constants-XnGWXaxX.js.map} +1 -1
  446. package/dist/vue3/chunks/{sr_only_close_button-Ji3Zlts6.js → sr_only_close_button-3EdsV-dH.js} +4 -4
  447. package/dist/vue3/chunks/{sr_only_close_button-Ji3Zlts6.js.map → sr_only_close_button-3EdsV-dH.js.map} +1 -1
  448. package/dist/vue3/chunks/{sr_only_close_button-gKr0Vlbz.js → sr_only_close_button-xGrHFjwA.js} +4 -4
  449. package/dist/vue3/chunks/{sr_only_close_button-gKr0Vlbz.js.map → sr_only_close_button-xGrHFjwA.js.map} +1 -1
  450. package/dist/vue3/chunks/stack_constants-HraCekPm.js.map +1 -1
  451. package/dist/vue3/chunks/stack_constants-SMzMWnAQ.js.map +1 -1
  452. package/dist/vue3/chunks/{tab-aD6t0MNo.js → tab-RTDgnD9-.js} +49 -46
  453. package/dist/vue3/chunks/{tab-aD6t0MNo.js.map → tab-RTDgnD9-.js.map} +1 -1
  454. package/dist/vue3/chunks/{tab-X7IvNGTl.js → tab-qc3f42Yp.js} +49 -46
  455. package/dist/vue3/chunks/{tab-X7IvNGTl.js.map → tab-qc3f42Yp.js.map} +1 -1
  456. package/dist/vue3/common/constants.cjs.map +1 -1
  457. package/dist/vue3/common/constants.js.map +1 -1
  458. package/dist/vue3/common/dates.cjs +1 -3
  459. package/dist/vue3/common/dates.cjs.map +1 -1
  460. package/dist/vue3/common/dates.js +1 -3
  461. package/dist/vue3/common/dates.js.map +1 -1
  462. package/dist/vue3/common/emoji.cjs +1 -1
  463. package/dist/vue3/common/emoji.js +1 -1
  464. package/dist/vue3/common/mixins.cjs +3 -3
  465. package/dist/vue3/common/mixins.js +3 -3
  466. package/dist/vue3/common/utils.cjs +45 -11
  467. package/dist/vue3/common/utils.cjs.map +1 -1
  468. package/dist/vue3/common/utils.js +45 -11
  469. package/dist/vue3/common/utils.js.map +1 -1
  470. package/dist/vue3/common/validators.cjs.map +1 -1
  471. package/dist/vue3/common/validators.js.map +1 -1
  472. package/dist/vue3/component-documentation.json +1 -1
  473. package/dist/vue3/dialtone-vue.cjs +12 -12
  474. package/dist/vue3/dialtone-vue.js +12 -12
  475. package/dist/vue3/lib/attachment-carousel.cjs +108 -87
  476. package/dist/vue3/lib/attachment-carousel.cjs.map +1 -1
  477. package/dist/vue3/lib/attachment-carousel.js +108 -87
  478. package/dist/vue3/lib/attachment-carousel.js.map +1 -1
  479. package/dist/vue3/lib/avatar.cjs +88 -56
  480. package/dist/vue3/lib/avatar.cjs.map +1 -1
  481. package/dist/vue3/lib/avatar.js +88 -56
  482. package/dist/vue3/lib/avatar.js.map +1 -1
  483. package/dist/vue3/lib/badge.cjs +31 -15
  484. package/dist/vue3/lib/badge.cjs.map +1 -1
  485. package/dist/vue3/lib/badge.js +31 -15
  486. package/dist/vue3/lib/badge.js.map +1 -1
  487. package/dist/vue3/lib/banner.cjs +56 -38
  488. package/dist/vue3/lib/banner.cjs.map +1 -1
  489. package/dist/vue3/lib/banner.js +56 -38
  490. package/dist/vue3/lib/banner.js.map +1 -1
  491. package/dist/vue3/lib/breadcrumbs.cjs +36 -25
  492. package/dist/vue3/lib/breadcrumbs.cjs.map +1 -1
  493. package/dist/vue3/lib/breadcrumbs.js +36 -25
  494. package/dist/vue3/lib/breadcrumbs.js.map +1 -1
  495. package/dist/vue3/lib/button-group.cjs +7 -2
  496. package/dist/vue3/lib/button-group.cjs.map +1 -1
  497. package/dist/vue3/lib/button-group.js +7 -2
  498. package/dist/vue3/lib/button-group.js.map +1 -1
  499. package/dist/vue3/lib/button.cjs +69 -44
  500. package/dist/vue3/lib/button.cjs.map +1 -1
  501. package/dist/vue3/lib/button.js +69 -44
  502. package/dist/vue3/lib/button.js.map +1 -1
  503. package/dist/vue3/lib/callbar-button-with-popover.cjs +81 -68
  504. package/dist/vue3/lib/callbar-button-with-popover.cjs.map +1 -1
  505. package/dist/vue3/lib/callbar-button-with-popover.js +81 -68
  506. package/dist/vue3/lib/callbar-button-with-popover.js.map +1 -1
  507. package/dist/vue3/lib/callbar-button.cjs +45 -32
  508. package/dist/vue3/lib/callbar-button.cjs.map +1 -1
  509. package/dist/vue3/lib/callbar-button.js +45 -32
  510. package/dist/vue3/lib/callbar-button.js.map +1 -1
  511. package/dist/vue3/lib/callbox.cjs +57 -38
  512. package/dist/vue3/lib/callbox.cjs.map +1 -1
  513. package/dist/vue3/lib/callbox.js +57 -38
  514. package/dist/vue3/lib/callbox.js.map +1 -1
  515. package/dist/vue3/lib/card.cjs +33 -13
  516. package/dist/vue3/lib/card.cjs.map +1 -1
  517. package/dist/vue3/lib/card.js +33 -13
  518. package/dist/vue3/lib/card.js.map +1 -1
  519. package/dist/vue3/lib/checkbox-group.cjs +5 -2
  520. package/dist/vue3/lib/checkbox-group.cjs.map +1 -1
  521. package/dist/vue3/lib/checkbox-group.js +5 -2
  522. package/dist/vue3/lib/checkbox-group.js.map +1 -1
  523. package/dist/vue3/lib/checkbox.cjs +45 -41
  524. package/dist/vue3/lib/checkbox.cjs.map +1 -1
  525. package/dist/vue3/lib/checkbox.js +45 -41
  526. package/dist/vue3/lib/checkbox.js.map +1 -1
  527. package/dist/vue3/lib/chip.cjs +53 -38
  528. package/dist/vue3/lib/chip.cjs.map +1 -1
  529. package/dist/vue3/lib/chip.js +53 -38
  530. package/dist/vue3/lib/chip.js.map +1 -1
  531. package/dist/vue3/lib/codeblock.cjs +6 -4
  532. package/dist/vue3/lib/codeblock.cjs.map +1 -1
  533. package/dist/vue3/lib/codeblock.js +6 -4
  534. package/dist/vue3/lib/codeblock.js.map +1 -1
  535. package/dist/vue3/lib/collapsible.cjs +76 -62
  536. package/dist/vue3/lib/collapsible.cjs.map +1 -1
  537. package/dist/vue3/lib/collapsible.js +76 -62
  538. package/dist/vue3/lib/collapsible.js.map +1 -1
  539. package/dist/vue3/lib/combobox-multi-select.cjs +88 -75
  540. package/dist/vue3/lib/combobox-multi-select.cjs.map +1 -1
  541. package/dist/vue3/lib/combobox-multi-select.js +88 -75
  542. package/dist/vue3/lib/combobox-multi-select.js.map +1 -1
  543. package/dist/vue3/lib/combobox-with-popover.cjs +85 -77
  544. package/dist/vue3/lib/combobox-with-popover.cjs.map +1 -1
  545. package/dist/vue3/lib/combobox-with-popover.js +85 -77
  546. package/dist/vue3/lib/combobox-with-popover.js.map +1 -1
  547. package/dist/vue3/lib/combobox.cjs +3 -3
  548. package/dist/vue3/lib/combobox.js +3 -3
  549. package/dist/vue3/lib/contact-centers-row.cjs +89 -65
  550. package/dist/vue3/lib/contact-centers-row.cjs.map +1 -1
  551. package/dist/vue3/lib/contact-centers-row.js +89 -65
  552. package/dist/vue3/lib/contact-centers-row.js.map +1 -1
  553. package/dist/vue3/lib/contact-info.cjs +82 -59
  554. package/dist/vue3/lib/contact-info.cjs.map +1 -1
  555. package/dist/vue3/lib/contact-info.js +82 -59
  556. package/dist/vue3/lib/contact-info.js.map +1 -1
  557. package/dist/vue3/lib/contact-row.cjs +47 -37
  558. package/dist/vue3/lib/contact-row.cjs.map +1 -1
  559. package/dist/vue3/lib/contact-row.js +47 -37
  560. package/dist/vue3/lib/contact-row.js.map +1 -1
  561. package/dist/vue3/lib/datepicker.cjs +263 -267
  562. package/dist/vue3/lib/datepicker.cjs.map +1 -1
  563. package/dist/vue3/lib/datepicker.js +263 -267
  564. package/dist/vue3/lib/datepicker.js.map +1 -1
  565. package/dist/vue3/lib/description-list.cjs +14 -9
  566. package/dist/vue3/lib/description-list.cjs.map +1 -1
  567. package/dist/vue3/lib/description-list.js +14 -9
  568. package/dist/vue3/lib/description-list.js.map +1 -1
  569. package/dist/vue3/lib/dropdown.cjs +6 -6
  570. package/dist/vue3/lib/dropdown.cjs.map +1 -1
  571. package/dist/vue3/lib/dropdown.js +6 -6
  572. package/dist/vue3/lib/dropdown.js.map +1 -1
  573. package/dist/vue3/lib/editor.cjs +249 -312
  574. package/dist/vue3/lib/editor.cjs.map +1 -1
  575. package/dist/vue3/lib/editor.js +249 -312
  576. package/dist/vue3/lib/editor.js.map +1 -1
  577. package/dist/vue3/lib/emoji-picker.cjs +419 -387
  578. package/dist/vue3/lib/emoji-picker.cjs.map +1 -1
  579. package/dist/vue3/lib/emoji-picker.js +419 -387
  580. package/dist/vue3/lib/emoji-picker.js.map +1 -1
  581. package/dist/vue3/lib/emoji-row.cjs +69 -59
  582. package/dist/vue3/lib/emoji-row.cjs.map +1 -1
  583. package/dist/vue3/lib/emoji-row.js +69 -59
  584. package/dist/vue3/lib/emoji-row.js.map +1 -1
  585. package/dist/vue3/lib/emoji-text-wrapper.cjs +12 -13
  586. package/dist/vue3/lib/emoji-text-wrapper.cjs.map +1 -1
  587. package/dist/vue3/lib/emoji-text-wrapper.js +12 -13
  588. package/dist/vue3/lib/emoji-text-wrapper.js.map +1 -1
  589. package/dist/vue3/lib/emoji.cjs +23 -19
  590. package/dist/vue3/lib/emoji.cjs.map +1 -1
  591. package/dist/vue3/lib/emoji.js +23 -19
  592. package/dist/vue3/lib/emoji.js.map +1 -1
  593. package/dist/vue3/lib/empty-state.cjs +30 -20
  594. package/dist/vue3/lib/empty-state.cjs.map +1 -1
  595. package/dist/vue3/lib/empty-state.js +30 -20
  596. package/dist/vue3/lib/empty-state.js.map +1 -1
  597. package/dist/vue3/lib/feed-item-row.cjs +74 -43
  598. package/dist/vue3/lib/feed-item-row.cjs.map +1 -1
  599. package/dist/vue3/lib/feed-item-row.js +74 -43
  600. package/dist/vue3/lib/feed-item-row.js.map +1 -1
  601. package/dist/vue3/lib/feed-pill.cjs +55 -45
  602. package/dist/vue3/lib/feed-pill.cjs.map +1 -1
  603. package/dist/vue3/lib/feed-pill.js +55 -45
  604. package/dist/vue3/lib/feed-pill.js.map +1 -1
  605. package/dist/vue3/lib/general-row.cjs +165 -115
  606. package/dist/vue3/lib/general-row.cjs.map +1 -1
  607. package/dist/vue3/lib/general-row.js +165 -115
  608. package/dist/vue3/lib/general-row.js.map +1 -1
  609. package/dist/vue3/lib/group-row.cjs +9 -7
  610. package/dist/vue3/lib/group-row.cjs.map +1 -1
  611. package/dist/vue3/lib/group-row.js +9 -7
  612. package/dist/vue3/lib/group-row.js.map +1 -1
  613. package/dist/vue3/lib/grouped-chip.cjs +48 -27
  614. package/dist/vue3/lib/grouped-chip.cjs.map +1 -1
  615. package/dist/vue3/lib/grouped-chip.js +48 -27
  616. package/dist/vue3/lib/grouped-chip.js.map +1 -1
  617. package/dist/vue3/lib/hovercard.cjs +33 -25
  618. package/dist/vue3/lib/hovercard.cjs.map +1 -1
  619. package/dist/vue3/lib/hovercard.js +33 -25
  620. package/dist/vue3/lib/hovercard.js.map +1 -1
  621. package/dist/vue3/lib/icon.cjs +1 -1
  622. package/dist/vue3/lib/icon.cjs.map +1 -1
  623. package/dist/vue3/lib/icon.js +1 -1
  624. package/dist/vue3/lib/icon.js.map +1 -1
  625. package/dist/vue3/lib/illustration.cjs +1 -2
  626. package/dist/vue3/lib/illustration.cjs.map +1 -1
  627. package/dist/vue3/lib/illustration.js +1 -2
  628. package/dist/vue3/lib/illustration.js.map +1 -1
  629. package/dist/vue3/lib/image-viewer.cjs +66 -52
  630. package/dist/vue3/lib/image-viewer.cjs.map +1 -1
  631. package/dist/vue3/lib/image-viewer.js +66 -52
  632. package/dist/vue3/lib/image-viewer.js.map +1 -1
  633. package/dist/vue3/lib/input-group.cjs +19 -15
  634. package/dist/vue3/lib/input-group.cjs.map +1 -1
  635. package/dist/vue3/lib/input-group.js +19 -15
  636. package/dist/vue3/lib/input-group.js.map +1 -1
  637. package/dist/vue3/lib/input.cjs +114 -77
  638. package/dist/vue3/lib/input.cjs.map +1 -1
  639. package/dist/vue3/lib/input.js +114 -77
  640. package/dist/vue3/lib/input.js.map +1 -1
  641. package/dist/vue3/lib/item-layout.cjs +27 -10
  642. package/dist/vue3/lib/item-layout.cjs.map +1 -1
  643. package/dist/vue3/lib/item-layout.js +27 -10
  644. package/dist/vue3/lib/item-layout.js.map +1 -1
  645. package/dist/vue3/lib/ivr-node.cjs +89 -80
  646. package/dist/vue3/lib/ivr-node.cjs.map +1 -1
  647. package/dist/vue3/lib/ivr-node.js +89 -80
  648. package/dist/vue3/lib/ivr-node.js.map +1 -1
  649. package/dist/vue3/lib/keyboard-shortcut.cjs +31 -26
  650. package/dist/vue3/lib/keyboard-shortcut.cjs.map +1 -1
  651. package/dist/vue3/lib/keyboard-shortcut.js +31 -26
  652. package/dist/vue3/lib/keyboard-shortcut.js.map +1 -1
  653. package/dist/vue3/lib/lazy-show.cjs +8 -6
  654. package/dist/vue3/lib/lazy-show.cjs.map +1 -1
  655. package/dist/vue3/lib/lazy-show.js +8 -6
  656. package/dist/vue3/lib/lazy-show.js.map +1 -1
  657. package/dist/vue3/lib/link.cjs +7 -2
  658. package/dist/vue3/lib/link.cjs.map +1 -1
  659. package/dist/vue3/lib/link.js +7 -2
  660. package/dist/vue3/lib/link.js.map +1 -1
  661. package/dist/vue3/lib/list-item-group.cjs +14 -7
  662. package/dist/vue3/lib/list-item-group.cjs.map +1 -1
  663. package/dist/vue3/lib/list-item-group.js +14 -7
  664. package/dist/vue3/lib/list-item-group.js.map +1 -1
  665. package/dist/vue3/lib/list-item.cjs +25 -24
  666. package/dist/vue3/lib/list-item.cjs.map +1 -1
  667. package/dist/vue3/lib/list-item.js +25 -24
  668. package/dist/vue3/lib/list-item.js.map +1 -1
  669. package/dist/vue3/lib/message-input.cjs +264 -227
  670. package/dist/vue3/lib/message-input.cjs.map +1 -1
  671. package/dist/vue3/lib/message-input.js +264 -227
  672. package/dist/vue3/lib/message-input.js.map +1 -1
  673. package/dist/vue3/lib/modal.cjs +99 -59
  674. package/dist/vue3/lib/modal.cjs.map +1 -1
  675. package/dist/vue3/lib/modal.js +99 -59
  676. package/dist/vue3/lib/modal.js.map +1 -1
  677. package/dist/vue3/lib/notice.cjs +46 -33
  678. package/dist/vue3/lib/notice.cjs.map +1 -1
  679. package/dist/vue3/lib/notice.js +46 -33
  680. package/dist/vue3/lib/notice.js.map +1 -1
  681. package/dist/vue3/lib/pagination.cjs +61 -49
  682. package/dist/vue3/lib/pagination.cjs.map +1 -1
  683. package/dist/vue3/lib/pagination.js +61 -49
  684. package/dist/vue3/lib/pagination.js.map +1 -1
  685. package/dist/vue3/lib/popover.cjs +156 -133
  686. package/dist/vue3/lib/popover.cjs.map +1 -1
  687. package/dist/vue3/lib/popover.js +157 -134
  688. package/dist/vue3/lib/popover.js.map +1 -1
  689. package/dist/vue3/lib/presence.cjs +17 -9
  690. package/dist/vue3/lib/presence.cjs.map +1 -1
  691. package/dist/vue3/lib/presence.js +17 -9
  692. package/dist/vue3/lib/presence.js.map +1 -1
  693. package/dist/vue3/lib/radio-group.cjs +1 -1
  694. package/dist/vue3/lib/radio-group.cjs.map +1 -1
  695. package/dist/vue3/lib/radio-group.js +1 -1
  696. package/dist/vue3/lib/radio-group.js.map +1 -1
  697. package/dist/vue3/lib/radio.cjs +41 -34
  698. package/dist/vue3/lib/radio.cjs.map +1 -1
  699. package/dist/vue3/lib/radio.js +41 -34
  700. package/dist/vue3/lib/radio.js.map +1 -1
  701. package/dist/vue3/lib/rich-text-editor.cjs +288 -292
  702. package/dist/vue3/lib/rich-text-editor.cjs.map +1 -1
  703. package/dist/vue3/lib/rich-text-editor.js +288 -292
  704. package/dist/vue3/lib/rich-text-editor.js.map +1 -1
  705. package/dist/vue3/lib/root-layout.cjs +39 -24
  706. package/dist/vue3/lib/root-layout.cjs.map +1 -1
  707. package/dist/vue3/lib/root-layout.js +39 -24
  708. package/dist/vue3/lib/root-layout.js.map +1 -1
  709. package/dist/vue3/lib/scrollbar-directive.cjs +422 -388
  710. package/dist/vue3/lib/scrollbar-directive.cjs.map +1 -1
  711. package/dist/vue3/lib/scrollbar-directive.js +422 -388
  712. package/dist/vue3/lib/scrollbar-directive.js.map +1 -1
  713. package/dist/vue3/lib/scroller.cjs +83 -100
  714. package/dist/vue3/lib/scroller.cjs.map +1 -1
  715. package/dist/vue3/lib/scroller.js +83 -100
  716. package/dist/vue3/lib/scroller.js.map +1 -1
  717. package/dist/vue3/lib/select-menu.cjs +67 -40
  718. package/dist/vue3/lib/select-menu.cjs.map +1 -1
  719. package/dist/vue3/lib/select-menu.js +67 -40
  720. package/dist/vue3/lib/select-menu.js.map +1 -1
  721. package/dist/vue3/lib/settings-menu-button.cjs +16 -10
  722. package/dist/vue3/lib/settings-menu-button.cjs.map +1 -1
  723. package/dist/vue3/lib/settings-menu-button.js +16 -10
  724. package/dist/vue3/lib/settings-menu-button.js.map +1 -1
  725. package/dist/vue3/lib/skeleton.cjs +93 -74
  726. package/dist/vue3/lib/skeleton.cjs.map +1 -1
  727. package/dist/vue3/lib/skeleton.js +93 -74
  728. package/dist/vue3/lib/skeleton.js.map +1 -1
  729. package/dist/vue3/lib/split-button.cjs +74 -68
  730. package/dist/vue3/lib/split-button.cjs.map +1 -1
  731. package/dist/vue3/lib/split-button.js +74 -68
  732. package/dist/vue3/lib/split-button.js.map +1 -1
  733. package/dist/vue3/lib/stack.cjs +26 -18
  734. package/dist/vue3/lib/stack.cjs.map +1 -1
  735. package/dist/vue3/lib/stack.js +26 -18
  736. package/dist/vue3/lib/stack.js.map +1 -1
  737. package/dist/vue3/lib/tabs.cjs +7 -3
  738. package/dist/vue3/lib/tabs.cjs.map +1 -1
  739. package/dist/vue3/lib/tabs.js +7 -3
  740. package/dist/vue3/lib/tabs.js.map +1 -1
  741. package/dist/vue3/lib/time-pill.cjs.map +1 -1
  742. package/dist/vue3/lib/time-pill.js.map +1 -1
  743. package/dist/vue3/lib/toast.cjs +51 -35
  744. package/dist/vue3/lib/toast.cjs.map +1 -1
  745. package/dist/vue3/lib/toast.js +51 -35
  746. package/dist/vue3/lib/toast.js.map +1 -1
  747. package/dist/vue3/lib/toggle.cjs +34 -24
  748. package/dist/vue3/lib/toggle.cjs.map +1 -1
  749. package/dist/vue3/lib/toggle.js +34 -24
  750. package/dist/vue3/lib/toggle.js.map +1 -1
  751. package/dist/vue3/lib/tooltip-directive.cjs +19 -26
  752. package/dist/vue3/lib/tooltip-directive.cjs.map +1 -1
  753. package/dist/vue3/lib/tooltip-directive.js +19 -26
  754. package/dist/vue3/lib/tooltip-directive.js.map +1 -1
  755. package/dist/vue3/lib/tooltip.cjs +32 -21
  756. package/dist/vue3/lib/tooltip.cjs.map +1 -1
  757. package/dist/vue3/lib/tooltip.js +33 -22
  758. package/dist/vue3/lib/tooltip.js.map +1 -1
  759. package/dist/vue3/lib/top-banner-info.cjs +23 -8
  760. package/dist/vue3/lib/top-banner-info.cjs.map +1 -1
  761. package/dist/vue3/lib/top-banner-info.js +23 -8
  762. package/dist/vue3/lib/top-banner-info.js.map +1 -1
  763. package/dist/vue3/lib/unread-pill.cjs +11 -8
  764. package/dist/vue3/lib/unread-pill.cjs.map +1 -1
  765. package/dist/vue3/lib/unread-pill.js +11 -8
  766. package/dist/vue3/lib/unread-pill.js.map +1 -1
  767. package/dist/vue3/lib/validation-messages.cjs +17 -14
  768. package/dist/vue3/lib/validation-messages.cjs.map +1 -1
  769. package/dist/vue3/lib/validation-messages.js +17 -14
  770. package/dist/vue3/lib/validation-messages.js.map +1 -1
  771. package/dist/vue3/style.css +9 -9
  772. package/dist/vue3/types/components/button/button.vue.d.ts +1 -1
  773. package/dist/vue3/types/components/chip/chip.vue.d.ts +1 -1
  774. package/dist/vue3/types/components/combobox/combobox.vue.d.ts +1 -1
  775. package/dist/vue3/types/components/datepicker/modules/month-year-picker.vue.d.ts +1 -1
  776. package/dist/vue3/types/components/icon/icon.vue.d.ts +2 -2
  777. package/dist/vue3/types/components/icon/icon_constants.d.ts +1 -1
  778. package/dist/vue3/types/components/icon/icon_constants.d.ts.map +1 -1
  779. package/dist/vue3/types/components/illustration/illustration_constants.d.ts +1 -1
  780. package/dist/vue3/types/components/illustration/illustration_constants.d.ts.map +1 -1
  781. package/dist/vue3/types/components/input/input.vue.d.ts +3 -2
  782. package/dist/vue3/types/components/input/input.vue.d.ts.map +1 -1
  783. package/dist/vue3/types/components/modal/modal.vue.d.ts +1 -1
  784. package/dist/vue3/types/components/notice/notice.vue.d.ts +1 -1
  785. package/dist/vue3/types/components/radio/radio.vue.d.ts +1 -1
  786. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts +1 -1
  787. package/dist/vue3/types/components/scroller/modules/scroller_item.vue.d.ts +1 -1
  788. package/dist/vue3/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
  789. package/dist/vue3/types/components/tabs/tab.vue.d.ts +1 -1
  790. package/dist/vue3/types/components/toast/toast.vue.d.ts +2 -2
  791. package/dist/vue3/types/components/tooltip/tooltip.vue.d.ts +1 -1
  792. package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +1 -1
  793. package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts +1 -1
  794. package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  795. package/dist/vue3/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +15 -0
  796. package/dist/vue3/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
  797. package/package.json +3 -2
  798. package/dist/vue2/chunks/icon_constants-TdxqLsS2.js.map +0 -1
  799. package/dist/vue2/chunks/icon_constants-VEA0wI5C.js.map +0 -1
  800. package/dist/vue3/chunks/icon_constants-bvhFNOPu.js.map +0 -1
  801. package/dist/vue3/chunks/icon_constants-gIQj4mf7.js.map +0 -1
@@ -28,16 +28,19 @@ const _sfc_main = {
28
28
  };
29
29
  var _sfc_render = function render() {
30
30
  var _vm = this, _c = _vm._self._c;
31
- return _c("time", {
32
- staticClass: "dt-time-pill",
33
- attrs: {
34
- "data-qa": "dt-time-pill",
35
- "dateTime": _vm.dateTime
36
- }
37
- }, [_vm._v(" " + _vm._s(_vm.dateTimeDisplay) + " ")]);
31
+ return _c("time", { staticClass: "dt-time-pill", attrs: { "data-qa": "dt-time-pill", "dateTime": _vm.dateTime } }, [_vm._v(" " + _vm._s(_vm.dateTimeDisplay) + " ")]);
38
32
  };
39
33
  var _sfc_staticRenderFns = [];
40
- var __component__ = /* @__PURE__ */ normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, null, null, null);
34
+ var __component__ = /* @__PURE__ */ normalizeComponent(
35
+ _sfc_main,
36
+ _sfc_render,
37
+ _sfc_staticRenderFns,
38
+ false,
39
+ null,
40
+ null,
41
+ null,
42
+ null
43
+ );
41
44
  const time_pill = __component__.exports;
42
45
  export {
43
46
  time_pill as DtRecipeTimePill
@@ -1 +1 @@
1
- {"version":3,"file":"time-pill.js","sources":["../../recipes/conversation_view/time_pill/time_pill.vue"],"sourcesContent":["<template>\n <time\n data-qa=\"dt-time-pill\"\n :dateTime=\"dateTime\"\n class=\"dt-time-pill\"\n >\n {{ dateTimeDisplay }}\n </time>\n</template>\n\n<script>\nimport {} from './time_pill_constants';\n\nexport default {\n name: 'DtRecipeTimePill',\n\n props: {\n /**\n * Date time display value\n */\n dateTimeDisplay: {\n type: String,\n required: true,\n },\n\n /**\n * Machine-readable attribute\n * Accepts a string value of YYYY-MM-DD or YYYY-MM-DDThh:mm:ssTZD\n */\n dateTime: {\n type: String,\n required: true,\n validator: (t) => {\n // Since this will only ever be used in the context of a date, we're rejecting non date inputs\n const x = new Date(t);\n if (x instanceof Date && !isNaN(x)) {\n return true;\n }\n return false;\n },\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n.dt-time-pill {\n color: var(--dt-color-foreground-primary);\n border-radius: var(--dt-size-radius-pill);\n line-height: var(--dt-font-line-height-300);\n font-size: var(--dt-font-size-100);\n border: var(--dt-size-border-100) solid var(--dt-color-border-default);\n background-color: var(--dt-color-surface-primary);\n padding: var(--dt-space-300) var(--dt-space-500);\n}\n</style>\n"],"names":["_sfc_main","name","props","dateTimeDisplay","type","String","required","dateTime","validator","t","x","Date","isNaN"],"mappings":";AAaA,MAAAA,YAAA;AAAA,EACAC,MAAA;AAAA,EAEAC,OAAA;AAAA;AAAA;AAAA;AAAA,IAIAC,iBAAA;AAAA,MACAC,MAAAC;AAAAA,MACAC,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAC,UAAA;AAAA,MACAH,MAAAC;AAAAA,MACAC,UAAA;AAAA,MACAE,WAAAC,OAAA;AAEA,cAAAC,IAAA,IAAAC,KAAAF,CAAA;AACA,YAAAC,aAAAC,QAAA,CAAAC,MAAAF,CAAA,GAAA;AACA,iBAAA;AAAA,QACA;AACA,eAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"time-pill.js","sources":["../../recipes/conversation_view/time_pill/time_pill.vue"],"sourcesContent":["<template>\n <time\n data-qa=\"dt-time-pill\"\n :dateTime=\"dateTime\"\n class=\"dt-time-pill\"\n >\n {{ dateTimeDisplay }}\n </time>\n</template>\n\n<script>\nimport {} from './time_pill_constants';\n\nexport default {\n name: 'DtRecipeTimePill',\n\n props: {\n /**\n * Date time display value\n */\n dateTimeDisplay: {\n type: String,\n required: true,\n },\n\n /**\n * Machine-readable attribute\n * Accepts a string value of YYYY-MM-DD or YYYY-MM-DDThh:mm:ssTZD\n */\n dateTime: {\n type: String,\n required: true,\n validator: (t) => {\n // Since this will only ever be used in the context of a date, we're rejecting non date inputs\n const x = new Date(t);\n if (x instanceof Date && !isNaN(x)) {\n return true;\n }\n return false;\n },\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n.dt-time-pill {\n color: var(--dt-color-foreground-primary);\n border-radius: var(--dt-size-radius-pill);\n line-height: var(--dt-font-line-height-300);\n font-size: var(--dt-font-size-100);\n border: var(--dt-size-border-100) solid var(--dt-color-border-default);\n background-color: var(--dt-color-surface-primary);\n padding: var(--dt-space-300) var(--dt-space-500);\n}\n</style>\n"],"names":[],"mappings":";AAaA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,iBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA,CAAA,MAAA;AAEA,cAAA,IAAA,IAAA,KAAA,CAAA;AACA,YAAA,aAAA,QAAA,CAAA,MAAA,CAAA,GAAA;AACA,iBAAA;AAAA,QACA;AACA,eAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;"}
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const common_utils = require("../common/utils.cjs");
4
- const sr_only_close_button = require("../chunks/sr_only_close_button-2Q9Ny1Nc.js");
4
+ const sr_only_close_button = require("../chunks/sr_only_close_button-ZaGdAHz7.js");
5
5
  const _pluginVue2_normalizer = require("../chunks/_plugin-vue2_normalizer-1aBeR4AK.js");
6
- const notice_action = require("../chunks/notice_action-tEvvMg7Q.js");
6
+ const notice_action = require("../chunks/notice_action-P6uDyE9x.js");
7
7
  const notice_constants = require("../chunks/notice_constants-UXo9e3bS.js");
8
8
  require("../common/constants.cjs");
9
9
  require("vue");
10
10
  require("./icon.cjs");
11
11
  require("@dialpad/dialtone-icons/vue2");
12
- require("../chunks/icon_constants-VEA0wI5C.js");
12
+ require("../chunks/icon_constants-QYpmdE0R.js");
13
13
  require("@dialpad/dialtone-icons/icons.json");
14
14
  require("./button.cjs");
15
15
  require("../chunks/link_constants-x8NwdqmA.js");
@@ -220,48 +220,27 @@ const _sfc_main = {
220
220
  };
221
221
  var _sfc_render = function render() {
222
222
  var _vm = this, _c = _vm._self._c;
223
- return _vm.isShown ? _c("div", {
224
- class: ["d-toast", _vm.kindClass, {
225
- "d-toast--important": _vm.important
226
- }],
227
- attrs: {
228
- "data-qa": "dt-toast",
229
- "aria-hidden": (!_vm.isShown).toString()
230
- }
231
- }, [_c("div", {
232
- staticClass: "d-toast__dialog"
233
- }, [!_vm.hideIcon ? _c("dt-notice-icon", _vm._g({
234
- attrs: {
235
- "kind": _vm.kind
236
- }
237
- }, _vm.$listeners), [_vm._t("icon")], 2) : _vm._e(), _c("dt-notice-content", _vm._g({
238
- attrs: {
239
- "title-id": _vm.titleId,
240
- "content-id": _vm.contentId,
241
- "title": _vm.title,
242
- "role": _vm.role
243
- },
244
- scopedSlots: _vm._u([{
245
- key: "titleOverride",
246
- fn: function() {
247
- return [_vm._t("titleOverride")];
248
- },
249
- proxy: true
250
- }], null, true)
251
- }, _vm.$listeners), [_vm._t("default", function() {
223
+ return _vm.isShown ? _c("div", { class: [
224
+ "d-toast",
225
+ _vm.kindClass,
226
+ { "d-toast--important": _vm.important }
227
+ ], attrs: { "data-qa": "dt-toast", "aria-hidden": (!_vm.isShown).toString() } }, [_c("div", { staticClass: "d-toast__dialog" }, [!_vm.hideIcon ? _c("dt-notice-icon", _vm._g({ attrs: { "kind": _vm.kind } }, _vm.$listeners), [_vm._t("icon")], 2) : _vm._e(), _c("dt-notice-content", _vm._g({ attrs: { "title-id": _vm.titleId, "content-id": _vm.contentId, "title": _vm.title, "role": _vm.role }, scopedSlots: _vm._u([{ key: "titleOverride", fn: function() {
228
+ return [_vm._t("titleOverride")];
229
+ }, proxy: true }], null, true) }, _vm.$listeners), [_vm._t("default", function() {
252
230
  return [_vm._v(" " + _vm._s(_vm.message) + " ")];
253
- })], 2), _c("dt-notice-action", _vm._g({
254
- attrs: {
255
- "hide-action": _vm.hideAction,
256
- "hide-close": _vm.hideClose,
257
- "close-button-props": _vm.closeButtonProps,
258
- "visually-hidden-close": _vm.visuallyHiddenClose,
259
- "visually-hidden-close-label": _vm.visuallyHiddenCloseLabel
260
- }
261
- }, _vm.noticeActionListeners), [_vm._t("action")], 2)], 1)]) : _vm._e();
231
+ })], 2), _c("dt-notice-action", _vm._g({ attrs: { "hide-action": _vm.hideAction, "hide-close": _vm.hideClose, "close-button-props": _vm.closeButtonProps, "visually-hidden-close": _vm.visuallyHiddenClose, "visually-hidden-close-label": _vm.visuallyHiddenCloseLabel } }, _vm.noticeActionListeners), [_vm._t("action")], 2)], 1)]) : _vm._e();
262
232
  };
263
233
  var _sfc_staticRenderFns = [];
264
- var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, null, null, null);
234
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
235
+ _sfc_main,
236
+ _sfc_render,
237
+ _sfc_staticRenderFns,
238
+ false,
239
+ null,
240
+ null,
241
+ null,
242
+ null
243
+ );
265
244
  const toast = __component__.exports;
266
245
  exports.DtToast = toast;
267
246
  exports.TOAST_MIN_DURATION = TOAST_MIN_DURATION;
@@ -1 +1 @@
1
- {"version":3,"file":"toast.cjs","sources":["../../components/toast/toast_constants.js","../../components/toast/toast.vue"],"sourcesContent":["export const TOAST_ROLES = ['status', 'alert'];\nexport const TOAST_MIN_DURATION = 6000;\n\nexport default {\n TOAST_ROLES,\n TOAST_MIN_DURATION,\n};\n","<template>\n <div\n v-if=\"isShown\"\n :class=\"[\n 'd-toast',\n kindClass,\n { 'd-toast--important': important },\n ]\"\n data-qa=\"dt-toast\"\n :aria-hidden=\"(!isShown).toString()\"\n >\n <div class=\"d-toast__dialog\">\n <dt-notice-icon\n v-if=\"!hideIcon\"\n :kind=\"kind\"\n v-on=\"$listeners\"\n >\n <!-- @slot Slot for custom icon -->\n <slot name=\"icon\" />\n </dt-notice-icon>\n <dt-notice-content\n :title-id=\"titleId\"\n :content-id=\"contentId\"\n :title=\"title\"\n :role=\"role\"\n v-on=\"$listeners\"\n >\n <template #titleOverride>\n <!-- @slot Allows you to override the title, only use this if you need to override\n with something other than text. Otherwise use the \"title\" prop. -->\n <slot name=\"titleOverride\" />\n </template>\n <!-- @slot the main textual content of the toast -->\n <slot>\n {{ message }}\n </slot>\n </dt-notice-content>\n <dt-notice-action\n :hide-action=\"hideAction\"\n :hide-close=\"hideClose\"\n :close-button-props=\"closeButtonProps\"\n :visually-hidden-close=\"visuallyHiddenClose\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n v-on=\"noticeActionListeners\"\n >\n <!-- @slot Enter a possible action for the user to take, such as a link to another page -->\n <slot name=\"action\" />\n </dt-notice-action>\n </div>\n </div>\n</template>\n\n<script>\nimport { DtNoticeIcon, DtNoticeContent, DtNoticeAction, NOTICE_KINDS } from '@/components/notice';\nimport utils from '@/common/utils';\nimport { TOAST_ROLES, TOAST_MIN_DURATION } from './toast_constants.js';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\n\n/**\n * A toast notice, sometimes called a snackbar, is a time-based message that appears based on users' actions.\n * It contains at-a-glance information about outcomes and can be paired with actions.\n * @see https://dialtone.dialpad.com/components/toast.html\n */\nexport default {\n name: 'DtToast',\n\n components: {\n DtNoticeIcon,\n DtNoticeContent,\n DtNoticeAction,\n },\n\n mixins: [SrOnlyCloseButtonMixin],\n\n props: {\n /**\n * Sets an ID on the title element of the component. Useful for aria-describedby\n * or aria-labelledby or any other reason you may need an id to refer to the title.\n */\n titleId: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Sets an ID on the content element of the component. Useful for aria-describedby\n * or aria-labelledby or any other reason you may need an id to refer to the content.\n */\n contentId: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Title header of the toast. This can be left blank to remove the title from the toast entirely.\n */\n title: {\n type: String,\n default: '',\n },\n\n /**\n * Message of the toast. Overridden by default slot.\n */\n message: {\n type: String,\n default: '',\n },\n\n /**\n * Provides a role for the toast. 'status' is used by default to communicate a message. 'alert' is used to\n * communicate an important message like an error that does not contain any interactive elements.\n * @values status, alert\n */\n role: {\n type: String,\n default: 'status',\n validator: (role) => {\n return TOAST_ROLES.includes(role);\n },\n },\n\n /**\n * Severity level of the toast, sets the icon and background\n * @values base, error, info, success, warning\n */\n kind: {\n type: String,\n default: 'base',\n validator: (kind) => {\n return NOTICE_KINDS.includes(kind);\n },\n },\n\n /**\n * Used in scenarios where the message needs to visually dominate the screen.\n * @values true, false\n */\n important: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls whether the toast is shown. If a valid duration is provided, the toast will disappear\n * after reaching the duration time, so it's convenient to use `.sync` modifier with this prop to update\n * the data in your component.\n * Supports .sync modifier\n * @values true, false\n */\n show: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Props for the toast close button.\n */\n closeButtonProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Hides the close button from the toast\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the icon from the notice\n * @values true, false\n */\n hideIcon: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the action from the notice\n * @values true, false\n */\n hideAction: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The duration in ms the toast will display before disappearing.\n * The toast won't disappear if the duration is not provided.\n * If it's provided, it should be equal to or greater than 6000.\n */\n duration: {\n type: Number,\n default: null,\n validator: (duration) => {\n return duration >= TOAST_MIN_DURATION;\n },\n },\n },\n\n emits: [\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Sync show value\n *\n * @event update:show\n */\n 'update:show',\n ],\n\n data () {\n return {\n isShown: false,\n minDuration: TOAST_MIN_DURATION,\n };\n },\n\n computed: {\n kindClass () {\n const kindClasses = {\n error: 'd-toast--error',\n info: 'd-toast--info',\n success: 'd-toast--success',\n warning: 'd-toast--warning',\n base: 'd-toast--base',\n };\n\n return kindClasses[this.kind];\n },\n\n noticeActionListeners () {\n return {\n ...this.$listeners,\n\n close: event => {\n this.isShown = false;\n this.$emit('update:show', false);\n this.$emit('close', event);\n },\n };\n },\n\n shouldSetTimeout () {\n return !!this.duration && this.duration >= this.minDuration;\n },\n },\n\n watch: {\n show: {\n handler: function (show) {\n this.isShown = show;\n if (show) {\n this.setTimeout();\n } else {\n clearTimeout(this.displayTimer);\n }\n },\n\n immediate: true,\n },\n },\n\n destroyed () {\n if (this.shouldSetTimeout) {\n clearTimeout(this.displayTimer);\n }\n },\n\n methods: {\n setTimeout () {\n if (this.shouldSetTimeout) {\n this.displayTimer = setTimeout(() => {\n this.isShown = false;\n this.$emit('update:show', false);\n }, this.duration);\n }\n },\n },\n};\n</script>\n"],"names":["TOAST_ROLES","TOAST_MIN_DURATION","_sfc_main","name","components","DtNoticeIcon","DtNoticeContent","DtNoticeAction","mixins","SrOnlyCloseButtonMixin","props","titleId","type","String","default","utils","getUniqueString","contentId","title","message","role","validator","includes","kind","NOTICE_KINDS","important","Boolean","show","closeButtonProps","Object","hideClose","hideIcon","hideAction","duration","Number","emits","data","isShown","minDuration","computed","kindClass","kindClasses","error","info","success","warning","base","noticeActionListeners","$listeners","close","event","$emit","shouldSetTimeout","watch","handler","setTimeout","clearTimeout","displayTimer","immediate","destroyed","methods"],"mappings":"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"}
1
+ {"version":3,"file":"toast.cjs","sources":["../../components/toast/toast_constants.js","../../components/toast/toast.vue"],"sourcesContent":["export const TOAST_ROLES = ['status', 'alert'];\nexport const TOAST_MIN_DURATION = 6000;\n\nexport default {\n TOAST_ROLES,\n TOAST_MIN_DURATION,\n};\n","<template>\n <div\n v-if=\"isShown\"\n :class=\"[\n 'd-toast',\n kindClass,\n { 'd-toast--important': important },\n ]\"\n data-qa=\"dt-toast\"\n :aria-hidden=\"(!isShown).toString()\"\n >\n <div class=\"d-toast__dialog\">\n <dt-notice-icon\n v-if=\"!hideIcon\"\n :kind=\"kind\"\n v-on=\"$listeners\"\n >\n <!-- @slot Slot for custom icon -->\n <slot name=\"icon\" />\n </dt-notice-icon>\n <dt-notice-content\n :title-id=\"titleId\"\n :content-id=\"contentId\"\n :title=\"title\"\n :role=\"role\"\n v-on=\"$listeners\"\n >\n <template #titleOverride>\n <!-- @slot Allows you to override the title, only use this if you need to override\n with something other than text. Otherwise use the \"title\" prop. -->\n <slot name=\"titleOverride\" />\n </template>\n <!-- @slot the main textual content of the toast -->\n <slot>\n {{ message }}\n </slot>\n </dt-notice-content>\n <dt-notice-action\n :hide-action=\"hideAction\"\n :hide-close=\"hideClose\"\n :close-button-props=\"closeButtonProps\"\n :visually-hidden-close=\"visuallyHiddenClose\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n v-on=\"noticeActionListeners\"\n >\n <!-- @slot Enter a possible action for the user to take, such as a link to another page -->\n <slot name=\"action\" />\n </dt-notice-action>\n </div>\n </div>\n</template>\n\n<script>\nimport { DtNoticeIcon, DtNoticeContent, DtNoticeAction, NOTICE_KINDS } from '@/components/notice';\nimport utils from '@/common/utils';\nimport { TOAST_ROLES, TOAST_MIN_DURATION } from './toast_constants.js';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\n\n/**\n * A toast notice, sometimes called a snackbar, is a time-based message that appears based on users' actions.\n * It contains at-a-glance information about outcomes and can be paired with actions.\n * @see https://dialtone.dialpad.com/components/toast.html\n */\nexport default {\n name: 'DtToast',\n\n components: {\n DtNoticeIcon,\n DtNoticeContent,\n DtNoticeAction,\n },\n\n mixins: [SrOnlyCloseButtonMixin],\n\n props: {\n /**\n * Sets an ID on the title element of the component. Useful for aria-describedby\n * or aria-labelledby or any other reason you may need an id to refer to the title.\n */\n titleId: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Sets an ID on the content element of the component. Useful for aria-describedby\n * or aria-labelledby or any other reason you may need an id to refer to the content.\n */\n contentId: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Title header of the toast. This can be left blank to remove the title from the toast entirely.\n */\n title: {\n type: String,\n default: '',\n },\n\n /**\n * Message of the toast. Overridden by default slot.\n */\n message: {\n type: String,\n default: '',\n },\n\n /**\n * Provides a role for the toast. 'status' is used by default to communicate a message. 'alert' is used to\n * communicate an important message like an error that does not contain any interactive elements.\n * @values status, alert\n */\n role: {\n type: String,\n default: 'status',\n validator: (role) => {\n return TOAST_ROLES.includes(role);\n },\n },\n\n /**\n * Severity level of the toast, sets the icon and background\n * @values base, error, info, success, warning\n */\n kind: {\n type: String,\n default: 'base',\n validator: (kind) => {\n return NOTICE_KINDS.includes(kind);\n },\n },\n\n /**\n * Used in scenarios where the message needs to visually dominate the screen.\n * @values true, false\n */\n important: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls whether the toast is shown. If a valid duration is provided, the toast will disappear\n * after reaching the duration time, so it's convenient to use `.sync` modifier with this prop to update\n * the data in your component.\n * Supports .sync modifier\n * @values true, false\n */\n show: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Props for the toast close button.\n */\n closeButtonProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Hides the close button from the toast\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the icon from the notice\n * @values true, false\n */\n hideIcon: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the action from the notice\n * @values true, false\n */\n hideAction: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The duration in ms the toast will display before disappearing.\n * The toast won't disappear if the duration is not provided.\n * If it's provided, it should be equal to or greater than 6000.\n */\n duration: {\n type: Number,\n default: null,\n validator: (duration) => {\n return duration >= TOAST_MIN_DURATION;\n },\n },\n },\n\n emits: [\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Sync show value\n *\n * @event update:show\n */\n 'update:show',\n ],\n\n data () {\n return {\n isShown: false,\n minDuration: TOAST_MIN_DURATION,\n };\n },\n\n computed: {\n kindClass () {\n const kindClasses = {\n error: 'd-toast--error',\n info: 'd-toast--info',\n success: 'd-toast--success',\n warning: 'd-toast--warning',\n base: 'd-toast--base',\n };\n\n return kindClasses[this.kind];\n },\n\n noticeActionListeners () {\n return {\n ...this.$listeners,\n\n close: event => {\n this.isShown = false;\n this.$emit('update:show', false);\n this.$emit('close', event);\n },\n };\n },\n\n shouldSetTimeout () {\n return !!this.duration && this.duration >= this.minDuration;\n },\n },\n\n watch: {\n show: {\n handler: function (show) {\n this.isShown = show;\n if (show) {\n this.setTimeout();\n } else {\n clearTimeout(this.displayTimer);\n }\n },\n\n immediate: true,\n },\n },\n\n destroyed () {\n if (this.shouldSetTimeout) {\n clearTimeout(this.displayTimer);\n }\n },\n\n methods: {\n setTimeout () {\n if (this.shouldSetTimeout) {\n this.displayTimer = setTimeout(() => {\n this.isShown = false;\n this.$emit('update:show', false);\n }, this.duration);\n }\n },\n },\n};\n</script>\n"],"names":["DtNoticeIcon","DtNoticeContent","DtNoticeAction","SrOnlyCloseButtonMixin","utils","NOTICE_KINDS"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import utils from "../common/utils.js";
2
- import { SrOnlyCloseButtonMixin } from "../chunks/sr_only_close_button-IjMVfBDE.js";
2
+ import { SrOnlyCloseButtonMixin } from "../chunks/sr_only_close_button-81bHIpPu.js";
3
3
  import { normalizeComponent } from "../chunks/_plugin-vue2_normalizer-sOSkiPF3.js";
4
- import { DtNoticeIcon, DtNoticeContent, DtNoticeAction } from "../chunks/notice_action-qQr3K2TC.js";
4
+ import { DtNoticeIcon, DtNoticeContent, DtNoticeAction } from "../chunks/notice_action-IRUoLX2d.js";
5
5
  import { NOTICE_KINDS } from "../chunks/notice_constants-7Qt2CQEY.js";
6
6
  import "../common/constants.js";
7
7
  import "vue";
8
8
  import "./icon.js";
9
9
  import "@dialpad/dialtone-icons/vue2";
10
- import "../chunks/icon_constants-TdxqLsS2.js";
10
+ import "../chunks/icon_constants-Dy4MEUJL.js";
11
11
  import "@dialpad/dialtone-icons/icons.json";
12
12
  import "./button.js";
13
13
  import "../chunks/link_constants-AfTWrr-n.js";
@@ -218,48 +218,27 @@ const _sfc_main = {
218
218
  };
219
219
  var _sfc_render = function render() {
220
220
  var _vm = this, _c = _vm._self._c;
221
- return _vm.isShown ? _c("div", {
222
- class: ["d-toast", _vm.kindClass, {
223
- "d-toast--important": _vm.important
224
- }],
225
- attrs: {
226
- "data-qa": "dt-toast",
227
- "aria-hidden": (!_vm.isShown).toString()
228
- }
229
- }, [_c("div", {
230
- staticClass: "d-toast__dialog"
231
- }, [!_vm.hideIcon ? _c("dt-notice-icon", _vm._g({
232
- attrs: {
233
- "kind": _vm.kind
234
- }
235
- }, _vm.$listeners), [_vm._t("icon")], 2) : _vm._e(), _c("dt-notice-content", _vm._g({
236
- attrs: {
237
- "title-id": _vm.titleId,
238
- "content-id": _vm.contentId,
239
- "title": _vm.title,
240
- "role": _vm.role
241
- },
242
- scopedSlots: _vm._u([{
243
- key: "titleOverride",
244
- fn: function() {
245
- return [_vm._t("titleOverride")];
246
- },
247
- proxy: true
248
- }], null, true)
249
- }, _vm.$listeners), [_vm._t("default", function() {
221
+ return _vm.isShown ? _c("div", { class: [
222
+ "d-toast",
223
+ _vm.kindClass,
224
+ { "d-toast--important": _vm.important }
225
+ ], attrs: { "data-qa": "dt-toast", "aria-hidden": (!_vm.isShown).toString() } }, [_c("div", { staticClass: "d-toast__dialog" }, [!_vm.hideIcon ? _c("dt-notice-icon", _vm._g({ attrs: { "kind": _vm.kind } }, _vm.$listeners), [_vm._t("icon")], 2) : _vm._e(), _c("dt-notice-content", _vm._g({ attrs: { "title-id": _vm.titleId, "content-id": _vm.contentId, "title": _vm.title, "role": _vm.role }, scopedSlots: _vm._u([{ key: "titleOverride", fn: function() {
226
+ return [_vm._t("titleOverride")];
227
+ }, proxy: true }], null, true) }, _vm.$listeners), [_vm._t("default", function() {
250
228
  return [_vm._v(" " + _vm._s(_vm.message) + " ")];
251
- })], 2), _c("dt-notice-action", _vm._g({
252
- attrs: {
253
- "hide-action": _vm.hideAction,
254
- "hide-close": _vm.hideClose,
255
- "close-button-props": _vm.closeButtonProps,
256
- "visually-hidden-close": _vm.visuallyHiddenClose,
257
- "visually-hidden-close-label": _vm.visuallyHiddenCloseLabel
258
- }
259
- }, _vm.noticeActionListeners), [_vm._t("action")], 2)], 1)]) : _vm._e();
229
+ })], 2), _c("dt-notice-action", _vm._g({ attrs: { "hide-action": _vm.hideAction, "hide-close": _vm.hideClose, "close-button-props": _vm.closeButtonProps, "visually-hidden-close": _vm.visuallyHiddenClose, "visually-hidden-close-label": _vm.visuallyHiddenCloseLabel } }, _vm.noticeActionListeners), [_vm._t("action")], 2)], 1)]) : _vm._e();
260
230
  };
261
231
  var _sfc_staticRenderFns = [];
262
- var __component__ = /* @__PURE__ */ normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, null, null, null);
232
+ var __component__ = /* @__PURE__ */ normalizeComponent(
233
+ _sfc_main,
234
+ _sfc_render,
235
+ _sfc_staticRenderFns,
236
+ false,
237
+ null,
238
+ null,
239
+ null,
240
+ null
241
+ );
263
242
  const toast = __component__.exports;
264
243
  export {
265
244
  toast as DtToast,
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","sources":["../../components/toast/toast_constants.js","../../components/toast/toast.vue"],"sourcesContent":["export const TOAST_ROLES = ['status', 'alert'];\nexport const TOAST_MIN_DURATION = 6000;\n\nexport default {\n TOAST_ROLES,\n TOAST_MIN_DURATION,\n};\n","<template>\n <div\n v-if=\"isShown\"\n :class=\"[\n 'd-toast',\n kindClass,\n { 'd-toast--important': important },\n ]\"\n data-qa=\"dt-toast\"\n :aria-hidden=\"(!isShown).toString()\"\n >\n <div class=\"d-toast__dialog\">\n <dt-notice-icon\n v-if=\"!hideIcon\"\n :kind=\"kind\"\n v-on=\"$listeners\"\n >\n <!-- @slot Slot for custom icon -->\n <slot name=\"icon\" />\n </dt-notice-icon>\n <dt-notice-content\n :title-id=\"titleId\"\n :content-id=\"contentId\"\n :title=\"title\"\n :role=\"role\"\n v-on=\"$listeners\"\n >\n <template #titleOverride>\n <!-- @slot Allows you to override the title, only use this if you need to override\n with something other than text. Otherwise use the \"title\" prop. -->\n <slot name=\"titleOverride\" />\n </template>\n <!-- @slot the main textual content of the toast -->\n <slot>\n {{ message }}\n </slot>\n </dt-notice-content>\n <dt-notice-action\n :hide-action=\"hideAction\"\n :hide-close=\"hideClose\"\n :close-button-props=\"closeButtonProps\"\n :visually-hidden-close=\"visuallyHiddenClose\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n v-on=\"noticeActionListeners\"\n >\n <!-- @slot Enter a possible action for the user to take, such as a link to another page -->\n <slot name=\"action\" />\n </dt-notice-action>\n </div>\n </div>\n</template>\n\n<script>\nimport { DtNoticeIcon, DtNoticeContent, DtNoticeAction, NOTICE_KINDS } from '@/components/notice';\nimport utils from '@/common/utils';\nimport { TOAST_ROLES, TOAST_MIN_DURATION } from './toast_constants.js';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\n\n/**\n * A toast notice, sometimes called a snackbar, is a time-based message that appears based on users' actions.\n * It contains at-a-glance information about outcomes and can be paired with actions.\n * @see https://dialtone.dialpad.com/components/toast.html\n */\nexport default {\n name: 'DtToast',\n\n components: {\n DtNoticeIcon,\n DtNoticeContent,\n DtNoticeAction,\n },\n\n mixins: [SrOnlyCloseButtonMixin],\n\n props: {\n /**\n * Sets an ID on the title element of the component. Useful for aria-describedby\n * or aria-labelledby or any other reason you may need an id to refer to the title.\n */\n titleId: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Sets an ID on the content element of the component. Useful for aria-describedby\n * or aria-labelledby or any other reason you may need an id to refer to the content.\n */\n contentId: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Title header of the toast. This can be left blank to remove the title from the toast entirely.\n */\n title: {\n type: String,\n default: '',\n },\n\n /**\n * Message of the toast. Overridden by default slot.\n */\n message: {\n type: String,\n default: '',\n },\n\n /**\n * Provides a role for the toast. 'status' is used by default to communicate a message. 'alert' is used to\n * communicate an important message like an error that does not contain any interactive elements.\n * @values status, alert\n */\n role: {\n type: String,\n default: 'status',\n validator: (role) => {\n return TOAST_ROLES.includes(role);\n },\n },\n\n /**\n * Severity level of the toast, sets the icon and background\n * @values base, error, info, success, warning\n */\n kind: {\n type: String,\n default: 'base',\n validator: (kind) => {\n return NOTICE_KINDS.includes(kind);\n },\n },\n\n /**\n * Used in scenarios where the message needs to visually dominate the screen.\n * @values true, false\n */\n important: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls whether the toast is shown. If a valid duration is provided, the toast will disappear\n * after reaching the duration time, so it's convenient to use `.sync` modifier with this prop to update\n * the data in your component.\n * Supports .sync modifier\n * @values true, false\n */\n show: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Props for the toast close button.\n */\n closeButtonProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Hides the close button from the toast\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the icon from the notice\n * @values true, false\n */\n hideIcon: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the action from the notice\n * @values true, false\n */\n hideAction: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The duration in ms the toast will display before disappearing.\n * The toast won't disappear if the duration is not provided.\n * If it's provided, it should be equal to or greater than 6000.\n */\n duration: {\n type: Number,\n default: null,\n validator: (duration) => {\n return duration >= TOAST_MIN_DURATION;\n },\n },\n },\n\n emits: [\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Sync show value\n *\n * @event update:show\n */\n 'update:show',\n ],\n\n data () {\n return {\n isShown: false,\n minDuration: TOAST_MIN_DURATION,\n };\n },\n\n computed: {\n kindClass () {\n const kindClasses = {\n error: 'd-toast--error',\n info: 'd-toast--info',\n success: 'd-toast--success',\n warning: 'd-toast--warning',\n base: 'd-toast--base',\n };\n\n return kindClasses[this.kind];\n },\n\n noticeActionListeners () {\n return {\n ...this.$listeners,\n\n close: event => {\n this.isShown = false;\n this.$emit('update:show', false);\n this.$emit('close', event);\n },\n };\n },\n\n shouldSetTimeout () {\n return !!this.duration && this.duration >= this.minDuration;\n },\n },\n\n watch: {\n show: {\n handler: function (show) {\n this.isShown = show;\n if (show) {\n this.setTimeout();\n } else {\n clearTimeout(this.displayTimer);\n }\n },\n\n immediate: true,\n },\n },\n\n destroyed () {\n if (this.shouldSetTimeout) {\n clearTimeout(this.displayTimer);\n }\n },\n\n methods: {\n setTimeout () {\n if (this.shouldSetTimeout) {\n this.displayTimer = setTimeout(() => {\n this.isShown = false;\n this.$emit('update:show', false);\n }, this.duration);\n }\n },\n },\n};\n</script>\n"],"names":["TOAST_ROLES","TOAST_MIN_DURATION","_sfc_main","name","components","DtNoticeIcon","DtNoticeContent","DtNoticeAction","mixins","SrOnlyCloseButtonMixin","props","titleId","type","String","default","utils","getUniqueString","contentId","title","message","role","validator","includes","kind","NOTICE_KINDS","important","Boolean","show","closeButtonProps","Object","hideClose","hideIcon","hideAction","duration","Number","emits","data","isShown","minDuration","computed","kindClass","kindClasses","error","info","success","warning","base","noticeActionListeners","$listeners","close","event","$emit","shouldSetTimeout","watch","handler","setTimeout","clearTimeout","displayTimer","immediate","destroyed","methods"],"mappings":"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"}
1
+ {"version":3,"file":"toast.js","sources":["../../components/toast/toast_constants.js","../../components/toast/toast.vue"],"sourcesContent":["export const TOAST_ROLES = ['status', 'alert'];\nexport const TOAST_MIN_DURATION = 6000;\n\nexport default {\n TOAST_ROLES,\n TOAST_MIN_DURATION,\n};\n","<template>\n <div\n v-if=\"isShown\"\n :class=\"[\n 'd-toast',\n kindClass,\n { 'd-toast--important': important },\n ]\"\n data-qa=\"dt-toast\"\n :aria-hidden=\"(!isShown).toString()\"\n >\n <div class=\"d-toast__dialog\">\n <dt-notice-icon\n v-if=\"!hideIcon\"\n :kind=\"kind\"\n v-on=\"$listeners\"\n >\n <!-- @slot Slot for custom icon -->\n <slot name=\"icon\" />\n </dt-notice-icon>\n <dt-notice-content\n :title-id=\"titleId\"\n :content-id=\"contentId\"\n :title=\"title\"\n :role=\"role\"\n v-on=\"$listeners\"\n >\n <template #titleOverride>\n <!-- @slot Allows you to override the title, only use this if you need to override\n with something other than text. Otherwise use the \"title\" prop. -->\n <slot name=\"titleOverride\" />\n </template>\n <!-- @slot the main textual content of the toast -->\n <slot>\n {{ message }}\n </slot>\n </dt-notice-content>\n <dt-notice-action\n :hide-action=\"hideAction\"\n :hide-close=\"hideClose\"\n :close-button-props=\"closeButtonProps\"\n :visually-hidden-close=\"visuallyHiddenClose\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n v-on=\"noticeActionListeners\"\n >\n <!-- @slot Enter a possible action for the user to take, such as a link to another page -->\n <slot name=\"action\" />\n </dt-notice-action>\n </div>\n </div>\n</template>\n\n<script>\nimport { DtNoticeIcon, DtNoticeContent, DtNoticeAction, NOTICE_KINDS } from '@/components/notice';\nimport utils from '@/common/utils';\nimport { TOAST_ROLES, TOAST_MIN_DURATION } from './toast_constants.js';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\n\n/**\n * A toast notice, sometimes called a snackbar, is a time-based message that appears based on users' actions.\n * It contains at-a-glance information about outcomes and can be paired with actions.\n * @see https://dialtone.dialpad.com/components/toast.html\n */\nexport default {\n name: 'DtToast',\n\n components: {\n DtNoticeIcon,\n DtNoticeContent,\n DtNoticeAction,\n },\n\n mixins: [SrOnlyCloseButtonMixin],\n\n props: {\n /**\n * Sets an ID on the title element of the component. Useful for aria-describedby\n * or aria-labelledby or any other reason you may need an id to refer to the title.\n */\n titleId: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Sets an ID on the content element of the component. Useful for aria-describedby\n * or aria-labelledby or any other reason you may need an id to refer to the content.\n */\n contentId: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Title header of the toast. This can be left blank to remove the title from the toast entirely.\n */\n title: {\n type: String,\n default: '',\n },\n\n /**\n * Message of the toast. Overridden by default slot.\n */\n message: {\n type: String,\n default: '',\n },\n\n /**\n * Provides a role for the toast. 'status' is used by default to communicate a message. 'alert' is used to\n * communicate an important message like an error that does not contain any interactive elements.\n * @values status, alert\n */\n role: {\n type: String,\n default: 'status',\n validator: (role) => {\n return TOAST_ROLES.includes(role);\n },\n },\n\n /**\n * Severity level of the toast, sets the icon and background\n * @values base, error, info, success, warning\n */\n kind: {\n type: String,\n default: 'base',\n validator: (kind) => {\n return NOTICE_KINDS.includes(kind);\n },\n },\n\n /**\n * Used in scenarios where the message needs to visually dominate the screen.\n * @values true, false\n */\n important: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls whether the toast is shown. If a valid duration is provided, the toast will disappear\n * after reaching the duration time, so it's convenient to use `.sync` modifier with this prop to update\n * the data in your component.\n * Supports .sync modifier\n * @values true, false\n */\n show: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Props for the toast close button.\n */\n closeButtonProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Hides the close button from the toast\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the icon from the notice\n * @values true, false\n */\n hideIcon: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the action from the notice\n * @values true, false\n */\n hideAction: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The duration in ms the toast will display before disappearing.\n * The toast won't disappear if the duration is not provided.\n * If it's provided, it should be equal to or greater than 6000.\n */\n duration: {\n type: Number,\n default: null,\n validator: (duration) => {\n return duration >= TOAST_MIN_DURATION;\n },\n },\n },\n\n emits: [\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Sync show value\n *\n * @event update:show\n */\n 'update:show',\n ],\n\n data () {\n return {\n isShown: false,\n minDuration: TOAST_MIN_DURATION,\n };\n },\n\n computed: {\n kindClass () {\n const kindClasses = {\n error: 'd-toast--error',\n info: 'd-toast--info',\n success: 'd-toast--success',\n warning: 'd-toast--warning',\n base: 'd-toast--base',\n };\n\n return kindClasses[this.kind];\n },\n\n noticeActionListeners () {\n return {\n ...this.$listeners,\n\n close: event => {\n this.isShown = false;\n this.$emit('update:show', false);\n this.$emit('close', event);\n },\n };\n },\n\n shouldSetTimeout () {\n return !!this.duration && this.duration >= this.minDuration;\n },\n },\n\n watch: {\n show: {\n handler: function (show) {\n this.isShown = show;\n if (show) {\n this.setTimeout();\n } else {\n clearTimeout(this.displayTimer);\n }\n },\n\n immediate: true,\n },\n },\n\n destroyed () {\n if (this.shouldSetTimeout) {\n clearTimeout(this.displayTimer);\n }\n },\n\n methods: {\n setTimeout () {\n if (this.shouldSetTimeout) {\n this.displayTimer = setTimeout(() => {\n this.isShown = false;\n this.$emit('update:show', false);\n }, this.duration);\n }\n },\n },\n};\n</script>\n"],"names":[],"mappings":"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"}
@@ -114,11 +114,15 @@ const _sfc_main = {
114
114
  return this.isIndeterminate ? "checkbox" : "switch";
115
115
  },
116
116
  toggleClasses() {
117
- return ["d-toggle", TOGGLE_SIZE_MODIFIERS[this.size], {
118
- "d-toggle--checked": this.internalChecked === true,
119
- "d-toggle--disabled": this.disabled,
120
- "d-toggle--indeterminate": this.isIndeterminate
121
- }];
117
+ return [
118
+ "d-toggle",
119
+ TOGGLE_SIZE_MODIFIERS[this.size],
120
+ {
121
+ "d-toggle--checked": this.internalChecked === true,
122
+ "d-toggle--disabled": this.disabled,
123
+ "d-toggle--indeterminate": this.isIndeterminate
124
+ }
125
+ ];
122
126
  }
123
127
  },
124
128
  watch: {
@@ -144,37 +148,29 @@ const _sfc_main = {
144
148
  },
145
149
  validateInputLabels(hasLabel, ariaLabel) {
146
150
  if (!hasLabel && !ariaLabel) {
147
- Vue.util.warn("You must provide an aria-label when there is no label passed", this);
151
+ Vue.util.warn(
152
+ "You must provide an aria-label when there is no label passed",
153
+ this
154
+ );
148
155
  }
149
156
  }
150
157
  }
151
158
  };
152
159
  var _sfc_render = function render() {
153
160
  var _vm = this, _c = _vm._self._c;
154
- return _c("div", {
155
- staticClass: "d-toggle-wrapper"
156
- }, [_vm.$slots.default ? _c("label", _vm._b({
157
- class: _vm.labelClass,
158
- attrs: {
159
- "for": _vm.id,
160
- "data-qa": "toggle-label"
161
- }
162
- }, "label", _vm.labelChildProps, false), [_vm._t("default")], 2) : _vm._e(), _c("button", _vm._g(_vm._b({
163
- class: _vm.toggleClasses,
164
- attrs: {
165
- "id": _vm.id,
166
- "role": _vm.toggleRole,
167
- "type": "button",
168
- "aria-checked": _vm.internalChecked.toString(),
169
- "disabled": _vm.disabled,
170
- "aria-disabled": _vm.disabled.toString()
171
- }
172
- }, "button", _vm.$attrs, false), _vm.inputListeners), [_vm.showIcon ? _c("span", {
173
- staticClass: "d-toggle__inner"
174
- }) : _vm._e()])]);
161
+ return _c("div", { staticClass: "d-toggle-wrapper" }, [_vm.$slots.default ? _c("label", _vm._b({ class: _vm.labelClass, attrs: { "for": _vm.id, "data-qa": "toggle-label" } }, "label", _vm.labelChildProps, false), [_vm._t("default")], 2) : _vm._e(), _c("button", _vm._g(_vm._b({ class: _vm.toggleClasses, attrs: { "id": _vm.id, "role": _vm.toggleRole, "type": "button", "aria-checked": _vm.internalChecked.toString(), "disabled": _vm.disabled, "aria-disabled": _vm.disabled.toString() } }, "button", _vm.$attrs, false), _vm.inputListeners), [_vm.showIcon ? _c("span", { staticClass: "d-toggle__inner" }) : _vm._e()])]);
175
162
  };
176
163
  var _sfc_staticRenderFns = [];
177
- var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, null, null, null);
164
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
165
+ _sfc_main,
166
+ _sfc_render,
167
+ _sfc_staticRenderFns,
168
+ false,
169
+ null,
170
+ null,
171
+ null,
172
+ null
173
+ );
178
174
  const toggle = __component__.exports;
179
175
  exports.DtToggle = toggle;
180
176
  exports.TOGGLE_CHECKED_VALUES = TOGGLE_CHECKED_VALUES;
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.cjs","sources":["../../components/toggle/toggle_constants.js","../../components/toggle/toggle.vue"],"sourcesContent":["export const TOGGLE_SIZE_MODIFIERS = {\n sm: 'd-toggle--small',\n md: '',\n};\n\nexport const TOGGLE_CHECKED_VALUES = [false, true, 'mixed'];\n\nexport default {\n TOGGLE_SIZE_MODIFIERS,\n TOGGLE_CHECKED_VALUES,\n};\n","<template>\n <div class=\"d-toggle-wrapper\">\n <label\n v-if=\"$slots.default\"\n :class=\"labelClass\"\n :for=\"id\"\n v-bind=\"labelChildProps\"\n data-qa=\"toggle-label\"\n >\n <!-- @slot Slot for the main content -->\n <slot />\n </label>\n <button\n :id=\"id\"\n :role=\"toggleRole\"\n type=\"button\"\n :aria-checked=\"internalChecked.toString()\"\n :disabled=\"disabled\"\n :aria-disabled=\"disabled.toString()\"\n :class=\"toggleClasses\"\n v-bind=\"$attrs\"\n v-on=\"inputListeners\"\n >\n <span\n v-if=\"showIcon\"\n class=\"d-toggle__inner\"\n />\n </button>\n </div>\n</template>\n\n<script>\nimport Vue from 'vue';\nimport utils from '@/common/utils';\nimport { TOGGLE_CHECKED_VALUES, TOGGLE_SIZE_MODIFIERS } from '@/components/toggle/toggle_constants';\n\n/**\n * A toggle (or \"switch\") is a button control element that allows the user to make a binary (on/off) selection.\n * @see https://dialtone.dialpad.com/components/toggle.html\n */\nexport default {\n\n name: 'DtToggle',\n\n inheritAttrs: false,\n\n model: {\n prop: 'checked',\n event: 'change',\n },\n\n props: {\n\n /**\n * The id of the toggle\n */\n id: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Disables the toggle interactions\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Value of the toggle\n * @model checked\n * @values true, false, 'mixed'\n */\n checked: {\n type: [Boolean, String],\n default: false,\n validator: (v) => TOGGLE_CHECKED_VALUES.includes(v),\n },\n\n /**\n * Whether the component toggles on click. If you set this to false it means you will handle the toggling manually\n * via the checked prop or v-model. Change events will still be triggered.\n * @values true, false\n */\n toggleOnClick: {\n type: Boolean,\n default: true,\n },\n\n /**\n * The size of the toggle.\n * @values sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(TOGGLE_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Shows the icon\n * @values true, false\n */\n showIcon: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Toggle change event\n *\n * @event change\n * @type {Boolean}\n * @model change\n */\n 'change',\n ],\n\n data () {\n return {\n internalChecked: this.checked,\n };\n },\n\n computed: {\n inputListeners () {\n return {\n ...this.$listeners,\n click: _ => this.toggleCheckedValue(),\n };\n },\n\n isIndeterminate () {\n return this.internalChecked === 'mixed';\n },\n\n toggleRole () {\n return this.isIndeterminate ? 'checkbox' : 'switch';\n },\n\n toggleClasses () {\n return [\n 'd-toggle',\n TOGGLE_SIZE_MODIFIERS[this.size],\n {\n 'd-toggle--checked': this.internalChecked === true,\n 'd-toggle--disabled': this.disabled,\n 'd-toggle--indeterminate': this.isIndeterminate,\n },\n ];\n },\n },\n\n watch: {\n checked (newChecked) {\n this.internalChecked = newChecked;\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n toggleCheckedValue () {\n this.$emit('change', !this.internalChecked);\n\n if (this.toggleOnClick) {\n this.internalChecked = !this.internalChecked;\n }\n },\n\n hasSlotLabel () {\n return !!(this.$slots.default);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasSlotLabel(), this.$attrs['aria-label']);\n },\n\n validateInputLabels (hasLabel, ariaLabel) {\n if (!hasLabel && !ariaLabel) {\n Vue.util.warn(\n 'You must provide an aria-label when there is no label passed',\n this,\n );\n }\n },\n },\n};\n</script>\n"],"names":["TOGGLE_SIZE_MODIFIERS","sm","md","TOGGLE_CHECKED_VALUES","_sfc_main","name","inheritAttrs","model","prop","event","props","id","type","String","default","utils","getUniqueString","disabled","Boolean","checked","validator","v","includes","toggleOnClick","size","s","Object","keys","showIcon","labelClass","Array","labelChildProps","emits","data","internalChecked","computed","inputListeners","$listeners","click","_","toggleCheckedValue","isIndeterminate","toggleRole","toggleClasses","watch","newChecked","mounted","runValidations","methods","$emit","hasSlotLabel","$slots","validateInputLabels","$attrs","hasLabel","ariaLabel","Vue","util","warn"],"mappings":";;;;;;AAAO,MAAMA,wBAAwB;AAAA,EACnCC,IAAI;AAAA,EACJC,IAAI;AACN;AAEO,MAAMC,wBAAwB,CAAC,OAAO,MAAM,OAAO;ACmC1D,MAAAC,YAAA;AAAA,EAEAC,MAAA;AAAA,EAEAC,cAAA;AAAA,EAEAC,OAAA;AAAA,IACAC,MAAA;AAAA,IACAC,OAAA;AAAA,EACA;AAAA,EAEAC,OAAA;AAAA;AAAA;AAAA;AAAA,IAKAC,IAAA;AAAA,MACAC,MAAAC;AAAAA,MACAC,UAAA;AAAA,eAAAC,aAAAA,QAAAC;MAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAC,UAAA;AAAA,MACAL,MAAAM;AAAAA,MACAJ,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOAK,SAAA;AAAA,MACAP,MAAA,CAAAM,SAAAL,MAAA;AAAA,MACAC,SAAA;AAAA,MACAM,WAAAC,OAAAlB,sBAAAmB,SAAAD,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOAE,eAAA;AAAA,MACAX,MAAAM;AAAAA,MACAJ,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAU,MAAA;AAAA,MACAZ,MAAAC;AAAAA,MACAC,SAAA;AAAA,MACAM,WAAAK,OAAAC,OAAAC,KAAA3B,qBAAA,EAAAsB,SAAAG,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAG,UAAA;AAAA,MACAhB,MAAAM;AAAAA,MACAJ,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAe,YAAA;AAAA,MACAjB,MAAA,CAAAC,QAAAiB,OAAAJ,MAAA;AAAA,MACAZ,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAiB,iBAAA;AAAA,MACAnB,MAAAc;AAAAA,MACAZ,SAAAA,OAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEAkB,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA,EAAA;AAAA,EAGAC,OAAA;AACA,WAAA;AAAA,MACAC,iBAAA,KAAAf;AAAAA;EAEA;AAAA,EAEAgB,UAAA;AAAA,IACAC,iBAAA;AACA,aAAA;AAAA,QACA,GAAA,KAAAC;AAAAA,QACAC,OAAAC,OAAA,KAAAC,mBAAA;AAAA;IAEA;AAAA,IAEAC,kBAAA;AACA,aAAA,KAAAP,oBAAA;AAAA,IACA;AAAA,IAEAQ,aAAA;AACA,aAAA,KAAAD,kBAAA,aAAA;AAAA,IACA;AAAA,IAEAE,gBAAA;AACA,aAAA,CACA,YACA3C,sBAAA,KAAAwB,IAAA,GACA;AAAA,QACA,qBAAA,KAAAU,oBAAA;AAAA,QACA,sBAAA,KAAAjB;AAAAA,QACA,2BAAA,KAAAwB;AAAAA,MACA,CAAA;AAAA,IAEA;AAAA,EACA;AAAA,EAEAG,OAAA;AAAA,IACAzB,QAAA0B,YAAA;AACA,WAAAX,kBAAAW;AAAAA,IACA;AAAA,EACA;AAAA,EAEAC,UAAA;AACA,SAAAC,eAAA;AAAA,EACA;AAAA,EAEAC,SAAA;AAAA,IACAR,qBAAA;AACA,WAAAS,MAAA,UAAA,CAAA,KAAAf,eAAA;AAEA,UAAA,KAAAX,eAAA;AACA,aAAAW,kBAAA,CAAA,KAAAA;AAAAA,MACA;AAAA,IACA;AAAA,IAEAgB,eAAA;AACA,aAAA,CAAA,CAAA,KAAAC,OAAArC;AAAAA,IACA;AAAA,IAEAiC,iBAAA;AACA,WAAAK,oBAAA,KAAAF,aAAA,GAAA,KAAAG,OAAA,YAAA,CAAA;AAAA,IACA;AAAA,IAEAD,oBAAAE,UAAAC,WAAA;AACA,UAAA,CAAAD,YAAA,CAAAC,WAAA;AACAC,YAAAC,KAAAC,KACA,gEACA,IACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"toggle.cjs","sources":["../../components/toggle/toggle_constants.js","../../components/toggle/toggle.vue"],"sourcesContent":["export const TOGGLE_SIZE_MODIFIERS = {\n sm: 'd-toggle--small',\n md: '',\n};\n\nexport const TOGGLE_CHECKED_VALUES = [false, true, 'mixed'];\n\nexport default {\n TOGGLE_SIZE_MODIFIERS,\n TOGGLE_CHECKED_VALUES,\n};\n","<template>\n <div class=\"d-toggle-wrapper\">\n <label\n v-if=\"$slots.default\"\n :class=\"labelClass\"\n :for=\"id\"\n v-bind=\"labelChildProps\"\n data-qa=\"toggle-label\"\n >\n <!-- @slot Slot for the main content -->\n <slot />\n </label>\n <button\n :id=\"id\"\n :role=\"toggleRole\"\n type=\"button\"\n :aria-checked=\"internalChecked.toString()\"\n :disabled=\"disabled\"\n :aria-disabled=\"disabled.toString()\"\n :class=\"toggleClasses\"\n v-bind=\"$attrs\"\n v-on=\"inputListeners\"\n >\n <span\n v-if=\"showIcon\"\n class=\"d-toggle__inner\"\n />\n </button>\n </div>\n</template>\n\n<script>\nimport Vue from 'vue';\nimport utils from '@/common/utils';\nimport { TOGGLE_CHECKED_VALUES, TOGGLE_SIZE_MODIFIERS } from '@/components/toggle/toggle_constants';\n\n/**\n * A toggle (or \"switch\") is a button control element that allows the user to make a binary (on/off) selection.\n * @see https://dialtone.dialpad.com/components/toggle.html\n */\nexport default {\n\n name: 'DtToggle',\n\n inheritAttrs: false,\n\n model: {\n prop: 'checked',\n event: 'change',\n },\n\n props: {\n\n /**\n * The id of the toggle\n */\n id: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Disables the toggle interactions\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Value of the toggle\n * @model checked\n * @values true, false, 'mixed'\n */\n checked: {\n type: [Boolean, String],\n default: false,\n validator: (v) => TOGGLE_CHECKED_VALUES.includes(v),\n },\n\n /**\n * Whether the component toggles on click. If you set this to false it means you will handle the toggling manually\n * via the checked prop or v-model. Change events will still be triggered.\n * @values true, false\n */\n toggleOnClick: {\n type: Boolean,\n default: true,\n },\n\n /**\n * The size of the toggle.\n * @values sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(TOGGLE_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Shows the icon\n * @values true, false\n */\n showIcon: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Toggle change event\n *\n * @event change\n * @type {Boolean}\n * @model change\n */\n 'change',\n ],\n\n data () {\n return {\n internalChecked: this.checked,\n };\n },\n\n computed: {\n inputListeners () {\n return {\n ...this.$listeners,\n click: _ => this.toggleCheckedValue(),\n };\n },\n\n isIndeterminate () {\n return this.internalChecked === 'mixed';\n },\n\n toggleRole () {\n return this.isIndeterminate ? 'checkbox' : 'switch';\n },\n\n toggleClasses () {\n return [\n 'd-toggle',\n TOGGLE_SIZE_MODIFIERS[this.size],\n {\n 'd-toggle--checked': this.internalChecked === true,\n 'd-toggle--disabled': this.disabled,\n 'd-toggle--indeterminate': this.isIndeterminate,\n },\n ];\n },\n },\n\n watch: {\n checked (newChecked) {\n this.internalChecked = newChecked;\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n toggleCheckedValue () {\n this.$emit('change', !this.internalChecked);\n\n if (this.toggleOnClick) {\n this.internalChecked = !this.internalChecked;\n }\n },\n\n hasSlotLabel () {\n return !!(this.$slots.default);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasSlotLabel(), this.$attrs['aria-label']);\n },\n\n validateInputLabels (hasLabel, ariaLabel) {\n if (!hasLabel && !ariaLabel) {\n Vue.util.warn(\n 'You must provide an aria-label when there is no label passed',\n this,\n );\n }\n },\n },\n};\n</script>\n"],"names":["utils"],"mappings":"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"}
@@ -112,11 +112,15 @@ const _sfc_main = {
112
112
  return this.isIndeterminate ? "checkbox" : "switch";
113
113
  },
114
114
  toggleClasses() {
115
- return ["d-toggle", TOGGLE_SIZE_MODIFIERS[this.size], {
116
- "d-toggle--checked": this.internalChecked === true,
117
- "d-toggle--disabled": this.disabled,
118
- "d-toggle--indeterminate": this.isIndeterminate
119
- }];
115
+ return [
116
+ "d-toggle",
117
+ TOGGLE_SIZE_MODIFIERS[this.size],
118
+ {
119
+ "d-toggle--checked": this.internalChecked === true,
120
+ "d-toggle--disabled": this.disabled,
121
+ "d-toggle--indeterminate": this.isIndeterminate
122
+ }
123
+ ];
120
124
  }
121
125
  },
122
126
  watch: {
@@ -142,37 +146,29 @@ const _sfc_main = {
142
146
  },
143
147
  validateInputLabels(hasLabel, ariaLabel) {
144
148
  if (!hasLabel && !ariaLabel) {
145
- Vue.util.warn("You must provide an aria-label when there is no label passed", this);
149
+ Vue.util.warn(
150
+ "You must provide an aria-label when there is no label passed",
151
+ this
152
+ );
146
153
  }
147
154
  }
148
155
  }
149
156
  };
150
157
  var _sfc_render = function render() {
151
158
  var _vm = this, _c = _vm._self._c;
152
- return _c("div", {
153
- staticClass: "d-toggle-wrapper"
154
- }, [_vm.$slots.default ? _c("label", _vm._b({
155
- class: _vm.labelClass,
156
- attrs: {
157
- "for": _vm.id,
158
- "data-qa": "toggle-label"
159
- }
160
- }, "label", _vm.labelChildProps, false), [_vm._t("default")], 2) : _vm._e(), _c("button", _vm._g(_vm._b({
161
- class: _vm.toggleClasses,
162
- attrs: {
163
- "id": _vm.id,
164
- "role": _vm.toggleRole,
165
- "type": "button",
166
- "aria-checked": _vm.internalChecked.toString(),
167
- "disabled": _vm.disabled,
168
- "aria-disabled": _vm.disabled.toString()
169
- }
170
- }, "button", _vm.$attrs, false), _vm.inputListeners), [_vm.showIcon ? _c("span", {
171
- staticClass: "d-toggle__inner"
172
- }) : _vm._e()])]);
159
+ return _c("div", { staticClass: "d-toggle-wrapper" }, [_vm.$slots.default ? _c("label", _vm._b({ class: _vm.labelClass, attrs: { "for": _vm.id, "data-qa": "toggle-label" } }, "label", _vm.labelChildProps, false), [_vm._t("default")], 2) : _vm._e(), _c("button", _vm._g(_vm._b({ class: _vm.toggleClasses, attrs: { "id": _vm.id, "role": _vm.toggleRole, "type": "button", "aria-checked": _vm.internalChecked.toString(), "disabled": _vm.disabled, "aria-disabled": _vm.disabled.toString() } }, "button", _vm.$attrs, false), _vm.inputListeners), [_vm.showIcon ? _c("span", { staticClass: "d-toggle__inner" }) : _vm._e()])]);
173
160
  };
174
161
  var _sfc_staticRenderFns = [];
175
- var __component__ = /* @__PURE__ */ normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, null, null, null);
162
+ var __component__ = /* @__PURE__ */ normalizeComponent(
163
+ _sfc_main,
164
+ _sfc_render,
165
+ _sfc_staticRenderFns,
166
+ false,
167
+ null,
168
+ null,
169
+ null,
170
+ null
171
+ );
176
172
  const toggle = __component__.exports;
177
173
  export {
178
174
  toggle as DtToggle,
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.js","sources":["../../components/toggle/toggle_constants.js","../../components/toggle/toggle.vue"],"sourcesContent":["export const TOGGLE_SIZE_MODIFIERS = {\n sm: 'd-toggle--small',\n md: '',\n};\n\nexport const TOGGLE_CHECKED_VALUES = [false, true, 'mixed'];\n\nexport default {\n TOGGLE_SIZE_MODIFIERS,\n TOGGLE_CHECKED_VALUES,\n};\n","<template>\n <div class=\"d-toggle-wrapper\">\n <label\n v-if=\"$slots.default\"\n :class=\"labelClass\"\n :for=\"id\"\n v-bind=\"labelChildProps\"\n data-qa=\"toggle-label\"\n >\n <!-- @slot Slot for the main content -->\n <slot />\n </label>\n <button\n :id=\"id\"\n :role=\"toggleRole\"\n type=\"button\"\n :aria-checked=\"internalChecked.toString()\"\n :disabled=\"disabled\"\n :aria-disabled=\"disabled.toString()\"\n :class=\"toggleClasses\"\n v-bind=\"$attrs\"\n v-on=\"inputListeners\"\n >\n <span\n v-if=\"showIcon\"\n class=\"d-toggle__inner\"\n />\n </button>\n </div>\n</template>\n\n<script>\nimport Vue from 'vue';\nimport utils from '@/common/utils';\nimport { TOGGLE_CHECKED_VALUES, TOGGLE_SIZE_MODIFIERS } from '@/components/toggle/toggle_constants';\n\n/**\n * A toggle (or \"switch\") is a button control element that allows the user to make a binary (on/off) selection.\n * @see https://dialtone.dialpad.com/components/toggle.html\n */\nexport default {\n\n name: 'DtToggle',\n\n inheritAttrs: false,\n\n model: {\n prop: 'checked',\n event: 'change',\n },\n\n props: {\n\n /**\n * The id of the toggle\n */\n id: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Disables the toggle interactions\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Value of the toggle\n * @model checked\n * @values true, false, 'mixed'\n */\n checked: {\n type: [Boolean, String],\n default: false,\n validator: (v) => TOGGLE_CHECKED_VALUES.includes(v),\n },\n\n /**\n * Whether the component toggles on click. If you set this to false it means you will handle the toggling manually\n * via the checked prop or v-model. Change events will still be triggered.\n * @values true, false\n */\n toggleOnClick: {\n type: Boolean,\n default: true,\n },\n\n /**\n * The size of the toggle.\n * @values sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(TOGGLE_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Shows the icon\n * @values true, false\n */\n showIcon: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Toggle change event\n *\n * @event change\n * @type {Boolean}\n * @model change\n */\n 'change',\n ],\n\n data () {\n return {\n internalChecked: this.checked,\n };\n },\n\n computed: {\n inputListeners () {\n return {\n ...this.$listeners,\n click: _ => this.toggleCheckedValue(),\n };\n },\n\n isIndeterminate () {\n return this.internalChecked === 'mixed';\n },\n\n toggleRole () {\n return this.isIndeterminate ? 'checkbox' : 'switch';\n },\n\n toggleClasses () {\n return [\n 'd-toggle',\n TOGGLE_SIZE_MODIFIERS[this.size],\n {\n 'd-toggle--checked': this.internalChecked === true,\n 'd-toggle--disabled': this.disabled,\n 'd-toggle--indeterminate': this.isIndeterminate,\n },\n ];\n },\n },\n\n watch: {\n checked (newChecked) {\n this.internalChecked = newChecked;\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n toggleCheckedValue () {\n this.$emit('change', !this.internalChecked);\n\n if (this.toggleOnClick) {\n this.internalChecked = !this.internalChecked;\n }\n },\n\n hasSlotLabel () {\n return !!(this.$slots.default);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasSlotLabel(), this.$attrs['aria-label']);\n },\n\n validateInputLabels (hasLabel, ariaLabel) {\n if (!hasLabel && !ariaLabel) {\n Vue.util.warn(\n 'You must provide an aria-label when there is no label passed',\n this,\n );\n }\n },\n },\n};\n</script>\n"],"names":["TOGGLE_SIZE_MODIFIERS","sm","md","TOGGLE_CHECKED_VALUES","_sfc_main","name","inheritAttrs","model","prop","event","props","id","type","String","default","utils","getUniqueString","disabled","Boolean","checked","validator","v","includes","toggleOnClick","size","s","Object","keys","showIcon","labelClass","Array","labelChildProps","emits","data","internalChecked","computed","inputListeners","$listeners","click","_","toggleCheckedValue","isIndeterminate","toggleRole","toggleClasses","watch","newChecked","mounted","runValidations","methods","$emit","hasSlotLabel","$slots","validateInputLabels","$attrs","hasLabel","ariaLabel","Vue","util","warn"],"mappings":"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"}
1
+ {"version":3,"file":"toggle.js","sources":["../../components/toggle/toggle_constants.js","../../components/toggle/toggle.vue"],"sourcesContent":["export const TOGGLE_SIZE_MODIFIERS = {\n sm: 'd-toggle--small',\n md: '',\n};\n\nexport const TOGGLE_CHECKED_VALUES = [false, true, 'mixed'];\n\nexport default {\n TOGGLE_SIZE_MODIFIERS,\n TOGGLE_CHECKED_VALUES,\n};\n","<template>\n <div class=\"d-toggle-wrapper\">\n <label\n v-if=\"$slots.default\"\n :class=\"labelClass\"\n :for=\"id\"\n v-bind=\"labelChildProps\"\n data-qa=\"toggle-label\"\n >\n <!-- @slot Slot for the main content -->\n <slot />\n </label>\n <button\n :id=\"id\"\n :role=\"toggleRole\"\n type=\"button\"\n :aria-checked=\"internalChecked.toString()\"\n :disabled=\"disabled\"\n :aria-disabled=\"disabled.toString()\"\n :class=\"toggleClasses\"\n v-bind=\"$attrs\"\n v-on=\"inputListeners\"\n >\n <span\n v-if=\"showIcon\"\n class=\"d-toggle__inner\"\n />\n </button>\n </div>\n</template>\n\n<script>\nimport Vue from 'vue';\nimport utils from '@/common/utils';\nimport { TOGGLE_CHECKED_VALUES, TOGGLE_SIZE_MODIFIERS } from '@/components/toggle/toggle_constants';\n\n/**\n * A toggle (or \"switch\") is a button control element that allows the user to make a binary (on/off) selection.\n * @see https://dialtone.dialpad.com/components/toggle.html\n */\nexport default {\n\n name: 'DtToggle',\n\n inheritAttrs: false,\n\n model: {\n prop: 'checked',\n event: 'change',\n },\n\n props: {\n\n /**\n * The id of the toggle\n */\n id: {\n type: String,\n default () { return utils.getUniqueString(); },\n },\n\n /**\n * Disables the toggle interactions\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Value of the toggle\n * @model checked\n * @values true, false, 'mixed'\n */\n checked: {\n type: [Boolean, String],\n default: false,\n validator: (v) => TOGGLE_CHECKED_VALUES.includes(v),\n },\n\n /**\n * Whether the component toggles on click. If you set this to false it means you will handle the toggling manually\n * via the checked prop or v-model. Change events will still be triggered.\n * @values true, false\n */\n toggleOnClick: {\n type: Boolean,\n default: true,\n },\n\n /**\n * The size of the toggle.\n * @values sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(TOGGLE_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Shows the icon\n * @values true, false\n */\n showIcon: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Toggle change event\n *\n * @event change\n * @type {Boolean}\n * @model change\n */\n 'change',\n ],\n\n data () {\n return {\n internalChecked: this.checked,\n };\n },\n\n computed: {\n inputListeners () {\n return {\n ...this.$listeners,\n click: _ => this.toggleCheckedValue(),\n };\n },\n\n isIndeterminate () {\n return this.internalChecked === 'mixed';\n },\n\n toggleRole () {\n return this.isIndeterminate ? 'checkbox' : 'switch';\n },\n\n toggleClasses () {\n return [\n 'd-toggle',\n TOGGLE_SIZE_MODIFIERS[this.size],\n {\n 'd-toggle--checked': this.internalChecked === true,\n 'd-toggle--disabled': this.disabled,\n 'd-toggle--indeterminate': this.isIndeterminate,\n },\n ];\n },\n },\n\n watch: {\n checked (newChecked) {\n this.internalChecked = newChecked;\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n toggleCheckedValue () {\n this.$emit('change', !this.internalChecked);\n\n if (this.toggleOnClick) {\n this.internalChecked = !this.internalChecked;\n }\n },\n\n hasSlotLabel () {\n return !!(this.$slots.default);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasSlotLabel(), this.$attrs['aria-label']);\n },\n\n validateInputLabels (hasLabel, ariaLabel) {\n if (!hasLabel && !ariaLabel) {\n Vue.util.warn(\n 'You must provide an aria-label when there is no label passed',\n this,\n );\n }\n },\n },\n};\n</script>\n"],"names":[],"mappings":";;;;AAAY,MAAC,wBAAwB;AAAA,EACnC,IAAI;AAAA,EACJ,IAAI;AACN;AAEY,MAAC,wBAAwB,CAAC,OAAO,MAAM,OAAO;ACmC1D,MAAA,YAAA;AAAA,EAEA,MAAA;AAAA,EAEA,cAAA;AAAA,EAEA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAKA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,eAAA,MAAA,gBAAA;AAAA,MAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,SAAA;AAAA,MACA,MAAA,CAAA,SAAA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,MAAA,sBAAA,SAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,eAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,MAAA,OAAA,KAAA,qBAAA,EAAA,SAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA,CAAA,QAAA,OAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,iBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA,OAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,iBAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,iBAAA;AACA,aAAA;AAAA,QACA,GAAA,KAAA;AAAA,QACA,OAAA,OAAA,KAAA,mBAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,kBAAA;AACA,aAAA,KAAA,oBAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,aAAA,KAAA,kBAAA,aAAA;AAAA,IACA;AAAA,IAEA,gBAAA;AACA,aAAA;AAAA,QACA;AAAA,QACA,sBAAA,KAAA,IAAA;AAAA,QACA;AAAA,UACA,qBAAA,KAAA,oBAAA;AAAA,UACA,sBAAA,KAAA;AAAA,UACA,2BAAA,KAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,QAAA,YAAA;AACA,WAAA,kBAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,SAAA,eAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,qBAAA;AACA,WAAA,MAAA,UAAA,CAAA,KAAA,eAAA;AAEA,UAAA,KAAA,eAAA;AACA,aAAA,kBAAA,CAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,aAAA,CAAA,CAAA,KAAA,OAAA;AAAA,IACA;AAAA,IAEA,iBAAA;AACA,WAAA,oBAAA,KAAA,aAAA,GAAA,KAAA,OAAA,YAAA,CAAA;AAAA,IACA;AAAA,IAEA,oBAAA,UAAA,WAAA;AACA,UAAA,CAAA,YAAA,CAAA,WAAA;AACA,YAAA,KAAA;AAAA,UACA;AAAA,UACA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;"}