@mondart/nestjs-common-module-minio 1.0.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.
@@ -0,0 +1,3 @@
1
+ export * from './minio.service';
2
+ export * from './minio.module';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./minio.service"), exports);
18
+ __exportStar(require("./minio.module"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,iDAA+B"}
@@ -0,0 +1,17 @@
1
+ import { ModuleMetadata, Type } from '@nestjs/common';
2
+ import { ClientOptions } from 'minio';
3
+ export type MinioModuleOptions = ClientOptions & {
4
+ isEnabled?: boolean;
5
+ };
6
+ export interface MinioModuleFactory {
7
+ createModuleOptions: () => Promise<MinioModuleOptions> | MinioModuleOptions;
8
+ }
9
+ export interface MinioModuleAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
10
+ inject?: any[];
11
+ useClass?: Type<MinioModuleFactory>;
12
+ useExisting?: Type<MinioModuleFactory>;
13
+ useFactory?: (...args: any[]) => Promise<MinioModuleOptions> | MinioModuleOptions;
14
+ }
15
+ export declare class MINIO_MODULE_OPTIONS {
16
+ }
17
+ //# sourceMappingURL=minio.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minio.interface.d.ts","sourceRoot":"","sources":["../src/minio.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,mBAAmB,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,CAAC;CAC7E;AAED,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CACnD,cAAc,EACd,SAAS,CACV;IACC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,CACX,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,CAAC;CACvD;AACD,qBAAa,oBAAoB;CAAG"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MINIO_MODULE_OPTIONS = void 0;
4
+ class MINIO_MODULE_OPTIONS {
5
+ }
6
+ exports.MINIO_MODULE_OPTIONS = MINIO_MODULE_OPTIONS;
7
+ //# sourceMappingURL=minio.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minio.interface.js","sourceRoot":"","sources":["../src/minio.interface.ts"],"names":[],"mappings":";;;AAsBA,MAAa,oBAAoB;CAAG;AAApC,oDAAoC"}
@@ -0,0 +1,5 @@
1
+ import { MinioModuleOptions } from './minio.interface';
2
+ export declare const ConfigurableModuleClass: import("@nestjs/common").ConfigurableModuleCls<MinioModuleOptions, "register", "create", {
3
+ isGlobal: boolean;
4
+ }>, MODULE_OPTIONS_TOKEN: string | symbol;
5
+ //# sourceMappingURL=minio.module-definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minio.module-definition.d.ts","sourceRoot":"","sources":["../src/minio.module-definition.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,eAAO,MAAQ,uBAAuB;;IAAE,oBAAoB,iBAWhD,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.MODULE_OPTIONS_TOKEN = exports.ConfigurableModuleClass = void 0;
5
+ const common_1 = require("@nestjs/common");
6
+ _a = new common_1.ConfigurableModuleBuilder()
7
+ .setExtras({
8
+ isGlobal: true,
9
+ }, (definition, extras) => ({
10
+ ...definition,
11
+ global: extras.isGlobal,
12
+ }))
13
+ .build(), exports.ConfigurableModuleClass = _a.ConfigurableModuleClass, exports.MODULE_OPTIONS_TOKEN = _a.MODULE_OPTIONS_TOKEN;
14
+ //# sourceMappingURL=minio.module-definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minio.module-definition.js","sourceRoot":"","sources":["../src/minio.module-definition.ts"],"names":[],"mappings":";;;;AAAA,2CAA2D;AAG9C,KACX,IAAI,kCAAyB,EAAsB;KAChD,SAAS,CACR;IACE,QAAQ,EAAE,IAAI;CACf,EACD,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACvB,GAAG,UAAU;IACb,MAAM,EAAE,MAAM,CAAC,QAAQ;CACxB,CAAC,CACH;KACA,KAAK,EAAE,EAXG,+BAAuB,+BAAE,4BAAoB,2BAW/C"}
@@ -0,0 +1,14 @@
1
+ import { DynamicModule, OnModuleInit } from '@nestjs/common';
2
+ import { MinioModuleAsyncOptions, MinioModuleOptions } from './minio.interface';
3
+ import { MinioService } from './minio.service';
4
+ import { ConfigurableModuleClass } from './minio.module-definition';
5
+ export declare class MinioModule extends ConfigurableModuleClass implements OnModuleInit {
6
+ readonly service: MinioService;
7
+ constructor(service: MinioService);
8
+ onModuleInit(): void;
9
+ static forRoot(options: MinioModuleOptions): DynamicModule;
10
+ static forRootAsync(options: MinioModuleAsyncOptions): DynamicModule;
11
+ private static createAsyncProviders;
12
+ private static createAsyncOptionsProvider;
13
+ }
14
+ //# sourceMappingURL=minio.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minio.module.d.ts","sourceRoot":"","sources":["../src/minio.module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,YAAY,EAEb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,uBAAuB,EAEvB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,uBAAuB,EAExB,MAAM,2BAA2B,CAAC;AAEnC,qBAMa,WACX,SAAQ,uBACR,YAAW,YAAY;IAEX,QAAQ,CAAC,OAAO,EAAE,YAAY;gBAArB,OAAO,EAAE,YAAY;IAG1C,YAAY;IAIZ,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,aAAa;IAe1D,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;IASpE,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAenC,OAAO,CAAC,MAAM,CAAC,0BAA0B;CAiB1C"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var MinioModule_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.MinioModule = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const minio_service_1 = require("./minio.service");
16
+ const minio_module_definition_1 = require("./minio.module-definition");
17
+ let MinioModule = MinioModule_1 = class MinioModule extends minio_module_definition_1.ConfigurableModuleClass {
18
+ constructor(service) {
19
+ super();
20
+ this.service = service;
21
+ }
22
+ onModuleInit() {
23
+ this.service.connect();
24
+ }
25
+ static forRoot(options) {
26
+ return {
27
+ module: MinioModule_1,
28
+ imports: [
29
+ MinioModule_1.forRoot({
30
+ endPoint: options.endPoint,
31
+ port: options.port,
32
+ useSSL: options.useSSL,
33
+ accessKey: options.accessKey,
34
+ secretKey: options.secretKey,
35
+ }),
36
+ ],
37
+ };
38
+ }
39
+ static forRootAsync(options) {
40
+ return {
41
+ module: MinioModule_1,
42
+ imports: [...options.imports],
43
+ providers: [...this.createAsyncProviders(options)],
44
+ exports: [...this.createAsyncProviders(options)],
45
+ };
46
+ }
47
+ static createAsyncProviders(options) {
48
+ if (options.useExisting || options.useFactory) {
49
+ return [this.createAsyncOptionsProvider(options)];
50
+ }
51
+ return [
52
+ this.createAsyncOptionsProvider(options),
53
+ {
54
+ provide: options.useClass,
55
+ useClass: options.useClass,
56
+ },
57
+ ];
58
+ }
59
+ static createAsyncOptionsProvider(options) {
60
+ if (options.useFactory) {
61
+ return {
62
+ provide: minio_module_definition_1.MODULE_OPTIONS_TOKEN,
63
+ useFactory: options.useFactory,
64
+ inject: options.inject || [],
65
+ };
66
+ }
67
+ return {
68
+ provide: minio_module_definition_1.MODULE_OPTIONS_TOKEN,
69
+ useFactory: async (optionsFactory) => await optionsFactory.createModuleOptions(),
70
+ inject: [options.useExisting || options.useClass],
71
+ };
72
+ }
73
+ };
74
+ exports.MinioModule = MinioModule;
75
+ exports.MinioModule = MinioModule = MinioModule_1 = __decorate([
76
+ (0, common_1.Global)(),
77
+ (0, common_1.Module)({
78
+ imports: [],
79
+ providers: [minio_service_1.MinioService],
80
+ exports: [minio_service_1.MinioService],
81
+ }),
82
+ __metadata("design:paramtypes", [minio_service_1.MinioService])
83
+ ], MinioModule);
84
+ //# sourceMappingURL=minio.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minio.module.js","sourceRoot":"","sources":["../src/minio.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAMwB;AAMxB,mDAA+C;AAC/C,uEAGmC;AAQ5B,IAAM,WAAW,mBAAjB,MAAM,WACX,SAAQ,iDAAuB;IAG/B,YAAqB,OAAqB;QACxC,KAAK,EAAE,CAAC;QADW,YAAO,GAAP,OAAO,CAAc;IAE1C,CAAC;IACD,YAAY;QACV,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,OAA2B;QACxC,OAAO;YACL,MAAM,EAAE,aAAW;YACnB,OAAO,EAAE;gBACP,aAAW,CAAC,OAAO,CAAC;oBAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC7B,CAAC;aACH;SACF,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,OAAgC;QAClD,OAAO;YACL,MAAM,EAAE,aAAW;YACnB,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;YAC7B,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAClD,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;SACjD,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,oBAAoB,CACjC,OAAgC;QAEhC,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,OAAO;YACL,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC;YACxC;gBACE,OAAO,EAAE,OAAO,CAAC,QAAQ;gBACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B;SACF,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,0BAA0B,CACvC,OAAgC;QAEhC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,OAAO;gBACL,OAAO,EAAE,8CAAoB;gBAC7B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;aAC7B,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,EAAE,8CAAoB;YAC7B,UAAU,EAAE,KAAK,EAAE,cAAkC,EAAE,EAAE,CACvD,MAAM,cAAc,CAAC,mBAAmB,EAAE;YAC5C,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC;SAClD,CAAC;IACJ,CAAC;CACF,CAAA;AAnEY,kCAAW;sBAAX,WAAW;IANvB,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,CAAC,4BAAY,CAAC;QACzB,OAAO,EAAE,CAAC,4BAAY,CAAC;KACxB,CAAC;qCAK8B,4BAAY;GAJ/B,WAAW,CAmEvB"}
@@ -0,0 +1,11 @@
1
+ import { MinioModuleOptions } from './minio.interface';
2
+ import { Client } from 'minio';
3
+ export declare class MinioService {
4
+ private minioModuleOptions;
5
+ private _minioClient;
6
+ private readonly logger;
7
+ constructor(minioModuleOptions: MinioModuleOptions);
8
+ get client(): Client;
9
+ connect(): void;
10
+ }
11
+ //# sourceMappingURL=minio.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minio.service.d.ts","sourceRoot":"","sources":["../src/minio.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAI/B,qBACa,YAAY;IAMrB,OAAO,CAAC,kBAAkB;IAL5B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAI9C,kBAAkB,EAAE,kBAAkB;IAGhD,IAAI,MAAM,IAAI,MAAM,CAMnB;IAED,OAAO;CAMR"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var MinioService_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.MinioService = void 0;
17
+ const minio_1 = require("minio");
18
+ const common_1 = require("@nestjs/common");
19
+ const minio_module_definition_1 = require("./minio.module-definition");
20
+ let MinioService = MinioService_1 = class MinioService {
21
+ constructor(minioModuleOptions) {
22
+ this.minioModuleOptions = minioModuleOptions;
23
+ this.logger = new common_1.Logger(MinioService_1.name);
24
+ }
25
+ get client() {
26
+ if (!this._minioClient) {
27
+ if (this.minioModuleOptions.isEnabled)
28
+ this.connect();
29
+ else
30
+ this.logger.warn('Minio Conection is not enabled.');
31
+ }
32
+ return this._minioClient;
33
+ }
34
+ connect() {
35
+ if (!this._minioClient) {
36
+ this.logger.warn('Minio client not initialized. Initializing now...');
37
+ }
38
+ this._minioClient = new minio_1.Client(this.minioModuleOptions);
39
+ }
40
+ };
41
+ exports.MinioService = MinioService;
42
+ exports.MinioService = MinioService = MinioService_1 = __decorate([
43
+ (0, common_1.Injectable)(),
44
+ __param(0, (0, common_1.Inject)(minio_module_definition_1.MODULE_OPTIONS_TOKEN)),
45
+ __metadata("design:paramtypes", [Object])
46
+ ], MinioService);
47
+ //# sourceMappingURL=minio.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minio.service.js","sourceRoot":"","sources":["../src/minio.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,iCAA+B;AAC/B,2CAA4D;AAC5D,uEAAiE;AAG1D,IAAM,YAAY,oBAAlB,MAAM,YAAY;IAIvB,YAEE,kBAA8C;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;QAJ/B,WAAM,GAAG,IAAI,eAAM,CAAC,cAAY,CAAC,IAAI,CAAC,CAAC;IAKrD,CAAC;IAEJ,IAAI,MAAM;QACR,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,kBAAkB,CAAC,SAAS;gBAAE,IAAI,CAAC,OAAO,EAAE,CAAC;;gBACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,cAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC1D,CAAC;CACF,CAAA;AAvBY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;IAMR,WAAA,IAAA,eAAM,EAAC,8CAAoB,CAAC,CAAA;;GALpB,YAAY,CAuBxB"}
package/package.json ADDED
@@ -0,0 +1,32 @@
1
+ {
2
+ "name": "@mondart/nestjs-common-module-minio",
3
+ "version": "1.0.0",
4
+ "description": "Minio module for NestJS applications, providing an easy-to-use interface for interacting with Minio object storage.",
5
+ "author": {
6
+ "name": "Mondart"
7
+ },
8
+ "license": "MIT",
9
+ "type": "commonjs",
10
+ "main": "dist/index.js",
11
+ "types": "dist/index.d.ts",
12
+ "files": [
13
+ "dist",
14
+ "README.md"
15
+ ],
16
+ "scripts": {
17
+ "build": "tsc -p tsconfig.json"
18
+ },
19
+ "dependencies": {
20
+ "@mondart/nestjs-common-module-core": "^3.1.0",
21
+ "minio": "^8.0.7"
22
+ },
23
+ "peerDependencies": {
24
+ "@nestjs/common": "^11.1.10",
25
+ "@nestjs/core": "^11.1.10",
26
+ "reflect-metadata": "^0.2.0",
27
+ "rxjs": "^7.8.2"
28
+ },
29
+ "publishConfig": {
30
+ "access": "public"
31
+ }
32
+ }