{pluginId} v{m.version || '?'}
{tr(`status.${p.status}`, undefined, p.status)}
{#if p.status === 'degraded'}

{tr('pluginCard.degraded')}

{/if} {#if m.description}

{m.description}

{/if}
{tr('pluginCard.name')}: {m.name || '-'}
{tr('common.source')}: {m.source || tr('common.unknown')}
{tr('pluginCard.contributions')}: {contribSummary}
{tr('pluginCard.technicalDetails')}
{tr('pluginCard.apiVersion')}: {m.apiVersion || '-'}
{tr('pluginCard.root')}: {p.rootPath || '-'}
{tr('pluginCard.provides')}
{#each m.provides || [] as cap} {cap} {/each}
{#if m.requires && m.requires.length > 0}
{tr('pluginCard.requires')}
{#each m.requires as req} {@const found = capabilities.some(c => c.name === req)} {req} {#if found}✓{/if} {/each}
{#if missingRequired.length > 0}

{tr('pluginCard.missingRequired')}: {missingRequired.join(', ')}

{/if}
{/if} {#if m.optionalRequires && m.optionalRequires.length > 0}
{tr('pluginCard.optionalRequires')}
{#each m.optionalRequires as opt} {@const found = capabilities.some(c => c.name === opt)} {opt} {#if found}✓{/if} {/each}
{#if missingOptional.length > 0}

{tr('pluginCard.optionalUnavailable')}

{/if}
{/if} {#if m.permissions && m.permissions.length > 0}
{tr('pluginCard.permissions')}
{#each m.permissions as perm} {@const isDangerous = dangerousPermissions.includes(perm)} {perm} {#if isDangerous}{/if} {/each}
{/if}
{#if p.error}
{p.error}
{/if}
{#if hasSettingsPanel} {/if} {#if vaultOpen && canToggle} {#if isDisabled} {:else} {/if} {/if} {#if !vaultOpen && canToggle} {tr('pluginCard.openVault')} {/if}
{#if !hasUIPermission && m.contributes && ((m.contributes.views || []).length > 0 || (m.contributes.sidebarItems || []).length > 0 || (m.contributes.settingsPanels || []).length > 0)}

{tr('pluginCard.missingUiPermission')}

{/if}