@effect-app/infra 0.132.2 → 0.133.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/_cjs/RequestContext.cjs +23 -13
- package/_cjs/RequestContext.cjs.map +1 -1
- package/_cjs/_global.ext.cjs +22 -0
- package/_cjs/_global.ext.cjs.map +1 -1
- package/_cjs/api/codec.cjs +2 -6
- package/_cjs/api/codec.cjs.map +1 -1
- package/_cjs/api/express/schema/jwt.cjs +5 -26
- package/_cjs/api/express/schema/jwt.cjs.map +1 -1
- package/_cjs/api/setupRequest.cjs +2 -2
- package/_cjs/api/setupRequest.cjs.map +1 -1
- package/_cjs/errors.cjs +3 -1
- package/_cjs/errors.cjs.map +1 -1
- package/_cjs/services/Emailer/Sendgrid.cjs +5 -4
- package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -1
- package/_cjs/services/Operations/live.cjs +12 -10
- package/_cjs/services/Operations/live.cjs.map +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs +17 -15
- package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs +30 -29
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/service.cjs +3 -3
- package/_cjs/services/QueueMaker/service.cjs.map +1 -1
- package/_cjs/services/Repository.cjs +2 -2
- package/_cjs/services/Repository.cjs.map +1 -1
- package/_cjs/services/RepositoryBase.cjs +31 -33
- package/_cjs/services/RepositoryBase.cjs.map +1 -1
- package/_cjs/services/RequestContextContainer.cjs +3 -3
- package/_cjs/services/RequestContextContainer.cjs.map +1 -1
- package/_cjs/services/Store/Cosmos.cjs +4 -4
- package/_cjs/services/Store/Cosmos.cjs.map +1 -1
- package/_cjs/services/Store/Disk.cjs +15 -13
- package/_cjs/services/Store/Disk.cjs.map +1 -1
- package/_cjs/services/Store/service.cjs +49 -40
- package/_cjs/services/Store/service.cjs.map +1 -1
- package/_cjs/services/simpledb/memdb.cjs +15 -15
- package/_cjs/services/simpledb/memdb.cjs.map +1 -1
- package/_cjs/services/simpledb/redisdb.cjs +15 -14
- package/_cjs/services/simpledb/redisdb.cjs.map +1 -1
- package/_cjs/services/simpledb/shared.cjs +3 -3
- package/_cjs/services/simpledb/shared.cjs.map +1 -1
- package/_src/RequestContext.ts +27 -28
- package/_src/_global.ext.ts +27 -4
- package/_src/_global.schema.ts +1 -1
- package/_src/api/codec.ts +3 -9
- package/_src/api/express/schema/jwt.ts +5 -32
- package/_src/api/express/schema/{routing.ts → routing.ts.bak} +10 -10
- package/_src/errors.ts +12 -5
- package/_src/services/Emailer/Sendgrid.ts +17 -14
- package/_src/services/QueueMaker/memQueue.ts +4 -3
- package/_src/services/QueueMaker/sbqueue.ts +4 -3
- package/_src/services/QueueMaker/service.ts +2 -2
- package/_src/services/Repository.ts +14 -13
- package/_src/services/RepositoryBase.ts +14 -37
- package/_src/services/Store/Cosmos.ts +23 -21
- package/_src/services/Store/Disk.ts +4 -2
- package/_src/services/Store/service.ts +59 -62
- package/_src/services/simpledb/memdb.ts +1 -2
- package/_src/services/simpledb/redisdb.ts +21 -17
- package/_src/services/simpledb/shared.ts +4 -5
- package/dist/RequestContext.d.ts +93 -77
- package/dist/RequestContext.d.ts.map +1 -1
- package/dist/RequestContext.js +24 -14
- package/dist/_global.ext.d.ts +22 -5
- package/dist/_global.ext.d.ts.map +1 -1
- package/dist/_global.ext.js +18 -2
- package/dist/_global.schema.d.ts +1 -1
- package/dist/_global.schema.d.ts.map +1 -1
- package/dist/_global.schema.js +1 -1
- package/dist/api/codec.d.ts +2 -3
- package/dist/api/codec.d.ts.map +1 -1
- package/dist/api/codec.js +3 -7
- package/dist/api/express/schema/jwt.d.ts +2 -4
- package/dist/api/express/schema/jwt.d.ts.map +1 -1
- package/dist/api/express/schema/jwt.js +5 -27
- package/dist/api/setupRequest.js +3 -3
- package/dist/errors.d.ts +6 -6
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +4 -2
- package/dist/services/Emailer/Sendgrid.d.ts +108 -108
- package/dist/services/Emailer/Sendgrid.d.ts.map +1 -1
- package/dist/services/Emailer/Sendgrid.js +6 -5
- package/dist/services/Operations/live.js +17 -15
- package/dist/services/Operations/service.d.ts +4 -4
- package/dist/services/Operations/service.d.ts.map +1 -1
- package/dist/services/QueueMaker/memQueue.d.ts +2 -2
- package/dist/services/QueueMaker/memQueue.d.ts.map +1 -1
- package/dist/services/QueueMaker/memQueue.js +17 -15
- package/dist/services/QueueMaker/sbqueue.d.ts +2 -2
- package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
- package/dist/services/QueueMaker/sbqueue.js +26 -25
- package/dist/services/QueueMaker/service.d.ts +30 -16
- package/dist/services/QueueMaker/service.d.ts.map +1 -1
- package/dist/services/QueueMaker/service.js +4 -4
- package/dist/services/Repository.d.ts +10 -9
- package/dist/services/Repository.d.ts.map +1 -1
- package/dist/services/Repository.js +3 -3
- package/dist/services/RepositoryBase.d.ts +20 -21
- package/dist/services/RepositoryBase.d.ts.map +1 -1
- package/dist/services/RepositoryBase.js +32 -34
- package/dist/services/RequestContextContainer.d.ts +4 -4
- package/dist/services/RequestContextContainer.js +3 -3
- package/dist/services/Store/Cosmos.d.ts.map +1 -1
- package/dist/services/Store/Cosmos.js +6 -6
- package/dist/services/Store/Disk.d.ts.map +1 -1
- package/dist/services/Store/Disk.js +14 -13
- package/dist/services/Store/service.d.ts +6 -9
- package/dist/services/Store/service.d.ts.map +1 -1
- package/dist/services/Store/service.js +50 -43
- package/dist/services/simpledb/memdb.d.ts +3 -4
- package/dist/services/simpledb/memdb.d.ts.map +1 -1
- package/dist/services/simpledb/memdb.js +17 -17
- package/dist/services/simpledb/redisdb.d.ts +14 -10
- package/dist/services/simpledb/redisdb.d.ts.map +1 -1
- package/dist/services/simpledb/redisdb.js +17 -16
- package/dist/services/simpledb/shared.d.ts +24 -16
- package/dist/services/simpledb/shared.d.ts.map +1 -1
- package/dist/services/simpledb/shared.js +4 -4
- package/package.json +7 -56
- package/tsconfig.json +2 -1
- package/_cjs/api/express/makeJsonSchema.cjs +0 -151
- package/_cjs/api/express/makeJsonSchema.cjs.map +0 -1
- package/_cjs/api/express/makeJsonSchema.test.cjs +0 -50
- package/_cjs/api/express/makeJsonSchema.test.cjs.map +0 -1
- package/_cjs/api/express/makeOpenApiSpecs.cjs +0 -65
- package/_cjs/api/express/makeOpenApiSpecs.cjs.map +0 -1
- package/_cjs/api/express/schema/routing.cjs +0 -137
- package/_cjs/api/express/schema/routing.cjs.map +0 -1
- package/_cjs/api/writeDocs.cjs +0 -32
- package/_cjs/api/writeDocs.cjs.map +0 -1
- package/_cjs/test.arbs.cjs +0 -32
- package/_cjs/test.arbs.cjs.map +0 -1
- package/dist/api/express/makeJsonSchema.d.ts +0 -34
- package/dist/api/express/makeJsonSchema.d.ts.map +0 -1
- package/dist/api/express/makeJsonSchema.js +0 -131
- package/dist/api/express/makeJsonSchema.test.d.ts.map +0 -1
- package/dist/api/express/makeOpenApiSpecs.d.ts +0 -58
- package/dist/api/express/makeOpenApiSpecs.d.ts.map +0 -1
- package/dist/api/express/makeOpenApiSpecs.js +0 -55
- package/dist/api/express/schema/routing.d.ts +0 -62
- package/dist/api/express/schema/routing.d.ts.map +0 -1
- package/dist/api/express/schema/routing.js +0 -111
- package/dist/api/writeDocs.d.ts +0 -4
- package/dist/api/writeDocs.d.ts.map +0 -1
- package/dist/api/writeDocs.js +0 -24
- package/dist/test.arbs.d.ts +0 -13
- package/dist/test.arbs.d.ts.map +0 -1
- package/dist/test.arbs.js +0 -22
- /package/_src/api/express/{makeJsonSchema.test.ts → makeJsonSchema.test.ts.bak} +0 -0
- /package/_src/api/express/{makeJsonSchema.ts → makeJsonSchema.ts.bak} +0 -0
- /package/_src/api/express/{makeOpenApiSpecs.ts → makeOpenApiSpecs.ts.bak} +0 -0
- /package/_src/api/{writeDocs.ts → writeDocs.ts.bak} +0 -0
- /package/_src/{test.arbs.ts → test.arbs.ts.bak} +0 -0
|
@@ -10,167 +10,167 @@ export declare function Sendgrid(config: SendgridConfig): import("effect/Layer")
|
|
|
10
10
|
* @hidden
|
|
11
11
|
*/
|
|
12
12
|
export declare function renderMessage(forceFake: boolean): (msg: EmailMsg) => {
|
|
13
|
-
to: EmailData | EmailData[]
|
|
14
|
-
cc: EmailData | EmailData[]
|
|
15
|
-
bcc: EmailData | EmailData[]
|
|
13
|
+
to: EmailData | EmailData[];
|
|
14
|
+
cc: EmailData | EmailData[];
|
|
15
|
+
bcc: EmailData | EmailData[];
|
|
16
16
|
from: EmailData;
|
|
17
|
-
replyTo?: EmailData
|
|
18
|
-
sendAt?: number
|
|
19
|
-
subject?: string
|
|
17
|
+
replyTo?: EmailData;
|
|
18
|
+
sendAt?: number;
|
|
19
|
+
subject?: string;
|
|
20
20
|
text: string;
|
|
21
|
-
html?: string
|
|
22
|
-
content?: import("@sendgrid/helpers/classes/mail.js").MailContent[]
|
|
23
|
-
templateId?: string
|
|
24
|
-
personalizations?: import("@sendgrid/helpers/classes/personalization.js").PersonalizationData[]
|
|
25
|
-
attachments?: import("@sendgrid/helpers/classes/attachment.js").AttachmentData[]
|
|
26
|
-
ipPoolName?: string
|
|
27
|
-
batchId?: string
|
|
21
|
+
html?: string;
|
|
22
|
+
content?: import("@sendgrid/helpers/classes/mail.js").MailContent[];
|
|
23
|
+
templateId?: string;
|
|
24
|
+
personalizations?: import("@sendgrid/helpers/classes/personalization.js").PersonalizationData[];
|
|
25
|
+
attachments?: import("@sendgrid/helpers/classes/attachment.js").AttachmentData[];
|
|
26
|
+
ipPoolName?: string;
|
|
27
|
+
batchId?: string;
|
|
28
28
|
sections?: {
|
|
29
29
|
[key: string]: string;
|
|
30
|
-
}
|
|
30
|
+
};
|
|
31
31
|
headers?: {
|
|
32
32
|
[key: string]: string;
|
|
33
|
-
}
|
|
34
|
-
categories?: string[]
|
|
35
|
-
category?: string
|
|
33
|
+
};
|
|
34
|
+
categories?: string[];
|
|
35
|
+
category?: string;
|
|
36
36
|
customArgs?: {
|
|
37
37
|
[key: string]: any;
|
|
38
|
-
}
|
|
39
|
-
asm?: import("@sendgrid/helpers/classes/mail.js").ASMOptions
|
|
40
|
-
mailSettings?: import("@sendgrid/helpers/classes/mail.js").MailSettings
|
|
41
|
-
trackingSettings?: import("@sendgrid/helpers/classes/mail.js").TrackingSettings
|
|
38
|
+
};
|
|
39
|
+
asm?: import("@sendgrid/helpers/classes/mail.js").ASMOptions;
|
|
40
|
+
mailSettings?: import("@sendgrid/helpers/classes/mail.js").MailSettings;
|
|
41
|
+
trackingSettings?: import("@sendgrid/helpers/classes/mail.js").TrackingSettings;
|
|
42
42
|
substitutions?: {
|
|
43
43
|
[key: string]: string;
|
|
44
|
-
}
|
|
45
|
-
substitutionWrappers?: string[]
|
|
46
|
-
isMultiple?: boolean
|
|
44
|
+
};
|
|
45
|
+
substitutionWrappers?: string[];
|
|
46
|
+
isMultiple?: boolean;
|
|
47
47
|
dynamicTemplateData?: {
|
|
48
48
|
[key: string]: any;
|
|
49
|
-
}
|
|
50
|
-
hideWarnings?: boolean
|
|
51
|
-
replyToList?: import("@sendgrid/helpers/classes/email-address.js").EmailJSON | import("@sendgrid/helpers/classes/email-address.js").EmailJSON[]
|
|
49
|
+
};
|
|
50
|
+
hideWarnings?: boolean;
|
|
51
|
+
replyToList?: import("@sendgrid/helpers/classes/email-address.js").EmailJSON | import("@sendgrid/helpers/classes/email-address.js").EmailJSON[];
|
|
52
52
|
} | {
|
|
53
|
-
to: EmailData | EmailData[]
|
|
54
|
-
cc: EmailData | EmailData[]
|
|
55
|
-
bcc: EmailData | EmailData[]
|
|
53
|
+
to: EmailData | EmailData[];
|
|
54
|
+
cc: EmailData | EmailData[];
|
|
55
|
+
bcc: EmailData | EmailData[];
|
|
56
56
|
from: EmailData;
|
|
57
|
-
replyTo?: EmailData
|
|
58
|
-
sendAt?: number
|
|
59
|
-
subject?: string
|
|
60
|
-
text?: string
|
|
57
|
+
replyTo?: EmailData;
|
|
58
|
+
sendAt?: number;
|
|
59
|
+
subject?: string;
|
|
60
|
+
text?: string;
|
|
61
61
|
html: string;
|
|
62
|
-
content?: import("@sendgrid/helpers/classes/mail.js").MailContent[]
|
|
63
|
-
templateId?: string
|
|
64
|
-
personalizations?: import("@sendgrid/helpers/classes/personalization.js").PersonalizationData[]
|
|
65
|
-
attachments?: import("@sendgrid/helpers/classes/attachment.js").AttachmentData[]
|
|
66
|
-
ipPoolName?: string
|
|
67
|
-
batchId?: string
|
|
62
|
+
content?: import("@sendgrid/helpers/classes/mail.js").MailContent[];
|
|
63
|
+
templateId?: string;
|
|
64
|
+
personalizations?: import("@sendgrid/helpers/classes/personalization.js").PersonalizationData[];
|
|
65
|
+
attachments?: import("@sendgrid/helpers/classes/attachment.js").AttachmentData[];
|
|
66
|
+
ipPoolName?: string;
|
|
67
|
+
batchId?: string;
|
|
68
68
|
sections?: {
|
|
69
69
|
[key: string]: string;
|
|
70
|
-
}
|
|
70
|
+
};
|
|
71
71
|
headers?: {
|
|
72
72
|
[key: string]: string;
|
|
73
|
-
}
|
|
74
|
-
categories?: string[]
|
|
75
|
-
category?: string
|
|
73
|
+
};
|
|
74
|
+
categories?: string[];
|
|
75
|
+
category?: string;
|
|
76
76
|
customArgs?: {
|
|
77
77
|
[key: string]: any;
|
|
78
|
-
}
|
|
79
|
-
asm?: import("@sendgrid/helpers/classes/mail.js").ASMOptions
|
|
80
|
-
mailSettings?: import("@sendgrid/helpers/classes/mail.js").MailSettings
|
|
81
|
-
trackingSettings?: import("@sendgrid/helpers/classes/mail.js").TrackingSettings
|
|
78
|
+
};
|
|
79
|
+
asm?: import("@sendgrid/helpers/classes/mail.js").ASMOptions;
|
|
80
|
+
mailSettings?: import("@sendgrid/helpers/classes/mail.js").MailSettings;
|
|
81
|
+
trackingSettings?: import("@sendgrid/helpers/classes/mail.js").TrackingSettings;
|
|
82
82
|
substitutions?: {
|
|
83
83
|
[key: string]: string;
|
|
84
|
-
}
|
|
85
|
-
substitutionWrappers?: string[]
|
|
86
|
-
isMultiple?: boolean
|
|
84
|
+
};
|
|
85
|
+
substitutionWrappers?: string[];
|
|
86
|
+
isMultiple?: boolean;
|
|
87
87
|
dynamicTemplateData?: {
|
|
88
88
|
[key: string]: any;
|
|
89
|
-
}
|
|
90
|
-
hideWarnings?: boolean
|
|
91
|
-
replyToList?: import("@sendgrid/helpers/classes/email-address.js").EmailJSON | import("@sendgrid/helpers/classes/email-address.js").EmailJSON[]
|
|
89
|
+
};
|
|
90
|
+
hideWarnings?: boolean;
|
|
91
|
+
replyToList?: import("@sendgrid/helpers/classes/email-address.js").EmailJSON | import("@sendgrid/helpers/classes/email-address.js").EmailJSON[];
|
|
92
92
|
} | {
|
|
93
|
-
to: EmailData | EmailData[]
|
|
94
|
-
cc: EmailData | EmailData[]
|
|
95
|
-
bcc: EmailData | EmailData[]
|
|
93
|
+
to: EmailData | EmailData[];
|
|
94
|
+
cc: EmailData | EmailData[];
|
|
95
|
+
bcc: EmailData | EmailData[];
|
|
96
96
|
from: EmailData;
|
|
97
|
-
replyTo?: EmailData
|
|
98
|
-
sendAt?: number
|
|
99
|
-
subject?: string
|
|
100
|
-
text?: string
|
|
101
|
-
html?: string
|
|
102
|
-
content?: import("@sendgrid/helpers/classes/mail.js").MailContent[]
|
|
97
|
+
replyTo?: EmailData;
|
|
98
|
+
sendAt?: number;
|
|
99
|
+
subject?: string;
|
|
100
|
+
text?: string;
|
|
101
|
+
html?: string;
|
|
102
|
+
content?: import("@sendgrid/helpers/classes/mail.js").MailContent[];
|
|
103
103
|
templateId: string;
|
|
104
|
-
personalizations?: import("@sendgrid/helpers/classes/personalization.js").PersonalizationData[]
|
|
105
|
-
attachments?: import("@sendgrid/helpers/classes/attachment.js").AttachmentData[]
|
|
106
|
-
ipPoolName?: string
|
|
107
|
-
batchId?: string
|
|
104
|
+
personalizations?: import("@sendgrid/helpers/classes/personalization.js").PersonalizationData[];
|
|
105
|
+
attachments?: import("@sendgrid/helpers/classes/attachment.js").AttachmentData[];
|
|
106
|
+
ipPoolName?: string;
|
|
107
|
+
batchId?: string;
|
|
108
108
|
sections?: {
|
|
109
109
|
[key: string]: string;
|
|
110
|
-
}
|
|
110
|
+
};
|
|
111
111
|
headers?: {
|
|
112
112
|
[key: string]: string;
|
|
113
|
-
}
|
|
114
|
-
categories?: string[]
|
|
115
|
-
category?: string
|
|
113
|
+
};
|
|
114
|
+
categories?: string[];
|
|
115
|
+
category?: string;
|
|
116
116
|
customArgs?: {
|
|
117
117
|
[key: string]: any;
|
|
118
|
-
}
|
|
119
|
-
asm?: import("@sendgrid/helpers/classes/mail.js").ASMOptions
|
|
120
|
-
mailSettings?: import("@sendgrid/helpers/classes/mail.js").MailSettings
|
|
121
|
-
trackingSettings?: import("@sendgrid/helpers/classes/mail.js").TrackingSettings
|
|
118
|
+
};
|
|
119
|
+
asm?: import("@sendgrid/helpers/classes/mail.js").ASMOptions;
|
|
120
|
+
mailSettings?: import("@sendgrid/helpers/classes/mail.js").MailSettings;
|
|
121
|
+
trackingSettings?: import("@sendgrid/helpers/classes/mail.js").TrackingSettings;
|
|
122
122
|
substitutions?: {
|
|
123
123
|
[key: string]: string;
|
|
124
|
-
}
|
|
125
|
-
substitutionWrappers?: string[]
|
|
126
|
-
isMultiple?: boolean
|
|
124
|
+
};
|
|
125
|
+
substitutionWrappers?: string[];
|
|
126
|
+
isMultiple?: boolean;
|
|
127
127
|
dynamicTemplateData?: {
|
|
128
128
|
[key: string]: any;
|
|
129
|
-
}
|
|
130
|
-
hideWarnings?: boolean
|
|
131
|
-
replyToList?: import("@sendgrid/helpers/classes/email-address.js").EmailJSON | import("@sendgrid/helpers/classes/email-address.js").EmailJSON[]
|
|
129
|
+
};
|
|
130
|
+
hideWarnings?: boolean;
|
|
131
|
+
replyToList?: import("@sendgrid/helpers/classes/email-address.js").EmailJSON | import("@sendgrid/helpers/classes/email-address.js").EmailJSON[];
|
|
132
132
|
} | {
|
|
133
|
-
to: EmailData | EmailData[]
|
|
134
|
-
cc: EmailData | EmailData[]
|
|
135
|
-
bcc: EmailData | EmailData[]
|
|
133
|
+
to: EmailData | EmailData[];
|
|
134
|
+
cc: EmailData | EmailData[];
|
|
135
|
+
bcc: EmailData | EmailData[];
|
|
136
136
|
from: EmailData;
|
|
137
|
-
replyTo?: EmailData
|
|
138
|
-
sendAt?: number
|
|
139
|
-
subject?: string
|
|
140
|
-
text?: string
|
|
141
|
-
html?: string
|
|
137
|
+
replyTo?: EmailData;
|
|
138
|
+
sendAt?: number;
|
|
139
|
+
subject?: string;
|
|
140
|
+
text?: string;
|
|
141
|
+
html?: string;
|
|
142
142
|
content: import("@sendgrid/helpers/classes/mail.js").MailContent[] & {
|
|
143
143
|
0: import("@sendgrid/helpers/classes/mail.js").MailContent;
|
|
144
144
|
};
|
|
145
|
-
templateId?: string
|
|
146
|
-
personalizations?: import("@sendgrid/helpers/classes/personalization.js").PersonalizationData[]
|
|
147
|
-
attachments?: import("@sendgrid/helpers/classes/attachment.js").AttachmentData[]
|
|
148
|
-
ipPoolName?: string
|
|
149
|
-
batchId?: string
|
|
145
|
+
templateId?: string;
|
|
146
|
+
personalizations?: import("@sendgrid/helpers/classes/personalization.js").PersonalizationData[];
|
|
147
|
+
attachments?: import("@sendgrid/helpers/classes/attachment.js").AttachmentData[];
|
|
148
|
+
ipPoolName?: string;
|
|
149
|
+
batchId?: string;
|
|
150
150
|
sections?: {
|
|
151
151
|
[key: string]: string;
|
|
152
|
-
}
|
|
152
|
+
};
|
|
153
153
|
headers?: {
|
|
154
154
|
[key: string]: string;
|
|
155
|
-
}
|
|
156
|
-
categories?: string[]
|
|
157
|
-
category?: string
|
|
155
|
+
};
|
|
156
|
+
categories?: string[];
|
|
157
|
+
category?: string;
|
|
158
158
|
customArgs?: {
|
|
159
159
|
[key: string]: any;
|
|
160
|
-
}
|
|
161
|
-
asm?: import("@sendgrid/helpers/classes/mail.js").ASMOptions
|
|
162
|
-
mailSettings?: import("@sendgrid/helpers/classes/mail.js").MailSettings
|
|
163
|
-
trackingSettings?: import("@sendgrid/helpers/classes/mail.js").TrackingSettings
|
|
160
|
+
};
|
|
161
|
+
asm?: import("@sendgrid/helpers/classes/mail.js").ASMOptions;
|
|
162
|
+
mailSettings?: import("@sendgrid/helpers/classes/mail.js").MailSettings;
|
|
163
|
+
trackingSettings?: import("@sendgrid/helpers/classes/mail.js").TrackingSettings;
|
|
164
164
|
substitutions?: {
|
|
165
165
|
[key: string]: string;
|
|
166
|
-
}
|
|
167
|
-
substitutionWrappers?: string[]
|
|
168
|
-
isMultiple?: boolean
|
|
166
|
+
};
|
|
167
|
+
substitutionWrappers?: string[];
|
|
168
|
+
isMultiple?: boolean;
|
|
169
169
|
dynamicTemplateData?: {
|
|
170
170
|
[key: string]: any;
|
|
171
|
-
}
|
|
172
|
-
hideWarnings?: boolean
|
|
173
|
-
replyToList?: import("@sendgrid/helpers/classes/email-address.js").EmailJSON | import("@sendgrid/helpers/classes/email-address.js").EmailJSON[]
|
|
171
|
+
};
|
|
172
|
+
hideWarnings?: boolean;
|
|
173
|
+
replyToList?: import("@sendgrid/helpers/classes/email-address.js").EmailJSON | import("@sendgrid/helpers/classes/email-address.js").EmailJSON[];
|
|
174
174
|
};
|
|
175
175
|
/**
|
|
176
176
|
* @hidden
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sendgrid.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/Sendgrid.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Sendgrid.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/Sendgrid.ts"],"names":[],"mappings":"AACA,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,QAAQ,CAAC,MAAM,EAAE,cAAc,uDAG9C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,OAAO,SAWpC,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOnB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,SAAS,WAO1C"}
|
|
@@ -4,6 +4,7 @@ import * as tsplus_module_3 from "effect/Layer";
|
|
|
4
4
|
import * as tsplus_module_4 from "effect/Equivalence";
|
|
5
5
|
import * as tsplus_module_5 from "@effect-app/core/_ext/ord.ext";
|
|
6
6
|
import * as tsplus_module_6 from "@effect-app/core/Array";
|
|
7
|
+
import { dropUndefinedT } from "@effect-app/core/utils";
|
|
7
8
|
import sgMail from "@sendgrid/mail";
|
|
8
9
|
import { inspect } from "util";
|
|
9
10
|
import { Emailer } from "./service.js";
|
|
@@ -12,11 +13,11 @@ const makeSendgrid = ({ apiKey, defaultFrom, defaultReplyTo, realMail, subjectPr
|
|
|
12
13
|
return {
|
|
13
14
|
sendMail(msg_) {
|
|
14
15
|
return tsplus_module_2.gen(function* ($) {
|
|
15
|
-
const msg = {
|
|
16
|
+
const msg = dropUndefinedT({
|
|
16
17
|
...msg_,
|
|
17
18
|
from: msg_.from ?? defaultFrom,
|
|
18
19
|
replyTo: msg_.replyTo ?? (msg_.from ? undefined : defaultReplyTo)
|
|
19
|
-
};
|
|
20
|
+
});
|
|
20
21
|
const render = renderMessage(!realMail);
|
|
21
22
|
const renderedMsg_ = render(msg);
|
|
22
23
|
const renderedMsg = { ...renderedMsg_, subject: `${subjectPrefix}${renderedMsg_.subject}` };
|
|
@@ -51,13 +52,13 @@ export function renderMessage(forceFake) {
|
|
|
51
52
|
let i = 0;
|
|
52
53
|
const makeId = () => i++;
|
|
53
54
|
return forceFake
|
|
54
|
-
? (msg) => ({
|
|
55
|
+
? (msg) => dropUndefinedT({
|
|
55
56
|
...msg,
|
|
56
57
|
to: msg.to && renderFake(msg.to, makeId),
|
|
57
58
|
cc: msg.cc && renderFake(msg.cc, makeId),
|
|
58
59
|
bcc: msg.bcc && renderFake(msg.bcc, makeId)
|
|
59
60
|
})
|
|
60
|
-
: (msg) => ({
|
|
61
|
+
: (msg) => dropUndefinedT({
|
|
61
62
|
...msg,
|
|
62
63
|
to: msg.to && renderFakeIfTest(msg.to, makeId),
|
|
63
64
|
cc: msg.cc && renderFakeIfTest(msg.cc, makeId),
|
|
@@ -98,4 +99,4 @@ function renderMailData(md) {
|
|
|
98
99
|
}
|
|
99
100
|
return md.email;
|
|
100
101
|
}
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VuZGdyaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL0VtYWlsZXIvU2VuZGdyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBRXZELE9BQU8sTUFBTSxNQUFNLGdCQUFnQixDQUFBO0FBQ25DLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUd0QyxNQUFNLFlBQVksR0FBRyxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBa0IsRUFBRSxFQUFFLENBQ3hHLHFCQUFZLEdBQUcsRUFBRTtJQUNmLE1BQU0sQ0FBQyxTQUFTLHVCQUFDLE1BQU0sRUFBTyxDQUFBO0lBRTlCLE9BQU87UUFDTCxRQUFRLENBQUMsSUFBMEI7WUFDakMsT0FBTyxvQkFBVyxRQUFRLENBQUMsRUFBQyxDQUFDO2dCQUMzQixNQUFNLEdBQUcsR0FBYSxjQUFjLENBQUM7b0JBQ25DLEdBQUcsSUFBSTtvQkFDUCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxXQUFXO29CQUM5QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO2lCQUNsRSxDQUFDLENBQUE7Z0JBQ0YsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUE7Z0JBRXZDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDaEMsTUFBTSxXQUFXLEdBQUcsRUFBRSxHQUFHLFlBQVksRUFBRSxPQUFPLEVBQUUsR0FBRyxhQUFhLEdBQUcsWUFBWSxDQUFD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
|
|
@@ -5,12 +5,14 @@ import * as tsplus_module_4 from "@effect-app/core/Array";
|
|
|
5
5
|
import * as tsplus_module_5 from "effect/Chunk";
|
|
6
6
|
import * as tsplus_module_6 from "effect/Exit";
|
|
7
7
|
import * as tsplus_module_7 from "effect/Cause";
|
|
8
|
-
import * as tsplus_module_8 from "@effect-app/
|
|
9
|
-
import * as tsplus_module_9 from "@effect-app/
|
|
10
|
-
import * as tsplus_module_10 from "@effect
|
|
11
|
-
import * as tsplus_module_11 from "effect/
|
|
12
|
-
import * as tsplus_module_12 from "effect/
|
|
13
|
-
import * as tsplus_module_13 from "effect/
|
|
8
|
+
import * as tsplus_module_8 from "@effect-app/infra/_global.ext";
|
|
9
|
+
import * as tsplus_module_9 from "@effect-app/prelude/schema";
|
|
10
|
+
import * as tsplus_module_10 from "@effect/schema/Parser";
|
|
11
|
+
import * as tsplus_module_11 from "@effect-app/core/Option";
|
|
12
|
+
import * as tsplus_module_12 from "@effect-app/prelude/_ext/misc";
|
|
13
|
+
import * as tsplus_module_13 from "effect/Duration";
|
|
14
|
+
import * as tsplus_module_14 from "effect/Schedule";
|
|
15
|
+
import * as tsplus_module_15 from "effect/Layer";
|
|
14
16
|
import { reportError } from "@effect-app/infra/errorReporter";
|
|
15
17
|
import { Failure, Operation, OperationId, Success } from "@effect-app/prelude/Operations";
|
|
16
18
|
import { Operations } from "./service.js";
|
|
@@ -48,13 +50,13 @@ const make = tsplus_module_1.sync(() => {
|
|
|
48
50
|
? new Success()
|
|
49
51
|
: new Failure({
|
|
50
52
|
message: tsplus_module_7.isInterrupted(exit.cause)
|
|
51
|
-
? tsplus_module_8.NonEmptyString2k
|
|
53
|
+
? tsplus_module_8.parseSync(tsplus_module_16.NonEmptyString2k, "Interrupted")
|
|
52
54
|
: tsplus_module_7.isDie(exit.cause)
|
|
53
|
-
? tsplus_module_8.NonEmptyString2k
|
|
54
|
-
:
|
|
55
|
-
.cause), (_) => typeof _ === "object" && _ !== null && "message" in _ &&
|
|
55
|
+
? tsplus_module_8.parseSync(tsplus_module_17.NonEmptyString2k, "Unknown error")
|
|
56
|
+
: tsplus_module_11.getOrUndefined(tsplus_module_3.flatMap(tsplus_module_7.failureOption(exit
|
|
57
|
+
.cause), (_) => typeof _ === "object" && _ !== null && "message" in _ && tsplus_module_10.is(tsplus_module_9.NonEmptyString2k)(_.message)
|
|
56
58
|
? tsplus_module_3.some(_.message)
|
|
57
|
-
:
|
|
59
|
+
: tsplus_module_11.none)) ?? null
|
|
58
60
|
})
|
|
59
61
|
});
|
|
60
62
|
}));
|
|
@@ -69,7 +71,7 @@ const make = tsplus_module_1.sync(() => {
|
|
|
69
71
|
}
|
|
70
72
|
return {
|
|
71
73
|
cleanup,
|
|
72
|
-
register: tsplus_module_1.tap(makeOp, (id) => tsplus_module_1.zipRight(tsplus_module_1.acquireRelease(addOp(id), (_, exit) => finishOp(id, exit)))(
|
|
74
|
+
register: tsplus_module_1.tap(makeOp, (id) => tsplus_module_1.zipRight(tsplus_module_1.acquireRelease(addOp(id), (_, exit) => finishOp(id, exit)))(tsplus_module_12.annotateLogscoped("operationId", id))),
|
|
73
75
|
find: findOp,
|
|
74
76
|
update
|
|
75
77
|
};
|
|
@@ -81,9 +83,9 @@ const cleanupLoop = tsplus_module_1.forkScoped(tsplus_module_1.schedule(tsplus_m
|
|
|
81
83
|
else {
|
|
82
84
|
return reportAppError(_.cause);
|
|
83
85
|
}
|
|
84
|
-
}),
|
|
86
|
+
}), tsplus_module_14.fixed(tsplus_module_13.minutes(1))));
|
|
85
87
|
/**
|
|
86
88
|
* @tsplus static Operations.Ops Live
|
|
87
89
|
*/
|
|
88
|
-
export const Live =
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
export const Live = tsplus_module_15.provideMerge(tsplus_module_15.scopedDiscard(cleanupLoop), tsplus_module_15.effect(Operations)(make));
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvT3BlcmF0aW9ucy9saXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUU3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDekYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV6QyxNQUFNLGNBQWMsR0FBRyxXQUFXLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtBQUV4RCxNQUFNLElBQUksR0FBRyxxQkFBWSxHQUFlLEVBQUU7SUFDeEMsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQTBCLENBQUE7SUFDN0MsTUFBTSxNQUFNLEdBQUcsMkJBQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7SUFFekMsTUFBTSxPQUFPLEdBQUcseUJBQUEscUJBQ1IsR0FBRyxFQUFFO1FBQ1QsTUFBTSxNQUFNLEdBQUcsNkJBQUEsSUFBSSxJQUFJLEVBQUUsRUFBVSxDQUFDLENBQUMsQ0FBQTtRQUNyQyxzREFBQSxHQUFHO2FBQ0EsT0FBTyxFQUFFLEdBRUQsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sV0FBVyxHQUFHLDBCQUFBLDZCQUFvQixFQUFFLENBQUMsU0FBUyxDQUFDLEVBQVcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1lBQ25GLElBQUksV0FBVyxHQUFHLE1BQU0sRUFBRSxDQUFDO2dCQUN6QixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ2hCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUMsQ0FBQyxFQUNRLG9CQUFvQixDQUFD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
|
|
@@ -29,21 +29,21 @@ export declare namespace Operations {
|
|
|
29
29
|
* @tsplus getter effect/io/Effect forkOperation
|
|
30
30
|
* @tsplus location "@effect-app/infra/services/Operations/service"
|
|
31
31
|
*/
|
|
32
|
-
export declare function forkOperation<R, E, A>(self: Effect<R, E, A>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/
|
|
32
|
+
export declare function forkOperation<R, E, A>(self: Effect<R, E, A>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/schema/moreStrings").StringId>;
|
|
33
33
|
/**
|
|
34
34
|
* @tsplus getter function forkOperation
|
|
35
35
|
* @tsplus location "@effect-app/infra/services/Operations/service"
|
|
36
36
|
*/
|
|
37
|
-
export declare function forkOperationFunction<R, E, A, Inp>(fnc: (inp: Inp) => Effect<R, E, A>): (inp: Inp) => import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/
|
|
37
|
+
export declare function forkOperationFunction<R, E, A, Inp>(fnc: (inp: Inp) => Effect<R, E, A>): (inp: Inp) => import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/schema/moreStrings").StringId>;
|
|
38
38
|
/**
|
|
39
39
|
* @tsplus static effect/io/Effect.Ops forkOperation
|
|
40
40
|
* @tsplus location "@effect-app/infra/services/Operations/service"
|
|
41
41
|
*/
|
|
42
|
-
export declare function forkOperation2<R, E, A>(self: (opId: OperationId) => Effect<R, E, A>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/
|
|
42
|
+
export declare function forkOperation2<R, E, A>(self: (opId: OperationId) => Effect<R, E, A>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/schema/moreStrings").StringId>;
|
|
43
43
|
/**
|
|
44
44
|
* @tsplus static effect/io/Effect.Ops forkOperationWithEffect
|
|
45
45
|
* @tsplus location "@effect-app/infra/services/Operations/service"
|
|
46
46
|
*/
|
|
47
|
-
export declare function forkOperationWithEffect<R, R2, E, E2, A, A2>(self: (id: OperationId) => Effect<R, E, A>, fnc: (id: OperationId) => Effect<R2, E2, A2>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope> | Exclude<R2, Scope.Scope>, never, import("@effect-app/
|
|
47
|
+
export declare function forkOperationWithEffect<R, R2, E, E2, A, A2>(self: (id: OperationId) => Effect<R, E, A>, fnc: (id: OperationId) => Effect<R2, E2, A2>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope> | Exclude<R2, Scope.Scope>, never, import("@effect-app/schema/moreStrings").StringId>;
|
|
48
48
|
export {};
|
|
49
49
|
//# sourceMappingURL=service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Operations/service.ts"],"names":[],"mappings":";;;AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAC/F,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;;cAOzB,OAAO,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC;iBACpC,WAAW,YAAY,iBAAiB,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;eACzE,WAAW,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,SAAS,CAAC,CAAC;aACzD,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;cAHzB,OAAO,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC;iBACpC,WAAW,YAAY,iBAAiB,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;eACzE,WAAW,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,SAAS,CAAC,CAAC;aACzD,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;AARrC;;;GAGG;AACH,qBAAa,UAAW,SAAQ,eAKhB;CAAG;AACnB,yBAAiB,UAAU,CAAC;IAC1B,UAAiB,EAAE;QACjB,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;KAC1B;CACF;;;;;AAKD,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Operations/service.ts"],"names":[],"mappings":";;;AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAC/F,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;;cAOzB,OAAO,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC;iBACpC,WAAW,YAAY,iBAAiB,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;eACzE,WAAW,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,SAAS,CAAC,CAAC;aACzD,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;cAHzB,OAAO,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC;iBACpC,WAAW,YAAY,iBAAiB,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;eACzE,WAAW,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,SAAS,CAAC,CAAC;aACzD,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;AARrC;;;GAGG;AACH,qBAAa,UAAW,SAAQ,eAKhB;CAAG;AACnB,yBAAiB,UAAU,CAAC;IAC1B,UAAiB,EAAE;QACjB,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;KAC1B;CACF;;;;;AAKD,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,qIAY3D;;;;;AAKD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SACvE,GAAG,uIACjB;;;;;AAKD,wBAAgB,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,qIAYnF;;;;;AAKD,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EACzD,IAAI,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC1C,GAAG,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,gKAc7C"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { StringId } from "@effect-app/prelude/schema";
|
|
2
|
-
import { Schema } from "@effect-app/prelude";
|
|
3
2
|
import { Effect } from "effect/Effect";
|
|
4
3
|
import { MemQueue } from "@effect-app/infra-adapters/memQueue";
|
|
4
|
+
import type { Schema2 } from "@effect-app/prelude";
|
|
5
5
|
import { Tracer } from "effect";
|
|
6
6
|
import { RequestContextContainer } from "../RequestContextContainer.js";
|
|
7
7
|
/**
|
|
@@ -14,7 +14,7 @@ export declare function makeMemQueue<Evt extends {
|
|
|
14
14
|
}, DrainEvt extends {
|
|
15
15
|
id: StringId;
|
|
16
16
|
_tag: string;
|
|
17
|
-
}, EvtE>(queueName: string, queueDrainName: string, schema:
|
|
17
|
+
}, EvtE>(queueName: string, queueDrainName: string, schema: Schema2.Schema<EvtE, Evt>, drainSchema: Schema2.Schema<unknown, DrainEvt>): import("effect/Effect").Effect<RequestContextContainer | MemQueue, never, {
|
|
18
18
|
publish: (messages_0: Evt, ...messages_1: Evt[]) => import("effect/Effect").Effect<never, never, import("effect/Fiber").RuntimeFiber<never, void[]>>;
|
|
19
19
|
makeDrain: <DrainE, DrainR>(handleEvent: (ks: DrainEvt) => Effect<DrainR, DrainE, void>) => import("effect/Effect").Effect<import("effect/Scope").Scope | RequestContextContainer | import("../Store/ContextMapContainer.js").ContextMapContainer | Exclude<Exclude<DrainR, Tracer.ParentSpan>, Tracer.ParentSpan>, never, import("effect/Fiber").RuntimeFiber<never, never>>;
|
|
20
20
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memQueue.d.ts","sourceRoot":"","sources":["../../../_src/services/QueueMaker/memQueue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memQueue.d.ts","sourceRoot":"","sources":["../../../_src/services/QueueMaker/memQueue.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAA;AAE9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;;;;;AAOvE,wBAAgB,YAAY,CAC1B,GAAG,SAAS;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC1C,QAAQ,SAAS;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC/C,IAAI,EAEJ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,EACjC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;;kDAmCtB,QAAQ,KAAK,OAAO,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC;GAwClE"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect-app/prelude/schema";
|
|
2
|
-
import * as tsplus_module_2 from "@effect
|
|
2
|
+
import * as tsplus_module_2 from "@effect/schema/Parser";
|
|
3
3
|
import * as tsplus_module_3 from "effect/Effect";
|
|
4
|
-
import * as tsplus_module_4 from "@effect-app/core/
|
|
5
|
-
import * as tsplus_module_5 from "@effect-app/
|
|
6
|
-
import * as tsplus_module_6 from "@effect-app/
|
|
7
|
-
import * as tsplus_module_7 from "@effect-app/infra/
|
|
8
|
-
import * as tsplus_module_8 from "effect/
|
|
4
|
+
import * as tsplus_module_4 from "@effect-app/core/Function";
|
|
5
|
+
import * as tsplus_module_5 from "@effect-app/core/_ext/Iterable";
|
|
6
|
+
import * as tsplus_module_6 from "@effect-app/infra/services/QueueMaker/errors";
|
|
7
|
+
import * as tsplus_module_7 from "@effect-app/infra/_global.ext";
|
|
8
|
+
import * as tsplus_module_8 from "@effect-app/prelude/utils";
|
|
9
|
+
import * as tsplus_module_9 from "@effect-app/infra/api/setupRequest";
|
|
10
|
+
import * as tsplus_module_10 from "effect/Fiber";
|
|
9
11
|
import { MemQueue } from "@effect-app/infra-adapters/memQueue";
|
|
10
12
|
import { RequestContext } from "@effect-app/infra/RequestContext";
|
|
11
13
|
import { RequestId } from "@effect-app/prelude/ids";
|
|
@@ -24,15 +26,15 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
|
|
|
24
26
|
const rcc = yield* $(RequestContextContainer);
|
|
25
27
|
const wireSchema = tsplus_module_1.struct({ body: schema, meta: QueueMeta });
|
|
26
28
|
const drainW = tsplus_module_1.struct({ body: drainSchema, meta: QueueMeta });
|
|
27
|
-
const parseDrain = tsplus_module_2.
|
|
29
|
+
const parseDrain = tsplus_module_4.flow(tsplus_module_2.parse(drainW), (_) => tsplus_module_3.orDie(_));
|
|
28
30
|
return {
|
|
29
31
|
publish: (...messages) => tsplus_module_3.gen(function* ($) {
|
|
30
32
|
const requestContext = yield* $(rcc.requestContext);
|
|
31
33
|
const currentSpan = yield* $(tsplus_module_3.orDie(tsplus_module_3.currentSpan));
|
|
32
34
|
const span = Tracer.externalSpan(currentSpan);
|
|
33
|
-
return yield* $(
|
|
35
|
+
return yield* $(tsplus_module_6.forkDaemonReportQueue(tsplus_module_5.ext_forEach(messages, (m) => tsplus_module_3.asUnit(
|
|
34
36
|
// we JSON encode, because that is what the wire also does, and it reveals holes in e.g unknown encoders (Date->String)
|
|
35
|
-
tsplus_module_3.flatMap(tsplus_module_3.sync(() => JSON.stringify(
|
|
37
|
+
tsplus_module_3.flatMap(tsplus_module_3.sync(() => JSON.stringify(tsplus_module_2.encodeSync(wireSchema)({ body: m, meta: { requestContext, span } })))
|
|
36
38
|
// .tap((msg) => info("Publishing Mem Message: " + utils.inspect(msg)))
|
|
37
39
|
, (_) => q.offer(_))))));
|
|
38
40
|
}),
|
|
@@ -40,12 +42,12 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
|
|
|
40
42
|
const silenceAndReportError = reportNonInterruptedFailure({ name: "MemQueue.drain." + queueDrainName });
|
|
41
43
|
const processMessage = (msg) =>
|
|
42
44
|
// we JSON parse, because that is what the wire also does, and it reveals holes in e.g unknown encoders (Date->String)
|
|
43
|
-
tsplus_module_3.flatMap(tsplus_module_3.orDie(tsplus_module_3.flatMap(tsplus_module_3.sync(() => JSON.parse(msg)), parseDrain)), ({ body, meta }) => tsplus_module_3.withSpan(
|
|
44
|
-
.pipe(tsplus_module_3.annotateLogs({ body:
|
|
45
|
+
tsplus_module_3.flatMap(tsplus_module_3.orDie(tsplus_module_3.flatMap(tsplus_module_3.sync(() => JSON.parse(msg)), parseDrain)), ({ body, meta }) => tsplus_module_3.withSpan(tsplus_module_9.setupRequestContext(tsplus_module_3.zipRight(tsplus_module_3.logDebug(`$$ [${queueDrainName}] Processing incoming message`)
|
|
46
|
+
.pipe(tsplus_module_3.annotateLogs({ body: tsplus_module_8.RecordPretty(tsplus_module_8.object$(body)), meta: tsplus_module_8.RecordPretty(tsplus_module_8.object$(meta)) })), handleEvent(body))
|
|
45
47
|
.pipe(silenceAndReportError), RequestContext.inherit(meta.requestContext, {
|
|
46
|
-
id: RequestId
|
|
48
|
+
id: tsplus_module_7.parseSync(RequestId, body.id),
|
|
47
49
|
locale: "en",
|
|
48
|
-
name: tsplus_module_1.NonEmptyString255
|
|
50
|
+
name: tsplus_module_7.parseSync(tsplus_module_1.NonEmptyString255, body._tag)
|
|
49
51
|
})), "queue.drain", {
|
|
50
52
|
attributes: { "queue.name": queueDrainName },
|
|
51
53
|
parent: meta.span
|
|
@@ -53,7 +55,7 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
|
|
|
53
55
|
: undefined
|
|
54
56
|
}));
|
|
55
57
|
return yield* $(tsplus_module_3.forkScoped(tsplus_module_3.forever(tsplus_module_3.flatMap(qDrain
|
|
56
|
-
.take, (x) => tsplus_module_3.flatMap(tsplus_module_3.fork(tsplus_module_3.uninterruptible(processMessage(x))), (_) =>
|
|
58
|
+
.take, (x) => tsplus_module_3.flatMap(tsplus_module_3.fork(tsplus_module_3.uninterruptible(processMessage(x))), (_) => tsplus_module_10.join(_)))
|
|
57
59
|
// TODO: normally a failed item would be returned to the queue and retried up to X times.
|
|
58
60
|
// .flatMap(_ => _._tag === "Failure" && !isInterrupted ? qDrain.offer(x) : Effect.unit) // TODO: retry count tracking and max retries.
|
|
59
61
|
.pipe(silenceAndReportError))));
|
|
@@ -61,4 +63,4 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
|
|
|
61
63
|
};
|
|
62
64
|
});
|
|
63
65
|
}
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtUXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL1F1ZXVlTWFrZXIvbWVtUXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFFakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDL0IsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3pELE9BQU8sRUFBa0IsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FLMUIsU0FBaUIsRUFDakIsY0FBc0IsRUFDdEIsTUFBaUMsRUFDakMsV0FBOEM7SUFFOUMsT0FBTyxvQkFBVyxRQUFRLENBQUMsRUFBQyxDQUFDO1FBQzNCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUM5QixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUE7UUFDbkQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQzdELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO1FBRTdDLE1BQU0sVUFBVSxHQUFHLGdCQUFBLE1BQU0sQ0FBQyxFQUFF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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { StringId } from "@effect-app/prelude/schema";
|
|
2
|
-
import { Schema } from "@effect-app/prelude";
|
|
3
2
|
import { Effect } from "effect/Effect";
|
|
3
|
+
import type { Schema2 } from "@effect-app/prelude";
|
|
4
4
|
import { Tracer } from "effect";
|
|
5
5
|
import { RequestContextContainer } from "../RequestContextContainer.js";
|
|
6
6
|
/**
|
|
@@ -13,7 +13,7 @@ export declare function makeServiceBusQueue<Evt extends {
|
|
|
13
13
|
}, DrainEvt extends {
|
|
14
14
|
id: StringId;
|
|
15
15
|
_tag: string;
|
|
16
|
-
}, EvtE>(_queueName: string, queueDrainName: string, schema:
|
|
16
|
+
}, EvtE>(_queueName: string, queueDrainName: string, schema: Schema2.Schema<EvtE, Evt>, drainSchema: Schema2.Schema<unknown, DrainEvt>): import("effect/Effect").Effect<RequestContextContainer | import("@azure/service-bus").ServiceBusReceiver | import("@azure/service-bus").ServiceBusSender, never, {
|
|
17
17
|
makeDrain: <DrainE, DrainR>(handleEvent: (ks: DrainEvt) => Effect<DrainR, DrainE, void>) => import("effect/Effect").Effect<import("effect/Scope").Scope | RequestContextContainer | import("../Store/ContextMapContainer.js").ContextMapContainer | Exclude<Exclude<Exclude<DrainR, Tracer.ParentSpan>, Tracer.ParentSpan>, import("@azure/service-bus").ServiceBusReceiver>, never, void>;
|
|
18
18
|
publish: (messages_0: Evt, ...messages_1: Evt[]) => import("effect/Effect").Effect<never, never, import("effect/Fiber").RuntimeFiber<never, void>>;
|
|
19
19
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sbqueue.d.ts","sourceRoot":"","sources":["../../../_src/services/QueueMaker/sbqueue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sbqueue.d.ts","sourceRoot":"","sources":["../../../_src/services/QueueMaker/sbqueue.ts"],"names":[],"mappings":";;AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;;;;;AAOvE,wBAAgB,mBAAmB,CACjC,GAAG,SAAS;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC1C,QAAQ,SAAS;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC/C,IAAI,EAEJ,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,EACjC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;kDAmBtB,QAAQ,KAAK,OAAO,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC;;GAiElE;;;;;AAKD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,+IAE1F"}
|