payload-plugin-newsletter 0.24.0 → 0.25.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 +15 -0
- package/dist/collections.cjs +25 -1
- package/dist/collections.cjs.map +1 -1
- package/dist/collections.js +25 -1
- package/dist/collections.js.map +1 -1
- package/dist/server.js +25 -1
- package/package.json +1 -1
package/dist/server.js
CHANGED
|
@@ -575,7 +575,7 @@ var createSubscribersCollection = (pluginConfig) => {
|
|
|
575
575
|
} else {
|
|
576
576
|
console.warn("[Newsletter Plugin] No email service configured for subscriber creation");
|
|
577
577
|
}
|
|
578
|
-
if (doc.subscriptionStatus === "active" && emailService) {
|
|
578
|
+
if (doc.subscriptionStatus === "active" && emailService && !doc.importedFromProvider) {
|
|
579
579
|
try {
|
|
580
580
|
const settings = await req.payload.findGlobal({
|
|
581
581
|
slug: pluginConfig.settingsSlug || "newsletter-settings"
|
|
@@ -621,6 +621,30 @@ var createSubscribersCollection = (pluginConfig) => {
|
|
|
621
621
|
console.warn("[Newsletter Plugin] No email service configured");
|
|
622
622
|
}
|
|
623
623
|
}
|
|
624
|
+
if (doc.subscriptionStatus === "active" && previousDoc.subscriptionStatus === "unsubscribed" && !doc.importedFromProvider && emailService) {
|
|
625
|
+
try {
|
|
626
|
+
const settings = await req.payload.findGlobal({
|
|
627
|
+
slug: pluginConfig.settingsSlug || "newsletter-settings"
|
|
628
|
+
});
|
|
629
|
+
const serverURL = req.payload.config.serverURL || process.env.PAYLOAD_PUBLIC_SERVER_URL || "";
|
|
630
|
+
const html = await renderEmail("welcome", {
|
|
631
|
+
email: doc.email,
|
|
632
|
+
siteName: settings?.brandSettings?.siteName || "Newsletter",
|
|
633
|
+
preferencesUrl: `${serverURL}/account/preferences`
|
|
634
|
+
}, pluginConfig);
|
|
635
|
+
await emailService.send({
|
|
636
|
+
to: doc.email,
|
|
637
|
+
subject: settings?.brandSettings?.siteName ? `Welcome back to ${settings.brandSettings.siteName}!` : "Welcome back!",
|
|
638
|
+
html
|
|
639
|
+
});
|
|
640
|
+
console.warn(`Welcome email sent to resubscribed user: ${doc.email}`);
|
|
641
|
+
} catch (error) {
|
|
642
|
+
console.error("Failed to send resubscription welcome email:", error);
|
|
643
|
+
}
|
|
644
|
+
if (pluginConfig.hooks?.afterSubscribe) {
|
|
645
|
+
await pluginConfig.hooks.afterSubscribe({ doc, req });
|
|
646
|
+
}
|
|
647
|
+
}
|
|
624
648
|
if (doc.subscriptionStatus === "unsubscribed" && previousDoc.subscriptionStatus !== "unsubscribed") {
|
|
625
649
|
doc.unsubscribedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
626
650
|
if (pluginConfig.hooks?.afterUnsubscribe) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "payload-plugin-newsletter",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.25.0",
|
|
4
4
|
"description": "Complete newsletter management plugin for Payload CMS with subscriber management, magic link authentication, and email service integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|