{"version":3,"file":"grid.vue2.mjs","sources":["../../../../../../packages/components/grid/src/grid.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\n\tname: 'ToGrid'\n});\n</script>\n<template>\n\t<div ref=\"el\" class=\"to-grid\" :flex=\"flex ? flex : null\" :class=\"setClass\" :style=\"setStyle\">\n\t\t<slot></slot>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, provide, ref } from 'vue'\nimport type { CSSProperties } from 'vue'\n\n\ntype GridProps = {\n\tflex?: boolean\n\ttype?: string\n\tmode?: string\n\tdir?: string\n\tgap?: number | string\n\tpadding?: number | string\n\tpaddingPosition?: string\n\theight?: number | string\n\tverticalAlign?: string\n\tva?: string\n\tcol?: number | string\n\twrap?: boolean\n}\n\nconst el = ref(null)\n\n// 默认值\nconst props = withDefaults(defineProps<GridProps>(), {\n\tflex: false,\n\ttype: '',\n\tmode: 'default',\n\tdir: '',\n\tgap: 0,\n\tpadding: 0,\n\tpaddingPosition: '',\n\theight: '',\n\tverticalAlign: '',\n\tva: '',\n\tcol: '',\n\twrap: true\n})\n\nprovide('grid', props)\n\nconst hasUnit = (val: string) => /[a-z%]+$/i.test(val)\nconst setStyle = computed((): CSSProperties => {\n\tconst styles: CSSProperties = {}\n\n\tif (props.padding && String(props.padding).trim()) {\n\t\t// 分割成各个值\n\t\tconst padded = String(props.padding)\n\t\t\t.trim()\n\t\t\t.split(/\\s+/)\n\t\t\t.map(val => {\n\t\t\t\t// 如果是数字（或纯数字字符串），或末尾无单位，就加 em\n\t\t\t\treturn hasUnit(val) ? val : `${val}em`\n\t\t\t})\n\t\t\t.join(' ')\n\n\t\tstyles.padding = padded\n\t}\n\n\tif (props.padding && props.paddingPosition !== '') {\n\t\tif (!props.paddingPosition.includes('t')) {\n\t\t\tstyles.paddingTop = 0\n\t\t}\n\t\tif (!props.paddingPosition.includes('r')) {\n\t\t\tstyles.paddingRight = 0\n\t\t}\n\t\tif (!props.paddingPosition.includes('b')) {\n\t\t\tstyles.paddingBottom = 0\n\t\t}\n\t\tif (!props.paddingPosition.includes('l')) {\n\t\t\tstyles.paddingLeft = 0\n\t\t}\n\t}\n\n\tif (props.height && props.height !== 'full') {\n\t\tif (!isNaN(Number(props.height))) {\n\t\t\tstyles.height = props.height + 'em'\n\t\t}\n\t}\n\n\tif (props.col && props.col !== 'col-auto') {\n\t\tstyles['--col'] = props.col\n\t}\n\n\tif (props.gap) {\n\t\tconst gaps = String(props.gap).split(' ')\n\t\tstyles['--gap-y'] = gaps[0] + 'em'\n\t\tstyles['--gap-x'] = gaps.length > 1 ? gaps[1] + 'em' : gaps[0] + 'em'\n\t}\n\n\treturn styles\n})\n\nconst setClass = computed(() => {\n\tconst classes: string[] = []\n\n\tif (props.mode) classes.push(`mode-${props.mode}`)\n\tif (props.type) classes.push(`type-${props.type}`)\n\tif (props.dir) classes.push(`dir-${props.dir}`)\n\tif (props.col && props.col !== 'auto') classes.push(`is-col`)\n\tif (props.col) classes.push(`col-${props.col}`)\n\tif (props.height === 'full') classes.push(`height-full`)\n\tif (props.verticalAlign === 'top' || props.va === 'top') classes.push('va-top')\n\tif (props.verticalAlign === 'bottom' || props.va === 'bottom') classes.push('va-bottom')\n\tif (props.verticalAlign === 'baseline' || props.va === 'baseline') classes.push('va-baseline')\n\tif (props.verticalAlign === 'full' || props.va === 'full' || props.verticalAlign === 'stretch' || props.va === 'stretch') classes.push('va-full')\n\tif (props.wrap && props.dir !== 'v') classes.push('is-wrap')\n\n\treturn classes\n})\n</script>\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","flex","_renderSlot"],"mappings":"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"}