payload-plugin-newsletter 0.1.1 → 0.3.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 +38 -0
- package/README.md +39 -2
- package/dist/.tsbuildinfo +1 -1
- package/dist/collections/NewsletterSettings.d.ts +4 -0
- package/dist/collections/NewsletterSettings.d.ts.map +1 -0
- package/dist/collections/Subscribers.d.ts.map +1 -1
- package/dist/endpoints/preferences.d.ts.map +1 -1
- package/dist/endpoints/subscribe.d.ts.map +1 -1
- package/dist/endpoints/unsubscribe.d.ts.map +1 -1
- package/dist/endpoints/verify-magic-link.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/src/collections/NewsletterSettings.js +389 -0
- package/dist/src/collections/NewsletterSettings.js.map +1 -0
- package/dist/src/collections/Subscribers.js.map +1 -1
- package/dist/src/components/MagicLinkVerify.js +1 -1
- package/dist/src/components/MagicLinkVerify.js.map +1 -1
- package/dist/src/endpoints/preferences.js +16 -4
- package/dist/src/endpoints/preferences.js.map +1 -1
- package/dist/src/endpoints/subscribe.js +14 -3
- package/dist/src/endpoints/subscribe.js.map +1 -1
- package/dist/src/endpoints/unsubscribe.js +10 -2
- package/dist/src/endpoints/unsubscribe.js.map +1 -1
- package/dist/src/endpoints/verify-magic-link.js +13 -3
- package/dist/src/endpoints/verify-magic-link.js.map +1 -1
- package/dist/src/index.js +18 -12
- package/dist/src/index.js.map +1 -1
- package/dist/src/templates/NewsletterTemplate.js.map +1 -1
- package/dist/src/templates/WelcomeTemplate.js.map +1 -1
- package/dist/src/types/index.js.map +1 -1
- package/dist/templates/NewsletterTemplate.d.ts.map +1 -1
- package/dist/templates/WelcomeTemplate.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +7 -3
- package/CLAUDE.md +0 -110
- package/dist/globals/EmailSettings.d.ts +0 -4
- package/dist/globals/EmailSettings.d.ts.map +0 -1
- package/dist/src/globals/EmailSettings.js +0 -252
- package/dist/src/globals/EmailSettings.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewsletterTemplate.d.ts","sourceRoot":"","sources":["../../src/templates/NewsletterTemplate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"NewsletterTemplate.d.ts","sourceRoot":"","sources":["../../src/templates/NewsletterTemplate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,MAAM,CAAC,EAAE;QACP,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0FrB,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAsChE,CAAA;AAGD,wBAAgB,wBAAwB,CACtC,YAAY,CAAC,EAAE,OAAO,CAAC,OAAO,gBAAgB,CAAC,GAC9C,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAoCnC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WelcomeTemplate.d.ts","sourceRoot":"","sources":["../../src/templates/WelcomeTemplate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"WelcomeTemplate.d.ts","sourceRoot":"","sources":["../../src/templates/WelcomeTemplate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAEjD,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0ClB,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAkEvD,CAAA;AAGD,wBAAgB,qBAAqB,CACnC,aAAa,CAAC,EAAE;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,EACD,YAAY,CAAC,EAAE,OAAO,CAAC,OAAO,aAAa,CAAC,GAC3C,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAmE7B"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -10,6 +10,11 @@ export interface NewsletterPluginConfig {
|
|
|
10
10
|
* @default 'subscribers'
|
|
11
11
|
*/
|
|
12
12
|
subscribersSlug?: string;
|
|
13
|
+
/**
|
|
14
|
+
* Slug for the newsletter settings collection
|
|
15
|
+
* @default 'newsletter-settings'
|
|
16
|
+
*/
|
|
17
|
+
settingsSlug?: string;
|
|
13
18
|
/**
|
|
14
19
|
* Authentication configuration for magic links
|
|
15
20
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "payload-plugin-newsletter",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.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": "./src/index.ts",
|
|
@@ -36,7 +36,10 @@
|
|
|
36
36
|
"lint": "eslint src",
|
|
37
37
|
"typecheck": "tsc --noEmit",
|
|
38
38
|
"generate:types": "tsc --emitDeclarationOnly --outDir dist",
|
|
39
|
-
"prepublishOnly": "bun run clean && bun run build"
|
|
39
|
+
"prepublishOnly": "bun run clean && bun run build",
|
|
40
|
+
"release:patch": "./scripts/release.sh patch",
|
|
41
|
+
"release:minor": "./scripts/release.sh minor",
|
|
42
|
+
"release:major": "./scripts/release.sh major"
|
|
40
43
|
},
|
|
41
44
|
"files": [
|
|
42
45
|
"dist",
|
|
@@ -77,6 +80,7 @@
|
|
|
77
80
|
"resend": "^4.0.0"
|
|
78
81
|
},
|
|
79
82
|
"devDependencies": {
|
|
83
|
+
"@eslint/js": "^9.29.0",
|
|
80
84
|
"@swc/cli": "^0.4.0",
|
|
81
85
|
"@swc/core": "^1.7.0",
|
|
82
86
|
"@types/express": "^4.17.21",
|
|
@@ -102,4 +106,4 @@
|
|
|
102
106
|
"react": "^18.0.0 || ^19.0.0",
|
|
103
107
|
"react-dom": "^18.0.0 || ^19.0.0"
|
|
104
108
|
}
|
|
105
|
-
}
|
|
109
|
+
}
|
package/CLAUDE.md
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
# Claude Development Guidelines
|
|
2
|
-
|
|
3
|
-
This file contains development guidelines and reference information for Claude when working on the Payload Newsletter Plugin.
|
|
4
|
-
|
|
5
|
-
## Important Security Guidelines
|
|
6
|
-
|
|
7
|
-
**NEVER include any of the following in the repository:**
|
|
8
|
-
- API keys or tokens (use environment variables)
|
|
9
|
-
- Email addresses or personal information
|
|
10
|
-
- Specific company/project names (keep everything generic)
|
|
11
|
-
- Production URLs or endpoints
|
|
12
|
-
- Any credentials or sensitive configuration
|
|
13
|
-
|
|
14
|
-
## Reference Repositories
|
|
15
|
-
|
|
16
|
-
These local repositories contain reference implementations and examples:
|
|
17
|
-
|
|
18
|
-
1. **Medellin Newsletter Implementation** (source for newsletter logic):
|
|
19
|
-
- Location: `/Users/aniketpanjwani/Projects/medellin_newsletter/medellin_insider`
|
|
20
|
-
- Use for: Understanding newsletter implementation patterns
|
|
21
|
-
- DO NOT: Copy any specific business logic, API keys, or Medellin-specific references
|
|
22
|
-
|
|
23
|
-
2. **Payload CMS Source**:
|
|
24
|
-
- Location: `/Users/aniketpanjwani/Projects/reference_repos/payload`
|
|
25
|
-
- Docs: `/Users/aniketpanjwani/Projects/reference_repos/payload/docs`
|
|
26
|
-
- Templates: `/Users/aniketpanjwani/Projects/reference_repos/payload/templates`
|
|
27
|
-
- Use for: Understanding Payload patterns and best practices
|
|
28
|
-
|
|
29
|
-
3. **Official Payload Plugins** (examples to follow):
|
|
30
|
-
- SEO Plugin: `/Users/aniketpanjwani/Projects/reference_repos/payload/packages/plugin-seo`
|
|
31
|
-
- Form Builder: `/Users/aniketpanjwani/Projects/reference_repos/payload/packages/plugin-form-builder`
|
|
32
|
-
- Use for: Plugin architecture patterns and conventions
|
|
33
|
-
|
|
34
|
-
## Development Setup
|
|
35
|
-
|
|
36
|
-
This project uses **Bun** as the preferred package manager and runtime.
|
|
37
|
-
|
|
38
|
-
### Available Commands
|
|
39
|
-
- `bun install` - Install dependencies
|
|
40
|
-
- `bun typecheck` - Run TypeScript type checking
|
|
41
|
-
- `bun generate:types` - Generate TypeScript declarations
|
|
42
|
-
- `bun build` - Build the project (JS + types)
|
|
43
|
-
- `bun dev` - Watch mode for development
|
|
44
|
-
- `bun lint` - Run ESLint
|
|
45
|
-
- `bun clean` - Clean build artifacts
|
|
46
|
-
|
|
47
|
-
## Development Guidelines
|
|
48
|
-
|
|
49
|
-
### Code Style
|
|
50
|
-
- Follow Payload's patterns from official plugins
|
|
51
|
-
- Use TypeScript for everything
|
|
52
|
-
- No comments unless specifically requested
|
|
53
|
-
- Keep implementations generic and reusable
|
|
54
|
-
|
|
55
|
-
### Plugin Design Principles
|
|
56
|
-
1. **Generic by Default**: Everything should work for any Payload project
|
|
57
|
-
2. **Configuration Over Code**: Use config options rather than hardcoded values
|
|
58
|
-
3. **Follow Payload Patterns**: Match the style of official plugins
|
|
59
|
-
4. **User-Friendly**: Clear documentation and intuitive defaults
|
|
60
|
-
|
|
61
|
-
### Testing Approach
|
|
62
|
-
- Test with generic data only
|
|
63
|
-
- Use example.com for email addresses
|
|
64
|
-
- Use placeholder text for content
|
|
65
|
-
- Never use real API keys in tests
|
|
66
|
-
|
|
67
|
-
### Documentation
|
|
68
|
-
- Keep README focused on user needs
|
|
69
|
-
- Include clear examples
|
|
70
|
-
- Document all configuration options
|
|
71
|
-
- Link to FEEDBACK.md for design decisions
|
|
72
|
-
|
|
73
|
-
## Common Tasks
|
|
74
|
-
|
|
75
|
-
### When Adding New Features
|
|
76
|
-
1. Check reference implementations for patterns
|
|
77
|
-
2. Keep everything configurable
|
|
78
|
-
3. Add TypeScript types
|
|
79
|
-
4. Update documentation
|
|
80
|
-
5. Make progressive commits
|
|
81
|
-
|
|
82
|
-
### When Reviewing Reference Code
|
|
83
|
-
- Extract patterns, not implementations
|
|
84
|
-
- Generalize any specific logic
|
|
85
|
-
- Remove all identifying information
|
|
86
|
-
- Focus on the architecture
|
|
87
|
-
|
|
88
|
-
## Environment Variables
|
|
89
|
-
|
|
90
|
-
When documenting environment variables, always use generic examples:
|
|
91
|
-
```bash
|
|
92
|
-
RESEND_API_KEY=your_resend_api_key_here
|
|
93
|
-
BROADCAST_TOKEN=your_broadcast_token_here
|
|
94
|
-
JWT_SECRET=your_jwt_secret_here
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
## Git Workflow
|
|
98
|
-
|
|
99
|
-
1. Make small, focused commits
|
|
100
|
-
2. Use conventional commit messages (feat:, fix:, docs:, etc.)
|
|
101
|
-
3. Push regularly to: https://github.com/aniketpanjwani/payload-plugin-email-newsletter
|
|
102
|
-
4. Keep sensitive information in gitignored directories
|
|
103
|
-
|
|
104
|
-
## Questions to Always Consider
|
|
105
|
-
|
|
106
|
-
Before implementing any feature, ask:
|
|
107
|
-
1. Is this generic enough for any Payload project?
|
|
108
|
-
2. Are there any hardcoded values that should be configurable?
|
|
109
|
-
3. Does this follow Payload's established patterns?
|
|
110
|
-
4. Is this well-documented for users?
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EmailSettings.d.ts","sourceRoot":"","sources":["../../src/globals/EmailSettings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEtD,eAAO,MAAM,yBAAyB,GACpC,cAAc,sBAAsB,KACnC,YAmPF,CAAA"}
|
|
@@ -1,252 +0,0 @@
|
|
|
1
|
-
export const createEmailSettingsGlobal = (pluginConfig)=>{
|
|
2
|
-
return {
|
|
3
|
-
slug: 'newsletter-settings',
|
|
4
|
-
label: 'Newsletter Settings',
|
|
5
|
-
admin: {
|
|
6
|
-
group: 'Settings',
|
|
7
|
-
description: 'Configure email provider settings and templates'
|
|
8
|
-
},
|
|
9
|
-
fields: [
|
|
10
|
-
{
|
|
11
|
-
type: 'tabs',
|
|
12
|
-
tabs: [
|
|
13
|
-
{
|
|
14
|
-
label: 'Provider Settings',
|
|
15
|
-
fields: [
|
|
16
|
-
{
|
|
17
|
-
name: 'provider',
|
|
18
|
-
type: 'select',
|
|
19
|
-
label: 'Email Provider',
|
|
20
|
-
required: true,
|
|
21
|
-
options: [
|
|
22
|
-
{
|
|
23
|
-
label: 'Resend',
|
|
24
|
-
value: 'resend'
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
label: 'Broadcast (Self-Hosted)',
|
|
28
|
-
value: 'broadcast'
|
|
29
|
-
}
|
|
30
|
-
],
|
|
31
|
-
defaultValue: pluginConfig.providers.default,
|
|
32
|
-
admin: {
|
|
33
|
-
description: 'Choose which email service to use'
|
|
34
|
-
}
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
name: 'resendSettings',
|
|
38
|
-
type: 'group',
|
|
39
|
-
label: 'Resend Settings',
|
|
40
|
-
admin: {
|
|
41
|
-
condition: (data)=>data?.provider === 'resend'
|
|
42
|
-
},
|
|
43
|
-
fields: [
|
|
44
|
-
{
|
|
45
|
-
name: 'apiKey',
|
|
46
|
-
type: 'text',
|
|
47
|
-
label: 'API Key',
|
|
48
|
-
required: true,
|
|
49
|
-
admin: {
|
|
50
|
-
description: 'Your Resend API key'
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
name: 'audienceIds',
|
|
55
|
-
type: 'array',
|
|
56
|
-
label: 'Audience IDs',
|
|
57
|
-
labels: {
|
|
58
|
-
singular: 'Audience',
|
|
59
|
-
plural: 'Audiences'
|
|
60
|
-
},
|
|
61
|
-
fields: [
|
|
62
|
-
{
|
|
63
|
-
name: 'locale',
|
|
64
|
-
type: 'text',
|
|
65
|
-
label: 'Locale',
|
|
66
|
-
required: true,
|
|
67
|
-
admin: {
|
|
68
|
-
description: 'Language/locale code (e.g., en, es)'
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
name: 'production',
|
|
73
|
-
type: 'text',
|
|
74
|
-
label: 'Production Audience ID',
|
|
75
|
-
admin: {
|
|
76
|
-
description: 'Audience ID for production environment'
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
name: 'development',
|
|
81
|
-
type: 'text',
|
|
82
|
-
label: 'Development Audience ID',
|
|
83
|
-
admin: {
|
|
84
|
-
description: 'Audience ID for development environment'
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
],
|
|
88
|
-
admin: {
|
|
89
|
-
description: 'Configure audience IDs for different locales'
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
]
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
name: 'broadcastSettings',
|
|
96
|
-
type: 'group',
|
|
97
|
-
label: 'Broadcast Settings',
|
|
98
|
-
admin: {
|
|
99
|
-
condition: (data)=>data?.provider === 'broadcast'
|
|
100
|
-
},
|
|
101
|
-
fields: [
|
|
102
|
-
{
|
|
103
|
-
name: 'apiUrl',
|
|
104
|
-
type: 'text',
|
|
105
|
-
label: 'Broadcast API URL',
|
|
106
|
-
required: true,
|
|
107
|
-
admin: {
|
|
108
|
-
description: 'Your Broadcast installation URL (e.g., https://broadcast.yourdomain.com)'
|
|
109
|
-
}
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
name: 'productionToken',
|
|
113
|
-
type: 'text',
|
|
114
|
-
label: 'Broadcast API Token (Production)',
|
|
115
|
-
admin: {
|
|
116
|
-
description: 'API token for your production channel from Broadcast Access Tokens page'
|
|
117
|
-
}
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
name: 'developmentToken',
|
|
121
|
-
type: 'text',
|
|
122
|
-
label: 'Broadcast API Token (Development)',
|
|
123
|
-
admin: {
|
|
124
|
-
description: 'API token for your development channel from Broadcast Access Tokens page'
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
]
|
|
128
|
-
}
|
|
129
|
-
]
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
label: 'Email Templates',
|
|
133
|
-
fields: [
|
|
134
|
-
{
|
|
135
|
-
name: 'fromAddress',
|
|
136
|
-
type: 'email',
|
|
137
|
-
label: 'From Email Address',
|
|
138
|
-
required: true,
|
|
139
|
-
admin: {
|
|
140
|
-
description: 'Email address that newsletters will be sent from'
|
|
141
|
-
}
|
|
142
|
-
},
|
|
143
|
-
{
|
|
144
|
-
name: 'fromName',
|
|
145
|
-
type: 'text',
|
|
146
|
-
label: 'From Name',
|
|
147
|
-
required: true,
|
|
148
|
-
admin: {
|
|
149
|
-
description: 'Name that appears as the sender'
|
|
150
|
-
}
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
name: 'replyTo',
|
|
154
|
-
type: 'email',
|
|
155
|
-
label: 'Reply-To Address',
|
|
156
|
-
admin: {
|
|
157
|
-
description: 'Email address for replies (optional)'
|
|
158
|
-
}
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
name: 'emailFooter',
|
|
162
|
-
type: 'richText',
|
|
163
|
-
label: 'Email Footer',
|
|
164
|
-
admin: {
|
|
165
|
-
description: 'Footer content that appears in all emails'
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
]
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
label: 'Subscription Settings',
|
|
172
|
-
fields: [
|
|
173
|
-
{
|
|
174
|
-
name: 'requireDoubleOptIn',
|
|
175
|
-
type: 'checkbox',
|
|
176
|
-
label: 'Require Double Opt-In',
|
|
177
|
-
defaultValue: false,
|
|
178
|
-
admin: {
|
|
179
|
-
description: 'Require email confirmation before activating subscription'
|
|
180
|
-
}
|
|
181
|
-
},
|
|
182
|
-
{
|
|
183
|
-
name: 'welcomeEmailDelay',
|
|
184
|
-
type: 'number',
|
|
185
|
-
label: 'Welcome Email Delay',
|
|
186
|
-
defaultValue: 0,
|
|
187
|
-
min: 0,
|
|
188
|
-
admin: {
|
|
189
|
-
description: 'Delay in minutes before sending welcome email'
|
|
190
|
-
}
|
|
191
|
-
},
|
|
192
|
-
{
|
|
193
|
-
name: 'allowedDomains',
|
|
194
|
-
type: 'array',
|
|
195
|
-
label: 'Allowed Email Domains',
|
|
196
|
-
labels: {
|
|
197
|
-
singular: 'Domain',
|
|
198
|
-
plural: 'Domains'
|
|
199
|
-
},
|
|
200
|
-
admin: {
|
|
201
|
-
description: 'Restrict signups to specific email domains (leave empty to allow all)'
|
|
202
|
-
},
|
|
203
|
-
fields: [
|
|
204
|
-
{
|
|
205
|
-
name: 'domain',
|
|
206
|
-
type: 'text',
|
|
207
|
-
label: 'Domain',
|
|
208
|
-
required: true,
|
|
209
|
-
admin: {
|
|
210
|
-
placeholder: 'example.com'
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
]
|
|
214
|
-
},
|
|
215
|
-
{
|
|
216
|
-
name: 'maxSubscribersPerIP',
|
|
217
|
-
type: 'number',
|
|
218
|
-
label: 'Max Subscribers Per IP',
|
|
219
|
-
defaultValue: 10,
|
|
220
|
-
min: 1,
|
|
221
|
-
admin: {
|
|
222
|
-
description: 'Maximum number of subscriptions allowed from a single IP address'
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
]
|
|
226
|
-
}
|
|
227
|
-
]
|
|
228
|
-
}
|
|
229
|
-
],
|
|
230
|
-
hooks: {
|
|
231
|
-
afterChange: [
|
|
232
|
-
async ({ doc, req })=>{
|
|
233
|
-
// Reinitialize email service with new settings
|
|
234
|
-
if (req.payload.newsletterEmailService) {
|
|
235
|
-
try {
|
|
236
|
-
// TODO: Implement email service reinitialization
|
|
237
|
-
console.log('Email settings updated, reinitializing service...');
|
|
238
|
-
} catch (error) {
|
|
239
|
-
console.error('Failed to reinitialize email service:', error);
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
]
|
|
244
|
-
},
|
|
245
|
-
access: {
|
|
246
|
-
read: ({ req: { user } })=>Boolean(user),
|
|
247
|
-
update: ({ req: { user } })=>Boolean(user?.collection === 'users')
|
|
248
|
-
}
|
|
249
|
-
};
|
|
250
|
-
};
|
|
251
|
-
|
|
252
|
-
//# sourceMappingURL=EmailSettings.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/globals/EmailSettings.ts"],"sourcesContent":["import type { GlobalConfig } from 'payload'\nimport type { NewsletterPluginConfig } from '../types'\n\nexport const createEmailSettingsGlobal = (\n pluginConfig: NewsletterPluginConfig\n): GlobalConfig => {\n return {\n slug: 'newsletter-settings',\n label: 'Newsletter Settings',\n admin: {\n group: 'Settings',\n description: 'Configure email provider settings and templates',\n },\n fields: [\n {\n type: 'tabs',\n tabs: [\n {\n label: 'Provider Settings',\n fields: [\n {\n name: 'provider',\n type: 'select',\n label: 'Email Provider',\n required: true,\n options: [\n { label: 'Resend', value: 'resend' },\n { label: 'Broadcast (Self-Hosted)', value: 'broadcast' },\n ],\n defaultValue: pluginConfig.providers.default,\n admin: {\n description: 'Choose which email service to use',\n },\n },\n {\n name: 'resendSettings',\n type: 'group',\n label: 'Resend Settings',\n admin: {\n condition: (data) => data?.provider === 'resend',\n },\n fields: [\n {\n name: 'apiKey',\n type: 'text',\n label: 'API Key',\n required: true,\n admin: {\n description: 'Your Resend API key',\n },\n },\n {\n name: 'audienceIds',\n type: 'array',\n label: 'Audience IDs',\n labels: {\n singular: 'Audience',\n plural: 'Audiences',\n },\n fields: [\n {\n name: 'locale',\n type: 'text',\n label: 'Locale',\n required: true,\n admin: {\n description: 'Language/locale code (e.g., en, es)',\n },\n },\n {\n name: 'production',\n type: 'text',\n label: 'Production Audience ID',\n admin: {\n description: 'Audience ID for production environment',\n },\n },\n {\n name: 'development',\n type: 'text',\n label: 'Development Audience ID',\n admin: {\n description: 'Audience ID for development environment',\n },\n },\n ],\n admin: {\n description: 'Configure audience IDs for different locales',\n },\n },\n ],\n },\n {\n name: 'broadcastSettings',\n type: 'group',\n label: 'Broadcast Settings',\n admin: {\n condition: (data) => data?.provider === 'broadcast',\n },\n fields: [\n {\n name: 'apiUrl',\n type: 'text',\n label: 'Broadcast API URL',\n required: true,\n admin: {\n description: 'Your Broadcast installation URL (e.g., https://broadcast.yourdomain.com)',\n },\n },\n {\n name: 'productionToken',\n type: 'text',\n label: 'Broadcast API Token (Production)',\n admin: {\n description: 'API token for your production channel from Broadcast Access Tokens page',\n },\n },\n {\n name: 'developmentToken',\n type: 'text',\n label: 'Broadcast API Token (Development)',\n admin: {\n description: 'API token for your development channel from Broadcast Access Tokens page',\n },\n },\n ],\n },\n ],\n },\n {\n label: 'Email Templates',\n fields: [\n {\n name: 'fromAddress',\n type: 'email',\n label: 'From Email Address',\n required: true,\n admin: {\n description: 'Email address that newsletters will be sent from',\n },\n },\n {\n name: 'fromName',\n type: 'text',\n label: 'From Name',\n required: true,\n admin: {\n description: 'Name that appears as the sender',\n },\n },\n {\n name: 'replyTo',\n type: 'email',\n label: 'Reply-To Address',\n admin: {\n description: 'Email address for replies (optional)',\n },\n },\n {\n name: 'emailFooter',\n type: 'richText',\n label: 'Email Footer',\n admin: {\n description: 'Footer content that appears in all emails',\n },\n },\n ],\n },\n {\n label: 'Subscription Settings',\n fields: [\n {\n name: 'requireDoubleOptIn',\n type: 'checkbox',\n label: 'Require Double Opt-In',\n defaultValue: false,\n admin: {\n description: 'Require email confirmation before activating subscription',\n },\n },\n {\n name: 'welcomeEmailDelay',\n type: 'number',\n label: 'Welcome Email Delay',\n defaultValue: 0,\n min: 0,\n admin: {\n description: 'Delay in minutes before sending welcome email',\n },\n },\n {\n name: 'allowedDomains',\n type: 'array',\n label: 'Allowed Email Domains',\n labels: {\n singular: 'Domain',\n plural: 'Domains',\n },\n admin: {\n description: 'Restrict signups to specific email domains (leave empty to allow all)',\n },\n fields: [\n {\n name: 'domain',\n type: 'text',\n label: 'Domain',\n required: true,\n admin: {\n placeholder: 'example.com',\n },\n },\n ],\n },\n {\n name: 'maxSubscribersPerIP',\n type: 'number',\n label: 'Max Subscribers Per IP',\n defaultValue: 10,\n min: 1,\n admin: {\n description: 'Maximum number of subscriptions allowed from a single IP address',\n },\n },\n ],\n },\n ],\n },\n ],\n hooks: {\n afterChange: [\n async ({ doc, req }) => {\n // Reinitialize email service with new settings\n if ((req.payload as any).newsletterEmailService) {\n try {\n // TODO: Implement email service reinitialization\n console.log('Email settings updated, reinitializing service...')\n } catch (error) {\n console.error('Failed to reinitialize email service:', error)\n }\n }\n },\n ],\n },\n access: {\n read: ({ req: { user } }) => Boolean(user),\n update: ({ req: { user } }) => Boolean(user?.collection === 'users'),\n },\n }\n}"],"names":["createEmailSettingsGlobal","pluginConfig","slug","label","admin","group","description","fields","type","tabs","name","required","options","value","defaultValue","providers","default","condition","data","provider","labels","singular","plural","min","placeholder","hooks","afterChange","doc","req","payload","newsletterEmailService","console","log","error","access","read","user","Boolean","update","collection"],"mappings":"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"}
|