prime-sdk 3.0.9-beta.0 → 3.1.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.
Files changed (31) hide show
  1. package/README.md +10 -0
  2. package/dist/external/aws/kms/kms.service.d.ts +2 -2
  3. package/dist/external/aws/s3/s3.service.d.ts +2 -0
  4. package/dist/external/aws/s3/s3.service.js +50 -0
  5. package/dist/external/aws/s3/s3.service.js.map +1 -1
  6. package/dist/external/aws/ses/ses.service.d.ts +2 -2
  7. package/dist/external/aws/sns/sns.service.d.ts +2 -2
  8. package/dist/external/aws/sqs/sqs.service.d.ts +1 -1
  9. package/dist/external/redis/interfaces/redis.interface.d.ts +0 -1
  10. package/dist/external/redis/redis.service.d.ts +0 -1
  11. package/dist/lib/cache/cache.d.ts +2 -3
  12. package/dist/lib/cache/interfaces/cache.interface.d.ts +1 -2
  13. package/dist/lib/crypto/crypto.module.d.ts +1 -1
  14. package/dist/lib/crypto/types/crypto.type.d.ts +0 -1
  15. package/dist/lib/documents/types/bedrock.type.d.ts +0 -1
  16. package/dist/lib/email/email.module.d.ts +1 -1
  17. package/dist/lib/entraID/utils/crypto.utils.d.ts +0 -1
  18. package/dist/lib/storage/interfaces/storage.interface.d.ts +1 -0
  19. package/dist/lib/storage/interfaces/storage.interface.js.map +1 -1
  20. package/dist/lib/storage/storage.d.ts +1 -1
  21. package/dist/lib/storage/storage.js +3 -0
  22. package/dist/lib/storage/storage.js.map +1 -1
  23. package/dist/lib/storage/types/storage.type.d.ts +1 -2
  24. package/dist/tsconfig.build.tsbuildinfo +1 -1
  25. package/package.json +1 -1
  26. package/src/external/aws/s3/s3.service.ts +70 -0
  27. package/src/lib/storage/interfaces/storage.interface.ts +1 -0
  28. package/src/lib/storage/storage.ts +4 -0
  29. package/src/lib/storage/types/storage.type.ts +1 -0
  30. package/.yarn/install-state.gz +0 -0
  31. package/.yarnrc.yml +0 -1
package/README.md CHANGED
@@ -145,6 +145,16 @@ export class AppService implements IConsumer {
145
145
  file: file,
146
146
  nameFile: 'teste.txt',
147
147
  path: 'prime-sdk',
148
+ contentType: 'text/plain',
149
+ });
150
+
151
+ // upload via presigned PUT url (server-side)
152
+ this.storage.uploadFileViaPresignedUrl({
153
+ bucket: 'sample-bucket',
154
+ file: file,
155
+ nameFile: 'teste-presigned.txt',
156
+ path: 'prime-sdk',
157
+ contentType: 'text/plain',
148
158
  });
149
159
  }
150
160
  }
@@ -1,6 +1,6 @@
1
1
  import { DecryptCommandOutput, EncryptCommandOutput, KMSClient } from '@aws-sdk/client-kms';
2
- import { ICrypto } from 'src/lib/crypto/interfaces/crypto.interface';
3
- import { DecryptData, EncryptData } from 'src/lib/crypto/types/crypto.type';
2
+ import { ICrypto } from "../../../lib/crypto/interfaces/crypto.interface";
3
+ import { DecryptData, EncryptData } from "../../../lib/crypto/types/crypto.type";
4
4
  export declare class KMS implements ICrypto {
5
5
  private readonly client;
6
6
  constructor(client: KMSClient);
@@ -5,6 +5,8 @@ export declare class S3 implements IStorage {
5
5
  private readonly client;
6
6
  constructor(client: S3Client);
7
7
  uploadFile(file: UploadFile): Promise<PutObjectCommandOutput>;
8
+ uploadFileViaPresignedUrl(file: UploadFile): Promise<void>;
9
+ private resolveFileBody;
8
10
  generateSignUrlFile(file: GetFile): Promise<string>;
9
11
  getFile(file: GetFile): Promise<GetObjectCommandOutput>;
10
12
  listFiles(data: ListFiles): Promise<ListObjectsV2CommandOutput>;
@@ -16,6 +16,7 @@ exports.S3 = void 0;
16
16
  const client_s3_1 = require("@aws-sdk/client-s3");
17
17
  const common_1 = require("@nestjs/common");
18
18
  const s3_request_presigner_1 = require("@aws-sdk/s3-request-presigner");
19
+ const PRESIGNED_PUT_EXPIRES_IN_SECONDS = 3600;
19
20
  let S3 = class S3 {
20
21
  constructor(client) {
21
22
  this.client = client;
@@ -25,6 +26,7 @@ let S3 = class S3 {
25
26
  Bucket: file.bucket,
26
27
  Key: `${file.path}/${file.nameFile}`,
27
28
  Body: file.file,
29
+ ...(file.contentType && { ContentType: file.contentType }),
28
30
  ...(file.metadata && { Metadata: file.metadata }),
29
31
  ...(file.tagging && {
30
32
  Tagging: file.tagging,
@@ -33,6 +35,54 @@ let S3 = class S3 {
33
35
  const response = await this.client.send(command);
34
36
  return response;
35
37
  }
38
+ async uploadFileViaPresignedUrl(file) {
39
+ const key = `${file.path}/${file.nameFile}`;
40
+ const contentType = file.contentType || 'application/octet-stream';
41
+ const body = await this.resolveFileBody(file.file);
42
+ const command = new client_s3_1.PutObjectCommand({
43
+ Bucket: file.bucket,
44
+ Key: key,
45
+ ContentType: contentType,
46
+ ...(file.metadata && { Metadata: file.metadata }),
47
+ ...(file.tagging && { Tagging: file.tagging }),
48
+ });
49
+ const presignedUrl = await (0, s3_request_presigner_1.getSignedUrl)(this.client, command, {
50
+ expiresIn: PRESIGNED_PUT_EXPIRES_IN_SECONDS,
51
+ });
52
+ const headers = {
53
+ 'Content-Type': contentType,
54
+ };
55
+ if (file.metadata) {
56
+ for (const [k, v] of Object.entries(file.metadata)) {
57
+ headers[`x-amz-meta-${k}`] = v;
58
+ }
59
+ }
60
+ if (file.tagging) {
61
+ headers['x-amz-tagging'] = file.tagging;
62
+ }
63
+ const response = await fetch(presignedUrl, {
64
+ method: 'PUT',
65
+ headers,
66
+ body: new Uint8Array(body),
67
+ });
68
+ if (!response.ok) {
69
+ throw new Error(`s3_presigned_upload_failed: ${response.status} ${response.statusText}`);
70
+ }
71
+ }
72
+ async resolveFileBody(file) {
73
+ if (Buffer.isBuffer(file)) {
74
+ return file;
75
+ }
76
+ if (typeof file === 'string') {
77
+ return Buffer.from(file);
78
+ }
79
+ const chunks = [];
80
+ return new Promise((resolve, reject) => {
81
+ file.on('data', (chunk) => chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk)));
82
+ file.on('end', () => resolve(Buffer.concat(chunks)));
83
+ file.on('error', reject);
84
+ });
85
+ }
36
86
  async generateSignUrlFile(file) {
37
87
  const params = {
38
88
  Bucket: file.bucket,
@@ -1 +1 @@
1
- {"version":3,"file":"s3.service.js","sourceRoot":"","sources":["../../../../src/external/aws/s3/s3.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"s3.service.js","sourceRoot":"","sources":["../../../../src/external/aws/s3/s3.service.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { SendEmailCommandOutput, SendRawEmailCommandOutput, SESClient } from '@aws-sdk/client-ses';
2
- import { IEmail } from 'src/lib/email/interfaces/email.interface';
3
- import { SendMail, SendRawMail } from 'src/lib/email/types/email.type';
2
+ import { IEmail } from "../../../lib/email/interfaces/email.interface";
3
+ import { SendMail, SendRawMail } from "../../../lib/email/types/email.type";
4
4
  export declare class SES implements IEmail {
5
5
  private readonly client;
6
6
  constructor(client: SESClient);
@@ -1,6 +1,6 @@
1
1
  import { PublishCommandOutput, SNSClient } from '@aws-sdk/client-sns';
2
- import { IEvent } from 'src/lib/events/interfaces/event.interface';
3
- import { EventData, EventSmsData } from 'src/lib/events/types/event.type';
2
+ import { IEvent } from "../../../lib/events/interfaces/event.interface";
3
+ import { EventData, EventSmsData } from "../../../lib/events/types/event.type";
4
4
  import { SNSSetup } from './sns.provider';
5
5
  export declare class Sns implements IEvent {
6
6
  private readonly client;
@@ -1,5 +1,5 @@
1
1
  import { DeleteMessageCommand, ReceiveMessageCommand, ReceiveMessageResult, SQSClient } from '@aws-sdk/client-sqs';
2
- import { IQueue } from 'src/lib/queue/interfaces/queue.interface';
2
+ import { IQueue } from "../../../lib/queue/interfaces/queue.interface";
3
3
  export declare class Sqs implements IQueue {
4
4
  private readonly client;
5
5
  private queueUrl;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { PubSubRedis } from '../types/ioredis.types';
3
2
  export interface IRedisService {
4
3
  setRedisKey(key: string, value: Date | number | Buffer | string, ttl?: number): Promise<void>;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Cluster, Redis } from 'ioredis';
3
2
  import { IRedisService } from './interfaces/redis.interface';
4
3
  import { PubSubRedis } from './types/ioredis.types';
@@ -1,7 +1,6 @@
1
- /// <reference types="node" />
2
1
  import { ICache } from './interfaces/cache.interface';
3
- import { IRedisService } from 'src/external/redis/interfaces/redis.interface';
4
- import { PubSubRedis } from 'src/external/redis/types/ioredis.types';
2
+ import { IRedisService } from "../../external/redis/interfaces/redis.interface";
3
+ import { PubSubRedis } from "../../external/redis/types/ioredis.types";
5
4
  export declare class Cache implements ICache {
6
5
  private readonly client;
7
6
  constructor(client: IRedisService);
@@ -1,5 +1,4 @@
1
- /// <reference types="node" />
2
- import { PubSubRedis } from 'src/external/redis/types/ioredis.types';
1
+ import { PubSubRedis } from "../../../external/redis/types/ioredis.types";
3
2
  export interface ICache {
4
3
  set(key: string, value: Date | number | Buffer | string, ttl?: number): Promise<void>;
5
4
  get(key: string): Promise<string>;
@@ -1,5 +1,5 @@
1
1
  import { DynamicModule } from '@nestjs/common';
2
- import { KMSSetup } from 'src/external/aws/kms/kms.provider';
2
+ import { KMSSetup } from "../../external/aws/kms/kms.provider";
3
3
  export declare class CryptoModule {
4
4
  static forRoot(params: KMSSetup): DynamicModule;
5
5
  }
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  export type EncryptData = {
3
2
  keyId: string;
4
3
  value: Uint8Array;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  export type InvokeModelPayload = {
3
2
  modelId: string;
4
3
  body: Uint8Array | Buffer | string;
@@ -1,5 +1,5 @@
1
1
  import { DynamicModule } from '@nestjs/common';
2
- import { SESSetup } from 'src/external/aws/ses/ses.provider';
2
+ import { SESSetup } from "../../external/aws/ses/ses.provider";
3
3
  export declare class EmailModule {
4
4
  static forRoot(params: SESSetup): DynamicModule;
5
5
  }
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import crypto from 'crypto';
3
2
  import jwksClient from 'jwks-rsa';
4
3
  export declare class CryptoUtils {
@@ -2,6 +2,7 @@ import { CopyObjectCommandOutput, DeleteObjectCommandOutput, DeleteObjectsOutput
2
2
  import { CopyFile, DeleteFile, DeleteFiles, GetFile, ListFiles, UploadFile } from '../types/storage.type';
3
3
  export interface IStorage {
4
4
  uploadFile(file: UploadFile): Promise<PutObjectCommandOutput>;
5
+ uploadFileViaPresignedUrl(file: UploadFile): Promise<void>;
5
6
  generateSignUrlFile(file: GetFile): Promise<string>;
6
7
  getFile(file: GetFile): Promise<GetObjectCommandOutput>;
7
8
  listFiles(data: ListFiles): Promise<ListObjectsV2CommandOutput>;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.interface.js","sourceRoot":"","sources":["../../../../src/lib/storage/interfaces/storage.interface.ts"],"names":[],"mappings":";;;AA2Ba,QAAA,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"storage.interface.js","sourceRoot":"","sources":["../../../../src/lib/storage/interfaces/storage.interface.ts"],"names":[],"mappings":";;;AA4Ba,QAAA,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC"}
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { IStorage } from './interfaces/storage.interface';
3
2
  import { CopyObjectCommandOutput, DeleteObjectCommandOutput, DeleteObjectsOutput, GetObjectCommandOutput, ListObjectsV2CommandOutput, PutObjectCommandOutput } from '@aws-sdk/client-s3';
4
3
  import { CopyFile, DeleteFile, DeleteFiles, GetFile, ListFiles, UploadFile } from './types/storage.type';
@@ -6,6 +5,7 @@ export declare class Storage {
6
5
  private readonly storage;
7
6
  constructor(storage: IStorage);
8
7
  uploadFile(file: UploadFile): Promise<PutObjectCommandOutput>;
8
+ uploadFileViaPresignedUrl(file: UploadFile): Promise<void>;
9
9
  generateSignUrlFile(file: GetFile): Promise<string>;
10
10
  getFile(file: GetFile): Promise<GetObjectCommandOutput>;
11
11
  listFiles(data: ListFiles): Promise<ListObjectsV2CommandOutput>;
@@ -22,6 +22,9 @@ let Storage = class Storage {
22
22
  async uploadFile(file) {
23
23
  return this.storage.uploadFile(file);
24
24
  }
25
+ async uploadFileViaPresignedUrl(file) {
26
+ return this.storage.uploadFileViaPresignedUrl(file);
27
+ }
25
28
  async generateSignUrlFile(file) {
26
29
  return this.storage.generateSignUrlFile(file);
27
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/lib/storage/storage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,sEAA0D;AAoBnD,IAAM,OAAO,GAAb,MAAM,OAAO;IAClB,YAA+C,OAAiB;QAAjB,YAAO,GAAP,OAAO,CAAU;IAAG,CAAC;IAEpE,KAAK,CAAC,UAAU,CAAC,IAAgB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,IAAa;QACrC,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAa;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAe;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAgB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAiB;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAc;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAa;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAgB,CAAC,CAAC;IACxD,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAgB;QAC3C,MAAM,MAAM,GAAG,EAAE,CAAC;QAElB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAlDY,0BAAO;kBAAP,OAAO;IADnB,IAAA,mBAAU,GAAE;IAEE,WAAA,IAAA,eAAM,EAAC,4BAAQ,CAAC,CAAA;;GADlB,OAAO,CAkDnB"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/lib/storage/storage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,sEAA0D;AAoBnD,IAAM,OAAO,GAAb,MAAM,OAAO;IAClB,YAA+C,OAAiB;QAAjB,YAAO,GAAP,OAAO,CAAU;IAAG,CAAC;IAEpE,KAAK,CAAC,UAAU,CAAC,IAAgB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,IAAgB;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,IAAa;QACrC,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAa;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAe;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAgB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAiB;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAc;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAa;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAgB,CAAC,CAAC;IACxD,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAgB;QAC3C,MAAM,MAAM,GAAG,EAAE,CAAC;QAElB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAtDY,0BAAO;kBAAP,OAAO;IADnB,IAAA,mBAAU,GAAE;IAEE,WAAA,IAAA,eAAM,EAAC,4BAAQ,CAAC,CAAA;;GADlB,OAAO,CAsDnB"}
@@ -1,11 +1,10 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
1
  import { Readable } from 'stream';
4
2
  export type UploadFile = {
5
3
  path: string;
6
4
  nameFile: string;
7
5
  file: string | Readable | Buffer;
8
6
  bucket: string;
7
+ contentType?: string;
9
8
  metadata?: Record<string, string>;
10
9
  tagging?: string;
11
10
  };