birdpaper-icon
Version:
基于 Remix icon 生成的 Vue3 图标组件库
2 lines (1 loc) • 1.23 kB
JavaScript
import{defineComponent as p}from"vue";import{computed as i}from"vue";import{createElementVNode as c,normalizeClass as m,normalizeStyle as d,openBlock as f,createElementBlock as v}from"vue";var u=["fill"],k=function(t,e){return f(),v("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",class:m(t.cls),style:d(t.innerStyle),fill:t.fill,onClick:e[0]||(e[0]=(...n)=>t.onClick&&t.onClick(...n))},[...e[1]||(e[1]=[c("path",{d:"M9 2c2.43 0 4.57 1.239 5.823 3.114.347.518.916.899 1.532 1.025C19.517 6.783 22 9.614 22 13v7a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V9a7 7 0 0 1 7-7ZM4 19h16v-5h-1v3h-2v-3h-2v3h-2v-3h-2v3H9v-3H7v3H5v-3H4v5ZM9 4a5 5 0 0 0-5 5v3h15.895c-.412-1.944-1.99-3.504-3.939-3.901a4.468 4.468 0 0 1-2.796-1.873A4.994 4.994 0 0 0 9 4Z"},null,-1)])],14,u)},z=p({name:"IconPianoGrandLine",render:k,props:{size:{type:String,default:"18px"},fill:{type:String,default:"#595959"},spin:{type:Boolean,default:!1},rotate:{type:Number}},emits:["click"],setup(l,{emit:t}){let e=l,n=t,o="bp-icon",r=i(()=>[o,`${o}-icon-piano-grand-line`,{[`${o}-spin`]:e.spin}]),a=i(()=>({width:e.size,height:e.size,transform:e.rotate?`rotate(${e.rotate}deg)`:void 0}));return{cls:r,innerStyle:a,onClick:s=>n("click",s)}}});export{z as default};