
Research
Security News
Malicious PyPI Package Exploits Deezer API for Coordinated Music Piracy
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
@redhat-cloud-services/frontend-components-notifications
Advanced tools
Notifications portal to show toast notifications for RedHat Cloud Services project.
This package has portal component that shows toast notifications based on PF4 alert component.
With NPM
npm i -S @redhat-cloud-services/frontend-components-notifications
With yarn
yarn add @redhat-cloud-services/frontend-components-notifications
This package is dependent on @redhat-cloud-services/frontend-components-utilities it will automatically install it trough direct dependencies.
In order not to increase your bundle size you you should either import components trough direct imports or use babel plugin to change relative imports to direct imports. You can mix both direct imports and babel plugin, it's just convenient to use the babel plugin so you don't have to change all of your imports.
You can try esm
or cjs
whichever fits you more, generally ems
modules should yield less code, but is considered bleading edge and could break your build, cjs (refers to commonjs) will work out of the box (it adds about 1 or 2 KB of code to each build). For instance addNotification
can be imported as:
import { addNotification } from '@redhat-cloud-services/frontend-components-notifications/esm/actions';
or
import { addNotification } from '@redhat-cloud-services/frontend-components-notifications/cjs/actions';
If it breaks your build for some reason, you can always fallback to default umd
index file, but this will most probably bloat your build and should be used as last resort.
import { addNotification } from '@redhat-cloud-services/frontend-components-notifications';
There are 2 plugins that can be used to change relative imports to direct imports
Since our components require a bit more setting up, we are recommending using babel-plugin-transform-imports
.
Change your babel config to be javascript config babel.config.js
so you can use JS functions to properly transform your imports
notificationsMapper = {
addNotification: 'actions',
removeNotification: 'actions',
};
module.exports = {
presets: [
// your presets go here
],
plugins: [
// your plugins
[
'transform-imports',
{
'@redhat-cloud-services/frontend-components-notifications': {
transform: (importName) =>
`@redhat-cloud-services/frontend-components-notifications/cjs/${notificationsMapper[importName] || importName}`,
preventFullImport: true,
}
},
'frontend-notifications'
]
// other plugins, for instance PF transform imports and such as well
]
};
As with direct imports you can choose from esm
and cjs
.
index
- the entire notifications bundle, should be used as fallback if something does not exists in other modulesnotificationsMiddleware
- middleware function to hook into your reduxactions
- list of notifications actionsactionTypes
- list of redux action typesNotificationPortal
- portal to render your notifications tonotifications
- redux reducers are exported in this fileFAQs
Notifications portal to show toast notifications for RedHat Cloud Services project.
The npm package @redhat-cloud-services/frontend-components-notifications receives a total of 1,135 weekly downloads. As such, @redhat-cloud-services/frontend-components-notifications popularity was classified as popular.
We found that @redhat-cloud-services/frontend-components-notifications demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 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.
Research
Security News
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.
Security News
Newly introduced telemetry in devenv 1.4 sparked a backlash over privacy concerns, leading to the removal of its AI-powered feature after strong community pushback.