@anggiedimasta/ui
Version:
A modern, accessible Vue 3 UI component library with comprehensive documentation, testing, and design system built with Tailwind CSS
2 lines (1 loc) • 2.61 kB
JavaScript
(function(i,a){typeof exports=="object"&&typeof module<"u"?a(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],a):(i=typeof globalThis<"u"?globalThis:i||self,a(i["anggiedimasta-ui"]={},i.Vue))})(this,function(i,a){"use strict";function v(t){var n,e,r="";if(typeof t=="string"||typeof t=="number")r+=t;else if(typeof t=="object")if(Array.isArray(t)){var s=t.length;for(n=0;n<s;n++)t[n]&&(e=v(t[n]))&&(r&&(r+=" "),r+=e)}else for(e in t)t[e]&&(r&&(r+=" "),r+=e);return r}function h(){for(var t,n,e=0,r="",s=arguments.length;e<s;e++)(t=arguments[e])&&(n=v(t))&&(r&&(r+=" "),r+=n);return r}const m=t=>typeof t=="boolean"?`${t}`:t===0?"0":t,y=h,x=((t,n)=>e=>{var r;if(n?.variants==null)return y(t,e?.class,e?.className);const{variants:s,defaultVariants:u}=n,C=Object.keys(s).map(o=>{const d=e?.[o],c=u?.[o];if(d===null)return null;const l=m(d)||m(c);return s[o][l]}),b=e&&Object.entries(e).reduce((o,d)=>{let[c,l]=d;return l===void 0||(o[c]=l),o},{}),V=n==null||(r=n.compoundVariants)===null||r===void 0?void 0:r.reduce((o,d)=>{let{class:c,className:l,...w}=d;return Object.entries(w).every(j=>{let[g,f]=j;return Array.isArray(f)?f.includes({...u,...b}[g]):{...u,...b}[g]===f})?[...o,c,l]:o},[]);return y(t,C,V,e?.class,e?.className)})("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),p=a.defineComponent({__name:"button",props:{as:{default:"button"},class:{default:""},variant:{default:"default"},size:{default:"default"}},setup(t){const n=t,e=x({variant:n.variant,size:n.size,class:n.class});return(r,s)=>(a.openBlock(),a.createBlock(a.resolveDynamicComponent(r.as),{class:a.normalizeClass(a.unref(e))},{default:a.withCtx(()=>[a.renderSlot(r.$slots,"default")]),_:3},8,["class"]))}});i.Button=p,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});