UNPKG

hongluan-ui

Version:
1 lines 1.95 kB
{"version":3,"file":"button2.mjs","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n namespace,\n type ? type : '',\n buttonSize ? buttonSize : '',\n iconPosition ? 'icon-' + iconPosition : '',\n effect ? effect : '',\n {\n 'is-disabled': buttonDisabled,\n 'is-loading': loading,\n 'equal': equal,\n 'round': round,\n 'block': block,\n 'no-fill': noFill,\n 'rational': rational,\n }\n ]\"\n v-bind=\"_props\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\"></slot>\n <spinner v-else />\n </template>\n <slot v-if=\"$slots.icon && !loading\" name=\"icon\"></slot>\n <span v-if=\"$slots.default && (loading || $slots.icon)\">\n <slot></slot>\n </span>\n <slot v-else></slot>\n </button>\n</template>\n\n<script lang='ts' setup>\nimport { useNamespace } from '@hongluan-ui/hooks'\nimport Spinner from '@hongluan-ui/components/spinner'\nimport { useButton } from './use-button'\nimport { buttonEmits, buttonProps } from './button'\n\ndefineOptions({\n name: 'Button',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\n\nconst { namespace } = useNamespace('button')\nconst { _ref, _props, buttonDisabled, buttonSize, handleClick } = useButton(props, emit)\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: buttonSize,\n /** @description button disabled */\n disabled: buttonDisabled,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;oCAwCc;AAAA,EACZ,MAAM;AACR;;;;;;;AAKA,UAAM,EAAE,cAAc,aAAa,QAAQ;AAC3C,UAAM,EAAE,MAAM,QAAQ,gBAAgB,YAAY,gBAAgB,UAAU,OAAO,IAAI;AAEvF,WAAa;AAAA,MAEX,KAAK;AAAA,MAEL,MAAM;AAAA,MAEN,UAAU;AAAA,KACX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}