[WEB-584] fix: draft issue management with workspace specific local storage (#3822)

* fix: draft issue local storage state manahement in workspace level

* chore: removed consoles
This commit is contained in:
guru_sainath 2024-02-28 15:29:40 +05:30 committed by GitHub
parent 002b2505f3
commit ec43c8e634
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 37 additions and 1178 deletions

View file

@ -93,7 +93,9 @@ export const CreateUpdateIssueModal: React.FC<IssuesModalProps> = observer((prop
// toast alert
const { setToastAlert } = useToast();
// local storage
const { setValue: setLocalStorageDraftIssue } = useLocalStorage<any>("draftedIssue", {});
const { storedValue: localStorageDraftIssues, setValue: setLocalStorageDraftIssue } = useLocalStorage<
Record<string, Partial<TIssue>>
>("draftedIssue", {});
// current store details
const { store: currentIssueStore, viewId } = issueStores[storeType];
@ -154,9 +156,14 @@ export const CreateUpdateIssueModal: React.FC<IssuesModalProps> = observer((prop
const handleClose = (saveDraftIssueInLocalStorage?: boolean) => {
if (changesMade && saveDraftIssueInLocalStorage) {
const draftIssue = JSON.stringify(changesMade);
setLocalStorageDraftIssue(draftIssue);
// updating the current edited issue data in the local storage
let draftIssues = localStorageDraftIssues ? localStorageDraftIssues : {};
if (workspaceSlug) {
draftIssues = { ...draftIssues, [workspaceSlug]: changesMade };
setLocalStorageDraftIssue(draftIssues);
}
}
setActiveProjectId(null);
onClose();
};