You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
1.9 KiB

import{c as x,t as b,n as m,A as N,k as _,h as f,C as q,w as v,e as D,D as E,E as O,G as T,I as $}from"./index-f3701452.js";import{d as p,b as i,f as P,aP as z}from"./index-f4658ae7.js";import{r as V,u as w}from"./use-route-96578f25.js";const[S,j]=x("grid"),A={square:Boolean,center:b,border:b,gutter:m,reverse:Boolean,iconSize:m,direction:String,clickable:Boolean,columnNum:N(4)},h=Symbol(S);var K=p({name:S,props:A,setup(e,{slots:t}){const{linkChildren:o}=_(h);return o({props:e}),()=>{var c;return i("div",{style:{paddingLeft:f(e.gutter)},class:[j(),{[q]:e.border&&!e.gutter}]},[(c=t.default)==null?void 0:c.call(t)])}}});const M=v(K),[L,l]=x("grid-item"),U=D({},V,{dot:Boolean,text:String,icon:String,badge:m,iconColor:String,iconPrefix:String,badgeProps:Object});var Y=p({name:L,props:U,setup(e,{slots:t}){const{parent:o,index:c}=E(h),B=w();if(!o)return;const C=P(()=>{const{square:s,gutter:n,columnNum:r}=o.props,d=`${100/+r}%`,a={flexBasis:d};if(s)a.paddingTop=d;else if(n){const u=f(n);a.paddingRight=u,c.value>=+r&&(a.marginTop=u)}return a}),y=P(()=>{const{square:s,gutter:n}=o.props;if(s&&n){const r=f(n);return{right:r,bottom:r,height:"auto"}}}),I=()=>{if(t.icon)return i(T,z({dot:e.dot,content:e.badge},e.badgeProps),{default:t.icon});if(e.icon)return i($,{dot:e.dot,name:e.icon,size:o.props.iconSize,badge:e.badge,class:l("icon"),color:e.iconColor,badgeProps:e.badgeProps,classPrefix:e.iconPrefix},null)},R=()=>{if(t.text)return t.text();if(e.text)return i("span",{class:l("text")},[e.text])},k=()=>t.default?t.default():[I(),R()];return()=>{const{center:s,border:n,square:r,gutter:d,reverse:a,direction:u,clickable:g}=o.props,G=[l("content",[u,{center:s,square:r,reverse:a,clickable:g,surround:n&&d}]),{[O]:n}];return i("div",{class:[l({square:r})],style:C.value},[i("div",{role:g?"button":void 0,class:G,style:y.value,tabindex:g?0:void 0,onClick:B},[k()])])}}});const Q=v(Y);export{M as G,Q as a};