@aws-amplify/storage
Version:
Storage category of aws-amplify
52 lines (49 loc) • 2.11 kB
JavaScript
import { StorageAction } from '@aws-amplify/core/internals/utils';
import '@smithy/md5-js';
import '@aws-amplify/core/internals/aws-client-utils';
import '../../utils/client/runtime/s3TransferHandler/fetch.mjs';
import 'fast-xml-parser';
import '../../utils/client/runtime/s3TransferHandler/xhr.mjs';
import 'buffer';
import { resolveS3ConfigAndInput } from '../../utils/resolveS3ConfigAndInput.mjs';
import '../../../../errors/types/validation.mjs';
import { logger } from '../../../../utils/logger.mjs';
import '../../utils/client/base.mjs';
import '../../utils/client/getObject.mjs';
import '../../utils/client/listObjectsV2.mjs';
import '../../utils/client/putObject.mjs';
import '../../utils/client/createMultipartUpload.mjs';
import '../../utils/client/uploadPart.mjs';
import '../../utils/client/completeMultipartUpload.mjs';
import '../../utils/client/listParts.mjs';
import '../../utils/client/abortMultipartUpload.mjs';
import '../../utils/client/copyObject.mjs';
import { headObject } from '../../utils/client/headObject.mjs';
import '../../utils/client/deleteObject.mjs';
import { getStorageUserAgentValue } from '../../utils/userAgent.mjs';
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
const getProperties = async function (amplify, input, action) {
const { key, options } = input;
const { s3Config, bucket, keyPrefix } = await resolveS3ConfigAndInput(amplify, options);
const finalKey = `${keyPrefix}${key}`;
logger.debug(`get properties of ${key} from ${finalKey}`);
const response = await headObject({
...s3Config,
userAgentValue: getStorageUserAgentValue(action ?? StorageAction.GetProperties),
}, {
Bucket: bucket,
Key: finalKey,
});
return {
key,
contentType: response.ContentType,
size: response.ContentLength,
eTag: response.ETag,
lastModified: response.LastModified,
metadata: response.Metadata,
versionId: response.VersionId,
};
};
export { getProperties };
//# sourceMappingURL=getProperties.mjs.map