/
Alex_Ural
/
opencode
Обзор
Документация
Войти
/
Alex_Ural
/
opencode
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
packages/app/src/utils/toast.tsx
34 строки
1 KB
Aarav Sareen
feat(app): v2 desktop UI improvements (#29689)
01 июн 2026, 22:09
Не верифицирован
01 июн 2026, 22:09
363d6d1
Код
Авторство
О чём код?
import { Icon, type IconProps } from "@opencode-ai/ui/icon" import { Toast, showToast as showLegacyToast, type ToastOptions, type ToastVariant } from "@opencode-ai/ui/toast" import { ToastV2, showToastV2 } from "@opencode-ai/ui/v2/toast-v2" let v2 = false export function setV2Toast(value: boolean) { v2 = value } export function ToastRegion(props: { v2: boolean }) { if (props.v2) return <ToastV2.Region /> return <Toast.Region /> } export function showToast(options: ToastOptions | string) { if (!v2) return showLegacyToast(options) if (typeof options === "string") return showToastV2(options) return showToastV2({ ...options, icon: resolveIcon(options.icon, options.variant), actions: options.actions?.map((action) => ({ ...action, variant: action.onClick === "dismiss" ? "secondary" : "primary", })), }) } function resolveIcon(icon: IconProps["name"] | undefined, variant: ToastVariant | undefined) { const name = icon ?? (variant === "success" ? "check" : undefined) if (!name) return return <Icon name={name} /> }