Files
Toju/src/app/core/services/settings-modal.service.ts
2026-03-07 21:59:39 +01:00

24 lines
688 B
TypeScript

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<SettingsPage>('network');
readonly targetServerId = signal<string | null>(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);
}
}