@dialpad/dialtone
Version:
Dialpad's Dialtone design system monorepo
3 lines (2 loc) • 4.29 kB
JavaScript
;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("@dialpad/dialtone-icons/vue2"),n=require("../../common/utils/index.cjs"),r=require("../../localization/index.cjs"),a=require("../../_plugin-vue2_normalizer-e_CkxkSV.cjs"),i=require("../callbar-button/callbar-button-constants.cjs"),s=require("../button/button.cjs"),p=require("../popover/popover.cjs"),u=require("../callbar-button/callbar-button.cjs"),c={name:"DtRecipeCallbarButtonWithPopover",components:{DtRecipeCallbarButton:u.default,DtPopover:p.default,DtButton:s.default,DtIconChevronUp:l.DtIconChevronUp},inheritAttrs:!1,props:{id:{type:String,default(){return n.default.getUniqueString()}},ariaLabel:{type:String,default:null,validator:e=>e||(void 0).$slots.default},placement:{type:String,default:"top"},offset:{type:Array,default:()=>[0,16]},initialFocusElement:{type:String,default:"first"},showCloseButton:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},forceShowArrow:{type:Boolean,default:!1},active:{type:Boolean,default:!1},danger:{type:Boolean,default:!1},buttonClass:{type:[String,Array,Object],default:""},textClass:{type:[String,Array,Object],default:""},buttonWidthSize:{type:String,default:"xl",validator:e=>i.CALLBAR_BUTTON_VALID_WIDTH_SIZE.includes(e)},contentClass:{type:[String,Array,Object],default:""},openPopover:{type:Boolean,default:!1},invertedTooltip:{type:Boolean,default:!1},showTooltip:{type:Boolean,default:null},tooltipText:{type:String,default:void 0},tooltipDelay:{type:Boolean,default:void 0}},emits:["arrow-click","click","opened"],data(){return{open:!1,i18n:new r.DialtoneLocalization}},computed:{showArrowButton(){return this.forceShowArrow||!this.disabled},isCompactMode(){return this.buttonWidthSize==="sm"||this.buttonWidthSize==="md"},showPopover(){return!this.openPopover||this.open?(this.syncOpenState(),!1):this.toggleOpen()},arrowButtonLabel(){return this.i18n.$t("DIALTONE_CALLBAR_BUTTON_WITH_POPOVER_ARROW_BUTTON_ARIA_LABEL")}},mounted(){n.warnIfUnmounted(this.$el,this.$options.name)},methods:{arrowClick(e){return this.$emit("arrow-click",e),this.toggleOpen()},toggleOpen(){return this.open=!this.open},syncOpenState(){this.open=this.openPopover},buttonClick(e){this.$listeners.click?this.$emit("click",e):this.arrowClick(e)},onModalIsOpened(e){this.open=e,this.$emit("opened",e)}}};var d=function(){var t=this,o=t._self._c;return o("div",{staticClass:"d-recipe-callbar-button-with-popover"},[o("dt-recipe-callbar-button",{staticClass:"d-recipe-callbar-button-with-popover--main-button",attrs:{"aria-label":t.ariaLabel,disabled:t.disabled,active:t.active,danger:t.danger,"button-class":t.buttonClass,"button-width-size":t.buttonWidthSize,"text-class":t.textClass,"inverted-tooltip":t.invertedTooltip,"show-tooltip":t.showTooltip,"tooltip-text":t.tooltipText,"tooltip-delay":t.tooltipDelay},on:{click:t.buttonClick}},[t._t("icon",null,{slot:"icon"}),t._t("tooltip",null,{slot:"tooltip"}),t._t("default")],2),t.showArrowButton?o("dt-popover",t._b({staticClass:"d-recipe-callbar-button-with-popover__popover-wrapper",attrs:{id:t.id,modal:!1,open:t.open,placement:t.placement,"initial-focus-element":t.initialFocusElement,"show-close-button":t.showCloseButton,offset:t.offset,padding:"none","dialog-class":["d-recipe-callbar-button-with-popover__popover",t.contentClass],"open-popover":t.showPopover},on:{opened:t.onModalIsOpened},scopedSlots:t._u([{key:"anchor",fn:function(){return[o("dt-button",{class:["d-recipe-callbar-button-with-popover__arrow",{"d-recipe-callbar-button-with-popover__arrow--large":!t.isCompactMode}],attrs:{active:t.open,circle:!0,importance:"clear",size:"lg","aria-label":t.arrowButtonLabel,title:t.arrowButtonLabel,width:"2rem"},on:{click:t.arrowClick},scopedSlots:t._u([{key:"icon",fn:function(){return[o("dt-icon-chevron-up",{staticClass:"d-recipe-callbar-button-with-popover__arrow-icon",attrs:{size:"200"}})]},proxy:!0}],null,!1,778999832)})]},proxy:!0}],null,!1,2571181550)},"dt-popover",t.$attrs,!1),[t._t("content",null,{slot:"content"}),t._t("headerContent",null,{slot:"headerContent"}),t._t("footerContent",null,{slot:"footerContent"})],2):t._e()],1)},f=[],_=a.n(c,d,f);const b=_.exports;exports.default=b;
//# sourceMappingURL=callbar-button-with-popover.cjs.map