@effect-app/infra 0.21.6 → 0.22.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 +24 -0
- package/_cjs/_ext/Array.cjs +3 -2
- package/_cjs/_ext/Array.cjs.map +1 -1
- package/_cjs/api/codec.cjs +1 -1
- package/_cjs/api/codec.cjs.map +1 -1
- package/_cjs/api/defaultErrorHandler.cjs +18 -17
- package/_cjs/api/defaultErrorHandler.cjs.map +1 -1
- package/_cjs/api/express/makeJsonSchema.cjs +4 -4
- package/_cjs/api/express/makeJsonSchema.cjs.map +1 -1
- package/_cjs/api/express/makeOpenApiSpecs.cjs +2 -2
- package/_cjs/api/express/makeOpenApiSpecs.cjs.map +1 -1
- package/_cjs/api/express/schema/requestHandler.cjs +40 -40
- package/_cjs/api/express/schema/requestHandler.cjs.map +1 -1
- package/_cjs/api/express/schema/routing.cjs +15 -15
- package/_cjs/api/express/schema/routing.cjs.map +1 -1
- package/_cjs/api/reportError.cjs +2 -2
- package/_cjs/api/reportError.cjs.map +1 -1
- package/_cjs/api/routing.cjs +49 -49
- package/_cjs/api/routing.cjs.map +1 -1
- package/_cjs/api/setupRequest.cjs +2 -2
- package/_cjs/api/setupRequest.cjs.map +1 -1
- package/_cjs/api/writeDocs.cjs +6 -6
- package/_cjs/api/writeDocs.cjs.map +1 -1
- package/_cjs/errorReporter.cjs +4 -4
- package/_cjs/errorReporter.cjs.map +1 -1
- package/_cjs/instrument.cjs +1 -1
- package/_cjs/instrument.cjs.map +1 -1
- package/_cjs/rateLimit.cjs +4 -4
- package/_cjs/rateLimit.cjs.map +1 -1
- package/_cjs/services/Emailer/Sendgrid.cjs +8 -7
- package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -1
- package/_cjs/services/Emailer/fake.cjs +5 -4
- package/_cjs/services/Emailer/fake.cjs.map +1 -1
- package/_cjs/services/Operations/live.cjs +8 -8
- package/_cjs/services/Operations/live.cjs.map +1 -1
- package/_cjs/services/Operations/service.cjs +3 -3
- package/_cjs/services/Operations/service.cjs.map +1 -1
- package/_cjs/services/QueueMaker/errors.cjs +3 -3
- package/_cjs/services/QueueMaker/errors.cjs.map +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs +11 -10
- package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs +5 -5
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
- package/_cjs/services/Repository.cjs +21 -21
- package/_cjs/services/Repository.cjs.map +1 -1
- package/_cjs/services/Store/Cosmos.cjs +38 -38
- package/_cjs/services/Store/Cosmos.cjs.map +1 -1
- package/_cjs/services/Store/Disk.cjs +10 -9
- package/_cjs/services/Store/Disk.cjs.map +1 -1
- package/_cjs/services/Store/Memory.cjs +12 -12
- package/_cjs/services/Store/Memory.cjs.map +1 -1
- package/_cjs/services/Store/Redis.cjs +15 -14
- package/_cjs/services/Store/Redis.cjs.map +1 -1
- package/_cjs/services/Store/index.cjs +4 -4
- package/_cjs/services/Store/index.cjs.map +1 -1
- package/_cjs/services/simpledb/cosmosdb.cjs +18 -18
- package/_cjs/services/simpledb/cosmosdb.cjs.map +1 -1
- package/_cjs/services/simpledb/diskdb.cjs +17 -17
- package/_cjs/services/simpledb/diskdb.cjs.map +1 -1
- package/_cjs/services/simpledb/memdb.cjs +8 -8
- package/_cjs/services/simpledb/memdb.cjs.map +1 -1
- package/_cjs/services/simpledb/mongodb.cjs +14 -14
- package/_cjs/services/simpledb/mongodb.cjs.map +1 -1
- package/_cjs/services/simpledb/redisdb.cjs +19 -19
- package/_cjs/services/simpledb/redisdb.cjs.map +1 -1
- package/_cjs/services/simpledb/simpledb.cjs +9 -9
- package/_cjs/services/simpledb/simpledb.cjs.map +1 -1
- package/dist/_ext/Array.js +4 -3
- package/dist/api/codec.js +2 -2
- package/dist/api/defaultErrorHandler.js +18 -18
- package/dist/api/express/makeJsonSchema.js +5 -5
- package/dist/api/express/makeOpenApiSpecs.js +2 -2
- package/dist/api/express/schema/requestHandler.js +36 -36
- package/dist/api/express/schema/routing.js +16 -16
- package/dist/api/reportError.js +4 -4
- package/dist/api/routing.js +58 -58
- package/dist/api/setupRequest.js +3 -3
- package/dist/api/writeDocs.js +7 -7
- package/dist/errorReporter.js +3 -3
- package/dist/instrument.js +2 -2
- package/dist/rateLimit.js +5 -5
- package/dist/services/Emailer/Sendgrid.js +9 -8
- package/dist/services/Emailer/fake.js +6 -5
- package/dist/services/Operations/live.js +9 -9
- package/dist/services/Operations/service.js +4 -4
- package/dist/services/QueueMaker/errors.js +4 -4
- package/dist/services/QueueMaker/memQueue.js +10 -10
- package/dist/services/QueueMaker/sbqueue.js +5 -5
- package/dist/services/Repository.js +15 -15
- package/dist/services/Store/Cosmos.js +40 -40
- package/dist/services/Store/Disk.js +12 -11
- package/dist/services/Store/Memory.js +14 -14
- package/dist/services/Store/Redis.js +16 -15
- package/dist/services/Store/index.js +5 -5
- package/dist/services/simpledb/cosmosdb.js +18 -18
- package/dist/services/simpledb/diskdb.js +14 -14
- package/dist/services/simpledb/memdb.js +9 -9
- package/dist/services/simpledb/mongodb.js +13 -13
- package/dist/services/simpledb/redisdb.js +16 -16
- package/dist/services/simpledb/simpledb.js +12 -12
- package/package.json +11 -11
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect/io/Config/Secret";
|
|
2
2
|
import * as tsplus_module_2 from "@effect/io/Effect";
|
|
3
|
-
import * as tsplus_module_3 from "@
|
|
4
|
-
import * as tsplus_module_4 from "@
|
|
5
|
-
import * as tsplus_module_5 from "@effect-app/core/
|
|
3
|
+
import * as tsplus_module_3 from "@effect-app/core/Effect";
|
|
4
|
+
import * as tsplus_module_4 from "@fp-ts/core/typeclass/Equivalence";
|
|
5
|
+
import * as tsplus_module_5 from "@effect-app/core/_ext/ord.ext";
|
|
6
|
+
import * as tsplus_module_6 from "@effect-app/core/Array";
|
|
6
7
|
import sgMail from "@sendgrid/mail";
|
|
7
8
|
import { inspect } from "util";
|
|
8
9
|
import { Emailer } from "./service.js";
|
|
@@ -15,7 +16,7 @@ const makeLiveSendgrid = ({ apiKey, defaultFrom, realMail, subjectPrefix }) => t
|
|
|
15
16
|
const render = renderMessage(!realMail);
|
|
16
17
|
const renderedMsg_ = render(msg);
|
|
17
18
|
const renderedMsg = { ...renderedMsg_, subject: `${subjectPrefix}${renderedMsg_.subject}` };
|
|
18
|
-
yield* $(tsplus_module_2.logAnnotate(
|
|
19
|
+
yield* $(tsplus_module_2.logAnnotate("msg", inspect(renderedMsg, false, 5))(tsplus_module_2.logDebug("Sending email")));
|
|
19
20
|
const ret = yield* $(tsplus_module_2.async(cb => void sgMail.send(renderedMsg, false, (err, result) => err ?
|
|
20
21
|
cb(tsplus_module_2.fail(err)) :
|
|
21
22
|
cb(tsplus_module_2.sync(() => result)))));
|
|
@@ -37,7 +38,7 @@ const makeLiveSendgrid = ({ apiKey, defaultFrom, realMail, subjectPrefix }) => t
|
|
|
37
38
|
* @tsplus static Emailer.Ops LiveSendgrid
|
|
38
39
|
*/
|
|
39
40
|
export function LiveSendgrid(config) {
|
|
40
|
-
return
|
|
41
|
+
return tsplus_module_3.toLayer(tsplus_module_2.flatMap(makeLiveSendgrid)(tsplus_module_2.config(config)), Emailer);
|
|
41
42
|
}
|
|
42
43
|
/**
|
|
43
44
|
* @hidden
|
|
@@ -74,12 +75,12 @@ function renderFake(addr, makeId) {
|
|
|
74
75
|
email: `test+${makeId()}@nomizz.com`
|
|
75
76
|
};
|
|
76
77
|
}
|
|
77
|
-
const eq =
|
|
78
|
+
const eq = tsplus_module_4.contramap((to) => typeof to === "string" ? to.toLowerCase() : to.email.toLowerCase())(tsplus_module_4.string);
|
|
78
79
|
// TODO: should just not add any already added email address
|
|
79
80
|
// https://stackoverflow.com/a/53603076/11595834
|
|
80
81
|
function renderFakeIfTest(addr, makeId) {
|
|
81
82
|
return Array.isArray(addr)
|
|
82
|
-
?
|
|
83
|
+
? tsplus_module_6.iterableToArray(tsplus_module_5.uniqArray(eq)(addr
|
|
83
84
|
.map(x => (isTestAddress(x) ? renderFake(x, makeId) : x)))) : isTestAddress(addr)
|
|
84
85
|
? renderFake(addr, makeId)
|
|
85
86
|
: addr;
|
|
@@ -93,4 +94,4 @@ function renderMailData(md) {
|
|
|
93
94
|
}
|
|
94
95
|
return md.email;
|
|
95
96
|
}
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VuZGdyaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL0VtYWlsZXIvU2VuZGdyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsT0FBTyxNQUFNLE1BQU0sZ0JBQWdCLENBQUE7QUFDbkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUM5QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBR3RDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBa0IsRUFBRSxFQUFFLENBQzVGLHFCQUFZLEdBQUcsRUFBRTtJQUNmLE1BQU0sQ0FBQyxTQUFTLHVCQUFDLE1BQU0sRUFBTyxDQUFBO0lBRTlCLE9BQU87UUFDTCxRQUFRLENBQUMsSUFBMEI7WUFDakMsT0FBTyxvQkFBVyxRQUFRLENBQUMsRUFBQyxDQUFDO2dCQUMzQixNQUFNLEdBQUcsR0FBRyxFQUFFLEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxJQUFJLFdBQVcsRUFBRSxDQUFBO2dCQUN2RCxNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQTtnQkFFdkMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO2dCQUNoQyxNQUFNLFdBQVcsR0FBRyxFQUFFLEdBQUcsWUFBWSxFQUFFLE9BQU8sRUFBRSxHQUFHLGFBQWEsR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQTtnQkFDM0YsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLDRCQUE2QyxLQUFLLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQWxGLHlCQUFnQixlQUFlLENBQUMsQ0FBbUQsQ0FBQyxDQUFBO2dCQUU3RixNQUFNLEdBQUcsR0FBRyxL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
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect/io/Effect";
|
|
2
|
+
import * as tsplus_module_2 from "@effect-app/core/Effect";
|
|
2
3
|
import { pretty } from "@effect-app/prelude/utils";
|
|
3
4
|
import { Emailer } from "./service.js";
|
|
4
|
-
const makeFake = tsplus_module_1.map(
|
|
5
|
+
const makeFake = tsplus_module_1.map(() => ({
|
|
5
6
|
sendMail(msg) {
|
|
6
|
-
return tsplus_module_1.logAnnotate(tsplus_module_1.logDebug(`Fake send mail`)
|
|
7
|
+
return tsplus_module_1.logAnnotate("msg", pretty(msg))(tsplus_module_1.logDebug(`Fake send mail`));
|
|
7
8
|
}
|
|
8
|
-
}));
|
|
9
|
+
}))(tsplus_module_1.logDebug("FAKE Emailer Service enabled"));
|
|
9
10
|
/**
|
|
10
11
|
* @tsplus static Emailer.Ops Fake
|
|
11
12
|
*/
|
|
12
|
-
export const FakeSendgrid =
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
export const FakeSendgrid = tsplus_module_2.toLayer(makeFake, Emailer);
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFrZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvRW1haWxlci9mYWtlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFdEMsTUFBTSxRQUFRLEdBQUcsb0JBQ1YsR0FBWSxFQUFFLENBQUMsQ0FBQztJQUNuQixRQUFRLENBQUMsR0FBRztRQUNWLE9BQU8sNEJBQThDLEtBQUssRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQWhFLHlCQUFnQixnQkFBZ0IsQ0FBQyxDQUFnQyxDQUFBO0lBQzFFLENBQUM7Q0FDRixDQUFDLEVBTGEseUJBQWdCLDhCQUE4QixDQUFDLENBSzNELENBQUE7QUFFTDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyx3QkFBQSxRQUFRLEVBQVMsT0FBTyxDQUFDLENBQUEifQ==
|
|
@@ -37,7 +37,7 @@ const make = tsplus_module_1.sync(() => {
|
|
|
37
37
|
return tsplus_module_1.sync(() => tsplus_module_3.fromNullable(ops.get(id)));
|
|
38
38
|
}
|
|
39
39
|
function finishOp(id, exit) {
|
|
40
|
-
return tsplus_module_1.flatMap(
|
|
40
|
+
return tsplus_module_1.flatMap(_ => tsplus_module_1.sync(() => {
|
|
41
41
|
if (tsplus_module_3.isNone(_)) {
|
|
42
42
|
throw new Error("Not found");
|
|
43
43
|
}
|
|
@@ -56,33 +56,33 @@ const make = tsplus_module_1.sync(() => {
|
|
|
56
56
|
: tsplus_module_8.none)(tsplus_module_6.failureOption(exit.cause))) ?? null
|
|
57
57
|
})
|
|
58
58
|
});
|
|
59
|
-
}));
|
|
59
|
+
}))(findOp(id));
|
|
60
60
|
}
|
|
61
61
|
function update(id, progress) {
|
|
62
|
-
return tsplus_module_1.flatMap(
|
|
62
|
+
return tsplus_module_1.flatMap(_ => tsplus_module_1.sync(() => {
|
|
63
63
|
if (tsplus_module_3.isNone(_)) {
|
|
64
64
|
throw new Error("Not found");
|
|
65
65
|
}
|
|
66
66
|
ops.set(id, { ..._.value, updatedAt: new Date(), progress });
|
|
67
|
-
}));
|
|
67
|
+
}))(findOp(id));
|
|
68
68
|
}
|
|
69
69
|
return tsplus_module_10.make(Operations, {
|
|
70
70
|
cleanup,
|
|
71
|
-
register: tsplus_module_1.tap(
|
|
71
|
+
register: tsplus_module_1.tap(id => tsplus_module_1.zipRight(tsplus_module_1.acquireRelease(addOp(id), (_, exit) => finishOp(id, exit)))(tsplus_module_9.logAnnotateScoped("operationId", id)))(makeOp),
|
|
72
72
|
find: findOp,
|
|
73
73
|
update
|
|
74
74
|
});
|
|
75
75
|
});
|
|
76
|
-
const cleanupLoop = tsplus_module_1.forkScoped(tsplus_module_1.forever(tsplus_module_1.delay(
|
|
76
|
+
const cleanupLoop = tsplus_module_1.forkScoped(tsplus_module_1.forever(tsplus_module_1.delay(tsplus_module_11.minutes(1))(tsplus_module_1.flatMap(_ => {
|
|
77
77
|
if (tsplus_module_5.isSuccess(_)) {
|
|
78
78
|
return tsplus_module_12.unit;
|
|
79
79
|
}
|
|
80
80
|
else {
|
|
81
81
|
return reportAppError(_.cause);
|
|
82
82
|
}
|
|
83
|
-
}),
|
|
83
|
+
})(tsplus_module_1.exit(tsplus_module_1.serviceWithEffect(Operations, _ => _.cleanup))))));
|
|
84
84
|
/**
|
|
85
85
|
* @tsplus static Operations.Ops Live
|
|
86
86
|
*/
|
|
87
|
-
export const Live = tsplus_module_13.provideMerge(tsplus_module_12.toScopedDiscardLayer(cleanupLoop))(
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
export const Live = tsplus_module_13.provideMerge(tsplus_module_12.toScopedDiscardLayer(cleanupLoop))(tsplus_module_12.toLayer(make, Operations));
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvT3BlcmF0aW9ucy9saXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFFN0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQ3pGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFekMsTUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0FBRXhFLE1BQU0sSUFBSSxHQUFHLHFCQUFZLEdBQUcsRUFBRTtJQUM1QixNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsRUFBMEIsQ0FBQTtJQUM3QyxNQUFNLE1BQU0sR0FBRywyQkFBTyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtJQUV6QyxNQUFNLE9BQU8sR0FBRyxxQkFBWSxHQUFHLEVBQUU7UUFDL0IsTUFBTSxNQUFNLEdBQUcsNkJBQUEsSUFBSSxJQUFJLEVBQUUsRUFBVSxDQUFDLENBQUMsQ0FBQTtRQUNyQyw4QkFBQSxHQUFHLENBQUMsT0FBTyxFQUFFLEVBRVYsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNwQixNQUFNLFdBQVcsR0FBRywwQkFBNEMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBOUQsNkJBQW9CLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBOEIsQ0FBQTtZQUNuRixJQUFJLFdBQVcsR0FBRyxNQUFNLEVBQUU7Z0JBQ3hCLEdBQUcsQ0FBQyxN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
|
|
@@ -10,7 +10,7 @@ export const Operations = tsplus_module_1.Tag();
|
|
|
10
10
|
* @tsplus getter effect/io/Effect forkOperation
|
|
11
11
|
*/
|
|
12
12
|
function forkOperation_1(self) {
|
|
13
|
-
return tsplus_module_5.untraced(() => tsplus_module_4.serviceWithEffect(Operations, Operations => tsplus_module_4.flatMap(
|
|
13
|
+
return tsplus_module_5.untraced(() => tsplus_module_4.serviceWithEffect(Operations, Operations => tsplus_module_4.flatMap(scope => tsplus_module_4.tap(() => tsplus_module_3.forkDaemonReportRequestUnexpected(tsplus_module_2.use(scope)(self)))(tsplus_module_2.extend(scope)(Operations.register)))(tsplus_module_2.make())));
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
16
|
* @tsplus getter function forkOperation
|
|
@@ -22,12 +22,12 @@ export function forkOperationFunction(fnc) {
|
|
|
22
22
|
* @tsplus static effect/io/Effect.Ops forkOperation
|
|
23
23
|
*/
|
|
24
24
|
export function forkOperation2(self) {
|
|
25
|
-
return tsplus_module_5.untraced(restore => tsplus_module_4.serviceWithEffect(Operations, Operations => tsplus_module_4.flatMap(
|
|
25
|
+
return tsplus_module_5.untraced(restore => tsplus_module_4.serviceWithEffect(Operations, Operations => tsplus_module_4.flatMap(scope => tsplus_module_4.tap(id => tsplus_module_3.forkDaemonReportRequestUnexpected(tsplus_module_2.use(scope)(restore(self)(id))))(tsplus_module_2.extend(scope)(Operations.register)))(tsplus_module_2.make())));
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
28
|
* @tsplus static effect/io/Effect.Ops forkOperationWithEffect
|
|
29
29
|
*/
|
|
30
30
|
export function forkOperationWithEffect(self, fnc) {
|
|
31
|
-
return tsplus_module_5.untraced(restore => tsplus_module_4.serviceWithEffect(Operations, Operations => tsplus_module_4.flatMap(
|
|
31
|
+
return tsplus_module_5.untraced(restore => tsplus_module_4.serviceWithEffect(Operations, Operations => tsplus_module_4.flatMap(scope => tsplus_module_4.tap(opId => tsplus_module_2.extend(scope)(tsplus_module_4.forkScoped(tsplus_module_4.interruptible(restore(fnc)(opId)))))(tsplus_module_4.tap(opId => tsplus_module_3.forkDaemonReportRequestUnexpected(tsplus_module_2.use(scope)(restore(self)(opId))))(tsplus_module_2.extend(scope)(Operations.register))))(tsplus_module_2.make())));
|
|
32
32
|
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvT3BlcmF0aW9ucy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O2FBb0JnQixhQUFhO0FBbEI3QixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0FBYWxELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBa0IsZ0JBQUEsR0FBRyxFQUFjLENBQUE7QUFFMUQ7O0dBRUc7QUFDSCx5QkFBdUMsSUFBcUI7SUFDMUQsT0FBTyx5QkFBZSxHQUFHLEVBQUUsQ0FDekIsa0NBQUEsVUFBVSxFQUNSLFVBQVUsQ0FBQyxFQUFFLENBQ1gsd0JBQ1csS0FBSyxDQUFDLEVBQUUsQ0FDZixvQkFDTyxHQUFHLEVBQUUsbURBQUMsb0JBQVMsS0FBSyxFQUFkLElBQUksQ0FBVyxDQUFrQyxFQUQ5RCx1QkFBMkIsS0FBSyxFQUFoQyxVQUFVLENBQUMsUUFBUSxDQUFjLENBQzhCLEVBSG5FLHNCQUFZLENBSVQsQ0FDTixDQUNGLENBQUE7QUFDSCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUscUJBQXFCLENBQWUsR0FBa0M7SUFDcEYsT0FBTyxDQUFDLEdBQVEsRUFBRSxFQUFFLENBQUMseUJBQWUsR0FBRyxFQUFFLGlCQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBYyxDQUFDLENBQUE7QUFDbkUsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBVSxJQUE0QztJQUNsRixPQUFPLHlCQUFlLE9BQU8sQ0FBQyxFQUFFLENBQzlCLGtDQUFBLFVBQVUsRUFDUixVQUFVLENBQUMsRUFBRSxDQUNYLHdCQUNXLEtBQUssQ0FBQyxFQUFFLENBQ2Ysb0JBQ08sRUFBRSxDQUFDLEVBQUUsbURBQUMsb0JBQXNCLEtBQUssRUFBM0IsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFXLENBQWtDLEVBRDNFLHVCQUEyQixLQUFLLEVBQWhDLFVBQVUsQ0FBQyxRQUFRLENBQWMsQ0FDMkMsRUFIaEYsc0JBQVksQ0FJVCxDQUNOLENBQ0YsQ0FBQTtBQUNILENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSx1QkFBdUIsQ0FDckMsSUFBMEMsRUFDMUMsR0FBNEM7SUFFNUMsT0FBTyx5QkFBZSxPQUFPLENBQUMsRUFBRSxDQUM5QixrQ0FBQSxVQUFVLEVBQ1IsVUFBVSxDQUFDLEVBQUUsQ0FDWCx3QkFDVyxLQUFLLENBQUMsRUFBRSxDQUNmLG9CQUVPLElBQUksQ0FBQyxFQUFFLENBQUMsdUJBQW1ELEtBQUssMkRBQXhELE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBdUMsRUFGeEUsb0JBQ08sSUFBSSxDQUFDLEVBQUUsbURBQUMsb0JBQXdCLEtBQUssRUFBN0IsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFXLENBQWtDLEVBRC9FLHVCQUEyQixLQUFLLEVBQWhDLFVBQVUsQ0FBQyxRQUFRLENBQWMsQ0FDK0MsQ0FDUCxFQUo3RSxzQkFBWSxDQUtULENBQ04sQ0FDRixDQUFBO0FBQ0gsQ0FBQyJ9
|
|
@@ -26,12 +26,12 @@ export const reportQueueError = (cause, context) => tsplus_module_1.serviceWithE
|
|
|
26
26
|
* @tsplus getter effect/io/Effect forkDaemonReportQueue
|
|
27
27
|
*/
|
|
28
28
|
export function forkDaemonReportQueue(self) {
|
|
29
|
-
return tsplus_module_1.daemonChildren(tsplus_module_1.fork(tsplus_module_1.tapErrorCause(
|
|
29
|
+
return tsplus_module_1.daemonChildren(tsplus_module_1.fork(tsplus_module_1.tapErrorCause(reportQueueError)(self)));
|
|
30
30
|
}
|
|
31
31
|
export const reportFatalQueueError = reportError(cause => new FatalQueueException(cause));
|
|
32
32
|
export function reportFailure(name) {
|
|
33
|
-
return (self) => tsplus_module_1.tap(
|
|
33
|
+
return (self) => tsplus_module_1.tap(exit => exit._tag === "Failure"
|
|
34
34
|
? reportFatalQueueError(exit.cause, { name })
|
|
35
|
-
: tsplus_module_3.unit);
|
|
35
|
+
: tsplus_module_3.unit)(tsplus_module_1.exit(self));
|
|
36
36
|
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vX3NyYy9zZXJ2aWNlcy9RdWV1ZU1ha2VyL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3pELE9BQStCLGtDQUFrQyxDQUFBO0FBRWpFLE1BQU0sT0FBTyxnQkFBb0IsU0FBUSxjQUFpQjtJQUN4RCxZQUFZLEtBQWU7UUFDekIsS0FBSyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQTtJQUN6QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sbUJBQXVCLFNBQVEsY0FBaUI7SUFDM0QsWUFBWSxLQUFlO1FBQ3pCLEtBQUssQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDekIsQ0FBQztDQUNGO0FBRUQsTUFBTSxpQkFBaUIsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7QUFFM0UsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxLQUFxQixFQUFFLE9BQTZDLEVBQUUsRUFBRSxDQUN2Ryx1REFBb0MsY0FBYyxDQUFDLEVBQUUsQ0FDbkQsMkJBQU8saUJBQWlCLENBQUMsS0FBSyxFQUFFLEVBQUUsY0FBYyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUNqRSxDQUFBO0FBRUg7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLFVBQVUscUJBQXFCLENBQVUsSUFBcUI7SUFDbEUsMkRBQU8sOEJBQW1CLGdCQUFnQixFQUFuQyxJQUFJLENBQWdDLEdBQW9CO0FBQ2pFLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxXQUFXLENBQzlDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FDeEMsQ0FBQTtBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsSUFBWTtJQUN4QyxPQUFPLENBQVUsSUFBcUIsRUFBRSxFQUFFLENBQ3hDLG9CQUFjLElBQUksQ0FBQyxFQUFFLENBQ25CLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUztRQUNyQixDQUFDLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQzdDLENBQUMscUJBQVksdUJBSGpCLElBQUksRUFJSCxDQUFBO0FBQ0wsQ0FBQyJ9
|
|
@@ -25,20 +25,20 @@ export function makeMemQueue(queueName, queueDrainName, encoder, makeHandleEvent
|
|
|
25
25
|
const requestContext = yield* $(tsplus_module_1.service(tsplus_module_2.tag));
|
|
26
26
|
return yield* $(tsplus_module_4.forkDaemonReportQueue(tsplus_module_3.ext_forEach(messages, m => tsplus_module_1.asUnit(
|
|
27
27
|
// we JSON encode, because that is what the wire also does, and it reveals holes in e.g unknown encoders (Date->String)
|
|
28
|
-
tsplus_module_1.flatMap(tsplus_module_1.sync(() => JSON.stringify(encoder({ body: m, meta: requestContext })))
|
|
28
|
+
tsplus_module_1.flatMap(_ => q.offer(_))(tsplus_module_1.sync(() => JSON.stringify(encoder({ body: m, meta: requestContext })))
|
|
29
29
|
// .tap((msg) => info("Publishing Mem Message: " + utils.inspect(msg)))
|
|
30
|
-
|
|
30
|
+
)))));
|
|
31
31
|
}),
|
|
32
32
|
drain: tsplus_module_1.gen(function* ($) {
|
|
33
33
|
const handleEvent = yield* $(makeHandleEvent);
|
|
34
34
|
const processMessage = (msg) =>
|
|
35
35
|
// we JSON parse, because that is what the wire also does, and it reveals holes in e.g unknown encoders (Date->String)
|
|
36
|
-
tsplus_module_1.flatMap(
|
|
36
|
+
tsplus_module_1.flatMap(({ body, meta }) => provideContext(RequestContext.inherit(meta, {
|
|
37
37
|
id: body.id,
|
|
38
38
|
locale: "en",
|
|
39
39
|
name: tsplus_module_7.ReasonableString(body._tag)
|
|
40
|
-
}))(tsplus_module_1.zipRight(tsplus_module_6.logAnnotates({ body: tsplus_module_5.RecordPretty(tsplus_module_5.object$(body)), meta: tsplus_module_5.RecordPretty(tsplus_module_5.object$(meta)) })(tsplus_module_1.logDebug(`$$ [${queueDrainName}] Processing incoming message`))
|
|
41
|
-
return yield* $(tsplus_module_1.forkScoped(tsplus_module_8.setupReq3(reportFailure("drain")(tsplus_module_1.forever(tsplus_module_1.flatMap(
|
|
40
|
+
}))(tsplus_module_1.zipRight(silence(handleEvent(body)))(tsplus_module_6.logAnnotates({ body: tsplus_module_5.RecordPretty(tsplus_module_5.object$(body)), meta: tsplus_module_5.RecordPretty(tsplus_module_5.object$(meta)) })(tsplus_module_1.logDebug(`$$ [${queueDrainName}] Processing incoming message`)))))(tsplus_module_1.orDie(tsplus_module_1.flatMap(parseDrain)(tsplus_module_1.sync(() => JSON.parse(msg)))));
|
|
41
|
+
return yield* $(tsplus_module_1.forkScoped(tsplus_module_8.setupReq3(reportFailure("drain")(tsplus_module_1.forever(tsplus_module_1.flatMap(x => tsplus_module_1.uninterruptible(processMessage(x)))(qReply.take()))), "Queue.ReceiveMessage")));
|
|
42
42
|
})
|
|
43
43
|
};
|
|
44
44
|
});
|
|
@@ -46,15 +46,15 @@ export function makeMemQueue(queueName, queueDrainName, encoder, makeHandleEvent
|
|
|
46
46
|
// We want the Queue to continue processing even on errors per messages
|
|
47
47
|
// must make sure that the errors are processed/handled beforehand.
|
|
48
48
|
export function silence(inp) {
|
|
49
|
-
return tsplus_module_1.flatMap(
|
|
49
|
+
return tsplus_module_1.flatMap(result => tsplus_module_1.gen(function* ($) {
|
|
50
50
|
const requestContext = yield* $(tsplus_module_1.service(tsplus_module_2.tag));
|
|
51
|
-
return yield* $(tsplus_module_11.match(
|
|
51
|
+
return yield* $(tsplus_module_11.match(cause => {
|
|
52
52
|
if (tsplus_module_9.isInterrupted(cause)) {
|
|
53
53
|
return tsplus_module_1.failCause(cause);
|
|
54
54
|
}
|
|
55
55
|
reportQueueError(cause, { requestContext });
|
|
56
56
|
return tsplus_module_10.unit;
|
|
57
|
-
}, () => tsplus_module_10.unit));
|
|
58
|
-
}));
|
|
57
|
+
}, () => tsplus_module_10.unit)(result));
|
|
58
|
+
}))(tsplus_module_1.exit(inp));
|
|
59
59
|
}
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtUXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL1F1ZXVlTWFrZXIvbWVtUXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBRWpFLE9BQU8sRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFHN0Q7O0dBRUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUMxQixTQUFpQixFQUNqQixjQUFzQixFQUN0QixPQUF5RCxFQUN6RCxlQUF3RixFQUN4RixjQUV1QyxFQUN2QyxVQUdtRjtJQUVuRixPQUFPLG9CQUFXLFFBQVEsQ0FBQyxFQUFDLENBQUM7UUFDM0IsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyx5QkFBQyxRQUFRLEVBQVEsQ0FBQTtRQUNyQyxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUE7UUFDbkQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBRTdELE9BQU87WUFDTCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFFBQVEsRUFBRSxFQUFFLENBQ3ZCLG9CQUFXLFFBQVEsQ0FBQyxFQUFDLENBQUM7Z0JBQ3BCLE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsOENBQTJCLENBQUE7Z0JBQzFELE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyx1Q0FDYiw0QkFBQSxRQUFRLEVBQWUsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3pCLHVIQUF1SDtnQkFDdkgsd0JBTVcsQ0FBQyxD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
|
|
@@ -24,16 +24,16 @@ export function makeServiceBusQueue(_queueName, queueDrainName, encoder, makeHan
|
|
|
24
24
|
const handleEvent = yield* $(makeHandleEvent);
|
|
25
25
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
26
26
|
function processMessage(messageBody) {
|
|
27
|
-
return tsplus_module_1.asUnit(tsplus_module_1.orDie(tsplus_module_6.setupReq3(tsplus_module_1.flatMap(
|
|
27
|
+
return tsplus_module_1.asUnit(tsplus_module_1.orDie(tsplus_module_6.setupReq3(tsplus_module_1.flatMap(({ body, meta }) => provideContext(RequestContext.inherit(meta, {
|
|
28
28
|
id: body.id,
|
|
29
29
|
locale: "en",
|
|
30
30
|
name: tsplus_module_5.ReasonableString(body._tag)
|
|
31
|
-
}))(tsplus_module_1.tapErrorCause(tsplus_module_1.zipRight(tsplus_module_4.logAnnotates({ body: tsplus_module_3.RecordPretty(tsplus_module_3.object$(body)), meta: tsplus_module_3.RecordPretty(tsplus_module_3.object$(meta)) })(tsplus_module_1.logDebug(`$$ [${queueDrainName}] Processing incoming message`))
|
|
31
|
+
}))(tsplus_module_1.tapErrorCause(report)(tsplus_module_1.zipRight(handleEvent(body))(tsplus_module_4.logAnnotates({ body: tsplus_module_3.RecordPretty(tsplus_module_3.object$(body)), meta: tsplus_module_3.RecordPretty(tsplus_module_3.object$(meta)) })(tsplus_module_1.logDebug(`$$ [${queueDrainName}] Processing incoming message`))))))(tsplus_module_1.tapErrorCause(report)(tsplus_module_1.orDie(tsplus_module_1.flatMap(x => parseDrain(x))(tsplus_module_1.sync(() => JSON.parse(messageBody)))))), "Queue.ReceiveMessage")));
|
|
32
32
|
}
|
|
33
|
-
return yield* $(tsplus_module_1.provideSomeLayer(subscribe({
|
|
33
|
+
return yield* $(tsplus_module_1.provideSomeLayer(receiverLayer)(subscribe({
|
|
34
34
|
processMessage: x => tsplus_module_1.uninterruptible(processMessage(x.body)),
|
|
35
35
|
processError: err => tsplus_module_1.sync(() => captureException(err.error))
|
|
36
|
-
})
|
|
36
|
+
})));
|
|
37
37
|
}),
|
|
38
38
|
publish: (...messages) => tsplus_module_1.gen(function* ($) {
|
|
39
39
|
const requestContext = yield* $(tsplus_module_1.service(tsplus_module_7.tag));
|
|
@@ -58,4 +58,4 @@ function report(cause) {
|
|
|
58
58
|
return reportQueueError(cause, { requestContext });
|
|
59
59
|
});
|
|
60
60
|
}
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2JxdWV1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvUXVldWVNYWtlci9zYnF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ1osVUFBVSxFQUNWLG9CQUFvQixFQUNwQixRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLHVDQUF1QyxDQUFBO0FBRTlDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUVqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFHOUM7O0dBRUc7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBUWpDLFVBQWtCLEVBQ2xCLGNBQXNCLEVBQ3RCLE9BQXlELEVBQ3pELGVBQXdGLEVBQ3hGLGNBRXVDLEVBQ3ZDLFVBR21GO0lBRW5GLE9BQU8sb0JBQVcsUUFBUSxDQUFDLEVBQUMsQ0FBQztRQUMzQixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLHlCQUFDLE1BQU0sRUFBUSxDQUFBO1FBQ2pDLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMseUJBQUMsUUFBUSxFQUFRLENBQUE7UUFDMUMsTUFBTSxhQUFhLEdBQUcsMEJBQUEsUUFBUSxFQUFXLFFBQVEsQ0FBQyxDQUFBO1FBRWxELE9BQU87WUFDTCxLQUFLLEVBQUUsb0JBQVcsUUFBUSxDQUFDLEVBQUMsQ0FBQztnQkFDM0IsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFBO2dCQUM3Qyw4REFBOEQ7Z0JBQzlELFNBQVMsY0FBYyxDQUFDLFdBQWdCO29CQUN0QyxvREFBTywwQkFBQSx3QkFJSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFF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
|
|
@@ -28,25 +28,25 @@ export const AnyPureDSL = {
|
|
|
28
28
|
* @tsplus fluent Repository get
|
|
29
29
|
*/
|
|
30
30
|
function get_1(self, id) {
|
|
31
|
-
return tsplus_module_3.flatMap(
|
|
31
|
+
return tsplus_module_3.flatMap(_ => tsplus_module_2.encaseMaybeInEffect_(_, () => new NotFoundError(self.itemType, id)))(self.find(id));
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
34
|
* @tsplus fluent Repository filter
|
|
35
35
|
*/
|
|
36
36
|
export function filter(self, filter) {
|
|
37
|
-
return tsplus_module_3.map(
|
|
37
|
+
return tsplus_module_3.map(_ => tsplus_module_4.filter(filter)(_))(self.all);
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
40
|
* @tsplus fluent Repository filterAll
|
|
41
41
|
*/
|
|
42
42
|
export function filterAll(self, map) {
|
|
43
|
-
return tsplus_module_3.map(self.all
|
|
43
|
+
return tsplus_module_3.map(map)(self.all);
|
|
44
44
|
}
|
|
45
45
|
/**
|
|
46
46
|
* @tsplus fluent Repository collect
|
|
47
47
|
*/
|
|
48
48
|
export function collect(self, collect) {
|
|
49
|
-
return tsplus_module_3.map(
|
|
49
|
+
return tsplus_module_3.map(_ => tsplus_module_4.filterMap(collect)(_))(self.all);
|
|
50
50
|
}
|
|
51
51
|
/**
|
|
52
52
|
* @tsplus getter Repository log
|
|
@@ -60,7 +60,7 @@ export function log(_) {
|
|
|
60
60
|
*/
|
|
61
61
|
function projectEffect_1(self, map) {
|
|
62
62
|
// TODO: a projection that gets sent to the db instead.
|
|
63
|
-
return tsplus_module_3.flatMap(
|
|
63
|
+
return tsplus_module_3.flatMap(f => tsplus_module_3.map(_ => f.collect ? tsplus_module_4.filterMap(f.collect)(_) : _)((f.filter ? self.utils.filter(f.filter, { limit: f.limit, skip: f.skip }) : self.utils.all)))(map);
|
|
64
64
|
}
|
|
65
65
|
/**
|
|
66
66
|
* TODO: project inside the db.
|
|
@@ -75,7 +75,7 @@ export function project(self, map) {
|
|
|
75
75
|
function queryEffect_1(self,
|
|
76
76
|
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
77
77
|
map) {
|
|
78
|
-
return tsplus_module_3.flatMap(
|
|
78
|
+
return tsplus_module_3.flatMap(f => tsplus_module_3.map(_ => f.collect ? tsplus_module_4.filterMap(f.collect)(_) : _)(tsplus_module_3.map(_ => _.map(_ => self.utils.parse(_)))(tsplus_module_3.flatMap(items => tsplus_module_3.map(({ set }) => items.map(_ => self.utils.mapReverse(_, set)))(tsplus_module_3.service(ContextMap)))((f.filter ? self.utils.filter(f.filter, { limit: f.limit, skip: f.skip }) : self.utils.all)))))(map);
|
|
79
79
|
}
|
|
80
80
|
/**
|
|
81
81
|
* @tsplus fluent Repository queryOneEffect
|
|
@@ -83,7 +83,7 @@ map) {
|
|
|
83
83
|
function queryOneEffect_1(self,
|
|
84
84
|
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
85
85
|
map) {
|
|
86
|
-
return tsplus_module_3.flatMap(
|
|
86
|
+
return tsplus_module_3.flatMap(f => tsplus_module_3.flatMap(_ => tsplus_module_3.map(_ => _[0])(tsplus_module_2.encaseMaybeInEffect_(tsplus_module_5.ChunkToNonEmptyReadonlyArray((f.collect ? tsplus_module_4.filterMap(f.collect)(_) : _)), () => new NotFoundError(self.itemType, JSON.stringify(f.filter)))))(tsplus_module_3.map(_ => _.map(_ => self.utils.parse(_)))(tsplus_module_3.flatMap(items => tsplus_module_3.map(({ set }) => items.map(_ => self.utils.mapReverse(_, set)))(tsplus_module_3.service(ContextMap)))((f.filter ? self.utils.filter(f.filter, { limit: 1 }) : self.utils.all)))))(map);
|
|
87
87
|
}
|
|
88
88
|
/**
|
|
89
89
|
* @tsplus fluent Repository query
|
|
@@ -107,7 +107,7 @@ map) {
|
|
|
107
107
|
function queryAndSavePureEffect_1(self,
|
|
108
108
|
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
109
109
|
map) {
|
|
110
|
-
return (pure) => tsplus_module_6.untraced(restore => tsplus_module_3.flatMap(
|
|
110
|
+
return (pure) => tsplus_module_6.untraced(restore => tsplus_module_3.flatMap(restore(_ => saveManyWithPure_1(self, _, pure)))(queryEffect_1(self, map)));
|
|
111
111
|
}
|
|
112
112
|
/**
|
|
113
113
|
* @tsplus fluent Repository queryAndSavePure
|
|
@@ -127,7 +127,7 @@ export function saveManyWithPure(self) {
|
|
|
127
127
|
* @tsplus fluent Repository byIdAndSaveWithPure
|
|
128
128
|
*/
|
|
129
129
|
function byIdAndSaveWithPure_1(self, id) {
|
|
130
|
-
return (pure) => tsplus_module_3.flatMap(
|
|
130
|
+
return (pure) => tsplus_module_3.flatMap(item => saveWithPure_1(self, item, pure))(get_1(self, id));
|
|
131
131
|
}
|
|
132
132
|
/**
|
|
133
133
|
* NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
|
|
@@ -146,10 +146,10 @@ function saveManyWithPure_1(self, items, pure) {
|
|
|
146
146
|
* @tsplus fluent Repository saveWithPure_
|
|
147
147
|
*/
|
|
148
148
|
function saveWithPure_1(self, item, pure) {
|
|
149
|
-
return saveAllWithEffectInt(self, tsplus_module_3.map(
|
|
149
|
+
return saveAllWithEffectInt(self, tsplus_module_3.map(([item, events, a]) => [[item], events, a])(tsplus_module_1.runTerm(pure, item)));
|
|
150
150
|
}
|
|
151
151
|
export function saveAllWithEffectInt(self, gen) {
|
|
152
|
-
return tsplus_module_6.untraced(restore => tsplus_module_3.flatMap(
|
|
152
|
+
return tsplus_module_6.untraced(restore => tsplus_module_3.flatMap(([items, events, a]) => tsplus_module_3.map(() => a)(restore(() => self.saveAndPublish(items, events))()))(gen));
|
|
153
153
|
}
|
|
154
154
|
/**
|
|
155
155
|
* @tsplus fluent Repository queryAndSavePureEffectBatched
|
|
@@ -157,7 +157,7 @@ export function saveAllWithEffectInt(self, gen) {
|
|
|
157
157
|
function queryAndSavePureEffectBatched_1(self,
|
|
158
158
|
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
159
159
|
map, batchSize = 100) {
|
|
160
|
-
return (pure) => tsplus_module_3.flatMap(
|
|
160
|
+
return (pure) => tsplus_module_3.flatMap(_ => saveManyWithPureBatched_1(self, _, pure, batchSize))(queryEffect_1(self, map));
|
|
161
161
|
}
|
|
162
162
|
/**
|
|
163
163
|
* @tsplus fluent Repository queryAndSavePureBatched
|
|
@@ -202,10 +202,10 @@ export function makeOneDSL() {
|
|
|
202
202
|
export function makeDSL() {
|
|
203
203
|
const dsl = AnyPureDSL;
|
|
204
204
|
function modify(pure) {
|
|
205
|
-
return tsplus_module_3.flatMap(
|
|
205
|
+
return tsplus_module_3.flatMap(items => pure(items, dsl))(dsl.get);
|
|
206
206
|
}
|
|
207
207
|
function update(pure) {
|
|
208
|
-
return tsplus_module_3.flatMap(
|
|
208
|
+
return tsplus_module_3.flatMap(items => tsplus_module_3.tap(dsl.set)(pure(items, dsl.log)))(dsl.get);
|
|
209
209
|
}
|
|
210
210
|
function withDSL(pure) {
|
|
211
211
|
return pure(AnyPureDSL);
|
|
@@ -236,4 +236,4 @@ export function save(self) {
|
|
|
236
236
|
export function saveWithEvents(self) {
|
|
237
237
|
return (events) => (...items) => self.saveAndPublish(items, events);
|
|
238
238
|
}
|
|
239
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL19zcmMvc2VydmljZXMvUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OzthQXNEZ0IsR0FBRzthQXVFSCxhQUFhO2FBeUNiLFdBQVc7YUE4QlgsY0FBYzthQXVFZCxzQkFBc0I7YUF3RHRCLG1CQUFtQjthQStCbkIsaUJBQWlCO2FBeUJqQixhQUFhO2FBZ0RiLDZCQUE2QjthQXdEN0Isd0JBQXdCO0FBaGV4QyxPQUFxQiwwQkFBMEIsQ0FBQTtBQUcvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRTVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQXFDakQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUEyQjtJQUNoRCxHQUFHLEVBQUUscUJBQVU7SUFDZixHQUFHLHFCQUFVO0lBQ2IsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFVLEVBQUUsRUFBRSxDQUFDLHdCQUFhLEdBQUcsQ0FBQztDQUMxQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxlQU9FLElBQTBDLEVBQzFDLEVBQU07SUFFTixPQUFPLHdCQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQ0FBQSxDQUFDLEVBQWdCLEdBQUcsRUFBRSxDQUFDLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ2pHLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxNQUFNLENBTXBCLElBQTBDLEVBQUUsTUFBb0I7SUFDaEUsT0FBTyxvQkFBQSxJQUFJLENBQUMsR0FBRyxFQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsdUJBQUEsQ0FBQyxFQUFRLE1BQU0sQ0FBQyxDQUFDLENBQUE7QUFDNUMsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxV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
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL19zcmMvc2VydmljZXMvUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OzthQXNEZ0IsR0FBRzthQXVFSCxhQUFhO2FBeUNiLFdBQVc7YUE4QlgsY0FBYzthQXVFZCxzQkFBc0I7YUF3RHRCLG1CQUFtQjthQStCbkIsaUJBQWlCO2FBeUJqQixhQUFhO2FBZ0RiLDZCQUE2QjthQXdEN0Isd0JBQXdCO0FBaGV4QyxPQUFxQiwwQkFBMEIsQ0FBQTtBQUcvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRTVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQXFDakQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUEyQjtJQUNoRCxHQUFHLEVBQUUscUJBQVU7SUFDZixHQUFHLHFCQUFVO0lBQ2IsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFVLEVBQUUsRUFBRSxDQUFDLHdCQUFhLEdBQUcsQ0FBQztDQUMxQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxlQU9FLElBQTBDLEVBQzFDLEVBQU07SUFFTixPQUFPLHdCQUFzQixDQUFDLENBQUMsRUFBRSxDQUFDLHFDQUFBLENBQUMsRUFBZ0IsR0FBRyxFQUFFLENBQUMsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUF2RixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUEyRSxDQUFBO0FBQ2pHLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxNQUFNLENBTXBCLElBQTBDLEVBQUUsTUFBb0I7SUFDaEUsT0FBTyxvQkFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLHVCQUFTLE1BQU0sRUFBZixDQUFDLENBQWUsRUFBbEMsSUFBSSxDQUFDLEdBQUcsQ0FBMkIsQ0FBQTtBQUM1QyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxN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
|