vuestic-ui
Version:
Vue 3 UI Framework
26 lines (25 loc) • 864 B
JavaScript
import { computed } from "vue";
import { a as useRouterLink } from "../../../composables/useRouterLink.mjs";
const useButtonAttributes = (props) => {
const { linkAttributesComputed, isLinkTag } = useRouterLink(props);
const typeComputed = computed(() => isLinkTag.value ? void 0 : props.type);
const buttonAttributesComputed = computed(() => {
const disabledAttributes = {
"aria-disabled": !!props.disabled,
disabled: !!props.disabled
};
if (isLinkTag.value) {
return disabledAttributes;
}
return {
type: typeComputed.value,
tabindex: props.loading || props.disabled ? -1 : 0,
...disabledAttributes
};
});
return computed(() => ({ ...linkAttributesComputed.value, ...buttonAttributesComputed.value }));
};
export {
useButtonAttributes as u
};
//# sourceMappingURL=useButtonAttributes.mjs.map