typescript.react.portability.i18next.mui-snackbar-message.mui-snackbar-message
semgrep
Author
unknown
Download Count*
License
React MUI enqueueSnackbar() title is not internationalized: '$MESSAGE'
Run Locally
Run in CI
Defintion
rules:
- id: mui-snackbar-message
patterns:
- pattern: enqueueSnackbar('$MESSAGE', $X2)
- pattern-not: enqueueSnackbar(t($KEY), $X2)
message: "React MUI enqueueSnackbar() title is not internationalized: '$MESSAGE'"
languages:
- typescript
- javascript
severity: WARNING
metadata:
category: portability
technology:
- react
- mui
- i18next
references:
- https://hendyirawan.notion.site/Internationalization-Localization-Policy-318c21674e5f44c48d6f136a6eb2e024
- https://mui.com/
- https://react.i18next.com/
license: Commons Clause License Condition v1.0[LGPL-2.1-only]
Examples
mui-snackbar-message.tsx
// ruleid: mui-snackbar-message
enqueueSnackbar('Registration success, Please verify your email', {
variant: 'success',
action: key => (
<MIconButton size="small" onClick={() => closeSnackbar(key)}>
<Icon icon={closeFill} />
</MIconButton>
),
});
// ok: mui-snackbar-message
enqueueSnackbar(t('Registration success, Please verify your email'), {
variant: 'success',
action: key => (
<MIconButton size="small" onClick={() => closeSnackbar(key)}>
<Icon icon={closeFill} />
</MIconButton>
),
});
Short Link: https://sg.run/WDvz