{"version":3,"file":"index.vue.mjs","sources":["../../../../../../components/button/src/index.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useNamespace } from '@fusion-ui-vue/utils'\nimport { computed } from 'vue'\nimport { useButton } from '@fusion-ui-vue/hooks'\nimport { iconSize } from '@fusion-ui-vue/constants'\nimport FnRipple from '../../ripple'\nimport { buttonProps } from './button'\n\nconst props = defineProps(buttonProps)\nconst ns = useNamespace('button')\nconst cssClass = useButton(props, ns)\n\nconst classList = computed(() => {\n  const { variant, shape, size } = props\n  return [ns.b(), ns.m(size), ns.m(shape), ns.m(variant)]\n})\n</script>\n\n<template>\n  <button :class=\"[...classList, `title-${props.size}`, cssClass]\">\n    <slot v-bind=\"{ size: iconSize[props.size] }\" />\n    <fn-ripple\n      v-if=\"!props.disableRipple\"\n      :color=\"props.variant === 'filled' ? undefined : props.color\"\n    />\n  </button>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASM,IAAA,MAAA,EAAA,GAAK,aAAa,QAAQ,CAAA,CAAA;AAC1B,IAAA,MAAA,QAAA,GAAW,SAAU,CAAA,KAAA,EAAO,EAAE,CAAA,CAAA;AAE9B,IAAA,MAAA,SAAA,GAAY,SAAS,MAAM;AAC/B,MAAA,MAAM,EAAE,OAAA,EAAS,KAAO,EAAA,IAAA,EAAS,GAAA,KAAA,CAAA;AACjC,MAAA,OAAO,CAAC,EAAA,CAAG,CAAE,EAAA,EAAG,GAAG,CAAE,CAAA,IAAI,CAAG,EAAA,EAAA,CAAG,EAAE,KAAK,CAAA,EAAG,EAAG,CAAA,CAAA,CAAE,OAAO,CAAC,CAAA,CAAA;AAAA,KACvD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;"}