mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-04-26 09:19:43 +00:00
## Summary - Show an upsell dialog when single-seat plan users try to invite members, with a banner on the members panel directing them to upgrade. - Misc fixes for member max seat display ## Changes - **What**: `InviteMemberUpsellDialogContent.vue`, `MembersPanelContent.vue`, `WorkspacePanelContent.vue` ## Screenshots <img width="2730" height="1907" alt="image" src="https://github.com/user-attachments/assets/e39a23be-8533-4ebb-a4ae-2797fc382bc2" /> <img width="2730" height="1907" alt="image" src="https://github.com/user-attachments/assets/bec55867-1088-4d3a-b308-5d5cce64c8ae" /> ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-8801-feat-invite-member-upsell-for-single-seat-plans-3046d73d365081349b09fe1d4dc572e8) by [Unito](https://www.unito.io) --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: GitHub Action <action@github.com>
43 lines
1.3 KiB
Vue
43 lines
1.3 KiB
Vue
<template>
|
|
<Toast group="invite-accepted" position="top-right">
|
|
<template #message="slotProps">
|
|
<div class="flex items-center gap-2 justify-between w-full">
|
|
<div class="flex flex-col justify-start">
|
|
<div class="text-base">
|
|
{{ slotProps.message.summary }}
|
|
</div>
|
|
<div class="mt-1 text-sm text-foreground">
|
|
{{ slotProps.message.detail.text }} <br />
|
|
{{ slotProps.message.detail.workspaceName }}
|
|
</div>
|
|
</div>
|
|
<Button
|
|
size="md"
|
|
variant="inverted"
|
|
@click="viewWorkspace(slotProps.message.detail.workspaceId)"
|
|
>
|
|
{{ t('workspace.viewWorkspace') }}
|
|
</Button>
|
|
</div>
|
|
</template>
|
|
</Toast>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import { useToast } from 'primevue'
|
|
import Toast from 'primevue/toast'
|
|
import { useI18n } from 'vue-i18n'
|
|
|
|
import Button from '@/components/ui/button/Button.vue'
|
|
import { useWorkspaceSwitch } from '@/platform/auth/workspace/useWorkspaceSwitch'
|
|
|
|
const { t } = useI18n()
|
|
const toast = useToast()
|
|
const { switchWithConfirmation } = useWorkspaceSwitch()
|
|
|
|
function viewWorkspace(workspaceId: string) {
|
|
void switchWithConfirmation(workspaceId)
|
|
toast.removeGroup('invite-accepted')
|
|
}
|
|
</script>
|