@vue-interface/btn-group
Version:
A Vue button group component.
2 lines (1 loc) • 1.81 kB
JavaScript
(function(o,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(o=typeof globalThis<"u"?globalThis:o||self,e(o.BtnGroup={},o.Vue))})(this,function(o,e){"use strict";const a=e.defineComponent({props:{componentPrefix:String,size:String,sizePrefix:String},computed:{sizeableClassPrefix(){return this.sizePrefix||this.componentPrefix},hasSizeablePrefix(){return this.size===void 0?!1:!!this.size.match(new RegExp(`^${this.sizeableClassPrefix}`))},sizeableClass(){return this.size?!this.sizeableClassPrefix||this.hasSizeablePrefix?this.size:`${this.sizeableClassPrefix}-${this.size}`:""}}}),c=e.defineComponent({name:"BtnGroup",mixins:[a],props:{sizePrefix:{type:String,default(){return"btn-group"}},toggle:Boolean,vertical:Boolean},computed:{classes(){return{"btn-group":!this.vertical,"btn-group-toggle":this.toggle,"btn-group-vertical":this.vertical,[this.sizeableClass]:!!this.size}}}}),i=(t,s)=>{const n=t.__vccOpts||t;for(const[r,l]of s)n[r]=l;return n},p=["data-toggle"];function f(t,s,n,r,l,B){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.classes),"data-toggle":t.toggle?"buttons":!1,role:"group"},[e.renderSlot(t.$slots,"default")],10,p)}const d=i(c,[["render",f]]),u=e.defineComponent({name:"BtnGroupToggle"}),g={class:"btn-group-toggle","data-toggle":"buttons"};function h(t,s,n,r,l,B){return e.openBlock(),e.createElementBlock("div",g,[e.renderSlot(t.$slots,"default")])}const _=i(u,[["render",h]]),b={},m={class:"btn-toolbar",role:"toolbar"};function $(t,s){return e.openBlock(),e.createElementBlock("div",m,[e.renderSlot(t.$slots,"default")])}const z=i(b,[["render",$]]);o.BtnGroup=d,o.BtnGroupToggle=_,o.BtnToolbar=z,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});