{"version":3,"file":"button2.mjs","sources":["../../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n  <component\n    :is=\"tag\"\n    ref=\"_ref\"\n    v-bind=\"_props\"\n    :class=\"buttonKls\"\n    :style=\"buttonStyle\"\n    @click=\"handleClick\"\n  >\n    <template v-if=\"loading\">\n      <slot v-if=\"$slots.loading\" name=\"loading\" />\n      <el-icon v-else :class=\"ns.is('loading')\">\n        <component :is=\"loadingIcon\" />\n      </el-icon>\n    </template>\n    <el-icon v-else-if=\"icon || $slots.icon\">\n      <component :is=\"icon\" v-if=\"icon\" />\n      <slot v-else name=\"icon\" />\n    </el-icon>\n    <span\n      v-if=\"$slots.default\"\n      :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n    >\n      <slot />\n    </span>\n  </component>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { ElIcon } from '@hd-front-end/components/icon'\nimport { useNamespace } from '@hd-front-end/hooks'\nimport { useButton } from './use-button'\nimport { buttonEmits, buttonProps } from './button'\nimport { useButtonCustomStyle } from './button-custom'\n\ndefineOptions({\n  name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\n\nconst buttonStyle = useButtonCustomStyle(props)\nconst ns = useNamespace('button')\nconst {\n  _ref,\n  _size,\n  _type,\n  _disabled,\n  _props,\n  _plain,\n  _round,\n  _text,\n  shouldAddSpace,\n  handleClick,\n} = useButton(props, emit)\nconst buttonKls = computed(() => [\n  ns.b(),\n  ns.m(_type.value),\n  ns.m(_size.value),\n  ns.is('disabled', _disabled.value),\n  ns.is('loading', props.loading),\n  ns.is('plain', _plain.value),\n  ns.is('round', _round.value),\n  ns.is('circle', props.circle),\n  ns.is('text', _text.value),\n  ns.is('link', props.link),\n  ns.is('has-bg', props.bg),\n])\n\ndefineExpose({\n  /** @description button html element */\n  ref: _ref,\n  /** @description button size */\n  size: _size,\n  /** @description button type */\n  type: _type,\n  /** @description button disabled */\n  disabled: _disabled,\n  /** @description whether adding space */\n  shouldAddSpace,\n})\n</script>\n"],"names":["_createBlock","_resolveDynamicComponent","tag","_mergeProps","_unref","loading","_openBlock","_createElementBlock","_Fragment","$slots","_renderSlot","_normalizeClass","loadingIcon","icon","_withCtx"],"mappings":"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"}