@contentgrowth/content-emailing 0.7.7 → 0.7.9
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/dist/{TemplateManager-Db41KyPN.d.cts → TemplateManager-DbAGIGdI.d.cts} +1 -1
- package/dist/{TemplateManager-Db41KyPN.d.ts → TemplateManager-DbAGIGdI.d.ts} +1 -1
- package/dist/backend/index.cjs +62 -2
- package/dist/backend/index.cjs.map +1 -1
- package/dist/backend/index.js +62 -2
- package/dist/backend/index.js.map +1 -1
- package/dist/backend/routes/index.cjs +90 -60
- package/dist/backend/routes/index.cjs.map +1 -1
- package/dist/backend/routes/index.d.cts +15 -12
- package/dist/backend/routes/index.d.ts +15 -12
- package/dist/backend/routes/index.js +90 -60
- package/dist/backend/routes/index.js.map +1 -1
- package/dist/frontend/index.cjs +4 -4
- package/dist/frontend/index.cjs.map +1 -1
- package/dist/frontend/index.d.cts +1 -1
- package/dist/frontend/index.d.ts +1 -1
- package/dist/frontend/index.js +4 -4
- package/dist/frontend/index.js.map +1 -1
- package/dist/index.cjs +63 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +63 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { EmailService } from './backend/EmailService.cjs';
|
|
2
|
-
export { a as TemplateEditor, T as TemplateManager } from './TemplateManager-
|
|
2
|
+
export { a as TemplateEditor, T as TemplateManager } from './TemplateManager-DbAGIGdI.cjs';
|
|
3
3
|
export { EmailingCacheDO, createDOCacheProvider } from './backend/EmailingCacheDO.cjs';
|
|
4
4
|
export { EmailLogger, createEmailLoggerCallback } from './backend/index.cjs';
|
|
5
5
|
export { createEmailRoutes, createTemplateRoutes, createTrackingRoutes } from './backend/routes/index.cjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { EmailService } from './backend/EmailService.js';
|
|
2
|
-
export { a as TemplateEditor, T as TemplateManager } from './TemplateManager-
|
|
2
|
+
export { a as TemplateEditor, T as TemplateManager } from './TemplateManager-DbAGIGdI.js';
|
|
3
3
|
export { EmailingCacheDO, createDOCacheProvider } from './backend/EmailingCacheDO.js';
|
|
4
4
|
export { EmailLogger, createEmailLoggerCallback } from './backend/index.js';
|
|
5
5
|
export { createEmailRoutes, createTemplateRoutes, createTrackingRoutes } from './backend/routes/index.js';
|
package/dist/index.js
CHANGED
|
@@ -1418,12 +1418,42 @@ function createSettingsRoutes(config = {}) {
|
|
|
1418
1418
|
return c.json({ error: error.message }, 500);
|
|
1419
1419
|
}
|
|
1420
1420
|
});
|
|
1421
|
+
app.post("/test", async (c) => {
|
|
1422
|
+
try {
|
|
1423
|
+
const settings = await c.req.json();
|
|
1424
|
+
const user = c.get("dbUser") || c.get("user");
|
|
1425
|
+
if (!user || !user.email) {
|
|
1426
|
+
return c.json({ error: "User email not found for testing" }, 400);
|
|
1427
|
+
}
|
|
1428
|
+
const emailService = new EmailService(c.env, {
|
|
1429
|
+
...config,
|
|
1430
|
+
settingsLoader: async () => settings
|
|
1431
|
+
});
|
|
1432
|
+
const result = await emailService.sendEmail({
|
|
1433
|
+
to: user.email,
|
|
1434
|
+
subject: "Test Email Configuration",
|
|
1435
|
+
html: "<h1>It Works!</h1><p>Your email settings are configured correctly.</p>",
|
|
1436
|
+
text: "It Works! Your email settings are configured correctly.",
|
|
1437
|
+
profile: "system",
|
|
1438
|
+
// Use system defaults logic in service, but our loader overrides it
|
|
1439
|
+
userId: user.id
|
|
1440
|
+
});
|
|
1441
|
+
if (result.success) {
|
|
1442
|
+
return c.json({ success: true, message: `Test email sent to ${user.email}` });
|
|
1443
|
+
} else {
|
|
1444
|
+
return c.json({ success: false, error: result.error || "Failed to send test email" }, 400);
|
|
1445
|
+
}
|
|
1446
|
+
} catch (error) {
|
|
1447
|
+
console.error("Test settings failed:", error);
|
|
1448
|
+
return c.json({ error: error.message }, 500);
|
|
1449
|
+
}
|
|
1450
|
+
});
|
|
1421
1451
|
return app;
|
|
1422
1452
|
}
|
|
1423
1453
|
|
|
1424
1454
|
// src/backend/routes/templates.js
|
|
1425
1455
|
import { Hono as Hono2 } from "hono";
|
|
1426
|
-
function
|
|
1456
|
+
function createTemplateRoutes(config = {}) {
|
|
1427
1457
|
const app = new Hono2();
|
|
1428
1458
|
app.get("/", async (c) => {
|
|
1429
1459
|
const emailService = new EmailService(c.env, config);
|
|
@@ -1680,6 +1710,36 @@ function createTrackingRoutes(env, config = {}) {
|
|
|
1680
1710
|
|
|
1681
1711
|
// src/backend/routes/logs.js
|
|
1682
1712
|
import { Hono as Hono4 } from "hono";
|
|
1713
|
+
function createLogRoutes(config = {}) {
|
|
1714
|
+
const app = new Hono4();
|
|
1715
|
+
app.get("/", async (c) => {
|
|
1716
|
+
const limit = Math.min(parseInt(c.req.query("limit") || "50"), 100);
|
|
1717
|
+
const offset = parseInt(c.req.query("offset") || "0");
|
|
1718
|
+
const env = c.env;
|
|
1719
|
+
try {
|
|
1720
|
+
const table = `${config.emailTablePrefix || "system_email_"}logs`;
|
|
1721
|
+
const { results } = await env.DB.prepare(`
|
|
1722
|
+
SELECT * FROM ${table}
|
|
1723
|
+
ORDER BY created_at DESC
|
|
1724
|
+
LIMIT ? OFFSET ?
|
|
1725
|
+
`).bind(limit, offset).all();
|
|
1726
|
+
const countResult = await env.DB.prepare(`SELECT COUNT(*) as exact_count FROM ${table}`).first();
|
|
1727
|
+
return c.json({
|
|
1728
|
+
logs: results.map((row) => ({
|
|
1729
|
+
...row,
|
|
1730
|
+
metadata: row.metadata ? JSON.parse(row.metadata) : null
|
|
1731
|
+
})),
|
|
1732
|
+
total: countResult.exact_count,
|
|
1733
|
+
limit,
|
|
1734
|
+
offset
|
|
1735
|
+
});
|
|
1736
|
+
} catch (error) {
|
|
1737
|
+
console.error("Failed to fetch logs:", error);
|
|
1738
|
+
return c.json({ error: "Failed to fetch logs" }, 500);
|
|
1739
|
+
}
|
|
1740
|
+
});
|
|
1741
|
+
return app;
|
|
1742
|
+
}
|
|
1683
1743
|
|
|
1684
1744
|
// src/backend/routes/index.js
|
|
1685
1745
|
function createEmailRoutes(config = {}, cacheProvider = null) {
|
|
@@ -1934,7 +1994,7 @@ var TemplateTester = ({
|
|
|
1934
1994
|
try {
|
|
1935
1995
|
await onSendTest({
|
|
1936
1996
|
template_id: template.template_id,
|
|
1937
|
-
|
|
1997
|
+
to: toEmail,
|
|
1938
1998
|
variables
|
|
1939
1999
|
});
|
|
1940
2000
|
setSuccess("Test email sent successfully!");
|
|
@@ -2236,7 +2296,7 @@ export {
|
|
|
2236
2296
|
createDOCacheProvider,
|
|
2237
2297
|
createEmailLoggerCallback,
|
|
2238
2298
|
createEmailRoutes,
|
|
2239
|
-
|
|
2299
|
+
createTemplateRoutes,
|
|
2240
2300
|
createTrackingRoutes,
|
|
2241
2301
|
encodeTrackingLinks,
|
|
2242
2302
|
extractVariables,
|