diff --git a/frontend/src/components/file-uploader/file-uploader.js b/frontend/src/components/file-uploader/file-uploader.js index 02755c663a..1bdbb25ae5 100644 --- a/frontend/src/components/file-uploader/file-uploader.js +++ b/frontend/src/components/file-uploader/file-uploader.js @@ -316,7 +316,7 @@ class FileUploader extends React.Component { onFileUploadSuccess = (resumableFile, message) => { let formData = resumableFile.formData; - let currentTime = new Date().getTime()/1000; + let currentTime = new Date().getTime() / 1000; message = formData.replace ? message : JSON.parse(message)[0]; if (formData.relative_path) { // upload folder let relative_path = formData.relative_path; diff --git a/frontend/src/components/shared-link-file-uploader/file-uploader.js b/frontend/src/components/shared-link-file-uploader/file-uploader.js index 2e32bf9430..98417306bb 100644 --- a/frontend/src/components/shared-link-file-uploader/file-uploader.js +++ b/frontend/src/components/shared-link-file-uploader/file-uploader.js @@ -313,7 +313,7 @@ class FileUploader extends React.Component { onFileUploadSuccess = (resumableFile, message) => { let formData = resumableFile.formData; - let currentTime = new Date().getTime()/1000; + let currentTime = new Date().getTime() / 1000; message = formData.replace ? message : JSON.parse(message)[0]; if (formData.relative_path) { // upload folder // 'upload folder' is not supported diff --git a/frontend/src/components/toast/alert.js b/frontend/src/components/toast/alert.js index c9ea3b7783..6ee7952be4 100644 --- a/frontend/src/components/toast/alert.js +++ b/frontend/src/components/toast/alert.js @@ -21,6 +21,8 @@ class Alert extends React.PureComponent { return 'sf3-font sf3-font-exclamation-circle'; case 'danger': return 'sf3-font sf3-font-exclamation-circle'; + case 'notify-in-progress': + return 'loading-icon'; default: return 'sf3-font sf3-font-check-circle'; } diff --git a/frontend/src/components/toast/toast.js b/frontend/src/components/toast/toast.js index f450666d82..0cfc681c4e 100644 --- a/frontend/src/components/toast/toast.js +++ b/frontend/src/components/toast/toast.js @@ -25,7 +25,7 @@ export default class Toast extends React.PureComponent { /** * The type of the alert. */ - intent: PropTypes.oneOf(['none', 'success', 'warning', 'danger']).isRequired, + intent: PropTypes.oneOf(['none', 'success', 'warning', 'danger', 'notify-in-progress']).isRequired, /** * The title of the alert. diff --git a/frontend/src/components/toast/toaster.css b/frontend/src/components/toast/toaster.css index 776e108325..a13478aa6f 100644 --- a/frontend/src/components/toast/toaster.css +++ b/frontend/src/components/toast/toaster.css @@ -78,6 +78,15 @@ color: rgb(236, 76, 71); } +.seahub-toast-alert-container.notify-in-progress { + border-left: 3px solid rgb(16, 112, 202); + color: rgb(16, 112, 202); +} + +.seahub-toast-alert-container.notify-in-progress .loading-icon { + margin: 0; +} + .seahub-toast-alert-container .toast-alert-icon { margin-right: 10px; width: 14px; diff --git a/frontend/src/components/toast/toaster.js b/frontend/src/components/toast/toaster.js index 49708e4ac9..9fffdb5a48 100644 --- a/frontend/src/components/toast/toaster.js +++ b/frontend/src/components/toast/toaster.js @@ -52,6 +52,10 @@ export default class Toaster { return this.notifyHandler(title, { ...settings, intent: 'none' }); }; + notifyInProgress = (title, settings = {}) => { + return this.notifyHandler(title, { ...settings, intent: 'notify-in-progress' }); + }; + success = (title, settings = {}) => { return this.notifyHandler(title, { ...settings, intent: 'success' }); }; 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 c65c5e303c..b530de2d31 100644 --- a/frontend/src/pages/lib-content-view/lib-content-view.js +++ b/frontend/src/pages/lib-content-view/lib-content-view.js @@ -237,7 +237,7 @@ class LibContentView extends React.Component { onRepoUpdateEvent = () => { let currentTime = new Date(); - if ((parseFloat(currentTime - this.lastModifyTime)/1000) <= 5) { + if ((parseFloat(currentTime - this.lastModifyTime) / 1000) <= 5) { return; } let repoID = this.props.repoID; @@ -1303,7 +1303,6 @@ class LibContentView extends React.Component { return dirent; }); if (dirent) { - // dirent.isSelected = true; this.setState({ direntList: direntList, isDirentSelected: true, @@ -1793,7 +1792,7 @@ class LibContentView extends React.Component { createDirent(name, type, size) { // use current dirent parent's permission as it's permission const { userPerm: permission } = this.state; - const mtime = new Date().getTime()/1000; + const mtime = new Date().getTime() / 1000; const obj = { name, type, mtime, size, permission }; const dirent = new Dirent(obj); return dirent; diff --git a/frontend/src/pages/markdown-editor/index.js b/frontend/src/pages/markdown-editor/index.js index d8ea9d13ea..7761cc2078 100644 --- a/frontend/src/pages/markdown-editor/index.js +++ b/frontend/src/pages/markdown-editor/index.js @@ -106,7 +106,7 @@ class MarkdownEditor extends React.Component { receiveUpdateData (data) { let currentTime = new Date(); - if ((parseFloat(currentTime - this.lastModifyTime)/1000) <= 5) { + if ((parseFloat(currentTime - this.lastModifyTime) / 1000) <= 5) { return; } editorApi.fileMetaData().then((res) => { diff --git a/frontend/src/pages/upload-link/file-uploader.js b/frontend/src/pages/upload-link/file-uploader.js index 26cd02b7d3..a44928e08c 100644 --- a/frontend/src/pages/upload-link/file-uploader.js +++ b/frontend/src/pages/upload-link/file-uploader.js @@ -309,7 +309,7 @@ class FileUploader extends React.Component { onFileUploadSuccess = (resumableFile, message) => { let formData = resumableFile.formData; - let currentTime = new Date().getTime()/1000; + let currentTime = new Date().getTime() / 1000; message = formData.replace ? message : JSON.parse(message)[0]; if (formData.relative_path) { // upload folder let relative_path = formData.relative_path;