diff --git a/frontend/src/components/dialog/add-related-file-dialog.js b/frontend/src/components/dialog/add-related-file-dialog.js
index 24928644ef..3cdbcbd5af 100644
--- a/frontend/src/components/dialog/add-related-file-dialog.js
+++ b/frontend/src/components/dialog/add-related-file-dialog.js
@@ -1,6 +1,6 @@
import React ,{ Fragment } from 'react';
import PropTypes from 'prop-types';
-import { Button, Modal, ModalHeader, ModalBody, ModalFooter, Alert } from 'reactstrap';
+import { Button, ModalHeader, ModalBody, ModalFooter, Alert } from 'reactstrap';
import { gettext } from '../../utils/constants';
import { seafileAPI } from '../../utils/seafile-api';
import { Utils } from '../../utils/utils';
diff --git a/frontend/src/components/dialog/list-related-file-dialog.js b/frontend/src/components/dialog/list-related-file-dialog.js
index 95e91d1ad9..b20b93d857 100644
--- a/frontend/src/components/dialog/list-related-file-dialog.js
+++ b/frontend/src/components/dialog/list-related-file-dialog.js
@@ -1,6 +1,6 @@
import React ,{ Fragment } from 'react';
import PropTypes from 'prop-types';
-import { Button, Modal, ModalHeader, ModalBody, ModalFooter, Table } from 'reactstrap';
+import { Button, ModalHeader, ModalBody, ModalFooter, Table } from 'reactstrap';
import Dirent from '../../models/dirent';
import { gettext, siteRoot } from '../../utils/constants';
import { Utils } from '../../utils/utils';
diff --git a/frontend/src/components/dialog/share-to-user.js b/frontend/src/components/dialog/share-to-user.js
index cf2ba65c10..e47c81aece 100644
--- a/frontend/src/components/dialog/share-to-user.js
+++ b/frontend/src/components/dialog/share-to-user.js
@@ -5,7 +5,7 @@ import { Button } from 'reactstrap';
import { seafileAPI } from '../../utils/seafile-api.js';
import UserSelect from '../user-select';
import SharePermissionEditor from '../select-editor/share-permission-editor';
-import "../../css/invitations.css";
+import '../../css/invitations.css';
class UserItem extends React.Component {
diff --git a/frontend/src/components/dir-view-mode/dir-column-nav.js b/frontend/src/components/dir-view-mode/dir-column-nav.js
index eddad71662..845b4df570 100644
--- a/frontend/src/components/dir-view-mode/dir-column-nav.js
+++ b/frontend/src/components/dir-view-mode/dir-column-nav.js
@@ -30,6 +30,8 @@ const propTypes = {
navRate: PropTypes.number,
inResizing: PropTypes.bool.isRequired,
currentRepoInfo: PropTypes.object.isRequired,
+ onItemMove: PropTypes.func.isRequired,
+ onItemCopy: PropTypes.func.isRequired,
selectedDirentList: PropTypes.array.isRequired,
};
diff --git a/frontend/src/components/dir-view-mode/dir-grid-view.js b/frontend/src/components/dir-view-mode/dir-grid-view.js
index 4b6834b234..2dff26c215 100644
--- a/frontend/src/components/dir-view-mode/dir-grid-view.js
+++ b/frontend/src/components/dir-view-mode/dir-grid-view.js
@@ -30,6 +30,7 @@ const propTypes = {
showDirentDetail: PropTypes.func.isRequired,
onAddFolder: PropTypes.func.isRequired,
onFileTagChanged: PropTypes.func,
+ onItemRename: PropTypes.func.isRequired,
};
class DirGridView extends React.Component {
diff --git a/frontend/src/components/dirent-grid-view/dirent-grid-item.js b/frontend/src/components/dirent-grid-view/dirent-grid-item.js
index 8de5de9fa4..1ad87daade 100644
--- a/frontend/src/components/dirent-grid-view/dirent-grid-item.js
+++ b/frontend/src/components/dirent-grid-view/dirent-grid-item.js
@@ -13,6 +13,8 @@ const propTypes = {
onGridItemClick: PropTypes.func.isRequired,
activeDirent: PropTypes.object,
onGridItemMouseDown: PropTypes.func,
+ currentRepoInfo: PropTypes.object,
+ onItemMove: PropTypes.func.isRequired,
};
class DirentGridItem extends React.Component {
@@ -22,7 +24,7 @@ class DirentGridItem extends React.Component {
this.state = {
isGridSelected: false,
isGridDropTipShow: false,
- }
+ };
}
componentWillReceiveProps(nextProps) {
@@ -30,7 +32,7 @@ class DirentGridItem extends React.Component {
if (nextProps.activeDirent && nextProps.activeDirent.name === nextProps.dirent.name) {
this.setState({isGridSelected: true});
}
- })
+ });
}
onItemMove = (destRepo, dirent, selectedPath, currentPath) => {
@@ -51,7 +53,7 @@ class DirentGridItem extends React.Component {
}
} else {
this.setState({isGridSelected: false});
- this.props.onGridItemClick(this.props.dirent)
+ this.props.onGridItemClick(this.props.dirent);
}
}
@@ -140,9 +142,9 @@ class DirentGridItem extends React.Component {
}
let fileHref = siteRoot + 'lib/' + this.props.repoID + '/file' + Utils.encodePath(direntPath);
- let gridClass = 'grid-file-img-link cursor-pointer'
- gridClass += this.state.isGridSelected ? " grid-selected-active" : " ";
- gridClass += this.state.isGridDropTipShow ? " grid-drop-show" : " ";
+ let gridClass = 'grid-file-img-link cursor-pointer';
+ gridClass += this.state.isGridSelected ? ' grid-selected-active' : ' ';
+ gridClass += this.state.isGridDropTipShow ? ' grid-drop-show' : ' ';
let lockedInfo = gettext('locked by {name}');
lockedInfo = lockedInfo.replace('{name}', dirent.lock_owner_name);
@@ -167,11 +169,11 @@ class DirentGridItem extends React.Component {
{dirent.is_locked &&
}
- )
+ );
}
}
diff --git a/frontend/src/components/dirent-grid-view/dirent-grid-view.js b/frontend/src/components/dirent-grid-view/dirent-grid-view.js
index 619988ab51..504653c0f1 100644
--- a/frontend/src/components/dirent-grid-view/dirent-grid-view.js
+++ b/frontend/src/components/dirent-grid-view/dirent-grid-view.js
@@ -40,8 +40,8 @@ const propTypes = {
isDirentDetailShow: PropTypes.bool.isRequired,
onGridItemClick: PropTypes.func,
onAddFolder: PropTypes.func.isRequired,
- showDirentDetail: PropTypes.func,
- onItemRename: PropTypes.func,
+ showDirentDetail: PropTypes.func.isRequired,
+ onItemRename: PropTypes.func.isRequired,
};
class DirentGridView extends React.Component{
diff --git a/frontend/src/components/dirent-list-view/dirent-list-item.js b/frontend/src/components/dirent-list-view/dirent-list-item.js
index b75d92e7ef..cc5bebec80 100644
--- a/frontend/src/components/dirent-list-view/dirent-list-item.js
+++ b/frontend/src/components/dirent-list-view/dirent-list-item.js
@@ -45,6 +45,8 @@ const propTypes = {
selectedDirentList: PropTypes.array.isRequired,
activeDirent: PropTypes.object,
getDirentItemMenuList: PropTypes.func.isRequired,
+ onFileTagChanged: PropTypes.func,
+ enableDirPrivateShare: PropTypes.bool.isRequired,
};
class DirentListItem extends React.Component {
@@ -480,7 +482,7 @@ class DirentListItem extends React.Component {
}
- )
+ );
}
render() {
diff --git a/frontend/src/components/dirent-list-view/dirent-list-view.js b/frontend/src/components/dirent-list-view/dirent-list-view.js
index 39bb93e494..2a01ab67dd 100644
--- a/frontend/src/components/dirent-list-view/dirent-list-view.js
+++ b/frontend/src/components/dirent-list-view/dirent-list-view.js
@@ -45,6 +45,8 @@ const propTypes = {
onItemsCopy: PropTypes.func.isRequired,
onItemsDelete: PropTypes.func.isRequired,
onFileTagChanged: PropTypes.func,
+ enableDirPrivateShare: PropTypes.bool.isRequired,
+ isGroupOwnedRepo: PropTypes.bool.isRequired,
};
class DirentListView extends React.Component {
@@ -294,10 +296,10 @@ class DirentListView extends React.Component {
let y = event.clientY || (event.touches && event.touches[0].pageY);
if (this.props.posX) {
- x -= this.props.posX;
+ x -= this.props.posX;
}
if (this.props.posY) {
- y -= this.props.posY;
+ y -= this.props.posY;
}
hideMenu();
@@ -326,7 +328,7 @@ class DirentListView extends React.Component {
onContainerContextMenu = (event) => {
if (this.props.selectedDirentList.length === 0) {
- let id = "dirent-container-menu"
+ let id = 'dirent-container-menu';
let menuList = [TextTranslation.NEW_FOLDER, TextTranslation.NEW_FILE];
this.handleContextClick(event, id, menuList);
} else {
@@ -341,7 +343,7 @@ class DirentListView extends React.Component {
event.preventDefault();
event.persist();
setTimeout(() => {
- let id = "dirent-container-menu"
+ let id = 'dirent-container-menu';
let menuList = [TextTranslation.NEW_FOLDER, TextTranslation.NEW_FILE];
this.handleContextClick(event, id, menuList);
}, 0);
@@ -539,7 +541,7 @@ class DirentListView extends React.Component {
onTableDragLeave = (e) => {
if (e.target.className === 'table-container table-drop-active') {
- this.setState({isListDropTipShow: false})
+ this.setState({isListDropTipShow: false});
}
}
@@ -558,7 +560,7 @@ class DirentListView extends React.Component {
if (nodeRootPath === this.props.path || nodeParentPath === this.props.path) {
return;
}
- this.props.onItemMove(this.props.currentRepoInfo, nodeDirent, this.props.path, nodeParentPath)
+ this.props.onItemMove(this.props.currentRepoInfo, nodeDirent, this.props.path, nodeParentPath);
}
}
diff --git a/frontend/src/components/toolbar/markdown-viewer-toolbar.js b/frontend/src/components/toolbar/markdown-viewer-toolbar.js
index 44858c2586..7e4601b3bf 100644
--- a/frontend/src/components/toolbar/markdown-viewer-toolbar.js
+++ b/frontend/src/components/toolbar/markdown-viewer-toolbar.js
@@ -158,7 +158,7 @@ class MarkdownViewerToolbar extends React.Component {
}
{canGenerateShareLink &&
+ onMouseDown={this.props.toggleShareLinkDialog}/>
}
{
this.props.showFileHistory && {
- e.persist()
+ e.persist();
if (e.target.className === 'tree-view tree ') {
this.setState({
isTreeViewDropTipShow: true,
- })
+ });
}
}
@@ -61,7 +61,7 @@ class TreeView extends React.Component {
if (e.target.className === 'tree-view tree tree-view-drop') {
this.setState({
isTreeViewDropTipShow: false,
- })
+ });
}
}
@@ -154,10 +154,10 @@ class TreeView extends React.Component {
let y = event.clientY || (event.touches && event.touches[0].pageY);
if (this.props.posX) {
- x -= this.props.posX;
+ x -= this.props.posX;
}
if (this.props.posY) {
- y -= this.props.posY;
+ y -= this.props.posY;
}
hideMenu();
diff --git a/frontend/src/pages/lib-content-view/lib-content-container.js b/frontend/src/pages/lib-content-view/lib-content-container.js
index dc2bb7c9a2..9dc79442ec 100644
--- a/frontend/src/pages/lib-content-view/lib-content-container.js
+++ b/frontend/src/pages/lib-content-view/lib-content-container.js
@@ -86,6 +86,7 @@ const propTypes = {
onDeleteRepoTag: PropTypes.func.isRequired,
updateDetail: PropTypes.bool.isRequired,
onListContainerScroll: PropTypes.func.isRequired,
+ onDirentClick: PropTypes.func.isRequired,
};
class LibContentContainer extends React.Component {
diff --git a/frontend/src/pages/lib-content-view/lib-content-view.js b/frontend/src/pages/lib-content-view/lib-content-view.js
index a26a03e8ab..bf40f4d620 100644
--- a/frontend/src/pages/lib-content-view/lib-content-view.js
+++ b/frontend/src/pages/lib-content-view/lib-content-view.js
@@ -196,20 +196,20 @@ class LibContentView extends React.Component {
if (this.state.currentMode === 'column') {
if (this.state.isViewFile) {
- this.updataColumnMarkdownData(path)
+ this.updataColumnMarkdownData(path);
} else {
seafileAPI.dirMetaData(repoID, path).then((res) => {
if (res.data.id !== dirID) {
this.loadDirentList(path);
}
- })
+ });
}
} else {
seafileAPI.dirMetaData(repoID, path).then((res) => {
if (res.data.id !== dirID) {
this.loadDirentList(path);
}
- })
+ });
}
}
@@ -252,7 +252,7 @@ class LibContentView extends React.Component {
seafileAPI.getFileDownloadLink(repoID, filePath).then((res) => {
seafileAPI.getFileContent(res.data).then((res) => {
if (this.state.content !== res.data) {
- this.setState({isFileLoading: true})
+ this.setState({isFileLoading: true});
}
this.setState({
content: res.data,
@@ -419,7 +419,7 @@ class LibContentView extends React.Component {
toaster.danger(
,
{id: 'session_expired', duration: 3600}
- )
+ );
}
this.setState({
isFileLoading: false,
@@ -466,8 +466,8 @@ class LibContentView extends React.Component {
toaster.danger(
,
{id: 'session_expired', duration: 3600}
- )
- this.setState({isDirentListLoading: false})
+ );
+ this.setState({isDirentListLoading: false});
return;
}
this.setState({
@@ -1416,7 +1416,7 @@ class LibContentView extends React.Component {
let direntItemsList = this.state.direntList.filter((item, index) => {
return index < this.state.itemsShowLength;
- })
+ });
return (