🚀 Feature Proposal
Improve parser.js to read ConditionalExpression to parse context.
Motivation
My project heavily uses i18n and sometimes context is necessary.
Problem is that each translation will have different values for the context and only a few of the keys actually use a context, and the current parser parses tOptions only when attr.value.type is one of: Literal, Identifier or ObjectExpression.
Example
What I would like to do is:
const { t } = useTranslation();
// component
<Trans
i18nKey="some.key"
defaults="translated string"
tOptions={{context: isTrue ? 'contextValue' : 'somethingelse'}}
/>
// better yet,
<Trans
i18nKey="some.key"
defaults="translated string"
context={isTrue ? 'contextValue' : 'somethingelse'}
/>
t('some.key2', 'translated string2', {context: isTrue ? 'withContext' : undefined});
// scanned
{
"some.key": "translated string",
"some.key_contextValue: "translated string",
"some.key_somethingelse: "translated string",
"some.key2": "translated string2",
"some.key2_withContext": "translated string2",
}
Then, I would modify the translation with context accordingly.
🚀 Feature Proposal
Improve
parser.jsto readConditionalExpressionto parsecontext.Motivation
My project heavily uses i18n and sometimes
contextis necessary.Problem is that each translation will have different values for the context and only a few of the keys actually use a context, and the current parser parses
tOptionsonly whenattr.value.typeis one of:Literal,IdentifierorObjectExpression.Example
What I would like to do is:
Then, I would modify the translation with context accordingly.