@effect-app/infra 0.84.0 → 0.85.0-next.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 +18 -7
- package/_cjs/_ext/Array.cjs +3 -2
- package/_cjs/_ext/Array.cjs.map +1 -1
- package/_cjs/api/defaultErrorHandler.cjs +11 -10
- package/_cjs/api/defaultErrorHandler.cjs.map +1 -1
- package/_cjs/api/express/makeJsonSchema.cjs +3 -2
- package/_cjs/api/express/makeJsonSchema.cjs.map +1 -1
- package/_cjs/api/express/makeJsonSchema.test.cjs +2 -2
- package/_cjs/api/express/makeJsonSchema.test.cjs.map +1 -1
- package/_cjs/api/express/makeOpenApiSpecs.cjs +6 -4
- package/_cjs/api/express/makeOpenApiSpecs.cjs.map +1 -1
- package/_cjs/api/express/schema/requestHandler.cjs +25 -23
- package/_cjs/api/express/schema/requestHandler.cjs.map +1 -1
- package/_cjs/api/express/schema/routing.cjs +22 -20
- package/_cjs/api/express/schema/routing.cjs.map +1 -1
- package/_cjs/api/reportError.cjs +2 -2
- package/_cjs/api/routing.cjs +56 -53
- package/_cjs/api/routing.cjs.map +1 -1
- package/_cjs/api/setupRequest.cjs +3 -2
- package/_cjs/api/setupRequest.cjs.map +1 -1
- package/_cjs/api/writeDocs.cjs +6 -4
- package/_cjs/api/writeDocs.cjs.map +1 -1
- package/_cjs/errorReporter.cjs +12 -11
- package/_cjs/errorReporter.cjs.map +1 -1
- package/_cjs/errors.cjs +8 -8
- package/_cjs/errors.cjs.map +1 -1
- package/_cjs/instrument.cjs +2 -1
- package/_cjs/instrument.cjs.map +1 -1
- package/_cjs/logger/jsonLogger.cjs +11 -10
- package/_cjs/logger/jsonLogger.cjs.map +1 -1
- package/_cjs/logger/logFmtLogger.cjs +5 -5
- package/_cjs/logger/logFmtLogger.cjs.map +1 -1
- package/_cjs/logger/shared.cjs +4 -4
- package/_cjs/logger/shared.cjs.map +1 -1
- package/_cjs/rateLimit.cjs +8 -7
- package/_cjs/rateLimit.cjs.map +1 -1
- package/_cjs/services/Emailer/Sendgrid.cjs +14 -12
- 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 +31 -29
- package/_cjs/services/Operations/live.cjs.map +1 -1
- package/_cjs/services/Operations/service.cjs +6 -5
- package/_cjs/services/Operations/service.cjs.map +1 -1
- package/_cjs/services/QueueMaker/errors.cjs +7 -6
- package/_cjs/services/QueueMaker/errors.cjs.map +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs +18 -17
- package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs +16 -15
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
- package/_cjs/services/Repository.cjs +17 -16
- package/_cjs/services/Repository.cjs.map +1 -1
- package/_cjs/services/RepositoryBase.cjs +35 -33
- package/_cjs/services/RepositoryBase.cjs.map +1 -1
- package/_cjs/services/RequestContextContainer.cjs +12 -10
- package/_cjs/services/RequestContextContainer.cjs.map +1 -1
- package/_cjs/services/Store/Cosmos.cjs +49 -46
- package/_cjs/services/Store/Cosmos.cjs.map +1 -1
- package/_cjs/services/Store/Disk.cjs +19 -18
- package/_cjs/services/Store/Disk.cjs.map +1 -1
- package/_cjs/services/Store/Memory.cjs +43 -39
- package/_cjs/services/Store/Memory.cjs.map +1 -1
- package/_cjs/services/Store/Redis.cjs +16 -14
- package/_cjs/services/Store/Redis.cjs.map +1 -1
- package/_cjs/services/Store/codeFilter.test.cjs +1 -1
- package/_cjs/services/Store/index.cjs +7 -6
- package/_cjs/services/Store/index.cjs.map +1 -1
- package/_cjs/services/Store/service.cjs +1 -1
- package/_cjs/services/Store/service.cjs.map +1 -1
- package/_cjs/services/Store/utils.cjs +13 -13
- package/_cjs/services/Store/utils.cjs.map +1 -1
- package/_cjs/services/simpledb/cosmosdb.cjs +19 -17
- package/_cjs/services/simpledb/cosmosdb.cjs.map +1 -1
- package/_cjs/services/simpledb/diskdb.cjs +9 -8
- package/_cjs/services/simpledb/diskdb.cjs.map +1 -1
- package/_cjs/services/simpledb/memdb.cjs +11 -9
- package/_cjs/services/simpledb/memdb.cjs.map +1 -1
- package/_cjs/services/simpledb/mongodb.cjs +20 -18
- package/_cjs/services/simpledb/mongodb.cjs.map +1 -1
- package/_cjs/services/simpledb/redisdb.cjs +11 -10
- package/_cjs/services/simpledb/redisdb.cjs.map +1 -1
- package/_cjs/services/simpledb/shared.cjs +5 -5
- package/_cjs/services/simpledb/shared.cjs.map +1 -1
- package/_cjs/services/simpledb/simpledb.cjs +18 -17
- package/_cjs/services/simpledb/simpledb.cjs.map +1 -1
- package/_src/api/authorization.jwt.ts +1 -1
- package/_src/api/defaultErrorHandler.ts +2 -2
- package/_src/api/express/routing.ts.bak +8 -8
- package/_src/api/express/schema/requestHandler.ts +12 -12
- package/_src/api/express/schema/routing.ts +11 -11
- package/_src/api/routing.ts +14 -13
- package/_src/errorReporter.ts +1 -1
- package/_src/services/Emailer/Sendgrid.ts +1 -1
- package/_src/services/Operations/live.ts +5 -5
- package/_src/services/QueueMaker/errors.ts +1 -1
- package/_src/services/QueueMaker/memQueue.ts +2 -2
- package/_src/services/QueueMaker/sbqueue.ts +1 -1
- package/_src/services/Repository.ts +9 -9
- package/_src/services/RepositoryBase.ts +8 -6
- package/_src/services/RequestContextContainer.ts +1 -1
- package/_src/services/Store/Cosmos.ts +17 -12
- package/_src/services/Store/Disk.ts +4 -4
- package/_src/services/Store/Memory.ts +4 -4
- package/_src/services/Store/Redis.ts +1 -1
- package/_src/services/Store/index.test.ts.bak +5 -5
- package/_src/services/Store/index.ts +1 -1
- package/_src/services/Store/utils.ts +16 -16
- package/_src/services/simpledb/diskdb.ts +1 -1
- package/_src/services/simpledb/memdb.ts +1 -1
- package/_src/services/simpledb/redisdb.ts +1 -1
- package/_src/services/simpledb/shared.ts +1 -1
- package/_src/services/simpledb/simpledb.ts +3 -3
- package/dist/RequestContext.d.ts +20 -20
- package/dist/_ext/Array.d.ts +1 -1
- package/dist/_ext/Array.d.ts.map +1 -1
- package/dist/_ext/Array.js +4 -3
- package/dist/api/codec.d.ts +1 -1
- package/dist/api/codec.d.ts.map +1 -1
- package/dist/api/defaultErrorHandler.d.ts +2 -2
- package/dist/api/defaultErrorHandler.d.ts.map +1 -1
- package/dist/api/defaultErrorHandler.js +13 -11
- package/dist/api/express/makeJsonSchema.d.ts +2 -2
- package/dist/api/express/makeJsonSchema.d.ts.map +1 -1
- package/dist/api/express/makeJsonSchema.js +4 -3
- package/dist/api/express/makeOpenApiSpecs.d.ts +1 -1
- package/dist/api/express/makeOpenApiSpecs.js +7 -5
- package/dist/api/express/schema/requestHandler.d.ts +8 -8
- package/dist/api/express/schema/requestHandler.d.ts.map +1 -1
- package/dist/api/express/schema/requestHandler.js +36 -34
- package/dist/api/express/schema/routing.d.ts +2 -2
- package/dist/api/express/schema/routing.js +23 -21
- package/dist/api/reportError.d.ts +5 -5
- package/dist/api/reportError.d.ts.map +1 -1
- package/dist/api/reportError.js +2 -2
- package/dist/api/routing.d.ts +6 -6
- package/dist/api/routing.d.ts.map +1 -1
- package/dist/api/routing.js +60 -57
- package/dist/api/setupRequest.d.ts +2 -2
- package/dist/api/setupRequest.d.ts.map +1 -1
- package/dist/api/setupRequest.js +4 -3
- package/dist/api/writeDocs.d.ts +1 -1
- package/dist/api/writeDocs.d.ts.map +1 -1
- package/dist/api/writeDocs.js +7 -5
- package/dist/errorReporter.d.ts +3 -3
- package/dist/errorReporter.d.ts.map +1 -1
- package/dist/errorReporter.js +13 -12
- package/dist/errors.d.ts +7 -7
- package/dist/errors.js +9 -9
- package/dist/instrument.d.ts +1 -1
- package/dist/instrument.d.ts.map +1 -1
- package/dist/instrument.js +3 -2
- package/dist/logger/jsonLogger.d.ts +2 -2
- package/dist/logger/jsonLogger.d.ts.map +1 -1
- package/dist/logger/jsonLogger.js +12 -11
- package/dist/logger/logFmtLogger.d.ts +2 -2
- package/dist/logger/logFmtLogger.d.ts.map +1 -1
- package/dist/logger/logFmtLogger.js +6 -6
- package/dist/logger/shared.d.ts +1 -1
- package/dist/logger/shared.d.ts.map +1 -1
- package/dist/logger/shared.js +5 -5
- package/dist/rateLimit.d.ts +3 -3
- package/dist/rateLimit.d.ts.map +1 -1
- package/dist/rateLimit.js +9 -8
- package/dist/services/Emailer/Sendgrid.d.ts +1 -1
- package/dist/services/Emailer/Sendgrid.d.ts.map +1 -1
- package/dist/services/Emailer/Sendgrid.js +17 -15
- package/dist/services/Emailer/fake.d.ts +1 -1
- package/dist/services/Emailer/fake.d.ts.map +1 -1
- package/dist/services/Emailer/fake.js +6 -5
- package/dist/services/Emailer/service.d.ts +4 -4
- package/dist/services/Operations/live.d.ts +1 -1
- package/dist/services/Operations/live.d.ts.map +1 -1
- package/dist/services/Operations/live.js +39 -37
- package/dist/services/Operations/service.d.ts +9 -9
- package/dist/services/Operations/service.d.ts.map +1 -1
- package/dist/services/Operations/service.js +13 -12
- package/dist/services/QueueMaker/errors.d.ts +3 -3
- package/dist/services/QueueMaker/errors.d.ts.map +1 -1
- package/dist/services/QueueMaker/errors.js +7 -6
- package/dist/services/QueueMaker/memQueue.d.ts +3 -3
- package/dist/services/QueueMaker/memQueue.js +17 -16
- package/dist/services/QueueMaker/sbqueue.d.ts +4 -4
- package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
- package/dist/services/QueueMaker/sbqueue.js +16 -15
- package/dist/services/Repository.d.ts +31 -31
- package/dist/services/Repository.d.ts.map +1 -1
- package/dist/services/Repository.js +18 -17
- package/dist/services/RepositoryBase.d.ts +14 -15
- package/dist/services/RepositoryBase.d.ts.map +1 -1
- package/dist/services/RepositoryBase.js +37 -35
- package/dist/services/RequestContextContainer.d.ts +9 -9
- package/dist/services/RequestContextContainer.d.ts.map +1 -1
- package/dist/services/RequestContextContainer.js +15 -13
- package/dist/services/Store/Cosmos.d.ts +3 -3
- package/dist/services/Store/Cosmos.d.ts.map +1 -1
- package/dist/services/Store/Cosmos.js +54 -51
- package/dist/services/Store/Disk.d.ts +3 -3
- package/dist/services/Store/Disk.d.ts.map +1 -1
- package/dist/services/Store/Disk.js +20 -19
- package/dist/services/Store/Memory.d.ts +5 -5
- package/dist/services/Store/Memory.d.ts.map +1 -1
- package/dist/services/Store/Memory.js +45 -41
- package/dist/services/Store/Redis.d.ts +3 -3
- package/dist/services/Store/Redis.d.ts.map +1 -1
- package/dist/services/Store/Redis.js +17 -15
- package/dist/services/Store/index.d.ts +1 -1
- package/dist/services/Store/index.d.ts.map +1 -1
- package/dist/services/Store/index.js +8 -7
- package/dist/services/Store/service.d.ts +10 -10
- package/dist/services/Store/service.d.ts.map +1 -1
- package/dist/services/Store/service.js +2 -2
- package/dist/services/Store/utils.d.ts +3 -3
- package/dist/services/Store/utils.d.ts.map +1 -1
- package/dist/services/Store/utils.js +21 -21
- package/dist/services/simpledb/cosmosdb.d.ts +5 -5
- package/dist/services/simpledb/cosmosdb.js +19 -17
- package/dist/services/simpledb/diskdb.d.ts +4 -4
- package/dist/services/simpledb/diskdb.js +10 -9
- package/dist/services/simpledb/memdb.d.ts +4 -4
- package/dist/services/simpledb/memdb.js +13 -11
- package/dist/services/simpledb/mongodb.d.ts +5 -5
- package/dist/services/simpledb/mongodb.js +16 -14
- package/dist/services/simpledb/redisdb.d.ts +10 -10
- package/dist/services/simpledb/redisdb.js +12 -11
- package/dist/services/simpledb/shared.d.ts +13 -13
- package/dist/services/simpledb/shared.js +6 -6
- package/dist/services/simpledb/simpledb.d.ts +7 -7
- package/dist/services/simpledb/simpledb.d.ts.map +1 -1
- package/dist/services/simpledb/simpledb.js +16 -15
- package/package.json +8 -8
package/dist/errors.js
CHANGED
|
@@ -2,26 +2,26 @@ import * as tsplus_module_1 from "effect/Data";
|
|
|
2
2
|
import * as tsplus_module_2 from "effect/Cause";
|
|
3
3
|
/* eslint-disable @typescript-eslint/ban-types */
|
|
4
4
|
import { makeFiberFailure } from "effect/Runtime";
|
|
5
|
-
export class NotFoundError extends tsplus_module_1.TaggedError("NotFoundError") {
|
|
5
|
+
export class NotFoundError extends tsplus_module_1.Data.TaggedError("NotFoundError") {
|
|
6
6
|
constructor(args) {
|
|
7
7
|
super({ ...args, message: `Didn't find ${args.type}#${args.id}` });
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
|
-
export class ValidationError extends tsplus_module_1.TaggedError("ValidationError") {
|
|
10
|
+
export class ValidationError extends tsplus_module_1.Data.TaggedError("ValidationError") {
|
|
11
11
|
}
|
|
12
|
-
export class NotLoggedInError extends tsplus_module_1.TaggedError("NotLoggedInError") {
|
|
12
|
+
export class NotLoggedInError extends tsplus_module_1.Data.TaggedError("NotLoggedInError") {
|
|
13
13
|
}
|
|
14
|
-
export class UnauthorizedError extends tsplus_module_1.TaggedError("UnauthorizedError") {
|
|
14
|
+
export class UnauthorizedError extends tsplus_module_1.Data.TaggedError("UnauthorizedError") {
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* The user carries a valid Userprofile, but there is a problem with the login none the less.
|
|
18
18
|
*/
|
|
19
|
-
export class LoginError extends tsplus_module_1.TaggedError("NotLoggeInError") {
|
|
19
|
+
export class LoginError extends tsplus_module_1.Data.TaggedError("NotLoggeInError") {
|
|
20
20
|
constructor(message) {
|
|
21
21
|
super({ message });
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
export class InvalidStateError extends tsplus_module_1.TaggedError("InvalidStateError") {
|
|
24
|
+
export class InvalidStateError extends tsplus_module_1.Data.TaggedError("InvalidStateError") {
|
|
25
25
|
constructor(message) {
|
|
26
26
|
super({ message });
|
|
27
27
|
}
|
|
@@ -52,12 +52,12 @@ export class CauseException extends Error {
|
|
|
52
52
|
return this.toJSON();
|
|
53
53
|
}
|
|
54
54
|
toString() {
|
|
55
|
-
return `[${this._tag}] ` + tsplus_module_2.pretty(this.originalCause);
|
|
55
|
+
return `[${this._tag}] ` + tsplus_module_2.Cause.pretty(this.originalCause);
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
export class OptimisticConcurrencyException extends tsplus_module_1.TaggedError("OptimisticConcurrencyException") {
|
|
58
|
+
export class OptimisticConcurrencyException extends tsplus_module_1.Data.TaggedError("OptimisticConcurrencyException") {
|
|
59
59
|
constructor(args) {
|
|
60
60
|
super({ ...args, message: `Existing ${args.type} ${args.id} record changed` });
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vX3NyYy9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpREFBaUQ7QUFDakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFakQsTUFBTSxPQUFPLGFBQ1gsU0FBUSxnQkFBQSxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBMkM7SUFFbkYsWUFBWSxJQUErQztRQUN6RCxLQUFLLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsZUFBZSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDcEUsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLGVBQWdCLFNBQVEsZ0JBQUEsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBcUM7Q0FBRztBQUUvRyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsZ0JBQUEsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBSztDQUFHO0FBRWpGLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxnQkFBQSxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFLO0NBQUc7QUFDbkY7O0dBRUc7QUFDSCxNQUFNLE9BQU8sVUFBVyxTQUFRLGdCQUFBLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQXNCO0lBQ3RGLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFBO0lBQ3BCLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxnQkFBQSxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFzQjtJQUMvRixZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUNwQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sY0FBa0IsU0FBUSxLQUFLO0lBQzFDLFlBQXFCLGFBQXVCLEVBQVcsSUFBWTtRQUNqRSxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFBO1FBQ25DLEtBQUssQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFBO1FBQ3pCLEtBQUssRUFBRSxDQUFBO1FBSFksa0JBQWEsR0FBYixhQUFhLENBQVU7UUFBVyxTQUFJLEdBQUosSUFBSSxDQUFRO1FBSWpFLEtBQUssQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFBO1FBQzdCLE1BQU0sRUFBRSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQTtRQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUE7UUFDekIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFBO0lBQ3ZCLENBQUM7SUFDRCxNQUFNO1FBQ0osT0FBTztZQUNMLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN2QixLQUFLLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUU7U0FDbkMsQ0FBQTtJQUNILENBQUM7SUFFRCxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUN4QyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUN0QixDQUFDO0lBQ1EsUUFBUTtRQUNmLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLEdBQUcsZ0JBQUEsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7SUFDN0QsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLDhCQUErQixTQUFRLGdCQUFBLElBQUksQ0FBQyxXQUFXLENBQUMsZ0NBQWdDLENBRXBHO0lBQ0MsWUFDRSxJQUF3RztRQUV4RyxLQUFLLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsWUFBWSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQTtJQUNoRixDQUFDO0NBQ0YifQ==
|
package/dist/instrument.d.ts
CHANGED
|
@@ -3,5 +3,5 @@ import { Effect } from "effect/Effect";
|
|
|
3
3
|
* @tsplus fluent effect/io/Effect instrument
|
|
4
4
|
* @tsplus location "@effect-app/infra/instrument"
|
|
5
5
|
*/
|
|
6
|
-
export declare function instr<R, E, A>(self: Effect<R, E, A>, name: string, properties?: Record<string, string>): import("effect
|
|
6
|
+
export declare function instr<R, E, A>(self: Effect<R, E, A>, name: string, properties?: Record<string, string>): import("effect").Effect<Exclude<R, import("effect/Tracer.impl").ParentSpan>, E, A>;
|
|
7
7
|
//# sourceMappingURL=instrument.d.ts.map
|
package/dist/instrument.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instrument.d.ts","sourceRoot":"","sources":["../_src/instrument.ts"],"names":[],"mappings":";;;;;AAGA,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"instrument.d.ts","sourceRoot":"","sources":["../_src/instrument.ts"],"names":[],"mappings":";;;;;AAGA,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,sFAOtG"}
|
package/dist/instrument.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect-app/prelude/utils";
|
|
2
2
|
import * as tsplus_module_2 from "effect/Effect";
|
|
3
|
+
import * as tsplus_module_3 from "effect/Effect.impl";
|
|
3
4
|
/**
|
|
4
5
|
* @tsplus fluent effect/io/Effect instrument
|
|
5
6
|
*/
|
|
6
7
|
export function instr(self, name, properties) {
|
|
7
|
-
return
|
|
8
|
+
return tsplus_module_3.withLogSpan(tsplus_module_3.withSpan(tsplus_module_3.tap(self, () => tsplus_module_3.annotateLogs(tsplus_module_2.Effect.logDebug(`instrumented`), "properties", tsplus_module_1.RecordPretty(tsplus_module_1.object$((properties || {}))))), name), name);
|
|
8
9
|
// trackMetric(name, time, properties))
|
|
9
10
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1bWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL19zcmMvaW5zdHJ1bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILE1BQU0sVUFBVSxLQUFLLENBQVUsSUFBcUIsRUFBRSxJQUFZLEVBQUUsVUFBbUM7SUFDckcsT0FBTyw0QkFBQSx5QkFBQSxvQkFBQSxJQUFJLEVBQ0osR0FBRyxFQUFFLENBQUMsNkJBQUEsZ0JBQUEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBYyxZQUFZLHVEQUFFLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxHQUFXLENBQUMsRUFDMUYsSUFBSSxDQUFDLEVBQ0YsSUFBSSxDQUFDLENBQUE7SUFFcEIsdUNBQXVDO0FBQ3pDLENBQUMifQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const jsonLogger: import("effect
|
|
2
|
-
export declare const logJson: import("effect
|
|
1
|
+
export declare const jsonLogger: import("effect").Logger<unknown, void>;
|
|
2
|
+
export declare const logJson: import("effect").Layer<never, never, never>;
|
|
3
3
|
//# sourceMappingURL=jsonLogger.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonLogger.d.ts","sourceRoot":"","sources":["../../_src/logger/jsonLogger.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU
|
|
1
|
+
{"version":3,"file":"jsonLogger.d.ts","sourceRoot":"","sources":["../../_src/logger/jsonLogger.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU,wCAyBtB,CAAA;AAED,eAAO,MAAM,OAAO,6CAAmD,CAAA"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "effect/FiberId";
|
|
2
|
-
import * as tsplus_module_2 from "@effect-app/core/
|
|
1
|
+
import * as tsplus_module_1 from "effect/FiberId.impl";
|
|
2
|
+
import * as tsplus_module_2 from "@effect-app/core/OptionX";
|
|
3
3
|
import * as tsplus_module_3 from "effect/Cause";
|
|
4
|
-
import * as tsplus_module_4 from "effect/
|
|
5
|
-
import * as tsplus_module_5 from "effect/
|
|
6
|
-
import * as tsplus_module_6 from "effect/
|
|
4
|
+
import * as tsplus_module_4 from "effect/Cause.impl";
|
|
5
|
+
import * as tsplus_module_5 from "effect/List.impl";
|
|
6
|
+
import * as tsplus_module_6 from "effect/HashMap.impl";
|
|
7
|
+
import * as tsplus_module_7 from "effect/Logger";
|
|
7
8
|
import { getRequestContext } from "./shared.js";
|
|
8
|
-
export const jsonLogger =
|
|
9
|
+
export const jsonLogger = tsplus_module_7.Logger.make(({ annotations, cause, context, fiberId, logLevel, message, spans }) => {
|
|
9
10
|
const now = new Date();
|
|
10
11
|
const nowMillis = now.getTime();
|
|
11
12
|
const c = getRequestContext(context);
|
|
@@ -15,9 +16,9 @@ export const jsonLogger = tsplus_module_6.make(({ annotations, cause, context, f
|
|
|
15
16
|
fiber: tsplus_module_1.threadName(fiberId),
|
|
16
17
|
message,
|
|
17
18
|
request: tsplus_module_2.getOrUndefined(c),
|
|
18
|
-
cause: cause != null && cause != tsplus_module_3.empty ?
|
|
19
|
-
spans:
|
|
20
|
-
annotations:
|
|
19
|
+
cause: cause != null && cause != tsplus_module_3.Cause.empty ? tsplus_module_4.pretty(cause) : undefined,
|
|
20
|
+
spans: tsplus_module_5.toReadonlyArray(tsplus_module_5.map(spans, (_) => ({ label: _.label, timing: nowMillis - _.startTime }))),
|
|
21
|
+
annotations: tsplus_module_6.size(annotations) > 0
|
|
21
22
|
? [...annotations].reduce((prev, [k, v]) => {
|
|
22
23
|
prev[k] = v;
|
|
23
24
|
return prev;
|
|
@@ -26,5 +27,5 @@ export const jsonLogger = tsplus_module_6.make(({ annotations, cause, context, f
|
|
|
26
27
|
};
|
|
27
28
|
globalThis.console.log(JSON.stringify(data));
|
|
28
29
|
});
|
|
29
|
-
export const logJson =
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
export const logJson = tsplus_module_7.Logger.replace(tsplus_module_7.Logger.defaultLogger, jsonLogger);
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbkxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL19zcmMvbG9nZ2VyL2pzb25Mb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUUvQyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsZ0JBQUEsTUFBTSxDQUFDLElBQUksQ0FDbkMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7SUFDckUsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQTtJQUN0QixNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUE7SUFFL0IsTUFBTSxDQUFDLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUE7SUFFcEMsTUFBTSxJQUFJLEdBQUc7UUFDWCxTQUFTLEVBQUUsR0FBRztRQUNkLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSztRQUNyQixLQUFLLDZCQUFFLE9BQU8sQ0FBVztRQUN6QixPQUFPO1FBQ1AsT0FBTyxpQ0FBRSxDQUFDLENBQU07UUFDaEIsS0FBSyxFQUFFLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxJQUFJLGdCQUFBLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyx3QkFBQyxLQUFLLEVBQVEsQ0FBQyxDQUFDLFNBQVM7UUFDdkUsS0FBSyxrQ0FBRSxvQkFBQSxLQUFLLEVBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQWdCO1FBQzlGLFdBQVcsRUFBRSxxQkFBQSxXQUFXLElBQVEsQ0FBQztZQUMvQixDQUFDLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUN6QyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFBO2dCQUNYLE9BQU8sSUFBSSxDQUFBO1lBQ2IsQ0FBQyxFQUFFLEVBQTZCLENBQUM7WUFDakMsQ0FBQyxDQUFDLFNBQVM7S0FDZCxDQUFBO0lBRUQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0FBQzlDLENBQUMsQ0FDRixDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLGdCQUFBLE1BQU0sQ0FBQyxPQUFPLENBQUMsZ0JBQUEsTUFBTSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsQ0FBQSJ9
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const logfmtLogger: import("effect
|
|
2
|
-
export declare const logFmt: import("effect
|
|
1
|
+
export declare const logfmtLogger: import("effect").Logger<unknown, void>;
|
|
2
|
+
export declare const logFmt: import("effect").Layer<never, never, never>;
|
|
3
3
|
//# sourceMappingURL=logFmtLogger.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logFmtLogger.d.ts","sourceRoot":"","sources":["../../_src/logger/logFmtLogger.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"logFmtLogger.d.ts","sourceRoot":"","sources":["../../_src/logger/logFmtLogger.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,wCAqBxB,CAAA;AAED,eAAO,MAAM,MAAM,6CAAqD,CAAA"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@effect-app/core/
|
|
1
|
+
import * as tsplus_module_1 from "@effect-app/core/OptionX";
|
|
2
2
|
import * as tsplus_module_2 from "@effect-app/prelude/utils";
|
|
3
3
|
import * as tsplus_module_3 from "effect/HashMap";
|
|
4
4
|
import * as tsplus_module_4 from "effect/Logger";
|
|
5
5
|
import { getRequestContext } from "./shared.js";
|
|
6
|
-
export const logfmtLogger = tsplus_module_4.make((_) => {
|
|
6
|
+
export const logfmtLogger = tsplus_module_4.Logger.make((_) => {
|
|
7
7
|
let { annotations } = _;
|
|
8
8
|
const c = getRequestContext(_.context);
|
|
9
9
|
const requestContext = tsplus_module_1.getOrUndefined(c);
|
|
10
10
|
if (requestContext) {
|
|
11
|
-
annotations = tsplus_module_3.make(...[
|
|
11
|
+
annotations = tsplus_module_3.HashMap.make(...[
|
|
12
12
|
...annotations,
|
|
13
13
|
...tsplus_module_2.RecordEntries(tsplus_module_2.object$({
|
|
14
14
|
requestRootId: requestContext.rootId,
|
|
@@ -18,8 +18,8 @@ export const logfmtLogger = tsplus_module_4.make((_) => {
|
|
|
18
18
|
}))
|
|
19
19
|
]);
|
|
20
20
|
}
|
|
21
|
-
const formatted = tsplus_module_4.logfmtLogger.log(_);
|
|
21
|
+
const formatted = tsplus_module_4.Logger.logfmtLogger.log(_);
|
|
22
22
|
globalThis.console.log(formatted);
|
|
23
23
|
});
|
|
24
|
-
export const logFmt = tsplus_module_4.replace(tsplus_module_4.defaultLogger, logfmtLogger);
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
export const logFmt = tsplus_module_4.Logger.replace(tsplus_module_4.Logger.defaultLogger, logfmtLogger);
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nRm10TG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vX3NyYy9sb2dnZXIvbG9nRm10TG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFL0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLGdCQUFBLE1BQU0sQ0FBQyxJQUFJLENBQ3JDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDSixJQUFJLEVBQUUsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZCLE1BQU0sQ0FBQyxHQUFHLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUN0QyxNQUFNLGNBQWMsa0NBQUcsQ0FBQyxDQUFNLENBQUE7SUFDOUIsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUNuQixXQUFXLEdBQUcsZ0JBQUEsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHO1lBQzVCLEdBQUcsV0FBVztZQUNkLHlEQUFHO2dCQUNELGFBQWEsRUFBRSxjQUFjLENBQUMsTUFBTTtnQkFDcEMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxFQUFFO2dCQUM1QixXQUFXLEVBQUUsY0FBYyxDQUFDLElBQUk7Z0JBQ2hDLEdBQUcsY0FBYyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7YUFDN0YsRUFFUztTQUNYLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxnQkFBQSxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUM1QyxVQUFVLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUNuQyxDQUFDLENBQ0YsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxnQkFBQSxNQUFNLENBQUMsT0FBTyxDQUFDLGdCQUFBLE1BQU0sQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUEifQ==
|
package/dist/logger/shared.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import * as FiberRefs from "effect/FiberRefs";
|
|
2
|
-
export declare function getRequestContext(context: FiberRefs.FiberRefs): import("effect
|
|
2
|
+
export declare function getRequestContext(context: FiberRefs.FiberRefs): import("effect").Option<import("../RequestContext.js").RequestContext>;
|
|
3
3
|
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../_src/logger/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAG7C,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../_src/logger/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAG7C,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,0EAM7D"}
|
package/dist/logger/shared.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "effect/FiberRef";
|
|
2
|
-
import * as tsplus_module_2 from "effect/Context";
|
|
3
|
-
import * as tsplus_module_3 from "effect/Effect";
|
|
4
|
-
import * as tsplus_module_4 from "effect/Option";
|
|
2
|
+
import * as tsplus_module_2 from "effect/Context.impl";
|
|
3
|
+
import * as tsplus_module_3 from "effect/Effect.impl";
|
|
4
|
+
import * as tsplus_module_4 from "effect/Option.impl";
|
|
5
5
|
import * as FiberRefs from "effect/FiberRefs";
|
|
6
6
|
import { RequestContextContainer } from "../services/RequestContextContainer.js";
|
|
7
7
|
export function getRequestContext(context) {
|
|
8
|
-
const ctx = FiberRefs.getOrDefault(context, tsplus_module_1.currentContext);
|
|
8
|
+
const ctx = FiberRefs.getOrDefault(context, tsplus_module_1.FiberRef.currentContext);
|
|
9
9
|
// TODO: use `RequestContext.Tag` once switched?
|
|
10
10
|
const a = tsplus_module_2.getOption(ctx, RequestContextContainer);
|
|
11
11
|
const c = tsplus_module_4.map(a, (_) => tsplus_module_3.runSync(_.requestContext));
|
|
12
12
|
return c;
|
|
13
13
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vX3NyYy9sb2dnZXIvc2hhcmVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEtBQUssU0FBUyxNQUFNLGtCQUFrQixDQUFBO0FBQzdDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBRWhGLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxPQUE0QjtJQUM1RCxNQUFNLEdBQUcsR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxnQkFBQSxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUE7SUFDcEUsZ0RBQWdEO0lBQ2hELE1BQU0sQ0FBQyxHQUFHLDBCQUFBLEdBQUcsRUFBVyx1QkFBdUIsQ0FBQyxDQUFBO0lBQ2hELE1BQU0sQ0FBQyxHQUFHLG9CQUFBLENBQUMsRUFBSyxDQUFDLENBQUMsRUFBRSxFQUFFLHlCQUFDLENBQUMsQ0FBQyxjQUFjLENBQVEsQ0FBQyxDQUFBO0lBQ2hELE9BQU8sQ0FBQyxDQUFBO0FBQ1YsQ0FBQyJ9
|
package/dist/rateLimit.d.ts
CHANGED
|
@@ -16,17 +16,17 @@ export declare function SEM_withPermitsDuration(permits: number, duration: Durat
|
|
|
16
16
|
* @tsplus static Collection.Ops batchPar
|
|
17
17
|
* @tsplus location "@effect-app/infra/rateLimit"
|
|
18
18
|
*/
|
|
19
|
-
export declare function batchPar<R, E, A, R2, E2, A2, T>(n: number, forEachItem: (item: T, iWithinBatch: number, batchI: number) => Effect<R, E, A>, forEachBatch: (a: NonEmptyArray<A>, i: number) => Effect<R2, E2, A2>): (items: Iterable<T>) => import("effect
|
|
19
|
+
export declare function batchPar<R, E, A, R2, E2, A2, T>(n: number, forEachItem: (item: T, iWithinBatch: number, batchI: number) => Effect<R, E, A>, forEachBatch: (a: NonEmptyArray<A>, i: number) => Effect<R2, E2, A2>): (items: Iterable<T>) => import("effect").Effect<R | R2, E | E2, A2[]>;
|
|
20
20
|
/**
|
|
21
21
|
* @tsplus pipeable Iterable batch
|
|
22
22
|
* @tsplus static Collection.Ops batch
|
|
23
23
|
* @tsplus location "@effect-app/infra/rateLimit"
|
|
24
24
|
*/
|
|
25
|
-
export declare function batch<R, E, A, R2, E2, A2, T>(n: number, forEachItem: (item: T, iWithinBatch: number, batchI: number) => Effect<R, E, A>, forEachBatch: (a: NonEmptyArray<A>, i: number) => Effect<R2, E2, A2>): (items: Iterable<T>) => import("effect
|
|
25
|
+
export declare function batch<R, E, A, R2, E2, A2, T>(n: number, forEachItem: (item: T, iWithinBatch: number, batchI: number) => Effect<R, E, A>, forEachBatch: (a: NonEmptyArray<A>, i: number) => Effect<R2, E2, A2>): (items: Iterable<T>) => import("effect").Effect<R | R2, E | E2, A2[]>;
|
|
26
26
|
/**
|
|
27
27
|
* @tsplus pipeable Iterable naiveRateLimit
|
|
28
28
|
* @tsplus static Collection.Ops naiveRateLimit
|
|
29
29
|
* @tsplus location "@effect-app/infra/rateLimit"
|
|
30
30
|
*/
|
|
31
|
-
export declare function naiveRateLimit(n: number, d: DUR): <T>(items: Iterable<T>) => <R, E, A, R2, E2, A2>(forEachItem: (i: T) => Effect<R, E, A>, forEachBatch: (a: A[]) => Effect<R2, E2, A2>) => import("effect
|
|
31
|
+
export declare function naiveRateLimit(n: number, d: DUR): <T>(items: Iterable<T>) => <R, E, A, R2, E2, A2>(forEachItem: (i: T) => Effect<R, E, A>, forEachBatch: (a: A[]) => Effect<R2, E2, A2>) => import("effect").Effect<R | R2, E | E2, A2[]>;
|
|
32
32
|
//# sourceMappingURL=rateLimit.d.ts.map
|
package/dist/rateLimit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rateLimit.d.ts","sourceRoot":"","sources":["../_src/rateLimit.ts"],"names":[],"mappings":";;;;;;;;;;;;AAkCA,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,UAC3D,SAAS,uBAAqB,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAahF;;;;;;AAMD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAC7C,CAAC,EAAE,MAAM,EACT,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC/E,YAAY,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,WAErD,SAAS,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"rateLimit.d.ts","sourceRoot":"","sources":["../_src/rateLimit.ts"],"names":[],"mappings":";;;;;;;;;;;;AAkCA,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,UAC3D,SAAS,uBAAqB,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAahF;;;;;;AAMD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAC7C,CAAC,EAAE,MAAM,EACT,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC/E,YAAY,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,WAErD,SAAS,CAAC,CAAC,mDAU3B;;;;;;AAMD,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAC1C,CAAC,EAAE,MAAM,EACT,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC/E,YAAY,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,WAErD,SAAS,CAAC,CAAC,mDAQ3B;;;;;;AA2BD,wBAAgB,cAAc,CAC5B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,GAAG,cAEY,SAAS,CAAC,CAAC,4CACV,CAAC,KAAK,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,oBACpB,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,mDAY/C"}
|
package/dist/rateLimit.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "effect/Effect";
|
|
2
|
-
import * as tsplus_module_2 from "
|
|
3
|
-
import * as tsplus_module_3 from "@effect-app/core/
|
|
1
|
+
import * as tsplus_module_1 from "effect/Effect.impl";
|
|
2
|
+
import * as tsplus_module_2 from "effect/Effect";
|
|
3
|
+
import * as tsplus_module_3 from "@effect-app/core/_ext/Iterable";
|
|
4
|
+
import * as tsplus_module_4 from "@effect-app/core/Array";
|
|
4
5
|
// /**
|
|
5
6
|
// * Executes the specified effect, acquiring the specified number of permits
|
|
6
7
|
// * immediately before the effect begins execution and releasing them
|
|
@@ -36,7 +37,7 @@ import * as tsplus_module_3 from "@effect-app/core/Array";
|
|
|
36
37
|
*/
|
|
37
38
|
export function SEM_withPermitsDuration(permits, duration) {
|
|
38
39
|
return (self) => {
|
|
39
|
-
return (effect) =>
|
|
40
|
+
return (effect) => tsplus_module_2.Effect.uninterruptibleMask((restore) => tsplus_module_1.zipRight(tsplus_module_1.ensuring(restore(effect), tsplus_module_1.delay(self
|
|
40
41
|
.release(permits), duration)))(restore(self.take(permits))));
|
|
41
42
|
};
|
|
42
43
|
}
|
|
@@ -45,14 +46,14 @@ export function SEM_withPermitsDuration(permits, duration) {
|
|
|
45
46
|
* @tsplus static Collection.Ops batchPar
|
|
46
47
|
*/
|
|
47
48
|
export function batchPar(n, forEachItem, forEachBatch) {
|
|
48
|
-
return (items) =>
|
|
49
|
+
return (items) => tsplus_module_3.ext_forEach(tsplus_module_4.chunk_(items, n), (_, i) => tsplus_module_1.flatMap(tsplus_module_3.ext_forEach(_, (_, j) => forEachItem(_, j, i), { concurrency: "inherit" }), (_) => forEachBatch(_, i)), { concurrency: "inherit" });
|
|
49
50
|
}
|
|
50
51
|
/**
|
|
51
52
|
* @tsplus pipeable Iterable batch
|
|
52
53
|
* @tsplus static Collection.Ops batch
|
|
53
54
|
*/
|
|
54
55
|
export function batch(n, forEachItem, forEachBatch) {
|
|
55
|
-
return (items) =>
|
|
56
|
+
return (items) => tsplus_module_3.ext_forEach(tsplus_module_4.chunk_(items, n), (_, i) => tsplus_module_1.flatMap(tsplus_module_3.ext_forEach(_, (_, j) => forEachItem(_, j, i), { concurrency: "inherit" }), (_) => forEachBatch(_, i)));
|
|
56
57
|
}
|
|
57
58
|
// /**
|
|
58
59
|
// * @tsplus pipeable Iterable rateLimit
|
|
@@ -78,6 +79,6 @@ export function batch(n, forEachItem, forEachBatch) {
|
|
|
78
79
|
* @tsplus static Collection.Ops naiveRateLimit
|
|
79
80
|
*/
|
|
80
81
|
export function naiveRateLimit(n, d) {
|
|
81
|
-
return (items) => ((forEachItem, forEachBatch) =>
|
|
82
|
+
return (items) => ((forEachItem, forEachBatch) => tsplus_module_3.ext_forEach(tsplus_module_4.chunk_(items, n), (batch, i) => tsplus_module_1.zipRight(((i === 0) ? tsplus_module_2.Effect.unit : tsplus_module_2.Effect.sleep(d)), tsplus_module_1.flatMap(tsplus_module_3.ext_forEach(batch, forEachItem, { concurrency: n }), forEachBatch))));
|
|
82
83
|
}
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZUxpbWl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vX3NyYy9yYXRlTGltaXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE1BQU07QUFDTiw4RUFBOEU7QUFDOUUsdUVBQXVFO0FBQ3ZFLG1GQUFtRjtBQUNuRiwrQkFBK0I7QUFDL0IsS0FBSztBQUNMLGtFQUFrRTtBQUNsRSxnRUFBZ0U7QUFDaEUsTUFBTTtBQUNOLDZFQUE2RTtBQUM3RSwwRkFBMEY7QUFDMUYsdUJBQXVCO0FBQ3ZCLG9DQUFvQztBQUNwQyxxQkFBcUI7QUFDckIsbURBQW1EO0FBQ25ELGdDQUFnQztBQUNoQywyQkFBMkI7QUFDM0IseUNBQXlDO0FBQ3pDLDRCQUE0QjtBQUM1QixxQ0FBcUM7QUFDckMsa0JBQWtCO0FBQ2xCLFVBQVU7QUFDVixNQUFNO0FBQ04sSUFBSTtBQUVKOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLHVCQUF1QixDQUFDLE9BQWUsRUFBRSxRQUFrQjtJQUN6RSxPQUFPLENBQUMsSUFBZSxFQUF5RCxFQUFFO1FBQ2hGLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNoQixnQkFBQSxNQUFNLENBQUMsbUJBQW1CLENBQ3hCLENBQUMsT0FBTyxFQUFFLEVBQUUsMEJBRU4seUJBQUEsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUViLHNCQUFBLElBQUk7YUFDRCxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQ1YsUUFBUSxDQUFDLENBQ25CLEVBTkwsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FNdEIsQ0FDUixDQUFBO0lBQ0wsQ0FBQyxDQUFBO0FBQ0gsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxRQUFRLENBQ3RCLENBQVMsRUFDVCxXQUErRSxFQUMvRSxZQUFvRTtJQUVwRSxPQUFPLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQzVCLDRCQUFBLHVCQUFBLEtBQUssRUFDSSxDQUFDLENBQUMsRUFFUCxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUNQLHdCQUFBLDRCQUFBLENBQUMsRUFDZ0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUNqRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLENBQXFCLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDM0QsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQzNCLENBQUE7QUFDUCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLEtBQUssQ0FDbkIsQ0FBUyxFQUNULFdBQStFLEVBQy9FLFlBQW9FO0lBRXBFLE9BQU8sQ0FBQyxLQUFrQixFQUFFLEVBQUUsQ0FDNUIsNEJBQUEsdUJBQUEsS0FBSyxFQUNJLENBQUMsQ0FBQyxFQUNNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQ3RCLHdCQUFBLDRCQUFBLENBQUMsRUFDZ0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUNqRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLENBQXFCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FDMUQsQ0FBQTtBQUNQLENBQUM7QUFFRCxNQUFNO0FBQ04seUNBQXlDO0FBQ3pDLDZDQUE2QztBQUM3QyxNQUFNO0FBQ04sNkJBQTZCO0FBQzdCLGVBQWU7QUFDZixXQUFXO0FBQ1gsTUFBTTtBQUNOLHNDQUFzQztBQUN0Qyw2QkFBNkI7QUFDN0IsZ0RBQWdEO0FBQ2hELDBEQUEwRDtBQUMxRCxXQUFXO0FBQ1gscUNBQXFDO0FBQ3JDLHNCQUFzQjtBQUN0Qix3Q0FBd0M7QUFDeEMsbUZBQW1GO0FBQ25GLHNCQUFzQjtBQUN0QixJQUFJO0FBRUo7OztHQUdHO0FBRUgsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsQ0FBUyxFQUNULENBQU07SUFFTixPQUFPLENBQUksS0FBa0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUNqQyxXQUFzQyxFQUN0QyxZQUE0QyxFQUM1QyxFQUFFLENBQ0YsNEJBQUEsdUJBQUEsS0FBSyxFQUNJLENBQUMsQ0FBQyxFQUNNLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQzFCLHlCQUFBLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFBLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGdCQUFBLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFFdkMsd0JBQUEsNEJBQUEsS0FBSyxFQUNZLFdBQVcsRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUN0QyxZQUFZLENBQUMsQ0FDekIsQ0FDSixDQUFDLENBQUE7QUFDUixDQUFDIn0=
|
|
@@ -6,7 +6,7 @@ import type { EmailMsg, SendgridConfig } from "./service.js";
|
|
|
6
6
|
* @tsplus static Emailer.Ops LiveSendgrid
|
|
7
7
|
* @tsplus location "@effect-app/infra/services/Emailer/Sendgrid"
|
|
8
8
|
*/
|
|
9
|
-
export declare function LiveSendgrid(config: Config<SendgridConfig>): import("effect
|
|
9
|
+
export declare function LiveSendgrid(config: Config<SendgridConfig>): import("effect").Layer<never, import("effect").ConfigError, Emailer>;
|
|
10
10
|
/**
|
|
11
11
|
* @hidden
|
|
12
12
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sendgrid.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/Sendgrid.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4CAA4C,CAAA;AAG3E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAwB,cAAc,EAAE,MAAM,cAAc,CAAA;;;;;AAoDlF,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"Sendgrid.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/Sendgrid.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4CAA4C,CAAA;AAG3E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAwB,cAAc,EAAE,MAAM,cAAc,CAAA;;;;;AAoDlF,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,wEAK1D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,OAAO,SAUpC,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,SAAS,WAO1C"}
|
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "effect/ConfigSecret";
|
|
1
|
+
import * as tsplus_module_1 from "effect/ConfigSecret.impl";
|
|
2
2
|
import * as tsplus_module_2 from "effect/Effect";
|
|
3
|
-
import * as tsplus_module_3 from "effect/
|
|
4
|
-
import * as tsplus_module_4 from "effect/
|
|
5
|
-
import * as tsplus_module_5 from "
|
|
6
|
-
import * as tsplus_module_6 from "
|
|
3
|
+
import * as tsplus_module_3 from "effect/Effect.impl";
|
|
4
|
+
import * as tsplus_module_4 from "effect/Layer.impl";
|
|
5
|
+
import * as tsplus_module_5 from "effect/Equivalence";
|
|
6
|
+
import * as tsplus_module_6 from "effect/Equivalence.impl";
|
|
7
|
+
import * as tsplus_module_7 from "@effect-app/core/_ext/ord.ext";
|
|
8
|
+
import * as tsplus_module_8 from "@effect-app/core/Array";
|
|
7
9
|
import sgMail from "@sendgrid/mail";
|
|
8
10
|
import { inspect } from "util";
|
|
9
11
|
import { Emailer } from "./service.js";
|
|
10
|
-
const makeLiveSendgrid = ({ apiKey, defaultFrom, defaultReplyTo, realMail, subjectPrefix }) => tsplus_module_2.sync(() => {
|
|
12
|
+
const makeLiveSendgrid = ({ apiKey, defaultFrom, defaultReplyTo, realMail, subjectPrefix }) => tsplus_module_2.Effect.sync(() => {
|
|
11
13
|
sgMail.setApiKey(tsplus_module_1.value(apiKey));
|
|
12
14
|
return {
|
|
13
15
|
sendMail(msg_) {
|
|
14
|
-
return tsplus_module_2.gen(function* ($) {
|
|
16
|
+
return tsplus_module_2.Effect.gen(function* ($) {
|
|
15
17
|
const msg = {
|
|
16
18
|
...msg_,
|
|
17
19
|
from: msg_.from ?? defaultFrom,
|
|
@@ -20,10 +22,10 @@ const makeLiveSendgrid = ({ apiKey, defaultFrom, defaultReplyTo, realMail, subje
|
|
|
20
22
|
const render = renderMessage(!realMail);
|
|
21
23
|
const renderedMsg_ = render(msg);
|
|
22
24
|
const renderedMsg = { ...renderedMsg_, subject: `${subjectPrefix}${renderedMsg_.subject}` };
|
|
23
|
-
yield* $(
|
|
24
|
-
const ret = yield* $(tsplus_module_2.async((cb) => void sgMail.send(renderedMsg, false, (err, result) => err
|
|
25
|
-
? cb(tsplus_module_2.fail(err))
|
|
26
|
-
: cb(tsplus_module_2.sync(() => result)))));
|
|
25
|
+
yield* $(tsplus_module_3.annotateLogs(tsplus_module_2.Effect.logDebug("Sending email"), "msg", inspect(renderedMsg, false, 5)));
|
|
26
|
+
const ret = yield* $(tsplus_module_2.Effect.async((cb) => void sgMail.send(renderedMsg, false, (err, result) => err
|
|
27
|
+
? cb(tsplus_module_2.Effect.fail(err))
|
|
28
|
+
: cb(tsplus_module_2.Effect.sync(() => result)))));
|
|
27
29
|
// const event = {
|
|
28
30
|
// name: "EmailSent",
|
|
29
31
|
// properties: {
|
|
@@ -42,7 +44,7 @@ const makeLiveSendgrid = ({ apiKey, defaultFrom, defaultReplyTo, realMail, subje
|
|
|
42
44
|
* @tsplus static Emailer.Ops LiveSendgrid
|
|
43
45
|
*/
|
|
44
46
|
export function LiveSendgrid(config) {
|
|
45
|
-
return
|
|
47
|
+
return tsplus_module_4.effect(Emailer)(tsplus_module_3.flatMap(tsplus_module_3.config(config), makeLiveSendgrid));
|
|
46
48
|
}
|
|
47
49
|
/**
|
|
48
50
|
* @hidden
|
|
@@ -79,12 +81,12 @@ function renderFake(addr, makeId) {
|
|
|
79
81
|
email: `test+${makeId()}@nomizz.com`
|
|
80
82
|
};
|
|
81
83
|
}
|
|
82
|
-
const eq =
|
|
84
|
+
const eq = tsplus_module_6.mapInput(tsplus_module_5.Equivalence.string, (to) => typeof to === "string" ? to.toLowerCase() : to.email.toLowerCase());
|
|
83
85
|
// TODO: should just not add any already added email address
|
|
84
86
|
// https://stackoverflow.com/a/53603076/11595834
|
|
85
87
|
function renderFakeIfTest(addr, makeId) {
|
|
86
88
|
return Array.isArray(addr)
|
|
87
|
-
?
|
|
89
|
+
? tsplus_module_8.iterableToArray(tsplus_module_7.uniqArray(eq)(addr
|
|
88
90
|
.map((x) => (isTestAddress(x) ? renderFake(x, makeId) : x)))) : isTestAddress(addr)
|
|
89
91
|
? renderFake(addr, makeId)
|
|
90
92
|
: addr;
|
|
@@ -98,4 +100,4 @@ function renderMailData(md) {
|
|
|
98
100
|
}
|
|
99
101
|
return md.email;
|
|
100
102
|
}
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VuZGdyaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL0VtYWlsZXIvU2VuZGdyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFDQSxPQUFPLE1BQU0sTUFBTSxnQkFBZ0IsQ0FBQTtBQUNuQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFHdEMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBa0IsRUFBRSxFQUFFLENBQzVHLGdCQUFBLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO0lBQ2YsTUFBTSxDQUFDLFNBQVMsdUJBQUMsTUFBTSxFQUFPLENBQUE7SUFFOUIsT0FBTztRQUNMLFFBQVEsQ0FBQyxJQUEwQjtZQUNqQyxPQUFPLGdCQUFBLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUMsQ0FBQztnQkFDM0IsTUFBTSxHQUFHLEdBQWE7b0JBQ3BCLEdBQUcsSUFBSTtvQkFDUCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxXQUFXO29CQUM5QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO2lCQUNsRSxDQUFBO2dCQUNELE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dCQUV2QyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7Z0JBQ2hDLE1BQU0sV0FBVyxHQUFHLEVBQUUsR0FBRyxZQUFZLEVBQUUsT0FBTyxFQUFFLEdBQUcsYUFBYSxHQUFHLFlBQVksQ0FBQyxPQUFPLEVBQUUsRUFB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
|
|
@@ -3,5 +3,5 @@ import { Emailer } from "./service.js";
|
|
|
3
3
|
* @tsplus static Emailer.Ops Fake
|
|
4
4
|
* @tsplus location "@effect-app/infra/services/Emailer/fake"
|
|
5
5
|
*/
|
|
6
|
-
export declare const FakeSendgrid: import("effect
|
|
6
|
+
export declare const FakeSendgrid: import("effect").Layer<never, never, Emailer>;
|
|
7
7
|
//# sourceMappingURL=fake.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fake.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/fake.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;;;;;AAatC,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"fake.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/fake.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;;;;;AAatC,eAAO,MAAM,YAAY,+CAA4B,CAAA"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "effect/Effect";
|
|
2
|
-
import * as tsplus_module_2 from "effect/
|
|
2
|
+
import * as tsplus_module_2 from "effect/Effect.impl";
|
|
3
|
+
import * as tsplus_module_3 from "effect/Layer.impl";
|
|
3
4
|
import { pretty } from "@effect-app/prelude/utils";
|
|
4
5
|
import { Emailer } from "./service.js";
|
|
5
|
-
const makeFake =
|
|
6
|
+
const makeFake = tsplus_module_2.map(tsplus_module_1.Effect.logDebug("FAKE Emailer Service enabled"), () => ({
|
|
6
7
|
sendMail(msg) {
|
|
7
|
-
return
|
|
8
|
+
return tsplus_module_2.annotateLogs(tsplus_module_1.Effect.logDebug(`Fake send mail`), "msg", pretty(msg));
|
|
8
9
|
}
|
|
9
10
|
}));
|
|
10
11
|
/**
|
|
11
12
|
* @tsplus static Emailer.Ops Fake
|
|
12
13
|
*/
|
|
13
|
-
export const FakeSendgrid =
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
export const FakeSendgrid = tsplus_module_3.effect(Emailer)(makeFake);
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFrZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvRW1haWxlci9mYWtlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXRDLE1BQU0sUUFBUSxHQUFHLG9CQUFBLGdCQUFBLE1BQU0sQ0FDcEIsUUFBUSxDQUFDLDhCQUE4QixDQUFDLEVBQ3BDLEdBQVksRUFBRSxDQUFDLENBQUM7SUFDbkIsUUFBUSxDQUFDLEdBQUc7UUFDVixPQUFPLDZCQUFBLGdCQUFBLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsRUFBYyxLQUFLLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7SUFDM0UsQ0FBQztDQUNGLENBQUMsQ0FBQyxDQUFBO0FBRUw7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsdUJBQWlCLE9BQU8sRUFBeEIsUUFBUSxDQUFpQixDQUFBIn0=
|
|
@@ -8,10 +8,10 @@ import type { ResponseError } from "@sendgrid/mail";
|
|
|
8
8
|
import type sgMail from "@sendgrid/mail";
|
|
9
9
|
import type { RequestContextContainer } from "../RequestContextContainer.js";
|
|
10
10
|
declare const Emailer_base: (abstract new () => {}) & {
|
|
11
|
-
flatMap<R1, E1, B>(f: (a: Emailer) => import("effect
|
|
12
|
-
map<B_1>(f: (a: Emailer) => B_1): import("effect
|
|
13
|
-
makeLayer(svc: Emailer): import("effect
|
|
14
|
-
} & import("effect/Context").Tag<Emailer, Emailer>;
|
|
11
|
+
flatMap<R1, E1, B>(f: (a: Emailer) => import("effect").Effect<R1, E1, B>): import("effect").Effect<Emailer | R1, E1, B>;
|
|
12
|
+
map<B_1>(f: (a: Emailer) => B_1): import("effect").Effect<Emailer, never, B_1>;
|
|
13
|
+
makeLayer(svc: Emailer): import("effect").Layer<never, never, Emailer>;
|
|
14
|
+
} & import("effect/Context.impl").Tag<Emailer, Emailer>;
|
|
15
15
|
/**
|
|
16
16
|
* @tsplus type Emailer
|
|
17
17
|
* @tsplus companion Emailer.Ops
|
|
@@ -3,5 +3,5 @@ import { Exit } from "effect/Exit";
|
|
|
3
3
|
* @tsplus static Operations.Ops Live
|
|
4
4
|
* @tsplus location "@effect-app/infra/services/Operations/live"
|
|
5
5
|
*/
|
|
6
|
-
export declare const Live: import("effect
|
|
6
|
+
export declare const Live: import("effect").Layer<never, never, import("./service.js").OperationsId>;
|
|
7
7
|
//# sourceMappingURL=live.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../../_src/services/Operations/live.ts"],"names":[],"mappings":";;;;;AAwGA,eAAO,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../../_src/services/Operations/live.ts"],"names":[],"mappings":";;;;;AAwGA,eAAO,MAAM,IAAI,2EAEQ,CAAA"}
|