@effect-app/infra 0.170.6 → 0.172.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 +34 -0
- package/_cjs/services/Operations/live.cjs +8 -9
- package/_cjs/services/Operations/live.cjs.map +1 -1
- package/_cjs/services/Repository/dsl.cjs +70 -0
- package/_cjs/services/Repository/dsl.cjs.map +1 -0
- package/_cjs/services/Repository/ext.cjs +217 -0
- package/_cjs/services/Repository/ext.cjs.map +1 -0
- package/_cjs/services/Repository/service.cjs +6 -0
- package/_cjs/services/Repository/service.cjs.map +1 -0
- package/_cjs/services/Repository.cjs +32 -252
- package/_cjs/services/Repository.cjs.map +1 -1
- package/_cjs/services/RepositoryBase.cjs +173 -48
- package/_cjs/services/RepositoryBase.cjs.map +1 -1
- package/_cjs/services/RequestContextContainer.cjs +13 -14
- package/_cjs/services/RequestContextContainer.cjs.map +1 -1
- package/_cjs/services/Store/ContextMapContainer.cjs +9 -10
- package/_cjs/services/Store/ContextMapContainer.cjs.map +1 -1
- package/_cjs/services/Store/codeFilter.cjs +2 -2
- package/_cjs/services/Store/utils.cjs +8 -9
- package/_cjs/services/Store/utils.cjs.map +1 -1
- package/_cjs/services/simpledb/diskdb.cjs +1 -2
- package/_cjs/services/simpledb/diskdb.cjs.map +1 -1
- package/_cjs/services/simpledb/simpledb.cjs +5 -6
- package/_cjs/services/simpledb/simpledb.cjs.map +1 -1
- package/_src/api/express/schema/routing.ts +6 -6
- package/_src/services/Operations/live.ts +1 -1
- package/_src/services/Repository/dsl.ts +137 -0
- package/_src/services/Repository/ext.ts +707 -0
- package/_src/services/Repository/service.ts +12 -0
- package/_src/services/Repository.ts +3 -815
- package/_src/services/RepositoryBase.ts +621 -4
- package/_src/services/RequestContextContainer.ts +1 -1
- package/_src/services/Store/ContextMapContainer.ts +1 -1
- package/_src/services/Store/codeFilter.ts +2 -2
- package/_src/services/Store/utils.ts +9 -9
- package/_src/services/simpledb/diskdb.ts +1 -1
- package/_src/services/simpledb/simpledb.ts +1 -1
- package/dist/services/Operations/live.js +9 -10
- package/dist/services/QueueMaker/service.d.ts +2 -2
- package/dist/services/Repository/dsl.d.ts +51 -0
- package/dist/services/Repository/dsl.d.ts.map +1 -0
- package/dist/services/Repository/dsl.js +55 -0
- package/dist/services/Repository/ext.d.ts +324 -0
- package/dist/services/Repository/ext.d.ts.map +1 -0
- package/dist/services/Repository/ext.js +180 -0
- package/dist/services/Repository/service.d.ts +10 -0
- package/dist/services/Repository/service.d.ts.map +1 -0
- package/dist/services/Repository/service.js +2 -0
- package/dist/services/Repository.d.ts +3 -363
- package/dist/services/Repository.d.ts.map +1 -1
- package/dist/services/Repository.js +4 -217
- package/dist/services/RepositoryBase.d.ts +241 -6
- package/dist/services/RepositoryBase.d.ts.map +1 -1
- package/dist/services/RepositoryBase.js +164 -48
- package/dist/services/RequestContextContainer.js +14 -15
- package/dist/services/Store/ContextMapContainer.js +10 -11
- package/dist/services/Store/codeFilter.js +3 -3
- package/dist/services/Store/utils.js +10 -11
- package/dist/services/simpledb/cosmosdb.d.ts +2 -2
- package/dist/services/simpledb/diskdb.d.ts +1 -1
- package/dist/services/simpledb/diskdb.js +2 -3
- package/dist/services/simpledb/memdb.d.ts +1 -1
- package/dist/services/simpledb/redisdb.d.ts +5 -5
- package/dist/services/simpledb/shared.d.ts +5 -5
- package/dist/services/simpledb/simpledb.d.ts +2 -2
- package/dist/services/simpledb/simpledb.js +5 -6
- package/package.json +37 -7
|
@@ -1,16 +1,24 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "effect/
|
|
2
|
-
import * as tsplus_module_2 from "
|
|
3
|
-
import * as tsplus_module_3 from "@effect-app/
|
|
4
|
-
import * as tsplus_module_4 from "@effect-app/
|
|
5
|
-
import * as tsplus_module_5 from "@effect-app/
|
|
6
|
-
import * as tsplus_module_6 from "@effect/
|
|
7
|
-
import * as tsplus_module_7 from "@effect-app/core/
|
|
8
|
-
import * as tsplus_module_8 from "effect/
|
|
9
|
-
import * as tsplus_module_9 from "@effect-app/
|
|
10
|
-
import * as tsplus_module_10 from "@effect
|
|
1
|
+
import * as tsplus_module_1 from "@effect-app/prelude/_ext/misc";
|
|
2
|
+
import * as tsplus_module_2 from "effect/Effect";
|
|
3
|
+
import * as tsplus_module_3 from "@effect-app/infra/services/Repository/ext";
|
|
4
|
+
import * as tsplus_module_4 from "@effect-app/prelude/schema";
|
|
5
|
+
import * as tsplus_module_5 from "@effect-app/prelude/Pure";
|
|
6
|
+
import * as tsplus_module_6 from "@effect-app/core/Array";
|
|
7
|
+
import * as tsplus_module_7 from "@effect-app/core/_ext/Iterable";
|
|
8
|
+
import * as tsplus_module_8 from "@effect-app/core/Effect";
|
|
9
|
+
import * as tsplus_module_9 from "@effect-app/core/Chunk";
|
|
10
|
+
import * as tsplus_module_10 from "@effect/schema/Schema";
|
|
11
|
+
import * as tsplus_module_11 from "@effect-app/core/Function";
|
|
12
|
+
import * as tsplus_module_12 from "effect/PubSub";
|
|
13
|
+
import * as tsplus_module_13 from "@effect-app/prelude/service";
|
|
14
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
15
|
+
/* eslint-disable @typescript-eslint/ban-types */
|
|
16
|
+
// import type { ParserEnv } from "@effect-app/schema/custom/Parser"
|
|
17
|
+
import { AnyPureDSL, byIdAndSaveWithPure, get, queryAndSaveOnePureEffect, queryEffect, queryOneEffect, saveAllWithEffectInt, saveManyWithPure_, saveManyWithPureBatched_, saveWithPure_ } from "./Repository.js";
|
|
11
18
|
import { StoreMaker } from "./Store.js";
|
|
12
19
|
import { makeFilters } from "@effect-app/infra/filter";
|
|
13
20
|
import { S } from "@effect-app/prelude";
|
|
21
|
+
import { NotFoundError } from "../errors.js";
|
|
14
22
|
import { ContextMapContainer } from "./Store/ContextMapContainer.js";
|
|
15
23
|
import { QueryBuilder } from "./Store/filterApi/query.js";
|
|
16
24
|
/**
|
|
@@ -37,6 +45,114 @@ export class RepositoryBaseC2 extends RepositoryBaseC1 {
|
|
|
37
45
|
this.changeFeed = this.impl.changeFeed;
|
|
38
46
|
}
|
|
39
47
|
}
|
|
48
|
+
export class RepositoryBaseC3 extends RepositoryBaseC2 {
|
|
49
|
+
constructor() {
|
|
50
|
+
super(...arguments);
|
|
51
|
+
this.log = (evt) => AnyPureDSL.log(evt);
|
|
52
|
+
this.save = (...items) => this.saveAndPublish(items);
|
|
53
|
+
this.saveWithEvents = (events) => (...items) => this.saveAndPublish(items, events);
|
|
54
|
+
}
|
|
55
|
+
get(id) {
|
|
56
|
+
return tsplus_module_2.flatMap(this
|
|
57
|
+
.find(id), (_) => tsplus_module_1.encaseMaybeInEffect_(_, () => new NotFoundError({ type: this.itemType, id })));
|
|
58
|
+
}
|
|
59
|
+
projectEffect(map) {
|
|
60
|
+
// TODO: a projection that gets sent to the db instead.
|
|
61
|
+
return tsplus_module_2.flatMap(map, (f) => tsplus_module_2.map(this
|
|
62
|
+
.utils
|
|
63
|
+
.filter(f), (_) => f.collect ? _.filterMap(f.collect) : _));
|
|
64
|
+
}
|
|
65
|
+
project(map) {
|
|
66
|
+
return tsplus_module_3.projectEffect(this, tsplus_module_2.sync(() => map));
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* TODO: count inside the db.
|
|
70
|
+
* @tsplus fluent Repository project
|
|
71
|
+
*/
|
|
72
|
+
count(filter) {
|
|
73
|
+
return tsplus_module_2.map(tsplus_module_3.projectEffect(this, tsplus_module_2.sync(() => ({ filter }))), (_) => tsplus_module_4.NonNegativeInt(_.length));
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* @tsplus fluent Repository queryEffect
|
|
77
|
+
*/
|
|
78
|
+
queryEffect(
|
|
79
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
80
|
+
map) {
|
|
81
|
+
return tsplus_module_2.flatMap(map, (f) => tsplus_module_2.map(tsplus_module_2.flatMap((f.filter ? this.utils.filter(f) : this.utils.all), (_) => this.utils.parseMany(_)), (_) => f.collect ? _.filterMap(f.collect) : _));
|
|
82
|
+
}
|
|
83
|
+
queryOneEffect(
|
|
84
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
85
|
+
map) {
|
|
86
|
+
return tsplus_module_2.flatMap(map, (f) => tsplus_module_2.flatMap(tsplus_module_2.flatMap((f.filter ? this.utils.filter({ filter: f.filter, limit: 1 }) : this.utils.all), (_) => this.utils.parseMany(_)), (_) => tsplus_module_2.map(tsplus_module_1.encaseMaybeInEffect_((f.collect ? _.filterMap(f.collect) : _)
|
|
87
|
+
.toNonEmpty, () => new NotFoundError({ type: this.itemType, id: f.filter })), (_) => _[0])));
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* @tsplus fluent Repository query
|
|
91
|
+
*/
|
|
92
|
+
query(
|
|
93
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
94
|
+
map) {
|
|
95
|
+
return tsplus_module_3.queryEffect(this, tsplus_module_2.sync(() => map));
|
|
96
|
+
}
|
|
97
|
+
queryOne(map) {
|
|
98
|
+
return tsplus_module_3.queryOneEffect(this, tsplus_module_2.sync(() => map));
|
|
99
|
+
}
|
|
100
|
+
queryAndSaveOnePureEffect(map) {
|
|
101
|
+
return (pure) => tsplus_module_2.flatMap(queryOneEffect(this, map), (_) => saveWithPure_(this, _, pure));
|
|
102
|
+
}
|
|
103
|
+
queryAndSaveOnePure(map) {
|
|
104
|
+
return queryAndSaveOnePureEffect(this, tsplus_module_2.sync(() => map));
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* @tsplus fluent Repository queryAndSavePureEffect
|
|
108
|
+
*/
|
|
109
|
+
queryAndSavePureEffect(map) {
|
|
110
|
+
return (pure) => tsplus_module_2.flatMap(queryEffect(this, map), (_) => tsplus_module_3.saveManyWithPure_(this, _, pure));
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* @tsplus fluent Repository queryAndSavePure
|
|
114
|
+
*/
|
|
115
|
+
queryAndSavePure(map) {
|
|
116
|
+
return tsplus_module_3.queryAndSavePureEffect(this, tsplus_module_2.sync(() => map));
|
|
117
|
+
}
|
|
118
|
+
saveManyWithPure() {
|
|
119
|
+
return (pure) => (items) => saveManyWithPure_(this, items, pure);
|
|
120
|
+
}
|
|
121
|
+
byIdAndSaveWithPure(id) {
|
|
122
|
+
return (pure) => tsplus_module_2.flatMap(get(this, id), (item) => saveWithPure_(this, item, pure));
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
|
|
126
|
+
*/
|
|
127
|
+
handleByIdAndSaveWithPure() {
|
|
128
|
+
return (pure) => (req, ctx) => byIdAndSaveWithPure(this, req.id)(pure(req, ctx));
|
|
129
|
+
}
|
|
130
|
+
saveManyWithPure_(items, pure) {
|
|
131
|
+
return saveAllWithEffectInt(this, tsplus_module_5.runTerm(pure, [...items]));
|
|
132
|
+
}
|
|
133
|
+
saveWithPure_(item, pure) {
|
|
134
|
+
return saveAllWithEffectInt(this, tsplus_module_2.map(tsplus_module_5.runTerm(pure, item), ([item, events, a]) => [[item], events, a]));
|
|
135
|
+
}
|
|
136
|
+
saveAllWithEffectInt(gen) {
|
|
137
|
+
return tsplus_module_2.flatMap(gen, ([items, events, a]) => tsplus_module_2.map(this.saveAndPublish(items, events), () => a));
|
|
138
|
+
}
|
|
139
|
+
queryAndSavePureEffectBatched(
|
|
140
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
141
|
+
map, batchSize = 100) {
|
|
142
|
+
return (pure) => tsplus_module_2.flatMap(queryEffect(this, map), (_) => tsplus_module_3.saveManyWithPureBatched_(this, _, pure, batchSize));
|
|
143
|
+
}
|
|
144
|
+
queryAndSavePureBatched(
|
|
145
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
146
|
+
map, batchSize = 100) {
|
|
147
|
+
return tsplus_module_3.queryAndSavePureEffectBatched(this, tsplus_module_2.sync(() => map), batchSize);
|
|
148
|
+
}
|
|
149
|
+
saveManyWithPureBatched(batchSize = 100) {
|
|
150
|
+
return (pure) => (items) => saveManyWithPureBatched_(this, items, pure, batchSize);
|
|
151
|
+
}
|
|
152
|
+
saveManyWithPureBatched_(items, pure, batchSize = 100) {
|
|
153
|
+
return tsplus_module_7.ext_forEach(tsplus_module_6.chunk_(items, batchSize), (batch) => saveAllWithEffectInt(this, tsplus_module_5.runTerm(pure, batch)));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
40
156
|
/**
|
|
41
157
|
* A base implementation to create a repository.
|
|
42
158
|
*/
|
|
@@ -52,19 +168,19 @@ export function makeRepo() {
|
|
|
52
168
|
}
|
|
53
169
|
const mkStore = makeStore()(name, schema, mapTo);
|
|
54
170
|
function make(args) {
|
|
55
|
-
return
|
|
56
|
-
const encode =
|
|
57
|
-
const decode =
|
|
58
|
-
return
|
|
171
|
+
return tsplus_module_2.withLogSpan(tsplus_module_2.flatMap(tsplus_module_2.context(), rctx => {
|
|
172
|
+
const encode = tsplus_module_11.flow(tsplus_module_10.encode(schema), tsplus_module_2.provide(rctx));
|
|
173
|
+
const decode = tsplus_module_11.flow(tsplus_module_10.decode(schema), tsplus_module_2.provide(rctx));
|
|
174
|
+
return tsplus_module_2.flatMap(mkStore(args.makeInitial, args.config), store => tsplus_module_2.flatMap(ContextMapContainer, ({ get }) => {
|
|
59
175
|
const cms = get.andThen((_) => ({
|
|
60
176
|
get: (id) => _.get(`${name}.${id}`),
|
|
61
177
|
set: (id, etag) => _.set(`${name}.${id}`, etag)
|
|
62
178
|
}));
|
|
63
|
-
return
|
|
64
|
-
const pub = "publishEvents" in args ?
|
|
65
|
-
return
|
|
66
|
-
const allE =
|
|
67
|
-
const all =
|
|
179
|
+
return tsplus_module_2.flatMap(tsplus_module_2.context(), pubCfg => {
|
|
180
|
+
const pub = "publishEvents" in args ? tsplus_module_11.flow(args.publishEvents, (_) => tsplus_module_2.provide(_, pubCfg)) : () => tsplus_module_2.unit;
|
|
181
|
+
return tsplus_module_2.map(tsplus_module_12.unbounded(), changeFeed => {
|
|
182
|
+
const allE = tsplus_module_2.flatMap(store.all, (items) => tsplus_module_2.map(cms, ({ set }) => items.map((_) => mapReverse(_, set))));
|
|
183
|
+
const all = tsplus_module_2.flatMap(allE, (_) => tsplus_module_2.orDie(_.forEachEffect((_) => decode(_), { concurrency: "inherit", batching: true })));
|
|
68
184
|
const structSchema = schema;
|
|
69
185
|
const i = ("struct" in structSchema ? structSchema["struct"] : schema).pipe((_) => _.ast._tag === "Union"
|
|
70
186
|
// we need to get the TypeLiteral, incase of class it's behind a transform...
|
|
@@ -82,44 +198,44 @@ export function makeRepo() {
|
|
|
82
198
|
: _
|
|
83
199
|
.pipe(S
|
|
84
200
|
.pick("id")));
|
|
85
|
-
const encodeId =
|
|
201
|
+
const encodeId = tsplus_module_11.flow(tsplus_module_10.encode(i), tsplus_module_2.provide(rctx));
|
|
86
202
|
function findE(_id) {
|
|
87
|
-
return
|
|
88
|
-
.find(id)), (items) =>
|
|
203
|
+
return tsplus_module_2.flatMap(tsplus_module_2.orDie(tsplus_module_2.map(encodeId({ id: _id }), (_) => _.id)).andThen((id) => store
|
|
204
|
+
.find(id)), (items) => tsplus_module_2.map(cms, ({ set }) => items.map((_) => mapReverse(_, set))));
|
|
89
205
|
}
|
|
90
206
|
function find(id) {
|
|
91
|
-
return
|
|
207
|
+
return tsplus_module_8.flatMapOption(findE(id), (_) => tsplus_module_2.orDie(decode(_)));
|
|
92
208
|
}
|
|
93
|
-
const saveAllE = (a) =>
|
|
209
|
+
const saveAllE = (a) => tsplus_module_2.asUnit(tsplus_module_8.flatMapOption(tsplus_module_2.sync(() => tsplus_module_6.CollectionToNonEmptyReadonlyArray(a)), (a) => tsplus_module_2.flatMap(cms, ({ get, set }) => {
|
|
94
210
|
const items = a.map((_) => mapToPersistenceModel(_, get));
|
|
95
|
-
return
|
|
211
|
+
return tsplus_module_2.map(store.batchSet(items), ret => {
|
|
96
212
|
ret.forEach((_) => set(_.id, _._etag));
|
|
97
213
|
});
|
|
98
214
|
})));
|
|
99
|
-
const saveAll = (a) =>
|
|
215
|
+
const saveAll = (a) => tsplus_module_2.orDie(tsplus_module_7.ext_forEach(tsplus_module_6.ext_itToChunk(a), (_) => encode(_), { concurrency: "inherit", batching: true })).andThen(saveAllE);
|
|
100
216
|
const saveAndPublish = (items, events = []) => {
|
|
101
|
-
const it =
|
|
102
|
-
return
|
|
103
|
-
.andThen(
|
|
217
|
+
const it = tsplus_module_6.ext_itToChunk(items);
|
|
218
|
+
return tsplus_module_2.asUnit(tsplus_module_8.flatMapOption(saveAll(it)
|
|
219
|
+
.andThen(tsplus_module_2.sync(() => tsplus_module_6.CollectionToNonEmptyReadonlyArray(events)))
|
|
104
220
|
// TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
|
|
105
221
|
, pub)
|
|
106
222
|
.andThen(changeFeed
|
|
107
|
-
.publish([
|
|
223
|
+
.publish([tsplus_module_9.toArray(it), "save"])));
|
|
108
224
|
};
|
|
109
225
|
function removeAndPublish(a, events = []) {
|
|
110
|
-
return
|
|
226
|
+
return tsplus_module_2.gen(function* ($) {
|
|
111
227
|
const { get, set } = yield* $(cms);
|
|
112
|
-
const it =
|
|
113
|
-
const items = yield* $(
|
|
228
|
+
const it = tsplus_module_6.ext_itToChunk(a);
|
|
229
|
+
const items = yield* $(tsplus_module_2.orDie(tsplus_module_7.ext_forEach(it, (_) => encode(_), { concurrency: "inherit", batching: true })));
|
|
114
230
|
// TODO: we should have a batchRemove on store so the adapter can actually batch...
|
|
115
231
|
for (const e of items) {
|
|
116
232
|
yield* $(store.remove(mapToPersistenceModel(e, get)));
|
|
117
233
|
set(e.id, undefined);
|
|
118
234
|
}
|
|
119
|
-
yield* $(
|
|
235
|
+
yield* $(tsplus_module_8.flatMapOption(tsplus_module_2.sync(() => tsplus_module_6.CollectionToNonEmptyReadonlyArray(events))
|
|
120
236
|
// TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
|
|
121
237
|
, pub));
|
|
122
|
-
yield* $(changeFeed.publish([
|
|
238
|
+
yield* $(changeFeed.publish([tsplus_module_9.toArray(it), "remove"]));
|
|
123
239
|
});
|
|
124
240
|
}
|
|
125
241
|
const r = {
|
|
@@ -127,13 +243,13 @@ export function makeRepo() {
|
|
|
127
243
|
* @internal
|
|
128
244
|
*/
|
|
129
245
|
utils: {
|
|
130
|
-
parseMany: (items) =>
|
|
246
|
+
parseMany: (items) => tsplus_module_2.flatMap(cms, (cm) => tsplus_module_2.orDie(items
|
|
131
247
|
.forEachEffect((_) => decode(mapReverse(_, cm.set)), { concurrency: "inherit", batching: true }))),
|
|
132
248
|
filter: (args) => store
|
|
133
249
|
.filter(args)
|
|
134
250
|
.tap((items) => args.select
|
|
135
|
-
?
|
|
136
|
-
all: store.all.tap((items) =>
|
|
251
|
+
? tsplus_module_2.unit : tsplus_module_2.map(cms, ({ set }) => items.forEach((_) => set(_.id, _._etag)))),
|
|
252
|
+
all: store.all.tap((items) => tsplus_module_2.map(cms, ({ set }) => items.forEach((_) => set(_.id, _._etag))))
|
|
137
253
|
},
|
|
138
254
|
changeFeed,
|
|
139
255
|
itemType: name,
|
|
@@ -160,7 +276,7 @@ export function makeRepo() {
|
|
|
160
276
|
* @tsplus fluent Repository removeById
|
|
161
277
|
*/
|
|
162
278
|
export function removeById(self, id) {
|
|
163
|
-
return
|
|
279
|
+
return tsplus_module_2.flatMap(tsplus_module_3.get(self, id), (_) => self.removeAndPublish([_]));
|
|
164
280
|
}
|
|
165
281
|
export function makeWhere() {
|
|
166
282
|
const f_ = makeFilters();
|
|
@@ -187,14 +303,14 @@ export function makeStore() {
|
|
|
187
303
|
return (name, schema, mapTo) => {
|
|
188
304
|
function encodeToPM() {
|
|
189
305
|
const getEtag = () => undefined;
|
|
190
|
-
return (t) =>
|
|
306
|
+
return (t) => tsplus_module_2.map(tsplus_module_2.orDie(tsplus_module_10.encode(schema)(t)), (_) => mapToPersistenceModel(_, getEtag));
|
|
191
307
|
}
|
|
192
308
|
function mapToPersistenceModel(e, getEtag) {
|
|
193
309
|
return mapTo(e, getEtag(e.id));
|
|
194
310
|
}
|
|
195
311
|
function makeStore(makeInitial, config) {
|
|
196
|
-
return
|
|
197
|
-
?
|
|
312
|
+
return tsplus_module_2.flatMap(StoreMaker, ({ make }) => tsplus_module_2.map(make(pluralize(name), makeInitial
|
|
313
|
+
? tsplus_module_2.withSpan((tsplus_module_2.flatMap(makeInitial, (_) => _.forEachEffect(encodeToPM()))), "Repository.makeInitial [effect-app/infra]", {
|
|
198
314
|
attributes: { "repository.model_name": name }
|
|
199
315
|
})
|
|
200
316
|
: undefined, {
|
|
@@ -215,27 +331,27 @@ export const RepositoryBaseImpl = () => {
|
|
|
215
331
|
}
|
|
216
332
|
}
|
|
217
333
|
Cls.make = mkRepo.make;
|
|
218
|
-
Cls.makeWith = ((a, b) =>
|
|
334
|
+
Cls.makeWith = ((a, b) => tsplus_module_2.map(mkRepo.make(a), b));
|
|
219
335
|
Cls.where = makeWhere();
|
|
220
336
|
Cls.query = QueryBuilder.make();
|
|
221
337
|
Cls.type = undefined;
|
|
222
|
-
return
|
|
338
|
+
return tsplus_module_13.assignTag()(Cls);
|
|
223
339
|
};
|
|
224
340
|
};
|
|
225
341
|
export const RepositoryDefaultImpl = () => {
|
|
226
342
|
return () => (itemType, schema, jitM) => {
|
|
227
343
|
const mkRepo = makeRepo()(itemType, schema, jitM ? (pm) => jitM(pm) : (pm) => pm, (e, _etag) => ({ ...e, _etag }));
|
|
228
|
-
class Cls extends
|
|
344
|
+
class Cls extends RepositoryBaseC3 {
|
|
229
345
|
constructor(impl) {
|
|
230
346
|
super(itemType, impl);
|
|
231
347
|
}
|
|
232
348
|
}
|
|
233
349
|
Cls.make = mkRepo.make;
|
|
234
|
-
Cls.makeWith = ((a, b) =>
|
|
350
|
+
Cls.makeWith = ((a, b) => tsplus_module_2.map(mkRepo.make(a), b));
|
|
235
351
|
Cls.where = makeWhere();
|
|
236
352
|
Cls.query = QueryBuilder.make();
|
|
237
353
|
Cls.type = undefined;
|
|
238
|
-
return
|
|
354
|
+
return tsplus_module_13.assignTag()(Cls); // impl is missing, but its marked protected
|
|
239
355
|
};
|
|
240
356
|
};
|
|
241
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcG9zaXRvcnlCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFJQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBS3ZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFdkMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBRXpEOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixlQUFlO0NBd0JwQztBQUVELE1BQU0sT0FBZ0IsZ0JBS3BCLFNBQVEsZUFBcUM7SUFDN0MsWUFDa0IsUUFBa0I7UUFFbEMsS0FBSyxFQUFFLENBQUE7UUFGUyxhQUFRLEdBQVIsUUFBUSxDQUFVO0lBR3BDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxnQkFLWCxTQUFRLGdCQUFzQztJQUM5QyxZQUNFLFFBQWtCLEVBQ0MsSUFBc0M7UUFFekQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBRkksU0FBSSxHQUFKLElBQUksQ0FBa0M7UUFJM0QsbURBQW1EO1FBQzFDLG1CQUFjLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUE7UUFDekMscUJBQWdCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQTtRQUM3QyxTQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDckIsUUFBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFBO1FBQ25CLFVBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQTtRQUN2QixlQUFVLEdBQUcsSUFBSSxDQUFD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
|
|
357
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcG9zaXRvcnlCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQSx1REFBdUQ7QUFDdkQsaURBQWlEO0FBQ2pELG9FQUFvRTtBQUNwRSxPQUFPLEVBQ0wsVUFBVSxFQUNWLG1CQUFtQixFQUNuQixHQUFHLEVBQ0gseUJBQXlCLEVBQ3pCLFdBQVcsRUFDWCxjQUFjLEVBRWQsb0JBQW9CLEVBQ3BCLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsYUFBYSxFQUNkLE1BQU0saUJBQWlCLENBQUE7QUFDeEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUt2QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDdEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRXZDLE9BQU8sRUFBMEIsYUFBYSxFQUF1QyxNQUFNLGNBQWMsQ0FBQTtBQUN6RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFFekQ7O0dBRUc7QUFDSCxNQUFNLE9BQWdCLGVBQWU7Q0F3QnBDO0FBRUQsTUFBTSxPQUFnQixnQkFLcEIsU0FBUSxlQUFxQztJQUM3QyxZQUNrQixRQUFrQjtRQUVsQyxLQUFLLEVBQUUsQ0FBQTtRQUZTLGFBQVEsR0FBUixRQUFRLENBQVU7SUFHcEMsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLGdCQUtYLFNBQVEsZ0JBQXNDO0lBQzlDLFlBQ0UsUUFBa0IsRUFDQyxJQUFzQztRQUV6RCxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7UUFGSSxTQUFJLEdBQUosSUFBSSxDQUFrQztRQUkzRCxtREFBbUQ7UUFDMUMsbUJBQWMsR0FBRyxJQUFJLENBQUMs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
|
|
@@ -2,12 +2,11 @@ var _a;
|
|
|
2
2
|
import * as tsplus_module_1 from "@effect-app/prelude/service";
|
|
3
3
|
import * as tsplus_module_2 from "effect/Effect";
|
|
4
4
|
import * as tsplus_module_3 from "effect/Option";
|
|
5
|
-
import * as tsplus_module_4 from "
|
|
6
|
-
import * as tsplus_module_5 from "effect/
|
|
7
|
-
import * as tsplus_module_6 from "effect/
|
|
8
|
-
import * as tsplus_module_7 from "@effect-app/
|
|
9
|
-
import * as tsplus_module_8 from "
|
|
10
|
-
import * as tsplus_module_9 from "effect/Layer";
|
|
5
|
+
import * as tsplus_module_4 from "effect/Context";
|
|
6
|
+
import * as tsplus_module_5 from "effect/FiberRef";
|
|
7
|
+
import * as tsplus_module_6 from "@effect-app/infra/services/Store/Memory";
|
|
8
|
+
import * as tsplus_module_7 from "@effect-app/prelude/schema";
|
|
9
|
+
import * as tsplus_module_8 from "effect/Layer";
|
|
11
10
|
import { RequestId } from "@effect-app/prelude/ids";
|
|
12
11
|
import { RequestContext } from "../RequestContext.js";
|
|
13
12
|
/**
|
|
@@ -19,20 +18,20 @@ export class RequestContextContainer extends tsplus_module_1.TagClass() {
|
|
|
19
18
|
return tsplus_module_2.flatMap(_a, (_) => _.requestContext);
|
|
20
19
|
}
|
|
21
20
|
static get getOption() {
|
|
22
|
-
return tsplus_module_2.flatMap(tsplus_module_2.contextWith((_) =>
|
|
21
|
+
return tsplus_module_2.flatMap(tsplus_module_2.contextWith((_) => tsplus_module_4.getOption(_, _a)), (requestContext) => tsplus_module_3.isSome(requestContext)
|
|
23
22
|
? tsplus_module_2.map(requestContext.value.requestContext, tsplus_module_3.some)
|
|
24
|
-
: tsplus_module_2.sync(() =>
|
|
23
|
+
: tsplus_module_2.sync(() => tsplus_module_3.none()));
|
|
25
24
|
}
|
|
26
25
|
}
|
|
27
26
|
_a = RequestContextContainer;
|
|
28
|
-
RequestContextContainer.live =
|
|
29
|
-
.andThen((
|
|
30
|
-
requestContext:
|
|
31
|
-
update: (f) =>
|
|
32
|
-
start: (a) =>
|
|
27
|
+
RequestContextContainer.live = tsplus_module_8.scoped(_a)(tsplus_module_2.map(tsplus_module_2.sync(() => new RequestContext({ name: tsplus_module_7.NonEmptyString255("_root_"), rootId: RequestId("_root_"), locale: "en" }))
|
|
28
|
+
.andThen((tsplus_module_5.make)), (ref) => ({
|
|
29
|
+
requestContext: tsplus_module_5.get(ref),
|
|
30
|
+
update: (f) => tsplus_module_5.getAndUpdate(ref, f).tap((rc) => tsplus_module_2.annotateCurrentSpan(spanAttributes_1(rc))),
|
|
31
|
+
start: (a) => tsplus_module_5.set(ref, a).andThen(tsplus_module_6.restoreFromRequestContext(a))
|
|
33
32
|
})));
|
|
34
33
|
/** @tsplus static RequestContext.Ops Tag */
|
|
35
|
-
export const RCTag =
|
|
34
|
+
export const RCTag = tsplus_module_4.GenericTag("@services/RCTag");
|
|
36
35
|
/**
|
|
37
36
|
* @tsplus getter RequestContext spanAttributes
|
|
38
37
|
*/
|
|
@@ -54,4 +53,4 @@ const spanAttributes_1 = (ctx) => ({
|
|
|
54
53
|
: {})
|
|
55
54
|
});
|
|
56
55
|
export const spanAttributes = spanAttributes_1;
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHRDb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcXVlc3RDb250ZXh0Q29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFckQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGdCQUFBLFFBQVEsRUFJakQ7SUFDRixNQUFNLEtBQUssR0FBRztRQUNaLE9BQU8sd0JBQUEsRUFBdUIsRUFBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBQ2pFLENBQUM7SUFDRCxNQUFNLEtBQUssU0FBUztRQUNsQixPQUFPLHdCQUFBLDRCQUNRLENBQUMsQ0FBaUIsRUFBRSxFQUFFLENBQUMsMEJBQWtCLENBQUMsRUFBRSxFQUF1QixDQUFDLENBQUMsRUFDekUsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUMxQix1QkFBQSxjQUFjLENBQVM7WUFDckIsQ0FBQyxDQUFDLG9CQUFBLGNBQWMsQ0FBQyxLQUFLLENBQUMsY0FBYyx1QkFBaUI7WUFDdEQsQ0FBQyxDQUFDLHFCQUFZLEdBQUcsRUFBRSxDQUFDLHNCQUFhLENBQUMsQ0FDckMsQ0FBQTtJQUNMLENBQUM7OztBQUNlLDRCQUFJLEdBQUcsdUJBU04sRUFBSSxFQVRFLG9CQUFBLHFCQUNmLEdBQUcsRUFBRSxDQUFDLElBQUksY0FBYyxDQUFDLEVBQUUsSUFBSSxFQUFFLGdCQUFBLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7S0FDaEgsT0FBTyxDQUFDLENBQUEsb0JBQTZCLENBQUEsQ0FBQyxFQUNsQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNiLGNBQWMsc0JBQUUsR0FBRyxDQUFJO0lBQ3ZCLE1BQU0sRUFBRSxDQUFDLENBQXdDLEVBQUUsRUFBRSxDQUNuRCw2QkFBQSxHQUFHLEVBQWMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxxREFBMkIsRUFBRSxFQUFnQixDQUFDO0lBQ2hGLEtBQUssRUFBRSxDQUFDLENBQWlCLEVBQUUsRUFBRSxDQUFDLG9CQUFBLEdBQUcsRUFBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLDJDQUFDLENBQUMsRUFBZ0I7Q0FDbkUsQ0FBQyxDQUFDLENBQ2lCLEFBVEYsQ0FTRTtBQUd4Qiw0Q0FBNEM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLGdCQUFBLFVBQVUsQ0FBaUIsaUJBQWlCLENBQUMsQ0FBQTtBQUVsRTs7R0FFRztBQUNJLE1BQU0sbUJBQWlCLENBQUMsR0FBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxZQUFZLEVBQUUsR0FBRyxDQUFDLEVBQUU7SUFDcEIsY0FBYyxFQUFFLEdBQUcsQ0FBQyxJQUFJO0lBQ3hCLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxNQUFNO0lBQzVCLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxTQUFTO0lBQ2xDLEdBQUcsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLEdBQUc7UUFDdEIsQ0FBQyxDQUFDO1lBQ0Esa0JBQWtCLEVBQUUsR0FBRztpQkFDcEIsV0FBVztpQkFDWCxHQUFHO1lBQ04sb0JBQW9CLEVBQUUsT0FBTyxJQUFJLEdBQUc7aUJBQy9CLFdBQVc7Z0JBQ2QsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsS0FBSztnQkFDdkIsQ0FBQyxDQUFDLFNBQVM7U0FDZDtRQUNELENBQUMsQ0FBQyxFQUFFLENBQUM7Q0FDUixDQUFDLENBQUE7YUFoQlcsY0FBYyJ9
|
|
@@ -2,11 +2,10 @@ var _a;
|
|
|
2
2
|
import * as tsplus_module_1 from "@effect-app/prelude/service";
|
|
3
3
|
import * as tsplus_module_2 from "effect/Effect";
|
|
4
4
|
import * as tsplus_module_3 from "effect/Option";
|
|
5
|
-
import * as tsplus_module_4 from "
|
|
6
|
-
import * as tsplus_module_5 from "effect/
|
|
7
|
-
import * as tsplus_module_6 from "effect/
|
|
8
|
-
import * as tsplus_module_7 from "
|
|
9
|
-
import * as tsplus_module_8 from "effect/Layer";
|
|
5
|
+
import * as tsplus_module_4 from "effect/Context";
|
|
6
|
+
import * as tsplus_module_5 from "effect/FiberRef";
|
|
7
|
+
import * as tsplus_module_6 from "@effect-app/infra/services/Store/service";
|
|
8
|
+
import * as tsplus_module_7 from "effect/Layer";
|
|
10
9
|
import { makeContextMap } from "./service.js";
|
|
11
10
|
// TODO: we have to create a new contextmap on every request.
|
|
12
11
|
// we want to share one map during startup
|
|
@@ -21,14 +20,14 @@ export class ContextMapContainer extends tsplus_module_1.TagClass() {
|
|
|
21
20
|
return tsplus_module_2.flatMap(_a, (_) => _.get);
|
|
22
21
|
}
|
|
23
22
|
static get getOption() {
|
|
24
|
-
return tsplus_module_2.flatMap(tsplus_module_2.contextWith((_) =>
|
|
23
|
+
return tsplus_module_2.flatMap(tsplus_module_2.contextWith((_) => tsplus_module_4.getOption(_, _a)), (ctx) => tsplus_module_3.isSome(ctx)
|
|
25
24
|
? tsplus_module_2.map(ctx.value.get, tsplus_module_3.some)
|
|
26
|
-
: tsplus_module_2.sync(() =>
|
|
25
|
+
: tsplus_module_2.sync(() => tsplus_module_3.none()));
|
|
27
26
|
}
|
|
28
27
|
}
|
|
29
28
|
_a = ContextMapContainer;
|
|
30
|
-
ContextMapContainer.live =
|
|
31
|
-
.andThen((
|
|
29
|
+
ContextMapContainer.live = tsplus_module_7.scoped(_a)(tsplus_module_2.map(tsplus_module_2.sync(() => makeContextMap())
|
|
30
|
+
.andThen((tsplus_module_5.make)), (ref) => new _a({ get: tsplus_module_5.get(ref), start: tsplus_module_2.flatMap(tsplus_module_6.makeMap, (_) => tsplus_module_5.set(ref, _)) })));
|
|
32
31
|
/** @tsplus static ContextMap.Ops Tag */
|
|
33
|
-
export const RCTag =
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
export const RCTag = tsplus_module_4.GenericTag("@services/RCTag");
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dE1hcENvbnRhaW5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvQ29udGV4dE1hcENvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLE9BQU8sRUFBYyxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFekQsNkRBQTZEO0FBQzdELDBDQUEwQztBQUMxQyx5RUFBeUU7QUFDekUsNEdBQTRHO0FBQzVHLHlGQUF5RjtBQUV6Rjs7R0FFRztBQUNILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxnQkFBQSxRQUFRLEVBRzdDO0lBQ0YsTUFBTSxLQUFLLEdBQUc7UUFDWixPQUFPLHdCQUFBLEVBQW1CLEVBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNsRCxDQUFDO0lBQ0QsTUFBTSxLQUFLLFNBQVM7UUFDbEIsT0FBTyx3QkFBQSw0QkFDUSxDQUFDLENBQWlCLEVBQUUsRUFBRSxDQUFDLDBCQUFrQixDQUFDLEVBQUUsRUFBbUIsQ0FBQyxDQUFDLEVBQ3JFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDZix1QkFBQSxHQUFHLENBQVM7WUFDVixDQUFDLENBQUMsb0JBQUEsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLHVCQUFpQjtZQUNoQyxDQUFDLENBQUMscUJBQVksR0FBRyxFQUFFLENBQUMsc0JBQWEsQ0FBQyxDQUNyQyxDQUFBO0lBQ0wsQ0FBQzs7O0FBRWUsd0JBQUksR0FBRyx1QkFJTixFQUFJLEVBSkUsb0JBQUEscUJBQ2YsR0FBRyxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7S0FDNUIsT0FBTyxDQUFDLENBQUEsb0JBQXlCLENBQUEsQ0FBQyxFQUM5QixDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFtQixDQUFDLEVBQUUsR0FBRyxzQkFBRSxHQUFHLENBQUksRUFBRSxLQUFLLEVBQUUsaURBQXdCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxvQkFBQSxHQUFHLEVBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDdkYsQUFKRixDQUlFO0FBR3hCLHdDQUF3QztBQUN4QyxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUcsZ0JBQUEsVUFBVSxDQUFhLGlCQUFpQixDQUFDLENBQUEifQ==
|
|
@@ -65,7 +65,7 @@ export const codeFilterStatement = (p, x) => {
|
|
|
65
65
|
// return codeFilterStatement(p, x)
|
|
66
66
|
// })
|
|
67
67
|
// ? Option.some(x as unknown as NE)
|
|
68
|
-
// : Option.none
|
|
68
|
+
// : Option.none()
|
|
69
69
|
// export const and = <E extends { id: string }, NE extends E>(filters: readonly FilterResult[], x: E): Option<NE> =>
|
|
70
70
|
// filters
|
|
71
71
|
// .every((p) => {
|
|
@@ -81,7 +81,7 @@ export const codeFilterStatement = (p, x) => {
|
|
|
81
81
|
// return codeFilterStatement(p, x)
|
|
82
82
|
// })
|
|
83
83
|
// ? Option.some(x as unknown as NE)
|
|
84
|
-
// : Option.none
|
|
84
|
+
// : Option.none()
|
|
85
85
|
// // TODO: how to handle and/or outside scopes.
|
|
86
86
|
// // TODO: the scopes are not about and every, or some.. they're about logical grouping. It's a logical group + and/or etc.
|
|
87
87
|
// // TODO: how to convert this to code? would we compile an actual function body instead?!
|
|
@@ -137,4 +137,4 @@ export const codeFilter3_ = (state, sut) => {
|
|
|
137
137
|
}
|
|
138
138
|
return eval(s);
|
|
139
139
|
};
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZUZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvY29kZUZpbHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBRWxFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUV0RyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFJLENBQVUsRUFBRSxDQUFJLEVBQUUsRUFBRTtJQUN6RCxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QixRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNiLEtBQUssSUFBSTtZQUNQLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDNUIsS0FBSyxPQUFPO1lBQ1YsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzdCLEtBQUssSUFBSTtZQUNQLE9BQU8sU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDOUIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3ZDLEtBQUssSUFBSTtZQUNQLE9BQU8sV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDaEMsS0FBSyxLQUFLO1lBQ1IsT0FBTyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3pDLEtBQUssVUFBVTtZQUNiLE9BQVEsQ0FB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
|