@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
|
@@ -3,28 +3,37 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.RepositoryDefaultImpl = exports.RepositoryBaseImpl = exports.RepositoryBaseC2 = exports.RepositoryBaseC1 = exports.RepositoryBaseC = void 0;
|
|
6
|
+
exports.RepositoryDefaultImpl = exports.RepositoryBaseImpl = exports.RepositoryBaseC3 = exports.RepositoryBaseC2 = exports.RepositoryBaseC1 = exports.RepositoryBaseC = void 0;
|
|
7
7
|
exports.makeRepo = makeRepo;
|
|
8
8
|
exports.makeStore = makeStore;
|
|
9
9
|
exports.makeWhere = makeWhere;
|
|
10
10
|
exports.removeById = removeById;
|
|
11
|
-
var tsplus_module_1 = _interopRequireWildcard(require("effect/
|
|
12
|
-
var tsplus_module_2 = _interopRequireWildcard(require("
|
|
13
|
-
var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/
|
|
14
|
-
var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/
|
|
15
|
-
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/
|
|
16
|
-
var tsplus_module_6 = _interopRequireWildcard(require("@effect/
|
|
17
|
-
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/core/
|
|
18
|
-
var tsplus_module_8 = _interopRequireWildcard(require("effect/
|
|
19
|
-
var tsplus_module_9 = _interopRequireWildcard(require("@effect-app/
|
|
20
|
-
var tsplus_module_10 = _interopRequireWildcard(require("@effect
|
|
11
|
+
var tsplus_module_1 = _interopRequireWildcard(require("@effect-app/prelude/_ext/misc"));
|
|
12
|
+
var tsplus_module_2 = _interopRequireWildcard(require("effect/Effect"));
|
|
13
|
+
var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/infra/services/Repository/ext"));
|
|
14
|
+
var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/prelude/schema"));
|
|
15
|
+
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/prelude/Pure"));
|
|
16
|
+
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/core/Array"));
|
|
17
|
+
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/core/_ext/Iterable"));
|
|
18
|
+
var tsplus_module_8 = _interopRequireWildcard(require("@effect-app/core/Effect"));
|
|
19
|
+
var tsplus_module_9 = _interopRequireWildcard(require("@effect-app/core/Chunk"));
|
|
20
|
+
var tsplus_module_10 = _interopRequireWildcard(require("@effect/schema/Schema"));
|
|
21
|
+
var tsplus_module_11 = _interopRequireWildcard(require("@effect-app/core/Function"));
|
|
22
|
+
var tsplus_module_12 = _interopRequireWildcard(require("effect/PubSub"));
|
|
23
|
+
var tsplus_module_13 = _interopRequireWildcard(require("@effect-app/prelude/service"));
|
|
24
|
+
var _Repository = require("./Repository.cjs");
|
|
21
25
|
var _Store = require("./Store.cjs");
|
|
22
26
|
var _filter = require("@effect-app/infra/filter");
|
|
23
27
|
var _prelude = require("@effect-app/prelude");
|
|
28
|
+
var _errors = require("../errors.cjs");
|
|
24
29
|
var _ContextMapContainer = require("./Store/ContextMapContainer.cjs");
|
|
25
30
|
var _query = require("./Store/filterApi/query.cjs");
|
|
26
31
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
27
32
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
33
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
34
|
+
/* eslint-disable @typescript-eslint/ban-types */
|
|
35
|
+
// import type { ParserEnv } from "@effect-app/schema/custom/Parser"
|
|
36
|
+
|
|
28
37
|
/**
|
|
29
38
|
* @tsplus type Repository
|
|
30
39
|
*/
|
|
@@ -50,10 +59,126 @@ class RepositoryBaseC2 extends RepositoryBaseC1 {
|
|
|
50
59
|
this.changeFeed = this.impl.changeFeed;
|
|
51
60
|
}
|
|
52
61
|
}
|
|
62
|
+
exports.RepositoryBaseC2 = RepositoryBaseC2;
|
|
63
|
+
class RepositoryBaseC3 extends RepositoryBaseC2 {
|
|
64
|
+
constructor() {
|
|
65
|
+
super(...arguments);
|
|
66
|
+
this.log = evt => _Repository.AnyPureDSL.log(evt);
|
|
67
|
+
this.save = (...items) => this.saveAndPublish(items);
|
|
68
|
+
this.saveWithEvents = events => (...items) => this.saveAndPublish(items, events);
|
|
69
|
+
}
|
|
70
|
+
get(id) {
|
|
71
|
+
return tsplus_module_2.flatMap(this.find(id), _ => tsplus_module_1.encaseMaybeInEffect_(_, () => new _errors.NotFoundError({
|
|
72
|
+
type: this.itemType,
|
|
73
|
+
id
|
|
74
|
+
})));
|
|
75
|
+
}
|
|
76
|
+
projectEffect(map) {
|
|
77
|
+
// TODO: a projection that gets sent to the db instead.
|
|
78
|
+
return tsplus_module_2.flatMap(map, f => tsplus_module_2.map(this.utils.filter(f), _ => f.collect ? _.filterMap(f.collect) : _));
|
|
79
|
+
}
|
|
80
|
+
project(map) {
|
|
81
|
+
return tsplus_module_3.projectEffect(this, tsplus_module_2.sync(() => map));
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* TODO: count inside the db.
|
|
85
|
+
* @tsplus fluent Repository project
|
|
86
|
+
*/
|
|
87
|
+
count(filter) {
|
|
88
|
+
return tsplus_module_2.map(tsplus_module_3.projectEffect(this, tsplus_module_2.sync(() => ({
|
|
89
|
+
filter
|
|
90
|
+
}))), _ => tsplus_module_4.NonNegativeInt(_.length));
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* @tsplus fluent Repository queryEffect
|
|
94
|
+
*/
|
|
95
|
+
queryEffect(
|
|
96
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
97
|
+
map) {
|
|
98
|
+
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) : _));
|
|
99
|
+
}
|
|
100
|
+
queryOneEffect(
|
|
101
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
102
|
+
map) {
|
|
103
|
+
return tsplus_module_2.flatMap(map, f => tsplus_module_2.flatMap(tsplus_module_2.flatMap(f.filter ? this.utils.filter({
|
|
104
|
+
filter: f.filter,
|
|
105
|
+
limit: 1
|
|
106
|
+
}) : this.utils.all, _ => this.utils.parseMany(_)), _ => tsplus_module_2.map(tsplus_module_1.encaseMaybeInEffect_((f.collect ? _.filterMap(f.collect) : _).toNonEmpty, () => new _errors.NotFoundError({
|
|
107
|
+
type: this.itemType,
|
|
108
|
+
id: f.filter
|
|
109
|
+
})), _ => _[0])));
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* @tsplus fluent Repository query
|
|
113
|
+
*/
|
|
114
|
+
query(
|
|
115
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
116
|
+
map) {
|
|
117
|
+
return tsplus_module_3.queryEffect(this, tsplus_module_2.sync(() => map));
|
|
118
|
+
}
|
|
119
|
+
queryOne(map) {
|
|
120
|
+
return tsplus_module_3.queryOneEffect(this, tsplus_module_2.sync(() => map));
|
|
121
|
+
}
|
|
122
|
+
queryAndSaveOnePureEffect(map) {
|
|
123
|
+
return pure => tsplus_module_2.flatMap((0, _Repository.queryOneEffect)(this, map), _ => (0, _Repository.saveWithPure_)(this, _, pure));
|
|
124
|
+
}
|
|
125
|
+
queryAndSaveOnePure(map) {
|
|
126
|
+
return (0, _Repository.queryAndSaveOnePureEffect)(this, tsplus_module_2.sync(() => map));
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* @tsplus fluent Repository queryAndSavePureEffect
|
|
130
|
+
*/
|
|
131
|
+
queryAndSavePureEffect(map) {
|
|
132
|
+
return pure => tsplus_module_2.flatMap((0, _Repository.queryEffect)(this, map), _ => tsplus_module_3.saveManyWithPure_(this, _, pure));
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* @tsplus fluent Repository queryAndSavePure
|
|
136
|
+
*/
|
|
137
|
+
queryAndSavePure(map) {
|
|
138
|
+
return tsplus_module_3.queryAndSavePureEffect(this, tsplus_module_2.sync(() => map));
|
|
139
|
+
}
|
|
140
|
+
saveManyWithPure() {
|
|
141
|
+
return pure => items => (0, _Repository.saveManyWithPure_)(this, items, pure);
|
|
142
|
+
}
|
|
143
|
+
byIdAndSaveWithPure(id) {
|
|
144
|
+
return pure => tsplus_module_2.flatMap((0, _Repository.get)(this, id), item => (0, _Repository.saveWithPure_)(this, item, pure));
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
|
|
148
|
+
*/
|
|
149
|
+
handleByIdAndSaveWithPure() {
|
|
150
|
+
return pure => (req, ctx) => (0, _Repository.byIdAndSaveWithPure)(this, req.id)(pure(req, ctx));
|
|
151
|
+
}
|
|
152
|
+
saveManyWithPure_(items, pure) {
|
|
153
|
+
return (0, _Repository.saveAllWithEffectInt)(this, tsplus_module_5.runTerm(pure, [...items]));
|
|
154
|
+
}
|
|
155
|
+
saveWithPure_(item, pure) {
|
|
156
|
+
return (0, _Repository.saveAllWithEffectInt)(this, tsplus_module_2.map(tsplus_module_5.runTerm(pure, item), ([item, events, a]) => [[item], events, a]));
|
|
157
|
+
}
|
|
158
|
+
saveAllWithEffectInt(gen) {
|
|
159
|
+
return tsplus_module_2.flatMap(gen, ([items, events, a]) => tsplus_module_2.map(this.saveAndPublish(items, events), () => a));
|
|
160
|
+
}
|
|
161
|
+
queryAndSavePureEffectBatched(
|
|
162
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
163
|
+
map, batchSize = 100) {
|
|
164
|
+
return pure => tsplus_module_2.flatMap((0, _Repository.queryEffect)(this, map), _ => tsplus_module_3.saveManyWithPureBatched_(this, _, pure, batchSize));
|
|
165
|
+
}
|
|
166
|
+
queryAndSavePureBatched(
|
|
167
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
168
|
+
map, batchSize = 100) {
|
|
169
|
+
return tsplus_module_3.queryAndSavePureEffectBatched(this, tsplus_module_2.sync(() => map), batchSize);
|
|
170
|
+
}
|
|
171
|
+
saveManyWithPureBatched(batchSize = 100) {
|
|
172
|
+
return pure => items => (0, _Repository.saveManyWithPureBatched_)(this, items, pure, batchSize);
|
|
173
|
+
}
|
|
174
|
+
saveManyWithPureBatched_(items, pure, batchSize = 100) {
|
|
175
|
+
return tsplus_module_7.ext_forEach(tsplus_module_6.chunk_(items, batchSize), batch => (0, _Repository.saveAllWithEffectInt)(this, tsplus_module_5.runTerm(pure, batch)));
|
|
176
|
+
}
|
|
177
|
+
}
|
|
53
178
|
/**
|
|
54
179
|
* A base implementation to create a repository.
|
|
55
180
|
*/
|
|
56
|
-
exports.
|
|
181
|
+
exports.RepositoryBaseC3 = RepositoryBaseC3;
|
|
57
182
|
function makeRepo() {
|
|
58
183
|
return (name, schema, mapFrom, mapTo) => {
|
|
59
184
|
const where = makeWhere();
|
|
@@ -69,23 +194,23 @@ function makeRepo() {
|
|
|
69
194
|
}
|
|
70
195
|
const mkStore = makeStore()(name, schema, mapTo);
|
|
71
196
|
function make(args) {
|
|
72
|
-
return
|
|
73
|
-
const encode =
|
|
74
|
-
const decode =
|
|
75
|
-
return
|
|
197
|
+
return tsplus_module_2.withLogSpan(tsplus_module_2.flatMap(tsplus_module_2.context(), rctx => {
|
|
198
|
+
const encode = tsplus_module_11.flow(tsplus_module_10.encode(schema), tsplus_module_2.provide(rctx));
|
|
199
|
+
const decode = tsplus_module_11.flow(tsplus_module_10.decode(schema), tsplus_module_2.provide(rctx));
|
|
200
|
+
return tsplus_module_2.flatMap(mkStore(args.makeInitial, args.config), store => tsplus_module_2.flatMap(_ContextMapContainer.ContextMapContainer, ({
|
|
76
201
|
get
|
|
77
202
|
}) => {
|
|
78
203
|
const cms = get.andThen(_ => ({
|
|
79
204
|
get: id => _.get(`${name}.${id}`),
|
|
80
205
|
set: (id, etag) => _.set(`${name}.${id}`, etag)
|
|
81
206
|
}));
|
|
82
|
-
return
|
|
83
|
-
const pub = "publishEvents" in args ?
|
|
84
|
-
return
|
|
85
|
-
const allE =
|
|
207
|
+
return tsplus_module_2.flatMap(tsplus_module_2.context(), pubCfg => {
|
|
208
|
+
const pub = "publishEvents" in args ? tsplus_module_11.flow(args.publishEvents, _ => tsplus_module_2.provide(_, pubCfg)) : () => tsplus_module_2.unit;
|
|
209
|
+
return tsplus_module_2.map(tsplus_module_12.unbounded(), changeFeed => {
|
|
210
|
+
const allE = tsplus_module_2.flatMap(store.all, items => tsplus_module_2.map(cms, ({
|
|
86
211
|
set
|
|
87
212
|
}) => items.map(_ => mapReverse(_, set))));
|
|
88
|
-
const all =
|
|
213
|
+
const all = tsplus_module_2.flatMap(allE, _ => tsplus_module_2.orDie(_.forEachEffect(_ => decode(_), {
|
|
89
214
|
concurrency: "inherit",
|
|
90
215
|
batching: true
|
|
91
216
|
})));
|
|
@@ -93,44 +218,44 @@ function makeRepo() {
|
|
|
93
218
|
const i = ("struct" in structSchema ? structSchema["struct"] : schema).pipe(_ => _.ast._tag === "Union"
|
|
94
219
|
// we need to get the TypeLiteral, incase of class it's behind a transform...
|
|
95
220
|
? _prelude.S.union(..._.ast.types.map(_ => _prelude.S.make(_._tag === "Transform" ? _.from : _).pipe(_prelude.S.pick("id")))) : _.ast._tag === "Transform" ? _prelude.S.make(_.ast.from).pipe(_prelude.S.pick("id")) : _.pipe(_prelude.S.pick("id")));
|
|
96
|
-
const encodeId =
|
|
221
|
+
const encodeId = tsplus_module_11.flow(tsplus_module_10.encode(i), tsplus_module_2.provide(rctx));
|
|
97
222
|
function findE(_id) {
|
|
98
|
-
return
|
|
223
|
+
return tsplus_module_2.flatMap(tsplus_module_2.orDie(tsplus_module_2.map(encodeId({
|
|
99
224
|
id: _id
|
|
100
|
-
}), _ => _.id)).andThen(id => store.find(id)), items =>
|
|
225
|
+
}), _ => _.id)).andThen(id => store.find(id)), items => tsplus_module_2.map(cms, ({
|
|
101
226
|
set
|
|
102
227
|
}) => items.map(_ => mapReverse(_, set))));
|
|
103
228
|
}
|
|
104
229
|
function find(id) {
|
|
105
|
-
return
|
|
230
|
+
return tsplus_module_8.flatMapOption(findE(id), _ => tsplus_module_2.orDie(decode(_)));
|
|
106
231
|
}
|
|
107
|
-
const saveAllE = a =>
|
|
232
|
+
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, ({
|
|
108
233
|
get,
|
|
109
234
|
set
|
|
110
235
|
}) => {
|
|
111
236
|
const items = a.map(_ => mapToPersistenceModel(_, get));
|
|
112
|
-
return
|
|
237
|
+
return tsplus_module_2.map(store.batchSet(items), ret => {
|
|
113
238
|
ret.forEach(_ => set(_.id, _._etag));
|
|
114
239
|
});
|
|
115
240
|
})));
|
|
116
|
-
const saveAll = a =>
|
|
241
|
+
const saveAll = a => tsplus_module_2.orDie(tsplus_module_7.ext_forEach(tsplus_module_6.ext_itToChunk(a), _ => encode(_), {
|
|
117
242
|
concurrency: "inherit",
|
|
118
243
|
batching: true
|
|
119
244
|
})).andThen(saveAllE);
|
|
120
245
|
const saveAndPublish = (items, events = []) => {
|
|
121
|
-
const it =
|
|
122
|
-
return
|
|
246
|
+
const it = tsplus_module_6.ext_itToChunk(items);
|
|
247
|
+
return tsplus_module_2.asUnit(tsplus_module_8.flatMapOption(saveAll(it).andThen(tsplus_module_2.sync(() => tsplus_module_6.CollectionToNonEmptyReadonlyArray(events)))
|
|
123
248
|
// TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
|
|
124
|
-
, pub).andThen(changeFeed.publish([
|
|
249
|
+
, pub).andThen(changeFeed.publish([tsplus_module_9.toArray(it), "save"])));
|
|
125
250
|
};
|
|
126
251
|
function removeAndPublish(a, events = []) {
|
|
127
|
-
return
|
|
252
|
+
return tsplus_module_2.gen(function* ($) {
|
|
128
253
|
const {
|
|
129
254
|
get,
|
|
130
255
|
set
|
|
131
256
|
} = yield* $(cms);
|
|
132
|
-
const it =
|
|
133
|
-
const items = yield* $(
|
|
257
|
+
const it = tsplus_module_6.ext_itToChunk(a);
|
|
258
|
+
const items = yield* $(tsplus_module_2.orDie(tsplus_module_7.ext_forEach(it, _ => encode(_), {
|
|
134
259
|
concurrency: "inherit",
|
|
135
260
|
batching: true
|
|
136
261
|
})));
|
|
@@ -139,10 +264,10 @@ function makeRepo() {
|
|
|
139
264
|
yield* $(store.remove(mapToPersistenceModel(e, get)));
|
|
140
265
|
set(e.id, undefined);
|
|
141
266
|
}
|
|
142
|
-
yield* $(
|
|
267
|
+
yield* $(tsplus_module_8.flatMapOption(tsplus_module_2.sync(() => tsplus_module_6.CollectionToNonEmptyReadonlyArray(events))
|
|
143
268
|
// TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
|
|
144
269
|
, pub));
|
|
145
|
-
yield* $(changeFeed.publish([
|
|
270
|
+
yield* $(changeFeed.publish([tsplus_module_9.toArray(it), "remove"]));
|
|
146
271
|
});
|
|
147
272
|
}
|
|
148
273
|
const r = {
|
|
@@ -150,14 +275,14 @@ function makeRepo() {
|
|
|
150
275
|
* @internal
|
|
151
276
|
*/
|
|
152
277
|
utils: {
|
|
153
|
-
parseMany: items =>
|
|
278
|
+
parseMany: items => tsplus_module_2.flatMap(cms, cm => tsplus_module_2.orDie(items.forEachEffect(_ => decode(mapReverse(_, cm.set)), {
|
|
154
279
|
concurrency: "inherit",
|
|
155
280
|
batching: true
|
|
156
281
|
}))),
|
|
157
|
-
filter: args => store.filter(args).tap(items => args.select ?
|
|
282
|
+
filter: args => store.filter(args).tap(items => args.select ? tsplus_module_2.unit : tsplus_module_2.map(cms, ({
|
|
158
283
|
set
|
|
159
284
|
}) => items.forEach(_ => set(_.id, _._etag)))),
|
|
160
|
-
all: store.all.tap(items =>
|
|
285
|
+
all: store.all.tap(items => tsplus_module_2.map(cms, ({
|
|
161
286
|
set
|
|
162
287
|
}) => items.forEach(_ => set(_.id, _._etag))))
|
|
163
288
|
},
|
|
@@ -186,7 +311,7 @@ function makeRepo() {
|
|
|
186
311
|
* @tsplus fluent Repository removeById
|
|
187
312
|
*/
|
|
188
313
|
function removeById(self, id) {
|
|
189
|
-
return
|
|
314
|
+
return tsplus_module_2.flatMap(tsplus_module_3.get(self, id), _ => self.removeAndPublish([_]));
|
|
190
315
|
}
|
|
191
316
|
function makeWhere() {
|
|
192
317
|
const f_ = (0, _filter.makeFilters)();
|
|
@@ -209,15 +334,15 @@ function makeStore() {
|
|
|
209
334
|
return (name, schema, mapTo) => {
|
|
210
335
|
function encodeToPM() {
|
|
211
336
|
const getEtag = () => undefined;
|
|
212
|
-
return t =>
|
|
337
|
+
return t => tsplus_module_2.map(tsplus_module_2.orDie(tsplus_module_10.encode(schema)(t)), _ => mapToPersistenceModel(_, getEtag));
|
|
213
338
|
}
|
|
214
339
|
function mapToPersistenceModel(e, getEtag) {
|
|
215
340
|
return mapTo(e, getEtag(e.id));
|
|
216
341
|
}
|
|
217
342
|
function makeStore(makeInitial, config) {
|
|
218
|
-
return
|
|
343
|
+
return tsplus_module_2.flatMap(_Store.StoreMaker, ({
|
|
219
344
|
make
|
|
220
|
-
}) =>
|
|
345
|
+
}) => tsplus_module_2.map(make(pluralize(name), makeInitial ? tsplus_module_2.withSpan(tsplus_module_2.flatMap(makeInitial, _ => _.forEachEffect(encodeToPM())), "Repository.makeInitial [effect-app/infra]", {
|
|
221
346
|
attributes: {
|
|
222
347
|
"repository.model_name": name
|
|
223
348
|
}
|
|
@@ -241,11 +366,11 @@ const RepositoryBaseImpl = () => {
|
|
|
241
366
|
}
|
|
242
367
|
}
|
|
243
368
|
Cls.make = mkRepo.make;
|
|
244
|
-
Cls.makeWith = (a, b) =>
|
|
369
|
+
Cls.makeWith = (a, b) => tsplus_module_2.map(mkRepo.make(a), b);
|
|
245
370
|
Cls.where = makeWhere();
|
|
246
371
|
Cls.query = _query.QueryBuilder.make();
|
|
247
372
|
Cls.type = undefined;
|
|
248
|
-
return
|
|
373
|
+
return tsplus_module_13.assignTag()(Cls);
|
|
249
374
|
};
|
|
250
375
|
};
|
|
251
376
|
exports.RepositoryBaseImpl = RepositoryBaseImpl;
|
|
@@ -255,17 +380,17 @@ const RepositoryDefaultImpl = () => {
|
|
|
255
380
|
...e,
|
|
256
381
|
_etag
|
|
257
382
|
}));
|
|
258
|
-
class Cls extends
|
|
383
|
+
class Cls extends RepositoryBaseC3 {
|
|
259
384
|
constructor(impl) {
|
|
260
385
|
super(itemType, impl);
|
|
261
386
|
}
|
|
262
387
|
}
|
|
263
388
|
Cls.make = mkRepo.make;
|
|
264
|
-
Cls.makeWith = (a, b) =>
|
|
389
|
+
Cls.makeWith = (a, b) => tsplus_module_2.map(mkRepo.make(a), b);
|
|
265
390
|
Cls.where = makeWhere();
|
|
266
391
|
Cls.query = _query.QueryBuilder.make();
|
|
267
392
|
Cls.type = undefined;
|
|
268
|
-
return
|
|
393
|
+
return tsplus_module_13.assignTag()(Cls); // impl is missing, but its marked protected
|
|
269
394
|
};
|
|
270
395
|
};
|
|
271
396
|
exports.RepositoryDefaultImpl = RepositoryDefaultImpl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RepositoryBase.cjs","names":["_Store","require","_filter","_prelude","_ContextMapContainer","_query","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RepositoryBaseC","exports","RepositoryBaseC1","constructor","itemType","RepositoryBaseC2","impl","saveAndPublish","removeAndPublish","find","all","utils","changeFeed","makeRepo","name","schema","mapFrom","mapTo","where","makeWhere","mapToPersistenceModel","getEtag","id","mapReverse","_etag","setEtag","mkStore","makeStore","make","args","tsplus_module_1","withLogSpan","flatMap","context","rctx","encode","tsplus_module_7","flow","tsplus_module_6","provide","decode","makeInitial","config","store","ContextMapContainer","cms","andThen","_","etag","pubCfg","pub","publishEvents","unit","tsplus_module_8","unbounded","allE","items","map","orDie","forEachEffect","concurrency","batching","structSchema","pipe","ast","_tag","S","union","types","from","pick","encodeId","findE","_id","tsplus_module_4","flatMapOption","saveAllE","asUnit","sync","tsplus_module_2","CollectionToNonEmptyReadonlyArray","batchSet","ret","forEach","saveAll","tsplus_module_3","ext_forEach","ext_itToChunk","events","it","publish","tsplus_module_5","toArray","gen","$","remove","undefined","parseMany","cm","filter","tap","select","query","QueryBuilder","removeById","self","tsplus_module_9","f_","makeFilters","makeFilter_","mode","f","m","Array","isArray","pluralize","s","endsWith","substring","length","encodeToPM","StoreMaker","withSpan","attributes","partitionValue","RepositoryBaseImpl","jitM","mkRepo","pm","Cls","makeWith","b","type","tsplus_module_10","assignTag","RepositoryDefaultImpl"],"sources":["../../_src/services/RepositoryBase.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RepositoryBase.cjs","names":["_Repository","require","_Store","_filter","_prelude","_errors","_ContextMapContainer","_query","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RepositoryBaseC","exports","RepositoryBaseC1","constructor","itemType","RepositoryBaseC2","impl","saveAndPublish","removeAndPublish","find","all","utils","changeFeed","RepositoryBaseC3","log","evt","AnyPureDSL","save","items","saveWithEvents","events","id","tsplus_module_2","flatMap","_","tsplus_module_1","encaseMaybeInEffect_","NotFoundError","type","projectEffect","map","f","filter","collect","filterMap","project","tsplus_module_3","sync","count","tsplus_module_4","NonNegativeInt","length","queryEffect","parseMany","queryOneEffect","limit","toNonEmpty","query","queryOne","queryAndSaveOnePureEffect","pure","saveWithPure_","queryAndSaveOnePure","queryAndSavePureEffect","saveManyWithPure_","queryAndSavePure","saveManyWithPure","byIdAndSaveWithPure","item","handleByIdAndSaveWithPure","req","ctx","saveAllWithEffectInt","tsplus_module_5","runTerm","gen","queryAndSavePureEffectBatched","batchSize","saveManyWithPureBatched_","queryAndSavePureBatched","saveManyWithPureBatched","tsplus_module_7","ext_forEach","tsplus_module_6","chunk_","batch","makeRepo","name","schema","mapFrom","mapTo","where","makeWhere","mapToPersistenceModel","getEtag","mapReverse","_etag","setEtag","mkStore","makeStore","make","args","withLogSpan","context","rctx","encode","tsplus_module_11","flow","tsplus_module_10","provide","decode","makeInitial","config","store","ContextMapContainer","cms","andThen","etag","pubCfg","pub","publishEvents","unit","tsplus_module_12","unbounded","allE","orDie","forEachEffect","concurrency","batching","structSchema","pipe","ast","_tag","S","union","types","from","pick","encodeId","findE","_id","tsplus_module_8","flatMapOption","saveAllE","asUnit","CollectionToNonEmptyReadonlyArray","batchSet","ret","forEach","saveAll","ext_itToChunk","it","publish","tsplus_module_9","toArray","$","remove","undefined","cm","tap","select","QueryBuilder","removeById","self","f_","makeFilters","makeFilter_","mode","m","Array","isArray","pluralize","s","endsWith","substring","encodeToPM","StoreMaker","withSpan","attributes","partitionValue","RepositoryBaseImpl","jitM","mkRepo","pm","Cls","makeWith","b","tsplus_module_13","assignTag","RepositoryDefaultImpl"],"sources":["../../_src/services/RepositoryBase.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -7,12 +7,11 @@ exports.spanAttributes = exports.RequestContextContainer = exports.RCTag = void
|
|
|
7
7
|
var tsplus_module_1 = _interopRequireWildcard(require("@effect-app/prelude/service"));
|
|
8
8
|
var tsplus_module_2 = _interopRequireWildcard(require("effect/Effect"));
|
|
9
9
|
var tsplus_module_3 = _interopRequireWildcard(require("effect/Option"));
|
|
10
|
-
var tsplus_module_4 = _interopRequireWildcard(require("
|
|
11
|
-
var tsplus_module_5 = _interopRequireWildcard(require("effect/
|
|
12
|
-
var tsplus_module_6 = _interopRequireWildcard(require("effect/
|
|
13
|
-
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/
|
|
14
|
-
var tsplus_module_8 = _interopRequireWildcard(require("
|
|
15
|
-
var tsplus_module_9 = _interopRequireWildcard(require("effect/Layer"));
|
|
10
|
+
var tsplus_module_4 = _interopRequireWildcard(require("effect/Context"));
|
|
11
|
+
var tsplus_module_5 = _interopRequireWildcard(require("effect/FiberRef"));
|
|
12
|
+
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/infra/services/Store/Memory"));
|
|
13
|
+
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/prelude/schema"));
|
|
14
|
+
var tsplus_module_8 = _interopRequireWildcard(require("effect/Layer"));
|
|
16
15
|
var _ids = require("@effect-app/prelude/ids");
|
|
17
16
|
var _RequestContext = require("../RequestContext.cjs");
|
|
18
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
@@ -27,22 +26,22 @@ class RequestContextContainer extends tsplus_module_1.TagClass() {
|
|
|
27
26
|
return tsplus_module_2.flatMap(_a, _ => _.requestContext);
|
|
28
27
|
}
|
|
29
28
|
static get getOption() {
|
|
30
|
-
return tsplus_module_2.flatMap(tsplus_module_2.contextWith(_ =>
|
|
29
|
+
return tsplus_module_2.flatMap(tsplus_module_2.contextWith(_ => tsplus_module_4.getOption(_, _a)), requestContext => tsplus_module_3.isSome(requestContext) ? tsplus_module_2.map(requestContext.value.requestContext, tsplus_module_3.some) : tsplus_module_2.sync(() => tsplus_module_3.none()));
|
|
31
30
|
}
|
|
32
31
|
}
|
|
33
32
|
exports.RequestContextContainer = RequestContextContainer;
|
|
34
33
|
_a = RequestContextContainer;
|
|
35
|
-
RequestContextContainer.live =
|
|
36
|
-
name:
|
|
34
|
+
RequestContextContainer.live = tsplus_module_8.scoped(_a)(tsplus_module_2.map(tsplus_module_2.sync(() => new _RequestContext.RequestContext({
|
|
35
|
+
name: tsplus_module_7.NonEmptyString255("_root_"),
|
|
37
36
|
rootId: (0, _ids.RequestId)("_root_"),
|
|
38
37
|
locale: "en"
|
|
39
|
-
})).andThen(
|
|
40
|
-
requestContext:
|
|
41
|
-
update: f =>
|
|
42
|
-
start: a =>
|
|
38
|
+
})).andThen(tsplus_module_5.make), ref => ({
|
|
39
|
+
requestContext: tsplus_module_5.get(ref),
|
|
40
|
+
update: f => tsplus_module_5.getAndUpdate(ref, f).tap(rc => tsplus_module_2.annotateCurrentSpan(spanAttributes_1(rc))),
|
|
41
|
+
start: a => tsplus_module_5.set(ref, a).andThen(tsplus_module_6.restoreFromRequestContext(a))
|
|
43
42
|
})));
|
|
44
43
|
/** @tsplus static RequestContext.Ops Tag */
|
|
45
|
-
const RCTag = exports.RCTag =
|
|
44
|
+
const RCTag = exports.RCTag = tsplus_module_4.GenericTag("@services/RCTag");
|
|
46
45
|
/**
|
|
47
46
|
* @tsplus getter RequestContext spanAttributes
|
|
48
47
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestContextContainer.cjs","names":["_ids","require","_RequestContext","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RequestContextContainer","tsplus_module_1","TagClass","tsplus_module_2","flatMap","_a","_","requestContext","getOption","contextWith","
|
|
1
|
+
{"version":3,"file":"RequestContextContainer.cjs","names":["_ids","require","_RequestContext","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RequestContextContainer","tsplus_module_1","TagClass","tsplus_module_2","flatMap","_a","_","requestContext","getOption","contextWith","tsplus_module_4","tsplus_module_3","isSome","map","value","some","sync","none","live","tsplus_module_8","scoped","RequestContext","name","tsplus_module_7","NonEmptyString255","rootId","RequestId","locale","andThen","tsplus_module_5","make","ref","update","f","getAndUpdate","tap","rc","annotateCurrentSpan","spanAttributes_1","start","tsplus_module_6","restoreFromRequestContext","RCTag","exports","GenericTag","ctx","id","namespace","userProfile","sub","roles","undefined","spanAttributes"],"sources":["../../_src/services/RequestContextContainer.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -7,11 +7,10 @@ exports.RCTag = exports.ContextMapContainer = void 0;
|
|
|
7
7
|
var tsplus_module_1 = _interopRequireWildcard(require("@effect-app/prelude/service"));
|
|
8
8
|
var tsplus_module_2 = _interopRequireWildcard(require("effect/Effect"));
|
|
9
9
|
var tsplus_module_3 = _interopRequireWildcard(require("effect/Option"));
|
|
10
|
-
var tsplus_module_4 = _interopRequireWildcard(require("
|
|
11
|
-
var tsplus_module_5 = _interopRequireWildcard(require("effect/
|
|
12
|
-
var tsplus_module_6 = _interopRequireWildcard(require("effect/
|
|
13
|
-
var tsplus_module_7 = _interopRequireWildcard(require("
|
|
14
|
-
var tsplus_module_8 = _interopRequireWildcard(require("effect/Layer"));
|
|
10
|
+
var tsplus_module_4 = _interopRequireWildcard(require("effect/Context"));
|
|
11
|
+
var tsplus_module_5 = _interopRequireWildcard(require("effect/FiberRef"));
|
|
12
|
+
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/infra/services/Store/service"));
|
|
13
|
+
var tsplus_module_7 = _interopRequireWildcard(require("effect/Layer"));
|
|
15
14
|
var _service3 = require("./service.cjs");
|
|
16
15
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
16
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -29,15 +28,15 @@ class ContextMapContainer extends tsplus_module_1.TagClass() {
|
|
|
29
28
|
return tsplus_module_2.flatMap(_a, _ => _.get);
|
|
30
29
|
}
|
|
31
30
|
static get getOption() {
|
|
32
|
-
return tsplus_module_2.flatMap(tsplus_module_2.contextWith(_ =>
|
|
31
|
+
return tsplus_module_2.flatMap(tsplus_module_2.contextWith(_ => tsplus_module_4.getOption(_, _a)), ctx => tsplus_module_3.isSome(ctx) ? tsplus_module_2.map(ctx.value.get, tsplus_module_3.some) : tsplus_module_2.sync(() => tsplus_module_3.none()));
|
|
33
32
|
}
|
|
34
33
|
}
|
|
35
34
|
exports.ContextMapContainer = ContextMapContainer;
|
|
36
35
|
_a = ContextMapContainer;
|
|
37
|
-
ContextMapContainer.live =
|
|
38
|
-
get:
|
|
39
|
-
start: tsplus_module_2.flatMap(
|
|
36
|
+
ContextMapContainer.live = tsplus_module_7.scoped(_a)(tsplus_module_2.map(tsplus_module_2.sync(() => (0, _service3.makeContextMap)()).andThen(tsplus_module_5.make), ref => new _a({
|
|
37
|
+
get: tsplus_module_5.get(ref),
|
|
38
|
+
start: tsplus_module_2.flatMap(tsplus_module_6.makeMap, _ => tsplus_module_5.set(ref, _))
|
|
40
39
|
})));
|
|
41
40
|
/** @tsplus static ContextMap.Ops Tag */
|
|
42
|
-
const RCTag = exports.RCTag =
|
|
41
|
+
const RCTag = exports.RCTag = tsplus_module_4.GenericTag("@services/RCTag");
|
|
43
42
|
//# sourceMappingURL=ContextMapContainer.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMapContainer.cjs","names":["_service3","require","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ContextMapContainer","tsplus_module_1","TagClass","tsplus_module_2","flatMap","_a","_","getOption","contextWith","
|
|
1
|
+
{"version":3,"file":"ContextMapContainer.cjs","names":["_service3","require","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ContextMapContainer","tsplus_module_1","TagClass","tsplus_module_2","flatMap","_a","_","getOption","contextWith","tsplus_module_4","ctx","tsplus_module_3","isSome","map","value","some","sync","none","live","tsplus_module_7","scoped","makeContextMap","andThen","tsplus_module_5","make","ref","start","tsplus_module_6","makeMap","RCTag","exports","GenericTag"],"sources":["../../../_src/services/Store/ContextMapContainer.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAyD,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAI,wBAAAJ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAM,OAAA,EAAAN,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAI,GAAA,CAAAP,CAAA,UAAAG,CAAA,CAAAK,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAlB,CAAA,EAAAe,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAN,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAiB,GAAA,CAAApB,CAAA,EAAAS,CAAA,GAAAA,CAAA;;AAEzD;AACA;AACA;AACA;AACA;AAEA;;;AAGM,MAAOY,mBAAoB,SAAQC,eAAA,CAAAC,QAAQ,EAG7C;EACF,WAAWf,GAAGA,CAAA;IACZ,OAAOgB,eAAA,CAAAC,OAAA,CAAAC,EAAmB,EAAUC,CAAC,IAAKA,CAAC,CAACnB,GAAG,CAAC;EAClD;EACA,WAAWoB,SAASA,CAAA;IAClB,OAAOJ,eAAA,CAAAC,OAAA,CAAAD,eAAA,CAAAK,WAAA,CACSF,CAAiB,IAAKG,eAAA,CAAAF,SAAA,CAAkBD,CAAC,EAAED,EAAmB,CAAC,CAAC,EACpEK,GAAG,IACXC,eAAA,CAAAC,MAAA,CAAAF,GAAG,CAAS,GACRP,eAAA,CAAAU,GAAA,CAAAH,GAAG,CAACI,KAAK,CAAC3B,GAAG,EAAAwB,eAAA,CAAAI,IAAA,CAAiB,GAC9BZ,eAAA,CAAAa,IAAA,CAAY,MAAML,eAAA,CAAAM,IAAA,EAAa,CAAC,CACrC;EACL;;;;AAEgBjB,mBAAA,CAAAkB,IAAI,GAAGC,eAAA,CAAAC,MAAA,CAINf,EAAI,EAJEF,eAAA,CAAAU,GAAA,CAAAV,eAAA,CAAAa,IAAA,CACf,MAAM,IAAAK,wBAAc,GAAE,CAAC,CAC5BC,OAAO,CAACC,eAAA,CAAAC,IAAyB,CAAC,EAC7BC,GAAG,IAAK,IAAIpB,EAAmB,CAAC;EAAElB,GAAG,EAAAoC,eAAA,CAAApC,GAAA,CAAEsC,GAAG,CAAI;EAAEC,KAAK,EAAEvB,eAAA,CAAAC,OAAA,CAAAuB,eAAA,CAAAC,OAAA,EAAyBtB,CAAC,IAAKiB,eAAA,CAAAxB,GAAA,CAAA0B,GAAG,EAAKnB,CAAC,CAAC;AAAC,CAAE,CAAC,CAAC,CACvF;AAGxB;AACO,MAAMuB,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAGpB,eAAA,CAAAsB,UAAU,CAAa,iBAAiB,CAAC"}
|
|
@@ -70,7 +70,7 @@ const codeFilterStatement = (p, x) => {
|
|
|
70
70
|
// return codeFilterStatement(p, x)
|
|
71
71
|
// })
|
|
72
72
|
// ? Option.some(x as unknown as NE)
|
|
73
|
-
// : Option.none
|
|
73
|
+
// : Option.none()
|
|
74
74
|
// export const and = <E extends { id: string }, NE extends E>(filters: readonly FilterResult[], x: E): Option<NE> =>
|
|
75
75
|
// filters
|
|
76
76
|
// .every((p) => {
|
|
@@ -86,7 +86,7 @@ const codeFilterStatement = (p, x) => {
|
|
|
86
86
|
// return codeFilterStatement(p, x)
|
|
87
87
|
// })
|
|
88
88
|
// ? Option.some(x as unknown as NE)
|
|
89
|
-
// : Option.none
|
|
89
|
+
// : Option.none()
|
|
90
90
|
// // TODO: how to handle and/or outside scopes.
|
|
91
91
|
// // TODO: the scopes are not about and every, or some.. they're about logical grouping. It's a logical group + and/or etc.
|
|
92
92
|
// // TODO: how to convert this to code? would we compile an actual function body instead?!
|