@ftschopp/dynatable-core 1.0.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.
- package/CHANGELOG.md +62 -0
- package/README.md +17 -0
- package/dist/builders/batch-get/create-batch-get-builder.d.ts +18 -0
- package/dist/builders/batch-get/create-batch-get-builder.d.ts.map +1 -0
- package/dist/builders/batch-get/create-batch-get-builder.js +71 -0
- package/dist/builders/batch-get/index.d.ts +3 -0
- package/dist/builders/batch-get/index.d.ts.map +1 -0
- package/dist/builders/batch-get/index.js +18 -0
- package/dist/builders/batch-get/types.d.ts +25 -0
- package/dist/builders/batch-get/types.d.ts.map +1 -0
- package/dist/builders/batch-get/types.js +2 -0
- package/dist/builders/batch-write/create-batch-write-builder.d.ts +12 -0
- package/dist/builders/batch-write/create-batch-write-builder.d.ts.map +1 -0
- package/dist/builders/batch-write/create-batch-write-builder.js +35 -0
- package/dist/builders/batch-write/index.d.ts +3 -0
- package/dist/builders/batch-write/index.d.ts.map +1 -0
- package/dist/builders/batch-write/index.js +18 -0
- package/dist/builders/batch-write/types.d.ts +30 -0
- package/dist/builders/batch-write/types.d.ts.map +1 -0
- package/dist/builders/batch-write/types.js +2 -0
- package/dist/builders/delete/create-delete-builder.d.ts +9 -0
- package/dist/builders/delete/create-delete-builder.d.ts.map +1 -0
- package/dist/builders/delete/create-delete-builder.js +72 -0
- package/dist/builders/delete/index.d.ts +3 -0
- package/dist/builders/delete/index.d.ts.map +1 -0
- package/dist/builders/delete/index.js +18 -0
- package/dist/builders/delete/types.d.ts +11 -0
- package/dist/builders/delete/types.d.ts.map +1 -0
- package/dist/builders/delete/types.js +2 -0
- package/dist/builders/get/create-get-builder.d.ts +12 -0
- package/dist/builders/get/create-get-builder.d.ts.map +1 -0
- package/dist/builders/get/create-get-builder.js +95 -0
- package/dist/builders/get/index.d.ts +3 -0
- package/dist/builders/get/index.d.ts.map +1 -0
- package/dist/builders/get/index.js +18 -0
- package/dist/builders/get/types.d.ts +28 -0
- package/dist/builders/get/types.d.ts.map +1 -0
- package/dist/builders/get/types.js +2 -0
- package/dist/builders/index.d.ts +12 -0
- package/dist/builders/index.d.ts.map +1 -0
- package/dist/builders/index.js +29 -0
- package/dist/builders/put/create-put-builder.d.ts +9 -0
- package/dist/builders/put/create-put-builder.d.ts.map +1 -0
- package/dist/builders/put/create-put-builder.js +104 -0
- package/dist/builders/put/index.d.ts +3 -0
- package/dist/builders/put/index.d.ts.map +1 -0
- package/dist/builders/put/index.js +18 -0
- package/dist/builders/put/types.d.ts +17 -0
- package/dist/builders/put/types.d.ts.map +1 -0
- package/dist/builders/put/types.js +2 -0
- package/dist/builders/query/create-query-builder.d.ts +9 -0
- package/dist/builders/query/create-query-builder.d.ts.map +1 -0
- package/dist/builders/query/create-query-builder.js +283 -0
- package/dist/builders/query/index.d.ts +3 -0
- package/dist/builders/query/index.d.ts.map +1 -0
- package/dist/builders/query/index.js +18 -0
- package/dist/builders/query/types.d.ts +79 -0
- package/dist/builders/query/types.d.ts.map +1 -0
- package/dist/builders/query/types.js +2 -0
- package/dist/builders/scan/create-scan-builder.d.ts +12 -0
- package/dist/builders/scan/create-scan-builder.d.ts.map +1 -0
- package/dist/builders/scan/create-scan-builder.js +103 -0
- package/dist/builders/scan/index.d.ts +3 -0
- package/dist/builders/scan/index.d.ts.map +1 -0
- package/dist/builders/scan/index.js +18 -0
- package/dist/builders/scan/types.d.ts +43 -0
- package/dist/builders/scan/types.d.ts.map +1 -0
- package/dist/builders/scan/types.js +2 -0
- package/dist/builders/shared/conditions.d.ts +18 -0
- package/dist/builders/shared/conditions.d.ts.map +1 -0
- package/dist/builders/shared/conditions.js +48 -0
- package/dist/builders/shared/index.d.ts +4 -0
- package/dist/builders/shared/index.d.ts.map +1 -0
- package/dist/builders/shared/index.js +19 -0
- package/dist/builders/shared/operators.d.ts +12 -0
- package/dist/builders/shared/operators.d.ts.map +1 -0
- package/dist/builders/shared/operators.js +197 -0
- package/dist/builders/shared/types.d.ts +77 -0
- package/dist/builders/shared/types.d.ts.map +1 -0
- package/dist/builders/shared/types.js +6 -0
- package/dist/builders/transact-get/create-transact-get-builder.d.ts +18 -0
- package/dist/builders/transact-get/create-transact-get-builder.d.ts.map +1 -0
- package/dist/builders/transact-get/create-transact-get-builder.js +60 -0
- package/dist/builders/transact-get/index.d.ts +3 -0
- package/dist/builders/transact-get/index.d.ts.map +1 -0
- package/dist/builders/transact-get/index.js +18 -0
- package/dist/builders/transact-get/types.d.ts +28 -0
- package/dist/builders/transact-get/types.d.ts.map +1 -0
- package/dist/builders/transact-get/types.js +2 -0
- package/dist/builders/transact-write/create-transact-write-builder.d.ts +18 -0
- package/dist/builders/transact-write/create-transact-write-builder.d.ts.map +1 -0
- package/dist/builders/transact-write/create-transact-write-builder.js +97 -0
- package/dist/builders/transact-write/index.d.ts +3 -0
- package/dist/builders/transact-write/index.d.ts.map +1 -0
- package/dist/builders/transact-write/index.js +18 -0
- package/dist/builders/transact-write/types.d.ts +34 -0
- package/dist/builders/transact-write/types.d.ts.map +1 -0
- package/dist/builders/transact-write/types.js +2 -0
- package/dist/builders/update/create-update-builder.d.ts +14 -0
- package/dist/builders/update/create-update-builder.d.ts.map +1 -0
- package/dist/builders/update/create-update-builder.js +180 -0
- package/dist/builders/update/index.d.ts +3 -0
- package/dist/builders/update/index.d.ts.map +1 -0
- package/dist/builders/update/index.js +18 -0
- package/dist/builders/update/types.d.ts +35 -0
- package/dist/builders/update/types.d.ts.map +1 -0
- package/dist/builders/update/types.js +2 -0
- package/dist/core/types.d.ts +224 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +3 -0
- package/dist/entity.d.ts +73 -0
- package/dist/entity.d.ts.map +1 -0
- package/dist/entity.js +161 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/table.d.ts +70 -0
- package/dist/table.d.ts.map +1 -0
- package/dist/table.js +69 -0
- package/dist/utils/dynamodb-logger.d.ts +118 -0
- package/dist/utils/dynamodb-logger.d.ts.map +1 -0
- package/dist/utils/dynamodb-logger.js +125 -0
- package/dist/utils/model-utils.d.ts +24 -0
- package/dist/utils/model-utils.d.ts.map +1 -0
- package/dist/utils/model-utils.js +88 -0
- package/dist/utils/zod-utils.d.ts +13 -0
- package/dist/utils/zod-utils.d.ts.map +1 -0
- package/dist/utils/zod-utils.js +35 -0
- package/eslint.config.mjs +4 -0
- package/jest.config.js +11 -0
- package/package.json +36 -0
- package/src/builders/README.md +272 -0
- package/src/builders/batch-get/README.md +98 -0
- package/src/builders/batch-get/create-batch-get-builder.test.ts +165 -0
- package/src/builders/batch-get/create-batch-get-builder.ts +106 -0
- package/src/builders/batch-get/index.ts +2 -0
- package/src/builders/batch-get/types.ts +29 -0
- package/src/builders/batch-write/README.md +204 -0
- package/src/builders/batch-write/create-batch-write-builder.test.ts +173 -0
- package/src/builders/batch-write/create-batch-write-builder.ts +49 -0
- package/src/builders/batch-write/index.ts +2 -0
- package/src/builders/batch-write/types.ts +33 -0
- package/src/builders/delete/create-delete-builder.test.ts +294 -0
- package/src/builders/delete/create-delete-builder.ts +100 -0
- package/src/builders/delete/index.ts +2 -0
- package/src/builders/delete/types.ts +11 -0
- package/src/builders/get/create-get-builder.test.ts +272 -0
- package/src/builders/get/create-get-builder.ts +140 -0
- package/src/builders/get/index.ts +2 -0
- package/src/builders/get/types.ts +30 -0
- package/src/builders/index.ts +14 -0
- package/src/builders/put/create-put-builder.test.ts +213 -0
- package/src/builders/put/create-put-builder.ts +151 -0
- package/src/builders/put/index.ts +2 -0
- package/src/builders/put/types.ts +18 -0
- package/src/builders/query/create-query-builder.test.ts +230 -0
- package/src/builders/query/create-query-builder.ts +353 -0
- package/src/builders/query/index.ts +2 -0
- package/src/builders/query/types.ts +95 -0
- package/src/builders/scan/create-scan-builder.test.ts +260 -0
- package/src/builders/scan/create-scan-builder.ts +217 -0
- package/src/builders/scan/index.ts +2 -0
- package/src/builders/scan/types.ts +49 -0
- package/src/builders/shared/conditions.ts +58 -0
- package/src/builders/shared/index.ts +3 -0
- package/src/builders/shared/operators.test.ts +270 -0
- package/src/builders/shared/operators.ts +200 -0
- package/src/builders/shared/types.ts +100 -0
- package/src/builders/transact-get/README.md +167 -0
- package/src/builders/transact-get/create-transact-get-builder.test.ts +239 -0
- package/src/builders/transact-get/create-transact-get-builder.ts +67 -0
- package/src/builders/transact-get/index.ts +2 -0
- package/src/builders/transact-get/types.ts +31 -0
- package/src/builders/transact-write/README.md +166 -0
- package/src/builders/transact-write/create-transact-write-builder.test.ts +288 -0
- package/src/builders/transact-write/create-transact-write-builder.ts +118 -0
- package/src/builders/transact-write/index.ts +2 -0
- package/src/builders/transact-write/types.ts +33 -0
- package/src/builders/update/create-update-builder.test.ts +333 -0
- package/src/builders/update/create-update-builder.ts +284 -0
- package/src/builders/update/index.ts +2 -0
- package/src/builders/update/types.ts +42 -0
- package/src/core/types.test.ts +506 -0
- package/src/core/types.ts +290 -0
- package/src/entity.ts +337 -0
- package/src/index.ts +22 -0
- package/src/table.ts +109 -0
- package/src/utils/dynamodb-logger.test.ts +246 -0
- package/src/utils/dynamodb-logger.ts +175 -0
- package/src/utils/model-utils.test.ts +232 -0
- package/src/utils/model-utils.ts +101 -0
- package/src/utils/zod-utils.test.ts +272 -0
- package/src/utils/zod-utils.ts +36 -0
- package/tests/integration/instagram-clone.integration.test.ts +966 -0
- package/tests/integration/pagination-timestamps.integration.test.ts +375 -0
- package/tests/integration/transactions.integration.test.ts +529 -0
- package/tsconfig.json +12 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createTransactGetBuilder = void 0;
|
|
4
|
+
const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
|
|
5
|
+
/**
|
|
6
|
+
* Creates the initial state for a TransactGet builder
|
|
7
|
+
*/
|
|
8
|
+
const createInitialState = (client) => ({
|
|
9
|
+
client,
|
|
10
|
+
items: [],
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* Adds a Get operation to the transaction
|
|
14
|
+
*/
|
|
15
|
+
const addGetItem = (state) => (params) => ({
|
|
16
|
+
...state,
|
|
17
|
+
items: [...state.items, { Get: params }],
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* Converts the builder state to DynamoDB parameters
|
|
21
|
+
*/
|
|
22
|
+
const toDbParams = (state) => ({
|
|
23
|
+
TransactItems: [...state.items],
|
|
24
|
+
});
|
|
25
|
+
/**
|
|
26
|
+
* Executes the transaction and returns the items
|
|
27
|
+
*/
|
|
28
|
+
const execute = async (state) => {
|
|
29
|
+
const params = toDbParams(state);
|
|
30
|
+
const command = new lib_dynamodb_1.TransactGetCommand(params);
|
|
31
|
+
const response = await state.client.send(command);
|
|
32
|
+
return response.Responses?.map((r) => r.Item) || [];
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Creates a builder from the current state
|
|
36
|
+
*/
|
|
37
|
+
const createBuilder = (state) => ({
|
|
38
|
+
addGet: (params) => createBuilder(addGetItem(state)(params)),
|
|
39
|
+
dbParams: () => toDbParams(state),
|
|
40
|
+
execute: () => execute(state),
|
|
41
|
+
});
|
|
42
|
+
/**
|
|
43
|
+
* Creates a new TransactGet builder
|
|
44
|
+
*
|
|
45
|
+
* @param client - DynamoDB client instance
|
|
46
|
+
* @returns A TransactGetBuilder
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```typescript
|
|
50
|
+
* const [user, photo] = await createTransactGetBuilder(client)
|
|
51
|
+
* .addGet(getUserParams)
|
|
52
|
+
* .addGet(getPhotoParams)
|
|
53
|
+
* .execute();
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
const createTransactGetBuilder = (client) => {
|
|
57
|
+
const initialState = createInitialState(client);
|
|
58
|
+
return createBuilder(initialState);
|
|
59
|
+
};
|
|
60
|
+
exports.createTransactGetBuilder = createTransactGetBuilder;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/builders/transact-get/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./types"), exports);
|
|
18
|
+
__exportStar(require("./create-transact-get-builder"), exports);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
/**
|
|
3
|
+
* Represents a single Get operation in a TransactGet
|
|
4
|
+
*/
|
|
5
|
+
export type TransactGetItem = {
|
|
6
|
+
Get: {
|
|
7
|
+
TableName: string;
|
|
8
|
+
Key: Record<string, any>;
|
|
9
|
+
ProjectionExpression?: string;
|
|
10
|
+
ExpressionAttributeNames?: Record<string, string>;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* State for the TransactGet builder
|
|
15
|
+
*/
|
|
16
|
+
export type TransactGetState = {
|
|
17
|
+
readonly client: DynamoDBClient;
|
|
18
|
+
readonly items: readonly TransactGetItem[];
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* TransactGet builder interface
|
|
22
|
+
*/
|
|
23
|
+
export type TransactGetBuilder = {
|
|
24
|
+
readonly addGet: (params: any) => TransactGetBuilder;
|
|
25
|
+
readonly dbParams: () => any;
|
|
26
|
+
readonly execute: () => Promise<any[]>;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/builders/transact-get/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,EAAE;QACH,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACnD,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;CAC5C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,kBAAkB,CAAC;IACrD,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;CACxC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { TransactWriteBuilder } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Creates a new TransactWrite builder
|
|
5
|
+
*
|
|
6
|
+
* @param client - DynamoDB client instance
|
|
7
|
+
* @returns A TransactWriteBuilder
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* const result = await createTransactWriteBuilder(client)
|
|
12
|
+
* .addPut(putParams)
|
|
13
|
+
* .addUpdate(updateParams)
|
|
14
|
+
* .execute();
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare const createTransactWriteBuilder: (client: DynamoDBClient) => TransactWriteBuilder;
|
|
18
|
+
//# sourceMappingURL=create-transact-write-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-transact-write-builder.d.ts","sourceRoot":"","sources":["../../../src/builders/transact-write/create-transact-write-builder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAsB,MAAM,SAAS,CAAC;AAiGnE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,0BAA0B,GAAI,QAAQ,cAAc,KAAG,oBAGnE,CAAC"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createTransactWriteBuilder = void 0;
|
|
4
|
+
const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
|
|
5
|
+
/**
|
|
6
|
+
* Creates the initial state for a TransactWrite builder
|
|
7
|
+
*/
|
|
8
|
+
const createInitialState = (client) => ({
|
|
9
|
+
client,
|
|
10
|
+
items: [],
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* Adds a Put operation to the transaction
|
|
14
|
+
*/
|
|
15
|
+
const addPutItem = (state) => (params) => ({
|
|
16
|
+
...state,
|
|
17
|
+
items: [...state.items, { Put: params }],
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* Adds an Update operation to the transaction
|
|
21
|
+
*/
|
|
22
|
+
const addUpdateItem = (state) => (params) => ({
|
|
23
|
+
...state,
|
|
24
|
+
items: [...state.items, { Update: params }],
|
|
25
|
+
});
|
|
26
|
+
/**
|
|
27
|
+
* Adds a Delete operation to the transaction
|
|
28
|
+
*/
|
|
29
|
+
const addDeleteItem = (state) => (params) => ({
|
|
30
|
+
...state,
|
|
31
|
+
items: [...state.items, { Delete: params }],
|
|
32
|
+
});
|
|
33
|
+
/**
|
|
34
|
+
* Adds a ConditionCheck operation to the transaction
|
|
35
|
+
*/
|
|
36
|
+
const addConditionCheckItem = (state) => (params) => ({
|
|
37
|
+
...state,
|
|
38
|
+
items: [...state.items, { ConditionCheck: params }],
|
|
39
|
+
});
|
|
40
|
+
/**
|
|
41
|
+
* Sets the client request token for idempotency
|
|
42
|
+
*/
|
|
43
|
+
const setClientRequestToken = (state) => (token) => ({
|
|
44
|
+
...state,
|
|
45
|
+
clientRequestToken: token,
|
|
46
|
+
});
|
|
47
|
+
/**
|
|
48
|
+
* Converts the builder state to DynamoDB parameters
|
|
49
|
+
*/
|
|
50
|
+
const toDbParams = (state) => {
|
|
51
|
+
const params = {
|
|
52
|
+
TransactItems: state.items,
|
|
53
|
+
};
|
|
54
|
+
if (state.clientRequestToken) {
|
|
55
|
+
params.ClientRequestToken = state.clientRequestToken;
|
|
56
|
+
}
|
|
57
|
+
return params;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Executes the transaction
|
|
61
|
+
*/
|
|
62
|
+
const execute = async (state) => {
|
|
63
|
+
const params = toDbParams(state);
|
|
64
|
+
const command = new lib_dynamodb_1.TransactWriteCommand(params);
|
|
65
|
+
return await state.client.send(command);
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Creates a builder from the current state
|
|
69
|
+
*/
|
|
70
|
+
const createBuilder = (state) => ({
|
|
71
|
+
addPut: (params) => createBuilder(addPutItem(state)(params)),
|
|
72
|
+
addUpdate: (params) => createBuilder(addUpdateItem(state)(params)),
|
|
73
|
+
addDelete: (params) => createBuilder(addDeleteItem(state)(params)),
|
|
74
|
+
addConditionCheck: (params) => createBuilder(addConditionCheckItem(state)(params)),
|
|
75
|
+
withClientRequestToken: (token) => createBuilder(setClientRequestToken(state)(token)),
|
|
76
|
+
dbParams: () => toDbParams(state),
|
|
77
|
+
execute: () => execute(state),
|
|
78
|
+
});
|
|
79
|
+
/**
|
|
80
|
+
* Creates a new TransactWrite builder
|
|
81
|
+
*
|
|
82
|
+
* @param client - DynamoDB client instance
|
|
83
|
+
* @returns A TransactWriteBuilder
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```typescript
|
|
87
|
+
* const result = await createTransactWriteBuilder(client)
|
|
88
|
+
* .addPut(putParams)
|
|
89
|
+
* .addUpdate(updateParams)
|
|
90
|
+
* .execute();
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
const createTransactWriteBuilder = (client) => {
|
|
94
|
+
const initialState = createInitialState(client);
|
|
95
|
+
return createBuilder(initialState);
|
|
96
|
+
};
|
|
97
|
+
exports.createTransactWriteBuilder = createTransactWriteBuilder;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/builders/transact-write/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,iCAAiC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./types"), exports);
|
|
18
|
+
__exportStar(require("./create-transact-write-builder"), exports);
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
/**
|
|
3
|
+
* Represents a single item in a TransactWrite operation
|
|
4
|
+
*/
|
|
5
|
+
export type TransactWriteItem = {
|
|
6
|
+
Put: any;
|
|
7
|
+
} | {
|
|
8
|
+
Update: any;
|
|
9
|
+
} | {
|
|
10
|
+
Delete: any;
|
|
11
|
+
} | {
|
|
12
|
+
ConditionCheck: any;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* State for the TransactWrite builder
|
|
16
|
+
*/
|
|
17
|
+
export type TransactWriteState = {
|
|
18
|
+
readonly client: DynamoDBClient;
|
|
19
|
+
readonly items: readonly TransactWriteItem[];
|
|
20
|
+
readonly clientRequestToken?: string;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* TransactWrite builder interface
|
|
24
|
+
*/
|
|
25
|
+
export type TransactWriteBuilder = {
|
|
26
|
+
readonly addPut: (params: any) => TransactWriteBuilder;
|
|
27
|
+
readonly addUpdate: (params: any) => TransactWriteBuilder;
|
|
28
|
+
readonly addDelete: (params: any) => TransactWriteBuilder;
|
|
29
|
+
readonly addConditionCheck: (params: any) => TransactWriteBuilder;
|
|
30
|
+
readonly withClientRequestToken: (token: string) => TransactWriteBuilder;
|
|
31
|
+
readonly dbParams: () => any;
|
|
32
|
+
readonly execute: () => Promise<any>;
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/builders/transact-write/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB;IAAE,GAAG,EAAE,GAAG,CAAA;CAAE,GACZ;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GACf;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GACf;IAAE,cAAc,EAAE,GAAG,CAAA;CAAE,CAAC;AAE5B;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC7C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,oBAAoB,CAAC;IACvD,QAAQ,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,oBAAoB,CAAC;IAC1D,QAAQ,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,oBAAoB,CAAC;IAC1D,QAAQ,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,oBAAoB,CAAC;IAClE,QAAQ,CAAC,sBAAsB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,oBAAoB,CAAC;IACzE,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;CACtC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { Condition } from '../shared';
|
|
3
|
+
import { UpdateBuilder, UpdateAction } from './types';
|
|
4
|
+
import { DynamoDBLogger } from '../../utils/dynamodb-logger';
|
|
5
|
+
/**
|
|
6
|
+
* Creates an UpdateBuilder for an item key and table.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createUpdateBuilder<Model>(tableName: string, key: Partial<Model>, client: DynamoDBClient, prevConditions?: Condition[], updateActions?: {
|
|
9
|
+
set: UpdateAction[];
|
|
10
|
+
remove: UpdateAction[];
|
|
11
|
+
add: UpdateAction[];
|
|
12
|
+
delete: UpdateAction[];
|
|
13
|
+
}, returnMode?: 'NONE' | 'ALL_OLD' | 'ALL_NEW' | 'UPDATED_OLD' | 'UPDATED_NEW', valueCounter?: number, enableTimestamps?: boolean, logger?: DynamoDBLogger): UpdateBuilder<Model>;
|
|
14
|
+
//# sourceMappingURL=create-update-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-update-builder.d.ts","sourceRoot":"","sources":["../../../src/builders/update/create-update-builder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAgC,SAAS,EAA4B,MAAM,WAAW,CAAC;AAC9F,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EACvC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,EACnB,MAAM,EAAE,cAAc,EACtB,cAAc,GAAE,SAAS,EAAO,EAChC,aAAa,GAAE;IACb,GAAG,EAAE,YAAY,EAAE,CAAC;IACpB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,GAAG,EAAE,YAAY,EAAE,CAAC;IACpB,MAAM,EAAE,YAAY,EAAE,CAAC;CACuB,EAChD,UAAU,GAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,GAAG,aAAsB,EACnF,YAAY,SAAI,EAChB,gBAAgB,UAAQ,EACxB,MAAM,CAAC,EAAE,cAAc,GACtB,aAAa,CAAC,KAAK,CAAC,CAkQtB"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createUpdateBuilder = createUpdateBuilder;
|
|
4
|
+
const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
|
|
5
|
+
const shared_1 = require("../shared");
|
|
6
|
+
/**
|
|
7
|
+
* Creates an UpdateBuilder for an item key and table.
|
|
8
|
+
*/
|
|
9
|
+
function createUpdateBuilder(tableName, key, client, prevConditions = [], updateActions = { set: [], remove: [], add: [], delete: [] }, returnMode = 'NONE', valueCounter = 0, enableTimestamps = false, logger) {
|
|
10
|
+
const conditions = [...prevConditions];
|
|
11
|
+
const getUniqueValueName = (baseName) => {
|
|
12
|
+
return `${baseName}_${valueCounter++}`;
|
|
13
|
+
};
|
|
14
|
+
const normalizeAttr = (attr) => {
|
|
15
|
+
if (typeof attr === 'string') {
|
|
16
|
+
return attr;
|
|
17
|
+
}
|
|
18
|
+
return attr.name;
|
|
19
|
+
};
|
|
20
|
+
const build = () => ({
|
|
21
|
+
where(fn) {
|
|
22
|
+
const attrs = new Proxy({}, {
|
|
23
|
+
get(_, prop) {
|
|
24
|
+
return { name: prop };
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
const opBuilder = (0, shared_1.createOpBuilder)();
|
|
28
|
+
const condition = fn(attrs, opBuilder);
|
|
29
|
+
return createUpdateBuilder(tableName, key, client, [...conditions, condition], updateActions, returnMode, valueCounter, enableTimestamps, logger);
|
|
30
|
+
},
|
|
31
|
+
set(attr, value) {
|
|
32
|
+
const attrName = normalizeAttr(attr);
|
|
33
|
+
const valueName = getUniqueValueName(attrName);
|
|
34
|
+
const action = {
|
|
35
|
+
expression: `#${attrName} = :${valueName}`,
|
|
36
|
+
names: { [`#${attrName}`]: attrName },
|
|
37
|
+
values: { [`:${valueName}`]: value },
|
|
38
|
+
};
|
|
39
|
+
return createUpdateBuilder(tableName, key, client, conditions, { ...updateActions, set: [...updateActions.set, action] }, returnMode, valueCounter, enableTimestamps, logger);
|
|
40
|
+
},
|
|
41
|
+
remove(attr) {
|
|
42
|
+
const attrName = normalizeAttr(attr);
|
|
43
|
+
const action = {
|
|
44
|
+
expression: `#${attrName}`,
|
|
45
|
+
names: { [`#${attrName}`]: attrName },
|
|
46
|
+
};
|
|
47
|
+
return createUpdateBuilder(tableName, key, client, conditions, { ...updateActions, remove: [...updateActions.remove, action] }, returnMode, valueCounter, enableTimestamps, logger);
|
|
48
|
+
},
|
|
49
|
+
add(attr, value) {
|
|
50
|
+
const attrName = normalizeAttr(attr);
|
|
51
|
+
const valueName = getUniqueValueName(attrName);
|
|
52
|
+
const action = {
|
|
53
|
+
expression: `#${attrName} :${valueName}`,
|
|
54
|
+
names: { [`#${attrName}`]: attrName },
|
|
55
|
+
values: { [`:${valueName}`]: value },
|
|
56
|
+
};
|
|
57
|
+
return createUpdateBuilder(tableName, key, client, conditions, { ...updateActions, add: [...updateActions.add, action] }, returnMode, valueCounter, enableTimestamps, logger);
|
|
58
|
+
},
|
|
59
|
+
delete(attr, value) {
|
|
60
|
+
const attrName = normalizeAttr(attr);
|
|
61
|
+
const valueName = getUniqueValueName(attrName);
|
|
62
|
+
const action = {
|
|
63
|
+
expression: `#${attrName} :${valueName}`,
|
|
64
|
+
names: { [`#${attrName}`]: attrName },
|
|
65
|
+
values: { [`:${valueName}`]: value },
|
|
66
|
+
};
|
|
67
|
+
return createUpdateBuilder(tableName, key, client, conditions, { ...updateActions, delete: [...updateActions.delete, action] }, returnMode, valueCounter, enableTimestamps, logger);
|
|
68
|
+
},
|
|
69
|
+
returning(mode) {
|
|
70
|
+
return createUpdateBuilder(tableName, key, client, conditions, updateActions, mode, valueCounter, enableTimestamps, logger);
|
|
71
|
+
},
|
|
72
|
+
dbParams() {
|
|
73
|
+
// Build UpdateExpression from actions
|
|
74
|
+
const updateParts = [];
|
|
75
|
+
const allNames = {};
|
|
76
|
+
const allValues = {};
|
|
77
|
+
// Clone updateActions to avoid mutation
|
|
78
|
+
const actionsToProcess = { ...updateActions };
|
|
79
|
+
// Add updatedAt timestamp if enabled
|
|
80
|
+
if (enableTimestamps) {
|
|
81
|
+
const now = new Date().toISOString();
|
|
82
|
+
const timestampAction = {
|
|
83
|
+
expression: `#updatedAt = :updatedAt_ts`,
|
|
84
|
+
names: { '#updatedAt': 'updatedAt' },
|
|
85
|
+
values: { ':updatedAt_ts': now },
|
|
86
|
+
};
|
|
87
|
+
actionsToProcess.set = [...actionsToProcess.set, timestampAction];
|
|
88
|
+
}
|
|
89
|
+
if (actionsToProcess.set.length > 0) {
|
|
90
|
+
const setExpressions = actionsToProcess.set.map((action) => {
|
|
91
|
+
Object.assign(allNames, action.names || {});
|
|
92
|
+
Object.assign(allValues, action.values || {});
|
|
93
|
+
return action.expression;
|
|
94
|
+
});
|
|
95
|
+
updateParts.push(`SET ${setExpressions.join(', ')}`);
|
|
96
|
+
}
|
|
97
|
+
if (updateActions.remove.length > 0) {
|
|
98
|
+
const removeExpressions = updateActions.remove.map((action) => {
|
|
99
|
+
Object.assign(allNames, action.names || {});
|
|
100
|
+
return action.expression;
|
|
101
|
+
});
|
|
102
|
+
updateParts.push(`REMOVE ${removeExpressions.join(', ')}`);
|
|
103
|
+
}
|
|
104
|
+
if (updateActions.add.length > 0) {
|
|
105
|
+
const addExpressions = updateActions.add.map((action) => {
|
|
106
|
+
Object.assign(allNames, action.names || {});
|
|
107
|
+
Object.assign(allValues, action.values || {});
|
|
108
|
+
return action.expression;
|
|
109
|
+
});
|
|
110
|
+
updateParts.push(`ADD ${addExpressions.join(', ')}`);
|
|
111
|
+
}
|
|
112
|
+
if (updateActions.delete.length > 0) {
|
|
113
|
+
const deleteExpressions = updateActions.delete.map((action) => {
|
|
114
|
+
Object.assign(allNames, action.names || {});
|
|
115
|
+
Object.assign(allValues, action.values || {});
|
|
116
|
+
return action.expression;
|
|
117
|
+
});
|
|
118
|
+
updateParts.push(`DELETE ${deleteExpressions.join(', ')}`);
|
|
119
|
+
}
|
|
120
|
+
const updateExpression = updateParts.join(' ');
|
|
121
|
+
// Build ConditionExpression from conditions
|
|
122
|
+
let conditionExpression = '';
|
|
123
|
+
let conditionNames = {};
|
|
124
|
+
let conditionValues = {};
|
|
125
|
+
if (conditions.length > 0) {
|
|
126
|
+
const combinedCondition = conditions.length === 1 && conditions[0]
|
|
127
|
+
? conditions[0]
|
|
128
|
+
: {
|
|
129
|
+
expression: '',
|
|
130
|
+
operator: 'AND',
|
|
131
|
+
children: conditions,
|
|
132
|
+
};
|
|
133
|
+
const result = (0, shared_1.buildExpression)(combinedCondition);
|
|
134
|
+
conditionExpression = result.expression;
|
|
135
|
+
conditionNames = result.names;
|
|
136
|
+
conditionValues = result.values;
|
|
137
|
+
}
|
|
138
|
+
// Merge names and values
|
|
139
|
+
const expressionAttributeNames = {
|
|
140
|
+
...allNames,
|
|
141
|
+
...conditionNames,
|
|
142
|
+
};
|
|
143
|
+
const expressionAttributeValues = {
|
|
144
|
+
...allValues,
|
|
145
|
+
...conditionValues,
|
|
146
|
+
};
|
|
147
|
+
const extra = returnMode !== 'NONE' ? { ReturnValues: returnMode } : {};
|
|
148
|
+
return {
|
|
149
|
+
TableName: tableName,
|
|
150
|
+
Key: key,
|
|
151
|
+
...(updateExpression && { UpdateExpression: updateExpression }),
|
|
152
|
+
...(conditionExpression && {
|
|
153
|
+
ConditionExpression: conditionExpression,
|
|
154
|
+
}),
|
|
155
|
+
...(Object.keys(expressionAttributeNames).length && {
|
|
156
|
+
ExpressionAttributeNames: expressionAttributeNames,
|
|
157
|
+
}),
|
|
158
|
+
...(Object.keys(expressionAttributeValues).length && {
|
|
159
|
+
ExpressionAttributeValues: expressionAttributeValues,
|
|
160
|
+
}),
|
|
161
|
+
...extra,
|
|
162
|
+
};
|
|
163
|
+
},
|
|
164
|
+
async execute() {
|
|
165
|
+
const params = build().dbParams();
|
|
166
|
+
const response = await client.send(new lib_dynamodb_1.UpdateCommand(params));
|
|
167
|
+
logger?.log('UpdateCommand', params, response);
|
|
168
|
+
// Return the updated item based on returnMode
|
|
169
|
+
if (returnMode === 'ALL_NEW' && response.Attributes) {
|
|
170
|
+
return response.Attributes;
|
|
171
|
+
}
|
|
172
|
+
if (returnMode === 'UPDATED_NEW' && response.Attributes) {
|
|
173
|
+
return response.Attributes;
|
|
174
|
+
}
|
|
175
|
+
// For other modes, return the key as a fallback
|
|
176
|
+
return key;
|
|
177
|
+
},
|
|
178
|
+
});
|
|
179
|
+
return build();
|
|
180
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/builders/update/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./types"), exports);
|
|
18
|
+
__exportStar(require("./create-update-builder"), exports);
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { OperationBuilder, AttrRef } from '../shared';
|
|
2
|
+
/**
|
|
3
|
+
* Update actions that can be performed on attributes
|
|
4
|
+
*/
|
|
5
|
+
export type UpdateAction = {
|
|
6
|
+
expression: string;
|
|
7
|
+
names?: Record<string, string>;
|
|
8
|
+
values?: Record<string, any>;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Builder interface for DynamoDB UpdateItem operations
|
|
12
|
+
*/
|
|
13
|
+
export interface UpdateBuilder<Model> extends OperationBuilder<Model> {
|
|
14
|
+
/**
|
|
15
|
+
* Sets an attribute to a specific value
|
|
16
|
+
*/
|
|
17
|
+
set(attr: keyof Model | AttrRef, value: any): UpdateBuilder<Model>;
|
|
18
|
+
/**
|
|
19
|
+
* Removes an attribute from the item
|
|
20
|
+
*/
|
|
21
|
+
remove(attr: keyof Model | AttrRef): UpdateBuilder<Model>;
|
|
22
|
+
/**
|
|
23
|
+
* Adds a value to a number attribute or adds elements to a set
|
|
24
|
+
*/
|
|
25
|
+
add(attr: keyof Model | AttrRef, value: any): UpdateBuilder<Model>;
|
|
26
|
+
/**
|
|
27
|
+
* Deletes elements from a set attribute
|
|
28
|
+
*/
|
|
29
|
+
delete(attr: keyof Model | AttrRef, value: any): UpdateBuilder<Model>;
|
|
30
|
+
/**
|
|
31
|
+
* Configures what values should be returned after the update operation
|
|
32
|
+
*/
|
|
33
|
+
returning(mode: 'NONE' | 'ALL_OLD' | 'ALL_NEW' | 'UPDATED_OLD' | 'UPDATED_NEW'): UpdateBuilder<Model>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/builders/update/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,KAAK,CAAE,SAAQ,gBAAgB,CAAC,KAAK,CAAC;IACnE;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,EAAE,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAEnE;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAE1D;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,EAAE,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAEnE;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,EAAE,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAEtE;;OAEG;IACH,SAAS,CACP,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,GAAG,aAAa,GACnE,aAAa,CAAC,KAAK,CAAC,CAAC;CACzB"}
|