( fileInstance: ArrayBuffer | Blob | ScanFileLike )
| 245 | } |
| 246 | |
| 247 | async getZipFileReader ( fileInstance: ArrayBuffer | Blob | ScanFileLike ) { |
| 248 | if ( isBlob( fileInstance ) ) { |
| 249 | return new zip.BlobReader( fileInstance ) |
| 250 | } |
| 251 | |
| 252 | if ( fileInstance instanceof ArrayBuffer ) { |
| 253 | return new zip.Uint8ArrayReader( new Uint8Array( fileInstance ) ) |
| 254 | } |
| 255 | |
| 256 | if ( isBlob( fileInstance.blob ) ) { |
| 257 | return new zip.BlobReader( fileInstance.blob ) |
| 258 | } |
| 259 | |
| 260 | if ( typeof fileInstance.arrayBuffer === 'function' ) { |
| 261 | return new zip.Uint8ArrayReader( new Uint8Array( await fileInstance.arrayBuffer() ) ) |
| 262 | } |
| 263 | |
| 264 | if ( fileInstance.arrayBuffer instanceof ArrayBuffer ) { |
| 265 | return new zip.Uint8ArrayReader( new Uint8Array( fileInstance.arrayBuffer ) ) |
| 266 | } |
| 267 | |
| 268 | if ( fileInstance.buffer instanceof ArrayBuffer ) { |
| 269 | return new zip.Uint8ArrayReader( new Uint8Array( fileInstance.buffer ) ) |
| 270 | } |
| 271 | |
| 272 | if ( ArrayBuffer.isView( fileInstance.buffer ) ) { |
| 273 | return new zip.Uint8ArrayReader( new Uint8Array( toArrayBuffer( fileInstance.buffer ) ) ) |
| 274 | } |
| 275 | |
| 276 | throw new Error( 'FileInstance is not a known format' ) |
| 277 | } |
| 278 | |
| 279 | async readFileBlob ( fileInstance: ArrayBuffer | Blob | ScanFileLike ) { |
| 280 | const binaryReader = await this.getZipFileReader( fileInstance ) |
no test coverage detected