@dialpad/dialtone-vue 3.159.7 → 3.160.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.
- package/README.md +0 -18
- package/dist/component-documentation.json +1 -1
- package/dist/recipes/buttons/callbar_button/callbar_button.vue.cjs +0 -1
- package/dist/recipes/buttons/callbar_button/callbar_button.vue.cjs.map +1 -1
- package/dist/recipes/buttons/callbar_button/callbar_button.vue.js +0 -1
- package/dist/recipes/buttons/callbar_button/callbar_button.vue.js.map +1 -1
- package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs +7 -8
- package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs.map +1 -1
- package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js +7 -8
- package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js.map +1 -1
- package/dist/recipes/cards/ivr_node/ivr_node.vue.cjs +7 -8
- package/dist/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
- package/dist/recipes/cards/ivr_node/ivr_node.vue.js +7 -8
- package/dist/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
- package/dist/recipes/chips/grouped_chip/grouped_chip.vue.cjs +3 -4
- package/dist/recipes/chips/grouped_chip/grouped_chip.vue.cjs.map +1 -1
- package/dist/recipes/chips/grouped_chip/grouped_chip.vue.js +3 -4
- package/dist/recipes/chips/grouped_chip/grouped_chip.vue.js.map +1 -1
- package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +13 -11
- package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
- package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +13 -11
- package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs +4 -5
- package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js +4 -5
- package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs +5 -6
- package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js +5 -6
- package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs +3 -4
- package/dist/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js +3 -4
- package/dist/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js.map +1 -1
- package/dist/recipes/conversation_view/editor/editor.vue.cjs +22 -23
- package/dist/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/editor/editor.vue.js +22 -23
- package/dist/recipes/conversation_view/editor/editor.vue.js.map +1 -1
- package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.cjs +8 -6
- package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.js +8 -6
- package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.js.map +1 -1
- package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +7 -8
- package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +7 -8
- package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
- package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.cjs +3 -3
- package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.cjs.map +1 -1
- package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.js +3 -3
- package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.js.map +1 -1
- package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +28 -29
- package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +28 -29
- package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
- package/dist/recipes/conversation_view/feed_item_row/feed_item_row_constants.cjs +2 -2
- package/dist/recipes/conversation_view/feed_item_row/feed_item_row_constants.cjs.map +1 -1
- package/dist/recipes/conversation_view/feed_item_row/feed_item_row_constants.js +2 -2
- package/dist/recipes/conversation_view/feed_item_row/feed_item_row_constants.js.map +1 -1
- package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.cjs +4 -5
- package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.js +4 -5
- package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.js.map +1 -1
- package/dist/recipes/conversation_view/message_input/message_input.vue.cjs +26 -27
- package/dist/recipes/conversation_view/message_input/message_input.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/message_input/message_input.vue.js +26 -27
- package/dist/recipes/conversation_view/message_input/message_input.vue.js.map +1 -1
- package/dist/recipes/conversation_view/time_pill/time_pill.vue.cjs +2 -3
- package/dist/recipes/conversation_view/time_pill/time_pill.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/time_pill/time_pill.vue.js +2 -3
- package/dist/recipes/conversation_view/time_pill/time_pill.vue.js.map +1 -1
- package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.cjs +4 -5
- package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.cjs.map +1 -1
- package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.js +4 -5
- package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.js.map +1 -1
- package/dist/recipes/item_layout/contact_info/contact_info.vue.cjs +10 -11
- package/dist/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
- package/dist/recipes/item_layout/contact_info/contact_info.vue.js +10 -11
- package/dist/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
- package/dist/recipes/leftbar/callbox/callbox.vue.cjs +23 -24
- package/dist/recipes/leftbar/callbox/callbox.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/callbox/callbox.vue.js +23 -24
- package/dist/recipes/leftbar/callbox/callbox.vue.js.map +1 -1
- package/dist/recipes/leftbar/callbox/callbox_constants.cjs +3 -3
- package/dist/recipes/leftbar/callbox/callbox_constants.cjs.map +1 -1
- package/dist/recipes/leftbar/callbox/callbox_constants.js +3 -3
- package/dist/recipes/leftbar/callbox/callbox_constants.js.map +1 -1
- package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs +26 -27
- package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js +26 -27
- package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js.map +1 -1
- package/dist/recipes/leftbar/contact_row/contact_row.vue.cjs +7 -7
- package/dist/recipes/leftbar/contact_row/contact_row.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/contact_row/contact_row.vue.js +7 -7
- package/dist/recipes/leftbar/contact_row/contact_row.vue.js.map +1 -1
- package/dist/recipes/leftbar/general_row/general_row.vue.cjs +41 -43
- package/dist/recipes/leftbar/general_row/general_row.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/general_row/general_row.vue.js +42 -44
- package/dist/recipes/leftbar/general_row/general_row.vue.js.map +1 -1
- package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs +1 -1
- package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js +1 -1
- package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js.map +1 -1
- package/dist/recipes/leftbar/unread_pill/unread_pill.vue.cjs +3 -4
- package/dist/recipes/leftbar/unread_pill/unread_pill.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/unread_pill/unread_pill.vue.js +3 -4
- package/dist/recipes/leftbar/unread_pill/unread_pill.vue.js.map +1 -1
- package/dist/recipes/notices/top_banner_info/top_banner_info.vue.cjs +4 -5
- package/dist/recipes/notices/top_banner_info/top_banner_info.vue.cjs.map +1 -1
- package/dist/recipes/notices/top_banner_info/top_banner_info.vue.js +4 -5
- package/dist/recipes/notices/top_banner_info/top_banner_info.vue.js.map +1 -1
- package/dist/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts.map +1 -1
- package/dist/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +4 -4
- package/dist/types/recipes/conversation_view/message_input/message_input.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/message_input/message_input.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +2 -2
- package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts +6 -6
- package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
- package/package.json +5 -6
- package/dist/style.css +0 -1427
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact_centers_row.vue.cjs","sources":["../../../../recipes/leftbar/contact_centers_row/contact_centers_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'dt-leftbar-row__container',\n { 'dt-leftbar-row__container--off-duty': $slots.timer },\n ]\"\n >\n <div\n :class=\"leftbarContactCentersRowClasses\"\n data-qa=\"dt-recipe-contact-centers-row\"\n >\n <a\n class=\"dt-leftbar-row__primary\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"$attrs.href ?? 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"contactRowListeners\"\n @click=\"$emit('click', $event)\"\n >\n <div class=\"dt-leftbar-row__alpha\">\n <dt-icon-headphones\n size=\"300\"\n data-qa=\"dt-leftbar-row-icon\"\n />\n </div>\n <div\n class=\"dt-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\n <dt-emoji-text-wrapper\n class=\"dt-leftbar-row__description\"\n data-qa=\"dt-leftbar-row-description\"\n size=\"200\"\n >\n {{ description }}\n </dt-emoji-text-wrapper>\n </div>\n </a>\n <div\n v-if=\"!hideActions\"\n class=\"dt-leftbar-row__omega\"\n >\n <slot name=\"right\" />\n <div class=\"dt-leftbar-row__action-container\">\n <dt-badge\n v-if=\"showUnreadCount\"\n class=\"dt-leftbar-row__unread-badge\"\n data-qa=\"dt-leftbar-row-unread-badge\"\n kind=\"count\"\n type=\"bulletin\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-button\n class=\"dt-leftbar-row__action\"\n data-qa=\"dt-leftbar-row-action-button\"\n :aria-label=\"menuButtonAriaLabel\"\n importance=\"clear\"\n size=\"xs\"\n circle\n @click.stop=\"$emit('click-menu', $event)\"\n >\n <template #icon>\n <dt-icon-chevron-down size=\"100\" />\n </template>\n </dt-button>\n </div>\n </div>\n </div>\n <div class=\"dt-leftbar-row__bottom\">\n <slot name=\"timer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtBadge } from '@/components/badge';\nimport { DtButton } from '@/components/button';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtIconChevronDown from '@dialpad/dialtone-icons/vue3/chevron-down';\nimport DtIconHeadphones from '@dialpad/dialtone-icons/vue3/headphones';\n\nexport default {\n name: 'DtRecipeContactCentersRow',\n\n components: {\n DtButton,\n DtBadge,\n DtEmojiTextWrapper,\n DtIconHeadphones,\n DtIconChevronDown,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Will be read out by a screen reader upon focus of this row. If not defined \"description\" will be read.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Text displayed next to the icon. Required.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Making this true will hide the unread count badge, the chevron button, and the right slot\n */\n hideActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages, could be a string to support '99+'\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Aria label for the menu button.\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Native click event on the row itself\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Menu button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click-menu',\n ],\n\n data () {\n return {\n labelWidth: 'auto',\n };\n },\n\n computed: {\n leftbarContactCentersRowClasses () {\n return [\n 'dt-leftbar-row',\n 'dt-leftbar-row--contact-centers',\n {\n 'dt-leftbar-row--unread-count': this.showUnreadCount,\n 'dt-leftbar-row--selected': this.selected,\n },\n ];\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip]);\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n showUnreadCount () {\n return !!this.unreadCount;\n },\n },\n\n watch: {\n $props: {\n deep: true,\n async handler () {\n await this.$nextTick();\n this.adjustLabelWidth();\n },\n },\n },\n\n mounted () {\n this.resizeObserver = new ResizeObserver(this.adjustLabelWidth);\n this.resizeObserver.observe(this.$el);\n this.adjustLabelWidth();\n },\n\n beforeUnmount: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\n adjustLabelWidth () {\n const labelWidth = this.$el?.querySelector('.dt-leftbar-row__primary')?.clientWidth || 0;\n const omegaWidth = this.$el?.querySelector('.dt-leftbar-row__omega')?.clientWidth || 0;\n const alphaWidth = this.$el?.querySelector('.dt-leftbar-row__alpha')?.clientWidth || 0;\n const paddings = 12;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n\n<style lang=\"less\" scoped>\n@import \"../style/leftbar_row.less\";\n</style>\n"],"names":["DtButton","DtBadge","DtEmojiTextWrapper","safeConcatStrings","extractVueListeners","_createElementBlock","_normalizeClass","_createElementVNode","_mergeProps","_toHandlers","_createVNode","_normalizeStyle","_withCtx","_createTextVNode","_toDisplayString","_openBlock","_renderSlot","_createBlock","_createCommentVNode","_withModifiers"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contact_centers_row.vue.cjs","sources":["../../../../recipes/leftbar/contact_centers_row/contact_centers_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'dt-recipe-leftbar-row__container',\n { 'dt-recipe-leftbar-row__container--off-duty': $slots.timer },\n ]\"\n >\n <div\n :class=\"leftbarContactCentersRowClasses\"\n data-qa=\"dt-recipe-contact-centers-row\"\n >\n <a\n class=\"dt-recipe-leftbar-row__primary\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-recipe-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"$attrs.href ?? 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"contactRowListeners\"\n @click=\"$emit('click', $event)\"\n >\n <div class=\"dt-recipe-leftbar-row__alpha\">\n <dt-icon-headphones\n size=\"300\"\n data-qa=\"dt-recipe-leftbar-row-icon\"\n />\n </div>\n <div\n class=\"dt-recipe-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\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 </div>\n </a>\n <div\n v-if=\"!hideActions\"\n class=\"dt-recipe-leftbar-row__omega\"\n >\n <slot name=\"right\" />\n <div class=\"dt-recipe-leftbar-row__action-container\">\n <dt-badge\n v-if=\"showUnreadCount\"\n class=\"dt-recipe-leftbar-row__unread-badge\"\n data-qa=\"dt-recipe-leftbar-row-unread-badge\"\n kind=\"count\"\n type=\"bulletin\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-button\n class=\"dt-recipe-leftbar-row__action\"\n data-qa=\"dt-recipe-leftbar-row-action-button\"\n :aria-label=\"menuButtonAriaLabel\"\n importance=\"clear\"\n size=\"xs\"\n circle\n @click.stop=\"$emit('click-menu', $event)\"\n >\n <template #icon>\n <dt-icon-chevron-down size=\"100\" />\n </template>\n </dt-button>\n </div>\n </div>\n </div>\n <div class=\"dt-recipe-leftbar-row__bottom\">\n <slot name=\"timer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtBadge } from '@/components/badge';\nimport { DtButton } from '@/components/button';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtIconChevronDown from '@dialpad/dialtone-icons/vue3/chevron-down';\nimport DtIconHeadphones from '@dialpad/dialtone-icons/vue3/headphones';\n\nexport default {\n name: 'DtRecipeContactCentersRow',\n\n components: {\n DtButton,\n DtBadge,\n DtEmojiTextWrapper,\n DtIconHeadphones,\n DtIconChevronDown,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Will be read out by a screen reader upon focus of this row. If not defined \"description\" will be read.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Text displayed next to the icon. Required.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Making this true will hide the unread count badge, the chevron button, and the right slot\n */\n hideActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages, could be a string to support '99+'\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Aria label for the menu button.\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Native click event on the row itself\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Menu button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click-menu',\n ],\n\n data () {\n return {\n labelWidth: 'auto',\n };\n },\n\n computed: {\n leftbarContactCentersRowClasses () {\n return [\n 'dt-recipe-leftbar-row',\n 'dt-recipe-leftbar-row--contact-centers',\n {\n 'dt-recipe-leftbar-row__unread-count': this.showUnreadCount,\n 'dt-recipe-leftbar-row--selected': this.selected,\n },\n ];\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip]);\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n showUnreadCount () {\n return !!this.unreadCount;\n },\n },\n\n watch: {\n $props: {\n deep: true,\n async handler () {\n await this.$nextTick();\n this.adjustLabelWidth();\n },\n },\n },\n\n mounted () {\n this.resizeObserver = new ResizeObserver(this.adjustLabelWidth);\n this.resizeObserver.observe(this.$el);\n this.adjustLabelWidth();\n },\n\n beforeUnmount: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\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 = 12;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n"],"names":["DtButton","DtBadge","DtEmojiTextWrapper","safeConcatStrings","extractVueListeners","_createElementBlock","_normalizeClass","_createElementVNode","_mergeProps","_toHandlers","_createVNode","_normalizeStyle","_withCtx","_createTextVNode","_toDisplayString","_openBlock","_renderSlot","_createBlock","_createCommentVNode","_withModifiers"],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ import DtEmojiTextWrapper from "../../../components/emoji_text_wrapper/emoji_tex
|
|
|
3
3
|
import DtIconChevronDown from "@dialpad/dialtone-icons/vue3/chevron-down";
|
|
4
4
|
import DtIconHeadphones from "@dialpad/dialtone-icons/vue3/headphones";
|
|
5
5
|
import { resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, mergeProps, toHandlers, createVNode, normalizeStyle, withCtx, createTextVNode, toDisplayString, renderSlot, createBlock, createCommentVNode, withModifiers } from "vue";
|
|
6
|
-
/* empty css */
|
|
7
6
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
|
|
8
7
|
import DtButton from "../../../components/button/button.vue.js";
|
|
9
8
|
import DtBadge from "../../../components/badge/badge.vue.js";
|
|
@@ -85,11 +84,11 @@ const _sfc_main = {
|
|
|
85
84
|
computed: {
|
|
86
85
|
leftbarContactCentersRowClasses() {
|
|
87
86
|
return [
|
|
88
|
-
"dt-leftbar-row",
|
|
89
|
-
"dt-leftbar-row--contact-centers",
|
|
87
|
+
"dt-recipe-leftbar-row",
|
|
88
|
+
"dt-recipe-leftbar-row--contact-centers",
|
|
90
89
|
{
|
|
91
|
-
"dt-leftbar-
|
|
92
|
-
"dt-leftbar-row--selected": this.selected
|
|
90
|
+
"dt-recipe-leftbar-row__unread-count": this.showUnreadCount,
|
|
91
|
+
"dt-recipe-leftbar-row--selected": this.selected
|
|
93
92
|
}
|
|
94
93
|
];
|
|
95
94
|
},
|
|
@@ -123,22 +122,22 @@ const _sfc_main = {
|
|
|
123
122
|
methods: {
|
|
124
123
|
adjustLabelWidth() {
|
|
125
124
|
var _a, _b, _c, _d, _e, _f;
|
|
126
|
-
const labelWidth = ((_b = (_a = this.$el) == null ? void 0 : _a.querySelector(".dt-leftbar-row__primary")) == null ? void 0 : _b.clientWidth) || 0;
|
|
127
|
-
const omegaWidth = ((_d = (_c = this.$el) == null ? void 0 : _c.querySelector(".dt-leftbar-row__omega")) == null ? void 0 : _d.clientWidth) || 0;
|
|
128
|
-
const alphaWidth = ((_f = (_e = this.$el) == null ? void 0 : _e.querySelector(".dt-leftbar-row__alpha")) == null ? void 0 : _f.clientWidth) || 0;
|
|
125
|
+
const labelWidth = ((_b = (_a = this.$el) == null ? void 0 : _a.querySelector(".dt-recipe-leftbar-row__primary")) == null ? void 0 : _b.clientWidth) || 0;
|
|
126
|
+
const omegaWidth = ((_d = (_c = this.$el) == null ? void 0 : _c.querySelector(".dt-recipe-leftbar-row__omega")) == null ? void 0 : _d.clientWidth) || 0;
|
|
127
|
+
const alphaWidth = ((_f = (_e = this.$el) == null ? void 0 : _e.querySelector(".dt-recipe-leftbar-row__alpha")) == null ? void 0 : _f.clientWidth) || 0;
|
|
129
128
|
const paddings = 12;
|
|
130
129
|
this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + "px";
|
|
131
130
|
}
|
|
132
131
|
}
|
|
133
132
|
};
|
|
134
133
|
const _hoisted_1 = ["data-qa", "aria-label", "title", "href"];
|
|
135
|
-
const _hoisted_2 = { class: "dt-leftbar-row__alpha" };
|
|
134
|
+
const _hoisted_2 = { class: "dt-recipe-leftbar-row__alpha" };
|
|
136
135
|
const _hoisted_3 = {
|
|
137
136
|
key: 0,
|
|
138
|
-
class: "dt-leftbar-row__omega"
|
|
137
|
+
class: "dt-recipe-leftbar-row__omega"
|
|
139
138
|
};
|
|
140
|
-
const _hoisted_4 = { class: "dt-leftbar-row__action-container" };
|
|
141
|
-
const _hoisted_5 = { class: "dt-leftbar-row__bottom" };
|
|
139
|
+
const _hoisted_4 = { class: "dt-recipe-leftbar-row__action-container" };
|
|
140
|
+
const _hoisted_5 = { class: "dt-recipe-leftbar-row__bottom" };
|
|
142
141
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
143
142
|
const _component_dt_icon_headphones = resolveComponent("dt-icon-headphones");
|
|
144
143
|
const _component_dt_emoji_text_wrapper = resolveComponent("dt-emoji-text-wrapper");
|
|
@@ -147,8 +146,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
147
146
|
const _component_dt_button = resolveComponent("dt-button");
|
|
148
147
|
return openBlock(), createElementBlock("div", {
|
|
149
148
|
class: normalizeClass([
|
|
150
|
-
"dt-leftbar-row__container",
|
|
151
|
-
{ "dt-leftbar-row__container--off-duty": _ctx.$slots.timer }
|
|
149
|
+
"dt-recipe-leftbar-row__container",
|
|
150
|
+
{ "dt-recipe-leftbar-row__container--off-duty": _ctx.$slots.timer }
|
|
152
151
|
])
|
|
153
152
|
}, [
|
|
154
153
|
createElementVNode("div", {
|
|
@@ -156,8 +155,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
156
155
|
"data-qa": "dt-recipe-contact-centers-row"
|
|
157
156
|
}, [
|
|
158
157
|
createElementVNode("a", mergeProps({
|
|
159
|
-
class: "dt-leftbar-row__primary",
|
|
160
|
-
"data-qa": _ctx.$attrs["data-qa"] ?? "dt-leftbar-row-link",
|
|
158
|
+
class: "dt-recipe-leftbar-row__primary",
|
|
159
|
+
"data-qa": _ctx.$attrs["data-qa"] ?? "dt-recipe-leftbar-row-link",
|
|
161
160
|
"aria-label": $options.getAriaLabel,
|
|
162
161
|
title: $props.description,
|
|
163
162
|
href: _ctx.$attrs.href ?? "javascript:void(0)"
|
|
@@ -167,16 +166,16 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
167
166
|
createElementVNode("div", _hoisted_2, [
|
|
168
167
|
createVNode(_component_dt_icon_headphones, {
|
|
169
168
|
size: "300",
|
|
170
|
-
"data-qa": "dt-leftbar-row-icon"
|
|
169
|
+
"data-qa": "dt-recipe-leftbar-row-icon"
|
|
171
170
|
})
|
|
172
171
|
]),
|
|
173
172
|
createElementVNode("div", {
|
|
174
|
-
class: "dt-leftbar-row__label",
|
|
173
|
+
class: "dt-recipe-leftbar-row__label",
|
|
175
174
|
style: normalizeStyle(`flex-basis: ${$data.labelWidth}`)
|
|
176
175
|
}, [
|
|
177
176
|
createVNode(_component_dt_emoji_text_wrapper, {
|
|
178
|
-
class: "dt-leftbar-row__description",
|
|
179
|
-
"data-qa": "dt-leftbar-row-description",
|
|
177
|
+
class: "dt-recipe-leftbar-row__description",
|
|
178
|
+
"data-qa": "dt-recipe-leftbar-row-description",
|
|
180
179
|
size: "200"
|
|
181
180
|
}, {
|
|
182
181
|
default: withCtx(() => [
|
|
@@ -187,12 +186,12 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
187
186
|
], 4)
|
|
188
187
|
], 16, _hoisted_1),
|
|
189
188
|
!$props.hideActions ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
190
|
-
renderSlot(_ctx.$slots, "right"
|
|
189
|
+
renderSlot(_ctx.$slots, "right"),
|
|
191
190
|
createElementVNode("div", _hoisted_4, [
|
|
192
191
|
$options.showUnreadCount ? (openBlock(), createBlock(_component_dt_badge, {
|
|
193
192
|
key: 0,
|
|
194
|
-
class: "dt-leftbar-row__unread-badge",
|
|
195
|
-
"data-qa": "dt-leftbar-row-unread-badge",
|
|
193
|
+
class: "dt-recipe-leftbar-row__unread-badge",
|
|
194
|
+
"data-qa": "dt-recipe-leftbar-row-unread-badge",
|
|
196
195
|
kind: "count",
|
|
197
196
|
type: "bulletin"
|
|
198
197
|
}, {
|
|
@@ -202,8 +201,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
202
201
|
_: 1
|
|
203
202
|
})) : createCommentVNode("", true),
|
|
204
203
|
createVNode(_component_dt_button, {
|
|
205
|
-
class: "dt-leftbar-row__action",
|
|
206
|
-
"data-qa": "dt-leftbar-row-action-button",
|
|
204
|
+
class: "dt-recipe-leftbar-row__action",
|
|
205
|
+
"data-qa": "dt-recipe-leftbar-row-action-button",
|
|
207
206
|
"aria-label": $props.menuButtonAriaLabel,
|
|
208
207
|
importance: "clear",
|
|
209
208
|
size: "xs",
|
|
@@ -219,11 +218,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
219
218
|
])) : createCommentVNode("", true)
|
|
220
219
|
], 2),
|
|
221
220
|
createElementVNode("div", _hoisted_5, [
|
|
222
|
-
renderSlot(_ctx.$slots, "timer"
|
|
221
|
+
renderSlot(_ctx.$slots, "timer")
|
|
223
222
|
])
|
|
224
223
|
], 2);
|
|
225
224
|
}
|
|
226
|
-
const contact_centers_row = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]
|
|
225
|
+
const contact_centers_row = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
227
226
|
export {
|
|
228
227
|
contact_centers_row as default
|
|
229
228
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact_centers_row.vue.js","sources":["../../../../recipes/leftbar/contact_centers_row/contact_centers_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'dt-leftbar-row__container',\n { 'dt-leftbar-row__container--off-duty': $slots.timer },\n ]\"\n >\n <div\n :class=\"leftbarContactCentersRowClasses\"\n data-qa=\"dt-recipe-contact-centers-row\"\n >\n <a\n class=\"dt-leftbar-row__primary\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"$attrs.href ?? 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"contactRowListeners\"\n @click=\"$emit('click', $event)\"\n >\n <div class=\"dt-leftbar-row__alpha\">\n <dt-icon-headphones\n size=\"300\"\n data-qa=\"dt-leftbar-row-icon\"\n />\n </div>\n <div\n class=\"dt-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\n <dt-emoji-text-wrapper\n class=\"dt-leftbar-row__description\"\n data-qa=\"dt-leftbar-row-description\"\n size=\"200\"\n >\n {{ description }}\n </dt-emoji-text-wrapper>\n </div>\n </a>\n <div\n v-if=\"!hideActions\"\n class=\"dt-leftbar-row__omega\"\n >\n <slot name=\"right\" />\n <div class=\"dt-leftbar-row__action-container\">\n <dt-badge\n v-if=\"showUnreadCount\"\n class=\"dt-leftbar-row__unread-badge\"\n data-qa=\"dt-leftbar-row-unread-badge\"\n kind=\"count\"\n type=\"bulletin\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-button\n class=\"dt-leftbar-row__action\"\n data-qa=\"dt-leftbar-row-action-button\"\n :aria-label=\"menuButtonAriaLabel\"\n importance=\"clear\"\n size=\"xs\"\n circle\n @click.stop=\"$emit('click-menu', $event)\"\n >\n <template #icon>\n <dt-icon-chevron-down size=\"100\" />\n </template>\n </dt-button>\n </div>\n </div>\n </div>\n <div class=\"dt-leftbar-row__bottom\">\n <slot name=\"timer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtBadge } from '@/components/badge';\nimport { DtButton } from '@/components/button';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtIconChevronDown from '@dialpad/dialtone-icons/vue3/chevron-down';\nimport DtIconHeadphones from '@dialpad/dialtone-icons/vue3/headphones';\n\nexport default {\n name: 'DtRecipeContactCentersRow',\n\n components: {\n DtButton,\n DtBadge,\n DtEmojiTextWrapper,\n DtIconHeadphones,\n DtIconChevronDown,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Will be read out by a screen reader upon focus of this row. If not defined \"description\" will be read.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Text displayed next to the icon. Required.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Making this true will hide the unread count badge, the chevron button, and the right slot\n */\n hideActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages, could be a string to support '99+'\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Aria label for the menu button.\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Native click event on the row itself\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Menu button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click-menu',\n ],\n\n data () {\n return {\n labelWidth: 'auto',\n };\n },\n\n computed: {\n leftbarContactCentersRowClasses () {\n return [\n 'dt-leftbar-row',\n 'dt-leftbar-row--contact-centers',\n {\n 'dt-leftbar-
|
|
1
|
+
{"version":3,"file":"contact_centers_row.vue.js","sources":["../../../../recipes/leftbar/contact_centers_row/contact_centers_row.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'dt-recipe-leftbar-row__container',\n { 'dt-recipe-leftbar-row__container--off-duty': $slots.timer },\n ]\"\n >\n <div\n :class=\"leftbarContactCentersRowClasses\"\n data-qa=\"dt-recipe-contact-centers-row\"\n >\n <a\n class=\"dt-recipe-leftbar-row__primary\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-recipe-leftbar-row-link'\"\n :aria-label=\"getAriaLabel\"\n :title=\"description\"\n :href=\"$attrs.href ?? 'javascript:void(0)'\"\n v-bind=\"$attrs\"\n v-on=\"contactRowListeners\"\n @click=\"$emit('click', $event)\"\n >\n <div class=\"dt-recipe-leftbar-row__alpha\">\n <dt-icon-headphones\n size=\"300\"\n data-qa=\"dt-recipe-leftbar-row-icon\"\n />\n </div>\n <div\n class=\"dt-recipe-leftbar-row__label\"\n :style=\"`flex-basis: ${labelWidth}`\"\n >\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 </div>\n </a>\n <div\n v-if=\"!hideActions\"\n class=\"dt-recipe-leftbar-row__omega\"\n >\n <slot name=\"right\" />\n <div class=\"dt-recipe-leftbar-row__action-container\">\n <dt-badge\n v-if=\"showUnreadCount\"\n class=\"dt-recipe-leftbar-row__unread-badge\"\n data-qa=\"dt-recipe-leftbar-row-unread-badge\"\n kind=\"count\"\n type=\"bulletin\"\n >\n {{ unreadCount }}\n </dt-badge>\n <dt-button\n class=\"dt-recipe-leftbar-row__action\"\n data-qa=\"dt-recipe-leftbar-row-action-button\"\n :aria-label=\"menuButtonAriaLabel\"\n importance=\"clear\"\n size=\"xs\"\n circle\n @click.stop=\"$emit('click-menu', $event)\"\n >\n <template #icon>\n <dt-icon-chevron-down size=\"100\" />\n </template>\n </dt-button>\n </div>\n </div>\n </div>\n <div class=\"dt-recipe-leftbar-row__bottom\">\n <slot name=\"timer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtBadge } from '@/components/badge';\nimport { DtButton } from '@/components/button';\nimport DtEmojiTextWrapper from '@/components/emoji_text_wrapper/emoji_text_wrapper.vue';\nimport DtIconChevronDown from '@dialpad/dialtone-icons/vue3/chevron-down';\nimport DtIconHeadphones from '@dialpad/dialtone-icons/vue3/headphones';\n\nexport default {\n name: 'DtRecipeContactCentersRow',\n\n components: {\n DtButton,\n DtBadge,\n DtEmojiTextWrapper,\n DtIconHeadphones,\n DtIconChevronDown,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Will be read out by a screen reader upon focus of this row. If not defined \"description\" will be read.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Text displayed next to the icon. Required.\n */\n description: {\n type: String,\n required: true,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Making this true will hide the unread count badge, the chevron button, and the right slot\n */\n hideActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages, could be a string to support '99+'\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Aria label for the menu button.\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Native click event on the row itself\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Menu button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click-menu',\n ],\n\n data () {\n return {\n labelWidth: 'auto',\n };\n },\n\n computed: {\n leftbarContactCentersRowClasses () {\n return [\n 'dt-recipe-leftbar-row',\n 'dt-recipe-leftbar-row--contact-centers',\n {\n 'dt-recipe-leftbar-row__unread-count': this.showUnreadCount,\n 'dt-recipe-leftbar-row--selected': this.selected,\n },\n ];\n },\n\n getAriaLabel () {\n return this.ariaLabel\n ? this.ariaLabel\n : safeConcatStrings([this.description, this.unreadCountTooltip]);\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n showUnreadCount () {\n return !!this.unreadCount;\n },\n },\n\n watch: {\n $props: {\n deep: true,\n async handler () {\n await this.$nextTick();\n this.adjustLabelWidth();\n },\n },\n },\n\n mounted () {\n this.resizeObserver = new ResizeObserver(this.adjustLabelWidth);\n this.resizeObserver.observe(this.$el);\n this.adjustLabelWidth();\n },\n\n beforeUnmount: function () {\n this.resizeObserver.disconnect();\n },\n\n methods: {\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 = 12;\n this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + 'px';\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_mergeProps","_toHandlers","_createVNode","_normalizeStyle","_withCtx","_createTextVNode","_toDisplayString","_openBlock","_renderSlot","_createBlock","_createCommentVNode","_withModifiers"],"mappings":";;;;;;;;AAqFA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EAED,cAAc;AAAA,EAEd,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,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,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA,EACD;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,YAAY;AAAA;EAEf;AAAA,EAED,UAAU;AAAA,IACR,kCAAmC;AACjC,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,UACE,uCAAuC,KAAK;AAAA,UAC5C,mCAAmC,KAAK;AAAA,QACzC;AAAA;IAEJ;AAAA,IAED,eAAgB;AACd,aAAO,KAAK,YACR,KAAK,YACL,kBAAkB,CAAC,KAAK,aAAa,KAAK,kBAAkB,CAAC;AAAA,IAClE;AAAA,IAED,sBAAuB;AACrB,aAAO,oBAAoB,KAAK,MAAM;AAAA,IACvC;AAAA,IAED,kBAAmB;AACjB,aAAO,CAAC,CAAC,KAAK;AAAA,IACf;AAAA,EACF;AAAA,EAED,OAAO;AAAA,IACL,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,MAAM,UAAW;AACf,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,mBAAoB;;AAClB,YAAM,eAAa,gBAAK,QAAL,mBAAU,cAAc,uCAAxB,mBAA4D,gBAAe;AAC9F,YAAM,eAAa,gBAAK,QAAL,mBAAU,cAAc,qCAAxB,mBAA0D,gBAAe;AAC5F,YAAM,eAAa,gBAAK,QAAL,mBAAU,cAAc,qCAAxB,mBAA0D,gBAAe;AAC5F,YAAM,WAAW;AACjB,WAAK,aAAa,cAAc,aAAa,aAAa,YAAY;AAAA,IACvE;AAAA,EACF;AACH;AApOA,MAAA,aAAA,CAAA,WAAA,cAAA,SAAA,MAAA;AAqBa,MAAA,aAAA,EAAA,OAAM,+BAA8B;;EArBjD,KAAA;AAAA,EA0CQ,OAAM;;AAGD,MAAA,aAAA,EAAA,OAAM,0CAAyC;AA0BnD,MAAA,aAAA,EAAA,OAAM,gCAA+B;;;;;;;sBAtE5CA,mBAyEM,OAAA;AAAA,IAxEH,OAFLC,eAAA;AAAA;MAE8G,EAAA,8CAAA,KAAA,OAAO,MAAK;AAAA;;IAKtHC,mBA+DM,OAAA;AAAA,MA9DH,OARPD,eAQc,SAA+B,+BAAA;AAAA,MACvC,WAAQ;AAAA;MAERC,mBA4BI,KA5BJC,WA4BI;AAAA,QA3BF,OAAM;AAAA,QACL,WAAS,KAAM,OAAA,SAAA,KAAA;AAAA,QACf,cAAY,SAAY;AAAA,QACxB,OAAO,OAAW;AAAA,QAClB,MAAM,KAAM,OAAC,QAAI;AAAA,SACV,KAAM,QACdC,WAAM,SAAmB,qBAAA,IAAA,GAAA;AAAA,QACxB,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAAE,KAAK,MAAA,SAAU,MAAM;AAAA;QAE7BF,mBAKM,OALN,YAKM;AAAA,UAJJG,YAGE,+BAAA;AAAA,YAFA,MAAK;AAAA,YACL,WAAQ;AAAA;;QAGZH,mBAWM,OAAA;AAAA,UAVJ,OAAM;AAAA,UACL,OA7BXI,8BA6BiC,MAAU,UAAA,EAAA;AAAA;UAEjCD,YAMwB,kCAAA;AAAA,YALtB,OAAM;AAAA,YACN,WAAQ;AAAA,YACR,MAAK;AAAA;YAlCjB,SAAAE,QAoCY,MAAiB;AAAA,cApC7BC,gBAAAC,gBAoCe,OAAW,WAAA,GAAA,CAAA;AAAA;YApC1B,GAAA;AAAA;;MAAA,GAAA,IAAA,UAAA;AAAA,OAyCe,OAAW,eADpBC,aAAAV,mBA6BM,OA7BN,YA6BM;AAAA,QAzBJW,WAAqB,KAAA,QAAA,OAAA;AAAA,QACrBT,mBAuBM,OAvBN,YAuBM;AAAA,UArBI,SAAe,gCADvBU,YAQW,qBAAA;AAAA,YAtDrB,KAAA;AAAA,YAgDY,OAAM;AAAA,YACN,WAAQ;AAAA,YACR,MAAK;AAAA,YACL,MAAK;AAAA;YAnDjB,SAAAL,QAqDY,MAAiB;AAAA,cArD7BC,gBAAAC,gBAqDe,OAAW,WAAA,GAAA,CAAA;AAAA;YArD1B,GAAA;AAAA,gBAAAI,mBAAA,IAAA,IAAA;AAAA,UAuDUR,YAYY,sBAAA;AAAA,YAXV,OAAM;AAAA,YACN,WAAQ;AAAA,YACP,cAAY,OAAmB;AAAA,YAChC,YAAW;AAAA,YACX,MAAK;AAAA,YACL,QAAA;AAAA,YACC,SA9Db,OAAA,CAAA,MAAA,OAAA,CAAA,IAAAS,cAAA,YA8DyB,KAAK,MAAA,cAAe,MAAM,GAAA,CAAA,MAAA,CAAA;AAAA;YAE5B,cACT,MAAmC;AAAA,cAAnCT,YAAmC,iCAAA,EAAb,MAAK,MAAK,CAAA;AAAA;YAjE9C,GAAA;AAAA;;YAAAQ,mBAAA,IAAA,IAAA;AAAA;IAuEIX,mBAEM,OAFN,YAEM;AAAA,MADJS,WAAqB,KAAA,QAAA,OAAA;AAAA;;;;"}
|
|
@@ -166,7 +166,7 @@ const _sfc_main = {
|
|
|
166
166
|
}
|
|
167
167
|
}
|
|
168
168
|
};
|
|
169
|
-
const _hoisted_1 = { class: "dt-leftbar-row__status" };
|
|
169
|
+
const _hoisted_1 = { class: "dt-recipe-leftbar-row__status" };
|
|
170
170
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
171
171
|
const _component_dt_icon_user = vue.resolveComponent("dt-icon-user");
|
|
172
172
|
const _component_dt_avatar = vue.resolveComponent("dt-avatar");
|
|
@@ -206,8 +206,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
206
206
|
]),
|
|
207
207
|
label: vue.withCtx(() => [
|
|
208
208
|
vue.createVNode(_component_dt_emoji_text_wrapper, {
|
|
209
|
-
class: "dt-leftbar-row__description",
|
|
210
|
-
"data-qa": "dt-leftbar-row-description",
|
|
209
|
+
class: "dt-recipe-leftbar-row__description",
|
|
210
|
+
"data-qa": "dt-recipe-leftbar-row-description",
|
|
211
211
|
size: "200"
|
|
212
212
|
}, {
|
|
213
213
|
default: vue.withCtx(() => [
|
|
@@ -218,15 +218,15 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
218
218
|
vue.createElementVNode("div", _hoisted_1, [
|
|
219
219
|
$props.presenceText ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
220
220
|
key: 0,
|
|
221
|
-
"data-qa": "dt-leftbar-row-presence-text",
|
|
222
|
-
class: vue.normalizeClass(["dt-leftbar-row__meta-context", $options.presenceColorClass])
|
|
221
|
+
"data-qa": "dt-recipe-leftbar-row-presence-text",
|
|
222
|
+
class: vue.normalizeClass(["dt-recipe-leftbar-row__meta-context", $options.presenceColorClass])
|
|
223
223
|
}, vue.toDisplayString($props.presenceText), 3)) : vue.createCommentVNode("", true),
|
|
224
224
|
$props.userStatus ? (vue.openBlock(), vue.createBlock(_component_dt_emoji_text_wrapper, {
|
|
225
225
|
key: 1,
|
|
226
226
|
size: "100",
|
|
227
227
|
"element-type": "span",
|
|
228
|
-
"data-qa": "dt-leftbar-row-user-status",
|
|
229
|
-
class: "dt-leftbar-row__meta-custom"
|
|
228
|
+
"data-qa": "dt-recipe-leftbar-row-user-status",
|
|
229
|
+
class: "dt-recipe-leftbar-row__meta-custom"
|
|
230
230
|
}, {
|
|
231
231
|
default: vue.withCtx(() => [
|
|
232
232
|
vue.createTextVNode(vue.toDisplayString($props.userStatus), 1)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact_row.vue.cjs","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-leftbar-row__description\"\n data-qa=\"dt-leftbar-row-description\"\n size=\"200\"\n >\n {{ name }}\n </dt-emoji-text-wrapper>\n <div class=\"dt-leftbar-row__status\">\n <span\n v-if=\"presenceText\"\n data-qa=\"dt-leftbar-row-presence-text\"\n :class=\"['dt-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-leftbar-row-user-status\"\n class=\"dt-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":["DtAvatar","DtRecipeGeneralRow","DtEmojiTextWrapper","DtIconUser","extractVueListeners","safeConcatStrings","_openBlock","_createBlock","_mergeProps","_toHandlers","_createVNode","_createSlots","_withCtx","_createTextVNode","_toDisplayString","_createElementVNode","_createElementBlock","_normalizeClass","_createCommentVNode"],"mappings":";;;;;;;;;AAyEA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,UAAAA,OAAQ;AAAA,IACR,oBAAAC,YAAkB;AAAA,IAClB,oBAAAC,mBAAkB;AAAA,gBAClBC,KAAU;AAAA,EACX;AAAA,EAED,cAAc;AAAA,EAEd,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASD,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,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,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,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,aAAa;AAAA,MACX,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,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,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,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,oBAAoB;AAAA,MAClB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA,EACD;AAAA,EAED,UAAU;AAAA,IACR,qBAAsB;AACpB,cAAQ,KAAK,gBAAc;AAAA,QACzB,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT;AACE,iBAAO;AAAA,MACX;AAAA,IACD;AAAA,IAED,sBAAuB;AACrB,aAAOC,aAAmB,oBAAC,KAAK,MAAM;AAAA,IACvC;AAAA,IAED,qBAAsB;AACpB,aAAOC,aAAiB,kBAAC,CAAC,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,CAAC;AAAA,IACzE;AAAA,EACF;AACH;AAjNW,MAAA,aAAA,EAAA,OAAM,
|
|
1
|
+
{"version":3,"file":"contact_row.vue.cjs","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":["DtAvatar","DtRecipeGeneralRow","DtEmojiTextWrapper","DtIconUser","extractVueListeners","safeConcatStrings","_openBlock","_createBlock","_mergeProps","_toHandlers","_createVNode","_createSlots","_withCtx","_createTextVNode","_toDisplayString","_createElementVNode","_createElementBlock","_normalizeClass","_createCommentVNode"],"mappings":"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"}
|
|
@@ -164,7 +164,7 @@ const _sfc_main = {
|
|
|
164
164
|
}
|
|
165
165
|
}
|
|
166
166
|
};
|
|
167
|
-
const _hoisted_1 = { class: "dt-leftbar-row__status" };
|
|
167
|
+
const _hoisted_1 = { class: "dt-recipe-leftbar-row__status" };
|
|
168
168
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
169
169
|
const _component_dt_icon_user = resolveComponent("dt-icon-user");
|
|
170
170
|
const _component_dt_avatar = resolveComponent("dt-avatar");
|
|
@@ -204,8 +204,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
204
204
|
]),
|
|
205
205
|
label: withCtx(() => [
|
|
206
206
|
createVNode(_component_dt_emoji_text_wrapper, {
|
|
207
|
-
class: "dt-leftbar-row__description",
|
|
208
|
-
"data-qa": "dt-leftbar-row-description",
|
|
207
|
+
class: "dt-recipe-leftbar-row__description",
|
|
208
|
+
"data-qa": "dt-recipe-leftbar-row-description",
|
|
209
209
|
size: "200"
|
|
210
210
|
}, {
|
|
211
211
|
default: withCtx(() => [
|
|
@@ -216,15 +216,15 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
216
216
|
createElementVNode("div", _hoisted_1, [
|
|
217
217
|
$props.presenceText ? (openBlock(), createElementBlock("span", {
|
|
218
218
|
key: 0,
|
|
219
|
-
"data-qa": "dt-leftbar-row-presence-text",
|
|
220
|
-
class: normalizeClass(["dt-leftbar-row__meta-context", $options.presenceColorClass])
|
|
219
|
+
"data-qa": "dt-recipe-leftbar-row-presence-text",
|
|
220
|
+
class: normalizeClass(["dt-recipe-leftbar-row__meta-context", $options.presenceColorClass])
|
|
221
221
|
}, toDisplayString($props.presenceText), 3)) : createCommentVNode("", true),
|
|
222
222
|
$props.userStatus ? (openBlock(), createBlock(_component_dt_emoji_text_wrapper, {
|
|
223
223
|
key: 1,
|
|
224
224
|
size: "100",
|
|
225
225
|
"element-type": "span",
|
|
226
|
-
"data-qa": "dt-leftbar-row-user-status",
|
|
227
|
-
class: "dt-leftbar-row__meta-custom"
|
|
226
|
+
"data-qa": "dt-recipe-leftbar-row-user-status",
|
|
227
|
+
class: "dt-recipe-leftbar-row__meta-custom"
|
|
228
228
|
}, {
|
|
229
229
|
default: withCtx(() => [
|
|
230
230
|
createTextVNode(toDisplayString($props.userStatus), 1)
|
|
@@ -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-leftbar-row__description\"\n data-qa=\"dt-leftbar-row-description\"\n size=\"200\"\n >\n {{ name }}\n </dt-emoji-text-wrapper>\n <div class=\"dt-leftbar-row__status\">\n <span\n v-if=\"presenceText\"\n data-qa=\"dt-leftbar-row-presence-text\"\n :class=\"['dt-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-leftbar-row-user-status\"\n class=\"dt-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":";;;;;;;AAyEA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EAED,cAAc;AAAA,EAEd,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASD,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,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,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,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,aAAa;AAAA,MACX,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,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,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,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,oBAAoB;AAAA,MAClB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA,EACD;AAAA,EAED,UAAU;AAAA,IACR,qBAAsB;AACpB,cAAQ,KAAK,gBAAc;AAAA,QACzB,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT;AACE,iBAAO;AAAA,MACX;AAAA,IACD;AAAA,IAED,sBAAuB;AACrB,aAAO,oBAAoB,KAAK,MAAM;AAAA,IACvC;AAAA,IAED,qBAAsB;AACpB,aAAO,kBAAkB,CAAC,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,CAAC;AAAA,IACzE;AAAA,EACF;AACH;AAjNW,MAAA,aAAA,EAAA,OAAM,
|
|
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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"}
|
|
@@ -6,7 +6,6 @@ const emoji_text_wrapper = require("../../../components/emoji_text_wrapper/emoji
|
|
|
6
6
|
const leftbar_general_row_icon = require("./leftbar_general_row_icon.vue.cjs");
|
|
7
7
|
const common_utils = require("../../../common/utils.cjs");
|
|
8
8
|
const vue = require("vue");
|
|
9
|
-
;/* empty css */
|
|
10
9
|
const _pluginVue_exportHelper = require("../../../_virtual/_plugin-vue_export-helper.cjs");
|
|
11
10
|
const badge = require("../../../components/badge/badge.vue.cjs");
|
|
12
11
|
const button = require("../../../components/button/button.vue.cjs");
|
|
@@ -183,14 +182,14 @@ const _sfc_main = {
|
|
|
183
182
|
computed: {
|
|
184
183
|
leftbarGeneralRowClasses() {
|
|
185
184
|
return [
|
|
186
|
-
"dt-leftbar-row",
|
|
185
|
+
"dt-recipe-leftbar-row",
|
|
187
186
|
{
|
|
188
|
-
"dt-leftbar-row--no-action": !this.hasCallButton,
|
|
189
|
-
"dt-leftbar-row--has-unread": this.hasUnreads,
|
|
190
|
-
"dt-leftbar-
|
|
191
|
-
"dt-leftbar-row--selected": this.selected,
|
|
192
|
-
"dt-leftbar-row--muted": this.muted,
|
|
193
|
-
"dt-leftbar-row--action-focused": this.actionFocused
|
|
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
|
|
194
193
|
}
|
|
195
194
|
];
|
|
196
195
|
},
|
|
@@ -265,24 +264,23 @@ const _sfc_main = {
|
|
|
265
264
|
},
|
|
266
265
|
adjustLabelWidth() {
|
|
267
266
|
var _a, _b, _c, _d, _e, _f;
|
|
268
|
-
const labelWidth = ((_b = (_a = this.$el) == null ? void 0 : _a.querySelector(".dt-leftbar-row__primary")) == null ? void 0 : _b.clientWidth) || 0;
|
|
269
|
-
const omegaWidth = ((_d = (_c = this.$el) == null ? void 0 : _c.querySelector(".dt-leftbar-row__omega")) == null ? void 0 : _d.clientWidth) || 0;
|
|
270
|
-
const alphaWidth = ((_f = (_e = this.$el) == null ? void 0 : _e.querySelector(".dt-leftbar-row__alpha")) == null ? void 0 : _f.clientWidth) || 0;
|
|
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;
|
|
271
270
|
const paddings = 16;
|
|
272
271
|
this.labelWidth = labelWidth - (omegaWidth + alphaWidth + paddings) + "px";
|
|
273
272
|
}
|
|
274
273
|
}
|
|
275
274
|
};
|
|
276
|
-
const _withScopeId = (n) => (vue.pushScopeId("data-v-9b78a9ef"), n = n(), vue.popScopeId(), n);
|
|
277
275
|
const _hoisted_1 = ["data-qa", "aria-label", "title", "href"];
|
|
278
|
-
const _hoisted_2 = { class: "dt-leftbar-row__alpha" };
|
|
276
|
+
const _hoisted_2 = { class: "dt-recipe-leftbar-row__alpha" };
|
|
279
277
|
const _hoisted_3 = {
|
|
280
278
|
key: 0,
|
|
281
|
-
class: "dt-leftbar-row__is-typing"
|
|
279
|
+
class: "dt-recipe-leftbar-row__is-typing"
|
|
282
280
|
};
|
|
283
|
-
const _hoisted_4 = /* @__PURE__ */
|
|
284
|
-
const _hoisted_5 = /* @__PURE__ */
|
|
285
|
-
const _hoisted_6 = /* @__PURE__ */
|
|
281
|
+
const _hoisted_4 = /* @__PURE__ */ vue.createElementVNode("span", null, null, -1);
|
|
282
|
+
const _hoisted_5 = /* @__PURE__ */ vue.createElementVNode("span", null, null, -1);
|
|
283
|
+
const _hoisted_6 = /* @__PURE__ */ vue.createElementVNode("span", null, null, -1);
|
|
286
284
|
const _hoisted_7 = [
|
|
287
285
|
_hoisted_4,
|
|
288
286
|
_hoisted_5,
|
|
@@ -290,16 +288,16 @@ const _hoisted_7 = [
|
|
|
290
288
|
];
|
|
291
289
|
const _hoisted_8 = {
|
|
292
290
|
key: 0,
|
|
293
|
-
class: "dt-leftbar-row__omega"
|
|
291
|
+
class: "dt-recipe-leftbar-row__omega"
|
|
294
292
|
};
|
|
295
293
|
const _hoisted_9 = {
|
|
296
294
|
key: 1,
|
|
297
|
-
class: "dt-leftbar-row__active-voice"
|
|
295
|
+
class: "dt-recipe-leftbar-row__active-voice"
|
|
298
296
|
};
|
|
299
297
|
const _hoisted_10 = {
|
|
300
298
|
key: 3,
|
|
301
|
-
class: "dt-leftbar-row__action",
|
|
302
|
-
"data-qa": "dt-leftbar-row-action"
|
|
299
|
+
class: "dt-recipe-leftbar-row__action",
|
|
300
|
+
"data-qa": "dt-recipe-leftbar-row-action"
|
|
303
301
|
};
|
|
304
302
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
305
303
|
const _component_dt_recipe_leftbar_general_row_icon = vue.resolveComponent("dt-recipe-leftbar-general-row-icon");
|
|
@@ -311,11 +309,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
311
309
|
const _component_dt_button = vue.resolveComponent("dt-button");
|
|
312
310
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
313
311
|
class: vue.normalizeClass($options.leftbarGeneralRowClasses),
|
|
314
|
-
"data-qa": "dt-leftbar-row"
|
|
312
|
+
"data-qa": "dt-recipe-leftbar-row"
|
|
315
313
|
}, [
|
|
316
314
|
vue.createElementVNode("a", vue.mergeProps({
|
|
317
|
-
class: "dt-leftbar-row__primary",
|
|
318
|
-
"data-qa": "data-qa" in _ctx.$attrs ? _ctx.$attrs["data-qa"] : "dt-leftbar-row-link",
|
|
315
|
+
class: "dt-recipe-leftbar-row__primary",
|
|
316
|
+
"data-qa": "data-qa" in _ctx.$attrs ? _ctx.$attrs["data-qa"] : "dt-recipe-leftbar-row-link",
|
|
319
317
|
"aria-label": $options.getAriaLabel,
|
|
320
318
|
title: $props.description,
|
|
321
319
|
href: "href" in _ctx.$attrs ? _ctx.$attrs.href : "javascript:void(0)"
|
|
@@ -326,18 +324,18 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
326
324
|
type: $options.getIcon,
|
|
327
325
|
color: $props.color,
|
|
328
326
|
"icon-size": $props.iconSize,
|
|
329
|
-
"data-qa": "dt-leftbar-row-icon"
|
|
327
|
+
"data-qa": "dt-recipe-leftbar-row-icon"
|
|
330
328
|
}, null, 8, ["type", "color", "icon-size"])
|
|
331
|
-
]
|
|
329
|
+
])
|
|
332
330
|
]),
|
|
333
331
|
vue.createElementVNode("div", {
|
|
334
|
-
class: "dt-leftbar-row__label",
|
|
332
|
+
class: "dt-recipe-leftbar-row__label",
|
|
335
333
|
style: vue.normalizeStyle(`flex-basis: ${$data.labelWidth}`)
|
|
336
334
|
}, [
|
|
337
335
|
vue.renderSlot(_ctx.$slots, "label", {}, () => [
|
|
338
336
|
vue.createVNode(_component_dt_emoji_text_wrapper, {
|
|
339
|
-
class: "dt-leftbar-row__description",
|
|
340
|
-
"data-qa": "dt-leftbar-row-description",
|
|
337
|
+
class: "dt-recipe-leftbar-row__description",
|
|
338
|
+
"data-qa": "dt-recipe-leftbar-row-description",
|
|
341
339
|
size: "200"
|
|
342
340
|
}, {
|
|
343
341
|
default: vue.withCtx(() => [
|
|
@@ -345,7 +343,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
345
343
|
]),
|
|
346
344
|
_: 1
|
|
347
345
|
})
|
|
348
|
-
]
|
|
346
|
+
])
|
|
349
347
|
], 4)
|
|
350
348
|
], 16, _hoisted_1),
|
|
351
349
|
$options.hasActions ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8, [
|
|
@@ -356,9 +354,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
356
354
|
}, {
|
|
357
355
|
anchor: vue.withCtx(() => [
|
|
358
356
|
vue.createElementVNode("div", {
|
|
359
|
-
ref: "dt-leftbar-row-dnd",
|
|
360
|
-
class: "dt-leftbar-row__dnd",
|
|
361
|
-
"data-qa": "dt-leftbar-row-dnd"
|
|
357
|
+
ref: "dt-recipe-leftbar-row-dnd",
|
|
358
|
+
class: "dt-recipe-leftbar-row__dnd",
|
|
359
|
+
"data-qa": "dt-recipe-leftbar-row-dnd"
|
|
362
360
|
}, vue.toDisplayString($props.dndText), 513)
|
|
363
361
|
]),
|
|
364
362
|
_: 1
|
|
@@ -375,9 +373,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
375
373
|
key: 0,
|
|
376
374
|
kind: "count",
|
|
377
375
|
type: "bulletin",
|
|
378
|
-
"data-qa": "dt-leftbar-row-unread-badge",
|
|
379
|
-
class: vue.normalizeClass(["dt-leftbar-row__unread-badge", {
|
|
380
|
-
"dt-leftbar-row__unread-count-badge": $options.shouldApplyCustomStyleForCountBadge
|
|
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
|
|
381
379
|
}])
|
|
382
380
|
}, {
|
|
383
381
|
default: vue.withCtx(() => [
|
|
@@ -389,11 +387,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
389
387
|
key: 1,
|
|
390
388
|
kind: "count",
|
|
391
389
|
type: "bulletin",
|
|
392
|
-
"data-qa": "dt-leftbar-row-unread-mention-badge",
|
|
390
|
+
"data-qa": "dt-recipe-leftbar-row-unread-mention-badge",
|
|
393
391
|
class: vue.normalizeClass([
|
|
394
|
-
"dt-leftbar-row__unread-badge",
|
|
395
|
-
{ "dt-leftbar-row__unread-mention-count-badge": $options.shouldApplyCustomStyleForCountBadge },
|
|
396
|
-
{ "dt-leftbar-row__unread-mention-only-count-badge": $options.shouldApplyCustomStyleForMentionOnly }
|
|
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 }
|
|
397
395
|
])
|
|
398
396
|
}, {
|
|
399
397
|
default: vue.withCtx(() => [
|
|
@@ -411,8 +409,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
411
409
|
}, {
|
|
412
410
|
anchor: vue.withCtx(() => [
|
|
413
411
|
vue.createVNode(_component_dt_button, {
|
|
414
|
-
class: "dt-leftbar-row__action-button",
|
|
415
|
-
"data-qa": "dt-leftbar-row-action-call-button",
|
|
412
|
+
class: "dt-recipe-leftbar-row__action-button",
|
|
413
|
+
"data-qa": "dt-recipe-leftbar-row-action-call-button",
|
|
416
414
|
circle: true,
|
|
417
415
|
size: "xs",
|
|
418
416
|
kind: "inverted",
|
|
@@ -433,6 +431,6 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
433
431
|
])) : vue.createCommentVNode("", true)
|
|
434
432
|
], 2);
|
|
435
433
|
}
|
|
436
|
-
const DtRecipeGeneralRow = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["render", _sfc_render]
|
|
434
|
+
const DtRecipeGeneralRow = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["render", _sfc_render]]);
|
|
437
435
|
exports.default = DtRecipeGeneralRow;
|
|
438
436
|
//# sourceMappingURL=general_row.vue.cjs.map
|