@pristine-ts/aws 1.0.426 → 1.0.427
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/lib/cjs/clients/s3.client.js +134 -0
- package/dist/lib/cjs/clients/s3.client.js.map +1 -1
- package/dist/lib/esm/clients/s3.client.js +135 -1
- package/dist/lib/esm/clients/s3.client.js.map +1 -1
- package/dist/types/clients/s3.client.d.ts +42 -1
- package/dist/types/interfaces/s3-client.interface.d.ts +42 -1
- package/package.json +7 -7
|
@@ -131,6 +131,140 @@ let S3Client = class S3Client {
|
|
|
131
131
|
return (_a = objects.Contents) !== null && _a !== void 0 ? _a : [];
|
|
132
132
|
});
|
|
133
133
|
}
|
|
134
|
+
/**
|
|
135
|
+
* Lists the buckets.
|
|
136
|
+
* @param options
|
|
137
|
+
*/
|
|
138
|
+
listBuckets(options) {
|
|
139
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
+
var _a;
|
|
141
|
+
this.logHandler.debug("S3Client: Listing buckets.");
|
|
142
|
+
const command = new client_s3_1.ListBucketsCommand({});
|
|
143
|
+
try {
|
|
144
|
+
const response = yield this.getClient().send(command, options);
|
|
145
|
+
return (_a = response.Buckets) !== null && _a !== void 0 ? _a : [];
|
|
146
|
+
}
|
|
147
|
+
catch (e) {
|
|
148
|
+
this.logHandler.error("S3Client: Error listing buckets.", { extra: { error: e } });
|
|
149
|
+
throw e;
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Creates a new bucket.
|
|
155
|
+
* @param bucketName The name of the bucket.
|
|
156
|
+
* @param options
|
|
157
|
+
*/
|
|
158
|
+
createBucket(bucketName, options) {
|
|
159
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
160
|
+
this.logHandler.debug("S3Client: Creating bucket.", { extra: { bucketName } });
|
|
161
|
+
const command = new client_s3_1.CreateBucketCommand({
|
|
162
|
+
Bucket: bucketName,
|
|
163
|
+
});
|
|
164
|
+
try {
|
|
165
|
+
yield this.getClient().send(command, options);
|
|
166
|
+
}
|
|
167
|
+
catch (e) {
|
|
168
|
+
this.logHandler.error("S3Client: Error creating bucket.", { extra: { error: e } });
|
|
169
|
+
throw e;
|
|
170
|
+
}
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Deletes a bucket.
|
|
175
|
+
* @param bucketName The name of the bucket.
|
|
176
|
+
* @param options
|
|
177
|
+
*/
|
|
178
|
+
deleteBucket(bucketName, options) {
|
|
179
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
180
|
+
this.logHandler.debug("S3Client: Deleting bucket.", { extra: { bucketName } });
|
|
181
|
+
const command = new client_s3_1.DeleteBucketCommand({
|
|
182
|
+
Bucket: bucketName,
|
|
183
|
+
});
|
|
184
|
+
try {
|
|
185
|
+
yield this.getClient().send(command, options);
|
|
186
|
+
}
|
|
187
|
+
catch (e) {
|
|
188
|
+
this.logHandler.error("S3Client: Error deleting bucket.", { extra: { error: e } });
|
|
189
|
+
throw e;
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Deletes an object from S3.
|
|
195
|
+
* @param bucketName The name of the bucket.
|
|
196
|
+
* @param key The key of the object.
|
|
197
|
+
* @param options
|
|
198
|
+
*/
|
|
199
|
+
deleteObject(bucketName, key, options) {
|
|
200
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
201
|
+
this.logHandler.debug("S3Client: Deleting object from S3.", { extra: { bucketName, key } });
|
|
202
|
+
const command = new client_s3_1.DeleteObjectCommand({
|
|
203
|
+
Bucket: bucketName,
|
|
204
|
+
Key: key,
|
|
205
|
+
});
|
|
206
|
+
try {
|
|
207
|
+
yield this.getClient().send(command, options);
|
|
208
|
+
}
|
|
209
|
+
catch (e) {
|
|
210
|
+
this.logHandler.error("S3Client: Error deleting object from S3.", { extra: { error: e } });
|
|
211
|
+
throw e;
|
|
212
|
+
}
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Downloads an object from S3.
|
|
217
|
+
* @param bucketName The name of the bucket.
|
|
218
|
+
* @param key The key of the object.
|
|
219
|
+
* @param options
|
|
220
|
+
*/
|
|
221
|
+
download(bucketName, key, options) {
|
|
222
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
223
|
+
this.logHandler.debug("S3Client: Downloading object from S3.", { extra: { bucketName, key } });
|
|
224
|
+
try {
|
|
225
|
+
const response = yield this.get(bucketName, key, options);
|
|
226
|
+
return response.Body;
|
|
227
|
+
}
|
|
228
|
+
catch (e) {
|
|
229
|
+
this.logHandler.error("S3Client: Error downloading object from S3.", { extra: { error: e } });
|
|
230
|
+
throw e;
|
|
231
|
+
}
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Lists the objects in a bucket with a directory-like structure.
|
|
236
|
+
* @param bucketName The name of the bucket.
|
|
237
|
+
* @param prefix The prefix (directory) to list.
|
|
238
|
+
* @param continuationToken The continuation token for pagination.
|
|
239
|
+
* @param maxKeys The maximum number of keys to return.
|
|
240
|
+
* @param options
|
|
241
|
+
*/
|
|
242
|
+
listDirectory(bucketName, prefix, continuationToken, maxKeys, options) {
|
|
243
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
244
|
+
this.logHandler.debug("S3Client: Listing directory in S3.", {
|
|
245
|
+
extra: {
|
|
246
|
+
bucketName,
|
|
247
|
+
prefix,
|
|
248
|
+
continuationToken,
|
|
249
|
+
maxKeys
|
|
250
|
+
}
|
|
251
|
+
});
|
|
252
|
+
const command = new client_s3_1.ListObjectsV2Command({
|
|
253
|
+
Bucket: bucketName,
|
|
254
|
+
Prefix: prefix,
|
|
255
|
+
Delimiter: '/',
|
|
256
|
+
ContinuationToken: continuationToken,
|
|
257
|
+
MaxKeys: maxKeys,
|
|
258
|
+
});
|
|
259
|
+
try {
|
|
260
|
+
return yield this.getClient().send(command, options);
|
|
261
|
+
}
|
|
262
|
+
catch (e) {
|
|
263
|
+
this.logHandler.error("S3Client: Error listing directory in S3.", { extra: { error: e } });
|
|
264
|
+
throw e;
|
|
265
|
+
}
|
|
266
|
+
});
|
|
267
|
+
}
|
|
134
268
|
/**
|
|
135
269
|
* Uploads an object to a bucket of S3.
|
|
136
270
|
* @param bucketName The name of the bucket.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.client.js","sourceRoot":"","sources":["../../../../src/clients/s3.client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA4C;AAE5C,gDAAsD;AACtD,8DAAuD;AAEvD,
|
|
1
|
+
{"version":3,"file":"s3.client.js","sourceRoot":"","sources":["../../../../src/clients/s3.client.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
22
22
|
import { inject, injectable } from "tsyringe";
|
|
23
23
|
import { moduleScoped, tag } from "@pristine-ts/common";
|
|
24
24
|
import { AwsModuleKeyname } from "../aws.module.keyname";
|
|
25
|
-
import { GetObjectCommand, ListObjectsCommand, PutObjectCommand, S3Client as AWSS3Client } from "@aws-sdk/client-s3";
|
|
25
|
+
import { CreateBucketCommand, DeleteBucketCommand, DeleteObjectCommand, GetObjectCommand, ListBucketsCommand, ListObjectsCommand, ListObjectsV2Command, PutObjectCommand, S3Client as AWSS3Client } from "@aws-sdk/client-s3";
|
|
26
26
|
import { S3PresignedOperationTypeEnum } from "../enums/s3-presigned-operation-type.enum";
|
|
27
27
|
import { getSignedUrl } from "@aws-sdk/s3-request-presigner";
|
|
28
28
|
/**
|
|
@@ -128,6 +128,140 @@ let S3Client = class S3Client {
|
|
|
128
128
|
return (_a = objects.Contents) !== null && _a !== void 0 ? _a : [];
|
|
129
129
|
});
|
|
130
130
|
}
|
|
131
|
+
/**
|
|
132
|
+
* Lists the buckets.
|
|
133
|
+
* @param options
|
|
134
|
+
*/
|
|
135
|
+
listBuckets(options) {
|
|
136
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
137
|
+
var _a;
|
|
138
|
+
this.logHandler.debug("S3Client: Listing buckets.");
|
|
139
|
+
const command = new ListBucketsCommand({});
|
|
140
|
+
try {
|
|
141
|
+
const response = yield this.getClient().send(command, options);
|
|
142
|
+
return (_a = response.Buckets) !== null && _a !== void 0 ? _a : [];
|
|
143
|
+
}
|
|
144
|
+
catch (e) {
|
|
145
|
+
this.logHandler.error("S3Client: Error listing buckets.", { extra: { error: e } });
|
|
146
|
+
throw e;
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Creates a new bucket.
|
|
152
|
+
* @param bucketName The name of the bucket.
|
|
153
|
+
* @param options
|
|
154
|
+
*/
|
|
155
|
+
createBucket(bucketName, options) {
|
|
156
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
157
|
+
this.logHandler.debug("S3Client: Creating bucket.", { extra: { bucketName } });
|
|
158
|
+
const command = new CreateBucketCommand({
|
|
159
|
+
Bucket: bucketName,
|
|
160
|
+
});
|
|
161
|
+
try {
|
|
162
|
+
yield this.getClient().send(command, options);
|
|
163
|
+
}
|
|
164
|
+
catch (e) {
|
|
165
|
+
this.logHandler.error("S3Client: Error creating bucket.", { extra: { error: e } });
|
|
166
|
+
throw e;
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Deletes a bucket.
|
|
172
|
+
* @param bucketName The name of the bucket.
|
|
173
|
+
* @param options
|
|
174
|
+
*/
|
|
175
|
+
deleteBucket(bucketName, options) {
|
|
176
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
177
|
+
this.logHandler.debug("S3Client: Deleting bucket.", { extra: { bucketName } });
|
|
178
|
+
const command = new DeleteBucketCommand({
|
|
179
|
+
Bucket: bucketName,
|
|
180
|
+
});
|
|
181
|
+
try {
|
|
182
|
+
yield this.getClient().send(command, options);
|
|
183
|
+
}
|
|
184
|
+
catch (e) {
|
|
185
|
+
this.logHandler.error("S3Client: Error deleting bucket.", { extra: { error: e } });
|
|
186
|
+
throw e;
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Deletes an object from S3.
|
|
192
|
+
* @param bucketName The name of the bucket.
|
|
193
|
+
* @param key The key of the object.
|
|
194
|
+
* @param options
|
|
195
|
+
*/
|
|
196
|
+
deleteObject(bucketName, key, options) {
|
|
197
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
198
|
+
this.logHandler.debug("S3Client: Deleting object from S3.", { extra: { bucketName, key } });
|
|
199
|
+
const command = new DeleteObjectCommand({
|
|
200
|
+
Bucket: bucketName,
|
|
201
|
+
Key: key,
|
|
202
|
+
});
|
|
203
|
+
try {
|
|
204
|
+
yield this.getClient().send(command, options);
|
|
205
|
+
}
|
|
206
|
+
catch (e) {
|
|
207
|
+
this.logHandler.error("S3Client: Error deleting object from S3.", { extra: { error: e } });
|
|
208
|
+
throw e;
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Downloads an object from S3.
|
|
214
|
+
* @param bucketName The name of the bucket.
|
|
215
|
+
* @param key The key of the object.
|
|
216
|
+
* @param options
|
|
217
|
+
*/
|
|
218
|
+
download(bucketName, key, options) {
|
|
219
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
220
|
+
this.logHandler.debug("S3Client: Downloading object from S3.", { extra: { bucketName, key } });
|
|
221
|
+
try {
|
|
222
|
+
const response = yield this.get(bucketName, key, options);
|
|
223
|
+
return response.Body;
|
|
224
|
+
}
|
|
225
|
+
catch (e) {
|
|
226
|
+
this.logHandler.error("S3Client: Error downloading object from S3.", { extra: { error: e } });
|
|
227
|
+
throw e;
|
|
228
|
+
}
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Lists the objects in a bucket with a directory-like structure.
|
|
233
|
+
* @param bucketName The name of the bucket.
|
|
234
|
+
* @param prefix The prefix (directory) to list.
|
|
235
|
+
* @param continuationToken The continuation token for pagination.
|
|
236
|
+
* @param maxKeys The maximum number of keys to return.
|
|
237
|
+
* @param options
|
|
238
|
+
*/
|
|
239
|
+
listDirectory(bucketName, prefix, continuationToken, maxKeys, options) {
|
|
240
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
241
|
+
this.logHandler.debug("S3Client: Listing directory in S3.", {
|
|
242
|
+
extra: {
|
|
243
|
+
bucketName,
|
|
244
|
+
prefix,
|
|
245
|
+
continuationToken,
|
|
246
|
+
maxKeys
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
const command = new ListObjectsV2Command({
|
|
250
|
+
Bucket: bucketName,
|
|
251
|
+
Prefix: prefix,
|
|
252
|
+
Delimiter: '/',
|
|
253
|
+
ContinuationToken: continuationToken,
|
|
254
|
+
MaxKeys: maxKeys,
|
|
255
|
+
});
|
|
256
|
+
try {
|
|
257
|
+
return yield this.getClient().send(command, options);
|
|
258
|
+
}
|
|
259
|
+
catch (e) {
|
|
260
|
+
this.logHandler.error("S3Client: Error listing directory in S3.", { extra: { error: e } });
|
|
261
|
+
throw e;
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
}
|
|
131
265
|
/**
|
|
132
266
|
* Uploads an object to a bucket of S3.
|
|
133
267
|
* @param bucketName The name of the bucket.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.client.js","sourceRoot":"","sources":["../../../../src/clients/s3.client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAC,MAAM,EAAE,UAAU,EAAC,MAAM,UAAU,CAAC;AAE5C,OAAO,EAAC,YAAY,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAEvD,OAAO,
|
|
1
|
+
{"version":3,"file":"s3.client.js","sourceRoot":"","sources":["../../../../src/clients/s3.client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { LogHandlerInterface } from "@pristine-ts/logging";
|
|
2
2
|
import { S3ClientInterface } from "../interfaces/s3-client.interface";
|
|
3
|
-
import { GetObjectCommandOutput, S3Client as AWSS3Client, S3ClientConfig } from "@aws-sdk/client-s3";
|
|
3
|
+
import { Bucket, GetObjectCommandOutput, ListObjectsV2CommandOutput, S3Client as AWSS3Client, S3ClientConfig } from "@aws-sdk/client-s3";
|
|
4
4
|
import { S3PresignedOperationTypeEnum } from "../enums/s3-presigned-operation-type.enum";
|
|
5
5
|
import { ClientOptionsInterface } from "../interfaces/client-options.interface";
|
|
6
|
+
import { Readable } from "stream";
|
|
6
7
|
/**
|
|
7
8
|
* The client to use to interact with AWS S3. It is a wrapper around the AWSS3Client of @aws-sdk/client-s3.
|
|
8
9
|
* It is tagged so it can be injected using S3ClientInterface.
|
|
@@ -56,6 +57,46 @@ export declare class S3Client implements S3ClientInterface {
|
|
|
56
57
|
* @param options
|
|
57
58
|
*/
|
|
58
59
|
listObjects(bucketName: string, options?: Partial<ClientOptionsInterface>): Promise<any[]>;
|
|
60
|
+
/**
|
|
61
|
+
* Lists the buckets.
|
|
62
|
+
* @param options
|
|
63
|
+
*/
|
|
64
|
+
listBuckets(options?: Partial<ClientOptionsInterface>): Promise<Bucket[]>;
|
|
65
|
+
/**
|
|
66
|
+
* Creates a new bucket.
|
|
67
|
+
* @param bucketName The name of the bucket.
|
|
68
|
+
* @param options
|
|
69
|
+
*/
|
|
70
|
+
createBucket(bucketName: string, options?: Partial<ClientOptionsInterface>): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* Deletes a bucket.
|
|
73
|
+
* @param bucketName The name of the bucket.
|
|
74
|
+
* @param options
|
|
75
|
+
*/
|
|
76
|
+
deleteBucket(bucketName: string, options?: Partial<ClientOptionsInterface>): Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* Deletes an object from S3.
|
|
79
|
+
* @param bucketName The name of the bucket.
|
|
80
|
+
* @param key The key of the object.
|
|
81
|
+
* @param options
|
|
82
|
+
*/
|
|
83
|
+
deleteObject(bucketName: string, key: string, options?: Partial<ClientOptionsInterface>): Promise<void>;
|
|
84
|
+
/**
|
|
85
|
+
* Downloads an object from S3.
|
|
86
|
+
* @param bucketName The name of the bucket.
|
|
87
|
+
* @param key The key of the object.
|
|
88
|
+
* @param options
|
|
89
|
+
*/
|
|
90
|
+
download(bucketName: string, key: string, options?: Partial<ClientOptionsInterface>): Promise<Readable | ReadableStream | Blob>;
|
|
91
|
+
/**
|
|
92
|
+
* Lists the objects in a bucket with a directory-like structure.
|
|
93
|
+
* @param bucketName The name of the bucket.
|
|
94
|
+
* @param prefix The prefix (directory) to list.
|
|
95
|
+
* @param continuationToken The continuation token for pagination.
|
|
96
|
+
* @param maxKeys The maximum number of keys to return.
|
|
97
|
+
* @param options
|
|
98
|
+
*/
|
|
99
|
+
listDirectory(bucketName: string, prefix?: string, continuationToken?: string, maxKeys?: number, options?: Partial<ClientOptionsInterface>): Promise<ListObjectsV2CommandOutput>;
|
|
59
100
|
/**
|
|
60
101
|
* Uploads an object to a bucket of S3.
|
|
61
102
|
* @param bucketName The name of the bucket.
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { S3PresignedOperationTypeEnum } from "../enums/s3-presigned-operation-type.enum";
|
|
2
|
-
import { GetObjectCommandOutput, S3Client as AWSS3Client, S3ClientConfig } from "@aws-sdk/client-s3";
|
|
2
|
+
import { Bucket, GetObjectCommandOutput, ListObjectsV2CommandOutput, S3Client as AWSS3Client, S3ClientConfig } from "@aws-sdk/client-s3";
|
|
3
3
|
import { ClientOptionsInterface } from "./client-options.interface";
|
|
4
|
+
import { Readable } from "stream";
|
|
4
5
|
/**
|
|
5
6
|
* The S3Client Interface defines the methods that an S3 client must implement.
|
|
6
7
|
* When injecting the S3 client the 'S3ClientInterface' tag should be used.
|
|
@@ -41,6 +42,23 @@ export interface S3ClientInterface {
|
|
|
41
42
|
* @param options
|
|
42
43
|
*/
|
|
43
44
|
listObjects(bucketName: string, options?: Partial<ClientOptionsInterface>): Promise<any[]>;
|
|
45
|
+
/**
|
|
46
|
+
* Lists the buckets.
|
|
47
|
+
* @param options
|
|
48
|
+
*/
|
|
49
|
+
listBuckets(options?: Partial<ClientOptionsInterface>): Promise<Bucket[]>;
|
|
50
|
+
/**
|
|
51
|
+
* Creates a new bucket.
|
|
52
|
+
* @param bucketName The name of the bucket.
|
|
53
|
+
* @param options
|
|
54
|
+
*/
|
|
55
|
+
createBucket(bucketName: string, options?: Partial<ClientOptionsInterface>): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* Deletes a bucket.
|
|
58
|
+
* @param bucketName The name of the bucket.
|
|
59
|
+
* @param options
|
|
60
|
+
*/
|
|
61
|
+
deleteBucket(bucketName: string, options?: Partial<ClientOptionsInterface>): Promise<void>;
|
|
44
62
|
/**
|
|
45
63
|
* Uploads an object to a bucket of S3.
|
|
46
64
|
* @param bucketName The name of the bucket.
|
|
@@ -60,4 +78,27 @@ export interface S3ClientInterface {
|
|
|
60
78
|
* @param expiresIn The amount on time in seconds before the pre signed url expires.
|
|
61
79
|
*/
|
|
62
80
|
createSignedUrl(bucketName: string, key: string, operation: S3PresignedOperationTypeEnum, fileName?: string, expiresIn?: number): Promise<string>;
|
|
81
|
+
/**
|
|
82
|
+
* Deletes an object from S3.
|
|
83
|
+
* @param bucketName The name of the bucket.
|
|
84
|
+
* @param key The key of the object.
|
|
85
|
+
* @param options
|
|
86
|
+
*/
|
|
87
|
+
deleteObject(bucketName: string, key: string, options?: Partial<ClientOptionsInterface>): Promise<void>;
|
|
88
|
+
/**
|
|
89
|
+
* Downloads an object from S3.
|
|
90
|
+
* @param bucketName The name of the bucket.
|
|
91
|
+
* @param key The key of the object.
|
|
92
|
+
* @param options
|
|
93
|
+
*/
|
|
94
|
+
download(bucketName: string, key: string, options?: Partial<ClientOptionsInterface>): Promise<Readable | ReadableStream | Blob>;
|
|
95
|
+
/**
|
|
96
|
+
* Lists the objects in a bucket with a directory-like structure.
|
|
97
|
+
* @param bucketName The name of the bucket.
|
|
98
|
+
* @param prefix The prefix (directory) to list.
|
|
99
|
+
* @param continuationToken The continuation token for pagination.
|
|
100
|
+
* @param maxKeys The maximum number of keys to return.
|
|
101
|
+
* @param options
|
|
102
|
+
*/
|
|
103
|
+
listDirectory(bucketName: string, prefix?: string, continuationToken?: string, maxKeys?: number, options?: Partial<ClientOptionsInterface>): Promise<ListObjectsV2CommandOutput>;
|
|
63
104
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pristine-ts/aws",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.427",
|
|
4
4
|
"description": "",
|
|
5
5
|
"module": "dist/lib/esm/aws.module.js",
|
|
6
6
|
"main": "dist/lib/cjs/aws.module.js",
|
|
@@ -30,11 +30,11 @@
|
|
|
30
30
|
"@awslabs-community-fork/dynamodb-data-mapper": "^0.7.13",
|
|
31
31
|
"@awslabs-community-fork/dynamodb-data-marshaller": "^0.7.13",
|
|
32
32
|
"@awslabs-community-fork/dynamodb-expressions": "^0.7.13",
|
|
33
|
-
"@pristine-ts/common": "^1.0.
|
|
34
|
-
"@pristine-ts/core": "^1.0.
|
|
35
|
-
"@pristine-ts/logging": "^1.0.
|
|
36
|
-
"@pristine-ts/networking": "^1.0.
|
|
37
|
-
"@pristine-ts/security": "^1.0.
|
|
33
|
+
"@pristine-ts/common": "^1.0.427",
|
|
34
|
+
"@pristine-ts/core": "^1.0.427",
|
|
35
|
+
"@pristine-ts/logging": "^1.0.427",
|
|
36
|
+
"@pristine-ts/networking": "^1.0.427",
|
|
37
|
+
"@pristine-ts/security": "^1.0.427",
|
|
38
38
|
"uuid": "^9.0.1"
|
|
39
39
|
},
|
|
40
40
|
"publishConfig": {
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"src/*.{js,ts}"
|
|
75
75
|
]
|
|
76
76
|
},
|
|
77
|
-
"gitHead": "
|
|
77
|
+
"gitHead": "61b09238f5a987ae923c339ac66db77f87e246a5",
|
|
78
78
|
"repository": {
|
|
79
79
|
"type": "git",
|
|
80
80
|
"url": "https://github.com/magieno/pristine-ts.git",
|