@beyondcorp/beyond-ui 1.3.10 → 1.4.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/dist/components/Auth/{PasswordResetForm.d.ts → ForgotPasswordForm.d.ts} +2 -2
- package/dist/components/Auth/{PasswordResetForm.example.js → ForgotPasswordForm.example.js} +3 -3
- package/dist/components/Auth/ForgotPasswordForm.example.js.map +1 -0
- package/dist/components/Auth/{PasswordResetForm.js → ForgotPasswordForm.js} +4 -4
- package/dist/components/Auth/ForgotPasswordForm.js.map +1 -0
- package/dist/components/Auth/ResetPasswordForm.d.ts +9 -0
- package/dist/components/Auth/ResetPasswordForm.js +41 -0
- package/dist/components/Auth/ResetPasswordForm.js.map +1 -0
- package/dist/components/Auth/index.d.ts +2 -1
- package/dist/components/Auth/index.js +2 -1
- package/dist/components/Auth/index.js.map +1 -1
- package/dist/components/ComponentShowcase/ComponentShowcase.js +7 -1
- package/dist/components/ComponentShowcase/ComponentShowcase.js.map +1 -1
- package/dist/components/ComponentShowcase/componentDocs.d.ts +6 -0
- package/dist/components/ComponentShowcase/componentDocs.js +17 -0
- package/dist/components/ComponentShowcase/componentDocs.js.map +1 -1
- package/dist/components/ComponentShowcase/showcaseRegistry.js +4 -2
- package/dist/components/ComponentShowcase/showcaseRegistry.js.map +1 -1
- package/dist/components/Email/EmailShowcase.d.ts +1 -0
- package/dist/components/Email/EmailShowcase.js +85 -0
- package/dist/components/Email/EmailShowcase.js.map +1 -0
- package/dist/components/Email/components/EmailButton.d.ts +5 -0
- package/dist/components/Email/components/EmailButton.js +7 -0
- package/dist/components/Email/components/EmailButton.js.map +1 -0
- package/dist/components/Email/components/EmailDivider.d.ts +1 -0
- package/dist/components/Email/components/EmailDivider.js +7 -0
- package/dist/components/Email/components/EmailDivider.js.map +1 -0
- package/dist/components/Email/components/EmailFooter.d.ts +3 -0
- package/dist/components/Email/components/EmailFooter.js +9 -0
- package/dist/components/Email/components/EmailFooter.js.map +1 -0
- package/dist/components/Email/components/EmailHeader.d.ts +4 -0
- package/dist/components/Email/components/EmailHeader.js +8 -0
- package/dist/components/Email/components/EmailHeader.js.map +1 -0
- package/dist/components/Email/components/EmailLayout.d.ts +6 -0
- package/dist/components/Email/components/EmailLayout.js +15 -0
- package/dist/components/Email/components/EmailLayout.js.map +1 -0
- package/dist/components/Email/components/EmailPreviewer.d.ts +5 -0
- package/dist/components/Email/components/EmailPreviewer.js +25 -0
- package/dist/components/Email/components/EmailPreviewer.js.map +1 -0
- package/dist/components/Email/components/index.d.ts +7 -0
- package/dist/components/Email/components/theme.d.ts +27 -0
- package/dist/components/Email/components/theme.js +21 -0
- package/dist/components/Email/components/theme.js.map +1 -0
- package/dist/components/Email/index.d.ts +2 -0
- package/dist/components/Email/templates/auth/ConfirmEmail.d.ts +7 -0
- package/dist/components/Email/templates/auth/ConfirmEmail.js +13 -0
- package/dist/components/Email/templates/auth/ConfirmEmail.js.map +1 -0
- package/dist/components/Email/templates/auth/EmailChangeVerification.d.ts +9 -0
- package/dist/components/Email/templates/auth/EmailChangeVerification.js +13 -0
- package/dist/components/Email/templates/auth/EmailChangeVerification.js.map +1 -0
- package/dist/components/Email/templates/auth/MagicLinkEmail.d.ts +7 -0
- package/dist/components/Email/templates/auth/MagicLinkEmail.js +14 -0
- package/dist/components/Email/templates/auth/MagicLinkEmail.js.map +1 -0
- package/dist/components/Email/templates/auth/ResetPasswordEmail.d.ts +8 -0
- package/dist/components/Email/templates/auth/ResetPasswordEmail.js +13 -0
- package/dist/components/Email/templates/auth/ResetPasswordEmail.js.map +1 -0
- package/dist/components/Email/templates/auth/WelcomeEmail.d.ts +8 -0
- package/dist/components/Email/templates/auth/WelcomeEmail.js +13 -0
- package/dist/components/Email/templates/auth/WelcomeEmail.js.map +1 -0
- package/dist/components/Email/templates/auth/index.d.ts +5 -0
- package/dist/components/Email/templates/billing/CreditCardExpiring.d.ts +9 -0
- package/dist/components/Email/templates/billing/CreditCardExpiring.js +14 -0
- package/dist/components/Email/templates/billing/CreditCardExpiring.js.map +1 -0
- package/dist/components/Email/templates/billing/InvoiceEmail.d.ts +10 -0
- package/dist/components/Email/templates/billing/InvoiceEmail.js +16 -0
- package/dist/components/Email/templates/billing/InvoiceEmail.js.map +1 -0
- package/dist/components/Email/templates/billing/OverduePaymentNotice.d.ts +9 -0
- package/dist/components/Email/templates/billing/OverduePaymentNotice.js +13 -0
- package/dist/components/Email/templates/billing/OverduePaymentNotice.js.map +1 -0
- package/dist/components/Email/templates/billing/PaymentFailedEmail.d.ts +8 -0
- package/dist/components/Email/templates/billing/PaymentFailedEmail.js +14 -0
- package/dist/components/Email/templates/billing/PaymentFailedEmail.js.map +1 -0
- package/dist/components/Email/templates/billing/PaymentReceipt.d.ts +10 -0
- package/dist/components/Email/templates/billing/PaymentReceipt.js +15 -0
- package/dist/components/Email/templates/billing/PaymentReceipt.js.map +1 -0
- package/dist/components/Email/templates/billing/SubscriptionCancelled.d.ts +9 -0
- package/dist/components/Email/templates/billing/SubscriptionCancelled.js +14 -0
- package/dist/components/Email/templates/billing/SubscriptionCancelled.js.map +1 -0
- package/dist/components/Email/templates/billing/SubscriptionConfirmation.d.ts +10 -0
- package/dist/components/Email/templates/billing/SubscriptionConfirmation.js +13 -0
- package/dist/components/Email/templates/billing/SubscriptionConfirmation.js.map +1 -0
- package/dist/components/Email/templates/billing/TrialEndingEmail.d.ts +8 -0
- package/dist/components/Email/templates/billing/TrialEndingEmail.js +13 -0
- package/dist/components/Email/templates/billing/TrialEndingEmail.js.map +1 -0
- package/dist/components/Email/templates/billing/index.d.ts +8 -0
- package/dist/components/Email/templates/engagement/FeatureAnnouncement.d.ts +10 -0
- package/dist/components/Email/templates/engagement/FeatureAnnouncement.js +15 -0
- package/dist/components/Email/templates/engagement/FeatureAnnouncement.js.map +1 -0
- package/dist/components/Email/templates/engagement/FeedbackRequestEmail.d.ts +8 -0
- package/dist/components/Email/templates/engagement/FeedbackRequestEmail.js +13 -0
- package/dist/components/Email/templates/engagement/FeedbackRequestEmail.js.map +1 -0
- package/dist/components/Email/templates/engagement/InactivityWarning.d.ts +9 -0
- package/dist/components/Email/templates/engagement/InactivityWarning.js +14 -0
- package/dist/components/Email/templates/engagement/InactivityWarning.js.map +1 -0
- package/dist/components/Email/templates/engagement/MilestoneEmail.d.ts +9 -0
- package/dist/components/Email/templates/engagement/MilestoneEmail.js +14 -0
- package/dist/components/Email/templates/engagement/MilestoneEmail.js.map +1 -0
- package/dist/components/Email/templates/engagement/ProductChangelog.d.ts +9 -0
- package/dist/components/Email/templates/engagement/ProductChangelog.js +13 -0
- package/dist/components/Email/templates/engagement/ProductChangelog.js.map +1 -0
- package/dist/components/Email/templates/engagement/TeamInviteEmail.d.ts +9 -0
- package/dist/components/Email/templates/engagement/TeamInviteEmail.js +14 -0
- package/dist/components/Email/templates/engagement/TeamInviteEmail.js.map +1 -0
- package/dist/components/Email/templates/engagement/TipOfWeek.d.ts +9 -0
- package/dist/components/Email/templates/engagement/TipOfWeek.js +13 -0
- package/dist/components/Email/templates/engagement/TipOfWeek.js.map +1 -0
- package/dist/components/Email/templates/engagement/WeeklyDigest.d.ts +11 -0
- package/dist/components/Email/templates/engagement/WeeklyDigest.js +20 -0
- package/dist/components/Email/templates/engagement/WeeklyDigest.js.map +1 -0
- package/dist/components/Email/templates/engagement/index.d.ts +8 -0
- package/dist/components/Email/templates/growth/ReferralConverted.d.ts +9 -0
- package/dist/components/Email/templates/growth/ReferralConverted.js +13 -0
- package/dist/components/Email/templates/growth/ReferralConverted.js.map +1 -0
- package/dist/components/Email/templates/growth/ReferralInvite.d.ts +8 -0
- package/dist/components/Email/templates/growth/ReferralInvite.js +13 -0
- package/dist/components/Email/templates/growth/ReferralInvite.js.map +1 -0
- package/dist/components/Email/templates/growth/ReferralReward.d.ts +10 -0
- package/dist/components/Email/templates/growth/ReferralReward.js +14 -0
- package/dist/components/Email/templates/growth/ReferralReward.js.map +1 -0
- package/dist/components/Email/templates/growth/SocialSharePrompt.d.ts +8 -0
- package/dist/components/Email/templates/growth/SocialSharePrompt.js +15 -0
- package/dist/components/Email/templates/growth/SocialSharePrompt.js.map +1 -0
- package/dist/components/Email/templates/growth/WaitlistWelcome.d.ts +9 -0
- package/dist/components/Email/templates/growth/WaitlistWelcome.js +14 -0
- package/dist/components/Email/templates/growth/WaitlistWelcome.js.map +1 -0
- package/dist/components/Email/templates/growth/index.d.ts +5 -0
- package/dist/components/Email/templates/index.d.ts +11 -0
- package/dist/components/Email/templates/index.js +116 -0
- package/dist/components/Email/templates/index.js.map +1 -0
- package/dist/components/Email/templates/internal/comms/CompanyEventsCalendar.d.ts +13 -0
- package/dist/components/Email/templates/internal/comms/CompanyEventsCalendar.js +19 -0
- package/dist/components/Email/templates/internal/comms/CompanyEventsCalendar.js.map +1 -0
- package/dist/components/Email/templates/internal/comms/LeadershipUpdate.d.ts +9 -0
- package/dist/components/Email/templates/internal/comms/LeadershipUpdate.js +16 -0
- package/dist/components/Email/templates/internal/comms/LeadershipUpdate.js.map +1 -0
- package/dist/components/Email/templates/internal/comms/MeetingRecap.d.ts +10 -0
- package/dist/components/Email/templates/internal/comms/MeetingRecap.js +19 -0
- package/dist/components/Email/templates/internal/comms/MeetingRecap.js.map +1 -0
- package/dist/components/Email/templates/internal/comms/index.d.ts +3 -0
- package/dist/components/Email/templates/internal/hr/BirthdayAnniversary.d.ts +8 -0
- package/dist/components/Email/templates/internal/hr/BirthdayAnniversary.js +14 -0
- package/dist/components/Email/templates/internal/hr/BirthdayAnniversary.js.map +1 -0
- package/dist/components/Email/templates/internal/hr/EmployeeFarewell.d.ts +9 -0
- package/dist/components/Email/templates/internal/hr/EmployeeFarewell.js +13 -0
- package/dist/components/Email/templates/internal/hr/EmployeeFarewell.js.map +1 -0
- package/dist/components/Email/templates/internal/hr/ExitInterviewRequest.d.ts +8 -0
- package/dist/components/Email/templates/internal/hr/ExitInterviewRequest.js +13 -0
- package/dist/components/Email/templates/internal/hr/ExitInterviewRequest.js.map +1 -0
- package/dist/components/Email/templates/internal/hr/NewHireAnnouncement.d.ts +11 -0
- package/dist/components/Email/templates/internal/hr/NewHireAnnouncement.js +14 -0
- package/dist/components/Email/templates/internal/hr/NewHireAnnouncement.js.map +1 -0
- package/dist/components/Email/templates/internal/hr/PolicyUpdate.d.ts +9 -0
- package/dist/components/Email/templates/internal/hr/PolicyUpdate.js +13 -0
- package/dist/components/Email/templates/internal/hr/PolicyUpdate.js.map +1 -0
- package/dist/components/Email/templates/internal/hr/index.d.ts +5 -0
- package/dist/components/Email/templates/internal/index.d.ts +3 -0
- package/dist/components/Email/templates/internal/it/AppAccessGranted.d.ts +9 -0
- package/dist/components/Email/templates/internal/it/AppAccessGranted.js +13 -0
- package/dist/components/Email/templates/internal/it/AppAccessGranted.js.map +1 -0
- package/dist/components/Email/templates/internal/it/ITOutageReport.d.ts +9 -0
- package/dist/components/Email/templates/internal/it/ITOutageReport.js +15 -0
- package/dist/components/Email/templates/internal/it/ITOutageReport.js.map +1 -0
- package/dist/components/Email/templates/internal/it/PasswordRotationReminder.d.ts +8 -0
- package/dist/components/Email/templates/internal/it/PasswordRotationReminder.js +13 -0
- package/dist/components/Email/templates/internal/it/PasswordRotationReminder.js.map +1 -0
- package/dist/components/Email/templates/internal/it/index.d.ts +3 -0
- package/dist/components/Email/templates/legal/DMCANotice.d.ts +9 -0
- package/dist/components/Email/templates/legal/DMCANotice.js +14 -0
- package/dist/components/Email/templates/legal/DMCANotice.js.map +1 -0
- package/dist/components/Email/templates/legal/DPANotice.d.ts +9 -0
- package/dist/components/Email/templates/legal/DPANotice.js +14 -0
- package/dist/components/Email/templates/legal/DPANotice.js.map +1 -0
- package/dist/components/Email/templates/legal/GDPRCompliance.d.ts +8 -0
- package/dist/components/Email/templates/legal/GDPRCompliance.js +14 -0
- package/dist/components/Email/templates/legal/GDPRCompliance.js.map +1 -0
- package/dist/components/Email/templates/legal/PrivacyPolicyUpdate.d.ts +8 -0
- package/dist/components/Email/templates/legal/PrivacyPolicyUpdate.js +14 -0
- package/dist/components/Email/templates/legal/PrivacyPolicyUpdate.js.map +1 -0
- package/dist/components/Email/templates/legal/TermsOfServiceUpdate.d.ts +8 -0
- package/dist/components/Email/templates/legal/TermsOfServiceUpdate.js +14 -0
- package/dist/components/Email/templates/legal/TermsOfServiceUpdate.js.map +1 -0
- package/dist/components/Email/templates/legal/index.d.ts +5 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateInvite.d.ts +6 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateInvite.js +11 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateInvite.js.map +1 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliatePayout.d.ts +6 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliatePayout.js +11 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliatePayout.js.map +1 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateTopPerformer.d.ts +5 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateTopPerformer.js +11 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateTopPerformer.js.map +1 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateWelcome.d.ts +5 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateWelcome.js +11 -0
- package/dist/components/Email/templates/marketing/affiliate/AffiliateWelcome.js.map +1 -0
- package/dist/components/Email/templates/marketing/affiliate/PartnerComarketing.d.ts +6 -0
- package/dist/components/Email/templates/marketing/affiliate/PartnerComarketing.js +11 -0
- package/dist/components/Email/templates/marketing/affiliate/PartnerComarketing.js.map +1 -0
- package/dist/components/Email/templates/marketing/affiliate/index.d.ts +5 -0
- package/dist/components/Email/templates/marketing/blog/BestOfRoundup.d.ts +6 -0
- package/dist/components/Email/templates/marketing/blog/BestOfRoundup.js +11 -0
- package/dist/components/Email/templates/marketing/blog/BestOfRoundup.js.map +1 -0
- package/dist/components/Email/templates/marketing/blog/BlogSeries.d.ts +7 -0
- package/dist/components/Email/templates/marketing/blog/BlogSeries.js +11 -0
- package/dist/components/Email/templates/marketing/blog/BlogSeries.js.map +1 -0
- package/dist/components/Email/templates/marketing/blog/NewBlogPost.d.ts +7 -0
- package/dist/components/Email/templates/marketing/blog/NewBlogPost.js +11 -0
- package/dist/components/Email/templates/marketing/blog/NewBlogPost.js.map +1 -0
- package/dist/components/Email/templates/marketing/blog/index.d.ts +3 -0
- package/dist/components/Email/templates/marketing/content/InfographicEmail.d.ts +5 -0
- package/dist/components/Email/templates/marketing/content/InfographicEmail.js +11 -0
- package/dist/components/Email/templates/marketing/content/InfographicEmail.js.map +1 -0
- package/dist/components/Email/templates/marketing/content/NewGuideEbook.d.ts +6 -0
- package/dist/components/Email/templates/marketing/content/NewGuideEbook.js +11 -0
- package/dist/components/Email/templates/marketing/content/NewGuideEbook.js.map +1 -0
- package/dist/components/Email/templates/marketing/content/PodcastEpisode.d.ts +6 -0
- package/dist/components/Email/templates/marketing/content/PodcastEpisode.js +11 -0
- package/dist/components/Email/templates/marketing/content/PodcastEpisode.js.map +1 -0
- package/dist/components/Email/templates/marketing/content/ToolTemplateDelivery.d.ts +6 -0
- package/dist/components/Email/templates/marketing/content/ToolTemplateDelivery.js +11 -0
- package/dist/components/Email/templates/marketing/content/ToolTemplateDelivery.js.map +1 -0
- package/dist/components/Email/templates/marketing/content/YouTubeNotification.d.ts +6 -0
- package/dist/components/Email/templates/marketing/content/YouTubeNotification.js +11 -0
- package/dist/components/Email/templates/marketing/content/YouTubeNotification.js.map +1 -0
- package/dist/components/Email/templates/marketing/content/index.d.ts +5 -0
- package/dist/components/Email/templates/marketing/events/ConferenceSeries.d.ts +5 -0
- package/dist/components/Email/templates/marketing/events/ConferenceSeries.js +11 -0
- package/dist/components/Email/templates/marketing/events/ConferenceSeries.js.map +1 -0
- package/dist/components/Email/templates/marketing/events/EarlyBirdReminder.d.ts +5 -0
- package/dist/components/Email/templates/marketing/events/EarlyBirdReminder.js +11 -0
- package/dist/components/Email/templates/marketing/events/EarlyBirdReminder.js.map +1 -0
- package/dist/components/Email/templates/marketing/events/EventAnnouncement.d.ts +9 -0
- package/dist/components/Email/templates/marketing/events/EventAnnouncement.js +13 -0
- package/dist/components/Email/templates/marketing/events/EventAnnouncement.js.map +1 -0
- package/dist/components/Email/templates/marketing/events/PostEventThankYou.d.ts +5 -0
- package/dist/components/Email/templates/marketing/events/PostEventThankYou.js +11 -0
- package/dist/components/Email/templates/marketing/events/PostEventThankYou.js.map +1 -0
- package/dist/components/Email/templates/marketing/events/ScheduleReleased.d.ts +5 -0
- package/dist/components/Email/templates/marketing/events/ScheduleReleased.js +11 -0
- package/dist/components/Email/templates/marketing/events/ScheduleReleased.js.map +1 -0
- package/dist/components/Email/templates/marketing/events/VIPInvite.d.ts +5 -0
- package/dist/components/Email/templates/marketing/events/VIPInvite.js +11 -0
- package/dist/components/Email/templates/marketing/events/VIPInvite.js.map +1 -0
- package/dist/components/Email/templates/marketing/events/index.d.ts +6 -0
- package/dist/components/Email/templates/marketing/index.d.ts +10 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/CaseStudyDelivery.d.ts +5 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/CaseStudyDelivery.js +11 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/CaseStudyDelivery.js.map +1 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/DripCampaignComplete.d.ts +5 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/DripCampaignComplete.js +11 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/DripCampaignComplete.js.map +1 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/DripCampaignDay1.d.ts +11 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/DripCampaignDay1.js +13 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/DripCampaignDay1.js.map +1 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/LeadMagnetDelivery.d.ts +9 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/LeadMagnetDelivery.js +14 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/LeadMagnetDelivery.js.map +1 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarConfirmation.d.ts +9 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarConfirmation.js +14 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarConfirmation.js.map +1 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarFollowup.d.ts +5 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarFollowup.js +11 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarFollowup.js.map +1 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarReminder.d.ts +5 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarReminder.js +11 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/WebinarReminder.js.map +1 -0
- package/dist/components/Email/templates/marketing/lead-nurturing/index.d.ts +7 -0
- package/dist/components/Email/templates/marketing/newsletters/CuratedIndustryNews.d.ts +5 -0
- package/dist/components/Email/templates/marketing/newsletters/CuratedIndustryNews.js +11 -0
- package/dist/components/Email/templates/marketing/newsletters/CuratedIndustryNews.js.map +1 -0
- package/dist/components/Email/templates/marketing/newsletters/MonthlyDigest.d.ts +16 -0
- package/dist/components/Email/templates/marketing/newsletters/MonthlyDigest.js +22 -0
- package/dist/components/Email/templates/marketing/newsletters/MonthlyDigest.js.map +1 -0
- package/dist/components/Email/templates/marketing/newsletters/WeeklyNewsletter.d.ts +16 -0
- package/dist/components/Email/templates/marketing/newsletters/WeeklyNewsletter.js +29 -0
- package/dist/components/Email/templates/marketing/newsletters/WeeklyNewsletter.js.map +1 -0
- package/dist/components/Email/templates/marketing/newsletters/index.d.ts +3 -0
- package/dist/components/Email/templates/marketing/promotional/AbandonedCart.d.ts +15 -0
- package/dist/components/Email/templates/marketing/promotional/AbandonedCart.js +20 -0
- package/dist/components/Email/templates/marketing/promotional/AbandonedCart.js.map +1 -0
- package/dist/components/Email/templates/marketing/promotional/BackInStock.d.ts +5 -0
- package/dist/components/Email/templates/marketing/promotional/BackInStock.js +11 -0
- package/dist/components/Email/templates/marketing/promotional/BackInStock.js.map +1 -0
- package/dist/components/Email/templates/marketing/promotional/BirthdayOffer.d.ts +5 -0
- package/dist/components/Email/templates/marketing/promotional/BirthdayOffer.js +11 -0
- package/dist/components/Email/templates/marketing/promotional/BirthdayOffer.js.map +1 -0
- package/dist/components/Email/templates/marketing/promotional/BrowseAbandonment.d.ts +5 -0
- package/dist/components/Email/templates/marketing/promotional/BrowseAbandonment.js +11 -0
- package/dist/components/Email/templates/marketing/promotional/BrowseAbandonment.js.map +1 -0
- package/dist/components/Email/templates/marketing/promotional/FlashSale.d.ts +9 -0
- package/dist/components/Email/templates/marketing/promotional/FlashSale.js +14 -0
- package/dist/components/Email/templates/marketing/promotional/FlashSale.js.map +1 -0
- package/dist/components/Email/templates/marketing/promotional/MilestoneDiscount.d.ts +5 -0
- package/dist/components/Email/templates/marketing/promotional/MilestoneDiscount.js +11 -0
- package/dist/components/Email/templates/marketing/promotional/MilestoneDiscount.js.map +1 -0
- package/dist/components/Email/templates/marketing/promotional/PriceDropAlert.d.ts +5 -0
- package/dist/components/Email/templates/marketing/promotional/PriceDropAlert.js +11 -0
- package/dist/components/Email/templates/marketing/promotional/PriceDropAlert.js.map +1 -0
- package/dist/components/Email/templates/marketing/promotional/SeasonalCampaign.d.ts +5 -0
- package/dist/components/Email/templates/marketing/promotional/SeasonalCampaign.js +11 -0
- package/dist/components/Email/templates/marketing/promotional/SeasonalCampaign.js.map +1 -0
- package/dist/components/Email/templates/marketing/promotional/index.d.ts +8 -0
- package/dist/components/Email/templates/marketing/reengagement/ComeBack60Day.d.ts +5 -0
- package/dist/components/Email/templates/marketing/reengagement/ComeBack60Day.js +11 -0
- package/dist/components/Email/templates/marketing/reengagement/ComeBack60Day.js.map +1 -0
- package/dist/components/Email/templates/marketing/reengagement/LastChance90Day.d.ts +5 -0
- package/dist/components/Email/templates/marketing/reengagement/LastChance90Day.js +11 -0
- package/dist/components/Email/templates/marketing/reengagement/LastChance90Day.js.map +1 -0
- package/dist/components/Email/templates/marketing/reengagement/ProductUpdateReengagement.d.ts +5 -0
- package/dist/components/Email/templates/marketing/reengagement/ProductUpdateReengagement.js +11 -0
- package/dist/components/Email/templates/marketing/reengagement/ProductUpdateReengagement.js.map +1 -0
- package/dist/components/Email/templates/marketing/reengagement/WeMissYou30Day.d.ts +8 -0
- package/dist/components/Email/templates/marketing/reengagement/WeMissYou30Day.js +13 -0
- package/dist/components/Email/templates/marketing/reengagement/WeMissYou30Day.js.map +1 -0
- package/dist/components/Email/templates/marketing/reengagement/index.d.ts +4 -0
- package/dist/components/Email/templates/marketing/social/CommunityMilestone.d.ts +5 -0
- package/dist/components/Email/templates/marketing/social/CommunityMilestone.js +11 -0
- package/dist/components/Email/templates/marketing/social/CommunityMilestone.js.map +1 -0
- package/dist/components/Email/templates/marketing/social/NewFollowerWelcome.d.ts +5 -0
- package/dist/components/Email/templates/marketing/social/NewFollowerWelcome.js +11 -0
- package/dist/components/Email/templates/marketing/social/NewFollowerWelcome.js.map +1 -0
- package/dist/components/Email/templates/marketing/social/ShareYourStory.d.ts +5 -0
- package/dist/components/Email/templates/marketing/social/ShareYourStory.js +11 -0
- package/dist/components/Email/templates/marketing/social/ShareYourStory.js.map +1 -0
- package/dist/components/Email/templates/marketing/social/SocialProof.d.ts +13 -0
- package/dist/components/Email/templates/marketing/social/SocialProof.js +16 -0
- package/dist/components/Email/templates/marketing/social/SocialProof.js.map +1 -0
- package/dist/components/Email/templates/marketing/social/UserSpotlight.d.ts +5 -0
- package/dist/components/Email/templates/marketing/social/UserSpotlight.js +11 -0
- package/dist/components/Email/templates/marketing/social/UserSpotlight.js.map +1 -0
- package/dist/components/Email/templates/marketing/social/index.d.ts +5 -0
- package/dist/components/Email/templates/marketing/surveys/BetaFeedback.d.ts +5 -0
- package/dist/components/Email/templates/marketing/surveys/BetaFeedback.js +11 -0
- package/dist/components/Email/templates/marketing/surveys/BetaFeedback.js.map +1 -0
- package/dist/components/Email/templates/marketing/surveys/CSATSurvey.d.ts +5 -0
- package/dist/components/Email/templates/marketing/surveys/CSATSurvey.js +11 -0
- package/dist/components/Email/templates/marketing/surveys/CSATSurvey.js.map +1 -0
- package/dist/components/Email/templates/marketing/surveys/ExitSurvey.d.ts +7 -0
- package/dist/components/Email/templates/marketing/surveys/ExitSurvey.js +20 -0
- package/dist/components/Email/templates/marketing/surveys/ExitSurvey.js.map +1 -0
- package/dist/components/Email/templates/marketing/surveys/NPSSurvey.d.ts +7 -0
- package/dist/components/Email/templates/marketing/surveys/NPSSurvey.js +17 -0
- package/dist/components/Email/templates/marketing/surveys/NPSSurvey.js.map +1 -0
- package/dist/components/Email/templates/marketing/surveys/ProductFeedback.d.ts +5 -0
- package/dist/components/Email/templates/marketing/surveys/ProductFeedback.js +11 -0
- package/dist/components/Email/templates/marketing/surveys/ProductFeedback.js.map +1 -0
- package/dist/components/Email/templates/marketing/surveys/index.d.ts +5 -0
- package/dist/components/Email/templates/sales/ClientReferenceRequest.d.ts +8 -0
- package/dist/components/Email/templates/sales/ClientReferenceRequest.js +13 -0
- package/dist/components/Email/templates/sales/ClientReferenceRequest.js.map +1 -0
- package/dist/components/Email/templates/sales/ClientWinBack.d.ts +10 -0
- package/dist/components/Email/templates/sales/ClientWinBack.js +13 -0
- package/dist/components/Email/templates/sales/ClientWinBack.js.map +1 -0
- package/dist/components/Email/templates/sales/ColdOutreach.d.ts +11 -0
- package/dist/components/Email/templates/sales/ColdOutreach.js +13 -0
- package/dist/components/Email/templates/sales/ColdOutreach.js.map +1 -0
- package/dist/components/Email/templates/sales/FollowUpEmail.d.ts +9 -0
- package/dist/components/Email/templates/sales/FollowUpEmail.js +13 -0
- package/dist/components/Email/templates/sales/FollowUpEmail.js.map +1 -0
- package/dist/components/Email/templates/sales/ProjectTermination.d.ts +9 -0
- package/dist/components/Email/templates/sales/ProjectTermination.js +12 -0
- package/dist/components/Email/templates/sales/ProjectTermination.js.map +1 -0
- package/dist/components/Email/templates/sales/ProposalAccepted.d.ts +9 -0
- package/dist/components/Email/templates/sales/ProposalAccepted.js +13 -0
- package/dist/components/Email/templates/sales/ProposalAccepted.js.map +1 -0
- package/dist/components/Email/templates/sales/ScheduleDemo.d.ts +9 -0
- package/dist/components/Email/templates/sales/ScheduleDemo.js +13 -0
- package/dist/components/Email/templates/sales/ScheduleDemo.js.map +1 -0
- package/dist/components/Email/templates/sales/SendProposal.d.ts +9 -0
- package/dist/components/Email/templates/sales/SendProposal.js +14 -0
- package/dist/components/Email/templates/sales/SendProposal.js.map +1 -0
- package/dist/components/Email/templates/sales/index.d.ts +8 -0
- package/dist/components/Email/templates/security/AccountDeletedConfirmation.d.ts +8 -0
- package/dist/components/Email/templates/security/AccountDeletedConfirmation.js +13 -0
- package/dist/components/Email/templates/security/AccountDeletedConfirmation.js.map +1 -0
- package/dist/components/Email/templates/security/ApiKeyCreated.d.ts +9 -0
- package/dist/components/Email/templates/security/ApiKeyCreated.js +14 -0
- package/dist/components/Email/templates/security/ApiKeyCreated.js.map +1 -0
- package/dist/components/Email/templates/security/DataExportReady.d.ts +8 -0
- package/dist/components/Email/templates/security/DataExportReady.js +13 -0
- package/dist/components/Email/templates/security/DataExportReady.js.map +1 -0
- package/dist/components/Email/templates/security/NewLoginAlert.d.ts +10 -0
- package/dist/components/Email/templates/security/NewLoginAlert.js +13 -0
- package/dist/components/Email/templates/security/NewLoginAlert.js.map +1 -0
- package/dist/components/Email/templates/security/PolicyUpdateEmail.d.ts +9 -0
- package/dist/components/Email/templates/security/PolicyUpdateEmail.js +13 -0
- package/dist/components/Email/templates/security/PolicyUpdateEmail.js.map +1 -0
- package/dist/components/Email/templates/security/TwoFactorCode.d.ts +8 -0
- package/dist/components/Email/templates/security/TwoFactorCode.js +13 -0
- package/dist/components/Email/templates/security/TwoFactorCode.js.map +1 -0
- package/dist/components/Email/templates/security/index.d.ts +6 -0
- package/dist/components/Email/templates/support/SupportFeedbackRequest.d.ts +9 -0
- package/dist/components/Email/templates/support/SupportFeedbackRequest.js +15 -0
- package/dist/components/Email/templates/support/SupportFeedbackRequest.js.map +1 -0
- package/dist/components/Email/templates/support/TicketCreatedEmail.d.ts +9 -0
- package/dist/components/Email/templates/support/TicketCreatedEmail.js +13 -0
- package/dist/components/Email/templates/support/TicketCreatedEmail.js.map +1 -0
- package/dist/components/Email/templates/support/TicketReplyEmail.d.ts +9 -0
- package/dist/components/Email/templates/support/TicketReplyEmail.js +14 -0
- package/dist/components/Email/templates/support/TicketReplyEmail.js.map +1 -0
- package/dist/components/Email/templates/support/TicketResolvedEmail.d.ts +9 -0
- package/dist/components/Email/templates/support/TicketResolvedEmail.js +14 -0
- package/dist/components/Email/templates/support/TicketResolvedEmail.js.map +1 -0
- package/dist/components/Email/templates/support/index.d.ts +4 -0
- package/dist/components/Email/templates/system/IncidentReport.d.ts +10 -0
- package/dist/components/Email/templates/system/IncidentReport.js +13 -0
- package/dist/components/Email/templates/system/IncidentReport.js.map +1 -0
- package/dist/components/Email/templates/system/MaintenanceNotice.d.ts +9 -0
- package/dist/components/Email/templates/system/MaintenanceNotice.js +13 -0
- package/dist/components/Email/templates/system/MaintenanceNotice.js.map +1 -0
- package/dist/components/Email/templates/system/NotificationEmail.d.ts +10 -0
- package/dist/components/Email/templates/system/NotificationEmail.js +14 -0
- package/dist/components/Email/templates/system/NotificationEmail.js.map +1 -0
- package/dist/components/Email/templates/system/StatusPageUpdate.d.ts +10 -0
- package/dist/components/Email/templates/system/StatusPageUpdate.js +13 -0
- package/dist/components/Email/templates/system/StatusPageUpdate.js.map +1 -0
- package/dist/components/Email/templates/system/index.d.ts +4 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +124 -1
- package/dist/styles.css +1 -1
- package/package.json +12 -5
- package/dist/components/Auth/PasswordResetForm.example.js.map +0 -1
- package/dist/components/Auth/PasswordResetForm.js.map +0 -1
- /package/dist/components/Auth/{PasswordResetForm.example.d.ts → ForgotPasswordForm.example.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"showcaseRegistry.js","sources":["../../../src/components/ComponentShowcase/showcaseRegistry.ts"],"sourcesContent":["/**\n * Showcase registry maps component ids to their example/demo modules.\n * Usage: import { showcaseRegistry } from './showcaseRegistry';\n * Then: const Demo = showcaseRegistry['button'];\n */\nimport { ButtonExample } from '../Button/Button.example';\nimport { InputExample } from '../Input/Input.example';\nimport { TextareaExample } from '../Textarea/Textarea.example';\nimport { CheckboxExample } from '../Checkbox/Checkbox.example';\nimport { SwitchExample } from '../Switch/Switch.example';\nimport { CardExample } from '../Card/Card.example';\nimport { BadgeExample } from '../Badge/Badge.example';\nimport { AvatarExample } from '../Avatar/Avatar.example';\nimport { AlertExample } from '../Alert/Alert.example';\nimport { ToastExample } from '../Toast/Toast.example';\nimport { ModalExample } from '../Modal/Modal.example';\nimport { SpinnerExample } from '../Spinner/Spinner.example';\nimport { SkeletonExample } from '../Skeleton/Skeleton.example';\nimport { StatsCardExample } from '../StatsCard/StatsCard.example';\nimport { TabsExample } from '../Tabs/Tabs.example';\nimport { SidebarExample } from '../Sidebar/Sidebar.example';\nimport { NavbarExample } from '../Navbar/Navbar.example';\nimport { DashboardLayoutExample } from '../DashboardLayout/DashboardLayout.example';\nimport { DashboardHeaderExample } from '../DashboardHeader/DashboardHeader.example';\nimport { DashboardGridExample } from '../DashboardGrid/DashboardGrid.example';\nimport { DataTableShowcase } from '../DataTable/DataTableShowcase';\nimport { AuthShowcase } from '../Auth/AuthShowcase';\nimport { LoginFormExample } from \"../Auth/LoginForm.example\";\nimport { SignupFormExample } from \"../Auth/SignupForm.example\";\nimport { ProtectedRouteExample } from \"../Auth/ProtectedRoute.example\";\nimport { PasswordResetFormExample } from \"../Auth/
|
|
1
|
+
{"version":3,"file":"showcaseRegistry.js","sources":["../../../src/components/ComponentShowcase/showcaseRegistry.ts"],"sourcesContent":["/**\n * Showcase registry maps component ids to their example/demo modules.\n * Usage: import { showcaseRegistry } from './showcaseRegistry';\n * Then: const Demo = showcaseRegistry['button'];\n */\nimport { ButtonExample } from '../Button/Button.example';\nimport { InputExample } from '../Input/Input.example';\nimport { TextareaExample } from '../Textarea/Textarea.example';\nimport { CheckboxExample } from '../Checkbox/Checkbox.example';\nimport { SwitchExample } from '../Switch/Switch.example';\nimport { CardExample } from '../Card/Card.example';\nimport { BadgeExample } from '../Badge/Badge.example';\nimport { AvatarExample } from '../Avatar/Avatar.example';\nimport { AlertExample } from '../Alert/Alert.example';\nimport { ToastExample } from '../Toast/Toast.example';\nimport { ModalExample } from '../Modal/Modal.example';\nimport { SpinnerExample } from '../Spinner/Spinner.example';\nimport { SkeletonExample } from '../Skeleton/Skeleton.example';\nimport { StatsCardExample } from '../StatsCard/StatsCard.example';\nimport { TabsExample } from '../Tabs/Tabs.example';\nimport { SidebarExample } from '../Sidebar/Sidebar.example';\nimport { NavbarExample } from '../Navbar/Navbar.example';\nimport { DashboardLayoutExample } from '../DashboardLayout/DashboardLayout.example';\nimport { DashboardHeaderExample } from '../DashboardHeader/DashboardHeader.example';\nimport { DashboardGridExample } from '../DashboardGrid/DashboardGrid.example';\nimport { DataTableShowcase } from '../DataTable/DataTableShowcase';\nimport { AuthShowcase } from '../Auth/AuthShowcase';\nimport { LoginFormExample } from \"../Auth/LoginForm.example\";\nimport { SignupFormExample } from \"../Auth/SignupForm.example\";\nimport { ProtectedRouteExample } from \"../Auth/ProtectedRoute.example\";\nimport { PasswordResetFormExample } from \"../Auth/ForgotPasswordForm.example\";\nimport { PageLayoutShowcase } from '../PageLayout/PageLayoutShowcase';\nimport { ChatWidgetExample } from '../ChatWidget/ChatWidget.example';\nimport { EmailShowcase } from '../Email/EmailShowcase';\n\n\n\nexport const showcaseRegistry: Record<string, React.FC> = {\n button: ButtonExample,\n input: InputExample,\n textarea: TextareaExample,\n checkbox: CheckboxExample,\n switch: SwitchExample,\n card: CardExample,\n badge: BadgeExample,\n avatar: AvatarExample,\n alert: AlertExample,\n toast: ToastExample,\n modal: ModalExample,\n spinner: SpinnerExample,\n skeleton: SkeletonExample,\n statscard: StatsCardExample,\n tabs: TabsExample,\n sidebar: SidebarExample,\n navbar: NavbarExample,\n \"dashboard-layout\": DashboardLayoutExample,\n \"dashboard-header\": DashboardHeaderExample,\n \"dashboard-grid\": DashboardGridExample,\n datatable: DataTableShowcase,\n auth: AuthShowcase,\n login: LoginFormExample,\n signup: SignupFormExample,\n \"password-reset\": PasswordResetFormExample,\n shield: ProtectedRouteExample,\n \"page-layout\": PageLayoutShowcase,\n chatwidget: ChatWidgetExample,\n \"email-templates\": EmailShowcase\n // Extend with other demos as needed\n};"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;AAIG;AAiCI,MAAM,gBAAgB,GAA6B;AACxD,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,KAAK,EAAE,YAAY;AACnB,IAAA,QAAQ,EAAE,eAAe;AACzB,IAAA,QAAQ,EAAE,eAAe;AACzB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,KAAK,EAAE,YAAY;AACnB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,KAAK,EAAE,YAAY;AACnB,IAAA,KAAK,EAAE,YAAY;AACnB,IAAA,KAAK,EAAE,YAAY;AACnB,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,QAAQ,EAAE,eAAe;AACzB,IAAA,SAAS,EAAE,gBAAgB;AAC3B,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,kBAAkB,EAAE,sBAAsB;AAC1C,IAAA,kBAAkB,EAAE,sBAAsB;AAC1C,IAAA,gBAAgB,EAAE,oBAAoB;AACtC,IAAA,SAAS,EAAE,iBAAiB;AAC5B,IAAA,IAAI,EAAE,YAAY;AAClB,IAAA,KAAK,EAAE,gBAAgB;AACvB,IAAA,MAAM,EAAE,iBAAiB;AACzB,IAAA,gBAAgB,EAAE,wBAAwB;AAC1C,IAAA,MAAM,EAAE,qBAAqB;AAC7B,IAAA,aAAa,EAAE,kBAAkB;AACjC,IAAA,UAAU,EAAE,iBAAiB;AAC7B,IAAA,iBAAiB,EAAE;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const EmailShowcase: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import React__default, { useMemo, useState } from 'react';
|
|
3
|
+
import { EmailPreviewer } from './components/EmailPreviewer.js';
|
|
4
|
+
import * as index from './templates/index.js';
|
|
5
|
+
|
|
6
|
+
// We map known template names to explicit categories.
|
|
7
|
+
// Any missed/new exports automatically fall into an "Uncategorized" section!
|
|
8
|
+
const CATEGORY_MAP = {
|
|
9
|
+
"Marketing: Newsletters": ["WeeklyNewsletter", "MonthlyDigest", "CuratedIndustryNews"],
|
|
10
|
+
"Marketing: Blog": ["NewBlogPost", "BlogSeries", "BestOfRoundup"],
|
|
11
|
+
"Marketing: Lead Nurturing": ["LeadMagnetDelivery", "WebinarConfirmation", "WebinarReminder", "WebinarFollowup", "DripCampaignDay1", "DripCampaignComplete", "CaseStudyDelivery"],
|
|
12
|
+
"Marketing: Promotional": ["AbandonedCart", "FlashSale", "BrowseAbandonment", "PriceDropAlert", "BackInStock", "SeasonalCampaign", "BirthdayOffer", "MilestoneDiscount"],
|
|
13
|
+
"Marketing: Events": ["EventAnnouncement", "EarlyBirdReminder", "ScheduleReleased", "VIPInvite", "PostEventThankYou", "ConferenceSeries"],
|
|
14
|
+
"Marketing: Re-engagement": ["WeMissYou30Day", "ComeBack60Day", "LastChance90Day", "ProductUpdateReengagement"],
|
|
15
|
+
"Marketing: Social": ["SocialProof", "NewFollowerWelcome", "ShareYourStory", "UserSpotlight", "CommunityMilestone"],
|
|
16
|
+
"Marketing: Surveys": ["NPSSurvey", "ExitSurvey", "CSATSurvey", "ProductFeedback", "BetaFeedback"],
|
|
17
|
+
"Marketing: Affiliate": ["AffiliateInvite", "AffiliateWelcome", "AffiliatePayout", "AffiliateTopPerformer", "PartnerComarketing"],
|
|
18
|
+
"Marketing: Content": ["NewGuideEbook", "ToolTemplateDelivery", "InfographicEmail", "PodcastEpisode", "YouTubeNotification"],
|
|
19
|
+
"Sales": ["ColdOutreach", "FollowUpEmail", "ScheduleDemo", "SendProposal", "ProposalAccepted", "ProjectTermination", "ClientWinBack", "ClientReferenceRequest"],
|
|
20
|
+
"Legal": ["PrivacyPolicyUpdate", "TermsOfServiceUpdate", "DPANotice", "DMCANotice", "GDPRCompliance"],
|
|
21
|
+
"Internal: HR": ["NewHireAnnouncement", "BirthdayAnniversary", "EmployeeFarewell", "PolicyUpdate", "ExitInterviewRequest"],
|
|
22
|
+
"Internal: IT": ["ITOutageReport", "PasswordRotationReminder", "AppAccessGranted"],
|
|
23
|
+
"Internal: Comms": ["LeadershipUpdate", "MeetingRecap", "CompanyEventsCalendar"],
|
|
24
|
+
"Billing": ["InvoiceEmail", "PaymentFailedEmail", "SubscriptionConfirmation", "SubscriptionCancelled", "TrialEndingEmail", "CreditCardExpiring", "PaymentReceipt", "OverduePaymentNotice"],
|
|
25
|
+
"Authentication": ["WelcomeEmail", "ConfirmEmail", "MagicLinkEmail", "ResetPasswordEmail", "EmailChangeVerification", "TwoFactorCodeEmail"],
|
|
26
|
+
"Support": ["TicketCreatedEmail", "TicketReplyEmail", "TicketResolvedEmail", "SupportFeedbackRequest"],
|
|
27
|
+
"Engagement": ["WeeklyDigest", "FeatureAnnouncement", "MilestoneEmail", "InactivityWarning", "TipOfWeek", "ProductChangelog"],
|
|
28
|
+
"Growth": ["ReferralInvite", "ReferralReward", "ReferralConverted", "WaitlistWelcome", "SocialSharePrompt"],
|
|
29
|
+
"Security": ["NewLoginAlert", "PolicyUpdateEmail", "AccountDeletedConfirmation", "DataExportReady", "ApiKeyCreated"],
|
|
30
|
+
"System": ["MaintenanceNotice", "IncidentReport", "StatusPageUpdate"]
|
|
31
|
+
};
|
|
32
|
+
const EmailShowcase = () => {
|
|
33
|
+
const { categories, flatTemplates, defaultTemplateId } = useMemo(() => {
|
|
34
|
+
const parsedCategories = {};
|
|
35
|
+
const flat = {};
|
|
36
|
+
let firstId = '';
|
|
37
|
+
// 1. Process known categories
|
|
38
|
+
Object.entries(CATEGORY_MAP).forEach(([categoryName, componentNames]) => {
|
|
39
|
+
componentNames.forEach(compName => {
|
|
40
|
+
const Component = index[compName];
|
|
41
|
+
if (Component && typeof Component === 'function') {
|
|
42
|
+
if (!parsedCategories[categoryName])
|
|
43
|
+
parsedCategories[categoryName] = {};
|
|
44
|
+
// Automatically add spaces before Capital letters (e.g., WeeklyNewsletter -> Weekly Newsletter)
|
|
45
|
+
const formattedName = compName.replace(/([A-Z])/g, ' $1').trim();
|
|
46
|
+
const element = jsx(Component, {});
|
|
47
|
+
parsedCategories[categoryName][compName] = { name: formattedName, component: element };
|
|
48
|
+
flat[compName] = element;
|
|
49
|
+
if (!firstId)
|
|
50
|
+
firstId = compName;
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
// 2. Discover any newly added exports (Uncategorized Fallback)
|
|
55
|
+
Object.entries(index).forEach(([compName, Component]) => {
|
|
56
|
+
if (compName === 'default' ||
|
|
57
|
+
flat[compName] ||
|
|
58
|
+
typeof Component !== 'function' ||
|
|
59
|
+
/^[a-z]/.test(compName) // Ignore utility functions like renderEmailParams
|
|
60
|
+
) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
const categoryName = "Uncategorized";
|
|
64
|
+
if (!parsedCategories[categoryName])
|
|
65
|
+
parsedCategories[categoryName] = {};
|
|
66
|
+
const formattedName = compName.replace(/([A-Z])/g, ' $1').trim();
|
|
67
|
+
const element = jsx(Component, {});
|
|
68
|
+
parsedCategories[categoryName][compName] = { name: formattedName, component: element };
|
|
69
|
+
flat[compName] = element;
|
|
70
|
+
if (!firstId)
|
|
71
|
+
firstId = compName;
|
|
72
|
+
});
|
|
73
|
+
return { categories: parsedCategories, flatTemplates: flat, defaultTemplateId: firstId };
|
|
74
|
+
}, []);
|
|
75
|
+
const [activeTemplate, setActiveTemplate] = useState(defaultTemplateId);
|
|
76
|
+
// Keep state in sync if defaultTemplateId changes when component mounts
|
|
77
|
+
React__default.useEffect(() => {
|
|
78
|
+
if (!activeTemplate && defaultTemplateId)
|
|
79
|
+
setActiveTemplate(defaultTemplateId);
|
|
80
|
+
}, [defaultTemplateId, activeTemplate]);
|
|
81
|
+
return (jsxs("div", { className: "space-y-6", children: [jsxs("div", { className: "flex flex-col sm:flex-row sm:items-center gap-4 mb-4", children: [jsx("label", { className: "font-medium text-gray-700 dark:text-gray-300", children: "Select Template:" }), jsx("select", { className: "border border-gray-300 dark:border-gray-700 bg-white dark:bg-gray-900 rounded-md px-3 py-2 text-sm text-gray-900 dark:text-white min-w-[250px] focus:outline-none focus:ring-2 focus:ring-primary-500", value: activeTemplate, onChange: (e) => setActiveTemplate(e.target.value), children: Object.entries(categories).map(([categoryName, templates]) => (jsx("optgroup", { label: categoryName, children: Object.entries(templates).map(([id, data]) => (jsx("option", { value: id, children: data.name }, id))) }, categoryName))) })] }), jsx("div", { className: "w-full bg-white dark:bg-gray-900 rounded-lg shadow-sm border border-gray-200 dark:border-gray-800", children: jsx(EmailPreviewer, { component: flatTemplates[activeTemplate] || jsx("div", { className: "p-10 text-center text-gray-500", children: "No template selected" }) }) })] }));
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export { EmailShowcase };
|
|
85
|
+
//# sourceMappingURL=EmailShowcase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailShowcase.js","sources":["../../../src/components/Email/EmailShowcase.tsx"],"sourcesContent":["import React, { useState, useMemo } from 'react';\nimport { EmailPreviewer } from './components';\nimport * as AllTemplates from './templates';\n\n// We map known template names to explicit categories.\n// Any missed/new exports automatically fall into an \"Uncategorized\" section!\nconst CATEGORY_MAP: Record<string, string[]> = {\n \"Marketing: Newsletters\": [\"WeeklyNewsletter\", \"MonthlyDigest\", \"CuratedIndustryNews\"],\n \"Marketing: Blog\": [\"NewBlogPost\", \"BlogSeries\", \"BestOfRoundup\"],\n \"Marketing: Lead Nurturing\": [\"LeadMagnetDelivery\", \"WebinarConfirmation\", \"WebinarReminder\", \"WebinarFollowup\", \"DripCampaignDay1\", \"DripCampaignComplete\", \"CaseStudyDelivery\"],\n \"Marketing: Promotional\": [\"AbandonedCart\", \"FlashSale\", \"BrowseAbandonment\", \"PriceDropAlert\", \"BackInStock\", \"SeasonalCampaign\", \"BirthdayOffer\", \"MilestoneDiscount\"],\n \"Marketing: Events\": [\"EventAnnouncement\", \"EarlyBirdReminder\", \"ScheduleReleased\", \"VIPInvite\", \"PostEventThankYou\", \"ConferenceSeries\"],\n \"Marketing: Re-engagement\": [\"WeMissYou30Day\", \"ComeBack60Day\", \"LastChance90Day\", \"ProductUpdateReengagement\"],\n \"Marketing: Social\": [\"SocialProof\", \"NewFollowerWelcome\", \"ShareYourStory\", \"UserSpotlight\", \"CommunityMilestone\"],\n \"Marketing: Surveys\": [\"NPSSurvey\", \"ExitSurvey\", \"CSATSurvey\", \"ProductFeedback\", \"BetaFeedback\"],\n \"Marketing: Affiliate\": [\"AffiliateInvite\", \"AffiliateWelcome\", \"AffiliatePayout\", \"AffiliateTopPerformer\", \"PartnerComarketing\"],\n \"Marketing: Content\": [\"NewGuideEbook\", \"ToolTemplateDelivery\", \"InfographicEmail\", \"PodcastEpisode\", \"YouTubeNotification\"],\n \"Sales\": [\"ColdOutreach\", \"FollowUpEmail\", \"ScheduleDemo\", \"SendProposal\", \"ProposalAccepted\", \"ProjectTermination\", \"ClientWinBack\", \"ClientReferenceRequest\"],\n \"Legal\": [\"PrivacyPolicyUpdate\", \"TermsOfServiceUpdate\", \"DPANotice\", \"DMCANotice\", \"GDPRCompliance\"],\n \"Internal: HR\": [\"NewHireAnnouncement\", \"BirthdayAnniversary\", \"EmployeeFarewell\", \"PolicyUpdate\", \"ExitInterviewRequest\"],\n \"Internal: IT\": [\"ITOutageReport\", \"PasswordRotationReminder\", \"AppAccessGranted\"],\n \"Internal: Comms\": [\"LeadershipUpdate\", \"MeetingRecap\", \"CompanyEventsCalendar\"],\n \"Billing\": [\"InvoiceEmail\", \"PaymentFailedEmail\", \"SubscriptionConfirmation\", \"SubscriptionCancelled\", \"TrialEndingEmail\", \"CreditCardExpiring\", \"PaymentReceipt\", \"OverduePaymentNotice\"],\n \"Authentication\": [\"WelcomeEmail\", \"ConfirmEmail\", \"MagicLinkEmail\", \"ResetPasswordEmail\", \"EmailChangeVerification\", \"TwoFactorCodeEmail\"],\n \"Support\": [\"TicketCreatedEmail\", \"TicketReplyEmail\", \"TicketResolvedEmail\", \"SupportFeedbackRequest\"],\n \"Engagement\": [\"WeeklyDigest\", \"FeatureAnnouncement\", \"MilestoneEmail\", \"InactivityWarning\", \"TipOfWeek\", \"ProductChangelog\"],\n \"Growth\": [\"ReferralInvite\", \"ReferralReward\", \"ReferralConverted\", \"WaitlistWelcome\", \"SocialSharePrompt\"],\n \"Security\": [\"NewLoginAlert\", \"PolicyUpdateEmail\", \"AccountDeletedConfirmation\", \"DataExportReady\", \"ApiKeyCreated\"],\n \"System\": [\"MaintenanceNotice\", \"IncidentReport\", \"StatusPageUpdate\"]\n};\n\nexport const EmailShowcase = () => {\n const { categories, flatTemplates, defaultTemplateId } = useMemo(() => {\n const parsedCategories: Record<string, Record<string, { name: string; component: React.ReactElement }>> = {};\n const flat: Record<string, React.ReactElement> = {};\n let firstId = '';\n\n // 1. Process known categories\n Object.entries(CATEGORY_MAP).forEach(([categoryName, componentNames]) => {\n componentNames.forEach(compName => {\n const Component = (AllTemplates as any)[compName];\n if (Component && typeof Component === 'function') {\n if (!parsedCategories[categoryName]) parsedCategories[categoryName] = {};\n \n // Automatically add spaces before Capital letters (e.g., WeeklyNewsletter -> Weekly Newsletter)\n const formattedName = compName.replace(/([A-Z])/g, ' $1').trim();\n const element = <Component />;\n \n parsedCategories[categoryName][compName] = { name: formattedName, component: element };\n flat[compName] = element;\n if (!firstId) firstId = compName;\n }\n });\n });\n\n // 2. Discover any newly added exports (Uncategorized Fallback)\n Object.entries(AllTemplates).forEach(([compName, Component]) => {\n if (\n compName === 'default' || \n flat[compName] || \n typeof Component !== 'function' ||\n /^[a-z]/.test(compName) // Ignore utility functions like renderEmailParams\n ) {\n return;\n }\n \n const categoryName = \"Uncategorized\";\n if (!parsedCategories[categoryName]) parsedCategories[categoryName] = {};\n \n const formattedName = compName.replace(/([A-Z])/g, ' $1').trim();\n const element = <Component />;\n \n parsedCategories[categoryName][compName] = { name: formattedName, component: element };\n flat[compName] = element;\n if (!firstId) firstId = compName;\n });\n\n return { categories: parsedCategories, flatTemplates: flat, defaultTemplateId: firstId };\n }, []);\n\n const [activeTemplate, setActiveTemplate] = useState(defaultTemplateId);\n\n // Keep state in sync if defaultTemplateId changes when component mounts\n React.useEffect(() => {\n if (!activeTemplate && defaultTemplateId) setActiveTemplate(defaultTemplateId);\n }, [defaultTemplateId, activeTemplate]);\n\n return (\n <div className=\"space-y-6\">\n <div className=\"flex flex-col sm:flex-row sm:items-center gap-4 mb-4\">\n <label className=\"font-medium text-gray-700 dark:text-gray-300\">Select Template:</label>\n <select \n className=\"border border-gray-300 dark:border-gray-700 bg-white dark:bg-gray-900 rounded-md px-3 py-2 text-sm text-gray-900 dark:text-white min-w-[250px] focus:outline-none focus:ring-2 focus:ring-primary-500\"\n value={activeTemplate}\n onChange={(e) => setActiveTemplate(e.target.value)}\n >\n {Object.entries(categories).map(([categoryName, templates]) => (\n <optgroup key={categoryName} label={categoryName}>\n {Object.entries(templates).map(([id, data]) => (\n <option key={id} value={id}>{data.name}</option>\n ))}\n </optgroup>\n ))}\n </select>\n </div>\n\n <div className=\"w-full bg-white dark:bg-gray-900 rounded-lg shadow-sm border border-gray-200 dark:border-gray-800\">\n <EmailPreviewer component={flatTemplates[activeTemplate] || <div className=\"p-10 text-center text-gray-500\">No template selected</div>} />\n </div>\n </div>\n );\n};"],"names":["AllTemplates","_jsx","React","_jsxs"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Button } from '../../../node_modules/@react-email/button/dist/index.js';
|
|
3
|
+
|
|
4
|
+
const EmailButton = ({ children, href }) => (jsx(Button, { href: href, className: "bg-blue-600 rounded text-white text-[15px] font-semibold no-underline text-center px-6 py-3 inline-block", children: children }));
|
|
5
|
+
|
|
6
|
+
export { EmailButton };
|
|
7
|
+
//# sourceMappingURL=EmailButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailButton.js","sources":["../../../../src/components/Email/components/EmailButton.tsx"],"sourcesContent":["import React from 'react';\nimport { Button } from '@react-email/components';\n\nexport const EmailButton = ({ children, href }: { children: React.ReactNode; href: string }) => (\n <Button \n href={href}\n className=\"bg-blue-600 rounded text-white text-[15px] font-semibold no-underline text-center px-6 py-3 inline-block\"\n >\n {children}\n </Button>\n);"],"names":["_jsx"],"mappings":";;;AAGO,MAAM,WAAW,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,EAA+C,MACzFA,GAAA,CAAC,MAAM,EAAA,EACL,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,0GAA0G,EAAA,QAAA,EAEnH,QAAQ,EAAA,CACF;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const EmailDivider: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Hr } from '../../../node_modules/@react-email/hr/dist/index.js';
|
|
3
|
+
|
|
4
|
+
const EmailDivider = () => (jsx(Hr, { className: "border-gray-200 dark:border-gray-700 my-6" }));
|
|
5
|
+
|
|
6
|
+
export { EmailDivider };
|
|
7
|
+
//# sourceMappingURL=EmailDivider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailDivider.js","sources":["../../../../src/components/Email/components/EmailDivider.tsx"],"sourcesContent":["import React from 'react';\nimport { Hr } from '@react-email/components';\n\nexport const EmailDivider = () => (\n <Hr className=\"border-gray-200 dark:border-gray-700 my-6\" />\n);"],"names":["_jsx"],"mappings":";;;AAGO,MAAM,YAAY,GAAG,OAC1BA,GAAA,CAAC,EAAE,IAAC,SAAS,EAAC,2CAA2C,EAAA,CAAG;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Section } from '../../../node_modules/@react-email/section/dist/index.js';
|
|
3
|
+
import { Text } from '../../../node_modules/@react-email/text/dist/index.js';
|
|
4
|
+
import { Link } from '../../../node_modules/@react-email/link/dist/index.js';
|
|
5
|
+
|
|
6
|
+
const EmailFooter = ({ companyName = 'Beyond Corp' }) => (jsxs(Section, { className: "mt-8 text-center", children: [jsxs(Text, { className: "text-gray-400 dark:text-gray-500 text-xs", children: ["\u00A9 ", new Date().getFullYear(), " ", companyName, ". All rights reserved."] }), jsxs(Text, { className: "text-gray-400 dark:text-gray-500 text-xs mt-2", children: ["If you no longer wish to receive these emails, you can ", jsx(Link, { href: "#", className: "text-gray-500 dark:text-gray-400 underline", children: "unsubscribe" }), "."] })] }));
|
|
7
|
+
|
|
8
|
+
export { EmailFooter };
|
|
9
|
+
//# sourceMappingURL=EmailFooter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailFooter.js","sources":["../../../../src/components/Email/components/EmailFooter.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, Section, Link } from '@react-email/components';\n\nexport const EmailFooter = ({ companyName = 'Beyond Corp' }) => (\n <Section className=\"mt-8 text-center\">\n <Text className=\"text-gray-400 dark:text-gray-500 text-xs\">\n © {new Date().getFullYear()} {companyName}. All rights reserved.\n </Text>\n <Text className=\"text-gray-400 dark:text-gray-500 text-xs mt-2\">\n If you no longer wish to receive these emails, you can <Link href=\"#\" className=\"text-gray-500 dark:text-gray-400 underline\">unsubscribe</Link>.\n </Text>\n </Section>\n);"],"names":["_jsxs","_jsx"],"mappings":";;;;;AAGO,MAAM,WAAW,GAAG,CAAC,EAAE,WAAW,GAAG,aAAa,EAAE,MACzDA,IAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAC,kBAAkB,EAAA,QAAA,EAAA,CACnCA,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,0CAA0C,EAAA,QAAA,EAAA,CAAA,SAAA,EACrD,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAA,GAAA,EAAG,WAAW,EAAA,wBAAA,CAAA,EAAA,CACpC,EACPA,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,+CAA+C,EAAA,QAAA,EAAA,CAAA,yDAAA,EACNC,GAAA,CAAC,IAAI,EAAA,EAAC,IAAI,EAAC,GAAG,EAAC,SAAS,EAAC,4CAA4C,EAAA,QAAA,EAAA,aAAA,EAAA,CAAmB,EAAA,GAAA,CAAA,EAAA,CAC1I,CAAA,EAAA,CACC;;;;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Img } from '../../../node_modules/@react-email/img/dist/index.js';
|
|
3
|
+
import { Section } from '../../../node_modules/@react-email/section/dist/index.js';
|
|
4
|
+
|
|
5
|
+
const EmailHeader = ({ logoUrl = 'https://via.placeholder.com/150x50', companyName = 'Beyond Corp' }) => (jsx(Section, { className: "mt-8 mb-8", children: jsx(Img, { src: logoUrl, width: "150", height: "50", alt: companyName, className: "mx-auto" }) }));
|
|
6
|
+
|
|
7
|
+
export { EmailHeader };
|
|
8
|
+
//# sourceMappingURL=EmailHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailHeader.js","sources":["../../../../src/components/Email/components/EmailHeader.tsx"],"sourcesContent":["import React from 'react';\nimport { Img, Section } from '@react-email/components';\n\nexport const EmailHeader = ({ logoUrl = 'https://via.placeholder.com/150x50', companyName = 'Beyond Corp' }) => (\n <Section className=\"mt-8 mb-8\">\n <Img src={logoUrl} width=\"150\" height=\"50\" alt={companyName} className=\"mx-auto\" />\n </Section>\n);"],"names":["_jsx"],"mappings":";;;;MAGa,WAAW,GAAG,CAAC,EAAE,OAAO,GAAG,oCAAoC,EAAE,WAAW,GAAG,aAAa,EAAE,MACzGA,IAAC,OAAO,EAAA,EAAC,SAAS,EAAC,WAAW,EAAA,QAAA,EAC5BA,IAAC,GAAG,EAAA,EAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAC,SAAS,EAAA,CAAG,EAAA,CAC3E;;;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { EmailHeader } from './EmailHeader.js';
|
|
3
|
+
import { EmailFooter } from './EmailFooter.js';
|
|
4
|
+
import { theme } from './theme.js';
|
|
5
|
+
import { Html } from '../../../node_modules/@react-email/html/dist/index.js';
|
|
6
|
+
import { Tailwind } from '../../../node_modules/@react-email/tailwind/dist/index.js';
|
|
7
|
+
import { Head } from '../../../node_modules/@react-email/head/dist/index.js';
|
|
8
|
+
import { Preview } from '../../../node_modules/@react-email/preview/dist/index.js';
|
|
9
|
+
import { Body } from '../../../node_modules/@react-email/body/dist/index.js';
|
|
10
|
+
import { Container } from '../../../node_modules/@react-email/container/dist/index.js';
|
|
11
|
+
|
|
12
|
+
const EmailLayout = ({ children, previewText, title }) => (jsx(Html, { children: jsxs(Tailwind, { config: { theme: { extend: { colors: theme.colors } } }, children: [jsx(Head, { children: jsx("title", { children: title }) }), previewText && jsx(Preview, { children: previewText }), jsx(Body, { className: "bg-gray-50 dark:bg-gray-900 my-auto mx-auto font-sans px-2", children: jsxs(Container, { className: "max-w-[600px] mx-auto bg-white dark:bg-gray-800 rounded-lg p-8 my-8 shadow-sm border border-gray-100 dark:border-gray-700", children: [jsx(EmailHeader, {}), children, jsx(EmailFooter, {})] }) })] }) }));
|
|
13
|
+
|
|
14
|
+
export { EmailLayout };
|
|
15
|
+
//# sourceMappingURL=EmailLayout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailLayout.js","sources":["../../../../src/components/Email/components/EmailLayout.tsx"],"sourcesContent":["import React from 'react';\nimport { Html, Body, Container, Tailwind, Head, Preview } from '@react-email/components';\nimport { EmailHeader } from './EmailHeader';\nimport { EmailFooter } from './EmailFooter';\nimport { theme } from './theme';\n\nexport const EmailLayout = ({ children, previewText, title }: { \n children: React.ReactNode; \n previewText?: string; \n title?: string;\n}) => (\n <Html>\n <Tailwind config={{ theme: { extend: { colors: theme.colors } } }}>\n <Head><title>{title}</title></Head>\n {previewText && <Preview>{previewText}</Preview>}\n <Body className=\"bg-gray-50 dark:bg-gray-900 my-auto mx-auto font-sans px-2\">\n <Container className=\"max-w-[600px] mx-auto bg-white dark:bg-gray-800 rounded-lg p-8 my-8 shadow-sm border border-gray-100 dark:border-gray-700\">\n <EmailHeader />\n {children}\n <EmailFooter />\n </Container>\n </Body>\n </Tailwind>\n </Html>\n);"],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;;;;AAMO,MAAM,WAAW,GAAG,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAIzD,MACCA,GAAA,CAAC,IAAI,EAAA,EAAA,QAAA,EACHC,IAAA,CAAC,QAAQ,EAAA,EAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,aAC/DD,GAAA,CAAC,IAAI,EAAA,EAAA,QAAA,EAACA,GAAA,CAAA,OAAA,EAAA,EAAA,QAAA,EAAQ,KAAK,EAAA,CAAS,EAAA,CAAO,EAClC,WAAW,IAAIA,IAAC,OAAO,EAAA,EAAA,QAAA,EAAE,WAAW,EAAA,CAAW,EAChDA,GAAA,CAAC,IAAI,IAAC,SAAS,EAAC,4DAA4D,EAAA,QAAA,EAC1EC,IAAA,CAAC,SAAS,EAAA,EAAC,SAAS,EAAC,2HAA2H,aAC9ID,GAAA,CAAC,WAAW,KAAG,EACd,QAAQ,EACTA,GAAA,CAAC,WAAW,EAAA,EAAA,CAAG,CAAA,EAAA,CACL,GACP,CAAA,EAAA,CACE,EAAA,CACN;;;;"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { useState, useEffect } from 'react';
|
|
3
|
+
import { render } from '../../../node_modules/@react-email/render/dist/node/index.js';
|
|
4
|
+
|
|
5
|
+
const EmailPreviewer = ({ component }) => {
|
|
6
|
+
const [html, setHtml] = useState('');
|
|
7
|
+
const [viewMode, setViewMode] = useState('desktop');
|
|
8
|
+
useEffect(() => {
|
|
9
|
+
const generateHtml = async () => {
|
|
10
|
+
try {
|
|
11
|
+
const result = await render(component);
|
|
12
|
+
setHtml(result);
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
console.error('Error rendering email:', error);
|
|
16
|
+
setHtml('<div style="color:red; padding: 20px;">Error rendering email template.</div>');
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
generateHtml();
|
|
20
|
+
}, [component]);
|
|
21
|
+
return (jsxs("div", { className: "border border-gray-200 dark:border-gray-800 rounded-lg overflow-hidden flex flex-col bg-gray-50 dark:bg-gray-900 w-full", children: [jsxs("div", { className: "border-b border-gray-200 dark:border-gray-800 p-3 flex justify-center gap-4 bg-white dark:bg-gray-950", children: [jsx("button", { onClick: () => setViewMode('desktop'), className: `px-4 py-1.5 rounded-md text-sm font-medium transition-colors ${viewMode === 'desktop' ? 'bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300' : 'text-gray-600 hover:bg-gray-100 dark:text-gray-400 dark:hover:bg-gray-800'}`, children: "Desktop" }), jsx("button", { onClick: () => setViewMode('mobile'), className: `px-4 py-1.5 rounded-md text-sm font-medium transition-colors ${viewMode === 'mobile' ? 'bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300' : 'text-gray-600 hover:bg-gray-100 dark:text-gray-400 dark:hover:bg-gray-800'}`, children: "Mobile" })] }), jsx("div", { className: `mx-auto transition-all duration-300 ease-in-out w-full ${viewMode === 'mobile' ? 'max-w-[375px]' : 'max-w-full'}`, children: jsx("iframe", { srcDoc: html, className: "w-full h-[600px] bg-white border-x border-gray-200 dark:border-gray-800 shadow-sm", title: "Email Preview" }) })] }));
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export { EmailPreviewer };
|
|
25
|
+
//# sourceMappingURL=EmailPreviewer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailPreviewer.js","sources":["../../../../src/components/Email/components/EmailPreviewer.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { render } from '@react-email/render';\n\nexport interface EmailPreviewerProps {\n component: React.ReactElement;\n}\n\nexport const EmailPreviewer: React.FC<EmailPreviewerProps> = ({ component }) => {\n const [html, setHtml] = useState<string>('');\n const [viewMode, setViewMode] = useState<'desktop' | 'mobile'>('desktop');\n\n useEffect(() => {\n const generateHtml = async () => {\n try {\n const result = await render(component);\n setHtml(result);\n } catch (error) {\n console.error('Error rendering email:', error);\n setHtml('<div style=\"color:red; padding: 20px;\">Error rendering email template.</div>');\n }\n };\n \n generateHtml();\n }, [component]);\n\n return (\n <div className=\"border border-gray-200 dark:border-gray-800 rounded-lg overflow-hidden flex flex-col bg-gray-50 dark:bg-gray-900 w-full\">\n {/* Toolbar */}\n <div className=\"border-b border-gray-200 dark:border-gray-800 p-3 flex justify-center gap-4 bg-white dark:bg-gray-950\">\n <button \n onClick={() => setViewMode('desktop')}\n className={`px-4 py-1.5 rounded-md text-sm font-medium transition-colors ${viewMode === 'desktop' ? 'bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300' : 'text-gray-600 hover:bg-gray-100 dark:text-gray-400 dark:hover:bg-gray-800'}`}\n >\n Desktop\n </button>\n <button \n onClick={() => setViewMode('mobile')}\n className={`px-4 py-1.5 rounded-md text-sm font-medium transition-colors ${viewMode === 'mobile' ? 'bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300' : 'text-gray-600 hover:bg-gray-100 dark:text-gray-400 dark:hover:bg-gray-800'}`}\n >\n Mobile\n </button>\n </div>\n {/* Canvas */}\n <div className={`mx-auto transition-all duration-300 ease-in-out w-full ${viewMode === 'mobile' ? 'max-w-[375px]' : 'max-w-full'}`}>\n <iframe\n srcDoc={html}\n className=\"w-full h-[600px] bg-white border-x border-gray-200 dark:border-gray-800 shadow-sm\"\n title=\"Email Preview\"\n />\n </div>\n </div>\n );\n};"],"names":["_jsxs","_jsx"],"mappings":";;;;MAOa,cAAc,GAAkC,CAAC,EAAE,SAAS,EAAE,KAAI;IAC7E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC;IAC5C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAuB,SAAS,CAAC;IAEzE,SAAS,CAAC,MAAK;AACb,QAAA,MAAM,YAAY,GAAG,YAAW;AAC9B,YAAA,IAAI;AACF,gBAAA,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;gBACtC,OAAO,CAAC,MAAM,CAAC;YACjB;YAAE,OAAO,KAAK,EAAE;AACd,gBAAA,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC;gBAC9C,OAAO,CAAC,8EAA8E,CAAC;YACzF;AACF,QAAA,CAAC;AAED,QAAA,YAAY,EAAE;AAChB,IAAA,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAEf,QACEA,cAAK,SAAS,EAAC,yHAAyH,EAAA,QAAA,EAAA,CAEtIA,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,uGAAuG,EAAA,QAAA,EAAA,CACpHC,gBACE,OAAO,EAAE,MAAM,WAAW,CAAC,SAAS,CAAC,EACrC,SAAS,EAAE,gEAAgE,QAAQ,KAAK,SAAS,GAAG,+DAA+D,GAAG,2EAA2E,CAAA,CAAE,wBAG5O,EACTA,GAAA,CAAA,QAAA,EAAA,EACE,OAAO,EAAE,MAAM,WAAW,CAAC,QAAQ,CAAC,EACpC,SAAS,EAAE,CAAA,6DAAA,EAAgE,QAAQ,KAAK,QAAQ,GAAG,+DAA+D,GAAG,2EAA2E,CAAA,CAAE,EAAA,QAAA,EAAA,QAAA,EAAA,CAG3O,IACL,EAENA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,CAAA,uDAAA,EAA0D,QAAQ,KAAK,QAAQ,GAAG,eAAe,GAAG,YAAY,CAAA,CAAE,EAAA,QAAA,EAChIA,GAAA,CAAA,QAAA,EAAA,EACE,MAAM,EAAE,IAAI,EACZ,SAAS,EAAC,mFAAmF,EAC7F,KAAK,EAAC,eAAe,EAAA,CACrB,EAAA,CACE,CAAA,EAAA,CACF;AAEV;;;;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare const theme: {
|
|
2
|
+
colors: {
|
|
3
|
+
primary: string;
|
|
4
|
+
primaryDark: string;
|
|
5
|
+
success: string;
|
|
6
|
+
warning: string;
|
|
7
|
+
error: string;
|
|
8
|
+
text: string;
|
|
9
|
+
textLight: string;
|
|
10
|
+
border: string;
|
|
11
|
+
background: string;
|
|
12
|
+
};
|
|
13
|
+
fonts: {
|
|
14
|
+
sans: string;
|
|
15
|
+
};
|
|
16
|
+
spacing: {
|
|
17
|
+
sm: string;
|
|
18
|
+
md: string;
|
|
19
|
+
lg: string;
|
|
20
|
+
xl: string;
|
|
21
|
+
};
|
|
22
|
+
borderRadius: {
|
|
23
|
+
sm: string;
|
|
24
|
+
md: string;
|
|
25
|
+
lg: string;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const theme = {
|
|
2
|
+
colors: {
|
|
3
|
+
primary: '#007ee6',
|
|
4
|
+
primaryDark: '#0062b3',
|
|
5
|
+
success: '#10b981',
|
|
6
|
+
warning: '#f59e0b',
|
|
7
|
+
error: '#ef4444',
|
|
8
|
+
text: '#1f2937',
|
|
9
|
+
textLight: '#6b7280',
|
|
10
|
+
border: '#e5e7eb',
|
|
11
|
+
background: '#f9fafb',
|
|
12
|
+
},
|
|
13
|
+
fonts: {
|
|
14
|
+
sans: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
15
|
+
},
|
|
16
|
+
spacing: { sm: '8px', md: '16px', lg: '24px', xl: '32px' },
|
|
17
|
+
borderRadius: { sm: '4px', md: '8px', lg: '12px' },
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export { theme };
|
|
21
|
+
//# sourceMappingURL=theme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme.js","sources":["../../../../src/components/Email/components/theme.ts"],"sourcesContent":["export const theme = {\n colors: {\n primary: '#007ee6',\n primaryDark: '#0062b3',\n success: '#10b981',\n warning: '#f59e0b',\n error: '#ef4444',\n text: '#1f2937',\n textLight: '#6b7280',\n border: '#e5e7eb',\n background: '#f9fafb',\n },\n fonts: {\n sans: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',\n },\n spacing: { sm: '8px', md: '16px', lg: '24px', xl: '32px' },\n borderRadius: { sm: '4px', md: '8px', lg: '12px' },\n};"],"names":[],"mappings":"AAAO,MAAM,KAAK,GAAG;AACnB,IAAA,MAAM,EAAE;AACN,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,WAAW,EAAE,SAAS;AACtB,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,IAAI,EAAE,SAAS;AACf,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,UAAU,EAAE,SAAS;AACtB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,IAAI,EAAE,mEAAmE;AAC1E,KAAA;AACD,IAAA,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;AAC1D,IAAA,YAAY,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE;;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { EmailButton } from '../../components/EmailButton.js';
|
|
3
|
+
import { EmailLayout } from '../../components/EmailLayout.js';
|
|
4
|
+
import 'react';
|
|
5
|
+
import { Text } from '../../../../node_modules/@react-email/text/dist/index.js';
|
|
6
|
+
import { Section } from '../../../../node_modules/@react-email/section/dist/index.js';
|
|
7
|
+
|
|
8
|
+
const ConfirmEmail = ({ confirmationLink = 'https://example.com/confirm', expiryMinutes = 15 }) => {
|
|
9
|
+
return (jsxs(EmailLayout, { previewText: "Confirm your email address", title: "Confirm your email", children: [jsx(Text, { className: "text-2xl font-bold text-gray-900 dark:text-white mb-4", children: "Confirm your email address" }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6", children: ["Please confirm that you want to use this as your account email address. This link is valid for ", expiryMinutes, " minutes."] }), jsx(Section, { className: "text-center mb-6", children: jsx(EmailButton, { href: confirmationLink, children: "Verify Email" }) })] }));
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export { ConfirmEmail, ConfirmEmail as default };
|
|
13
|
+
//# sourceMappingURL=ConfirmEmail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfirmEmail.js","sources":["../../../../../src/components/Email/templates/auth/ConfirmEmail.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, Section } from '@react-email/components';\nimport { EmailLayout, EmailButton } from '../../components';\n\nexport interface ConfirmEmailProps {\n confirmationLink?: string;\n expiryMinutes?: number;\n}\n\nexport const ConfirmEmail: React.FC<ConfirmEmailProps> = ({\n confirmationLink = 'https://example.com/confirm',\n expiryMinutes = 15\n}) => {\n return (\n <EmailLayout previewText=\"Confirm your email address\" title=\"Confirm your email\">\n <Text className=\"text-2xl font-bold text-gray-900 dark:text-white mb-4\">Confirm your email address</Text>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6\">\n Please confirm that you want to use this as your account email address. This link is valid for {expiryMinutes} minutes.\n </Text>\n <Section className=\"text-center mb-6\">\n <EmailButton href={confirmationLink}>\n Verify Email\n </EmailButton>\n </Section>\n </EmailLayout>\n );\n};\n\nexport default ConfirmEmail;"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AASO,MAAM,YAAY,GAAgC,CAAC,EACxD,gBAAgB,GAAG,6BAA6B,EAChD,aAAa,GAAG,EAAE,EACnB,KAAI;IACH,QACEA,KAAC,WAAW,EAAA,EAAC,WAAW,EAAC,4BAA4B,EAAC,KAAK,EAAC,oBAAoB,EAAA,QAAA,EAAA,CAC9EC,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,uDAAuD,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAkC,EACzGD,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,iEAAiE,gHACiB,aAAa,EAAA,WAAA,CAAA,EAAA,CACxG,EACPC,GAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAC,kBAAkB,YACnCA,GAAA,CAAC,WAAW,IAAC,IAAI,EAAE,gBAAgB,EAAA,QAAA,EAAA,cAAA,EAAA,CAErB,EAAA,CACN,CAAA,EAAA,CACE;AAElB;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface EmailChangeVerificationProps {
|
|
3
|
+
userName?: string;
|
|
4
|
+
newEmail?: string;
|
|
5
|
+
verificationLink?: string;
|
|
6
|
+
expiryMinutes?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare const EmailChangeVerification: React.FC<EmailChangeVerificationProps>;
|
|
9
|
+
export default EmailChangeVerification;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { EmailButton } from '../../components/EmailButton.js';
|
|
3
|
+
import { EmailLayout } from '../../components/EmailLayout.js';
|
|
4
|
+
import 'react';
|
|
5
|
+
import { Text } from '../../../../node_modules/@react-email/text/dist/index.js';
|
|
6
|
+
import { Section } from '../../../../node_modules/@react-email/section/dist/index.js';
|
|
7
|
+
|
|
8
|
+
const EmailChangeVerification = ({ userName = 'User', newEmail = 'new@example.com', verificationLink = 'https://example.com/settings/verify-email?token=123', expiryMinutes = 30 }) => {
|
|
9
|
+
return (jsxs(EmailLayout, { previewText: "Verify your new email address", title: "Verify Email Change", children: [jsx(Text, { className: "text-2xl font-bold text-gray-900 dark:text-white mb-4", children: "Verify your new email" }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6", children: ["Hi ", userName, ", you recently requested to change the email address associated with your account to ", jsx("strong", { children: newEmail }), "."] }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6", children: ["Please click the button below to confirm this change. This link will expire in ", expiryMinutes, " minutes."] }), jsx(Section, { className: "text-center mb-6", children: jsx(EmailButton, { href: verificationLink, children: "Verify New Email" }) })] }));
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export { EmailChangeVerification, EmailChangeVerification as default };
|
|
13
|
+
//# sourceMappingURL=EmailChangeVerification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailChangeVerification.js","sources":["../../../../../src/components/Email/templates/auth/EmailChangeVerification.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, Section } from '@react-email/components';\nimport { EmailLayout, EmailButton, EmailDivider } from '../../components';\n\nexport interface EmailChangeVerificationProps {\n userName?: string;\n newEmail?: string;\n verificationLink?: string;\n expiryMinutes?: number;\n}\n\nexport const EmailChangeVerification: React.FC<EmailChangeVerificationProps> = ({\n userName = 'User',\n newEmail = 'new@example.com',\n verificationLink = 'https://example.com/settings/verify-email?token=123',\n expiryMinutes = 30\n}) => {\n return (\n <EmailLayout previewText=\"Verify your new email address\" title=\"Verify Email Change\">\n <Text className=\"text-2xl font-bold text-gray-900 dark:text-white mb-4\">Verify your new email</Text>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6\">\n Hi {userName}, you recently requested to change the email address associated with your account to <strong>{newEmail}</strong>.\n </Text>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6\">Please click the button below to confirm this change. This link will expire in {expiryMinutes} minutes.</Text>\n <Section className=\"text-center mb-6\">\n <EmailButton href={verificationLink}>Verify New Email</EmailButton>\n </Section>\n </EmailLayout>\n );\n};\n\nexport default EmailChangeVerification;"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;MAWa,uBAAuB,GAA2C,CAAC,EAC9E,QAAQ,GAAG,MAAM,EACjB,QAAQ,GAAG,iBAAiB,EAC5B,gBAAgB,GAAG,qDAAqD,EACxE,aAAa,GAAG,EAAE,EACnB,KAAI;AACH,IAAA,QACEA,IAAA,CAAC,WAAW,EAAA,EAAC,WAAW,EAAC,+BAA+B,EAAC,KAAK,EAAC,qBAAqB,EAAA,QAAA,EAAA,CAClFC,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,uDAAuD,EAAA,QAAA,EAAA,uBAAA,EAAA,CAA6B,EACpGD,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,iEAAiE,EAAA,QAAA,EAAA,CAAA,KAAA,EAC3E,QAAQ,EAAA,uFAAA,EAAsFC,GAAA,CAAA,QAAA,EAAA,EAAA,QAAA,EAAS,QAAQ,EAAA,CAAU,EAAA,GAAA,CAAA,EAAA,CACxH,EACPD,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,iEAAiE,EAAA,QAAA,EAAA,CAAA,iFAAA,EAAiF,aAAa,EAAA,WAAA,CAAA,EAAA,CAAiB,EAChMC,GAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAC,kBAAkB,EAAA,QAAA,EACnCA,GAAA,CAAC,WAAW,EAAA,EAAC,IAAI,EAAE,gBAAgB,EAAA,QAAA,EAAA,kBAAA,EAAA,CAAgC,EAAA,CAC3D,CAAA,EAAA,CACE;AAElB;;;;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { EmailButton } from '../../components/EmailButton.js';
|
|
3
|
+
import { EmailDivider } from '../../components/EmailDivider.js';
|
|
4
|
+
import { EmailLayout } from '../../components/EmailLayout.js';
|
|
5
|
+
import 'react';
|
|
6
|
+
import { Text } from '../../../../node_modules/@react-email/text/dist/index.js';
|
|
7
|
+
import { Section } from '../../../../node_modules/@react-email/section/dist/index.js';
|
|
8
|
+
|
|
9
|
+
const MagicLinkEmail = ({ magicLink = 'https://example.com/api/auth/magic?token=123', expiryMinutes = 15 }) => {
|
|
10
|
+
return (jsxs(EmailLayout, { previewText: "Your magic link is here", title: "Log in to your account", children: [jsx(Text, { className: "text-2xl font-bold text-gray-900 dark:text-white mb-4", children: "Log in to your account" }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6", children: ["Click the button below to securely log into your account. This link will expire in ", expiryMinutes, " minutes."] }), jsx(Section, { className: "text-center mb-6", children: jsx(EmailButton, { href: magicLink, children: "Log in now" }) }), jsx(EmailDivider, {}), jsx(Text, { className: "text-gray-500 dark:text-gray-400 text-sm", children: "If you didn't request this email, you can safely ignore it." })] }));
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export { MagicLinkEmail, MagicLinkEmail as default };
|
|
14
|
+
//# sourceMappingURL=MagicLinkEmail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MagicLinkEmail.js","sources":["../../../../../src/components/Email/templates/auth/MagicLinkEmail.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, Section } from '@react-email/components';\nimport { EmailLayout, EmailButton, EmailDivider } from '../../components';\n\nexport interface MagicLinkEmailProps {\n magicLink?: string;\n expiryMinutes?: number;\n}\n\nexport const MagicLinkEmail: React.FC<MagicLinkEmailProps> = ({\n magicLink = 'https://example.com/api/auth/magic?token=123',\n expiryMinutes = 15\n}) => {\n return (\n <EmailLayout previewText=\"Your magic link is here\" title=\"Log in to your account\">\n <Text className=\"text-2xl font-bold text-gray-900 dark:text-white mb-4\">Log in to your account</Text>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6\">\n Click the button below to securely log into your account. This link will expire in {expiryMinutes} minutes.\n </Text>\n <Section className=\"text-center mb-6\">\n <EmailButton href={magicLink}>\n Log in now\n </EmailButton>\n </Section>\n <EmailDivider />\n <Text className=\"text-gray-500 dark:text-gray-400 text-sm\">If you didn't request this email, you can safely ignore it.</Text>\n </EmailLayout>\n );\n};\n\nexport default MagicLinkEmail;"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;;AASO,MAAM,cAAc,GAAkC,CAAC,EAC5D,SAAS,GAAG,8CAA8C,EAC1D,aAAa,GAAG,EAAE,EACnB,KAAI;IACH,QACEA,IAAA,CAAC,WAAW,EAAA,EAAC,WAAW,EAAC,yBAAyB,EAAC,KAAK,EAAC,wBAAwB,EAAA,QAAA,EAAA,CAC/EC,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,uDAAuD,EAAA,QAAA,EAAA,wBAAA,EAAA,CAA8B,EACrGD,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,iEAAiE,EAAA,QAAA,EAAA,CAAA,qFAAA,EACK,aAAa,EAAA,WAAA,CAAA,EAAA,CAC5F,EACPC,GAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAC,kBAAkB,EAAA,QAAA,EACnCA,GAAA,CAAC,WAAW,EAAA,EAAC,IAAI,EAAE,SAAS,EAAA,QAAA,EAAA,YAAA,EAAA,CAEd,EAAA,CACN,EACVA,GAAA,CAAC,YAAY,EAAA,EAAA,CAAG,EAChBA,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,0CAA0C,EAAA,QAAA,EAAA,6DAAA,EAAA,CAAmE,CAAA,EAAA,CACjH;AAElB;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { EmailButton } from '../../components/EmailButton.js';
|
|
3
|
+
import { EmailLayout } from '../../components/EmailLayout.js';
|
|
4
|
+
import 'react';
|
|
5
|
+
import { Text } from '../../../../node_modules/@react-email/text/dist/index.js';
|
|
6
|
+
import { Section } from '../../../../node_modules/@react-email/section/dist/index.js';
|
|
7
|
+
|
|
8
|
+
const ResetPasswordEmail = ({ userName = 'User', resetUrl = 'https://example.com/reset-password', companyName = 'Beyond Corp' }) => {
|
|
9
|
+
return (jsxs(EmailLayout, { previewText: `Reset your ${companyName} password`, title: "Reset Password", children: [jsx(Text, { className: "text-2xl font-bold text-gray-900 dark:text-white mb-4", children: "Reset Password" }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-4", children: ["Hello ", userName, ","] }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6", children: ["Someone recently requested a password change for your ", companyName, " account. If this was you, you can set a new password here:"] }), jsx(Section, { className: "text-center mb-6", children: jsx(EmailButton, { href: resetUrl, children: "Reset Password" }) }), jsx(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-4", children: "If you don't want to change your password or didn't request this, just ignore and delete this message." }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base", children: ["Thanks,", jsx("br", {}), "The ", companyName, " Team"] })] }));
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export { ResetPasswordEmail, ResetPasswordEmail as default };
|
|
13
|
+
//# sourceMappingURL=ResetPasswordEmail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResetPasswordEmail.js","sources":["../../../../../src/components/Email/templates/auth/ResetPasswordEmail.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, Section } from '@react-email/components';\nimport { EmailLayout, EmailButton } from '../../components';\n\nexport interface ResetPasswordEmailProps {\n userName?: string;\n resetUrl?: string;\n companyName?: string;\n}\n\nexport const ResetPasswordEmail: React.FC<ResetPasswordEmailProps> = ({\n userName = 'User',\n resetUrl = 'https://example.com/reset-password',\n companyName = 'Beyond Corp'\n}) => {\n return (\n <EmailLayout \n previewText={`Reset your ${companyName} password`}\n title=\"Reset Password\"\n >\n <Text className=\"text-2xl font-bold text-gray-900 dark:text-white mb-4\">Reset Password</Text>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-4\">Hello {userName},</Text>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6\">\n Someone recently requested a password change for your {companyName} account. If this was you, you can set a new password here:\n </Text>\n <Section className=\"text-center mb-6\">\n <EmailButton href={resetUrl}>\n Reset Password\n </EmailButton>\n </Section>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-4\">\n If you don't want to change your password or didn't request this, just ignore and delete this message.\n </Text>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base\">\n Thanks,<br />\n The {companyName} Team\n </Text>\n </EmailLayout>\n );\n};\n\nexport default ResetPasswordEmail;"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AAUO,MAAM,kBAAkB,GAAsC,CAAC,EACpE,QAAQ,GAAG,MAAM,EACjB,QAAQ,GAAG,oCAAoC,EAC/C,WAAW,GAAG,aAAa,EAC5B,KAAI;AACH,IAAA,QACEA,IAAA,CAAC,WAAW,EAAA,EACV,WAAW,EAAE,CAAA,WAAA,EAAc,WAAW,CAAA,SAAA,CAAW,EACjD,KAAK,EAAC,gBAAgB,EAAA,QAAA,EAAA,CAEtBC,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,uDAAuD,+BAAsB,EAC7FD,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,iEAAiE,EAAA,QAAA,EAAA,CAAA,QAAA,EAAQ,QAAQ,SAAS,EAC1GA,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,iEAAiE,EAAA,QAAA,EAAA,CAAA,wDAAA,EACxB,WAAW,EAAA,6DAAA,CAAA,EAAA,CAC7D,EACPC,GAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAC,kBAAkB,EAAA,QAAA,EACnCA,GAAA,CAAC,WAAW,IAAC,IAAI,EAAE,QAAQ,EAAA,QAAA,EAAA,gBAAA,EAAA,CAEb,EAAA,CACN,EACVA,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,iEAAiE,EAAA,QAAA,EAAA,wGAAA,EAAA,CAE1E,EACPD,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,4CAA4C,wBACnDC,GAAA,CAAA,IAAA,EAAA,EAAA,CAAM,EAAA,MAAA,EACR,WAAW,EAAA,OAAA,CAAA,EAAA,CACX,CAAA,EAAA,CACK;AAElB;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { EmailButton } from '../../components/EmailButton.js';
|
|
3
|
+
import { EmailLayout } from '../../components/EmailLayout.js';
|
|
4
|
+
import 'react';
|
|
5
|
+
import { Text } from '../../../../node_modules/@react-email/text/dist/index.js';
|
|
6
|
+
import { Section } from '../../../../node_modules/@react-email/section/dist/index.js';
|
|
7
|
+
|
|
8
|
+
const WelcomeEmail = ({ userName = 'User', loginUrl = 'https://example.com/login', companyName = 'Beyond Corp' }) => {
|
|
9
|
+
return (jsxs(EmailLayout, { previewText: `Welcome to ${companyName}!`, title: `Welcome to ${companyName}`, children: [jsxs(Text, { className: "text-2xl font-bold text-gray-900 dark:text-white mb-4", children: ["Welcome to ", companyName, ", ", userName, "!"] }), jsx(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6", children: "We're thrilled to have you on board. To get started, please log in to your account." }), jsx(Section, { className: "text-center mb-6", children: jsx(EmailButton, { href: loginUrl, children: "Get Started" }) }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base", children: ["Best,", jsx("br", {}), "The ", companyName, " Team"] })] }));
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export { WelcomeEmail, WelcomeEmail as default };
|
|
13
|
+
//# sourceMappingURL=WelcomeEmail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WelcomeEmail.js","sources":["../../../../../src/components/Email/templates/auth/WelcomeEmail.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, Section } from '@react-email/components';\nimport { EmailLayout, EmailButton } from '../../components';\n\nexport interface WelcomeEmailProps {\n userName?: string;\n loginUrl?: string;\n companyName?: string;\n}\n\nexport const WelcomeEmail: React.FC<WelcomeEmailProps> = ({\n userName = 'User',\n loginUrl = 'https://example.com/login',\n companyName = 'Beyond Corp'\n}) => {\n return (\n <EmailLayout \n previewText={`Welcome to ${companyName}!`}\n title={`Welcome to ${companyName}`}\n >\n <Text className=\"text-2xl font-bold text-gray-900 dark:text-white mb-4\">Welcome to {companyName}, {userName}!</Text>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6\">\n We're thrilled to have you on board. To get started, please log in to your account.\n </Text>\n <Section className=\"text-center mb-6\">\n <EmailButton href={loginUrl}>\n Get Started\n </EmailButton>\n </Section>\n <Text className=\"text-gray-700 dark:text-gray-300 text-base\">\n Best,<br />\n The {companyName} Team\n </Text>\n </EmailLayout>\n );\n};\n\nexport default WelcomeEmail;"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AAUO,MAAM,YAAY,GAAgC,CAAC,EACxD,QAAQ,GAAG,MAAM,EACjB,QAAQ,GAAG,2BAA2B,EACtC,WAAW,GAAG,aAAa,EAC5B,KAAI;AACH,IAAA,QACEA,IAAA,CAAC,WAAW,EAAA,EACV,WAAW,EAAE,CAAA,WAAA,EAAc,WAAW,CAAA,CAAA,CAAG,EACzC,KAAK,EAAE,cAAc,WAAW,CAAA,CAAE,EAAA,QAAA,EAAA,CAElCA,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,uDAAuD,EAAA,QAAA,EAAA,CAAA,aAAA,EAAa,WAAW,EAAA,IAAA,EAAI,QAAQ,EAAA,GAAA,CAAA,EAAA,CAAS,EACpHC,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,iEAAiE,EAAA,QAAA,EAAA,qFAAA,EAAA,CAE1E,EACPA,GAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAC,kBAAkB,EAAA,QAAA,EACnCA,GAAA,CAAC,WAAW,EAAA,EAAC,IAAI,EAAE,QAAQ,EAAA,QAAA,EAAA,aAAA,EAAA,CAEb,EAAA,CACN,EACVD,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,4CAA4C,EAAA,QAAA,EAAA,CAAA,OAAA,EACrDC,GAAA,CAAA,IAAA,EAAA,EAAA,CAAM,EAAA,MAAA,EACN,WAAW,EAAA,OAAA,CAAA,EAAA,CACX,CAAA,EAAA,CACK;AAElB;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface CreditCardExpiringProps {
|
|
3
|
+
userName?: string;
|
|
4
|
+
cardLast4?: string;
|
|
5
|
+
expirationDate?: string;
|
|
6
|
+
updateLink?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare const CreditCardExpiring: React.FC<CreditCardExpiringProps>;
|
|
9
|
+
export default CreditCardExpiring;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { EmailButton } from '../../components/EmailButton.js';
|
|
3
|
+
import { EmailDivider } from '../../components/EmailDivider.js';
|
|
4
|
+
import { EmailLayout } from '../../components/EmailLayout.js';
|
|
5
|
+
import 'react';
|
|
6
|
+
import { Text } from '../../../../node_modules/@react-email/text/dist/index.js';
|
|
7
|
+
import { Section } from '../../../../node_modules/@react-email/section/dist/index.js';
|
|
8
|
+
|
|
9
|
+
const CreditCardExpiring = ({ userName = 'User', cardLast4 = '4242', expirationDate = '10/26', updateLink = 'https://example.com/billing/payment-methods' }) => {
|
|
10
|
+
return (jsxs(EmailLayout, { previewText: "Your payment method is expiring soon", title: "Update Payment Method", children: [jsx(Text, { className: "text-2xl font-bold text-gray-900 dark:text-white mb-4", children: "Action Required" }), jsxs(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6", children: ["Hi ", userName, ", the credit card ending in ", jsx("strong", { children: cardLast4 }), " that we have on file for your subscription is scheduled to expire on ", jsx("strong", { children: expirationDate }), "."] }), jsx(Text, { className: "text-gray-700 dark:text-gray-300 text-base leading-relaxed mb-6", children: "To avoid any interruption to your service, please update your payment information as soon as possible." }), jsx(Section, { className: "text-center mb-6", children: jsx(EmailButton, { href: updateLink, children: "Update Payment Details" }) }), jsx(EmailDivider, {})] }));
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export { CreditCardExpiring, CreditCardExpiring as default };
|
|
14
|
+
//# sourceMappingURL=CreditCardExpiring.js.map
|