chore: simplify memo filters

pull/4474/head
Johnny 7 months ago
parent 16a0872972
commit 3401def442

@ -151,7 +151,7 @@ const MemoEditor = observer((props: Props) => {
const isMetaKey = event.ctrlKey || event.metaKey; const isMetaKey = event.ctrlKey || event.metaKey;
if (isMetaKey) { if (isMetaKey) {
if (event.key === "Enter") { if (event.key === "Enter") {
void handleSaveBtnClick(); handleSaveBtnClick();
return; return;
} }
if (!workspaceMemoRelatedSetting.disableMarkdownShortcuts) { if (!workspaceMemoRelatedSetting.disableMarkdownShortcuts) {

@ -5,29 +5,17 @@ import { useSearchParams } from "react-router-dom";
import { FilterFactor, getMemoFilterKey, MemoFilter, stringifyFilters, useMemoFilterStore } from "@/store/v1"; import { FilterFactor, getMemoFilterKey, MemoFilter, stringifyFilters, useMemoFilterStore } from "@/store/v1";
const MemoFilters = () => { const MemoFilters = () => {
const [searchParams, setSearchParams] = useSearchParams(); const [, setSearchParams] = useSearchParams();
const memoFilterStore = useMemoFilterStore(); const memoFilterStore = useMemoFilterStore();
const filters = memoFilterStore.filters; const filters = memoFilterStore.filters;
const checkAndSync = () => { useEffect(() => {
const filtersInURL = searchParams.get("filter") || ""; const searchParams = new URLSearchParams();
const storeMatchesURL = filtersInURL === stringifyFilters(filters);
if (!storeMatchesURL) {
// Sync Store -> URL
const newSearchParams = new URLSearchParams(searchParams);
if (filters.length > 0) { if (filters.length > 0) {
newSearchParams.set("filter", stringifyFilters(filters)); searchParams.set("filter", stringifyFilters(filters));
} else {
newSearchParams.delete("filter");
}
setSearchParams(newSearchParams);
} }
}; setSearchParams(searchParams);
}, [filters]);
useEffect(checkAndSync, [searchParams, filters]);
const getFilterDisplayText = (filter: MemoFilter) => { const getFilterDisplayText = (filter: MemoFilter) => {
if (filter.value) { if (filter.value) {

Loading…
Cancel
Save