@visitscotland/component-library
Version:
VisitScotland Component Library
1 lines • 3.29 kB
JavaScript
(self.webpackChunk_visitscotland_component_library=self.webpackChunk_visitscotland_component_library||[]).push([[8836],{62152:function(){},5468:function(t,n,i){"use strict";var e=i(34352),a=i(46422),s=i(98745);n.A={name:"VsButton",status:"prototype",release:"0.0.1",components:{BButton:e.PF,VsIcon:a.default},mixins:[s.default],props:{href:{type:String,default:null},tabindex:{type:String,default:null},variant:{type:String,default:"primary",validator:function(t){return t.match(/(primary|secondary|transparent)/)}},size:{type:String,default:"md",validator:function(t){return t.match(/(sm|md|lg)/)}},animate:{type:Boolean,default:!0},rounded:{type:Boolean,default:!0},icon:{type:String,default:""},iconOnly:{type:Boolean,default:!1},iconPosition:{type:String,default:"left",validator:function(t){return t.match(/(left|right)/)}}},emits:["btnFocus"],data:function(){return{isAnimating:!1}},computed:{buttonClasses:function(){return[{"vs-button--animated":this.animate&&!this.iconOnly,"vs-button--is-animating":this.isAnimating,"vs-button--rounded":this.rounded,"vs-button--icon-only":this.iconOnly,"button-flex":this.icon&&!this.iconOnly,"vs-button--flex-reverse":"right"===this.iconPosition}]},iconClasses:function(){return[{"vs-icon--right":"right"===this.iconPosition,"vs-icon--left":"left"===this.iconPosition}]}},methods:{animateHandler:function(t){var n=this;this.isAnimating=!0,setTimeout((function(){n.isAnimating=!1}),1e3),null!==this.href&&(t.preventDefault(),this.trackLink(t))},tabbedIn:function(t){this.$emit("btnFocus",t)},trackLink:function(t){var n;n=this.href.includes("http")?"externalLinkDataEvent":"internalLinkDataEvent",this.createDataLayerObject(n,t,this.href),"#"!==this.href&&null!==this.href&&(window.location.href=this.href)}}}},13576:function(t,n,i){"use strict";i.d(n,{X:function(){return o}});var e=i(20641),a=i(53751),s=i(90033);function o(t,n,i,o,r,u){var l=(0,e.g2)("VsIcon"),c=(0,e.g2)("BButton");return(0,e.uX)(),(0,e.Wv)(c,(0,e.v6)({variant:i.variant,href:i.href||void 0,tabindex:i.tabindex||void 0,class:["vs-button justify-content-center",u.buttonClasses],size:i.size},t.$attrs,{"aria-disabled":!!t.$attrs.disabled,onClick:n[0]||(n[0]=function(t){return u.animateHandler(t)}),onKeyup:(0,a.withKeys)(u.tabbedIn,["tab"])}),{default:(0,e.k6)((function(){return[i.icon?((0,e.uX)(),(0,e.Wv)(l,{key:0,class:(0,s.normalizeClass)(["align-self-center",u.iconClasses]),name:i.icon,size:"xs",padding:0},null,8,["name","class"])):(0,e.Q3)("",!0),(0,e.Lk)("span",{class:(0,s.normalizeClass)(["vs-button__text",{"visually-hidden":i.iconOnly}])},[(0,e.RG)(t.$slots,"default")],2)]})),_:3},16,["variant","href","tabindex","class","size","aria-disabled","onKeyup"])}},69346:function(t,n,i){"use strict";var e=i(85072),a=i.n(e),s=i(97825),o=i.n(s),r=i(77659),u=i.n(r),l=i(55056),c=i.n(l),d=i(10540),f=i.n(d),h=i(41113),v=i.n(h),m=i(62152),b=i.n(m),y={};y.styleTagTransform=v(),y.setAttributes=c(),y.insert=u().bind(null,"head"),y.domAPI=o(),y.insertStyleElement=f(),a()(b(),y),b()&&b().locals&&b().locals},48836:function(t,n,i){"use strict";i.r(n);var e=i(13576),a=i(68176);i(96286);const s=(0,i(66262).A)(a.A,[["render",e.X]]);n.default=s},68176:function(t,n,i){"use strict";i.d(n,{A:function(){return e.A}});var e=i(5468)},96286:function(t,n,i){"use strict";i(69346)}}]);