vue-amazing-ui
Version:
An Amazing Vue3 UI Components Library, Using TypeScript.
2 lines (1 loc) • 1.34 kB
JavaScript
;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),n=require("../../utils/index.cjs"),i=t.defineComponent({__name:"Col",props:{span:{default:void 0},offset:{default:0},flex:{default:void 0},order:{default:0},xs:{default:void 0},sm:{default:void 0},md:{default:void 0},lg:{default:void 0},xl:{default:void 0},xxl:{default:void 0}},setup(l){const e=l,a=t.ref(window.innerWidth),d=t.computed(()=>typeof e.flex=="number"?`${e.flex} ${e.flex} auto`:e.flex),r=t.computed(()=>[{width:1600,value:e.xxl},{width:1200,value:e.xl},{width:992,value:e.lg},{width:768,value:e.md},{width:576,value:e.sm},{width:0,value:e.xs}]),u=t.computed(()=>{for(const o of r.value)if(o.value!==void 0&&a.value>=o.width)return typeof o.value=="object"?{span:o.value.span||e.span,offset:o.value.offset||e.offset}:{span:o.value,offset:e.offset};return{span:e.span,offset:e.offset}});n.useEventListener(window,"resize",s);function s(){a.value=window.innerWidth}return(o,f)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(`grid-col col-${u.value.span} offset-${u.value.offset}`),style:t.normalizeStyle([{"padding-left":"var(--xGap)","padding-right":"var(--xGap)"},`flex: ${d.value}; order: ${l.order};`])},[t.renderSlot(o.$slots,"default",{},void 0,!0)],6))}});exports.default=i;