{"version":3,"file":"col2.mjs","sources":["../../../../../packages/components/col/src/col.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject } from 'vue'\nimport { useNamespace } from '@element3/hooks'\nimport { rowContextKey } from '@element3/tokens'\nimport { colProps } from './col'\nimport type { CSSProperties } from 'vue'\n\nconst { gutter } = inject(rowContextKey, { gutter: computed(() => 0) })\n\ndefineOptions({\n  name: 'ElCol',\n})\n\ndefineEmits({})\n\nconst props = defineProps({ ...colProps })\n\nconst ns = useNamespace('col')\n\nconst style = computed(() => {\n  const styles: CSSProperties = {}\n\n  if (gutter.value) {\n    styles.paddingLeft = styles.paddingRight = `${gutter.value / 2}px`\n  }\n\n  return styles\n})\n\nconst classes = computed(() => {\n  const classes: string[] = []\n  const pos = ['span', 'offset', 'pull', 'push'] as const\n\n  pos.forEach((prop) => {\n    if (prop == 'span') {\n      classes.push(ns.b(`${props[prop]}`))\n    } else {\n      classes.push(ns.b(`${prop}-${props[prop]}`))\n    }\n  })\n\n  const sizes = ['xs', 'sm', 'md', 'lg', 'xl'] as const\n\n  sizes.forEach((size) => {\n    if (typeof props[size] == 'number') {\n      classes.push(ns.b(`${size}-${props[size]}`))\n    } else if (typeof props[size] == 'object' && props[size] != null) {\n      Object.entries(props[size]).forEach(([key, val]) => {\n        classes.push(\n          key !== 'span'\n            ? ns.b(`${size}-${key}-${val}`)\n            : ns.b(`${size}-${val}`)\n        )\n      })\n    }\n  })\n\n  if (gutter.value) {\n    classes.push(ns.is('guttered'))\n  }\n\n  return classes\n})\n</script>\n\n<template>\n  <component :is=\"tag\" :class=\"[ns.b(), classes]\" :style=\"style\"\n    ><slot\n  /></component>\n</template>\n<style scoped></style>\n"],"names":["classes"],"mappings":";;;;;;;;;;;;;;;;;AAOA,IAAA,MAAA,EAAA,MAAA,EAAA,GAAA,MAAA,CAAA,aAAA,EAAA,EAAA,MAAA,EAAA,QAAA,CAAA,MAAA,CAAA,CAAA,EAAA,CAAA,CAAA;AAUA,IAAA,MAAA,EAAA,GAAA,aAAA,KAAA,CAAA,CAAA;AAEA,IAAA,MAAA,KAAA,GAAA,SAAA,MAAA;AACA,MAAA,MAAA,SAAA,EAAA,CAAA;AAEA,MAAA,IAAA,OAAA,KAAA,EAAA;AACA,QAAA,MAAA,CAAA,WAAA,GAAA,MAAA,CAAA,YAAA,GAAA,CAAA,EAAA,OAAA,KAAA,GAAA,CAAA,CAAA,EAAA,CAAA,CAAA;AAAA,OACA;AAEA,MAAA,OAAA,MAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,OAAA,GAAA,SAAA,MAAA;AACA,MAAA,MAAAA,WAAA,EAAA,CAAA;AACA,MAAA,MAAA,GAAA,GAAA,CAAA,MAAA,EAAA,QAAA,EAAA,QAAA,MAAA,CAAA,CAAA;AAEA,MAAA,GAAA,CAAA,OAAA,CAAA,CAAA,IAAA,KAAA;AACA,QAAA,IAAA,QAAA,MAAA,EAAA;AACA,UAAA,QAAA,CAAA,KAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,KAAA,CAAA,OAAA,CAAA,CAAA,CAAA;AAAA,SACA,MAAA;AACA,UAAA,QAAA,CAAA,KAAA,EAAA,CAAA,CAAA,CAAA,GAAA,IAAA,CAAA,CAAA,EAAA,KAAA,CAAA,OAAA,CAAA,CAAA,CAAA;AAAA,SACA;AAAA,OACA,CAAA,CAAA;AAEA,MAAA,MAAA,QAAA,CAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,IAAA,CAAA,CAAA;AAEA,MAAA,KAAA,CAAA,OAAA,CAAA,CAAA,IAAA,KAAA;AACA,QAAA,IAAA,OAAA,KAAA,CAAA,IAAA,CAAA,IAAA,QAAA,EAAA;AACA,UAAA,QAAA,CAAA,KAAA,EAAA,CAAA,CAAA,CAAA,GAAA,IAAA,CAAA,CAAA,EAAA,KAAA,CAAA,OAAA,CAAA,CAAA,CAAA;AAAA,mBACA,OAAA,KAAA,CAAA,SAAA,QAAA,IAAA,KAAA,CAAA,SAAA,IAAA,EAAA;AACA,UAAA,MAAA,CAAA,OAAA,CAAA,MAAA,IAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,GAAA,EAAA,GAAA,CAAA,KAAA;AACA,YAAA,QAAA,CAAA,IAAA;AAAA,cACA,GAAA,KAAA,MAAA,GACA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,IAAA,CAAA,CAAA,EAAA,GAAA,CAAA,CAAA,EAAA,GAAA,CAAA,CAAA,CACA,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,QAAA,GAAA,CAAA,CAAA,CAAA;AAAA,aACA,CAAA;AAAA,WACA,CAAA,CAAA;AAAA,SACA;AAAA,OACA,CAAA,CAAA;AAEA,MAAA,IAAA,OAAA,KAAA,EAAA;AACA,QAAA,QAAA,CAAA,IAAA,CAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,CAAA,CAAA;AAAA,OACA;AAEAA,MAAAA,OAAAA,QAAAA,CAAAA;AAAAA,KACA,CAAA,CAAA;;;;;;;;;;;;;;;;;;"}