2023-08-21 01:51:35 -04:00
|
|
|
<script setup lang="ts">
|
2025-05-06 18:21:41 -04:00
|
|
|
withDefaults(
|
2023-08-31 16:56:58 -04:00
|
|
|
defineProps<{
|
|
|
|
|
iconName: string;
|
2023-10-21 10:46:53 -04:00
|
|
|
disabled?: boolean;
|
2023-08-31 16:56:58 -04:00
|
|
|
color?: string;
|
|
|
|
|
tooltip?: string;
|
|
|
|
|
right?: boolean;
|
|
|
|
|
hover?: boolean;
|
|
|
|
|
}>(),
|
|
|
|
|
{
|
|
|
|
|
right: false,
|
2023-10-21 10:46:53 -04:00
|
|
|
disabled: false,
|
2023-08-31 16:56:58 -04:00
|
|
|
hover: false
|
|
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
defineEmits<{
|
|
|
|
|
(e: "click"): void;
|
|
|
|
|
}>();
|
2023-08-21 01:51:35 -04:00
|
|
|
</script>
|
|
|
|
|
|
2019-10-02 00:14:37 +03:00
|
|
|
<template>
|
2020-06-26 04:39:14 -07:00
|
|
|
<div>
|
2025-05-06 18:21:41 -04:00
|
|
|
<v-tooltip :right="right" :location="!right ? 'bottom' : undefined" offset="10" :disabled="tooltip === undefined">
|
|
|
|
|
<template #activator="{ props }">
|
2023-10-21 10:46:53 -04:00
|
|
|
<v-icon
|
2025-05-06 18:21:41 -04:00
|
|
|
:class="hover ? 'hover' : ''"
|
2023-10-21 10:46:53 -04:00
|
|
|
:color="color"
|
2025-05-06 18:21:41 -04:00
|
|
|
v-bind="props"
|
2023-10-21 10:46:53 -04:00
|
|
|
:disabled="disabled"
|
|
|
|
|
@click="$emit('click')"
|
|
|
|
|
>
|
2023-08-21 01:51:35 -04:00
|
|
|
{{ iconName }}
|
2020-06-26 04:39:14 -07:00
|
|
|
</v-icon>
|
|
|
|
|
</template>
|
|
|
|
|
<span>{{ tooltip }}</span>
|
|
|
|
|
</v-tooltip>
|
|
|
|
|
</div>
|
2019-10-02 00:14:37 +03:00
|
|
|
</template>
|
|
|
|
|
|
2019-10-10 22:40:51 +03:00
|
|
|
<style scoped>
|
2023-08-31 16:56:58 -04:00
|
|
|
.hover:hover {
|
|
|
|
|
color: white !important;
|
|
|
|
|
}
|
2021-11-21 17:22:56 -08:00
|
|
|
</style>
|