Component: Button Migration 3: IconTextButton (#7603)

## Summary

Replace all the `IconTextButton`s with `Button`

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7603-WIP-Component-Button-Migraion-3-IconTextButton-2cd6d73d365081b7b742fa2172dc2ba8)
by [Unito](https://www.unito.io)
This commit is contained in:
Alexander Brown
2025-12-18 16:09:56 -08:00
committed by GitHub
parent 6244cf1008
commit 2c26fbb550
26 changed files with 338 additions and 754 deletions

View File

@@ -29,19 +29,18 @@
:placeholder="$t('g.searchPlaceholder')"
class="max-w-96"
/>
<IconTextButton
<Button
v-if="isUploadButtonEnabled"
type="accent"
size="md"
class="!h-10 [&>span]:hidden md:[&>span]:inline"
variant="primary"
:size="breakpoints.md ? 'md' : 'icon'"
data-attr="upload-model-button"
:label="$t('assetBrowser.uploadModel')"
:on-click="showUploadDialog"
@click="showUploadDialog"
>
<template #icon>
<i class="icon-[lucide--folder-input]" />
</template>
</IconTextButton>
<i class="icon-[lucide--folder-input]" />
<span class="hidden md:inline">{{
$t('assetBrowser.uploadModel')
}}</span>
</Button>
</div>
</template>
@@ -64,12 +63,16 @@
</template>
<script setup lang="ts">
import { useAsyncState } from '@vueuse/core'
import {
breakpointsTailwind,
useAsyncState,
useBreakpoints
} from '@vueuse/core'
import { computed, provide, watch } from 'vue'
import { useI18n } from 'vue-i18n'
import IconTextButton from '@/components/button/IconTextButton.vue'
import SearchBox from '@/components/common/SearchBox.vue'
import Button from '@/components/ui/button/Button.vue'
import BaseModalLayout from '@/components/widget/layout/BaseModalLayout.vue'
import LeftSidePanel from '@/components/widget/panel/LeftSidePanel.vue'
import AssetFilterBar from '@/platform/assets/components/AssetFilterBar.vue'
@@ -99,6 +102,8 @@ const emit = defineEmits<{
close: []
}>()
const breakpoints = useBreakpoints(breakpointsTailwind)
provide(OnCloseKey, props.onClose ?? (() => {}))
const fetchAssets = async () => {