@effect-app/infra 0.198.1 → 0.199.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 +26 -0
- package/_cjs/RequestContext.cjs +14 -9
- package/_cjs/RequestContext.cjs.map +1 -1
- package/_cjs/_ext/Array.cjs +3 -7
- package/_cjs/_ext/Array.cjs.map +1 -1
- package/_cjs/api/reportError.cjs +3 -6
- package/_cjs/api/reportError.cjs.map +1 -1
- package/_cjs/api/routing/base.cjs +27 -61
- package/_cjs/api/routing/base.cjs.map +1 -1
- package/_cjs/api/routing/defaultErrorHandler.cjs +14 -21
- package/_cjs/api/routing/defaultErrorHandler.cjs.map +1 -1
- package/_cjs/api/routing/makeRequestHandler.cjs +44 -51
- package/_cjs/api/routing/makeRequestHandler.cjs.map +1 -1
- package/_cjs/api/routing/match.cjs +6 -13
- package/_cjs/api/routing/match.cjs.map +1 -1
- package/_cjs/api/{express → routing}/schema/jwt.cjs +3 -4
- package/_cjs/api/routing/schema/jwt.cjs.map +1 -0
- package/_cjs/api/routing/schema/routing.cjs +136 -0
- package/_cjs/api/routing/schema/routing.cjs.map +1 -0
- package/_cjs/api/setupRequest.cjs +16 -22
- package/_cjs/api/setupRequest.cjs.map +1 -1
- package/_cjs/errorReporter.cjs +16 -17
- package/_cjs/errorReporter.cjs.map +1 -1
- package/_cjs/errors.cjs +2 -4
- package/_cjs/errors.cjs.map +1 -1
- package/_cjs/filter/types/path/index.cjs +0 -2
- package/_cjs/filter/types/path/index.cjs.map +1 -1
- package/_cjs/filter.cjs +35 -0
- package/_cjs/filter.cjs.map +1 -1
- package/_cjs/logger/jsonLogger.cjs +9 -15
- package/_cjs/logger/jsonLogger.cjs.map +1 -1
- package/_cjs/logger/logFmtLogger.cjs +7 -11
- package/_cjs/logger/logFmtLogger.cjs.map +1 -1
- package/_cjs/logger/shared.cjs +6 -8
- package/_cjs/logger/shared.cjs.map +1 -1
- package/_cjs/rateLimit.cjs +9 -12
- package/_cjs/rateLimit.cjs.map +1 -1
- package/_cjs/services/Emailer/Sendgrid.cjs +9 -16
- package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -1
- package/_cjs/services/Emailer/fake.cjs +5 -8
- package/_cjs/services/Emailer/fake.cjs.map +1 -1
- package/_cjs/services/Emailer/service.cjs +2 -4
- package/_cjs/services/Emailer/service.cjs.map +1 -1
- package/_cjs/services/Operations/live.cjs +29 -42
- package/_cjs/services/Operations/live.cjs.map +1 -1
- package/_cjs/services/Operations/service.cjs +15 -15
- package/_cjs/services/Operations/service.cjs.map +1 -1
- package/_cjs/services/QueueMaker/errors.cjs +8 -12
- package/_cjs/services/QueueMaker/errors.cjs.map +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs +27 -33
- package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs +31 -40
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/service.cjs +7 -9
- package/_cjs/services/QueueMaker/service.cjs.map +1 -1
- package/_cjs/services/Repository/dsl.cjs +11 -14
- package/_cjs/services/Repository/dsl.cjs.map +1 -1
- package/_cjs/services/Repository/ext.cjs +62 -71
- package/_cjs/services/Repository/ext.cjs.map +1 -1
- package/_cjs/services/RepositoryBase.cjs +171 -169
- package/_cjs/services/RepositoryBase.cjs.map +1 -1
- package/_cjs/services/RequestContextContainer.cjs +17 -23
- package/_cjs/services/RequestContextContainer.cjs.map +1 -1
- package/_cjs/services/Store/ContextMapContainer.cjs +10 -16
- package/_cjs/services/Store/ContextMapContainer.cjs.map +1 -1
- package/_cjs/services/Store/Cosmos/query.cjs +5 -9
- package/_cjs/services/Store/Cosmos/query.cjs.map +1 -1
- package/_cjs/services/Store/Cosmos.cjs +58 -68
- package/_cjs/services/Store/Cosmos.cjs.map +1 -1
- package/_cjs/services/Store/Disk.cjs +34 -36
- package/_cjs/services/Store/Disk.cjs.map +1 -1
- package/_cjs/services/Store/Memory.cjs +55 -65
- package/_cjs/services/Store/Memory.cjs.map +1 -1
- package/_cjs/services/Store/codeFilter.cjs +2 -4
- package/_cjs/services/Store/codeFilter.cjs.map +1 -1
- package/_cjs/services/Store/codeFilter.test.cjs +13 -12
- package/_cjs/services/Store/codeFilter.test.cjs.map +1 -1
- package/_cjs/services/Store/filterApi/query.cjs +2 -4
- package/_cjs/services/Store/filterApi/query.cjs.map +1 -1
- package/_cjs/services/Store/index.cjs +6 -9
- package/_cjs/services/Store/index.cjs.map +1 -1
- package/_cjs/services/Store/service.cjs +5 -7
- package/_cjs/services/Store/service.cjs.map +1 -1
- package/_cjs/services/Store/utils.cjs +16 -20
- package/_cjs/services/Store/utils.cjs.map +1 -1
- package/_cjs/services/query.cjs +4 -2
- package/_cjs/services/query.cjs.map +1 -1
- package/_cjs/test.arbs.cjs +3 -4
- package/_cjs/test.arbs.cjs.map +1 -1
- package/dist/RequestContext.d.ts +20 -20
- package/dist/RequestContext.d.ts.map +1 -1
- package/dist/RequestContext.js +15 -8
- package/dist/_ext/Array.d.ts +2 -3
- package/dist/_ext/Array.d.ts.map +1 -1
- package/dist/_ext/Array.js +5 -5
- package/dist/api/reportError.d.ts +5 -5
- package/dist/api/reportError.d.ts.map +1 -1
- package/dist/api/reportError.js +6 -6
- package/dist/api/routing/base.d.ts +11 -15
- package/dist/api/routing/base.d.ts.map +1 -1
- package/dist/api/routing/base.js +48 -67
- package/dist/api/routing/defaultErrorHandler.d.ts +4 -6
- package/dist/api/routing/defaultErrorHandler.d.ts.map +1 -1
- package/dist/api/routing/defaultErrorHandler.js +26 -28
- package/dist/api/routing/makeRequestHandler.d.ts +6 -7
- package/dist/api/routing/makeRequestHandler.d.ts.map +1 -1
- package/dist/api/routing/makeRequestHandler.js +69 -59
- package/dist/api/routing/match.d.ts +7 -8
- package/dist/api/routing/match.d.ts.map +1 -1
- package/dist/api/routing/match.js +7 -11
- package/dist/api/routing/schema/jwt.d.ts +4 -0
- package/dist/api/routing/schema/jwt.d.ts.map +1 -0
- package/dist/api/routing/schema/jwt.js +11 -0
- package/dist/api/{express → routing}/schema/routing.d.ts +2 -2
- package/dist/api/routing/schema/routing.d.ts.map +1 -0
- package/dist/api/routing/schema/routing.js +123 -0
- package/dist/api/routing.js +3 -1
- package/dist/api/setupRequest.d.ts +3 -5
- package/dist/api/setupRequest.d.ts.map +1 -1
- package/dist/api/setupRequest.js +20 -24
- package/dist/errorReporter.d.ts +4 -4
- package/dist/errorReporter.d.ts.map +1 -1
- package/dist/errorReporter.js +20 -17
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +3 -3
- package/dist/filter/types/path/index.d.ts +2 -2
- package/dist/filter/types/path/index.d.ts.map +1 -1
- package/dist/filter/types/path/index.js +2 -3
- package/dist/filter/types.js +2 -1
- package/dist/filter.d.ts.map +1 -1
- package/dist/filter.js +36 -1
- package/dist/logger/jsonLogger.d.ts +2 -1
- package/dist/logger/jsonLogger.d.ts.map +1 -1
- package/dist/logger/jsonLogger.js +9 -13
- package/dist/logger/logFmtLogger.d.ts +2 -1
- package/dist/logger/logFmtLogger.d.ts.map +1 -1
- package/dist/logger/logFmtLogger.js +9 -11
- package/dist/logger/shared.d.ts +2 -1
- package/dist/logger/shared.d.ts.map +1 -1
- package/dist/logger/shared.js +7 -9
- package/dist/rateLimit.d.ts +7 -10
- package/dist/rateLimit.d.ts.map +1 -1
- package/dist/rateLimit.js +17 -16
- package/dist/services/Emailer/Sendgrid.d.ts +1 -2
- package/dist/services/Emailer/Sendgrid.d.ts.map +1 -1
- package/dist/services/Emailer/Sendgrid.js +16 -20
- package/dist/services/Emailer/fake.d.ts +2 -2
- package/dist/services/Emailer/fake.d.ts.map +1 -1
- package/dist/services/Emailer/fake.js +10 -8
- package/dist/services/Emailer/service.d.ts +7 -10
- package/dist/services/Emailer/service.d.ts.map +1 -1
- package/dist/services/Emailer/service.js +3 -3
- package/dist/services/Operations/live.d.ts +2 -3
- package/dist/services/Operations/live.d.ts.map +1 -1
- package/dist/services/Operations/live.js +44 -51
- package/dist/services/Operations/service.d.ts +14 -19
- package/dist/services/Operations/service.d.ts.map +1 -1
- package/dist/services/Operations/service.js +23 -28
- package/dist/services/QueueMaker/errors.d.ts +5 -7
- package/dist/services/QueueMaker/errors.d.ts.map +1 -1
- package/dist/services/QueueMaker/errors.js +11 -11
- package/dist/services/QueueMaker/memQueue.d.ts +6 -9
- package/dist/services/QueueMaker/memQueue.d.ts.map +1 -1
- package/dist/services/QueueMaker/memQueue.js +37 -39
- package/dist/services/QueueMaker/sbqueue.d.ts +6 -9
- package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
- package/dist/services/QueueMaker/sbqueue.js +41 -39
- package/dist/services/QueueMaker/service.d.ts +2 -4
- package/dist/services/QueueMaker/service.d.ts.map +1 -1
- package/dist/services/QueueMaker/service.js +8 -8
- package/dist/services/Repository/dsl.d.ts +8 -10
- package/dist/services/Repository/dsl.d.ts.map +1 -1
- package/dist/services/Repository/dsl.js +12 -13
- package/dist/services/Repository/ext.d.ts +34 -62
- package/dist/services/Repository/ext.d.ts.map +1 -1
- package/dist/services/Repository/ext.js +59 -70
- package/dist/services/RepositoryBase.d.ts +41 -47
- package/dist/services/RepositoryBase.d.ts.map +1 -1
- package/dist/services/RepositoryBase.js +182 -194
- package/dist/services/RequestContextContainer.d.ts +13 -21
- package/dist/services/RequestContextContainer.d.ts.map +1 -1
- package/dist/services/RequestContextContainer.js +21 -25
- package/dist/services/Store/ContextMapContainer.d.ts +11 -18
- package/dist/services/Store/ContextMapContainer.d.ts.map +1 -1
- package/dist/services/Store/ContextMapContainer.js +17 -18
- package/dist/services/Store/Cosmos/query.d.ts +3 -2
- package/dist/services/Store/Cosmos/query.d.ts.map +1 -1
- package/dist/services/Store/Cosmos/query.js +10 -11
- package/dist/services/Store/Cosmos.d.ts +2 -3
- package/dist/services/Store/Cosmos.d.ts.map +1 -1
- package/dist/services/Store/Cosmos.js +107 -90
- package/dist/services/Store/Disk.d.ts +4 -4
- package/dist/services/Store/Disk.d.ts.map +1 -1
- package/dist/services/Store/Disk.js +54 -50
- package/dist/services/Store/Memory.d.ts +6 -8
- package/dist/services/Store/Memory.d.ts.map +1 -1
- package/dist/services/Store/Memory.js +93 -89
- package/dist/services/Store/codeFilter.d.ts.map +1 -1
- package/dist/services/Store/codeFilter.js +3 -3
- package/dist/services/Store/codeFilter.test.d.ts.map +1 -1
- package/dist/services/Store/filterApi/query.d.ts +1 -1
- package/dist/services/Store/filterApi/query.d.ts.map +1 -1
- package/dist/services/Store/filterApi/query.js +3 -3
- package/dist/services/Store/index.d.ts +1 -2
- package/dist/services/Store/index.d.ts.map +1 -1
- package/dist/services/Store/index.js +7 -8
- package/dist/services/Store/service.d.ts +20 -23
- package/dist/services/Store/service.d.ts.map +1 -1
- package/dist/services/Store/service.js +6 -6
- package/dist/services/Store/utils.d.ts +3 -3
- package/dist/services/Store/utils.d.ts.map +1 -1
- package/dist/services/Store/utils.js +26 -28
- package/dist/services/query.d.ts +6 -6
- package/dist/services/query.d.ts.map +1 -1
- package/dist/services/query.js +5 -4
- package/dist/test.arbs.d.ts +0 -2
- package/dist/test.arbs.d.ts.map +1 -1
- package/dist/test.arbs.js +3 -4
- package/package.json +28 -168
- package/src/RequestContext.ts +1 -0
- package/src/_ext/Array.ts +5 -2
- package/src/api/reportError.ts +14 -10
- package/src/api/routing/base.ts +77 -110
- package/src/api/routing/defaultErrorHandler.ts +64 -54
- package/src/api/routing/makeRequestHandler.ts +165 -135
- package/src/api/routing/match.ts +14 -8
- package/src/api/{express → routing}/schema/jwt.ts +6 -5
- package/src/api/{express → routing}/schema/routing.ts +2 -1
- package/src/api/setupRequest.ts +30 -24
- package/src/errorReporter.ts +12 -11
- package/src/errors.ts +1 -0
- package/src/filter/types/path/index.ts +2 -2
- package/src/logger/jsonLogger.ts +6 -5
- package/src/logger/logFmtLogger.ts +4 -5
- package/src/logger/shared.ts +4 -3
- package/src/rateLimit.ts +37 -34
- package/src/services/Emailer/Sendgrid.ts +12 -10
- package/src/services/Emailer/fake.ts +7 -4
- package/src/services/Emailer/service.ts +4 -1
- package/src/services/Operations/live.ts +66 -59
- package/src/services/Operations/service.ts +41 -34
- package/src/services/QueueMaker/errors.ts +15 -11
- package/src/services/QueueMaker/memQueue.ts +59 -40
- package/src/services/QueueMaker/sbqueue.ts +54 -33
- package/src/services/QueueMaker/service.ts +7 -6
- package/src/services/Repository/dsl.ts +12 -8
- package/src/services/Repository/ext.ts +52 -44
- package/src/services/RepositoryBase.ts +278 -240
- package/src/services/RequestContextContainer.ts +30 -18
- package/src/services/Store/ContextMapContainer.ts +26 -13
- package/src/services/Store/Cosmos/query.ts +17 -11
- package/src/services/Store/Cosmos.ts +209 -168
- package/src/services/Store/Disk.ts +69 -53
- package/src/services/Store/Memory.ts +138 -97
- package/src/services/Store/{Redis.ts → Redis.ts.bak} +7 -5
- package/src/services/Store/codeFilter.test.ts +61 -36
- package/src/services/Store/codeFilter.ts +1 -0
- package/src/services/Store/filterApi/query.ts +1 -0
- package/src/services/Store/index.ts +7 -6
- package/src/services/Store/service.ts +4 -1
- package/src/services/Store/utils.ts +25 -23
- package/src/services/query.ts +3 -3
- package/src/services/simpledb/{cosmosdb.ts → cosmosdb.ts.bak} +1 -0
- package/src/services/simpledb/{diskdb.ts → diskdb.ts.bak} +2 -1
- package/src/services/simpledb/{memdb.ts → memdb.ts.bak} +3 -2
- package/src/services/simpledb/{mongodb.ts → mongodb.ts.bak} +1 -0
- package/src/services/simpledb/{redisdb.ts → redisdb.ts.bak} +17 -14
- package/src/services/simpledb/{shared.ts → shared.ts.bak} +2 -1
- package/src/services/simpledb/{simpledb.ts → simpledb.ts.bak} +6 -2
- package/tsconfig.json +4 -21
- package/tsconfig.json.bak +0 -4
- package/_cjs/_global.cjs +0 -6
- package/_cjs/_global.cjs.map +0 -1
- package/_cjs/_global.ext.cjs +0 -5
- package/_cjs/_global.ext.cjs.map +0 -1
- package/_cjs/_global.schema.cjs +0 -5
- package/_cjs/_global.schema.cjs.map +0 -1
- package/_cjs/api/defaultErrorHandler.cjs +0 -37
- package/_cjs/api/defaultErrorHandler.cjs.map +0 -1
- package/_cjs/api/express/schema/jwt.cjs.map +0 -1
- package/_cjs/api/express/schema/routing.cjs +0 -23
- package/_cjs/api/express/schema/routing.cjs.map +0 -1
- package/_cjs/api/http.cjs +0 -42
- package/_cjs/api/http.cjs.map +0 -1
- package/_cjs/services/Store/Redis.cjs +0 -73
- package/_cjs/services/Store/Redis.cjs.map +0 -1
- package/_cjs/services/simpledb/cosmosdb.cjs +0 -109
- package/_cjs/services/simpledb/cosmosdb.cjs.map +0 -1
- package/_cjs/services/simpledb/diskdb.cjs +0 -125
- package/_cjs/services/simpledb/diskdb.cjs.map +0 -1
- package/_cjs/services/simpledb/index.cjs +0 -38
- package/_cjs/services/simpledb/index.cjs.map +0 -1
- package/_cjs/services/simpledb/memdb.cjs +0 -72
- package/_cjs/services/simpledb/memdb.cjs.map +0 -1
- package/_cjs/services/simpledb/mongodb.cjs +0 -99
- package/_cjs/services/simpledb/mongodb.cjs.map +0 -1
- package/_cjs/services/simpledb/redisdb.cjs +0 -135
- package/_cjs/services/simpledb/redisdb.cjs.map +0 -1
- package/_cjs/services/simpledb/shared.cjs +0 -79
- package/_cjs/services/simpledb/shared.cjs.map +0 -1
- package/_cjs/services/simpledb/simpledb.cjs +0 -85
- package/_cjs/services/simpledb/simpledb.cjs.map +0 -1
- package/dist/_global.d.ts +0 -10
- package/dist/_global.d.ts.map +0 -1
- package/dist/_global.ext.d.ts +0 -34
- package/dist/_global.ext.d.ts.map +0 -1
- package/dist/_global.ext.js +0 -6
- package/dist/_global.js +0 -12
- package/dist/_global.schema.d.ts +0 -6
- package/dist/_global.schema.d.ts.map +0 -1
- package/dist/_global.schema.js +0 -9
- package/dist/api/defaultErrorHandler.d.ts +0 -6
- package/dist/api/defaultErrorHandler.d.ts.map +0 -1
- package/dist/api/defaultErrorHandler.js +0 -34
- package/dist/api/express/schema/jwt.d.ts +0 -6
- package/dist/api/express/schema/jwt.d.ts.map +0 -1
- package/dist/api/express/schema/jwt.js +0 -11
- package/dist/api/express/schema/routing.d.ts.map +0 -1
- package/dist/api/express/schema/routing.js +0 -10
- package/dist/api/http.d.ts +0 -16
- package/dist/api/http.d.ts.map +0 -1
- package/dist/api/http.js +0 -12
- package/dist/services/Store/Redis.d.ts +0 -6
- package/dist/services/Store/Redis.d.ts.map +0 -1
- package/dist/services/Store/Redis.js +0 -76
- package/dist/services/simpledb/cosmosdb.d.ts +0 -14
- package/dist/services/simpledb/cosmosdb.d.ts.map +0 -1
- package/dist/services/simpledb/cosmosdb.js +0 -103
- package/dist/services/simpledb/diskdb.d.ts +0 -12
- package/dist/services/simpledb/diskdb.d.ts.map +0 -1
- package/dist/services/simpledb/diskdb.js +0 -109
- package/dist/services/simpledb/index.d.ts +0 -7
- package/dist/services/simpledb/index.d.ts.map +0 -1
- package/dist/services/simpledb/index.js +0 -7
- package/dist/services/simpledb/memdb.d.ts +0 -11
- package/dist/services/simpledb/memdb.d.ts.map +0 -1
- package/dist/services/simpledb/memdb.js +0 -58
- package/dist/services/simpledb/mongodb.d.ts +0 -13
- package/dist/services/simpledb/mongodb.d.ts.map +0 -1
- package/dist/services/simpledb/mongodb.js +0 -68
- package/dist/services/simpledb/redisdb.d.ts +0 -35
- package/dist/services/simpledb/redisdb.d.ts.map +0 -1
- package/dist/services/simpledb/redisdb.js +0 -126
- package/dist/services/simpledb/shared.d.ts +0 -87
- package/dist/services/simpledb/shared.d.ts.map +0 -1
- package/dist/services/simpledb/shared.js +0 -52
- package/dist/services/simpledb/simpledb.d.ts +0 -23
- package/dist/services/simpledb/simpledb.d.ts.map +0 -1
- package/dist/services/simpledb/simpledb.js +0 -69
- package/src/_global.ext.ts +0 -36
- package/src/_global.schema.ts +0 -10
- package/src/_global.ts +0 -14
- package/src/api/defaultErrorHandler.ts +0 -59
- package/src/api/express/makeJsonSchema.test.ts.bak +0 -76
- package/src/api/express/makeJsonSchema.ts.bak +0 -166
- package/src/api/express/makeOpenApiSpecs.ts.bak +0 -62
- package/src/api/http.ts +0 -26
- package/tsplus.config.json +0 -9
- /package/src/services/simpledb/{index.ts → index.ts.bak} +0 -0
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "effect/Effect";
|
|
2
|
-
import * as tsplus_module_2 from "@effect-app/core/Function";
|
|
3
|
-
import * as tsplus_module_3 from "effect/FiberRef";
|
|
4
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
2
|
import * as fu from "@effect-app/infra-adapters/fileUtil";
|
|
6
3
|
import fs from "fs";
|
|
4
|
+
import { Effect, FiberRef, flow } from "effect-app";
|
|
7
5
|
import { makeMemoryStoreInt, storeId } from "./Memory.js";
|
|
8
6
|
import { StoreMaker } from "./service.js";
|
|
9
7
|
function makeDiskStoreInt(prefix, namespace, dir, name, seed, defaultValues) {
|
|
10
|
-
return
|
|
8
|
+
return Effect.gen(function* ($) {
|
|
11
9
|
if (namespace !== "primary") {
|
|
12
10
|
dir = dir + "/" + namespace;
|
|
13
11
|
if (!fs.existsSync(dir)) {
|
|
@@ -16,32 +14,37 @@ function makeDiskStoreInt(prefix, namespace, dir, name, seed, defaultValues) {
|
|
|
16
14
|
}
|
|
17
15
|
const file = dir + "/" + prefix + name + ".json";
|
|
18
16
|
const fsStore = {
|
|
19
|
-
get:
|
|
20
|
-
.readTextFile(file)
|
|
21
|
-
.flatMap((x) =>
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
.
|
|
25
|
-
.
|
|
17
|
+
get: fu
|
|
18
|
+
.readTextFile(file)
|
|
19
|
+
.pipe(Effect.withSpan("Disk.read.readFile [effect-app/infra/Store]"), Effect.flatMap((x) => Effect.sync(() => JSON.parse(x)).pipe(Effect.withSpan("Disk.read.parse [effect-app/infra/Store]"))), Effect.orDie, Effect.withSpan("Disk.read [effect-app/infra/Store]", { attributes: { "disk.file": file } })),
|
|
20
|
+
setRaw: (v) => Effect
|
|
21
|
+
.sync(() => JSON.stringify([...v], undefined, 2))
|
|
22
|
+
.pipe(Effect.withSpan("Disk.stringify [effect-app/infra/Store]", { attributes: { "disk.file": file } }), Effect
|
|
23
|
+
.flatMap((json) => fu
|
|
24
|
+
.writeTextFile(file, json)
|
|
25
|
+
.pipe(Effect
|
|
26
|
+
.withSpan("Disk.write.writeFile [effect-app/infra/Store]", {
|
|
26
27
|
attributes: { "disk.file_size": json.length }
|
|
27
|
-
})),
|
|
28
|
+
}))), Effect
|
|
29
|
+
.withSpan("Disk.write [effect-app/infra/Store]", {
|
|
28
30
|
attributes: { "disk.file": file }
|
|
29
|
-
})
|
|
31
|
+
}))
|
|
30
32
|
};
|
|
31
33
|
const store = yield* $(makeMemoryStoreInt(name, namespace, !fs.existsSync(file)
|
|
32
34
|
? seed
|
|
33
35
|
: fsStore.get, defaultValues));
|
|
34
|
-
yield* $(store.all.flatMap(fsStore.setRaw));
|
|
35
|
-
const sem =
|
|
36
|
+
yield* $(store.all.pipe(Effect.flatMap(fsStore.setRaw)));
|
|
37
|
+
const sem = Effect.unsafeMakeSemaphore(1);
|
|
36
38
|
const withPermit = sem.withPermits(1);
|
|
37
|
-
const flushToDisk = store.all
|
|
38
|
-
const flushToDiskInBackground =
|
|
39
|
+
const flushToDisk = Effect.flatMap(store.all, fsStore.setRaw).pipe(withPermit);
|
|
40
|
+
const flushToDiskInBackground = flushToDisk
|
|
41
|
+
.pipe(Effect.tapErrorCause((err) => Effect.sync(() => console.error(err))), Effect.uninterruptible, Effect.forkDaemon);
|
|
39
42
|
return {
|
|
40
43
|
...store,
|
|
41
|
-
batchSet:
|
|
42
|
-
bulkSet:
|
|
43
|
-
set:
|
|
44
|
-
remove:
|
|
44
|
+
batchSet: flow(store.batchSet, Effect.tap(flushToDiskInBackground)),
|
|
45
|
+
bulkSet: flow(store.bulkSet, Effect.tap(flushToDiskInBackground)),
|
|
46
|
+
set: flow(store.set, Effect.tap(flushToDiskInBackground)),
|
|
47
|
+
remove: flow(store.remove, Effect.tap(flushToDiskInBackground))
|
|
45
48
|
};
|
|
46
49
|
});
|
|
47
50
|
}
|
|
@@ -50,42 +53,43 @@ function makeDiskStoreInt(prefix, namespace, dir, name, seed, defaultValues) {
|
|
|
50
53
|
* and should therefore be as fast as the Memory Store.
|
|
51
54
|
*/
|
|
52
55
|
export function makeDiskStore({ prefix }, dir) {
|
|
53
|
-
return
|
|
56
|
+
return Effect.sync(() => {
|
|
54
57
|
if (!fs.existsSync(dir)) {
|
|
55
58
|
fs.mkdirSync(dir);
|
|
56
59
|
}
|
|
57
60
|
return {
|
|
58
|
-
make: (name, seed, config) =>
|
|
59
|
-
const storesSem =
|
|
61
|
+
make: (name, seed, config) => Effect.gen(function* ($) {
|
|
62
|
+
const storesSem = Effect.unsafeMakeSemaphore(1);
|
|
60
63
|
const primary = yield* $(makeDiskStoreInt(prefix, "primary", dir, name, seed, config?.defaultValues));
|
|
61
64
|
const stores = new Map([["primary", primary]]);
|
|
62
|
-
const ctx = yield* $(
|
|
63
|
-
const getStore = !config?.allowNamespace
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
65
|
+
const ctx = yield* $(Effect.context());
|
|
66
|
+
const getStore = !config?.allowNamespace
|
|
67
|
+
? Effect.succeed(primary)
|
|
68
|
+
: FiberRef.get(storeId).pipe(Effect.flatMap((namespace) => {
|
|
69
|
+
const store = stores.get(namespace);
|
|
70
|
+
if (store) {
|
|
71
|
+
return Effect.succeed(store);
|
|
72
|
+
}
|
|
73
|
+
if (!config.allowNamespace(namespace)) {
|
|
74
|
+
throw new Error(`Namespace ${namespace} not allowed!`);
|
|
75
|
+
}
|
|
76
|
+
return storesSem.withPermits(1)(Effect.suspend(() => {
|
|
77
|
+
const existing = stores.get(namespace);
|
|
78
|
+
if (existing)
|
|
79
|
+
return Effect.sync(() => existing);
|
|
80
|
+
return makeDiskStoreInt(prefix, namespace, dir, name, seed, config?.defaultValues)
|
|
81
|
+
.pipe(Effect.orDie, Effect.provide(ctx), Effect.tap((store) => Effect.sync(() => stores.set(namespace, store))));
|
|
82
|
+
}));
|
|
78
83
|
}));
|
|
79
|
-
});
|
|
80
84
|
const s = {
|
|
81
|
-
all:
|
|
82
|
-
find: (...args) =>
|
|
83
|
-
filter: (...args) =>
|
|
84
|
-
filterJoinSelect: (...args) =>
|
|
85
|
-
set: (...args) =>
|
|
86
|
-
batchSet: (...args) =>
|
|
87
|
-
bulkSet: (...args) =>
|
|
88
|
-
remove: (...args) =>
|
|
85
|
+
all: Effect.flatMap(getStore, (_) => _.all),
|
|
86
|
+
find: (...args) => Effect.flatMap(getStore, (_) => _.find(...args)),
|
|
87
|
+
filter: (...args) => Effect.flatMap(getStore, (_) => _.filter(...args)),
|
|
88
|
+
filterJoinSelect: (...args) => Effect.flatMap(getStore, (_) => _.filterJoinSelect(...args)),
|
|
89
|
+
set: (...args) => Effect.flatMap(getStore, (_) => _.set(...args)),
|
|
90
|
+
batchSet: (...args) => Effect.flatMap(getStore, (_) => _.batchSet(...args)),
|
|
91
|
+
bulkSet: (...args) => Effect.flatMap(getStore, (_) => _.bulkSet(...args)),
|
|
92
|
+
remove: (...args) => Effect.flatMap(getStore, (_) => _.remove(...args))
|
|
89
93
|
};
|
|
90
94
|
return s;
|
|
91
95
|
})
|
|
@@ -95,4 +99,4 @@ export function makeDiskStore({ prefix }, dir) {
|
|
|
95
99
|
export function DiskStoreLayer(config, dir) {
|
|
96
100
|
return StoreMaker.toLayer(makeDiskStore(config, dir));
|
|
97
101
|
}
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9TdG9yZS9EaXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEtBQUssRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBRXpELE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQTtBQUVuQixPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXpDLFNBQVMsZ0JBQWdCLENBQ3ZCLE1BQWMsRUFDZCxTQUFpQixFQUNqQixHQUFXLEVBQ1gsSUFBWSxFQUNaLElBQWlDLEVBQ2pDLGFBQTJCO0lBRTNCLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBQyxDQUFDO1FBQzNCLElBQUksU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVCLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLFNBQVMsQ0FBQTtZQUMzQixJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN4QixFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQ25CLENBQUM7UUFDSCxDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxNQUFNLEdBQUcsSUFBSSxHQUFHLE9BQU8sQ0FBQTtRQUNoRCxNQUFNLE9BQU8sR0FBRztZQUNkLEdBQUcsRUFBRSxFQUFFO2lCQUNKLFlBQVksQ0FBQyxJQUFJLENBQUM7aUJBQ2xCLElBQUksQ0FDSCxNQUFNLENBQUMsUUFBUSxDQUFDLDZDQUE2QyxDQUFDLEVBQzlELE1BQU0sQ0FBQyxPQUFPLENB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
|
|
@@ -1,18 +1,16 @@
|
|
|
1
|
-
import { Effect } from "effect
|
|
2
|
-
import { NonEmptyReadonlyArray, NonEmptyArray } from "effect/ReadonlyArray";
|
|
1
|
+
import { Effect, FiberRef } from "effect-app";
|
|
3
2
|
import type { RequestContext } from "../../RequestContext.js";
|
|
4
3
|
import type { FilterArgs, PersistenceModelType, Store, StoreConfig } from "./service.js";
|
|
5
4
|
import { StoreMaker } from "./service.js";
|
|
6
5
|
export declare function memFilter<T extends PersistenceModelType<string>, U extends keyof T = never>(f: FilterArgs<T, U>): (c: T[]) => (U extends undefined ? T : Pick<T, U>)[];
|
|
7
|
-
export declare const storeId:
|
|
6
|
+
export declare const storeId: FiberRef.FiberRef<string>;
|
|
8
7
|
/**
|
|
9
8
|
* @tsplus getter RequestContext restoreStoreId
|
|
10
|
-
* @tsplus location "@effect-app/infra/services/Store/Memory"
|
|
11
9
|
*/
|
|
12
|
-
export declare const restoreFromRequestContext: (ctx: RequestContext) =>
|
|
13
|
-
export declare function makeMemoryStoreInt<Id extends string, PM extends PersistenceModelType<Id>, R = never, E = never>(modelName: string, namespace: string, seed?: Effect<Iterable<PM>, E, R>, _defaultValues?: Partial<PM>):
|
|
10
|
+
export declare const restoreFromRequestContext: (ctx: RequestContext) => Effect.Effect<void, never, never>;
|
|
11
|
+
export declare function makeMemoryStoreInt<Id extends string, PM extends PersistenceModelType<Id>, R = never, E = never>(modelName: string, namespace: string, seed?: Effect<Iterable<PM>, E, R>, _defaultValues?: Partial<PM>): Effect.Effect<Store<PM, Id>, E, R>;
|
|
14
12
|
export declare const makeMemoryStore: () => {
|
|
15
|
-
make: <Id extends string, PM extends PersistenceModelType<Id>, R = never, E = never>(modelName: string, seed?: Effect<Iterable<PM>, E, R
|
|
13
|
+
make: <Id extends string, PM extends PersistenceModelType<Id>, R = never, E = never>(modelName: string, seed?: Effect<Iterable<PM>, E, R> | undefined, config?: StoreConfig<PM> | undefined) => Effect.Effect<Store<PM, Id>, E, R>;
|
|
16
14
|
};
|
|
17
|
-
export declare const MemoryStoreLive: import("effect
|
|
15
|
+
export declare const MemoryStoreLive: import("effect-app").Layer<StoreMaker, never, never>;
|
|
18
16
|
//# sourceMappingURL=Memory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Memory.d.ts","sourceRoot":"","sources":["../../../src/services/Store/Memory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Memory.d.ts","sourceRoot":"","sources":["../../../src/services/Store/Memory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAiD,MAAM,YAAY,CAAA;AAG5F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAoB,oBAAoB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1G,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,wBAAgB,SAAS,CAAC,CAAC,SAAS,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,OAElG,CAAC,EAAE,8CA0ChB;AAED,eAAO,MAAM,OAAO,2BAAiC,CAAA;AAErD;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAS,cAAc,sCAAsD,CAAA;AAmBnH,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,oBAAoB,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAC7G,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACjC,cAAc,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,sCAuI7B;AAED,eAAO,MAAM,eAAe;oGAEb,MAAM;CA4CnB,CAAA;AAEF,eAAO,MAAM,eAAe,sDAA2D,CAAA"}
|
|
@@ -1,13 +1,5 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "effect/Order";
|
|
2
|
-
import * as tsplus_module_2 from "effect/Option";
|
|
3
|
-
import * as tsplus_module_3 from "effect/ReadonlyArray";
|
|
4
|
-
import * as tsplus_module_4 from "effect/FiberRef";
|
|
5
|
-
import * as tsplus_module_5 from "effect/Effect";
|
|
6
|
-
import * as tsplus_module_6 from "@effect-app/core/Chunk";
|
|
7
|
-
import * as tsplus_module_7 from "effect/Chunk";
|
|
8
|
-
import * as tsplus_module_8 from "effect/Ref";
|
|
9
|
-
import * as tsplus_module_9 from "@effect-app/core/Function";
|
|
10
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
import { Effect, FiberRef, flow, Option, Order, pipe, ReadonlyArray, Ref } from "effect-app";
|
|
11
3
|
import { get, pick } from "effect-app/utils";
|
|
12
4
|
import { StoreMaker } from "./service.js";
|
|
13
5
|
import { codeFilter, codeFilterJoinSelect, makeUpdateETag } from "./utils.js";
|
|
@@ -16,7 +8,7 @@ export function memFilter(f) {
|
|
|
16
8
|
const select = (r) => (f.select ? r.map((_) => pick(_, f.select)) : r);
|
|
17
9
|
const skip = f?.skip;
|
|
18
10
|
const limit = f?.limit;
|
|
19
|
-
const ords =
|
|
11
|
+
const ords = Option.map(Option.fromNullable(f.order), (_) => _.map((_) => Order.make((self, that) => {
|
|
20
12
|
// TODO: inspect data types for the right comparison?
|
|
21
13
|
const selfV = get(self, _.key) ?? false;
|
|
22
14
|
const thatV = get(that, _.key) ?? false;
|
|
@@ -28,30 +20,31 @@ export function memFilter(f) {
|
|
|
28
20
|
}
|
|
29
21
|
return selfV < thatV ? 1 : -1;
|
|
30
22
|
})));
|
|
31
|
-
if (ords
|
|
32
|
-
c =
|
|
23
|
+
if (Option.isSome(ords)) {
|
|
24
|
+
c = ReadonlyArray.sortBy(...ords.value)(c);
|
|
33
25
|
}
|
|
34
26
|
if (!skip && limit === 1) {
|
|
35
|
-
return select(
|
|
27
|
+
return select(ReadonlyArray.findFirst(c, f.filter ? codeFilter(f.filter) : (_) => Option.some(_)).pipe(Option.map(ReadonlyArray.make), Option.getOrElse(() => [])));
|
|
36
28
|
}
|
|
37
|
-
let r = f.filter ?
|
|
29
|
+
let r = f.filter ? ReadonlyArray.filterMap(c, codeFilter(f.filter)) : c;
|
|
38
30
|
if (skip) {
|
|
39
|
-
r =
|
|
31
|
+
r = ReadonlyArray.drop(r, skip);
|
|
40
32
|
}
|
|
41
33
|
if (limit !== undefined) {
|
|
42
|
-
r =
|
|
34
|
+
r = ReadonlyArray.take(r, limit);
|
|
43
35
|
}
|
|
44
36
|
return select(r);
|
|
45
37
|
});
|
|
46
38
|
}
|
|
47
|
-
export const storeId =
|
|
39
|
+
export const storeId = FiberRef.unsafeMake("primary");
|
|
48
40
|
/**
|
|
49
41
|
* @tsplus getter RequestContext restoreStoreId
|
|
50
42
|
*/
|
|
51
|
-
export const restoreFromRequestContext = (ctx) =>
|
|
43
|
+
export const restoreFromRequestContext = (ctx) => FiberRef.set(storeId, ctx.namespace ?? "primary");
|
|
52
44
|
function logQuery(f, defaultValues) {
|
|
53
|
-
return
|
|
54
|
-
.
|
|
45
|
+
return Effect
|
|
46
|
+
.logDebug("mem query")
|
|
47
|
+
.pipe(Effect.annotateLogs({
|
|
55
48
|
filter: JSON.stringify(f.filter ? f.filter.type === "new-kid" ? f.filter.build() : f.filter : f.filter, undefined, 2),
|
|
56
49
|
order: JSON.stringify(f.order, undefined, 2),
|
|
57
50
|
select: JSON.stringify(f.select, undefined, 2),
|
|
@@ -61,110 +54,121 @@ function logQuery(f, defaultValues) {
|
|
|
61
54
|
}));
|
|
62
55
|
}
|
|
63
56
|
export function makeMemoryStoreInt(modelName, namespace, seed, _defaultValues) {
|
|
64
|
-
return
|
|
57
|
+
return Effect.gen(function* ($) {
|
|
65
58
|
const updateETag = makeUpdateETag(modelName);
|
|
66
|
-
const items_ = yield* $(seed ??
|
|
59
|
+
const items_ = yield* $(seed ?? Effect.sync(() => []));
|
|
67
60
|
const defaultValues = _defaultValues ?? {};
|
|
68
|
-
const items = new Map(
|
|
69
|
-
const store =
|
|
70
|
-
const sem =
|
|
61
|
+
const items = new Map([...items_].map((_) => [_.id, { ...defaultValues, ..._ }]));
|
|
62
|
+
const store = Ref.unsafeMake(items);
|
|
63
|
+
const sem = Effect.unsafeMakeSemaphore(1);
|
|
71
64
|
const withPermit = sem.withPermits(1);
|
|
72
|
-
const values =
|
|
73
|
-
const all =
|
|
74
|
-
const batchSet = (items) =>
|
|
75
|
-
.
|
|
76
|
-
.
|
|
65
|
+
const values = Effect.map(Ref.get(store), (s) => s.values());
|
|
66
|
+
const all = Effect.map(values, ReadonlyArray.fromIterable);
|
|
67
|
+
const batchSet = (items) => Effect
|
|
68
|
+
.forEach(items, (i) => Effect.flatMap(s.find(i.id), (current) => updateETag(i, current)))
|
|
69
|
+
.pipe(Effect
|
|
70
|
+
.tap((items) => Ref
|
|
71
|
+
.get(store)
|
|
72
|
+
.pipe(Effect
|
|
73
|
+
.map((m) => {
|
|
77
74
|
const mut = m;
|
|
78
75
|
items.forEach((e) => mut.set(e.id, e));
|
|
79
76
|
return mut;
|
|
80
|
-
})
|
|
81
|
-
.flatMap((_) =>
|
|
82
|
-
.map((_) => _)
|
|
83
|
-
.pipe(withPermit);
|
|
77
|
+
}), Effect
|
|
78
|
+
.flatMap((_) => Ref.set(store, _)))), Effect
|
|
79
|
+
.map((_) => _), withPermit);
|
|
84
80
|
const s = {
|
|
85
|
-
all:
|
|
81
|
+
all: all.pipe(Effect.withSpan("Memory.all [effect-app/infra/Store]", {
|
|
86
82
|
attributes: {
|
|
87
83
|
modelName,
|
|
88
84
|
namespace
|
|
89
85
|
}
|
|
90
|
-
}),
|
|
91
|
-
find: (id) =>
|
|
86
|
+
})),
|
|
87
|
+
find: (id) => Ref
|
|
88
|
+
.get(store)
|
|
89
|
+
.pipe(Effect.map((_) => Option.fromNullable(_.get(id))), Effect
|
|
90
|
+
.withSpan("Memory.find [effect-app/infra/Store]", {
|
|
92
91
|
attributes: {
|
|
93
92
|
modelName,
|
|
94
93
|
namespace
|
|
95
94
|
}
|
|
96
|
-
}),
|
|
97
|
-
filter: (f) =>
|
|
98
|
-
.tap(() => logQuery(f, defaultValues))
|
|
99
|
-
.map(memFilter(f)), "Memory.filter [effect-app/infra/Store]", {
|
|
95
|
+
})),
|
|
96
|
+
filter: (f) => all
|
|
97
|
+
.pipe(Effect.tap(() => logQuery(f, defaultValues)), Effect.map(memFilter(f)), Effect.withSpan("Memory.filter [effect-app/infra/Store]", {
|
|
100
98
|
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
101
|
-
}),
|
|
102
|
-
filterJoinSelect: (filter) =>
|
|
103
|
-
.map((c) => c.flatMap(codeFilterJoinSelect(filter))),
|
|
99
|
+
})),
|
|
100
|
+
filterJoinSelect: (filter) => all
|
|
101
|
+
.pipe(Effect.map((c) => c.flatMap(codeFilterJoinSelect(filter))), Effect
|
|
102
|
+
.withSpan("Memory.filterJoinSelect [effect-app/infra/Store]", {
|
|
104
103
|
attributes: {
|
|
105
104
|
modelName
|
|
106
105
|
}
|
|
107
|
-
}),
|
|
108
|
-
set: (e) =>
|
|
106
|
+
})),
|
|
107
|
+
set: (e) => s
|
|
109
108
|
.find(e.id)
|
|
110
|
-
.flatMap((current) => updateETag(e, current))
|
|
111
|
-
.tap((e) =>
|
|
112
|
-
.
|
|
113
|
-
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
114
|
-
}),
|
|
115
|
-
batchSet: (items) => tsplus_module_9.pipe(tsplus_module_5.withSpan(tsplus_module_5.filterOrDieMessage(tsplus_module_5.sync(() => items)
|
|
116
|
-
// align with CosmosDB
|
|
117
|
-
, (_) => _.length <= 100, "BatchSet: a batch may not exceed 100 items")
|
|
118
|
-
.andThen(batchSet), "Memory.batchSet [effect-app/infra/Store]", {
|
|
109
|
+
.pipe(Effect.flatMap((current) => updateETag(e, current)), Effect
|
|
110
|
+
.tap((e) => Ref.get(store).pipe(Effect.map((_) => new Map([..._, [e.id, e]])), Effect.flatMap((_) => Ref.set(store, _)))), withPermit, Effect
|
|
111
|
+
.withSpan("Memory.set [effect-app/infra/Store]", {
|
|
119
112
|
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
120
113
|
})),
|
|
121
|
-
|
|
114
|
+
batchSet: (items) => pipe(Effect
|
|
115
|
+
.sync(() => items)
|
|
116
|
+
// align with CosmosDB
|
|
117
|
+
.pipe(Effect.filterOrDieMessage((_) => _.length <= 100, "BatchSet: a batch may not exceed 100 items"), Effect
|
|
118
|
+
.andThen(batchSet), Effect
|
|
119
|
+
.withSpan("Memory.batchSet [effect-app/infra/Store]", {
|
|
122
120
|
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
123
|
-
})),
|
|
124
|
-
|
|
125
|
-
.flatMap((_) => tsplus_module_8.set(store, _))
|
|
126
|
-
.pipe(withPermit), "Memory.remove [effect-app/infra/Store]", {
|
|
121
|
+
}))),
|
|
122
|
+
bulkSet: flow(batchSet, (_) => _.pipe(Effect.withSpan("Memory.bulkSet [effect-app/infra/Store]", {
|
|
127
123
|
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
128
|
-
})
|
|
124
|
+
}))),
|
|
125
|
+
remove: (e) => Ref
|
|
126
|
+
.get(store)
|
|
127
|
+
.pipe(Effect.map((_) => new Map([..._].filter(([_]) => _ !== e.id))), Effect.flatMap((_) => Ref.set(store, _)), withPermit, Effect.withSpan("Memory.remove [effect-app/infra/Store]", {
|
|
128
|
+
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
129
|
+
}))
|
|
129
130
|
};
|
|
130
131
|
return s;
|
|
131
132
|
});
|
|
132
133
|
}
|
|
133
134
|
export const makeMemoryStore = () => ({
|
|
134
|
-
make: (modelName, seed, config) =>
|
|
135
|
-
const storesSem =
|
|
135
|
+
make: (modelName, seed, config) => Effect.gen(function* ($) {
|
|
136
|
+
const storesSem = Effect.unsafeMakeSemaphore(1);
|
|
136
137
|
const primary = yield* $(makeMemoryStoreInt(modelName, "primary", seed, config?.defaultValues));
|
|
137
|
-
const ctx = yield* $(
|
|
138
|
+
const ctx = yield* $(Effect.context());
|
|
138
139
|
const stores = new Map([["primary", primary]]);
|
|
139
|
-
const getStore = !config?.allowNamespace
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
return tsplus_module_5.succeed(store);
|
|
143
|
-
}
|
|
144
|
-
if (!config.allowNamespace(namespace)) {
|
|
145
|
-
throw new Error(`Namespace ${namespace} not allowed!`);
|
|
146
|
-
}
|
|
147
|
-
return storesSem.withPermits(1)(tsplus_module_5.suspend(() => {
|
|
140
|
+
const getStore = !config?.allowNamespace
|
|
141
|
+
? Effect.succeed(primary)
|
|
142
|
+
: FiberRef.get(storeId).pipe(Effect.flatMap((namespace) => {
|
|
148
143
|
const store = stores.get(namespace);
|
|
149
|
-
if (store)
|
|
150
|
-
return
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
144
|
+
if (store) {
|
|
145
|
+
return Effect.succeed(store);
|
|
146
|
+
}
|
|
147
|
+
if (!config.allowNamespace(namespace)) {
|
|
148
|
+
throw new Error(`Namespace ${namespace} not allowed!`);
|
|
149
|
+
}
|
|
150
|
+
return storesSem.withPermits(1)(Effect.suspend(() => {
|
|
151
|
+
const store = stores.get(namespace);
|
|
152
|
+
if (store)
|
|
153
|
+
return Effect.sync(() => store);
|
|
154
|
+
return makeMemoryStoreInt(modelName, namespace, seed, config?.defaultValues)
|
|
155
|
+
.pipe(Effect.orDie, Effect
|
|
156
|
+
.provide(ctx), Effect
|
|
157
|
+
.tap((store) => Effect.sync(() => stores.set(namespace, store))));
|
|
158
|
+
}));
|
|
154
159
|
}));
|
|
155
|
-
});
|
|
156
160
|
const s = {
|
|
157
|
-
all:
|
|
158
|
-
find: (...args) =>
|
|
159
|
-
filter: (...args) =>
|
|
160
|
-
filterJoinSelect: (...args) =>
|
|
161
|
-
set: (...args) =>
|
|
162
|
-
batchSet: (...args) =>
|
|
163
|
-
bulkSet: (...args) =>
|
|
164
|
-
remove: (...args) =>
|
|
161
|
+
all: Effect.flatMap(getStore, (_) => _.all),
|
|
162
|
+
find: (...args) => Effect.flatMap(getStore, (_) => _.find(...args)),
|
|
163
|
+
filter: (...args) => Effect.flatMap(getStore, (_) => _.filter(...args)),
|
|
164
|
+
filterJoinSelect: (...args) => Effect.flatMap(getStore, (_) => _.filterJoinSelect(...args)),
|
|
165
|
+
set: (...args) => Effect.flatMap(getStore, (_) => _.set(...args)),
|
|
166
|
+
batchSet: (...args) => Effect.flatMap(getStore, (_) => _.batchSet(...args)),
|
|
167
|
+
bulkSet: (...args) => Effect.flatMap(getStore, (_) => _.bulkSet(...args)),
|
|
168
|
+
remove: (...args) => Effect.flatMap(getStore, (_) => _.remove(...args))
|
|
165
169
|
};
|
|
166
170
|
return s;
|
|
167
171
|
})
|
|
168
172
|
});
|
|
169
|
-
export const MemoryStoreLive = StoreMaker.toLayer(
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL1N0b3JlL01lbW9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUc1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRTdFLE1BQU0sVUFBVSxTQUFTLENBQW9FLENBQW1CO0lBRTlHLE9BQU8sQ0FBQyxDQUFDLENBQU0sRUFBTyxFQUFFO1FBQ3RCLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBTSxFQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBUSxDQUFBO1FBQ3hGLE1BQU0sSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUE7UUFDcEIsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQTtRQUN0QixNQUFNLElBQUksR0FBRyw2QkFBb0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2xELENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNWLHFCQUFjLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFO1lBQzNCLHFEQUFxRDtZQUNyRCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFB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
|
|
173
|
+
export const MemoryStoreLive = StoreMaker.toLayer(Effect.sync(() => makeMemoryStore()));
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL1N0b3JlL01lbW9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFNUYsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUc1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRTdFLE1BQU0sVUFBVSxTQUFTLENBQW9FLENBQW1CO0lBRTlHLE9BQU8sQ0FBQyxDQUFDLENBQU0sRUFBTyxFQUFFO1FBQ3RCLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBTSxFQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBUSxDQUFBO1FBQ3hGLE1BQU0sSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUE7UUFDcEIsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQTtRQUN0QixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDMUQsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ1YsS0FBSyxDQUFDLElBQUksQ0FBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUMzQixxREFBcUQ7WUFDckQsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFBO1lBQ3ZDLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQTtZQUN2QyxJQUFJLEtBQUssS0FBSyxLQUFLLEVBQUUsQ0FBQztnQkFDcEIsT0FBTyxDQUFDLENBQUE7WUFDVixDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUMsU0FBUyxLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUMxQixPQUFPLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDL0IsQ0FBQztZQUNELE9BQU8sS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUMvQixDQUFDLENBQUMsQ0FDSCxDQUFDLENBQUE7UUFDSixJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN4QixDQUFDLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUM1QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekIsT0FBTyxNQUFNLENBQ1gsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3RGLE1BQU0sQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUM5QixNQUFNLENBQUMsU0FBUyxDQUNkLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FDVCxDQUNGLENBQ0YsQ0FBQTtRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUN2RSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQ2pDLENBQUM7UUFDRCxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN4QixDQUFDLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDbEMsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ2xCLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBRXJEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxHQUFtQixFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxDQUFBO0FBRW5ILFNBQVMsUUFBUSxDQUFDLENBQXVCLEVBQUUsYUFBbUI7SUFDNUQsT0FBTyxNQUFNO1NBQ1YsUUFBUSxDQUFDLFdBQVcsQ0FBQztTQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FDcEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUMvRSxTQUFTLEVBQ1QsQ0FBQyxDQUNGO1FBQ0QsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUM5QyxhQUFhLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUMxRCxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUk7UUFDWixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7S0FDZixDQUFDLENBQUMsQ0FBQTtBQUNQLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLFNBQWlCLEVBQ2pCLFNBQWlCLEVBQ2pCLElBQWlDLEVBQ2pDLGNBQTRCO0lBRTVCLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBQyxDQUFDO1FBQzNCLE1BQU0sVUFBVSxHQUFHLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUM1QyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUN0RCxNQUFNLGFBQWEsR0FBRyxjQUFjLElBQUksRUFBRSxDQUFBO1FBRTFDLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsYUFBYSxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQVUsQ0FBQyxDQUFDLENBQUE7UUFDMUYsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBc0IsS0FBSyxDQUFDLENBQUE7UUFDeEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ3pDLE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDckMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQTtRQUU1RCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUE7UUFFMUQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFnQyxFQUFFLEVBQUUsQ0FDcEQsTUFBTTthQUNILE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQzthQUN4RixJQUFJLENBQ0gsTUFBTTthQUNILEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2IsR0FBRzthQUNBLEdBQUcsQ0FBQyxLQUFLLENBQUM7YUFDVixJQUFJLENBQ0gsTUFBTTthQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1QsTUFBTSxHQUFHLEdBQUcsQ0FBZ0IsQ0FBQTtZQUM1QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUN0QyxPQUFPLEdBQUcsQ0FBQTtRQUNaLENBQUMsQ0FBQyxFQUNKLE1BQU07YUFDSCxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQ3JDLENBQ0osRUFDSCxNQUFNO2FBQ0gsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFzQixDQUFDLEVBQ3JDLFVBQVUsQ0FDWCxDQUFBO1FBQ0wsTUFBTSxDQUFDLEdBQWtCO1lBQ3ZCLEdBQUcsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMscUNBQXFDLEVBQUU7Z0JBQ25FLFVBQVUsRUFBRTtvQkFDVixTQUFTO29CQUNULFNBQVM7aUJBQ1Y7YUFDRixDQUFDLENBQUM7WUFDSCxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUNYLEdBQUc7aUJBQ0EsR0FBRyxDQUFDLEtBQUssQ0FBQztpQkFDVixJQUFJLENBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDakQsTUFBTTtpQkFDSCxRQUFRLENBQUMsc0NBQXNDLEVBQUU7Z0JBQ2hELFVBQVUsRUFBRTtvQkFDVixTQUFTO29CQUNULFNBQVM7aUJBQ1Y7YUFDRixDQUFDLENBQ0w7WUFDTCxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNaLEdBQUc7aUJBQ0EsSUFBSSxDQUNILE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQyxFQUM1QyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN4QixNQUFNLENBQUMsUUFBUSxDQUFDLHdDQUF3QyxFQUFFO2dCQUN4RCxVQUFVLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsU0FBUyxFQUFFO2FBQ3RGLENBQUMsQ0FDSDtZQUNMLGdCQUFnQixFQUFFLENBQW1CLE1BQXdCLEVBQUUsRUFBRSxDQUMvRCxHQUFHO2lCQUNBLElBQUksQ0FDSCxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFRLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFDakUsTUFBTTtpQkFDSCxRQUFRLENBQ1Asa0RBQWtELEVBQ2xEO2dCQUNFLFVBQVUsRUFBRTtvQkFDVixTQUFTO2lCQUNWO2FBQ0YsQ0FDRixDQUNKO1lBQ0wsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDVCxDQUFDO2lCQUNFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2lCQUNWLElBQUksQ0FDSCxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQ25ELE1BQU07aUJBQ0gsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDVCxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDakIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzdDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQ3pDLENBQ0YsRUFDSCxVQUFVLEVBQ1YsTUFBTTtpQkFDSCxRQUFRLENBQUMscUNBQXFDLEVBQUU7Z0JBQy9DLFVBQVUsRUFBRSxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxTQUFTLEVBQUU7YUFDdEYsQ0FBQyxDQUNMO1lBQ0wsUUFBUSxFQUFFLENBQUMsS0FBNkIsRUFBRSxFQUFFLENBQzFDLElBQUksQ0FDRixNQUFNO2lCQUNILElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUM7Z0JBQ2xCLHNCQUFzQjtpQkFDckIsSUFBSSxDQUNILE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxHQUFHLEVBQUUsNENBQTRDLENBQUMsRUFDL0YsTUFBTTtpQkFDSCxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQ3BCLE1BQU07aUJBQ0gsUUFBUSxDQUFDLDBDQUEwQyxFQUFFO2dCQUNwRCxVQUFVLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsU0FBUyxFQUFFO2FBQ3RGLENBQUMsQ0FDTCxDQUNKO1lBQ0gsT0FBTyxFQUFFLElBQUksQ0FDWCxRQUFRLEVBQ1IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNKLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyx5Q0FBeUMsRUFBRTtnQkFDaEUsVUFBVSxFQUFFLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRTthQUN0RixDQUFDLENBQUMsQ0FDTjtZQUNELE1BQU0sRUFBRSxDQUFDLENBQUssRUFBRSxFQUFFLENBQ2hCLEdBQUc7aUJBQ0EsR0FBRyxDQUFDLEtBQUssQ0FBQztpQkFDVixJQUFJLENBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUM5RCxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUN4QyxVQUFVLEVBQ1YsTUFBTSxDQUFDLFFBQVEsQ0FBQyx3Q0FBd0MsRUFBRTtnQkFDeEQsVUFBVSxFQUFFLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRTthQUN0RixDQUFDLENBQ0g7U0FDTixDQUFBO1FBQ0QsT0FBTyxDQUFDLENBQUE7SUFDVixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNwQyxJQUFJLEVBQUUsQ0FDSixTQUFpQixFQUNqQixJQUFpQyxFQUNqQyxNQUF3QixFQUN4QixFQUFFLENBQ0YsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBQyxDQUFDO1FBQ3BCLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUMvQyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQWUsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUE7UUFDN0csTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUssQ0FBQyxDQUFBO1FBQ3pDLE1BQU0sTUFBTSxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlDLE1BQU0sUUFBUSxHQUFHLENBQUMsTUFBTSxFQUFFLGNBQWM7WUFDdEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ3hELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUE7Z0JBQ25DLElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1YsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO2dCQUM5QixDQUFDO2dCQUNELElBQUksQ0FBQyxNQUFNLENBQUMsY0FBZSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7b0JBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxTQUFTLGVBQWUsQ0FBQyxDQUFBO2dCQUN4RCxDQUFDO2dCQUNELE9BQU8sU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtvQkFDbEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtvQkFDbkMsSUFBSSxLQUFLO3dCQUFFLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtvQkFDMUMsT0FBTyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsYUFBYSxDQUFDO3lCQUN6RSxJQUFJLENBQ0gsTUFBTSxDQUFDLEtBQUssRUFDWixNQUFNO3lCQUNILE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFDZixNQUFNO3lCQUNILEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ25FLENBQUE7Z0JBQ0wsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUNMLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDTCxNQUFNLENBQUMsR0FBa0I7WUFDdkIsR0FBRyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQzNDLElBQUksRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQ25FLE1BQU0sRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQ3ZFLGdCQUFnQixFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUMzRixHQUFHLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUNqRSxRQUFRLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUMzRSxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUN6RSxNQUFNLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUN4RSxDQUFBO1FBQ0QsT0FBTyxDQUFDLENBQUE7SUFDVixDQUFDLENBQUM7Q0FDTCxDQUFDLENBQUE7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQSJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codeFilter.d.ts","sourceRoot":"","sources":["../../../src/services/Store/codeFilter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"codeFilter.d.ts","sourceRoot":"","sources":["../../../src/services/Store/codeFilter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGjE,eAAO,MAAM,mBAAmB,SAAU,OAAO,kBAgDhD,CAAA;AAgDD,eAAO,MAAM,WAAW,aAAc,SAAS,YAAY,EAAE,wBAAyC,CAAA;AACtG,eAAO,MAAM,YAAY,aAAc,SAAS,YAAY,EAAE,uBAAsB,GAAG,EAAE,KAAQ,OA6ChG,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { ReadonlyArray } from "effect-app";
|
|
2
2
|
import { assertUnreachable, get } from "effect-app/utils";
|
|
3
3
|
import { compare, greaterThan, greaterThanExclusive, lowerThan, lowerThanExclusive } from "./utils.js";
|
|
4
4
|
export const codeFilterStatement = (p, x) => {
|
|
@@ -98,7 +98,7 @@ export const codeFilter3_ = (state, sut, statements = []) => {
|
|
|
98
98
|
let s = "";
|
|
99
99
|
let l = 0;
|
|
100
100
|
const printN = (n) => {
|
|
101
|
-
return n === 0 ? "" :
|
|
101
|
+
return n === 0 ? "" : ReadonlyArray.range(1, n).map(() => " ").join("");
|
|
102
102
|
};
|
|
103
103
|
// TODO: path str updates
|
|
104
104
|
const process = (e) => codeFilterStatement(e, sut);
|
|
@@ -140,4 +140,4 @@ export const codeFilter3_ = (state, sut, statements = []) => {
|
|
|
140
140
|
}
|
|
141
141
|
return eval(s);
|
|
142
142
|
};
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZUZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9TdG9yZS9jb2RlRmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRXpELE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUV0RyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFJLENBQVUsRUFBRSxDQUFJLEVBQUUsRUFBRTtJQUN6RCxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QixRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNiLEtBQUssSUFBSTtZQUNQLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDNUIsS0FBSyxPQUFPO1lBQ1YsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzdCLEtBQUssSUFBSTtZQUNQLE9BQU8sU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDOUIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3ZDLEtBQUssSUFBSTtZQUNQLE9BQU8sV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDaEMsS0FBSyxLQUFLO1lBQ1IsT0FBTyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUss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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codeFilter.test.d.ts","sourceRoot":"","sources":["../../../src/services/Store/codeFilter.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAA;
|
|
1
|
+
{"version":3,"file":"codeFilter.test.d.ts","sourceRoot":"","sources":["../../../src/services/Store/codeFilter.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAA;AAU/E,QAAA,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;CAA2B,CAAA;AACnC,MAAM,MAAM,oBAAoB,GAAG,OAAO,EAAE,CAAA;AAE5C,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,oBAAoB,KAAK,gBAAgB,oBAEzF;AAED,wBAAgB,eAAe,CAC7B,SAAS,EAAE,CACT,CAAC,EAAE,oBAAoB,KACpB,KAAK,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,EAChC,IAAI,CAAC,EAAE,IAAI,GAAG,KAAK,oBASpB;AAED,KAAK,aAAa,GAAG;IACnB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV,CAAA;AAED,KAAK,SAAS,GAAG;IACf,CAAC,EAAE,MAAM,CAAA;IACT,EAAE,EAAE,MAAM,CAAA;IACV,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACpB,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;CAC5B,CAAA"}
|
|
@@ -35,7 +35,7 @@ export declare const makeFilter: <TFieldValues extends FieldValues>() => {
|
|
|
35
35
|
fields: Filter<TFieldValues, never>;
|
|
36
36
|
};
|
|
37
37
|
export declare const QueryBuilder: {
|
|
38
|
-
make: <TFieldValues extends FieldValues>() => (fn: (f: FilterTest<TFieldValues>, fields: Filter<TFieldValues>) => QueryBuilder<TFieldValues>) => QueryBuilder<TFieldValues>;
|
|
38
|
+
make: <TFieldValues extends FieldValues>() => (fn: (f: FilterTest<TFieldValues>, fields: Filter<TFieldValues, never>) => QueryBuilder<TFieldValues>) => QueryBuilder<TFieldValues>;
|
|
39
39
|
};
|
|
40
40
|
export type Initial<TFieldValues extends FieldValues> = {
|
|
41
41
|
where: FilterTest<TFieldValues>;
|