mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-04-20 06:20:11 +00:00
## Summary - move queue batch controls to the left of the run button - align run control styling to the Figma queue modal spec using PrimeVue PT/Tailwind (secondary background on batch + dropdown, primary run button) - normalize control heights to match actionbar buttons and tighten dropdown hit area - update run typography/spacing and replace all three chevrons (dropdown + batch up/down) with the requested SVG Design: https://www.figma.com/design/LVilZgHGk5RwWOkVN6yCEK/Queue-Progress-Modal?node-id=3845-23904&m=dev <img width="303" height="122" alt="image" src="https://github.com/user-attachments/assets/4ed80ee7-3ceb-4512-96ce-f55ec6da835e" /> ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-9134-fix-align-run-controls-with-queue-modal-design-3106d73d36508160afcedbcfe4b98291) by [Unito](https://www.unito.io) --------- Co-authored-by: github-actions <github-actions@github.com> Co-authored-by: GitHub Action <action@github.com>
43 lines
1.3 KiB
Vue
43 lines
1.3 KiB
Vue
<template>
|
|
<div class="flex size-full flex-col justify-between rounded-lg p-6">
|
|
<h1 class="m-0 font-inter text-xl font-semibold italic">
|
|
{{ $t(`desktopDialogs.${id}.title`, title) }}
|
|
</h1>
|
|
<p class="whitespace-pre-wrap">
|
|
{{ $t(`desktopDialogs.${id}.message`, message) }}
|
|
</p>
|
|
<div class="flex w-full gap-2">
|
|
<Button
|
|
v-for="button in buttons"
|
|
:key="button.label"
|
|
class="rounded-lg first:mr-auto"
|
|
:label="
|
|
$t(
|
|
`desktopDialogs.${id}.buttons.${normalizeI18nKey(button.label)}`,
|
|
button.label
|
|
)
|
|
"
|
|
:severity="button.severity ?? 'secondary'"
|
|
@click="handleButtonClick(button)"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import { normalizeI18nKey } from '@comfyorg/shared-frontend-utils/formatUtil'
|
|
import Button from 'primevue/button'
|
|
import { useRoute } from 'vue-router'
|
|
|
|
import { getDialog } from '@/constants/desktopDialogs'
|
|
import type { DialogAction } from '@/constants/desktopDialogs'
|
|
import { electronAPI } from '@/utils/envUtil'
|
|
|
|
const route = useRoute()
|
|
const { id, title, message, buttons } = getDialog(route.params.dialogId)
|
|
|
|
const handleButtonClick = async (button: DialogAction) => {
|
|
await electronAPI().Dialog.clickButton(button.returnValue)
|
|
}
|
|
</script>
|