1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-25 06:33:48 +00:00

Merge pull request #7346 from haiwen/fix-metadata-map-view-toolbar

fix: metadata map view toolbar
This commit is contained in:
杨国璇
2025-01-10 15:57:36 +08:00
committed by GitHub
3 changed files with 14 additions and 15 deletions

View File

@@ -9,13 +9,13 @@ const MAP_TYPES = [
{ value: MAP_TYPE.SATELLITE, label: gettext('Satellite') },
];
const MapTypeSetter = ({ view }) => {
const MapTypeSetter = ({ viewID }) => {
const [currentType, setCurrentType] = useState(MAP_TYPE.MAP);
useEffect(() => {
const type = window.sfMetadataContext.localStorage.getItem(STORAGE_MAP_TYPE_KEY) || MAP_TYPE.MAP;
setCurrentType(type);
}, [view?._id]);
}, [viewID]);
const onChange = useCallback((type) => {
if (currentType === type) return;
@@ -27,9 +27,7 @@ const MapTypeSetter = ({ view }) => {
};
MapTypeSetter.propTypes = {
view: PropTypes.shape({
_id: PropTypes.string
})
viewID: PropTypes.string,
};
export default MapTypeSetter;

View File

@@ -115,7 +115,7 @@ const ViewToolBar = ({ viewId, isCustomPermission, onToggleDetail, onCloseDetail
<MapViewToolBar
readOnly={readOnly}
isCustomPermission={isCustomPermission}
viewID={view._id}
view={view}
collaborators={collaborators}
modifyFilters={modifyFilters}
onToggleDetail={onToggleDetail}

View File

@@ -7,19 +7,20 @@ import { gettext } from '../../../../utils/constants';
const MapViewToolBar = ({
isCustomPermission,
readOnly,
viewID,
view: oldView,
collaborators,
modifyFilters,
onToggleDetail,
}) => {
const [showGalleryToolbar, setShowGalleryToolbar] = useState(false);
const [view, setView] = useState({});
const [view, setView] = useState(oldView);
const viewType = useMemo(() => VIEW_TYPE.MAP, []);
const viewColumns = useMemo(() => {
if (!view) return [];
return view.columns;
}, [view]);
if (!oldView) return [];
return oldView.columns;
}, [oldView]);
const viewID = useMemo(() => oldView._id, [oldView]);
const filterColumns = useMemo(() => {
return viewColumns && viewColumns.filter(c => c.key !== PRIVATE_COLUMN_KEY.FILE_TYPE);
@@ -77,16 +78,16 @@ const MapViewToolBar = ({
return (
<>
<div className="sf-metadata-tool-left-operations">
<MapTypeSetter view={view} />
<MapTypeSetter viewID={viewID} />
<FilterSetter
isNeedSubmit={true}
wrapperClass="sf-metadata-view-tool-operation-btn sf-metadata-view-tool-filter"
filtersClassName="sf-metadata-filters"
target="sf-metadata-filter-popover"
readOnly={readOnly}
filterConjunction={view.filter_conjunction}
basicFilters={view.basic_filters}
filters={view.filters}
filterConjunction={oldView.filter_conjunction}
basicFilters={oldView.basic_filters}
filters={oldView.filters}
columns={filterColumns}
modifyFilters={modifyFilters}
collaborators={collaborators}