Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
i18next-icu
Advanced tools
This changes i18n format from i18next json to ICU using yahoo/intl-messageformat
When using this module, only the ICU message format is respected, this means the i18next format interpolation will not work.
So for example instead of Hy {{name}}!
it is Hy {name}!
Source can be loaded via npm or downloaded from this repo.
# npm package
$ npm install i18next-icu
# peer dependencies
$ npm install intl-messageformat
Wiring up:
import i18next from "i18next";
import ICU from "i18next-icu";
i18next.use(ICU).init(i18nextOptions);
window.i18nextICU
{
// per default icu functions are parsed once and cached for subsequent calls
memoize: true,
// memoize if not having a lookup and just using the key fallback as value
memoizeFallback: false,
// which events should clear the cache, can be set to false or string of events separated by " "
bindI18n: '',
// which events on resourceSource should clear the cache, can be set to false or string of events separated by " "
bindI18nStore: '',
// Will be run when parser throws an error. Can return any string, which can be used as a fallback, in case of broken translation.
// If omitted, the default swallows the error and returns the unsubstituted string (res)
parseErrorHandler: (err, key, res, options) => {},
// Transform the language code prior to ICU locale parsing, useful for supporting psuedo-locales like en-ZZ
// If omitted, the default leaves the language code as is
parseLngForICU: (lng) => lng,
}
Options can be passed in by setting options.i18nFormat in i18next.init:
import i18next from "i18next";
import ICU from "i18next-icu";
i18next.use(ICU).init({
i18nFormat: options
});
import i18next from "i18next";
import ICU from "i18next-icu";
i18next.use(ICU).init({
lng: "en",
resources: {
en: {
translation: {
key:
"You have {numPhotos, plural, " +
"=0 {no photos.}" +
"=1 {one photo.}" +
"other {# photos.}}"
}
}
}
});
i18next.t("key", { numPhotos: 1000 }); // -> You have 1,000 photos.
intl-messageformat
dependency. Adding locales-data is no longer needed.2.3.0
FAQs
i18nFormat plugin to use ICU format with i18next
The npm package i18next-icu receives a total of 53,873 weekly downloads. As such, i18next-icu popularity was classified as popular.
We found that i18next-icu demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.