{"version":3,"file":"padding.vue2.mjs","sources":["../../../../../../packages/components/padding/src/padding.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\n\tname: 'ToPadding'\n});\n</script>\n<template>\n\t<div class=\"to-padding\" :flex=\"flex ? flex : null\" :style=\"setStyle\" :class=\"setClass\">\n\t\t<slot></slot>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport type { CSSProperties } from 'vue'\n\n\nexport interface Props {\n\tflex?: boolean\n\tmode?: string\n\tvalue?: string | number\n\theight?: string\n\tposition?: string\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n\tflex: false,\n\tmode: 'default',\n\tvalue: 1,\n\theight: '',\n\tposition: 'trbl'\n})\n\nconst hasUnit = (val: string) => /[a-z%]+$/i.test(val)\nconst setStyle = computed((): CSSProperties => {\n\tconst obj: CSSProperties = {}\n\n\tif (String(props.value).trim() && props.mode === 'default') {\n\t\t// 分割成各个值\n\t\tconst padded = String(props.value)\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\tobj['--value'] = padded\n\t}\n\n\tif (!props.position.includes('t')) {\n\t\tobj.paddingTop = 0\n\t}\n\tif (!props.position.includes('r')) {\n\t\tobj.paddingRight = 0\n\t}\n\tif (!props.position.includes('b')) {\n\t\tobj.paddingBottom = 0\n\t}\n\tif (!props.position.includes('l')) {\n\t\tobj.paddingLeft = 0\n\t}\n\n\tif (props.height && props.height !== 'full') {\n\t\tobj.height = isNaN(Number(props.height)) ? props.height : `${props.height}em`\n\t}\n\n\treturn obj\n})\n\nconst setClass = computed(() => {\n\tconst arr: string[] = []\n\tif (props.mode) {\n\t\tarr.push(`mode-${props.mode}`)\n\t}\n\tif (props.height && props.height === 'full') {\n\t\tarr.push('height-full')\n\t}\n\treturn arr\n})\n</script>\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","flex","_renderSlot"],"mappings":";;AAEA,MAAA,cAA6BA,eAAmB,CAAA;AAAA,EAC/C,IAAM,EAAA,WAAA;AACP,CAAC,CAAA,CAAA;;;;;;;;;;;AAqBD,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAQd,IAAA,MAAM,OAAU,GAAA,CAAC,GAAgB,KAAA,WAAA,CAAY,KAAK,GAAG,CAAA,CAAA;AACrD,IAAM,MAAA,QAAA,GAAW,SAAS,MAAqB;AAC9C,MAAA,MAAM,MAAqB,EAAC,CAAA;AAE5B,MAAI,IAAA,MAAA,CAAO,MAAM,KAAK,CAAA,CAAE,MAAU,IAAA,KAAA,CAAM,SAAS,SAAW,EAAA;AAE3D,QAAM,MAAA,MAAA,GAAS,MAAO,CAAA,KAAA,CAAM,KAAK,CAAA,CAC/B,IAAK,EAAA,CACL,KAAM,CAAA,KAAK,CACX,CAAA,GAAA,CAAI,CAAO,GAAA,KAAA;AAEX,UAAA,OAAO,OAAQ,CAAA,GAAG,CAAI,GAAA,GAAA,GAAM,CAAG,EAAA,GAAA,CAAA,EAAA,CAAA,CAAA;AAAA,SAC/B,CACA,CAAA,IAAA,CAAK,GAAG,CAAA,CAAA;AAEV,QAAA,GAAA,CAAI,SAAS,CAAI,GAAA,MAAA,CAAA;AAAA,OAClB;AAEA,MAAA,IAAI,CAAC,KAAA,CAAM,QAAS,CAAA,QAAA,CAAS,GAAG,CAAG,EAAA;AAClC,QAAA,GAAA,CAAI,UAAa,GAAA,CAAA,CAAA;AAAA,OAClB;AACA,MAAA,IAAI,CAAC,KAAA,CAAM,QAAS,CAAA,QAAA,CAAS,GAAG,CAAG,EAAA;AAClC,QAAA,GAAA,CAAI,YAAe,GAAA,CAAA,CAAA;AAAA,OACpB;AACA,MAAA,IAAI,CAAC,KAAA,CAAM,QAAS,CAAA,QAAA,CAAS,GAAG,CAAG,EAAA;AAClC,QAAA,GAAA,CAAI,aAAgB,GAAA,CAAA,CAAA;AAAA,OACrB;AACA,MAAA,IAAI,CAAC,KAAA,CAAM,QAAS,CAAA,QAAA,CAAS,GAAG,CAAG,EAAA;AAClC,QAAA,GAAA,CAAI,WAAc,GAAA,CAAA,CAAA;AAAA,OACnB;AAEA,MAAA,IAAI,KAAM,CAAA,MAAA,IAAU,KAAM,CAAA,MAAA,KAAW,MAAQ,EAAA;AAC5C,QAAI,GAAA,CAAA,MAAA,GAAS,KAAM,CAAA,MAAA,CAAO,KAAM,CAAA,MAAM,CAAC,CAAI,GAAA,KAAA,CAAM,MAAS,GAAA,CAAA,EAAG,KAAM,CAAA,MAAA,CAAA,EAAA,CAAA,CAAA;AAAA,OACpE;AAEA,MAAO,OAAA,GAAA,CAAA;AAAA,KACP,CAAA,CAAA;AAED,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC/B,MAAA,MAAM,MAAgB,EAAC,CAAA;AACvB,MAAA,IAAI,MAAM,IAAM,EAAA;AACf,QAAI,GAAA,CAAA,IAAA,CAAK,CAAQ,KAAA,EAAA,KAAA,CAAM,IAAM,CAAA,CAAA,CAAA,CAAA;AAAA,OAC9B;AACA,MAAA,IAAI,KAAM,CAAA,MAAA,IAAU,KAAM,CAAA,MAAA,KAAW,MAAQ,EAAA;AAC5C,QAAA,GAAA,CAAI,KAAK,aAAa,CAAA,CAAA;AAAA,OACvB;AACA,MAAO,OAAA,GAAA,CAAA;AAAA,KACP,CAAA,CAAA;;wBAzEA,EAAAC,kBAAA,CAEM,KAAA,EAAA;AAAA,QAFD,OAAKC,cAAA,CAAA,CAAC,YAAkE,EAAA,QAAA,CAAQ,KAAA,CAAA,CAAA;AAAA,QAA5D,IAAMC,EAAAA,IAAAA,CAAI,IAAGA,GAAAA,IAAAA,CAAI,IAAA,GAAA,IAAA;AAAA,QAAU,KAAA,gBAAO,CAAA,QAAA,CAAQ,KAAA,CAAA;AAAA;QAClEC,UAAA,CAAa,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA;;;;;;;"}