@effect-app/infra 4.0.0-beta.247 → 4.0.0-beta.249
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 +24 -0
- package/dist/ContextProvider.d.ts +34 -0
- package/dist/ContextProvider.d.ts.map +1 -0
- package/dist/ContextProvider.js +40 -0
- package/dist/Emailer/Sendgrid.d.ts +109 -145
- package/dist/Emailer/Sendgrid.d.ts.map +1 -1
- package/dist/Emailer/Sendgrid.js +4 -3
- package/dist/Emailer/fake.d.ts +2 -2
- package/dist/Emailer/fake.d.ts.map +1 -1
- package/dist/Emailer/fake.js +2 -2
- package/dist/QueueMaker/SQLQueue.d.ts +2 -2
- package/dist/QueueMaker/SQLQueue.d.ts.map +1 -1
- package/dist/QueueMaker/SQLQueue.js +4 -4
- package/dist/QueueMaker/memQueue.d.ts +2 -2
- package/dist/QueueMaker/memQueue.d.ts.map +1 -1
- package/dist/QueueMaker/memQueue.js +4 -4
- package/dist/QueueMaker/sbqueue.d.ts +2 -2
- package/dist/QueueMaker/sbqueue.d.ts.map +1 -1
- package/dist/QueueMaker/sbqueue.js +4 -4
- package/dist/RequestFiberSet.js +2 -2
- package/dist/{adapters/SQL → SQL}/Model.d.ts +2 -2
- package/dist/SQL/Model.d.ts.map +1 -0
- package/dist/SQL/Model.js +469 -0
- package/dist/{adapters/SQL.d.ts → SQL.d.ts} +1 -1
- package/dist/SQL.d.ts.map +1 -0
- package/dist/{adapters/SQL.js → SQL.js} +1 -1
- package/dist/{adapters/ServiceBus.d.ts → ServiceBus.d.ts} +1 -1
- package/dist/ServiceBus.d.ts.map +1 -0
- package/dist/ServiceBus.js +108 -0
- package/dist/Store/ContextMapContainer.d.ts +2 -2
- package/dist/Store/ContextMapContainer.d.ts.map +1 -1
- package/dist/Store/ContextMapContainer.js +2 -2
- package/dist/Store/Cosmos/query.d.ts +4 -4
- package/dist/Store/Cosmos/query.d.ts.map +1 -1
- package/dist/Store/Cosmos/query.js +1 -1
- package/dist/Store/Cosmos.d.ts +2 -2
- package/dist/Store/Cosmos.d.ts.map +1 -1
- package/dist/Store/Cosmos.js +3 -3
- package/dist/Store/Disk.d.ts +3 -3
- package/dist/Store/Disk.d.ts.map +1 -1
- package/dist/Store/Disk.js +2 -2
- package/dist/Store/Memory.d.ts +3 -3
- package/dist/Store/Memory.d.ts.map +1 -1
- package/dist/Store/Memory.js +2 -2
- package/dist/Store/SQL/Pg.d.ts +2 -2
- package/dist/Store/SQL/Pg.d.ts.map +1 -1
- package/dist/Store/SQL/Pg.js +2 -2
- package/dist/Store/SQL/query.d.ts +3 -3
- package/dist/Store/SQL/query.d.ts.map +1 -1
- package/dist/Store/SQL/query.js +1 -1
- package/dist/Store/SQL.d.ts +3 -3
- package/dist/Store/SQL.d.ts.map +1 -1
- package/dist/Store/SQL.js +2 -2
- package/dist/Store/codeFilter.d.ts +4 -4
- package/dist/Store/codeFilter.d.ts.map +1 -1
- package/dist/Store/codeFilter.js +1 -1
- package/dist/Store/index.d.ts +3 -4
- package/dist/Store/index.d.ts.map +1 -1
- package/dist/Store/index.js +2 -3
- package/dist/Store/utils.d.ts +2 -2
- package/dist/Store/utils.d.ts.map +1 -1
- package/dist/Store/utils.js +1 -1
- package/dist/{api/codec.d.ts → codec.d.ts} +1 -1
- package/dist/codec.d.ts.map +1 -0
- package/dist/codec.js +5 -0
- package/dist/{adapters/cosmos-client.d.ts → cosmos-client.d.ts} +1 -1
- package/dist/cosmos-client.d.ts.map +1 -0
- package/dist/cosmos-client.js +11 -0
- package/dist/errorReporter.d.ts +1 -1
- package/dist/errorReporter.d.ts.map +1 -1
- package/dist/errorReporter.js +2 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/{api/internal → internal}/RequestContextMiddleware.d.ts +2 -2
- package/dist/internal/RequestContextMiddleware.d.ts.map +1 -0
- package/dist/internal/RequestContextMiddleware.js +46 -0
- package/dist/{api/internal → internal}/auth.d.ts +1 -1
- package/dist/internal/auth.d.ts.map +1 -0
- package/dist/internal/auth.js +180 -0
- package/dist/{api/internal → internal}/events.d.ts +1 -1
- package/dist/internal/events.d.ts.map +1 -0
- package/dist/internal/events.js +49 -0
- package/dist/{api/internal → internal}/health.d.ts +1 -1
- package/dist/internal/health.d.ts.map +1 -0
- package/dist/internal/health.js +5 -0
- package/dist/layerUtils.d.ts +32 -0
- package/dist/layerUtils.d.ts.map +1 -0
- package/dist/layerUtils.js +17 -0
- package/dist/logger/jsonLogger.d.ts +1 -1
- package/dist/logger/jsonLogger.d.ts.map +1 -1
- package/dist/logger/jsonLogger.js +2 -2
- package/dist/logger/logFmtLogger.d.ts +1 -1
- package/dist/logger/logFmtLogger.d.ts.map +1 -1
- package/dist/logger/logFmtLogger.js +2 -2
- package/dist/logger/shared.d.ts +2 -2
- package/dist/logger/shared.d.ts.map +1 -1
- package/dist/logger/shared.js +2 -2
- package/dist/logger.d.ts +1 -1
- package/dist/{adapters/memQueue.d.ts → memQueue.d.ts} +1 -1
- package/dist/memQueue.d.ts.map +1 -0
- package/dist/memQueue.js +21 -0
- package/dist/{api/middlewares.d.ts → middlewares.d.ts} +1 -1
- package/dist/middlewares.d.ts.map +1 -0
- package/dist/{api/middlewares.js → middlewares.js} +1 -1
- package/dist/{adapters/mongo-client.d.ts → mongo-client.d.ts} +1 -1
- package/dist/mongo-client.d.ts.map +1 -0
- package/dist/mongo-client.js +15 -0
- package/dist/{adapters/redis-client.d.ts → redis-client.d.ts} +1 -1
- package/dist/redis-client.d.ts.map +1 -0
- package/dist/redis-client.js +98 -0
- package/dist/reportError.d.ts +4 -0
- package/dist/reportError.d.ts.map +1 -0
- package/dist/reportError.js +28 -0
- package/dist/{api/routing → routing}/middleware/RouterMiddleware.d.ts +1 -1
- package/dist/routing/middleware/RouterMiddleware.d.ts.map +1 -0
- package/dist/{api/routing → routing}/middleware/RouterMiddleware.js +1 -1
- package/dist/{api/routing → routing}/middleware/middleware.d.ts +2 -2
- package/dist/routing/middleware/middleware.d.ts.map +1 -0
- package/dist/routing/middleware/middleware.js +128 -0
- package/dist/{api/routing → routing}/middleware.d.ts +1 -1
- package/dist/routing/middleware.d.ts.map +1 -0
- package/dist/{api/routing → routing}/middleware.js +1 -1
- package/dist/{api/routing → routing}/schema/jwt.d.ts +1 -1
- package/dist/routing/schema/jwt.d.ts.map +1 -0
- package/dist/routing/schema/jwt.js +13 -0
- package/dist/routing/tsort.d.ts +8 -0
- package/dist/routing/tsort.d.ts.map +1 -0
- package/dist/routing/tsort.js +51 -0
- package/dist/{api/routing → routing}/utils.d.ts +1 -1
- package/dist/routing/utils.d.ts.map +1 -0
- package/dist/routing/utils.js +45 -0
- package/dist/routing.d.ts +184 -0
- package/dist/routing.d.ts.map +1 -0
- package/dist/{api/routing.js → routing.js} +1 -1
- package/dist/{api/setupRequest.d.ts → setupRequest.d.ts} +2 -2
- package/dist/setupRequest.d.ts.map +1 -0
- package/dist/setupRequest.js +70 -0
- package/dist/{api/util.d.ts → util.d.ts} +1 -1
- package/dist/util.d.ts.map +1 -0
- package/dist/util.js +14 -0
- package/examples/query.ts +2 -2
- package/package.json +84 -200
- package/src/Emailer/Sendgrid.ts +20 -5
- package/src/Emailer/fake.ts +1 -1
- package/src/QueueMaker/SQLQueue.ts +3 -3
- package/src/QueueMaker/memQueue.ts +3 -3
- package/src/QueueMaker/sbqueue.ts +3 -3
- package/src/RequestFiberSet.ts +1 -1
- package/src/{adapters/SQL → SQL}/Model.ts +1 -1
- package/src/{adapters/ServiceBus.ts → ServiceBus.ts} +1 -1
- package/src/Store/ContextMapContainer.ts +1 -1
- package/src/Store/Cosmos/query.ts +3 -3
- package/src/Store/Cosmos.ts +4 -4
- package/src/Store/Disk.ts +2 -2
- package/src/Store/Memory.ts +4 -4
- package/src/Store/SQL/Pg.ts +3 -3
- package/src/Store/SQL/query.ts +2 -2
- package/src/Store/SQL.ts +3 -3
- package/src/Store/codeFilter.ts +3 -3
- package/src/Store/index.ts +2 -4
- package/src/Store/utils.ts +1 -1
- package/src/errorReporter.ts +1 -1
- package/src/index.ts +2 -1
- package/src/{api/internal → internal}/RequestContextMiddleware.ts +3 -3
- package/src/{api/internal → internal}/events.ts +2 -2
- package/src/{api/layerUtils.ts → layerUtils.ts} +1 -1
- package/src/logger/jsonLogger.ts +1 -1
- package/src/logger/logFmtLogger.ts +1 -1
- package/src/logger/shared.ts +1 -1
- package/src/{adapters/redis-client.ts → redis-client.ts} +1 -1
- package/src/{api/reportError.ts → reportError.ts} +1 -1
- package/src/{api/routing → routing}/middleware/middleware.ts +4 -4
- package/src/{api/routing.ts → routing.ts} +13 -13
- package/src/{api/setupRequest.ts → setupRequest.ts} +3 -3
- package/test/auth.test.ts +1 -1
- package/test/contextProvider.test.ts +1 -1
- package/test/controller.test.ts +3 -3
- package/test/cosmos-query.test.ts +1 -1
- package/test/dist/controller.test.d.ts.map +1 -1
- package/test/dist/query.test.d.ts.map +1 -1
- package/test/dist/rawQuery.test.d.ts.map +1 -1
- package/test/layerUtils.test.ts +1 -1
- package/test/query.test.ts +4 -4
- package/test/rawQuery.test.ts +4 -4
- package/test/repository-ext.test.ts +3 -3
- package/test/router-generator.test.ts +3 -3
- package/test/routing-interruptibility.test.ts +2 -2
- package/test/rpc-context-map-streaming.test.ts +3 -3
- package/test/rpc-e2e-invalidation.test.ts +2 -2
- package/test/rpc-multi-middleware.test.ts +1 -1
- package/test/rpc-stream-fullstack.test.ts +2 -2
- package/test/validateSample.test.ts +3 -3
- package/dist/Emailer/service.d.ts +0 -64
- package/dist/Emailer/service.d.ts.map +0 -1
- package/dist/Emailer/service.js +0 -7
- package/dist/Emailer.d.ts +0 -2
- package/dist/Emailer.d.ts.map +0 -1
- package/dist/Emailer.js +0 -2
- package/dist/Model/Repository/Registry.d.ts +0 -21
- package/dist/Model/Repository/Registry.d.ts.map +0 -1
- package/dist/Model/Repository/Registry.js +0 -18
- package/dist/Model/Repository/ext.d.ts +0 -60
- package/dist/Model/Repository/ext.d.ts.map +0 -1
- package/dist/Model/Repository/ext.js +0 -122
- package/dist/Model/Repository/internal/internal.d.ts +0 -62
- package/dist/Model/Repository/internal/internal.d.ts.map +0 -1
- package/dist/Model/Repository/internal/internal.js +0 -398
- package/dist/Model/Repository/legacy.d.ts +0 -21
- package/dist/Model/Repository/legacy.d.ts.map +0 -1
- package/dist/Model/Repository/legacy.js +0 -2
- package/dist/Model/Repository/makeRepo.d.ts +0 -53
- package/dist/Model/Repository/makeRepo.d.ts.map +0 -1
- package/dist/Model/Repository/makeRepo.js +0 -27
- package/dist/Model/Repository/service.d.ts +0 -97
- package/dist/Model/Repository/service.d.ts.map +0 -1
- package/dist/Model/Repository/service.js +0 -2
- package/dist/Model/Repository/validation.d.ts +0 -71
- package/dist/Model/Repository/validation.d.ts.map +0 -1
- package/dist/Model/Repository/validation.js +0 -32
- package/dist/Model/Repository.d.ts +0 -7
- package/dist/Model/Repository.d.ts.map +0 -1
- package/dist/Model/Repository.js +0 -7
- package/dist/Model/dsl.d.ts +0 -33
- package/dist/Model/dsl.d.ts.map +0 -1
- package/dist/Model/dsl.js +0 -43
- package/dist/Model/filter/filterApi.d.ts +0 -30
- package/dist/Model/filter/filterApi.d.ts.map +0 -1
- package/dist/Model/filter/filterApi.js +0 -2
- package/dist/Model/filter/types/errors.d.ts +0 -29
- package/dist/Model/filter/types/errors.d.ts.map +0 -1
- package/dist/Model/filter/types/errors.js +0 -2
- package/dist/Model/filter/types/fields.d.ts +0 -15
- package/dist/Model/filter/types/fields.d.ts.map +0 -1
- package/dist/Model/filter/types/fields.js +0 -2
- package/dist/Model/filter/types/path/common.d.ts +0 -316
- package/dist/Model/filter/types/path/common.d.ts.map +0 -1
- package/dist/Model/filter/types/path/common.js +0 -2
- package/dist/Model/filter/types/path/eager.d.ts +0 -95
- package/dist/Model/filter/types/path/eager.d.ts.map +0 -1
- package/dist/Model/filter/types/path/eager.js +0 -31
- package/dist/Model/filter/types/path/index.d.ts +0 -4
- package/dist/Model/filter/types/path/index.d.ts.map +0 -1
- package/dist/Model/filter/types/path/index.js +0 -3
- package/dist/Model/filter/types/utils.d.ts +0 -79
- package/dist/Model/filter/types/utils.d.ts.map +0 -1
- package/dist/Model/filter/types/utils.js +0 -2
- package/dist/Model/filter/types/validator.d.ts +0 -30
- package/dist/Model/filter/types/validator.d.ts.map +0 -1
- package/dist/Model/filter/types/validator.js +0 -2
- package/dist/Model/filter/types.d.ts +0 -5
- package/dist/Model/filter/types.d.ts.map +0 -1
- package/dist/Model/filter/types.js +0 -7
- package/dist/Model/query/dsl.d.ts +0 -446
- package/dist/Model/query/dsl.d.ts.map +0 -1
- package/dist/Model/query/dsl.js +0 -339
- package/dist/Model/query/new-kid-interpreter.d.ts +0 -136
- package/dist/Model/query/new-kid-interpreter.d.ts.map +0 -1
- package/dist/Model/query/new-kid-interpreter.js +0 -336
- package/dist/Model/query.d.ts +0 -15
- package/dist/Model/query.d.ts.map +0 -1
- package/dist/Model/query.js +0 -3
- package/dist/Model.d.ts +0 -5
- package/dist/Model.d.ts.map +0 -1
- package/dist/Model.js +0 -5
- package/dist/QueueMaker/service.d.ts +0 -13
- package/dist/QueueMaker/service.d.ts.map +0 -1
- package/dist/QueueMaker/service.js +0 -4
- package/dist/RequestContext.d.ts +0 -103
- package/dist/RequestContext.d.ts.map +0 -1
- package/dist/RequestContext.js +0 -49
- package/dist/Store/service.d.ts +0 -138
- package/dist/Store/service.d.ts.map +0 -1
- package/dist/Store/service.js +0 -95
- package/dist/Store.d.ts +0 -2
- package/dist/Store.d.ts.map +0 -1
- package/dist/Store.js +0 -2
- package/dist/adapters/SQL/Model.d.ts.map +0 -1
- package/dist/adapters/SQL/Model.js +0 -469
- package/dist/adapters/SQL.d.ts.map +0 -1
- package/dist/adapters/ServiceBus.d.ts.map +0 -1
- package/dist/adapters/ServiceBus.js +0 -108
- package/dist/adapters/cosmos-client.d.ts.map +0 -1
- package/dist/adapters/cosmos-client.js +0 -11
- package/dist/adapters/index.d.ts +0 -8
- package/dist/adapters/index.d.ts.map +0 -1
- package/dist/adapters/index.js +0 -8
- package/dist/adapters/logger.d.ts +0 -9
- package/dist/adapters/logger.d.ts.map +0 -1
- package/dist/adapters/logger.js +0 -3
- package/dist/adapters/memQueue.d.ts.map +0 -1
- package/dist/adapters/memQueue.js +0 -21
- package/dist/adapters/mongo-client.d.ts.map +0 -1
- package/dist/adapters/mongo-client.js +0 -15
- package/dist/adapters/redis-client.d.ts.map +0 -1
- package/dist/adapters/redis-client.js +0 -98
- package/dist/api/ContextProvider.d.ts +0 -34
- package/dist/api/ContextProvider.d.ts.map +0 -1
- package/dist/api/ContextProvider.js +0 -40
- package/dist/api/codec.d.ts.map +0 -1
- package/dist/api/codec.js +0 -5
- package/dist/api/internal/RequestContextMiddleware.d.ts.map +0 -1
- package/dist/api/internal/RequestContextMiddleware.js +0 -46
- package/dist/api/internal/auth.d.ts.map +0 -1
- package/dist/api/internal/auth.js +0 -180
- package/dist/api/internal/events.d.ts.map +0 -1
- package/dist/api/internal/events.js +0 -49
- package/dist/api/internal/health.d.ts.map +0 -1
- package/dist/api/internal/health.js +0 -5
- package/dist/api/layerUtils.d.ts +0 -32
- package/dist/api/layerUtils.d.ts.map +0 -1
- package/dist/api/layerUtils.js +0 -17
- package/dist/api/middlewares.d.ts.map +0 -1
- package/dist/api/reportError.d.ts +0 -4
- package/dist/api/reportError.d.ts.map +0 -1
- package/dist/api/reportError.js +0 -28
- package/dist/api/routing/middleware/RouterMiddleware.d.ts.map +0 -1
- package/dist/api/routing/middleware/middleware.d.ts.map +0 -1
- package/dist/api/routing/middleware/middleware.js +0 -128
- package/dist/api/routing/middleware.d.ts.map +0 -1
- package/dist/api/routing/schema/jwt.d.ts.map +0 -1
- package/dist/api/routing/schema/jwt.js +0 -13
- package/dist/api/routing/tsort.d.ts +0 -8
- package/dist/api/routing/tsort.d.ts.map +0 -1
- package/dist/api/routing/tsort.js +0 -51
- package/dist/api/routing/utils.d.ts.map +0 -1
- package/dist/api/routing/utils.js +0 -45
- package/dist/api/routing.d.ts +0 -184
- package/dist/api/routing.d.ts.map +0 -1
- package/dist/api/setupRequest.d.ts.map +0 -1
- package/dist/api/setupRequest.js +0 -70
- package/dist/api/util.d.ts.map +0 -1
- package/dist/api/util.js +0 -14
- package/src/Emailer/service.ts +0 -62
- package/src/Emailer.ts +0 -1
- package/src/Model/Repository/Registry.ts +0 -34
- package/src/Model/Repository/ext.ts +0 -375
- package/src/Model/Repository/internal/internal.ts +0 -692
- package/src/Model/Repository/legacy.ts +0 -29
- package/src/Model/Repository/makeRepo.ts +0 -144
- package/src/Model/Repository/service.ts +0 -639
- package/src/Model/Repository/validation.ts +0 -31
- package/src/Model/Repository.ts +0 -6
- package/src/Model/dsl.ts +0 -129
- package/src/Model/filter/filterApi.ts +0 -60
- package/src/Model/filter/types/errors.ts +0 -47
- package/src/Model/filter/types/fields.ts +0 -50
- package/src/Model/filter/types/path/common.ts +0 -404
- package/src/Model/filter/types/path/eager.ts +0 -297
- package/src/Model/filter/types/path/index.ts +0 -4
- package/src/Model/filter/types/utils.ts +0 -128
- package/src/Model/filter/types/validator.ts +0 -46
- package/src/Model/filter/types.ts +0 -6
- package/src/Model/query/dsl.ts +0 -2546
- package/src/Model/query/new-kid-interpreter.ts +0 -484
- package/src/Model/query.ts +0 -13
- package/src/Model.ts +0 -4
- package/src/QueueMaker/service.ts +0 -19
- package/src/RequestContext.ts +0 -62
- package/src/Store/service.ts +0 -233
- package/src/Store.ts +0 -1
- package/src/adapters/index.ts +0 -7
- package/src/adapters/logger.ts +0 -3
- /package/src/{api/ContextProvider.ts → ContextProvider.ts} +0 -0
- /package/src/{adapters/SQL.ts → SQL.ts} +0 -0
- /package/src/{api/codec.ts → codec.ts} +0 -0
- /package/src/{adapters/cosmos-client.ts → cosmos-client.ts} +0 -0
- /package/src/{api/internal → internal}/auth.ts +0 -0
- /package/src/{api/internal → internal}/health.ts +0 -0
- /package/src/{adapters/memQueue.ts → memQueue.ts} +0 -0
- /package/src/{api/middlewares.ts → middlewares.ts} +0 -0
- /package/src/{adapters/mongo-client.ts → mongo-client.ts} +0 -0
- /package/src/{api/routing → routing}/middleware/RouterMiddleware.ts +0 -0
- /package/src/{api/routing → routing}/middleware.ts +0 -0
- /package/src/{api/routing → routing}/schema/jwt.ts +0 -0
- /package/src/{api/routing → routing}/tsort.ts +0 -0
- /package/src/{api/routing → routing}/utils.ts +0 -0
- /package/src/{api/util.ts → util.ts} +0 -0
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
import * as S from "effect-app/Schema";
|
|
2
|
-
import type { FilterResult } from "../filter/filterApi.js";
|
|
3
|
-
import type { FieldValues } from "../filter/types.js";
|
|
4
|
-
import { type QAll } from "../query/dsl.js";
|
|
5
|
-
export type AggregateIrExpression = {
|
|
6
|
-
readonly _tag: "agg-count";
|
|
7
|
-
} | {
|
|
8
|
-
readonly _tag: "agg-count-when";
|
|
9
|
-
readonly filter: readonly FilterResult[];
|
|
10
|
-
} | {
|
|
11
|
-
readonly _tag: "agg-sum";
|
|
12
|
-
readonly field: string;
|
|
13
|
-
} | {
|
|
14
|
-
readonly _tag: "agg-min";
|
|
15
|
-
readonly field: string;
|
|
16
|
-
} | {
|
|
17
|
-
readonly _tag: "agg-max";
|
|
18
|
-
readonly field: string;
|
|
19
|
-
};
|
|
20
|
-
export type AggregateIrItem = AggregateIrExpression | {
|
|
21
|
-
readonly _tag: "agg-field";
|
|
22
|
-
readonly path: string;
|
|
23
|
-
};
|
|
24
|
-
export type ComputedProjectionMathIrExpression = {
|
|
25
|
-
readonly _tag: "field";
|
|
26
|
-
readonly field: string;
|
|
27
|
-
} | {
|
|
28
|
-
readonly _tag: "mul";
|
|
29
|
-
readonly left: ComputedProjectionMathIrExpression;
|
|
30
|
-
readonly right: ComputedProjectionMathIrExpression;
|
|
31
|
-
};
|
|
32
|
-
export type ComputedProjectionIrExpression = {
|
|
33
|
-
readonly _tag: "relation-count";
|
|
34
|
-
readonly path: string;
|
|
35
|
-
readonly filter: readonly FilterResult[];
|
|
36
|
-
} | {
|
|
37
|
-
readonly _tag: "relation-any";
|
|
38
|
-
readonly path: string;
|
|
39
|
-
readonly filter: readonly FilterResult[];
|
|
40
|
-
} | {
|
|
41
|
-
readonly _tag: "relation-every";
|
|
42
|
-
readonly path: string;
|
|
43
|
-
readonly filter: readonly FilterResult[];
|
|
44
|
-
} | {
|
|
45
|
-
readonly _tag: "relation-distinct-count";
|
|
46
|
-
readonly path: string;
|
|
47
|
-
readonly field: string;
|
|
48
|
-
readonly filter: readonly FilterResult[];
|
|
49
|
-
} | {
|
|
50
|
-
readonly _tag: "relation-sum";
|
|
51
|
-
readonly path: string;
|
|
52
|
-
readonly field: string;
|
|
53
|
-
readonly filter: readonly FilterResult[];
|
|
54
|
-
} | {
|
|
55
|
-
readonly _tag: "relation-sum-expr";
|
|
56
|
-
readonly path: string;
|
|
57
|
-
readonly expression: ComputedProjectionMathIrExpression;
|
|
58
|
-
readonly filter: readonly FilterResult[];
|
|
59
|
-
} | {
|
|
60
|
-
readonly _tag: "relation-sum-expr-by";
|
|
61
|
-
readonly path: string;
|
|
62
|
-
readonly expression: ComputedProjectionMathIrExpression;
|
|
63
|
-
readonly unit: string;
|
|
64
|
-
readonly filter: readonly FilterResult[];
|
|
65
|
-
} | {
|
|
66
|
-
readonly _tag: "relation-sum-expr-normalized";
|
|
67
|
-
readonly path: string;
|
|
68
|
-
readonly expression: ComputedProjectionMathIrExpression;
|
|
69
|
-
readonly unit: string;
|
|
70
|
-
readonly toBase: string;
|
|
71
|
-
readonly factors: Readonly<Record<string, number>>;
|
|
72
|
-
readonly filter: readonly FilterResult[];
|
|
73
|
-
} | {
|
|
74
|
-
readonly _tag: "relation-collect";
|
|
75
|
-
readonly path: string;
|
|
76
|
-
readonly field: string;
|
|
77
|
-
readonly distinct: boolean;
|
|
78
|
-
readonly filter: readonly FilterResult[];
|
|
79
|
-
} | {
|
|
80
|
-
readonly _tag: "relation-collect-fields";
|
|
81
|
-
readonly path: string;
|
|
82
|
-
readonly fields: readonly string[];
|
|
83
|
-
readonly distinct: boolean;
|
|
84
|
-
readonly filter: readonly FilterResult[];
|
|
85
|
-
} | {
|
|
86
|
-
readonly _tag: "relation-length";
|
|
87
|
-
readonly path: string;
|
|
88
|
-
};
|
|
89
|
-
export declare const toFilter: <TFieldValues extends FieldValues, A, R, TFieldValuesRefined extends TFieldValues = TFieldValues>(q: QAll<TFieldValues, TFieldValuesRefined, A, R>, baseSchema?: S.Schema<unknown>) => {
|
|
90
|
-
t: Exclude<TFieldValues, undefined>;
|
|
91
|
-
limit: number;
|
|
92
|
-
skip: number;
|
|
93
|
-
select: any;
|
|
94
|
-
schema: S.Codec<any, TFieldValues, any, never>;
|
|
95
|
-
computed: never;
|
|
96
|
-
order: readonly [{
|
|
97
|
-
key: import("../filter/types/path/eager.js").Path<TFieldValues>;
|
|
98
|
-
direction: "ASC" | "DESC";
|
|
99
|
-
}, ...{
|
|
100
|
-
key: import("../filter/types/path/eager.js").Path<TFieldValues>;
|
|
101
|
-
direction: "ASC" | "DESC";
|
|
102
|
-
}[]];
|
|
103
|
-
ttype: "count" | "many" | "one";
|
|
104
|
-
mode: "aggregate";
|
|
105
|
-
filter: FilterResult[];
|
|
106
|
-
} | {
|
|
107
|
-
t: Exclude<TFieldValues, undefined>;
|
|
108
|
-
limit: number;
|
|
109
|
-
skip: number;
|
|
110
|
-
select: readonly [{
|
|
111
|
-
key: string;
|
|
112
|
-
subKeys: string[];
|
|
113
|
-
} | {
|
|
114
|
-
key: string;
|
|
115
|
-
computed: ComputedProjectionIrExpression;
|
|
116
|
-
} | keyof TFieldValues, ...({
|
|
117
|
-
key: string;
|
|
118
|
-
subKeys: string[];
|
|
119
|
-
} | {
|
|
120
|
-
key: string;
|
|
121
|
-
computed: ComputedProjectionIrExpression;
|
|
122
|
-
} | keyof TFieldValues)[]];
|
|
123
|
-
schema: S.Codec<any, TFieldValues, any, never>;
|
|
124
|
-
computed: Record<string, ComputedProjectionIrExpression>;
|
|
125
|
-
order: readonly [{
|
|
126
|
-
key: import("../filter/types/path/eager.js").Path<TFieldValues>;
|
|
127
|
-
direction: "ASC" | "DESC";
|
|
128
|
-
}, ...{
|
|
129
|
-
key: import("../filter/types/path/eager.js").Path<TFieldValues>;
|
|
130
|
-
direction: "ASC" | "DESC";
|
|
131
|
-
}[]];
|
|
132
|
-
ttype: "count" | "many" | "one";
|
|
133
|
-
mode: "aggregate" | "collect" | "project" | "transform";
|
|
134
|
-
filter: FilterResult[];
|
|
135
|
-
};
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV3LWtpZC1pbnRlcnByZXRlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL01vZGVsL3F1ZXJ5L25ldy1raWQtaW50ZXJwcmV0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxLQUFLLENBQUMsTUFBTSxtQkFBbUIsQ0FBQTtBQUt0QyxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUMxRCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVyRCxPQUFPLEVBQWdCLEtBQUssSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFekQsTUFBTSxNQUFNLHFCQUFxQixHQUM3QjtJQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFBO0NBQUUsR0FDOUI7SUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDO0lBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxTQUFTLFlBQVksRUFBRSxDQUFBO0NBQUUsR0FDN0U7SUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQztJQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFBO0NBQUUsR0FDcEQ7SUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQztJQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFBO0NBQUUsR0FDcEQ7SUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQztJQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFBO0NBQUUsQ0FBQTtBQUV4RCxNQUFNLE1BQU0sZUFBZSxHQUN2QixxQkFBcUIsR0FDckI7SUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQztJQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFBO0NBQUUsQ0FBQTtBQUV6RCxNQUFNLE1BQU0sa0NBQWtDLEdBQzFDO0lBQ0EsUUFBUSxD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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"new-kid-interpreter.d.ts","sourceRoot":"","sources":["../../../src/Model/query/new-kid-interpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,336 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
|
3
|
-
import * as Array from "effect-app/Array";
|
|
4
|
-
import { toNonEmptyArray } from "effect-app/Array";
|
|
5
|
-
import * as Option from "effect-app/Option";
|
|
6
|
-
import * as S from "effect-app/Schema";
|
|
7
|
-
import { dropUndefinedT } from "effect-app/utils";
|
|
8
|
-
import { identity, pipe } from "effect/Function";
|
|
9
|
-
import * as Match from "effect/Match";
|
|
10
|
-
import * as SchemaAST from "effect/SchemaAST";
|
|
11
|
-
import { make } from "../query/dsl.js";
|
|
12
|
-
const interpret = (_) => {
|
|
13
|
-
const a = _;
|
|
14
|
-
const data = {
|
|
15
|
-
filter: [],
|
|
16
|
-
schema: undefined,
|
|
17
|
-
limit: undefined,
|
|
18
|
-
skip: undefined,
|
|
19
|
-
order: [],
|
|
20
|
-
ttype: undefined,
|
|
21
|
-
mode: undefined,
|
|
22
|
-
computed: undefined,
|
|
23
|
-
aggregateMap: undefined
|
|
24
|
-
};
|
|
25
|
-
const upd = (v) => {
|
|
26
|
-
data.filter.push(...v.filter);
|
|
27
|
-
data.order.push(...v.order);
|
|
28
|
-
if (v.limit !== undefined)
|
|
29
|
-
data.limit = v.limit;
|
|
30
|
-
if (v.skip !== undefined)
|
|
31
|
-
data.skip = v.skip;
|
|
32
|
-
if (v.ttype !== undefined)
|
|
33
|
-
data.ttype = v.ttype;
|
|
34
|
-
if (v.schema !== undefined)
|
|
35
|
-
data.schema = v.schema;
|
|
36
|
-
if (v.mode !== undefined)
|
|
37
|
-
data.mode = v.mode;
|
|
38
|
-
if (v.computed !== undefined)
|
|
39
|
-
data.computed = v.computed;
|
|
40
|
-
if (v.aggregateMap !== undefined)
|
|
41
|
-
data.aggregateMap = v.aggregateMap;
|
|
42
|
-
};
|
|
43
|
-
const applyPath = (path) => (_) => _.t === "where" || _.t === "and" || _.t === "or"
|
|
44
|
-
? { ..._, path: `${path}.-1.${_.path}` }
|
|
45
|
-
: { ..._, result: _.result.map(applyPath(path)) };
|
|
46
|
-
pipe(a, Match.valueTags({
|
|
47
|
-
value: () => {
|
|
48
|
-
// data.filter.push(value)
|
|
49
|
-
},
|
|
50
|
-
where: ({ current, operation, relation, subPath }) => {
|
|
51
|
-
upd(interpret(current));
|
|
52
|
-
if (typeof operation === "function") {
|
|
53
|
-
data.filter.push({
|
|
54
|
-
t: "where-scope",
|
|
55
|
-
result: interpret(operation(make())).filter.map(subPath ? applyPath(subPath) : identity),
|
|
56
|
-
relation
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
data.filter.push({
|
|
61
|
-
t: "where",
|
|
62
|
-
path: operation[0],
|
|
63
|
-
op: operation.length === 2 ? "eq" : operation[1],
|
|
64
|
-
value: operation.length === 2 ? operation[1] : operation[2]
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
},
|
|
68
|
-
and: ({ current, operation, relation }) => {
|
|
69
|
-
upd(interpret(current));
|
|
70
|
-
if (typeof operation === "function") {
|
|
71
|
-
data.filter.push({ t: "and-scope", result: interpret(operation(make())).filter, relation });
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
data.filter.push({
|
|
75
|
-
t: "and",
|
|
76
|
-
path: operation[0],
|
|
77
|
-
op: operation.length === 2 ? "eq" : operation[1],
|
|
78
|
-
value: operation.length === 2 ? operation[1] : operation[2]
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
},
|
|
82
|
-
or: ({ current, operation, relation }) => {
|
|
83
|
-
upd(interpret(current));
|
|
84
|
-
if (typeof operation === "function") {
|
|
85
|
-
data.filter.push({ t: "or-scope", result: interpret(operation(make())).filter, relation });
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
data.filter.push({
|
|
89
|
-
t: "or",
|
|
90
|
-
path: operation[0],
|
|
91
|
-
op: operation.length === 2 ? "eq" : operation[1],
|
|
92
|
-
value: operation.length === 2 ? operation[1] : operation[2]
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
},
|
|
96
|
-
one: ({ current }) => {
|
|
97
|
-
upd(interpret(current));
|
|
98
|
-
data.limit = 1;
|
|
99
|
-
data.ttype = "one";
|
|
100
|
-
},
|
|
101
|
-
count: ({ current }) => {
|
|
102
|
-
upd(interpret(current));
|
|
103
|
-
data.ttype = "count";
|
|
104
|
-
data.schema = S.Struct({ id: S.String });
|
|
105
|
-
},
|
|
106
|
-
order: ({ current, direction, field }) => {
|
|
107
|
-
upd(interpret(current));
|
|
108
|
-
data.order.push({ key: field, direction });
|
|
109
|
-
},
|
|
110
|
-
page: (v) => {
|
|
111
|
-
upd(interpret(v.current));
|
|
112
|
-
data.limit = v.take;
|
|
113
|
-
data.skip = v.skip;
|
|
114
|
-
},
|
|
115
|
-
project: (v) => {
|
|
116
|
-
upd(interpret(v.current));
|
|
117
|
-
if (v.mode === "aggregate" && v.aggregateMap) {
|
|
118
|
-
data.schema = v.schema;
|
|
119
|
-
data.mode = "aggregate";
|
|
120
|
-
data.aggregateMap = Object.fromEntries(Object.entries(v.aggregateMap).map(([key, expression]) => {
|
|
121
|
-
switch (expression._tag) {
|
|
122
|
-
case "agg-field":
|
|
123
|
-
return [key, { _tag: "agg-field", path: expression.path }];
|
|
124
|
-
case "agg-count":
|
|
125
|
-
return [key, { _tag: "agg-count" }];
|
|
126
|
-
case "agg-count-when": {
|
|
127
|
-
const filter = interpret(expression.operation(make())).filter;
|
|
128
|
-
return [key, { _tag: "agg-count-when", filter }];
|
|
129
|
-
}
|
|
130
|
-
case "agg-sum":
|
|
131
|
-
return [key, { _tag: "agg-sum", field: expression.field }];
|
|
132
|
-
case "agg-min":
|
|
133
|
-
return [key, { _tag: "agg-min", field: expression.field }];
|
|
134
|
-
case "agg-max":
|
|
135
|
-
return [key, { _tag: "agg-max", field: expression.field }];
|
|
136
|
-
}
|
|
137
|
-
}));
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
if (v.computed && v.mode === "transform") {
|
|
141
|
-
throw new Error("Computed projections require mode 'project' or 'collect', not 'transform'");
|
|
142
|
-
}
|
|
143
|
-
data.schema = v.schema;
|
|
144
|
-
data.mode = v.computed
|
|
145
|
-
? v.mode === "collect" ? "collect" : "project"
|
|
146
|
-
: v.mode;
|
|
147
|
-
data.computed = v.computed
|
|
148
|
-
? Object.fromEntries(Object.entries(v.computed).map(([key, expression]) => {
|
|
149
|
-
const e = expression;
|
|
150
|
-
const op = "operation" in e ? e.operation : undefined;
|
|
151
|
-
const filter = op ? interpret(op(make())).filter.map(applyPath(e.path)) : [];
|
|
152
|
-
switch (e._tag) {
|
|
153
|
-
case "relation-count":
|
|
154
|
-
case "relation-any":
|
|
155
|
-
case "relation-every":
|
|
156
|
-
return [key, { _tag: e._tag, path: e.path, filter }];
|
|
157
|
-
case "relation-distinct-count":
|
|
158
|
-
case "relation-sum":
|
|
159
|
-
return [
|
|
160
|
-
key,
|
|
161
|
-
{ _tag: e._tag, path: e.path, field: e.field, filter }
|
|
162
|
-
];
|
|
163
|
-
case "relation-sum-expr":
|
|
164
|
-
return [
|
|
165
|
-
key,
|
|
166
|
-
{ _tag: e._tag, path: e.path, expression: e.expression, filter }
|
|
167
|
-
];
|
|
168
|
-
case "relation-sum-expr-by":
|
|
169
|
-
return [
|
|
170
|
-
key,
|
|
171
|
-
{
|
|
172
|
-
_tag: e._tag,
|
|
173
|
-
path: e.path,
|
|
174
|
-
expression: e.expression,
|
|
175
|
-
unit: e.unit,
|
|
176
|
-
filter
|
|
177
|
-
}
|
|
178
|
-
];
|
|
179
|
-
case "relation-sum-expr-normalized":
|
|
180
|
-
return [
|
|
181
|
-
key,
|
|
182
|
-
{
|
|
183
|
-
_tag: e._tag,
|
|
184
|
-
path: e.path,
|
|
185
|
-
expression: e.expression,
|
|
186
|
-
unit: e.unit,
|
|
187
|
-
toBase: e.toBase,
|
|
188
|
-
factors: e.factors,
|
|
189
|
-
filter
|
|
190
|
-
}
|
|
191
|
-
];
|
|
192
|
-
case "relation-collect":
|
|
193
|
-
return [
|
|
194
|
-
key,
|
|
195
|
-
{
|
|
196
|
-
_tag: e._tag,
|
|
197
|
-
path: e.path,
|
|
198
|
-
field: e.field,
|
|
199
|
-
distinct: e.distinct,
|
|
200
|
-
filter
|
|
201
|
-
}
|
|
202
|
-
];
|
|
203
|
-
case "relation-collect-fields":
|
|
204
|
-
return [
|
|
205
|
-
key,
|
|
206
|
-
{
|
|
207
|
-
_tag: e._tag,
|
|
208
|
-
path: e.path,
|
|
209
|
-
fields: e.fields,
|
|
210
|
-
distinct: e.distinct,
|
|
211
|
-
filter
|
|
212
|
-
}
|
|
213
|
-
];
|
|
214
|
-
case "relation-length":
|
|
215
|
-
return [key, { _tag: e._tag, path: e.path }];
|
|
216
|
-
}
|
|
217
|
-
}))
|
|
218
|
-
: undefined;
|
|
219
|
-
}
|
|
220
|
-
}));
|
|
221
|
-
return data;
|
|
222
|
-
};
|
|
223
|
-
const walkTransformation = (t) => {
|
|
224
|
-
if (S.AST.isDeclaration(t) && t.typeParameters.length > 0) {
|
|
225
|
-
return walkTransformation(t.typeParameters[0]);
|
|
226
|
-
}
|
|
227
|
-
return t;
|
|
228
|
-
};
|
|
229
|
-
export const toFilter = (q, baseSchema) => {
|
|
230
|
-
// TODO: Native interpreter for each db adapter, instead of the intermediate "new-kid" format
|
|
231
|
-
const a = interpret(q);
|
|
232
|
-
// Aggregate mode: build select entirely from aggregateMap (no schema-driven field list)
|
|
233
|
-
if (a.mode === "aggregate" && a.aggregateMap) {
|
|
234
|
-
const aggSelect = Object.entries(a.aggregateMap).map(([key, item]) => {
|
|
235
|
-
if (item._tag === "agg-field") {
|
|
236
|
-
return { key, path: item.path };
|
|
237
|
-
}
|
|
238
|
-
return { key, aggregate: item };
|
|
239
|
-
});
|
|
240
|
-
return dropUndefinedT({
|
|
241
|
-
t: null,
|
|
242
|
-
limit: a.limit,
|
|
243
|
-
skip: a.skip,
|
|
244
|
-
select: Option.getOrUndefined(toNonEmptyArray(aggSelect)),
|
|
245
|
-
schema: a.schema,
|
|
246
|
-
computed: undefined,
|
|
247
|
-
order: Option.getOrUndefined(toNonEmptyArray(a.order)),
|
|
248
|
-
ttype: a.ttype,
|
|
249
|
-
mode: "aggregate",
|
|
250
|
-
filter: a.filter.length ? a.filter : undefined
|
|
251
|
-
});
|
|
252
|
-
}
|
|
253
|
-
const schema = a.schema;
|
|
254
|
-
let select = [];
|
|
255
|
-
// TODO: support more complex (nested) schemas?
|
|
256
|
-
if (schema) {
|
|
257
|
-
const t = walkTransformation(SchemaAST.toEncoded(schema.ast));
|
|
258
|
-
if (S.AST.isObjects(t)) {
|
|
259
|
-
select = t.propertySignatures.map((_) => _.name);
|
|
260
|
-
for (const prop of t.propertySignatures) {
|
|
261
|
-
if (S.AST.isArrays(prop.type)) {
|
|
262
|
-
// make sure we only select when there are actually type literals in the tuple...
|
|
263
|
-
// otherwise we might be dealing with strings etc.
|
|
264
|
-
// TODO; be more strict, can't support arrays with unions that have non TypeLiteral members etc..
|
|
265
|
-
const arraySelect = {
|
|
266
|
-
key: prop.name,
|
|
267
|
-
subKeys: Array.flatMap(prop.type.rest, (x) => {
|
|
268
|
-
const t = walkTransformation(x);
|
|
269
|
-
return S.AST.isObjects(t) ? t.propertySignatures.map((y) => y.name) : [];
|
|
270
|
-
})
|
|
271
|
-
};
|
|
272
|
-
if (arraySelect.subKeys.length > 0) {
|
|
273
|
-
select.push(arraySelect);
|
|
274
|
-
// make sure we don't double select?
|
|
275
|
-
if (select.includes(prop.name)) {
|
|
276
|
-
select.splice(select.indexOf(prop.name), 1);
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
const computed = a.computed;
|
|
284
|
-
const getSelectKey = (_) => {
|
|
285
|
-
if (typeof _ === "string") {
|
|
286
|
-
return _;
|
|
287
|
-
}
|
|
288
|
-
if (typeof _ === "object" && _ !== null && "key" in _) {
|
|
289
|
-
return _.key;
|
|
290
|
-
}
|
|
291
|
-
return String(_);
|
|
292
|
-
};
|
|
293
|
-
const schemaKeys = select.map(getSelectKey);
|
|
294
|
-
const nonEncodedSchemaKeys = (() => {
|
|
295
|
-
if (!baseSchema) {
|
|
296
|
-
return [];
|
|
297
|
-
}
|
|
298
|
-
const encoded = walkTransformation(SchemaAST.toEncoded(baseSchema.ast));
|
|
299
|
-
if (!S.AST.isObjects(encoded)) {
|
|
300
|
-
return [];
|
|
301
|
-
}
|
|
302
|
-
const encodedKeys = encoded.propertySignatures.map((_) => _.name);
|
|
303
|
-
return schemaKeys.filter((key) => !encodedKeys.includes(key));
|
|
304
|
-
})();
|
|
305
|
-
const missingComputedKeys = nonEncodedSchemaKeys.filter((key) => !(computed && key in computed));
|
|
306
|
-
if (Array.isArrayNonEmpty(missingComputedKeys)) {
|
|
307
|
-
throw new Error(`Missing computed projections for schema keys: ${missingComputedKeys.join(", ")}`);
|
|
308
|
-
}
|
|
309
|
-
if (computed) {
|
|
310
|
-
const computedKeys = Object.keys(computed);
|
|
311
|
-
const extraComputedKeys = computedKeys.filter((key) => !schemaKeys.includes(key));
|
|
312
|
-
if (Array.isArrayNonEmpty(extraComputedKeys)) {
|
|
313
|
-
throw new Error(`Computed projection keys must exist in projection schema: ${extraComputedKeys.join(", ")}`);
|
|
314
|
-
}
|
|
315
|
-
select = select.filter((_) => {
|
|
316
|
-
const key = getSelectKey(_);
|
|
317
|
-
return !(key in computed);
|
|
318
|
-
});
|
|
319
|
-
select.push(...Object.entries(computed).map(([key, expression]) => ({ key, computed: expression })));
|
|
320
|
-
}
|
|
321
|
-
return dropUndefinedT({
|
|
322
|
-
t: null,
|
|
323
|
-
limit: a.limit,
|
|
324
|
-
skip: a.skip,
|
|
325
|
-
select: Option.getOrUndefined(toNonEmptyArray(select)),
|
|
326
|
-
schema,
|
|
327
|
-
computed,
|
|
328
|
-
order: Option.getOrUndefined(toNonEmptyArray(a.order)),
|
|
329
|
-
ttype: a.ttype,
|
|
330
|
-
mode: a.mode ?? "transform",
|
|
331
|
-
filter: a.filter.length
|
|
332
|
-
? a.filter
|
|
333
|
-
: undefined
|
|
334
|
-
});
|
|
335
|
-
};
|
|
336
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV3LWtpZC1pbnRlcnByZXRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9Nb2RlbC9xdWVyeS9uZXcta2lkLWludGVycHJldGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCw0REFBNEQ7QUFDNUQsT0FBTyxLQUFLLEtBQUssTUFBTSxrQkFBa0IsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDbEQsT0FBTyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQTtBQUMzQyxPQUFPLEtBQUssQ0FBQyxNQUFNLG1CQUFtQixDQUFBO0FBQ3RDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ2hELE9BQU8sS0FBSyxLQUFLLE1BQU0sY0FBYyxDQUFBO0FBQ3JDLE9BQU8sS0FBSyxTQUFTLE1BQU0sa0JBQWtCLENBQUE7QUFJN0MsT0FBTyxFQUFFLElBQUksRUFBcUIsTUFBTSxpQkFBaUIsQ0FBQTtBQXlHekQsTUFBTSxTQUFTLEdBQUcsQ0FLaEIsQ0FBZ0QsRUFBRSxFQUFFO0lBQ3BELE1BQU0sQ0FBQyxHQUFHLENBQW9CLENBQUE7SUFFOUIsTUFBTSxJQUFJLEdBQW1DO1FBQzNDLE1BQU0sRUFBRSxFQUFFO1FBQ1YsTUFBTSxFQUFFLFNBQVM7UUFDakIsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLFNBQVM7UUFDZixLQUFLLEVBQUUsRUFBRTtRQUNULEtBQUssRUFBRSxTQUFTO1FBQ2hCLElBQUksRUFBRSxTQUFTO1FBQ2YsUUFBUSxFQUFFLFNBQVM7UUFDbkIsWUFBWSxFQUFFLFNBQVM7S0FDeEIsQ0FBQTtJQUVELE1BQU0sR0FBRyxHQUFHLENBQ1YsQ0FBaUMsRUFDakMsRUFBRTtRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzdCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzNCLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFBO1FBQy9DLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFBO1FBQzVDLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFBO1FBQy9DLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFBO1FBQ2xELElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFBO1FBQzVDLElBQUksQ0FBQyxDQUFDLFFBQVEsS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFBO1FBQ3hELElBQUksQ0FBQyxDQUFDLFlBQVksS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsWUFBWSxDQUFBO0lBQ3RFLENBQUMsQ0FBQTtJQUVELE1BQU0sU0FBUyxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQWUsRUFBZ0IsRUFBRSxDQUNwRSxDQUFDLENBQUMsQ0FBQyxLQUFLLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUk7UUFDOUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFLEdBQUcs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
|
package/dist/Model/query.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export * from "./query/dsl.js";
|
|
2
|
-
export * from "./query/new-kid-interpreter.js";
|
|
3
|
-
export interface RawQuery<Encoded, Out> {
|
|
4
|
-
cosmos: (vals: {
|
|
5
|
-
name: string;
|
|
6
|
-
}) => {
|
|
7
|
-
query: string;
|
|
8
|
-
parameters: {
|
|
9
|
-
name: string;
|
|
10
|
-
value: any;
|
|
11
|
-
}[];
|
|
12
|
-
};
|
|
13
|
-
memory: (t: readonly Encoded[]) => readonly Out[];
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Nb2RlbC9xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFBO0FBQzlCLGNBQWMsZ0NBQWdDLENBQUE7QUFFOUMsTUFBTSxXQUFXLFFBQVEsQ0FBQyxPQUFPLEVBQUUsR0FBRztJQUNwQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUU7UUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFBO0tBQUUsS0FBSztRQUNsQyxLQUFLLEVBQUUsTUFBTSxDQUFBO1FBQ2IsVUFBVSxFQUFFO1lBQ1YsSUFBSSxFQUFFLE1BQU0sQ0FBQTtZQUNaLEtBQUssRUFBRSxHQUFHLENBQUE7U0FDWCxFQUFFLENBQUE7S0FDSixDQUFBO0lBQ0QsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLFNBQVMsT0FBTyxFQUFFLEtBQUssU0FBUyxHQUFHLEVBQUUsQ0FBQTtDQUNsRCJ9
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/Model/query.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gCAAgC,CAAA;AAE9C,MAAM,WAAW,QAAQ,CAAC,OAAO,EAAE,GAAG;IACpC,MAAM,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK;QAClC,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE;YACV,IAAI,EAAE,MAAM,CAAA;YACZ,KAAK,EAAE,GAAG,CAAA;SACX,EAAE,CAAA;KACJ,CAAA;IACD,MAAM,EAAE,CAAC,CAAC,EAAE,SAAS,OAAO,EAAE,KAAK,SAAS,GAAG,EAAE,CAAA;CAClD"}
|
package/dist/Model/query.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from "./query/dsl.js";
|
|
2
|
-
export * from "./query/new-kid-interpreter.js";
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvTW9kZWwvcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLGdDQUFnQyxDQUFBIn0=
|
package/dist/Model.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from "./Model/dsl.js";
|
|
2
|
-
export * as Q from "./Model/query.js";
|
|
3
|
-
export { makeRepo } from "./Model/Repository.js";
|
|
4
|
-
export { type RegisteredRepository, RepositoryRegistry, RepositoryRegistryLive } from "./Model/Repository.js";
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kZWwuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Nb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFBO0FBQzlCLE9BQU8sS0FBSyxDQUFDLE1BQU0sa0JBQWtCLENBQUE7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ2hELE9BQU8sRUFBRSxLQUFLLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUJBQXVCLENBQUEifQ==
|
package/dist/Model.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Model.d.ts","sourceRoot":"","sources":["../src/Model.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,KAAK,oBAAoB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA"}
|
package/dist/Model.js
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from "./Model/dsl.js";
|
|
2
|
-
export * as Q from "./Model/query.js";
|
|
3
|
-
export { makeRepo } from "./Model/Repository.js";
|
|
4
|
-
export { RepositoryRegistry, RepositoryRegistryLive } from "./Model/Repository.js";
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvTW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixPQUFPLEtBQUssQ0FBQyxNQUFNLGtCQUFrQixDQUFBO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNoRCxPQUFPLEVBQTZCLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUJBQXVCLENBQUEifQ==
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { NonEmptyReadonlyArray } from "effect-app/Array";
|
|
2
|
-
import type * as Effect from "effect-app/Effect";
|
|
3
|
-
import type * as Scope from "effect/Scope";
|
|
4
|
-
import { RequestContext } from "../RequestContext.js";
|
|
5
|
-
export interface QueueBase<Evt, DrainEvt> {
|
|
6
|
-
drain: <DrainE, DrainR>(makeHandleEvent: (ks: DrainEvt) => Effect.Effect<void, DrainE, DrainR>, sessionId?: string) => Effect.Effect<never, never, Scope.Scope | DrainR>;
|
|
7
|
-
publish: (...messages: NonEmptyReadonlyArray<Evt>) => Effect.Effect<void>;
|
|
8
|
-
}
|
|
9
|
-
export interface QueueMakerOps {
|
|
10
|
-
}
|
|
11
|
-
export declare const QueueMaker: QueueMakerOps;
|
|
12
|
-
export declare const QueueMeta: typeof RequestContext;
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1F1ZXVlTWFrZXIvc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQzdELE9BQU8sS0FBSyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQTtBQUNoRCxPQUFPLEtBQUssS0FBSyxLQUFLLE1BQU0sY0FBYyxDQUFBO0FBQzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUVyRCxNQUFNLFdBQVcsU0FBUyxDQUFDLEdBQUcsRUFBRSxRQUFRO0lBQ3RDLEtBQUssRUFBRSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQ3BCLGVBQWUsRUFBRSxDQUFDLEVBQUUsRUFBRSxRQUFRLEtBQUssTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxFQUN0RSxTQUFTLENBQUMsRUFBRSxNQUFNLEtBQ2YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUE7SUFDdEQsT0FBTyxFQUFFLENBQ1AsR0FBRyxRQUFRLEVBQUUscUJBQXFCLENBQUMsR0FBRyxDQUFDLEtBQ3BDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7Q0FDekI7QUFFRCxNQUFNLFdBQVcsYUFBYTtDQUFHO0FBQ2pDLGVBQU8sTUFBTSxVQUFVLEVBQUUsYUFBa0IsQ0FBQTtBQUUzQyxlQUFPLE1BQU0sU0FBUyx1QkFBaUIsQ0FBQSJ9
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/QueueMaker/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,KAAK,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,MAAM,WAAW,SAAS,CAAC,GAAG,EAAE,QAAQ;IACtC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EACpB,eAAe,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EACtE,SAAS,CAAC,EAAE,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,CAAA;IACtD,OAAO,EAAE,CACP,GAAG,QAAQ,EAAE,qBAAqB,CAAC,GAAG,CAAC,KACpC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CACzB;AAED,MAAM,WAAW,aAAa;CAAG;AACjC,eAAO,MAAM,UAAU,EAAE,aAAkB,CAAA;AAE3C,eAAO,MAAM,SAAS,uBAAiB,CAAA"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { RequestContext } from "../RequestContext.js";
|
|
2
|
-
export const QueueMaker = {};
|
|
3
|
-
export const QueueMeta = RequestContext;
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9RdWV1ZU1ha2VyL3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBYXJELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBa0IsRUFBRSxDQUFBO0FBRTNDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUEifQ==
|