23 lines
680 B
TypeScript
23 lines
680 B
TypeScript
import { I18nService } from "@bitwarden/common/abstractions/i18n.service";
|
|
import { AuthService } from "@bitwarden/common/auth/abstractions/auth.service";
|
|
|
|
import { Response } from "../../models/response";
|
|
import { MessageResponse } from "../../models/response/message.response";
|
|
|
|
export class LogoutCommand {
|
|
constructor(
|
|
private authService: AuthService,
|
|
private i18nService: I18nService,
|
|
private logoutCallback: () => Promise<void>
|
|
) {}
|
|
|
|
async run() {
|
|
await this.logoutCallback();
|
|
this.authService.logOut(() => {
|
|
/* Do nothing */
|
|
});
|
|
const res = new MessageResponse("You have logged out.", null);
|
|
return Response.success(res);
|
|
}
|
|
}
|