@volare.finance/nestjs.plugins 1.2.0 → 1.2.2
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/aws/index.d.ts +2 -4
- package/dist/aws/index.js +2 -4
- package/dist/aws/index.js.map +1 -1
- package/dist/aws/{aws.config.d.ts → s3/aws-s3.config.d.ts} +4 -5
- package/dist/aws/s3/aws-s3.config.js +7 -0
- package/dist/aws/s3/aws-s3.config.js.map +1 -0
- package/dist/aws/{aws.module.d.ts → s3/aws-s3.module.d.ts} +3 -3
- package/dist/aws/s3/aws-s3.module.js +27 -0
- package/dist/aws/s3/aws-s3.module.js.map +1 -0
- package/dist/aws/s3/aws-s3.service.d.ts +16 -0
- package/dist/aws/s3/aws-s3.service.js +59 -0
- package/dist/aws/s3/aws-s3.service.js.map +1 -0
- package/dist/aws/s3/index.d.ts +7 -0
- package/dist/aws/s3/index.js +11 -0
- package/dist/aws/s3/index.js.map +1 -0
- package/dist/mongo/mongo.service.d.ts +0 -5
- package/dist/mongo/mongo.service.js +3 -5
- package/dist/mongo/mongo.service.js.map +1 -1
- package/package.json +1 -1
- package/dist/aws/aws.config.js +0 -3
- package/dist/aws/aws.config.js.map +0 -1
- package/dist/aws/aws.module.js +0 -27
- package/dist/aws/aws.module.js.map +0 -1
- package/dist/aws/aws.service.d.ts +0 -12
- package/dist/aws/aws.service.js +0 -59
- package/dist/aws/aws.service.js.map +0 -1
package/dist/aws/index.d.ts
CHANGED
package/dist/aws/index.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* @file index.ts
|
|
4
|
-
* @date
|
|
4
|
+
* @date 2026
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
const tslib_1 = require("tslib");
|
|
8
|
-
tslib_1.__exportStar(require("./
|
|
9
|
-
tslib_1.__exportStar(require("./aws.module"), exports);
|
|
10
|
-
tslib_1.__exportStar(require("./aws.service"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./s3"), exports);
|
|
11
9
|
//# sourceMappingURL=index.js.map
|
package/dist/aws/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/aws/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/aws/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,+CAAqB"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @file aws.config.ts
|
|
2
|
+
* @file aws-s3.config.ts
|
|
3
3
|
* @date 2023
|
|
4
4
|
*/
|
|
5
5
|
import { ObjectCannedACL } from '@aws-sdk/client-s3';
|
|
6
|
-
export interface
|
|
7
|
-
|
|
6
|
+
export interface AwsS3Config {
|
|
7
|
+
awsS3: {
|
|
8
8
|
enabled?: boolean;
|
|
9
9
|
region: string;
|
|
10
10
|
accessKeyId: string;
|
|
11
11
|
secretAccessKey: string;
|
|
12
12
|
bucket: string;
|
|
13
|
-
acl
|
|
14
|
-
baseUrl: string;
|
|
13
|
+
acl?: ObjectCannedACL;
|
|
15
14
|
};
|
|
16
15
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws-s3.config.js","sourceRoot":"","sources":["../../../src/aws/s3/aws-s3.config.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @file aws.module.ts
|
|
2
|
+
* @file aws-s3.module.ts
|
|
3
3
|
* @date 2023
|
|
4
4
|
*/
|
|
5
5
|
import { DynamicModule } from '@nestjs/common';
|
|
6
|
-
import { ConfigOptions } from '
|
|
7
|
-
export declare class
|
|
6
|
+
import { ConfigOptions } from '../../config';
|
|
7
|
+
export declare class AwsS3Module {
|
|
8
8
|
static forRoot(_options?: ConfigOptions): DynamicModule;
|
|
9
9
|
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file aws-s3.module.ts
|
|
4
|
+
* @date 2023
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.AwsS3Module = void 0;
|
|
8
|
+
const config_1 = require("../../config");
|
|
9
|
+
const aws_s3_service_1 = require("./aws-s3.service");
|
|
10
|
+
class AwsS3Module {
|
|
11
|
+
static forRoot(_options) {
|
|
12
|
+
return {
|
|
13
|
+
module: AwsS3Module,
|
|
14
|
+
exports: [aws_s3_service_1.AwsS3Service],
|
|
15
|
+
providers: [
|
|
16
|
+
{
|
|
17
|
+
provide: 'AwsS3Constant',
|
|
18
|
+
useFactory: (constant) => constant.config(),
|
|
19
|
+
inject: [config_1.ConfigService],
|
|
20
|
+
},
|
|
21
|
+
aws_s3_service_1.AwsS3Service,
|
|
22
|
+
],
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.AwsS3Module = AwsS3Module;
|
|
27
|
+
//# sourceMappingURL=aws-s3.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws-s3.module.js","sourceRoot":"","sources":["../../../src/aws/s3/aws-s3.module.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,yCAA4D;AAE5D,qDAAgD;AAEhD,MAAa,WAAW;IACtB,MAAM,CAAC,OAAO,CAAC,QAAwB;QACrC,OAAO;YACL,MAAM,EAAE,WAAW;YACnB,OAAO,EAAE,CAAC,6BAAY,CAAC;YACvB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,eAAe;oBACxB,UAAU,EAAE,CAAC,QAAoC,EAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAC5E,MAAM,EAAE,CAAC,sBAAa,CAAC;iBACxB;gBACD,6BAAY;aACb;SACF,CAAC;IACJ,CAAC;CACF;AAfD,kCAeC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file aws-s3.service.ts
|
|
3
|
+
* @date 2023
|
|
4
|
+
*/
|
|
5
|
+
import { DeleteObjectCommandOutput, GetObjectCommandOutput, PutObjectCommandOutput } from '@aws-sdk/client-s3';
|
|
6
|
+
import type { StreamingBlobPayloadInputTypes } from '@smithy/types';
|
|
7
|
+
import { AwsS3Config } from './aws-s3.config';
|
|
8
|
+
export declare class AwsS3Service {
|
|
9
|
+
private readonly constant;
|
|
10
|
+
private readonly instance;
|
|
11
|
+
constructor(constant: AwsS3Config);
|
|
12
|
+
checkConstant(): void;
|
|
13
|
+
putObject(file: StreamingBlobPayloadInputTypes, filepath: string, mimeType?: string): Promise<PutObjectCommandOutput>;
|
|
14
|
+
getObject(filepath: string): Promise<GetObjectCommandOutput>;
|
|
15
|
+
deleteObject(filepath: string): Promise<DeleteObjectCommandOutput>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file aws-s3.service.ts
|
|
4
|
+
* @date 2023
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.AwsS3Service = void 0;
|
|
8
|
+
const tslib_1 = require("tslib");
|
|
9
|
+
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
let AwsS3Service = class AwsS3Service {
|
|
12
|
+
constructor(constant) {
|
|
13
|
+
this.constant = constant;
|
|
14
|
+
if (constant.awsS3?.enabled) {
|
|
15
|
+
this.instance = new client_s3_1.S3({
|
|
16
|
+
region: constant.awsS3.region,
|
|
17
|
+
credentials: {
|
|
18
|
+
accessKeyId: constant.awsS3.accessKeyId,
|
|
19
|
+
secretAccessKey: constant.awsS3.secretAccessKey,
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
checkConstant() {
|
|
25
|
+
if (!this.constant.awsS3?.enabled) {
|
|
26
|
+
throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.NOT_IMPLEMENTED);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async putObject(file, filepath, mimeType) {
|
|
30
|
+
this.checkConstant();
|
|
31
|
+
return this.instance.putObject({
|
|
32
|
+
Key: filepath,
|
|
33
|
+
Body: file,
|
|
34
|
+
ContentType: mimeType,
|
|
35
|
+
Bucket: this.constant.awsS3.bucket,
|
|
36
|
+
ACL: this.constant.awsS3.acl,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
async getObject(filepath) {
|
|
40
|
+
this.checkConstant();
|
|
41
|
+
return this.instance.getObject({
|
|
42
|
+
Key: filepath,
|
|
43
|
+
Bucket: this.constant.awsS3.bucket,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
async deleteObject(filepath) {
|
|
47
|
+
this.checkConstant();
|
|
48
|
+
return this.instance.deleteObject({
|
|
49
|
+
Key: filepath,
|
|
50
|
+
Bucket: this.constant.awsS3.bucket,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
exports.AwsS3Service = AwsS3Service;
|
|
55
|
+
exports.AwsS3Service = AwsS3Service = tslib_1.__decorate([
|
|
56
|
+
(0, common_1.Injectable)(),
|
|
57
|
+
tslib_1.__param(0, (0, common_1.Inject)('AwsS3Constant'))
|
|
58
|
+
], AwsS3Service);
|
|
59
|
+
//# sourceMappingURL=aws-s3.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws-s3.service.js","sourceRoot":"","sources":["../../../src/aws/s3/aws-s3.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH,kDAAmH;AACnH,2CAA+E;AAKxE,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGvB,YAAsD,QAAqB;QAArB,aAAQ,GAAR,QAAQ,CAAa;QACzE,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAE,CAAC;gBACrB,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;gBAC7B,WAAW,EAAE;oBACX,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW;oBACvC,eAAe,EAAE,QAAQ,CAAC,KAAK,CAAC,eAAe;iBAChD;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;YAClC,MAAM,IAAI,sBAAa,CAAC,+BAA+B,EAAE,mBAAU,CAAC,eAAe,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAoC,EAAE,QAAgB,EAAE,QAAiB;QACvF,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC7B,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,QAAQ;YACrB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM;YAClC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB;QAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC7B,GAAG,EAAE,QAAQ;YACb,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM;SACnC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAChC,GAAG,EAAE,QAAQ;YACb,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM;SACnC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA/CY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;IAIE,mBAAA,IAAA,eAAM,EAAC,eAAe,CAAC,CAAA;GAHzB,YAAY,CA+CxB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file index.ts
|
|
4
|
+
* @date 2023
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const tslib_1 = require("tslib");
|
|
8
|
+
tslib_1.__exportStar(require("./aws-s3.config"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("./aws-s3.module"), exports);
|
|
10
|
+
tslib_1.__exportStar(require("./aws-s3.service"), exports);
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/aws/s3/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,0DAAgC;AAChC,0DAAgC;AAChC,2DAAiC"}
|
|
@@ -4,11 +4,6 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { FilterDto } from './filter.dto';
|
|
6
6
|
export declare const LIMIT_MAX: number;
|
|
7
|
-
export declare const DEFAULT_PROJECTION = "-_id -__v";
|
|
8
|
-
export declare const DEFAULT_PROJECTION_OBJECT: {
|
|
9
|
-
_id: number;
|
|
10
|
-
__v: number;
|
|
11
|
-
};
|
|
12
7
|
export declare class MongoService {
|
|
13
8
|
static find(query: any, filter: FilterDto): Promise<any[]>;
|
|
14
9
|
static aggregate(aggregate2: any, filter: FilterDto): any;
|
|
@@ -4,12 +4,10 @@
|
|
|
4
4
|
* @date 2023
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.MongoService = exports.
|
|
7
|
+
exports.MongoService = exports.LIMIT_MAX = void 0;
|
|
8
8
|
const dotenv_1 = require("dotenv");
|
|
9
9
|
(0, dotenv_1.config)({ path: '.env', encoding: 'utf8' });
|
|
10
10
|
exports.LIMIT_MAX = Number(process.env.LIMIT_MAX) || 100;
|
|
11
|
-
exports.DEFAULT_PROJECTION = '-_id -__v';
|
|
12
|
-
exports.DEFAULT_PROJECTION_OBJECT = { _id: 0, __v: 0 };
|
|
13
11
|
class MongoService {
|
|
14
12
|
static async find(query, filter) {
|
|
15
13
|
if (filter.where && Object.keys(filter.where).length) {
|
|
@@ -22,7 +20,7 @@ class MongoService {
|
|
|
22
20
|
query.skip(filter.skip);
|
|
23
21
|
}
|
|
24
22
|
query.limit(filter.limit && filter.limit < exports.LIMIT_MAX ? filter.limit : exports.LIMIT_MAX);
|
|
25
|
-
return query.select(filter
|
|
23
|
+
return query.select(filter?.projection).exec();
|
|
26
24
|
}
|
|
27
25
|
static aggregate(aggregate2, filter) {
|
|
28
26
|
if (filter.where && Object.keys(filter.where).length) {
|
|
@@ -35,7 +33,7 @@ class MongoService {
|
|
|
35
33
|
aggregate2.skip(filter.skip);
|
|
36
34
|
}
|
|
37
35
|
aggregate2.limit(filter.limit && filter.limit < exports.LIMIT_MAX ? filter.limit : exports.LIMIT_MAX);
|
|
38
|
-
return aggregate2.project(filter
|
|
36
|
+
return aggregate2.project(filter?.projection);
|
|
39
37
|
}
|
|
40
38
|
static async count(query, filter) {
|
|
41
39
|
if (filter.where) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongo.service.js","sourceRoot":"","sources":["../../src/mongo/mongo.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,mCAAgC;AAEhC,IAAA,eAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;AAE9B,QAAA,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"mongo.service.js","sourceRoot":"","sources":["../../src/mongo/mongo.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,mCAAgC;AAEhC,IAAA,eAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;AAE9B,QAAA,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC;AAE9D,MAAa,YAAY;IACvB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAU,EAAE,MAAiB;QAC7C,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YACrD,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACnD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,GAAG,iBAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAS,CAAC,CAAC;QACjF,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,UAAe,EAAE,MAAiB;QACjD,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YACrD,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACnD,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,GAAG,iBAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAS,CAAC,CAAC;QACtF,OAAO,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAU,EAAE,MAAiB;QAC9C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,KAAK,CAAC,cAAc,EAAE,CAAC;IAChC,CAAC;CACF;AAnCD,oCAmCC"}
|
package/package.json
CHANGED
package/dist/aws/aws.config.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aws.config.js","sourceRoot":"","sources":["../../src/aws/aws.config.ts"],"names":[],"mappings":""}
|
package/dist/aws/aws.module.js
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @file aws.module.ts
|
|
4
|
-
* @date 2023
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.AwsModule = void 0;
|
|
8
|
-
const config_1 = require("../config");
|
|
9
|
-
const aws_service_1 = require("./aws.service");
|
|
10
|
-
class AwsModule {
|
|
11
|
-
static forRoot(_options) {
|
|
12
|
-
return {
|
|
13
|
-
module: AwsModule,
|
|
14
|
-
exports: [aws_service_1.AwsService],
|
|
15
|
-
providers: [
|
|
16
|
-
{
|
|
17
|
-
provide: 'AwsConstant',
|
|
18
|
-
useFactory: (constant) => constant.config(),
|
|
19
|
-
inject: [config_1.ConfigService],
|
|
20
|
-
},
|
|
21
|
-
aws_service_1.AwsService,
|
|
22
|
-
],
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
exports.AwsModule = AwsModule;
|
|
27
|
-
//# sourceMappingURL=aws.module.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aws.module.js","sourceRoot":"","sources":["../../src/aws/aws.module.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,sCAAyD;AAEzD,+CAA2C;AAE3C,MAAa,SAAS;IACpB,MAAM,CAAC,OAAO,CAAC,QAAwB;QACrC,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,CAAC,wBAAU,CAAC;YACrB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,aAAa;oBACtB,UAAU,EAAE,CAAC,QAAkC,EAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAC1E,MAAM,EAAE,CAAC,sBAAa,CAAC;iBACxB;gBACD,wBAAU;aACX;SACF,CAAC;IACJ,CAAC;CACF;AAfD,8BAeC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file aws.service.ts
|
|
3
|
-
* @date 2023
|
|
4
|
-
*/
|
|
5
|
-
import { AwsConfig } from './aws.config';
|
|
6
|
-
export declare class AwsService {
|
|
7
|
-
private readonly constant;
|
|
8
|
-
private readonly instance;
|
|
9
|
-
constructor(constant: AwsConfig);
|
|
10
|
-
putObject(file: any, filename: string, mimetype?: string): Promise<string>;
|
|
11
|
-
getObjectToString(filename: string): Promise<string>;
|
|
12
|
-
}
|
package/dist/aws/aws.service.js
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @file aws.service.ts
|
|
4
|
-
* @date 2023
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.AwsService = void 0;
|
|
8
|
-
const tslib_1 = require("tslib");
|
|
9
|
-
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
10
|
-
const common_1 = require("@nestjs/common");
|
|
11
|
-
let AwsService = class AwsService {
|
|
12
|
-
constructor(constant) {
|
|
13
|
-
this.constant = constant;
|
|
14
|
-
if (constant.aws?.enabled) {
|
|
15
|
-
this.instance = new client_s3_1.S3({
|
|
16
|
-
region: constant.aws.region,
|
|
17
|
-
credentials: {
|
|
18
|
-
accessKeyId: constant.aws.accessKeyId,
|
|
19
|
-
secretAccessKey: constant.aws.secretAccessKey,
|
|
20
|
-
},
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
async putObject(file, filename, mimetype) {
|
|
25
|
-
if (!this.constant.aws?.enabled) {
|
|
26
|
-
throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.NOT_IMPLEMENTED);
|
|
27
|
-
}
|
|
28
|
-
const result = await this.instance.putObject({
|
|
29
|
-
Key: filename,
|
|
30
|
-
Body: file,
|
|
31
|
-
ContentType: mimetype,
|
|
32
|
-
Bucket: this.constant.aws.bucket,
|
|
33
|
-
ACL: this.constant.aws.acl,
|
|
34
|
-
});
|
|
35
|
-
if (result.$metadata.httpStatusCode === 200) {
|
|
36
|
-
return this.constant.aws.baseUrl + '/' + filename;
|
|
37
|
-
}
|
|
38
|
-
throw new common_1.HttpException('Put object failed', common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
39
|
-
}
|
|
40
|
-
async getObjectToString(filename) {
|
|
41
|
-
if (!this.constant.aws?.enabled) {
|
|
42
|
-
throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.NOT_IMPLEMENTED);
|
|
43
|
-
}
|
|
44
|
-
const result = await this.instance.getObject({
|
|
45
|
-
Key: filename,
|
|
46
|
-
Bucket: this.constant.aws.bucket,
|
|
47
|
-
});
|
|
48
|
-
if (result.$metadata.httpStatusCode === 200 && result.Body) {
|
|
49
|
-
return result.Body.transformToString('utf-8');
|
|
50
|
-
}
|
|
51
|
-
throw new common_1.HttpException('Get object failed', common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
exports.AwsService = AwsService;
|
|
55
|
-
exports.AwsService = AwsService = tslib_1.__decorate([
|
|
56
|
-
(0, common_1.Injectable)(),
|
|
57
|
-
tslib_1.__param(0, (0, common_1.Inject)('AwsConstant'))
|
|
58
|
-
], AwsService);
|
|
59
|
-
//# sourceMappingURL=aws.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aws.service.js","sourceRoot":"","sources":["../../src/aws/aws.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH,kDAAwC;AACxC,2CAA+E;AAIxE,IAAM,UAAU,GAAhB,MAAM,UAAU;IAKrB,YAAoD,QAAmB;QAAnB,aAAQ,GAAR,QAAQ,CAAW;QACrE,IAAI,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAE,CAAC;gBACrB,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM;gBAC3B,WAAW,EAAE;oBACX,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW;oBACrC,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,eAAe;iBAC9C;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAS,EAAE,QAAgB,EAAE,QAAiB;QAC5D,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;YAChC,MAAM,IAAI,sBAAa,CAAC,+BAA+B,EAAE,mBAAU,CAAC,eAAe,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC3C,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,QAAQ;YACrB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM;YAChC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG;SAC3B,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,KAAK,GAAG,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,GAAG,GAAG,GAAG,QAAQ,CAAC;QACpD,CAAC;QACD,MAAM,IAAI,sBAAa,CAAC,mBAAmB,EAAE,mBAAU,CAAC,qBAAqB,CAAC,CAAC;IACjF,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,QAAgB;QACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;YAChC,MAAM,IAAI,sBAAa,CAAC,+BAA+B,EAAE,mBAAU,CAAC,eAAe,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC3C,GAAG,EAAE,QAAQ;YACb,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM;SACjC,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,IAAI,sBAAa,CAAC,mBAAmB,EAAE,mBAAU,CAAC,qBAAqB,CAAC,CAAC;IACjF,CAAC;CACF,CAAA;AA/CY,gCAAU;qBAAV,UAAU;IADtB,IAAA,mBAAU,GAAE;IAME,mBAAA,IAAA,eAAM,EAAC,aAAa,CAAC,CAAA;GALvB,UAAU,CA+CtB"}
|