@dialpad/dialtone 9.99.0 → 9.100.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/css/dialtone-default-theme.css +94 -85
- package/dist/css/dialtone-default-theme.min.css +1 -1
- package/dist/css/dialtone.css +94 -85
- package/dist/css/dialtone.min.css +1 -1
- package/dist/tokens/doc.json +11964 -11964
- package/dist/vue2/component-documentation.json +1 -1
- package/dist/vue2/components/item_layout/item_layout.vue.cjs +63 -1
- package/dist/vue2/components/item_layout/item_layout.vue.cjs.map +1 -1
- package/dist/vue2/components/item_layout/item_layout.vue.js +63 -1
- package/dist/vue2/components/item_layout/item_layout.vue.js.map +1 -1
- package/dist/vue2/components/list_item/list_item.vue.cjs +12 -13
- package/dist/vue2/components/list_item/list_item.vue.cjs.map +1 -1
- package/dist/vue2/components/list_item/list_item.vue.js +12 -13
- package/dist/vue2/components/list_item/list_item.vue.js.map +1 -1
- package/dist/vue2/dialtone-vue.cjs +1 -0
- package/dist/vue2/dialtone-vue.cjs.map +1 -1
- package/dist/vue2/dialtone-vue.js +2 -1
- package/dist/vue2/lib/ivr-node.cjs +1 -0
- package/dist/vue2/lib/ivr-node.cjs.map +1 -1
- package/dist/vue2/lib/ivr-node.js +2 -1
- package/dist/vue2/recipes/cards/ivr_node/ivr_node.vue.cjs +3 -1
- package/dist/vue2/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
- package/dist/vue2/recipes/cards/ivr_node/ivr_node.vue.js +5 -3
- package/dist/vue2/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
- package/dist/vue2/recipes/cards/ivr_node/ivr_node_constants.cjs +6 -1
- package/dist/vue2/recipes/cards/ivr_node/ivr_node_constants.cjs.map +1 -1
- package/dist/vue2/recipes/cards/ivr_node/ivr_node_constants.js +6 -1
- package/dist/vue2/recipes/cards/ivr_node/ivr_node_constants.js.map +1 -1
- package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +1 -1
- package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
- package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +1 -1
- package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
- package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs +5 -1
- package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs.map +1 -1
- package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js +5 -1
- package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js.map +1 -1
- package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +10 -10
- package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
- package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +10 -10
- package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
- package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +2 -4
- package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
- package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +2 -4
- package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
- package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.cjs +4 -4
- package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
- package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.js +4 -4
- package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
- package/dist/vue2/types/components/item_layout/item_layout.vue.d.ts +66 -1
- package/dist/vue2/types/components/item_layout/item_layout.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/list_item/list_item.vue.d.ts +1 -22
- package/dist/vue2/types/components/list_item/list_item.vue.d.ts.map +1 -1
- package/dist/vue2/types/recipes/cards/ivr_node/index.d.ts +1 -1
- package/dist/vue2/types/recipes/cards/ivr_node/ivr_node_constants.d.ts +6 -0
- package/dist/vue2/types/recipes/cards/ivr_node/ivr_node_constants.d.ts.map +1 -1
- package/dist/vue2/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts.map +1 -1
- package/dist/vue2/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
- package/dist/vue2/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
- package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
- package/dist/vue2/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
- package/dist/vue3/component-documentation.json +1 -1
- package/dist/vue3/components/item_layout/item_layout.vue.cjs +102 -44
- package/dist/vue3/components/item_layout/item_layout.vue.cjs.map +1 -1
- package/dist/vue3/components/item_layout/item_layout.vue.js +103 -45
- package/dist/vue3/components/item_layout/item_layout.vue.js.map +1 -1
- package/dist/vue3/components/list_item/list_item.vue.cjs +24 -17
- package/dist/vue3/components/list_item/list_item.vue.cjs.map +1 -1
- package/dist/vue3/components/list_item/list_item.vue.js +24 -17
- package/dist/vue3/components/list_item/list_item.vue.js.map +1 -1
- package/dist/vue3/dialtone-vue.cjs +1 -0
- package/dist/vue3/dialtone-vue.cjs.map +1 -1
- package/dist/vue3/dialtone-vue.js +2 -1
- package/dist/vue3/lib/ivr-node.cjs +1 -0
- package/dist/vue3/lib/ivr-node.cjs.map +1 -1
- package/dist/vue3/lib/ivr-node.js +2 -1
- package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.cjs +3 -1
- package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
- package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.js +5 -3
- package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
- package/dist/vue3/recipes/cards/ivr_node/ivr_node_constants.cjs +6 -1
- package/dist/vue3/recipes/cards/ivr_node/ivr_node_constants.cjs.map +1 -1
- package/dist/vue3/recipes/cards/ivr_node/ivr_node_constants.js +6 -1
- package/dist/vue3/recipes/cards/ivr_node/ivr_node_constants.js.map +1 -1
- package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +1 -0
- package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
- package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +1 -0
- package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
- package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs +5 -1
- package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs.map +1 -1
- package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js +5 -1
- package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js.map +1 -1
- package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +51 -21
- package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
- package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +52 -22
- package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
- package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +2 -4
- package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
- package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +2 -4
- package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
- package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.cjs +16 -4
- package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
- package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.js +16 -4
- package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
- package/dist/vue3/types/components/item_layout/item_layout.vue.d.ts +64 -0
- package/dist/vue3/types/components/item_layout/item_layout.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/list_item/list_item.vue.d.ts +1 -24
- package/dist/vue3/types/components/list_item/list_item.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/cards/ivr_node/index.d.ts +1 -1
- package/dist/vue3/types/recipes/cards/ivr_node/ivr_node_constants.d.ts +6 -0
- package/dist/vue3/types/recipes/cards/ivr_node/ivr_node_constants.d.ts.map +1 -1
- package/dist/vue3/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
- package/package.json +6 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FEED_ITEM_PILL_BORDER_COLORS } from "./feed_item_pill_constants.js";
|
|
2
2
|
import { DtIconChevronDown, DtIconChevronRight } from "@dialpad/dialtone-icons/vue3";
|
|
3
|
-
import { resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, createVNode, withCtx, createBlock, resolveDynamicComponent, renderSlot, toDisplayString } from "vue";
|
|
3
|
+
import { resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, createVNode, createSlots, withCtx, createBlock, resolveDynamicComponent, renderSlot, toDisplayString } from "vue";
|
|
4
4
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
|
|
5
5
|
import DtItemLayout from "../../../components/item_layout/item_layout.vue.js";
|
|
6
6
|
import DtCollapsible from "../../../components/collapsible/collapsible.vue.js";
|
|
@@ -92,7 +92,10 @@ const _hoisted_4 = {
|
|
|
92
92
|
class: "d-recipe-feed-item-pill__icon",
|
|
93
93
|
"data-qa": "dt-recipe-feed-item-pill__icon"
|
|
94
94
|
};
|
|
95
|
-
const _hoisted_5 = { class: "d-recipe-feed-item-
|
|
95
|
+
const _hoisted_5 = { class: "d-recipe-feed-item-pill__subtitle" };
|
|
96
|
+
const _hoisted_6 = { class: "d-recipe-feed-item-pill__bottom" };
|
|
97
|
+
const _hoisted_7 = { class: "d-recipe-feed-item-pill__right" };
|
|
98
|
+
const _hoisted_8 = { class: "d-recipe-feed-item-pill__content" };
|
|
96
99
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
97
100
|
const _component_dt_item_layout = resolveComponent("dt-item-layout");
|
|
98
101
|
const _component_dt_collapsible = resolveComponent("dt-collapsible");
|
|
@@ -100,7 +103,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
100
103
|
class: normalizeClass(["d-recipe-feed-item-pill__border", $options.borderClass, $props.wrapperClass])
|
|
101
104
|
}, [
|
|
102
105
|
createElementVNode("div", _hoisted_1, [
|
|
103
|
-
createVNode(_component_dt_collapsible, { open: $data.expanded }, {
|
|
106
|
+
createVNode(_component_dt_collapsible, { open: $data.expanded }, createSlots({
|
|
104
107
|
anchor: withCtx(() => [
|
|
105
108
|
createElementVNode("button", {
|
|
106
109
|
"data-qa": "dt-recipe-feed-item-pill",
|
|
@@ -112,7 +115,10 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
112
115
|
onMouseleave: _cache[3] || (_cache[3] = ($event) => $data.hover = false),
|
|
113
116
|
onClick: _cache[4] || (_cache[4] = (...args) => $options.onClick && $options.onClick(...args))
|
|
114
117
|
}, [
|
|
115
|
-
createVNode(_component_dt_item_layout, {
|
|
118
|
+
createVNode(_component_dt_item_layout, {
|
|
119
|
+
class: "d-recipe-feed-item-pill__layout",
|
|
120
|
+
unstyled: ""
|
|
121
|
+
}, createSlots({
|
|
116
122
|
left: withCtx(() => [
|
|
117
123
|
createElementVNode("div", _hoisted_4, [
|
|
118
124
|
$options.showChevronIcon ? (openBlock(), createBlock(resolveDynamicComponent($options.toggleIcon), {
|
|
@@ -124,31 +130,55 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
124
130
|
})
|
|
125
131
|
])
|
|
126
132
|
]),
|
|
127
|
-
subtitle: withCtx(() => [
|
|
128
|
-
renderSlot(_ctx.$slots, "subtitle")
|
|
129
|
-
]),
|
|
130
|
-
bottom: withCtx(() => [
|
|
131
|
-
renderSlot(_ctx.$slots, "bottom")
|
|
132
|
-
]),
|
|
133
|
-
right: withCtx(() => [
|
|
134
|
-
renderSlot(_ctx.$slots, "right")
|
|
135
|
-
]),
|
|
136
133
|
default: withCtx(() => [
|
|
137
134
|
renderSlot(_ctx.$slots, "title", {}, () => [
|
|
138
135
|
createElementVNode("span", _hoisted_3, toDisplayString($props.title), 1)
|
|
139
136
|
])
|
|
140
137
|
]),
|
|
141
|
-
_:
|
|
142
|
-
}
|
|
138
|
+
_: 2
|
|
139
|
+
}, [
|
|
140
|
+
_ctx.$slots.subtitle ? {
|
|
141
|
+
name: "subtitle",
|
|
142
|
+
fn: withCtx(() => [
|
|
143
|
+
createElementVNode("div", _hoisted_5, [
|
|
144
|
+
renderSlot(_ctx.$slots, "subtitle")
|
|
145
|
+
])
|
|
146
|
+
]),
|
|
147
|
+
key: "0"
|
|
148
|
+
} : void 0,
|
|
149
|
+
_ctx.$slots.bottom ? {
|
|
150
|
+
name: "bottom",
|
|
151
|
+
fn: withCtx(() => [
|
|
152
|
+
createElementVNode("div", _hoisted_6, [
|
|
153
|
+
renderSlot(_ctx.$slots, "bottom")
|
|
154
|
+
])
|
|
155
|
+
]),
|
|
156
|
+
key: "1"
|
|
157
|
+
} : void 0,
|
|
158
|
+
_ctx.$slots.right ? {
|
|
159
|
+
name: "right",
|
|
160
|
+
fn: withCtx(() => [
|
|
161
|
+
createElementVNode("div", _hoisted_7, [
|
|
162
|
+
renderSlot(_ctx.$slots, "right")
|
|
163
|
+
])
|
|
164
|
+
]),
|
|
165
|
+
key: "2"
|
|
166
|
+
} : void 0
|
|
167
|
+
]), 1024)
|
|
143
168
|
], 42, _hoisted_2)
|
|
144
169
|
]),
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
170
|
+
_: 2
|
|
171
|
+
}, [
|
|
172
|
+
_ctx.$slots.content ? {
|
|
173
|
+
name: "content",
|
|
174
|
+
fn: withCtx(() => [
|
|
175
|
+
createElementVNode("div", _hoisted_8, [
|
|
176
|
+
renderSlot(_ctx.$slots, "content")
|
|
177
|
+
])
|
|
178
|
+
]),
|
|
179
|
+
key: "0"
|
|
180
|
+
} : void 0
|
|
181
|
+
]), 1032, ["open"])
|
|
152
182
|
])
|
|
153
183
|
], 2);
|
|
154
184
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed_item_pill.vue.js","sources":["../../../../recipes/conversation_view/feed_item_pill/feed_item_pill.vue"],"sourcesContent":["<template>\n <div :class=\"['d-recipe-feed-item-pill__border', borderClass, wrapperClass]\">\n <div class=\"d-recipe-feed-item-pill__wrapper\">\n <dt-collapsible :open=\"expanded\">\n <template #anchor>\n <button\n data-qa=\"dt-recipe-feed-item-pill\"\n :aria-label=\"ariaLabel\"\n :class=\"['d-recipe-feed-item-pill__button', toggleableClass, buttonClass]\"\n @focusin=\"hover = true\"\n @focusout=\"hover = false\"\n @mouseenter=\"hover = true\"\n @mouseleave=\"hover = false\"\n @click=\"onClick\"\n >\n <dt-item-layout
|
|
1
|
+
{"version":3,"file":"feed_item_pill.vue.js","sources":["../../../../recipes/conversation_view/feed_item_pill/feed_item_pill.vue"],"sourcesContent":["<template>\n <div :class=\"['d-recipe-feed-item-pill__border', borderClass, wrapperClass]\">\n <div class=\"d-recipe-feed-item-pill__wrapper\">\n <dt-collapsible :open=\"expanded\">\n <template #anchor>\n <button\n data-qa=\"dt-recipe-feed-item-pill\"\n :aria-label=\"ariaLabel\"\n :class=\"['d-recipe-feed-item-pill__button', toggleableClass, buttonClass]\"\n @focusin=\"hover = true\"\n @focusout=\"hover = false\"\n @mouseenter=\"hover = true\"\n @mouseleave=\"hover = false\"\n @click=\"onClick\"\n >\n <dt-item-layout\n class=\"d-recipe-feed-item-pill__layout\"\n unstyled\n >\n <slot name=\"title\">\n <span class=\"d-recipe-feed-item-pill__title\">{{ title }}</span>\n </slot>\n <template #left>\n <div\n class=\"d-recipe-feed-item-pill__icon\"\n data-qa=\"dt-recipe-feed-item-pill__icon\"\n >\n <component\n :is=\"toggleIcon\"\n v-if=\"showChevronIcon\"\n size=\"300\"\n />\n <!-- @slot Slot for left icon, icon-size slot prop defaults to '300' -->\n <slot\n v-else\n name=\"leftIcon\"\n :icon-size=\"'300'\"\n />\n </div>\n </template>\n <template\n v-if=\"$slots.subtitle\"\n #subtitle\n >\n <div class=\"d-recipe-feed-item-pill__subtitle\">\n <slot name=\"subtitle\" />\n </div>\n </template>\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div class=\"d-recipe-feed-item-pill__bottom\">\n <slot name=\"bottom\" />\n </div>\n </template>\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div class=\"d-recipe-feed-item-pill__right\">\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n </button>\n </template>\n <template\n v-if=\"$slots.content\"\n #content\n >\n <div class=\"d-recipe-feed-item-pill__content\">\n <slot name=\"content\" />\n </div>\n </template>\n </dt-collapsible>\n </div>\n </div>\n</template>\n\n<script>\nimport { FEED_ITEM_PILL_BORDER_COLORS } from './feed_item_pill_constants';\nimport { DtItemLayout } from '@/components/item_layout';\nimport { DtCollapsible } from '@/components/collapsible';\nimport { DtIconChevronDown, DtIconChevronRight } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeFeedItemPill',\n\n components: { DtItemLayout, DtCollapsible },\n\n props: {\n /**\n * Bolded primary text\n */\n title: {\n type: String,\n default: () => '',\n },\n\n /**\n * Additional styling around the pill\n */\n wrapperClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional styling for the pill\n */\n buttonClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Aria label for feed pill\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Sets whether the pill can be toggled (Icon changing on hover, expanding and collapsing, pointer)\n */\n toggleable: {\n type: Boolean,\n default: () => true,\n },\n\n defaultToggled: {\n type: Boolean,\n default: () => false,\n },\n\n /**\n * Callbox border color\n * @values default, ai, critical\n */\n borderColor: {\n type: String,\n default: 'default',\n validator: (color) => Object.keys(FEED_ITEM_PILL_BORDER_COLORS).includes(color),\n },\n },\n\n data () {\n return {\n hover: false,\n expanded: this.defaultToggled,\n };\n },\n\n computed: {\n toggleIcon () {\n return this.expanded ? DtIconChevronDown : DtIconChevronRight;\n },\n\n showChevronIcon () {\n return this.toggleable && this.hover;\n },\n\n toggleableClass () {\n return this.toggleable ? 'd-recipe-feed-item-pill--toggleable' : '';\n },\n\n borderClass () {\n return FEED_ITEM_PILL_BORDER_COLORS[this.borderColor];\n },\n },\n\n methods: {\n onClick () {\n if (!this.toggleable) return;\n\n this.expanded = !this.expanded;\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_createVNode","_createSlots","_createBlock","_resolveDynamicComponent","_renderSlot","_withCtx","_toDisplayString"],"mappings":"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"}
|
|
@@ -220,7 +220,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
220
220
|
ref: "FeedItemRef",
|
|
221
221
|
"navigation-type": "none"
|
|
222
222
|
}, _ctx.$attrs, {
|
|
223
|
-
class:
|
|
223
|
+
class: $options.listItemClasses,
|
|
224
224
|
"data-qa": "dt-recipe-feed-item-row"
|
|
225
225
|
}, vue.toHandlers($options.feedListeners)), {
|
|
226
226
|
left: vue.withCtx(() => [
|
|
@@ -256,9 +256,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
256
256
|
])) : vue.createCommentVNode("", true),
|
|
257
257
|
_ctx.$slots.threading ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_9, [
|
|
258
258
|
vue.renderSlot(_ctx.$slots, "threading")
|
|
259
|
-
])) : vue.createCommentVNode("", true)
|
|
260
|
-
]),
|
|
261
|
-
right: vue.withCtx(() => [
|
|
259
|
+
])) : vue.createCommentVNode("", true),
|
|
262
260
|
vue.withDirectives(vue.createElementVNode("div", _hoisted_10, [
|
|
263
261
|
vue.createVNode(_component_dt_lazy_show, {
|
|
264
262
|
appear: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed_item_row.vue.cjs","sources":["../../../../recipes/conversation_view/feed_item_row/feed_item_row.vue"],"sourcesContent":["<template>\n <dt-list-item\n ref=\"FeedItemRef\"\n navigation-type=\"none\"\n v-bind=\"$attrs\"\n :class=\"['d-recipe-feed-item-row', listItemClasses]\"\n data-qa=\"dt-recipe-feed-item-row\"\n v-on=\"feedListeners\"\n >\n <!-- Avatar or time -->\n <template #left>\n <div\n v-if=\"showHeader\"\n class=\"d-recipe-feed-item-row__avatar-container\"\n >\n <!-- @slot Slot to contain the avatar, overrides avatar props. -->\n <slot\n name=\"avatar\"\n >\n <dt-avatar\n :full-name=\"displayName\"\n :image-src=\"avatarImageUrl\"\n image-alt=\"\"\n :seed=\"avatarSeed\"\n >\n <template\n v-if=\"noInitials\"\n #icon=\"{ iconSize }\"\n >\n <dt-icon-user\n :size=\"iconSize\"\n />\n </template>\n </dt-avatar>\n </slot>\n </div>\n <!-- show time instead of avatar when headers not present -->\n <span\n v-if=\"!showHeader\"\n v-show=\"isActive\"\n class=\"d-recipe-feed-item-row__left-time\"\n data-qa=\"dt-recipe-feed-item-row--left-time\"\n >\n {{ shortTime }}\n </span>\n </template>\n\n <article class=\"d-recipe-feed-item-row__content\">\n <!-- Feed Item -->\n <div\n v-if=\"showHeader\"\n data-qa=\"dt-recipe-feed-item-row--header\"\n class=\"d-recipe-feed-item-row__header\"\n >\n <!-- @slot Slot for display name -->\n <slot name=\"displayName\">\n <p class=\"d-recipe-feed-item-row__header-name\">\n {{ displayName }}\n </p>\n </slot>\n <time\n class=\"d-recipe-feed-item-row__header-time\"\n >\n {{ time }}\n </time>\n <dt-badge\n v-if=\"labelText\"\n :text=\"labelText\"\n />\n </div>\n <!-- @slot Default content slot for feed item row -->\n <span\n data-qa=\"dt-recipe-feed-item-row--content\"\n >\n <slot />\n </span>\n <div\n v-if=\"$slots.attachment\"\n data-qa=\"dt-recipe-feed-item-row--attachment\"\n class=\"d-recipe-feed-item-row__attachment\"\n >\n <slot name=\"attachment\" />\n </div>\n </article>\n\n <template #bottom>\n <div\n v-if=\"$slots.reactions\"\n class=\"d-recipe-feed-item-row__reactions\"\n data-qa=\"dt-recipe-feed-item-row--reactions\"\n >\n <!-- @slot Slot for reactions row component -->\n <slot name=\"reactions\" />\n </div>\n <div\n v-if=\"$slots.threading\"\n class=\"d-recipe-feed-item-row__threading\"\n >\n <!-- @slot Slot for threading row component -->\n <slot name=\"threading\" />\n </div>\n </template>\n\n <!-- Action menu -->\n <template #right>\n <div\n v-show=\"isActive\"\n data-qa=\"dt-recipe-feed-item-row--menu\"\n class=\"d-recipe-feed-item-row__menu\"\n >\n <dt-lazy-show\n :appear=\"true\"\n transition=\"fade\"\n :show=\"isActive\"\n >\n <!-- @slot Slot for actions hover menu component -->\n <slot name=\"menu\" />\n </dt-lazy-show>\n </div>\n </template>\n </dt-list-item>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport { DEFAULT_FEED_ROW_STATE, FEED_ROW_STATE_BACKGROUND_COLOR } from './feed_item_row_constants.js';\nimport { DtAvatar } from '@/components/avatar';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtListItem } from '@/components/list_item';\nimport { DtBadge } from '@/components/badge';\nimport Modal from '@/common/mixins/modal';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeFeedItemRow',\n\n components: {\n DtAvatar,\n DtLazyShow,\n DtListItem,\n DtBadge,\n DtIconUser,\n },\n\n mixins: [Modal],\n\n inheritAttrs: false,\n\n props: {\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 * Show avatar, show header text or dont show left time and vice versa\n */\n showHeader: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Optional avatar image url.\n * If not provided it will use extracted initials from displayName.\n */\n avatarImageUrl: {\n type: String,\n default: '',\n },\n\n /**\n * The display name of the sender\n */\n displayName: {\n type: String,\n default: '',\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 * time string displayed as is.\n * Shown on the header when showHeader is true\n */\n time: {\n type: String,\n default: '',\n },\n\n /**\n * short time string without AM/PM displayed as is.\n * Shown on the left of feed item when showHeader is false and isActive is true\n */\n shortTime: {\n type: String,\n default: '',\n },\n\n /**\n * A label displayed next to the displayName. Will not show if empty.\n */\n labelText: {\n type: String,\n default: '',\n },\n\n /**\n * displays a darkened background on the row.\n */\n isActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * state for the feed item row. Can be normal, searched & error\n */\n state: {\n type: String,\n default: DEFAULT_FEED_ROW_STATE,\n validator: state => Object.keys(FEED_ROW_STATE_BACKGROUND_COLOR).includes(state),\n },\n },\n\n emits: [\n /**\n * Fires when hovered over feed row\n *\n * @event hover\n * @type {Boolean}\n */\n 'hover',\n\n /**\n * Fires when focused over feed row\n *\n * @event focus\n * @type {Boolean}\n */\n 'focus',\n\n /**\n * Key down event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n ],\n\n data () {\n return {\n transitionActive: false,\n };\n },\n\n computed: {\n feedListeners () {\n return {\n mouseenter: () => this.setHover(true),\n mouseleave: () => this.setHover(false),\n focusin: () => this.setFocus(true),\n focusout: () => this.setFocus(false),\n transitionend: () => this.transitionComplete(),\n keydown: event => {\n switch (event.code) {\n case 'Tab':\n this.trapFocus(event);\n break;\n }\n this.$emit('keydown', event);\n },\n };\n },\n\n listItemClasses () {\n return [\n 'd-recipe-feed-item-row',\n { 'd-recipe-feed-item-row--active': this.isActive && this.state === DEFAULT_FEED_ROW_STATE },\n { 'd-recipe-feed-item-row__state-transition': this.transitionActive },\n FEED_ROW_STATE_BACKGROUND_COLOR[this.state],\n\n ];\n },\n },\n\n watch: {\n state: {\n immediate: true,\n handler: function (newState, oldState) {\n if (newState !== DEFAULT_FEED_ROW_STATE) {\n this.transitionActive = true;\n }\n },\n },\n },\n\n methods: {\n transitionComplete () {\n if (this.state === DEFAULT_FEED_ROW_STATE) {\n this.transitionActive = false;\n }\n },\n\n trapFocus (e) {\n this.focusTrappedTabPress(e);\n },\n\n setFocus (bool) {\n this.$emit('focus', bool);\n },\n\n setHover (bool) {\n this.$emit('hover', bool);\n },\n },\n};\n</script>\n"],"names":["DtAvatar","DtLazyShow","DtListItem","DtBadge","DtIconUser","Modal","DEFAULT_FEED_ROW_STATE","FEED_ROW_STATE_BACKGROUND_COLOR","_openBlock","_createBlock","_mergeProps","_toHandlers","_createElementBlock","_renderSlot","_createVNode","_createSlots","_withCtx","_createCommentVNode","_withDirectives","_createElementVNode","_toDisplayString"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"feed_item_row.vue.cjs","sources":["../../../../recipes/conversation_view/feed_item_row/feed_item_row.vue"],"sourcesContent":["<template>\n <dt-list-item\n ref=\"FeedItemRef\"\n navigation-type=\"none\"\n v-bind=\"$attrs\"\n :class=\"listItemClasses\"\n data-qa=\"dt-recipe-feed-item-row\"\n v-on=\"feedListeners\"\n >\n <!-- Avatar or time -->\n <template #left>\n <div\n v-if=\"showHeader\"\n class=\"d-recipe-feed-item-row__avatar-container\"\n >\n <!-- @slot Slot to contain the avatar, overrides avatar props. -->\n <slot\n name=\"avatar\"\n >\n <dt-avatar\n :full-name=\"displayName\"\n :image-src=\"avatarImageUrl\"\n image-alt=\"\"\n :seed=\"avatarSeed\"\n >\n <template\n v-if=\"noInitials\"\n #icon=\"{ iconSize }\"\n >\n <dt-icon-user\n :size=\"iconSize\"\n />\n </template>\n </dt-avatar>\n </slot>\n </div>\n <!-- show time instead of avatar when headers not present -->\n <span\n v-if=\"!showHeader\"\n v-show=\"isActive\"\n class=\"d-recipe-feed-item-row__left-time\"\n data-qa=\"dt-recipe-feed-item-row--left-time\"\n >\n {{ shortTime }}\n </span>\n </template>\n\n <article class=\"d-recipe-feed-item-row__content\">\n <!-- Feed Item -->\n <div\n v-if=\"showHeader\"\n data-qa=\"dt-recipe-feed-item-row--header\"\n class=\"d-recipe-feed-item-row__header\"\n >\n <!-- @slot Slot for display name -->\n <slot name=\"displayName\">\n <p class=\"d-recipe-feed-item-row__header-name\">\n {{ displayName }}\n </p>\n </slot>\n <time\n class=\"d-recipe-feed-item-row__header-time\"\n >\n {{ time }}\n </time>\n <dt-badge\n v-if=\"labelText\"\n :text=\"labelText\"\n />\n </div>\n <!-- @slot Default content slot for feed item row -->\n <span\n data-qa=\"dt-recipe-feed-item-row--content\"\n >\n <slot />\n </span>\n <div\n v-if=\"$slots.attachment\"\n data-qa=\"dt-recipe-feed-item-row--attachment\"\n class=\"d-recipe-feed-item-row__attachment\"\n >\n <slot name=\"attachment\" />\n </div>\n </article>\n\n <template #bottom>\n <!-- Reactions -->\n <div\n v-if=\"$slots.reactions\"\n class=\"d-recipe-feed-item-row__reactions\"\n data-qa=\"dt-recipe-feed-item-row--reactions\"\n >\n <!-- @slot Slot for reactions row component -->\n <slot name=\"reactions\" />\n </div>\n\n <!-- Threading -->\n <div\n v-if=\"$slots.threading\"\n class=\"d-recipe-feed-item-row__threading\"\n >\n <!-- @slot Slot for threading row component -->\n <slot name=\"threading\" />\n </div>\n\n <!-- Action menu -->\n <div\n v-show=\"isActive\"\n data-qa=\"dt-recipe-feed-item-row--menu\"\n class=\"d-recipe-feed-item-row__menu\"\n >\n <dt-lazy-show\n :appear=\"true\"\n transition=\"fade\"\n :show=\"isActive\"\n >\n <!-- @slot Slot for actions hover menu component -->\n <slot name=\"menu\" />\n </dt-lazy-show>\n </div>\n </template>\n </dt-list-item>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport { DEFAULT_FEED_ROW_STATE, FEED_ROW_STATE_BACKGROUND_COLOR } from './feed_item_row_constants.js';\nimport { DtAvatar } from '@/components/avatar';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtListItem } from '@/components/list_item';\nimport { DtBadge } from '@/components/badge';\nimport Modal from '@/common/mixins/modal';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeFeedItemRow',\n\n components: {\n DtAvatar,\n DtLazyShow,\n DtListItem,\n DtBadge,\n DtIconUser,\n },\n\n mixins: [Modal],\n\n inheritAttrs: false,\n\n props: {\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 * Show avatar, show header text or dont show left time and vice versa\n */\n showHeader: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Optional avatar image url.\n * If not provided it will use extracted initials from displayName.\n */\n avatarImageUrl: {\n type: String,\n default: '',\n },\n\n /**\n * The display name of the sender\n */\n displayName: {\n type: String,\n default: '',\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 * time string displayed as is.\n * Shown on the header when showHeader is true\n */\n time: {\n type: String,\n default: '',\n },\n\n /**\n * short time string without AM/PM displayed as is.\n * Shown on the left of feed item when showHeader is false and isActive is true\n */\n shortTime: {\n type: String,\n default: '',\n },\n\n /**\n * A label displayed next to the displayName. Will not show if empty.\n */\n labelText: {\n type: String,\n default: '',\n },\n\n /**\n * displays a darkened background on the row.\n */\n isActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * state for the feed item row. Can be normal, searched & error\n */\n state: {\n type: String,\n default: DEFAULT_FEED_ROW_STATE,\n validator: state => Object.keys(FEED_ROW_STATE_BACKGROUND_COLOR).includes(state),\n },\n },\n\n emits: [\n /**\n * Fires when hovered over feed row\n *\n * @event hover\n * @type {Boolean}\n */\n 'hover',\n\n /**\n * Fires when focused over feed row\n *\n * @event focus\n * @type {Boolean}\n */\n 'focus',\n\n /**\n * Key down event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n ],\n\n data () {\n return {\n transitionActive: false,\n };\n },\n\n computed: {\n feedListeners () {\n return {\n mouseenter: () => this.setHover(true),\n mouseleave: () => this.setHover(false),\n focusin: () => this.setFocus(true),\n focusout: () => this.setFocus(false),\n transitionend: () => this.transitionComplete(),\n keydown: event => {\n switch (event.code) {\n case 'Tab':\n this.trapFocus(event);\n break;\n }\n this.$emit('keydown', event);\n },\n };\n },\n\n listItemClasses () {\n return [\n 'd-recipe-feed-item-row',\n { 'd-recipe-feed-item-row--active': this.isActive && this.state === DEFAULT_FEED_ROW_STATE },\n { 'd-recipe-feed-item-row__state-transition': this.transitionActive },\n FEED_ROW_STATE_BACKGROUND_COLOR[this.state],\n\n ];\n },\n },\n\n watch: {\n state: {\n immediate: true,\n handler: function (newState, oldState) {\n if (newState !== DEFAULT_FEED_ROW_STATE) {\n this.transitionActive = true;\n }\n },\n },\n },\n\n methods: {\n transitionComplete () {\n if (this.state === DEFAULT_FEED_ROW_STATE) {\n this.transitionActive = false;\n }\n },\n\n trapFocus (e) {\n this.focusTrappedTabPress(e);\n },\n\n setFocus (bool) {\n this.$emit('focus', bool);\n },\n\n setHover (bool) {\n this.$emit('hover', bool);\n },\n },\n};\n</script>\n"],"names":["DtAvatar","DtLazyShow","DtListItem","DtBadge","DtIconUser","Modal","DEFAULT_FEED_ROW_STATE","FEED_ROW_STATE_BACKGROUND_COLOR","_openBlock","_createBlock","_mergeProps","_toHandlers","_createElementBlock","_renderSlot","_createVNode","_createSlots","_withCtx","_createCommentVNode","_withDirectives","_createElementVNode","_toDisplayString"],"mappings":"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"}
|
|
@@ -218,7 +218,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
218
218
|
ref: "FeedItemRef",
|
|
219
219
|
"navigation-type": "none"
|
|
220
220
|
}, _ctx.$attrs, {
|
|
221
|
-
class:
|
|
221
|
+
class: $options.listItemClasses,
|
|
222
222
|
"data-qa": "dt-recipe-feed-item-row"
|
|
223
223
|
}, toHandlers($options.feedListeners)), {
|
|
224
224
|
left: withCtx(() => [
|
|
@@ -254,9 +254,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
254
254
|
])) : createCommentVNode("", true),
|
|
255
255
|
_ctx.$slots.threading ? (openBlock(), createElementBlock("div", _hoisted_9, [
|
|
256
256
|
renderSlot(_ctx.$slots, "threading")
|
|
257
|
-
])) : createCommentVNode("", true)
|
|
258
|
-
]),
|
|
259
|
-
right: withCtx(() => [
|
|
257
|
+
])) : createCommentVNode("", true),
|
|
260
258
|
withDirectives(createElementVNode("div", _hoisted_10, [
|
|
261
259
|
createVNode(_component_dt_lazy_show, {
|
|
262
260
|
appear: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed_item_row.vue.js","sources":["../../../../recipes/conversation_view/feed_item_row/feed_item_row.vue"],"sourcesContent":["<template>\n <dt-list-item\n ref=\"FeedItemRef\"\n navigation-type=\"none\"\n v-bind=\"$attrs\"\n :class=\"['d-recipe-feed-item-row', listItemClasses]\"\n data-qa=\"dt-recipe-feed-item-row\"\n v-on=\"feedListeners\"\n >\n <!-- Avatar or time -->\n <template #left>\n <div\n v-if=\"showHeader\"\n class=\"d-recipe-feed-item-row__avatar-container\"\n >\n <!-- @slot Slot to contain the avatar, overrides avatar props. -->\n <slot\n name=\"avatar\"\n >\n <dt-avatar\n :full-name=\"displayName\"\n :image-src=\"avatarImageUrl\"\n image-alt=\"\"\n :seed=\"avatarSeed\"\n >\n <template\n v-if=\"noInitials\"\n #icon=\"{ iconSize }\"\n >\n <dt-icon-user\n :size=\"iconSize\"\n />\n </template>\n </dt-avatar>\n </slot>\n </div>\n <!-- show time instead of avatar when headers not present -->\n <span\n v-if=\"!showHeader\"\n v-show=\"isActive\"\n class=\"d-recipe-feed-item-row__left-time\"\n data-qa=\"dt-recipe-feed-item-row--left-time\"\n >\n {{ shortTime }}\n </span>\n </template>\n\n <article class=\"d-recipe-feed-item-row__content\">\n <!-- Feed Item -->\n <div\n v-if=\"showHeader\"\n data-qa=\"dt-recipe-feed-item-row--header\"\n class=\"d-recipe-feed-item-row__header\"\n >\n <!-- @slot Slot for display name -->\n <slot name=\"displayName\">\n <p class=\"d-recipe-feed-item-row__header-name\">\n {{ displayName }}\n </p>\n </slot>\n <time\n class=\"d-recipe-feed-item-row__header-time\"\n >\n {{ time }}\n </time>\n <dt-badge\n v-if=\"labelText\"\n :text=\"labelText\"\n />\n </div>\n <!-- @slot Default content slot for feed item row -->\n <span\n data-qa=\"dt-recipe-feed-item-row--content\"\n >\n <slot />\n </span>\n <div\n v-if=\"$slots.attachment\"\n data-qa=\"dt-recipe-feed-item-row--attachment\"\n class=\"d-recipe-feed-item-row__attachment\"\n >\n <slot name=\"attachment\" />\n </div>\n </article>\n\n <template #bottom>\n <div\n v-if=\"$slots.reactions\"\n class=\"d-recipe-feed-item-row__reactions\"\n data-qa=\"dt-recipe-feed-item-row--reactions\"\n >\n <!-- @slot Slot for reactions row component -->\n <slot name=\"reactions\" />\n </div>\n <div\n v-if=\"$slots.threading\"\n class=\"d-recipe-feed-item-row__threading\"\n >\n <!-- @slot Slot for threading row component -->\n <slot name=\"threading\" />\n </div>\n </template>\n\n <!-- Action menu -->\n <template #right>\n <div\n v-show=\"isActive\"\n data-qa=\"dt-recipe-feed-item-row--menu\"\n class=\"d-recipe-feed-item-row__menu\"\n >\n <dt-lazy-show\n :appear=\"true\"\n transition=\"fade\"\n :show=\"isActive\"\n >\n <!-- @slot Slot for actions hover menu component -->\n <slot name=\"menu\" />\n </dt-lazy-show>\n </div>\n </template>\n </dt-list-item>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport { DEFAULT_FEED_ROW_STATE, FEED_ROW_STATE_BACKGROUND_COLOR } from './feed_item_row_constants.js';\nimport { DtAvatar } from '@/components/avatar';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtListItem } from '@/components/list_item';\nimport { DtBadge } from '@/components/badge';\nimport Modal from '@/common/mixins/modal';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeFeedItemRow',\n\n components: {\n DtAvatar,\n DtLazyShow,\n DtListItem,\n DtBadge,\n DtIconUser,\n },\n\n mixins: [Modal],\n\n inheritAttrs: false,\n\n props: {\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 * Show avatar, show header text or dont show left time and vice versa\n */\n showHeader: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Optional avatar image url.\n * If not provided it will use extracted initials from displayName.\n */\n avatarImageUrl: {\n type: String,\n default: '',\n },\n\n /**\n * The display name of the sender\n */\n displayName: {\n type: String,\n default: '',\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 * time string displayed as is.\n * Shown on the header when showHeader is true\n */\n time: {\n type: String,\n default: '',\n },\n\n /**\n * short time string without AM/PM displayed as is.\n * Shown on the left of feed item when showHeader is false and isActive is true\n */\n shortTime: {\n type: String,\n default: '',\n },\n\n /**\n * A label displayed next to the displayName. Will not show if empty.\n */\n labelText: {\n type: String,\n default: '',\n },\n\n /**\n * displays a darkened background on the row.\n */\n isActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * state for the feed item row. Can be normal, searched & error\n */\n state: {\n type: String,\n default: DEFAULT_FEED_ROW_STATE,\n validator: state => Object.keys(FEED_ROW_STATE_BACKGROUND_COLOR).includes(state),\n },\n },\n\n emits: [\n /**\n * Fires when hovered over feed row\n *\n * @event hover\n * @type {Boolean}\n */\n 'hover',\n\n /**\n * Fires when focused over feed row\n *\n * @event focus\n * @type {Boolean}\n */\n 'focus',\n\n /**\n * Key down event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n ],\n\n data () {\n return {\n transitionActive: false,\n };\n },\n\n computed: {\n feedListeners () {\n return {\n mouseenter: () => this.setHover(true),\n mouseleave: () => this.setHover(false),\n focusin: () => this.setFocus(true),\n focusout: () => this.setFocus(false),\n transitionend: () => this.transitionComplete(),\n keydown: event => {\n switch (event.code) {\n case 'Tab':\n this.trapFocus(event);\n break;\n }\n this.$emit('keydown', event);\n },\n };\n },\n\n listItemClasses () {\n return [\n 'd-recipe-feed-item-row',\n { 'd-recipe-feed-item-row--active': this.isActive && this.state === DEFAULT_FEED_ROW_STATE },\n { 'd-recipe-feed-item-row__state-transition': this.transitionActive },\n FEED_ROW_STATE_BACKGROUND_COLOR[this.state],\n\n ];\n },\n },\n\n watch: {\n state: {\n immediate: true,\n handler: function (newState, oldState) {\n if (newState !== DEFAULT_FEED_ROW_STATE) {\n this.transitionActive = true;\n }\n },\n },\n },\n\n methods: {\n transitionComplete () {\n if (this.state === DEFAULT_FEED_ROW_STATE) {\n this.transitionActive = false;\n }\n },\n\n trapFocus (e) {\n this.focusTrappedTabPress(e);\n },\n\n setFocus (bool) {\n this.$emit('focus', bool);\n },\n\n setHover (bool) {\n this.$emit('hover', bool);\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createBlock","_mergeProps","_toHandlers","_createElementBlock","_renderSlot","_createVNode","_createSlots","_withCtx","_createCommentVNode","_withDirectives","_createElementVNode","_toDisplayString"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"feed_item_row.vue.js","sources":["../../../../recipes/conversation_view/feed_item_row/feed_item_row.vue"],"sourcesContent":["<template>\n <dt-list-item\n ref=\"FeedItemRef\"\n navigation-type=\"none\"\n v-bind=\"$attrs\"\n :class=\"listItemClasses\"\n data-qa=\"dt-recipe-feed-item-row\"\n v-on=\"feedListeners\"\n >\n <!-- Avatar or time -->\n <template #left>\n <div\n v-if=\"showHeader\"\n class=\"d-recipe-feed-item-row__avatar-container\"\n >\n <!-- @slot Slot to contain the avatar, overrides avatar props. -->\n <slot\n name=\"avatar\"\n >\n <dt-avatar\n :full-name=\"displayName\"\n :image-src=\"avatarImageUrl\"\n image-alt=\"\"\n :seed=\"avatarSeed\"\n >\n <template\n v-if=\"noInitials\"\n #icon=\"{ iconSize }\"\n >\n <dt-icon-user\n :size=\"iconSize\"\n />\n </template>\n </dt-avatar>\n </slot>\n </div>\n <!-- show time instead of avatar when headers not present -->\n <span\n v-if=\"!showHeader\"\n v-show=\"isActive\"\n class=\"d-recipe-feed-item-row__left-time\"\n data-qa=\"dt-recipe-feed-item-row--left-time\"\n >\n {{ shortTime }}\n </span>\n </template>\n\n <article class=\"d-recipe-feed-item-row__content\">\n <!-- Feed Item -->\n <div\n v-if=\"showHeader\"\n data-qa=\"dt-recipe-feed-item-row--header\"\n class=\"d-recipe-feed-item-row__header\"\n >\n <!-- @slot Slot for display name -->\n <slot name=\"displayName\">\n <p class=\"d-recipe-feed-item-row__header-name\">\n {{ displayName }}\n </p>\n </slot>\n <time\n class=\"d-recipe-feed-item-row__header-time\"\n >\n {{ time }}\n </time>\n <dt-badge\n v-if=\"labelText\"\n :text=\"labelText\"\n />\n </div>\n <!-- @slot Default content slot for feed item row -->\n <span\n data-qa=\"dt-recipe-feed-item-row--content\"\n >\n <slot />\n </span>\n <div\n v-if=\"$slots.attachment\"\n data-qa=\"dt-recipe-feed-item-row--attachment\"\n class=\"d-recipe-feed-item-row__attachment\"\n >\n <slot name=\"attachment\" />\n </div>\n </article>\n\n <template #bottom>\n <!-- Reactions -->\n <div\n v-if=\"$slots.reactions\"\n class=\"d-recipe-feed-item-row__reactions\"\n data-qa=\"dt-recipe-feed-item-row--reactions\"\n >\n <!-- @slot Slot for reactions row component -->\n <slot name=\"reactions\" />\n </div>\n\n <!-- Threading -->\n <div\n v-if=\"$slots.threading\"\n class=\"d-recipe-feed-item-row__threading\"\n >\n <!-- @slot Slot for threading row component -->\n <slot name=\"threading\" />\n </div>\n\n <!-- Action menu -->\n <div\n v-show=\"isActive\"\n data-qa=\"dt-recipe-feed-item-row--menu\"\n class=\"d-recipe-feed-item-row__menu\"\n >\n <dt-lazy-show\n :appear=\"true\"\n transition=\"fade\"\n :show=\"isActive\"\n >\n <!-- @slot Slot for actions hover menu component -->\n <slot name=\"menu\" />\n </dt-lazy-show>\n </div>\n </template>\n </dt-list-item>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport { DEFAULT_FEED_ROW_STATE, FEED_ROW_STATE_BACKGROUND_COLOR } from './feed_item_row_constants.js';\nimport { DtAvatar } from '@/components/avatar';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtListItem } from '@/components/list_item';\nimport { DtBadge } from '@/components/badge';\nimport Modal from '@/common/mixins/modal';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeFeedItemRow',\n\n components: {\n DtAvatar,\n DtLazyShow,\n DtListItem,\n DtBadge,\n DtIconUser,\n },\n\n mixins: [Modal],\n\n inheritAttrs: false,\n\n props: {\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 * Show avatar, show header text or dont show left time and vice versa\n */\n showHeader: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Optional avatar image url.\n * If not provided it will use extracted initials from displayName.\n */\n avatarImageUrl: {\n type: String,\n default: '',\n },\n\n /**\n * The display name of the sender\n */\n displayName: {\n type: String,\n default: '',\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 * time string displayed as is.\n * Shown on the header when showHeader is true\n */\n time: {\n type: String,\n default: '',\n },\n\n /**\n * short time string without AM/PM displayed as is.\n * Shown on the left of feed item when showHeader is false and isActive is true\n */\n shortTime: {\n type: String,\n default: '',\n },\n\n /**\n * A label displayed next to the displayName. Will not show if empty.\n */\n labelText: {\n type: String,\n default: '',\n },\n\n /**\n * displays a darkened background on the row.\n */\n isActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * state for the feed item row. Can be normal, searched & error\n */\n state: {\n type: String,\n default: DEFAULT_FEED_ROW_STATE,\n validator: state => Object.keys(FEED_ROW_STATE_BACKGROUND_COLOR).includes(state),\n },\n },\n\n emits: [\n /**\n * Fires when hovered over feed row\n *\n * @event hover\n * @type {Boolean}\n */\n 'hover',\n\n /**\n * Fires when focused over feed row\n *\n * @event focus\n * @type {Boolean}\n */\n 'focus',\n\n /**\n * Key down event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n ],\n\n data () {\n return {\n transitionActive: false,\n };\n },\n\n computed: {\n feedListeners () {\n return {\n mouseenter: () => this.setHover(true),\n mouseleave: () => this.setHover(false),\n focusin: () => this.setFocus(true),\n focusout: () => this.setFocus(false),\n transitionend: () => this.transitionComplete(),\n keydown: event => {\n switch (event.code) {\n case 'Tab':\n this.trapFocus(event);\n break;\n }\n this.$emit('keydown', event);\n },\n };\n },\n\n listItemClasses () {\n return [\n 'd-recipe-feed-item-row',\n { 'd-recipe-feed-item-row--active': this.isActive && this.state === DEFAULT_FEED_ROW_STATE },\n { 'd-recipe-feed-item-row__state-transition': this.transitionActive },\n FEED_ROW_STATE_BACKGROUND_COLOR[this.state],\n\n ];\n },\n },\n\n watch: {\n state: {\n immediate: true,\n handler: function (newState, oldState) {\n if (newState !== DEFAULT_FEED_ROW_STATE) {\n this.transitionActive = true;\n }\n },\n },\n },\n\n methods: {\n transitionComplete () {\n if (this.state === DEFAULT_FEED_ROW_STATE) {\n this.transitionActive = false;\n }\n },\n\n trapFocus (e) {\n this.focusTrappedTabPress(e);\n },\n\n setFocus (bool) {\n this.$emit('focus', bool);\n },\n\n setHover (bool) {\n this.$emit('hover', bool);\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createBlock","_mergeProps","_toHandlers","_createElementBlock","_renderSlot","_createVNode","_createSlots","_withCtx","_createCommentVNode","_withDirectives","_createElementVNode","_toDisplayString"],"mappings":"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"}
|
|
@@ -113,9 +113,18 @@ const _hoisted_2 = {
|
|
|
113
113
|
key: 0,
|
|
114
114
|
class: "d-recipe-contact-info__avatars"
|
|
115
115
|
};
|
|
116
|
-
const _hoisted_3 = {
|
|
117
|
-
|
|
118
|
-
|
|
116
|
+
const _hoisted_3 = {
|
|
117
|
+
class: "d-recipe-contact-info__header",
|
|
118
|
+
"data-qa": "contact-info-header"
|
|
119
|
+
};
|
|
120
|
+
const _hoisted_4 = {
|
|
121
|
+
class: "d-recipe-contact-info__subtitle",
|
|
122
|
+
"data-qa": "contact-info-subtitle"
|
|
123
|
+
};
|
|
124
|
+
const _hoisted_5 = {
|
|
125
|
+
class: "d-recipe-contact-info__bottom",
|
|
126
|
+
"data-qa": "contact-info-bottom"
|
|
127
|
+
};
|
|
119
128
|
const _hoisted_6 = { "data-qa": "contact-info-right" };
|
|
120
129
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
121
130
|
const _component_dt_avatar = vue.resolveComponent("dt-avatar");
|
|
@@ -123,7 +132,10 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
123
132
|
return vue.openBlock(), vue.createBlock(_component_dt_item_layout, {
|
|
124
133
|
role: $props.role,
|
|
125
134
|
"data-qa": "contact-info",
|
|
126
|
-
class: "d-recipe-contact-info"
|
|
135
|
+
class: "d-recipe-contact-info",
|
|
136
|
+
"content-class": "d-recipe-contact-info__content",
|
|
137
|
+
"right-class": "d-recipe-contact-info__right",
|
|
138
|
+
unstyled: ""
|
|
127
139
|
}, vue.createSlots({
|
|
128
140
|
default: vue.withCtx(() => [
|
|
129
141
|
vue.createElementVNode("div", _hoisted_3, [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact_info.vue.cjs","sources":["../../../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"d-recipe-contact-info\"\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"d-recipe-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"d-recipe-contact-info__avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[\n {\n 'd-recipe-contact-info__avatar-stacked': index > 0,\n 'd-recipe-contact-info__avatar-halo': !!avatar.halo,\n },\n ]\"\n >\n <template
|
|
1
|
+
{"version":3,"file":"contact_info.vue.cjs","sources":["../../../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"d-recipe-contact-info\"\n content-class=\"d-recipe-contact-info__content\"\n right-class=\"d-recipe-contact-info__right\"\n unstyled\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"d-recipe-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"d-recipe-contact-info__avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[\n {\n 'd-recipe-contact-info__avatar-stacked': index > 0,\n 'd-recipe-contact-info__avatar-halo': !!avatar.halo,\n },\n ]\"\n >\n <template #icon=\"{ iconSize }\">\n <!-- @slot Slot for avatar icon in a list -->\n <slot\n name=\"avatarIcon\"\n :icon-size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"avatar.icon\"\n #overlayIcon\n >\n <component :is=\"avatar.icon\" />\n </template>\n </dt-avatar>\n </span>\n <dt-avatar\n v-else\n :size=\"avatarSize\"\n :full-name=\"avatarFullName\"\n :image-src=\"avatarSrc\"\n image-alt=\"\"\n :seed=\"avatarSeed\"\n :color=\"avatarColor\"\n :presence=\"presence\"\n >\n <template #icon=\"{ iconSize }\">\n <!-- @slot Slot for avatar icon in a list -->\n <slot\n name=\"avatarIcon\"\n :icon-size=\"iconSize\"\n />\n </template>\n </dt-avatar>\n </button>\n </template>\n <template #default>\n <div\n class=\"d-recipe-contact-info__header\"\n data-qa=\"contact-info-header\"\n >\n <!-- @slot Slot for header information -->\n <slot name=\"header\" />\n </div>\n </template>\n\n <template #subtitle>\n <div\n class=\"d-recipe-contact-info__subtitle\"\n data-qa=\"contact-info-subtitle\"\n >\n <!-- @slot Slot for subtitle information -->\n <slot name=\"subtitle\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div\n class=\"d-recipe-contact-info__bottom\"\n data-qa=\"contact-info-bottom\"\n >\n <!-- @slot Slot for information at the bottom -->\n <slot name=\"bottom\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div data-qa=\"contact-info-right\">\n <!-- @slot Slot for the right content -->\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n</template>\n\n<script>\nimport DtItemLayout from '@/components/item_layout/item_layout.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeContactInfo',\n\n components: {\n DtAvatar,\n DtItemLayout,\n },\n\n /* inheritAttrs: false is generally an option we want to set on library\n components. This allows any attributes passed in that are not recognized\n as props to be passed down to another element or component using v-bind:$attrs\n more info: https://vuejs.org/v2/api/#inheritAttrs */\n // inheritAttrs: false,\n\n props: {\n /**\n * String to use for the item's role.\n */\n role: {\n type: String,\n default: '',\n },\n\n /**\n * Display avatar if `showAvatar` property is true.\n */\n showAvatar: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Optional avatar image url.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar's full name, used to extract initials\n * to display in avatar if `avatarSrc` and `avatarIcon` are empty.\n */\n avatarFullName: {\n type: String,\n default: '',\n },\n\n /**\n * The size of the avatar\n * @values xs, sm, md, lg, xl\n */\n avatarSize: {\n type: String,\n default: 'lg',\n },\n\n /**\n * The aria-labelledby of the button containing avatars\n */\n avatarLabelledBy: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * @values null, busy, away, offline, active\n */\n presence: {\n type: String,\n default: null,\n },\n\n /**\n * Showing multiple avatars in contact info.\n * The props of array items are: <br>\n * `src` - avatar image url (optional) <br>\n * `fullName` - full name, used to extract initials to display in avatar<br>\n * if `avatarSrc` and `avatarIcon` are empty<br>\n * `seed` - determines uniqueness of avatar background <br>\n * `text` - text that overlays the avatar (optional) <br>\n * `icon` - icon that overlays the avatar (optional) <br>\n * `halo` - halo highlight around the avatar. boolean true/false\n */\n avatarList: {\n type: Array,\n default: null,\n },\n },\n\n emits: ['avatar-click'],\n\n methods: {\n avatarClick () {\n this.$emit('avatar-click');\n },\n },\n};\n</script>\n"],"names":["DtAvatar","DtItemLayout","_createBlock","_createSlots","_createElementVNode","_renderSlot","_withCtx","_openBlock","_createElementBlock","_Fragment","_renderList","avatar","_resolveDynamicComponent"],"mappings":"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"}
|
|
@@ -111,9 +111,18 @@ const _hoisted_2 = {
|
|
|
111
111
|
key: 0,
|
|
112
112
|
class: "d-recipe-contact-info__avatars"
|
|
113
113
|
};
|
|
114
|
-
const _hoisted_3 = {
|
|
115
|
-
|
|
116
|
-
|
|
114
|
+
const _hoisted_3 = {
|
|
115
|
+
class: "d-recipe-contact-info__header",
|
|
116
|
+
"data-qa": "contact-info-header"
|
|
117
|
+
};
|
|
118
|
+
const _hoisted_4 = {
|
|
119
|
+
class: "d-recipe-contact-info__subtitle",
|
|
120
|
+
"data-qa": "contact-info-subtitle"
|
|
121
|
+
};
|
|
122
|
+
const _hoisted_5 = {
|
|
123
|
+
class: "d-recipe-contact-info__bottom",
|
|
124
|
+
"data-qa": "contact-info-bottom"
|
|
125
|
+
};
|
|
117
126
|
const _hoisted_6 = { "data-qa": "contact-info-right" };
|
|
118
127
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
119
128
|
const _component_dt_avatar = resolveComponent("dt-avatar");
|
|
@@ -121,7 +130,10 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
121
130
|
return openBlock(), createBlock(_component_dt_item_layout, {
|
|
122
131
|
role: $props.role,
|
|
123
132
|
"data-qa": "contact-info",
|
|
124
|
-
class: "d-recipe-contact-info"
|
|
133
|
+
class: "d-recipe-contact-info",
|
|
134
|
+
"content-class": "d-recipe-contact-info__content",
|
|
135
|
+
"right-class": "d-recipe-contact-info__right",
|
|
136
|
+
unstyled: ""
|
|
125
137
|
}, createSlots({
|
|
126
138
|
default: withCtx(() => [
|
|
127
139
|
createElementVNode("div", _hoisted_3, [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact_info.vue.js","sources":["../../../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"d-recipe-contact-info\"\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"d-recipe-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"d-recipe-contact-info__avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[\n {\n 'd-recipe-contact-info__avatar-stacked': index > 0,\n 'd-recipe-contact-info__avatar-halo': !!avatar.halo,\n },\n ]\"\n >\n <template
|
|
1
|
+
{"version":3,"file":"contact_info.vue.js","sources":["../../../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"d-recipe-contact-info\"\n content-class=\"d-recipe-contact-info__content\"\n right-class=\"d-recipe-contact-info__right\"\n unstyled\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"d-recipe-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"d-recipe-contact-info__avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[\n {\n 'd-recipe-contact-info__avatar-stacked': index > 0,\n 'd-recipe-contact-info__avatar-halo': !!avatar.halo,\n },\n ]\"\n >\n <template #icon=\"{ iconSize }\">\n <!-- @slot Slot for avatar icon in a list -->\n <slot\n name=\"avatarIcon\"\n :icon-size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"avatar.icon\"\n #overlayIcon\n >\n <component :is=\"avatar.icon\" />\n </template>\n </dt-avatar>\n </span>\n <dt-avatar\n v-else\n :size=\"avatarSize\"\n :full-name=\"avatarFullName\"\n :image-src=\"avatarSrc\"\n image-alt=\"\"\n :seed=\"avatarSeed\"\n :color=\"avatarColor\"\n :presence=\"presence\"\n >\n <template #icon=\"{ iconSize }\">\n <!-- @slot Slot for avatar icon in a list -->\n <slot\n name=\"avatarIcon\"\n :icon-size=\"iconSize\"\n />\n </template>\n </dt-avatar>\n </button>\n </template>\n <template #default>\n <div\n class=\"d-recipe-contact-info__header\"\n data-qa=\"contact-info-header\"\n >\n <!-- @slot Slot for header information -->\n <slot name=\"header\" />\n </div>\n </template>\n\n <template #subtitle>\n <div\n class=\"d-recipe-contact-info__subtitle\"\n data-qa=\"contact-info-subtitle\"\n >\n <!-- @slot Slot for subtitle information -->\n <slot name=\"subtitle\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div\n class=\"d-recipe-contact-info__bottom\"\n data-qa=\"contact-info-bottom\"\n >\n <!-- @slot Slot for information at the bottom -->\n <slot name=\"bottom\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div data-qa=\"contact-info-right\">\n <!-- @slot Slot for the right content -->\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n</template>\n\n<script>\nimport DtItemLayout from '@/components/item_layout/item_layout.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeContactInfo',\n\n components: {\n DtAvatar,\n DtItemLayout,\n },\n\n /* inheritAttrs: false is generally an option we want to set on library\n components. This allows any attributes passed in that are not recognized\n as props to be passed down to another element or component using v-bind:$attrs\n more info: https://vuejs.org/v2/api/#inheritAttrs */\n // inheritAttrs: false,\n\n props: {\n /**\n * String to use for the item's role.\n */\n role: {\n type: String,\n default: '',\n },\n\n /**\n * Display avatar if `showAvatar` property is true.\n */\n showAvatar: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Optional avatar image url.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar's full name, used to extract initials\n * to display in avatar if `avatarSrc` and `avatarIcon` are empty.\n */\n avatarFullName: {\n type: String,\n default: '',\n },\n\n /**\n * The size of the avatar\n * @values xs, sm, md, lg, xl\n */\n avatarSize: {\n type: String,\n default: 'lg',\n },\n\n /**\n * The aria-labelledby of the button containing avatars\n */\n avatarLabelledBy: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * @values null, busy, away, offline, active\n */\n presence: {\n type: String,\n default: null,\n },\n\n /**\n * Showing multiple avatars in contact info.\n * The props of array items are: <br>\n * `src` - avatar image url (optional) <br>\n * `fullName` - full name, used to extract initials to display in avatar<br>\n * if `avatarSrc` and `avatarIcon` are empty<br>\n * `seed` - determines uniqueness of avatar background <br>\n * `text` - text that overlays the avatar (optional) <br>\n * `icon` - icon that overlays the avatar (optional) <br>\n * `halo` - halo highlight around the avatar. boolean true/false\n */\n avatarList: {\n type: Array,\n default: null,\n },\n },\n\n emits: ['avatar-click'],\n\n methods: {\n avatarClick () {\n this.$emit('avatar-click');\n },\n },\n};\n</script>\n"],"names":["_createBlock","_createSlots","_createElementVNode","_renderSlot","_withCtx","_openBlock","_createElementBlock","_Fragment","_renderList","_resolveDynamicComponent"],"mappings":"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"}
|
|
@@ -8,7 +8,36 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
8
8
|
type: BooleanConstructor;
|
|
9
9
|
default: boolean;
|
|
10
10
|
};
|
|
11
|
+
leftClass: {
|
|
12
|
+
type: StringConstructor;
|
|
13
|
+
default: string;
|
|
14
|
+
};
|
|
15
|
+
contentClass: {
|
|
16
|
+
type: StringConstructor;
|
|
17
|
+
default: string;
|
|
18
|
+
};
|
|
19
|
+
titleClass: {
|
|
20
|
+
type: StringConstructor;
|
|
21
|
+
default: string;
|
|
22
|
+
};
|
|
23
|
+
subtitleClass: {
|
|
24
|
+
type: StringConstructor;
|
|
25
|
+
default: string;
|
|
26
|
+
};
|
|
27
|
+
bottomClass: {
|
|
28
|
+
type: StringConstructor;
|
|
29
|
+
default: string;
|
|
30
|
+
};
|
|
31
|
+
rightClass: {
|
|
32
|
+
type: StringConstructor;
|
|
33
|
+
default: string;
|
|
34
|
+
};
|
|
35
|
+
selectedClass: {
|
|
36
|
+
type: StringConstructor;
|
|
37
|
+
default: string;
|
|
38
|
+
};
|
|
11
39
|
}, any, any, {}, {
|
|
40
|
+
dynamicGridTemplateColumns(): string;
|
|
12
41
|
hasSlotContent: typeof hasSlotContent;
|
|
13
42
|
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
14
43
|
as: {
|
|
@@ -19,9 +48,44 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
19
48
|
type: BooleanConstructor;
|
|
20
49
|
default: boolean;
|
|
21
50
|
};
|
|
51
|
+
leftClass: {
|
|
52
|
+
type: StringConstructor;
|
|
53
|
+
default: string;
|
|
54
|
+
};
|
|
55
|
+
contentClass: {
|
|
56
|
+
type: StringConstructor;
|
|
57
|
+
default: string;
|
|
58
|
+
};
|
|
59
|
+
titleClass: {
|
|
60
|
+
type: StringConstructor;
|
|
61
|
+
default: string;
|
|
62
|
+
};
|
|
63
|
+
subtitleClass: {
|
|
64
|
+
type: StringConstructor;
|
|
65
|
+
default: string;
|
|
66
|
+
};
|
|
67
|
+
bottomClass: {
|
|
68
|
+
type: StringConstructor;
|
|
69
|
+
default: string;
|
|
70
|
+
};
|
|
71
|
+
rightClass: {
|
|
72
|
+
type: StringConstructor;
|
|
73
|
+
default: string;
|
|
74
|
+
};
|
|
75
|
+
selectedClass: {
|
|
76
|
+
type: StringConstructor;
|
|
77
|
+
default: string;
|
|
78
|
+
};
|
|
22
79
|
}>>, {
|
|
80
|
+
contentClass: string;
|
|
23
81
|
as: string;
|
|
24
82
|
unstyled: boolean;
|
|
83
|
+
leftClass: string;
|
|
84
|
+
titleClass: string;
|
|
85
|
+
subtitleClass: string;
|
|
86
|
+
bottomClass: string;
|
|
87
|
+
rightClass: string;
|
|
88
|
+
selectedClass: string;
|
|
25
89
|
}, {}>;
|
|
26
90
|
export default _default;
|
|
27
91
|
//# sourceMappingURL=item_layout.vue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item_layout.vue.d.ts","sourceRoot":"","sources":["../../../../components/item_layout/item_layout.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"item_layout.vue.d.ts","sourceRoot":"","sources":["../../../../components/item_layout/item_layout.vue"],"names":[],"mappings":"AAuEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA4K+B,gBAAgB"}
|