From 257c0f6cab12ee86d9495845542fb47437007ba2 Mon Sep 17 00:00:00 2001 From: Baptiste Grob <60621355+baptiste-grob@users.noreply.github.com> Date: Tue, 23 Mar 2021 18:52:11 +0100 Subject: [PATCH] feat: add onSignOut bridge hook --- app/assets/javascripts/services/bridge.ts | 1 + app/assets/javascripts/services/browserBridge.ts | 1 + app/assets/javascripts/ui_models/application.ts | 6 ++++-- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/services/bridge.ts b/app/assets/javascripts/services/bridge.ts index 7b0da9931..5cf08d83a 100644 --- a/app/assets/javascripts/services/bridge.ts +++ b/app/assets/javascripts/services/bridge.ts @@ -17,6 +17,7 @@ export interface Bridge { syncComponents(payloads: unknown[]): void; onMajorDataChange(): void; onInitialDataLoad(): void; + onSignOut(): void; onSearch(text?: string): void; downloadBackup(): void | Promise; } diff --git a/app/assets/javascripts/services/browserBridge.ts b/app/assets/javascripts/services/browserBridge.ts index d0408ffa6..29796ec80 100644 --- a/app/assets/javascripts/services/browserBridge.ts +++ b/app/assets/javascripts/services/browserBridge.ts @@ -30,4 +30,5 @@ export class BrowserBridge implements Bridge { onInitialDataLoad(): void {} onSearch(): void {} downloadBackup(): void {} + onSignOut(): void {} } diff --git a/app/assets/javascripts/ui_models/application.ts b/app/assets/javascripts/ui_models/application.ts index d47790a9f..131c3055b 100644 --- a/app/assets/javascripts/ui_models/application.ts +++ b/app/assets/javascripts/ui_models/application.ts @@ -6,13 +6,12 @@ import { InputModalScope } from '@/directives/views/inputModal'; import { PasswordWizardType, PasswordWizardScope } from '@/types'; import { SNApplication, - platformFromString, SNComponent, PermissionDialog, DeinitSource, } from '@standardnotes/snjs'; import angular from 'angular'; -import { getPlatform, getPlatformString } from '@/utils'; +import { getPlatform } from '@/utils'; import { AlertService } from '@/services/alertService'; import { WebDeviceInterface } from '@/web_device_interface'; import { @@ -92,6 +91,9 @@ export class WebApplication extends SNApplication { this.scope = undefined; (this.openModalComponent as any) = undefined; (this.presentPermissionsDialog as any) = undefined; + if (source === DeinitSource.SignOut) { + this.bridge.onSignOut(); + } /** Allow our Angular directives to be destroyed and any pending digest cycles * to complete before destroying the global application instance and all its services */ setTimeout(() => {