Support multiple servers per tenant in server panel UI.
Add server chips, create/delete flows, and show server count or name on list and home expiring cards. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -26,6 +26,7 @@ type ServerSummary = {
|
||||
expiryLevel: ExpiryLevel
|
||||
expiryLabel: string
|
||||
isDedicated?: boolean
|
||||
serverName?: string | null
|
||||
}
|
||||
|
||||
type Tenant = {
|
||||
@@ -33,6 +34,7 @@ type Tenant = {
|
||||
product: 'hamkar' | 'khanegi'
|
||||
slug?: string
|
||||
nameFa?: string
|
||||
serverAccountId?: string
|
||||
sms?: SmsSummary
|
||||
server?: ServerSummary
|
||||
}
|
||||
@@ -221,14 +223,19 @@ onMounted(load)
|
||||
<div class="sms-mini-grid">
|
||||
<button
|
||||
v-for="tenant in expiringServers"
|
||||
:key="tenant.id"
|
||||
:key="`${tenant.id}-${tenant.serverAccountId || tenant.server?.serverName || ''}`"
|
||||
type="button"
|
||||
class="sms-mini-card"
|
||||
:class="serverTone(tenant.server?.expiryLevel)"
|
||||
@click.stop="openServerPanel(tenant.id)"
|
||||
>
|
||||
<strong>{{ tenant.nameFa }}</strong>
|
||||
<span>{{ tenant.product === 'hamkar' ? 'همکار' : 'خانگی' }}</span>
|
||||
<span>
|
||||
{{ tenant.product === 'hamkar' ? 'همکار' : 'خانگی' }}
|
||||
<template v-if="tenant.server?.serverName">
|
||||
· {{ tenant.server.serverName }}
|
||||
</template>
|
||||
</span>
|
||||
<small>{{ tenant.server?.expiryLabel || 'نامشخص' }}</small>
|
||||
</button>
|
||||
<div v-if="!expiringServers.length" class="sms-mini-empty">
|
||||
|
||||
Reference in New Issue
Block a user