UNPKG

@vuesax-alpha/nightly

Version:
1 lines 3.81 kB
{"version":3,"file":"col2.mjs","sources":["../../../../../../packages/components/col/src/col.vue"],"sourcesContent":["<template>\n <div :class=\"colKls\" :style=\"colStyle\">\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject } from 'vue'\nimport { useNamespace } from '@vuesax-alpha/hooks'\nimport { rowContextKey } from '@vuesax-alpha/tokens'\nimport { isNumber, isObject } from '@vuesax-alpha/utils'\nimport { colProps } from './col'\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'VsCol',\n})\n\nconst props = defineProps(colProps)\n\nconst ns = useNamespace('col')\n\nconst { gutter } = inject(rowContextKey, { gutter: computed(() => 0) })\n\nconst colKls = computed(() => {\n const classes: string[] = []\n const pos = ['span', 'offset', 'pull', 'push'] as const\n pos.forEach((prop) => {\n const size = props[prop]\n if (isNumber(size)) {\n if (prop === 'span') classes.push(ns.b(`${props[prop]}`))\n else if (size > 0) classes.push(ns.b(`${prop}-${props[prop]}`))\n }\n })\n const sizes = ['xs', 'sm', 'md', 'lg', 'xl'] as const\n sizes.forEach((size) => {\n if (isNumber(props[size])) {\n classes.push(ns.b(`${size}-${props[size]}`))\n } else if (isObject(props[size])) {\n Object.entries(props[size]).forEach(([prop, sizeProp]) => {\n classes.push(\n prop !== 'span'\n ? ns.b(`${size}-${prop}-${sizeProp}`)\n : ns.b(`${size}-${sizeProp}`)\n )\n })\n }\n })\n if (gutter.value) {\n classes.push(ns.is('guttered'))\n }\n return [ns.b(), classes]\n})\n\nconst colStyle = computed(() => {\n const styles: CSSProperties = {}\n if (gutter.value) {\n styles.paddingLeft = styles.paddingRight = `${gutter.value / 2}px`\n }\n return styles\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;mCAcc,CAAA;AAAA,EACZ,IAAM,EAAA,OAAA;AACR,CAAA,CAAA,CAAA;;;;;;AAIM,IAAA,MAAA,EAAA,GAAK,aAAa,KAAK,CAAA,CAAA;AAEvB,IAAA,MAAA,EAAE,MAAO,EAAA,GAAI,MAAO,CAAA,aAAA,EAAe,EAAE,MAAA,EAAQ,QAAS,CAAA,MAAM,CAAC,CAAA,EAAG,CAAA,CAAA;AAEhE,IAAA,MAAA,MAAA,GAAS,SAAS,MAAM;AAC5B,MAAA,MAAM,UAAoB,EAAC,CAAA;AAC3B,MAAA,MAAM,GAAM,GAAA,CAAC,MAAQ,EAAA,QAAA,EAAU,QAAQ,MAAM,CAAA,CAAA;AACzC,MAAA,GAAA,CAAA,OAAA,CAAQ,CAAC,IAAS,KAAA;AACd,QAAA,MAAA,OAAO,KAAM,CAAA,IAAA,CAAA,CAAA;AACf,QAAA,IAAA,QAAA,CAAS,IAAI,CAAG,EAAA;AACd,UAAA,IAAA,IAAS,KAAA,MAAA;AAAQ,YAAA,OAAA,CAAQ,KAAK,EAAG,CAAA,CAAA,CAAE,CAAG,EAAA,KAAA,CAAM,OAAO,CAAC,CAAA,CAAA;AAAA,eAAA,IAC/C,IAAO,GAAA,CAAA;AAAW,YAAA,OAAA,CAAA,KAAK,EAAG,CAAA,CAAA,CAAE,GAAG,IAAQ,CAAA,CAAA,EAAA,KAAA,CAAM,OAAO,CAAC,CAAA,CAAA;AAAA,SAChE;AAAA,OACD,CAAA,CAAA;AACD,MAAA,MAAM,QAAQ,CAAC,IAAA,EAAM,IAAM,EAAA,IAAA,EAAM,MAAM,IAAI,CAAA,CAAA;AACrC,MAAA,KAAA,CAAA,OAAA,CAAQ,CAAC,IAAS,KAAA;AACtB,QAAI,IAAA,QAAA,CAAS,KAAM,CAAA,IAAA,CAAK,CAAG,EAAA;AACjB,UAAA,OAAA,CAAA,KAAK,EAAG,CAAA,CAAA,CAAE,GAAG,IAAQ,CAAA,CAAA,EAAA,KAAA,CAAM,OAAO,CAAC,CAAA,CAAA;AAAA,SAClC,MAAA,IAAA,QAAA,CAAS,KAAM,CAAA,IAAA,CAAK,CAAG,EAAA;AACzB,UAAA,MAAA,CAAA,OAAA,CAAQ,MAAM,IAAK,CAAA,CAAA,CAAE,QAAQ,CAAC,CAAC,IAAM,EAAA,QAAQ,CAAM,KAAA;AAChD,YAAA,OAAA,CAAA,IAAA;AAAA,cACN,IAAS,KAAA,MAAA,GACL,EAAG,CAAA,CAAA,CAAE,CAAG,EAAA,IAAA,CAAA,CAAA,EAAQ,IAAQ,CAAA,CAAA,EAAA,QAAA,CAAA,CAAU,CAClC,GAAA,EAAA,CAAG,CAAE,CAAA,CAAA,EAAG,QAAQ,QAAU,CAAA,CAAA,CAAA;AAAA,aAChC,CAAA;AAAA,WACD,CAAA,CAAA;AAAA,SACH;AAAA,OACD,CAAA,CAAA;AACD,MAAA,IAAI,OAAO,KAAO,EAAA;AAChB,QAAA,OAAA,CAAQ,IAAK,CAAA,EAAA,CAAG,EAAG,CAAA,UAAU,CAAC,CAAA,CAAA;AAAA,OAChC;AACA,MAAA,OAAO,CAAC,EAAA,CAAG,CAAE,EAAA,EAAG,OAAO,CAAA,CAAA;AAAA,KACxB,CAAA,CAAA;AAEK,IAAA,MAAA,QAAA,GAAW,SAAS,MAAM;AAC9B,MAAA,MAAM,SAAwB,EAAC,CAAA;AAC/B,MAAA,IAAI,OAAO,KAAO,EAAA;AAChB,QAAA,MAAA,CAAO,WAAc,GAAA,MAAA,CAAO,YAAe,GAAA,CAAA,EAAG,OAAO,KAAQ,GAAA,CAAA,CAAA,EAAA,CAAA,CAAA;AAAA,OAC/D;AACO,MAAA,OAAA,MAAA,CAAA;AAAA,KACR,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}