From d2d264c1f99ae289523f4cceb9c8265b48cb9f29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=9B=BD=E7=92=87?= <37972689+YangGuoXuan-0503@users.noreply.github.com> Date: Tue, 27 Aug 2024 13:34:26 +0800 Subject: [PATCH] feat: metadata init tip (#6644) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: metadata init tip * feat: optimize tip * feat: update code * feat: update code --------- Co-authored-by: 杨国璇 --- frontend/src/metadata/hooks/metadata.js | 2 +- frontend/src/metadata/metadata-view/hooks/metadata.js | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/frontend/src/metadata/hooks/metadata.js b/frontend/src/metadata/hooks/metadata.js index 5cd51e0ab2..b8d0fccb19 100644 --- a/frontend/src/metadata/hooks/metadata.js +++ b/frontend/src/metadata/hooks/metadata.js @@ -103,7 +103,6 @@ export const MetadataProvider = ({ repoID, hideMetadataView, selectMetadataView, view_id: view._id, }; selectMetadataView(node); - setShowFirstView(false); // eslint-disable-next-line react-hooks/exhaustive-deps }, [repoID, selectMetadataView]); @@ -166,6 +165,7 @@ export const MetadataProvider = ({ repoID, hideMetadataView, selectMetadataView, enableMetadata, updateEnableMetadata, showFirstView, + setShowFirstView, navigation, viewsMap: viewsMap.current, selectView, diff --git a/frontend/src/metadata/metadata-view/hooks/metadata.js b/frontend/src/metadata/metadata-view/hooks/metadata.js index dadc6e5e44..08906497ae 100644 --- a/frontend/src/metadata/metadata-view/hooks/metadata.js +++ b/frontend/src/metadata/metadata-view/hooks/metadata.js @@ -5,7 +5,8 @@ import Context from '../context'; import Store from '../store'; import { EVENT_BUS_TYPE, PER_LOAD_NUMBER } from '../constants'; import { Utils } from '../../../utils/utils'; -import { useCollaborators } from '../../hooks'; +import { useCollaborators, useMetadata as usePropsMetadata } from '../../hooks'; +import { gettext } from '../utils'; const MetadataContext = React.createContext(null); @@ -19,6 +20,7 @@ export const MetadataProvider = ({ const [metadata, setMetadata] = useState({ rows: [], columns: [] }); const storeRef = useRef(null); const { collaborators } = useCollaborators(); + const { showFirstView, setShowFirstView } = usePropsMetadata(); const tableChanged = useCallback(() => { setMetadata(storeRef.current.data); @@ -54,7 +56,11 @@ export const MetadataProvider = ({ window.sfMetadataStore = storeRef.current; storeRef.current.initStartIndex(); storeRef.current.load(PER_LOAD_NUMBER).then(() => { + if (showFirstView && storeRef.current.data.rows.length === 0) { + toaster.success(gettext('The files\' metadata is being created. This may take a minute or so. Please refresh the page later.')); + } setMetadata(storeRef.current.data); + setShowFirstView(false); setLoading(false); }).catch(error => { const errorMsg = Utils.getErrorMsg(error);