From bc2c7c80b7615cad501335059062a4668cd36004 Mon Sep 17 00:00:00 2001 From: Michael An <2331806369@qq.com> Date: Wed, 19 Feb 2025 13:45:36 +0800 Subject: [PATCH] fix shared dir page save to repo bug (#7485) --- frontend/src/components/file-chooser/index.js | 2 +- frontend/src/components/file-chooser/repo-list-item.js | 8 ++++---- frontend/src/css/shared-dir-view.css | 4 ++++ 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/frontend/src/components/file-chooser/index.js b/frontend/src/components/file-chooser/index.js index a6a2ee25353..0246dd9c9be 100644 --- a/frontend/src/components/file-chooser/index.js +++ b/frontend/src/components/file-chooser/index.js @@ -19,7 +19,7 @@ const propTypes = { repoID: PropTypes.string, onDirentItemClick: PropTypes.func, onRepoItemClick: PropTypes.func, - mode: PropTypes.isRequired, + mode: PropTypes.string, fileSuffixes: PropTypes.arrayOf(PropTypes.string), currentPath: PropTypes.string, searchResults: PropTypes.array, diff --git a/frontend/src/components/file-chooser/repo-list-item.js b/frontend/src/components/file-chooser/repo-list-item.js index ddf50ad496b..bd265f86532 100644 --- a/frontend/src/components/file-chooser/repo-list-item.js +++ b/frontend/src/components/file-chooser/repo-list-item.js @@ -2,10 +2,10 @@ import React from 'react'; import PropTypes from 'prop-types'; import TreeListView from './tree-list-view'; import TreeNode from '../../components/tree-view/tree-node'; -import Dirent from '../../models/dirent'; -import { seafileAPI } from '../../utils/seafile-api'; import treeHelper from '../../components/tree-view/tree-helper'; +import { seafileAPI } from '../../utils/seafile-api'; import { Utils } from '../../utils/utils'; +import Dirent from '../../models/dirent'; import toaster from '../toast'; const propTypes = { @@ -54,7 +54,7 @@ class RepoListItem extends React.Component { return; } - if (repo && repo.repo_id === this.props.selectedRepo.repo_id || isCurrentRepo) { + if (this.props.selectedRepo && repo && repo.repo_id === this.props.selectedRepo.repo_id || isCurrentRepo) { this.loadRepoDirentList(repo); this.loadRepoTimer = setTimeout(() => { const repoID = repo.repo_id; @@ -69,7 +69,7 @@ class RepoListItem extends React.Component { componentDidUpdate(prevProps) { const { repo, selectedRepo, selectedPath, newFolderName } = this.props; // create new folder in selected repo or folder - if (repo.repo_id === selectedRepo.repo_id && prevProps.selectedRepo !== selectedRepo) { + if (repo && selectedRepo && repo.repo_id === selectedRepo.repo_id && prevProps.selectedRepo !== selectedRepo) { seafileAPI.listDir(repo.repo_id, selectedPath).then(res => { if (!this.isComponentMounted) return; const direntData = res.data.dirent_list.find(item => item.type === 'dir' && item.name === newFolderName); diff --git a/frontend/src/css/shared-dir-view.css b/frontend/src/css/shared-dir-view.css index df86123dc16..850173c9259 100644 --- a/frontend/src/css/shared-dir-view.css +++ b/frontend/src/css/shared-dir-view.css @@ -65,3 +65,7 @@ body { border-radius: 3px; margin: 0; } + +.sf-save-file .file-chooser-scroll-wrapper .file-chooser-list-view-header { + display: none; +}