import { Injectable, signal } from '@angular/core'; export type SettingsPage = 'network' | 'voice' | 'debugging' | 'server' | 'members' | 'bans' | 'permissions'; @Injectable({ providedIn: 'root' }) export class SettingsModalService { readonly isOpen = signal(false); readonly activePage = signal('network'); readonly targetServerId = signal(null); open(page: SettingsPage = 'network', serverId?: string): void { this.activePage.set(page); this.targetServerId.set(serverId ?? null); this.isOpen.set(true); } close(): void { this.isOpen.set(false); } navigate(page: SettingsPage): void { this.activePage.set(page); } }