@punks/backend-entity-manager 0.0.215 → 0.0.217

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.
@@ -13,6 +13,7 @@ export type IMediaProvider = {
13
13
  mediaDelete(input: MediaReference): Promise<void>;
14
14
  mediaDownload(input: MediaReference): Promise<Buffer>;
15
15
  getFileName(input: MediaReference): string;
16
+ getProviderId(): string;
16
17
  };
17
18
  export type MediaReferenceRecord = {
18
19
  id: string;
@@ -21,9 +22,16 @@ export type MediaReferenceRecord = {
21
22
  createdOn: Date;
22
23
  updatedOn: Date;
23
24
  };
25
+ export type MediaReferenceCreateInput = {
26
+ media: MediaReference;
27
+ fileName: string;
28
+ contentType?: string;
29
+ folderId?: string;
30
+ providerId: string;
31
+ };
24
32
  export type IMediaReferenceRepository = {
25
33
  getReference(file: MediaReference): Promise<MediaReferenceRecord>;
26
- createReference(file: MediaReference, folderId: string | undefined): Promise<MediaReferenceRecord>;
34
+ createReference(input: MediaReferenceCreateInput): Promise<MediaReferenceRecord>;
27
35
  updateReferenceFolder(file: MediaReference, folderId: string | undefined): Promise<void>;
28
36
  deleteReference(file: MediaReference): Promise<void>;
29
37
  getFolderReferences(folderId?: string): Promise<MediaReferenceRecord[]>;
@@ -3,6 +3,7 @@ import { IMediaProvider, MediaReference, MediaUploadInput } from "../../../../..
3
3
  export declare class AwsS3MediaProvider implements IMediaProvider {
4
4
  private readonly client;
5
5
  constructor();
6
+ getProviderId(): string;
6
7
  getFileName(input: MediaReference): string;
7
8
  mediaUpload(input: MediaUploadInput): Promise<MediaReference>;
8
9
  mediaDelete(input: MediaReference): Promise<void>;
package/dist/esm/index.js CHANGED
@@ -21272,7 +21272,13 @@ let MediaLibraryService = class MediaLibraryService {
21272
21272
  }
21273
21273
  async mediaUpload(input) {
21274
21274
  const reference = await this.defaultMediaProvider.mediaUpload(input);
21275
- await this.mediaReferenceRepository.createReference(reference, input.folderId);
21275
+ await this.mediaReferenceRepository.createReference({
21276
+ media: reference,
21277
+ fileName: input.fileName,
21278
+ contentType: input.contentType,
21279
+ folderId: input.folderId,
21280
+ providerId: this.defaultMediaProvider.getProviderId(),
21281
+ });
21276
21282
  return reference;
21277
21283
  }
21278
21284
  async mediaDelete(input) {
@@ -28952,6 +28958,9 @@ let AwsS3MediaProvider = class AwsS3MediaProvider {
28952
28958
  constructor() {
28953
28959
  this.client = createClient$1(awsMediaSettings.value);
28954
28960
  }
28961
+ getProviderId() {
28962
+ return "awsS3";
28963
+ }
28955
28964
  getFileName(input) {
28956
28965
  const parsedRef = parseRef(input.ref);
28957
28966
  return parsedRef.path.split("/").pop() ?? "";