Source identity
| Field | Recorded value |
|---|---|
| Source type | GitHub source |
| Original record | Janady13/llms-txt-hub / packages/newsletter/src/factory.ts |
| Date | Not specified in source |
| Repository | Janady13/llms-txt-hub |
| Revision | e0f4bf978d4df168369c7601d9c5f5ea89e84377 |
| Branch | main |
| Path or archive member | packages/newsletter/src/factory.ts |
| Original SHA-256 | 4dd446e5ce22721bb369c9ad4d9aa6a5d7c4242a917f66a5057fc34287394683 |
| Git blob SHA | 916aa3fcb49d8dbb9ff7894eaf7221abb453725f |
| Reading-copy SHA-256 | 4dd446e5ce22721bb369c9ad4d9aa6a5d7c4242a917f66a5057fc34287394683 |
Recovered source transcript
Download complete source text ↓18 lines · 0.6 KB
import { KitProvider } from './providers/kit'
import { MailerLiteProvider } from './providers/mailerlite'
import { SubstackProvider } from './providers/substack'
import type { NewsletterProviderInterface, ProviderConfig } from './types'
export function createNewsletterProvider(config: ProviderConfig): NewsletterProviderInterface {
switch (config.provider) {
case 'mailerlite':
return new MailerLiteProvider(config)
case 'kit':
return new KitProvider(config)
case 'substack':
return new SubstackProvider(config)
default:
throw new Error(`Unsupported newsletter provider: ${(config as any).provider}`)
}
}