@effect-app/infra 0.19.0 → 0.20.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 +25 -0
- package/_cjs/_ext/Array.cjs +2 -3
- package/_cjs/_ext/Array.cjs.map +1 -1
- package/_cjs/api/codec.cjs +5 -4
- package/_cjs/api/codec.cjs.map +1 -1
- package/_cjs/api/defaultErrorHandler.cjs.map +1 -1
- package/_cjs/api/express/schema/requestHandler.cjs +27 -27
- package/_cjs/api/express/schema/requestHandler.cjs.map +1 -1
- package/_cjs/api/express/schema/routing.cjs +8 -7
- package/_cjs/api/express/schema/routing.cjs.map +1 -1
- package/_cjs/api/routing.cjs +28 -28
- package/_cjs/api/routing.cjs.map +1 -1
- package/_cjs/errorReporter.cjs +2 -1
- package/_cjs/errorReporter.cjs.map +1 -1
- package/_cjs/filter/{types/index.cjs → types.cjs} +5 -16
- package/_cjs/filter/types.cjs.map +1 -0
- package/_cjs/services/Emailer/Sendgrid.cjs +7 -6
- package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -1
- package/_cjs/services/Operations/live.cjs +25 -25
- package/_cjs/services/Operations/live.cjs.map +1 -1
- package/_cjs/services/QueueMaker/errors.cjs +6 -6
- package/_cjs/services/QueueMaker/errors.cjs.map +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs +19 -19
- package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs +10 -9
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
- package/_cjs/services/Repository.cjs +15 -15
- package/_cjs/services/Repository.cjs.map +1 -1
- package/_cjs/services/Store/Cosmos.cjs +15 -15
- package/_cjs/services/Store/Cosmos.cjs.map +1 -1
- package/_cjs/services/Store/Disk.cjs +7 -6
- package/_cjs/services/Store/Disk.cjs.map +1 -1
- package/_cjs/services/Store/Memory.cjs +16 -15
- package/_cjs/services/Store/Memory.cjs.map +1 -1
- package/_cjs/services/Store/Redis.cjs +8 -7
- package/_cjs/services/Store/Redis.cjs.map +1 -1
- package/_cjs/services/Store/index.cjs +6 -6
- package/_cjs/services/Store/index.cjs.map +1 -1
- package/_cjs/services/Store/service.cjs.map +1 -1
- package/_cjs/services/simpledb/diskdb.cjs +2 -1
- package/_cjs/services/simpledb/diskdb.cjs.map +1 -1
- package/_cjs/services/simpledb/memdb.cjs +1 -1
- package/_cjs/services/simpledb/memdb.cjs.map +1 -1
- package/_cjs/services/simpledb/redisdb.cjs +1 -1
- package/_cjs/services/simpledb/redisdb.cjs.map +1 -1
- package/_cjs/services/simpledb/shared.cjs +4 -3
- package/_cjs/services/simpledb/shared.cjs.map +1 -1
- package/_cjs/services/simpledb/simpledb.cjs +1 -1
- package/_cjs/services/simpledb/simpledb.cjs.map +1 -1
- package/_src/api/codec.ts +1 -1
- package/_src/api/defaultErrorHandler.ts +7 -7
- package/_src/api/express/routing.ts.bak +12 -12
- package/_src/api/express/schema/requestHandler.ts +1 -1
- package/_src/api/routing.ts +7 -7
- package/_src/filter/types.ts +6 -0
- package/_src/services/Emailer/Sendgrid.ts +1 -1
- package/_src/services/Operations/live.ts +7 -7
- package/_src/services/QueueMaker/memQueue.ts +2 -2
- package/_src/services/Store/Cosmos.ts +4 -4
- package/_src/services/Store/Disk.ts +1 -1
- package/_src/services/Store/service.ts +1 -1
- package/_src/services/simpledb/shared.ts +2 -2
- package/_src/services/simpledb/simpledb.ts +1 -1
- package/dist/_ext/Array.js +3 -4
- package/dist/api/codec.js +6 -5
- package/dist/api/defaultErrorHandler.js +1 -1
- package/dist/api/express/schema/requestHandler.js +33 -33
- package/dist/api/express/schema/routing.js +9 -8
- package/dist/api/routing.js +29 -29
- package/dist/errorReporter.js +3 -2
- package/dist/filter/types.d.ts +5 -0
- package/dist/filter/types.d.ts.map +1 -0
- package/dist/filter/types.js +6 -0
- package/dist/services/Emailer/Sendgrid.d.ts +12 -0
- package/dist/services/Emailer/Sendgrid.d.ts.map +1 -1
- package/dist/services/Emailer/Sendgrid.js +8 -7
- package/dist/services/Operations/live.js +31 -31
- package/dist/services/QueueMaker/errors.js +7 -7
- package/dist/services/QueueMaker/memQueue.js +18 -18
- package/dist/services/QueueMaker/sbqueue.js +10 -9
- package/dist/services/Repository.js +16 -16
- package/dist/services/Store/Cosmos.js +12 -12
- package/dist/services/Store/Disk.js +8 -7
- package/dist/services/Store/Memory.js +18 -17
- package/dist/services/Store/Redis.js +9 -8
- package/dist/services/Store/index.js +7 -7
- package/dist/services/Store/service.js +1 -1
- package/dist/services/simpledb/diskdb.js +3 -2
- package/dist/services/simpledb/memdb.js +2 -2
- package/dist/services/simpledb/redisdb.js +2 -2
- package/dist/services/simpledb/shared.js +5 -4
- package/dist/services/simpledb/simpledb.js +2 -2
- package/package.json +20 -20
- package/_cjs/filter/types/index.cjs.map +0 -1
- package/_src/filter/types/index.ts +0 -5
- package/dist/filter/types/index.d.ts +0 -6
- package/dist/filter/types/index.d.ts.map +0 -1
- package/dist/filter/types/index.js +0 -6
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
var _errors = require("./errors.cjs");
|
|
6
|
+
var _errors = require("./types/errors.cjs");
|
|
7
7
|
Object.keys(_errors).forEach(function (key) {
|
|
8
8
|
if (key === "default" || key === "__esModule") return;
|
|
9
9
|
if (key in exports && exports[key] === _errors[key]) return;
|
|
@@ -14,7 +14,7 @@ Object.keys(_errors).forEach(function (key) {
|
|
|
14
14
|
}
|
|
15
15
|
});
|
|
16
16
|
});
|
|
17
|
-
var _fields = require("./fields.cjs");
|
|
17
|
+
var _fields = require("./types/fields.cjs");
|
|
18
18
|
Object.keys(_fields).forEach(function (key) {
|
|
19
19
|
if (key === "default" || key === "__esModule") return;
|
|
20
20
|
if (key in exports && exports[key] === _fields[key]) return;
|
|
@@ -25,18 +25,7 @@ Object.keys(_fields).forEach(function (key) {
|
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
27
|
});
|
|
28
|
-
var
|
|
29
|
-
Object.keys(_index).forEach(function (key) {
|
|
30
|
-
if (key === "default" || key === "__esModule") return;
|
|
31
|
-
if (key in exports && exports[key] === _index[key]) return;
|
|
32
|
-
Object.defineProperty(exports, key, {
|
|
33
|
-
enumerable: true,
|
|
34
|
-
get: function () {
|
|
35
|
-
return _index[key];
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
var _utils = require("./utils.cjs");
|
|
28
|
+
var _utils = require("./types/utils.cjs");
|
|
40
29
|
Object.keys(_utils).forEach(function (key) {
|
|
41
30
|
if (key === "default" || key === "__esModule") return;
|
|
42
31
|
if (key in exports && exports[key] === _utils[key]) return;
|
|
@@ -47,7 +36,7 @@ Object.keys(_utils).forEach(function (key) {
|
|
|
47
36
|
}
|
|
48
37
|
});
|
|
49
38
|
});
|
|
50
|
-
var _validator = require("./validator.cjs");
|
|
39
|
+
var _validator = require("./types/validator.cjs");
|
|
51
40
|
Object.keys(_validator).forEach(function (key) {
|
|
52
41
|
if (key === "default" || key === "__esModule") return;
|
|
53
42
|
if (key in exports && exports[key] === _validator[key]) return;
|
|
@@ -58,4 +47,4 @@ Object.keys(_validator).forEach(function (key) {
|
|
|
58
47
|
}
|
|
59
48
|
});
|
|
60
49
|
});
|
|
61
|
-
//# sourceMappingURL=
|
|
50
|
+
//# sourceMappingURL=types.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.cjs","mappings":";;;;;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA","names":[],"sourceRoot":"","sources":["../../_src/filter/types.ts"],"sourcesContent":[null]}
|
|
@@ -8,9 +8,10 @@ exports.isTestAddress = isTestAddress;
|
|
|
8
8
|
exports.renderMessage = renderMessage;
|
|
9
9
|
var tsplus_module_1 = _interopRequireWildcard(require("@effect/io/Config/Secret"));
|
|
10
10
|
var tsplus_module_2 = _interopRequireWildcard(require("@effect/io/Effect"));
|
|
11
|
-
var tsplus_module_3 = _interopRequireWildcard(require("@
|
|
12
|
-
var tsplus_module_4 = _interopRequireWildcard(require("@
|
|
13
|
-
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/core/
|
|
11
|
+
var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/core/Effect"));
|
|
12
|
+
var tsplus_module_4 = _interopRequireWildcard(require("@fp-ts/core/typeclass/Equivalence"));
|
|
13
|
+
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/core/_ext/ord.ext"));
|
|
14
|
+
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/core/Array"));
|
|
14
15
|
var _mail = _interopRequireDefault(require("@sendgrid/mail"));
|
|
15
16
|
var _util = require("util");
|
|
16
17
|
var _service = require("./service.cjs");
|
|
@@ -38,7 +39,7 @@ const makeLiveSendgrid = ({
|
|
|
38
39
|
subject: `${subjectPrefix}${renderedMsg_.subject}`
|
|
39
40
|
};
|
|
40
41
|
yield* $(tsplus_module_2.logAnnotate(tsplus_module_2.logDebug("Sending email"), "msg", (0, _util.inspect)(renderedMsg, false, 5)));
|
|
41
|
-
const ret = yield* $(tsplus_module_2.async(cb => void _mail.default.send(renderedMsg, false, (err, result) => err ? cb(tsplus_module_2.fail(err)) : cb(
|
|
42
|
+
const ret = yield* $(tsplus_module_2.async(cb => void _mail.default.send(renderedMsg, false, (err, result) => err ? cb(tsplus_module_2.fail(err)) : cb(tsplus_module_3.effectSync(() => result)))));
|
|
42
43
|
// const event = {
|
|
43
44
|
// name: "EmailSent",
|
|
44
45
|
// properties: {
|
|
@@ -89,11 +90,11 @@ function renderFake(addr, makeId) {
|
|
|
89
90
|
email: `test+${makeId()}@nomizz.com`
|
|
90
91
|
};
|
|
91
92
|
}
|
|
92
|
-
const eq =
|
|
93
|
+
const eq = tsplus_module_4.contramap(to => typeof to === "string" ? to.toLowerCase() : to.email.toLowerCase())(tsplus_module_4.string);
|
|
93
94
|
// TODO: should just not add any already added email address
|
|
94
95
|
// https://stackoverflow.com/a/53603076/11595834
|
|
95
96
|
function renderFakeIfTest(addr, makeId) {
|
|
96
|
-
return Array.isArray(addr) ?
|
|
97
|
+
return Array.isArray(addr) ? tsplus_module_6.iterableToArray(tsplus_module_5.uniqArray(eq)(addr.map(x => isTestAddress(x) ? renderFake(x, makeId) : x))) : isTestAddress(addr) ? renderFake(addr, makeId) : addr;
|
|
97
98
|
}
|
|
98
99
|
function renderMailData(md) {
|
|
99
100
|
if (Array.isArray(md)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sendgrid.cjs","mappings":"
|
|
1
|
+
{"version":3,"file":"Sendgrid.cjs","mappings":"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","names":["makeLiveSendgrid","apiKey","defaultFrom","realMail","subjectPrefix","tsplus_module_2","sgMail","setApiKey","sendMail","msg_","$","msg","from","render","renderMessage","renderedMsg_","renderedMsg","subject","ret","cb","send","err","result","tsplus_module_3","LiveSendgrid","config","Emailer","forceFake","i","makeId","to","renderFake","cc","bcc","renderFakeIfTest","isTestAddress","toLowerCase","endsWith","email","addr","name","renderMailData","eq","tsplus_module_4","Array","isArray","tsplus_module_6","tsplus_module_5","map","x","md","join"],"sourceRoot":"","sources":["../../../_src/services/Emailer/Sendgrid.ts"],"sourcesContent":[null]}
|
|
@@ -4,18 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.Live = void 0;
|
|
7
|
-
var tsplus_module_1 = _interopRequireWildcard(require("@effect/
|
|
7
|
+
var tsplus_module_1 = _interopRequireWildcard(require("@effect-app/core/Effect"));
|
|
8
8
|
var tsplus_module_2 = _interopRequireWildcard(require("@effect-app/prelude/_ext/date"));
|
|
9
9
|
var tsplus_module_3 = _interopRequireWildcard(require("@fp-ts/core/Option"));
|
|
10
10
|
var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/core/Array"));
|
|
11
|
-
var tsplus_module_5 = _interopRequireWildcard(require("@effect/io/
|
|
12
|
-
var tsplus_module_6 = _interopRequireWildcard(require("@effect/io/
|
|
13
|
-
var tsplus_module_7 = _interopRequireWildcard(require("@effect
|
|
14
|
-
var tsplus_module_8 = _interopRequireWildcard(require("@effect-app/
|
|
15
|
-
var tsplus_module_9 = _interopRequireWildcard(require("@effect-app/
|
|
16
|
-
var tsplus_module_10 = _interopRequireWildcard(require("@effect-app/prelude/
|
|
17
|
-
var tsplus_module_11 = _interopRequireWildcard(require("@
|
|
18
|
-
var tsplus_module_12 = _interopRequireWildcard(require("@
|
|
11
|
+
var tsplus_module_5 = _interopRequireWildcard(require("@effect/io/Effect"));
|
|
12
|
+
var tsplus_module_6 = _interopRequireWildcard(require("@effect/io/Exit"));
|
|
13
|
+
var tsplus_module_7 = _interopRequireWildcard(require("@effect/io/Cause"));
|
|
14
|
+
var tsplus_module_8 = _interopRequireWildcard(require("@effect-app/prelude/schema"));
|
|
15
|
+
var tsplus_module_9 = _interopRequireWildcard(require("@effect-app/core/Option"));
|
|
16
|
+
var tsplus_module_10 = _interopRequireWildcard(require("@effect-app/prelude/_ext/misc"));
|
|
17
|
+
var tsplus_module_11 = _interopRequireWildcard(require("@effect-app/prelude/service"));
|
|
18
|
+
var tsplus_module_12 = _interopRequireWildcard(require("@fp-ts/data/Duration"));
|
|
19
19
|
var tsplus_module_13 = _interopRequireWildcard(require("@effect/io/Layer"));
|
|
20
20
|
var _reportError = require("@effect-app/infra/api/reportError");
|
|
21
21
|
var _errorReporter = require("@effect-app/infra/errorReporter");
|
|
@@ -24,10 +24,10 @@ var _service2 = require("./service.cjs");
|
|
|
24
24
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
25
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
26
26
|
const reportAppError = (0, _errorReporter.reportError)(cause => new _reportError.RequestException(cause));
|
|
27
|
-
const make =
|
|
27
|
+
const make = tsplus_module_5.sync(() => {
|
|
28
28
|
const ops = new Map();
|
|
29
|
-
const makeOp = tsplus_module_1.
|
|
30
|
-
const cleanup =
|
|
29
|
+
const makeOp = tsplus_module_1.effectSync(() => _Operations.OperationId.make());
|
|
30
|
+
const cleanup = tsplus_module_5.sync(() => {
|
|
31
31
|
const before = tsplus_module_2.DateSubHours(new Date(), 1);
|
|
32
32
|
tsplus_module_4.ext_itToChunk(ops.entries()).forEach(([id, op]) => {
|
|
33
33
|
const lastChanged = tsplus_module_3.getOrElse(() => op.createdAt)(tsplus_module_3.fromNullable(op.updatedAt));
|
|
@@ -37,31 +37,31 @@ const make = tsplus_module_1.sync(() => {
|
|
|
37
37
|
});
|
|
38
38
|
});
|
|
39
39
|
function addOp(id) {
|
|
40
|
-
return
|
|
40
|
+
return tsplus_module_5.sync(() => {
|
|
41
41
|
ops.set(id, new _Operations.Operation({
|
|
42
42
|
id
|
|
43
43
|
}));
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
46
|
function findOp(id) {
|
|
47
|
-
return tsplus_module_1.
|
|
47
|
+
return tsplus_module_1.effectSync(() => tsplus_module_3.fromNullable(ops.get(id)));
|
|
48
48
|
}
|
|
49
49
|
function finishOp(id, exit) {
|
|
50
|
-
return
|
|
50
|
+
return tsplus_module_5.flatMap(findOp(id), _ => tsplus_module_5.sync(() => {
|
|
51
51
|
if (tsplus_module_3.isNone(_)) {
|
|
52
52
|
throw new Error("Not found");
|
|
53
53
|
}
|
|
54
54
|
ops.set(id, {
|
|
55
55
|
..._.value,
|
|
56
56
|
updatedAt: new Date(),
|
|
57
|
-
result:
|
|
58
|
-
message:
|
|
57
|
+
result: tsplus_module_6.isSuccess(exit) ? new _Operations.Success({}) : new _Operations.Failure({
|
|
58
|
+
message: tsplus_module_7.isInterrupted(exit.cause) ? tsplus_module_8.LongString("Interrupted") : tsplus_module_7.isDie(exit.cause) ? tsplus_module_8.LongString("Unknown error") : tsplus_module_9.getOrUndefined(tsplus_module_3.flatMap(_ => typeof _ === "object" && _ !== null && "message" in _ && tsplus_module_8.LongString.Guard(_.message) ? tsplus_module_3.some(_.message) : tsplus_module_9.none)(tsplus_module_7.failureOption(exit.cause))) ?? null
|
|
59
59
|
})
|
|
60
60
|
});
|
|
61
61
|
}));
|
|
62
62
|
}
|
|
63
63
|
function update(id, progress) {
|
|
64
|
-
return
|
|
64
|
+
return tsplus_module_5.flatMap(findOp(id), _ => tsplus_module_5.sync(() => {
|
|
65
65
|
if (tsplus_module_3.isNone(_)) {
|
|
66
66
|
throw new Error("Not found");
|
|
67
67
|
}
|
|
@@ -72,23 +72,23 @@ const make = tsplus_module_1.sync(() => {
|
|
|
72
72
|
});
|
|
73
73
|
}));
|
|
74
74
|
}
|
|
75
|
-
return
|
|
75
|
+
return tsplus_module_11.make(_service2.Operations, {
|
|
76
76
|
cleanup,
|
|
77
|
-
register:
|
|
77
|
+
register: tsplus_module_5.tap(makeOp, id => tsplus_module_5.zipRight(tsplus_module_5.acquireRelease(addOp(id), (_, exit) => finishOp(id, exit)))(tsplus_module_10.logAnnotateScoped("operationId", id))),
|
|
78
78
|
find: findOp,
|
|
79
79
|
update
|
|
80
80
|
});
|
|
81
81
|
});
|
|
82
|
-
const cleanupLoop =
|
|
83
|
-
if (
|
|
84
|
-
return
|
|
82
|
+
const cleanupLoop = tsplus_module_5.forkScoped(tsplus_module_5.forever(tsplus_module_5.delay(tsplus_module_5.flatMap(tsplus_module_5.exit(tsplus_module_5.serviceWithEffect(_service2.Operations, _ => _.cleanup)), _ => {
|
|
83
|
+
if (tsplus_module_6.isSuccess(_)) {
|
|
84
|
+
return tsplus_module_1.unit;
|
|
85
85
|
} else {
|
|
86
86
|
return reportAppError(_.cause);
|
|
87
87
|
}
|
|
88
|
-
}),
|
|
88
|
+
}), tsplus_module_12.minutes(1))));
|
|
89
89
|
/**
|
|
90
90
|
* @tsplus static Operations.Ops Live
|
|
91
91
|
*/
|
|
92
|
-
const Live = tsplus_module_13.provideMerge(
|
|
92
|
+
const Live = tsplus_module_13.provideMerge(tsplus_module_1.toScopedDiscardLayer(cleanupLoop))(tsplus_module_5.toLayer(make, _service2.Operations));
|
|
93
93
|
exports.Live = Live;
|
|
94
94
|
//# sourceMappingURL=live.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.cjs","mappings":";;;;;;;;;;;;;;;;;;;AAAA;AACA;AAEA;AACA;AAAyC;AAAA;AAEzC,MAAMA,cAAc,GAAG,8BAAW,EAACC,KAAK,IAAI,IAAIC,6BAAgB,CAACD,KAAK,CAAC,CAAC;AAExE,MAAME,IAAI,GAAGC,
|
|
1
|
+
{"version":3,"file":"live.cjs","mappings":"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","names":["reportAppError","cause","RequestException","make","tsplus_module_5","ops","Map","makeOp","tsplus_module_1","OperationId","cleanup","before","tsplus_module_2","Date","tsplus_module_4","entries","forEach","id","op","lastChanged","tsplus_module_3","createdAt","updatedAt","delete","addOp","set","Operation","findOp","get","finishOp","exit","_","Error","value","result","tsplus_module_6","Success","Failure","message","tsplus_module_7","tsplus_module_8","tsplus_module_9","Guard","update","progress","tsplus_module_11","register","tsplus_module_10","find","cleanupLoop","tsplus_module_12","Live","Operations"],"sourceRoot":"","sources":["../../../_src/services/Operations/live.ts"],"sourcesContent":[null]}
|
|
@@ -7,9 +7,9 @@ exports.MessageException = exports.FatalQueueException = void 0;
|
|
|
7
7
|
exports.forkDaemonReportQueue = forkDaemonReportQueue;
|
|
8
8
|
exports.reportFailure = reportFailure;
|
|
9
9
|
exports.reportQueueError = exports.reportFatalQueueError = void 0;
|
|
10
|
-
var tsplus_module_1 = _interopRequireWildcard(require("@effect/
|
|
10
|
+
var tsplus_module_1 = _interopRequireWildcard(require("@effect-app/core/Effect"));
|
|
11
11
|
var tsplus_module_2 = _interopRequireWildcard(require("@effect-app/infra/RequestContext"));
|
|
12
|
-
var tsplus_module_3 = _interopRequireWildcard(require("@effect
|
|
12
|
+
var tsplus_module_3 = _interopRequireWildcard(require("@effect/io/Effect"));
|
|
13
13
|
var _errorReporter = require("@effect-app/infra/errorReporter");
|
|
14
14
|
var _errors = require("@effect-app/infra/errors");
|
|
15
15
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -27,7 +27,7 @@ class FatalQueueException extends _errors.CauseException {
|
|
|
27
27
|
}
|
|
28
28
|
exports.FatalQueueException = FatalQueueException;
|
|
29
29
|
const reportQueueError_ = (0, _errorReporter.reportError)(cause => new MessageException(cause));
|
|
30
|
-
const reportQueueError = (cause, context) =>
|
|
30
|
+
const reportQueueError = (cause, context) => tsplus_module_3.serviceWithEffect(tsplus_module_2.tag, requestContext => tsplus_module_1.effectSync(() => reportQueueError_(cause, {
|
|
31
31
|
requestContext,
|
|
32
32
|
...context
|
|
33
33
|
})));
|
|
@@ -42,13 +42,13 @@ const reportQueueError = (cause, context) => tsplus_module_1.serviceWithEffect(t
|
|
|
42
42
|
*/
|
|
43
43
|
exports.reportQueueError = reportQueueError;
|
|
44
44
|
function forkDaemonReportQueue(self) {
|
|
45
|
-
return
|
|
45
|
+
return tsplus_module_3.daemonChildren(tsplus_module_3.fork(tsplus_module_3.tapErrorCause(self, reportQueueError)));
|
|
46
46
|
}
|
|
47
47
|
const reportFatalQueueError = (0, _errorReporter.reportError)(cause => new FatalQueueException(cause));
|
|
48
48
|
exports.reportFatalQueueError = reportFatalQueueError;
|
|
49
49
|
function reportFailure(name) {
|
|
50
|
-
return self =>
|
|
50
|
+
return self => tsplus_module_3.tap(tsplus_module_3.exit(self), exit => exit._tag === "Failure" ? reportFatalQueueError(exit.cause, {
|
|
51
51
|
name
|
|
52
|
-
}) :
|
|
52
|
+
}) : tsplus_module_1.unit);
|
|
53
53
|
}
|
|
54
54
|
//# sourceMappingURL=errors.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.cjs","mappings":";;;;;;;;;;;;AAAA;AACA;AAAyD;AAAA;AAGnD,MAAOA,gBAAoB,SAAQC,sBAAiB;EACxDC,YAAYC,KAAe;IACzB,KAAK,CAACA,KAAK,EAAE,SAAS,CAAC;EACzB;;AACD;AAEK,MAAOC,mBAAuB,SAAQH,sBAAiB;EAC3DC,YAAYC,KAAe;IACzB,KAAK,CAACA,KAAK,EAAE,SAAS,CAAC;EACzB;;AACD;AAED,MAAME,iBAAiB,GAAG,8BAAW,EAACF,KAAK,IAAI,IAAIH,gBAAgB,CAACG,KAAK,CAAC,CAAC;AAEpE,MAAMG,gBAAgB,GAAG,CAACH,KAAqB,EAAEI,OAA6C,KACnGC,uDAAoCC,cAAc,
|
|
1
|
+
{"version":3,"file":"errors.cjs","mappings":";;;;;;;;;;;;AAAA;AACA;AAAyD;AAAA;AAGnD,MAAOA,gBAAoB,SAAQC,sBAAiB;EACxDC,YAAYC,KAAe;IACzB,KAAK,CAACA,KAAK,EAAE,SAAS,CAAC;EACzB;;AACD;AAEK,MAAOC,mBAAuB,SAAQH,sBAAiB;EAC3DC,YAAYC,KAAe;IACzB,KAAK,CAACA,KAAK,EAAE,SAAS,CAAC;EACzB;;AACD;AAED,MAAME,iBAAiB,GAAG,8BAAW,EAACF,KAAK,IAAI,IAAIH,gBAAgB,CAACG,KAAK,CAAC,CAAC;AAEpE,MAAMG,gBAAgB,GAAG,CAACH,KAAqB,EAAEI,OAA6C,KACnGC,uDAAoCC,cAAc,IAChDC,iCAAOL,iBAAiB,CAACF,KAAK,EAAE;EAAEM,cAAc;EAAE,GAAGF;AAAO,CAAE,CAAC,CAAC,CACjE;AAEH;;;;;;;;;AAAA;AASM,SAAUI,qBAAqB,CAAUC,IAAqB;EAClE,2DAAOJ,kCAAI,EAAeF,gBAAgB,CAAC;AAC7C;AAEO,MAAMO,qBAAqB,GAAG,8BAAW,EAC9CV,KAAK,IAAI,IAAIC,mBAAmB,CAACD,KAAK,CAAC,CACxC;AAAA;AAEK,SAAUW,aAAa,CAACC,IAAY;EACxC,OAAiBH,IAAqB,IACpCJ,6CAAI,GAAUQ,IAAI,IAChBA,IAAI,CAACC,IAAI,KAAK,SAAS,GACnBJ,qBAAqB,CAACG,IAAI,CAACb,KAAK,EAAE;IAAEY;EAAI,CAAE,CAAC,GAC5CL,oBAAY,CAChB;AACL","names":["MessageException","CauseException","constructor","cause","FatalQueueException","reportQueueError_","reportQueueError","context","tsplus_module_3","requestContext","tsplus_module_1","forkDaemonReportQueue","self","reportFatalQueueError","reportFailure","name","exit","_tag"],"sourceRoot":"","sources":["../../../_src/services/QueueMaker/errors.ts"],"sourcesContent":[null]}
|
|
@@ -7,14 +7,14 @@ exports.makeMemQueue = makeMemQueue;
|
|
|
7
7
|
exports.silence = silence;
|
|
8
8
|
var tsplus_module_1 = _interopRequireWildcard(require("@effect/io/Effect"));
|
|
9
9
|
var tsplus_module_2 = _interopRequireWildcard(require("@effect-app/infra/RequestContext"));
|
|
10
|
-
var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/core/
|
|
11
|
-
var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/
|
|
12
|
-
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/
|
|
13
|
-
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/prelude/
|
|
14
|
-
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/prelude/
|
|
15
|
-
var tsplus_module_8 = _interopRequireWildcard(require("@effect-app/
|
|
16
|
-
var tsplus_module_9 = _interopRequireWildcard(require("@effect/
|
|
17
|
-
var tsplus_module_10 = _interopRequireWildcard(require("@effect
|
|
10
|
+
var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/core/Effect"));
|
|
11
|
+
var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/core/_ext/Iterable"));
|
|
12
|
+
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/infra/services/QueueMaker/errors"));
|
|
13
|
+
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/prelude/utils"));
|
|
14
|
+
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/prelude/_ext/misc"));
|
|
15
|
+
var tsplus_module_8 = _interopRequireWildcard(require("@effect-app/prelude/schema"));
|
|
16
|
+
var tsplus_module_9 = _interopRequireWildcard(require("@effect-app/infra/api/setupRequest"));
|
|
17
|
+
var tsplus_module_10 = _interopRequireWildcard(require("@effect/io/Cause"));
|
|
18
18
|
var tsplus_module_11 = _interopRequireWildcard(require("@effect/io/Exit"));
|
|
19
19
|
var _memQueue = require("@effect-app/infra-adapters/memQueue");
|
|
20
20
|
var _errors2 = require("./errors.cjs");
|
|
@@ -31,9 +31,9 @@ function makeMemQueue(queueName, queueDrainName, encoder, makeHandleEvent, provi
|
|
|
31
31
|
return {
|
|
32
32
|
publish: (...messages) => tsplus_module_1.gen(function* ($) {
|
|
33
33
|
const requestContext = yield* $(tsplus_module_1.service(tsplus_module_2.tag));
|
|
34
|
-
return yield* $(
|
|
34
|
+
return yield* $(tsplus_module_5.forkDaemonReportQueue(tsplus_module_4.ext_forEach(messages, m => tsplus_module_1.asUnit(
|
|
35
35
|
// we JSON encode, 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(tsplus_module_3.effectSync(() => JSON.stringify(encoder({
|
|
37
37
|
body: m,
|
|
38
38
|
meta: requestContext
|
|
39
39
|
})))
|
|
@@ -44,18 +44,18 @@ function makeMemQueue(queueName, queueDrainName, encoder, makeHandleEvent, provi
|
|
|
44
44
|
const handleEvent = yield* $(makeHandleEvent);
|
|
45
45
|
const processMessage = msg =>
|
|
46
46
|
// we JSON parse, because that is what the wire also does, and it reveals holes in e.g unknown encoders (Date->String)
|
|
47
|
-
tsplus_module_1.flatMap(tsplus_module_1.orDie(tsplus_module_1.flatMap(
|
|
47
|
+
tsplus_module_1.flatMap(tsplus_module_1.orDie(tsplus_module_1.flatMap(tsplus_module_3.effectSync(() => JSON.parse(msg)), parseDrain)), ({
|
|
48
48
|
body,
|
|
49
49
|
meta
|
|
50
50
|
}) => provideContext(tsplus_module_2.RequestContext.inherit(meta, {
|
|
51
51
|
id: body.id,
|
|
52
52
|
locale: "en",
|
|
53
|
-
name:
|
|
54
|
-
}))(tsplus_module_1.zipRight(
|
|
55
|
-
body:
|
|
56
|
-
meta:
|
|
53
|
+
name: tsplus_module_8.ReasonableString(body._tag)
|
|
54
|
+
}))(tsplus_module_1.zipRight(tsplus_module_7.logAnnotates({
|
|
55
|
+
body: tsplus_module_6.RecordPretty(tsplus_module_6.object$(body)),
|
|
56
|
+
meta: tsplus_module_6.RecordPretty(tsplus_module_6.object$(meta))
|
|
57
57
|
})(tsplus_module_1.logDebug(`$$ [${queueDrainName}] Processing incoming message`)), silence(handleEvent(body)))));
|
|
58
|
-
return yield* $(tsplus_module_1.forkScoped(
|
|
58
|
+
return yield* $(tsplus_module_1.forkScoped(tsplus_module_9.setupReq3((0, _errors2.reportFailure)("drain")(tsplus_module_1.forever(tsplus_module_1.flatMap(qReply.take(), x => tsplus_module_1.uninterruptible(processMessage(x))))), "Queue.ReceiveMessage")));
|
|
59
59
|
})
|
|
60
60
|
};
|
|
61
61
|
});
|
|
@@ -66,14 +66,14 @@ function silence(inp) {
|
|
|
66
66
|
return tsplus_module_1.flatMap(tsplus_module_1.exit(inp), result => tsplus_module_1.gen(function* ($) {
|
|
67
67
|
const requestContext = yield* $(tsplus_module_1.service(tsplus_module_2.tag));
|
|
68
68
|
return yield* $(tsplus_module_11.match(result, cause => {
|
|
69
|
-
if (
|
|
69
|
+
if (tsplus_module_10.isInterrupted(cause)) {
|
|
70
70
|
return tsplus_module_1.failCause(cause);
|
|
71
71
|
}
|
|
72
72
|
(0, _errors2.reportQueueError)(cause, {
|
|
73
73
|
requestContext
|
|
74
74
|
});
|
|
75
|
-
return
|
|
76
|
-
}, () =>
|
|
75
|
+
return tsplus_module_3.unit;
|
|
76
|
+
}, () => tsplus_module_3.unit));
|
|
77
77
|
}));
|
|
78
78
|
}
|
|
79
79
|
//# sourceMappingURL=memQueue.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memQueue.cjs","mappings":";;;;;;;;;;;;;;;;;;AAAA;AAGA;AAA6D;AAAA;AAG7D;;;AAGM,SAAUA,YAAY,CAC1BC,SAAiB,EACjBC,cAAsB,EACtBC,OAAyD,EACzDC,eAAwF,EACxFC,cAEuC,EACvCC,UAGmF;EAEnF,OAAOC,oBAAW,WAAUC,CAAC;IAC3B,MAAMC,GAAG,GAAG,OAAOD,CAAC,yBAACE,kBAAQ,EAAQ;IACrC,MAAMC,CAAC,GAAG,OAAOH,CAAC,CAACC,GAAG,CAACG,gBAAgB,CAACX,SAAS,CAAC,CAAC;IACnD,MAAMY,MAAM,GAAG,OAAOL,CAAC,CAACC,GAAG,CAACG,gBAAgB,CAACV,cAAc,CAAC,CAAC;IAE7D,OAAO;MACLY,OAAO,EAAE,CAAC,GAAGC,QAAQ,KACnBR,oBAAW,WAAUC,CAAC;QACpB,MAAMQ,cAAc,GAAG,OAAOR,CAAC,8CAA2B;QAC1D,OAAO,OAAOA,CAAC,uCACbS,oCAAQ,EAAeC,CAAC,IAAGX;QACzB;QACAA,
|
|
1
|
+
{"version":3,"file":"memQueue.cjs","mappings":";;;;;;;;;;;;;;;;;;AAAA;AAGA;AAA6D;AAAA;AAG7D;;;AAGM,SAAUA,YAAY,CAC1BC,SAAiB,EACjBC,cAAsB,EACtBC,OAAyD,EACzDC,eAAwF,EACxFC,cAEuC,EACvCC,UAGmF;EAEnF,OAAOC,oBAAW,WAAUC,CAAC;IAC3B,MAAMC,GAAG,GAAG,OAAOD,CAAC,yBAACE,kBAAQ,EAAQ;IACrC,MAAMC,CAAC,GAAG,OAAOH,CAAC,CAACC,GAAG,CAACG,gBAAgB,CAACX,SAAS,CAAC,CAAC;IACnD,MAAMY,MAAM,GAAG,OAAOL,CAAC,CAACC,GAAG,CAACG,gBAAgB,CAACV,cAAc,CAAC,CAAC;IAE7D,OAAO;MACLY,OAAO,EAAE,CAAC,GAAGC,QAAQ,KACnBR,oBAAW,WAAUC,CAAC;QACpB,MAAMQ,cAAc,GAAG,OAAOR,CAAC,8CAA2B;QAC1D,OAAO,OAAOA,CAAC,uCACbS,oCAAQ,EAAeC,CAAC,IAAGX;QACzB;QACAA,yDACEY,IAAI,CAACC,SAAS,CACZjB,OAAO,CAAC;UAAEkB,IAAI,EAAEH,CAAC;UAAEI,IAAI,EAAEN;QAAc,CAAE,CAAC,CAC3C;QAED;QAAA,EACSO,CAAC,IAAIZ,CAAC,CAACa,KAAK,CAACD,CAAC,CAAC,CAAC,CAClB,CACV,EAEF;MACH,CAAC,CAAC;MACJE,KAAK,EAAElB,oBAAW,WAAUC,CAAC;QAC3B,MAAMkB,WAAW,GAAG,OAAOlB,CAAC,CAACJ,eAAe,CAAC;QAC7C,MAAMuB,cAAc,GAAIC,GAAW;QACjC;QACArB,uGAAOY,IAAI,CAACU,KAAK,CAACD,GAAG,CAAC,CAAC,EACZtB,UAAU,CAAC,GAEX,CAAC;UAAEe,IAAI;UAAEC;QAAI,CAAE,KAMlBjB,cAAc,CACZyB,8BAAc,CAACC,OAAO,CAACT,IAAI,EAAE;UAC3BU,EAAE,EAAEX,IAAI,CAACW,EAAE;UACXC,MAAM,EAAE,IAAa;UACrBC,IAAI,EAAEC,gCAAgB,CAACd,IAAI,CAACe,IAAI;SACjC,CAAC,CACH,CAXL7B,yBAES8B,6BAAoB;UAAEhB,IAAI,uDAAEA,IAAI,EAAU;UAAEC,IAAI,uDAAEA,IAAI;QAAU,CAAE,CAAC,CAF5Ef,yBACY,OAAOL,cAAc,+BAA+B,CAAC,GAErDoC,OAAO,CAACZ,WAAW,CAACL,IAAI,CAAC,CAAC,CAAC,CASpC,CACJ;QACL,OAAO,OAAOb,CAAC,4BACb+B,0BAGS,0BAAa,EAAC,OAAO,CAAC,yBAH/BhC,8BAAM,CAACiC,IAAI,EAAE,EACFC,CAAC,IAAGlC,gCAACoB,cAAc,CAACc,CAAC,CAAC,CAAgB,CAAC,IAG1B,sBAAsB,CAAC,EAEhD;MACH,CAAC;KAC+B;EACpC,CAAC,CAAC;AACJ;AAEA;AACA;AACM,SAAUH,OAAO,CAAUI,GAAoB;EACnD,OAAOnC,gDAAG,GAAcoC,MAAM,IAC5BpC,oBAAW,WAAUC,CAAC;IACpB,MAAMQ,cAAc,GAAG,OAAOR,CAAC,8CAA2B;IAC1D,OAAO,OAAOA,CAAC,CACboC,6BAAM,EACJC,KAAK,IAAG;MACN,IAAIC,oCAAK,CAAgB,EAAE;QACzB,iCAAQD,KAAsB;;MAEhC,6BAAgB,EAACA,KAAK,EAAE;QAAE7B;MAAc,CAAE,CAAC;MAC3C;IACF,CAAC,EACD,MAAK+B,oBAAY,CAClB,CACF;EACH,CAAC,CAAC,CACH;AACH","names":["makeMemQueue","queueName","queueDrainName","encoder","makeHandleEvent","provideContext","parseDrain","tsplus_module_1","$","mem","MemQueue","q","getOrCreateQueue","qReply","publish","messages","requestContext","tsplus_module_4","m","JSON","stringify","body","meta","_","offer","drain","handleEvent","processMessage","msg","parse","RequestContext","inherit","id","locale","name","tsplus_module_8","_tag","tsplus_module_7","silence","tsplus_module_9","take","x","inp","result","tsplus_module_11","cause","tsplus_module_10","tsplus_module_3"],"sourceRoot":"","sources":["../../../_src/services/QueueMaker/memQueue.ts"],"sourcesContent":[null]}
|
|
@@ -11,9 +11,10 @@ var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/prelude/utils
|
|
|
11
11
|
var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/prelude/_ext/misc"));
|
|
12
12
|
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/prelude/schema"));
|
|
13
13
|
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/infra/api/setupRequest"));
|
|
14
|
-
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/
|
|
15
|
-
var tsplus_module_8 = _interopRequireWildcard(require("@effect-app/infra/
|
|
16
|
-
var tsplus_module_9 = _interopRequireWildcard(require("@effect/
|
|
14
|
+
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/core/Effect"));
|
|
15
|
+
var tsplus_module_8 = _interopRequireWildcard(require("@effect-app/infra/RequestContext"));
|
|
16
|
+
var tsplus_module_9 = _interopRequireWildcard(require("@effect-app/infra/services/QueueMaker/errors"));
|
|
17
|
+
var tsplus_module_10 = _interopRequireWildcard(require("@effect/io/Layer"));
|
|
17
18
|
var _ServiceBus = require("@effect-app/infra-adapters/ServiceBus");
|
|
18
19
|
var _errorReporter = require("@effect-app/infra/errorReporter");
|
|
19
20
|
var _errors2 = require("./errors.cjs");
|
|
@@ -35,7 +36,7 @@ function makeServiceBusQueue(_queueName, queueDrainName, encoder, makeHandleEven
|
|
|
35
36
|
return tsplus_module_1.asUnit(tsplus_module_1.orDie(tsplus_module_6.setupReq3(tsplus_module_1.flatMap(tsplus_module_1.tapErrorCause(tsplus_module_1.orDie(tsplus_module_1.flatMap(tsplus_module_1.sync(() => JSON.parse(messageBody)), x => parseDrain(x))), report), ({
|
|
36
37
|
body,
|
|
37
38
|
meta
|
|
38
|
-
}) => provideContext(
|
|
39
|
+
}) => provideContext(tsplus_module_8.RequestContext.inherit(meta, {
|
|
39
40
|
id: body.id,
|
|
40
41
|
locale: "en",
|
|
41
42
|
name: tsplus_module_5.ReasonableString(body._tag)
|
|
@@ -46,12 +47,12 @@ function makeServiceBusQueue(_queueName, queueDrainName, encoder, makeHandleEven
|
|
|
46
47
|
}
|
|
47
48
|
return yield* $(tsplus_module_1.provideSomeLayer((0, _ServiceBus.subscribe)({
|
|
48
49
|
processMessage: x => tsplus_module_1.uninterruptible(processMessage(x.body)),
|
|
49
|
-
processError: err =>
|
|
50
|
+
processError: err => tsplus_module_7.effectSync(() => (0, _errorReporter.captureException)(err.error))
|
|
50
51
|
}), receiverLayer));
|
|
51
52
|
}),
|
|
52
53
|
publish: (...messages) => tsplus_module_1.gen(function* ($) {
|
|
53
|
-
const requestContext = yield* $(tsplus_module_1.service(
|
|
54
|
-
return yield* $(
|
|
54
|
+
const requestContext = yield* $(tsplus_module_1.service(tsplus_module_8.tag));
|
|
55
|
+
return yield* $(tsplus_module_9.forkDaemonReportQueue(tsplus_module_1.promise(() => s.sendMessages(messages.map(x => ({
|
|
55
56
|
body: JSON.stringify(encoder({
|
|
56
57
|
body: x,
|
|
57
58
|
meta: requestContext
|
|
@@ -67,11 +68,11 @@ function makeServiceBusQueue(_queueName, queueDrainName, encoder, makeHandleEven
|
|
|
67
68
|
* @tsplus static QueueMaker.Ops makeServiceBusLayers
|
|
68
69
|
*/
|
|
69
70
|
function makeServiceBusLayers(url, queueName, queueDrainName) {
|
|
70
|
-
return
|
|
71
|
+
return tsplus_module_10.provide(tsplus_module_10.merge((0, _ServiceBus.LiveSender)(queueName))((0, _ServiceBus.LiveReceiver)(queueDrainName)))((0, _ServiceBus.LiveServiceBusClient)(url));
|
|
71
72
|
}
|
|
72
73
|
function report(cause) {
|
|
73
74
|
return tsplus_module_1.gen(function* ($) {
|
|
74
|
-
const requestContext = yield* $(tsplus_module_1.service(
|
|
75
|
+
const requestContext = yield* $(tsplus_module_1.service(tsplus_module_8.tag));
|
|
75
76
|
return (0, _errors2.reportQueueError)(cause, {
|
|
76
77
|
requestContext
|
|
77
78
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sbqueue.cjs","mappings":"
|
|
1
|
+
{"version":3,"file":"sbqueue.cjs","mappings":"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","names":["makeServiceBusQueue","_queueName","queueDrainName","encoder","makeHandleEvent","provideContext","parseDrain","tsplus_module_1","$","s","Sender","receiver","Receiver","receiverLayer","tsplus_module_2","drain","handleEvent","processMessage","messageBody","tsplus_module_6","JSON","parse","x","report","body","meta","RequestContext","inherit","id","locale","name","tsplus_module_5","_tag","tsplus_module_4","processError","err","tsplus_module_7","error","publish","messages","requestContext","sendMessages","map","stringify","messageId","contentType","makeServiceBusLayers","url","queueName","tsplus_module_10","cause"],"sourceRoot":"","sources":["../../../_src/services/QueueMaker/sbqueue.ts"],"sourcesContent":[null]}
|
|
@@ -34,9 +34,9 @@ var tsplus_module_1 = _interopRequireWildcard(require("@effect-app/prelude/Pure"
|
|
|
34
34
|
var tsplus_module_2 = _interopRequireWildcard(require("@effect-app/prelude/_ext/misc"));
|
|
35
35
|
var tsplus_module_3 = _interopRequireWildcard(require("@effect/io/Effect"));
|
|
36
36
|
var tsplus_module_4 = _interopRequireWildcard(require("@fp-ts/data/Chunk"));
|
|
37
|
-
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/core/
|
|
38
|
-
var tsplus_module_6 = _interopRequireWildcard(require("@effect/
|
|
39
|
-
var tsplus_module_7 = _interopRequireWildcard(require("@effect
|
|
37
|
+
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/core/Effect"));
|
|
38
|
+
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/core/Array"));
|
|
39
|
+
var tsplus_module_7 = _interopRequireWildcard(require("@effect/io/Debug"));
|
|
40
40
|
var _errors = require("../errors.cjs");
|
|
41
41
|
var _Store = require("../services/Store.cjs");
|
|
42
42
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -109,7 +109,7 @@ function projectEffect_1(self, map) {
|
|
|
109
109
|
* @tsplus fluent Repository project
|
|
110
110
|
*/
|
|
111
111
|
function project(self, map) {
|
|
112
|
-
return projectEffect_1(self,
|
|
112
|
+
return projectEffect_1(self, tsplus_module_5.effectSync(() => map));
|
|
113
113
|
}
|
|
114
114
|
/**
|
|
115
115
|
* @tsplus fluent Repository queryEffect
|
|
@@ -134,7 +134,7 @@ map) {
|
|
|
134
134
|
limit: 1
|
|
135
135
|
}) : self.utils.all, items => tsplus_module_3.map(tsplus_module_3.service(_Store.ContextMap), ({
|
|
136
136
|
set
|
|
137
|
-
}) => items.map(_ => self.utils.mapReverse(_, set)))), _ => _.map(_ => self.utils.parse(_))), _ => tsplus_module_3.map(tsplus_module_2.encaseMaybeInEffect_(
|
|
137
|
+
}) => items.map(_ => self.utils.mapReverse(_, set)))), _ => _.map(_ => self.utils.parse(_))), _ => tsplus_module_3.map(tsplus_module_2.encaseMaybeInEffect_(tsplus_module_6.ChunkToNonEmptyReadonlyArray(tsplus_module_4.filterMap(_, f.collect)), () => new _errors.NotFoundError(self.itemType, JSON.stringify(f.filter))), _ => _[0])));
|
|
138
138
|
}
|
|
139
139
|
/**
|
|
140
140
|
* @tsplus fluent Repository query
|
|
@@ -142,7 +142,7 @@ map) {
|
|
|
142
142
|
function query(self,
|
|
143
143
|
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
144
144
|
map) {
|
|
145
|
-
return queryEffect_1(self,
|
|
145
|
+
return queryEffect_1(self, tsplus_module_5.effectSync(() => map));
|
|
146
146
|
}
|
|
147
147
|
/**
|
|
148
148
|
* @tsplus fluent Repository queryOne
|
|
@@ -150,7 +150,7 @@ map) {
|
|
|
150
150
|
function queryOne(self,
|
|
151
151
|
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
152
152
|
map) {
|
|
153
|
-
return queryOneEffect_1(self,
|
|
153
|
+
return queryOneEffect_1(self, tsplus_module_5.effectSync(() => map));
|
|
154
154
|
}
|
|
155
155
|
/**
|
|
156
156
|
* @tsplus fluent Repository queryAndSavePureEffect
|
|
@@ -158,7 +158,7 @@ map) {
|
|
|
158
158
|
function queryAndSavePureEffect_1(self,
|
|
159
159
|
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
160
160
|
map) {
|
|
161
|
-
return pure =>
|
|
161
|
+
return pure => tsplus_module_7.untraced(restore => tsplus_module_3.flatMap(queryEffect_1(self, map), restore(_ => saveManyWithPure_1(self, _, pure))));
|
|
162
162
|
}
|
|
163
163
|
/**
|
|
164
164
|
* @tsplus fluent Repository queryAndSavePure
|
|
@@ -166,7 +166,7 @@ map) {
|
|
|
166
166
|
function queryAndSavePure(self,
|
|
167
167
|
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
168
168
|
map) {
|
|
169
|
-
return queryAndSavePureEffect_1(self,
|
|
169
|
+
return queryAndSavePureEffect_1(self, tsplus_module_5.effectSync(() => map));
|
|
170
170
|
}
|
|
171
171
|
/**
|
|
172
172
|
* @tsplus getter Repository saveManyWithPure
|
|
@@ -191,7 +191,7 @@ function handleByIdAndSaveWithPure(self) {
|
|
|
191
191
|
* @tsplus fluent Repository saveManyWithPure_
|
|
192
192
|
*/
|
|
193
193
|
function saveManyWithPure_1(self, items, pure) {
|
|
194
|
-
return saveAllWithEffectInt(self, tsplus_module_1.runTerm(pure,
|
|
194
|
+
return saveAllWithEffectInt(self, tsplus_module_1.runTerm(pure, tsplus_module_6.ext_itToChunk(items)));
|
|
195
195
|
}
|
|
196
196
|
/**
|
|
197
197
|
* @tsplus fluent Repository saveWithPure_
|
|
@@ -200,7 +200,7 @@ function saveWithPure_1(self, item, pure) {
|
|
|
200
200
|
return saveAllWithEffectInt(self, tsplus_module_3.map(tsplus_module_1.runTerm(pure, item), ([item, events, a]) => [[item], events, a]));
|
|
201
201
|
}
|
|
202
202
|
function saveAllWithEffectInt(self, gen) {
|
|
203
|
-
return
|
|
203
|
+
return tsplus_module_7.untraced(restore => tsplus_module_3.flatMap(gen, ([items, events, a]) => tsplus_module_3.map(restore(() => self.saveAndPublish(items, events))(), () => a)));
|
|
204
204
|
}
|
|
205
205
|
const anyDSL = makeDSL();
|
|
206
206
|
function makeAllDSL() {
|
|
@@ -211,13 +211,13 @@ function makeAllDSL() {
|
|
|
211
211
|
* @tsplus fluent DSLExt updateWith
|
|
212
212
|
*/
|
|
213
213
|
function updateWithOne(self, upd) {
|
|
214
|
-
return self.update(_ =>
|
|
214
|
+
return self.update(_ => tsplus_module_5.effectSync(() => upd(_)));
|
|
215
215
|
}
|
|
216
216
|
/**
|
|
217
217
|
* @tsplus fluent DSLExt updateWith
|
|
218
218
|
*/
|
|
219
219
|
function updateWith(self, upd) {
|
|
220
|
-
return self.update(_ =>
|
|
220
|
+
return self.update(_ => tsplus_module_5.effectSync(() => upd(_)));
|
|
221
221
|
}
|
|
222
222
|
function makeOneDSL() {
|
|
223
223
|
return anyDSL;
|
|
@@ -239,13 +239,13 @@ function makeDSL() {
|
|
|
239
239
|
});
|
|
240
240
|
}
|
|
241
241
|
function ifAny(fn) {
|
|
242
|
-
return items =>
|
|
242
|
+
return items => tsplus_module_5.flatMapOption(tsplus_module_5.effectSync(() => tsplus_module_6.CollectionToNonEmptyReadonlyArray(items)), fn);
|
|
243
243
|
}
|
|
244
244
|
/**
|
|
245
245
|
* @tsplus fluent Iterable ifAny
|
|
246
246
|
*/
|
|
247
247
|
function ifAny_(items, fn) {
|
|
248
|
-
return
|
|
248
|
+
return tsplus_module_5.flatMapOption(tsplus_module_5.effectSync(() => tsplus_module_6.CollectionToNonEmptyReadonlyArray(items)), fn);
|
|
249
249
|
}
|
|
250
250
|
/**
|
|
251
251
|
* @tsplus getter Repository save
|