Jelajahi Sumber

@uppy/core: fix uppy.resetProgress() (#4337)

* Fix uppy.resetProgress()

* Update tests
Artur Paikin 2 tahun lalu
induk
melakukan
222e511a98
2 mengubah file dengan 14 tambahan dan 3 penghapusan
  1. 10 3
      packages/@uppy/core/src/Uppy.js
  2. 4 0
      packages/@uppy/core/src/Uppy.test.js

+ 10 - 3
packages/@uppy/core/src/Uppy.js

@@ -233,15 +233,22 @@ class Uppy {
     }
     const files = { ...this.getState().files }
     const updatedFiles = {}
+
     Object.keys(files).forEach(fileID => {
-      const updatedFile = { ...files[fileID] }
-      updatedFile.progress = { ...updatedFile.progress, ...defaultProgress }
-      updatedFiles[fileID] = updatedFile
+      updatedFiles[fileID] = {
+        ...files[fileID],
+        progress: {
+          ...files[fileID].progress, ...defaultProgress,
+        },
+      }
     })
 
     this.setState({
       files: updatedFiles,
       totalProgress: 0,
+      allowNewUpload: true,
+      error: null,
+      recoveredState: null,
     })
 
     this.emit('reset-progress')

+ 4 - 0
packages/@uppy/core/src/Uppy.test.js

@@ -1619,6 +1619,10 @@ describe('src/Core', () => {
         uploadStarted: null,
       })
       expect(core.getState().totalProgress).toEqual(0)
+      expect(core.getState().allowNewUpload).toEqual(true)
+      expect(core.getState().error).toEqual(null)
+      expect(core.getState().recoveredState).toEqual(null)
+
       expect(resetProgressEvent.mock.calls.length).toEqual(1)
     })
   })