chore: app theme store updated (#6356)

This commit is contained in:
Anmol Singh Bhatia 2025-01-10 10:21:22 +05:30 committed by GitHub
parent de009d6d10
commit e3ceb4825a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -7,12 +7,16 @@ export interface IThemeStore {
workspaceAnalyticsSidebarCollapsed: boolean | undefined;
issueDetailSidebarCollapsed: boolean | undefined;
epicDetailSidebarCollapsed: boolean | undefined;
initiativesSidebarCollapsed: boolean | undefined;
projectOverviewSidebarCollapsed: boolean | undefined;
// actions
toggleSidebar: (collapsed?: boolean) => void;
toggleProfileSidebar: (collapsed?: boolean) => void;
toggleWorkspaceAnalyticsSidebar: (collapsed?: boolean) => void;
toggleIssueDetailSidebar: (collapsed?: boolean) => void;
toggleEpicDetailSidebar: (collapsed?: boolean) => void;
toggleInitiativesSidebar: (collapsed?: boolean) => void;
toggleProjectOverviewSidebar: (collapsed?: boolean) => void;
}
export class ThemeStore implements IThemeStore {
@ -22,6 +26,8 @@ export class ThemeStore implements IThemeStore {
workspaceAnalyticsSidebarCollapsed: boolean | undefined = undefined;
issueDetailSidebarCollapsed: boolean | undefined = undefined;
epicDetailSidebarCollapsed: boolean | undefined = undefined;
initiativesSidebarCollapsed: boolean | undefined = undefined;
projectOverviewSidebarCollapsed: boolean | undefined = undefined;
constructor() {
makeObservable(this, {
@ -31,12 +37,16 @@ export class ThemeStore implements IThemeStore {
workspaceAnalyticsSidebarCollapsed: observable.ref,
issueDetailSidebarCollapsed: observable.ref,
epicDetailSidebarCollapsed: observable.ref,
initiativesSidebarCollapsed: observable.ref,
projectOverviewSidebarCollapsed: observable.ref,
// action
toggleSidebar: action,
toggleProfileSidebar: action,
toggleWorkspaceAnalyticsSidebar: action,
toggleIssueDetailSidebar: action,
toggleEpicDetailSidebar: action,
toggleInitiativesSidebar: action,
toggleProjectOverviewSidebar: action,
});
}
@ -96,4 +106,22 @@ export class ThemeStore implements IThemeStore {
}
localStorage.setItem("epic_detail_sidebar_collapsed", this.epicDetailSidebarCollapsed.toString());
};
toggleInitiativesSidebar = (collapsed?: boolean) => {
if (collapsed === undefined) {
this.initiativesSidebarCollapsed = !this.initiativesSidebarCollapsed;
} else {
this.initiativesSidebarCollapsed = collapsed;
}
localStorage.setItem("initiatives_sidebar_collapsed", this.initiativesSidebarCollapsed.toString());
};
toggleProjectOverviewSidebar = (collapsed?: boolean) => {
if (collapsed === undefined) {
this.projectOverviewSidebarCollapsed = !this.projectOverviewSidebarCollapsed;
} else {
this.projectOverviewSidebarCollapsed = collapsed;
}
localStorage.setItem("project_overview_sidebar_collapsed", this.projectOverviewSidebarCollapsed.toString());
};
}