@zola_do/seaweed 0.2.18 → 0.3.1

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.
@@ -5,6 +5,10 @@ export type SeaweedStoredFileRef = {
5
5
  contentType: string;
6
6
  originalname: string;
7
7
  };
8
+ export type SeaweedStoredFileMetadata = SeaweedStoredFileRef & {
9
+ size?: number;
10
+ metadata?: Record<string, string>;
11
+ };
8
12
  export declare class SeaweedZolaObjectStorage {
9
13
  private readonly storage;
10
14
  constructor(storage: StorageService);
@@ -18,4 +22,7 @@ export declare class SeaweedZolaObjectStorage {
18
22
  file: SeaweedStoredFileRef;
19
23
  }>;
20
24
  generatePresignedDownloadUrl(fileInfo: Pick<SeaweedStoredFileRef, 'bucketName' | 'filepath' | 'contentType' | 'originalname'>): Promise<string>;
25
+ deleteFile(fileInfo: Pick<SeaweedStoredFileRef, 'bucketName' | 'filepath'>): Promise<void>;
26
+ fileExists(fileInfo: Pick<SeaweedStoredFileRef, 'bucketName' | 'filepath'>): Promise<boolean>;
27
+ getFileMetadata(fileInfo: Pick<SeaweedStoredFileRef, 'bucketName' | 'filepath' | 'contentType' | 'originalname'>): Promise<SeaweedStoredFileMetadata>;
21
28
  }
@@ -38,6 +38,15 @@ let SeaweedZolaObjectStorage = class SeaweedZolaObjectStorage {
38
38
  async generatePresignedDownloadUrl(fileInfo) {
39
39
  return this.storage.generatePresignedDownloadUrl(fileInfo);
40
40
  }
41
+ deleteFile(fileInfo) {
42
+ return this.storage.deleteFile(fileInfo);
43
+ }
44
+ fileExists(fileInfo) {
45
+ return this.storage.fileExists(fileInfo);
46
+ }
47
+ getFileMetadata(fileInfo) {
48
+ return this.storage.getFileMetadata(fileInfo);
49
+ }
41
50
  };
42
51
  exports.SeaweedZolaObjectStorage = SeaweedZolaObjectStorage;
43
52
  exports.SeaweedZolaObjectStorage = SeaweedZolaObjectStorage = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"seaweed.zola-object-storage.js","sourceRoot":"","sources":["../../src/services/seaweed.zola-object-storage.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,uDAAmD;AAc5C,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,YAA6B,OAAuB;QAAvB,YAAO,GAAP,OAAO,CAAgB;IAAG,CAAC;IAExD,UAAU,CACR,IAAyB,EACzB,UAAkB,EAClB,SAAkC;QAElC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CACxB,IAAI,EACJ,UAAU,CACsB,CAAC;IACrC,CAAC;IAED,YAAY,CACV,MAAc,EACd,YAAoB,EACpB,QAAgB,EAChB,UAAkB;QAElB,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAC9B,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,UAAU,CACsB,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,QAAwD,EACxD,UAAkB;;QAElB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iCAAiC,CAAC;YAClE,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,WAAW,EAAE,MAAA,QAAQ,CAAC,WAAW,mCAAI,0BAA0B;YAC/D,UAAU;YACV,QAAQ,EAAE,EAAE;SACb,CAAC,CAAC;QACH,OAAO;YACL,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,IAAI,EAAE,MAAM,CAAC,IAA4B;SAC1C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,4BAA4B,CAChC,QAGC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IAC7D,CAAC;CACF,CAAA;AApDY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;qCAE2B,gCAAc;GADzC,wBAAwB,CAoDpC"}
1
+ {"version":3,"file":"seaweed.zola-object-storage.js","sourceRoot":"","sources":["../../src/services/seaweed.zola-object-storage.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,uDAAmD;AAmB5C,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,YAA6B,OAAuB;QAAvB,YAAO,GAAP,OAAO,CAAgB;IAAG,CAAC;IAExD,UAAU,CACR,IAAyB,EACzB,UAAkB,EAClB,SAAkC;QAElC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CACxB,IAAI,EACJ,UAAU,CACsB,CAAC;IACrC,CAAC;IAED,YAAY,CACV,MAAc,EACd,YAAoB,EACpB,QAAgB,EAChB,UAAkB;QAElB,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAC9B,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,UAAU,CACsB,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,QAAwD,EACxD,UAAkB;;QAElB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iCAAiC,CAAC;YAClE,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,WAAW,EAAE,MAAA,QAAQ,CAAC,WAAW,mCAAI,0BAA0B;YAC/D,UAAU;YACV,QAAQ,EAAE,EAAE;SACb,CAAC,CAAC;QACH,OAAO;YACL,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,IAAI,EAAE,MAAM,CAAC,IAA4B;SAC1C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,4BAA4B,CAChC,QAGC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IAC7D,CAAC;IACD,UAAU,CAAC,QAA+D;QACxE,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,UAAU,CAAC,QAA+D;QACxE,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,eAAe,CACb,QAGC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAuC,CAAC;IACtF,CAAC;CACF,CAAA;AApEY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;qCAE2B,gCAAc;GADzC,wBAAwB,CAoEpC"}
@@ -12,4 +12,9 @@ export declare class StorageService {
12
12
  file: FileInfo;
13
13
  }>;
14
14
  uploadBuffer(buffer: Buffer, originalname: string, mimetype: string, bucketName: string): Promise<FileInfo>;
15
+ deleteFile(fileInfo: Pick<FileInfo, 'bucketName' | 'filepath'>): Promise<void>;
16
+ fileExists(fileInfo: Pick<FileInfo, 'bucketName' | 'filepath'>): Promise<boolean>;
17
+ getFileMetadata(fileInfo: Pick<FileInfo, 'bucketName' | 'filepath' | 'contentType' | 'originalname'>): Promise<FileInfo & {
18
+ size?: number;
19
+ }>;
15
20
  }
@@ -64,6 +64,28 @@ let StorageService = class StorageService {
64
64
  originalname,
65
65
  };
66
66
  }
67
+ async deleteFile(fileInfo) {
68
+ await this.s3.deleteObject(fileInfo.bucketName, fileInfo.filepath);
69
+ }
70
+ async fileExists(fileInfo) {
71
+ try {
72
+ await this.s3.getObject(fileInfo.bucketName, fileInfo.filepath);
73
+ return true;
74
+ }
75
+ catch (_a) {
76
+ return false;
77
+ }
78
+ }
79
+ async getFileMetadata(fileInfo) {
80
+ const buffer = await this.s3.getObject(fileInfo.bucketName, fileInfo.filepath);
81
+ return {
82
+ filepath: fileInfo.filepath,
83
+ bucketName: fileInfo.bucketName,
84
+ contentType: fileInfo.contentType,
85
+ originalname: fileInfo.originalname,
86
+ size: Buffer.isBuffer(buffer) ? buffer.byteLength : undefined,
87
+ };
88
+ }
67
89
  };
68
90
  exports.StorageService = StorageService;
69
91
  exports.StorageService = StorageService = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../src/services/storage.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../src/services/storage.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zola_do/seaweed",
3
- "version": "0.2.18",
3
+ "version": "0.3.1",
4
4
  "description": "AWS S3-compatible storage for NestJS",
5
5
  "author": "zolaDO",
6
6
  "license": "ISC",