@aws-amplify/storage 6.0.28 → 6.0.29-gen2-storage.e54bfa9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/errors/types/validation.js +22 -2
- package/dist/cjs/errors/types/validation.js.map +1 -1
- package/dist/cjs/providers/s3/apis/copy.js +2 -12
- package/dist/cjs/providers/s3/apis/copy.js.map +1 -1
- package/dist/cjs/providers/s3/apis/downloadData.js +13 -38
- package/dist/cjs/providers/s3/apis/downloadData.js.map +1 -1
- package/dist/cjs/providers/s3/apis/getProperties.js +2 -11
- package/dist/cjs/providers/s3/apis/getProperties.js.map +1 -1
- package/dist/cjs/providers/s3/apis/getUrl.js +2 -18
- package/dist/cjs/providers/s3/apis/getUrl.js.map +1 -1
- package/dist/cjs/providers/s3/apis/internal/copy.js +41 -7
- package/dist/cjs/providers/s3/apis/internal/copy.js.map +1 -1
- package/dist/cjs/providers/s3/apis/internal/getProperties.js +10 -6
- package/dist/cjs/providers/s3/apis/internal/getProperties.js.map +1 -1
- package/dist/cjs/providers/s3/apis/internal/getUrl.js +8 -6
- package/dist/cjs/providers/s3/apis/internal/getUrl.js.map +1 -1
- package/dist/cjs/providers/s3/apis/internal/list.js +86 -16
- package/dist/cjs/providers/s3/apis/internal/list.js.map +1 -1
- package/dist/cjs/providers/s3/apis/internal/remove.js +20 -7
- package/dist/cjs/providers/s3/apis/internal/remove.js.map +1 -1
- package/dist/cjs/providers/s3/apis/list.js +4 -4
- package/dist/cjs/providers/s3/apis/list.js.map +1 -1
- package/dist/cjs/providers/s3/apis/remove.js +2 -9
- package/dist/cjs/providers/s3/apis/remove.js.map +1 -1
- package/dist/cjs/providers/s3/apis/server/copy.js +4 -4
- package/dist/cjs/providers/s3/apis/server/copy.js.map +1 -1
- package/dist/cjs/providers/s3/apis/server/getProperties.js +2 -2
- package/dist/cjs/providers/s3/apis/server/getProperties.js.map +1 -1
- package/dist/cjs/providers/s3/apis/server/getUrl.js +2 -2
- package/dist/cjs/providers/s3/apis/server/getUrl.js.map +1 -1
- package/dist/cjs/providers/s3/apis/server/list.js +4 -4
- package/dist/cjs/providers/s3/apis/server/list.js.map +1 -1
- package/dist/cjs/providers/s3/apis/server/remove.js +2 -2
- package/dist/cjs/providers/s3/apis/server/remove.js.map +1 -1
- package/dist/cjs/providers/s3/apis/uploadData/index.js +4 -50
- package/dist/cjs/providers/s3/apis/uploadData/index.js.map +1 -1
- package/dist/cjs/providers/s3/apis/uploadData/multipart/initialUpload.js +1 -1
- package/dist/cjs/providers/s3/apis/uploadData/multipart/initialUpload.js.map +1 -1
- package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadCache.js +8 -1
- package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadCache.js.map +1 -1
- package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadHandlers.js +28 -13
- package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadHandlers.js.map +1 -1
- package/dist/cjs/providers/s3/apis/uploadData/putObjectJob.js +10 -5
- package/dist/cjs/providers/s3/apis/uploadData/putObjectJob.js.map +1 -1
- package/dist/cjs/providers/s3/utils/client/utils/parsePayload.js +1 -1
- package/dist/cjs/providers/s3/utils/client/utils/parsePayload.js.map +1 -1
- package/dist/cjs/providers/s3/utils/constants.js +4 -1
- package/dist/cjs/providers/s3/utils/constants.js.map +1 -1
- package/dist/cjs/providers/s3/utils/index.js +7 -1
- package/dist/cjs/providers/s3/utils/index.js.map +1 -1
- package/dist/cjs/providers/s3/utils/isInputWithPath.js +11 -0
- package/dist/cjs/providers/s3/utils/isInputWithPath.js.map +1 -0
- package/dist/cjs/providers/s3/utils/resolveS3ConfigAndInput.js +2 -1
- package/dist/cjs/providers/s3/utils/resolveS3ConfigAndInput.js.map +1 -1
- package/dist/cjs/providers/s3/utils/validateStorageOperationInput.js +31 -0
- package/dist/cjs/providers/s3/utils/validateStorageOperationInput.js.map +1 -0
- package/dist/cjs/providers/s3/utils/validateStorageOperationInputWithPrefix.js +32 -0
- package/dist/cjs/providers/s3/utils/validateStorageOperationInputWithPrefix.js.map +1 -0
- package/dist/esm/errors/types/validation.d.ts +7 -2
- package/dist/esm/errors/types/validation.mjs +22 -2
- package/dist/esm/errors/types/validation.mjs.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/providers/s3/apis/copy.d.ts +22 -9
- package/dist/esm/providers/s3/apis/copy.mjs +2 -12
- package/dist/esm/providers/s3/apis/copy.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/downloadData.d.ts +41 -7
- package/dist/esm/providers/s3/apis/downloadData.mjs +15 -39
- package/dist/esm/providers/s3/apis/downloadData.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/getProperties.d.ts +18 -5
- package/dist/esm/providers/s3/apis/getProperties.mjs +2 -11
- package/dist/esm/providers/s3/apis/getProperties.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/getUrl.d.ts +27 -7
- package/dist/esm/providers/s3/apis/getUrl.mjs +2 -18
- package/dist/esm/providers/s3/apis/getUrl.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/internal/copy.d.ts +4 -2
- package/dist/esm/providers/s3/apis/internal/copy.mjs +41 -6
- package/dist/esm/providers/s3/apis/internal/copy.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/internal/getProperties.d.ts +2 -2
- package/dist/esm/providers/s3/apis/internal/getProperties.mjs +11 -6
- package/dist/esm/providers/s3/apis/internal/getProperties.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/internal/getUrl.d.ts +2 -2
- package/dist/esm/providers/s3/apis/internal/getUrl.mjs +10 -7
- package/dist/esm/providers/s3/apis/internal/getUrl.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/internal/list.d.ts +2 -2
- package/dist/esm/providers/s3/apis/internal/list.mjs +87 -16
- package/dist/esm/providers/s3/apis/internal/list.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/internal/remove.d.ts +2 -2
- package/dist/esm/providers/s3/apis/internal/remove.mjs +21 -7
- package/dist/esm/providers/s3/apis/internal/remove.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/list.d.ts +39 -22
- package/dist/esm/providers/s3/apis/list.mjs +2 -2
- package/dist/esm/providers/s3/apis/list.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/remove.d.ts +18 -5
- package/dist/esm/providers/s3/apis/remove.mjs +2 -9
- package/dist/esm/providers/s3/apis/remove.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/server/copy.d.ts +27 -2
- package/dist/esm/providers/s3/apis/server/copy.mjs +2 -2
- package/dist/esm/providers/s3/apis/server/copy.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/server/getProperties.d.ts +26 -2
- package/dist/esm/providers/s3/apis/server/getProperties.mjs +2 -2
- package/dist/esm/providers/s3/apis/server/getProperties.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/server/getUrl.d.ts +40 -2
- package/dist/esm/providers/s3/apis/server/getUrl.mjs +2 -2
- package/dist/esm/providers/s3/apis/server/getUrl.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/server/list.d.ts +41 -22
- package/dist/esm/providers/s3/apis/server/list.mjs +2 -2
- package/dist/esm/providers/s3/apis/server/list.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/server/remove.d.ts +24 -2
- package/dist/esm/providers/s3/apis/server/remove.mjs +2 -2
- package/dist/esm/providers/s3/apis/server/remove.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/uploadData/index.d.ts +64 -7
- package/dist/esm/providers/s3/apis/uploadData/index.mjs +4 -50
- package/dist/esm/providers/s3/apis/uploadData/index.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.d.ts +2 -2
- package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.mjs +1 -1
- package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.d.ts +1 -1
- package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.mjs +8 -1
- package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/uploadData/multipart/uploadHandlers.d.ts +4 -4
- package/dist/esm/providers/s3/apis/uploadData/multipart/uploadHandlers.mjs +30 -14
- package/dist/esm/providers/s3/apis/uploadData/multipart/uploadHandlers.mjs.map +1 -1
- package/dist/esm/providers/s3/apis/uploadData/putObjectJob.d.ts +3 -3
- package/dist/esm/providers/s3/apis/uploadData/putObjectJob.mjs +11 -5
- package/dist/esm/providers/s3/apis/uploadData/putObjectJob.mjs.map +1 -1
- package/dist/esm/providers/s3/index.d.ts +2 -2
- package/dist/esm/providers/s3/types/index.d.ts +3 -3
- package/dist/esm/providers/s3/types/inputs.d.ts +51 -11
- package/dist/esm/providers/s3/types/options.d.ts +41 -10
- package/dist/esm/providers/s3/types/outputs.d.ts +68 -13
- package/dist/esm/providers/s3/utils/client/utils/parsePayload.mjs +1 -1
- package/dist/esm/providers/s3/utils/client/utils/parsePayload.mjs.map +1 -1
- package/dist/esm/providers/s3/utils/constants.d.ts +3 -0
- package/dist/esm/providers/s3/utils/constants.mjs +4 -1
- package/dist/esm/providers/s3/utils/constants.mjs.map +1 -1
- package/dist/esm/providers/s3/utils/index.d.ts +3 -0
- package/dist/esm/providers/s3/utils/index.mjs +3 -0
- package/dist/esm/providers/s3/utils/index.mjs.map +1 -1
- package/dist/esm/providers/s3/utils/isInputWithPath.d.ts +2 -0
- package/dist/esm/providers/s3/utils/isInputWithPath.mjs +8 -0
- package/dist/esm/providers/s3/utils/isInputWithPath.mjs.map +1 -0
- package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.d.ts +2 -1
- package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.mjs +2 -1
- package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.mjs.map +1 -1
- package/dist/esm/providers/s3/utils/validateStorageOperationInput.d.ts +5 -0
- package/dist/esm/providers/s3/utils/validateStorageOperationInput.mjs +29 -0
- package/dist/esm/providers/s3/utils/validateStorageOperationInput.mjs.map +1 -0
- package/dist/esm/providers/s3/utils/validateStorageOperationInputWithPrefix.d.ts +5 -0
- package/dist/esm/providers/s3/utils/validateStorageOperationInputWithPrefix.mjs +30 -0
- package/dist/esm/providers/s3/utils/validateStorageOperationInputWithPrefix.mjs.map +1 -0
- package/dist/esm/types/index.d.ts +2 -2
- package/dist/esm/types/inputs.d.ts +41 -13
- package/dist/esm/types/options.d.ts +1 -0
- package/dist/esm/types/outputs.d.ts +26 -6
- package/package.json +107 -107
- package/src/errors/types/validation.ts +23 -2
- package/src/index.ts +16 -0
- package/src/providers/s3/apis/copy.ts +30 -11
- package/src/providers/s3/apis/downloadData.ts +78 -19
- package/src/providers/s3/apis/getProperties.ts +31 -8
- package/src/providers/s3/apis/getUrl.ts +37 -10
- package/src/providers/s3/apis/internal/copy.ts +89 -8
- package/src/providers/s3/apis/internal/getProperties.ts +27 -12
- package/src/providers/s3/apis/internal/getUrl.ts +28 -14
- package/src/providers/s3/apis/internal/list.ts +135 -29
- package/src/providers/s3/apis/internal/remove.ts +36 -13
- package/src/providers/s3/apis/list.ts +54 -26
- package/src/providers/s3/apis/remove.ts +28 -7
- package/src/providers/s3/apis/server/copy.ts +42 -5
- package/src/providers/s3/apis/server/getProperties.ts +41 -4
- package/src/providers/s3/apis/server/getUrl.ts +55 -4
- package/src/providers/s3/apis/server/list.ts +64 -32
- package/src/providers/s3/apis/server/remove.ts +39 -4
- package/src/providers/s3/apis/uploadData/index.ts +77 -8
- package/src/providers/s3/apis/uploadData/multipart/initialUpload.ts +4 -3
- package/src/providers/s3/apis/uploadData/multipart/uploadCache.ts +11 -2
- package/src/providers/s3/apis/uploadData/multipart/uploadHandlers.ts +50 -20
- package/src/providers/s3/apis/uploadData/putObjectJob.ts +23 -9
- package/src/providers/s3/index.ts +16 -0
- package/src/providers/s3/types/index.ts +37 -14
- package/src/providers/s3/types/inputs.ts +95 -26
- package/src/providers/s3/types/options.ts +73 -27
- package/src/providers/s3/types/outputs.ts +80 -13
- package/src/providers/s3/utils/client/utils/parsePayload.ts +1 -1
- package/src/providers/s3/utils/constants.ts +4 -0
- package/src/providers/s3/utils/index.ts +3 -0
- package/src/providers/s3/utils/isInputWithPath.ts +13 -0
- package/src/providers/s3/utils/resolveS3ConfigAndInput.ts +3 -2
- package/src/providers/s3/utils/validateStorageOperationInput.ts +39 -0
- package/src/providers/s3/utils/validateStorageOperationInputWithPrefix.ts +46 -0
- package/src/types/index.ts +16 -8
- package/src/types/inputs.ts +73 -20
- package/src/types/options.ts +1 -0
- package/src/types/outputs.ts +29 -6
|
@@ -9,10 +9,13 @@ const utils_2 = require("../../utils");
|
|
|
9
9
|
const client_1 = require("../../utils/client");
|
|
10
10
|
const userAgent_1 = require("../../utils/userAgent");
|
|
11
11
|
const utils_3 = require("../../../../utils");
|
|
12
|
+
const constants_1 = require("../../utils/constants");
|
|
12
13
|
const MAX_PAGE_SIZE = 1000;
|
|
13
14
|
const list = async (amplify, input) => {
|
|
14
|
-
const { options = {}
|
|
15
|
-
const { s3Config, bucket, keyPrefix:
|
|
15
|
+
const { options = {} } = input;
|
|
16
|
+
const { s3Config, bucket, keyPrefix: generatedPrefix, identityId, } = await (0, utils_2.resolveS3ConfigAndInput)(amplify, options);
|
|
17
|
+
const { inputType, objectKey } = (0, utils_2.validateStorageOperationInputWithPrefix)(input, identityId);
|
|
18
|
+
const isInputWithPrefix = inputType === constants_1.STORAGE_INPUT_PREFIX;
|
|
16
19
|
// @ts-expect-error pageSize and nextToken should not coexist with listAll
|
|
17
20
|
if (options?.listAll && (options?.pageSize || options?.nextToken)) {
|
|
18
21
|
const anyOptions = options;
|
|
@@ -20,22 +23,43 @@ const list = async (amplify, input) => {
|
|
|
20
23
|
}
|
|
21
24
|
const listParams = {
|
|
22
25
|
Bucket: bucket,
|
|
23
|
-
Prefix: `${
|
|
26
|
+
Prefix: isInputWithPrefix ? `${generatedPrefix}${objectKey}` : objectKey,
|
|
24
27
|
MaxKeys: options?.listAll ? undefined : options?.pageSize,
|
|
25
28
|
ContinuationToken: options?.listAll ? undefined : options?.nextToken,
|
|
26
29
|
};
|
|
27
30
|
utils_3.logger.debug(`listing items from "${listParams.Prefix}"`);
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
+
const listInputArgs = {
|
|
32
|
+
s3Config,
|
|
33
|
+
listParams,
|
|
34
|
+
};
|
|
35
|
+
if (options.listAll) {
|
|
36
|
+
if (isInputWithPrefix) {
|
|
37
|
+
return _listAllWithPrefix({
|
|
38
|
+
...listInputArgs,
|
|
39
|
+
generatedPrefix,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
return _listAllWithPath(listInputArgs);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
if (isInputWithPrefix) {
|
|
48
|
+
return _listWithPrefix({ ...listInputArgs, generatedPrefix });
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
return _listWithPath(listInputArgs);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
31
54
|
};
|
|
32
55
|
exports.list = list;
|
|
33
|
-
|
|
56
|
+
/** @deprecated Use {@link _listAllWithPath} instead. */
|
|
57
|
+
const _listAllWithPrefix = async ({ s3Config, listParams, generatedPrefix, }) => {
|
|
34
58
|
const listResult = [];
|
|
35
59
|
let continuationToken = listParams.ContinuationToken;
|
|
36
60
|
do {
|
|
37
|
-
const { items: pageResults, nextToken: pageNextToken } = await
|
|
38
|
-
|
|
61
|
+
const { items: pageResults, nextToken: pageNextToken } = await _listWithPrefix({
|
|
62
|
+
generatedPrefix,
|
|
39
63
|
s3Config,
|
|
40
64
|
listParams: {
|
|
41
65
|
...listParams,
|
|
@@ -50,7 +74,8 @@ const _listAll = async ({ s3Config, listParams, prefix, }) => {
|
|
|
50
74
|
items: listResult,
|
|
51
75
|
};
|
|
52
76
|
};
|
|
53
|
-
|
|
77
|
+
/** @deprecated Use {@link _listWithPath} instead. */
|
|
78
|
+
const _listWithPrefix = async ({ s3Config, listParams, generatedPrefix, }) => {
|
|
54
79
|
const listParamsClone = { ...listParams };
|
|
55
80
|
if (!listParamsClone.MaxKeys || listParamsClone.MaxKeys > MAX_PAGE_SIZE) {
|
|
56
81
|
utils_3.logger.debug(`defaulting pageSize to ${MAX_PAGE_SIZE}.`);
|
|
@@ -65,14 +90,59 @@ const _list = async ({ s3Config, listParams, prefix, }) => {
|
|
|
65
90
|
items: [],
|
|
66
91
|
};
|
|
67
92
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
93
|
+
return {
|
|
94
|
+
items: response.Contents.map(item => ({
|
|
95
|
+
key: generatedPrefix
|
|
96
|
+
? item.Key.substring(generatedPrefix.length)
|
|
97
|
+
: item.Key,
|
|
98
|
+
eTag: item.ETag,
|
|
99
|
+
lastModified: item.LastModified,
|
|
100
|
+
size: item.Size,
|
|
101
|
+
})),
|
|
102
|
+
nextToken: response.NextContinuationToken,
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
const _listAllWithPath = async ({ s3Config, listParams, }) => {
|
|
106
|
+
const listResult = [];
|
|
107
|
+
let continuationToken = listParams.ContinuationToken;
|
|
108
|
+
do {
|
|
109
|
+
const { items: pageResults, nextToken: pageNextToken } = await _listWithPath({
|
|
110
|
+
s3Config,
|
|
111
|
+
listParams: {
|
|
112
|
+
...listParams,
|
|
113
|
+
ContinuationToken: continuationToken,
|
|
114
|
+
MaxKeys: MAX_PAGE_SIZE,
|
|
115
|
+
},
|
|
116
|
+
});
|
|
117
|
+
listResult.push(...pageResults);
|
|
118
|
+
continuationToken = pageNextToken;
|
|
119
|
+
} while (continuationToken);
|
|
74
120
|
return {
|
|
75
121
|
items: listResult,
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
const _listWithPath = async ({ s3Config, listParams, }) => {
|
|
125
|
+
const listParamsClone = { ...listParams };
|
|
126
|
+
if (!listParamsClone.MaxKeys || listParamsClone.MaxKeys > MAX_PAGE_SIZE) {
|
|
127
|
+
utils_3.logger.debug(`defaulting pageSize to ${MAX_PAGE_SIZE}.`);
|
|
128
|
+
listParamsClone.MaxKeys = MAX_PAGE_SIZE;
|
|
129
|
+
}
|
|
130
|
+
const response = await (0, client_1.listObjectsV2)({
|
|
131
|
+
...s3Config,
|
|
132
|
+
userAgentValue: (0, userAgent_1.getStorageUserAgentValue)(utils_1.StorageAction.List),
|
|
133
|
+
}, listParamsClone);
|
|
134
|
+
if (!response?.Contents) {
|
|
135
|
+
return {
|
|
136
|
+
items: [],
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
items: response.Contents.map(item => ({
|
|
141
|
+
path: item.Key,
|
|
142
|
+
eTag: item.ETag,
|
|
143
|
+
lastModified: item.LastModified,
|
|
144
|
+
size: item.Size,
|
|
145
|
+
})),
|
|
76
146
|
nextToken: response.NextContinuationToken,
|
|
77
147
|
};
|
|
78
148
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sources":["../../../../../../src/providers/s3/apis/internal/list.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.list = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst utils_2 = require(\"../../utils\");\nconst client_1 = require(\"../../utils/client\");\nconst userAgent_1 = require(\"../../utils/userAgent\");\nconst utils_3 = require(\"../../../../utils\");\nconst MAX_PAGE_SIZE = 1000;\nconst list = async (amplify, input) => {\n const { options = {}, prefix: path = '' } = input ?? {};\n const { s3Config, bucket, keyPrefix: prefix, } = await (0, utils_2.resolveS3ConfigAndInput)(amplify, options);\n // @ts-expect-error pageSize and nextToken should not coexist with listAll\n if (options?.listAll && (options?.pageSize || options?.nextToken)) {\n const anyOptions = options;\n utils_3.logger.debug(`listAll is set to true, ignoring ${anyOptions?.pageSize ? `pageSize: ${anyOptions?.pageSize}` : ''} ${anyOptions?.nextToken ? `nextToken: ${anyOptions?.nextToken}` : ''}.`);\n }\n const listParams = {\n Bucket: bucket,\n Prefix: `${prefix}${path}`,\n MaxKeys: options?.listAll ? undefined : options?.pageSize,\n ContinuationToken: options?.listAll ? undefined : options?.nextToken,\n };\n utils_3.logger.debug(`listing items from \"${listParams.Prefix}\"`);\n return options.listAll\n ? _listAll({ s3Config, listParams, prefix })\n : _list({ s3Config, listParams, prefix });\n};\nexports.list = list;\nconst _listAll = async ({ s3Config, listParams, prefix, }) => {\n const listResult = [];\n let continuationToken = listParams.ContinuationToken;\n do {\n const { items: pageResults, nextToken: pageNextToken } = await _list({\n prefix,\n s3Config,\n listParams: {\n ...listParams,\n ContinuationToken: continuationToken,\n MaxKeys: MAX_PAGE_SIZE,\n },\n });\n listResult.push(...pageResults);\n continuationToken = pageNextToken;\n } while (continuationToken);\n return {\n items: listResult,\n };\n};\nconst _list = async ({ s3Config, listParams, prefix, }) => {\n const listParamsClone = { ...listParams };\n if (!listParamsClone.MaxKeys || listParamsClone.MaxKeys > MAX_PAGE_SIZE) {\n utils_3.logger.debug(`defaulting pageSize to ${MAX_PAGE_SIZE}.`);\n listParamsClone.MaxKeys = MAX_PAGE_SIZE;\n }\n const response = await (0, client_1.listObjectsV2)({\n ...s3Config,\n userAgentValue: (0, userAgent_1.getStorageUserAgentValue)(utils_1.StorageAction.List),\n }, listParamsClone);\n if (!response?.Contents) {\n return {\n items: [],\n };\n }\n const listResult = response.Contents.map(item => ({\n key: item.Key.substring(prefix.length),\n eTag: item.ETag,\n lastModified: item.LastModified,\n size: item.Size,\n }));\n return {\n items: listResult,\n nextToken: response.NextContinuationToken,\n };\n};\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"list.js","sources":["../../../../../../src/providers/s3/apis/internal/list.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.list = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst utils_2 = require(\"../../utils\");\nconst client_1 = require(\"../../utils/client\");\nconst userAgent_1 = require(\"../../utils/userAgent\");\nconst utils_3 = require(\"../../../../utils\");\nconst constants_1 = require(\"../../utils/constants\");\nconst MAX_PAGE_SIZE = 1000;\nconst list = async (amplify, input) => {\n const { options = {} } = input;\n const { s3Config, bucket, keyPrefix: generatedPrefix, identityId, } = await (0, utils_2.resolveS3ConfigAndInput)(amplify, options);\n const { inputType, objectKey } = (0, utils_2.validateStorageOperationInputWithPrefix)(input, identityId);\n const isInputWithPrefix = inputType === constants_1.STORAGE_INPUT_PREFIX;\n // @ts-expect-error pageSize and nextToken should not coexist with listAll\n if (options?.listAll && (options?.pageSize || options?.nextToken)) {\n const anyOptions = options;\n utils_3.logger.debug(`listAll is set to true, ignoring ${anyOptions?.pageSize ? `pageSize: ${anyOptions?.pageSize}` : ''} ${anyOptions?.nextToken ? `nextToken: ${anyOptions?.nextToken}` : ''}.`);\n }\n const listParams = {\n Bucket: bucket,\n Prefix: isInputWithPrefix ? `${generatedPrefix}${objectKey}` : objectKey,\n MaxKeys: options?.listAll ? undefined : options?.pageSize,\n ContinuationToken: options?.listAll ? undefined : options?.nextToken,\n };\n utils_3.logger.debug(`listing items from \"${listParams.Prefix}\"`);\n const listInputArgs = {\n s3Config,\n listParams,\n };\n if (options.listAll) {\n if (isInputWithPrefix) {\n return _listAllWithPrefix({\n ...listInputArgs,\n generatedPrefix,\n });\n }\n else {\n return _listAllWithPath(listInputArgs);\n }\n }\n else {\n if (isInputWithPrefix) {\n return _listWithPrefix({ ...listInputArgs, generatedPrefix });\n }\n else {\n return _listWithPath(listInputArgs);\n }\n }\n};\nexports.list = list;\n/** @deprecated Use {@link _listAllWithPath} instead. */\nconst _listAllWithPrefix = async ({ s3Config, listParams, generatedPrefix, }) => {\n const listResult = [];\n let continuationToken = listParams.ContinuationToken;\n do {\n const { items: pageResults, nextToken: pageNextToken } = await _listWithPrefix({\n generatedPrefix,\n s3Config,\n listParams: {\n ...listParams,\n ContinuationToken: continuationToken,\n MaxKeys: MAX_PAGE_SIZE,\n },\n });\n listResult.push(...pageResults);\n continuationToken = pageNextToken;\n } while (continuationToken);\n return {\n items: listResult,\n };\n};\n/** @deprecated Use {@link _listWithPath} instead. */\nconst _listWithPrefix = async ({ s3Config, listParams, generatedPrefix, }) => {\n const listParamsClone = { ...listParams };\n if (!listParamsClone.MaxKeys || listParamsClone.MaxKeys > MAX_PAGE_SIZE) {\n utils_3.logger.debug(`defaulting pageSize to ${MAX_PAGE_SIZE}.`);\n listParamsClone.MaxKeys = MAX_PAGE_SIZE;\n }\n const response = await (0, client_1.listObjectsV2)({\n ...s3Config,\n userAgentValue: (0, userAgent_1.getStorageUserAgentValue)(utils_1.StorageAction.List),\n }, listParamsClone);\n if (!response?.Contents) {\n return {\n items: [],\n };\n }\n return {\n items: response.Contents.map(item => ({\n key: generatedPrefix\n ? item.Key.substring(generatedPrefix.length)\n : item.Key,\n eTag: item.ETag,\n lastModified: item.LastModified,\n size: item.Size,\n })),\n nextToken: response.NextContinuationToken,\n };\n};\nconst _listAllWithPath = async ({ s3Config, listParams, }) => {\n const listResult = [];\n let continuationToken = listParams.ContinuationToken;\n do {\n const { items: pageResults, nextToken: pageNextToken } = await _listWithPath({\n s3Config,\n listParams: {\n ...listParams,\n ContinuationToken: continuationToken,\n MaxKeys: MAX_PAGE_SIZE,\n },\n });\n listResult.push(...pageResults);\n continuationToken = pageNextToken;\n } while (continuationToken);\n return {\n items: listResult,\n };\n};\nconst _listWithPath = async ({ s3Config, listParams, }) => {\n const listParamsClone = { ...listParams };\n if (!listParamsClone.MaxKeys || listParamsClone.MaxKeys > MAX_PAGE_SIZE) {\n utils_3.logger.debug(`defaulting pageSize to ${MAX_PAGE_SIZE}.`);\n listParamsClone.MaxKeys = MAX_PAGE_SIZE;\n }\n const response = await (0, client_1.listObjectsV2)({\n ...s3Config,\n userAgentValue: (0, userAgent_1.getStorageUserAgentValue)(utils_1.StorageAction.List),\n }, listParamsClone);\n if (!response?.Contents) {\n return {\n items: [],\n };\n }\n return {\n items: response.Contents.map(item => ({\n path: item.Key,\n eTag: item.ETag,\n lastModified: item.LastModified,\n size: item.Size,\n })),\n nextToken: response.NextContinuationToken,\n };\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -9,11 +9,20 @@ const utils_2 = require("../../utils");
|
|
|
9
9
|
const client_1 = require("../../utils/client");
|
|
10
10
|
const userAgent_1 = require("../../utils/userAgent");
|
|
11
11
|
const utils_3 = require("../../../../utils");
|
|
12
|
+
const constants_1 = require("../../utils/constants");
|
|
12
13
|
const remove = async (amplify, input) => {
|
|
13
|
-
const {
|
|
14
|
-
const { s3Config, keyPrefix, bucket } = await (0, utils_2.resolveS3ConfigAndInput)(amplify, options);
|
|
15
|
-
const
|
|
16
|
-
|
|
14
|
+
const { options = {} } = input ?? {};
|
|
15
|
+
const { s3Config, keyPrefix, bucket, identityId } = await (0, utils_2.resolveS3ConfigAndInput)(amplify, options);
|
|
16
|
+
const { inputType, objectKey } = (0, utils_2.validateStorageOperationInput)(input, identityId);
|
|
17
|
+
let finalKey;
|
|
18
|
+
if (inputType === constants_1.STORAGE_INPUT_KEY) {
|
|
19
|
+
finalKey = `${keyPrefix}${objectKey}`;
|
|
20
|
+
utils_3.logger.debug(`remove "${objectKey}" from "${finalKey}".`);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
finalKey = objectKey;
|
|
24
|
+
utils_3.logger.debug(`removing object in path "${finalKey}"`);
|
|
25
|
+
}
|
|
17
26
|
await (0, client_1.deleteObject)({
|
|
18
27
|
...s3Config,
|
|
19
28
|
userAgentValue: (0, userAgent_1.getStorageUserAgentValue)(utils_1.StorageAction.Remove),
|
|
@@ -21,9 +30,13 @@ const remove = async (amplify, input) => {
|
|
|
21
30
|
Bucket: bucket,
|
|
22
31
|
Key: finalKey,
|
|
23
32
|
});
|
|
24
|
-
return
|
|
25
|
-
|
|
26
|
-
|
|
33
|
+
return inputType === constants_1.STORAGE_INPUT_KEY
|
|
34
|
+
? {
|
|
35
|
+
key: objectKey,
|
|
36
|
+
}
|
|
37
|
+
: {
|
|
38
|
+
path: objectKey,
|
|
39
|
+
};
|
|
27
40
|
};
|
|
28
41
|
exports.remove = remove;
|
|
29
42
|
//# sourceMappingURL=remove.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.js","sources":["../../../../../../src/providers/s3/apis/internal/remove.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.remove = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst utils_2 = require(\"../../utils\");\nconst client_1 = require(\"../../utils/client\");\nconst userAgent_1 = require(\"../../utils/userAgent\");\nconst utils_3 = require(\"../../../../utils\");\nconst remove = async (amplify, input) => {\n const {
|
|
1
|
+
{"version":3,"file":"remove.js","sources":["../../../../../../src/providers/s3/apis/internal/remove.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.remove = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst utils_2 = require(\"../../utils\");\nconst client_1 = require(\"../../utils/client\");\nconst userAgent_1 = require(\"../../utils/userAgent\");\nconst utils_3 = require(\"../../../../utils\");\nconst constants_1 = require(\"../../utils/constants\");\nconst remove = async (amplify, input) => {\n const { options = {} } = input ?? {};\n const { s3Config, keyPrefix, bucket, identityId } = await (0, utils_2.resolveS3ConfigAndInput)(amplify, options);\n const { inputType, objectKey } = (0, utils_2.validateStorageOperationInput)(input, identityId);\n let finalKey;\n if (inputType === constants_1.STORAGE_INPUT_KEY) {\n finalKey = `${keyPrefix}${objectKey}`;\n utils_3.logger.debug(`remove \"${objectKey}\" from \"${finalKey}\".`);\n }\n else {\n finalKey = objectKey;\n utils_3.logger.debug(`removing object in path \"${finalKey}\"`);\n }\n await (0, client_1.deleteObject)({\n ...s3Config,\n userAgentValue: (0, userAgent_1.getStorageUserAgentValue)(utils_1.StorageAction.Remove),\n }, {\n Bucket: bucket,\n Key: finalKey,\n });\n return inputType === constants_1.STORAGE_INPUT_KEY\n ? {\n key: objectKey,\n }\n : {\n path: objectKey,\n };\n};\nexports.remove = remove;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AACxB,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAAC;AAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACrD,MAAM,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACrD,MAAM,MAAM,GAAG,OAAO,OAAO,EAAE,KAAK,KAAK;AACzC,IAAI,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;AACzC,IAAI,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,OAAO,CAAC,uBAAuB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACrH,IAAI,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,OAAO,CAAC,6BAA6B,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AACnG,IAAI,IAAI,QAAQ,CAAC;AACjB,IAAI,IAAI,SAAS,KAAK,WAAW,CAAC,iBAAiB,EAAE;AACrD,QAAQ,QAAQ,GAAG,CAAC,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;AAC9C,QAAQ,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1E,KAAK;AACL,SAAS;AACT,QAAQ,QAAQ,GAAG,SAAS,CAAC;AAC7B,QAAQ,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACtE,KAAK;AACL,IAAI,MAAM,IAAI,QAAQ,CAAC,YAAY,EAAE;AACrC,QAAQ,GAAG,QAAQ;AACnB,QAAQ,cAAc,EAAE,IAAI,WAAW,CAAC,wBAAwB,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;AAC/F,KAAK,EAAE;AACP,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,GAAG,EAAE,QAAQ;AACrB,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,SAAS,KAAK,WAAW,CAAC,iBAAiB;AACtD,UAAU;AACV,YAAY,GAAG,EAAE,SAAS;AAC1B,SAAS;AACT,UAAU;AACV,YAAY,IAAI,EAAE,SAAS;AAC3B,SAAS,CAAC;AACV,CAAC,CAAC;AACF,OAAO,CAAC,MAAM,GAAG,MAAM;;"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
5
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
4
|
exports.list = void 0;
|
|
5
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
7
7
|
const core_1 = require("@aws-amplify/core");
|
|
8
8
|
const list_1 = require("./internal/list");
|
|
9
|
-
|
|
9
|
+
function list(input) {
|
|
10
10
|
return (0, list_1.list)(core_1.Amplify, input ?? {});
|
|
11
|
-
}
|
|
11
|
+
}
|
|
12
12
|
exports.list = list;
|
|
13
13
|
//# sourceMappingURL=list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sources":["../../../../../src/providers/s3/apis/list.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\
|
|
1
|
+
{"version":3,"file":"list.js","sources":["../../../../../src/providers/s3/apis/list.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.list = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst core_1 = require(\"@aws-amplify/core\");\nconst list_1 = require(\"./internal/list\");\nfunction list(input) {\n return (0, list_1.list)(core_1.Amplify, input ?? {});\n}\nexports.list = list;\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;AACtB;AACA;AACA,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAC1C,SAAS,IAAI,CAAC,KAAK,EAAE;AACrB,IAAI,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;AACzD,CAAC;AACD,OAAO,CAAC,IAAI,GAAG,IAAI;;"}
|
|
@@ -6,15 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.remove = void 0;
|
|
7
7
|
const core_1 = require("@aws-amplify/core");
|
|
8
8
|
const remove_1 = require("./internal/remove");
|
|
9
|
-
|
|
10
|
-
* Remove a file from your S3 bucket.
|
|
11
|
-
* @param input - The RemoveInput object.
|
|
12
|
-
* @return Output containing the removed object key
|
|
13
|
-
* @throws service: {@link S3Exception} - S3 service errors thrown while getting properties
|
|
14
|
-
* @throws validation: {@link StorageValidationErrorCode } - Validation errors thrown
|
|
15
|
-
*/
|
|
16
|
-
const remove = (input) => {
|
|
9
|
+
function remove(input) {
|
|
17
10
|
return (0, remove_1.remove)(core_1.Amplify, input);
|
|
18
|
-
}
|
|
11
|
+
}
|
|
19
12
|
exports.remove = remove;
|
|
20
13
|
//# sourceMappingURL=remove.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.js","sources":["../../../../../src/providers/s3/apis/remove.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.remove = void 0;\nconst core_1 = require(\"@aws-amplify/core\");\nconst remove_1 = require(\"./internal/remove\");\
|
|
1
|
+
{"version":3,"file":"remove.js","sources":["../../../../../src/providers/s3/apis/remove.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.remove = void 0;\nconst core_1 = require(\"@aws-amplify/core\");\nconst remove_1 = require(\"./internal/remove\");\nfunction remove(input) {\n return (0, remove_1.remove)(core_1.Amplify, input);\n}\nexports.remove = remove;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AACxB,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC9C,SAAS,MAAM,CAAC,KAAK,EAAE;AACvB,IAAI,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC;AACD,OAAO,CAAC,MAAM,GAAG,MAAM;;"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
5
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
4
|
exports.copy = void 0;
|
|
5
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
7
7
|
const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
|
|
8
8
|
const copy_1 = require("../internal/copy");
|
|
9
|
-
|
|
9
|
+
function copy(contextSpec, input) {
|
|
10
10
|
return (0, copy_1.copy)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);
|
|
11
|
-
}
|
|
11
|
+
}
|
|
12
12
|
exports.copy = copy;
|
|
13
13
|
//# sourceMappingURL=copy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy.js","sources":["../../../../../../src/providers/s3/apis/server/copy.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\
|
|
1
|
+
{"version":3,"file":"copy.js","sources":["../../../../../../src/providers/s3/apis/server/copy.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.copy = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst adapter_core_1 = require(\"@aws-amplify/core/internals/adapter-core\");\nconst copy_1 = require(\"../internal/copy\");\nfunction copy(contextSpec, input) {\n return (0, copy_1.copy)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);\n}\nexports.copy = copy;\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;AACtB;AACA;AACA,MAAM,cAAc,GAAG,OAAO,CAAC,0CAA0C,CAAC,CAAC;AAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC3C,SAAS,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE;AAClC,IAAI,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,cAAc,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACrG,CAAC;AACD,OAAO,CAAC,IAAI,GAAG,IAAI;;"}
|
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.getProperties = void 0;
|
|
7
7
|
const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
|
|
8
8
|
const getProperties_1 = require("../internal/getProperties");
|
|
9
|
-
|
|
9
|
+
function getProperties(contextSpec, input) {
|
|
10
10
|
return (0, getProperties_1.getProperties)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);
|
|
11
|
-
}
|
|
11
|
+
}
|
|
12
12
|
exports.getProperties = getProperties;
|
|
13
13
|
//# sourceMappingURL=getProperties.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getProperties.js","sources":["../../../../../../src/providers/s3/apis/server/getProperties.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getProperties = void 0;\nconst adapter_core_1 = require(\"@aws-amplify/core/internals/adapter-core\");\nconst getProperties_1 = require(\"../internal/getProperties\");\
|
|
1
|
+
{"version":3,"file":"getProperties.js","sources":["../../../../../../src/providers/s3/apis/server/getProperties.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getProperties = void 0;\nconst adapter_core_1 = require(\"@aws-amplify/core/internals/adapter-core\");\nconst getProperties_1 = require(\"../internal/getProperties\");\nfunction getProperties(contextSpec, input) {\n return (0, getProperties_1.getProperties)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);\n}\nexports.getProperties = getProperties;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;AAC/B,MAAM,cAAc,GAAG,OAAO,CAAC,0CAA0C,CAAC,CAAC;AAC3E,MAAM,eAAe,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;AAC7D,SAAS,aAAa,CAAC,WAAW,EAAE,KAAK,EAAE;AAC3C,IAAI,OAAO,IAAI,eAAe,CAAC,aAAa,EAAE,IAAI,cAAc,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACvH,CAAC;AACD,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
|
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.getUrl = void 0;
|
|
7
7
|
const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
|
|
8
8
|
const getUrl_1 = require("../internal/getUrl");
|
|
9
|
-
|
|
9
|
+
function getUrl(contextSpec, input) {
|
|
10
10
|
return (0, getUrl_1.getUrl)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);
|
|
11
|
-
}
|
|
11
|
+
}
|
|
12
12
|
exports.getUrl = getUrl;
|
|
13
13
|
//# sourceMappingURL=getUrl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUrl.js","sources":["../../../../../../src/providers/s3/apis/server/getUrl.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getUrl = void 0;\nconst adapter_core_1 = require(\"@aws-amplify/core/internals/adapter-core\");\nconst getUrl_1 = require(\"../internal/getUrl\");\
|
|
1
|
+
{"version":3,"file":"getUrl.js","sources":["../../../../../../src/providers/s3/apis/server/getUrl.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getUrl = void 0;\nconst adapter_core_1 = require(\"@aws-amplify/core/internals/adapter-core\");\nconst getUrl_1 = require(\"../internal/getUrl\");\nfunction getUrl(contextSpec, input) {\n return (0, getUrl_1.getUrl)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);\n}\nexports.getUrl = getUrl;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AACxB,MAAM,cAAc,GAAG,OAAO,CAAC,0CAA0C,CAAC,CAAC;AAC3E,MAAM,QAAQ,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC/C,SAAS,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE;AACpC,IAAI,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,IAAI,cAAc,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACzG,CAAC;AACD,OAAO,CAAC,MAAM,GAAG,MAAM;;"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
5
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
4
|
exports.list = void 0;
|
|
5
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
7
7
|
const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
|
|
8
8
|
const list_1 = require("../internal/list");
|
|
9
|
-
|
|
9
|
+
function list(contextSpec, input) {
|
|
10
10
|
return (0, list_1.list)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input ?? {});
|
|
11
|
-
}
|
|
11
|
+
}
|
|
12
12
|
exports.list = list;
|
|
13
13
|
//# sourceMappingURL=list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sources":["../../../../../../src/providers/s3/apis/server/list.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\
|
|
1
|
+
{"version":3,"file":"list.js","sources":["../../../../../../src/providers/s3/apis/server/list.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.list = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst adapter_core_1 = require(\"@aws-amplify/core/internals/adapter-core\");\nconst list_1 = require(\"../internal/list\");\nfunction list(contextSpec, input) {\n return (0, list_1.list)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input ?? {});\n}\nexports.list = list;\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;AACtB;AACA;AACA,MAAM,cAAc,GAAG,OAAO,CAAC,0CAA0C,CAAC,CAAC;AAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC3C,SAAS,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE;AAClC,IAAI,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,cAAc,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;AAC3G,CAAC;AACD,OAAO,CAAC,IAAI,GAAG,IAAI;;"}
|
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.remove = void 0;
|
|
7
7
|
const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
|
|
8
8
|
const remove_1 = require("../internal/remove");
|
|
9
|
-
|
|
9
|
+
function remove(contextSpec, input) {
|
|
10
10
|
return (0, remove_1.remove)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);
|
|
11
|
-
}
|
|
11
|
+
}
|
|
12
12
|
exports.remove = remove;
|
|
13
13
|
//# sourceMappingURL=remove.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.js","sources":["../../../../../../src/providers/s3/apis/server/remove.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.remove = void 0;\nconst adapter_core_1 = require(\"@aws-amplify/core/internals/adapter-core\");\nconst remove_1 = require(\"../internal/remove\");\
|
|
1
|
+
{"version":3,"file":"remove.js","sources":["../../../../../../src/providers/s3/apis/server/remove.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.remove = void 0;\nconst adapter_core_1 = require(\"@aws-amplify/core/internals/adapter-core\");\nconst remove_1 = require(\"../internal/remove\");\nfunction remove(contextSpec, input) {\n return (0, remove_1.remove)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);\n}\nexports.remove = remove;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AACxB,MAAM,cAAc,GAAG,OAAO,CAAC,0CAA0C,CAAC,CAAC;AAC3E,MAAM,QAAQ,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC/C,SAAS,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE;AACpC,IAAI,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,IAAI,cAAc,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACzG,CAAC;AACD,OAAO,CAAC,MAAM,GAAG,MAAM;;"}
|
|
@@ -11,59 +11,12 @@ const constants_1 = require("../../utils/constants");
|
|
|
11
11
|
const byteLength_1 = require("./byteLength");
|
|
12
12
|
const putObjectJob_1 = require("./putObjectJob");
|
|
13
13
|
const multipart_1 = require("./multipart");
|
|
14
|
-
|
|
15
|
-
* Upload data to specified S3 object. By default, it uses single PUT operation to upload if the data is less than 5MB.
|
|
16
|
-
* Otherwise, it uses multipart upload to upload the data. If the data length is unknown, it uses multipart upload.
|
|
17
|
-
*
|
|
18
|
-
* Limitations:
|
|
19
|
-
* * Maximum object size is 5TB.
|
|
20
|
-
* * Maximum object size if the size cannot be determined before upload is 50GB.
|
|
21
|
-
*
|
|
22
|
-
* @param input - The UploadDataInput object.
|
|
23
|
-
* @returns A cancelable and resumable task exposing result promise from `result`
|
|
24
|
-
* property.
|
|
25
|
-
* @throws service: {@link S3Exception} - thrown when checking for existence of the object
|
|
26
|
-
* @throws validation: {@link StorageValidationErrorCode } - Validation errors.
|
|
27
|
-
*
|
|
28
|
-
* @example
|
|
29
|
-
* ```ts
|
|
30
|
-
* // Upload a file to s3 bucket
|
|
31
|
-
* await uploadData({ key, data: file, options: {
|
|
32
|
-
* onProgress, // Optional progress callback.
|
|
33
|
-
* } }).result;
|
|
34
|
-
* ```
|
|
35
|
-
* @example
|
|
36
|
-
* ```ts
|
|
37
|
-
* // Cancel a task
|
|
38
|
-
* const uploadTask = uploadData({ key, data: file });
|
|
39
|
-
* //...
|
|
40
|
-
* uploadTask.cancel();
|
|
41
|
-
* try {
|
|
42
|
-
* await uploadTask.result;
|
|
43
|
-
* } catch (error) {
|
|
44
|
-
* if(isCancelError(error)) {
|
|
45
|
-
* // Handle error thrown by task cancelation.
|
|
46
|
-
* }
|
|
47
|
-
* }
|
|
48
|
-
*```
|
|
49
|
-
*
|
|
50
|
-
* @example
|
|
51
|
-
* ```ts
|
|
52
|
-
* // Pause and resume a task
|
|
53
|
-
* const uploadTask = uploadData({ key, data: file });
|
|
54
|
-
* //...
|
|
55
|
-
* uploadTask.pause();
|
|
56
|
-
* //...
|
|
57
|
-
* uploadTask.resume();
|
|
58
|
-
* //...
|
|
59
|
-
* await uploadTask.result;
|
|
60
|
-
* ```
|
|
61
|
-
*/
|
|
62
|
-
const uploadData = (input) => {
|
|
14
|
+
function uploadData(input) {
|
|
63
15
|
const { data } = input;
|
|
64
16
|
const dataByteLength = (0, byteLength_1.byteLength)(data);
|
|
65
17
|
(0, assertValidationError_1.assertValidationError)(dataByteLength === undefined || dataByteLength <= constants_1.MAX_OBJECT_SIZE, validation_1.StorageValidationErrorCode.ObjectIsTooLarge);
|
|
66
18
|
if (dataByteLength && dataByteLength <= constants_1.DEFAULT_PART_SIZE) {
|
|
19
|
+
// Single part upload
|
|
67
20
|
const abortController = new AbortController();
|
|
68
21
|
return (0, utils_1.createUploadTask)({
|
|
69
22
|
isMultipartUpload: false,
|
|
@@ -74,6 +27,7 @@ const uploadData = (input) => {
|
|
|
74
27
|
});
|
|
75
28
|
}
|
|
76
29
|
else {
|
|
30
|
+
// Multipart upload
|
|
77
31
|
const { multipartUploadJob, onPause, onResume, onCancel } = (0, multipart_1.getMultipartUploadHandlers)(input, dataByteLength);
|
|
78
32
|
return (0, utils_1.createUploadTask)({
|
|
79
33
|
isMultipartUpload: true,
|
|
@@ -85,6 +39,6 @@ const uploadData = (input) => {
|
|
|
85
39
|
onResume,
|
|
86
40
|
});
|
|
87
41
|
}
|
|
88
|
-
}
|
|
42
|
+
}
|
|
89
43
|
exports.uploadData = uploadData;
|
|
90
44
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/providers/s3/apis/uploadData/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.uploadData = void 0;\nconst utils_1 = require(\"../../utils\");\nconst assertValidationError_1 = require(\"../../../../errors/utils/assertValidationError\");\nconst validation_1 = require(\"../../../../errors/types/validation\");\nconst constants_1 = require(\"../../utils/constants\");\nconst byteLength_1 = require(\"./byteLength\");\nconst putObjectJob_1 = require(\"./putObjectJob\");\nconst multipart_1 = require(\"./multipart\");\
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/providers/s3/apis/uploadData/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.uploadData = void 0;\nconst utils_1 = require(\"../../utils\");\nconst assertValidationError_1 = require(\"../../../../errors/utils/assertValidationError\");\nconst validation_1 = require(\"../../../../errors/types/validation\");\nconst constants_1 = require(\"../../utils/constants\");\nconst byteLength_1 = require(\"./byteLength\");\nconst putObjectJob_1 = require(\"./putObjectJob\");\nconst multipart_1 = require(\"./multipart\");\nfunction uploadData(input) {\n const { data } = input;\n const dataByteLength = (0, byteLength_1.byteLength)(data);\n (0, assertValidationError_1.assertValidationError)(dataByteLength === undefined || dataByteLength <= constants_1.MAX_OBJECT_SIZE, validation_1.StorageValidationErrorCode.ObjectIsTooLarge);\n if (dataByteLength && dataByteLength <= constants_1.DEFAULT_PART_SIZE) {\n // Single part upload\n const abortController = new AbortController();\n return (0, utils_1.createUploadTask)({\n isMultipartUpload: false,\n job: (0, putObjectJob_1.putObjectJob)(input, abortController.signal, dataByteLength),\n onCancel: (message) => {\n abortController.abort(message);\n },\n });\n }\n else {\n // Multipart upload\n const { multipartUploadJob, onPause, onResume, onCancel } = (0, multipart_1.getMultipartUploadHandlers)(input, dataByteLength);\n return (0, utils_1.createUploadTask)({\n isMultipartUpload: true,\n job: multipartUploadJob,\n onCancel: (message) => {\n onCancel(message);\n },\n onPause,\n onResume,\n });\n }\n}\nexports.uploadData = uploadData;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;AAC5B,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AACvC,MAAM,uBAAuB,GAAG,OAAO,CAAC,gDAAgD,CAAC,CAAC;AAC1F,MAAM,YAAY,GAAG,OAAO,CAAC,qCAAqC,CAAC,CAAC;AACpE,MAAM,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACrD,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC7C,MAAM,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AACjD,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAC3C,SAAS,UAAU,CAAC,KAAK,EAAE;AAC3B,IAAI,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;AAC3B,IAAI,MAAM,cAAc,GAAG,IAAI,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAC9D,IAAI,IAAI,uBAAuB,CAAC,qBAAqB,EAAE,cAAc,KAAK,SAAS,IAAI,cAAc,IAAI,WAAW,CAAC,eAAe,EAAE,YAAY,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;AAChM,IAAI,IAAI,cAAc,IAAI,cAAc,IAAI,WAAW,CAAC,iBAAiB,EAAE;AAC3E;AACA,QAAQ,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;AACtD,QAAQ,OAAO,IAAI,OAAO,CAAC,gBAAgB,EAAE;AAC7C,YAAY,iBAAiB,EAAE,KAAK;AACpC,YAAY,GAAG,EAAE,IAAI,cAAc,CAAC,YAAY,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;AAChG,YAAY,QAAQ,EAAE,CAAC,OAAO,KAAK;AACnC,gBAAgB,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC/C,aAAa;AACb,SAAS,CAAC,CAAC;AACX,KAAK;AACL,SAAS;AACT;AACA,QAAQ,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,WAAW,CAAC,0BAA0B,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;AACvI,QAAQ,OAAO,IAAI,OAAO,CAAC,gBAAgB,EAAE;AAC7C,YAAY,iBAAiB,EAAE,IAAI;AACnC,YAAY,GAAG,EAAE,kBAAkB;AACnC,YAAY,QAAQ,EAAE,CAAC,OAAO,KAAK;AACnC,gBAAgB,QAAQ,CAAC,OAAO,CAAC,CAAC;AAClC,aAAa;AACb,YAAY,OAAO;AACnB,YAAY,QAAQ;AACpB,SAAS,CAAC,CAAC;AACX,KAAK;AACL,CAAC;AACD,OAAO,CAAC,UAAU,GAAG,UAAU;;"}
|
|
@@ -14,7 +14,7 @@ const uploadCache_1 = require("./uploadCache");
|
|
|
14
14
|
* @internal
|
|
15
15
|
*/
|
|
16
16
|
const loadOrCreateMultipartUpload = async ({ s3Config, data, size, contentType, bucket, accessLevel, keyPrefix, key, contentDisposition, contentEncoding, metadata, abortSignal, }) => {
|
|
17
|
-
const finalKey = keyPrefix + key;
|
|
17
|
+
const finalKey = keyPrefix !== undefined ? keyPrefix + key : key;
|
|
18
18
|
let cachedUpload;
|
|
19
19
|
if (size === undefined) {
|
|
20
20
|
utils_1.logger.debug('uploaded data size cannot be determined, skipping cache.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initialUpload.js","sources":["../../../../../../../src/providers/s3/apis/uploadData/multipart/initialUpload.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.loadOrCreateMultipartUpload = void 0;\nconst client_1 = require(\"../../../utils/client\");\nconst utils_1 = require(\"../../../../../utils\");\nconst uploadCache_1 = require(\"./uploadCache\");\n/**\n * Load the in-progress multipart upload from local storage or async storage(RN) if it exists, or create a new multipart\n * upload.\n *\n * @internal\n */\nconst loadOrCreateMultipartUpload = async ({ s3Config, data, size, contentType, bucket, accessLevel, keyPrefix, key, contentDisposition, contentEncoding, metadata, abortSignal, }) => {\n const finalKey = keyPrefix + key;\n let cachedUpload;\n if (size === undefined) {\n utils_1.logger.debug('uploaded data size cannot be determined, skipping cache.');\n cachedUpload = undefined;\n }\n else {\n const uploadCacheKey = (0, uploadCache_1.getUploadsCacheKey)({\n size,\n contentType,\n file: data instanceof File ? data : undefined,\n bucket,\n accessLevel,\n key,\n });\n const cachedUploadParts = await (0, uploadCache_1.findCachedUploadParts)({\n s3Config,\n cacheKey: uploadCacheKey,\n bucket,\n finalKey,\n });\n cachedUpload = cachedUploadParts\n ? { ...cachedUploadParts, uploadCacheKey }\n : undefined;\n }\n if (cachedUpload) {\n return {\n uploadId: cachedUpload.uploadId,\n cachedParts: cachedUpload.parts,\n };\n }\n else {\n const { UploadId } = await (0, client_1.createMultipartUpload)({\n ...s3Config,\n abortSignal,\n }, {\n Bucket: bucket,\n Key: finalKey,\n ContentType: contentType,\n ContentDisposition: contentDisposition,\n ContentEncoding: contentEncoding,\n Metadata: metadata,\n });\n if (size === undefined) {\n utils_1.logger.debug('uploaded data size cannot be determined, skipping cache.');\n return {\n uploadId: UploadId,\n cachedParts: [],\n };\n }\n const uploadCacheKey = (0, uploadCache_1.getUploadsCacheKey)({\n size,\n contentType,\n file: data instanceof File ? data : undefined,\n bucket,\n accessLevel,\n key,\n });\n await (0, uploadCache_1.cacheMultipartUpload)(uploadCacheKey, {\n uploadId: UploadId,\n bucket,\n key,\n fileName: data instanceof File ? data.name : '',\n });\n return {\n uploadId: UploadId,\n cachedParts: [],\n };\n }\n};\nexports.loadOrCreateMultipartUpload = loadOrCreateMultipartUpload;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,2BAA2B,GAAG,KAAK,CAAC,CAAC;AAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAClD,MAAM,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAChD,MAAM,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,2BAA2B,GAAG,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,EAAE,kBAAkB,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,GAAG,KAAK;AACvL,IAAI,MAAM,QAAQ,GAAG,SAAS,GAAG,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"initialUpload.js","sources":["../../../../../../../src/providers/s3/apis/uploadData/multipart/initialUpload.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.loadOrCreateMultipartUpload = void 0;\nconst client_1 = require(\"../../../utils/client\");\nconst utils_1 = require(\"../../../../../utils\");\nconst uploadCache_1 = require(\"./uploadCache\");\n/**\n * Load the in-progress multipart upload from local storage or async storage(RN) if it exists, or create a new multipart\n * upload.\n *\n * @internal\n */\nconst loadOrCreateMultipartUpload = async ({ s3Config, data, size, contentType, bucket, accessLevel, keyPrefix, key, contentDisposition, contentEncoding, metadata, abortSignal, }) => {\n const finalKey = keyPrefix !== undefined ? keyPrefix + key : key;\n let cachedUpload;\n if (size === undefined) {\n utils_1.logger.debug('uploaded data size cannot be determined, skipping cache.');\n cachedUpload = undefined;\n }\n else {\n const uploadCacheKey = (0, uploadCache_1.getUploadsCacheKey)({\n size,\n contentType,\n file: data instanceof File ? data : undefined,\n bucket,\n accessLevel,\n key,\n });\n const cachedUploadParts = await (0, uploadCache_1.findCachedUploadParts)({\n s3Config,\n cacheKey: uploadCacheKey,\n bucket,\n finalKey,\n });\n cachedUpload = cachedUploadParts\n ? { ...cachedUploadParts, uploadCacheKey }\n : undefined;\n }\n if (cachedUpload) {\n return {\n uploadId: cachedUpload.uploadId,\n cachedParts: cachedUpload.parts,\n };\n }\n else {\n const { UploadId } = await (0, client_1.createMultipartUpload)({\n ...s3Config,\n abortSignal,\n }, {\n Bucket: bucket,\n Key: finalKey,\n ContentType: contentType,\n ContentDisposition: contentDisposition,\n ContentEncoding: contentEncoding,\n Metadata: metadata,\n });\n if (size === undefined) {\n utils_1.logger.debug('uploaded data size cannot be determined, skipping cache.');\n return {\n uploadId: UploadId,\n cachedParts: [],\n };\n }\n const uploadCacheKey = (0, uploadCache_1.getUploadsCacheKey)({\n size,\n contentType,\n file: data instanceof File ? data : undefined,\n bucket,\n accessLevel,\n key,\n });\n await (0, uploadCache_1.cacheMultipartUpload)(uploadCacheKey, {\n uploadId: UploadId,\n bucket,\n key,\n fileName: data instanceof File ? data.name : '',\n });\n return {\n uploadId: UploadId,\n cachedParts: [],\n };\n }\n};\nexports.loadOrCreateMultipartUpload = loadOrCreateMultipartUpload;\n"],"names":[],"mappings":"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"}
|
|
@@ -56,8 +56,15 @@ const listCachedUploadTasks = async (kvStorage) => {
|
|
|
56
56
|
* So the library always created a new multipart upload if the file is modified.
|
|
57
57
|
*/
|
|
58
58
|
const getUploadsCacheKey = ({ file, size, contentType, bucket, accessLevel, key, }) => {
|
|
59
|
+
let levelStr;
|
|
59
60
|
const resolvedContentType = contentType ?? file?.type ?? 'application/octet-stream';
|
|
60
|
-
|
|
61
|
+
// If no access level is defined, we're using custom gen2 access rules
|
|
62
|
+
if (accessLevel === undefined) {
|
|
63
|
+
levelStr = 'custom';
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
levelStr = accessLevel === 'guest' ? 'public' : accessLevel;
|
|
67
|
+
}
|
|
61
68
|
const baseId = `${size}_${resolvedContentType}_${bucket}_${levelStr}_${key}`;
|
|
62
69
|
if (file) {
|
|
63
70
|
return `${file.name}_${file.lastModified}_${baseId}`;
|