@dialpad/dialtone-vue
Version:
Vue component library for Dialpad's design system Dialtone
1 lines • 9.15 kB
Source Map (JSON)
{"version":3,"file":"message-input-topbar.cjs","sources":["../../../recipes/conversation_view/message_input/message_input_topbar.vue"],"sourcesContent":["<template>\n <dt-stack\n direction=\"row\"\n gap=\"200\"\n class=\"d-recipe-message-input__button-stack\"\n >\n <dt-recipe-message-input-button\n :aria-label=\"boldButtonLabel['aria-label']\"\n :tooltip-text=\"boldButtonLabel['tooltip-text']\"\n :keyboard-shortcut-text=\"boldButtonOptions.keyboardShortcutText\"\n data-qa=\"bold\"\n :is-active=\"isSelectionActive('bold')\"\n @click=\"$emit('click', 'bold', $event)\"\n >\n <template #icon>\n <dt-icon-bold\n class=\"d-recipe-message-input__button-stack-icon\"\n size=\"200\"\n />\n </template>\n </dt-recipe-message-input-button>\n <dt-recipe-message-input-button\n :aria-label=\"italicButtonLabel['aria-label']\"\n :tooltip-text=\"italicButtonLabel['tooltip-text']\"\n :keyboard-shortcut-text=\"italicButtonOptions.keyboardShortcutText\"\n data-qa=\"italic\"\n :is-active=\"isSelectionActive('italic')\"\n @click=\"$emit('click', 'italic', $event)\"\n >\n <template #icon>\n <dt-icon-italic\n class=\"d-recipe-message-input__button-stack-icon\"\n size=\"200\"\n />\n </template>\n </dt-recipe-message-input-button>\n <dt-recipe-message-input-button\n :aria-label=\"strikeButtonLabel['aria-label']\"\n :tooltip-text=\"strikeButtonLabel['tooltip-text']\"\n :keyboard-shortcut-text=\"strikeButtonOptions.keyboardShortcutText\"\n data-qa=\"strikethrough\"\n :is-active=\"isSelectionActive('strike')\"\n @click=\"$emit('click', 'strike', $event)\"\n >\n <template #icon>\n <dt-icon-strikethrough\n class=\"d-recipe-message-input__button-stack-icon\"\n size=\"200\"\n />\n </template>\n </dt-recipe-message-input-button>\n <div class=\"d-recipe-message-input--button-group-divider\" />\n\n <!-- @slot special slot for link button, since links require a custom dialog -->\n <slot name=\"link\" />\n\n <div class=\"d-recipe-message-input--button-group-divider\" />\n\n <dt-recipe-message-input-button\n :aria-label=\"bulletListButtonLabel['aria-label']\"\n :tooltip-text=\"bulletListButtonLabel['tooltip-text']\"\n :keyboard-shortcut-text=\"bulletListButtonOptions.keyboardShortcutText\"\n data-qa=\"bullet-list\"\n :is-active=\"isSelectionActive('bulletList')\"\n @click=\"$emit('click', 'bulletList', $event)\"\n >\n <template #icon>\n <dt-icon-list-bullet\n class=\"d-recipe-message-input__button-stack-icon\"\n size=\"200\"\n />\n </template>\n </dt-recipe-message-input-button>\n <dt-recipe-message-input-button\n :aria-label=\"orderedListButtonLabel['aria-label']\"\n :tooltip-text=\"orderedListButtonLabel['tooltip-text']\"\n :keyboard-shortcut-text=\"orderedListButtonOptions.keyboardShortcutText\"\n data-qa=\"ordered-list\"\n :is-active=\"isSelectionActive('orderedList')\"\n @click=\"$emit('click', 'orderedList', $event)\"\n >\n <template #icon>\n <dt-icon-list-ordered\n class=\"d-recipe-message-input__button-stack-icon\"\n size=\"200\"\n />\n </template>\n </dt-recipe-message-input-button>\n <div class=\"d-recipe-message-input--button-group-divider\" />\n\n <dt-recipe-message-input-button\n :aria-label=\"blockQuoteButtonLabel['aria-label']\"\n :tooltip-text=\"blockQuoteButtonLabel['tooltip-text']\"\n :keyboard-shortcut-text=\"blockQuoteButtonOptions.keyboardShortcutText\"\n data-qa=\"blockquote\"\n :is-active=\"isSelectionActive('blockquote')\"\n @click=\"$emit('click', 'blockquote', $event)\"\n >\n <template #icon>\n <dt-icon-quote\n class=\"d-recipe-message-input__button-stack-icon\"\n size=\"200\"\n />\n </template>\n </dt-recipe-message-input-button>\n\n <div class=\"d-recipe-message-input--button-group-divider\" />\n\n <dt-recipe-message-input-button\n :aria-label=\"codeButtonLabel['aria-label']\"\n :tooltip-text=\"codeButtonLabel['tooltip-text']\"\n :keyboard-shortcut-text=\"codeButtonOptions.keyboardShortcutText\"\n data-qa=\"code\"\n :is-active=\"isSelectionActive('code')\"\n @click=\"$emit('click', 'code', $event)\"\n >\n <template #icon>\n <dt-icon-code\n class=\"d-recipe-message-input__button-stack-icon\"\n size=\"200\"\n />\n </template>\n </dt-recipe-message-input-button>\n <dt-recipe-message-input-button\n :aria-label=\"codeBlockButtonLabel['aria-label']\"\n :tooltip-text=\"codeBlockButtonLabel['tooltip-text']\"\n :keyboard-shortcut-text=\"codeBlockButtonOptions.keyboardShortcutText\"\n data-qa=\"code-block\"\n :is-active=\"isSelectionActive('codeBlock')\"\n @click=\"$emit('click', 'codeBlock', $event)\"\n >\n <template #icon>\n <dt-icon-code-block\n class=\"d-recipe-message-input__button-stack-icon\"\n size=\"200\"\n />\n </template>\n </dt-recipe-message-input-button>\n </dt-stack>\n</template>\n\n<script>\nimport { DtStack } from '@/components/stack';\nimport {\n DtIconListBullet,\n DtIconBold,\n DtIconItalic,\n DtIconStrikethrough,\n DtIconListOrdered,\n DtIconQuote,\n DtIconCode,\n DtIconCodeBlock,\n} from '@dialpad/dialtone-icons/vue2';\nimport DtRecipeMessageInputButton from './message_input_button.vue';\nimport { DialtoneLocalization } from '@/localization';\n\nexport default {\n name: 'DtRecipeMessageInputTopbar',\n components: {\n DtStack,\n DtIconListBullet,\n DtIconBold,\n DtIconItalic,\n DtIconStrikethrough,\n DtIconListOrdered,\n DtIconQuote,\n DtIconCode,\n DtIconCodeBlock,\n DtRecipeMessageInputButton,\n },\n\n props: {\n boldButtonOptions: {\n type: Object,\n default: () => ({}),\n },\n\n italicButtonOptions: {\n type: Object,\n default: () => ({}),\n },\n\n strikeButtonOptions: {\n type: Object,\n default: () => ({}),\n },\n\n bulletListButtonOptions: {\n type: Object,\n default: () => ({}),\n },\n\n orderedListButtonOptions: {\n type: Object,\n default: () => ({}),\n },\n\n blockQuoteButtonOptions: {\n type: Object,\n default: () => ({}),\n },\n\n codeButtonOptions: {\n type: Object,\n default: () => ({}),\n },\n\n codeBlockButtonOptions: {\n type: Object,\n default: () => ({}),\n },\n\n isSelectionActive: {\n type: Function,\n default: () => {},\n },\n },\n\n emits: ['click'],\n\n data () {\n return {\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n boldButtonLabel () { return this.i18n.$ta('DIALTONE_MESSAGE_INPUT_BOLD_BUTTON_LABEL'); },\n italicButtonLabel () { return this.i18n.$ta('DIALTONE_MESSAGE_INPUT_ITALIC_BUTTON_LABEL'); },\n strikeButtonLabel () { return this.i18n.$ta('DIALTONE_MESSAGE_INPUT_STRIKETHROUGH_BUTTON_LABEL'); },\n bulletListButtonLabel () { return this.i18n.$ta('DIALTONE_MESSAGE_INPUT_BULLET_LIST_BUTTON_LABEL'); },\n orderedListButtonLabel () { return this.i18n.$ta('DIALTONE_MESSAGE_INPUT_ORDERED_LIST_BUTTON_LABEL'); },\n blockQuoteButtonLabel () { return this.i18n.$ta('DIALTONE_MESSAGE_INPUT_BLOCK_QUOTE_BUTTON_LABEL'); },\n codeButtonLabel () { return this.i18n.$ta('DIALTONE_MESSAGE_INPUT_CODE_BUTTON_LABEL'); },\n codeBlockButtonLabel () { return this.i18n.$ta('DIALTONE_MESSAGE_INPUT_CODE_BLOCK_BUTTON_LABEL'); },\n },\n};\n</script>\n"],"names":["_sfc_main","DtStack","DtIconListBullet","DtIconBold","DtIconItalic","DtIconStrikethrough","DtIconListOrdered","DtIconQuote","DtIconCode","DtIconCodeBlock","DtRecipeMessageInputButton","DialtoneLocalization"],"mappings":"sUA4JAA,EAAA,CACA,KAAA,6BACA,WAAA,CACA,QAAAC,EAAAA,QACA,iBAAAC,EAAAA,iBACA,WAAAC,EAAAA,WACA,aAAAC,EAAAA,aACA,oBAAAC,EAAAA,oBACA,kBAAAC,EAAAA,kBACA,YAAAC,EAAAA,YACA,WAAAC,EAAAA,WACA,gBAAAC,EAAAA,gBACA,2BAAAC,EAAAA,OACA,EAEA,MAAA,CACA,kBAAA,CACA,KAAA,OACA,QAAA,KAAA,CAAA,EACA,EAEA,oBAAA,CACA,KAAA,OACA,QAAA,KAAA,CAAA,EACA,EAEA,oBAAA,CACA,KAAA,OACA,QAAA,KAAA,CAAA,EACA,EAEA,wBAAA,CACA,KAAA,OACA,QAAA,KAAA,CAAA,EACA,EAEA,yBAAA,CACA,KAAA,OACA,QAAA,KAAA,CAAA,EACA,EAEA,wBAAA,CACA,KAAA,OACA,QAAA,KAAA,CAAA,EACA,EAEA,kBAAA,CACA,KAAA,OACA,QAAA,KAAA,CAAA,EACA,EAEA,uBAAA,CACA,KAAA,OACA,QAAA,KAAA,CAAA,EACA,EAEA,kBAAA,CACA,KAAA,SACA,QAAA,IAAA,CAAA,CACA,CACA,EAEA,MAAA,CAAA,OAAA,EAEA,MAAA,CACA,MAAA,CACA,KAAA,IAAAC,EAAAA,oBACA,CACA,EAEA,SAAA,CACA,iBAAA,CAAA,OAAA,KAAA,KAAA,IAAA,0CAAA,CAAA,EACA,mBAAA,CAAA,OAAA,KAAA,KAAA,IAAA,4CAAA,CAAA,EACA,mBAAA,CAAA,OAAA,KAAA,KAAA,IAAA,mDAAA,CAAA,EACA,uBAAA,CAAA,OAAA,KAAA,KAAA,IAAA,iDAAA,CAAA,EACA,wBAAA,CAAA,OAAA,KAAA,KAAA,IAAA,kDAAA,CAAA,EACA,uBAAA,CAAA,OAAA,KAAA,KAAA,IAAA,iDAAA,CAAA,EACA,iBAAA,CAAA,OAAA,KAAA,KAAA,IAAA,0CAAA,CAAA,EACA,sBAAA,CAAA,OAAA,KAAA,KAAA,IAAA,gDAAA,CAAA,CACA,CACA"}