@effect-app/infra 0.132.2 → 0.133.0-next.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 +14 -0
- package/_cjs/RequestContext.cjs +23 -13
- package/_cjs/RequestContext.cjs.map +1 -1
- package/_cjs/_global.ext.cjs +7 -0
- package/_cjs/_global.ext.cjs.map +1 -1
- package/_cjs/api/codec.cjs +2 -6
- package/_cjs/api/codec.cjs.map +1 -1
- package/_cjs/api/express/schema/jwt.cjs +5 -26
- package/_cjs/api/express/schema/jwt.cjs.map +1 -1
- package/_cjs/api/setupRequest.cjs +2 -2
- package/_cjs/api/setupRequest.cjs.map +1 -1
- package/_cjs/errors.cjs +3 -1
- package/_cjs/errors.cjs.map +1 -1
- package/_cjs/services/Emailer/Sendgrid.cjs +5 -4
- package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -1
- package/_cjs/services/Operations/live.cjs +12 -10
- package/_cjs/services/Operations/live.cjs.map +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs +17 -15
- package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs +30 -29
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/service.cjs +3 -3
- package/_cjs/services/QueueMaker/service.cjs.map +1 -1
- package/_cjs/services/Repository.cjs +2 -2
- package/_cjs/services/Repository.cjs.map +1 -1
- package/_cjs/services/RepositoryBase.cjs +31 -33
- package/_cjs/services/RepositoryBase.cjs.map +1 -1
- package/_cjs/services/RequestContextContainer.cjs +3 -3
- package/_cjs/services/RequestContextContainer.cjs.map +1 -1
- package/_cjs/services/Store/Cosmos.cjs +4 -4
- package/_cjs/services/Store/Cosmos.cjs.map +1 -1
- package/_cjs/services/Store/Disk.cjs +15 -13
- package/_cjs/services/Store/Disk.cjs.map +1 -1
- package/_cjs/services/Store/service.cjs +49 -40
- package/_cjs/services/Store/service.cjs.map +1 -1
- package/_cjs/services/simpledb/memdb.cjs +15 -15
- package/_cjs/services/simpledb/memdb.cjs.map +1 -1
- package/_cjs/services/simpledb/redisdb.cjs +15 -14
- package/_cjs/services/simpledb/redisdb.cjs.map +1 -1
- package/_cjs/services/simpledb/shared.cjs +3 -3
- package/_cjs/services/simpledb/shared.cjs.map +1 -1
- package/_src/RequestContext.ts +27 -28
- package/_src/_global.ext.ts +12 -4
- package/_src/_global.schema.ts +1 -1
- package/_src/api/codec.ts +3 -9
- package/_src/api/express/schema/jwt.ts +5 -32
- package/_src/api/express/schema/{routing.ts → routing.ts.bak} +10 -10
- package/_src/errors.ts +12 -5
- package/_src/services/Emailer/Sendgrid.ts +17 -14
- package/_src/services/QueueMaker/memQueue.ts +4 -3
- package/_src/services/QueueMaker/sbqueue.ts +4 -3
- package/_src/services/QueueMaker/service.ts +2 -2
- package/_src/services/Repository.ts +14 -13
- package/_src/services/RepositoryBase.ts +14 -37
- package/_src/services/Store/Cosmos.ts +23 -21
- package/_src/services/Store/Disk.ts +4 -2
- package/_src/services/Store/service.ts +59 -62
- package/_src/services/simpledb/memdb.ts +1 -2
- package/_src/services/simpledb/redisdb.ts +21 -17
- package/_src/services/simpledb/shared.ts +4 -5
- package/dist/RequestContext.d.ts +93 -77
- package/dist/RequestContext.d.ts.map +1 -1
- package/dist/RequestContext.js +24 -14
- package/dist/_global.ext.d.ts +7 -5
- package/dist/_global.ext.d.ts.map +1 -1
- package/dist/_global.ext.js +6 -2
- package/dist/_global.schema.d.ts +1 -1
- package/dist/_global.schema.d.ts.map +1 -1
- package/dist/_global.schema.js +1 -1
- package/dist/api/codec.d.ts +2 -3
- package/dist/api/codec.d.ts.map +1 -1
- package/dist/api/codec.js +3 -7
- package/dist/api/express/schema/jwt.d.ts +2 -4
- package/dist/api/express/schema/jwt.d.ts.map +1 -1
- package/dist/api/express/schema/jwt.js +5 -27
- package/dist/api/setupRequest.js +3 -3
- package/dist/errors.d.ts +6 -6
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +4 -2
- package/dist/services/Emailer/Sendgrid.d.ts +108 -108
- package/dist/services/Emailer/Sendgrid.d.ts.map +1 -1
- package/dist/services/Emailer/Sendgrid.js +6 -5
- package/dist/services/Operations/live.js +17 -15
- package/dist/services/Operations/service.d.ts +4 -4
- package/dist/services/Operations/service.d.ts.map +1 -1
- package/dist/services/QueueMaker/memQueue.d.ts +2 -2
- package/dist/services/QueueMaker/memQueue.d.ts.map +1 -1
- package/dist/services/QueueMaker/memQueue.js +17 -15
- package/dist/services/QueueMaker/sbqueue.d.ts +2 -2
- package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
- package/dist/services/QueueMaker/sbqueue.js +26 -25
- package/dist/services/QueueMaker/service.d.ts +30 -16
- package/dist/services/QueueMaker/service.d.ts.map +1 -1
- package/dist/services/QueueMaker/service.js +4 -4
- package/dist/services/Repository.d.ts +10 -9
- package/dist/services/Repository.d.ts.map +1 -1
- package/dist/services/Repository.js +3 -3
- package/dist/services/RepositoryBase.d.ts +20 -21
- package/dist/services/RepositoryBase.d.ts.map +1 -1
- package/dist/services/RepositoryBase.js +32 -34
- package/dist/services/RequestContextContainer.d.ts +4 -4
- package/dist/services/RequestContextContainer.js +3 -3
- package/dist/services/Store/Cosmos.d.ts.map +1 -1
- package/dist/services/Store/Cosmos.js +6 -6
- package/dist/services/Store/Disk.d.ts.map +1 -1
- package/dist/services/Store/Disk.js +14 -13
- package/dist/services/Store/service.d.ts +6 -9
- package/dist/services/Store/service.d.ts.map +1 -1
- package/dist/services/Store/service.js +50 -43
- package/dist/services/simpledb/memdb.d.ts +3 -4
- package/dist/services/simpledb/memdb.d.ts.map +1 -1
- package/dist/services/simpledb/memdb.js +17 -17
- package/dist/services/simpledb/redisdb.d.ts +14 -10
- package/dist/services/simpledb/redisdb.d.ts.map +1 -1
- package/dist/services/simpledb/redisdb.js +17 -16
- package/dist/services/simpledb/shared.d.ts +24 -16
- package/dist/services/simpledb/shared.d.ts.map +1 -1
- package/dist/services/simpledb/shared.js +4 -4
- package/package.json +7 -56
- package/tsconfig.json +2 -1
- package/_cjs/api/express/makeJsonSchema.cjs +0 -151
- package/_cjs/api/express/makeJsonSchema.cjs.map +0 -1
- package/_cjs/api/express/makeJsonSchema.test.cjs +0 -50
- package/_cjs/api/express/makeJsonSchema.test.cjs.map +0 -1
- package/_cjs/api/express/makeOpenApiSpecs.cjs +0 -65
- package/_cjs/api/express/makeOpenApiSpecs.cjs.map +0 -1
- package/_cjs/api/express/schema/routing.cjs +0 -137
- package/_cjs/api/express/schema/routing.cjs.map +0 -1
- package/_cjs/api/writeDocs.cjs +0 -32
- package/_cjs/api/writeDocs.cjs.map +0 -1
- package/_cjs/test.arbs.cjs +0 -32
- package/_cjs/test.arbs.cjs.map +0 -1
- package/dist/api/express/makeJsonSchema.d.ts +0 -34
- package/dist/api/express/makeJsonSchema.d.ts.map +0 -1
- package/dist/api/express/makeJsonSchema.js +0 -131
- package/dist/api/express/makeJsonSchema.test.d.ts.map +0 -1
- package/dist/api/express/makeOpenApiSpecs.d.ts +0 -58
- package/dist/api/express/makeOpenApiSpecs.d.ts.map +0 -1
- package/dist/api/express/makeOpenApiSpecs.js +0 -55
- package/dist/api/express/schema/routing.d.ts +0 -62
- package/dist/api/express/schema/routing.d.ts.map +0 -1
- package/dist/api/express/schema/routing.js +0 -111
- package/dist/api/writeDocs.d.ts +0 -4
- package/dist/api/writeDocs.d.ts.map +0 -1
- package/dist/api/writeDocs.js +0 -24
- package/dist/test.arbs.d.ts +0 -13
- package/dist/test.arbs.d.ts.map +0 -1
- package/dist/test.arbs.js +0 -22
- /package/_src/api/express/{makeJsonSchema.test.ts → makeJsonSchema.test.ts.bak} +0 -0
- /package/_src/api/express/{makeJsonSchema.ts → makeJsonSchema.ts.bak} +0 -0
- /package/_src/api/express/{makeOpenApiSpecs.ts → makeOpenApiSpecs.ts.bak} +0 -0
- /package/_src/api/{writeDocs.ts → writeDocs.ts.bak} +0 -0
- /package/_src/{test.arbs.ts → test.arbs.ts.bak} +0 -0
|
@@ -9,7 +9,7 @@ import * as tsplus_module_8 from "effect/Secret";
|
|
|
9
9
|
import * as tsplus_module_9 from "effect/Layer";
|
|
10
10
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
11
11
|
import { CosmosClient, CosmosClientLayer } from "@effect-app/infra-adapters/cosmos-client";
|
|
12
|
-
import { omit, pick } from "@effect-app/prelude/utils";
|
|
12
|
+
import { dropUndefinedT, omit, pick } from "@effect-app/prelude/utils";
|
|
13
13
|
import { OptimisticConcurrencyException } from "../../errors.js";
|
|
14
14
|
import { buildCosmosQuery, buildFilterJoinSelectCosmosQuery, buildFindJoinCosmosQuery, buildWhereCosmosQuery3, logQuery } from "./Cosmos/query.js";
|
|
15
15
|
import { StoreMaker } from "./service.js";
|
|
@@ -24,12 +24,12 @@ function makeCosmosStore({ prefix }) {
|
|
|
24
24
|
return {
|
|
25
25
|
make: (name, seed, config) => tsplus_module_1.gen(function* ($) {
|
|
26
26
|
const containerId = `${prefix}${name}`;
|
|
27
|
-
yield* $(tsplus_module_1.promise(() => db.containers.createIfNotExists({
|
|
27
|
+
yield* $(tsplus_module_1.promise(() => db.containers.createIfNotExists(dropUndefinedT({
|
|
28
28
|
id: containerId,
|
|
29
29
|
uniqueKeyPolicy: config?.uniqueKeys
|
|
30
30
|
? { uniqueKeys: config.uniqueKeys }
|
|
31
31
|
: undefined
|
|
32
|
-
})));
|
|
32
|
+
}))));
|
|
33
33
|
const defaultValues = config?.defaultValues ?? {};
|
|
34
34
|
const container = db.container(containerId);
|
|
35
35
|
const bulk = container.items.bulk.bind(container.items);
|
|
@@ -41,7 +41,7 @@ function makeCosmosStore({ prefix }) {
|
|
|
41
41
|
const b = [...items].map((x) => [
|
|
42
42
|
x,
|
|
43
43
|
tsplus_module_2.match(tsplus_module_2.fromNullable(x._etag), {
|
|
44
|
-
onNone: () => ({
|
|
44
|
+
onNone: () => dropUndefinedT({
|
|
45
45
|
operationType: "Create",
|
|
46
46
|
resourceBody: {
|
|
47
47
|
...omit(x, "_etag"),
|
|
@@ -49,7 +49,7 @@ function makeCosmosStore({ prefix }) {
|
|
|
49
49
|
},
|
|
50
50
|
partitionKey: config?.partitionValue(x)
|
|
51
51
|
}),
|
|
52
|
-
onSome: (eTag) => ({
|
|
52
|
+
onSome: (eTag) => dropUndefinedT({
|
|
53
53
|
operationType: "Replace",
|
|
54
54
|
id: x.id,
|
|
55
55
|
resourceBody: {
|
|
@@ -249,4 +249,4 @@ function makeCosmosStore({ prefix }) {
|
|
|
249
249
|
export function CosmosStoreLayer(cfg) {
|
|
250
250
|
return tsplus_module_9.provide(tsplus_module_9.effect(StoreMaker)(makeCosmosStore(cfg)), CosmosClientLayer(tsplus_module_8.value(cfg.url), cfg.dbName));
|
|
251
251
|
}
|
|
252
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29zbW9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vX3NyYy9zZXJ2aWNlcy9TdG9yZS9Db3Ntb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsdURBQXVEO0FBRXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQTtBQUMxRixPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ3RELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ2hFLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsZ0NBQWdDLEVBQ2hDLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIsUUFBUSxFQUNULE1BQU0sbUJBQW1CLENBQUE7QUFDMUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQVV6QyxNQUFNLHNCQUFzQjtJQUMxQixZQUFxQixPQUFlO1FBQWYsWUFBTyxHQUFQLE9BQU8sQ0FBUTtJQUFHLENBQUM7Q0FDekMsQ0FBQyxvREFBb0Q7QUFFdEQsU0FBUyxlQUFlLENBQUMsRUFBRSxNQUFNLEVBQWlCO0lBQ2hELE9BQU8sb0JBQVcsUUFBUSxDQUFDLEVBQUMsQ0FBQztRQUMzQixNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBQ3JDLE9BQU87WUFDTCxJQUFJLEVBQUUsQ0FDSixJQUFZLEVBQ1osSUFBaUMsRUFDakMsTUFBd0IsRUFDeEIsRUFBRSxDQUNGLG9CQUFXLFFBQVEsQ0FBQyxFQUFDLENBQUM7Z0JBQ3BCLE1BQU0sV0FBVyxHQUFHLEdBQUcsTUFBTSxHQUFHLElBQUksRUFBRSxDQUFBO2dCQUN0QyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ04sd0JBQWUsR0FBRyxFQUFFLENBQ2xCLEVBQUUsQ0FBQyxVQUFVLENBQUMsaUJBQWlC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
|
|
252
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29zbW9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vX3NyYy9zZXJ2aWNlcy9TdG9yZS9Db3Ntb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsdURBQXVEO0FBRXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQTtBQUMxRixPQUFPLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGdDQUFnQyxFQUNoQyx3QkFBd0IsRUFDeEIsc0JBQXNCLEVBQ3RCLFFBQVEsRUFDVCxNQUFNLG1CQUFtQixDQUFBO0FBQzFCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFVekMsTUFBTSxzQkFBc0I7SUFDMUIsWUFBcUIsT0FBZTtRQUFmLFlBQU8sR0FBUCxPQUFPLENBQVE7SUFBRyxDQUFDO0NBQ3pDLENBQUMsb0RBQW9EO0FBRXRELFNBQVMsZUFBZSxDQUFDLEVBQUUsTUFBTSxFQUFpQjtJQUNoRCxPQUFPLG9CQUFXLFFBQVEsQ0FBQyxFQUFDLENBQUM7UUFDM0IsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUNyQyxPQUFPO1lBQ0wsSUFBSSxFQUFFLENBQ0osSUFBWSxFQUNaLElBQWlDLEVBQ2pDLE1BQXdCLEVBQ3hCLEVBQUUsQ0FDRixvQkFBVyxRQUFRLENBQUMsRUFBQyxDQUFDO2dCQUNwQixNQUFNLFdBQVcsR0FBRyxHQUFHLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQTtnQkFDdEMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUNOLHdCQUFlLEdBQUcsRUFBRSxDQUNsQixFQUFFLENBQUMsVUFBVSxD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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Disk.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/Disk.ts"],"names":[],"mappings":";AAMA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"Disk.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/Disk.ts"],"names":[],"mappings":";AAMA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAqFzC;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM;+EAOtD,MAAM,SACL,OAAO,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,WACxB,YAAY,EAAE,CAAC;GAyC/B;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,0DAGhE"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "effect/Effect";
|
|
2
|
-
import * as tsplus_module_2 from "@effect-app/
|
|
3
|
-
import * as tsplus_module_3 from "
|
|
4
|
-
import * as tsplus_module_4 from "effect/
|
|
5
|
-
import * as tsplus_module_5 from "effect/Layer";
|
|
2
|
+
import * as tsplus_module_2 from "@effect-app/core/Function";
|
|
3
|
+
import * as tsplus_module_3 from "effect/FiberRef";
|
|
4
|
+
import * as tsplus_module_4 from "effect/Layer";
|
|
6
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
7
6
|
import * as fu from "@effect-app/infra-adapters/fileUtil";
|
|
8
7
|
import fs from "fs";
|
|
@@ -21,8 +20,10 @@ function makeDiskStoreInt(prefix, namespace, dir, name, seed, defaultValues) {
|
|
|
21
20
|
get: tsplus_module_1.withSpan(tsplus_module_1.orDie(tsplus_module_1.flatMap(tsplus_module_1.withSpan(fu
|
|
22
21
|
.readTextFile(file), "Disk.read.readFile [effect-app/infra/Store]"), (x) => tsplus_module_1.withSpan(tsplus_module_1.sync(() => JSON.parse(x)), "Disk.read.parse [effect-app/infra/Store]"))), "Disk.read [effect-app/infra/Store]", { attributes: { "disk.file": file } }),
|
|
23
22
|
setRaw: (v) => tsplus_module_1.withSpan(tsplus_module_1.flatMap(tsplus_module_1.withSpan(tsplus_module_1.sync(() => JSON.stringify([...v], undefined, 2)), "Disk.stringify [effect-app/infra/Store]", { attributes: { "disk.file": file } }), (json) => tsplus_module_1.withSpan(fu
|
|
24
|
-
.writeTextFile(file, json), "Disk.write.writeFile [effect-app/infra/Store]"
|
|
25
|
-
attributes: { "disk.
|
|
23
|
+
.writeTextFile(file, json), "Disk.write.writeFile [effect-app/infra/Store]", {
|
|
24
|
+
attributes: { "disk.file_size": json.length }
|
|
25
|
+
})), "Disk.write [effect-app/infra/Store]", {
|
|
26
|
+
attributes: { "disk.file": file }
|
|
26
27
|
})
|
|
27
28
|
};
|
|
28
29
|
const store = yield* $(makeMemoryStoreInt(name, namespace, !fs.existsSync(file)
|
|
@@ -35,10 +36,10 @@ function makeDiskStoreInt(prefix, namespace, dir, name, seed, defaultValues) {
|
|
|
35
36
|
const flushToDiskInBackground = tsplus_module_1.forkDaemon(tsplus_module_1.uninterruptible(tsplus_module_1.tapErrorCause(flushToDisk, (err) => tsplus_module_1.sync(() => console.error(err)))));
|
|
36
37
|
return {
|
|
37
38
|
...store,
|
|
38
|
-
batchSet:
|
|
39
|
-
bulkSet:
|
|
40
|
-
set:
|
|
41
|
-
remove:
|
|
39
|
+
batchSet: tsplus_module_2.flow(store.batchSet, (t) => tsplus_module_1.tap(t, () => flushToDiskInBackground)),
|
|
40
|
+
bulkSet: tsplus_module_2.flow(store.bulkSet, (t) => tsplus_module_1.tap(t, () => flushToDiskInBackground)),
|
|
41
|
+
set: tsplus_module_2.flow(store.set, (t) => tsplus_module_1.tap(t, () => flushToDiskInBackground)),
|
|
42
|
+
remove: tsplus_module_2.flow(store.remove, (t) => tsplus_module_1.tap(t, () => flushToDiskInBackground))
|
|
42
43
|
};
|
|
43
44
|
});
|
|
44
45
|
}
|
|
@@ -57,7 +58,7 @@ export function makeDiskStore({ prefix }, dir) {
|
|
|
57
58
|
const primary = yield* $(makeDiskStoreInt(prefix, "primary", dir, name, seed, config?.defaultValues));
|
|
58
59
|
const stores = new Map([["primary", primary]]);
|
|
59
60
|
const ctx = yield* $(tsplus_module_1.context());
|
|
60
|
-
const getStore = !config?.allowNamespace ? tsplus_module_1.succeed(primary) : tsplus_module_1.flatMap(
|
|
61
|
+
const getStore = !config?.allowNamespace ? tsplus_module_1.succeed(primary) : tsplus_module_1.flatMap(tsplus_module_3.get(storeId), (namespace) => {
|
|
61
62
|
const store = stores.get(namespace);
|
|
62
63
|
if (store) {
|
|
63
64
|
return tsplus_module_1.succeed(store);
|
|
@@ -88,6 +89,6 @@ export function makeDiskStore({ prefix }, dir) {
|
|
|
88
89
|
});
|
|
89
90
|
}
|
|
90
91
|
export function DiskStoreLayer(config, dir) {
|
|
91
|
-
return
|
|
92
|
+
return tsplus_module_4.effect(StoreMaker)(makeDiskStore(config, dir));
|
|
92
93
|
}
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvRGlzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsdURBQXVEO0FBQ3ZELE9BQU8sS0FBSyxFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFFekQsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFBO0FBRW5CLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV6QyxTQUFTLGdCQUFnQixDQUN2QixNQUFjLEVBQ2QsU0FBaUIsRUFDakIsR0FBVyxFQUNYLElBQVksRUFDWixJQUFpQyxFQUNqQyxhQUEyQjtJQUUzQixPQUFPLG9CQUFXLFFBQVEsQ0FBQyxFQUFDLENBQUM7UUFDM0IsSUFBSSxTQUFTLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDNUIsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsU0FBUyxDQUFBO1lBQzNCLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3hCLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDbkIsQ0FBQztRQUNILENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLE1BQU0sR0FBRyxJQUFJLEdBQUcsT0FBTyxDQUFBO1FBQ2hELE1BQU0sT0FBTyxHQUFHO1lBQ2QsR0FBRyxFQUFFLCtDQUFBLHdCQUFBLHlCQUFBLEVBQUU7aUJBQ0osWUFBWSxDQUFDLElBQUksQ0FBQyxFQUNULDZDQUE2QyxDQUFDLEVBQy9DLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyx5QkFBQSxxQkFBWSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBUyxDQUFDLEVBQVUsMENBQTBDLENB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
|
|
@@ -4,7 +4,6 @@ import { Option } from "@effect-app/core/Option";
|
|
|
4
4
|
import { TagClass } from "@effect-app/prelude/service";
|
|
5
5
|
import { Secret } from "effect/Secret";
|
|
6
6
|
import type { UniqueKey } from "@azure/cosmos";
|
|
7
|
-
import type { ParserEnv } from "@effect-app/schema/custom/Parser";
|
|
8
7
|
import type { OptimisticConcurrencyException } from "../../errors.js";
|
|
9
8
|
import type { FieldValues } from "../../filter/types.js";
|
|
10
9
|
import type { QueryBuilder } from "./filterApi/query.js";
|
|
@@ -39,8 +38,8 @@ export type Where = {
|
|
|
39
38
|
value: readonly (SupportedValues)[];
|
|
40
39
|
};
|
|
41
40
|
export type StoreWhereFilter = {
|
|
42
|
-
type?: "where";
|
|
43
|
-
mode?: "and" | "or";
|
|
41
|
+
type?: "where" | undefined;
|
|
42
|
+
mode?: "and" | "or" | undefined;
|
|
44
43
|
where: readonly [
|
|
45
44
|
Where,
|
|
46
45
|
...(Where[])
|
|
@@ -73,10 +72,10 @@ export type FilterJoinSelect = {
|
|
|
73
72
|
value: any;
|
|
74
73
|
};
|
|
75
74
|
export interface FilterArgs<PM extends PersistenceModelType<string>, U extends keyof PM = never> {
|
|
76
|
-
filter?: Filter<PM
|
|
77
|
-
select?: NonEmptyReadonlyArray<U
|
|
78
|
-
limit?: number;
|
|
79
|
-
skip?: number;
|
|
75
|
+
filter?: Filter<PM> | undefined;
|
|
76
|
+
select?: NonEmptyReadonlyArray<U> | undefined;
|
|
77
|
+
limit?: number | undefined;
|
|
78
|
+
skip?: number | undefined;
|
|
80
79
|
}
|
|
81
80
|
export type FilterFunc<PM extends PersistenceModelType<string>> = <U extends keyof PM = never>(args: FilterArgs<PM, U>) => Effect<never, never, (U extends undefined ? PM : Pick<PM, U>)[]>;
|
|
82
81
|
export interface Store<PM extends PersistenceModelType<Id>, Id extends string> {
|
|
@@ -115,11 +114,9 @@ export declare const makeMap: import("effect/Effect").Effect<never, never, Conte
|
|
|
115
114
|
declare const ContextMap_base: (new (service: {
|
|
116
115
|
get: (id: string) => string | undefined;
|
|
117
116
|
set: (id: string, eTag: string | undefined) => void;
|
|
118
|
-
parserEnv: ParserEnv;
|
|
119
117
|
}) => Readonly<{
|
|
120
118
|
get: (id: string) => string | undefined;
|
|
121
119
|
set: (id: string, eTag: string | undefined) => void;
|
|
122
|
-
parserEnv: ParserEnv;
|
|
123
120
|
}>) & import("effect/Context").Tag<ContextMap, ContextMap>;
|
|
124
121
|
/**
|
|
125
122
|
* @tsplus type ContextMap
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/service.ts"],"names":[],"mappings":";;;;;AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,50 +12,57 @@ export const makeContextMap = () => {
|
|
|
12
12
|
const setEtag = (id, eTag) => {
|
|
13
13
|
eTag === undefined ? etags.delete(id) : etags.set(id, eTag);
|
|
14
14
|
};
|
|
15
|
-
const parsedCache = new Map
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
15
|
+
// const parsedCache = new Map<
|
|
16
|
+
// Parser<any, any, any>,
|
|
17
|
+
// Map<unknown, These.These<unknown, unknown>>
|
|
18
|
+
// >()
|
|
19
|
+
// const parserCache = new Map<
|
|
20
|
+
// Parser<any, any, any>,
|
|
21
|
+
// (i: any) => These.These<any, any>
|
|
22
|
+
// >()
|
|
23
|
+
// const setAndReturn = <I, E, A>(
|
|
24
|
+
// p: Parser<I, E, A>,
|
|
25
|
+
// np: (i: I) => These.These<E, A>
|
|
26
|
+
// ) => {
|
|
27
|
+
// parserCache.set(p, np)
|
|
28
|
+
// return np
|
|
29
|
+
// }
|
|
30
|
+
// const parserEnv: ParserEnv = {
|
|
31
|
+
// // TODO: lax: true would turn off refinement checks, may help on large payloads
|
|
32
|
+
// // but of course removes confirming of validation rules (which may be okay for a database owned by the app, as we write safely)
|
|
33
|
+
// lax: false,
|
|
34
|
+
// cache: {
|
|
35
|
+
// getOrSetParser: (p) => parserCache.get(p) ?? setAndReturn(p, (i) => parserEnv.cache!.getOrSet(i, p)),
|
|
36
|
+
// getOrSetParsers: (parsers) => {
|
|
37
|
+
// return Object.entries(parsers).reduce((prev, [k, v]) => {
|
|
38
|
+
// prev[k] = parserEnv.cache!.getOrSetParser(v)
|
|
39
|
+
// return prev
|
|
40
|
+
// }, {} as any)
|
|
41
|
+
// },
|
|
42
|
+
// getOrSet: (i, parse): any => {
|
|
43
|
+
// const c = parsedCache.get(parse)
|
|
44
|
+
// if (c) {
|
|
45
|
+
// const f = c.get(i)
|
|
46
|
+
// if (f) {
|
|
47
|
+
// // console.log("$$$ cache hit", i)
|
|
48
|
+
// return f
|
|
49
|
+
// } else {
|
|
50
|
+
// const nf = parse(i, parserEnv)
|
|
51
|
+
// c.set(i, nf)
|
|
52
|
+
// return nf
|
|
53
|
+
// }
|
|
54
|
+
// } else {
|
|
55
|
+
// const nf = parse(i, parserEnv)
|
|
56
|
+
// parsedCache.set(parse, new Map([[i, nf]]))
|
|
57
|
+
// return nf
|
|
58
|
+
// }
|
|
59
|
+
// }
|
|
60
|
+
// }
|
|
61
|
+
// }
|
|
55
62
|
return {
|
|
56
63
|
get: getEtag,
|
|
57
|
-
set: setEtag
|
|
58
|
-
parserEnv
|
|
64
|
+
set: setEtag
|
|
65
|
+
// parserEnv
|
|
59
66
|
};
|
|
60
67
|
};
|
|
61
68
|
/**
|
|
@@ -68,4 +75,4 @@ export const makeMap = tsplus_module_2.sync(() => makeContextMap());
|
|
|
68
75
|
*/
|
|
69
76
|
export class ContextMap extends tsplus_module_1.TagClass() {
|
|
70
77
|
}
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWlHQTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sVUFBVyxTQUFRLGdCQUFBLFFBQVEsRUFNcEM7Q0FDSDtBQUVELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFlLEVBQUU7SUFDN0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUE7SUFDdkMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDN0MsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFVLEVBQUUsSUFBd0IsRUFBRSxFQUFFO1FBQ3ZELElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQzdELENBQUMsQ0FBQTtJQUVELCtCQUErQjtJQUMvQiwyQkFBMkI7SUFDM0IsZ0RBQWdEO0lBQ2hELE1BQU07SUFFTiwrQkFBK0I7SUFDL0IsMkJBQTJCO0lBQzNCLHNDQUFzQztJQUN0QyxNQUFNO0lBRU4sa0NBQWtDO0lBQ2xDLHdCQUF3QjtJQUN4QixvQ0FBb0M7SUFDcEMsU0FBUztJQUNULDJCQUEyQjtJQUMzQixjQUFjO0lBQ2QsSUFBSTtJQUVKLGlDQUFpQztJQUNqQyxvRkFBb0Y7SUFDcEYsb0lBQW9JO0lBQ3BJLGdCQUFnQjtJQUNoQixhQUFhO0lBQ2IsNEdBQTRHO0lBQzVHLHNDQUFzQztJQUN0QyxrRUFBa0U7SUFDbEUsdURBQXVEO0lBQ3ZELHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsU0FBUztJQUNULHFDQUFxQztJQUNyQyx5Q0FBeUM7SUFDekMsaUJBQWlCO0lBQ2pCLDZCQUE2QjtJQUM3QixtQkFBbUI7SUFDbkIsK0NBQStDO0lBQy9DLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsMkNBQTJDO0lBQzNDLHlCQUF5QjtJQUN6QixzQkFBc0I7SUFDdEIsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQix5Q0FBeUM7SUFDekMscURBQXFEO0lBQ3JELG9CQUFvQjtJQUNwQixVQUFVO0lBQ1YsUUFBUTtJQUNSLE1BQU07SUFDTixJQUFJO0lBRUosT0FBTztRQUNMLEdBQUcsRUFBRSxPQUFPO1FBQ1osR0FBRyxFQUFFLE9BQU87UUFDWixZQUFZO0tBQ2IsQ0FBQTtBQUNILENBQUMsQ0FBQTtBQUVEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLHFCQUFZLEdBQUcsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUE7QUFFMUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFVBQVcsU0FBUSxnQkFBQSxRQUFRLEVBSXBDO0NBQ0gifQ==
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { Effect } from "effect/Effect";
|
|
2
2
|
import { Equivalence } from "effect/Equivalence";
|
|
3
3
|
import { Option } from "@effect-app/core/Option";
|
|
4
|
-
import * as S from "@effect-app/schema";
|
|
5
4
|
import type { DBRecord } from "./shared.js";
|
|
6
5
|
import * as simpledb from "./simpledb.js";
|
|
7
6
|
export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>) => {
|
|
8
|
-
find: (id: string) => import("effect/Effect").Effect<simpledb.RecordCache | RDecode,
|
|
9
|
-
findBy: <V extends Partial<A>>(keys: V, eq: Equivalence<V>) => import("effect/Effect").Effect<RDecode,
|
|
10
|
-
save: (record: A) => import("effect/Effect").Effect<simpledb.RecordCache | REncode, import("./shared.js").OptimisticLockException | simpledb.InvalidStateError
|
|
7
|
+
find: (id: string) => import("effect/Effect").Effect<simpledb.RecordCache | RDecode, import("@effect/schema/ParseResult").ParseError | simpledb.InvalidStateError, import("effect/Option").Option<A>>;
|
|
8
|
+
findBy: <V extends Partial<A>>(keys: V, eq: Equivalence<V>) => import("effect/Effect").Effect<RDecode, import("@effect/schema/ParseResult").ParseError, import("effect/Option").Option<A & {}>>;
|
|
9
|
+
save: (record: A) => import("effect/Effect").Effect<simpledb.RecordCache | REncode, import("@effect/schema/ParseResult").ParseError | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
|
|
11
10
|
};
|
|
12
11
|
//# sourceMappingURL=memdb.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/memdb.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"memdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/memdb.ts"],"names":[],"mappings":";;;AAEA,OAAO,KAAK,EAAgB,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEzD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AASzC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,KAAK,OAAO,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,cACrC,EAAE,KAAK,OAAO,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;;yCAmBF,CAAC,MAAM,YAAY,CAAC,CAAC;;EAoCpE"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "effect/
|
|
2
|
-
import * as tsplus_module_2 from "effect/
|
|
3
|
-
import * as tsplus_module_3 from "
|
|
4
|
-
import * as tsplus_module_4 from "effect/
|
|
1
|
+
import * as tsplus_module_1 from "@effect/schema/Parser";
|
|
2
|
+
import * as tsplus_module_2 from "effect/Option";
|
|
3
|
+
import * as tsplus_module_3 from "effect/Effect";
|
|
4
|
+
import * as tsplus_module_4 from "@effect-app/core/Effect";
|
|
5
|
+
import * as tsplus_module_5 from "effect/Exit";
|
|
5
6
|
import { flow } from "@effect-app/core/Function";
|
|
6
|
-
import * as S from "@effect-app/schema";
|
|
7
7
|
import { getRecordName, makeMap, SerializedDBRecord } from "./shared.js";
|
|
8
8
|
import * as simpledb from "./simpledb.js";
|
|
9
9
|
// When we are in-process, we want to share the same Storage
|
|
10
10
|
// Do not try this at home.
|
|
11
11
|
const storage = makeMap();
|
|
12
|
-
const parseSDB =
|
|
12
|
+
const parseSDB = tsplus_module_1.parse(SerializedDBRecord);
|
|
13
13
|
export function createContext() {
|
|
14
14
|
return (type, encode, decode) => {
|
|
15
15
|
return {
|
|
@@ -18,35 +18,35 @@ export function createContext() {
|
|
|
18
18
|
save: simpledb.store(find, store, bogusLock, type)
|
|
19
19
|
};
|
|
20
20
|
function find(id) {
|
|
21
|
-
return
|
|
22
|
-
.find(getRecordName(type, id)), (_) =>
|
|
21
|
+
return tsplus_module_4.mapOption(tsplus_module_4.flatMapOption(tsplus_module_3.map(storage
|
|
22
|
+
.find(getRecordName(type, id)), (_) => tsplus_module_2.map(_, (s) => JSON.parse(s))), parseSDB), ({ data, version }) => ({
|
|
23
23
|
data: JSON.parse(data),
|
|
24
24
|
version
|
|
25
25
|
}));
|
|
26
26
|
}
|
|
27
27
|
function findBy(keys, eq) {
|
|
28
28
|
// Naive implementation, fine for in memory testing purposes.
|
|
29
|
-
return
|
|
29
|
+
return tsplus_module_3.map(tsplus_module_3.gen(function* ($) {
|
|
30
30
|
for (const [, value] of storage) {
|
|
31
31
|
const sdb_ = JSON.parse(value);
|
|
32
32
|
const sdb = yield* $(parseSDB(sdb_));
|
|
33
33
|
const cr = { data: JSON.parse(sdb.data), version: sdb.version };
|
|
34
|
-
const r = yield* $(
|
|
35
|
-
if (
|
|
34
|
+
const r = yield* $(tsplus_module_3.exit(tsplus_module_3.filterOrFail(decode(cr.data), (d) => eq(keys, d), () => "not equals")));
|
|
35
|
+
if (tsplus_module_5.isSuccess(r)) {
|
|
36
36
|
return r.value;
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
return null;
|
|
40
|
-
}),
|
|
40
|
+
}), tsplus_module_2.fromNullable);
|
|
41
41
|
}
|
|
42
42
|
function store(record, currentVersion) {
|
|
43
|
-
const version =
|
|
44
|
-
const getData = flow(encode, (_) =>
|
|
45
|
-
return
|
|
43
|
+
const version = tsplus_module_2.getOrElse(tsplus_module_2.map(currentVersion, (cv) => (parseInt(cv) + 1).toString()), () => "1");
|
|
44
|
+
const getData = flow(encode, (_) => tsplus_module_3.map(tsplus_module_3.map(_, JSON.stringify), (data) => JSON.stringify({ version, timestamp: new Date(), data })));
|
|
45
|
+
return tsplus_module_3.map(tsplus_module_3.flatMap(getData(record), (serialised) => storage.set(getRecordName(type, record.id), serialised)), () => ({ version, data: record }));
|
|
46
46
|
}
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
49
|
function bogusLock() {
|
|
50
|
-
return
|
|
50
|
+
return tsplus_module_3.acquireRelease(tsplus_module_3.unit, () => tsplus_module_3.unit);
|
|
51
51
|
}
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtZGIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL3NpbXBsZWRiL21lbWRiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBR2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3hFLE9BQU8sS0FBSyxRQUFRLE1BQU0sZUFBZSxDQUFBO0FBR3pDLDREQUE0RDtBQUM1RCwyQkFBMkI7QUFDM0IsTUFBTSxPQUFPLEdBQUcsT0FBTyxFQUFrQixDQUFBO0FBRXpDLE1BQU0sUUFBUSx5QkFBRyxrQkFBa0IsQ0FBTSxDQUFBO0FBRXpDLE1BQU0sVUFBVSxhQUFhO0lBQzNCLE9BQU8sQ0FDTCxJQUFZLEVBQ1osTUFBaUQsRUFDakQsTUFBOEMsRUFDOUMsRUFBRTtRQUNGLE9BQU87WUFDTCxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQztZQUN2QyxNQUFNO1lBQ04sSUFBSSxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDO1NBQ25ELENBQUE7UUFFRCxTQUFTLElBQUksQ0FBQyxFQUFVO1lBQ3RCLE9BQU8sMEJBQUEsOEJBQUEsb0JBQUEsT0FBTztpQkFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUN6QixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsb0JBQUEsQ0FBQyxFQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDNUIsUUFBUSxDQUFDLEVBQ2IsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxF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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Effect } from "effect/Effect";
|
|
2
2
|
import { Option } from "@effect-app/core/Option";
|
|
3
3
|
import { RedisClient } from "@effect-app/infra-adapters/redis-client";
|
|
4
|
-
import * as S from "@effect-app/schema";
|
|
4
|
+
import * as S from "@effect-app/prelude/schema";
|
|
5
5
|
import type { DBRecord, Index } from "./shared.js";
|
|
6
6
|
import { CouldNotAquireDbLockException } from "./shared.js";
|
|
7
7
|
import * as simpledb from "./simpledb.js";
|
|
@@ -10,15 +10,19 @@ export declare function createContext<TKey extends string, EA, A extends DBRecor
|
|
|
10
10
|
findByIndex: (index: Index) => import("effect/Effect").Effect<RedisClient, import("@effect-app/infra-adapters/redis-client").ConnectionException, import("effect/Option").Option<TKey>>;
|
|
11
11
|
save: (record: A) => import("effect/Effect").Effect<RedisClient | simpledb.RecordCache | REncode, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
|
|
12
12
|
};
|
|
13
|
-
declare const RedisSerializedDBRecord_base: S.Class<
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
13
|
+
declare const RedisSerializedDBRecord_base: S.Class<{
|
|
14
|
+
readonly data: string;
|
|
15
|
+
readonly version: string;
|
|
16
|
+
readonly timestamp: string;
|
|
17
|
+
}, {
|
|
18
|
+
readonly data: string;
|
|
19
|
+
readonly version: string;
|
|
20
|
+
readonly timestamp: Date;
|
|
21
|
+
}, {
|
|
22
|
+
readonly data: string;
|
|
23
|
+
readonly version: string;
|
|
24
|
+
readonly timestamp: Date;
|
|
25
|
+
}, RedisSerializedDBRecord, import("effect/Data").Case>;
|
|
22
26
|
export declare class RedisSerializedDBRecord extends RedisSerializedDBRecord_base {
|
|
23
27
|
}
|
|
24
28
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redisdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/redisdb.ts"],"names":[],"mappings":";;AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAA;AACrE,OAAO,KAAK,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"redisdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/redisdb.ts"],"names":[],"mappings":";;AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAA;AACrE,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAE/C,OAAO,KAAK,EAAgB,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAuB,6BAA6B,EAA+B,MAAM,aAAa,CAAA;AAC7G,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAIzC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,KAAK,OAAO,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,cACrC,EAAE,KAAK,OAAO,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,iBAC/B,MAAM,oBACH,CAAC,KAAK,KAAK;;yBAsFN,KAAK;;EAwF/B;;;;;;;;;;;;;;AAED,qBAAa,uBAAwB,SAAQ,4BAI3C;CAAG"}
|