@dialpad/dialtone-vue 2.152.0 → 2.153.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (399) hide show
  1. package/dist/chunks/{dropdown-6UoczdUY.js → dropdown-YdCyJ5Dq.js} +77 -41
  2. package/dist/chunks/{dropdown-6UoczdUY.js.map → dropdown-YdCyJ5Dq.js.map} +1 -1
  3. package/dist/chunks/{dropdown-pHxnQPzT.js → dropdown-mjrYu_mK.js} +77 -41
  4. package/dist/chunks/{dropdown-pHxnQPzT.js.map → dropdown-mjrYu_mK.js.map} +1 -1
  5. package/dist/chunks/dropdown_constants-2pGCXy7m.js.map +1 -1
  6. package/dist/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -1
  7. package/dist/chunks/{icon_constants-Dy4MEUJL.js → icon_constants-TdxqLsS2.js} +3 -2
  8. package/dist/chunks/icon_constants-TdxqLsS2.js.map +1 -0
  9. package/dist/chunks/{icon_constants-QYpmdE0R.js → icon_constants-VEA0wI5C.js} +3 -2
  10. package/dist/chunks/icon_constants-VEA0wI5C.js.map +1 -0
  11. package/dist/chunks/{index-gj1jEXP4.js → index-DyqUqjvI.js} +122 -87
  12. package/dist/chunks/{index-gj1jEXP4.js.map → index-DyqUqjvI.js.map} +1 -1
  13. package/dist/chunks/{index-anN_sx1F.js → index-NYFNZeHH.js} +5 -13
  14. package/dist/chunks/{index-anN_sx1F.js.map → index-NYFNZeHH.js.map} +1 -1
  15. package/dist/chunks/{index-ODod4Oj_.js → index-i65YVk-U.js} +5 -13
  16. package/dist/chunks/{index-ODod4Oj_.js.map → index-i65YVk-U.js.map} +1 -1
  17. package/dist/chunks/{index-eJ-WWRdf.js → index-mBWay1Qb.js} +122 -87
  18. package/dist/chunks/{index-eJ-WWRdf.js.map → index-mBWay1Qb.js.map} +1 -1
  19. package/dist/chunks/{input-Axw-wFj2.js → input-Hqw33WBe.js} +3 -9
  20. package/dist/chunks/{input-Axw-wFj2.js.map → input-Hqw33WBe.js.map} +1 -1
  21. package/dist/chunks/{input-6kbd8Pju.js → input-PhJeBN6r.js} +3 -9
  22. package/dist/chunks/{input-6kbd8Pju.js.map → input-PhJeBN6r.js.map} +1 -1
  23. package/dist/chunks/{input_group-qVZaS5Bb.js → input_group-ZI7aVGEp.js} +4 -2
  24. package/dist/chunks/{input_group-m3cWYUfI.js.map → input_group-ZI7aVGEp.js.map} +1 -1
  25. package/dist/chunks/{input_group-m3cWYUfI.js → input_group-pE6ec9R3.js} +4 -2
  26. package/dist/chunks/{input_group-qVZaS5Bb.js.map → input_group-pE6ec9R3.js.map} +1 -1
  27. package/dist/chunks/{keyboard_list_navigation-ScXhrxya.js → keyboard_list_navigation-YIqTuw1W.js} +6 -5
  28. package/dist/chunks/{keyboard_list_navigation-fJnl_Iox.js.map → keyboard_list_navigation-YIqTuw1W.js.map} +1 -1
  29. package/dist/chunks/{keyboard_list_navigation-fJnl_Iox.js → keyboard_list_navigation-x3D6RcC7.js} +6 -5
  30. package/dist/chunks/{keyboard_list_navigation-ScXhrxya.js.map → keyboard_list_navigation-x3D6RcC7.js.map} +1 -1
  31. package/dist/chunks/link_constants-AfTWrr-n.js.map +1 -1
  32. package/dist/chunks/link_constants-x8NwdqmA.js.map +1 -1
  33. package/dist/chunks/list_item_constants-EiqkqZvP.js.map +1 -1
  34. package/dist/chunks/list_item_constants-u1xcN9Dd.js.map +1 -1
  35. package/dist/chunks/{modal-XOr4kiNZ.js → modal-8X6poIZW.js} +4 -2
  36. package/dist/chunks/{modal-XOr4kiNZ.js.map → modal-8X6poIZW.js.map} +1 -1
  37. package/dist/chunks/{modal-VgxXAQFP.js → modal-OaWxzqNt.js} +4 -2
  38. package/dist/chunks/{modal-VgxXAQFP.js.map → modal-OaWxzqNt.js.map} +1 -1
  39. package/dist/chunks/{notice_action-IRUoLX2d.js → notice_action-qQr3K2TC.js} +71 -46
  40. package/dist/chunks/{notice_action-IRUoLX2d.js.map → notice_action-qQr3K2TC.js.map} +1 -1
  41. package/dist/chunks/{notice_action-P6uDyE9x.js → notice_action-tEvvMg7Q.js} +71 -46
  42. package/dist/chunks/{notice_action-P6uDyE9x.js.map → notice_action-tEvvMg7Q.js.map} +1 -1
  43. package/dist/chunks/notice_constants-7Qt2CQEY.js.map +1 -1
  44. package/dist/chunks/notice_constants-UXo9e3bS.js.map +1 -1
  45. package/dist/chunks/{popover_constants-WsOUIY-m.js → popover_constants-6YkPPbnk.js} +26 -47
  46. package/dist/chunks/{popover_constants-WsOUIY-m.js.map → popover_constants-6YkPPbnk.js.map} +1 -1
  47. package/dist/chunks/{popover_constants-XnGWXaxX.js → popover_constants-h9MD6WUt.js} +26 -47
  48. package/dist/chunks/{popover_constants-XnGWXaxX.js.map → popover_constants-h9MD6WUt.js.map} +1 -1
  49. package/dist/chunks/{sr_only_close_button-ZaGdAHz7.js → sr_only_close_button-2Q9Ny1Nc.js} +24 -18
  50. package/dist/chunks/{sr_only_close_button-ZaGdAHz7.js.map → sr_only_close_button-2Q9Ny1Nc.js.map} +1 -1
  51. package/dist/chunks/{sr_only_close_button-81bHIpPu.js → sr_only_close_button-IjMVfBDE.js} +24 -18
  52. package/dist/chunks/{sr_only_close_button-81bHIpPu.js.map → sr_only_close_button-IjMVfBDE.js.map} +1 -1
  53. package/dist/chunks/stack_constants-HraCekPm.js.map +1 -1
  54. package/dist/chunks/stack_constants-SMzMWnAQ.js.map +1 -1
  55. package/dist/chunks/{tab-FcsV5VmK.js → tab-79yMX6m6.js} +86 -68
  56. package/dist/chunks/{tab-V4cb44Ry.js.map → tab-79yMX6m6.js.map} +1 -1
  57. package/dist/chunks/{tab-V4cb44Ry.js → tab-muPOS7JE.js} +86 -68
  58. package/dist/chunks/{tab-FcsV5VmK.js.map → tab-muPOS7JE.js.map} +1 -1
  59. package/dist/common/constants.cjs.map +1 -1
  60. package/dist/common/constants.js.map +1 -1
  61. package/dist/common/dates.cjs +3 -1
  62. package/dist/common/dates.cjs.map +1 -1
  63. package/dist/common/dates.js +3 -1
  64. package/dist/common/dates.js.map +1 -1
  65. package/dist/common/emoji.cjs +1 -1
  66. package/dist/common/emoji.js +1 -1
  67. package/dist/common/mixins.cjs +3 -3
  68. package/dist/common/mixins.js +3 -3
  69. package/dist/common/utils.cjs +8 -44
  70. package/dist/common/utils.cjs.map +1 -1
  71. package/dist/common/utils.js +8 -44
  72. package/dist/common/utils.js.map +1 -1
  73. package/dist/common/validators.cjs.map +1 -1
  74. package/dist/common/validators.js.map +1 -1
  75. package/dist/component-documentation.json +1 -1
  76. package/dist/dialtone-vue.cjs +12 -12
  77. package/dist/dialtone-vue.js +12 -12
  78. package/dist/lib/attachment-carousel.cjs +172 -48
  79. package/dist/lib/attachment-carousel.cjs.map +1 -1
  80. package/dist/lib/attachment-carousel.js +172 -48
  81. package/dist/lib/attachment-carousel.js.map +1 -1
  82. package/dist/lib/avatar.cjs +75 -58
  83. package/dist/lib/avatar.cjs.map +1 -1
  84. package/dist/lib/avatar.js +75 -58
  85. package/dist/lib/avatar.js.map +1 -1
  86. package/dist/lib/badge.cjs +31 -20
  87. package/dist/lib/badge.cjs.map +1 -1
  88. package/dist/lib/badge.js +31 -20
  89. package/dist/lib/badge.js.map +1 -1
  90. package/dist/lib/banner.cjs +53 -29
  91. package/dist/lib/banner.cjs.map +1 -1
  92. package/dist/lib/banner.js +53 -29
  93. package/dist/lib/banner.js.map +1 -1
  94. package/dist/lib/breadcrumbs.cjs +36 -30
  95. package/dist/lib/breadcrumbs.cjs.map +1 -1
  96. package/dist/lib/breadcrumbs.js +36 -30
  97. package/dist/lib/breadcrumbs.js.map +1 -1
  98. package/dist/lib/button-group.cjs +7 -14
  99. package/dist/lib/button-group.cjs.map +1 -1
  100. package/dist/lib/button-group.js +7 -14
  101. package/dist/lib/button-group.js.map +1 -1
  102. package/dist/lib/button.cjs +55 -62
  103. package/dist/lib/button.cjs.map +1 -1
  104. package/dist/lib/button.js +55 -62
  105. package/dist/lib/button.js.map +1 -1
  106. package/dist/lib/callbar-button-with-popover.cjs +91 -23
  107. package/dist/lib/callbar-button-with-popover.cjs.map +1 -1
  108. package/dist/lib/callbar-button-with-popover.js +91 -23
  109. package/dist/lib/callbar-button-with-popover.js.map +1 -1
  110. package/dist/lib/callbar-button.cjs +49 -33
  111. package/dist/lib/callbar-button.cjs.map +1 -1
  112. package/dist/lib/callbar-button.js +49 -33
  113. package/dist/lib/callbar-button.js.map +1 -1
  114. package/dist/lib/callbox.cjs +78 -15
  115. package/dist/lib/callbox.cjs.map +1 -1
  116. package/dist/lib/callbox.js +78 -15
  117. package/dist/lib/callbox.js.map +1 -1
  118. package/dist/lib/card.cjs +16 -23
  119. package/dist/lib/card.cjs.map +1 -1
  120. package/dist/lib/card.js +16 -23
  121. package/dist/lib/card.js.map +1 -1
  122. package/dist/lib/checkbox-group.cjs +3 -15
  123. package/dist/lib/checkbox-group.cjs.map +1 -1
  124. package/dist/lib/checkbox-group.js +3 -15
  125. package/dist/lib/checkbox-group.js.map +1 -1
  126. package/dist/lib/checkbox.cjs +52 -16
  127. package/dist/lib/checkbox.cjs.map +1 -1
  128. package/dist/lib/checkbox.js +52 -16
  129. package/dist/lib/checkbox.js.map +1 -1
  130. package/dist/lib/chip.cjs +58 -26
  131. package/dist/lib/chip.cjs.map +1 -1
  132. package/dist/lib/chip.js +58 -26
  133. package/dist/lib/chip.js.map +1 -1
  134. package/dist/lib/codeblock.cjs +4 -11
  135. package/dist/lib/codeblock.cjs.map +1 -1
  136. package/dist/lib/codeblock.js +4 -11
  137. package/dist/lib/codeblock.js.map +1 -1
  138. package/dist/lib/collapsible.cjs +91 -34
  139. package/dist/lib/collapsible.cjs.map +1 -1
  140. package/dist/lib/collapsible.js +91 -34
  141. package/dist/lib/collapsible.js.map +1 -1
  142. package/dist/lib/combobox-multi-select.cjs +131 -38
  143. package/dist/lib/combobox-multi-select.cjs.map +1 -1
  144. package/dist/lib/combobox-multi-select.js +131 -38
  145. package/dist/lib/combobox-multi-select.js.map +1 -1
  146. package/dist/lib/combobox-with-popover.cjs +130 -39
  147. package/dist/lib/combobox-with-popover.cjs.map +1 -1
  148. package/dist/lib/combobox-with-popover.js +130 -39
  149. package/dist/lib/combobox-with-popover.js.map +1 -1
  150. package/dist/lib/combobox.cjs +3 -3
  151. package/dist/lib/combobox.js +3 -3
  152. package/dist/lib/contact-centers-row.cjs +86 -29
  153. package/dist/lib/contact-centers-row.cjs.map +1 -1
  154. package/dist/lib/contact-centers-row.js +86 -29
  155. package/dist/lib/contact-centers-row.js.map +1 -1
  156. package/dist/lib/contact-info.cjs +95 -24
  157. package/dist/lib/contact-info.cjs.map +1 -1
  158. package/dist/lib/contact-info.js +95 -24
  159. package/dist/lib/contact-info.js.map +1 -1
  160. package/dist/lib/contact-row.cjs +61 -18
  161. package/dist/lib/contact-row.cjs.map +1 -1
  162. package/dist/lib/contact-row.js +61 -18
  163. package/dist/lib/contact-row.js.map +1 -1
  164. package/dist/lib/datepicker.cjs +361 -102
  165. package/dist/lib/datepicker.cjs.map +1 -1
  166. package/dist/lib/datepicker.js +361 -102
  167. package/dist/lib/datepicker.js.map +1 -1
  168. package/dist/lib/description-list.cjs +11 -12
  169. package/dist/lib/description-list.cjs.map +1 -1
  170. package/dist/lib/description-list.js +11 -12
  171. package/dist/lib/description-list.js.map +1 -1
  172. package/dist/lib/dropdown.cjs +13 -17
  173. package/dist/lib/dropdown.cjs.map +1 -1
  174. package/dist/lib/dropdown.js +13 -17
  175. package/dist/lib/dropdown.js.map +1 -1
  176. package/dist/lib/editor.cjs +409 -109
  177. package/dist/lib/editor.cjs.map +1 -1
  178. package/dist/lib/editor.js +409 -109
  179. package/dist/lib/editor.js.map +1 -1
  180. package/dist/lib/emoji-picker.cjs +512 -234
  181. package/dist/lib/emoji-picker.cjs.map +1 -1
  182. package/dist/lib/emoji-picker.js +512 -234
  183. package/dist/lib/emoji-picker.js.map +1 -1
  184. package/dist/lib/emoji-row.cjs +69 -31
  185. package/dist/lib/emoji-row.cjs.map +1 -1
  186. package/dist/lib/emoji-row.js +69 -31
  187. package/dist/lib/emoji-row.js.map +1 -1
  188. package/dist/lib/emoji-text-wrapper.cjs +14 -22
  189. package/dist/lib/emoji-text-wrapper.cjs.map +1 -1
  190. package/dist/lib/emoji-text-wrapper.js +14 -22
  191. package/dist/lib/emoji-text-wrapper.js.map +1 -1
  192. package/dist/lib/emoji.cjs +40 -13
  193. package/dist/lib/emoji.cjs.map +1 -1
  194. package/dist/lib/emoji.js +40 -13
  195. package/dist/lib/emoji.js.map +1 -1
  196. package/dist/lib/empty-state.cjs +27 -12
  197. package/dist/lib/empty-state.cjs.map +1 -1
  198. package/dist/lib/empty-state.js +27 -12
  199. package/dist/lib/empty-state.js.map +1 -1
  200. package/dist/lib/feed-item-row.cjs +106 -27
  201. package/dist/lib/feed-item-row.cjs.map +1 -1
  202. package/dist/lib/feed-item-row.js +106 -27
  203. package/dist/lib/feed-item-row.js.map +1 -1
  204. package/dist/lib/feed-pill.cjs +90 -35
  205. package/dist/lib/feed-pill.cjs.map +1 -1
  206. package/dist/lib/feed-pill.js +90 -35
  207. package/dist/lib/feed-pill.js.map +1 -1
  208. package/dist/lib/general-row.cjs +184 -75
  209. package/dist/lib/general-row.cjs.map +1 -1
  210. package/dist/lib/general-row.js +184 -75
  211. package/dist/lib/general-row.js.map +1 -1
  212. package/dist/lib/group-row.cjs +27 -16
  213. package/dist/lib/group-row.cjs.map +1 -1
  214. package/dist/lib/group-row.js +27 -16
  215. package/dist/lib/group-row.js.map +1 -1
  216. package/dist/lib/grouped-chip.cjs +68 -20
  217. package/dist/lib/grouped-chip.cjs.map +1 -1
  218. package/dist/lib/grouped-chip.js +68 -20
  219. package/dist/lib/grouped-chip.js.map +1 -1
  220. package/dist/lib/hovercard.cjs +71 -41
  221. package/dist/lib/hovercard.cjs.map +1 -1
  222. package/dist/lib/hovercard.js +71 -41
  223. package/dist/lib/hovercard.js.map +1 -1
  224. package/dist/lib/icon.cjs +10 -12
  225. package/dist/lib/icon.cjs.map +1 -1
  226. package/dist/lib/icon.js +10 -12
  227. package/dist/lib/icon.js.map +1 -1
  228. package/dist/lib/illustration.cjs +9 -12
  229. package/dist/lib/illustration.cjs.map +1 -1
  230. package/dist/lib/illustration.js +9 -12
  231. package/dist/lib/illustration.js.map +1 -1
  232. package/dist/lib/image-viewer.cjs +98 -23
  233. package/dist/lib/image-viewer.cjs.map +1 -1
  234. package/dist/lib/image-viewer.js +98 -23
  235. package/dist/lib/image-viewer.js.map +1 -1
  236. package/dist/lib/input-group.cjs +24 -14
  237. package/dist/lib/input-group.cjs.map +1 -1
  238. package/dist/lib/input-group.js +24 -14
  239. package/dist/lib/input-group.js.map +1 -1
  240. package/dist/lib/input.cjs +108 -40
  241. package/dist/lib/input.cjs.map +1 -1
  242. package/dist/lib/input.js +108 -40
  243. package/dist/lib/input.js.map +1 -1
  244. package/dist/lib/item-layout.cjs +42 -11
  245. package/dist/lib/item-layout.cjs.map +1 -1
  246. package/dist/lib/item-layout.js +42 -11
  247. package/dist/lib/item-layout.js.map +1 -1
  248. package/dist/lib/ivr-node.cjs +135 -47
  249. package/dist/lib/ivr-node.cjs.map +1 -1
  250. package/dist/lib/ivr-node.js +135 -47
  251. package/dist/lib/ivr-node.js.map +1 -1
  252. package/dist/lib/keyboard-shortcut.cjs +35 -23
  253. package/dist/lib/keyboard-shortcut.cjs.map +1 -1
  254. package/dist/lib/keyboard-shortcut.js +35 -23
  255. package/dist/lib/keyboard-shortcut.js.map +1 -1
  256. package/dist/lib/lazy-show.cjs +15 -11
  257. package/dist/lib/lazy-show.cjs.map +1 -1
  258. package/dist/lib/lazy-show.js +15 -11
  259. package/dist/lib/lazy-show.js.map +1 -1
  260. package/dist/lib/link.cjs +9 -15
  261. package/dist/lib/link.cjs.map +1 -1
  262. package/dist/lib/link.js +9 -15
  263. package/dist/lib/link.js.map +1 -1
  264. package/dist/lib/list-item-group.cjs +17 -11
  265. package/dist/lib/list-item-group.cjs.map +1 -1
  266. package/dist/lib/list-item-group.js +17 -11
  267. package/dist/lib/list-item-group.js.map +1 -1
  268. package/dist/lib/list-item.cjs +42 -23
  269. package/dist/lib/list-item.cjs.map +1 -1
  270. package/dist/lib/list-item.js +42 -23
  271. package/dist/lib/list-item.js.map +1 -1
  272. package/dist/lib/message-input.cjs +367 -97
  273. package/dist/lib/message-input.cjs.map +1 -1
  274. package/dist/lib/message-input.js +367 -97
  275. package/dist/lib/message-input.js.map +1 -1
  276. package/dist/lib/modal.cjs +94 -36
  277. package/dist/lib/modal.cjs.map +1 -1
  278. package/dist/lib/modal.js +94 -36
  279. package/dist/lib/modal.js.map +1 -1
  280. package/dist/lib/notice.cjs +40 -21
  281. package/dist/lib/notice.cjs.map +1 -1
  282. package/dist/lib/notice.js +40 -21
  283. package/dist/lib/notice.js.map +1 -1
  284. package/dist/lib/pagination.cjs +81 -20
  285. package/dist/lib/pagination.cjs.map +1 -1
  286. package/dist/lib/pagination.js +81 -20
  287. package/dist/lib/pagination.js.map +1 -1
  288. package/dist/lib/popover.cjs +194 -75
  289. package/dist/lib/popover.cjs.map +1 -1
  290. package/dist/lib/popover.js +195 -76
  291. package/dist/lib/popover.js.map +1 -1
  292. package/dist/lib/presence.cjs +23 -22
  293. package/dist/lib/presence.cjs.map +1 -1
  294. package/dist/lib/presence.js +23 -22
  295. package/dist/lib/presence.js.map +1 -1
  296. package/dist/lib/radio-group.cjs +2 -11
  297. package/dist/lib/radio-group.cjs.map +1 -1
  298. package/dist/lib/radio-group.js +2 -11
  299. package/dist/lib/radio-group.js.map +1 -1
  300. package/dist/lib/radio.cjs +47 -15
  301. package/dist/lib/radio.cjs.map +1 -1
  302. package/dist/lib/radio.js +47 -15
  303. package/dist/lib/radio.js.map +1 -1
  304. package/dist/lib/rich-text-editor.cjs +340 -327
  305. package/dist/lib/rich-text-editor.cjs.map +1 -1
  306. package/dist/lib/rich-text-editor.js +340 -327
  307. package/dist/lib/rich-text-editor.js.map +1 -1
  308. package/dist/lib/root-layout.cjs +33 -15
  309. package/dist/lib/root-layout.cjs.map +1 -1
  310. package/dist/lib/root-layout.js +33 -15
  311. package/dist/lib/root-layout.js.map +1 -1
  312. package/dist/lib/scrollbar-directive.cjs.map +1 -1
  313. package/dist/lib/scrollbar-directive.js.map +1 -1
  314. package/dist/lib/select-menu.cjs +52 -33
  315. package/dist/lib/select-menu.cjs.map +1 -1
  316. package/dist/lib/select-menu.js +52 -33
  317. package/dist/lib/select-menu.js.map +1 -1
  318. package/dist/lib/settings-menu-button.cjs +42 -16
  319. package/dist/lib/settings-menu-button.cjs.map +1 -1
  320. package/dist/lib/settings-menu-button.js +42 -16
  321. package/dist/lib/settings-menu-button.js.map +1 -1
  322. package/dist/lib/skeleton.cjs +118 -93
  323. package/dist/lib/skeleton.cjs.map +1 -1
  324. package/dist/lib/skeleton.js +118 -93
  325. package/dist/lib/skeleton.js.map +1 -1
  326. package/dist/lib/split-button.cjs +164 -64
  327. package/dist/lib/split-button.cjs.map +1 -1
  328. package/dist/lib/split-button.js +164 -64
  329. package/dist/lib/split-button.js.map +1 -1
  330. package/dist/lib/stack.cjs +21 -33
  331. package/dist/lib/stack.cjs.map +1 -1
  332. package/dist/lib/stack.js +21 -33
  333. package/dist/lib/stack.js.map +1 -1
  334. package/dist/lib/tabs.cjs +20 -13
  335. package/dist/lib/tabs.cjs.map +1 -1
  336. package/dist/lib/tabs.js +20 -13
  337. package/dist/lib/tabs.js.map +1 -1
  338. package/dist/lib/time-pill.cjs +8 -11
  339. package/dist/lib/time-pill.cjs.map +1 -1
  340. package/dist/lib/time-pill.js +8 -11
  341. package/dist/lib/time-pill.js.map +1 -1
  342. package/dist/lib/toast.cjs +42 -21
  343. package/dist/lib/toast.cjs.map +1 -1
  344. package/dist/lib/toast.js +42 -21
  345. package/dist/lib/toast.js.map +1 -1
  346. package/dist/lib/toggle.cjs +28 -24
  347. package/dist/lib/toggle.cjs.map +1 -1
  348. package/dist/lib/toggle.js +28 -24
  349. package/dist/lib/toggle.js.map +1 -1
  350. package/dist/lib/tooltip-directive.cjs +32 -26
  351. package/dist/lib/tooltip-directive.cjs.map +1 -1
  352. package/dist/lib/tooltip-directive.js +32 -26
  353. package/dist/lib/tooltip-directive.js.map +1 -1
  354. package/dist/lib/tooltip.cjs +31 -21
  355. package/dist/lib/tooltip.cjs.map +1 -1
  356. package/dist/lib/tooltip.js +32 -22
  357. package/dist/lib/tooltip.js.map +1 -1
  358. package/dist/lib/top-banner-info.cjs +18 -21
  359. package/dist/lib/top-banner-info.cjs.map +1 -1
  360. package/dist/lib/top-banner-info.js +18 -21
  361. package/dist/lib/top-banner-info.js.map +1 -1
  362. package/dist/lib/unread-pill.cjs +18 -12
  363. package/dist/lib/unread-pill.cjs.map +1 -1
  364. package/dist/lib/unread-pill.js +18 -12
  365. package/dist/lib/unread-pill.js.map +1 -1
  366. package/dist/lib/validation-messages.cjs +23 -16
  367. package/dist/lib/validation-messages.cjs.map +1 -1
  368. package/dist/lib/validation-messages.js +23 -16
  369. package/dist/lib/validation-messages.js.map +1 -1
  370. package/dist/style.css +5 -0
  371. package/dist/types/common/emoji/index.d.ts +2 -59236
  372. package/dist/types/common/emoji/index.d.ts.map +1 -1
  373. package/dist/types/components/button/button.vue.d.ts +1 -1
  374. package/dist/types/components/chip/chip.vue.d.ts +1 -1
  375. package/dist/types/components/combobox/combobox.vue.d.ts +1 -1
  376. package/dist/types/components/icon/icon.vue.d.ts +2 -2
  377. package/dist/types/components/icon/icon_constants.d.ts +1 -1
  378. package/dist/types/components/icon/icon_constants.d.ts.map +1 -1
  379. package/dist/types/components/illustration/illustration.vue.d.ts +2 -2
  380. package/dist/types/components/illustration/illustration_constants.d.ts +1 -1
  381. package/dist/types/components/illustration/illustration_constants.d.ts.map +1 -1
  382. package/dist/types/components/image_viewer/image_viewer.vue.d.ts +21 -0
  383. package/dist/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  384. package/dist/types/components/input/input.vue.d.ts +1 -1
  385. package/dist/types/components/modal/modal.vue.d.ts +1 -1
  386. package/dist/types/components/rich_text_editor/extensions/custom_link/custom_link.d.ts.map +1 -1
  387. package/dist/types/components/rich_text_editor/mention_suggestion.d.ts.map +1 -1
  388. package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts +5 -3
  389. package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  390. package/dist/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
  391. package/dist/types/components/toast/toast.vue.d.ts +1 -1
  392. package/dist/types/components/tooltip/tooltip.vue.d.ts +1 -1
  393. package/dist/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +1 -1
  394. package/dist/types/recipes/conversation_view/editor/editor.vue.d.ts +1 -1
  395. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  396. package/dist/types/recipes/conversation_view/message_input/message_input.vue.d.ts +1 -1
  397. package/package.json +5 -4
  398. package/dist/chunks/icon_constants-Dy4MEUJL.js.map +0 -1
  399. package/dist/chunks/icon_constants-QYpmdE0R.js.map +0 -1
@@ -7,9 +7,9 @@ import { DtButton } from "./button.js";
7
7
  import { DtBadge } from "./badge.js";
8
8
  import "../common/constants.js";
9
9
  import "vue";
10
- import "../chunks/index-ODod4Oj_.js";
10
+ import "../chunks/index-i65YVk-U.js";
11
11
  import "emoji-toolkit/emoji_strategy.json";
12
- import "../chunks/icon_constants-Dy4MEUJL.js";
12
+ import "../chunks/icon_constants-TdxqLsS2.js";
13
13
  import "@dialpad/dialtone-icons/icons.json";
14
14
  import "./emoji.js";
15
15
  import "./skeleton.js";
@@ -93,14 +93,10 @@ const _sfc_main = {
93
93
  },
94
94
  computed: {
95
95
  leftbarContactCentersRowClasses() {
96
- return [
97
- "dt-leftbar-row",
98
- "dt-leftbar-row--contact-centers",
99
- {
100
- "dt-leftbar-row--unread-count": this.showUnreadCount,
101
- "dt-leftbar-row--selected": this.selected
102
- }
103
- ];
96
+ return ["dt-leftbar-row", "dt-leftbar-row--contact-centers", {
97
+ "dt-leftbar-row--unread-count": this.showUnreadCount,
98
+ "dt-leftbar-row--selected": this.selected
99
+ }];
104
100
  },
105
101
  getAriaLabel() {
106
102
  return this.ariaLabel ? this.ariaLabel : safeConcatStrings([this.description, this.unreadCountTooltip]);
@@ -139,27 +135,88 @@ const _sfc_main = {
139
135
  };
140
136
  var _sfc_render = function render() {
141
137
  var _vm = this, _c = _vm._self._c;
142
- return _c("div", { class: [
143
- "dt-leftbar-row__container",
144
- { "dt-leftbar-row__container--off-duty": _vm.$slots.timer }
145
- ] }, [_c("div", { class: _vm.leftbarContactCentersRowClasses, attrs: { "data-qa": "dt-recipe-contact-centers-row" } }, [_c("a", _vm._g(_vm._b({ staticClass: "dt-leftbar-row__primary", attrs: { "data-qa": _vm.$attrs["data-qa"] ?? "dt-leftbar-row-link", "aria-label": _vm.getAriaLabel, "title": _vm.description, "href": _vm.$attrs.href ?? "javascript:void(0)" } }, "a", _vm.$attrs, false), _vm.$listeners), [_c("div", { staticClass: "dt-leftbar-row__alpha" }, [_c("dt-icon-headphones", { attrs: { "size": "300", "data-qa": "dt-leftbar-row-icon" } })], 1), _c("div", { staticClass: "dt-leftbar-row__label", style: `flex-basis: ${_vm.labelWidth}` }, [_c("dt-emoji-text-wrapper", { staticClass: "dt-leftbar-row__description", attrs: { "data-qa": "dt-leftbar-row-description", "size": "200" } }, [_vm._v(" " + _vm._s(_vm.description) + " ")])], 1)]), _c("div", { directives: [{ name: "show", rawName: "v-show", value: !_vm.hideActions, expression: "!hideActions" }], staticClass: "dt-leftbar-row__omega" }, [_vm._t("right"), _c("div", { staticClass: "dt-leftbar-row__action-container" }, [_vm.showUnreadCount ? _c("dt-badge", { staticClass: "dt-leftbar-row__unread-badge", attrs: { "data-qa": "dt-leftbar-row-unread-badge", "kind": "count", "type": "bulletin" } }, [_vm._v(" " + _vm._s(_vm.unreadCount) + " ")]) : _vm._e(), _c("dt-button", { staticClass: "dt-leftbar-row__action", attrs: { "data-qa": "dt-leftbar-row-action-button", "aria-label": _vm.menuButtonAriaLabel, "importance": "clear", "size": "xs", "circle": "" }, on: { "click": function($event) {
146
- $event.stopPropagation();
147
- return _vm.$emit("click-menu", $event);
148
- } }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
149
- return [_c("dt-icon-chevron-down", { attrs: { "size": "100" } })];
150
- }, proxy: true }]) })], 1)], 2)]), _c("div", { staticClass: "dt-leftbar-row__bottom" }, [_vm._t("timer")], 2)]);
138
+ return _c("div", {
139
+ class: ["dt-leftbar-row__container", {
140
+ "dt-leftbar-row__container--off-duty": _vm.$slots.timer
141
+ }]
142
+ }, [_c("div", {
143
+ class: _vm.leftbarContactCentersRowClasses,
144
+ attrs: {
145
+ "data-qa": "dt-recipe-contact-centers-row"
146
+ }
147
+ }, [_c("a", _vm._g(_vm._b({
148
+ staticClass: "dt-leftbar-row__primary",
149
+ attrs: {
150
+ "data-qa": _vm.$attrs["data-qa"] ?? "dt-leftbar-row-link",
151
+ "aria-label": _vm.getAriaLabel,
152
+ "title": _vm.description,
153
+ "href": _vm.$attrs.href ?? "javascript:void(0)"
154
+ }
155
+ }, "a", _vm.$attrs, false), _vm.$listeners), [_c("div", {
156
+ staticClass: "dt-leftbar-row__alpha"
157
+ }, [_c("dt-icon-headphones", {
158
+ attrs: {
159
+ "size": "300",
160
+ "data-qa": "dt-leftbar-row-icon"
161
+ }
162
+ })], 1), _c("div", {
163
+ staticClass: "dt-leftbar-row__label",
164
+ style: `flex-basis: ${_vm.labelWidth}`
165
+ }, [_c("dt-emoji-text-wrapper", {
166
+ staticClass: "dt-leftbar-row__description",
167
+ attrs: {
168
+ "data-qa": "dt-leftbar-row-description",
169
+ "size": "200"
170
+ }
171
+ }, [_vm._v(" " + _vm._s(_vm.description) + " ")])], 1)]), _c("div", {
172
+ directives: [{
173
+ name: "show",
174
+ rawName: "v-show",
175
+ value: !_vm.hideActions,
176
+ expression: "!hideActions"
177
+ }],
178
+ staticClass: "dt-leftbar-row__omega"
179
+ }, [_vm._t("right"), _c("div", {
180
+ staticClass: "dt-leftbar-row__action-container"
181
+ }, [_vm.showUnreadCount ? _c("dt-badge", {
182
+ staticClass: "dt-leftbar-row__unread-badge",
183
+ attrs: {
184
+ "data-qa": "dt-leftbar-row-unread-badge",
185
+ "kind": "count",
186
+ "type": "bulletin"
187
+ }
188
+ }, [_vm._v(" " + _vm._s(_vm.unreadCount) + " ")]) : _vm._e(), _c("dt-button", {
189
+ staticClass: "dt-leftbar-row__action",
190
+ attrs: {
191
+ "data-qa": "dt-leftbar-row-action-button",
192
+ "aria-label": _vm.menuButtonAriaLabel,
193
+ "importance": "clear",
194
+ "size": "xs",
195
+ "circle": ""
196
+ },
197
+ on: {
198
+ "click": function($event) {
199
+ $event.stopPropagation();
200
+ return _vm.$emit("click-menu", $event);
201
+ }
202
+ },
203
+ scopedSlots: _vm._u([{
204
+ key: "icon",
205
+ fn: function() {
206
+ return [_c("dt-icon-chevron-down", {
207
+ attrs: {
208
+ "size": "100"
209
+ }
210
+ })];
211
+ },
212
+ proxy: true
213
+ }])
214
+ })], 1)], 2)]), _c("div", {
215
+ staticClass: "dt-leftbar-row__bottom"
216
+ }, [_vm._t("timer")], 2)]);
151
217
  };
152
218
  var _sfc_staticRenderFns = [];
153
- var __component__ = /* @__PURE__ */ normalizeComponent(
154
- _sfc_main,
155
- _sfc_render,
156
- _sfc_staticRenderFns,
157
- false,
158
- null,
159
- "aeb8c657",
160
- null,
161
- null
162
- );
219
+ var __component__ = /* @__PURE__ */ normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, "aeb8c657", null, null);
163
220
  const contact_centers_row = __component__.exports;
164
221
  export {
165
222
  contact_centers_row as DtRecipeContactCentersRow
@@ -1 +1 @@
1
- {"version":3,"file":"contact-centers-row.js","sources":["../../recipes/leftbar/contact_centers_row/contact_centers_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'dt-leftbar-row__container',\n { 'dt-leftbar-row__container--off-duty': $slots.timer },\n ]\"\n >\n <div\n :class=\"leftbarContactCentersRowClasses\"\n data-qa=\"dt-recipe-contact-centers-row\"\n >\n <a\n class=\"dt-leftbar-row__primary\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"$attrs.href ?? 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"$listeners\"\n >\n <div class=\"dt-leftbar-row__alpha\">\n <dt-icon-headphones\n size=\"300\"\n data-qa=\"dt-leftbar-row-icon\"\n />\n </div>\n <div\n class=\"dt-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\n <dt-emoji-text-wrapper\n class=\"dt-leftbar-row__description\"\n data-qa=\"dt-leftbar-row-description\"\n size=\"200\"\n >\n {{ description }}\n </dt-emoji-text-wrapper>\n </div>\n </a>\n <div\n v-show=\"!hideActions\"\n class=\"dt-leftbar-row__omega\"\n >\n <slot name=\"right\" />\n <div class=\"dt-leftbar-row__action-container\">\n <dt-badge\n v-if=\"showUnreadCount\"\n class=\"dt-leftbar-row__unread-badge\"\n data-qa=\"dt-leftbar-row-unread-badge\"\n kind=\"count\"\n type=\"bulletin\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-button\n class=\"dt-leftbar-row__action\"\n data-qa=\"dt-leftbar-row-action-button\"\n :aria-label=\"menuButtonAriaLabel\"\n importance=\"clear\"\n size=\"xs\"\n circle\n @click.stop=\"$emit('click-menu', $event)\"\n >\n <template #icon>\n <dt-icon-chevron-down size=\"100\" />\n </template>\n </dt-button>\n </div>\n </div>\n </div>\n <div class=\"dt-leftbar-row__bottom\">\n <slot name=\"timer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { safeConcatStrings } from '@/common/utils';\nimport { DtBadge } from '@/components/badge';\nimport { DtButton } from '@/components/button';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtIconChevronDown from '@dialpad/dialtone-icons/vue2/chevron-down';\nimport DtIconHeadphones from '@dialpad/dialtone-icons/vue2/headphones';\n\nexport default {\n name: 'DtRecipeContactCentersRow',\n\n components: {\n DtButton,\n DtBadge,\n DtEmojiTextWrapper,\n DtIconHeadphones,\n DtIconChevronDown,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Will be read out by a screen reader upon focus of this row. If not defined \"description\" will be read.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Text displayed next to the icon. Required.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Making this true will hide the unread count badge, the chevron button, and the right slot\n */\n hideActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: Number,\n default: 0,\n },\n\n /**\n * Aria label for the menu button.\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Native click event on the row itself\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Menu button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click-menu',\n ],\n\n data () {\n return {\n labelWidth: 'auto',\n };\n },\n\n computed: {\n leftbarContactCentersRowClasses () {\n return [\n 'dt-leftbar-row',\n 'dt-leftbar-row--contact-centers',\n {\n 'dt-leftbar-row--unread-count': this.showUnreadCount,\n 'dt-leftbar-row--selected': this.selected,\n },\n ];\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip]);\n },\n\n showUnreadCount () {\n return this.unreadCount > 0;\n },\n },\n\n watch: {\n $props: {\n deep: true,\n async handler () {\n await this.$nextTick();\n this.adjustLabelWidth();\n },\n },\n },\n\n mounted () {\n this.resizeObserver = new ResizeObserver(this.adjustLabelWidth);\n this.resizeObserver.observe(this.$el);\n this.adjustLabelWidth();\n },\n\n beforeDestroy: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\n adjustLabelWidth () {\n const labelWidth = this.$el?.querySelector('.dt-leftbar-row__primary')?.clientWidth || 0;\n const omegaWidth = this.$el?.querySelector('.dt-leftbar-row__omega')?.clientWidth || 0;\n const alphaWidth = this.$el?.querySelector('.dt-leftbar-row__alpha')?.clientWidth || 0;\n const paddings = 12;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n\n<style lang=\"less\" scoped>\n@import \"../style/leftbar_row.less\";\n</style>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAoFA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,cAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,kCAAA;AACA,aAAA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,UACA,gCAAA,KAAA;AAAA,UACA,4BAAA,KAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,aAAA,KAAA,YACA,KAAA,YACA,kBAAA,CAAA,KAAA,aAAA,KAAA,kBAAA,CAAA;AAAA,IACA;AAAA,IAEA,kBAAA;AACA,aAAA,KAAA,cAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAA,UAAA;AACA,cAAA,KAAA;AACA,aAAA,iBAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,SAAA,iBAAA,IAAA,eAAA,KAAA,gBAAA;AACA,SAAA,eAAA,QAAA,KAAA,GAAA;AACA,SAAA,iBAAA;AAAA,EACA;AAAA,EAEA,eAAA,WAAA;AACA,SAAA,eAAA;EACA;AAAA,EAEA,SAAA;AAAA,IACA,mBAAA;;AACA,YAAA,eAAA,gBAAA,QAAA,mBAAA,cAAA,gCAAA,mBAAA,gBAAA;AACA,YAAA,eAAA,gBAAA,QAAA,mBAAA,cAAA,8BAAA,mBAAA,gBAAA;AACA,YAAA,eAAA,gBAAA,QAAA,mBAAA,cAAA,8BAAA,mBAAA,gBAAA;AACA,YAAA,WAAA;AACA,WAAA,aAAA,cAAA,aAAA,aAAA,YAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"contact-centers-row.js","sources":["../../recipes/leftbar/contact_centers_row/contact_centers_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'dt-leftbar-row__container',\n { 'dt-leftbar-row__container--off-duty': $slots.timer },\n ]\"\n >\n <div\n :class=\"leftbarContactCentersRowClasses\"\n data-qa=\"dt-recipe-contact-centers-row\"\n >\n <a\n class=\"dt-leftbar-row__primary\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"$attrs.href ?? 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"$listeners\"\n >\n <div class=\"dt-leftbar-row__alpha\">\n <dt-icon-headphones\n size=\"300\"\n data-qa=\"dt-leftbar-row-icon\"\n />\n </div>\n <div\n class=\"dt-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\n <dt-emoji-text-wrapper\n class=\"dt-leftbar-row__description\"\n data-qa=\"dt-leftbar-row-description\"\n size=\"200\"\n >\n {{ description }}\n </dt-emoji-text-wrapper>\n </div>\n </a>\n <div\n v-show=\"!hideActions\"\n class=\"dt-leftbar-row__omega\"\n >\n <slot name=\"right\" />\n <div class=\"dt-leftbar-row__action-container\">\n <dt-badge\n v-if=\"showUnreadCount\"\n class=\"dt-leftbar-row__unread-badge\"\n data-qa=\"dt-leftbar-row-unread-badge\"\n kind=\"count\"\n type=\"bulletin\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-button\n class=\"dt-leftbar-row__action\"\n data-qa=\"dt-leftbar-row-action-button\"\n :aria-label=\"menuButtonAriaLabel\"\n importance=\"clear\"\n size=\"xs\"\n circle\n @click.stop=\"$emit('click-menu', $event)\"\n >\n <template #icon>\n <dt-icon-chevron-down size=\"100\" />\n </template>\n </dt-button>\n </div>\n </div>\n </div>\n <div class=\"dt-leftbar-row__bottom\">\n <slot name=\"timer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { safeConcatStrings } from '@/common/utils';\nimport { DtBadge } from '@/components/badge';\nimport { DtButton } from '@/components/button';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtIconChevronDown from '@dialpad/dialtone-icons/vue2/chevron-down';\nimport DtIconHeadphones from '@dialpad/dialtone-icons/vue2/headphones';\n\nexport default {\n name: 'DtRecipeContactCentersRow',\n\n components: {\n DtButton,\n DtBadge,\n DtEmojiTextWrapper,\n DtIconHeadphones,\n DtIconChevronDown,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Will be read out by a screen reader upon focus of this row. If not defined \"description\" will be read.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Text displayed next to the icon. Required.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Making this true will hide the unread count badge, the chevron button, and the right slot\n */\n hideActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: Number,\n default: 0,\n },\n\n /**\n * Aria label for the menu button.\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Native click event on the row itself\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Menu button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click-menu',\n ],\n\n data () {\n return {\n labelWidth: 'auto',\n };\n },\n\n computed: {\n leftbarContactCentersRowClasses () {\n return [\n 'dt-leftbar-row',\n 'dt-leftbar-row--contact-centers',\n {\n 'dt-leftbar-row--unread-count': this.showUnreadCount,\n 'dt-leftbar-row--selected': this.selected,\n },\n ];\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip]);\n },\n\n showUnreadCount () {\n return this.unreadCount > 0;\n },\n },\n\n watch: {\n $props: {\n deep: true,\n async handler () {\n await this.$nextTick();\n this.adjustLabelWidth();\n },\n },\n },\n\n mounted () {\n this.resizeObserver = new ResizeObserver(this.adjustLabelWidth);\n this.resizeObserver.observe(this.$el);\n this.adjustLabelWidth();\n },\n\n beforeDestroy: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\n adjustLabelWidth () {\n const labelWidth = this.$el?.querySelector('.dt-leftbar-row__primary')?.clientWidth || 0;\n const omegaWidth = this.$el?.querySelector('.dt-leftbar-row__omega')?.clientWidth || 0;\n const alphaWidth = this.$el?.querySelector('.dt-leftbar-row__alpha')?.clientWidth || 0;\n const paddings = 12;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n\n<style lang=\"less\" scoped>\n@import \"../style/leftbar_row.less\";\n</style>\n"],"names":["_sfc_main","name","components","DtButton","DtBadge","DtEmojiTextWrapper","DtIconHeadphones","DtIconChevronDown","inheritAttrs","props","ariaLabel","type","String","default","description","required","selected","Boolean","hideActions","unreadCount","Number","menuButtonAriaLabel","emits","data","labelWidth","computed","leftbarContactCentersRowClasses","showUnreadCount","getAriaLabel","safeConcatStrings","unreadCountTooltip","watch","$props","deep","handler","$nextTick","adjustLabelWidth","mounted","resizeObserver","ResizeObserver","observe","$el","beforeDestroy","disconnect","methods","querySelector","clientWidth","omegaWidth","alphaWidth","paddings"],"mappings":";;;;;;;;;;;;;;;;;;AAoFA,MAAAA,YAAA;AAAA,EACAC,MAAA;AAAA,EAEAC,YAAA;AAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,EACA;AAAA,EAEAC,cAAA;AAAA,EAEAC,OAAA;AAAA;AAAA;AAAA;AAAA,IAIAC,WAAA;AAAA,MACAC,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAC,aAAA;AAAA,MACAH,MAAAC;AAAAA,MACAG,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAC,UAAA;AAAA,MACAL,MAAAM;AAAAA,MACAJ,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAK,aAAA;AAAA,MACAP,MAAAM;AAAAA,MACAJ,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAM,aAAA;AAAA,MACAR,MAAAS;AAAAA,MACAP,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAQ,qBAAA;AAAA,MACAV,MAAAC;AAAAA,MACAG,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEAO,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA,EAAA;AAAA,EAGAC,OAAA;AACA,WAAA;AAAA,MACAC,YAAA;AAAA;EAEA;AAAA,EAEAC,UAAA;AAAA,IACAC,kCAAA;AACA,aAAA,CACA,kBACA,mCACA;AAAA,QACA,gCAAA,KAAAC;AAAAA,QACA,4BAAA,KAAAX;AAAAA,MACA,CAAA;AAAA,IAEA;AAAA,IAEAY,eAAA;AACA,aAAA,KAAAlB,YACA,KAAAA,YACAmB,kBAAA,CAAA,KAAAf,aAAA,KAAAgB,kBAAA,CAAA;AAAA,IACA;AAAA,IAEAH,kBAAA;AACA,aAAA,KAAAR,cAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEAY,OAAA;AAAA,IACAC,QAAA;AAAA,MACAC,MAAA;AAAA,MACA,MAAAC,UAAA;AACA,cAAA,KAAAC;AACA,aAAAC,iBAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEAC,UAAA;AACA,SAAAC,iBAAA,IAAAC,eAAA,KAAAH,gBAAA;AACA,SAAAE,eAAAE,QAAA,KAAAC,GAAA;AACA,SAAAL,iBAAA;AAAA,EACA;AAAA,EAEAM,eAAA,WAAA;AACA,SAAAJ,eAAAK;EACA;AAAA,EAEAC,SAAA;AAAA,IACAR,mBAAA;;AACA,YAAAZ,eAAA,gBAAAiB,QAAA,mBAAAI,cAAA,gCAAA,mBAAAC,gBAAA;AACA,YAAAC,eAAA,gBAAAN,QAAA,mBAAAI,cAAA,8BAAA,mBAAAC,gBAAA;AACA,YAAAE,eAAA,gBAAAP,QAAA,mBAAAI,cAAA,8BAAA,mBAAAC,gBAAA;AACA,YAAAG,WAAA;AACA,WAAAzB,aAAAA,cAAAuB,aAAAC,aAAAC,YAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -7,7 +7,7 @@ require("../common/utils.cjs");
7
7
  require("../common/constants.cjs");
8
8
  require("vue");
9
9
  require("@dialpad/dialtone-icons/icons.json");
10
- require("../chunks/icon_constants-QYpmdE0R.js");
10
+ require("../chunks/icon_constants-VEA0wI5C.js");
11
11
  require("./presence.cjs");
12
12
  require("./icon.cjs");
13
13
  require("@dialpad/dialtone-icons/vue2");
@@ -116,31 +116,102 @@ const _sfc_main = {
116
116
  };
117
117
  var _sfc_render = function render() {
118
118
  var _vm = this, _c = _vm._self._c;
119
- return _c("dt-item-layout", { staticClass: "dt-contact-info", attrs: { "role": _vm.role, "data-qa": "contact-info" }, scopedSlots: _vm._u([_vm.showAvatar ? { key: "left", fn: function() {
120
- return [_c("button", { staticClass: "dt-contact-info__left", attrs: { "data-qa": "contact-info-left", "aria-labelledby": _vm.avatarLabelledBy }, on: { "click": _vm.avatarClick } }, [_vm.avatarList ? _c("span", { staticClass: "dt-contact-info--avatars" }, _vm._l(_vm.avatarList, function(avatar, index) {
121
- return _c("dt-avatar", { key: index, attrs: { "size": _vm.avatarSize, "seed": avatar.seed, "full-name": avatar.fullName, "image-src": avatar.src, "image-alt": "", "icon-name": _vm.avatarIcon, "overlay-icon": avatar.icon, "overlay-text": avatar.text, "avatar-class": [{ "d-mln24": index > 0, "d-bc-brand": !!avatar.halo }] } });
122
- }), 1) : _c("dt-avatar", { attrs: { "size": _vm.avatarSize, "full-name": _vm.avatarFullName, "image-src": _vm.avatarSrc, "image-alt": "", "icon-name": _vm.avatarIcon, "seed": _vm.avatarSeed, "presence": _vm.presence } })], 1)];
123
- }, proxy: true } : null, { key: "default", fn: function() {
124
- return [_c("div", { attrs: { "data-qa": "contact-info-header" } }, [_vm._t("header")], 2)];
125
- }, proxy: true }, { key: "subtitle", fn: function() {
126
- return [_c("div", { attrs: { "data-qa": "contact-info-subtitle" } }, [_vm._t("subtitle")], 2)];
127
- }, proxy: true }, _vm.$slots.bottom ? { key: "bottom", fn: function() {
128
- return [_c("div", { attrs: { "data-qa": "contact-info-bottom" } }, [_vm._t("bottom")], 2)];
129
- }, proxy: true } : null, _vm.$slots.right ? { key: "right", fn: function() {
130
- return [_c("div", { attrs: { "data-qa": "contact-info-right" } }, [_vm._t("right")], 2)];
131
- }, proxy: true } : null], null, true) });
119
+ return _c("dt-item-layout", {
120
+ staticClass: "dt-contact-info",
121
+ attrs: {
122
+ "role": _vm.role,
123
+ "data-qa": "contact-info"
124
+ },
125
+ scopedSlots: _vm._u([_vm.showAvatar ? {
126
+ key: "left",
127
+ fn: function() {
128
+ return [_c("button", {
129
+ staticClass: "dt-contact-info__left",
130
+ attrs: {
131
+ "data-qa": "contact-info-left",
132
+ "aria-labelledby": _vm.avatarLabelledBy
133
+ },
134
+ on: {
135
+ "click": _vm.avatarClick
136
+ }
137
+ }, [_vm.avatarList ? _c("span", {
138
+ staticClass: "dt-contact-info--avatars"
139
+ }, _vm._l(_vm.avatarList, function(avatar, index) {
140
+ return _c("dt-avatar", {
141
+ key: index,
142
+ attrs: {
143
+ "size": _vm.avatarSize,
144
+ "seed": avatar.seed,
145
+ "full-name": avatar.fullName,
146
+ "image-src": avatar.src,
147
+ "image-alt": "",
148
+ "icon-name": _vm.avatarIcon,
149
+ "overlay-icon": avatar.icon,
150
+ "overlay-text": avatar.text,
151
+ "avatar-class": [{
152
+ "d-mln24": index > 0,
153
+ "d-bc-brand": !!avatar.halo
154
+ }]
155
+ }
156
+ });
157
+ }), 1) : _c("dt-avatar", {
158
+ attrs: {
159
+ "size": _vm.avatarSize,
160
+ "full-name": _vm.avatarFullName,
161
+ "image-src": _vm.avatarSrc,
162
+ "image-alt": "",
163
+ "icon-name": _vm.avatarIcon,
164
+ "seed": _vm.avatarSeed,
165
+ "presence": _vm.presence
166
+ }
167
+ })], 1)];
168
+ },
169
+ proxy: true
170
+ } : null, {
171
+ key: "default",
172
+ fn: function() {
173
+ return [_c("div", {
174
+ attrs: {
175
+ "data-qa": "contact-info-header"
176
+ }
177
+ }, [_vm._t("header")], 2)];
178
+ },
179
+ proxy: true
180
+ }, {
181
+ key: "subtitle",
182
+ fn: function() {
183
+ return [_c("div", {
184
+ attrs: {
185
+ "data-qa": "contact-info-subtitle"
186
+ }
187
+ }, [_vm._t("subtitle")], 2)];
188
+ },
189
+ proxy: true
190
+ }, _vm.$slots.bottom ? {
191
+ key: "bottom",
192
+ fn: function() {
193
+ return [_c("div", {
194
+ attrs: {
195
+ "data-qa": "contact-info-bottom"
196
+ }
197
+ }, [_vm._t("bottom")], 2)];
198
+ },
199
+ proxy: true
200
+ } : null, _vm.$slots.right ? {
201
+ key: "right",
202
+ fn: function() {
203
+ return [_c("div", {
204
+ attrs: {
205
+ "data-qa": "contact-info-right"
206
+ }
207
+ }, [_vm._t("right")], 2)];
208
+ },
209
+ proxy: true
210
+ } : null], null, true)
211
+ });
132
212
  };
133
213
  var _sfc_staticRenderFns = [];
134
- var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
135
- _sfc_main,
136
- _sfc_render,
137
- _sfc_staticRenderFns,
138
- false,
139
- null,
140
- "a3c913d1",
141
- null,
142
- null
143
- );
214
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, "a3c913d1", null, null);
144
215
  const contact_info = __component__.exports;
145
216
  exports.DtRecipeContactInfo = contact_info;
146
217
  //# sourceMappingURL=contact-info.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"contact-info.cjs","sources":["../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"dt-contact-info\"\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"dt-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"dt-contact-info--avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :icon-name=\"avatarIcon\"\n :overlay-icon=\"avatar.icon\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[{ 'd-mln24': index > 0, 'd-bc-brand': !!avatar.halo }]\"\n />\n </span>\n <dt-avatar\n v-else\n :size=\"avatarSize\"\n :full-name=\"avatarFullName\"\n :image-src=\"avatarSrc\"\n image-alt=\"\"\n :icon-name=\"avatarIcon\"\n :seed=\"avatarSeed\"\n :presence=\"presence\"\n />\n </button>\n </template>\n <template #default>\n <div data-qa=\"contact-info-header\">\n <!-- @slot Slot for header information -->\n <slot name=\"header\" />\n </div>\n </template>\n\n <template #subtitle>\n <div data-qa=\"contact-info-subtitle\">\n <!-- @slot Slot for subtitle information -->\n <slot name=\"subtitle\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div data-qa=\"contact-info-bottom\">\n <!-- @slot Slot for information at the bottom -->\n <slot name=\"bottom\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div data-qa=\"contact-info-right\">\n <!-- @slot Slot for the right content -->\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n</template>\n\n<script>\nimport DtItemLayout from '@/components/item_layout/item_layout.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\n\nexport default {\n name: 'DtRecipeContactInfo',\n\n components: {\n DtAvatar,\n DtItemLayout,\n },\n\n /* inheritAttrs: false is generally an option we want to set on library\n components. This allows any attributes passed in that are not recognized\n as props to be passed down to another element or component using v-bind:$attrs\n more info: https://vuejs.org/v2/api/#inheritAttrs */\n // inheritAttrs: false,\n\n props: {\n /**\n * String to use for the item's role.\n */\n role: {\n type: String,\n default: '',\n },\n\n /**\n * Display avatar if `showAvatar` property is true.\n */\n showAvatar: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Optional avatar image url.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar's full name, used to extract initials\n * to display in avatar if `avatarSrc` and `avatarIcon` are empty.\n */\n avatarFullName: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar icon to display if `avatarSrc` is empty.\n */\n avatarIcon: {\n type: String,\n default: null,\n },\n\n /**\n * The size of the avatar\n * @values xs, sm, md, lg, xl\n */\n avatarSize: {\n type: String,\n default: 'lg',\n },\n\n /**\n * The aria-labelledby of the button containing avatars\n */\n avatarLabelledBy: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * @values null, busy, away, offline, active\n */\n presence: {\n type: String,\n default: null,\n },\n\n /**\n * Showing multiple avatars in contact info.\n * The props of array items are: <br>\n * `src` - avatar image url (optional) <br>\n * `fullName` - full name, used to extract initials to display in avatar<br>\n * if `avatarSrc` and `avatarIcon` are empty<br>\n * `seed` - determines uniqueness of avatar background <br>\n * `text` - text that overlays the avatar (optional) <br>\n * `icon` - icon that overlays the avatar (optional) <br>\n * `halo` - halo highlight around the avatar. boolean true/false\n */\n avatarList: {\n type: Array,\n default: null,\n },\n },\n\n emits: ['avatar-click'],\n\n methods: {\n avatarClick () {\n this.$emit('avatar-click');\n },\n },\n};\n</script>\n\n<style lang=\"less\" scoped>\n.dt-contact-info {\n --contact-info-avatar-border-color: var(--dt-color-surface-primary);\n\n display: flex;\n\n &:deep(.dt-item-layout) {\n flex: 1 1 0;\n }\n\n &:deep(.dt-item-layout--content) {\n /*\n DP-74536: Add `min-width` to make the width of \"contact info\" adjustable.\n */\n min-width: var(--dt-space-825);\n }\n\n &:deep(.dt-item-layout--left) {\n /*\n DP-74536: To make 'Avatar' in fixed position when resizing the window.\n */\n min-width: var(--dt-space-650);\n justify-content: flex-start;\n align-items: center;\n }\n\n &:deep(.dt-item-layout--right) {\n /*\n DP-74536: Remove `min-width` which cause extra unused empty space on the right of \"contact info\".\n */\n min-width: 0;\n align-items: center;\n }\n\n &__left {\n position: relative;\n background-color: transparent;\n background-image: none;\n border-width: 0;\n cursor: pointer;\n }\n\n &--avatars {\n margin-right: var(--dt-space-300-negative);\n display: flex;\n flex-direction: row;\n\n .d-avatar {\n border-radius: var(--dt-size-radius-pill);\n border: var(--dt-size-300) solid var(--contact-info-avatar-border-color);\n box-sizing: unset;\n }\n }\n}\n</style>\n"],"names":["DtAvatar","DtItemLayout"],"mappings":";;;;;;;;;;;;;AAsFA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,UAAAA,WAAA;AAAA,IACA,cAAAC,eAAA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,cAAA;AAAA,EAEA,SAAA;AAAA,IACA,cAAA;AACA,WAAA,MAAA,cAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"contact-info.cjs","sources":["../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"dt-contact-info\"\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"dt-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"dt-contact-info--avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :icon-name=\"avatarIcon\"\n :overlay-icon=\"avatar.icon\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[{ 'd-mln24': index > 0, 'd-bc-brand': !!avatar.halo }]\"\n />\n </span>\n <dt-avatar\n v-else\n :size=\"avatarSize\"\n :full-name=\"avatarFullName\"\n :image-src=\"avatarSrc\"\n image-alt=\"\"\n :icon-name=\"avatarIcon\"\n :seed=\"avatarSeed\"\n :presence=\"presence\"\n />\n </button>\n </template>\n <template #default>\n <div data-qa=\"contact-info-header\">\n <!-- @slot Slot for header information -->\n <slot name=\"header\" />\n </div>\n </template>\n\n <template #subtitle>\n <div data-qa=\"contact-info-subtitle\">\n <!-- @slot Slot for subtitle information -->\n <slot name=\"subtitle\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div data-qa=\"contact-info-bottom\">\n <!-- @slot Slot for information at the bottom -->\n <slot name=\"bottom\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div data-qa=\"contact-info-right\">\n <!-- @slot Slot for the right content -->\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n</template>\n\n<script>\nimport DtItemLayout from '@/components/item_layout/item_layout.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\n\nexport default {\n name: 'DtRecipeContactInfo',\n\n components: {\n DtAvatar,\n DtItemLayout,\n },\n\n /* inheritAttrs: false is generally an option we want to set on library\n components. This allows any attributes passed in that are not recognized\n as props to be passed down to another element or component using v-bind:$attrs\n more info: https://vuejs.org/v2/api/#inheritAttrs */\n // inheritAttrs: false,\n\n props: {\n /**\n * String to use for the item's role.\n */\n role: {\n type: String,\n default: '',\n },\n\n /**\n * Display avatar if `showAvatar` property is true.\n */\n showAvatar: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Optional avatar image url.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar's full name, used to extract initials\n * to display in avatar if `avatarSrc` and `avatarIcon` are empty.\n */\n avatarFullName: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar icon to display if `avatarSrc` is empty.\n */\n avatarIcon: {\n type: String,\n default: null,\n },\n\n /**\n * The size of the avatar\n * @values xs, sm, md, lg, xl\n */\n avatarSize: {\n type: String,\n default: 'lg',\n },\n\n /**\n * The aria-labelledby of the button containing avatars\n */\n avatarLabelledBy: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * @values null, busy, away, offline, active\n */\n presence: {\n type: String,\n default: null,\n },\n\n /**\n * Showing multiple avatars in contact info.\n * The props of array items are: <br>\n * `src` - avatar image url (optional) <br>\n * `fullName` - full name, used to extract initials to display in avatar<br>\n * if `avatarSrc` and `avatarIcon` are empty<br>\n * `seed` - determines uniqueness of avatar background <br>\n * `text` - text that overlays the avatar (optional) <br>\n * `icon` - icon that overlays the avatar (optional) <br>\n * `halo` - halo highlight around the avatar. boolean true/false\n */\n avatarList: {\n type: Array,\n default: null,\n },\n },\n\n emits: ['avatar-click'],\n\n methods: {\n avatarClick () {\n this.$emit('avatar-click');\n },\n },\n};\n</script>\n\n<style lang=\"less\" scoped>\n.dt-contact-info {\n --contact-info-avatar-border-color: var(--dt-color-surface-primary);\n\n display: flex;\n\n &:deep(.dt-item-layout) {\n flex: 1 1 0;\n }\n\n &:deep(.dt-item-layout--content) {\n /*\n DP-74536: Add `min-width` to make the width of \"contact info\" adjustable.\n */\n min-width: var(--dt-space-825);\n }\n\n &:deep(.dt-item-layout--left) {\n /*\n DP-74536: To make 'Avatar' in fixed position when resizing the window.\n */\n min-width: var(--dt-space-650);\n justify-content: flex-start;\n align-items: center;\n }\n\n &:deep(.dt-item-layout--right) {\n /*\n DP-74536: Remove `min-width` which cause extra unused empty space on the right of \"contact info\".\n */\n min-width: 0;\n align-items: center;\n }\n\n &__left {\n position: relative;\n background-color: transparent;\n background-image: none;\n border-width: 0;\n cursor: pointer;\n }\n\n &--avatars {\n margin-right: var(--dt-space-300-negative);\n display: flex;\n flex-direction: row;\n\n .d-avatar {\n border-radius: var(--dt-size-radius-pill);\n border: var(--dt-size-300) solid var(--contact-info-avatar-border-color);\n box-sizing: unset;\n }\n }\n}\n</style>\n"],"names":["_sfc_main","name","components","DtAvatar","DtItemLayout","props","role","type","String","default","showAvatar","Boolean","avatarSrc","avatarSeed","avatarFullName","avatarIcon","avatarSize","avatarLabelledBy","presence","avatarList","Array","emits","methods","avatarClick","$emit"],"mappings":";;;;;;;;;;;;;AAsFA,MAAAA,YAAA;AAAA,EACAC,MAAA;AAAA,EAEAC,YAAA;AAAA,cACAC,WAAA;AAAA,IACAC,cAAAA,eAAAA;AAAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQAC,OAAA;AAAA;AAAA;AAAA;AAAA,IAIAC,MAAA;AAAA,MACAC,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAC,YAAA;AAAA,MACAH,MAAAI;AAAAA,MACAF,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAG,WAAA;AAAA,MACAL,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAI,YAAA;AAAA,MACAN,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAK,gBAAA;AAAA,MACAP,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAM,YAAA;AAAA,MACAR,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAO,YAAA;AAAA,MACAT,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAQ,kBAAA;AAAA,MACAV,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQAS,UAAA;AAAA,MACAX,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaAU,YAAA;AAAA,MACAZ,MAAAa;AAAAA,MACAX,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEAY,OAAA,CAAA,cAAA;AAAA,EAEAC,SAAA;AAAA,IACAC,cAAA;AACA,WAAAC,MAAA,cAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -5,7 +5,7 @@ import "../common/utils.js";
5
5
  import "../common/constants.js";
6
6
  import "vue";
7
7
  import "@dialpad/dialtone-icons/icons.json";
8
- import "../chunks/icon_constants-Dy4MEUJL.js";
8
+ import "../chunks/icon_constants-TdxqLsS2.js";
9
9
  import "./presence.js";
10
10
  import "./icon.js";
11
11
  import "@dialpad/dialtone-icons/vue2";
@@ -114,31 +114,102 @@ const _sfc_main = {
114
114
  };
115
115
  var _sfc_render = function render() {
116
116
  var _vm = this, _c = _vm._self._c;
117
- return _c("dt-item-layout", { staticClass: "dt-contact-info", attrs: { "role": _vm.role, "data-qa": "contact-info" }, scopedSlots: _vm._u([_vm.showAvatar ? { key: "left", fn: function() {
118
- return [_c("button", { staticClass: "dt-contact-info__left", attrs: { "data-qa": "contact-info-left", "aria-labelledby": _vm.avatarLabelledBy }, on: { "click": _vm.avatarClick } }, [_vm.avatarList ? _c("span", { staticClass: "dt-contact-info--avatars" }, _vm._l(_vm.avatarList, function(avatar, index) {
119
- return _c("dt-avatar", { key: index, attrs: { "size": _vm.avatarSize, "seed": avatar.seed, "full-name": avatar.fullName, "image-src": avatar.src, "image-alt": "", "icon-name": _vm.avatarIcon, "overlay-icon": avatar.icon, "overlay-text": avatar.text, "avatar-class": [{ "d-mln24": index > 0, "d-bc-brand": !!avatar.halo }] } });
120
- }), 1) : _c("dt-avatar", { attrs: { "size": _vm.avatarSize, "full-name": _vm.avatarFullName, "image-src": _vm.avatarSrc, "image-alt": "", "icon-name": _vm.avatarIcon, "seed": _vm.avatarSeed, "presence": _vm.presence } })], 1)];
121
- }, proxy: true } : null, { key: "default", fn: function() {
122
- return [_c("div", { attrs: { "data-qa": "contact-info-header" } }, [_vm._t("header")], 2)];
123
- }, proxy: true }, { key: "subtitle", fn: function() {
124
- return [_c("div", { attrs: { "data-qa": "contact-info-subtitle" } }, [_vm._t("subtitle")], 2)];
125
- }, proxy: true }, _vm.$slots.bottom ? { key: "bottom", fn: function() {
126
- return [_c("div", { attrs: { "data-qa": "contact-info-bottom" } }, [_vm._t("bottom")], 2)];
127
- }, proxy: true } : null, _vm.$slots.right ? { key: "right", fn: function() {
128
- return [_c("div", { attrs: { "data-qa": "contact-info-right" } }, [_vm._t("right")], 2)];
129
- }, proxy: true } : null], null, true) });
117
+ return _c("dt-item-layout", {
118
+ staticClass: "dt-contact-info",
119
+ attrs: {
120
+ "role": _vm.role,
121
+ "data-qa": "contact-info"
122
+ },
123
+ scopedSlots: _vm._u([_vm.showAvatar ? {
124
+ key: "left",
125
+ fn: function() {
126
+ return [_c("button", {
127
+ staticClass: "dt-contact-info__left",
128
+ attrs: {
129
+ "data-qa": "contact-info-left",
130
+ "aria-labelledby": _vm.avatarLabelledBy
131
+ },
132
+ on: {
133
+ "click": _vm.avatarClick
134
+ }
135
+ }, [_vm.avatarList ? _c("span", {
136
+ staticClass: "dt-contact-info--avatars"
137
+ }, _vm._l(_vm.avatarList, function(avatar, index) {
138
+ return _c("dt-avatar", {
139
+ key: index,
140
+ attrs: {
141
+ "size": _vm.avatarSize,
142
+ "seed": avatar.seed,
143
+ "full-name": avatar.fullName,
144
+ "image-src": avatar.src,
145
+ "image-alt": "",
146
+ "icon-name": _vm.avatarIcon,
147
+ "overlay-icon": avatar.icon,
148
+ "overlay-text": avatar.text,
149
+ "avatar-class": [{
150
+ "d-mln24": index > 0,
151
+ "d-bc-brand": !!avatar.halo
152
+ }]
153
+ }
154
+ });
155
+ }), 1) : _c("dt-avatar", {
156
+ attrs: {
157
+ "size": _vm.avatarSize,
158
+ "full-name": _vm.avatarFullName,
159
+ "image-src": _vm.avatarSrc,
160
+ "image-alt": "",
161
+ "icon-name": _vm.avatarIcon,
162
+ "seed": _vm.avatarSeed,
163
+ "presence": _vm.presence
164
+ }
165
+ })], 1)];
166
+ },
167
+ proxy: true
168
+ } : null, {
169
+ key: "default",
170
+ fn: function() {
171
+ return [_c("div", {
172
+ attrs: {
173
+ "data-qa": "contact-info-header"
174
+ }
175
+ }, [_vm._t("header")], 2)];
176
+ },
177
+ proxy: true
178
+ }, {
179
+ key: "subtitle",
180
+ fn: function() {
181
+ return [_c("div", {
182
+ attrs: {
183
+ "data-qa": "contact-info-subtitle"
184
+ }
185
+ }, [_vm._t("subtitle")], 2)];
186
+ },
187
+ proxy: true
188
+ }, _vm.$slots.bottom ? {
189
+ key: "bottom",
190
+ fn: function() {
191
+ return [_c("div", {
192
+ attrs: {
193
+ "data-qa": "contact-info-bottom"
194
+ }
195
+ }, [_vm._t("bottom")], 2)];
196
+ },
197
+ proxy: true
198
+ } : null, _vm.$slots.right ? {
199
+ key: "right",
200
+ fn: function() {
201
+ return [_c("div", {
202
+ attrs: {
203
+ "data-qa": "contact-info-right"
204
+ }
205
+ }, [_vm._t("right")], 2)];
206
+ },
207
+ proxy: true
208
+ } : null], null, true)
209
+ });
130
210
  };
131
211
  var _sfc_staticRenderFns = [];
132
- var __component__ = /* @__PURE__ */ normalizeComponent(
133
- _sfc_main,
134
- _sfc_render,
135
- _sfc_staticRenderFns,
136
- false,
137
- null,
138
- "a3c913d1",
139
- null,
140
- null
141
- );
212
+ var __component__ = /* @__PURE__ */ normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, "a3c913d1", null, null);
142
213
  const contact_info = __component__.exports;
143
214
  export {
144
215
  contact_info as DtRecipeContactInfo
@@ -1 +1 @@
1
- {"version":3,"file":"contact-info.js","sources":["../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"dt-contact-info\"\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"dt-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"dt-contact-info--avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :icon-name=\"avatarIcon\"\n :overlay-icon=\"avatar.icon\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[{ 'd-mln24': index > 0, 'd-bc-brand': !!avatar.halo }]\"\n />\n </span>\n <dt-avatar\n v-else\n :size=\"avatarSize\"\n :full-name=\"avatarFullName\"\n :image-src=\"avatarSrc\"\n image-alt=\"\"\n :icon-name=\"avatarIcon\"\n :seed=\"avatarSeed\"\n :presence=\"presence\"\n />\n </button>\n </template>\n <template #default>\n <div data-qa=\"contact-info-header\">\n <!-- @slot Slot for header information -->\n <slot name=\"header\" />\n </div>\n </template>\n\n <template #subtitle>\n <div data-qa=\"contact-info-subtitle\">\n <!-- @slot Slot for subtitle information -->\n <slot name=\"subtitle\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div data-qa=\"contact-info-bottom\">\n <!-- @slot Slot for information at the bottom -->\n <slot name=\"bottom\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div data-qa=\"contact-info-right\">\n <!-- @slot Slot for the right content -->\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n</template>\n\n<script>\nimport DtItemLayout from '@/components/item_layout/item_layout.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\n\nexport default {\n name: 'DtRecipeContactInfo',\n\n components: {\n DtAvatar,\n DtItemLayout,\n },\n\n /* inheritAttrs: false is generally an option we want to set on library\n components. This allows any attributes passed in that are not recognized\n as props to be passed down to another element or component using v-bind:$attrs\n more info: https://vuejs.org/v2/api/#inheritAttrs */\n // inheritAttrs: false,\n\n props: {\n /**\n * String to use for the item's role.\n */\n role: {\n type: String,\n default: '',\n },\n\n /**\n * Display avatar if `showAvatar` property is true.\n */\n showAvatar: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Optional avatar image url.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar's full name, used to extract initials\n * to display in avatar if `avatarSrc` and `avatarIcon` are empty.\n */\n avatarFullName: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar icon to display if `avatarSrc` is empty.\n */\n avatarIcon: {\n type: String,\n default: null,\n },\n\n /**\n * The size of the avatar\n * @values xs, sm, md, lg, xl\n */\n avatarSize: {\n type: String,\n default: 'lg',\n },\n\n /**\n * The aria-labelledby of the button containing avatars\n */\n avatarLabelledBy: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * @values null, busy, away, offline, active\n */\n presence: {\n type: String,\n default: null,\n },\n\n /**\n * Showing multiple avatars in contact info.\n * The props of array items are: <br>\n * `src` - avatar image url (optional) <br>\n * `fullName` - full name, used to extract initials to display in avatar<br>\n * if `avatarSrc` and `avatarIcon` are empty<br>\n * `seed` - determines uniqueness of avatar background <br>\n * `text` - text that overlays the avatar (optional) <br>\n * `icon` - icon that overlays the avatar (optional) <br>\n * `halo` - halo highlight around the avatar. boolean true/false\n */\n avatarList: {\n type: Array,\n default: null,\n },\n },\n\n emits: ['avatar-click'],\n\n methods: {\n avatarClick () {\n this.$emit('avatar-click');\n },\n },\n};\n</script>\n\n<style lang=\"less\" scoped>\n.dt-contact-info {\n --contact-info-avatar-border-color: var(--dt-color-surface-primary);\n\n display: flex;\n\n &:deep(.dt-item-layout) {\n flex: 1 1 0;\n }\n\n &:deep(.dt-item-layout--content) {\n /*\n DP-74536: Add `min-width` to make the width of \"contact info\" adjustable.\n */\n min-width: var(--dt-space-825);\n }\n\n &:deep(.dt-item-layout--left) {\n /*\n DP-74536: To make 'Avatar' in fixed position when resizing the window.\n */\n min-width: var(--dt-space-650);\n justify-content: flex-start;\n align-items: center;\n }\n\n &:deep(.dt-item-layout--right) {\n /*\n DP-74536: Remove `min-width` which cause extra unused empty space on the right of \"contact info\".\n */\n min-width: 0;\n align-items: center;\n }\n\n &__left {\n position: relative;\n background-color: transparent;\n background-image: none;\n border-width: 0;\n cursor: pointer;\n }\n\n &--avatars {\n margin-right: var(--dt-space-300-negative);\n display: flex;\n flex-direction: row;\n\n .d-avatar {\n border-radius: var(--dt-size-radius-pill);\n border: var(--dt-size-300) solid var(--contact-info-avatar-border-color);\n box-sizing: unset;\n }\n }\n}\n</style>\n"],"names":[],"mappings":";;;;;;;;;;;AAsFA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,cAAA;AAAA,EAEA,SAAA;AAAA,IACA,cAAA;AACA,WAAA,MAAA,cAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"contact-info.js","sources":["../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"dt-contact-info\"\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"dt-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"dt-contact-info--avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :icon-name=\"avatarIcon\"\n :overlay-icon=\"avatar.icon\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[{ 'd-mln24': index > 0, 'd-bc-brand': !!avatar.halo }]\"\n />\n </span>\n <dt-avatar\n v-else\n :size=\"avatarSize\"\n :full-name=\"avatarFullName\"\n :image-src=\"avatarSrc\"\n image-alt=\"\"\n :icon-name=\"avatarIcon\"\n :seed=\"avatarSeed\"\n :presence=\"presence\"\n />\n </button>\n </template>\n <template #default>\n <div data-qa=\"contact-info-header\">\n <!-- @slot Slot for header information -->\n <slot name=\"header\" />\n </div>\n </template>\n\n <template #subtitle>\n <div data-qa=\"contact-info-subtitle\">\n <!-- @slot Slot for subtitle information -->\n <slot name=\"subtitle\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div data-qa=\"contact-info-bottom\">\n <!-- @slot Slot for information at the bottom -->\n <slot name=\"bottom\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div data-qa=\"contact-info-right\">\n <!-- @slot Slot for the right content -->\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n</template>\n\n<script>\nimport DtItemLayout from '@/components/item_layout/item_layout.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\n\nexport default {\n name: 'DtRecipeContactInfo',\n\n components: {\n DtAvatar,\n DtItemLayout,\n },\n\n /* inheritAttrs: false is generally an option we want to set on library\n components. This allows any attributes passed in that are not recognized\n as props to be passed down to another element or component using v-bind:$attrs\n more info: https://vuejs.org/v2/api/#inheritAttrs */\n // inheritAttrs: false,\n\n props: {\n /**\n * String to use for the item's role.\n */\n role: {\n type: String,\n default: '',\n },\n\n /**\n * Display avatar if `showAvatar` property is true.\n */\n showAvatar: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Optional avatar image url.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar's full name, used to extract initials\n * to display in avatar if `avatarSrc` and `avatarIcon` are empty.\n */\n avatarFullName: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar icon to display if `avatarSrc` is empty.\n */\n avatarIcon: {\n type: String,\n default: null,\n },\n\n /**\n * The size of the avatar\n * @values xs, sm, md, lg, xl\n */\n avatarSize: {\n type: String,\n default: 'lg',\n },\n\n /**\n * The aria-labelledby of the button containing avatars\n */\n avatarLabelledBy: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * @values null, busy, away, offline, active\n */\n presence: {\n type: String,\n default: null,\n },\n\n /**\n * Showing multiple avatars in contact info.\n * The props of array items are: <br>\n * `src` - avatar image url (optional) <br>\n * `fullName` - full name, used to extract initials to display in avatar<br>\n * if `avatarSrc` and `avatarIcon` are empty<br>\n * `seed` - determines uniqueness of avatar background <br>\n * `text` - text that overlays the avatar (optional) <br>\n * `icon` - icon that overlays the avatar (optional) <br>\n * `halo` - halo highlight around the avatar. boolean true/false\n */\n avatarList: {\n type: Array,\n default: null,\n },\n },\n\n emits: ['avatar-click'],\n\n methods: {\n avatarClick () {\n this.$emit('avatar-click');\n },\n },\n};\n</script>\n\n<style lang=\"less\" scoped>\n.dt-contact-info {\n --contact-info-avatar-border-color: var(--dt-color-surface-primary);\n\n display: flex;\n\n &:deep(.dt-item-layout) {\n flex: 1 1 0;\n }\n\n &:deep(.dt-item-layout--content) {\n /*\n DP-74536: Add `min-width` to make the width of \"contact info\" adjustable.\n */\n min-width: var(--dt-space-825);\n }\n\n &:deep(.dt-item-layout--left) {\n /*\n DP-74536: To make 'Avatar' in fixed position when resizing the window.\n */\n min-width: var(--dt-space-650);\n justify-content: flex-start;\n align-items: center;\n }\n\n &:deep(.dt-item-layout--right) {\n /*\n DP-74536: Remove `min-width` which cause extra unused empty space on the right of \"contact info\".\n */\n min-width: 0;\n align-items: center;\n }\n\n &__left {\n position: relative;\n background-color: transparent;\n background-image: none;\n border-width: 0;\n cursor: pointer;\n }\n\n &--avatars {\n margin-right: var(--dt-space-300-negative);\n display: flex;\n flex-direction: row;\n\n .d-avatar {\n border-radius: var(--dt-size-radius-pill);\n border: var(--dt-size-300) solid var(--contact-info-avatar-border-color);\n box-sizing: unset;\n }\n }\n}\n</style>\n"],"names":["_sfc_main","name","components","DtAvatar","DtItemLayout","props","role","type","String","default","showAvatar","Boolean","avatarSrc","avatarSeed","avatarFullName","avatarIcon","avatarSize","avatarLabelledBy","presence","avatarList","Array","emits","methods","avatarClick","$emit"],"mappings":";;;;;;;;;;;AAsFA,MAAAA,YAAA;AAAA,EACAC,MAAA;AAAA,EAEAC,YAAA;AAAA,IACAC;AAAAA,IACAC;AAAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQAC,OAAA;AAAA;AAAA;AAAA;AAAA,IAIAC,MAAA;AAAA,MACAC,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAC,YAAA;AAAA,MACAH,MAAAI;AAAAA,MACAF,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAG,WAAA;AAAA,MACAL,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAI,YAAA;AAAA,MACAN,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAK,gBAAA;AAAA,MACAP,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAM,YAAA;AAAA,MACAR,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAO,YAAA;AAAA,MACAT,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAQ,kBAAA;AAAA,MACAV,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQAS,UAAA;AAAA,MACAX,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaAU,YAAA;AAAA,MACAZ,MAAAa;AAAAA,MACAX,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEAY,OAAA,CAAA,cAAA;AAAA,EAEAC,SAAA;AAAA,IACAC,cAAA;AACA,WAAAC,MAAA,cAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}