ThatAIguyA world of ideas

THE CONSCIOUSNESS ATLAS
Read. Experiment. Follow the evidence.

ConsciousnessLearn · Explore · Joseph Anady

Janady13/llms-txt-hub / packages/newsletter/src/index.ts

Source identity, revision, and recovered contents.

GitHub sourceSource text recovered

Source identity

FieldRecorded value
Source typeGitHub source
Original recordJanady13/llms-txt-hub / packages/newsletter/src/index.ts
DateNot specified in source
RepositoryJanady13/llms-txt-hub
Revisione0f4bf978d4df168369c7601d9c5f5ea89e84377
Branchmain
Path or archive memberpackages/newsletter/src/index.ts
Original SHA-2566982175c022355505ff50e7f83ad62c58b3209e78bf2f8a66ffad14dc0a706e6
Git blob SHAe25eb6ef4fff3d9fa12b7f887c0785c5de9a1697
Reading-copy SHA-2566982175c022355505ff50e7f83ad62c58b3209e78bf2f8a66ffad14dc0a706e6

Original source ↗

Recovered source transcript

// Main exports export { createNewsletterProvider } from './factory' export { KitProvider } from './providers/kit' // Provider classes (if someone wants to use them directly) export { MailerLiteProvider } from './providers/mailerlite' export { SubstackProvider } from './providers/substack' // Types export type { BaseProviderConfig, KitConfig, MailerLiteConfig, NewsletterProvider, NewsletterProviderInterface, NewsletterSubscriber, ProviderConfig, SubscribeRequest, SubscribeResponse, SubstackConfig } from './types' // Re-export schema for validation export { subscribeSchema } from './types' // Import types for helper functions import type { NewsletterProviderInterface, ProviderConfig } from './types' // Helper to check if provider is iframe-only export function isIframeProvider(provider: NewsletterProviderInterface): boolean { return provider.isIframeOnly?.() ?? false } // Helper to get provider from environment variables export function getProviderFromEnv(): ProviderConfig | null { // Check for MailerLite if (process.env.MAILERLITE_API_KEY) { return { provider: 'mailerlite', apiKey: process.env.MAILERLITE_API_KEY, defaultGroupIds: process.env.MAILERLITE_GROUP_IDS?.split(',').map(id => id.trim()) } } // Check for Kit (ConvertKit) if (process.env.CONVERTKIT_API_KEY && process.env.CONVERTKIT_FORM_ID) { return { provider: 'kit', apiKey: process.env.CONVERTKIT_API_KEY, formId: process.env.CONVERTKIT_FORM_ID, defaultTagIds: process.env.CONVERTKIT_TAG_IDS?.split(',') .map(id => Number(id.trim())) .filter(id => !Number.isNaN(id)) } } // Check for Substack if (process.env.SUBSTACK_PUBLICATION_URL) { return { provider: 'substack', publicationUrl: process.env.SUBSTACK_PUBLICATION_URL, embedUrl: process.env.SUBSTACK_EMBED_URL } } return null }

Search equations, builds, manuscript text, and recovered sources.