summaryrefslogtreecommitdiff
path: root/frontend/src/components/DeckyState.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/components/DeckyState.tsx')
-rw-r--r--frontend/src/components/DeckyState.tsx9
1 files changed, 9 insertions, 0 deletions
diff --git a/frontend/src/components/DeckyState.tsx b/frontend/src/components/DeckyState.tsx
index 920985b3..d20c8d86 100644
--- a/frontend/src/components/DeckyState.tsx
+++ b/frontend/src/components/DeckyState.tsx
@@ -1,5 +1,6 @@
import { FC, createContext, useContext, useEffect, useState } from 'react';
+import { DEFAULT_NOTIFICATION_SETTINGS, NotificationSettings } from '../notification-service';
import { Plugin } from '../plugin';
import { PluginUpdateMapping } from '../store';
import { VerInfo } from '../updater';
@@ -13,6 +14,7 @@ interface PublicDeckyState {
hasLoaderUpdate?: boolean;
isLoaderUpdating: boolean;
versionInfo: VerInfo | null;
+ notificationSettings: NotificationSettings;
userInfo: UserInfo | null;
}
@@ -30,6 +32,7 @@ export class DeckyState {
private _hasLoaderUpdate: boolean = false;
private _isLoaderUpdating: boolean = false;
private _versionInfo: VerInfo | null = null;
+ private _notificationSettings = DEFAULT_NOTIFICATION_SETTINGS;
private _userInfo: UserInfo | null = null;
public eventBus = new EventTarget();
@@ -44,6 +47,7 @@ export class DeckyState {
hasLoaderUpdate: this._hasLoaderUpdate,
isLoaderUpdating: this._isLoaderUpdating,
versionInfo: this._versionInfo,
+ notificationSettings: this._notificationSettings,
userInfo: this._userInfo,
};
}
@@ -93,6 +97,11 @@ export class DeckyState {
this.notifyUpdate();
}
+ setNotificationSettings(notificationSettings: NotificationSettings) {
+ this._notificationSettings = notificationSettings;
+ this.notifyUpdate();
+ }
+
setUserInfo(userInfo: UserInfo) {
this._userInfo = userInfo;
this.notifyUpdate();