@dialpad/dialtone-vue 3.160.1 → 3.161.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/common/emoji.cjs +1 -1
  2. package/dist/common/emoji.cjs.map +1 -1
  3. package/dist/common/emoji.js +1 -1
  4. package/dist/common/emoji.js.map +1 -1
  5. package/dist/component-documentation.json +1 -1
  6. package/dist/components/item_layout/item_layout.vue.cjs +7 -7
  7. package/dist/components/item_layout/item_layout.vue.cjs.map +1 -1
  8. package/dist/components/item_layout/item_layout.vue.js +7 -7
  9. package/dist/components/item_layout/item_layout.vue.js.map +1 -1
  10. package/dist/components/rich_text_editor/rich_text_editor.vue.cjs +51 -32
  11. package/dist/components/rich_text_editor/rich_text_editor.vue.cjs.map +1 -1
  12. package/dist/components/rich_text_editor/rich_text_editor.vue.js +51 -32
  13. package/dist/components/rich_text_editor/rich_text_editor.vue.js.map +1 -1
  14. package/dist/recipes/buttons/callbar_button/callbar_button.vue.cjs +35 -7
  15. package/dist/recipes/buttons/callbar_button/callbar_button.vue.cjs.map +1 -1
  16. package/dist/recipes/buttons/callbar_button/callbar_button.vue.js +36 -8
  17. package/dist/recipes/buttons/callbar_button/callbar_button.vue.js.map +1 -1
  18. package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs +35 -8
  19. package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs.map +1 -1
  20. package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js +35 -8
  21. package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js.map +1 -1
  22. package/dist/recipes/cards/ivr_node/ivr_node.vue.cjs +7 -7
  23. package/dist/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
  24. package/dist/recipes/cards/ivr_node/ivr_node.vue.js +7 -7
  25. package/dist/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
  26. package/dist/recipes/chips/grouped_chip/grouped_chip.vue.cjs +3 -3
  27. package/dist/recipes/chips/grouped_chip/grouped_chip.vue.cjs.map +1 -1
  28. package/dist/recipes/chips/grouped_chip/grouped_chip.vue.js +3 -3
  29. package/dist/recipes/chips/grouped_chip/grouped_chip.vue.js.map +1 -1
  30. package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +7 -7
  31. package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
  32. package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +7 -7
  33. package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
  34. package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs +4 -4
  35. package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs.map +1 -1
  36. package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js +4 -4
  37. package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js.map +1 -1
  38. package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs +5 -5
  39. package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs.map +1 -1
  40. package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js +5 -5
  41. package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js.map +1 -1
  42. package/dist/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs +3 -3
  43. package/dist/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs.map +1 -1
  44. package/dist/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js +3 -3
  45. package/dist/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js.map +1 -1
  46. package/dist/recipes/conversation_view/editor/editor.vue.cjs +3 -2
  47. package/dist/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
  48. package/dist/recipes/conversation_view/editor/editor.vue.js +3 -2
  49. package/dist/recipes/conversation_view/editor/editor.vue.js.map +1 -1
  50. package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.cjs +6 -6
  51. package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.cjs.map +1 -1
  52. package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.js +6 -6
  53. package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.js.map +1 -1
  54. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +7 -7
  55. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
  56. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +7 -7
  57. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
  58. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.cjs +3 -3
  59. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.cjs.map +1 -1
  60. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.js +3 -3
  61. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.js.map +1 -1
  62. package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +14 -14
  63. package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
  64. package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +14 -14
  65. package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
  66. package/dist/recipes/conversation_view/feed_item_row/feed_item_row_constants.cjs +2 -2
  67. package/dist/recipes/conversation_view/feed_item_row/feed_item_row_constants.cjs.map +1 -1
  68. package/dist/recipes/conversation_view/feed_item_row/feed_item_row_constants.js +2 -2
  69. package/dist/recipes/conversation_view/feed_item_row/feed_item_row_constants.js.map +1 -1
  70. package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.cjs +4 -4
  71. package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.cjs.map +1 -1
  72. package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.js +4 -4
  73. package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.js.map +1 -1
  74. package/dist/recipes/conversation_view/message_input/message_input.vue.cjs +13 -13
  75. package/dist/recipes/conversation_view/message_input/message_input.vue.cjs.map +1 -1
  76. package/dist/recipes/conversation_view/message_input/message_input.vue.js +13 -13
  77. package/dist/recipes/conversation_view/message_input/message_input.vue.js.map +1 -1
  78. package/dist/recipes/conversation_view/time_pill/time_pill.vue.cjs +1 -1
  79. package/dist/recipes/conversation_view/time_pill/time_pill.vue.cjs.map +1 -1
  80. package/dist/recipes/conversation_view/time_pill/time_pill.vue.js +1 -1
  81. package/dist/recipes/conversation_view/time_pill/time_pill.vue.js.map +1 -1
  82. package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.cjs +2 -2
  83. package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.cjs.map +1 -1
  84. package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.js +2 -2
  85. package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.js.map +1 -1
  86. package/dist/recipes/item_layout/contact_info/contact_info.vue.cjs +3 -3
  87. package/dist/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
  88. package/dist/recipes/item_layout/contact_info/contact_info.vue.js +3 -3
  89. package/dist/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
  90. package/dist/recipes/leftbar/callbox/callbox.vue.cjs +11 -11
  91. package/dist/recipes/leftbar/callbox/callbox.vue.cjs.map +1 -1
  92. package/dist/recipes/leftbar/callbox/callbox.vue.js +11 -11
  93. package/dist/recipes/leftbar/callbox/callbox.vue.js.map +1 -1
  94. package/dist/recipes/leftbar/callbox/callbox_constants.cjs +4 -4
  95. package/dist/recipes/leftbar/callbox/callbox_constants.cjs.map +1 -1
  96. package/dist/recipes/leftbar/callbox/callbox_constants.js +4 -4
  97. package/dist/recipes/leftbar/callbox/callbox_constants.js.map +1 -1
  98. package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs +19 -19
  99. package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs.map +1 -1
  100. package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js +19 -19
  101. package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js.map +1 -1
  102. package/dist/recipes/leftbar/contact_row/contact_row.vue.cjs +4 -4
  103. package/dist/recipes/leftbar/contact_row/contact_row.vue.cjs.map +1 -1
  104. package/dist/recipes/leftbar/contact_row/contact_row.vue.js +4 -4
  105. package/dist/recipes/leftbar/contact_row/contact_row.vue.js.map +1 -1
  106. package/dist/recipes/leftbar/general_row/general_row.vue.cjs +27 -27
  107. package/dist/recipes/leftbar/general_row/general_row.vue.cjs.map +1 -1
  108. package/dist/recipes/leftbar/general_row/general_row.vue.js +27 -27
  109. package/dist/recipes/leftbar/general_row/general_row.vue.js.map +1 -1
  110. package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs +1 -1
  111. package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs.map +1 -1
  112. package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js +1 -1
  113. package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js.map +1 -1
  114. package/dist/recipes/leftbar/unread_pill/unread_pill.vue.cjs +1 -1
  115. package/dist/recipes/leftbar/unread_pill/unread_pill.vue.cjs.map +1 -1
  116. package/dist/recipes/leftbar/unread_pill/unread_pill.vue.js +1 -1
  117. package/dist/recipes/leftbar/unread_pill/unread_pill.vue.js.map +1 -1
  118. package/dist/recipes/notices/top_banner_info/top_banner_info.vue.cjs +4 -4
  119. package/dist/recipes/notices/top_banner_info/top_banner_info.vue.cjs.map +1 -1
  120. package/dist/recipes/notices/top_banner_info/top_banner_info.vue.js +4 -4
  121. package/dist/recipes/notices/top_banner_info/top_banner_info.vue.js.map +1 -1
  122. package/dist/types/common/emoji/index.d.ts +1905 -17
  123. package/dist/types/common/emoji/index.d.ts.map +1 -1
  124. package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts +11 -1
  125. package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  126. package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +27 -0
  127. package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts.map +1 -1
  128. package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +27 -0
  129. package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts.map +1 -1
  130. package/dist/types/recipes/conversation_view/editor/editor.vue.d.ts.map +1 -1
  131. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +4 -4
  132. package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +2 -2
  133. package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts +6 -6
  134. package/package.json +7 -6
@@ -1 +1 @@
1
- {"version":3,"file":"contact_row.vue.js","sources":["../../../../recipes/leftbar/contact_row/contact_row.vue"],"sourcesContent":["<template>\n <dt-recipe-general-row\n :unread-count=\"unreadCount\"\n :description=\"contactDescription\"\n :has-unreads=\"hasUnreads\"\n :selected=\"selected\"\n :has-call-button=\"hasCallButton\"\n :muted=\"muted\"\n :is-typing=\"isTyping\"\n :call-button-tooltip=\"callButtonTooltip\"\n :unread-count-tooltip=\"unreadCountTooltip\"\n v-bind=\"$attrs\"\n data-qa=\"contact-row\"\n v-on=\"contactRowListeners\"\n @call=\"$emit('call', $event)\"\n >\n <template #left>\n <dt-avatar\n :full-name=\"name\"\n :image-src=\"avatarSrc\"\n :color=\"avatarColor\"\n image-alt=\"\"\n size=\"sm\"\n :seed=\"avatarSeed\"\n :presence=\"avatarPresence\"\n >\n <template\n v-if=\"noInitials\"\n #icon\n >\n <dt-icon-user\n size=\"200\"\n />\n </template>\n </dt-avatar>\n </template>\n <template #label>\n <dt-emoji-text-wrapper\n class=\"dt-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ name }}\n </dt-emoji-text-wrapper>\n <div class=\"dt-recipe-leftbar-row__status\">\n <span\n v-if=\"presenceText\"\n data-qa=\"dt-recipe-leftbar-row-presence-text\"\n :class=\"['dt-recipe-leftbar-row__meta-context', presenceColorClass]\"\n >\n {{ presenceText }}\n </span>\n <dt-emoji-text-wrapper\n v-if=\"userStatus\"\n size=\"100\"\n element-type=\"span\"\n data-qa=\"dt-recipe-leftbar-row-user-status\"\n class=\"dt-recipe-leftbar-row__meta-custom\"\n >\n {{ userStatus }}\n </dt-emoji-text-wrapper>\n </div>\n </template>\n </dt-recipe-general-row>\n</template>\n\n<script>\nimport { DtRecipeGeneralRow } from '@/recipes/leftbar/general_row';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n name: 'DtRecipeContactRow',\n\n components: {\n DtAvatar,\n DtRecipeGeneralRow,\n DtEmojiTextWrapper,\n DtIconUser,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Optional avatar image url.\n * If not provided it will use the initial of the name.\n */\n avatarSrc: {\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 * defer validation to avatar component.\n * @values null, busy, away, offline, active\n */\n avatarPresence: {\n type: String,\n default: null,\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 color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Text describing the user's presence, such as \"in a meeting\"\n */\n presenceText: {\n type: String,\n default: '',\n },\n\n /**\n * Name of the contact\n */\n name: {\n type: String,\n required: true,\n },\n\n /**\n * Status as set by the user.\n */\n userStatus: {\n type: String,\n default: '',\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Initials will never be shown. Instead it will show a \"User\" icon.\n */\n noInitials: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Whether the contact row should display a call button when hovered.\n */\n hasCallButton: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Text shown when the call button is hovered.\n */\n callButtonTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Text shown when the unread count is hovered.\n */\n unreadCountTooltip: {\n type: String,\n default: '',\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n computed: {\n presenceColorClass () {\n switch (this.avatarPresence) {\n case 'active':\n return 'd-fc-success';\n case 'busy':\n return 'd-fc-critical';\n case 'away':\n return 'd-fc-warning';\n default:\n return undefined;\n }\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n contactDescription () {\n return safeConcatStrings([this.name, this.presenceText, this.userStatus]);\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createBlock","_mergeProps","_toHandlers","_createVNode","_createSlots","_withCtx","_createTextVNode","_toDisplayString","_createElementVNode","_createElementBlock","_normalizeClass","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"contact_row.vue.js","sources":["../../../../recipes/leftbar/contact_row/contact_row.vue"],"sourcesContent":["<template>\n <dt-recipe-general-row\n :unread-count=\"unreadCount\"\n :description=\"contactDescription\"\n :has-unreads=\"hasUnreads\"\n :selected=\"selected\"\n :has-call-button=\"hasCallButton\"\n :muted=\"muted\"\n :is-typing=\"isTyping\"\n :call-button-tooltip=\"callButtonTooltip\"\n :unread-count-tooltip=\"unreadCountTooltip\"\n v-bind=\"$attrs\"\n data-qa=\"contact-row\"\n v-on=\"contactRowListeners\"\n @call=\"$emit('call', $event)\"\n >\n <template #left>\n <dt-avatar\n :full-name=\"name\"\n :image-src=\"avatarSrc\"\n :color=\"avatarColor\"\n image-alt=\"\"\n size=\"sm\"\n :seed=\"avatarSeed\"\n :presence=\"avatarPresence\"\n >\n <template\n v-if=\"noInitials\"\n #icon\n >\n <dt-icon-user\n size=\"200\"\n />\n </template>\n </dt-avatar>\n </template>\n <template #label>\n <dt-emoji-text-wrapper\n class=\"d-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ name }}\n </dt-emoji-text-wrapper>\n <div class=\"d-recipe-leftbar-row__status\">\n <span\n v-if=\"presenceText\"\n data-qa=\"dt-recipe-leftbar-row-presence-text\"\n :class=\"['d-recipe-leftbar-row__meta-context', presenceColorClass]\"\n >\n {{ presenceText }}\n </span>\n <dt-emoji-text-wrapper\n v-if=\"userStatus\"\n size=\"100\"\n element-type=\"span\"\n data-qa=\"dt-recipe-leftbar-row-user-status\"\n class=\"d-recipe-leftbar-row__meta-custom\"\n >\n {{ userStatus }}\n </dt-emoji-text-wrapper>\n </div>\n </template>\n </dt-recipe-general-row>\n</template>\n\n<script>\nimport { DtRecipeGeneralRow } from '@/recipes/leftbar/general_row';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n name: 'DtRecipeContactRow',\n\n components: {\n DtAvatar,\n DtRecipeGeneralRow,\n DtEmojiTextWrapper,\n DtIconUser,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Optional avatar image url.\n * If not provided it will use the initial of the name.\n */\n avatarSrc: {\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 * defer validation to avatar component.\n * @values null, busy, away, offline, active\n */\n avatarPresence: {\n type: String,\n default: null,\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 color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Text describing the user's presence, such as \"in a meeting\"\n */\n presenceText: {\n type: String,\n default: '',\n },\n\n /**\n * Name of the contact\n */\n name: {\n type: String,\n required: true,\n },\n\n /**\n * Status as set by the user.\n */\n userStatus: {\n type: String,\n default: '',\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Initials will never be shown. Instead it will show a \"User\" icon.\n */\n noInitials: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Whether the contact row should display a call button when hovered.\n */\n hasCallButton: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Text shown when the call button is hovered.\n */\n callButtonTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Text shown when the unread count is hovered.\n */\n unreadCountTooltip: {\n type: String,\n default: '',\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n computed: {\n presenceColorClass () {\n switch (this.avatarPresence) {\n case 'active':\n return 'd-fc-success';\n case 'busy':\n return 'd-fc-critical';\n case 'away':\n return 'd-fc-warning';\n default:\n return undefined;\n }\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n contactDescription () {\n return safeConcatStrings([this.name, this.presenceText, this.userStatus]);\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createBlock","_mergeProps","_toHandlers","_createVNode","_createSlots","_withCtx","_createTextVNode","_toDisplayString","_createElementVNode","_createElementBlock","_normalizeClass","_createCommentVNode"],"mappings":"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"}
@@ -182,14 +182,14 @@ const _sfc_main = {
182
182
  computed: {
183
183
  leftbarGeneralRowClasses() {
184
184
  return [
185
- "dt-recipe-leftbar-row",
185
+ "d-recipe-leftbar-row",
186
186
  {
187
- "dt-recipe-leftbar-row--no-action": !this.hasCallButton,
188
- "dt-recipe-leftbar-row--has-unread": this.hasUnreads,
189
- "dt-recipe-leftbar-row__unread-count": this.showUnreadCount || this.showUnreadMentionCount,
190
- "dt-recipe-leftbar-row--selected": this.selected,
191
- "dt-recipe-leftbar-row--muted": this.muted,
192
- "dt-recipe-leftbar-row--action-focused": this.actionFocused
187
+ "d-recipe-leftbar-row--no-action": !this.hasCallButton,
188
+ "d-recipe-leftbar-row--has-unread": this.hasUnreads,
189
+ "d-recipe-leftbar-row__unread-count": this.showUnreadCount || this.showUnreadMentionCount,
190
+ "d-recipe-leftbar-row--selected": this.selected,
191
+ "d-recipe-leftbar-row--muted": this.muted,
192
+ "d-recipe-leftbar-row--action-focused": this.actionFocused
193
193
  }
194
194
  ];
195
195
  },
@@ -264,19 +264,19 @@ const _sfc_main = {
264
264
  },
265
265
  adjustLabelWidth() {
266
266
  var _a, _b, _c, _d, _e, _f;
267
- const labelWidth = ((_b = (_a = this.$el) == null ? void 0 : _a.querySelector(".dt-recipe-leftbar-row__primary")) == null ? void 0 : _b.clientWidth) || 0;
268
- const omegaWidth = ((_d = (_c = this.$el) == null ? void 0 : _c.querySelector(".dt-recipe-leftbar-row__omega")) == null ? void 0 : _d.clientWidth) || 0;
269
- const alphaWidth = ((_f = (_e = this.$el) == null ? void 0 : _e.querySelector(".dt-recipe-leftbar-row__alpha")) == null ? void 0 : _f.clientWidth) || 0;
267
+ const labelWidth = ((_b = (_a = this.$el) == null ? void 0 : _a.querySelector(".d-recipe-leftbar-row__primary")) == null ? void 0 : _b.clientWidth) || 0;
268
+ const omegaWidth = ((_d = (_c = this.$el) == null ? void 0 : _c.querySelector(".d-recipe-leftbar-row__omega")) == null ? void 0 : _d.clientWidth) || 0;
269
+ const alphaWidth = ((_f = (_e = this.$el) == null ? void 0 : _e.querySelector(".d-recipe-leftbar-row__alpha")) == null ? void 0 : _f.clientWidth) || 0;
270
270
  const paddings = 16;
271
271
  this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + "px";
272
272
  }
273
273
  }
274
274
  };
275
275
  const _hoisted_1 = ["data-qa", "aria-label", "title", "href"];
276
- const _hoisted_2 = { class: "dt-recipe-leftbar-row__alpha" };
276
+ const _hoisted_2 = { class: "d-recipe-leftbar-row__alpha" };
277
277
  const _hoisted_3 = {
278
278
  key: 0,
279
- class: "dt-recipe-leftbar-row__is-typing"
279
+ class: "d-recipe-leftbar-row__is-typing"
280
280
  };
281
281
  const _hoisted_4 = /* @__PURE__ */ vue.createElementVNode("span", null, null, -1);
282
282
  const _hoisted_5 = /* @__PURE__ */ vue.createElementVNode("span", null, null, -1);
@@ -288,15 +288,15 @@ const _hoisted_7 = [
288
288
  ];
289
289
  const _hoisted_8 = {
290
290
  key: 0,
291
- class: "dt-recipe-leftbar-row__omega"
291
+ class: "d-recipe-leftbar-row__omega"
292
292
  };
293
293
  const _hoisted_9 = {
294
294
  key: 1,
295
- class: "dt-recipe-leftbar-row__active-voice"
295
+ class: "d-recipe-leftbar-row__active-voice"
296
296
  };
297
297
  const _hoisted_10 = {
298
298
  key: 3,
299
- class: "dt-recipe-leftbar-row__action",
299
+ class: "d-recipe-leftbar-row__action",
300
300
  "data-qa": "dt-recipe-leftbar-row-action"
301
301
  };
302
302
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
@@ -312,8 +312,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
312
312
  "data-qa": "dt-recipe-leftbar-row"
313
313
  }, [
314
314
  vue.createElementVNode("a", vue.mergeProps({
315
- class: "dt-recipe-leftbar-row__primary",
316
- "data-qa": "data-qa" in _ctx.$attrs ? _ctx.$attrs["data-qa"] : "dt-recipe-leftbar-row-link",
315
+ class: "d-recipe-leftbar-row__primary",
316
+ "data-qa": "data-qa" in _ctx.$attrs ? _ctx.$attrs["data-qa"] : "d-recipe-leftbar-row-link",
317
317
  "aria-label": $options.getAriaLabel,
318
318
  title: $props.description,
319
319
  href: "href" in _ctx.$attrs ? _ctx.$attrs.href : "javascript:void(0)"
@@ -329,12 +329,12 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
329
329
  ])
330
330
  ]),
331
331
  vue.createElementVNode("div", {
332
- class: "dt-recipe-leftbar-row__label",
332
+ class: "d-recipe-leftbar-row__label",
333
333
  style: vue.normalizeStyle(`flex-basis: ${$data.labelWidth}`)
334
334
  }, [
335
335
  vue.renderSlot(_ctx.$slots, "label", {}, () => [
336
336
  vue.createVNode(_component_dt_emoji_text_wrapper, {
337
- class: "dt-recipe-leftbar-row__description",
337
+ class: "d-recipe-leftbar-row__description",
338
338
  "data-qa": "dt-recipe-leftbar-row-description",
339
339
  size: "200"
340
340
  }, {
@@ -354,8 +354,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
354
354
  }, {
355
355
  anchor: vue.withCtx(() => [
356
356
  vue.createElementVNode("div", {
357
- ref: "dt-recipe-leftbar-row-dnd",
358
- class: "dt-recipe-leftbar-row__dnd",
357
+ ref: "d-recipe-leftbar-row-dnd",
358
+ class: "d-recipe-leftbar-row__dnd",
359
359
  "data-qa": "dt-recipe-leftbar-row-dnd"
360
360
  }, vue.toDisplayString($props.dndText), 513)
361
361
  ]),
@@ -374,8 +374,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
374
374
  kind: "count",
375
375
  type: "bulletin",
376
376
  "data-qa": "dt-recipe-leftbar-row-unread-badge",
377
- class: vue.normalizeClass(["dt-recipe-leftbar-row__unread-badge", {
378
- "dt-recipe-leftbar-row__unread-count-badge": $options.shouldApplyCustomStyleForCountBadge
377
+ class: vue.normalizeClass(["d-recipe-leftbar-row__unread-badge", {
378
+ "d-recipe-leftbar-row__unread-count-badge": $options.shouldApplyCustomStyleForCountBadge
379
379
  }])
380
380
  }, {
381
381
  default: vue.withCtx(() => [
@@ -389,9 +389,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
389
389
  type: "bulletin",
390
390
  "data-qa": "dt-recipe-leftbar-row-unread-mention-badge",
391
391
  class: vue.normalizeClass([
392
- "dt-recipe-leftbar-row__unread-badge",
393
- { "dt-recipe-leftbar-row__unread-mention-count-badge": $options.shouldApplyCustomStyleForCountBadge },
394
- { "dt-recipe-leftbar-row__unread-mention-only-count-badge": $options.shouldApplyCustomStyleForMentionOnly }
392
+ "d-recipe-leftbar-row__unread-badge",
393
+ { "d-recipe-leftbar-row__unread-mention-count-badge": $options.shouldApplyCustomStyleForCountBadge },
394
+ { "d-recipe-leftbar-row__unread-mention-only-count-badge": $options.shouldApplyCustomStyleForMentionOnly }
395
395
  ])
396
396
  }, {
397
397
  default: vue.withCtx(() => [
@@ -409,7 +409,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
409
409
  }, {
410
410
  anchor: vue.withCtx(() => [
411
411
  vue.createVNode(_component_dt_button, {
412
- class: "dt-recipe-leftbar-row__action-button",
412
+ class: "d-recipe-leftbar-row__action-button",
413
413
  "data-qa": "dt-recipe-leftbar-row-action-call-button",
414
414
  circle: true,
415
415
  size: "xs",
@@ -1 +1 @@
1
- {"version":3,"file":"general_row.vue.cjs","sources":["../../../../recipes/leftbar/general_row/general_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"leftbarGeneralRowClasses\"\n data-qa=\"dt-recipe-leftbar-row\"\n >\n <a\n class=\"dt-recipe-leftbar-row__primary\"\n :data-qa=\"'data-qa' in $attrs ? $attrs['data-qa'] : 'dt-recipe-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"'href' in $attrs ? $attrs.href : 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"generalRowListeners\"\n >\n <div\n class=\"dt-recipe-leftbar-row__alpha\"\n >\n <div\n v-if=\"isTyping\"\n class=\"dt-recipe-leftbar-row__is-typing\"\n >\n <span /><span /><span />\n </div>\n <slot\n v-else\n name=\"left\"\n >\n <dt-recipe-leftbar-general-row-icon\n :type=\"getIcon\"\n :color=\"color\"\n :icon-size=\"iconSize\"\n data-qa=\"dt-recipe-leftbar-row-icon\"\n />\n </slot>\n </div>\n <div\n class=\"dt-recipe-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\n <slot name=\"label\">\n <dt-emoji-text-wrapper\n class=\"dt-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ description }}\n </dt-emoji-text-wrapper>\n </slot>\n </div>\n </a>\n <div\n v-if=\"hasActions\"\n class=\"dt-recipe-leftbar-row__omega\"\n >\n <dt-tooltip\n v-if=\"dndText\"\n placement=\"top\"\n :message=\"dndTextTooltip\"\n >\n <template #anchor>\n <div\n ref=\"dt-recipe-leftbar-row-dnd\"\n class=\"dt-recipe-leftbar-row__dnd\"\n data-qa=\"dt-recipe-leftbar-row-dnd\"\n >\n {{ dndText }}\n </div>\n </template>\n </dt-tooltip>\n <div\n v-if=\"activeVoiceChat\"\n class=\"dt-recipe-leftbar-row__active-voice\"\n >\n <dt-icon-waveform\n size=\"300\"\n />\n </div>\n <dt-tooltip\n v-else-if=\"showUnreadCount || showUnreadMentionCount\"\n :message=\"unreadCountTooltip\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-badge\n v-if=\"showUnreadCount\"\n kind=\"count\"\n type=\"bulletin\"\n data-qa=\"dt-recipe-leftbar-row-unread-badge\"\n :class=\"['dt-recipe-leftbar-row__unread-badge', {\n 'dt-recipe-leftbar-row__unread-count-badge':\n shouldApplyCustomStyleForCountBadge,\n }]\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-badge\n v-if=\"showUnreadMentionCount\"\n kind=\"count\"\n type=\"bulletin\"\n data-qa=\"dt-recipe-leftbar-row-unread-mention-badge\"\n :class=\"['dt-recipe-leftbar-row__unread-badge',\n { 'dt-recipe-leftbar-row__unread-mention-count-badge': shouldApplyCustomStyleForCountBadge },\n { 'dt-recipe-leftbar-row__unread-mention-only-count-badge': shouldApplyCustomStyleForMentionOnly },\n ]\"\n >\n {{ unreadMentionCount }}\n </dt-badge>\n </template>\n </dt-tooltip>\n <div\n v-if=\"hasCallButton\"\n class=\"dt-recipe-leftbar-row__action\"\n data-qa=\"dt-recipe-leftbar-row-action\"\n >\n <dt-tooltip\n :message=\"callButtonTooltip\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n class=\"dt-recipe-leftbar-row__action-button\"\n data-qa=\"dt-recipe-leftbar-row-action-call-button\"\n :circle=\"true\"\n size=\"xs\"\n kind=\"inverted\"\n :aria-label=\"callButtonTooltip\"\n @focus=\"actionFocused = true\"\n @blur=\"actionFocused = false\"\n @click.stop=\"$emit('call', $event)\"\n >\n <template #icon>\n <dt-icon-phone\n size=\"200\"\n />\n </template>\n </dt-button>\n </template>\n </dt-tooltip>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport {\n LEFTBAR_GENERAL_ROW_TYPES,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR,\n LEFTBAR_GENERAL_ROW_ICON_SIZES,\n} from './general_row_constants';\nimport { DtBadge } from '@/components/badge';\nimport { DtIconPhone, DtIconWaveform } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport { DtTooltip } from '@/components/tooltip';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtRecipeLeftbarGeneralRowIcon from './leftbar_general_row_icon.vue';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\n\nexport default {\n name: 'DtRecipeGeneralRow',\n\n components: {\n DtEmojiTextWrapper,\n DtBadge,\n DtButton,\n DtTooltip,\n DtIconPhone,\n DtIconWaveform,\n DtRecipeLeftbarGeneralRowIcon,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines the icon to show.\n * If type is contact center, the color prop must be provided and will determine the color of the icon\n */\n type: {\n type: String,\n default: 'inbox',\n validator: (type) => {\n return Object.values(LEFTBAR_GENERAL_ROW_TYPES).includes(type);\n },\n },\n\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. Even if you are overriding this field using the label slot\n * you still must input this as it will be displayed as the \"title\" attribute for the row.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines the color of the contact center icon\n */\n color: {\n type: String,\n default: null,\n validator: (color) => {\n return Object.keys(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS).includes(color);\n },\n },\n\n /**\n * The channel setting, either 'mention' or 'always'.\n * @values 'mention', 'always', null.\n */\n channelSetting: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Number of unread mention messages\n */\n unreadMentionCount: {\n type: String,\n default: null,\n },\n\n /**\n * Text shown when the unread count is hovered.\n */\n unreadCountTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows styling to represent an active voice chat. This will display over unreadCount.\n */\n activeVoiceChat: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Acronym used to represent \"Do not Disturb\" state. If entered will display the entered text alongside\n * unreadCount.\n */\n dndText: {\n type: String,\n default: '',\n },\n\n /**\n * Text shown in tooltip when you hover the dndText\n */\n dndTextTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Whether the row should have a call button. Usually only applicable to individual contact rows.\n */\n hasCallButton: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Text shown when the call button is hovered.\n */\n callButtonTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Sets the size of the icon.\n */\n iconSize: {\n type: String,\n default: '300',\n validator: (size) => {\n return LEFTBAR_GENERAL_ROW_ICON_SIZES.includes(size);\n },\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n data () {\n return {\n actionFocused: false,\n labelWidth: '100%',\n };\n },\n\n computed: {\n leftbarGeneralRowClasses () {\n return [\n 'dt-recipe-leftbar-row',\n {\n 'dt-recipe-leftbar-row--no-action': !this.hasCallButton,\n 'dt-recipe-leftbar-row--has-unread': this.hasUnreads,\n 'dt-recipe-leftbar-row__unread-count': this.showUnreadCount || this.showUnreadMentionCount,\n 'dt-recipe-leftbar-row--selected': this.selected,\n 'dt-recipe-leftbar-row--muted': this.muted,\n 'dt-recipe-leftbar-row--action-focused': this.actionFocused,\n },\n ];\n },\n\n getIcon () {\n switch (this.type) {\n case LEFTBAR_GENERAL_ROW_TYPES.CHANNELS:\n if (this.hasUnreads) return 'channel unread';\n break;\n case LEFTBAR_GENERAL_ROW_TYPES.LOCKED_CHANNEL:\n if (this.hasUnreads) return 'locked channel unread';\n break;\n }\n return this.type;\n },\n\n generalRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip, this.dndTextTooltip]);\n },\n\n hasActions () {\n return this.dndText || this.activeVoiceChat || this.showUnreadCount || this.hasCallButton ||\n this.showUnreadMentionCount;\n },\n\n showUnreadCount () {\n return !!this.unreadCount && this.hasUnreads;\n },\n\n showUnreadMentionCount () {\n return !!this.unreadMentionCount && this.hasUnreads;\n },\n\n hasUnreadCount () {\n return this.unreadCount !== null;\n },\n\n hasUnreadMentionCount () {\n return this.unreadMentionCount !== null;\n },\n\n shouldApplyCustomStyleForCountBadge () {\n return this.hasUnreadCount && this.hasUnreadMentionCount;\n },\n\n /**\n * When a channel in 'always' setting, meaning the user should see both unread count and unread mention count,\n * if there are only mention messages, we should apply the theme design tokens var(--dt-theme-mention-color-[background||foreground]-strong).\n * @returns {boolean}\n */\n shouldApplyCustomStyleForMentionOnly () {\n return this.channelSetting === 'always' && !this.hasUnreadCount && this.hasUnreadMentionCount;\n },\n },\n\n watch: {\n $props: {\n immediate: true,\n deep: true,\n async handler () {\n this.validateProps();\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 beforeUnmount: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\n validateProps () {\n if (this.type === LEFTBAR_GENERAL_ROW_TYPES.CONTACT_CENTER &&\n !Object.keys(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS).includes(this.color)) {\n console.error(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR);\n }\n },\n\n adjustLabelWidth () {\n const labelWidth = this.$el?.querySelector('.dt-recipe-leftbar-row__primary')?.clientWidth || 0;\n const omegaWidth = this.$el?.querySelector('.dt-recipe-leftbar-row__omega')?.clientWidth || 0;\n const alphaWidth = this.$el?.querySelector('.dt-recipe-leftbar-row__alpha')?.clientWidth || 0;\n const paddings = 16;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n"],"names":["DtEmojiTextWrapper","DtBadge","DtButton","DtTooltip","DtIconPhone","DtIconWaveform","DtRecipeLeftbarGeneralRowIcon","LEFTBAR_GENERAL_ROW_TYPES","LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS","LEFTBAR_GENERAL_ROW_ICON_SIZES","extractVueListeners","safeConcatStrings","LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR","_createElementVNode","_createElementBlock","_normalizeClass","_mergeProps","_toHandlers","_renderSlot","_createVNode","_normalizeStyle","_withCtx","_createTextVNode","_toDisplayString","_openBlock","_createBlock","_createCommentVNode","_withModifiers"],"mappings":"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"}
1
+ {"version":3,"file":"general_row.vue.cjs","sources":["../../../../recipes/leftbar/general_row/general_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"leftbarGeneralRowClasses\"\n data-qa=\"dt-recipe-leftbar-row\"\n >\n <a\n class=\"d-recipe-leftbar-row__primary\"\n :data-qa=\"'data-qa' in $attrs ? $attrs['data-qa'] : 'd-recipe-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"'href' in $attrs ? $attrs.href : 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"generalRowListeners\"\n >\n <div\n class=\"d-recipe-leftbar-row__alpha\"\n >\n <div\n v-if=\"isTyping\"\n class=\"d-recipe-leftbar-row__is-typing\"\n >\n <span /><span /><span />\n </div>\n <slot\n v-else\n name=\"left\"\n >\n <dt-recipe-leftbar-general-row-icon\n :type=\"getIcon\"\n :color=\"color\"\n :icon-size=\"iconSize\"\n data-qa=\"dt-recipe-leftbar-row-icon\"\n />\n </slot>\n </div>\n <div\n class=\"d-recipe-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\n <slot name=\"label\">\n <dt-emoji-text-wrapper\n class=\"d-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ description }}\n </dt-emoji-text-wrapper>\n </slot>\n </div>\n </a>\n <div\n v-if=\"hasActions\"\n class=\"d-recipe-leftbar-row__omega\"\n >\n <dt-tooltip\n v-if=\"dndText\"\n placement=\"top\"\n :message=\"dndTextTooltip\"\n >\n <template #anchor>\n <div\n ref=\"d-recipe-leftbar-row-dnd\"\n class=\"d-recipe-leftbar-row__dnd\"\n data-qa=\"dt-recipe-leftbar-row-dnd\"\n >\n {{ dndText }}\n </div>\n </template>\n </dt-tooltip>\n <div\n v-if=\"activeVoiceChat\"\n class=\"d-recipe-leftbar-row__active-voice\"\n >\n <dt-icon-waveform\n size=\"300\"\n />\n </div>\n <dt-tooltip\n v-else-if=\"showUnreadCount || showUnreadMentionCount\"\n :message=\"unreadCountTooltip\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-badge\n v-if=\"showUnreadCount\"\n kind=\"count\"\n type=\"bulletin\"\n data-qa=\"dt-recipe-leftbar-row-unread-badge\"\n :class=\"['d-recipe-leftbar-row__unread-badge', {\n 'd-recipe-leftbar-row__unread-count-badge':\n shouldApplyCustomStyleForCountBadge,\n }]\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-badge\n v-if=\"showUnreadMentionCount\"\n kind=\"count\"\n type=\"bulletin\"\n data-qa=\"dt-recipe-leftbar-row-unread-mention-badge\"\n :class=\"['d-recipe-leftbar-row__unread-badge',\n { 'd-recipe-leftbar-row__unread-mention-count-badge': shouldApplyCustomStyleForCountBadge },\n { 'd-recipe-leftbar-row__unread-mention-only-count-badge': shouldApplyCustomStyleForMentionOnly },\n ]\"\n >\n {{ unreadMentionCount }}\n </dt-badge>\n </template>\n </dt-tooltip>\n <div\n v-if=\"hasCallButton\"\n class=\"d-recipe-leftbar-row__action\"\n data-qa=\"dt-recipe-leftbar-row-action\"\n >\n <dt-tooltip\n :message=\"callButtonTooltip\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n class=\"d-recipe-leftbar-row__action-button\"\n data-qa=\"dt-recipe-leftbar-row-action-call-button\"\n :circle=\"true\"\n size=\"xs\"\n kind=\"inverted\"\n :aria-label=\"callButtonTooltip\"\n @focus=\"actionFocused = true\"\n @blur=\"actionFocused = false\"\n @click.stop=\"$emit('call', $event)\"\n >\n <template #icon>\n <dt-icon-phone\n size=\"200\"\n />\n </template>\n </dt-button>\n </template>\n </dt-tooltip>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport {\n LEFTBAR_GENERAL_ROW_TYPES,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR,\n LEFTBAR_GENERAL_ROW_ICON_SIZES,\n} from './general_row_constants';\nimport { DtBadge } from '@/components/badge';\nimport { DtIconPhone, DtIconWaveform } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport { DtTooltip } from '@/components/tooltip';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtRecipeLeftbarGeneralRowIcon from './leftbar_general_row_icon.vue';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\n\nexport default {\n name: 'DtRecipeGeneralRow',\n\n components: {\n DtEmojiTextWrapper,\n DtBadge,\n DtButton,\n DtTooltip,\n DtIconPhone,\n DtIconWaveform,\n DtRecipeLeftbarGeneralRowIcon,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines the icon to show.\n * If type is contact center, the color prop must be provided and will determine the color of the icon\n */\n type: {\n type: String,\n default: 'inbox',\n validator: (type) => {\n return Object.values(LEFTBAR_GENERAL_ROW_TYPES).includes(type);\n },\n },\n\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. Even if you are overriding this field using the label slot\n * you still must input this as it will be displayed as the \"title\" attribute for the row.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines the color of the contact center icon\n */\n color: {\n type: String,\n default: null,\n validator: (color) => {\n return Object.keys(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS).includes(color);\n },\n },\n\n /**\n * The channel setting, either 'mention' or 'always'.\n * @values 'mention', 'always', null.\n */\n channelSetting: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Number of unread mention messages\n */\n unreadMentionCount: {\n type: String,\n default: null,\n },\n\n /**\n * Text shown when the unread count is hovered.\n */\n unreadCountTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows styling to represent an active voice chat. This will display over unreadCount.\n */\n activeVoiceChat: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Acronym used to represent \"Do not Disturb\" state. If entered will display the entered text alongside\n * unreadCount.\n */\n dndText: {\n type: String,\n default: '',\n },\n\n /**\n * Text shown in tooltip when you hover the dndText\n */\n dndTextTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Whether the row should have a call button. Usually only applicable to individual contact rows.\n */\n hasCallButton: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Text shown when the call button is hovered.\n */\n callButtonTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Sets the size of the icon.\n */\n iconSize: {\n type: String,\n default: '300',\n validator: (size) => {\n return LEFTBAR_GENERAL_ROW_ICON_SIZES.includes(size);\n },\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n data () {\n return {\n actionFocused: false,\n labelWidth: '100%',\n };\n },\n\n computed: {\n leftbarGeneralRowClasses () {\n return [\n 'd-recipe-leftbar-row',\n {\n 'd-recipe-leftbar-row--no-action': !this.hasCallButton,\n 'd-recipe-leftbar-row--has-unread': this.hasUnreads,\n 'd-recipe-leftbar-row__unread-count': this.showUnreadCount || this.showUnreadMentionCount,\n 'd-recipe-leftbar-row--selected': this.selected,\n 'd-recipe-leftbar-row--muted': this.muted,\n 'd-recipe-leftbar-row--action-focused': this.actionFocused,\n },\n ];\n },\n\n getIcon () {\n switch (this.type) {\n case LEFTBAR_GENERAL_ROW_TYPES.CHANNELS:\n if (this.hasUnreads) return 'channel unread';\n break;\n case LEFTBAR_GENERAL_ROW_TYPES.LOCKED_CHANNEL:\n if (this.hasUnreads) return 'locked channel unread';\n break;\n }\n return this.type;\n },\n\n generalRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip, this.dndTextTooltip]);\n },\n\n hasActions () {\n return this.dndText || this.activeVoiceChat || this.showUnreadCount || this.hasCallButton ||\n this.showUnreadMentionCount;\n },\n\n showUnreadCount () {\n return !!this.unreadCount && this.hasUnreads;\n },\n\n showUnreadMentionCount () {\n return !!this.unreadMentionCount && this.hasUnreads;\n },\n\n hasUnreadCount () {\n return this.unreadCount !== null;\n },\n\n hasUnreadMentionCount () {\n return this.unreadMentionCount !== null;\n },\n\n shouldApplyCustomStyleForCountBadge () {\n return this.hasUnreadCount && this.hasUnreadMentionCount;\n },\n\n /**\n * When a channel in 'always' setting, meaning the user should see both unread count and unread mention count,\n * if there are only mention messages, we should apply the theme design tokens var(--dt-theme-mention-color-[background||foreground]-strong).\n * @returns {boolean}\n */\n shouldApplyCustomStyleForMentionOnly () {\n return this.channelSetting === 'always' && !this.hasUnreadCount && this.hasUnreadMentionCount;\n },\n },\n\n watch: {\n $props: {\n immediate: true,\n deep: true,\n async handler () {\n this.validateProps();\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 beforeUnmount: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\n validateProps () {\n if (this.type === LEFTBAR_GENERAL_ROW_TYPES.CONTACT_CENTER &&\n !Object.keys(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS).includes(this.color)) {\n console.error(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR);\n }\n },\n\n adjustLabelWidth () {\n const labelWidth = this.$el?.querySelector('.d-recipe-leftbar-row__primary')?.clientWidth || 0;\n const omegaWidth = this.$el?.querySelector('.d-recipe-leftbar-row__omega')?.clientWidth || 0;\n const alphaWidth = this.$el?.querySelector('.d-recipe-leftbar-row__alpha')?.clientWidth || 0;\n const paddings = 16;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n"],"names":["DtEmojiTextWrapper","DtBadge","DtButton","DtTooltip","DtIconPhone","DtIconWaveform","DtRecipeLeftbarGeneralRowIcon","LEFTBAR_GENERAL_ROW_TYPES","LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS","LEFTBAR_GENERAL_ROW_ICON_SIZES","extractVueListeners","safeConcatStrings","LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR","_createElementVNode","_createElementBlock","_normalizeClass","_mergeProps","_toHandlers","_renderSlot","_createVNode","_normalizeStyle","_withCtx","_createTextVNode","_toDisplayString","_openBlock","_createBlock","_createCommentVNode","_withModifiers"],"mappings":";;;;;;;;;;;;AA+JA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,oBAAAA,mBAAkB;AAAA,IAClB,SAAAC,MAAO;AAAA,IACP,UAAAC,OAAQ;AAAA,IACR,WAAAC,QAAS;AAAA,iBACTC,KAAW;AAAA,IACX,gBAAAC,KAAc;AAAA,mCACdC,yBAA6B;AAAA,EAC9B;AAAA,EAED,cAAc;AAAA,EAEd,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,SAAS;AACnB,eAAO,OAAO,OAAOC,sBAAAA,yBAAyB,EAAE,SAAS,IAAI;AAAA,MAC9D;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,UAAU;AACpB,eAAO,OAAO,KAAKC,sBAAAA,yCAAyC,EAAE,SAAS,KAAK;AAAA,MAC7E;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,oBAAoB;AAAA,MAClB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,oBAAoB;AAAA,MAClB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,SAAS;AACnB,eAAOC,sBAA8B,+BAAC,SAAS,IAAI;AAAA,MACpD;AAAA,IACF;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA,EACD;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,eAAe;AAAA,MACf,YAAY;AAAA;EAEf;AAAA,EAED,UAAU;AAAA,IACR,2BAA4B;AAC1B,aAAO;AAAA,QACL;AAAA,QACA;AAAA,UACE,mCAAmC,CAAC,KAAK;AAAA,UACzC,oCAAoC,KAAK;AAAA,UACzC,sCAAsC,KAAK,mBAAmB,KAAK;AAAA,UACnE,kCAAkC,KAAK;AAAA,UACvC,+BAA+B,KAAK;AAAA,UACpC,wCAAwC,KAAK;AAAA,QAC9C;AAAA;IAEJ;AAAA,IAED,UAAW;AACT,cAAQ,KAAK,MAAI;AAAA,QACf,KAAKF,sBAAyB,0BAAC;AAC7B,cAAI,KAAK,WAAY,QAAO;AAC5B;AAAA,QACF,KAAKA,sBAAyB,0BAAC;AAC7B,cAAI,KAAK,WAAY,QAAO;AAC5B;AAAA,MACJ;AACA,aAAO,KAAK;AAAA,IACb;AAAA,IAED,sBAAuB;AACrB,aAAOG,aAAmB,oBAAC,KAAK,MAAM;AAAA,IACvC;AAAA,IAED,eAAgB;AACd,aAAO,KAAK,YACR,KAAK,YACLC,+BAAkB,CAAC,KAAK,aAAa,KAAK,oBAAoB,KAAK,cAAc,CAAC;AAAA,IACvF;AAAA,IAED,aAAc;AACZ,aAAO,KAAK,WAAW,KAAK,mBAAmB,KAAK,mBAAmB,KAAK,iBAC1E,KAAK;AAAA,IACR;AAAA,IAED,kBAAmB;AACjB,aAAO,CAAC,CAAC,KAAK,eAAe,KAAK;AAAA,IACnC;AAAA,IAED,yBAA0B;AACxB,aAAO,CAAC,CAAC,KAAK,sBAAsB,KAAK;AAAA,IAC1C;AAAA,IAED,iBAAkB;AAChB,aAAO,KAAK,gBAAgB;AAAA,IAC7B;AAAA,IAED,wBAAyB;AACvB,aAAO,KAAK,uBAAuB;AAAA,IACpC;AAAA,IAED,sCAAuC;AACrC,aAAO,KAAK,kBAAkB,KAAK;AAAA,IACpC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,uCAAwC;AACtC,aAAO,KAAK,mBAAmB,YAAY,CAAC,KAAK,kBAAkB,KAAK;AAAA,IACzE;AAAA,EACF;AAAA,EAED,OAAO;AAAA,IACL,QAAQ;AAAA,MACN,WAAW;AAAA,MACX,MAAM;AAAA,MACN,MAAM,UAAW;AACf,aAAK,cAAa;AAClB,cAAM,KAAK;AACX,aAAK,iBAAgB;AAAA,MACtB;AAAA,IACF;AAAA,EACF;AAAA,EAED,UAAW;AACT,SAAK,iBAAiB,IAAI,eAAe,KAAK,gBAAgB;AAC9D,SAAK,eAAe,QAAQ,KAAK,GAAG;AACpC,SAAK,iBAAgB;AAAA,EACtB;AAAA,EAED,eAAe,WAAY;AACzB,SAAK,eAAe;EACrB;AAAA,EAED,SAAS;AAAA,IACP,gBAAiB;AACf,UAAI,KAAK,SAASJ,sBAAAA,0BAA0B,kBAC1C,CAAC,OAAO,KAAKC,sBAAyC,yCAAA,EAAE,SAAS,KAAK,KAAK,GAAG;AAC9E,gBAAQ,MAAMI,sBAAAA,mDAAmD;AAAA,MACnE;AAAA,IACD;AAAA,IAED,mBAAoB;;AAClB,YAAM,eAAa,gBAAK,QAAL,mBAAU,cAAc,sCAAxB,mBAA2D,gBAAe;AAC7F,YAAM,eAAa,gBAAK,QAAL,mBAAU,cAAc,oCAAxB,mBAAyD,gBAAe;AAC3F,YAAM,eAAa,gBAAK,QAAL,mBAAU,cAAc,oCAAxB,mBAAyD,gBAAe;AAC3F,YAAM,WAAW;AACjB,WAAK,aAAa,cAAc,aAAa,aAAa,YAAY;AAAA,IACvE;AAAA,EACF;AACH;AA7cA,MAAA,aAAA,CAAA,WAAA,cAAA,SAAA,MAAA;AAeQ,MAAA,aAAA,EAAA,OAAM,8BAA6B;;EAf3C,KAAA;AAAA,EAmBU,OAAM;;mBAENC,oBAAQ,mBAAA,QAAA,MAAA,MAAA,EAAA;mBAAAA,oBAAQ,mBAAA,QAAA,MAAA,MAAA,EAAA;mBAAAA,oBAAQ,mBAAA,QAAA,MAAA,MAAA,EAAA;;EAAxB;AAAA,EAAQ;AAAA,EAAQ;;;EArB1B,KAAA;AAAA,EAoDM,OAAM;;;EApDZ,KAAA;AAAA,EAuEQ,OAAM;;;EAvEd,KAAA;AAAA,EA+GQ,OAAM;AAAA,EACN,WAAQ;;;;;;;;;;0BA/GdC,IA2IM,mBAAA,OAAA;AAAA,IA1IH,OAFLC,IAAAA,eAEY,SAAwB,wBAAA;AAAA,IAChC,WAAQ;AAAA;IAERF,IAAA,mBA4CI,KA5CJG,eA4CI;AAAA,MA3CF,OAAM;AAAA,MACL,WAAO,aAAe,KAAM,SAAG,KAAM,OAAA,SAAA,IAAA;AAAA,MACrC,cAAY,SAAY;AAAA,MACxB,OAAO,OAAW;AAAA,MAClB,MAAgB,UAAA,KAAA,SAAS,KAAA,OAAO,OAAI;AAAA,OAC7B,KAAM,QACdC,IAA0B,WAApB,SAAmB,qBAAA,IAAA,CAAA,GAAA;AAAA,MAEzBJ,IAAA,mBAoBM,OApBN,YAoBM;AAAA,QAhBI,OAAQ,6BADhBC,IAKM,mBAAA,OALN,YAjBR,UAAA,KAuBQI,IAUO,WAAA,KAAA,QAAA,QAAA,EAjCf,KAAA,EAAA,GAuBQ,MAUO;AAAA,UANLC,IAAAA,YAKE,+CAAA;AAAA,YAJC,MAAM,SAAO;AAAA,YACb,OAAO,OAAK;AAAA,YACZ,aAAW,OAAQ;AAAA,YACpB,WAAQ;AAAA;;;MAIdN,IAAAA,mBAaM,OAAA;AAAA,QAZJ,OAAM;AAAA,QACL,OArCTO,kCAqC+B,MAAU,UAAA,EAAA;AAAA;QAEjCF,IAAAA,WAQO,0BARP,MAQO;AAAA,UAPLC,IAAAA,YAMwB,kCAAA;AAAA,YALtB,OAAM;AAAA,YACN,WAAQ;AAAA,YACR,MAAK;AAAA;YA3CjB,SAAAE,IAAA,QA6CY,MAAiB;AAAA,cA7C7BC,IAAAA,gBAAAC,IAAAA,gBA6Ce,OAAW,WAAA,GAAA,CAAA;AAAA;YA7C1B,GAAA;AAAA;;;IAAA,GAAA,IAAA,UAAA;AAAA,IAmDY,SAAU,cADlBC,IAAAA,aAAAV,IAAAA,mBAyFM,OAzFN,YAyFM;AAAA,MApFI,OAAO,4BADfW,IAca,YAAA,uBAAA;AAAA,QApEnB,KAAA;AAAA,QAwDQ,WAAU;AAAA,QACT,SAAS,OAAc;AAAA;QAEb,oBACT,MAMM;AAAA,UANNZ,IAAAA,mBAMM,OAAA;AAAA,YALJ,KAAI;AAAA,YACJ,OAAM;AAAA,YACN,WAAQ;AAAA,iCAEL,OAAO,OAAA,GAAA,GAAA;AAAA;QAjEtB,GAAA;AAAA,4BAAAa,IAAA,mBAAA,IAAA,IAAA;AAAA,MAsEc,OAAe,mBADvBF,IAAAA,aAAAV,IAAAA,mBAOM,OAPN,YAOM;AAAA,QAHJK,IAAAA,YAEE,6BAAA,EADA,MAAK,MAAK,CAAA;AAAA,YAID,SAAA,mBAAmB,SAAsB,2CADtDM,IA+Ba,YAAA,uBAAA;AAAA,QA5GnB,KAAA;AAAA,QA+ES,SAAS,OAAkB;AAAA,QAC5B,WAAU;AAAA;QAEC,oBACT,MAWW;AAAA,UAVH,SAAe,oCADvBA,IAWW,YAAA,qBAAA;AAAA,YA9FrB,KAAA;AAAA,YAqFY,MAAK;AAAA,YACL,MAAK;AAAA,YACL,WAAQ;AAAA,YACP,OAxFbV,IAAAA,eAAA,CAAA,sCAAA;AAAA,0DAwFuI,SAAmC;AAAA;;YAxF1K,SAAAM,IAAA,QA6FY,MAAiB;AAAA,cA7F7BC,IAAAA,gBAAAC,IAAAA,gBA6Fe,OAAW,WAAA,GAAA,CAAA;AAAA;YA7F1B,GAAA;AAAA,8BAAAG,IAAA,mBAAA,IAAA,IAAA;AAAA,UAgGkB,SAAsB,2CAD9BD,IAWW,YAAA,qBAAA;AAAA,YA1GrB,KAAA;AAAA,YAiGY,MAAK;AAAA,YACL,MAAK;AAAA,YACL,WAAQ;AAAA,YACP,OApGbV,IAAA,eAAA;AAAA,cAAA;AAAA,oEAoGsI,SAAmC,oCAAA;AAAA,yEAAoF,SAAoC,qCAAA;AAAA;;YApGjS,SAAAM,IAAA,QAyGY,MAAwB;AAAA,cAzGpCC,IAAAA,gBAAAC,IAAAA,gBAyGe,OAAkB,kBAAA,GAAA,CAAA;AAAA;YAzGjC,GAAA;AAAA,8BAAAG,IAAA,mBAAA,IAAA,IAAA;AAAA;QAAA,GAAA;AAAA,4BAAAA,IAAA,mBAAA,IAAA,IAAA;AAAA,MA8Gc,OAAa,iBADrBF,IAAAA,aAAAV,IAAAA,mBA6BM,OA7BN,aA6BM;AAAA,QAxBJK,IAAAA,YAuBa,uBAAA;AAAA,UAtBV,SAAS,OAAiB;AAAA,UAC3B,WAAU;AAAA;UAEC,oBACT,MAgBY;AAAA,YAhBZA,IAAAA,YAgBY,sBAAA;AAAA,cAfV,OAAM;AAAA,cACN,WAAQ;AAAA,cACP,QAAQ;AAAA,cACT,MAAK;AAAA,cACL,MAAK;AAAA,cACJ,cAAY,OAAiB;AAAA,cAC7B,+CAAO,MAAa,gBAAA;AAAA,cACpB,8CAAM,MAAa,gBAAA;AAAA,cACnB,SAhIf,OAAA,CAAA,MAAA,OAAA,CAAA,IAAAQ,kBAAA,YAgI2B,KAAK,MAAA,QAAS,MAAM,GAAA,CAAA,MAAA,CAAA;AAAA;cAEtB,kBACT,MAEE;AAAA,gBAFFR,IAAAA,YAEE,0BAAA,EADA,MAAK,MAAK,CAAA;AAAA;cApI5B,GAAA;AAAA;;UAAA,GAAA;AAAA;YAAAO,IAAA,mBAAA,IAAA,IAAA;AAAA,UAAAA,IAAA,mBAAA,IAAA,IAAA;AAAA;;;;"}
@@ -180,14 +180,14 @@ const _sfc_main = {
180
180
  computed: {
181
181
  leftbarGeneralRowClasses() {
182
182
  return [
183
- "dt-recipe-leftbar-row",
183
+ "d-recipe-leftbar-row",
184
184
  {
185
- "dt-recipe-leftbar-row--no-action": !this.hasCallButton,
186
- "dt-recipe-leftbar-row--has-unread": this.hasUnreads,
187
- "dt-recipe-leftbar-row__unread-count": this.showUnreadCount || this.showUnreadMentionCount,
188
- "dt-recipe-leftbar-row--selected": this.selected,
189
- "dt-recipe-leftbar-row--muted": this.muted,
190
- "dt-recipe-leftbar-row--action-focused": this.actionFocused
185
+ "d-recipe-leftbar-row--no-action": !this.hasCallButton,
186
+ "d-recipe-leftbar-row--has-unread": this.hasUnreads,
187
+ "d-recipe-leftbar-row__unread-count": this.showUnreadCount || this.showUnreadMentionCount,
188
+ "d-recipe-leftbar-row--selected": this.selected,
189
+ "d-recipe-leftbar-row--muted": this.muted,
190
+ "d-recipe-leftbar-row--action-focused": this.actionFocused
191
191
  }
192
192
  ];
193
193
  },
@@ -262,19 +262,19 @@ const _sfc_main = {
262
262
  },
263
263
  adjustLabelWidth() {
264
264
  var _a, _b, _c, _d, _e, _f;
265
- const labelWidth = ((_b = (_a = this.$el) == null ? void 0 : _a.querySelector(".dt-recipe-leftbar-row__primary")) == null ? void 0 : _b.clientWidth) || 0;
266
- const omegaWidth = ((_d = (_c = this.$el) == null ? void 0 : _c.querySelector(".dt-recipe-leftbar-row__omega")) == null ? void 0 : _d.clientWidth) || 0;
267
- const alphaWidth = ((_f = (_e = this.$el) == null ? void 0 : _e.querySelector(".dt-recipe-leftbar-row__alpha")) == null ? void 0 : _f.clientWidth) || 0;
265
+ const labelWidth = ((_b = (_a = this.$el) == null ? void 0 : _a.querySelector(".d-recipe-leftbar-row__primary")) == null ? void 0 : _b.clientWidth) || 0;
266
+ const omegaWidth = ((_d = (_c = this.$el) == null ? void 0 : _c.querySelector(".d-recipe-leftbar-row__omega")) == null ? void 0 : _d.clientWidth) || 0;
267
+ const alphaWidth = ((_f = (_e = this.$el) == null ? void 0 : _e.querySelector(".d-recipe-leftbar-row__alpha")) == null ? void 0 : _f.clientWidth) || 0;
268
268
  const paddings = 16;
269
269
  this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + "px";
270
270
  }
271
271
  }
272
272
  };
273
273
  const _hoisted_1 = ["data-qa", "aria-label", "title", "href"];
274
- const _hoisted_2 = { class: "dt-recipe-leftbar-row__alpha" };
274
+ const _hoisted_2 = { class: "d-recipe-leftbar-row__alpha" };
275
275
  const _hoisted_3 = {
276
276
  key: 0,
277
- class: "dt-recipe-leftbar-row__is-typing"
277
+ class: "d-recipe-leftbar-row__is-typing"
278
278
  };
279
279
  const _hoisted_4 = /* @__PURE__ */ createElementVNode("span", null, null, -1);
280
280
  const _hoisted_5 = /* @__PURE__ */ createElementVNode("span", null, null, -1);
@@ -286,15 +286,15 @@ const _hoisted_7 = [
286
286
  ];
287
287
  const _hoisted_8 = {
288
288
  key: 0,
289
- class: "dt-recipe-leftbar-row__omega"
289
+ class: "d-recipe-leftbar-row__omega"
290
290
  };
291
291
  const _hoisted_9 = {
292
292
  key: 1,
293
- class: "dt-recipe-leftbar-row__active-voice"
293
+ class: "d-recipe-leftbar-row__active-voice"
294
294
  };
295
295
  const _hoisted_10 = {
296
296
  key: 3,
297
- class: "dt-recipe-leftbar-row__action",
297
+ class: "d-recipe-leftbar-row__action",
298
298
  "data-qa": "dt-recipe-leftbar-row-action"
299
299
  };
300
300
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
@@ -310,8 +310,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
310
310
  "data-qa": "dt-recipe-leftbar-row"
311
311
  }, [
312
312
  createElementVNode("a", mergeProps({
313
- class: "dt-recipe-leftbar-row__primary",
314
- "data-qa": "data-qa" in _ctx.$attrs ? _ctx.$attrs["data-qa"] : "dt-recipe-leftbar-row-link",
313
+ class: "d-recipe-leftbar-row__primary",
314
+ "data-qa": "data-qa" in _ctx.$attrs ? _ctx.$attrs["data-qa"] : "d-recipe-leftbar-row-link",
315
315
  "aria-label": $options.getAriaLabel,
316
316
  title: $props.description,
317
317
  href: "href" in _ctx.$attrs ? _ctx.$attrs.href : "javascript:void(0)"
@@ -327,12 +327,12 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
327
327
  ])
328
328
  ]),
329
329
  createElementVNode("div", {
330
- class: "dt-recipe-leftbar-row__label",
330
+ class: "d-recipe-leftbar-row__label",
331
331
  style: normalizeStyle(`flex-basis: ${$data.labelWidth}`)
332
332
  }, [
333
333
  renderSlot(_ctx.$slots, "label", {}, () => [
334
334
  createVNode(_component_dt_emoji_text_wrapper, {
335
- class: "dt-recipe-leftbar-row__description",
335
+ class: "d-recipe-leftbar-row__description",
336
336
  "data-qa": "dt-recipe-leftbar-row-description",
337
337
  size: "200"
338
338
  }, {
@@ -352,8 +352,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
352
352
  }, {
353
353
  anchor: withCtx(() => [
354
354
  createElementVNode("div", {
355
- ref: "dt-recipe-leftbar-row-dnd",
356
- class: "dt-recipe-leftbar-row__dnd",
355
+ ref: "d-recipe-leftbar-row-dnd",
356
+ class: "d-recipe-leftbar-row__dnd",
357
357
  "data-qa": "dt-recipe-leftbar-row-dnd"
358
358
  }, toDisplayString($props.dndText), 513)
359
359
  ]),
@@ -372,8 +372,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
372
372
  kind: "count",
373
373
  type: "bulletin",
374
374
  "data-qa": "dt-recipe-leftbar-row-unread-badge",
375
- class: normalizeClass(["dt-recipe-leftbar-row__unread-badge", {
376
- "dt-recipe-leftbar-row__unread-count-badge": $options.shouldApplyCustomStyleForCountBadge
375
+ class: normalizeClass(["d-recipe-leftbar-row__unread-badge", {
376
+ "d-recipe-leftbar-row__unread-count-badge": $options.shouldApplyCustomStyleForCountBadge
377
377
  }])
378
378
  }, {
379
379
  default: withCtx(() => [
@@ -387,9 +387,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
387
387
  type: "bulletin",
388
388
  "data-qa": "dt-recipe-leftbar-row-unread-mention-badge",
389
389
  class: normalizeClass([
390
- "dt-recipe-leftbar-row__unread-badge",
391
- { "dt-recipe-leftbar-row__unread-mention-count-badge": $options.shouldApplyCustomStyleForCountBadge },
392
- { "dt-recipe-leftbar-row__unread-mention-only-count-badge": $options.shouldApplyCustomStyleForMentionOnly }
390
+ "d-recipe-leftbar-row__unread-badge",
391
+ { "d-recipe-leftbar-row__unread-mention-count-badge": $options.shouldApplyCustomStyleForCountBadge },
392
+ { "d-recipe-leftbar-row__unread-mention-only-count-badge": $options.shouldApplyCustomStyleForMentionOnly }
393
393
  ])
394
394
  }, {
395
395
  default: withCtx(() => [
@@ -407,7 +407,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
407
407
  }, {
408
408
  anchor: withCtx(() => [
409
409
  createVNode(_component_dt_button, {
410
- class: "dt-recipe-leftbar-row__action-button",
410
+ class: "d-recipe-leftbar-row__action-button",
411
411
  "data-qa": "dt-recipe-leftbar-row-action-call-button",
412
412
  circle: true,
413
413
  size: "xs",
@@ -1 +1 @@
1
- {"version":3,"file":"general_row.vue.js","sources":["../../../../recipes/leftbar/general_row/general_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"leftbarGeneralRowClasses\"\n data-qa=\"dt-recipe-leftbar-row\"\n >\n <a\n class=\"dt-recipe-leftbar-row__primary\"\n :data-qa=\"'data-qa' in $attrs ? $attrs['data-qa'] : 'dt-recipe-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"'href' in $attrs ? $attrs.href : 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"generalRowListeners\"\n >\n <div\n class=\"dt-recipe-leftbar-row__alpha\"\n >\n <div\n v-if=\"isTyping\"\n class=\"dt-recipe-leftbar-row__is-typing\"\n >\n <span /><span /><span />\n </div>\n <slot\n v-else\n name=\"left\"\n >\n <dt-recipe-leftbar-general-row-icon\n :type=\"getIcon\"\n :color=\"color\"\n :icon-size=\"iconSize\"\n data-qa=\"dt-recipe-leftbar-row-icon\"\n />\n </slot>\n </div>\n <div\n class=\"dt-recipe-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\n <slot name=\"label\">\n <dt-emoji-text-wrapper\n class=\"dt-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ description }}\n </dt-emoji-text-wrapper>\n </slot>\n </div>\n </a>\n <div\n v-if=\"hasActions\"\n class=\"dt-recipe-leftbar-row__omega\"\n >\n <dt-tooltip\n v-if=\"dndText\"\n placement=\"top\"\n :message=\"dndTextTooltip\"\n >\n <template #anchor>\n <div\n ref=\"dt-recipe-leftbar-row-dnd\"\n class=\"dt-recipe-leftbar-row__dnd\"\n data-qa=\"dt-recipe-leftbar-row-dnd\"\n >\n {{ dndText }}\n </div>\n </template>\n </dt-tooltip>\n <div\n v-if=\"activeVoiceChat\"\n class=\"dt-recipe-leftbar-row__active-voice\"\n >\n <dt-icon-waveform\n size=\"300\"\n />\n </div>\n <dt-tooltip\n v-else-if=\"showUnreadCount || showUnreadMentionCount\"\n :message=\"unreadCountTooltip\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-badge\n v-if=\"showUnreadCount\"\n kind=\"count\"\n type=\"bulletin\"\n data-qa=\"dt-recipe-leftbar-row-unread-badge\"\n :class=\"['dt-recipe-leftbar-row__unread-badge', {\n 'dt-recipe-leftbar-row__unread-count-badge':\n shouldApplyCustomStyleForCountBadge,\n }]\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-badge\n v-if=\"showUnreadMentionCount\"\n kind=\"count\"\n type=\"bulletin\"\n data-qa=\"dt-recipe-leftbar-row-unread-mention-badge\"\n :class=\"['dt-recipe-leftbar-row__unread-badge',\n { 'dt-recipe-leftbar-row__unread-mention-count-badge': shouldApplyCustomStyleForCountBadge },\n { 'dt-recipe-leftbar-row__unread-mention-only-count-badge': shouldApplyCustomStyleForMentionOnly },\n ]\"\n >\n {{ unreadMentionCount }}\n </dt-badge>\n </template>\n </dt-tooltip>\n <div\n v-if=\"hasCallButton\"\n class=\"dt-recipe-leftbar-row__action\"\n data-qa=\"dt-recipe-leftbar-row-action\"\n >\n <dt-tooltip\n :message=\"callButtonTooltip\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n class=\"dt-recipe-leftbar-row__action-button\"\n data-qa=\"dt-recipe-leftbar-row-action-call-button\"\n :circle=\"true\"\n size=\"xs\"\n kind=\"inverted\"\n :aria-label=\"callButtonTooltip\"\n @focus=\"actionFocused = true\"\n @blur=\"actionFocused = false\"\n @click.stop=\"$emit('call', $event)\"\n >\n <template #icon>\n <dt-icon-phone\n size=\"200\"\n />\n </template>\n </dt-button>\n </template>\n </dt-tooltip>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport {\n LEFTBAR_GENERAL_ROW_TYPES,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR,\n LEFTBAR_GENERAL_ROW_ICON_SIZES,\n} from './general_row_constants';\nimport { DtBadge } from '@/components/badge';\nimport { DtIconPhone, DtIconWaveform } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport { DtTooltip } from '@/components/tooltip';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtRecipeLeftbarGeneralRowIcon from './leftbar_general_row_icon.vue';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\n\nexport default {\n name: 'DtRecipeGeneralRow',\n\n components: {\n DtEmojiTextWrapper,\n DtBadge,\n DtButton,\n DtTooltip,\n DtIconPhone,\n DtIconWaveform,\n DtRecipeLeftbarGeneralRowIcon,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines the icon to show.\n * If type is contact center, the color prop must be provided and will determine the color of the icon\n */\n type: {\n type: String,\n default: 'inbox',\n validator: (type) => {\n return Object.values(LEFTBAR_GENERAL_ROW_TYPES).includes(type);\n },\n },\n\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. Even if you are overriding this field using the label slot\n * you still must input this as it will be displayed as the \"title\" attribute for the row.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines the color of the contact center icon\n */\n color: {\n type: String,\n default: null,\n validator: (color) => {\n return Object.keys(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS).includes(color);\n },\n },\n\n /**\n * The channel setting, either 'mention' or 'always'.\n * @values 'mention', 'always', null.\n */\n channelSetting: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Number of unread mention messages\n */\n unreadMentionCount: {\n type: String,\n default: null,\n },\n\n /**\n * Text shown when the unread count is hovered.\n */\n unreadCountTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows styling to represent an active voice chat. This will display over unreadCount.\n */\n activeVoiceChat: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Acronym used to represent \"Do not Disturb\" state. If entered will display the entered text alongside\n * unreadCount.\n */\n dndText: {\n type: String,\n default: '',\n },\n\n /**\n * Text shown in tooltip when you hover the dndText\n */\n dndTextTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Whether the row should have a call button. Usually only applicable to individual contact rows.\n */\n hasCallButton: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Text shown when the call button is hovered.\n */\n callButtonTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Sets the size of the icon.\n */\n iconSize: {\n type: String,\n default: '300',\n validator: (size) => {\n return LEFTBAR_GENERAL_ROW_ICON_SIZES.includes(size);\n },\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n data () {\n return {\n actionFocused: false,\n labelWidth: '100%',\n };\n },\n\n computed: {\n leftbarGeneralRowClasses () {\n return [\n 'dt-recipe-leftbar-row',\n {\n 'dt-recipe-leftbar-row--no-action': !this.hasCallButton,\n 'dt-recipe-leftbar-row--has-unread': this.hasUnreads,\n 'dt-recipe-leftbar-row__unread-count': this.showUnreadCount || this.showUnreadMentionCount,\n 'dt-recipe-leftbar-row--selected': this.selected,\n 'dt-recipe-leftbar-row--muted': this.muted,\n 'dt-recipe-leftbar-row--action-focused': this.actionFocused,\n },\n ];\n },\n\n getIcon () {\n switch (this.type) {\n case LEFTBAR_GENERAL_ROW_TYPES.CHANNELS:\n if (this.hasUnreads) return 'channel unread';\n break;\n case LEFTBAR_GENERAL_ROW_TYPES.LOCKED_CHANNEL:\n if (this.hasUnreads) return 'locked channel unread';\n break;\n }\n return this.type;\n },\n\n generalRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip, this.dndTextTooltip]);\n },\n\n hasActions () {\n return this.dndText || this.activeVoiceChat || this.showUnreadCount || this.hasCallButton ||\n this.showUnreadMentionCount;\n },\n\n showUnreadCount () {\n return !!this.unreadCount && this.hasUnreads;\n },\n\n showUnreadMentionCount () {\n return !!this.unreadMentionCount && this.hasUnreads;\n },\n\n hasUnreadCount () {\n return this.unreadCount !== null;\n },\n\n hasUnreadMentionCount () {\n return this.unreadMentionCount !== null;\n },\n\n shouldApplyCustomStyleForCountBadge () {\n return this.hasUnreadCount && this.hasUnreadMentionCount;\n },\n\n /**\n * When a channel in 'always' setting, meaning the user should see both unread count and unread mention count,\n * if there are only mention messages, we should apply the theme design tokens var(--dt-theme-mention-color-[background||foreground]-strong).\n * @returns {boolean}\n */\n shouldApplyCustomStyleForMentionOnly () {\n return this.channelSetting === 'always' && !this.hasUnreadCount && this.hasUnreadMentionCount;\n },\n },\n\n watch: {\n $props: {\n immediate: true,\n deep: true,\n async handler () {\n this.validateProps();\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 beforeUnmount: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\n validateProps () {\n if (this.type === LEFTBAR_GENERAL_ROW_TYPES.CONTACT_CENTER &&\n !Object.keys(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS).includes(this.color)) {\n console.error(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR);\n }\n },\n\n adjustLabelWidth () {\n const labelWidth = this.$el?.querySelector('.dt-recipe-leftbar-row__primary')?.clientWidth || 0;\n const omegaWidth = this.$el?.querySelector('.dt-recipe-leftbar-row__omega')?.clientWidth || 0;\n const alphaWidth = this.$el?.querySelector('.dt-recipe-leftbar-row__alpha')?.clientWidth || 0;\n const paddings = 16;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n"],"names":["_createElementVNode","_createElementBlock","_normalizeClass","_mergeProps","_toHandlers","_renderSlot","_createVNode","_normalizeStyle","_withCtx","_createTextVNode","_toDisplayString","_openBlock","_createBlock","_createCommentVNode","_withModifiers"],"mappings":"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"}
1
+ {"version":3,"file":"general_row.vue.js","sources":["../../../../recipes/leftbar/general_row/general_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"leftbarGeneralRowClasses\"\n data-qa=\"dt-recipe-leftbar-row\"\n >\n <a\n class=\"d-recipe-leftbar-row__primary\"\n :data-qa=\"'data-qa' in $attrs ? $attrs['data-qa'] : 'd-recipe-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"'href' in $attrs ? $attrs.href : 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"generalRowListeners\"\n >\n <div\n class=\"d-recipe-leftbar-row__alpha\"\n >\n <div\n v-if=\"isTyping\"\n class=\"d-recipe-leftbar-row__is-typing\"\n >\n <span /><span /><span />\n </div>\n <slot\n v-else\n name=\"left\"\n >\n <dt-recipe-leftbar-general-row-icon\n :type=\"getIcon\"\n :color=\"color\"\n :icon-size=\"iconSize\"\n data-qa=\"dt-recipe-leftbar-row-icon\"\n />\n </slot>\n </div>\n <div\n class=\"d-recipe-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\n <slot name=\"label\">\n <dt-emoji-text-wrapper\n class=\"d-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ description }}\n </dt-emoji-text-wrapper>\n </slot>\n </div>\n </a>\n <div\n v-if=\"hasActions\"\n class=\"d-recipe-leftbar-row__omega\"\n >\n <dt-tooltip\n v-if=\"dndText\"\n placement=\"top\"\n :message=\"dndTextTooltip\"\n >\n <template #anchor>\n <div\n ref=\"d-recipe-leftbar-row-dnd\"\n class=\"d-recipe-leftbar-row__dnd\"\n data-qa=\"dt-recipe-leftbar-row-dnd\"\n >\n {{ dndText }}\n </div>\n </template>\n </dt-tooltip>\n <div\n v-if=\"activeVoiceChat\"\n class=\"d-recipe-leftbar-row__active-voice\"\n >\n <dt-icon-waveform\n size=\"300\"\n />\n </div>\n <dt-tooltip\n v-else-if=\"showUnreadCount || showUnreadMentionCount\"\n :message=\"unreadCountTooltip\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-badge\n v-if=\"showUnreadCount\"\n kind=\"count\"\n type=\"bulletin\"\n data-qa=\"dt-recipe-leftbar-row-unread-badge\"\n :class=\"['d-recipe-leftbar-row__unread-badge', {\n 'd-recipe-leftbar-row__unread-count-badge':\n shouldApplyCustomStyleForCountBadge,\n }]\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-badge\n v-if=\"showUnreadMentionCount\"\n kind=\"count\"\n type=\"bulletin\"\n data-qa=\"dt-recipe-leftbar-row-unread-mention-badge\"\n :class=\"['d-recipe-leftbar-row__unread-badge',\n { 'd-recipe-leftbar-row__unread-mention-count-badge': shouldApplyCustomStyleForCountBadge },\n { 'd-recipe-leftbar-row__unread-mention-only-count-badge': shouldApplyCustomStyleForMentionOnly },\n ]\"\n >\n {{ unreadMentionCount }}\n </dt-badge>\n </template>\n </dt-tooltip>\n <div\n v-if=\"hasCallButton\"\n class=\"d-recipe-leftbar-row__action\"\n data-qa=\"dt-recipe-leftbar-row-action\"\n >\n <dt-tooltip\n :message=\"callButtonTooltip\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n class=\"d-recipe-leftbar-row__action-button\"\n data-qa=\"dt-recipe-leftbar-row-action-call-button\"\n :circle=\"true\"\n size=\"xs\"\n kind=\"inverted\"\n :aria-label=\"callButtonTooltip\"\n @focus=\"actionFocused = true\"\n @blur=\"actionFocused = false\"\n @click.stop=\"$emit('call', $event)\"\n >\n <template #icon>\n <dt-icon-phone\n size=\"200\"\n />\n </template>\n </dt-button>\n </template>\n </dt-tooltip>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport {\n LEFTBAR_GENERAL_ROW_TYPES,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR,\n LEFTBAR_GENERAL_ROW_ICON_SIZES,\n} from './general_row_constants';\nimport { DtBadge } from '@/components/badge';\nimport { DtIconPhone, DtIconWaveform } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport { DtTooltip } from '@/components/tooltip';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtRecipeLeftbarGeneralRowIcon from './leftbar_general_row_icon.vue';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\n\nexport default {\n name: 'DtRecipeGeneralRow',\n\n components: {\n DtEmojiTextWrapper,\n DtBadge,\n DtButton,\n DtTooltip,\n DtIconPhone,\n DtIconWaveform,\n DtRecipeLeftbarGeneralRowIcon,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines the icon to show.\n * If type is contact center, the color prop must be provided and will determine the color of the icon\n */\n type: {\n type: String,\n default: 'inbox',\n validator: (type) => {\n return Object.values(LEFTBAR_GENERAL_ROW_TYPES).includes(type);\n },\n },\n\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. Even if you are overriding this field using the label slot\n * you still must input this as it will be displayed as the \"title\" attribute for the row.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines the color of the contact center icon\n */\n color: {\n type: String,\n default: null,\n validator: (color) => {\n return Object.keys(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS).includes(color);\n },\n },\n\n /**\n * The channel setting, either 'mention' or 'always'.\n * @values 'mention', 'always', null.\n */\n channelSetting: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Number of unread mention messages\n */\n unreadMentionCount: {\n type: String,\n default: null,\n },\n\n /**\n * Text shown when the unread count is hovered.\n */\n unreadCountTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows styling to represent an active voice chat. This will display over unreadCount.\n */\n activeVoiceChat: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Acronym used to represent \"Do not Disturb\" state. If entered will display the entered text alongside\n * unreadCount.\n */\n dndText: {\n type: String,\n default: '',\n },\n\n /**\n * Text shown in tooltip when you hover the dndText\n */\n dndTextTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Whether the row should have a call button. Usually only applicable to individual contact rows.\n */\n hasCallButton: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Text shown when the call button is hovered.\n */\n callButtonTooltip: {\n type: String,\n default: '',\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Sets the size of the icon.\n */\n iconSize: {\n type: String,\n default: '300',\n validator: (size) => {\n return LEFTBAR_GENERAL_ROW_ICON_SIZES.includes(size);\n },\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n data () {\n return {\n actionFocused: false,\n labelWidth: '100%',\n };\n },\n\n computed: {\n leftbarGeneralRowClasses () {\n return [\n 'd-recipe-leftbar-row',\n {\n 'd-recipe-leftbar-row--no-action': !this.hasCallButton,\n 'd-recipe-leftbar-row--has-unread': this.hasUnreads,\n 'd-recipe-leftbar-row__unread-count': this.showUnreadCount || this.showUnreadMentionCount,\n 'd-recipe-leftbar-row--selected': this.selected,\n 'd-recipe-leftbar-row--muted': this.muted,\n 'd-recipe-leftbar-row--action-focused': this.actionFocused,\n },\n ];\n },\n\n getIcon () {\n switch (this.type) {\n case LEFTBAR_GENERAL_ROW_TYPES.CHANNELS:\n if (this.hasUnreads) return 'channel unread';\n break;\n case LEFTBAR_GENERAL_ROW_TYPES.LOCKED_CHANNEL:\n if (this.hasUnreads) return 'locked channel unread';\n break;\n }\n return this.type;\n },\n\n generalRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip, this.dndTextTooltip]);\n },\n\n hasActions () {\n return this.dndText || this.activeVoiceChat || this.showUnreadCount || this.hasCallButton ||\n this.showUnreadMentionCount;\n },\n\n showUnreadCount () {\n return !!this.unreadCount && this.hasUnreads;\n },\n\n showUnreadMentionCount () {\n return !!this.unreadMentionCount && this.hasUnreads;\n },\n\n hasUnreadCount () {\n return this.unreadCount !== null;\n },\n\n hasUnreadMentionCount () {\n return this.unreadMentionCount !== null;\n },\n\n shouldApplyCustomStyleForCountBadge () {\n return this.hasUnreadCount && this.hasUnreadMentionCount;\n },\n\n /**\n * When a channel in 'always' setting, meaning the user should see both unread count and unread mention count,\n * if there are only mention messages, we should apply the theme design tokens var(--dt-theme-mention-color-[background||foreground]-strong).\n * @returns {boolean}\n */\n shouldApplyCustomStyleForMentionOnly () {\n return this.channelSetting === 'always' && !this.hasUnreadCount && this.hasUnreadMentionCount;\n },\n },\n\n watch: {\n $props: {\n immediate: true,\n deep: true,\n async handler () {\n this.validateProps();\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 beforeUnmount: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\n validateProps () {\n if (this.type === LEFTBAR_GENERAL_ROW_TYPES.CONTACT_CENTER &&\n !Object.keys(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS).includes(this.color)) {\n console.error(LEFTBAR_GENERAL_ROW_CONTACT_CENTER_VALIDATION_ERROR);\n }\n },\n\n adjustLabelWidth () {\n const labelWidth = this.$el?.querySelector('.d-recipe-leftbar-row__primary')?.clientWidth || 0;\n const omegaWidth = this.$el?.querySelector('.d-recipe-leftbar-row__omega')?.clientWidth || 0;\n const alphaWidth = this.$el?.querySelector('.d-recipe-leftbar-row__alpha')?.clientWidth || 0;\n const paddings = 16;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n"],"names":["_createElementVNode","_createElementBlock","_normalizeClass","_mergeProps","_toHandlers","_renderSlot","_createVNode","_normalizeStyle","_withCtx","_createTextVNode","_toDisplayString","_openBlock","_createBlock","_createCommentVNode","_withModifiers"],"mappings":"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"}
@@ -68,7 +68,7 @@ const _sfc_main = {
68
68
  },
69
69
  contactCenterIconClasses() {
70
70
  return [
71
- "dt-recipe-leftbar-row__icon-cc",
71
+ "d-recipe-leftbar-row__icon-cc",
72
72
  general_row_constants.LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS[this.color]
73
73
  ];
74
74
  },
@@ -1 +1 @@
1
- {"version":3,"file":"leftbar_general_row_icon.vue.cjs","sources":["../../../../recipes/leftbar/general_row/leftbar_general_row_icon.vue"],"sourcesContent":["<template>\n <component\n :is=\"getIconName\"\n v-if=\"isIconType\"\n :size=\"iconSize\"\n />\n <div\n v-else-if=\"isContactCenterType\"\n :class=\"contactCenterIconClasses\"\n />\n <div\n v-else-if=\"isDialbotType\"\n :class=\"dialbotClasses\"\n data-qa=\"general-row-dialbot\"\n >\n <dt-icon-dialbot\n size=\"500\"\n />\n </div>\n</template>\n\n<script>\nimport {\n DtIconDialbot,\n DtIconInbox,\n DtIconContacts,\n DtIconHash,\n DtIconThread,\n DtIconLayoutTemplate,\n DtIconLock,\n DtIconSparkle,\n DtIconUsers,\n DtIconExternalLink,\n DtIconLockFilled,\n DtIconHashBold,\n DtIconAtSign,\n DtIconLaptop2,\n DtIconCalendarClock,\n} from '@dialpad/dialtone-icons/vue3';\nimport {\n LEFTBAR_GENERAL_ROW_TYPES as TYPES,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS as COLORS,\n} from '@/recipes/leftbar/general_row/general_row_constants';\n\nconst typeToIcon = new Map([\n [TYPES.INBOX, DtIconInbox],\n [TYPES.CONTACTS, DtIconContacts],\n [TYPES.CHANNELS, DtIconHash],\n [TYPES.THREADS, DtIconThread],\n [TYPES.LAUNCHPAD, DtIconLayoutTemplate],\n [TYPES.LOCKED_CHANNEL, DtIconLock],\n [TYPES.QUICK_START, DtIconSparkle],\n [TYPES.COACHING_GROUP, DtIconUsers],\n [TYPES.COACHING_CENTER, DtIconExternalLink],\n ['locked channel unread', DtIconLockFilled],\n ['channel unread', DtIconHashBold],\n [TYPES.ASSIGNED, DtIconAtSign],\n [TYPES.DIGITAL, DtIconLaptop2],\n [TYPES.SCHEDULED, DtIconCalendarClock],\n]);\n\nexport default {\n name: 'DtRecipeLeftbarGeneralRowIcon',\n components: {\n DtIconDialbot,\n DtIconInbox,\n DtIconContacts,\n DtIconHash,\n DtIconThread,\n DtIconLayoutTemplate,\n DtIconLock,\n DtIconSparkle,\n DtIconUsers,\n DtIconExternalLink,\n DtIconLockFilled,\n DtIconHashBold,\n DtIconAtSign,\n DtIconLaptop2,\n DtIconCalendarClock,\n },\n\n props: {\n type: {\n type: String,\n default: null,\n },\n\n color: {\n type: String,\n default: null,\n },\n\n iconSize: {\n type: String,\n default: '300',\n },\n },\n\n computed: {\n isIconType () {\n return ![TYPES.DIALBOT, TYPES.CONTACT_CENTER].includes(this.type);\n },\n\n isContactCenterType () {\n return this.type === TYPES.CONTACT_CENTER;\n },\n\n isDialbotType () {\n return this.type === TYPES.DIALBOT;\n },\n\n getIconName () {\n return typeToIcon.get(this.type);\n },\n\n contactCenterIconClasses () {\n return [\n 'dt-recipe-leftbar-row__icon-cc',\n COLORS[this.color],\n ];\n },\n\n dialbotClasses () {\n return [\n 'd-d-flex',\n 'd-ai-center',\n 'd-jc-center',\n ];\n },\n },\n};\n</script>\n"],"names":["TYPES","DtIconInbox","DtIconContacts","DtIconHash","DtIconThread","DtIconLayoutTemplate","DtIconLock","DtIconSparkle","DtIconUsers","DtIconExternalLink","DtIconLockFilled","DtIconHashBold","DtIconAtSign","DtIconLaptop2","DtIconCalendarClock","DtIconDialbot","COLORS","_createBlock","_resolveDynamicComponent","_createElementBlock","_normalizeClass","_createVNode","_createCommentVNode"],"mappings":";;;;;;AA4CA,MAAM,aAAa,oBAAI,IAAI;AAAA,EACzB,CAACA,sBAAK,0BAAC,OAAOC,gBAAW;AAAA,EACzB,CAACD,sBAAK,0BAAC,UAAUE,mBAAc;AAAA,EAC/B,CAACF,sBAAK,0BAAC,UAAUG,eAAU;AAAA,EAC3B,CAACH,sBAAK,0BAAC,SAASI,iBAAY;AAAA,EAC5B,CAACJ,sBAAK,0BAAC,WAAWK,yBAAoB;AAAA,EACtC,CAACL,sBAAK,0BAAC,gBAAgBM,eAAU;AAAA,EACjC,CAACN,sBAAK,0BAAC,aAAaO,kBAAa;AAAA,EACjC,CAACP,sBAAK,0BAAC,gBAAgBQ,gBAAW;AAAA,EAClC,CAACR,sBAAK,0BAAC,iBAAiBS,uBAAkB;AAAA,EAC1C,CAAC,yBAAyBC,KAAAA,gBAAgB;AAAA,EAC1C,CAAC,kBAAkBC,KAAAA,cAAc;AAAA,EACjC,CAACX,sBAAK,0BAAC,UAAUY,iBAAY;AAAA,EAC7B,CAACZ,sBAAK,0BAAC,SAASa,kBAAa;AAAA,EAC7B,CAACb,sBAAK,0BAAC,WAAWc,wBAAmB;AACvC,CAAC;AAED,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,mBACVC,KAAa;AAAA,iBACbd,KAAW;AAAA,IACX,gBAAAC,KAAc;AAAA,gBACdC,KAAU;AAAA,kBACVC,KAAY;AAAA,IACZ,sBAAAC,KAAoB;AAAA,gBACpBC,KAAU;AAAA,mBACVC,KAAa;AAAA,iBACbC,KAAW;AAAA,IACX,oBAAAC,KAAkB;AAAA,IAClB,kBAAAC,KAAgB;AAAA,IAChB,gBAAAC,KAAc;AAAA,kBACdC,KAAY;AAAA,mBACZC,KAAa;AAAA,IACb,qBAAAC,KAAmB;AAAA,EACpB;AAAA,EAED,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IAED,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IAED,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,aAAc;AACZ,aAAO,CAAC,CAACd,gDAAM,SAASA,sBAAK,0BAAC,cAAc,EAAE,SAAS,KAAK,IAAI;AAAA,IACjE;AAAA,IAED,sBAAuB;AACrB,aAAO,KAAK,SAASA,sBAAK,0BAAC;AAAA,IAC5B;AAAA,IAED,gBAAiB;AACf,aAAO,KAAK,SAASA,sBAAK,0BAAC;AAAA,IAC5B;AAAA,IAED,cAAe;AACb,aAAO,WAAW,IAAI,KAAK,IAAI;AAAA,IAChC;AAAA,IAED,2BAA4B;AAC1B,aAAO;AAAA,QACL;AAAA,QACAgB,sBAAM,0CAAC,KAAK,KAAK;AAAA;IAEpB;AAAA,IAED,iBAAkB;AAChB,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA;IAEH;AAAA,EACF;AACH;;;SA/HU,SAAU,+BAFlBC,IAIE,YALJC,4BAES,SAAW,WAAA,GAAA;AAAA,IAFpB,KAAA;AAAA,IAIK,MAAM,OAAQ;AAAA,2BAGJ,SAAmB,wCADhCC,IAGE,mBAAA,OAAA;AAAA,IATJ,KAAA;AAAA,IAQK,OARLC,IAAAA,eAQY,SAAwB,wBAAA;AAAA,iBAGrB,SAAa,kCAD1BD,IAQM,mBAAA,OAAA;AAAA,IAlBR,KAAA;AAAA,IAYK,OAZLC,IAAAA,eAYY,SAAc,cAAA;AAAA,IACtB,WAAQ;AAAA;IAERC,IAAAA,YAEE,4BAAA,EADA,MAAK,MAAK,CAAA;AAAA,WAhBhBC,IAAA,mBAAA,IAAA,IAAA;;;;"}
1
+ {"version":3,"file":"leftbar_general_row_icon.vue.cjs","sources":["../../../../recipes/leftbar/general_row/leftbar_general_row_icon.vue"],"sourcesContent":["<template>\n <component\n :is=\"getIconName\"\n v-if=\"isIconType\"\n :size=\"iconSize\"\n />\n <div\n v-else-if=\"isContactCenterType\"\n :class=\"contactCenterIconClasses\"\n />\n <div\n v-else-if=\"isDialbotType\"\n :class=\"dialbotClasses\"\n data-qa=\"general-row-dialbot\"\n >\n <dt-icon-dialbot\n size=\"500\"\n />\n </div>\n</template>\n\n<script>\nimport {\n DtIconDialbot,\n DtIconInbox,\n DtIconContacts,\n DtIconHash,\n DtIconThread,\n DtIconLayoutTemplate,\n DtIconLock,\n DtIconSparkle,\n DtIconUsers,\n DtIconExternalLink,\n DtIconLockFilled,\n DtIconHashBold,\n DtIconAtSign,\n DtIconLaptop2,\n DtIconCalendarClock,\n} from '@dialpad/dialtone-icons/vue3';\nimport {\n LEFTBAR_GENERAL_ROW_TYPES as TYPES,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS as COLORS,\n} from '@/recipes/leftbar/general_row/general_row_constants';\n\nconst typeToIcon = new Map([\n [TYPES.INBOX, DtIconInbox],\n [TYPES.CONTACTS, DtIconContacts],\n [TYPES.CHANNELS, DtIconHash],\n [TYPES.THREADS, DtIconThread],\n [TYPES.LAUNCHPAD, DtIconLayoutTemplate],\n [TYPES.LOCKED_CHANNEL, DtIconLock],\n [TYPES.QUICK_START, DtIconSparkle],\n [TYPES.COACHING_GROUP, DtIconUsers],\n [TYPES.COACHING_CENTER, DtIconExternalLink],\n ['locked channel unread', DtIconLockFilled],\n ['channel unread', DtIconHashBold],\n [TYPES.ASSIGNED, DtIconAtSign],\n [TYPES.DIGITAL, DtIconLaptop2],\n [TYPES.SCHEDULED, DtIconCalendarClock],\n]);\n\nexport default {\n name: 'DtRecipeLeftbarGeneralRowIcon',\n components: {\n DtIconDialbot,\n DtIconInbox,\n DtIconContacts,\n DtIconHash,\n DtIconThread,\n DtIconLayoutTemplate,\n DtIconLock,\n DtIconSparkle,\n DtIconUsers,\n DtIconExternalLink,\n DtIconLockFilled,\n DtIconHashBold,\n DtIconAtSign,\n DtIconLaptop2,\n DtIconCalendarClock,\n },\n\n props: {\n type: {\n type: String,\n default: null,\n },\n\n color: {\n type: String,\n default: null,\n },\n\n iconSize: {\n type: String,\n default: '300',\n },\n },\n\n computed: {\n isIconType () {\n return ![TYPES.DIALBOT, TYPES.CONTACT_CENTER].includes(this.type);\n },\n\n isContactCenterType () {\n return this.type === TYPES.CONTACT_CENTER;\n },\n\n isDialbotType () {\n return this.type === TYPES.DIALBOT;\n },\n\n getIconName () {\n return typeToIcon.get(this.type);\n },\n\n contactCenterIconClasses () {\n return [\n 'd-recipe-leftbar-row__icon-cc',\n COLORS[this.color],\n ];\n },\n\n dialbotClasses () {\n return [\n 'd-d-flex',\n 'd-ai-center',\n 'd-jc-center',\n ];\n },\n },\n};\n</script>\n"],"names":["TYPES","DtIconInbox","DtIconContacts","DtIconHash","DtIconThread","DtIconLayoutTemplate","DtIconLock","DtIconSparkle","DtIconUsers","DtIconExternalLink","DtIconLockFilled","DtIconHashBold","DtIconAtSign","DtIconLaptop2","DtIconCalendarClock","DtIconDialbot","COLORS","_createBlock","_resolveDynamicComponent","_createElementBlock","_normalizeClass","_createVNode","_createCommentVNode"],"mappings":";;;;;;AA4CA,MAAM,aAAa,oBAAI,IAAI;AAAA,EACzB,CAACA,sBAAK,0BAAC,OAAOC,gBAAW;AAAA,EACzB,CAACD,sBAAK,0BAAC,UAAUE,mBAAc;AAAA,EAC/B,CAACF,sBAAK,0BAAC,UAAUG,eAAU;AAAA,EAC3B,CAACH,sBAAK,0BAAC,SAASI,iBAAY;AAAA,EAC5B,CAACJ,sBAAK,0BAAC,WAAWK,yBAAoB;AAAA,EACtC,CAACL,sBAAK,0BAAC,gBAAgBM,eAAU;AAAA,EACjC,CAACN,sBAAK,0BAAC,aAAaO,kBAAa;AAAA,EACjC,CAACP,sBAAK,0BAAC,gBAAgBQ,gBAAW;AAAA,EAClC,CAACR,sBAAK,0BAAC,iBAAiBS,uBAAkB;AAAA,EAC1C,CAAC,yBAAyBC,KAAAA,gBAAgB;AAAA,EAC1C,CAAC,kBAAkBC,KAAAA,cAAc;AAAA,EACjC,CAACX,sBAAK,0BAAC,UAAUY,iBAAY;AAAA,EAC7B,CAACZ,sBAAK,0BAAC,SAASa,kBAAa;AAAA,EAC7B,CAACb,sBAAK,0BAAC,WAAWc,wBAAmB;AACvC,CAAC;AAED,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,mBACVC,KAAa;AAAA,iBACbd,KAAW;AAAA,IACX,gBAAAC,KAAc;AAAA,gBACdC,KAAU;AAAA,kBACVC,KAAY;AAAA,IACZ,sBAAAC,KAAoB;AAAA,gBACpBC,KAAU;AAAA,mBACVC,KAAa;AAAA,iBACbC,KAAW;AAAA,IACX,oBAAAC,KAAkB;AAAA,IAClB,kBAAAC,KAAgB;AAAA,IAChB,gBAAAC,KAAc;AAAA,kBACdC,KAAY;AAAA,mBACZC,KAAa;AAAA,IACb,qBAAAC,KAAmB;AAAA,EACpB;AAAA,EAED,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IAED,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IAED,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,aAAc;AACZ,aAAO,CAAC,CAACd,gDAAM,SAASA,sBAAK,0BAAC,cAAc,EAAE,SAAS,KAAK,IAAI;AAAA,IACjE;AAAA,IAED,sBAAuB;AACrB,aAAO,KAAK,SAASA,sBAAK,0BAAC;AAAA,IAC5B;AAAA,IAED,gBAAiB;AACf,aAAO,KAAK,SAASA,sBAAK,0BAAC;AAAA,IAC5B;AAAA,IAED,cAAe;AACb,aAAO,WAAW,IAAI,KAAK,IAAI;AAAA,IAChC;AAAA,IAED,2BAA4B;AAC1B,aAAO;AAAA,QACL;AAAA,QACAgB,sBAAM,0CAAC,KAAK,KAAK;AAAA;IAEpB;AAAA,IAED,iBAAkB;AAChB,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA;IAEH;AAAA,EACF;AACH;;;SA/HU,SAAU,+BAFlBC,IAIE,YALJC,4BAES,SAAW,WAAA,GAAA;AAAA,IAFpB,KAAA;AAAA,IAIK,MAAM,OAAQ;AAAA,2BAGJ,SAAmB,wCADhCC,IAGE,mBAAA,OAAA;AAAA,IATJ,KAAA;AAAA,IAQK,OARLC,IAAAA,eAQY,SAAwB,wBAAA;AAAA,iBAGrB,SAAa,kCAD1BD,IAQM,mBAAA,OAAA;AAAA,IAlBR,KAAA;AAAA,IAYK,OAZLC,IAAAA,eAYY,SAAc,cAAA;AAAA,IACtB,WAAQ;AAAA;IAERC,IAAAA,YAEE,4BAAA,EADA,MAAK,MAAK,CAAA;AAAA,WAhBhBC,IAAA,mBAAA,IAAA,IAAA;;;;"}
@@ -66,7 +66,7 @@ const _sfc_main = {
66
66
  },
67
67
  contactCenterIconClasses() {
68
68
  return [
69
- "dt-recipe-leftbar-row__icon-cc",
69
+ "d-recipe-leftbar-row__icon-cc",
70
70
  LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS[this.color]
71
71
  ];
72
72
  },
@@ -1 +1 @@
1
- {"version":3,"file":"leftbar_general_row_icon.vue.js","sources":["../../../../recipes/leftbar/general_row/leftbar_general_row_icon.vue"],"sourcesContent":["<template>\n <component\n :is=\"getIconName\"\n v-if=\"isIconType\"\n :size=\"iconSize\"\n />\n <div\n v-else-if=\"isContactCenterType\"\n :class=\"contactCenterIconClasses\"\n />\n <div\n v-else-if=\"isDialbotType\"\n :class=\"dialbotClasses\"\n data-qa=\"general-row-dialbot\"\n >\n <dt-icon-dialbot\n size=\"500\"\n />\n </div>\n</template>\n\n<script>\nimport {\n DtIconDialbot,\n DtIconInbox,\n DtIconContacts,\n DtIconHash,\n DtIconThread,\n DtIconLayoutTemplate,\n DtIconLock,\n DtIconSparkle,\n DtIconUsers,\n DtIconExternalLink,\n DtIconLockFilled,\n DtIconHashBold,\n DtIconAtSign,\n DtIconLaptop2,\n DtIconCalendarClock,\n} from '@dialpad/dialtone-icons/vue3';\nimport {\n LEFTBAR_GENERAL_ROW_TYPES as TYPES,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS as COLORS,\n} from '@/recipes/leftbar/general_row/general_row_constants';\n\nconst typeToIcon = new Map([\n [TYPES.INBOX, DtIconInbox],\n [TYPES.CONTACTS, DtIconContacts],\n [TYPES.CHANNELS, DtIconHash],\n [TYPES.THREADS, DtIconThread],\n [TYPES.LAUNCHPAD, DtIconLayoutTemplate],\n [TYPES.LOCKED_CHANNEL, DtIconLock],\n [TYPES.QUICK_START, DtIconSparkle],\n [TYPES.COACHING_GROUP, DtIconUsers],\n [TYPES.COACHING_CENTER, DtIconExternalLink],\n ['locked channel unread', DtIconLockFilled],\n ['channel unread', DtIconHashBold],\n [TYPES.ASSIGNED, DtIconAtSign],\n [TYPES.DIGITAL, DtIconLaptop2],\n [TYPES.SCHEDULED, DtIconCalendarClock],\n]);\n\nexport default {\n name: 'DtRecipeLeftbarGeneralRowIcon',\n components: {\n DtIconDialbot,\n DtIconInbox,\n DtIconContacts,\n DtIconHash,\n DtIconThread,\n DtIconLayoutTemplate,\n DtIconLock,\n DtIconSparkle,\n DtIconUsers,\n DtIconExternalLink,\n DtIconLockFilled,\n DtIconHashBold,\n DtIconAtSign,\n DtIconLaptop2,\n DtIconCalendarClock,\n },\n\n props: {\n type: {\n type: String,\n default: null,\n },\n\n color: {\n type: String,\n default: null,\n },\n\n iconSize: {\n type: String,\n default: '300',\n },\n },\n\n computed: {\n isIconType () {\n return ![TYPES.DIALBOT, TYPES.CONTACT_CENTER].includes(this.type);\n },\n\n isContactCenterType () {\n return this.type === TYPES.CONTACT_CENTER;\n },\n\n isDialbotType () {\n return this.type === TYPES.DIALBOT;\n },\n\n getIconName () {\n return typeToIcon.get(this.type);\n },\n\n contactCenterIconClasses () {\n return [\n 'dt-recipe-leftbar-row__icon-cc',\n COLORS[this.color],\n ];\n },\n\n dialbotClasses () {\n return [\n 'd-d-flex',\n 'd-ai-center',\n 'd-jc-center',\n ];\n },\n },\n};\n</script>\n"],"names":["TYPES","COLORS","_createBlock","_resolveDynamicComponent","_createElementBlock","_normalizeClass","_createVNode","_createCommentVNode"],"mappings":";;;;AA4CA,MAAM,aAAa,oBAAI,IAAI;AAAA,EACzB,CAACA,0BAAM,OAAO,WAAW;AAAA,EACzB,CAACA,0BAAM,UAAU,cAAc;AAAA,EAC/B,CAACA,0BAAM,UAAU,UAAU;AAAA,EAC3B,CAACA,0BAAM,SAAS,YAAY;AAAA,EAC5B,CAACA,0BAAM,WAAW,oBAAoB;AAAA,EACtC,CAACA,0BAAM,gBAAgB,UAAU;AAAA,EACjC,CAACA,0BAAM,aAAa,aAAa;AAAA,EACjC,CAACA,0BAAM,gBAAgB,WAAW;AAAA,EAClC,CAACA,0BAAM,iBAAiB,kBAAkB;AAAA,EAC1C,CAAC,yBAAyB,gBAAgB;AAAA,EAC1C,CAAC,kBAAkB,cAAc;AAAA,EACjC,CAACA,0BAAM,UAAU,YAAY;AAAA,EAC7B,CAACA,0BAAM,SAAS,aAAa;AAAA,EAC7B,CAACA,0BAAM,WAAW,mBAAmB;AACvC,CAAC;AAED,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EAED,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IAED,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IAED,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,aAAc;AACZ,aAAO,CAAC,CAACA,0BAAM,SAASA,0BAAM,cAAc,EAAE,SAAS,KAAK,IAAI;AAAA,IACjE;AAAA,IAED,sBAAuB;AACrB,aAAO,KAAK,SAASA,0BAAM;AAAA,IAC5B;AAAA,IAED,gBAAiB;AACf,aAAO,KAAK,SAASA,0BAAM;AAAA,IAC5B;AAAA,IAED,cAAe;AACb,aAAO,WAAW,IAAI,KAAK,IAAI;AAAA,IAChC;AAAA,IAED,2BAA4B;AAC1B,aAAO;AAAA,QACL;AAAA,QACAC,0CAAO,KAAK,KAAK;AAAA;IAEpB;AAAA,IAED,iBAAkB;AAChB,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA;IAEH;AAAA,EACF;AACH;;;SA/HU,SAAU,2BAFlBC,YADFC,wBAES,SAAW,WAAA,GAAA;AAAA,IAFpB,KAAA;AAAA,IAIK,MAAM,OAAQ;AAAA,2BAGJ,SAAmB,oCADhCC,mBAGE,OAAA;AAAA,IATJ,KAAA;AAAA,IAQK,OARLC,eAQY,SAAwB,wBAAA;AAAA,iBAGrB,SAAa,8BAD1BD,mBAQM,OAAA;AAAA,IAlBR,KAAA;AAAA,IAYK,OAZLC,eAYY,SAAc,cAAA;AAAA,IACtB,WAAQ;AAAA;IAERC,YAEE,4BAAA,EADA,MAAK,MAAK,CAAA;AAAA,WAhBhBC,mBAAA,IAAA,IAAA;;;"}
1
+ {"version":3,"file":"leftbar_general_row_icon.vue.js","sources":["../../../../recipes/leftbar/general_row/leftbar_general_row_icon.vue"],"sourcesContent":["<template>\n <component\n :is=\"getIconName\"\n v-if=\"isIconType\"\n :size=\"iconSize\"\n />\n <div\n v-else-if=\"isContactCenterType\"\n :class=\"contactCenterIconClasses\"\n />\n <div\n v-else-if=\"isDialbotType\"\n :class=\"dialbotClasses\"\n data-qa=\"general-row-dialbot\"\n >\n <dt-icon-dialbot\n size=\"500\"\n />\n </div>\n</template>\n\n<script>\nimport {\n DtIconDialbot,\n DtIconInbox,\n DtIconContacts,\n DtIconHash,\n DtIconThread,\n DtIconLayoutTemplate,\n DtIconLock,\n DtIconSparkle,\n DtIconUsers,\n DtIconExternalLink,\n DtIconLockFilled,\n DtIconHashBold,\n DtIconAtSign,\n DtIconLaptop2,\n DtIconCalendarClock,\n} from '@dialpad/dialtone-icons/vue3';\nimport {\n LEFTBAR_GENERAL_ROW_TYPES as TYPES,\n LEFTBAR_GENERAL_ROW_CONTACT_CENTER_COLORS as COLORS,\n} from '@/recipes/leftbar/general_row/general_row_constants';\n\nconst typeToIcon = new Map([\n [TYPES.INBOX, DtIconInbox],\n [TYPES.CONTACTS, DtIconContacts],\n [TYPES.CHANNELS, DtIconHash],\n [TYPES.THREADS, DtIconThread],\n [TYPES.LAUNCHPAD, DtIconLayoutTemplate],\n [TYPES.LOCKED_CHANNEL, DtIconLock],\n [TYPES.QUICK_START, DtIconSparkle],\n [TYPES.COACHING_GROUP, DtIconUsers],\n [TYPES.COACHING_CENTER, DtIconExternalLink],\n ['locked channel unread', DtIconLockFilled],\n ['channel unread', DtIconHashBold],\n [TYPES.ASSIGNED, DtIconAtSign],\n [TYPES.DIGITAL, DtIconLaptop2],\n [TYPES.SCHEDULED, DtIconCalendarClock],\n]);\n\nexport default {\n name: 'DtRecipeLeftbarGeneralRowIcon',\n components: {\n DtIconDialbot,\n DtIconInbox,\n DtIconContacts,\n DtIconHash,\n DtIconThread,\n DtIconLayoutTemplate,\n DtIconLock,\n DtIconSparkle,\n DtIconUsers,\n DtIconExternalLink,\n DtIconLockFilled,\n DtIconHashBold,\n DtIconAtSign,\n DtIconLaptop2,\n DtIconCalendarClock,\n },\n\n props: {\n type: {\n type: String,\n default: null,\n },\n\n color: {\n type: String,\n default: null,\n },\n\n iconSize: {\n type: String,\n default: '300',\n },\n },\n\n computed: {\n isIconType () {\n return ![TYPES.DIALBOT, TYPES.CONTACT_CENTER].includes(this.type);\n },\n\n isContactCenterType () {\n return this.type === TYPES.CONTACT_CENTER;\n },\n\n isDialbotType () {\n return this.type === TYPES.DIALBOT;\n },\n\n getIconName () {\n return typeToIcon.get(this.type);\n },\n\n contactCenterIconClasses () {\n return [\n 'd-recipe-leftbar-row__icon-cc',\n COLORS[this.color],\n ];\n },\n\n dialbotClasses () {\n return [\n 'd-d-flex',\n 'd-ai-center',\n 'd-jc-center',\n ];\n },\n },\n};\n</script>\n"],"names":["TYPES","COLORS","_createBlock","_resolveDynamicComponent","_createElementBlock","_normalizeClass","_createVNode","_createCommentVNode"],"mappings":";;;;AA4CA,MAAM,aAAa,oBAAI,IAAI;AAAA,EACzB,CAACA,0BAAM,OAAO,WAAW;AAAA,EACzB,CAACA,0BAAM,UAAU,cAAc;AAAA,EAC/B,CAACA,0BAAM,UAAU,UAAU;AAAA,EAC3B,CAACA,0BAAM,SAAS,YAAY;AAAA,EAC5B,CAACA,0BAAM,WAAW,oBAAoB;AAAA,EACtC,CAACA,0BAAM,gBAAgB,UAAU;AAAA,EACjC,CAACA,0BAAM,aAAa,aAAa;AAAA,EACjC,CAACA,0BAAM,gBAAgB,WAAW;AAAA,EAClC,CAACA,0BAAM,iBAAiB,kBAAkB;AAAA,EAC1C,CAAC,yBAAyB,gBAAgB;AAAA,EAC1C,CAAC,kBAAkB,cAAc;AAAA,EACjC,CAACA,0BAAM,UAAU,YAAY;AAAA,EAC7B,CAACA,0BAAM,SAAS,aAAa;AAAA,EAC7B,CAACA,0BAAM,WAAW,mBAAmB;AACvC,CAAC;AAED,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EAED,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IAED,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IAED,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,aAAc;AACZ,aAAO,CAAC,CAACA,0BAAM,SAASA,0BAAM,cAAc,EAAE,SAAS,KAAK,IAAI;AAAA,IACjE;AAAA,IAED,sBAAuB;AACrB,aAAO,KAAK,SAASA,0BAAM;AAAA,IAC5B;AAAA,IAED,gBAAiB;AACf,aAAO,KAAK,SAASA,0BAAM;AAAA,IAC5B;AAAA,IAED,cAAe;AACb,aAAO,WAAW,IAAI,KAAK,IAAI;AAAA,IAChC;AAAA,IAED,2BAA4B;AAC1B,aAAO;AAAA,QACL;AAAA,QACAC,0CAAO,KAAK,KAAK;AAAA;IAEpB;AAAA,IAED,iBAAkB;AAChB,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA;IAEH;AAAA,EACF;AACH;;;SA/HU,SAAU,2BAFlBC,YADFC,wBAES,SAAW,WAAA,GAAA;AAAA,IAFpB,KAAA;AAAA,IAIK,MAAM,OAAQ;AAAA,2BAGJ,SAAmB,oCADhCC,mBAGE,OAAA;AAAA,IATJ,KAAA;AAAA,IAQK,OARLC,eAQY,SAAwB,wBAAA;AAAA,iBAGrB,SAAa,8BAD1BD,mBAQM,OAAA;AAAA,IAlBR,KAAA;AAAA,IAYK,OAZLC,eAYY,SAAc,cAAA;AAAA,IACtB,WAAQ;AAAA;IAERC,YAEE,4BAAA,EADA,MAAK,MAAK,CAAA;AAAA,WAhBhBC,mBAAA,IAAA,IAAA;;;"}