fix: workspace setting keys in frontend

pull/4908/head
Steven 3 months ago
parent 6e45e9f8b6
commit c133f5528a

@ -52,7 +52,7 @@ const AddMemoRelationPopover = (props: Props) => {
} }
const { memos } = await memoServiceClient.listMemos({ const { memos } = await memoServiceClient.listMemos({
parent: user.name, parent: user.name,
filter: conditions.length > 0 ? conditions.join(" AND ") : undefined, filter: conditions.length > 0 ? conditions.join(" && ") : undefined,
pageSize: DEFAULT_LIST_MEMOS_PAGE_SIZE, pageSize: DEFAULT_LIST_MEMOS_PAGE_SIZE,
}); });
setFetchedMemos(memos); setFetchedMemos(memos);

@ -9,8 +9,8 @@ import { Input } from "@/components/ui/input";
import { Switch } from "@/components/ui/switch"; import { Switch } from "@/components/ui/switch";
import { workspaceStore } from "@/store"; import { workspaceStore } from "@/store";
import { workspaceSettingNamePrefix } from "@/store/common"; import { workspaceSettingNamePrefix } from "@/store/common";
import { WorkspaceSettingKey } from "@/store/workspace";
import { WorkspaceMemoRelatedSetting } from "@/types/proto/api/v1/workspace_service"; import { WorkspaceMemoRelatedSetting } from "@/types/proto/api/v1/workspace_service";
import { WorkspaceSettingKey } from "@/types/proto/store/workspace_setting";
import { useTranslate } from "@/utils/i18n"; import { useTranslate } from "@/utils/i18n";
const MemoRelatedSettings = observer(() => { const MemoRelatedSettings = observer(() => {

@ -13,12 +13,12 @@ import { Switch } from "@/components/ui/switch";
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@/components/ui/tooltip"; import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@/components/ui/tooltip";
import { workspaceStore } from "@/store"; import { workspaceStore } from "@/store";
import { workspaceSettingNamePrefix } from "@/store/common"; import { workspaceSettingNamePrefix } from "@/store/common";
import { WorkspaceSettingKey } from "@/store/workspace";
import { import {
WorkspaceStorageSetting, WorkspaceStorageSetting,
WorkspaceStorageSetting_S3Config, WorkspaceStorageSetting_S3Config,
WorkspaceStorageSetting_StorageType, WorkspaceStorageSetting_StorageType,
} from "@/types/proto/api/v1/workspace_service"; } from "@/types/proto/api/v1/workspace_service";
import { WorkspaceSettingKey } from "@/types/proto/store/workspace_setting";
import { useTranslate } from "@/utils/i18n"; import { useTranslate } from "@/utils/i18n";
const StorageSection = observer(() => { const StorageSection = observer(() => {

@ -13,9 +13,9 @@ import { identityProviderServiceClient } from "@/grpcweb";
import useDialog from "@/hooks/useDialog"; import useDialog from "@/hooks/useDialog";
import { workspaceStore } from "@/store"; import { workspaceStore } from "@/store";
import { workspaceSettingNamePrefix } from "@/store/common"; import { workspaceSettingNamePrefix } from "@/store/common";
import { WorkspaceSettingKey } from "@/store/workspace";
import { IdentityProvider } from "@/types/proto/api/v1/idp_service"; import { IdentityProvider } from "@/types/proto/api/v1/idp_service";
import { WorkspaceGeneralSetting } from "@/types/proto/api/v1/workspace_service"; import { WorkspaceGeneralSetting } from "@/types/proto/api/v1/workspace_service";
import { WorkspaceSettingKey } from "@/types/proto/store/workspace_setting";
import { useTranslate } from "@/utils/i18n"; import { useTranslate } from "@/utils/i18n";
import ThemeSelector from "../ThemeSelector"; import ThemeSelector from "../ThemeSelector";
import UpdateCustomizedProfileDialog from "../UpdateCustomizedProfileDialog"; import UpdateCustomizedProfileDialog from "../UpdateCustomizedProfileDialog";

@ -7,8 +7,8 @@ import { Label } from "@/components/ui/label";
import { Textarea } from "@/components/ui/textarea"; import { Textarea } from "@/components/ui/textarea";
import { workspaceStore } from "@/store"; import { workspaceStore } from "@/store";
import { workspaceSettingNamePrefix } from "@/store/common"; import { workspaceSettingNamePrefix } from "@/store/common";
import { WorkspaceSettingKey } from "@/store/workspace";
import { WorkspaceCustomProfile } from "@/types/proto/api/v1/workspace_service"; import { WorkspaceCustomProfile } from "@/types/proto/api/v1/workspace_service";
import { WorkspaceSettingKey } from "@/types/proto/store/workspace_setting";
import { useTranslate } from "@/utils/i18n"; import { useTranslate } from "@/utils/i18n";
import AppearanceSelect from "./AppearanceSelect"; import AppearanceSelect from "./AppearanceSelect";
import LocaleSelect from "./LocaleSelect"; import LocaleSelect from "./LocaleSelect";

@ -4,10 +4,11 @@ import { useMemo } from "react";
import MemoView from "@/components/MemoView"; import MemoView from "@/components/MemoView";
import PagedMemoList from "@/components/PagedMemoList"; import PagedMemoList from "@/components/PagedMemoList";
import useCurrentUser from "@/hooks/useCurrentUser"; import useCurrentUser from "@/hooks/useCurrentUser";
import { viewStore, userStore } from "@/store"; import { viewStore, userStore, workspaceStore } from "@/store";
import memoFilterStore from "@/store/memoFilter"; import memoFilterStore from "@/store/memoFilter";
import { State } from "@/types/proto/api/v1/common"; import { State } from "@/types/proto/api/v1/common";
import { Memo } from "@/types/proto/api/v1/memo_service"; import { Memo } from "@/types/proto/api/v1/memo_service";
import { WorkspaceSettingKey } from "@/types/proto/store/workspace_setting";
// Helper function to extract shortcut ID from resource name // Helper function to extract shortcut ID from resource name
// Format: users/{user}/shortcuts/{shortcut} // Format: users/{user}/shortcuts/{shortcut}
@ -39,10 +40,13 @@ const Home = observer(() => {
} else if (filter.factor === "property.hasCode") { } else if (filter.factor === "property.hasCode") {
conditions.push(`has_code`); conditions.push(`has_code`);
} else if (filter.factor === "displayTime") { } else if (filter.factor === "displayTime") {
const displayWithUpdateTime = workspaceStore.getWorkspaceSettingByKey(WorkspaceSettingKey.MEMO_RELATED).memoRelatedSetting
?.displayWithUpdateTime;
const factor = displayWithUpdateTime ? "updated_ts" : "created_ts";
const filterDate = new Date(filter.value); const filterDate = new Date(filter.value);
const filterUtcTimestamp = filterDate.getTime() + filterDate.getTimezoneOffset() * 60 * 1000; const filterUtcTimestamp = filterDate.getTime() + filterDate.getTimezoneOffset() * 60 * 1000;
const timestampAfter = filterUtcTimestamp / 1000; const timestampAfter = filterUtcTimestamp / 1000;
conditions.push(`created_ts >= ${timestampAfter} AND created_ts < ${timestampAfter + 60 * 60 * 24}`); conditions.push(`${factor} >= ${timestampAfter} && ${factor} < ${timestampAfter + 60 * 60 * 24}`);
} }
} }
return conditions.length > 0 ? conditions.join(" && ") : undefined; return conditions.length > 0 ? conditions.join(" && ") : undefined;

@ -15,8 +15,8 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@
import useCurrentUser from "@/hooks/useCurrentUser"; import useCurrentUser from "@/hooks/useCurrentUser";
import useResponsiveWidth from "@/hooks/useResponsiveWidth"; import useResponsiveWidth from "@/hooks/useResponsiveWidth";
import { workspaceStore } from "@/store"; import { workspaceStore } from "@/store";
import { WorkspaceSettingKey } from "@/store/workspace";
import { User_Role } from "@/types/proto/api/v1/user_service"; import { User_Role } from "@/types/proto/api/v1/user_service";
import { WorkspaceSettingKey } from "@/types/proto/store/workspace_setting";
import { useTranslate } from "@/utils/i18n"; import { useTranslate } from "@/utils/i18n";
type SettingSection = "my-account" | "preference" | "member" | "system" | "memo-related" | "storage" | "sso"; type SettingSection = "my-account" | "preference" | "member" | "system" | "memo-related" | "storage" | "sso";

@ -3,20 +3,10 @@ import { makeAutoObservable } from "mobx";
import { workspaceServiceClient } from "@/grpcweb"; import { workspaceServiceClient } from "@/grpcweb";
import { WorkspaceProfile } from "@/types/proto/api/v1/workspace_service"; import { WorkspaceProfile } from "@/types/proto/api/v1/workspace_service";
import { WorkspaceGeneralSetting, WorkspaceMemoRelatedSetting, WorkspaceSetting } from "@/types/proto/api/v1/workspace_service"; import { WorkspaceGeneralSetting, WorkspaceMemoRelatedSetting, WorkspaceSetting } from "@/types/proto/api/v1/workspace_service";
import { WorkspaceSettingKey } from "@/types/proto/store/workspace_setting";
import { isValidateLocale } from "@/utils/i18n"; import { isValidateLocale } from "@/utils/i18n";
import { workspaceSettingNamePrefix } from "./common"; import { workspaceSettingNamePrefix } from "./common";
export enum WorkspaceSettingKey {
/** BASIC - BASIC is the key for basic settings. */
BASIC = "BASIC",
/** GENERAL - GENERAL is the key for general settings. */
GENERAL = "GENERAL",
/** STORAGE - STORAGE is the key for storage settings. */
STORAGE = "STORAGE",
/** MEMO_RELATED - MEMO_RELATED is the key for memo related settings. */
MEMO_RELATED = "MEMO_RELATED",
}
class LocalState { class LocalState {
locale: string = "en"; locale: string = "en";
appearance: string = "system"; appearance: string = "system";

Loading…
Cancel
Save