UNPKG

@aws-amplify/storage

Version:

Storage category of aws-amplify

1 lines 3.54 kB
{"version":3,"file":"getDataChunker.mjs","sources":["../../../../../../../src/providers/s3/apis/uploadData/multipart/getDataChunker.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { StorageValidationErrorCode, validationErrorMap, } from '../../../../../errors/types/validation';\nimport { StorageError } from '../../../../../errors/StorageError';\nimport { calculatePartSize } from './calculatePartSize';\nexport const getDataChunker = (data, totalSize) => {\n const partSize = calculatePartSize(totalSize);\n if (data instanceof Blob) {\n return helper(data, 0, data.size, partSize);\n }\n else if (ArrayBuffer.isView(data)) {\n return helper(data.buffer, data.byteOffset, data.byteLength, partSize);\n }\n else if (data instanceof ArrayBuffer) {\n return helper(data, 0, data.byteLength, partSize);\n }\n else if (typeof data === 'string') {\n const blob = new Blob([data]);\n return getDataChunker(blob, blob.size);\n }\n else {\n throw new StorageError({\n name: StorageValidationErrorCode.InvalidUploadSource,\n ...validationErrorMap[StorageValidationErrorCode.InvalidUploadSource],\n });\n }\n};\nconst helper = function* (buffer, byteOffset, byteLength, partSize) {\n let partNumber = 1;\n let startByte = byteOffset;\n let endByte = byteOffset + Math.min(partSize, byteLength);\n while (endByte < byteLength + byteOffset) {\n yield {\n partNumber,\n data: buffer.slice(startByte, endByte),\n size: partSize,\n };\n partNumber += 1;\n startByte = endByte;\n endByte = startByte + partSize;\n }\n yield {\n partNumber,\n data: buffer.slice(startByte, byteLength + byteOffset),\n size: byteLength + byteOffset - startByte,\n };\n};\n"],"names":[],"mappings":";;;;AAAA;AACA;AAIY,MAAC,cAAc,GAAG,CAAC,IAAI,EAAE,SAAS,KAAK;AACnD,IAAI,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAClD,IAAI,IAAI,IAAI,YAAY,IAAI,EAAE;AAC9B,QAAQ,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACpD,KAAK;AACL,SAAS,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;AACvC,QAAQ,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AAC/E,KAAK;AACL,SAAS,IAAI,IAAI,YAAY,WAAW,EAAE;AAC1C,QAAQ,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AAC1D,KAAK;AACL,SAAS,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AACvC,QAAQ,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACtC,QAAQ,OAAO,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/C,KAAK;AACL,SAAS;AACT,QAAQ,MAAM,IAAI,YAAY,CAAC;AAC/B,YAAY,IAAI,EAAE,0BAA0B,CAAC,mBAAmB;AAChE,YAAY,GAAG,kBAAkB,CAAC,0BAA0B,CAAC,mBAAmB,CAAC;AACjF,SAAS,CAAC,CAAC;AACX,KAAK;AACL,EAAE;AACF,MAAM,MAAM,GAAG,WAAW,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE;AACpE,IAAI,IAAI,UAAU,GAAG,CAAC,CAAC;AACvB,IAAI,IAAI,SAAS,GAAG,UAAU,CAAC;AAC/B,IAAI,IAAI,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AAC9D,IAAI,OAAO,OAAO,GAAG,UAAU,GAAG,UAAU,EAAE;AAC9C,QAAQ,MAAM;AACd,YAAY,UAAU;AACtB,YAAY,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC;AAClD,YAAY,IAAI,EAAE,QAAQ;AAC1B,SAAS,CAAC;AACV,QAAQ,UAAU,IAAI,CAAC,CAAC;AACxB,QAAQ,SAAS,GAAG,OAAO,CAAC;AAC5B,QAAQ,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AACvC,KAAK;AACL,IAAI,MAAM;AACV,QAAQ,UAAU;AAClB,QAAQ,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,GAAG,UAAU,CAAC;AAC9D,QAAQ,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS;AACjD,KAAK,CAAC;AACN,CAAC;;;;"}