@antelopejs/dms-mailing 0.5.1 → 0.6.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/README.md +1 -1
- package/dist/db/models/send-events.model.d.ts +1 -0
- package/dist/db/models/send-events.model.js +11 -0
- package/dist/db/models/send-events.model.js.map +1 -1
- package/dist/db/models/sends.model.d.ts +2 -0
- package/dist/db/models/sends.model.js +13 -0
- package/dist/db/models/sends.model.js.map +1 -1
- package/dist/db/models/template-versions.model.d.ts +3 -1
- package/dist/db/models/template-versions.model.js +35 -2
- package/dist/db/models/template-versions.model.js.map +1 -1
- package/dist/db/models/templates.model.d.ts +1 -0
- package/dist/db/models/templates.model.js +22 -0
- package/dist/db/models/templates.model.js.map +1 -1
- package/dist/db/tables/settings.table.d.ts +1 -0
- package/dist/db/tables/settings.table.js +4 -0
- package/dist/db/tables/settings.table.js.map +1 -1
- package/dist/db/tables/templates.table.d.ts +5 -0
- package/dist/db/tables/templates.table.js +27 -0
- package/dist/db/tables/templates.table.js.map +1 -1
- package/dist/hooks/database-ready.d.ts +7 -0
- package/dist/hooks/database-ready.js +26 -0
- package/dist/hooks/database-ready.js.map +1 -0
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/implementations/dms-mailing/index.d.ts +3 -0
- package/dist/implementations/dms-mailing/index.js +7 -1
- package/dist/implementations/dms-mailing/index.js.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/services/declaration-error.d.ts +6 -0
- package/dist/services/declaration-error.js +26 -0
- package/dist/services/declaration-error.js.map +1 -0
- package/dist/services/declarations.d.ts +3 -0
- package/dist/services/declarations.js +244 -0
- package/dist/services/declarations.js.map +1 -0
- package/dist/services/events.d.ts +4 -1
- package/dist/services/events.js.map +1 -1
- package/dist/services/fingerprint.d.ts +1 -0
- package/dist/services/fingerprint.js +20 -0
- package/dist/services/fingerprint.js.map +1 -0
- package/dist/services/send-import.d.ts +2 -0
- package/dist/services/send-import.js +136 -0
- package/dist/services/send-import.js.map +1 -0
- package/dist/services/templates.d.ts +1 -0
- package/dist/services/templates.js +49 -48
- package/dist/services/templates.js.map +1 -1
- package/dist/validation/declarations.schema.d.ts +299 -0
- package/dist/validation/declarations.schema.js +55 -0
- package/dist/validation/declarations.schema.js.map +1 -0
- package/frontend-vue/package.json +1 -1
- package/package.json +2 -2
- package/skills/dms-mailing/SKILL.md +41 -3
- package/src/db/models/send-events.model.ts +13 -0
- package/src/db/models/sends.model.ts +22 -0
- package/src/db/models/template-versions.model.ts +48 -2
- package/src/db/models/templates.model.ts +31 -0
- package/src/db/tables/settings.table.ts +8 -0
- package/src/db/tables/templates.table.ts +38 -0
- package/src/hooks/database-ready.ts +47 -0
- package/src/hooks/index.ts +1 -0
- package/src/implementations/dms-mailing/index.ts +17 -0
- package/src/index.ts +6 -1
- package/src/services/declaration-error.ts +39 -0
- package/src/services/declarations.ts +450 -0
- package/src/services/events.ts +8 -2
- package/src/services/fingerprint.ts +22 -0
- package/src/services/send-import.ts +235 -0
- package/src/services/templates.ts +64 -72
- package/src/validation/declarations.schema.ts +77 -0
- package/frontend-vue/pnpm-workspace.yaml +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/services/templates.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/services/templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const templateDeclarationSchema: z.ZodObject<{
|
|
3
|
+
tenantId: z.ZodString;
|
|
4
|
+
slug: z.ZodString;
|
|
5
|
+
name: z.ZodString;
|
|
6
|
+
category: z.ZodDefault<z.ZodString>;
|
|
7
|
+
content: z.ZodObject<{
|
|
8
|
+
locales: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
9
|
+
subject: z.ZodString;
|
|
10
|
+
preheader: z.ZodString;
|
|
11
|
+
blocks: z.ZodArray<z.ZodType<unknown, z.ZodTypeDef, unknown>, "many">;
|
|
12
|
+
}, "strip", z.ZodTypeAny, {
|
|
13
|
+
subject: string;
|
|
14
|
+
preheader: string;
|
|
15
|
+
blocks: unknown[];
|
|
16
|
+
}, {
|
|
17
|
+
subject: string;
|
|
18
|
+
preheader: string;
|
|
19
|
+
blocks: unknown[];
|
|
20
|
+
}>>;
|
|
21
|
+
}, "strip", z.ZodTypeAny, {
|
|
22
|
+
locales: Record<string, {
|
|
23
|
+
subject: string;
|
|
24
|
+
preheader: string;
|
|
25
|
+
blocks: unknown[];
|
|
26
|
+
}>;
|
|
27
|
+
}, {
|
|
28
|
+
locales: Record<string, {
|
|
29
|
+
subject: string;
|
|
30
|
+
preheader: string;
|
|
31
|
+
blocks: unknown[];
|
|
32
|
+
}>;
|
|
33
|
+
}>;
|
|
34
|
+
variables: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
35
|
+
path: z.ZodString;
|
|
36
|
+
type: z.ZodEnum<["string", "text", "number", "money", "date", "url", "boolean", "array"]>;
|
|
37
|
+
required: z.ZodBoolean;
|
|
38
|
+
}, "strip", z.ZodTypeAny, {
|
|
39
|
+
path: string;
|
|
40
|
+
type: "string" | "number" | "boolean" | "date" | "array" | "url" | "money" | "text";
|
|
41
|
+
required: boolean;
|
|
42
|
+
}, {
|
|
43
|
+
path: string;
|
|
44
|
+
type: "string" | "number" | "boolean" | "date" | "array" | "url" | "money" | "text";
|
|
45
|
+
required: boolean;
|
|
46
|
+
}>, "many">>;
|
|
47
|
+
testData: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
48
|
+
author: z.ZodOptional<z.ZodString>;
|
|
49
|
+
}, "strip", z.ZodTypeAny, {
|
|
50
|
+
name: string;
|
|
51
|
+
content: {
|
|
52
|
+
locales: Record<string, {
|
|
53
|
+
subject: string;
|
|
54
|
+
preheader: string;
|
|
55
|
+
blocks: unknown[];
|
|
56
|
+
}>;
|
|
57
|
+
};
|
|
58
|
+
category: string;
|
|
59
|
+
tenantId: string;
|
|
60
|
+
slug: string;
|
|
61
|
+
variables: {
|
|
62
|
+
path: string;
|
|
63
|
+
type: "string" | "number" | "boolean" | "date" | "array" | "url" | "money" | "text";
|
|
64
|
+
required: boolean;
|
|
65
|
+
}[];
|
|
66
|
+
testData: Record<string, unknown>;
|
|
67
|
+
author?: string | undefined;
|
|
68
|
+
}, {
|
|
69
|
+
name: string;
|
|
70
|
+
content: {
|
|
71
|
+
locales: Record<string, {
|
|
72
|
+
subject: string;
|
|
73
|
+
preheader: string;
|
|
74
|
+
blocks: unknown[];
|
|
75
|
+
}>;
|
|
76
|
+
};
|
|
77
|
+
tenantId: string;
|
|
78
|
+
slug: string;
|
|
79
|
+
category?: string | undefined;
|
|
80
|
+
variables?: {
|
|
81
|
+
path: string;
|
|
82
|
+
type: "string" | "number" | "boolean" | "date" | "array" | "url" | "money" | "text";
|
|
83
|
+
required: boolean;
|
|
84
|
+
}[] | undefined;
|
|
85
|
+
testData?: Record<string, unknown> | undefined;
|
|
86
|
+
author?: string | undefined;
|
|
87
|
+
}>;
|
|
88
|
+
export type ParsedTemplateDeclaration = z.infer<typeof templateDeclarationSchema>;
|
|
89
|
+
export declare const categoryDeclarationSchema: z.ZodObject<{
|
|
90
|
+
id: z.ZodString;
|
|
91
|
+
icon: z.ZodString;
|
|
92
|
+
} & {
|
|
93
|
+
tenantId: z.ZodString;
|
|
94
|
+
label: z.ZodString;
|
|
95
|
+
}, "strip", z.ZodTypeAny, {
|
|
96
|
+
id: string;
|
|
97
|
+
label: string;
|
|
98
|
+
icon: string;
|
|
99
|
+
tenantId: string;
|
|
100
|
+
}, {
|
|
101
|
+
id: string;
|
|
102
|
+
label: string;
|
|
103
|
+
icon: string;
|
|
104
|
+
tenantId: string;
|
|
105
|
+
}>;
|
|
106
|
+
export type ParsedCategoryDeclaration = z.infer<typeof categoryDeclarationSchema>;
|
|
107
|
+
declare const importedSendSchema: z.ZodObject<{
|
|
108
|
+
importId: z.ZodString;
|
|
109
|
+
templateSlug: z.ZodString;
|
|
110
|
+
to: z.ZodUnion<[z.ZodString, z.ZodObject<{
|
|
111
|
+
email: z.ZodString;
|
|
112
|
+
name: z.ZodOptional<z.ZodString>;
|
|
113
|
+
}, "strip", z.ZodTypeAny, {
|
|
114
|
+
email: string;
|
|
115
|
+
name?: string | undefined;
|
|
116
|
+
}, {
|
|
117
|
+
email: string;
|
|
118
|
+
name?: string | undefined;
|
|
119
|
+
}>]>;
|
|
120
|
+
sentAt: z.ZodDate;
|
|
121
|
+
locale: z.ZodOptional<z.ZodString>;
|
|
122
|
+
variables: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
123
|
+
provider: z.ZodOptional<z.ZodString>;
|
|
124
|
+
providerMessageId: z.ZodOptional<z.ZodString>;
|
|
125
|
+
source: z.ZodOptional<z.ZodString>;
|
|
126
|
+
isTest: z.ZodDefault<z.ZodBoolean>;
|
|
127
|
+
events: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
128
|
+
type: z.ZodEnum<[string, ...string[]]>;
|
|
129
|
+
at: z.ZodDate;
|
|
130
|
+
details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
131
|
+
}, "strip", z.ZodTypeAny, {
|
|
132
|
+
at: Date;
|
|
133
|
+
type: string;
|
|
134
|
+
details?: Record<string, unknown> | undefined;
|
|
135
|
+
}, {
|
|
136
|
+
at: Date;
|
|
137
|
+
type: string;
|
|
138
|
+
details?: Record<string, unknown> | undefined;
|
|
139
|
+
}>, "many">>;
|
|
140
|
+
}, "strip", z.ZodTypeAny, {
|
|
141
|
+
to: string | {
|
|
142
|
+
email: string;
|
|
143
|
+
name?: string | undefined;
|
|
144
|
+
};
|
|
145
|
+
templateSlug: string;
|
|
146
|
+
isTest: boolean;
|
|
147
|
+
variables: Record<string, unknown>;
|
|
148
|
+
events: {
|
|
149
|
+
at: Date;
|
|
150
|
+
type: string;
|
|
151
|
+
details?: Record<string, unknown> | undefined;
|
|
152
|
+
}[];
|
|
153
|
+
importId: string;
|
|
154
|
+
sentAt: Date;
|
|
155
|
+
source?: string | undefined;
|
|
156
|
+
provider?: string | undefined;
|
|
157
|
+
locale?: string | undefined;
|
|
158
|
+
providerMessageId?: string | undefined;
|
|
159
|
+
}, {
|
|
160
|
+
to: string | {
|
|
161
|
+
email: string;
|
|
162
|
+
name?: string | undefined;
|
|
163
|
+
};
|
|
164
|
+
templateSlug: string;
|
|
165
|
+
importId: string;
|
|
166
|
+
sentAt: Date;
|
|
167
|
+
source?: string | undefined;
|
|
168
|
+
provider?: string | undefined;
|
|
169
|
+
locale?: string | undefined;
|
|
170
|
+
providerMessageId?: string | undefined;
|
|
171
|
+
isTest?: boolean | undefined;
|
|
172
|
+
variables?: Record<string, unknown> | undefined;
|
|
173
|
+
events?: {
|
|
174
|
+
at: Date;
|
|
175
|
+
type: string;
|
|
176
|
+
details?: Record<string, unknown> | undefined;
|
|
177
|
+
}[] | undefined;
|
|
178
|
+
}>;
|
|
179
|
+
export type ParsedImportedSend = z.infer<typeof importedSendSchema>;
|
|
180
|
+
export declare const sendImportSchema: z.ZodObject<{
|
|
181
|
+
tenantId: z.ZodString;
|
|
182
|
+
sends: z.ZodArray<z.ZodObject<{
|
|
183
|
+
importId: z.ZodString;
|
|
184
|
+
templateSlug: z.ZodString;
|
|
185
|
+
to: z.ZodUnion<[z.ZodString, z.ZodObject<{
|
|
186
|
+
email: z.ZodString;
|
|
187
|
+
name: z.ZodOptional<z.ZodString>;
|
|
188
|
+
}, "strip", z.ZodTypeAny, {
|
|
189
|
+
email: string;
|
|
190
|
+
name?: string | undefined;
|
|
191
|
+
}, {
|
|
192
|
+
email: string;
|
|
193
|
+
name?: string | undefined;
|
|
194
|
+
}>]>;
|
|
195
|
+
sentAt: z.ZodDate;
|
|
196
|
+
locale: z.ZodOptional<z.ZodString>;
|
|
197
|
+
variables: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
198
|
+
provider: z.ZodOptional<z.ZodString>;
|
|
199
|
+
providerMessageId: z.ZodOptional<z.ZodString>;
|
|
200
|
+
source: z.ZodOptional<z.ZodString>;
|
|
201
|
+
isTest: z.ZodDefault<z.ZodBoolean>;
|
|
202
|
+
events: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
203
|
+
type: z.ZodEnum<[string, ...string[]]>;
|
|
204
|
+
at: z.ZodDate;
|
|
205
|
+
details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
206
|
+
}, "strip", z.ZodTypeAny, {
|
|
207
|
+
at: Date;
|
|
208
|
+
type: string;
|
|
209
|
+
details?: Record<string, unknown> | undefined;
|
|
210
|
+
}, {
|
|
211
|
+
at: Date;
|
|
212
|
+
type: string;
|
|
213
|
+
details?: Record<string, unknown> | undefined;
|
|
214
|
+
}>, "many">>;
|
|
215
|
+
}, "strip", z.ZodTypeAny, {
|
|
216
|
+
to: string | {
|
|
217
|
+
email: string;
|
|
218
|
+
name?: string | undefined;
|
|
219
|
+
};
|
|
220
|
+
templateSlug: string;
|
|
221
|
+
isTest: boolean;
|
|
222
|
+
variables: Record<string, unknown>;
|
|
223
|
+
events: {
|
|
224
|
+
at: Date;
|
|
225
|
+
type: string;
|
|
226
|
+
details?: Record<string, unknown> | undefined;
|
|
227
|
+
}[];
|
|
228
|
+
importId: string;
|
|
229
|
+
sentAt: Date;
|
|
230
|
+
source?: string | undefined;
|
|
231
|
+
provider?: string | undefined;
|
|
232
|
+
locale?: string | undefined;
|
|
233
|
+
providerMessageId?: string | undefined;
|
|
234
|
+
}, {
|
|
235
|
+
to: string | {
|
|
236
|
+
email: string;
|
|
237
|
+
name?: string | undefined;
|
|
238
|
+
};
|
|
239
|
+
templateSlug: string;
|
|
240
|
+
importId: string;
|
|
241
|
+
sentAt: Date;
|
|
242
|
+
source?: string | undefined;
|
|
243
|
+
provider?: string | undefined;
|
|
244
|
+
locale?: string | undefined;
|
|
245
|
+
providerMessageId?: string | undefined;
|
|
246
|
+
isTest?: boolean | undefined;
|
|
247
|
+
variables?: Record<string, unknown> | undefined;
|
|
248
|
+
events?: {
|
|
249
|
+
at: Date;
|
|
250
|
+
type: string;
|
|
251
|
+
details?: Record<string, unknown> | undefined;
|
|
252
|
+
}[] | undefined;
|
|
253
|
+
}>, "many">;
|
|
254
|
+
}, "strip", z.ZodTypeAny, {
|
|
255
|
+
tenantId: string;
|
|
256
|
+
sends: {
|
|
257
|
+
to: string | {
|
|
258
|
+
email: string;
|
|
259
|
+
name?: string | undefined;
|
|
260
|
+
};
|
|
261
|
+
templateSlug: string;
|
|
262
|
+
isTest: boolean;
|
|
263
|
+
variables: Record<string, unknown>;
|
|
264
|
+
events: {
|
|
265
|
+
at: Date;
|
|
266
|
+
type: string;
|
|
267
|
+
details?: Record<string, unknown> | undefined;
|
|
268
|
+
}[];
|
|
269
|
+
importId: string;
|
|
270
|
+
sentAt: Date;
|
|
271
|
+
source?: string | undefined;
|
|
272
|
+
provider?: string | undefined;
|
|
273
|
+
locale?: string | undefined;
|
|
274
|
+
providerMessageId?: string | undefined;
|
|
275
|
+
}[];
|
|
276
|
+
}, {
|
|
277
|
+
tenantId: string;
|
|
278
|
+
sends: {
|
|
279
|
+
to: string | {
|
|
280
|
+
email: string;
|
|
281
|
+
name?: string | undefined;
|
|
282
|
+
};
|
|
283
|
+
templateSlug: string;
|
|
284
|
+
importId: string;
|
|
285
|
+
sentAt: Date;
|
|
286
|
+
source?: string | undefined;
|
|
287
|
+
provider?: string | undefined;
|
|
288
|
+
locale?: string | undefined;
|
|
289
|
+
providerMessageId?: string | undefined;
|
|
290
|
+
isTest?: boolean | undefined;
|
|
291
|
+
variables?: Record<string, unknown> | undefined;
|
|
292
|
+
events?: {
|
|
293
|
+
at: Date;
|
|
294
|
+
type: string;
|
|
295
|
+
details?: Record<string, unknown> | undefined;
|
|
296
|
+
}[] | undefined;
|
|
297
|
+
}[];
|
|
298
|
+
}>;
|
|
299
|
+
export {};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sendImportSchema = exports.categoryDeclarationSchema = exports.templateDeclarationSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const constants_1 = require("../constants");
|
|
6
|
+
const types_1 = require("../types");
|
|
7
|
+
const settings_schema_1 = require("./settings.schema");
|
|
8
|
+
const templates_schema_1 = require("./templates.schema");
|
|
9
|
+
const MAX_AUTHOR_LENGTH = constants_1.MAX_NAME_LENGTH;
|
|
10
|
+
const MAX_IMPORT_ID_LENGTH = 200;
|
|
11
|
+
const tenantIdSchema = zod_1.z.string().trim().min(1);
|
|
12
|
+
exports.templateDeclarationSchema = zod_1.z.object({
|
|
13
|
+
tenantId: tenantIdSchema,
|
|
14
|
+
slug: templates_schema_1.slugSchema,
|
|
15
|
+
name: zod_1.z.string().trim().min(1).max(constants_1.MAX_NAME_LENGTH),
|
|
16
|
+
category: zod_1.z.string().trim().default(""),
|
|
17
|
+
content: templates_schema_1.templateContentSchema,
|
|
18
|
+
variables: templates_schema_1.variableListSchema.default([]),
|
|
19
|
+
testData: zod_1.z.record(zod_1.z.unknown()).default({}),
|
|
20
|
+
author: zod_1.z.string().trim().min(1).max(MAX_AUTHOR_LENGTH).optional(),
|
|
21
|
+
});
|
|
22
|
+
exports.categoryDeclarationSchema = settings_schema_1.categorySchema.extend({
|
|
23
|
+
tenantId: tenantIdSchema,
|
|
24
|
+
label: zod_1.z.string().trim().min(1).max(constants_1.MAX_NAME_LENGTH),
|
|
25
|
+
});
|
|
26
|
+
const recipientSchema = zod_1.z.union([
|
|
27
|
+
zod_1.z.string().trim().email(),
|
|
28
|
+
zod_1.z.object({
|
|
29
|
+
email: zod_1.z.string().trim().email(),
|
|
30
|
+
name: zod_1.z.string().optional(),
|
|
31
|
+
}),
|
|
32
|
+
]);
|
|
33
|
+
const importedEventSchema = zod_1.z.object({
|
|
34
|
+
type: zod_1.z.enum(types_1.SEND_EVENT_TYPES),
|
|
35
|
+
at: zod_1.z.coerce.date(),
|
|
36
|
+
details: zod_1.z.record(zod_1.z.unknown()).optional(),
|
|
37
|
+
});
|
|
38
|
+
const importedSendSchema = zod_1.z.object({
|
|
39
|
+
importId: zod_1.z.string().trim().min(1).max(MAX_IMPORT_ID_LENGTH),
|
|
40
|
+
templateSlug: templates_schema_1.slugSchema,
|
|
41
|
+
to: recipientSchema,
|
|
42
|
+
sentAt: zod_1.z.coerce.date(),
|
|
43
|
+
locale: zod_1.z.string().trim().min(1).optional(),
|
|
44
|
+
variables: zod_1.z.record(zod_1.z.unknown()).default({}),
|
|
45
|
+
provider: zod_1.z.string().optional(),
|
|
46
|
+
providerMessageId: zod_1.z.string().optional(),
|
|
47
|
+
source: zod_1.z.string().optional(),
|
|
48
|
+
isTest: zod_1.z.boolean().default(false),
|
|
49
|
+
events: zod_1.z.array(importedEventSchema).default([]),
|
|
50
|
+
});
|
|
51
|
+
exports.sendImportSchema = zod_1.z.object({
|
|
52
|
+
tenantId: tenantIdSchema,
|
|
53
|
+
sends: zod_1.z.array(importedSendSchema),
|
|
54
|
+
});
|
|
55
|
+
//# sourceMappingURL=declarations.schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"declarations.schema.js","sourceRoot":"","sources":["../../src/validation/declarations.schema.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@antelopejs/dms-mailing",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "E-mail templates for the AntelopeJS DMS: a block editor with drafts and versions, a send log, delivery metrics and a suppression list.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"antelopejs",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"@antelopejs/interface-database": ">=0.1.10 <1.0.0",
|
|
54
54
|
"@antelopejs/interface-database-decorators": ">=0.1.9 <1.0.0",
|
|
55
55
|
"@antelopejs/interface-dms": ">=0.7.2 <1.0.0",
|
|
56
|
-
"@antelopejs/interface-dms-mailing": ">=0.
|
|
56
|
+
"@antelopejs/interface-dms-mailing": ">=0.8.0 <0.9.0",
|
|
57
57
|
"@antelopejs/interface-email": ">=0.0.6 <1.0.0",
|
|
58
58
|
"node-cron": "^4.2.1",
|
|
59
59
|
"zod": "~3.24.2"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: dms-mailing
|
|
3
|
-
description: Sends and manages transactional e-mail with the @antelopejs/dms-mailing module of the AntelopeJS DMS. Use when installing or configuring dms-mailing, sending a template from code with SendTemplate, reporting provider events with RecordEmailEvent or the webhook, designing templates (blocks, variables, locales, versions), or debugging suppressed, refused, missing-variable or fallback-locale sends.
|
|
3
|
+
description: Sends and manages transactional e-mail with the @antelopejs/dms-mailing module of the AntelopeJS DMS. Use when installing or configuring dms-mailing, sending a template from code with SendTemplate, shipping templates or categories as code with DeclareTemplate / DeclareTemplateCategory, importing past sends with ImportSends, reporting provider events with RecordEmailEvent or the webhook, designing templates (blocks, variables, locales, versions), or debugging suppressed, refused, missing-variable or fallback-locale sends.
|
|
4
4
|
icon: i-lucide-mail
|
|
5
5
|
category: messaging
|
|
6
6
|
tags: [email, templates, transactional, webhook, dms-module]
|
|
@@ -23,8 +23,9 @@ https://dms.antelopejs.com/docs/modules/mailing (sending from code and the webho
|
|
|
23
23
|
|
|
24
24
|
- `ajs project modules add @antelopejs/dms-mailing`, plus a module implementing `@antelopejs/interface-email`
|
|
25
25
|
(`@antelopejs/nodemailer`, `config: { ethereal: true }` in dev).
|
|
26
|
-
- Mailing 0.
|
|
27
|
-
0.4 is the DMS 0.8 line. `@antelopejs/interface-dms-mailing`
|
|
26
|
+
- Mailing 0.6 requires `@antelopejs/dms` >=0.9 (interface-dms 0.7, renderer `@antelopejs/dms-frontend` 0.6);
|
|
27
|
+
0.4 is the DMS 0.8 line. Mailing 0.6 implements `@antelopejs/interface-dms-mailing` `>=0.8.0 <0.9.0`, adding declaration and import calls;
|
|
28
|
+
`SendTemplate` / `RecordEmailEvent` callers do not change.
|
|
28
29
|
- Module option: `useHtmlRender` (default `true`, DMS html-render chain; `false` = built-in standalone HTML).
|
|
29
30
|
- Set the DMS `clientBaseUrl`: the webhook URL and the e-mail logo are built on it.
|
|
30
31
|
- Per-workspace settings (sender, missing-variable guard, fallback locale, webhook secret, retention,
|
|
@@ -52,6 +53,41 @@ const result = await SendTemplate("order-confirmed", {
|
|
|
52
53
|
HTTP: `POST <clientBaseUrl>/api/mailing/events/<provider>/<tenantId>` with header `x-mailing-webhook-secret`.
|
|
53
54
|
- Automation (if `interface-dms-automation` is loaded): action `mailing.send-template`, trigger `mailing.email-event`.
|
|
54
55
|
|
|
56
|
+
## Ship templates as code
|
|
57
|
+
|
|
58
|
+
```typescript
|
|
59
|
+
import { DeclareTemplate, DeclareTemplateCategory, ImportSends } from "@antelopejs/interface-dms-mailing";
|
|
60
|
+
|
|
61
|
+
export async function declareMailingContent(tenantId: string) {
|
|
62
|
+
await DeclareTemplateCategory({ tenantId, id: "subscriptions", label: "Subscriptions", icon: "i-ph-repeat" }); // before templates naming it
|
|
63
|
+
const { outcome } = await DeclareTemplate({
|
|
64
|
+
tenantId, slug: "subscription-renewed", name: "Subscription renewed", category: "subscriptions",
|
|
65
|
+
content: { locales: { en: { subject: "Your {{plan.name}} plan is renewed", preheader: "", blocks: [] } } },
|
|
66
|
+
variables: [{ path: "plan.name", type: "string", required: true }],
|
|
67
|
+
testData: { plan: { name: "Pro" } },
|
|
68
|
+
}); // created | updated | unchanged | kept
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
- Require explicit non-blank `tenantId` for declarations and imports, including an explicitly selected default tenant.
|
|
73
|
+
The application must authorize the target and establish provisioning readiness.
|
|
74
|
+
- For SaaS initialization, follow the consumer reference's **Initialize new SaaS workspaces** section:
|
|
75
|
+
register the durable `created` consumer synchronously in `construct()`, without awaiting declarations,
|
|
76
|
+
before startup reconciliation; deduplicate `operationId`, bind resources
|
|
77
|
+
durably, then return a receipt. Mailing registers no consumer. `start()` is process-global, not per tenant;
|
|
78
|
+
`TENANT_BEING_PROVISIONED` is prepayment and is not the durable `created` transition.
|
|
79
|
+
Deployment updates/backfills require an authorized inventory and `IsWorkspaceProvisioningCommitted`, failing closed.
|
|
80
|
+
- Idempotent on the tenant's slug, published at once (v1, version rows, slug claim, attention refresh: a normal template).
|
|
81
|
+
- Rule: same declaration → `unchanged`; changed declaration → `updated` only if the template is live, has no
|
|
82
|
+
draft and still holds exactly the last declaration (fingerprint on `declaredHash`); otherwise `kept`.
|
|
83
|
+
A dashboard-made template under that slug is never taken over. Deleted → recreated next boot; archive instead.
|
|
84
|
+
- Categories: added once; a category a user relabelled/removed, or a default one, is `kept`.
|
|
85
|
+
- Refusals reject with `error.code`: `invalid_template`, `unknown_category`, `empty_subject`,
|
|
86
|
+
`nothing_to_publish`, `invalid_category`; invalid tenant input rejects before writes. Storage errors can occur after publication.
|
|
87
|
+
- `ImportSends({ tenantId, sends: [{ importId, templateSlug, to, sentAt, events }] })` writes past sends with their own
|
|
88
|
+
dates (demo data, migration): no delivery, no suppression/automation/realtime; skipped when `importId` was
|
|
89
|
+
already imported. Retention still applies (90 days default).
|
|
90
|
+
|
|
55
91
|
## Gotchas
|
|
56
92
|
|
|
57
93
|
- `status: "suppressed"` = address on the suppression list (hard bounce, spam, unsubscribe, manual). Never retry.
|
|
@@ -61,3 +97,5 @@ const result = await SendTemplate("order-confirmed", {
|
|
|
61
97
|
- The template slug is fixed at creation: code depends on it.
|
|
62
98
|
- `mailing.send` permission gates every route that reaches recipients; writes publish on realtime topic `mailing:sends`.
|
|
63
99
|
- 0.4+ does not read a 0.3 database and moved the webhook path (tenant in the URL).
|
|
100
|
+
- nodemailer `ethereal: true` creates its account online at startup: offline, the whole project fails to
|
|
101
|
+
start (nodemailer's `construct()` throws, before Mailing runs). Use a local SMTP server (Mailpit) offline.
|
|
@@ -23,6 +23,19 @@ export class SendEventModel extends BasicDataModel(
|
|
|
23
23
|
return false;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
+
/**
|
|
27
|
+
* Writes an imported event under its own id, unless an interrupted run of
|
|
28
|
+
* the same import already did.
|
|
29
|
+
*/
|
|
30
|
+
async insertImported(event: MailingSendEvent): Promise<void> {
|
|
31
|
+
if (await this.get(event._id)) return;
|
|
32
|
+
try {
|
|
33
|
+
await this.insert(event);
|
|
34
|
+
} catch (error) {
|
|
35
|
+
if (!(await this.get(event._id))) throw error;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
26
39
|
/** Keyset pagination remains stable when overlapping sweeps delete earlier rows. */
|
|
27
40
|
listAfter(after: string, size: number): Promise<MailingSendEvent[]> {
|
|
28
41
|
return this.table
|
|
@@ -15,6 +15,12 @@ type NewSend = Omit<
|
|
|
15
15
|
"_id" | "createdAt" | "revision" | "isRetiring" | "lastActivityAt"
|
|
16
16
|
>;
|
|
17
17
|
|
|
18
|
+
/** A send written by an import: its own id and date, as it happened. */
|
|
19
|
+
export type ImportedSendRow = Omit<
|
|
20
|
+
MailingSend,
|
|
21
|
+
"revision" | "isRetiring" | "lastActivityAt"
|
|
22
|
+
>;
|
|
23
|
+
|
|
18
24
|
const MAX_MUTATION_ATTEMPTS = 5;
|
|
19
25
|
|
|
20
26
|
/** A send as the metrics read it: everything but the rendered variables. */
|
|
@@ -82,6 +88,22 @@ export class SendModel extends BasicDataModel(
|
|
|
82
88
|
.run();
|
|
83
89
|
}
|
|
84
90
|
|
|
91
|
+
/**
|
|
92
|
+
* Writes an imported send under its own id; false when that id is already
|
|
93
|
+
* taken, by an earlier run of the same import. Probed by state like the
|
|
94
|
+
* slug claims, since the database exposes no typed conflict error.
|
|
95
|
+
*/
|
|
96
|
+
async insertImported(send: ImportedSendRow): Promise<boolean> {
|
|
97
|
+
if (await this.get(send._id)) return false;
|
|
98
|
+
try {
|
|
99
|
+
await this.table.insert({ ...send, revision: randomUUID() }).run();
|
|
100
|
+
return true;
|
|
101
|
+
} catch (error) {
|
|
102
|
+
if (await this.get(send._id)) return false;
|
|
103
|
+
throw error;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
85
107
|
/** Reads the stored row, including the revision the mutation contract compares. */
|
|
86
108
|
getSnapshot(sendId: string): Promise<MailingSend | undefined> {
|
|
87
109
|
return this.table.get(sendId).run();
|
|
@@ -1,23 +1,69 @@
|
|
|
1
1
|
import { BasicDataModel } from "@antelopejs/interface-database-decorators";
|
|
2
2
|
import {
|
|
3
3
|
MAILING_TEMPLATE_VERSIONS_TABLE_NAME,
|
|
4
|
+
type MailingTemplate,
|
|
4
5
|
MailingTemplateVersion,
|
|
5
6
|
} from "../tables";
|
|
7
|
+
import { TemplateModel } from "./templates.model";
|
|
8
|
+
|
|
9
|
+
/** The latest committed history row, even before its separate insert completes. */
|
|
10
|
+
export function committedVersionOf(
|
|
11
|
+
template: Pick<MailingTemplate, "json_published_version">,
|
|
12
|
+
): MailingTemplateVersion | undefined {
|
|
13
|
+
if (!template.json_published_version) return undefined;
|
|
14
|
+
const row = JSON.parse(
|
|
15
|
+
template.json_published_version,
|
|
16
|
+
) as MailingTemplateVersion;
|
|
17
|
+
row.publishedAt = new Date(row.publishedAt);
|
|
18
|
+
return row;
|
|
19
|
+
}
|
|
6
20
|
|
|
7
21
|
export class TemplateVersionModel extends BasicDataModel(
|
|
8
22
|
MailingTemplateVersion,
|
|
9
23
|
MAILING_TEMPLATE_VERSIONS_TABLE_NAME,
|
|
10
24
|
) {
|
|
25
|
+
/** Must complete before replacing the only recoverable snapshot of this version. */
|
|
26
|
+
async materialize(
|
|
27
|
+
template: Pick<MailingTemplate, "json_published_version">,
|
|
28
|
+
): Promise<void> {
|
|
29
|
+
const version = committedVersionOf(template);
|
|
30
|
+
if (!version) return;
|
|
31
|
+
if (await this.get(version._id)) return;
|
|
32
|
+
try {
|
|
33
|
+
await this.insert(version);
|
|
34
|
+
} catch (error) {
|
|
35
|
+
const stored = await this.get(version._id);
|
|
36
|
+
if (
|
|
37
|
+
!stored ||
|
|
38
|
+
Object.entries(version).some(
|
|
39
|
+
([key, value]) =>
|
|
40
|
+
JSON.stringify(stored[key as keyof MailingTemplateVersion]) !==
|
|
41
|
+
JSON.stringify(value),
|
|
42
|
+
)
|
|
43
|
+
)
|
|
44
|
+
throw error;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
11
48
|
async listForTemplate(templateId: string): Promise<MailingTemplateVersion[]> {
|
|
49
|
+
// Read the publication first: any later publication must have materialized it.
|
|
50
|
+
const template = await new TemplateModel(this.database).get(templateId);
|
|
51
|
+
if (!template) return [];
|
|
12
52
|
const rows = await this.getBy("templateId", templateId);
|
|
13
|
-
|
|
53
|
+
const current = committedVersionOf(template);
|
|
54
|
+
const history = rows.filter(
|
|
55
|
+
(row) => row.version <= template.publishedVersion,
|
|
56
|
+
);
|
|
57
|
+
if (current && !history.some((row) => row.version === current.version))
|
|
58
|
+
history.push(current);
|
|
59
|
+
return history.sort((left, right) => right.version - left.version);
|
|
14
60
|
}
|
|
15
61
|
|
|
16
62
|
async getVersion(
|
|
17
63
|
templateId: string,
|
|
18
64
|
version: number,
|
|
19
65
|
): Promise<MailingTemplateVersion | undefined> {
|
|
20
|
-
const rows = await this.
|
|
66
|
+
const rows = await this.listForTemplate(templateId);
|
|
21
67
|
return rows.find((row) => row.version === version);
|
|
22
68
|
}
|
|
23
69
|
}
|