Files
omnivore/packages/inbound-email-handler/src/substack-handler.ts
2022-04-21 21:28:00 +08:00

26 lines
688 B
TypeScript

import { NewsletterHandler } from './newsletter'
import addressparser from 'addressparser'
export class SubstackHandler extends NewsletterHandler {
constructor() {
super()
this.defaultUrl = 'https://www.substack.com'
}
parseNewsletterUrl(postHeader: string, _html: string): string | undefined {
// raw SubStack newsletter url is like <https://hongbo130.substack.com/p/tldr>
// we need to get the real url from the raw url
return addressparser(postHeader).length > 0
? addressparser(postHeader)[0].name
: undefined
}
isNewsletter(
postHeader: string,
_from: string,
_unSubHeader: string
): boolean {
return !!postHeader
}
}