import * as React from 'react';
import lodashGet from 'lodash/get.js';
import { I18nContextProvider } from './I18nContextProvider';
import { I18nProvider } from '../types';
export const TestTranslationProvider = ({
translate,
messages,
children,
}: any) => (
{children}
);
export interface IMessages
extends Record string) | IMessages> {}
export const testI18nProvider = ({
translate,
messages,
}: {
translate?: I18nProvider['translate'];
messages?: IMessages;
} = {}): I18nProvider => {
return {
translate: messages
? (key, options) => {
const message = lodashGet(messages, key);
return message
? typeof message === 'function'
? message(options)
: message
: options?._;
}
: translate || (key => key),
changeLocale: () => Promise.resolve(),
getLocale: () => 'en',
};
};