@gravity-platform/aws-dynamodb 1.1.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.
Files changed (70) hide show
  1. package/README.md +97 -0
  2. package/dist/DynamoDB/node/executor.d.ts +12 -0
  3. package/dist/DynamoDB/node/executor.d.ts.map +1 -0
  4. package/dist/DynamoDB/node/executor.js +62 -0
  5. package/dist/DynamoDB/node/executor.js.map +1 -0
  6. package/dist/DynamoDB/node/index.d.ts +10 -0
  7. package/dist/DynamoDB/node/index.d.ts.map +1 -0
  8. package/dist/DynamoDB/node/index.js +90 -0
  9. package/dist/DynamoDB/node/index.js.map +1 -0
  10. package/dist/DynamoDB/service/putRecord.d.ts +10 -0
  11. package/dist/DynamoDB/service/putRecord.d.ts.map +1 -0
  12. package/dist/DynamoDB/service/putRecord.js +18 -0
  13. package/dist/DynamoDB/service/putRecord.js.map +1 -0
  14. package/dist/DynamoDB/util/types.d.ts +17 -0
  15. package/dist/DynamoDB/util/types.d.ts.map +1 -0
  16. package/dist/DynamoDB/util/types.js +6 -0
  17. package/dist/DynamoDB/util/types.js.map +1 -0
  18. package/dist/DynamoDBFetch/node/executor.d.ts +12 -0
  19. package/dist/DynamoDBFetch/node/executor.d.ts.map +1 -0
  20. package/dist/DynamoDBFetch/node/executor.js +54 -0
  21. package/dist/DynamoDBFetch/node/executor.js.map +1 -0
  22. package/dist/DynamoDBFetch/node/index.d.ts +10 -0
  23. package/dist/DynamoDBFetch/node/index.d.ts.map +1 -0
  24. package/dist/DynamoDBFetch/node/index.js +77 -0
  25. package/dist/DynamoDBFetch/node/index.js.map +1 -0
  26. package/dist/DynamoDBFetch/service/fetchRecord.d.ts +11 -0
  27. package/dist/DynamoDBFetch/service/fetchRecord.d.ts.map +1 -0
  28. package/dist/DynamoDBFetch/service/fetchRecord.js +28 -0
  29. package/dist/DynamoDBFetch/service/fetchRecord.js.map +1 -0
  30. package/dist/DynamoDBFetch/util/types.d.ts +15 -0
  31. package/dist/DynamoDBFetch/util/types.d.ts.map +1 -0
  32. package/dist/DynamoDBFetch/util/types.js +6 -0
  33. package/dist/DynamoDBFetch/util/types.js.map +1 -0
  34. package/dist/DynamoDBService/node/executor.d.ts +12 -0
  35. package/dist/DynamoDBService/node/executor.d.ts.map +1 -0
  36. package/dist/DynamoDBService/node/executor.js +52 -0
  37. package/dist/DynamoDBService/node/executor.js.map +1 -0
  38. package/dist/DynamoDBService/node/index.d.ts +10 -0
  39. package/dist/DynamoDBService/node/index.d.ts.map +1 -0
  40. package/dist/DynamoDBService/node/index.js +66 -0
  41. package/dist/DynamoDBService/node/index.js.map +1 -0
  42. package/dist/DynamoDBService/util/types.d.ts +11 -0
  43. package/dist/DynamoDBService/util/types.d.ts.map +1 -0
  44. package/dist/DynamoDBService/util/types.js +6 -0
  45. package/dist/DynamoDBService/util/types.js.map +1 -0
  46. package/dist/credentials/index.d.ts +7 -0
  47. package/dist/credentials/index.d.ts.map +1 -0
  48. package/dist/credentials/index.js +11 -0
  49. package/dist/credentials/index.js.map +1 -0
  50. package/dist/index.d.ts +3 -0
  51. package/dist/index.d.ts.map +1 -0
  52. package/dist/index.js +64 -0
  53. package/dist/index.js.map +1 -0
  54. package/dist/shared/client.d.ts +7 -0
  55. package/dist/shared/client.d.ts.map +1 -0
  56. package/dist/shared/client.js +61 -0
  57. package/dist/shared/client.js.map +1 -0
  58. package/dist/shared/operations.d.ts +25 -0
  59. package/dist/shared/operations.d.ts.map +1 -0
  60. package/dist/shared/operations.js +121 -0
  61. package/dist/shared/operations.js.map +1 -0
  62. package/dist/shared/platform.d.ts +11 -0
  63. package/dist/shared/platform.d.ts.map +1 -0
  64. package/dist/shared/platform.js +21 -0
  65. package/dist/shared/platform.js.map +1 -0
  66. package/dist/shared/types.d.ts +40 -0
  67. package/dist/shared/types.d.ts.map +1 -0
  68. package/dist/shared/types.js +6 -0
  69. package/dist/shared/types.js.map +1 -0
  70. package/package.json +46 -0
package/README.md ADDED
@@ -0,0 +1,97 @@
1
+ # @gravityai-dev/aws-dynamodb
2
+
3
+ AWS DynamoDB integration plugin for the Gravity workflow system. Provides nodes for database operations including put, fetch, and service operations.
4
+
5
+ ## Features
6
+
7
+ - **DynamoDB**: Put records to DynamoDB tables with conditional expressions
8
+ - **DynamoDBFetch**: Fetch records by primary/sort key with null handling
9
+ - **DynamoDBService**: Service node providing NoSQL operations for other nodes
10
+ - Full AWS SDK v3 integration with document client
11
+ - Client caching for performance optimization
12
+ - Comprehensive error handling and logging
13
+
14
+ ## Installation
15
+
16
+ ```bash
17
+ npm install @gravityai-dev/aws-dynamodb
18
+ ```
19
+
20
+ ## Nodes
21
+
22
+ ### DynamoDB
23
+
24
+ Uploads a record to an AWS DynamoDB table with optional conditional expressions.
25
+
26
+ **Inputs:**
27
+ - `signal`: Record data to upload (can override config record)
28
+
29
+ **Outputs:**
30
+ - `success`: Whether the upload was successful
31
+ - `itemId`: ID of the uploaded item (if available)
32
+
33
+ **Configuration:**
34
+ - `tableName`: Name of the DynamoDB table
35
+ - `record`: JS Code to transform data
36
+ - `conditionExpression`: Optional condition for the put operation
37
+ - `expressionAttributeNames`: Substitution tokens for attribute names
38
+ - `expressionAttributeValues`: Values for expression substitution
39
+
40
+ ### DynamoDBFetch
41
+
42
+ Fetches a record from AWS DynamoDB table by key, returns null if not found.
43
+
44
+ **Inputs:**
45
+ - `signal`: Input object containing key values
46
+
47
+ **Outputs:**
48
+ - `output`: The fetched record or null if not found
49
+ - `found`: Whether the record was found
50
+
51
+ **Configuration:**
52
+ - `tableName`: The name of the DynamoDB table
53
+ - `primaryKey`: The field name for the primary key (partition key)
54
+ - `sortKey`: The field name for the sort key (optional)
55
+
56
+ ### DynamoDBService
57
+
58
+ Provides DynamoDB operations as a service for other nodes. Marked as a service node.
59
+
60
+ **Service Connectors:**
61
+ - `nosqlService`: Provides NoSQL database operations
62
+ - Methods: put, get, query, update, delete, batchGet, batchWrite
63
+
64
+ **Configuration:**
65
+ - `region`: AWS region for DynamoDB
66
+ - `defaultTable`: Default table name (can be overridden per operation)
67
+
68
+ ## Credentials
69
+
70
+ Requires AWS credentials with the following fields:
71
+ - `accessKeyId`: Your AWS access key ID
72
+ - `secretAccessKey`: Your AWS secret access key
73
+ - `region`: AWS region (e.g., us-east-1)
74
+
75
+ ## Usage Example
76
+
77
+ 1. Add DynamoDB node to put records to a table
78
+ 2. Use DynamoDBFetch to retrieve records by key
79
+ 3. Connect DynamoDBService for advanced operations
80
+ 4. Configure conditional expressions for data integrity
81
+
82
+ ## Development
83
+
84
+ ```bash
85
+ # Install dependencies
86
+ npm install
87
+
88
+ # Build the package
89
+ npm run build
90
+
91
+ # Run tests
92
+ npm test
93
+ ```
94
+
95
+ ## License
96
+
97
+ MIT
@@ -0,0 +1,12 @@
1
+ import { type NodeExecutionContext } from "@gravity-platform/plugin-base";
2
+ import { DynamoDBConfig, DynamoDBOutput } from "../util/types";
3
+ import { PromiseNode } from "../../shared/platform";
4
+ export declare class DynamoDBExecutor extends PromiseNode<DynamoDBConfig> {
5
+ constructor();
6
+ protected executeNode(inputs: Record<string, any>, config: DynamoDBConfig, context: NodeExecutionContext): Promise<DynamoDBOutput>;
7
+ /**
8
+ * Build credential context from execution context
9
+ */
10
+ private buildCredentialContext;
11
+ }
12
+ //# sourceMappingURL=executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/DynamoDB/node/executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/D,OAAO,EAAE,WAAW,EAAgB,MAAM,uBAAuB,CAAC;AAIlE,qBAAa,gBAAiB,SAAQ,WAAW,CAAC,cAAc,CAAC;;cAK/C,WAAW,CACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC;IA6C1B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAW/B"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamoDBExecutor = void 0;
4
+ const putRecord_1 = require("../service/putRecord");
5
+ const platform_1 = require("../../shared/platform");
6
+ const NODE_TYPE = "DynamoDB";
7
+ class DynamoDBExecutor extends platform_1.PromiseNode {
8
+ constructor() {
9
+ super(NODE_TYPE);
10
+ }
11
+ async executeNode(inputs, config, context) {
12
+ const logger = (0, platform_1.createLogger)("DynamoDB");
13
+ // Build credential context for service
14
+ const credentialContext = this.buildCredentialContext(context);
15
+ try {
16
+ // Allow input signal to override config record
17
+ const record = inputs.signal || config.record;
18
+ if (!record) {
19
+ throw new Error("No record data provided in config or input signal");
20
+ }
21
+ const result = await (0, putRecord_1.putDynamoDBRecordService)({
22
+ ...config,
23
+ record,
24
+ }, credentialContext.credentials?.awsCredential, logger);
25
+ logger.info("DynamoDB execution completed", {
26
+ tableName: config.tableName,
27
+ success: result.success,
28
+ itemId: result.itemId
29
+ });
30
+ return {
31
+ __outputs: {
32
+ success: result.success,
33
+ itemId: result.itemId
34
+ }
35
+ };
36
+ }
37
+ catch (error) {
38
+ logger.error("DynamoDB execution failed", {
39
+ error: error.message,
40
+ code: error.code,
41
+ stack: error.stack,
42
+ });
43
+ throw error;
44
+ }
45
+ }
46
+ /**
47
+ * Build credential context from execution context
48
+ */
49
+ buildCredentialContext(context) {
50
+ return {
51
+ credentials: {
52
+ awsCredential: context.credentials?.awsCredential || {},
53
+ },
54
+ nodeType: NODE_TYPE,
55
+ workflowId: context.workflow?.id || "",
56
+ executionId: context.executionId || "",
57
+ nodeId: context.nodeId || "",
58
+ };
59
+ }
60
+ }
61
+ exports.DynamoDBExecutor = DynamoDBExecutor;
62
+ //# sourceMappingURL=executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../src/DynamoDB/node/executor.ts"],"names":[],"mappings":";;;AAEA,oDAAgE;AAChE,oDAAkE;AAElE,MAAM,SAAS,GAAG,UAAU,CAAC;AAE7B,MAAa,gBAAiB,SAAQ,sBAA2B;IAC/D;QACE,KAAK,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAES,KAAK,CAAC,WAAW,CACzB,MAA2B,EAC3B,MAAsB,EACtB,OAA6B;QAE7B,MAAM,MAAM,GAAG,IAAA,uBAAY,EAAC,UAAU,CAAC,CAAC;QAExC,uCAAuC;QACvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,+CAA+C;YAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;YAE9C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACvE,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAA,oCAAwB,EAC3C;gBACE,GAAG,MAAM;gBACT,MAAM;aACP,EACD,iBAAiB,CAAC,WAAW,EAAE,aAAa,EAC5C,MAAM,CACP,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;gBAC1C,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;aACtB,CAAC,CAAC;YAEH,OAAO;gBACL,SAAS,EAAE;oBACT,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;iBACtB;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE;gBACxC,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,OAA6B;QAC1D,OAAO;YACL,WAAW,EAAE;gBACX,aAAa,EAAE,OAAO,CAAC,WAAW,EAAE,aAAa,IAAI,EAAE;aACxD;YACD,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE;YACtC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YACtC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;SAC7B,CAAC;IACJ,CAAC;CACF;AApED,4CAoEC"}
@@ -0,0 +1,10 @@
1
+ import { type EnhancedNodeDefinition } from "@gravity-platform/plugin-base";
2
+ import { DynamoDBExecutor } from "./executor";
3
+ export declare const NODE_TYPE = "DynamoDB";
4
+ declare function createNodeDefinition(): EnhancedNodeDefinition;
5
+ export declare const DynamoDBNode: {
6
+ definition: any;
7
+ executor: typeof DynamoDBExecutor;
8
+ };
9
+ export { createNodeDefinition };
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/DynamoDB/node/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,eAAO,MAAM,SAAS,aAAa,CAAC;AAEpC,iBAAS,oBAAoB,IAAI,sBAAsB,CAiFtD;AAID,eAAO,MAAM,YAAY;;;CAGxB,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamoDBNode = exports.NODE_TYPE = void 0;
4
+ exports.createNodeDefinition = createNodeDefinition;
5
+ const plugin_base_1 = require("@gravity-platform/plugin-base");
6
+ const executor_1 = require("./executor");
7
+ exports.NODE_TYPE = "DynamoDB";
8
+ function createNodeDefinition() {
9
+ const { NodeInputType } = (0, plugin_base_1.getPlatformDependencies)();
10
+ return {
11
+ packageVersion: "1.1.0",
12
+ type: exports.NODE_TYPE,
13
+ name: "DynamoDB",
14
+ description: "Upload a record to an AWS DynamoDB table",
15
+ category: "storage",
16
+ logoUrl: "https://res.cloudinary.com/sonik/image/upload/v1751473913/gravity/icons/DynamoDB.png",
17
+ color: "#4B61D1", // AWS DynamoDB Blue
18
+ inputs: [
19
+ {
20
+ name: "signal",
21
+ type: NodeInputType.OBJECT,
22
+ description: "Record data to upload (can override config record)",
23
+ },
24
+ ],
25
+ outputs: [
26
+ {
27
+ name: "success",
28
+ type: NodeInputType.BOOLEAN,
29
+ description: "Whether the upload was successful",
30
+ },
31
+ {
32
+ name: "itemId",
33
+ type: NodeInputType.STRING,
34
+ description: "ID of the uploaded item (if available)",
35
+ },
36
+ ],
37
+ configSchema: {
38
+ type: "object",
39
+ required: ["tableName", "record"],
40
+ properties: {
41
+ tableName: {
42
+ type: "string",
43
+ title: "Table Name",
44
+ description: "Name of the DynamoDB table",
45
+ },
46
+ record: {
47
+ type: "object",
48
+ title: "Code",
49
+ description: "JS Code to transform data",
50
+ default: "",
51
+ "ui:field": "template",
52
+ },
53
+ conditionExpression: {
54
+ type: "string",
55
+ title: "Condition Expression",
56
+ description: "Optional condition that must be satisfied for the put to succeed",
57
+ default: "",
58
+ },
59
+ expressionAttributeNames: {
60
+ type: "object",
61
+ title: "Expression Attribute Names",
62
+ description: "Substitution tokens for attribute names in expressions (optional)",
63
+ default: {},
64
+ "ui:field": "JSON",
65
+ },
66
+ expressionAttributeValues: {
67
+ type: "object",
68
+ title: "Expression Attribute Values",
69
+ description: "Values that can be substituted in expressions (optional)",
70
+ default: {},
71
+ "ui:field": "JSON",
72
+ },
73
+ },
74
+ },
75
+ credentials: [
76
+ {
77
+ name: "awsCredential",
78
+ required: true,
79
+ displayName: "AWS",
80
+ description: "AWS credentials for DynamoDB access",
81
+ },
82
+ ],
83
+ };
84
+ }
85
+ const definition = createNodeDefinition();
86
+ exports.DynamoDBNode = {
87
+ definition,
88
+ executor: executor_1.DynamoDBExecutor,
89
+ };
90
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/DynamoDB/node/index.ts"],"names":[],"mappings":";;;AA+FS,oDAAoB;AA/F7B,+DAAqG;AACrG,yCAA8C;AAEjC,QAAA,SAAS,GAAG,UAAU,CAAC;AAEpC,SAAS,oBAAoB;IAC3B,MAAM,EAAE,aAAa,EAAE,GAAG,IAAA,qCAAuB,GAAE,CAAC;IAEpD,OAAO;QACL,cAAc,EAAE,OAAO;QACvB,IAAI,EAAE,iBAAS;QACf,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE,SAAS;QACnB,OAAO,EAAE,sFAAsF;QAC/F,KAAK,EAAE,SAAS,EAAE,oBAAoB;QAEtC,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,aAAa,CAAC,MAAM;gBAC1B,WAAW,EAAE,oDAAoD;aAClE;SACF;QAED,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,aAAa,CAAC,OAAO;gBAC3B,WAAW,EAAE,mCAAmC;aACjD;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,aAAa,CAAC,MAAM;gBAC1B,WAAW,EAAE,wCAAwC;aACtD;SACF;QAED,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;YACjC,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,YAAY;oBACnB,WAAW,EAAE,4BAA4B;iBAC1C;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,MAAM;oBACb,WAAW,EAAE,2BAA2B;oBACxC,OAAO,EAAE,EAAE;oBACX,UAAU,EAAE,UAAU;iBACvB;gBACD,mBAAmB,EAAE;oBACnB,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,sBAAsB;oBAC7B,WAAW,EAAE,kEAAkE;oBAC/E,OAAO,EAAE,EAAE;iBACZ;gBACD,wBAAwB,EAAE;oBACxB,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,4BAA4B;oBACnC,WAAW,EAAE,mEAAmE;oBAChF,OAAO,EAAE,EAAE;oBACX,UAAU,EAAE,MAAM;iBACnB;gBACD,yBAAyB,EAAE;oBACzB,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,6BAA6B;oBACpC,WAAW,EAAE,0DAA0D;oBACvE,OAAO,EAAE,EAAE;oBACX,UAAU,EAAE,MAAM;iBACnB;aACF;SACF;QAED,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,WAAW,EAAE,qCAAqC;aACnD;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,oBAAoB,EAAE,CAAC;AAE7B,QAAA,YAAY,GAAG;IAC1B,UAAU;IACV,QAAQ,EAAE,2BAAgB;CAC3B,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * DynamoDB put record service
3
+ */
4
+ import { DynamoDBConfig } from "../util/types";
5
+ import { AWSCredentials } from "../../shared/types";
6
+ export declare function putDynamoDBRecordService(config: DynamoDBConfig, credentials: AWSCredentials, logger: any): Promise<{
7
+ success: boolean;
8
+ itemId?: string;
9
+ }>;
10
+ //# sourceMappingURL=putRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"putRecord.d.ts","sourceRoot":"","sources":["../../../src/DynamoDB/service/putRecord.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,cAAc,EAC3B,MAAM,EAAE,GAAG,GACV,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAWhD"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ /**
3
+ * DynamoDB put record service
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.putDynamoDBRecordService = putDynamoDBRecordService;
7
+ const operations_1 = require("../../shared/operations");
8
+ async function putDynamoDBRecordService(config, credentials, logger) {
9
+ const putConfig = {
10
+ tableName: config.tableName,
11
+ record: config.record,
12
+ conditionExpression: config.conditionExpression,
13
+ expressionAttributeNames: config.expressionAttributeNames,
14
+ expressionAttributeValues: config.expressionAttributeValues,
15
+ };
16
+ return await (0, operations_1.putDynamoDBRecord)(putConfig, credentials, logger);
17
+ }
18
+ //# sourceMappingURL=putRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"putRecord.js","sourceRoot":"","sources":["../../../src/DynamoDB/service/putRecord.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAMH,4DAeC;AAlBD,wDAA4D;AAGrD,KAAK,UAAU,wBAAwB,CAC5C,MAAsB,EACtB,WAA2B,EAC3B,MAAW;IAGX,MAAM,SAAS,GAAG;QAChB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;QAC/C,wBAAwB,EAAE,MAAM,CAAC,wBAAwB;QACzD,yBAAyB,EAAE,MAAM,CAAC,yBAAyB;KAC5D,CAAC;IAEF,OAAO,MAAM,IAAA,8BAAiB,EAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Type definitions for DynamoDB node
3
+ */
4
+ export interface DynamoDBConfig {
5
+ tableName: string;
6
+ record: any;
7
+ conditionExpression?: string;
8
+ expressionAttributeNames?: Record<string, string>;
9
+ expressionAttributeValues?: Record<string, any>;
10
+ }
11
+ export interface DynamoDBOutput {
12
+ __outputs: {
13
+ success: boolean;
14
+ itemId?: string;
15
+ };
16
+ }
17
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/DynamoDB/util/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,GAAG,CAAC;IACZ,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,yBAAyB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjD;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE;QACT,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Type definitions for DynamoDB node
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/DynamoDB/util/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,12 @@
1
+ import { type NodeExecutionContext } from "@gravity-platform/plugin-base";
2
+ import { DynamoDBFetchConfig, DynamoDBFetchOutput } from "../util/types";
3
+ import { PromiseNode } from "../../shared/platform";
4
+ export declare class DynamoDBFetchExecutor extends PromiseNode<DynamoDBFetchConfig> {
5
+ constructor();
6
+ protected executeNode(inputs: Record<string, any>, config: DynamoDBFetchConfig, context: NodeExecutionContext): Promise<DynamoDBFetchOutput>;
7
+ /**
8
+ * Build credential context from execution context
9
+ */
10
+ private buildCredentialContext;
11
+ }
12
+ //# sourceMappingURL=executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/DynamoDBFetch/node/executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAgB,MAAM,uBAAuB,CAAC;AAIlE,qBAAa,qBAAsB,SAAQ,WAAW,CAAC,mBAAmB,CAAC;;cAKzD,WAAW,CACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC;IAoC/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAW/B"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamoDBFetchExecutor = void 0;
4
+ const fetchRecord_1 = require("../service/fetchRecord");
5
+ const platform_1 = require("../../shared/platform");
6
+ const NODE_TYPE = "DynamoDBFetch";
7
+ class DynamoDBFetchExecutor extends platform_1.PromiseNode {
8
+ constructor() {
9
+ super(NODE_TYPE);
10
+ }
11
+ async executeNode(inputs, config, context) {
12
+ const logger = (0, platform_1.createLogger)("DynamoDBFetch");
13
+ // Build credential context for service
14
+ const credentialContext = this.buildCredentialContext(context);
15
+ try {
16
+ const result = await (0, fetchRecord_1.fetchDynamoDBRecordService)(config, inputs, credentialContext.credentials?.awsCredential, logger);
17
+ logger.info("DynamoDBFetch execution completed", {
18
+ tableName: config.tableName,
19
+ found: result.found,
20
+ primaryKey: config.primaryKey
21
+ });
22
+ return {
23
+ __outputs: {
24
+ output: result.document || null,
25
+ found: result.found
26
+ }
27
+ };
28
+ }
29
+ catch (error) {
30
+ logger.error("DynamoDBFetch execution failed", {
31
+ error: error.message,
32
+ code: error.code,
33
+ stack: error.stack,
34
+ });
35
+ throw error;
36
+ }
37
+ }
38
+ /**
39
+ * Build credential context from execution context
40
+ */
41
+ buildCredentialContext(context) {
42
+ return {
43
+ credentials: {
44
+ awsCredential: context.credentials?.awsCredential || {},
45
+ },
46
+ nodeType: NODE_TYPE,
47
+ workflowId: context.workflow?.id || "",
48
+ executionId: context.executionId || "",
49
+ nodeId: context.nodeId || "",
50
+ };
51
+ }
52
+ }
53
+ exports.DynamoDBFetchExecutor = DynamoDBFetchExecutor;
54
+ //# sourceMappingURL=executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../src/DynamoDBFetch/node/executor.ts"],"names":[],"mappings":";;;AAEA,wDAAoE;AACpE,oDAAkE;AAElE,MAAM,SAAS,GAAG,eAAe,CAAC;AAElC,MAAa,qBAAsB,SAAQ,sBAAgC;IACzE;QACE,KAAK,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAES,KAAK,CAAC,WAAW,CACzB,MAA2B,EAC3B,MAA2B,EAC3B,OAA6B;QAE7B,MAAM,MAAM,GAAG,IAAA,uBAAY,EAAC,eAAe,CAAC,CAAC;QAE7C,uCAAuC;QACvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAA,wCAA0B,EAC7C,MAAM,EACN,MAAM,EACN,iBAAiB,CAAC,WAAW,EAAE,aAAa,EAC5C,MAAM,CACP,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC/C,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,CAAC,CAAC;YAEH,OAAO;gBACL,SAAS,EAAE;oBACT,MAAM,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI;oBAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE;gBAC7C,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,OAA6B;QAC1D,OAAO;YACL,WAAW,EAAE;gBACX,aAAa,EAAE,OAAO,CAAC,WAAW,EAAE,aAAa,IAAI,EAAE;aACxD;YACD,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE;YACtC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YACtC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;SAC7B,CAAC;IACJ,CAAC;CACF;AA3DD,sDA2DC"}
@@ -0,0 +1,10 @@
1
+ import { type EnhancedNodeDefinition } from "@gravity-platform/plugin-base";
2
+ import { DynamoDBFetchExecutor } from "./executor";
3
+ export declare const NODE_TYPE = "DynamoDBFetch";
4
+ declare function createNodeDefinition(): EnhancedNodeDefinition;
5
+ export declare const DynamoDBFetchNode: {
6
+ definition: any;
7
+ executor: typeof DynamoDBFetchExecutor;
8
+ };
9
+ export { createNodeDefinition };
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/DynamoDBFetch/node/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACrG,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,eAAO,MAAM,SAAS,kBAAkB,CAAC;AAEzC,iBAAS,oBAAoB,IAAI,sBAAsB,CAoEtD;AAID,eAAO,MAAM,iBAAiB;;;CAG7B,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamoDBFetchNode = exports.NODE_TYPE = void 0;
4
+ exports.createNodeDefinition = createNodeDefinition;
5
+ const plugin_base_1 = require("@gravity-platform/plugin-base");
6
+ const executor_1 = require("./executor");
7
+ exports.NODE_TYPE = "DynamoDBFetch";
8
+ function createNodeDefinition() {
9
+ const { NodeInputType } = (0, plugin_base_1.getPlatformDependencies)();
10
+ return {
11
+ packageVersion: "1.1.0",
12
+ type: exports.NODE_TYPE,
13
+ name: "DynamoDB Fetch",
14
+ description: "Fetch a record from AWS DynamoDB table by key",
15
+ category: "storage",
16
+ logoUrl: "https://res.cloudinary.com/sonik/image/upload/v1751473913/gravity/icons/DynamoDB.png",
17
+ color: "#4B61D1", // AWS DynamoDB Blue
18
+ inputs: [
19
+ {
20
+ name: "signal",
21
+ type: NodeInputType.OBJECT,
22
+ description: "Input Object",
23
+ },
24
+ ],
25
+ outputs: [
26
+ {
27
+ name: "output",
28
+ type: NodeInputType.OBJECT,
29
+ description: "The fetched record or null if not found",
30
+ },
31
+ {
32
+ name: "found",
33
+ type: NodeInputType.BOOLEAN,
34
+ description: "Whether the record was found",
35
+ },
36
+ ],
37
+ configSchema: {
38
+ type: "object",
39
+ properties: {
40
+ tableName: {
41
+ type: "string",
42
+ title: "Table Name",
43
+ description: "The name of the DynamoDB table",
44
+ },
45
+ primaryKey: {
46
+ type: "string",
47
+ title: "Primary Key Field",
48
+ description: "The field name for the primary key (partition key)",
49
+ default: "universalId",
50
+ "ui:field": "template",
51
+ },
52
+ sortKey: {
53
+ type: "string",
54
+ title: "Sort Key Field",
55
+ description: "The field name for the sort key (optional)",
56
+ default: "",
57
+ "ui:field": "template",
58
+ },
59
+ },
60
+ required: ["tableName", "primaryKey"],
61
+ },
62
+ credentials: [
63
+ {
64
+ name: "awsCredential",
65
+ required: true,
66
+ displayName: "AWS",
67
+ description: "AWS credentials for DynamoDB access",
68
+ },
69
+ ],
70
+ };
71
+ }
72
+ const definition = createNodeDefinition();
73
+ exports.DynamoDBFetchNode = {
74
+ definition,
75
+ executor: executor_1.DynamoDBFetchExecutor,
76
+ };
77
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/DynamoDBFetch/node/index.ts"],"names":[],"mappings":";;;AAkFS,oDAAoB;AAlF7B,+DAAqG;AACrG,yCAAmD;AAEtC,QAAA,SAAS,GAAG,eAAe,CAAC;AAEzC,SAAS,oBAAoB;IAC3B,MAAM,EAAE,aAAa,EAAE,GAAG,IAAA,qCAAuB,GAAE,CAAC;IAEpD,OAAO;QACL,cAAc,EAAE,OAAO;QACvB,IAAI,EAAE,iBAAS;QACf,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,SAAS;QACnB,OAAO,EAAE,sFAAsF;QAC/F,KAAK,EAAE,SAAS,EAAE,oBAAoB;QAEtC,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,aAAa,CAAC,MAAM;gBAC1B,WAAW,EAAE,cAAc;aAC5B;SACF;QAED,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,aAAa,CAAC,MAAM;gBAC1B,WAAW,EAAE,yCAAyC;aACvD;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,aAAa,CAAC,OAAO;gBAC3B,WAAW,EAAE,8BAA8B;aAC5C;SACF;QAED,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,YAAY;oBACnB,WAAW,EAAE,gCAAgC;iBAC9C;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,mBAAmB;oBAC1B,WAAW,EAAE,oDAAoD;oBACjE,OAAO,EAAE,aAAa;oBACtB,UAAU,EAAE,UAAU;iBACvB;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,gBAAgB;oBACvB,WAAW,EAAE,4CAA4C;oBACzD,OAAO,EAAE,EAAE;oBACX,UAAU,EAAE,UAAU;iBACvB;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;SACtC;QAED,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,WAAW,EAAE,qCAAqC;aACnD;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,oBAAoB,EAAE,CAAC;AAE7B,QAAA,iBAAiB,GAAG;IAC/B,UAAU;IACV,QAAQ,EAAE,gCAAqB;CAChC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * DynamoDB fetch record service
3
+ */
4
+ import { DynamoDBFetchConfig } from "../util/types";
5
+ import { AWSCredentials } from "../../shared/types";
6
+ export declare function fetchDynamoDBRecordService(config: DynamoDBFetchConfig, inputs: Record<string, any>, credentials: AWSCredentials, logger: any): Promise<{
7
+ success: boolean;
8
+ found: boolean;
9
+ document?: any;
10
+ }>;
11
+ //# sourceMappingURL=fetchRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchRecord.d.ts","sourceRoot":"","sources":["../../../src/DynamoDBFetch/service/fetchRecord.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,WAAW,EAAE,cAAc,EAC3B,MAAM,EAAE,GAAG,GACV,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC,CAyB/D"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ /**
3
+ * DynamoDB fetch record service
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.fetchDynamoDBRecordService = fetchDynamoDBRecordService;
7
+ const operations_1 = require("../../shared/operations");
8
+ async function fetchDynamoDBRecordService(config, inputs, credentials, logger) {
9
+ // Build the key from inputs and config
10
+ const key = {};
11
+ // Get primary key value from inputs
12
+ if (config.primaryKey && inputs[config.primaryKey]) {
13
+ key[config.primaryKey] = inputs[config.primaryKey];
14
+ }
15
+ // Get sort key value from inputs if specified
16
+ if (config.sortKey && inputs[config.sortKey]) {
17
+ key[config.sortKey] = inputs[config.sortKey];
18
+ }
19
+ if (Object.keys(key).length === 0) {
20
+ throw new Error('No key values found in inputs for DynamoDB fetch');
21
+ }
22
+ const getConfig = {
23
+ tableName: config.tableName,
24
+ key,
25
+ };
26
+ return await (0, operations_1.getDynamoDBDocument)(getConfig, credentials, logger);
27
+ }
28
+ //# sourceMappingURL=fetchRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchRecord.js","sourceRoot":"","sources":["../../../src/DynamoDBFetch/service/fetchRecord.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAMH,gEA8BC;AAjCD,wDAA8D;AAGvD,KAAK,UAAU,0BAA0B,CAC9C,MAA2B,EAC3B,MAA2B,EAC3B,WAA2B,EAC3B,MAAW;IAGX,uCAAuC;IACvC,MAAM,GAAG,GAAwB,EAAE,CAAC;IAEpC,oCAAoC;IACpC,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC;IAED,8CAA8C;IAC9C,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,SAAS,GAAG;QAChB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,GAAG;KACJ,CAAC;IAEF,OAAO,MAAM,IAAA,gCAAmB,EAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;AACnE,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Type definitions for DynamoDBFetch node
3
+ */
4
+ export interface DynamoDBFetchConfig {
5
+ tableName: string;
6
+ primaryKey: string;
7
+ sortKey?: string;
8
+ }
9
+ export interface DynamoDBFetchOutput {
10
+ __outputs: {
11
+ output: any;
12
+ found: boolean;
13
+ };
14
+ }
15
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/DynamoDBFetch/util/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE;QACT,MAAM,EAAE,GAAG,CAAC;QACZ,KAAK,EAAE,OAAO,CAAC;KAChB,CAAC;CACH"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Type definitions for DynamoDBFetch node
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/DynamoDBFetch/util/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,12 @@
1
+ import { type NodeExecutionContext } from "@gravity-platform/plugin-base";
2
+ import { DynamoDBServiceConfig, DynamoDBServiceOutput } from "../util/types";
3
+ import { PromiseNode } from "../../shared/platform";
4
+ export declare class DynamoDBServiceExecutor extends PromiseNode<DynamoDBServiceConfig> {
5
+ constructor();
6
+ protected executeNode(inputs: Record<string, any>, config: DynamoDBServiceConfig, context: NodeExecutionContext): Promise<DynamoDBServiceOutput>;
7
+ /**
8
+ * Build credential context from execution context
9
+ */
10
+ private buildCredentialContext;
11
+ }
12
+ //# sourceMappingURL=executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/DynamoDBService/node/executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAgB,MAAM,uBAAuB,CAAC;AAKlE,qBAAa,uBAAwB,SAAQ,WAAW,CAAC,qBAAqB,CAAC;;cAK7D,WAAW,CACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAgCjC;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAW/B"}