@effect-app/infra 4.0.0-beta.22 → 4.0.0-beta.220
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 +1640 -0
- package/_check.sh +1 -1
- package/dist/CUPS.d.ts +7 -7
- package/dist/CUPS.d.ts.map +1 -1
- package/dist/CUPS.js +10 -12
- package/dist/Emailer/Sendgrid.d.ts +14 -14
- package/dist/Emailer/Sendgrid.d.ts.map +1 -1
- package/dist/Emailer/Sendgrid.js +16 -15
- package/dist/Emailer/fake.d.ts +1 -1
- package/dist/Emailer/service.d.ts +10 -4
- package/dist/Emailer/service.d.ts.map +1 -1
- package/dist/Emailer/service.js +3 -3
- package/dist/Emailer.d.ts +1 -1
- package/dist/MainFiberSet.d.ts +9 -9
- package/dist/MainFiberSet.d.ts.map +1 -1
- package/dist/MainFiberSet.js +3 -3
- package/dist/Model/Repository/Registry.d.ts +20 -0
- package/dist/Model/Repository/Registry.d.ts.map +1 -0
- package/dist/Model/Repository/Registry.js +17 -0
- package/dist/Model/Repository/ext.d.ts +33 -15
- package/dist/Model/Repository/ext.d.ts.map +1 -1
- package/dist/Model/Repository/ext.js +54 -2
- package/dist/Model/Repository/internal/internal.d.ts +6 -6
- package/dist/Model/Repository/internal/internal.d.ts.map +1 -1
- package/dist/Model/Repository/internal/internal.js +103 -51
- package/dist/Model/Repository/legacy.d.ts +1 -1
- package/dist/Model/Repository/makeRepo.d.ts +7 -6
- package/dist/Model/Repository/makeRepo.d.ts.map +1 -1
- package/dist/Model/Repository/makeRepo.js +5 -1
- package/dist/Model/Repository/service.d.ts +28 -23
- package/dist/Model/Repository/service.d.ts.map +1 -1
- package/dist/Model/Repository/validation.d.ts +46 -17
- package/dist/Model/Repository/validation.d.ts.map +1 -1
- package/dist/Model/Repository/validation.js +5 -5
- package/dist/Model/Repository.d.ts +2 -1
- package/dist/Model/Repository.d.ts.map +1 -1
- package/dist/Model/Repository.js +2 -1
- package/dist/Model/dsl.d.ts +4 -4
- package/dist/Model/dsl.d.ts.map +1 -1
- package/dist/Model/filter/filterApi.d.ts +5 -5
- package/dist/Model/filter/filterApi.d.ts.map +1 -1
- package/dist/Model/filter/types/errors.d.ts +1 -1
- package/dist/Model/filter/types/fields.d.ts +1 -1
- package/dist/Model/filter/types/path/common.d.ts +1 -1
- package/dist/Model/filter/types/path/eager.d.ts +1 -1
- package/dist/Model/filter/types/path/eager.d.ts.map +1 -1
- package/dist/Model/filter/types/path/eager.js +1 -1
- package/dist/Model/filter/types/path/index.d.ts +1 -1
- package/dist/Model/filter/types/utils.d.ts +1 -1
- package/dist/Model/filter/types/validator.d.ts +1 -1
- package/dist/Model/filter/types.d.ts +1 -1
- package/dist/Model/query/dsl.d.ts +139 -16
- package/dist/Model/query/dsl.d.ts.map +1 -1
- package/dist/Model/query/dsl.js +187 -1
- package/dist/Model/query/new-kid-interpreter.d.ts +76 -7
- package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -1
- package/dist/Model/query/new-kid-interpreter.js +122 -6
- package/dist/Model/query.d.ts +1 -1
- package/dist/Model.d.ts +2 -1
- package/dist/Model.d.ts.map +1 -1
- package/dist/Model.js +2 -1
- package/dist/QueueMaker/SQLQueue.d.ts +5 -7
- package/dist/QueueMaker/SQLQueue.d.ts.map +1 -1
- package/dist/QueueMaker/SQLQueue.js +130 -116
- package/dist/QueueMaker/errors.d.ts +2 -2
- package/dist/QueueMaker/errors.d.ts.map +1 -1
- package/dist/QueueMaker/memQueue.d.ts +7 -4
- package/dist/QueueMaker/memQueue.d.ts.map +1 -1
- package/dist/QueueMaker/memQueue.js +75 -63
- package/dist/QueueMaker/sbqueue.d.ts +6 -3
- package/dist/QueueMaker/sbqueue.d.ts.map +1 -1
- package/dist/QueueMaker/sbqueue.js +52 -53
- package/dist/QueueMaker/service.d.ts +1 -1
- package/dist/RequestContext.d.ts +74 -35
- package/dist/RequestContext.d.ts.map +1 -1
- package/dist/RequestContext.js +13 -14
- package/dist/RequestFiberSet.d.ts +7 -7
- package/dist/RequestFiberSet.d.ts.map +1 -1
- package/dist/RequestFiberSet.js +3 -3
- package/dist/Store/ContextMapContainer.d.ts +19 -3
- package/dist/Store/ContextMapContainer.d.ts.map +1 -1
- package/dist/Store/ContextMapContainer.js +13 -3
- package/dist/Store/Cosmos/query.d.ts +5 -1
- package/dist/Store/Cosmos/query.d.ts.map +1 -1
- package/dist/Store/Cosmos/query.js +113 -34
- package/dist/Store/Cosmos.d.ts +1 -1
- package/dist/Store/Cosmos.d.ts.map +1 -1
- package/dist/Store/Cosmos.js +335 -243
- package/dist/Store/Disk.d.ts +2 -2
- package/dist/Store/Disk.d.ts.map +1 -1
- package/dist/Store/Disk.js +72 -35
- package/dist/Store/Memory.d.ts +6 -4
- package/dist/Store/Memory.d.ts.map +1 -1
- package/dist/Store/Memory.js +242 -58
- package/dist/Store/SQL/Pg.d.ts +4 -0
- package/dist/Store/SQL/Pg.d.ts.map +1 -0
- package/dist/Store/SQL/Pg.js +231 -0
- package/dist/Store/SQL/query.d.ts +42 -0
- package/dist/Store/SQL/query.d.ts.map +1 -0
- package/dist/Store/SQL/query.js +479 -0
- package/dist/Store/SQL.d.ts +20 -0
- package/dist/Store/SQL.d.ts.map +1 -0
- package/dist/Store/SQL.js +446 -0
- package/dist/Store/codeFilter.d.ts +1 -1
- package/dist/Store/codeFilter.d.ts.map +1 -1
- package/dist/Store/codeFilter.js +4 -2
- package/dist/Store/index.d.ts +5 -2
- package/dist/Store/index.d.ts.map +1 -1
- package/dist/Store/index.js +15 -3
- package/dist/Store/service.d.ts +22 -8
- package/dist/Store/service.d.ts.map +1 -1
- package/dist/Store/service.js +24 -6
- package/dist/Store/utils.d.ts +1 -1
- package/dist/Store/utils.d.ts.map +1 -1
- package/dist/Store/utils.js +3 -4
- package/dist/Store.d.ts +1 -1
- package/dist/adapters/SQL/Model.d.ts +31 -42
- package/dist/adapters/SQL/Model.d.ts.map +1 -1
- package/dist/adapters/SQL/Model.js +29 -38
- package/dist/adapters/SQL.d.ts +1 -1
- package/dist/adapters/ServiceBus.d.ts +11 -11
- package/dist/adapters/ServiceBus.d.ts.map +1 -1
- package/dist/adapters/ServiceBus.js +25 -21
- package/dist/adapters/cosmos-client.d.ts +3 -3
- package/dist/adapters/cosmos-client.d.ts.map +1 -1
- package/dist/adapters/cosmos-client.js +3 -3
- package/dist/adapters/index.d.ts +8 -2
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +8 -2
- package/dist/adapters/logger.d.ts +1 -1
- package/dist/adapters/logger.d.ts.map +1 -1
- package/dist/adapters/memQueue.d.ts +3 -3
- package/dist/adapters/memQueue.d.ts.map +1 -1
- package/dist/adapters/memQueue.js +3 -3
- package/dist/adapters/mongo-client.d.ts +3 -3
- package/dist/adapters/mongo-client.d.ts.map +1 -1
- package/dist/adapters/mongo-client.js +3 -3
- package/dist/adapters/redis-client.d.ts +3 -3
- package/dist/adapters/redis-client.d.ts.map +1 -1
- package/dist/adapters/redis-client.js +3 -3
- package/dist/api/ContextProvider.d.ts +8 -8
- package/dist/api/ContextProvider.d.ts.map +1 -1
- package/dist/api/ContextProvider.js +6 -6
- package/dist/api/codec.d.ts +1 -1
- package/dist/api/internal/RequestContextMiddleware.d.ts +2 -2
- package/dist/api/internal/RequestContextMiddleware.d.ts.map +1 -1
- package/dist/api/internal/RequestContextMiddleware.js +9 -6
- package/dist/api/internal/auth.d.ts +44 -6
- package/dist/api/internal/auth.d.ts.map +1 -1
- package/dist/api/internal/auth.js +160 -29
- package/dist/api/internal/events.d.ts +3 -3
- package/dist/api/internal/events.d.ts.map +1 -1
- package/dist/api/internal/events.js +10 -8
- package/dist/api/internal/health.d.ts +1 -1
- package/dist/api/layerUtils.d.ts +6 -6
- package/dist/api/layerUtils.d.ts.map +1 -1
- package/dist/api/layerUtils.js +5 -5
- package/dist/api/middlewares.d.ts +1 -1
- package/dist/api/reportError.d.ts +1 -1
- package/dist/api/routing/middleware/RouterMiddleware.d.ts +4 -4
- package/dist/api/routing/middleware/RouterMiddleware.d.ts.map +1 -1
- package/dist/api/routing/middleware/middleware.d.ts +39 -3
- package/dist/api/routing/middleware/middleware.d.ts.map +1 -1
- package/dist/api/routing/middleware/middleware.js +48 -16
- package/dist/api/routing/middleware.d.ts +1 -2
- package/dist/api/routing/middleware.d.ts.map +1 -1
- package/dist/api/routing/middleware.js +1 -2
- package/dist/api/routing/schema/jwt.d.ts +1 -1
- package/dist/api/routing/schema/jwt.d.ts.map +1 -1
- package/dist/api/routing/tsort.d.ts +1 -1
- package/dist/api/routing/tsort.d.ts.map +1 -1
- package/dist/api/routing/utils.d.ts +3 -3
- package/dist/api/routing/utils.d.ts.map +1 -1
- package/dist/api/routing.d.ts +80 -37
- package/dist/api/routing.d.ts.map +1 -1
- package/dist/api/routing.js +109 -41
- package/dist/api/setupRequest.d.ts +8 -5
- package/dist/api/setupRequest.d.ts.map +1 -1
- package/dist/api/setupRequest.js +12 -7
- package/dist/api/util.d.ts +1 -1
- package/dist/arbs.d.ts +1 -1
- package/dist/arbs.d.ts.map +1 -1
- package/dist/arbs.js +5 -3
- package/dist/errorReporter.d.ts +4 -4
- package/dist/errorReporter.d.ts.map +1 -1
- package/dist/errorReporter.js +20 -25
- package/dist/errors.d.ts +1 -1
- package/dist/fileUtil.d.ts +1 -1
- package/dist/fileUtil.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/logger/jsonLogger.d.ts +1 -1
- package/dist/logger/logFmtLogger.d.ts +1 -1
- package/dist/logger/shared.d.ts +1 -1
- package/dist/logger/shared.js +2 -2
- package/dist/logger.d.ts +1 -1
- package/dist/logger.d.ts.map +1 -1
- package/dist/otel.d.ts +75 -0
- package/dist/otel.d.ts.map +1 -0
- package/dist/otel.js +65 -0
- package/dist/rateLimit.d.ts +9 -3
- package/dist/rateLimit.d.ts.map +1 -1
- package/dist/rateLimit.js +5 -11
- package/dist/test.d.ts +2 -2
- package/dist/test.d.ts.map +1 -1
- package/dist/test.js +1 -1
- package/dist/vitest.d.ts +1 -1
- package/examples/query.ts +42 -38
- package/package.json +46 -37
- package/src/CUPS.ts +9 -11
- package/src/Emailer/Sendgrid.ts +17 -14
- package/src/Emailer/service.ts +9 -3
- package/src/MainFiberSet.ts +5 -6
- package/src/Model/Repository/Registry.ts +33 -0
- package/src/Model/Repository/ext.ts +96 -10
- package/src/Model/Repository/internal/internal.ts +218 -149
- package/src/Model/Repository/makeRepo.ts +12 -10
- package/src/Model/Repository/service.ts +31 -22
- package/src/Model/Repository/validation.ts +4 -4
- package/src/Model/Repository.ts +1 -0
- package/src/Model/dsl.ts +3 -3
- package/src/Model/filter/types/path/eager.ts +1 -2
- package/src/Model/query/dsl.ts +348 -18
- package/src/Model/query/new-kid-interpreter.ts +206 -6
- package/src/Model.ts +1 -0
- package/src/QueueMaker/SQLQueue.ts +144 -152
- package/src/QueueMaker/memQueue.ts +104 -103
- package/src/QueueMaker/sbqueue.ts +70 -86
- package/src/RequestContext.ts +14 -16
- package/src/RequestFiberSet.ts +2 -2
- package/src/Store/ContextMapContainer.ts +41 -2
- package/src/Store/Cosmos/query.ts +140 -43
- package/src/Store/Cosmos.ts +482 -349
- package/src/Store/Disk.ts +102 -65
- package/src/Store/Memory.ts +275 -87
- package/src/Store/SQL/Pg.ts +361 -0
- package/src/Store/SQL/query.ts +539 -0
- package/src/Store/SQL.ts +731 -0
- package/src/Store/codeFilter.ts +3 -1
- package/src/Store/index.ts +17 -2
- package/src/Store/service.ts +41 -10
- package/src/Store/utils.ts +23 -22
- package/src/adapters/SQL/Model.ts +41 -40
- package/src/adapters/ServiceBus.ts +125 -121
- package/src/adapters/cosmos-client.ts +2 -2
- package/src/adapters/index.ts +7 -0
- package/src/adapters/memQueue.ts +2 -2
- package/src/adapters/mongo-client.ts +2 -2
- package/src/adapters/redis-client.ts +2 -2
- package/src/api/ContextProvider.ts +12 -13
- package/src/api/internal/RequestContextMiddleware.ts +15 -5
- package/src/api/internal/auth.ts +246 -44
- package/src/api/internal/events.ts +13 -9
- package/src/api/layerUtils.ts +8 -8
- package/src/api/routing/middleware/RouterMiddleware.ts +4 -4
- package/src/api/routing/middleware/middleware.ts +55 -14
- package/src/api/routing/middleware.ts +0 -2
- package/src/api/routing.ts +296 -131
- package/src/api/setupRequest.ts +28 -8
- package/src/arbs.ts +4 -2
- package/src/errorReporter.ts +62 -74
- package/src/logger/shared.ts +1 -1
- package/src/otel.ts +152 -0
- package/src/rateLimit.ts +30 -22
- package/src/test.ts +1 -1
- package/test/auth.test.ts +101 -0
- package/test/contextProvider.test.ts +11 -11
- package/test/controller.test.ts +21 -30
- package/test/dist/auth.test.d.ts.map +1 -0
- package/test/dist/contextProvider.test.d.ts.map +1 -1
- package/test/dist/controller.test.d.ts.map +1 -1
- package/test/dist/date-query.test.d.ts.map +1 -0
- package/test/dist/fixtures.d.ts +26 -12
- package/test/dist/fixtures.d.ts.map +1 -1
- package/test/dist/fixtures.js +12 -10
- package/test/dist/query.test.d.ts.map +1 -1
- package/test/dist/rawQuery.test.d.ts.map +1 -1
- package/test/dist/repository-ext.test.d.ts.map +1 -0
- package/test/dist/requires.test.d.ts.map +1 -1
- package/test/dist/router-generator.test.d.ts.map +1 -0
- package/test/dist/routing-interruptibility.test.d.ts.map +1 -0
- package/test/dist/rpc-e2e-invalidation.test.d.ts.map +1 -0
- package/test/dist/rpc-multi-middleware.test.d.ts.map +1 -1
- package/test/dist/rpc-stream-fullstack.test.d.ts.map +1 -0
- package/test/dist/sql-store.test.d.ts.map +1 -0
- package/test/fixtures.ts +11 -9
- package/test/query.test.ts +813 -38
- package/test/rawQuery.test.ts +301 -20
- package/test/repository-ext.test.ts +60 -0
- package/test/requires.test.ts +6 -6
- package/test/router-generator.test.ts +183 -0
- package/test/routing-interruptibility.test.ts +63 -0
- package/test/rpc-e2e-invalidation.test.ts +251 -0
- package/test/rpc-multi-middleware.test.ts +78 -9
- package/test/rpc-stream-fullstack.test.ts +300 -0
- package/test/sql-store.test.ts +1592 -0
- package/test/validateSample.test.ts +15 -12
- package/tsconfig.examples.json +1 -1
- package/tsconfig.json +0 -1
- package/tsconfig.json.bak +2 -2
- package/tsconfig.src.json +35 -35
- package/tsconfig.test.json +2 -2
- package/dist/Operations.d.ts +0 -55
- package/dist/Operations.d.ts.map +0 -1
- package/dist/Operations.js +0 -102
- package/dist/OperationsRepo.d.ts +0 -41
- package/dist/OperationsRepo.d.ts.map +0 -1
- package/dist/OperationsRepo.js +0 -14
- package/eslint.config.mjs +0 -24
- package/src/Operations.ts +0 -235
- package/src/OperationsRepo.ts +0 -16
|
@@ -20,7 +20,7 @@ const dottedToAccess = (path) => path
|
|
|
20
20
|
.map((p, i) => i === 0 ? p : `["${p}"]`)
|
|
21
21
|
.join("");
|
|
22
22
|
export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, select, order, skip, limit) {
|
|
23
|
-
const statement = (x, i
|
|
23
|
+
const statement = (x, i) => {
|
|
24
24
|
if (x.path === idKey) {
|
|
25
25
|
x = { ...x, path: "id" };
|
|
26
26
|
}
|
|
@@ -32,7 +32,6 @@ export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, selec
|
|
|
32
32
|
// would have to map id, but shouldnt allow id in defaultValues anyway..
|
|
33
33
|
k = x.path in defaultValues ? `(${k} ?? ${JSON.stringify(defaultValues[x.path])})` : k;
|
|
34
34
|
const v = "@v" + i;
|
|
35
|
-
const realValue = values[i];
|
|
36
35
|
switch (x.op) {
|
|
37
36
|
case "in":
|
|
38
37
|
return `ARRAY_CONTAINS(${v}, ${k})`;
|
|
@@ -43,13 +42,13 @@ export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, selec
|
|
|
43
42
|
case "notIncludes":
|
|
44
43
|
return `(NOT ARRAY_CONTAINS(${k}, ${v}))`;
|
|
45
44
|
case "includes-any":
|
|
46
|
-
return `ARRAY_CONTAINS_ANY(${k}, ${
|
|
45
|
+
return `ARRAY_CONTAINS_ANY(${k}, ${x.value.map((_, i) => `${v}__${i}`).join(", ")})`;
|
|
47
46
|
case "notIncludes-any":
|
|
48
|
-
return `(NOT ARRAY_CONTAINS_ANY(${k}, ${
|
|
47
|
+
return `(NOT ARRAY_CONTAINS_ANY(${k}, ${x.value.map((_, i) => `${v}__${i}`).join(", ")}))`;
|
|
49
48
|
case "includes-all":
|
|
50
|
-
return `ARRAY_CONTAINS_ALL(${k}, ${
|
|
49
|
+
return `ARRAY_CONTAINS_ALL(${k}, ${x.value.map((_, i) => `${v}__${i}`).join(", ")})`;
|
|
51
50
|
case "notIncludes-all":
|
|
52
|
-
return `(NOT ARRAY_CONTAINS_ALL(${k}, ${
|
|
51
|
+
return `(NOT ARRAY_CONTAINS_ALL(${k}, ${x.value.map((_, i) => `${v}__${i}`).join(", ")}))`;
|
|
53
52
|
case "contains":
|
|
54
53
|
return `CONTAINS(${k}, ${v}, true)`;
|
|
55
54
|
case "startsWith":
|
|
@@ -124,7 +123,7 @@ export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, selec
|
|
|
124
123
|
}
|
|
125
124
|
: _
|
|
126
125
|
: _;
|
|
127
|
-
const print = (state,
|
|
126
|
+
const print = (state, isRelation, every) => {
|
|
128
127
|
let s = "";
|
|
129
128
|
let l = 0;
|
|
130
129
|
const printN = (n) => {
|
|
@@ -133,13 +132,13 @@ export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, selec
|
|
|
133
132
|
for (const e of state) {
|
|
134
133
|
switch (e.t) {
|
|
135
134
|
case "where":
|
|
136
|
-
s += statement(e, i
|
|
135
|
+
s += statement(e, i++);
|
|
137
136
|
break;
|
|
138
137
|
case "or":
|
|
139
|
-
s += ` OR ${statement(e, i
|
|
138
|
+
s += ` OR ${statement(e, i++)}`;
|
|
140
139
|
break;
|
|
141
140
|
case "and":
|
|
142
|
-
s += ` AND ${statement(e, i
|
|
141
|
+
s += ` AND ${statement(e, i++)}`;
|
|
143
142
|
break;
|
|
144
143
|
case "or-scope": {
|
|
145
144
|
++l;
|
|
@@ -149,13 +148,13 @@ export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, selec
|
|
|
149
148
|
if (rel) {
|
|
150
149
|
const rel = e.result[0].path.split(".-1.")[0];
|
|
151
150
|
s += isRelation
|
|
152
|
-
? ` OR (\n${printN(l + 1)}${print(e.result,
|
|
151
|
+
? ` OR (\n${printN(l + 1)}${print(e.result, rel, every)}\n${printN(l)})`
|
|
153
152
|
: ` OR (\n${printN(l + 1)}${every ? "NOT " : ""}EXISTS(SELECT VALUE ${rel} FROM ${rel} IN f.${rel} WHERE ${print(e
|
|
154
153
|
.result
|
|
155
|
-
.map(flip(every)),
|
|
154
|
+
.map(flip(every)), rel, every)}))`;
|
|
156
155
|
}
|
|
157
156
|
else {
|
|
158
|
-
s += ` OR (\n${printN(l + 1)}${print(e.result,
|
|
157
|
+
s += ` OR (\n${printN(l + 1)}${print(e.result, null, every)}\n${printN(l)})`;
|
|
159
158
|
}
|
|
160
159
|
--l;
|
|
161
160
|
break;
|
|
@@ -168,11 +167,11 @@ export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, selec
|
|
|
168
167
|
if (rel) {
|
|
169
168
|
const rel = e.result[0].path.split(".-1.")[0];
|
|
170
169
|
s += isRelation
|
|
171
|
-
? ` AND (\n${printN(l + 1)}${print(e.result,
|
|
172
|
-
: ` AND (\n${printN(l + 1)}${every ? "NOT " : ""}EXISTS(SELECT VALUE ${rel} FROM ${rel} IN f.${rel} WHERE ${print(e.result.map(flip(every)),
|
|
170
|
+
? ` AND (\n${printN(l + 1)}${print(e.result, rel, every)}\n${printN(l)})`
|
|
171
|
+
: ` AND (\n${printN(l + 1)}${every ? "NOT " : ""}EXISTS(SELECT VALUE ${rel} FROM ${rel} IN f.${rel} WHERE ${print(e.result.map(flip(every)), rel, every)}))`;
|
|
173
172
|
}
|
|
174
173
|
else {
|
|
175
|
-
s += ` AND (\n${printN(l + 1)}${print(e.result,
|
|
174
|
+
s += ` AND (\n${printN(l + 1)}${print(e.result, null, every)}\n${printN(l)})`;
|
|
176
175
|
}
|
|
177
176
|
--l;
|
|
178
177
|
break;
|
|
@@ -185,11 +184,11 @@ export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, selec
|
|
|
185
184
|
if (rel) {
|
|
186
185
|
const rel = e.result[0].path.split(".-1.")[0];
|
|
187
186
|
s += isRelation
|
|
188
|
-
? `(\n${printN(l + 1)}${print(e.result,
|
|
189
|
-
: `(\n${printN(l + 1)}${every ? "NOT " : ""}EXISTS(SELECT VALUE ${rel} FROM ${rel} IN f.${rel} WHERE ${print(e.result.map(flip(every)),
|
|
187
|
+
? `(\n${printN(l + 1)}${print(e.result, rel, every)}\n${printN(l)})`
|
|
188
|
+
: `(\n${printN(l + 1)}${every ? "NOT " : ""}EXISTS(SELECT VALUE ${rel} FROM ${rel} IN f.${rel} WHERE ${print(e.result.map(flip(every)), rel, every)}))`;
|
|
190
189
|
}
|
|
191
190
|
else {
|
|
192
|
-
s += `(\n${printN(l + 1)}${print(e.result,
|
|
191
|
+
s += `(\n${printN(l + 1)}${print(e.result, null, every)}\n${printN(l)})`;
|
|
193
192
|
}
|
|
194
193
|
// ;--l
|
|
195
194
|
break;
|
|
@@ -217,33 +216,113 @@ export function buildWhereCosmosQuery3(idKey, filter, name, defaultValues, selec
|
|
|
217
216
|
.flatMap((_) => _.t === "and-scope" || _.t === "or-scope" || _.t === "where-scope"
|
|
218
217
|
? getValues(_.result)
|
|
219
218
|
: [_]);
|
|
220
|
-
const
|
|
219
|
+
const computedFilters = select
|
|
220
|
+
? select.flatMap((_) => typeof _ === "object" && "computed" in _ ? getValues(_.computed.filter) : [])
|
|
221
|
+
: [];
|
|
222
|
+
const values = [...computedFilters, ...getValues(filter)];
|
|
223
|
+
const computedSelectExpr = (key, computed) => {
|
|
224
|
+
const relationPath = computed.path;
|
|
225
|
+
const relationAlias = relationPath;
|
|
226
|
+
const relationSource = dottedToAccess(`f.${relationPath}`);
|
|
227
|
+
const compileExpr = (expression) => {
|
|
228
|
+
switch (expression._tag) {
|
|
229
|
+
case "field":
|
|
230
|
+
return dottedToAccess(`${relationAlias}.${expression.field}`);
|
|
231
|
+
case "mul":
|
|
232
|
+
return `(${compileExpr(expression.left)} * ${compileExpr(expression.right)})`;
|
|
233
|
+
default:
|
|
234
|
+
return assertUnreachable(expression);
|
|
235
|
+
}
|
|
236
|
+
};
|
|
237
|
+
const factorExpr = (unitExpr, toBase, factors) => {
|
|
238
|
+
const entries = Object.entries(factors).filter(([, factor]) => Number.isFinite(factor));
|
|
239
|
+
return entries.reduceRight((acc, [unit, factor]) => `IIF(${unitExpr} = ${JSON.stringify(unit)}, ${factor}, ${acc})`, `IIF(${unitExpr} = ${JSON.stringify(toBase)}, 1, 0)`);
|
|
240
|
+
};
|
|
241
|
+
const where = computed.filter.length > 0
|
|
242
|
+
? ` WHERE ${print(computed.filter, relationPath, false)}`
|
|
243
|
+
: "";
|
|
244
|
+
switch (computed._tag) {
|
|
245
|
+
case "relation-count":
|
|
246
|
+
return `(SELECT VALUE COUNT(1) FROM ${relationAlias} IN ${relationSource}${where}) AS ${key}`;
|
|
247
|
+
case "relation-any":
|
|
248
|
+
return `EXISTS(SELECT VALUE ${relationAlias} FROM ${relationAlias} IN ${relationSource}${where}) AS ${key}`;
|
|
249
|
+
case "relation-every": {
|
|
250
|
+
// ∀x.P(x) ≡ ¬∃x.¬P(x). Cosmos has no NOT(...) on EXISTS subqueries directly,
|
|
251
|
+
// but we can flip via NOT EXISTS(... WHERE NOT (filter)).
|
|
252
|
+
if (computed.filter.length === 0)
|
|
253
|
+
return `true AS ${key}`;
|
|
254
|
+
return `NOT EXISTS(SELECT VALUE ${relationAlias} FROM ${relationAlias} IN ${relationSource} WHERE NOT (${print(computed.filter, relationPath, false)})) AS ${key}`;
|
|
255
|
+
}
|
|
256
|
+
case "relation-distinct-count": {
|
|
257
|
+
const fieldRef = dottedToAccess(`${relationAlias}.${computed.field}`);
|
|
258
|
+
return `(SELECT VALUE COUNT(1) FROM (SELECT DISTINCT VALUE ${fieldRef} FROM ${relationAlias} IN ${relationSource}${where})) AS ${key}`;
|
|
259
|
+
}
|
|
260
|
+
case "relation-sum": {
|
|
261
|
+
const fieldRef = dottedToAccess(`${relationAlias}.${computed.field}`);
|
|
262
|
+
return `(SELECT VALUE SUM(${fieldRef}) FROM ${relationAlias} IN ${relationSource}${where}) AS ${key}`;
|
|
263
|
+
}
|
|
264
|
+
case "relation-sum-expr": {
|
|
265
|
+
const expression = compileExpr(computed.expression);
|
|
266
|
+
return `(SELECT VALUE SUM(${expression}) FROM ${relationAlias} IN ${relationSource}${where}) AS ${key}`;
|
|
267
|
+
}
|
|
268
|
+
case "relation-sum-expr-by": {
|
|
269
|
+
const unitRef = dottedToAccess(`${relationAlias}.${computed.unit}`);
|
|
270
|
+
const expression = compileExpr(computed.expression);
|
|
271
|
+
return `ARRAY(SELECT VALUE { "unit": ${unitRef}, "total": SUM(${expression}) } FROM ${relationAlias} IN ${relationSource}${where} GROUP BY ${unitRef}) AS ${key}`;
|
|
272
|
+
}
|
|
273
|
+
case "relation-sum-expr-normalized": {
|
|
274
|
+
const unitRef = dottedToAccess(`${relationAlias}.${computed.unit}`);
|
|
275
|
+
const expression = compileExpr(computed.expression);
|
|
276
|
+
const factor = factorExpr(unitRef, computed.toBase, computed.factors);
|
|
277
|
+
return `(SELECT VALUE SUM((${expression}) * (${factor})) FROM ${relationAlias} IN ${relationSource}${where}) AS ${key}`;
|
|
278
|
+
}
|
|
279
|
+
case "relation-collect": {
|
|
280
|
+
const fieldRef = dottedToAccess(`${relationAlias}.${computed.field}`);
|
|
281
|
+
if (computed.distinct) {
|
|
282
|
+
return `ARRAY(SELECT DISTINCT VALUE ${fieldRef} FROM ${relationAlias} IN ${relationSource}${where}) AS ${key}`;
|
|
283
|
+
}
|
|
284
|
+
return `ARRAY(SELECT VALUE ${fieldRef} FROM ${relationAlias} IN ${relationSource}${where}) AS ${key}`;
|
|
285
|
+
}
|
|
286
|
+
case "relation-collect-fields": {
|
|
287
|
+
const subqueries = computed.fields.map((field) => {
|
|
288
|
+
const fieldRef = dottedToAccess(`${relationAlias}.${field}`);
|
|
289
|
+
return computed.distinct
|
|
290
|
+
? `ARRAY(SELECT DISTINCT VALUE ${fieldRef} FROM ${relationAlias} IN ${relationSource}${where})`
|
|
291
|
+
: `ARRAY(SELECT VALUE ${fieldRef} FROM ${relationAlias} IN ${relationSource}${where})`;
|
|
292
|
+
});
|
|
293
|
+
const combined = computed.distinct
|
|
294
|
+
? subqueries.reduce((acc, sq) => `SetUnion(${acc}, ${sq})`)
|
|
295
|
+
: subqueries.reduce((acc, sq) => `ARRAY_CONCAT(${acc}, ${sq})`);
|
|
296
|
+
return `${combined} AS ${key}`;
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
};
|
|
221
300
|
// with joins, you should use DISTINCT
|
|
222
301
|
// or you can end up with duplicates
|
|
223
302
|
return {
|
|
224
303
|
query: `
|
|
225
304
|
SELECT ${select
|
|
226
|
-
?
|
|
305
|
+
? select
|
|
227
306
|
.map((s) => typeof s === "string"
|
|
228
307
|
? dottedToAccess(s === idKey ? "f.id" : `f.${s}`) // x["y"} vs x.y, helps with reserved keywords like "value"
|
|
229
|
-
:
|
|
308
|
+
: "computed" in s
|
|
309
|
+
? computedSelectExpr(s.key, s.computed)
|
|
310
|
+
: `ARRAY (SELECT ${s.subKeys.map((_) => dottedToAccess(`t.${_}`)).join(",")}
|
|
230
311
|
FROM t in ${dottedToAccess(`f.${s.key}`)}) AS ${s.key}`)
|
|
231
|
-
.join(", ")
|
|
312
|
+
.join(", ")
|
|
232
313
|
: "f"}
|
|
233
314
|
FROM ${name} f
|
|
234
315
|
|
|
235
|
-
${filter.length ? `WHERE (${print(filter,
|
|
316
|
+
${filter.length ? `WHERE (${print(filter, null, false)})` : ""}
|
|
236
317
|
${order ? `ORDER BY ${order.map((_) => `${dottedToAccess(`f.${_.key}`)} ${_.direction}`).join(", ")}` : ""}
|
|
237
318
|
${skip !== undefined || limit !== undefined ? `OFFSET ${skip ?? 0} LIMIT ${limit ?? 999999}` : ""}`,
|
|
238
|
-
parameters:
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
.concat(Array.isArray(x.value) ? x.value.map((_, i2) => ({ name: `@v${i}__${i2}`, value: _ })) : []))
|
|
246
|
-
]
|
|
319
|
+
parameters: values
|
|
320
|
+
.flatMap((x, i) => [{
|
|
321
|
+
name: `@v${i}`,
|
|
322
|
+
value: x.value
|
|
323
|
+
}]
|
|
324
|
+
// TODO: only for arrays that are used with _ANY or _ALL
|
|
325
|
+
.concat(Array.isArray(x.value) ? x.value.map((_, i2) => ({ name: `@v${i}__${i2}`, value: _ })) : []))
|
|
247
326
|
};
|
|
248
327
|
}
|
|
249
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvU3RvcmUvQ29zbW9zL3F1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCx3REFBd0Q7QUFDeEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQThCLE1BQU0sWUFBWSxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFHbEQsTUFBTSxVQUFVLFFBQVEsQ0FBQyxDQU14QjtJQUNDLE9BQU8sV0FBVztTQUNmLFFBQVEsQ0FBQyxjQUFjLENBQUM7U0FDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDeEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO1FBQ2QsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQ3hCLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzdCLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQTtZQUNyQixPQUFPLEdBQUcsQ0FBQTtRQUNaLENBQUMsRUFBRSxFQUFrRSxDQUFDLEVBQ3RFLFNBQVMsRUFDVCxDQUFDLENBQ0Y7S0FDRixDQUFDLENBQUMsQ0FBQTtBQUNQLENBQUM7QUFFRCxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFLENBQ3RDLElBQUk7S0FDRCxLQUFLLENBQUMsR0FBRyxDQUFDO0tBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FB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
|
|
328
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvU3RvcmUvQ29zbW9zL3F1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCx3REFBd0Q7QUFDeEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQThCLE1BQU0sWUFBWSxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUc3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFHbEQsTUFBTSxVQUFVLFFBQVEsQ0FBQyxDQU14QjtJQUNDLE9BQU8sV0FBVztTQUNmLFFBQVEsQ0FBQyxjQUFjLENBQUM7U0FDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDeEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO1FBQ2QsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQ3hCLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzdCLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQTtZQUNyQixPQUFPLEdBQUcsQ0FBQTtRQUNaLENBQUMsRUFBRSxFQUFrRSxDQUFDLEVBQ3RFLFNBQVMsRUFDVCxDQUFDLENBQ0Y7S0FDRixDQUFDLENBQUMsQ0FBQTtBQUNQLENBQUM7QUFFRCxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFLENBQ3RDLElBQUk7S0FDRCxLQUFLLENBQUMsR0FBRyxDQUFDO0tBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FB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
|
package/dist/Store/Cosmos.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Layer } from "effect-app";
|
|
2
2
|
import { type StorageConfig, StoreMaker } from "./service.js";
|
|
3
3
|
export declare function CosmosStoreLayer(cfg: StorageConfig): Layer.Layer<StoreMaker, never, never>;
|
|
4
|
-
//# sourceMappingURL=
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29zbW9zLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU3RvcmUvQ29zbW9zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBMkIsS0FBSyxFQUE4RCxNQUFNLFlBQVksQ0FBQTtBQVd2SCxPQUFPLEVBQThDLEtBQUssYUFBYSxFQUFnQyxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUE7QUEra0J2SSx3QkFBZ0IsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLGFBQWEseUNBSWxEIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cosmos.d.ts","sourceRoot":"","sources":["../../src/Store/Cosmos.ts"],"names":[],"mappings":"AAEA,OAAO,EAA2B,KAAK,EAA8D,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Cosmos.d.ts","sourceRoot":"","sources":["../../src/Store/Cosmos.ts"],"names":[],"mappings":"AAEA,OAAO,EAA2B,KAAK,EAA8D,MAAM,YAAY,CAAA;AAWvH,OAAO,EAA8C,KAAK,aAAa,EAAgC,UAAU,EAAE,MAAM,cAAc,CAAA;AA+kBvI,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,aAAa,yCAIlD"}
|