import { workflow } from '@novu/framework';
import i18next from 'i18next';
import en from './locales/en.json';
import de from './locales/de.json';
i18next.init({
fallbackLng: 'en',
resources: {
en: {
translation: en,
},
de: {
translation: de,
},
},
});
export const welcomeWorkflow = workflow(
'welcome-workflow',
async ({ step, subscriber }) => {
// Send welcome notifications via email
await step.email('welcome-email', async () => {
const t = i18next.getFixedT(subscriber?.locale as string);
return {
subject: t('welcomeEmailSubject', { firstName: subscriber?.firstName }),
body: t('welcomeEmailBody', { username: subscriber?.data?.username }),
};
});
}
);