@effect-aws/dynamodb 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/DynamoDBDocumentClientInstance/package.json +6 -0
- package/DynamoDBDocumentService/package.json +6 -0
- package/DynamoDBDocumentServiceConfig/package.json +6 -0
- package/DynamoDBStore/package.json +6 -0
- package/LICENSE +19 -0
- package/README.md +65 -0
- package/dist/cjs/DynamoDBDocumentClientInstance.d.ts +25 -0
- package/dist/cjs/DynamoDBDocumentClientInstance.d.ts.map +1 -0
- package/dist/cjs/DynamoDBDocumentClientInstance.js +54 -0
- package/dist/cjs/DynamoDBDocumentClientInstance.js.map +1 -0
- package/dist/cjs/DynamoDBDocumentService.d.ts +97 -0
- package/dist/cjs/DynamoDBDocumentService.d.ts.map +1 -0
- package/dist/cjs/DynamoDBDocumentService.js +68 -0
- package/dist/cjs/DynamoDBDocumentService.js.map +1 -0
- package/dist/cjs/DynamoDBDocumentServiceConfig.d.ts +25 -0
- package/dist/cjs/DynamoDBDocumentServiceConfig.d.ts.map +1 -0
- package/dist/cjs/DynamoDBDocumentServiceConfig.js +28 -0
- package/dist/cjs/DynamoDBDocumentServiceConfig.js.map +1 -0
- package/dist/cjs/DynamoDBStore.d.ts +82 -0
- package/dist/cjs/DynamoDBStore.d.ts.map +1 -0
- package/dist/cjs/DynamoDBStore.js +57 -0
- package/dist/cjs/DynamoDBStore.js.map +1 -0
- package/dist/cjs/index.d.ts +44 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +56 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/dts/DynamoDBDocumentClientInstance.d.ts +25 -0
- package/dist/dts/DynamoDBDocumentClientInstance.d.ts.map +1 -0
- package/dist/dts/DynamoDBDocumentService.d.ts +97 -0
- package/dist/dts/DynamoDBDocumentService.d.ts.map +1 -0
- package/dist/dts/DynamoDBDocumentServiceConfig.d.ts +25 -0
- package/dist/dts/DynamoDBDocumentServiceConfig.d.ts.map +1 -0
- package/dist/dts/DynamoDBStore.d.ts +82 -0
- package/dist/dts/DynamoDBStore.d.ts.map +1 -0
- package/dist/dts/index.d.ts +44 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/esm/DynamoDBDocumentClientInstance.js +27 -0
- package/dist/esm/DynamoDBDocumentClientInstance.js.map +1 -0
- package/dist/esm/DynamoDBDocumentService.js +41 -0
- package/dist/esm/DynamoDBDocumentService.js.map +1 -0
- package/dist/esm/DynamoDBDocumentServiceConfig.js +24 -0
- package/dist/esm/DynamoDBDocumentServiceConfig.js.map +1 -0
- package/dist/esm/DynamoDBStore.js +53 -0
- package/dist/esm/DynamoDBStore.js.map +1 -0
- package/dist/esm/index.js +27 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +4 -0
- package/package.json +73 -0
- package/src/DynamoDBDocumentClientInstance.ts +34 -0
- package/src/DynamoDBDocumentService.ts +377 -0
- package/src/DynamoDBDocumentServiceConfig.ts +43 -0
- package/src/DynamoDBStore.ts +131 -0
- package/src/index.ts +50 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { DynamoDBDocumentService } from "./DynamoDBDocumentService.js";
|
|
5
|
+
/**
|
|
6
|
+
* @since 1.0.0
|
|
7
|
+
*/
|
|
8
|
+
export * as DynamoDBDocumentClientInstance from "./DynamoDBDocumentClientInstance.js";
|
|
9
|
+
/**
|
|
10
|
+
* @since 1.0.0
|
|
11
|
+
*/
|
|
12
|
+
export * as DynamoDBDocumentServiceConfig from "./DynamoDBDocumentServiceConfig.js";
|
|
13
|
+
/**
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
*/
|
|
16
|
+
export * from "./DynamoDBDocumentService.js";
|
|
17
|
+
/**
|
|
18
|
+
* @since 1.0.0
|
|
19
|
+
* @category exports
|
|
20
|
+
* @alias DynamoDBDocumentService
|
|
21
|
+
*/
|
|
22
|
+
export declare namespace DynamoDBDocument {
|
|
23
|
+
/**
|
|
24
|
+
* @since 1.0.0
|
|
25
|
+
* @alias DynamoDBDocumentService.Config
|
|
26
|
+
*/
|
|
27
|
+
type Config = DynamoDBDocumentService.Config;
|
|
28
|
+
/**
|
|
29
|
+
* @since 1.0.0
|
|
30
|
+
* @alias DynamoDBDocumentService.Type
|
|
31
|
+
*/
|
|
32
|
+
type Type = DynamoDBDocumentService.Type;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* @since 1.0.0
|
|
36
|
+
* @category exports
|
|
37
|
+
* @alias DynamoDBDocumentService
|
|
38
|
+
*/
|
|
39
|
+
export declare const DynamoDBDocument: typeof DynamoDBDocumentService;
|
|
40
|
+
/**
|
|
41
|
+
* @since 1.0.0
|
|
42
|
+
*/
|
|
43
|
+
export * from "./DynamoDBStore.js";
|
|
44
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;GAEG;AACH,OAAO,KAAK,8BAA8B,MAAM,qCAAqC,CAAC;AAEtF;;GAEG;AACH,OAAO,KAAK,6BAA6B,MAAM,oCAAoC,CAAC;AAEpF;;GAEG;AACH,cAAc,8BAA8B,CAAC;AAE7C;;;;GAIG;AACH,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC;;;OAGG;IACH,KAAY,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAEpD;;;OAGG;IACH,KAAY,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC;CACjD;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,gCAA0B,CAAC;AAExD;;GAEG;AACH,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
26
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.DynamoDBDocument = exports.DynamoDBDocumentServiceConfig = exports.DynamoDBDocumentClientInstance = void 0;
|
|
30
|
+
/**
|
|
31
|
+
* @since 1.0.0
|
|
32
|
+
*/
|
|
33
|
+
const DynamoDBDocumentService_js_1 = require("./DynamoDBDocumentService.js");
|
|
34
|
+
/**
|
|
35
|
+
* @since 1.0.0
|
|
36
|
+
*/
|
|
37
|
+
exports.DynamoDBDocumentClientInstance = __importStar(require("./DynamoDBDocumentClientInstance.js"));
|
|
38
|
+
/**
|
|
39
|
+
* @since 1.0.0
|
|
40
|
+
*/
|
|
41
|
+
exports.DynamoDBDocumentServiceConfig = __importStar(require("./DynamoDBDocumentServiceConfig.js"));
|
|
42
|
+
/**
|
|
43
|
+
* @since 1.0.0
|
|
44
|
+
*/
|
|
45
|
+
__exportStar(require("./DynamoDBDocumentService.js"), exports);
|
|
46
|
+
/**
|
|
47
|
+
* @since 1.0.0
|
|
48
|
+
* @category exports
|
|
49
|
+
* @alias DynamoDBDocumentService
|
|
50
|
+
*/
|
|
51
|
+
exports.DynamoDBDocument = DynamoDBDocumentService_js_1.DynamoDBDocumentService;
|
|
52
|
+
/**
|
|
53
|
+
* @since 1.0.0
|
|
54
|
+
*/
|
|
55
|
+
__exportStar(require("./DynamoDBStore.js"), exports);
|
|
56
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,6EAAuE;AAEvE;;GAEG;AACH,sGAAsF;AAEtF;;GAEG;AACH,oGAAoF;AAEpF;;GAEG;AACH,+DAA6C;AAqB7C;;;;GAIG;AACU,QAAA,gBAAgB,GAAG,oDAAuB,CAAC;AAExD;;GAEG;AACH,qDAAmC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { DynamoDBDocumentClient } from "@aws-sdk/lib-dynamodb";
|
|
5
|
+
import { DynamoDBClientInstance } from "@effect-aws/client-dynamodb";
|
|
6
|
+
import { Context, Effect, Layer } from "effect";
|
|
7
|
+
declare const DynamoDBDocumentClientInstance_base: Context.TagClass<DynamoDBDocumentClientInstance, "@effect-aws/lib-dynamodb/DynamoDBDocumentClientInstance", DynamoDBDocumentClient>;
|
|
8
|
+
/**
|
|
9
|
+
* @since 1.0.0
|
|
10
|
+
* @category tags
|
|
11
|
+
*/
|
|
12
|
+
export declare class DynamoDBDocumentClientInstance extends DynamoDBDocumentClientInstance_base {
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* @since 1.0.0
|
|
16
|
+
* @category constructors
|
|
17
|
+
*/
|
|
18
|
+
export declare const make: Effect.Effect<DynamoDBDocumentClient, never, DynamoDBClientInstance.DynamoDBClientInstance>;
|
|
19
|
+
/**
|
|
20
|
+
* @since 1.0.0
|
|
21
|
+
* @category layers
|
|
22
|
+
*/
|
|
23
|
+
export declare const layer: Layer.Layer<DynamoDBDocumentClientInstance, never, never>;
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=DynamoDBDocumentClientInstance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamoDBDocumentClientInstance.d.ts","sourceRoot":"","sources":["../../src/DynamoDBDocumentClientInstance.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;;AAGhD;;;GAGG;AACH,qBAAa,8BAA+B,SAAQ,mCAEO;CAAG;AAE9D;;;GAGG;AACH,eAAO,MAAM,IAAI,6FAKhB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,2DAEjB,CAAC"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type { DynamoDBClientConfig } from "@aws-sdk/client-dynamodb";
|
|
5
|
+
import type { BatchExecuteStatementCommandInput, BatchExecuteStatementCommandOutput, BatchGetCommandInput, BatchGetCommandOutput, BatchWriteCommandInput, BatchWriteCommandOutput, DeleteCommandInput, DeleteCommandOutput, DynamoDBDocumentClient, ExecuteStatementCommandInput, ExecuteStatementCommandOutput, ExecuteTransactionCommandInput, ExecuteTransactionCommandOutput, GetCommandInput, GetCommandOutput, PutCommandInput, PutCommandOutput, QueryCommandInput, QueryCommandOutput, ScanCommandInput, ScanCommandOutput, TransactGetCommandInput, TransactGetCommandOutput, TransactWriteCommandInput, TransactWriteCommandOutput, TranslateConfig, UpdateCommandInput, UpdateCommandOutput } from "@aws-sdk/lib-dynamodb";
|
|
6
|
+
import type { ConditionalCheckFailedError, DuplicateItemError, IdempotentParameterMismatchError, InternalServerError, InvalidEndpointError, ItemCollectionSizeLimitExceededError, ProvisionedThroughputExceededError, RequestLimitExceededError, ResourceNotFoundError, SdkError, TransactionCanceledError, TransactionConflictError, TransactionInProgressError } from "@effect-aws/client-dynamodb";
|
|
7
|
+
import { type HttpHandlerOptions } from "@effect-aws/commons";
|
|
8
|
+
import type { Cause } from "effect";
|
|
9
|
+
import { Effect, Layer } from "effect";
|
|
10
|
+
import * as Instance from "./DynamoDBDocumentClientInstance.js";
|
|
11
|
+
interface DynamoDBDocumentService$ {
|
|
12
|
+
readonly _: unique symbol;
|
|
13
|
+
/**
|
|
14
|
+
* @see {@link BatchExecuteStatementCommand}
|
|
15
|
+
*/
|
|
16
|
+
batchExecuteStatement(args: BatchExecuteStatementCommandInput, options?: HttpHandlerOptions): Effect.Effect<BatchExecuteStatementCommandOutput, Cause.TimeoutException | SdkError | InternalServerError | RequestLimitExceededError>;
|
|
17
|
+
/**
|
|
18
|
+
* @see {@link BatchGetCommand}
|
|
19
|
+
*/
|
|
20
|
+
batchGet(args: BatchGetCommandInput, options?: HttpHandlerOptions): Effect.Effect<BatchGetCommandOutput, Cause.TimeoutException | SdkError | InternalServerError | InvalidEndpointError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError>;
|
|
21
|
+
/**
|
|
22
|
+
* @see {@link BatchWriteCommand}
|
|
23
|
+
*/
|
|
24
|
+
batchWrite(args: BatchWriteCommandInput, options?: HttpHandlerOptions): Effect.Effect<BatchWriteCommandOutput, Cause.TimeoutException | SdkError | InternalServerError | InvalidEndpointError | ItemCollectionSizeLimitExceededError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError>;
|
|
25
|
+
/**
|
|
26
|
+
* @see {@link DeleteCommand}
|
|
27
|
+
*/
|
|
28
|
+
delete(args: DeleteCommandInput, options?: HttpHandlerOptions): Effect.Effect<DeleteCommandOutput, Cause.TimeoutException | SdkError | ConditionalCheckFailedError | InternalServerError | InvalidEndpointError | ItemCollectionSizeLimitExceededError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError | TransactionConflictError>;
|
|
29
|
+
/**
|
|
30
|
+
* @see {@link ExecuteStatementCommand}
|
|
31
|
+
*/
|
|
32
|
+
executeStatement(args: ExecuteStatementCommandInput, options?: HttpHandlerOptions): Effect.Effect<ExecuteStatementCommandOutput, Cause.TimeoutException | SdkError | ConditionalCheckFailedError | DuplicateItemError | InternalServerError | ItemCollectionSizeLimitExceededError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError | TransactionConflictError>;
|
|
33
|
+
/**
|
|
34
|
+
* @see {@link ExecuteTransactionCommand}
|
|
35
|
+
*/
|
|
36
|
+
executeTransaction(args: ExecuteTransactionCommandInput, options?: HttpHandlerOptions): Effect.Effect<ExecuteTransactionCommandOutput, Cause.TimeoutException | SdkError | IdempotentParameterMismatchError | InternalServerError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError | TransactionCanceledError | TransactionInProgressError>;
|
|
37
|
+
/**
|
|
38
|
+
* @see {@link GetCommand}
|
|
39
|
+
*/
|
|
40
|
+
get(args: GetCommandInput, options?: HttpHandlerOptions): Effect.Effect<GetCommandOutput, Cause.TimeoutException | SdkError | InternalServerError | InvalidEndpointError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError>;
|
|
41
|
+
/**
|
|
42
|
+
* @see {@link PutCommand}
|
|
43
|
+
*/
|
|
44
|
+
put(args: PutCommandInput, options?: HttpHandlerOptions): Effect.Effect<PutCommandOutput, Cause.TimeoutException | SdkError | ConditionalCheckFailedError | InternalServerError | InvalidEndpointError | ItemCollectionSizeLimitExceededError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError | TransactionConflictError>;
|
|
45
|
+
/**
|
|
46
|
+
* @see {@link QueryCommand}
|
|
47
|
+
*/
|
|
48
|
+
query(args: QueryCommandInput, options?: HttpHandlerOptions): Effect.Effect<QueryCommandOutput, Cause.TimeoutException | SdkError | InternalServerError | InvalidEndpointError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError>;
|
|
49
|
+
/**
|
|
50
|
+
* @see {@link ScanCommand}
|
|
51
|
+
*/
|
|
52
|
+
scan(args: ScanCommandInput, options?: HttpHandlerOptions): Effect.Effect<ScanCommandOutput, Cause.TimeoutException | SdkError | InternalServerError | InvalidEndpointError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError>;
|
|
53
|
+
/**
|
|
54
|
+
* @see {@link TransactGetCommand}
|
|
55
|
+
*/
|
|
56
|
+
transactGet(args: TransactGetCommandInput, options?: HttpHandlerOptions): Effect.Effect<TransactGetCommandOutput, Cause.TimeoutException | SdkError | InternalServerError | InvalidEndpointError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError | TransactionCanceledError>;
|
|
57
|
+
/**
|
|
58
|
+
* @see {@link TransactWriteCommand}
|
|
59
|
+
*/
|
|
60
|
+
transactWrite(args: TransactWriteCommandInput, options?: HttpHandlerOptions): Effect.Effect<TransactWriteCommandOutput, Cause.TimeoutException | SdkError | IdempotentParameterMismatchError | InternalServerError | InvalidEndpointError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError | TransactionCanceledError | TransactionInProgressError>;
|
|
61
|
+
/**
|
|
62
|
+
* @see {@link UpdateCommand}
|
|
63
|
+
*/
|
|
64
|
+
update(args: UpdateCommandInput, options?: HttpHandlerOptions): Effect.Effect<UpdateCommandOutput, Cause.TimeoutException | SdkError | ConditionalCheckFailedError | InternalServerError | InvalidEndpointError | ItemCollectionSizeLimitExceededError | ProvisionedThroughputExceededError | RequestLimitExceededError | ResourceNotFoundError | TransactionConflictError>;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* @since 1.0.0
|
|
68
|
+
* @category constructors
|
|
69
|
+
*/
|
|
70
|
+
export declare const makeDynamoDBDocumentService: Effect.Effect<DynamoDBDocumentService$, never, Instance.DynamoDBDocumentClientInstance>;
|
|
71
|
+
declare const DynamoDBDocumentService_base: import("effect/Context").TagClass<DynamoDBDocumentService, "@effect-aws/lib-dynamodb/DynamoDBDocumentService", DynamoDBDocumentService$> & Effect.Tag.Proxy<DynamoDBDocumentService, DynamoDBDocumentService$> & {
|
|
72
|
+
use: <X>(body: (_: DynamoDBDocumentService$) => X) => [X] extends [Effect.Effect<infer A, infer E, infer R>] ? Effect.Effect<A, E, DynamoDBDocumentService | R> : [X] extends [PromiseLike<infer A_1>] ? Effect.Effect<A_1, Cause.UnknownException, DynamoDBDocumentService> : Effect.Effect<X, never, DynamoDBDocumentService>;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* @since 1.0.0
|
|
76
|
+
* @category models
|
|
77
|
+
*/
|
|
78
|
+
export declare class DynamoDBDocumentService extends DynamoDBDocumentService_base {
|
|
79
|
+
static readonly defaultLayer: Layer.Layer<DynamoDBDocumentService, never, never>;
|
|
80
|
+
static readonly layer: (config: DynamoDBDocumentService.Config) => Layer.Layer<DynamoDBDocumentService, never, never>;
|
|
81
|
+
static readonly baseLayer: (evaluate: (defaultConfig: DynamoDBClientConfig) => DynamoDBDocumentClient) => Layer.Layer<DynamoDBDocumentService, never, never>;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* @since 1.0.0
|
|
85
|
+
*/
|
|
86
|
+
export declare namespace DynamoDBDocumentService {
|
|
87
|
+
/**
|
|
88
|
+
* @since 1.0.0
|
|
89
|
+
*/
|
|
90
|
+
type Config = TranslateConfig;
|
|
91
|
+
/**
|
|
92
|
+
* @since 1.0.0
|
|
93
|
+
*/
|
|
94
|
+
type Type = DynamoDBDocumentService$;
|
|
95
|
+
}
|
|
96
|
+
export {};
|
|
97
|
+
//# sourceMappingURL=DynamoDBDocumentService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamoDBDocumentService.d.ts","sourceRoot":"","sources":["../../src/DynamoDBDocumentService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type { TranslateConfig } from "@aws-sdk/lib-dynamodb";
|
|
5
|
+
import { Effect, Layer } from "effect";
|
|
6
|
+
import type { DynamoDBDocumentService } from "./DynamoDBDocumentService.js";
|
|
7
|
+
/**
|
|
8
|
+
* @since 1.0.0
|
|
9
|
+
* @category dynamodb service config
|
|
10
|
+
*/
|
|
11
|
+
export declare const withDynamoDBDocumentServiceConfig: {
|
|
12
|
+
(config: DynamoDBDocumentService.Config): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
13
|
+
<A, E, R>(effect: Effect.Effect<A, E, R>, config: DynamoDBDocumentService.Config): Effect.Effect<A, E, R>;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* @since 1.0.0
|
|
17
|
+
* @category dynamodb service config
|
|
18
|
+
*/
|
|
19
|
+
export declare const setDynamoDBDocumentServiceConfig: (config: DynamoDBDocumentService.Config) => Layer.Layer<never, never, never>;
|
|
20
|
+
/**
|
|
21
|
+
* @since 1.0.0
|
|
22
|
+
* @category adapters
|
|
23
|
+
*/
|
|
24
|
+
export declare const toTranslateConfig: Effect.Effect<TranslateConfig>;
|
|
25
|
+
//# sourceMappingURL=DynamoDBDocumentServiceConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamoDBDocumentServiceConfig.d.ts","sourceRoot":"","sources":["../../src/DynamoDBDocumentServiceConfig.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAY,KAAK,EAAE,MAAM,QAAQ,CAAC;AAGjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAW5E;;;GAGG;AACH,eAAO,MAAM,iCAAiC,EAAE;IAC9C,CAAC,MAAM,EAAE,uBAAuB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9G,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,uBAAuB,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;CAK3G,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gCAAgC,WAAY,wBAAwB,MAAM,qCACpB,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAsD,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { Config, Effect, Layer } from "effect";
|
|
5
|
+
import { DynamoDBDocumentService } from "./DynamoDBDocumentService.js";
|
|
6
|
+
type WithoutTableNameInArgs = {
|
|
7
|
+
[K in keyof Omit<DynamoDBDocumentService.Type, "_">]: Parameters<DynamoDBDocumentService.Type[K]>[0] extends {
|
|
8
|
+
TableName?: string;
|
|
9
|
+
} ? (args: Omit<Parameters<DynamoDBDocumentService.Type[K]>[0], "TableName">, options?: Parameters<DynamoDBDocumentService.Type[K]>[1]) => Effect.Effect<Effect.Effect.Success<ReturnType<DynamoDBDocumentService.Type[K]>> extends {
|
|
10
|
+
Item?: infer Item;
|
|
11
|
+
} ? Item | undefined : Effect.Effect.Success<ReturnType<DynamoDBDocumentService.Type[K]>> extends {
|
|
12
|
+
Items?: infer Items;
|
|
13
|
+
} ? Items : Effect.Effect.Success<ReturnType<DynamoDBDocumentService.Type[K]>> extends {
|
|
14
|
+
Attributes?: infer Attributes;
|
|
15
|
+
} ? Attributes | undefined : never, Effect.Effect.Error<ReturnType<DynamoDBDocumentService.Type[K]>>, Effect.Effect.Context<ReturnType<DynamoDBDocumentService.Type[K]>>> : never;
|
|
16
|
+
};
|
|
17
|
+
type WithoutTableNameInBatchRequest = {
|
|
18
|
+
[K in keyof Omit<DynamoDBDocumentService.Type, "_">]: Parameters<DynamoDBDocumentService.Type[K]>[0] extends {
|
|
19
|
+
RequestItems?: {
|
|
20
|
+
[key: string]: infer RequestItems;
|
|
21
|
+
};
|
|
22
|
+
} ? (args: RequestItems, options?: Parameters<DynamoDBDocumentService.Type[K]>[1]) => ReturnType<DynamoDBDocumentService.Type[K]> : never;
|
|
23
|
+
};
|
|
24
|
+
type OmitNeverProps<T> = {
|
|
25
|
+
[K in keyof T as T[K] extends never ? never : K]: T[K];
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* @since 1.0.0
|
|
29
|
+
* @category constructors
|
|
30
|
+
*/
|
|
31
|
+
export declare const makeDynamoDBStore: (props: DynamoDBStore.Config) => Effect.Effect<{
|
|
32
|
+
scan: (args: Omit<import("@aws-sdk/lib-dynamodb").ScanCommandInput, "TableName">) => Effect.Effect<Record<string, any>[], import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError, never>;
|
|
33
|
+
query: (args: Omit<import("@aws-sdk/lib-dynamodb").QueryCommandInput, "TableName">) => Effect.Effect<Record<string, any>[], import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError, never>;
|
|
34
|
+
get: (args: Omit<import("@aws-sdk/lib-dynamodb").GetCommandInput, "TableName">) => Effect.Effect<Record<string, any> | undefined, import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError, never>;
|
|
35
|
+
put: (args: Omit<import("@aws-sdk/lib-dynamodb").PutCommandInput, "TableName">) => Effect.Effect<Record<string, any> | undefined, import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError | import("@effect-aws/client-dynamodb").ItemCollectionSizeLimitExceededError | import("@effect-aws/client-dynamodb").ConditionalCheckFailedError | import("@effect-aws/client-dynamodb").TransactionConflictError, never>;
|
|
36
|
+
batchWrite: (items: (Omit<import("@aws-sdk/client-dynamodb").WriteRequest, "PutRequest" | "DeleteRequest"> & {
|
|
37
|
+
PutRequest?: (Omit<import("@aws-sdk/client-dynamodb").PutRequest, "Item"> & {
|
|
38
|
+
Item: Record<string, any> | undefined;
|
|
39
|
+
}) | undefined;
|
|
40
|
+
DeleteRequest?: (Omit<import("@aws-sdk/client-dynamodb").DeleteRequest, "Key"> & {
|
|
41
|
+
Key: Record<string, any> | undefined;
|
|
42
|
+
}) | undefined;
|
|
43
|
+
})[]) => Effect.Effect<import("@aws-sdk/lib-dynamodb").BatchWriteCommandOutput, import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError | import("@effect-aws/client-dynamodb").ItemCollectionSizeLimitExceededError, never>;
|
|
44
|
+
batchPut: (items: Record<string, any>[]) => Effect.Effect<import("@aws-sdk/lib-dynamodb").BatchWriteCommandOutput, import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError | import("@effect-aws/client-dynamodb").ItemCollectionSizeLimitExceededError, never>;
|
|
45
|
+
batchDelete: (keys: Record<string, any>[]) => Effect.Effect<import("@aws-sdk/lib-dynamodb").BatchWriteCommandOutput, import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError | import("@effect-aws/client-dynamodb").ItemCollectionSizeLimitExceededError, never>;
|
|
46
|
+
batchGet: (items: Omit<import("@aws-sdk/client-dynamodb").KeysAndAttributes, "Keys"> & {
|
|
47
|
+
Keys: Record<string, any>[] | undefined;
|
|
48
|
+
}) => Effect.Effect<import("@aws-sdk/lib-dynamodb").BatchGetCommandOutput, import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError, never>;
|
|
49
|
+
update: (args: Omit<import("@aws-sdk/lib-dynamodb").UpdateCommandInput, "TableName">) => Effect.Effect<Record<string, any> | undefined, import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError | import("@effect-aws/client-dynamodb").ItemCollectionSizeLimitExceededError | import("@effect-aws/client-dynamodb").ConditionalCheckFailedError | import("@effect-aws/client-dynamodb").TransactionConflictError, never>;
|
|
50
|
+
delete: (args: Omit<import("@aws-sdk/lib-dynamodb").DeleteCommandInput, "TableName">) => Effect.Effect<Record<string, any> | undefined, import("effect/Cause").TimeoutException | import("@effect-aws/client-dynamodb").SdkError | import("@effect-aws/client-dynamodb").InternalServerError | import("@effect-aws/client-dynamodb").RequestLimitExceededError | import("@effect-aws/client-dynamodb").InvalidEndpointError | import("@effect-aws/client-dynamodb").ProvisionedThroughputExceededError | import("@effect-aws/client-dynamodb").ResourceNotFoundError | import("@effect-aws/client-dynamodb").ItemCollectionSizeLimitExceededError | import("@effect-aws/client-dynamodb").ConditionalCheckFailedError | import("@effect-aws/client-dynamodb").TransactionConflictError, never>;
|
|
51
|
+
}, never, DynamoDBDocumentService>;
|
|
52
|
+
declare const DynamoDBStore_base: import("effect/Context").TagClass<DynamoDBStore, "@pms/common/DynamoDBStore", DynamoDBStore.Type> & Effect.Tag.Proxy<DynamoDBStore, DynamoDBStore.Type> & {
|
|
53
|
+
use: <X>(body: (_: DynamoDBStore.Type) => X) => [X] extends [Effect.Effect<infer A, infer E, infer R>] ? Effect.Effect<A, E, R | DynamoDBStore> : [X] extends [PromiseLike<infer A_1>] ? Effect.Effect<A_1, import("effect/Cause").UnknownException, DynamoDBStore> : Effect.Effect<X, never, DynamoDBStore>;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* @since 1.0.0
|
|
57
|
+
* @category models
|
|
58
|
+
*/
|
|
59
|
+
export declare class DynamoDBStore extends DynamoDBStore_base {
|
|
60
|
+
static layer: (props: DynamoDBStore.Config) => Layer.Layer<DynamoDBStore, never, DynamoDBDocumentService>;
|
|
61
|
+
static layerConfig: (config: Config.Config.Wrap<DynamoDBStore.Config>) => Layer.Layer<DynamoDBStore, import("effect/ConfigError").ConfigError, DynamoDBDocumentService>;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* @since 1.0.0
|
|
65
|
+
*/
|
|
66
|
+
export declare namespace DynamoDBStore {
|
|
67
|
+
/**
|
|
68
|
+
* @since 1.0.0
|
|
69
|
+
*/
|
|
70
|
+
type Config = {
|
|
71
|
+
readonly tableName: string;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* @since 1.0.0
|
|
75
|
+
*/
|
|
76
|
+
type Type = OmitNeverProps<WithoutTableNameInArgs> & OmitNeverProps<WithoutTableNameInBatchRequest> & {
|
|
77
|
+
batchPut: (items: Array<Record<string, any>>) => ReturnType<DynamoDBDocumentService.Type["batchWrite"]>;
|
|
78
|
+
batchDelete: (keys: Array<Record<string, any>>) => ReturnType<DynamoDBDocumentService.Type["batchWrite"]>;
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
export {};
|
|
82
|
+
//# sourceMappingURL=DynamoDBStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamoDBStore.d.ts","sourceRoot":"","sources":["../../src/DynamoDBStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { DynamoDBDocumentService } from "./DynamoDBDocumentService.js";
|
|
5
|
+
/**
|
|
6
|
+
* @since 1.0.0
|
|
7
|
+
*/
|
|
8
|
+
export * as DynamoDBDocumentClientInstance from "./DynamoDBDocumentClientInstance.js";
|
|
9
|
+
/**
|
|
10
|
+
* @since 1.0.0
|
|
11
|
+
*/
|
|
12
|
+
export * as DynamoDBDocumentServiceConfig from "./DynamoDBDocumentServiceConfig.js";
|
|
13
|
+
/**
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
*/
|
|
16
|
+
export * from "./DynamoDBDocumentService.js";
|
|
17
|
+
/**
|
|
18
|
+
* @since 1.0.0
|
|
19
|
+
* @category exports
|
|
20
|
+
* @alias DynamoDBDocumentService
|
|
21
|
+
*/
|
|
22
|
+
export declare namespace DynamoDBDocument {
|
|
23
|
+
/**
|
|
24
|
+
* @since 1.0.0
|
|
25
|
+
* @alias DynamoDBDocumentService.Config
|
|
26
|
+
*/
|
|
27
|
+
type Config = DynamoDBDocumentService.Config;
|
|
28
|
+
/**
|
|
29
|
+
* @since 1.0.0
|
|
30
|
+
* @alias DynamoDBDocumentService.Type
|
|
31
|
+
*/
|
|
32
|
+
type Type = DynamoDBDocumentService.Type;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* @since 1.0.0
|
|
36
|
+
* @category exports
|
|
37
|
+
* @alias DynamoDBDocumentService
|
|
38
|
+
*/
|
|
39
|
+
export declare const DynamoDBDocument: typeof DynamoDBDocumentService;
|
|
40
|
+
/**
|
|
41
|
+
* @since 1.0.0
|
|
42
|
+
*/
|
|
43
|
+
export * from "./DynamoDBStore.js";
|
|
44
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;GAEG;AACH,OAAO,KAAK,8BAA8B,MAAM,qCAAqC,CAAC;AAEtF;;GAEG;AACH,OAAO,KAAK,6BAA6B,MAAM,oCAAoC,CAAC;AAEpF;;GAEG;AACH,cAAc,8BAA8B,CAAC;AAE7C;;;;GAIG;AACH,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC;;;OAGG;IACH,KAAY,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAEpD;;;OAGG;IACH,KAAY,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC;CACjD;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,gCAA0B,CAAC;AAExD;;GAEG;AACH,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { DynamoDBDocumentClient } from "@aws-sdk/lib-dynamodb";
|
|
5
|
+
import { DynamoDBClientInstance } from "@effect-aws/client-dynamodb";
|
|
6
|
+
import { Context, Effect, Layer } from "effect";
|
|
7
|
+
import * as DynamoDBDocumentServiceConfig from "./DynamoDBDocumentServiceConfig.js";
|
|
8
|
+
/**
|
|
9
|
+
* @since 1.0.0
|
|
10
|
+
* @category tags
|
|
11
|
+
*/
|
|
12
|
+
export class DynamoDBDocumentClientInstance extends Context.Tag("@effect-aws/lib-dynamodb/DynamoDBDocumentClientInstance")() {
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* @since 1.0.0
|
|
16
|
+
* @category constructors
|
|
17
|
+
*/
|
|
18
|
+
export const make = Effect.all([
|
|
19
|
+
DynamoDBClientInstance.DynamoDBClientInstance,
|
|
20
|
+
DynamoDBDocumentServiceConfig.toTranslateConfig,
|
|
21
|
+
]).pipe(Effect.map(([client, config]) => DynamoDBDocumentClient.from(client, config)));
|
|
22
|
+
/**
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
* @category layers
|
|
25
|
+
*/
|
|
26
|
+
export const layer = Layer.scoped(DynamoDBDocumentClientInstance, make).pipe(Layer.provide(DynamoDBClientInstance.layer));
|
|
27
|
+
//# sourceMappingURL=DynamoDBDocumentClientInstance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamoDBDocumentClientInstance.js","sourceRoot":"","sources":["../../src/DynamoDBDocumentClientInstance.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,KAAK,6BAA6B,MAAM,oCAAoC,CAAC;AAEpF;;;GAGG;AACH,MAAM,OAAO,8BAA+B,SAAQ,OAAO,CAAC,GAAG,CAC7D,yDAAyD,CAC1D,EAA0D;CAAG;AAE9D;;;GAGG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC;IAC7B,sBAAsB,CAAC,sBAAsB;IAC7C,6BAA6B,CAAC,iBAAiB;CAChD,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAC9E,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC,IAAI,CAC1E,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAC5C,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { BatchExecuteStatementCommand, BatchGetCommand, BatchWriteCommand, DeleteCommand, ExecuteStatementCommand, ExecuteTransactionCommand, GetCommand, PutCommand, QueryCommand, ScanCommand, TransactGetCommand, TransactWriteCommand, UpdateCommand, } from "@aws-sdk/lib-dynamodb";
|
|
2
|
+
import { DynamoDBServiceConfig } from "@effect-aws/client-dynamodb";
|
|
3
|
+
import { Service } from "@effect-aws/commons";
|
|
4
|
+
import { Effect, Layer } from "effect";
|
|
5
|
+
import * as Instance from "./DynamoDBDocumentClientInstance.js";
|
|
6
|
+
import * as DynamoDBDocumentServiceConfig from "./DynamoDBDocumentServiceConfig.js";
|
|
7
|
+
const commands = {
|
|
8
|
+
BatchExecuteStatementCommand,
|
|
9
|
+
BatchGetCommand,
|
|
10
|
+
BatchWriteCommand,
|
|
11
|
+
DeleteCommand,
|
|
12
|
+
ExecuteStatementCommand,
|
|
13
|
+
ExecuteTransactionCommand,
|
|
14
|
+
GetCommand,
|
|
15
|
+
PutCommand,
|
|
16
|
+
QueryCommand,
|
|
17
|
+
ScanCommand,
|
|
18
|
+
TransactGetCommand,
|
|
19
|
+
TransactWriteCommand,
|
|
20
|
+
UpdateCommand,
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
* @category constructors
|
|
25
|
+
*/
|
|
26
|
+
export const makeDynamoDBDocumentService = Effect.gen(function* () {
|
|
27
|
+
const client = yield* Instance.DynamoDBDocumentClientInstance;
|
|
28
|
+
return yield* Service.fromClientAndCommands(client, commands, {
|
|
29
|
+
resolveClientConfig: DynamoDBServiceConfig.toDynamoDBClientConfig,
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
/**
|
|
33
|
+
* @since 1.0.0
|
|
34
|
+
* @category models
|
|
35
|
+
*/
|
|
36
|
+
export class DynamoDBDocumentService extends Effect.Tag("@effect-aws/lib-dynamodb/DynamoDBDocumentService")() {
|
|
37
|
+
static defaultLayer = Layer.effect(this, makeDynamoDBDocumentService).pipe(Layer.provide(Instance.layer));
|
|
38
|
+
static layer = (config) => Layer.effect(this, makeDynamoDBDocumentService).pipe(Layer.provide(Instance.layer), Layer.provide(DynamoDBDocumentServiceConfig.setDynamoDBDocumentServiceConfig(config)));
|
|
39
|
+
static baseLayer = (evaluate) => Layer.effect(this, makeDynamoDBDocumentService).pipe(Layer.provide(Layer.effect(Instance.DynamoDBDocumentClientInstance, Effect.map(DynamoDBServiceConfig.toDynamoDBClientConfig, evaluate))));
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=DynamoDBDocumentService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamoDBDocumentService.js","sourceRoot":"","sources":["../../src/DynamoDBDocumentService.ts"],"names":[],"mappings":"AAkCA,OAAO,EACL,4BAA4B,EAC5B,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,yBAAyB,EACzB,UAAU,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,GACd,MAAM,uBAAuB,CAAC;AAgB/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAA2B,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,KAAK,QAAQ,MAAM,qCAAqC,CAAC;AAChE,OAAO,KAAK,6BAA6B,MAAM,oCAAoC,CAAC;AAEpF,MAAM,QAAQ,GAAG;IACf,4BAA4B;IAC5B,eAAe;IACf,iBAAiB;IACjB,aAAa;IACb,uBAAuB;IACvB,yBAAyB;IACzB,UAAU;IACV,UAAU;IACV,YAAY;IACZ,WAAW;IACX,kBAAkB;IAClB,oBAAoB;IACpB,aAAa;CACd,CAAC;AAgPF;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC7D,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IAE9D,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAA2B,MAAM,EAAE,QAAQ,EAAE;QACtF,mBAAmB,EAAE,qBAAqB,CAAC,sBAAsB;KAClE,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,OAAO,uBAAwB,SAAQ,MAAM,CAAC,GAAG,CACrD,kDAAkD,CACnD,EAAqD;IACpD,MAAM,CAAU,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACnH,MAAM,CAAU,KAAK,GAAG,CAAC,MAAsC,EAAE,EAAE,CACjE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC,IAAI,CAClD,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC7B,KAAK,CAAC,OAAO,CAAC,6BAA6B,CAAC,gCAAgC,CAAC,MAAM,CAAC,CAAC,CACtF,CAAC;IACJ,MAAM,CAAU,SAAS,GAAG,CAC1B,QAAyE,EACzE,EAAE,CACF,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC,IAAI,CAClD,KAAK,CAAC,OAAO,CACX,KAAK,CAAC,MAAM,CACV,QAAQ,CAAC,8BAA8B,EACvC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CACnE,CACF,CACF,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Effect, FiberRef, Layer } from "effect";
|
|
2
|
+
import { dual } from "effect/Function";
|
|
3
|
+
import { globalValue } from "effect/GlobalValue";
|
|
4
|
+
/**
|
|
5
|
+
* @since 1.0.0
|
|
6
|
+
* @category dynamodb service config
|
|
7
|
+
*/
|
|
8
|
+
const currentDynamoDBDocumentServiceConfig = globalValue("@effect-aws/lib-dynamodb/currentDynamoDBDocumentServiceConfig", () => FiberRef.unsafeMake({}));
|
|
9
|
+
/**
|
|
10
|
+
* @since 1.0.0
|
|
11
|
+
* @category dynamodb service config
|
|
12
|
+
*/
|
|
13
|
+
export const withDynamoDBDocumentServiceConfig = dual(2, (effect, config) => Effect.locally(effect, currentDynamoDBDocumentServiceConfig, config));
|
|
14
|
+
/**
|
|
15
|
+
* @since 1.0.0
|
|
16
|
+
* @category dynamodb service config
|
|
17
|
+
*/
|
|
18
|
+
export const setDynamoDBDocumentServiceConfig = (config) => Layer.locallyScoped(currentDynamoDBDocumentServiceConfig, config);
|
|
19
|
+
/**
|
|
20
|
+
* @since 1.0.0
|
|
21
|
+
* @category adapters
|
|
22
|
+
*/
|
|
23
|
+
export const toTranslateConfig = FiberRef.get(currentDynamoDBDocumentServiceConfig);
|
|
24
|
+
//# sourceMappingURL=DynamoDBDocumentServiceConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamoDBDocumentServiceConfig.js","sourceRoot":"","sources":["../../src/DynamoDBDocumentServiceConfig.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD;;;GAGG;AACH,MAAM,oCAAoC,GAAG,WAAW,CACtD,+DAA+D,EAC/D,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAiC,EAAE,CAAC,CAC9D,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAG1C,IAAI,CACN,CAAC,EACD,CAAU,MAA8B,EAAE,MAAsC,EAA0B,EAAE,CAC1G,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,oCAAoC,EAAE,MAAM,CAAC,CACvE,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,MAAsC,EAAE,EAAE,CACzF,KAAK,CAAC,aAAa,CAAC,oCAAoC,EAAE,MAAM,CAAC,CAAC;AAEpE;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAmC,QAAQ,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { Config, Effect, Layer } from "effect";
|
|
5
|
+
import { DynamoDBDocumentService } from "./DynamoDBDocumentService.js";
|
|
6
|
+
/**
|
|
7
|
+
* @since 1.0.0
|
|
8
|
+
* @category constructors
|
|
9
|
+
*/
|
|
10
|
+
export const makeDynamoDBStore = Effect.fn(function* (props) {
|
|
11
|
+
const ddb = yield* DynamoDBDocumentService;
|
|
12
|
+
return {
|
|
13
|
+
scan: (args) => ddb
|
|
14
|
+
.scan({ TableName: props.tableName, ...args })
|
|
15
|
+
.pipe(Effect.map(({ Items }) => Items ?? [])),
|
|
16
|
+
query: (args) => ddb
|
|
17
|
+
.query({ TableName: props.tableName, ...args })
|
|
18
|
+
.pipe(Effect.map(({ Items }) => Items ?? [])),
|
|
19
|
+
get: (args) => ddb
|
|
20
|
+
.get({ TableName: props.tableName, Key: args?.Key })
|
|
21
|
+
.pipe(Effect.map(({ Item }) => Item)),
|
|
22
|
+
put: (args) => ddb
|
|
23
|
+
.put({ TableName: props.tableName, ...args })
|
|
24
|
+
.pipe(Effect.map(({ Attributes }) => Attributes)),
|
|
25
|
+
batchWrite: (items) => ddb.batchWrite({ RequestItems: { [props.tableName]: items } }),
|
|
26
|
+
batchPut: (items) => ddb.batchWrite({
|
|
27
|
+
RequestItems: {
|
|
28
|
+
[props.tableName]: items.map((Item) => ({ PutRequest: { Item } })),
|
|
29
|
+
},
|
|
30
|
+
}),
|
|
31
|
+
batchDelete: (keys) => ddb.batchWrite({
|
|
32
|
+
RequestItems: {
|
|
33
|
+
[props.tableName]: keys.map((Key) => ({ DeleteRequest: { Key } })),
|
|
34
|
+
},
|
|
35
|
+
}),
|
|
36
|
+
batchGet: (items) => ddb.batchGet({ RequestItems: { [props.tableName]: items } }),
|
|
37
|
+
update: (args) => ddb
|
|
38
|
+
.update({ TableName: props.tableName, ...args })
|
|
39
|
+
.pipe(Effect.map(({ Attributes }) => Attributes)),
|
|
40
|
+
delete: (args) => ddb
|
|
41
|
+
.delete({ TableName: props.tableName, ...args })
|
|
42
|
+
.pipe(Effect.map(({ Attributes }) => Attributes)),
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
/**
|
|
46
|
+
* @since 1.0.0
|
|
47
|
+
* @category models
|
|
48
|
+
*/
|
|
49
|
+
export class DynamoDBStore extends Effect.Tag("@pms/common/DynamoDBStore")() {
|
|
50
|
+
static layer = (props) => Layer.effect(this, makeDynamoDBStore(props));
|
|
51
|
+
static layerConfig = (config) => Layer.effect(this, Config.unwrap(config).pipe(Effect.flatMap(makeDynamoDBStore)));
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=DynamoDBStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamoDBStore.js","sourceRoot":"","sources":["../../src/DynamoDBStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { DynamoDBDocumentService } from "./DynamoDBDocumentService.js";
|
|
5
|
+
/**
|
|
6
|
+
* @since 1.0.0
|
|
7
|
+
*/
|
|
8
|
+
export * as DynamoDBDocumentClientInstance from "./DynamoDBDocumentClientInstance.js";
|
|
9
|
+
/**
|
|
10
|
+
* @since 1.0.0
|
|
11
|
+
*/
|
|
12
|
+
export * as DynamoDBDocumentServiceConfig from "./DynamoDBDocumentServiceConfig.js";
|
|
13
|
+
/**
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
*/
|
|
16
|
+
export * from "./DynamoDBDocumentService.js";
|
|
17
|
+
/**
|
|
18
|
+
* @since 1.0.0
|
|
19
|
+
* @category exports
|
|
20
|
+
* @alias DynamoDBDocumentService
|
|
21
|
+
*/
|
|
22
|
+
export const DynamoDBDocument = DynamoDBDocumentService;
|
|
23
|
+
/**
|
|
24
|
+
* @since 1.0.0
|
|
25
|
+
*/
|
|
26
|
+
export * from "./DynamoDBStore.js";
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;GAEG;AACH,OAAO,KAAK,8BAA8B,MAAM,qCAAqC,CAAC;AAEtF;;GAEG;AACH,OAAO,KAAK,6BAA6B,MAAM,oCAAoC,CAAC;AAEpF;;GAEG;AACH,cAAc,8BAA8B,CAAC;AAqB7C;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;AAExD;;GAEG;AACH,cAAc,oBAAoB,CAAC"}
|