UNPKG

@dialpad/dialtone

Version:

Dialpad's Dialtone design system monorepo

1 lines 4.21 kB
{"version":3,"file":"notice_action.vue.cjs","sources":["../../../components/notice/notice_action.vue"],"sourcesContent":["<template>\n <div\n class=\"d-notice__actions\"\n data-qa=\"notice-content-actions\"\n >\n <!-- @slot Slot for main content -->\n <slot v-if=\"!hideAction\" />\n <dt-button\n v-if=\"!hideClose\"\n ref=\"closeButton\"\n data-qa=\"dt-notice-action-close-button\"\n size=\"sm\"\n importance=\"clear\"\n circle\n :aria-label=\"closeButtonProps.ariaLabel ? closeButtonProps.ariaLabel : 'Close'\"\n v-bind=\"closeButtonProps\"\n @click=\"close\"\n >\n <template #icon>\n <dt-icon-close\n size=\"200\"\n />\n </template>\n </dt-button>\n <sr-only-close-button\n v-if=\"showVisuallyHiddenClose\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n @close=\"close\"\n />\n </div>\n</template>\n\n<script>\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\nimport SrOnlyCloseButton from '@/common/sr_only_close_button.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtNoticeAction',\n\n components: {\n DtIconClose,\n DtButton,\n SrOnlyCloseButton,\n },\n\n mixins: [SrOnlyCloseButtonMixin],\n\n props: {\n /**\n * Props for the notice close button.\n */\n closeButtonProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Hides the close button from the notice\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the action from the notice\n * @values true, false\n */\n hideAction: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n ],\n\n created () {\n if (!this.hideClose && !this.closeButtonProps.ariaLabel) {\n console.error('Invalid props: you must pass in closeButtonProps.ariaLabel if the close button is displayed.');\n }\n },\n\n mounted () {\n if (!this.hideClose) {\n this.lastFocusedElement = document.activeElement;\n }\n },\n\n beforeUnmount () {\n this.lastFocusedElement?.focus();\n },\n\n methods: {\n close () {\n this.$emit('close');\n },\n },\n};\n</script>\n"],"names":["DtIconClose","DtButton","SrOnlyCloseButton","SrOnlyCloseButtonMixin","_openBlock","_createElementBlock","_renderSlot","_createCommentVNode","_createBlock","_mergeProps","_createVNode"],"mappings":";;;;;;;;AAsCA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,YAAY;AAAA,iBACVA,KAAW;AAAA,IACX,UAAAC,OAAQ;AAAA,IACR,mBAAAC,qBAAiB;AAAA,EAClB;AAAA,EAED,QAAQ,CAACC,uBAAAA,OAAsB;AAAA,EAE/B,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS,OAAO,CAAA;AAAA,IACjB;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAML;AAAA,EACD;AAAA,EAED,UAAW;AACT,QAAI,CAAC,KAAK,aAAa,CAAC,KAAK,iBAAiB,WAAW;AACvD,cAAQ,MAAM,8FAA8F;AAAA,IAC9G;AAAA,EACD;AAAA,EAED,UAAW;AACT,QAAI,CAAC,KAAK,WAAW;AACnB,WAAK,qBAAqB,SAAS;AAAA,IACrC;AAAA,EACD;AAAA,EAED,gBAAiB;;AACf,eAAK,uBAAL,mBAAyB;AAAA,EAC1B;AAAA,EAED,SAAS;AAAA,IACP,QAAS;AACP,WAAK,MAAM,OAAO;AAAA,IACnB;AAAA,EACF;AACH;;EA1GI,OAAM;AAAA,EACN,WAAQ;;;;;;AAFV,SAAAC,cAAA,GAAAC,uBA4BM,OA5BN,YA4BM;AAAA,KAvBS,OAAU,aAAvBC,IAAA,WAA2B,0BAN/B,KAAA,GAAA,IAAAC,IAAA,mBAAA,IAAA,IAAA;AAAA,KAQa,OAAS,aADlBH,IAAAA,aAAAI,IAAAA,YAgBY,sBAhBZC,eAgBY;AAAA,MAvBhB,KAAA;AAAA,MASM,KAAI;AAAA,MACJ,WAAQ;AAAA,MACR,MAAK;AAAA,MACL,YAAW;AAAA,MACX,QAAA;AAAA,MACC,cAAY,OAAgB,iBAAC,YAAY,OAAA,iBAAiB,YAAS;AAAA,OAC5D,OAAgB,kBAAA,EACvB,SAAO,SAAK,MAAA,CAAA,GAAA;AAAA,MAEF,kBACT,MAEE;AAAA,QAFFC,IAAAA,YAEE,0BAAA,EADA,MAAK,MAAK,CAAA;AAAA;MApBpB,GAAA;AAAA,yCAAAH,IAAA,mBAAA,IAAA,IAAA;AAAA,IAyBY,KAAuB,4CAD/BC,IAIE,YAAA,iCAAA;AAAA,MA5BN,KAAA;AAAA,MA0BO,+BAA6B,KAAwB;AAAA,MACrD,SAAO,SAAK;AAAA,+DA3BnBD,IAAA,mBAAA,IAAA,IAAA;AAAA;;;;"}