1
0
mirror of synced 2024-11-22 05:16:05 +03:00

Merge pull request #37 from cmath10/fix-blob-cloning

fix: Blob objects are no longer cloned
This commit is contained in:
Kruglov Kirill 2021-10-21 12:50:32 +03:00 committed by GitHub
commit 29975e3ddb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 1 deletions

View File

@ -9,7 +9,8 @@ const cloneInstance = <T>(original: T): T => {
* case of needing to unbind reactive watchers.
*/
export default function clone<T = unknown> (value: T): T {
if (isScalar(value)) {
// scalars & immutables
if (isScalar(value) || value instanceof Blob) {
return value
}

View File

@ -76,4 +76,11 @@ describe('clone', () => {
expect(copy.sample.doSomething).toBeTruthy()
expect(copy.sample.doSomething).not.toThrow()
})
test('does not create a copy of a blob', () => {
const blob = new Blob(['{"fieldA": "fieldA"}'], { type : 'application/json' })
const copy = clone(blob)
expect(blob === copy).toBeTruthy()
})
})