Component: Button Migration 2: IconButton (#7598)

## Summary

Still a work in progress. Buttons with just icons are already in the
stories for button.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7598-WIP-Component-Button-Migration-2-IconButton-2cc6d73d365081c09143c63464ac60b7)
by [Unito](https://www.unito.io)
This commit is contained in:
Alexander Brown
2025-12-17 18:11:43 -08:00
committed by GitHub
parent 1d014c0dbe
commit fba580dc7d
35 changed files with 334 additions and 632 deletions

View File

@@ -128,18 +128,19 @@
</Button>
</div>
</div>
<div class="flex gap-2 pr-4">
<div class="flex shrink gap-2 pr-4 items-center-safe">
<template v-if="isCompact">
<!-- Compact mode: Icon only -->
<IconButton
<Button
v-if="shouldShowDeleteButton"
size="icon"
@click="handleDeleteSelected"
>
<i class="icon-[lucide--trash-2] size-4" />
</IconButton>
<IconButton @click="handleDownloadSelected">
</Button>
<Button size="icon" @click="handleDownloadSelected">
<i class="icon-[lucide--download] size-4" />
</IconButton>
</Button>
</template>
<template v-else>
<!-- Normal mode: Icon + Text -->
@@ -183,7 +184,6 @@ import { useToast } from 'primevue/usetoast'
import { computed, onMounted, onUnmounted, ref, watch } from 'vue'
import { useI18n } from 'vue-i18n'
import IconButton from '@/components/button/IconButton.vue'
import IconTextButton from '@/components/button/IconTextButton.vue'
import NoResultsPlaceholder from '@/components/common/NoResultsPlaceholder.vue'
import VirtualGrid from '@/components/common/VirtualGrid.vue'