mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-05 00:43:53 +00:00
Standard loading (#3557)
* Loading circle * Fix compilation warning * Change cur-view-content from display:flex to display:block
This commit is contained in:
@@ -301,7 +301,7 @@ class FileChooser extends React.Component {
|
|||||||
let selectedItemInfo = {
|
let selectedItemInfo = {
|
||||||
repoID: item.repo_id,
|
repoID: item.repo_id,
|
||||||
filePath: item.path,
|
filePath: item.path,
|
||||||
}
|
};
|
||||||
|
|
||||||
this.setState({
|
this.setState({
|
||||||
selectedItemInfo: selectedItemInfo
|
selectedItemInfo: selectedItemInfo
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import TreeListView from './tree-list-view'
|
import TreeListView from './tree-list-view';
|
||||||
|
|
||||||
import TreeNode from '../../components/tree-view/tree-node';
|
import TreeNode from '../../components/tree-view/tree-node';
|
||||||
import Dirent from '../../models/dirent';
|
import Dirent from '../../models/dirent';
|
||||||
@@ -34,10 +34,10 @@ class RepoListItem extends React.Component {
|
|||||||
let repoID = this.props.repo.repo_id;
|
let repoID = this.props.repo.repo_id;
|
||||||
seafileAPI.listDir(repoID, '/').then(res => {
|
seafileAPI.listDir(repoID, '/').then(res => {
|
||||||
let tree = this.state.treeData.clone();
|
let tree = this.state.treeData.clone();
|
||||||
let direntList = res.data.dirent_list.filter(item => item.type === 'dir')
|
let direntList = res.data.dirent_list.filter(item => item.type === 'dir');
|
||||||
this.addResponseListToNode(direntList, tree.root);
|
this.addResponseListToNode(direntList, tree.root);
|
||||||
this.setState({treeData: tree});
|
this.setState({treeData: tree});
|
||||||
})
|
});
|
||||||
|
|
||||||
if (this.props.selectedItemInfo.repoID === this.props.repo.repo_id) {
|
if (this.props.selectedItemInfo.repoID === this.props.repo.repo_id) {
|
||||||
this.setState({isShowChildren: true});
|
this.setState({isShowChildren: true});
|
||||||
@@ -65,7 +65,7 @@ class RepoListItem extends React.Component {
|
|||||||
node = tree.getNodeByPath(node.path);
|
node = tree.getNodeByPath(node.path);
|
||||||
if (!node.isLoaded) {
|
if (!node.isLoaded) {
|
||||||
seafileAPI.listDir(repoID, node.path).then(res => {
|
seafileAPI.listDir(repoID, node.path).then(res => {
|
||||||
let direntList = res.data.dirent_list.filter(item => item.type === 'dir')
|
let direntList = res.data.dirent_list.filter(item => item.type === 'dir');
|
||||||
this.addResponseListToNode(direntList, node);
|
this.addResponseListToNode(direntList, node);
|
||||||
this.setState({treeData: tree});
|
this.setState({treeData: tree});
|
||||||
});
|
});
|
||||||
|
@@ -34,13 +34,13 @@ class SearchedListView extends React.Component {
|
|||||||
<tbody>
|
<tbody>
|
||||||
{this.props.searchResults.map((item, index) => {
|
{this.props.searchResults.map((item, index) => {
|
||||||
return (
|
return (
|
||||||
<SearchedListItem
|
<SearchedListItem
|
||||||
key={index}
|
key={index}
|
||||||
item={item}
|
item={item}
|
||||||
currentItem={this.state.currentItem}
|
currentItem={this.state.currentItem}
|
||||||
onItemClick={this.onItemClick}
|
onItemClick={this.onItemClick}
|
||||||
onSearchedItemDoubleClick={this.props.onSearchedItemDoubleClick}
|
onSearchedItemDoubleClick={this.props.onSearchedItemDoubleClick}
|
||||||
/>);
|
/>);
|
||||||
})}
|
})}
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
@@ -19,7 +19,7 @@ class TreeViewItem extends React.Component {
|
|||||||
|
|
||||||
this.state = {
|
this.state = {
|
||||||
filePath: filePath,
|
filePath: filePath,
|
||||||
}
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
onToggleClick = (e) => {
|
onToggleClick = (e) => {
|
||||||
@@ -62,16 +62,15 @@ class TreeViewItem extends React.Component {
|
|||||||
node={item}
|
node={item}
|
||||||
onNodeCollapse={this.props.onNodeCollapse}
|
onNodeCollapse={this.props.onNodeCollapse}
|
||||||
onNodeExpanded={this.props.onNodeExpanded}
|
onNodeExpanded={this.props.onNodeExpanded}
|
||||||
onNodeClick={this.props.onTreeNodeClick}
|
|
||||||
repo={this.props.repo}
|
repo={this.props.repo}
|
||||||
onDirentItemClick={this.props.onDirentItemClick}
|
onDirentItemClick={this.props.onDirentItemClick}
|
||||||
selectedRepo={this.props.selectedRepo}
|
selectedRepo={this.props.selectedRepo}
|
||||||
selectedPath={this.props.selectedPath}
|
selectedPath={this.props.selectedPath}
|
||||||
fileSuffixes={this.props.fileSuffixes}
|
fileSuffixes={this.props.fileSuffixes}
|
||||||
/>)
|
/>);
|
||||||
})}
|
})}
|
||||||
</div>
|
</div>
|
||||||
)
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
@@ -80,7 +79,7 @@ class TreeViewItem extends React.Component {
|
|||||||
let isCurrentPath = this.props.selectedPath === this.state.filePath;
|
let isCurrentPath = this.props.selectedPath === this.state.filePath;
|
||||||
|
|
||||||
return(
|
return(
|
||||||
<div className={`file-chooser-item `}>
|
<div className="file-chooser-item">
|
||||||
<div className={`${node.path === '/'? 'hide': ''}`}>
|
<div className={`${node.path === '/'? 'hide': ''}`}>
|
||||||
<span className={`item-toggle fa ${node.isExpanded ? 'fa-caret-down' : 'fa-caret-right'}`} onClick={this.onToggleClick}></span>
|
<span className={`item-toggle fa ${node.isExpanded ? 'fa-caret-down' : 'fa-caret-right'}`} onClick={this.onToggleClick}></span>
|
||||||
<span className={`item-info ${(isCurrentRepo && isCurrentPath) ? 'item-active' : ''}`} onClick={this.onItemClick}>
|
<span className={`item-info ${(isCurrentRepo && isCurrentPath) ? 'item-active' : ''}`} onClick={this.onItemClick}>
|
||||||
|
@@ -21,7 +21,6 @@ class TreeListView extends React.Component {
|
|||||||
node={this.props.treeData.root}
|
node={this.props.treeData.root}
|
||||||
onNodeCollapse={this.props.onNodeCollapse}
|
onNodeCollapse={this.props.onNodeCollapse}
|
||||||
onNodeExpanded={this.props.onNodeExpanded}
|
onNodeExpanded={this.props.onNodeExpanded}
|
||||||
onNodeClick={this.props.onTreeNodeClick}
|
|
||||||
repo={this.props.repo}
|
repo={this.props.repo}
|
||||||
onDirentItemClick={this.props.onDirentItemClick}
|
onDirentItemClick={this.props.onDirentItemClick}
|
||||||
selectedRepo={this.props.selectedRepo}
|
selectedRepo={this.props.selectedRepo}
|
||||||
|
@@ -414,7 +414,7 @@ class FilesActivities extends Component {
|
|||||||
<div className="cur-view-path">
|
<div className="cur-view-path">
|
||||||
<h3 className="sf-heading">{gettext('Activities')}</h3>
|
<h3 className="sf-heading">{gettext('Activities')}</h3>
|
||||||
</div>
|
</div>
|
||||||
<div className="cur-view-content" onScroll={this.handleScroll}>
|
<div className="cur-view-content d-block" onScroll={this.handleScroll}>
|
||||||
{this.state.isFirstLoading && <Loading />}
|
{this.state.isFirstLoading && <Loading />}
|
||||||
{(!this.state.isFirstLoading && this.state.errorMsg) &&
|
{(!this.state.isFirstLoading && this.state.errorMsg) &&
|
||||||
<p className="error text-center">{this.state.errorMsg}</p>
|
<p className="error text-center">{this.state.errorMsg}</p>
|
||||||
|
Reference in New Issue
Block a user