prime-sdk 2.0.5 → 2.1.2

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 (50) hide show
  1. package/dist/app.module.js +11 -0
  2. package/dist/app.module.js.map +1 -1
  3. package/dist/external/aws/bedrock/bedrock.provider.d.ts +12 -0
  4. package/dist/external/aws/bedrock/bedrock.provider.js +31 -0
  5. package/dist/external/aws/bedrock/bedrock.provider.js.map +1 -0
  6. package/dist/external/aws/bedrock/bedrock.service.d.ts +8 -0
  7. package/dist/external/aws/bedrock/bedrock.service.js +38 -0
  8. package/dist/external/aws/bedrock/bedrock.service.js.map +1 -0
  9. package/dist/external/aws/textract/textract.provider.d.ts +12 -0
  10. package/dist/external/aws/textract/textract.provider.js +31 -0
  11. package/dist/external/aws/textract/textract.provider.js.map +1 -0
  12. package/dist/external/aws/textract/textract.service.d.ts +14 -0
  13. package/dist/external/aws/textract/textract.service.js +135 -0
  14. package/dist/external/aws/textract/textract.service.js.map +1 -0
  15. package/dist/index.d.ts +4 -1
  16. package/dist/index.js +8 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/lib/documents/documents.d.ts +18 -0
  19. package/dist/lib/documents/documents.js +57 -0
  20. package/dist/lib/documents/documents.js.map +1 -0
  21. package/dist/lib/documents/documents.module.d.ts +10 -0
  22. package/dist/lib/documents/documents.module.js +30 -0
  23. package/dist/lib/documents/documents.module.js.map +1 -0
  24. package/dist/lib/documents/interfaces/documents.interface.d.ts +18 -0
  25. package/dist/lib/documents/interfaces/documents.interface.js +6 -0
  26. package/dist/lib/documents/interfaces/documents.interface.js.map +1 -0
  27. package/dist/lib/documents/types/bedrock.type.d.ts +7 -0
  28. package/dist/lib/documents/types/bedrock.type.js +3 -0
  29. package/dist/lib/documents/types/bedrock.type.js.map +1 -0
  30. package/dist/lib/documents/types/textract.type.d.ts +72 -0
  31. package/dist/lib/documents/types/textract.type.js +3 -0
  32. package/dist/lib/documents/types/textract.type.js.map +1 -0
  33. package/dist/tsconfig.build.tsbuildinfo +1 -1
  34. package/package.json +3 -1
  35. package/src/app.module.ts +11 -0
  36. package/src/external/aws/bedrock/bedrock.provider.ts +39 -0
  37. package/src/external/aws/bedrock/bedrock.service.ts +29 -0
  38. package/src/external/aws/textract/textract.provider.ts +39 -0
  39. package/src/external/aws/textract/textract.service.ts +167 -0
  40. package/src/external/redis/interfaces/redis.interface.ts +4 -0
  41. package/src/external/redis/redis.service.ts +8 -0
  42. package/src/external/redis/types/ioredis.types.ts +11 -1
  43. package/src/index.ts +12 -0
  44. package/src/lib/cache/cache.ts +5 -0
  45. package/src/lib/cache/interfaces/cache.interface.ts +4 -0
  46. package/src/lib/documents/documents.module.ts +26 -0
  47. package/src/lib/documents/documents.ts +83 -0
  48. package/src/lib/documents/interfaces/documents.interface.ts +51 -0
  49. package/src/lib/documents/types/bedrock.type.ts +6 -0
  50. package/src/lib/documents/types/textract.type.ts +78 -0
@@ -18,6 +18,7 @@ const cache_module_1 = require("./lib/cache/cache.module");
18
18
  const ioredis_types_1 = require("./external/redis/types/ioredis.types");
19
19
  const cache_interface_1 = require("./lib/cache/interfaces/cache.interface");
20
20
  const cache_1 = require("./lib/cache/cache");
21
+ const documents_module_1 = require("./lib/documents/documents.module");
21
22
  let AppModule = class AppModule {
22
23
  };
23
24
  exports.AppModule = AppModule;
@@ -64,6 +65,16 @@ exports.AppModule = AppModule = __decorate([
64
65
  endpoint: 'http://localhost:4566/',
65
66
  region: 'us-east-1',
66
67
  }),
68
+ documents_module_1.DocumentsModule.forRoot({
69
+ bedrock: {
70
+ region: 'us-east-1',
71
+ endpoint: 'http://localhost:4566/',
72
+ credentials: {
73
+ accessKeyId: '',
74
+ secretAccessKey: '',
75
+ },
76
+ },
77
+ }),
67
78
  cache_module_1.CacheModule.forRoot({
68
79
  type: ioredis_types_1.TypeRedis.SIMPLE,
69
80
  connection: {
@@ -1 +1 @@
1
- {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,+CAA2C;AAC3C,2DAAuD;AACvD,iEAA6D;AAC7D,4DAAwD;AACxD,8DAA0D;AAC1D,2DAAuD;AACvD,2DAAuD;AACvD,wEAAiE;AACjE,4EAAgE;AAChE,6CAA0C;AA2DnC,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IAxDrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,0BAAW,CAAC,OAAO,CAAC;gBAClB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,8BAAa,CAAC,OAAO,CAAC;gBACpB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,qCAAqC;gBAC/C,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,0BAAW,CAAC,OAAO,CAAC;gBAClB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,4BAAY,CAAC,OAAO,CAAC;gBACnB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,0BAAW,CAAC,OAAO,CAAC;gBAClB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,0BAAW,CAAC,OAAO,CAAC;gBAClB,IAAI,EAAE,yBAAS,CAAC,MAAM;gBACtB,UAAU,EAAE;oBACV,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,IAAI;iBACX;gBACD,YAAY,EAAE;oBACZ,EAAE,EAAE,CAAC;iBACN;aACF,CAAC;SACH;QACD,SAAS,EAAE,CAAC,wBAAU,EAAE,EAAE,OAAO,EAAE,wBAAM,EAAE,QAAQ,EAAE,aAAK,EAAE,CAAC;QAC7D,OAAO,EAAE,EAAE;KACZ,CAAC;GACW,SAAS,CAAG"}
1
+ {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,+CAA2C;AAC3C,2DAAuD;AACvD,iEAA6D;AAC7D,4DAAwD;AACxD,8DAA0D;AAC1D,2DAAuD;AACvD,2DAAuD;AACvD,wEAAiE;AACjE,4EAAgE;AAChE,6CAA0C;AAC1C,uEAAmE;AAqE5D,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IAlErB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,0BAAW,CAAC,OAAO,CAAC;gBAClB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,8BAAa,CAAC,OAAO,CAAC;gBACpB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,qCAAqC;gBAC/C,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,0BAAW,CAAC,OAAO,CAAC;gBAClB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,4BAAY,CAAC,OAAO,CAAC;gBACnB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,0BAAW,CAAC,OAAO,CAAC;gBAClB,WAAW,EAAE;oBACX,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;iBACpB;gBACD,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,WAAW;aACpB,CAAC;YACF,kCAAe,CAAC,OAAO,CAAC;gBACtB,OAAO,EAAE;oBACP,MAAM,EAAE,WAAW;oBACnB,QAAQ,EAAE,wBAAwB;oBAClC,WAAW,EAAE;wBACX,WAAW,EAAE,EAAE;wBACf,eAAe,EAAE,EAAE;qBACpB;iBACF;aACF,CAAC;YACF,0BAAW,CAAC,OAAO,CAAC;gBAClB,IAAI,EAAE,yBAAS,CAAC,MAAM;gBACtB,UAAU,EAAE;oBACV,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,IAAI;iBACX;gBACD,YAAY,EAAE;oBACZ,EAAE,EAAE,CAAC;iBACN;aACF,CAAC;SACH;QACD,SAAS,EAAE,CAAC,wBAAU,EAAE,EAAE,OAAO,EAAE,wBAAM,EAAE,QAAQ,EAAE,aAAK,EAAE,CAAC;QAC7D,OAAO,EAAE,EAAE;KACZ,CAAC;GACW,SAAS,CAAG"}
@@ -0,0 +1,12 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ export type BedrockSetup = {
3
+ region: string;
4
+ endpoint?: string;
5
+ credentials: {
6
+ accessKeyId: string;
7
+ secretAccessKey: string;
8
+ };
9
+ };
10
+ export declare class BedrockModule {
11
+ static forRoot(params: BedrockSetup): DynamicModule;
12
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BedrockModule = void 0;
4
+ const client_bedrock_runtime_1 = require("@aws-sdk/client-bedrock-runtime");
5
+ const BedrockProvider = (params) => {
6
+ return {
7
+ provide: 'CONNECTION_BEDROCK_RUNTIME',
8
+ useFactory: () => {
9
+ return new client_bedrock_runtime_1.BedrockRuntimeClient({
10
+ credentials: {
11
+ accessKeyId: params.credentials.accessKeyId,
12
+ secretAccessKey: params.credentials.secretAccessKey,
13
+ },
14
+ ...(params.endpoint && { endpoint: params.endpoint }),
15
+ region: params.region,
16
+ });
17
+ },
18
+ };
19
+ };
20
+ class BedrockModule {
21
+ static forRoot(params) {
22
+ const provider = BedrockProvider(params);
23
+ return {
24
+ module: BedrockModule,
25
+ providers: [provider],
26
+ exports: [provider],
27
+ };
28
+ }
29
+ }
30
+ exports.BedrockModule = BedrockModule;
31
+ //# sourceMappingURL=bedrock.provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bedrock.provider.js","sourceRoot":"","sources":["../../../../src/external/aws/bedrock/bedrock.provider.ts"],"names":[],"mappings":";;;AAAA,4EAAuE;AAYvE,MAAM,eAAe,GAAG,CAAC,MAAoB,EAAE,EAAE;IAC/C,OAAO;QACL,OAAO,EAAE,4BAA4B;QACrC,UAAU,EAAE,GAAG,EAAE;YACf,OAAO,IAAI,6CAAoB,CAAC;gBAC9B,WAAW,EAAE;oBACX,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW;oBAC3C,eAAe,EAAE,MAAM,CAAC,WAAW,CAAC,eAAe;iBACpD;gBACD,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACrD,MAAM,EAAE,MAAM,CAAC,MAAM;aACtB,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAa,aAAa;IACxB,MAAM,CAAC,OAAO,CAAC,MAAoB;QACjC,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAEzC,OAAO;YACL,MAAM,EAAE,aAAa;YACrB,SAAS,EAAE,CAAC,QAAQ,CAAC;YACrB,OAAO,EAAE,CAAC,QAAQ,CAAC;SACpB,CAAC;IACJ,CAAC;CACF;AAVD,sCAUC"}
@@ -0,0 +1,8 @@
1
+ import { BedrockRuntimeClient, InvokeModelCommandOutput } from '@aws-sdk/client-bedrock-runtime';
2
+ import { IBedrock } from '../../../lib/documents/interfaces/documents.interface';
3
+ import { InvokeModelPayload } from '../../../lib/documents/types/bedrock.type';
4
+ export declare class Bedrock implements IBedrock {
5
+ private readonly client;
6
+ constructor(client: BedrockRuntimeClient);
7
+ invokeModel(payload: InvokeModelPayload): Promise<InvokeModelCommandOutput>;
8
+ }
@@ -0,0 +1,38 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.Bedrock = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const client_bedrock_runtime_1 = require("@aws-sdk/client-bedrock-runtime");
18
+ let Bedrock = class Bedrock {
19
+ constructor(client) {
20
+ this.client = client;
21
+ }
22
+ async invokeModel(payload) {
23
+ const command = new client_bedrock_runtime_1.InvokeModelCommand({
24
+ body: payload.body,
25
+ modelId: payload.modelId,
26
+ contentType: payload.contentType || 'application/json',
27
+ accept: payload.accept || 'application/json',
28
+ });
29
+ return await this.client.send(command);
30
+ }
31
+ };
32
+ exports.Bedrock = Bedrock;
33
+ exports.Bedrock = Bedrock = __decorate([
34
+ (0, common_1.Injectable)(),
35
+ __param(0, (0, common_1.Inject)('CONNECTION_BEDROCK_RUNTIME')),
36
+ __metadata("design:paramtypes", [client_bedrock_runtime_1.BedrockRuntimeClient])
37
+ ], Bedrock);
38
+ //# sourceMappingURL=bedrock.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bedrock.service.js","sourceRoot":"","sources":["../../../../src/external/aws/bedrock/bedrock.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,4EAIyC;AAKlC,IAAM,OAAO,GAAb,MAAM,OAAO;IAClB,YAEmB,MAA4B;QAA5B,WAAM,GAAN,MAAM,CAAsB;IAC5C,CAAC;IAEJ,KAAK,CAAC,WAAW,CACf,OAA2B;QAE3B,MAAM,OAAO,GAAG,IAAI,2CAAkB,CAAC;YACrC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,kBAAkB;YACtD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,kBAAkB;SAC7C,CAAC,CAAC;QAEH,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;CACF,CAAA;AAlBY,0BAAO;kBAAP,OAAO;IADnB,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,eAAM,EAAC,4BAA4B,CAAC,CAAA;qCACZ,6CAAoB;GAHpC,OAAO,CAkBnB"}
@@ -0,0 +1,12 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ export type TextractSetup = {
3
+ region: string;
4
+ endpoint?: string;
5
+ credentials: {
6
+ accessKeyId: string;
7
+ secretAccessKey: string;
8
+ };
9
+ };
10
+ export declare class TextractModule {
11
+ static forRoot(params: TextractSetup): DynamicModule;
12
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TextractModule = void 0;
4
+ const client_textract_1 = require("@aws-sdk/client-textract");
5
+ const TextractProvider = (params) => {
6
+ return {
7
+ provide: 'CONNECTION_TEXTRACT',
8
+ useFactory: () => {
9
+ return new client_textract_1.TextractClient({
10
+ credentials: {
11
+ accessKeyId: params.credentials.accessKeyId,
12
+ secretAccessKey: params.credentials.secretAccessKey,
13
+ },
14
+ ...(params.endpoint && { endpoint: params.endpoint }),
15
+ region: params.region,
16
+ });
17
+ },
18
+ };
19
+ };
20
+ class TextractModule {
21
+ static forRoot(params) {
22
+ const provider = TextractProvider(params);
23
+ return {
24
+ module: TextractModule,
25
+ providers: [provider],
26
+ exports: [provider],
27
+ };
28
+ }
29
+ }
30
+ exports.TextractModule = TextractModule;
31
+ //# sourceMappingURL=textract.provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textract.provider.js","sourceRoot":"","sources":["../../../../src/external/aws/textract/textract.provider.ts"],"names":[],"mappings":";;;AAAA,8DAA0D;AAY1D,MAAM,gBAAgB,GAAG,CAAC,MAAqB,EAAE,EAAE;IACjD,OAAO;QACL,OAAO,EAAE,qBAAqB;QAC9B,UAAU,EAAE,GAAG,EAAE;YACf,OAAO,IAAI,gCAAc,CAAC;gBACxB,WAAW,EAAE;oBACX,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW;oBAC3C,eAAe,EAAE,MAAM,CAAC,WAAW,CAAC,eAAe;iBACpD;gBACD,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACrD,MAAM,EAAE,MAAM,CAAC,MAAM;aACtB,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAa,cAAc;IACzB,MAAM,CAAC,OAAO,CAAC,MAAqB;QAClC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAE1C,OAAO;YACL,MAAM,EAAE,cAAc;YACtB,SAAS,EAAE,CAAC,QAAQ,CAAC;YACrB,OAAO,EAAE,CAAC,QAAQ,CAAC;SACpB,CAAC;IACJ,CAAC;CACF;AAVD,wCAUC"}
@@ -0,0 +1,14 @@
1
+ import { AnalyzeDocumentCommandOutput, DetectDocumentTextCommandOutput, StartDocumentAnalysisCommandOutput, GetDocumentAnalysisCommandOutput, StartDocumentTextDetectionCommandOutput, GetDocumentTextDetectionCommandOutput, TextractClient } from '@aws-sdk/client-textract';
2
+ import { ITextract } from '../../../lib/documents/interfaces/documents.interface';
3
+ import { AnalyzeDocumentInput, DetectDocumentTextBytesInput, DetectDocumentTextS3Input, StartDocumentAnalysisInput, GetDocumentAnalysisInput, StartDocumentTextDetectionInput, GetDocumentTextDetectionInput } from '../../../lib/documents/types/textract.type';
4
+ export declare class Textract implements ITextract {
5
+ private readonly client;
6
+ constructor(client: TextractClient);
7
+ detectDocumentTextBytes(input: DetectDocumentTextBytesInput): Promise<DetectDocumentTextCommandOutput>;
8
+ detectDocumentTextS3(input: DetectDocumentTextS3Input): Promise<DetectDocumentTextCommandOutput>;
9
+ analyzeDocument(input: AnalyzeDocumentInput): Promise<AnalyzeDocumentCommandOutput>;
10
+ startDocumentAnalysis(input: StartDocumentAnalysisInput): Promise<StartDocumentAnalysisCommandOutput>;
11
+ getDocumentAnalysis(input: GetDocumentAnalysisInput): Promise<GetDocumentAnalysisCommandOutput>;
12
+ startDocumentTextDetection(input: StartDocumentTextDetectionInput): Promise<StartDocumentTextDetectionCommandOutput>;
13
+ getDocumentTextDetection(input: GetDocumentTextDetectionInput): Promise<GetDocumentTextDetectionCommandOutput>;
14
+ }
@@ -0,0 +1,135 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.Textract = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const client_textract_1 = require("@aws-sdk/client-textract");
18
+ let Textract = class Textract {
19
+ constructor(client) {
20
+ this.client = client;
21
+ }
22
+ async detectDocumentTextBytes(input) {
23
+ const document = { Bytes: input.bytes };
24
+ const command = new client_textract_1.DetectDocumentTextCommand({ Document: document });
25
+ return await this.client.send(command);
26
+ }
27
+ async detectDocumentTextS3(input) {
28
+ const document = {
29
+ S3Object: { Bucket: input.bucket, Name: input.name },
30
+ };
31
+ const command = new client_textract_1.DetectDocumentTextCommand({ Document: document });
32
+ return await this.client.send(command);
33
+ }
34
+ async analyzeDocument(input) {
35
+ const document = input.bytes
36
+ ? { Bytes: input.bytes }
37
+ : { S3Object: { Bucket: input.bucket, Name: input.name } };
38
+ const command = new client_textract_1.AnalyzeDocumentCommand({
39
+ Document: document,
40
+ FeatureTypes: input.featureTypes,
41
+ ...(input.queriesConfig && { QueriesConfig: input.queriesConfig }),
42
+ ...(input.adaptersConfig && { AdaptersConfig: input.adaptersConfig }),
43
+ ...(input.humanLoopConfig && { HumanLoopConfig: input.humanLoopConfig }),
44
+ });
45
+ return await this.client.send(command);
46
+ }
47
+ async startDocumentAnalysis(input) {
48
+ const command = new client_textract_1.StartDocumentAnalysisCommand({
49
+ DocumentLocation: {
50
+ S3Object: {
51
+ Bucket: input.bucket,
52
+ Name: input.name,
53
+ ...(input.version && { Version: input.version }),
54
+ },
55
+ },
56
+ FeatureTypes: input.featureTypes,
57
+ ...(input.queriesConfig && { QueriesConfig: input.queriesConfig }),
58
+ ...(input.adaptersConfig && { AdaptersConfig: input.adaptersConfig }),
59
+ ...(input.clientRequestToken && {
60
+ ClientRequestToken: input.clientRequestToken,
61
+ }),
62
+ ...(input.jobTag && { JobTag: input.jobTag }),
63
+ ...(input.notificationChannel && {
64
+ NotificationChannel: {
65
+ SNSTopicArn: input.notificationChannel.snsTopicArn,
66
+ RoleArn: input.notificationChannel.roleArn,
67
+ },
68
+ }),
69
+ ...(input.outputConfig && {
70
+ OutputConfig: {
71
+ S3Bucket: input.outputConfig.s3Bucket,
72
+ ...(input.outputConfig.s3Prefix && {
73
+ S3Prefix: input.outputConfig.s3Prefix,
74
+ }),
75
+ },
76
+ }),
77
+ ...(input.kmsKeyId && { KMSKeyId: input.kmsKeyId }),
78
+ });
79
+ return await this.client.send(command);
80
+ }
81
+ async getDocumentAnalysis(input) {
82
+ const command = new client_textract_1.GetDocumentAnalysisCommand({
83
+ JobId: input.jobId,
84
+ ...(input.maxResults && { MaxResults: input.maxResults }),
85
+ ...(input.nextToken && { NextToken: input.nextToken }),
86
+ });
87
+ return await this.client.send(command);
88
+ }
89
+ async startDocumentTextDetection(input) {
90
+ const command = new client_textract_1.StartDocumentTextDetectionCommand({
91
+ DocumentLocation: {
92
+ S3Object: {
93
+ Bucket: input.bucket,
94
+ Name: input.name,
95
+ ...(input.version && { Version: input.version }),
96
+ },
97
+ },
98
+ ...(input.clientRequestToken && {
99
+ ClientRequestToken: input.clientRequestToken,
100
+ }),
101
+ ...(input.jobTag && { JobTag: input.jobTag }),
102
+ ...(input.notificationChannel && {
103
+ NotificationChannel: {
104
+ SNSTopicArn: input.notificationChannel.snsTopicArn,
105
+ RoleArn: input.notificationChannel.roleArn,
106
+ },
107
+ }),
108
+ ...(input.outputConfig && {
109
+ OutputConfig: {
110
+ S3Bucket: input.outputConfig.s3Bucket,
111
+ ...(input.outputConfig.s3Prefix && {
112
+ S3Prefix: input.outputConfig.s3Prefix,
113
+ }),
114
+ },
115
+ }),
116
+ ...(input.kmsKeyId && { KMSKeyId: input.kmsKeyId }),
117
+ });
118
+ return await this.client.send(command);
119
+ }
120
+ async getDocumentTextDetection(input) {
121
+ const command = new client_textract_1.GetDocumentTextDetectionCommand({
122
+ JobId: input.jobId,
123
+ ...(input.maxResults && { MaxResults: input.maxResults }),
124
+ ...(input.nextToken && { NextToken: input.nextToken }),
125
+ });
126
+ return await this.client.send(command);
127
+ }
128
+ };
129
+ exports.Textract = Textract;
130
+ exports.Textract = Textract = __decorate([
131
+ (0, common_1.Injectable)(),
132
+ __param(0, (0, common_1.Inject)('CONNECTION_TEXTRACT')),
133
+ __metadata("design:paramtypes", [client_textract_1.TextractClient])
134
+ ], Textract);
135
+ //# sourceMappingURL=textract.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textract.service.js","sourceRoot":"","sources":["../../../../src/external/aws/textract/textract.service.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -16,5 +16,8 @@ import { ICrypto } from './lib/crypto/interfaces/crypto.interface';
16
16
  import { CacheModule } from './lib/cache/cache.module';
17
17
  import { Cache } from './lib/cache/cache';
18
18
  import { ICache } from './lib/cache/interfaces/cache.interface';
19
+ import { DocumentsModule } from './lib/documents/documents.module';
20
+ import { Documents } from './lib/documents/documents';
21
+ import { IBedrock, ITextract } from './lib/documents/interfaces/documents.interface';
19
22
  import { SimpleRedisSetup, ClusterRedisSetup, TypeRedis, PubSubRedis } from './external/redis/types/ioredis.types';
20
- export { QueueModule, Queue, IConsumer, StorageModule, Storage, IStorage, EventModule, Events, IEvent, EmailModule, Email, IEmail, CryptoModule, Crypto, ICrypto, CacheModule, Cache, ICache, SimpleRedisSetup, ClusterRedisSetup, TypeRedis, PubSubRedis, };
23
+ export { QueueModule, Queue, IConsumer, StorageModule, Storage, IStorage, EventModule, Events, IEvent, EmailModule, Email, IEmail, CryptoModule, Crypto, ICrypto, CacheModule, Cache, ICache, DocumentsModule, Documents, IBedrock, ITextract, SimpleRedisSetup, ClusterRedisSetup, TypeRedis, PubSubRedis, };
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TypeRedis = exports.ICache = exports.Cache = exports.CacheModule = exports.ICrypto = exports.Crypto = exports.CryptoModule = exports.IEmail = exports.Email = exports.EmailModule = exports.IEvent = exports.Events = exports.EventModule = exports.IStorage = exports.Storage = exports.StorageModule = exports.IConsumer = exports.Queue = exports.QueueModule = void 0;
3
+ exports.TypeRedis = exports.ITextract = exports.IBedrock = exports.Documents = exports.DocumentsModule = exports.ICache = exports.Cache = exports.CacheModule = exports.ICrypto = exports.Crypto = exports.CryptoModule = exports.IEmail = exports.Email = exports.EmailModule = exports.IEvent = exports.Events = exports.EventModule = exports.IStorage = exports.Storage = exports.StorageModule = exports.IConsumer = exports.Queue = exports.QueueModule = void 0;
4
4
  const queue_module_1 = require("./lib/queue/queue.module");
5
5
  Object.defineProperty(exports, "QueueModule", { enumerable: true, get: function () { return queue_module_1.QueueModule; } });
6
6
  const queue_1 = require("./lib/queue/queue");
@@ -37,6 +37,13 @@ const cache_1 = require("./lib/cache/cache");
37
37
  Object.defineProperty(exports, "Cache", { enumerable: true, get: function () { return cache_1.Cache; } });
38
38
  const cache_interface_1 = require("./lib/cache/interfaces/cache.interface");
39
39
  Object.defineProperty(exports, "ICache", { enumerable: true, get: function () { return cache_interface_1.ICache; } });
40
+ const documents_module_1 = require("./lib/documents/documents.module");
41
+ Object.defineProperty(exports, "DocumentsModule", { enumerable: true, get: function () { return documents_module_1.DocumentsModule; } });
42
+ const documents_1 = require("./lib/documents/documents");
43
+ Object.defineProperty(exports, "Documents", { enumerable: true, get: function () { return documents_1.Documents; } });
44
+ const documents_interface_1 = require("./lib/documents/interfaces/documents.interface");
45
+ Object.defineProperty(exports, "IBedrock", { enumerable: true, get: function () { return documents_interface_1.IBedrock; } });
46
+ Object.defineProperty(exports, "ITextract", { enumerable: true, get: function () { return documents_interface_1.ITextract; } });
40
47
  const ioredis_types_1 = require("./external/redis/types/ioredis.types");
41
48
  Object.defineProperty(exports, "TypeRedis", { enumerable: true, get: function () { return ioredis_types_1.TypeRedis; } });
42
49
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AA+BrD,4FA/BO,0BAAW,OA+BP;AA9Bb,6CAA0C;AA+BxC,sFA/BO,aAAK,OA+BP;AA9BP,kFAAsE;AA+BpE,0FA/BO,8BAAS,OA+BP;AA7BX,iEAA6D;AA8B3D,8FA9BO,8BAAa,OA8BP;AA7Bf,mDAAgD;AA8B9C,wFA9BO,iBAAO,OA8BP;AA7BT,kFAAsE;AA8BpE,yFA9BO,4BAAQ,OA8BP;AA5BV,4DAAwD;AA6BtD,4FA7BO,0BAAW,OA6BP;AA5Bb,gDAA6C;AA6B3C,uFA7BO,eAAM,OA6BP;AA5BR,6EAAiE;AA6B/D,uFA7BO,wBAAM,OA6BP;AA3BR,2DAAuD;AA4BrD,4FA5BO,0BAAW,OA4BP;AA3Bb,6CAA0C;AA4BxC,sFA5BO,aAAK,OA4BP;AA3BP,4EAAgE;AA4B9D,uFA5BO,wBAAM,OA4BP;AA1BR,8DAA0D;AA2BxD,6FA3BO,4BAAY,OA2BP;AA1Bd,gDAA6C;AA2B3C,uFA3BO,eAAM,OA2BP;AA1BR,+EAAmE;AA2BjE,wFA3BO,0BAAO,OA2BP;AAzBT,2DAAuD;AA0BrD,4FA1BO,0BAAW,OA0BP;AAzBb,6CAA0C;AA0BxC,sFA1BO,aAAK,OA0BP;AAzBP,4EAAgE;AA0B9D,uFA1BO,wBAAM,OA0BP;AAzBR,wEAK8C;AAuB5C,0FAzBA,yBAAS,OAyBA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AAqCrD,4FArCO,0BAAW,OAqCP;AApCb,6CAA0C;AAqCxC,sFArCO,aAAK,OAqCP;AApCP,kFAAsE;AAqCpE,0FArCO,8BAAS,OAqCP;AAnCX,iEAA6D;AAoC3D,8FApCO,8BAAa,OAoCP;AAnCf,mDAAgD;AAoC9C,wFApCO,iBAAO,OAoCP;AAnCT,kFAAsE;AAoCpE,yFApCO,4BAAQ,OAoCP;AAlCV,4DAAwD;AAmCtD,4FAnCO,0BAAW,OAmCP;AAlCb,gDAA6C;AAmC3C,uFAnCO,eAAM,OAmCP;AAlCR,6EAAiE;AAmC/D,uFAnCO,wBAAM,OAmCP;AAjCR,2DAAuD;AAkCrD,4FAlCO,0BAAW,OAkCP;AAjCb,6CAA0C;AAkCxC,sFAlCO,aAAK,OAkCP;AAjCP,4EAAgE;AAkC9D,uFAlCO,wBAAM,OAkCP;AAhCR,8DAA0D;AAiCxD,6FAjCO,4BAAY,OAiCP;AAhCd,gDAA6C;AAiC3C,uFAjCO,eAAM,OAiCP;AAhCR,+EAAmE;AAiCjE,wFAjCO,0BAAO,OAiCP;AA/BT,2DAAuD;AAgCrD,4FAhCO,0BAAW,OAgCP;AA/Bb,6CAA0C;AAgCxC,sFAhCO,aAAK,OAgCP;AA/BP,4EAAgE;AAgC9D,uFAhCO,wBAAM,OAgCP;AA/BR,uEAAmE;AAgCjE,gGAhCO,kCAAe,OAgCP;AA/BjB,yDAAsD;AAgCpD,0FAhCO,qBAAS,OAgCP;AA/BX,wFAGwD;AA6BtD,yFA/BA,8BAAQ,OA+BA;AACR,0FA/BA,+BAAS,OA+BA;AA7BX,wEAK8C;AA2B5C,0FA7BA,yBAAS,OA6BA"}
@@ -0,0 +1,18 @@
1
+ import { IBedrock, ITextract } from './interfaces/documents.interface';
2
+ import { InvokeModelCommandOutput } from '@aws-sdk/client-bedrock-runtime';
3
+ import { AnalyzeDocumentCommandOutput, DetectDocumentTextCommandOutput, StartDocumentAnalysisCommandOutput, GetDocumentAnalysisCommandOutput, StartDocumentTextDetectionCommandOutput, GetDocumentTextDetectionCommandOutput } from '@aws-sdk/client-textract';
4
+ import { InvokeModelPayload } from './types/bedrock.type';
5
+ import { AnalyzeDocumentInput, DetectDocumentTextBytesInput, DetectDocumentTextS3Input, StartDocumentAnalysisInput, GetDocumentAnalysisInput, StartDocumentTextDetectionInput, GetDocumentTextDetectionInput } from './types/textract.type';
6
+ export declare class Documents {
7
+ private readonly bedrock;
8
+ private readonly textract;
9
+ constructor(bedrock: IBedrock, textract: ITextract);
10
+ invokeBedrockModel(payload: InvokeModelPayload): Promise<InvokeModelCommandOutput>;
11
+ detectDocumentTextBytes(input: DetectDocumentTextBytesInput): Promise<DetectDocumentTextCommandOutput>;
12
+ detectDocumentTextS3(input: DetectDocumentTextS3Input): Promise<DetectDocumentTextCommandOutput>;
13
+ analyzeDocument(input: AnalyzeDocumentInput): Promise<AnalyzeDocumentCommandOutput>;
14
+ startDocumentAnalysis(input: StartDocumentAnalysisInput): Promise<StartDocumentAnalysisCommandOutput>;
15
+ getDocumentAnalysis(input: GetDocumentAnalysisInput): Promise<GetDocumentAnalysisCommandOutput>;
16
+ startDocumentTextDetection(input: StartDocumentTextDetectionInput): Promise<StartDocumentTextDetectionCommandOutput>;
17
+ getDocumentTextDetection(input: GetDocumentTextDetectionInput): Promise<GetDocumentTextDetectionCommandOutput>;
18
+ }
@@ -0,0 +1,57 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.Documents = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const documents_interface_1 = require("./interfaces/documents.interface");
18
+ let Documents = class Documents {
19
+ constructor(bedrock, textract) {
20
+ this.bedrock = bedrock;
21
+ this.textract = textract;
22
+ }
23
+ async invokeBedrockModel(payload) {
24
+ return await this.bedrock.invokeModel(payload);
25
+ }
26
+ async detectDocumentTextBytes(input) {
27
+ return await this.textract.detectDocumentTextBytes(input);
28
+ }
29
+ async detectDocumentTextS3(input) {
30
+ return await this.textract.detectDocumentTextS3(input);
31
+ }
32
+ async analyzeDocument(input) {
33
+ return await this.textract.analyzeDocument(input);
34
+ }
35
+ async startDocumentAnalysis(input) {
36
+ return await this.textract.startDocumentAnalysis(input);
37
+ }
38
+ async getDocumentAnalysis(input) {
39
+ return await this.textract.getDocumentAnalysis(input);
40
+ }
41
+ async startDocumentTextDetection(input) {
42
+ return await this.textract.startDocumentTextDetection(input);
43
+ }
44
+ async getDocumentTextDetection(input) {
45
+ return await this.textract.getDocumentTextDetection(input);
46
+ }
47
+ };
48
+ exports.Documents = Documents;
49
+ exports.Documents = Documents = __decorate([
50
+ (0, common_1.Injectable)(),
51
+ __param(0, (0, common_1.Optional)()),
52
+ __param(0, (0, common_1.Inject)(documents_interface_1.IBedrock)),
53
+ __param(1, (0, common_1.Optional)()),
54
+ __param(1, (0, common_1.Inject)(documents_interface_1.ITextract)),
55
+ __metadata("design:paramtypes", [Object, Object])
56
+ ], Documents);
57
+ //# sourceMappingURL=documents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documents.js","sourceRoot":"","sources":["../../../src/lib/documents/documents.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA8D;AAC9D,0EAAuE;AAsBhE,IAAM,SAAS,GAAf,MAAM,SAAS;IACpB,YAGmB,OAAiB,EAGjB,QAAmB;QAHnB,YAAO,GAAP,OAAO,CAAU;QAGjB,aAAQ,GAAR,QAAQ,CAAW;IACnC,CAAC;IAGJ,KAAK,CAAC,kBAAkB,CACtB,OAA2B;QAE3B,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAGD,KAAK,CAAC,uBAAuB,CAC3B,KAAmC;QAEnC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,KAAgC;QAEhC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAA2B;QAE3B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,KAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,KAA+B;QAE/B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,KAAsC;QAEtC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,KAAoC;QAEpC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;CACF,CAAA;AA3DY,8BAAS;oBAAT,SAAS;IADrB,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,iBAAQ,GAAE,CAAA;IACV,WAAA,IAAA,eAAM,EAAC,8BAAQ,CAAC,CAAA;IAEhB,WAAA,IAAA,iBAAQ,GAAE,CAAA;IACV,WAAA,IAAA,eAAM,EAAC,+BAAS,CAAC,CAAA;;GANT,SAAS,CA2DrB"}
@@ -0,0 +1,10 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ import { BedrockSetup } from '../../external/aws/bedrock/bedrock.provider';
3
+ import { TextractSetup } from '../../external/aws/textract/textract.provider';
4
+ export type DocumentsSetup = {
5
+ bedrock: BedrockSetup;
6
+ textract?: TextractSetup;
7
+ };
8
+ export declare class DocumentsModule {
9
+ static forRoot(params: DocumentsSetup): DynamicModule;
10
+ }
@@ -0,0 +1,30 @@
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 DocumentsModule_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.DocumentsModule = void 0;
11
+ const common_1 = require("@nestjs/common");
12
+ const bedrock_provider_1 = require("../../external/aws/bedrock/bedrock.provider");
13
+ const bedrock_service_1 = require("../../external/aws/bedrock/bedrock.service");
14
+ const documents_1 = require("./documents");
15
+ const documents_interface_1 = require("./interfaces/documents.interface");
16
+ let DocumentsModule = DocumentsModule_1 = class DocumentsModule {
17
+ static forRoot(params) {
18
+ return {
19
+ module: DocumentsModule_1,
20
+ imports: [bedrock_provider_1.BedrockModule.forRoot(params.bedrock)],
21
+ providers: [documents_1.Documents, { provide: documents_interface_1.IBedrock, useClass: bedrock_service_1.Bedrock }],
22
+ exports: [documents_1.Documents, { provide: documents_interface_1.IBedrock, useClass: bedrock_service_1.Bedrock }],
23
+ };
24
+ }
25
+ };
26
+ exports.DocumentsModule = DocumentsModule;
27
+ exports.DocumentsModule = DocumentsModule = DocumentsModule_1 = __decorate([
28
+ (0, common_1.Module)({})
29
+ ], DocumentsModule);
30
+ //# sourceMappingURL=documents.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documents.module.js","sourceRoot":"","sources":["../../../src/lib/documents/documents.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;AACvD,kFAGqD;AACrD,gFAAuF;AAEvF,2CAAwC;AACxC,0EAA4D;AAQrD,IAAM,eAAe,uBAArB,MAAM,eAAe;IAC1B,MAAM,CAAC,OAAO,CAAC,MAAsB;QACnC,OAAO;YACL,MAAM,EAAE,iBAAe;YACvB,OAAO,EAAE,CAAC,gCAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACxD,SAAS,EAAE,CAAC,qBAAS,EAAE,EAAE,OAAO,EAAE,8BAAQ,EAAE,QAAQ,EAAE,yBAAc,EAAE,CAAC;YACvE,OAAO,EAAE,CAAC,qBAAS,EAAE,EAAE,OAAO,EAAE,8BAAQ,EAAE,QAAQ,EAAE,yBAAc,EAAE,CAAC;SACtE,CAAC;IACJ,CAAC;CACF,CAAA;AATY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,eAAe,CAS3B"}
@@ -0,0 +1,18 @@
1
+ import { InvokeModelCommandOutput } from '@aws-sdk/client-bedrock-runtime';
2
+ import { AnalyzeDocumentCommandOutput, DetectDocumentTextCommandOutput, StartDocumentAnalysisCommandOutput, GetDocumentAnalysisCommandOutput, StartDocumentTextDetectionCommandOutput, GetDocumentTextDetectionCommandOutput } from '@aws-sdk/client-textract';
3
+ import { InvokeModelPayload } from '../types/bedrock.type';
4
+ import { AnalyzeDocumentInput, DetectDocumentTextBytesInput, DetectDocumentTextS3Input, StartDocumentAnalysisInput, GetDocumentAnalysisInput, StartDocumentTextDetectionInput, GetDocumentTextDetectionInput } from '../types/textract.type';
5
+ export interface IBedrock {
6
+ invokeModel(payload: InvokeModelPayload): Promise<InvokeModelCommandOutput>;
7
+ }
8
+ export declare const IBedrock: unique symbol;
9
+ export interface ITextract {
10
+ detectDocumentTextBytes(input: DetectDocumentTextBytesInput): Promise<DetectDocumentTextCommandOutput>;
11
+ detectDocumentTextS3(input: DetectDocumentTextS3Input): Promise<DetectDocumentTextCommandOutput>;
12
+ analyzeDocument(input: AnalyzeDocumentInput): Promise<AnalyzeDocumentCommandOutput>;
13
+ startDocumentAnalysis(input: StartDocumentAnalysisInput): Promise<StartDocumentAnalysisCommandOutput>;
14
+ getDocumentAnalysis(input: GetDocumentAnalysisInput): Promise<GetDocumentAnalysisCommandOutput>;
15
+ startDocumentTextDetection(input: StartDocumentTextDetectionInput): Promise<StartDocumentTextDetectionCommandOutput>;
16
+ getDocumentTextDetection(input: GetDocumentTextDetectionInput): Promise<GetDocumentTextDetectionCommandOutput>;
17
+ }
18
+ export declare const ITextract: unique symbol;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ITextract = exports.IBedrock = void 0;
4
+ exports.IBedrock = Symbol('IBedrock');
5
+ exports.ITextract = Symbol('ITextract');
6
+ //# sourceMappingURL=documents.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documents.interface.js","sourceRoot":"","sources":["../../../../src/lib/documents/interfaces/documents.interface.ts"],"names":[],"mappings":";;;AAwBa,QAAA,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AA0B9B,QAAA,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ /// <reference types="node" />
2
+ export type InvokeModelPayload = {
3
+ modelId: string;
4
+ body: Uint8Array | Buffer | string;
5
+ contentType?: string;
6
+ accept?: string;
7
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=bedrock.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bedrock.type.js","sourceRoot":"","sources":["../../../../src/lib/documents/types/bedrock.type.ts"],"names":[],"mappings":""}