0.14.5 • Published 11 months ago
@peersyst/storage-module v0.14.5
Description
Nest framework TypeScript base storage module.
Installation
$ npm install --save @peersyst/storage-module
How to use it
Base storage module
- Import and register StorageModule in AppModule
import { Module } from "@nestjs/common";
import { StorageModule, StorageType } from "@peersyst/storage-module";
@Module({
imports: [
ConfigModule.forRoot(...),
StorageModule.register(ConfigModule, {
storageType: StorageType.LOCAL,
}),
...
],
...
})
export class AppModule {}
- Add StorageErrorCode and StorageErrorBody to app ErrorCodes
import { HttpStatus } from "@nestjs/common";
import { StorageErrorCode, StorageErrorBody } from "@peersyst/storage-module";
// Define app error codes
enum AppErrorCode {}
export const ErrorCode = { ...AppErrorCode, ...StorageErrorCode };
export type ErrorCodeType = AppErrorCode | StorageErrorCode;
export const ErrorBody: { [code in ErrorCodeType]: { statusCode: HttpStatus; message: string } } = {
// Define app error code bodies
...StorageErrorBody,
};
- Import StorageModule in the modules you want to use it
import { Module } from "@nestjs/common";
import { StorageModule, StorageType } from "@peersyst/storage-module";
@Module({
imports: [
StorageModule.register(ConfigModule, {
storageType: StorageType.LOCAL,
}),
...
],
...
})
export class ResourceModule {}
- Inject StorageService in the in the classes you want to use it
import { InjectRepository, Inject } from "@nestjs/common";
import { StorageServiceInterface } from "@peersyst/storage-module";
export class ResourceService {
constructor(
@InjectRepository(Resource) private readonly resourceRepository: Repository<Resource>,
@Inject("StorageService") private readonly storageService: StorageServiceInterface,
)
}
S3 Storage Type
- Add configService configuration variables
export default (): any => ({
aws: {
region: process.env.AWS_REGION,
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
bucketName: process.env.AWS_BUCKET_NAME,
},
});
Local Storage Type
- Add configService configuration variables
export default (): any => ({
local: {
rootPath: process.env.LOCAL_ROOT_PATH,
},
});
License
Nest is MIT licensed.
0.14.5
11 months ago
0.14.4
11 months ago
0.14.0
2 years ago
0.14.1
2 years ago
0.14.2
2 years ago
0.13.3
2 years ago
0.14.3
2 years ago
0.13.0
2 years ago
0.12.69
3 years ago
0.12.66
3 years ago
0.12.61
3 years ago
0.12.40
3 years ago
0.12.15
3 years ago
0.12.0
3 years ago
0.11.36
3 years ago
0.11.35
3 years ago
0.11.34
3 years ago
0.11.33
3 years ago
0.11.32
3 years ago
0.11.31
3 years ago
0.11.30
3 years ago
0.11.29
3 years ago
0.11.28
3 years ago
0.11.21
3 years ago
0.11.20
3 years ago
0.11.19
3 years ago
0.11.13
3 years ago
0.11.12
3 years ago
0.11.11
3 years ago
0.11.10
3 years ago
0.11.9
3 years ago
0.11.8
3 years ago
0.11.7
3 years ago
0.11.6
3 years ago
0.11.5
3 years ago
0.11.4
3 years ago
0.11.3
3 years ago
0.11.2
3 years ago
0.11.1
3 years ago
0.11.0
4 years ago
0.10.0
4 years ago